Merge staging-next into staging
This commit is contained in:
commit
2165de1758
52 changed files with 629 additions and 202 deletions
|
@ -10678,6 +10678,16 @@
|
||||||
githubId = 9853194;
|
githubId = 9853194;
|
||||||
name = "Philipp Bartsch";
|
name = "Philipp Bartsch";
|
||||||
};
|
};
|
||||||
|
toastal = {
|
||||||
|
email = "toastal+nix@posteo.net";
|
||||||
|
github = "toastal";
|
||||||
|
githubId = 561087;
|
||||||
|
name = "toastal";
|
||||||
|
keys = [{
|
||||||
|
longkeyid = "ed25519/5CCE6F1466D47C9E";
|
||||||
|
fingerprint = "7944 74B7 D236 DAB9 C9EF E7F9 5CCE 6F14 66D4 7C9E";
|
||||||
|
}];
|
||||||
|
};
|
||||||
tobim = {
|
tobim = {
|
||||||
email = "nix@tobim.fastmail.fm";
|
email = "nix@tobim.fastmail.fm";
|
||||||
github = "tobim";
|
github = "tobim";
|
||||||
|
@ -11878,12 +11888,6 @@
|
||||||
githubId = 8686360;
|
githubId = 8686360;
|
||||||
name = "Illia Shestakov";
|
name = "Illia Shestakov";
|
||||||
};
|
};
|
||||||
foxit64 = {
|
|
||||||
email = "o4nsxy05@gmail.com";
|
|
||||||
github = "foxit64";
|
|
||||||
githubId = 56247270;
|
|
||||||
name = "Foxit";
|
|
||||||
};
|
|
||||||
masaeedu = {
|
masaeedu = {
|
||||||
email = "masaeedu@gmail.com";
|
email = "masaeedu@gmail.com";
|
||||||
github = "masaeedu";
|
github = "masaeedu";
|
||||||
|
|
|
@ -492,7 +492,7 @@
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</listitem>
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
<itemizedlist spacing="compact">
|
<itemizedlist>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
<literal>yggdrasil</literal> was upgraded to a new major
|
<literal>yggdrasil</literal> was upgraded to a new major
|
||||||
|
@ -501,6 +501,14 @@
|
||||||
changelog</link>.
|
changelog</link>.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
<literal>icingaweb2</literal> was upgraded to a new release
|
||||||
|
which requires a manual database upgrade, see
|
||||||
|
<link xlink:href="https://github.com/Icinga/icingaweb2/releases/tag/v2.9.0">upstream
|
||||||
|
changelog</link>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
<section xml:id="sec-release-21.11-notable-changes">
|
<section xml:id="sec-release-21.11-notable-changes">
|
||||||
|
|
|
@ -126,6 +126,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
|
|
||||||
- `yggdrasil` was upgraded to a new major release with breaking changes, see [upstream changelog](https://github.com/yggdrasil-network/yggdrasil-go/releases/tag/v0.4.0).
|
- `yggdrasil` was upgraded to a new major release with breaking changes, see [upstream changelog](https://github.com/yggdrasil-network/yggdrasil-go/releases/tag/v0.4.0).
|
||||||
|
|
||||||
|
- `icingaweb2` was upgraded to a new release which requires a manual database upgrade, see [upstream changelog](https://github.com/Icinga/icingaweb2/releases/tag/v2.9.0).
|
||||||
|
|
||||||
## Other Notable Changes {#sec-release-21.11-notable-changes}
|
## Other Notable Changes {#sec-release-21.11-notable-changes}
|
||||||
|
|
||||||
- The setting [`services.openssh.logLevel`](options.html#opt-services.openssh.logLevel) `"VERBOSE"` `"INFO"`. This brings NixOS in line with upstream and other Linux distributions, and reduces log spam on servers due to bruteforcing botnets.
|
- The setting [`services.openssh.logLevel`](options.html#opt-services.openssh.logLevel) `"VERBOSE"` `"INFO"`. This brings NixOS in line with upstream and other Linux distributions, and reduces log spam on servers due to bruteforcing botnets.
|
||||||
|
|
|
@ -10,14 +10,16 @@ in
|
||||||
{
|
{
|
||||||
options.programs.xwayland = {
|
options.programs.xwayland = {
|
||||||
|
|
||||||
enable = mkEnableOption ''
|
enable = mkEnableOption "Xwayland (an X server for interfacing X11 apps with the Wayland protocol)";
|
||||||
Xwayland X server allows running X programs on a Wayland compositor.
|
|
||||||
'';
|
|
||||||
|
|
||||||
defaultFontPath = mkOption {
|
defaultFontPath = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
default = optionalString config.fonts.fontDir.enable
|
default = optionalString config.fonts.fontDir.enable
|
||||||
"/run/current-system/sw/share/X11/fonts";
|
"/run/current-system/sw/share/X11/fonts";
|
||||||
|
defaultText = literalExample ''
|
||||||
|
optionalString config.fonts.fontDir.enable
|
||||||
|
"/run/current-system/sw/share/X11/fonts";
|
||||||
|
'';
|
||||||
description = ''
|
description = ''
|
||||||
Default font path. Setting this option causes Xwayland to be rebuilt.
|
Default font path. Setting this option causes Xwayland to be rebuilt.
|
||||||
'';
|
'';
|
||||||
|
@ -25,7 +27,15 @@ in
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
type = types.path;
|
type = types.path;
|
||||||
description = "The Xwayland package";
|
default = pkgs.xwayland.override (oldArgs: {
|
||||||
|
inherit (cfg) defaultFontPath;
|
||||||
|
});
|
||||||
|
defaultText = literalExample ''
|
||||||
|
pkgs.xwayland.override (oldArgs: {
|
||||||
|
inherit (config.programs.xwayland) defaultFontPath;
|
||||||
|
});
|
||||||
|
'';
|
||||||
|
description = "The Xwayland package to use.";
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -37,9 +47,5 @@ in
|
||||||
|
|
||||||
environment.systemPackages = [ cfg.package ];
|
environment.systemPackages = [ cfg.package ];
|
||||||
|
|
||||||
programs.xwayland.package = pkgs.xwayland.override (oldArgs: {
|
|
||||||
inherit (cfg) defaultFontPath;
|
|
||||||
});
|
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,10 +35,20 @@ in
|
||||||
|
|
||||||
token = mkOption {
|
token = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
description = "The k3s token to use when connecting to the server. This option only makes sense for an agent.";
|
description = ''
|
||||||
|
The k3s token to use when connecting to the server. This option only makes sense for an agent.
|
||||||
|
WARNING: This option will expose store your token unencrypted world-readable in the nix store.
|
||||||
|
If this is undesired use the tokenFile option instead.
|
||||||
|
'';
|
||||||
default = "";
|
default = "";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
tokenFile = mkOption {
|
||||||
|
type = types.nullOr types.path;
|
||||||
|
description = "File path containing k3s token to use when connecting to the server. This option only makes sense for an agent.";
|
||||||
|
default = null;
|
||||||
|
};
|
||||||
|
|
||||||
docker = mkOption {
|
docker = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = false;
|
default = false;
|
||||||
|
@ -68,8 +78,8 @@ in
|
||||||
message = "serverAddr should be set if role is 'agent'";
|
message = "serverAddr should be set if role is 'agent'";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
assertion = cfg.role == "agent" -> cfg.token != "";
|
assertion = cfg.role == "agent" -> cfg.token != "" || cfg.tokenFile != null;
|
||||||
message = "token should be set if role is 'agent'";
|
message = "token or tokenFile should be set if role is 'agent'";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -105,7 +115,12 @@ in
|
||||||
"${cfg.package}/bin/k3s ${cfg.role}"
|
"${cfg.package}/bin/k3s ${cfg.role}"
|
||||||
] ++ (optional cfg.docker "--docker")
|
] ++ (optional cfg.docker "--docker")
|
||||||
++ (optional cfg.disableAgent "--disable-agent")
|
++ (optional cfg.disableAgent "--disable-agent")
|
||||||
++ (optional (cfg.role == "agent") "--server ${cfg.serverAddr} --token ${cfg.token}")
|
++ (optional (cfg.role == "agent") "--server ${cfg.serverAddr} ${
|
||||||
|
if cfg.tokenFile != null then
|
||||||
|
"--token-file ${cfg.tokenFile}"
|
||||||
|
else
|
||||||
|
"--token ${cfg.token}"
|
||||||
|
}")
|
||||||
++ [ cfg.extraFlags ]
|
++ [ cfg.extraFlags ]
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
|
@ -475,21 +475,16 @@ in
|
||||||
plugins = lib.mkOption {
|
plugins = lib.mkOption {
|
||||||
type = lib.types.listOf lib.types.package;
|
type = lib.types.listOf lib.types.package;
|
||||||
default = [];
|
default = [];
|
||||||
example = ''
|
example = lib.literalExample ''
|
||||||
[
|
with config.services.discourse.package.plugins; [
|
||||||
(pkgs.fetchFromGitHub {
|
discourse-canned-replies
|
||||||
owner = "discourse";
|
discourse-github
|
||||||
repo = "discourse-spoiler-alert";
|
|
||||||
rev = "e200cfa571d252cab63f3d30d619b370986e4cee";
|
|
||||||
sha256 = "0ya69ix5g77wz4c9x9gmng6l25ghb5xxlx3icr6jam16q14dzc33";
|
|
||||||
})
|
|
||||||
];
|
];
|
||||||
'';
|
'';
|
||||||
description = ''
|
description = ''
|
||||||
<productname>Discourse</productname> plugins to install as a
|
Plugins to install as part of
|
||||||
list of derivations. As long as a plugin supports the
|
<productname>Discourse</productname>, expressed as a list of
|
||||||
standard install method, packaging it should only require
|
derivations.
|
||||||
fetching its source with an appropriate fetcher.
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -262,9 +262,31 @@ services.discourse = {
|
||||||
<para>
|
<para>
|
||||||
You can install <productname>Discourse</productname> plugins
|
You can install <productname>Discourse</productname> plugins
|
||||||
using the <xref linkend="opt-services.discourse.plugins" />
|
using the <xref linkend="opt-services.discourse.plugins" />
|
||||||
option. As long as a plugin supports the standard install
|
option. Pre-packaged plugins are provided in
|
||||||
method, packaging it should only require fetching its source
|
<literal><your_discourse_package_here>.plugins</literal>. If
|
||||||
with an appropriate fetcher.
|
you want the full suite of plugins provided through
|
||||||
|
<literal>nixpkgs</literal>, you can also set the <xref
|
||||||
|
linkend="opt-services.discourse.package" /> option to
|
||||||
|
<literal>pkgs.discourseAllPlugins</literal>.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Plugins can be built with the
|
||||||
|
<literal><your_discourse_package_here>.mkDiscoursePlugin</literal>
|
||||||
|
function. Normally, it should suffice to provide a
|
||||||
|
<literal>name</literal> and <literal>src</literal> attribute. If
|
||||||
|
the plugin has Ruby dependencies, however, they need to be
|
||||||
|
packaged in accordance with the <link
|
||||||
|
xlink:href="https://nixos.org/manual/nixpkgs/stable/#developing-with-ruby">Developing
|
||||||
|
with Ruby</link> section of the Nixpkgs manual and the
|
||||||
|
appropriate gem options set in <literal>bundlerEnvArgs</literal>
|
||||||
|
(normally <literal>gemdir</literal> is sufficient). A plugin's
|
||||||
|
Ruby dependencies are listed in its
|
||||||
|
<filename>plugin.rb</filename> file as function calls to
|
||||||
|
<literal>gem</literal>. To construct the corresponding
|
||||||
|
<filename>Gemfile</filename>, run <command>bundle
|
||||||
|
init</command>, then add the <literal>gem</literal> lines to it
|
||||||
|
verbatim.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
@ -280,7 +302,10 @@ services.discourse = {
|
||||||
<para>
|
<para>
|
||||||
For example, to add the <link
|
For example, to add the <link
|
||||||
xlink:href="https://github.com/discourse/discourse-spoiler-alert">discourse-spoiler-alert</link>
|
xlink:href="https://github.com/discourse/discourse-spoiler-alert">discourse-spoiler-alert</link>
|
||||||
plugin and disable it by default:
|
and <link
|
||||||
|
xlink:href="https://github.com/discourse/discourse-solved">discourse-solved</link>
|
||||||
|
plugins, and disable <literal>discourse-spoiler-alert</literal>
|
||||||
|
by default:
|
||||||
|
|
||||||
<programlisting>
|
<programlisting>
|
||||||
services.discourse = {
|
services.discourse = {
|
||||||
|
@ -301,13 +326,9 @@ services.discourse = {
|
||||||
<link linkend="opt-services.discourse.mail.outgoing.passwordFile">passwordFile</link> = "/path/to/smtp_password_file";
|
<link linkend="opt-services.discourse.mail.outgoing.passwordFile">passwordFile</link> = "/path/to/smtp_password_file";
|
||||||
};
|
};
|
||||||
<link linkend="opt-services.discourse.mail.incoming.enable">mail.incoming.enable</link> = true;
|
<link linkend="opt-services.discourse.mail.incoming.enable">mail.incoming.enable</link> = true;
|
||||||
<link linkend="opt-services.discourse.mail.incoming.enable">plugins</link> = [
|
<link linkend="opt-services.discourse.mail.incoming.enable">plugins</link> = with config.services.discourse.package.plugins; [
|
||||||
(pkgs.fetchFromGitHub {
|
discourse-spoiler-alert
|
||||||
owner = "discourse";
|
discourse-solved
|
||||||
repo = "discourse-spoiler-alert";
|
|
||||||
rev = "e200cfa571d252cab63f3d30d619b370986e4cee";
|
|
||||||
sha256 = "0ya69ix5g77wz4c9x9gmng6l25ghb5xxlx3icr6jam16q14dzc33";
|
|
||||||
})
|
|
||||||
];
|
];
|
||||||
<link linkend="opt-services.discourse.siteSettings">siteSettings</link> = {
|
<link linkend="opt-services.discourse.siteSettings">siteSettings</link> = {
|
||||||
plugins = {
|
plugins = {
|
||||||
|
|
|
@ -23,6 +23,16 @@ in {
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
libraryPaths = mkOption {
|
||||||
|
type = attrsOf package;
|
||||||
|
default = { };
|
||||||
|
description = ''
|
||||||
|
Libraries to add to the Icingaweb2 library path.
|
||||||
|
The name of the attribute is the name of the library, the value
|
||||||
|
is the package to add.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
virtualHost = mkOption {
|
virtualHost = mkOption {
|
||||||
type = nullOr str;
|
type = nullOr str;
|
||||||
default = "icingaweb2";
|
default = "icingaweb2";
|
||||||
|
@ -167,6 +177,9 @@ in {
|
||||||
services.phpfpm.pools = mkIf (cfg.pool == "${poolName}") {
|
services.phpfpm.pools = mkIf (cfg.pool == "${poolName}") {
|
||||||
${poolName} = {
|
${poolName} = {
|
||||||
user = "icingaweb2";
|
user = "icingaweb2";
|
||||||
|
phpEnv = {
|
||||||
|
ICINGAWEB_LIBDIR = toString (pkgs.linkFarm "icingaweb2-libdir" (mapAttrsToList (name: path: { inherit name path; }) cfg.libraryPaths));
|
||||||
|
};
|
||||||
phpPackage = pkgs.php.withExtensions ({ enabled, all }: [ all.imagick ] ++ enabled);
|
phpPackage = pkgs.php.withExtensions ({ enabled, all }: [ all.imagick ] ++ enabled);
|
||||||
phpOptions = ''
|
phpOptions = ''
|
||||||
date.timezone = "${cfg.timezone}"
|
date.timezone = "${cfg.timezone}"
|
||||||
|
@ -184,6 +197,11 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.icingaweb2.libraryPaths = {
|
||||||
|
ipl = pkgs.icingaweb2-ipl;
|
||||||
|
thirdparty = pkgs.icingaweb2-thirdparty;
|
||||||
|
};
|
||||||
|
|
||||||
systemd.services."phpfpm-${poolName}".serviceConfig.ReadWritePaths = [ "/etc/icingaweb2" ];
|
systemd.services."phpfpm-${poolName}".serviceConfig.ReadWritePaths = [ "/etc/icingaweb2" ];
|
||||||
|
|
||||||
services.nginx = {
|
services.nginx = {
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ lib
|
{ lib
|
||||||
, stdenv
|
, stdenv
|
||||||
, fetchurl
|
, fetchurl
|
||||||
|
, fetchpatch
|
||||||
, ghostscript
|
, ghostscript
|
||||||
, libpng
|
, libpng
|
||||||
, makeWrapper
|
, makeWrapper
|
||||||
|
@ -20,6 +21,15 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "1bm75lf9j54qpbjx8hzp6ixaayp1x9w4v3yxl6vxyw8g5m4sqdk3";
|
sha256 = "1bm75lf9j54qpbjx8hzp6ixaayp1x9w4v3yxl6vxyw8g5m4sqdk3";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
name = "CVE-2021-3561.patch";
|
||||||
|
# Using Debian patch since it is not possible to download it directly from Sourceforge
|
||||||
|
url = "https://sources.debian.org/data/main/f/fig2dev/1:3.2.8-3/debian/patches/33_sanitize-color.patch";
|
||||||
|
sha256 = "1bppr3li03nj4qjibnddr2f38mpk55pcn5z6k98pf00gabq33fgs";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
buildInputs = [ libpng ];
|
buildInputs = [ libpng ];
|
||||||
|
|
||||||
|
|
|
@ -36,7 +36,7 @@ buildGoModule rec {
|
||||||
description = "Command line todo list with super-reliable git sync";
|
description = "Command line todo list with super-reliable git sync";
|
||||||
homepage = src.meta.homepage;
|
homepage = src.meta.homepage;
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
maintainers = with maintainers; [ stianlagstad foxit64 ];
|
maintainers = with maintainers; [ stianlagstad ];
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,7 +19,6 @@ buildGoModule rec {
|
||||||
description = "A simple text-based Minecraft modpack manager";
|
description = "A simple text-based Minecraft modpack manager";
|
||||||
license = licenses.agpl3;
|
license = licenses.agpl3;
|
||||||
homepage = src.meta.homepage;
|
homepage = src.meta.homepage;
|
||||||
maintainers = with maintainers; [ foxit64 ];
|
maintainers = with maintainers; [ ];
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "cloudflared";
|
pname = "cloudflared";
|
||||||
version = "2021.6.0";
|
version = "2021.7.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "cloudflare";
|
owner = "cloudflare";
|
||||||
repo = "cloudflared";
|
repo = "cloudflared";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-cX0kdBPDgwjHphxGWrnXohHPp1nzs4SnvCry4AxMtp0=";
|
sha256 = "sha256-FQejuKBDUCCcEq9ZmSMigdvqowTurCYEhOiXQN7exIE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = null;
|
vendorSha256 = null;
|
||||||
|
|
|
@ -1,14 +1,45 @@
|
||||||
{ lib, mkDerivation, fetchFromGitHub, cmake
|
{ lib
|
||||||
, qtbase, qtmultimedia, qtx11extras, qttools, qtwebengine
|
, mkDerivation
|
||||||
, libidn, qca-qt5, libXScrnSaver, hunspell
|
, fetchFromGitHub
|
||||||
, libsecret, libgcrypt, libotr, html-tidy, libgpgerror, libsignal-protocol-c
|
, cmake
|
||||||
|
, qtbase
|
||||||
|
, qtmultimedia
|
||||||
|
, qtx11extras
|
||||||
|
, qttools
|
||||||
|
, libidn
|
||||||
|
, qca-qt5
|
||||||
|
, libXScrnSaver
|
||||||
|
, hunspell
|
||||||
|
, libsecret
|
||||||
|
, libgcrypt
|
||||||
|
, libotr
|
||||||
|
, html-tidy
|
||||||
|
, libgpgerror
|
||||||
|
, libsignal-protocol-c
|
||||||
, usrsctp
|
, usrsctp
|
||||||
|
|
||||||
# Voice messages
|
, chatType ? "basic" # See the assertion below for available options
|
||||||
|
, qtwebkit
|
||||||
|
, qtwebengine
|
||||||
|
|
||||||
|
, enablePlugins ? true
|
||||||
|
|
||||||
|
# Voice messages
|
||||||
, voiceMessagesSupport ? true
|
, voiceMessagesSupport ? true
|
||||||
, gst_all_1
|
, gst_all_1
|
||||||
|
|
||||||
|
, enablePsiMedia ? false
|
||||||
|
, pkg-config
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
assert builtins.elem (lib.toLower chatType) [
|
||||||
|
"basic" # Basic implementation, no web stuff involved
|
||||||
|
"webkit" # Legacy one, based on WebKit (see https://wiki.qt.io/Qt_WebKit)
|
||||||
|
"webengine" # QtWebEngine (see https://wiki.qt.io/QtWebEngine)
|
||||||
|
];
|
||||||
|
|
||||||
|
assert enablePsiMedia -> enablePlugins;
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "psi-plus";
|
pname = "psi-plus";
|
||||||
version = "1.5.1549";
|
version = "1.5.1549";
|
||||||
|
@ -21,19 +52,40 @@ mkDerivation rec {
|
||||||
};
|
};
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DENABLE_PLUGINS=ON"
|
"-DCHAT_TYPE=${chatType}"
|
||||||
|
"-DENABLE_PLUGINS=${if enablePlugins then "ON" else "OFF"}"
|
||||||
|
"-DBUILD_PSIMEDIA=${if enablePsiMedia then "ON" else "OFF"}"
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake qttools ];
|
nativeBuildInputs = [
|
||||||
|
cmake
|
||||||
|
qttools
|
||||||
|
] ++ lib.optionals enablePsiMedia [
|
||||||
|
pkg-config
|
||||||
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
qtbase qtmultimedia qtx11extras qtwebengine
|
qtbase
|
||||||
libidn qca-qt5 libXScrnSaver hunspell
|
qtmultimedia
|
||||||
libsecret libgcrypt libotr html-tidy libgpgerror libsignal-protocol-c
|
qtx11extras
|
||||||
|
libidn
|
||||||
|
qca-qt5
|
||||||
|
libXScrnSaver
|
||||||
|
hunspell
|
||||||
|
libsecret
|
||||||
|
libgcrypt
|
||||||
|
libotr
|
||||||
|
html-tidy
|
||||||
|
libgpgerror
|
||||||
|
libsignal-protocol-c
|
||||||
usrsctp
|
usrsctp
|
||||||
] ++ lib.optionals voiceMessagesSupport [
|
] ++ lib.optionals voiceMessagesSupport [
|
||||||
gst_all_1.gst-plugins-base
|
gst_all_1.gst-plugins-base
|
||||||
gst_all_1.gst-plugins-good
|
gst_all_1.gst-plugins-good
|
||||||
|
] ++ lib.optionals (chatType == "webkit") [
|
||||||
|
qtwebkit
|
||||||
|
] ++ lib.optionals (chatType == "webengine") [
|
||||||
|
qtwebengine
|
||||||
];
|
];
|
||||||
|
|
||||||
preFixup = lib.optionalString voiceMessagesSupport ''
|
preFixup = lib.optionalString voiceMessagesSupport ''
|
||||||
|
|
|
@ -8,10 +8,10 @@ let allVersions = with lib; flip map
|
||||||
# N.B. Versions in this list should be ordered from newest to oldest.
|
# N.B. Versions in this list should be ordered from newest to oldest.
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
version = "12.3.0";
|
version = "12.3.1";
|
||||||
lang = "en";
|
lang = "en";
|
||||||
language = "English";
|
language = "English";
|
||||||
sha256 = "045df045f6e796ded59f64eb2e0f1949ac88dcba1d5b6e05fb53ea0a4aed7215";
|
sha256 = "51b9cab12fd91b009ea7ad4968a2c8a59e94dc55d2e6cc1d712acd5ba2c4d509";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
version = "11.3.0";
|
version = "11.3.0";
|
||||||
|
|
|
@ -8,7 +8,7 @@ rec {
|
||||||
, moby-src
|
, moby-src
|
||||||
, runcRev, runcSha256
|
, runcRev, runcSha256
|
||||||
, containerdRev, containerdSha256
|
, containerdRev, containerdSha256
|
||||||
, tiniRev, tiniSha256, buildxSupport ? false
|
, tiniRev, tiniSha256, buildxSupport ? true
|
||||||
# package dependencies
|
# package dependencies
|
||||||
, stdenv, fetchFromGitHub, buildGoPackage
|
, stdenv, fetchFromGitHub, buildGoPackage
|
||||||
, makeWrapper, installShellFiles, pkg-config, glibc
|
, makeWrapper, installShellFiles, pkg-config, glibc
|
||||||
|
@ -77,6 +77,10 @@ rec {
|
||||||
|
|
||||||
extraPath = optionals (stdenv.isLinux) (makeBinPath [ iproute2 iptables e2fsprogs xz xfsprogs procps util-linux git ]);
|
extraPath = optionals (stdenv.isLinux) (makeBinPath [ iproute2 iptables e2fsprogs xz xfsprogs procps util-linux git ]);
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
patchShebangs hack/make.sh hack/make/
|
||||||
|
'';
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
export GOCACHE="$TMPDIR/go-cache"
|
export GOCACHE="$TMPDIR/go-cache"
|
||||||
# build engine
|
# build engine
|
||||||
|
@ -88,11 +92,6 @@ rec {
|
||||||
cd -
|
cd -
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
patchShebangs .
|
|
||||||
substituteInPlace ./hack/make.sh --replace libsystemd-journal libsystemd
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
cd ./go/src/${goPackagePath}
|
cd ./go/src/${goPackagePath}
|
||||||
install -Dm755 ./bundles/dynbinary-daemon/dockerd $out/libexec/docker/dockerd
|
install -Dm755 ./bundles/dynbinary-daemon/dockerd $out/libexec/docker/dockerd
|
||||||
|
@ -144,6 +143,14 @@ rec {
|
||||||
sqlite lvm2 btrfs-progs systemd libseccomp
|
sqlite lvm2 btrfs-progs systemd libseccomp
|
||||||
] ++ optionals (buildxSupport) [ docker-buildx ];
|
] ++ optionals (buildxSupport) [ docker-buildx ];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
patchShebangs man scripts/build/
|
||||||
|
substituteInPlace ./scripts/build/.variables --replace "set -eu" ""
|
||||||
|
'' + optionalString buildxSupport ''
|
||||||
|
substituteInPlace ./cli-plugins/manager/manager_unix.go --replace /usr/libexec/docker/cli-plugins \
|
||||||
|
${lib.strings.makeSearchPathOutput "bin" "libexec/docker/cli-plugins" [docker-buildx]}
|
||||||
|
'';
|
||||||
|
|
||||||
# Keep eyes on BUILDTIME format - https://github.com/docker/cli/blob/${version}/scripts/build/.variables
|
# Keep eyes on BUILDTIME format - https://github.com/docker/cli/blob/${version}/scripts/build/.variables
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
export GOCACHE="$TMPDIR/go-cache"
|
export GOCACHE="$TMPDIR/go-cache"
|
||||||
|
@ -162,14 +169,6 @@ rec {
|
||||||
cd -
|
cd -
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
patchShebangs .
|
|
||||||
substituteInPlace ./scripts/build/.variables --replace "set -eu" ""
|
|
||||||
'' + optionalString buildxSupport ''
|
|
||||||
substituteInPlace ./cli-plugins/manager/manager_unix.go --replace /usr/libexec/docker/cli-plugins \
|
|
||||||
${lib.strings.makeSearchPathOutput "bin" "libexec/docker/cli-plugins" [docker-buildx]}
|
|
||||||
'';
|
|
||||||
|
|
||||||
outputs = ["out" "man"];
|
outputs = ["out" "man"];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
@ -211,7 +210,7 @@ rec {
|
||||||
homepage = "https://www.docker.com/";
|
homepage = "https://www.docker.com/";
|
||||||
description = "An open source project to pack, ship and run any application as a lightweight container";
|
description = "An open source project to pack, ship and run any application as a lightweight container";
|
||||||
license = licenses.asl20;
|
license = licenses.asl20;
|
||||||
maintainers = with maintainers; [ offline tailhook vdemeester periklis ];
|
maintainers = with maintainers; [ offline tailhook vdemeester periklis mikroskeem ];
|
||||||
platforms = with platforms; linux ++ darwin;
|
platforms = with platforms; linux ++ darwin;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -222,14 +221,14 @@ rec {
|
||||||
# Get revisions from
|
# Get revisions from
|
||||||
# https://github.com/moby/moby/tree/${version}/hack/dockerfile/install/*
|
# https://github.com/moby/moby/tree/${version}/hack/dockerfile/install/*
|
||||||
docker_20_10 = callPackage dockerGen rec {
|
docker_20_10 = callPackage dockerGen rec {
|
||||||
version = "20.10.6";
|
version = "20.10.7";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "15kknb26vyzjgqmn8r81a1sy1i5br6bvngqd5xljihppnxvp2gvl";
|
sha256 = "1r854jrjph4v1n5lr82z0cl0241ycili4qr3qh3k3bmqx790cds3";
|
||||||
moby-src = fetchFromGitHub {
|
moby-src = fetchFromGitHub {
|
||||||
owner = "moby";
|
owner = "moby";
|
||||||
repo = "moby";
|
repo = "moby";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1l4ra9bsvydaxd2fy7dgxp7ynpp0mrlwvcdhxiafw596559ab6qk";
|
sha256 = "0xhn11kgcbzda4z9j0rflvq0nfivizh3jrzhanwn5vnghafy4zqw";
|
||||||
};
|
};
|
||||||
runcRev = "b9ee9c6314599f1b4a7f497e1f1f856fe433d3b7"; # v1.0.0-rc95
|
runcRev = "b9ee9c6314599f1b4a7f497e1f1f856fe433d3b7"; # v1.0.0-rc95
|
||||||
runcSha256 = "18sbvmlvb6kird4w3rqsfrjdj7n25firabvdxsl0rxjfy9r1g2xb";
|
runcSha256 = "18sbvmlvb6kird4w3rqsfrjdj7n25firabvdxsl0rxjfy9r1g2xb";
|
||||||
|
|
39
pkgs/data/fonts/kanit/default.nix
Normal file
39
pkgs/data/fonts/kanit/default.nix
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
{ lib, stdenv, fetchFromGitHub }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "kanit";
|
||||||
|
version = "unstable-2020-06-16";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "cadsondemak";
|
||||||
|
repo = pname;
|
||||||
|
rev = "467dfe842185681d8042cd608b8291199dd37cda";
|
||||||
|
sha256 = "0p0klb0376r8ki4ap2j99j7jcsq6wgb7m1hf3j1dkncwm7ikmg3h";
|
||||||
|
};
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/share/doc/${pname}/css/ $out/share/fonts/{opentype,truetype}
|
||||||
|
|
||||||
|
cp $src/OFL.txt $src/documentation/{BRIEF.md,features.html} $out/share/doc/${pname}
|
||||||
|
cp $src/documentation/css/fonts.css $out/share/doc/${pname}/css
|
||||||
|
cp $src/fonts/otf/*.otf $out/share/fonts/opentype
|
||||||
|
cp $src/fonts/ttf/*.ttf $out/share/fonts/truetype
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://cadsondemak.github.io/kanit/";
|
||||||
|
description = "A loopless Thai and sans serif Latin typeface for contemporary and futuristic uses";
|
||||||
|
longDescription = ''
|
||||||
|
Kanit means mathematics in Thai, and the Kanit typeface family is a formal
|
||||||
|
Loopless Thai and Sans Latin design. It is a combination of concepts,
|
||||||
|
mixing a Humanist Sans Serif motif with the curves of Capsulated Geometric
|
||||||
|
styles that makes it suitable for various uses, contemporary and
|
||||||
|
futuristic. A notable detail is that the stroke terminals have flat angles,
|
||||||
|
which allows the design to enjoy decreased spacing between letters while
|
||||||
|
preserving readability and legibility at smaller point sizes.
|
||||||
|
'';
|
||||||
|
license = licenses.ofl;
|
||||||
|
platforms = platforms.all;
|
||||||
|
maintainers = [ maintainers.toastal ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -10,11 +10,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "aws-sam-translator";
|
pname = "aws-sam-translator";
|
||||||
version = "1.36.0";
|
version = "1.37.0";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "fa1b990d9329d19052e7b91cf0b19371ed9d31a529054b616005884cd662b584";
|
sha256 = "0p2qd8gwxsfq17nmrlkpf31aqbfzjrwjk3n4p8vhci8mm11dk138";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Tests are not included in the PyPI package
|
# Tests are not included in the PyPI package
|
||||||
|
|
|
@ -5,11 +5,11 @@
|
||||||
|
|
||||||
python3.pkgs.buildPythonApplication rec {
|
python3.pkgs.buildPythonApplication rec {
|
||||||
pname = "aws-sam-cli";
|
pname = "aws-sam-cli";
|
||||||
version = "1.23.0";
|
version = "1.26.0";
|
||||||
|
|
||||||
src = python3.pkgs.fetchPypi {
|
src = python3.pkgs.fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "0j0q6p08c3l9z0yc2cggw797k47cjh6ljpchiqgg0fh6mk32215f";
|
sha256 = "11aqdwhs7wa6cp9zijqi4in3zvwirfnlcy45rrnsq0jdsh3i9hbh";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Tests are not included in the PyPI package
|
# Tests are not included in the PyPI package
|
||||||
|
@ -40,6 +40,8 @@ python3.pkgs.buildPythonApplication rec {
|
||||||
# fix over-restrictive version bounds
|
# fix over-restrictive version bounds
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace requirements/base.txt \
|
substituteInPlace requirements/base.txt \
|
||||||
|
--replace "click~=7.1" "click~=8.0" \
|
||||||
|
--replace "Flask~=1.1.2" "Flask~=2.0" \
|
||||||
--replace "dateparser~=0.7" "dateparser>=0.7" \
|
--replace "dateparser~=0.7" "dateparser>=0.7" \
|
||||||
--replace "docker~=4.2.0" "docker>=4.2.0" \
|
--replace "docker~=4.2.0" "docker>=4.2.0" \
|
||||||
--replace "requests==2.23.0" "requests~=2.24" \
|
--replace "requests==2.23.0" "requests~=2.24" \
|
||||||
|
|
|
@ -1,24 +1,24 @@
|
||||||
{ fetchFromGitHub, fetchpatch, lib, stdenv, wrapQtAppsHook, git, pcre, pugixml, qtbase, libsForQt5, qtmultimedia, qttools, yajl, libzip, hunspell
|
{ fetchFromGitHub, lib, stdenv, wrapQtAppsHook, git, pcre, pugixml, qtbase, libsForQt5, libsecret, qtmultimedia, qttools, yajl, libzip, hunspell
|
||||||
, boost, libGLU, lua, cmake, which, }:
|
, boost, libGLU, lua, cmake, which, pkg-config, }:
|
||||||
|
|
||||||
let
|
let
|
||||||
luaEnv = lua.withPackages(ps: with ps; [ luazip luafilesystem lrexlib-pcre luasql-sqlite3 lua-yajl luautf8 ]);
|
luaEnv = lua.withPackages(ps: with ps; [ luazip luafilesystem lrexlib-pcre luasql-sqlite3 lua-yajl luautf8 ]);
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "mudlet";
|
pname = "mudlet";
|
||||||
version = "4.9.1";
|
version = "4.12.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Mudlet";
|
owner = "Mudlet";
|
||||||
repo = "Mudlet";
|
repo = "Mudlet";
|
||||||
rev = "Mudlet-${version}";
|
rev = "Mudlet-${version}";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
sha256 = "0i022qcmlq4xwl2yh4xd5qdc0ag52605qmqqz6bim0h8f3dp8cx1";
|
sha256 = "023plm5mwm15xikmdh1mq3gx1n7y4a0r0kw9fvk3rvm9brm78hzp";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake wrapQtAppsHook git qttools which ];
|
nativeBuildInputs = [ pkg-config cmake wrapQtAppsHook git qttools which ];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
pcre pugixml qtbase libsForQt5.qtkeychain qtmultimedia luaEnv libzip libGLU yajl boost hunspell
|
pcre pugixml qtbase libsForQt5.qtkeychain qtmultimedia luaEnv libsecret libzip libGLU yajl boost hunspell
|
||||||
];
|
];
|
||||||
|
|
||||||
WITH_FONTS = "NO";
|
WITH_FONTS = "NO";
|
||||||
|
|
|
@ -1,28 +1,27 @@
|
||||||
{ lib, stdenv, fetchFromGitHub, scons, pkg-config, SDL2, lua, fftwFloat,
|
{ lib, stdenv, fetchFromGitHub, meson, luajit, ninja, pkg-config
|
||||||
zlib, bzip2, curl, darwin }:
|
, python3, SDL2, lua, fftwFloat, zlib, bzip2, curl, darwin }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "the-powder-toy";
|
pname = "the-powder-toy";
|
||||||
version = "95.0";
|
version = "96.0.348";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "The-Powder-Toy";
|
owner = "The-Powder-Toy";
|
||||||
repo = "The-Powder-Toy";
|
repo = "The-Powder-Toy";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "18rp2g1mj0gklra06wm9dm57h73hmm301npndh0y8ap192i5s8sa";
|
sha256 = "sha256-PAnjNeqGJPW7TeoIsaOnuOb1loyKs8pjBseKoD0CvQU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ scons pkg-config ];
|
nativeBuildInputs = [ meson ninja pkg-config python3 ];
|
||||||
|
|
||||||
propagatedBuildInputs = lib.optionals stdenv.isDarwin
|
buildInputs = [ luajit SDL2 lua fftwFloat zlib bzip2 curl ];
|
||||||
[ darwin.apple_sdk.frameworks.Cocoa ];
|
|
||||||
|
|
||||||
buildInputs = [ SDL2 lua fftwFloat zlib bzip2 curl ];
|
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
install -Dm 755 build/powder* "$out/bin/powder"
|
install -Dm 755 powder $out/bin/powder
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
propagatedBuildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Cocoa ];
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|
|
@ -1335,8 +1335,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "vspacecode";
|
name = "vspacecode";
|
||||||
publisher = "VSpaceCode";
|
publisher = "VSpaceCode";
|
||||||
version = "0.9.1";
|
version = "0.10.1";
|
||||||
sha256 = "sha256-/qJKYXR0DznqwF7XuJsz+OghIBzdWjm6dAlaRX4wdRU=";
|
sha256 = "sha256-H7SCC/ZhDswMQjLX+qpQa6A1N83MobJRPC4pyIbZ1kA=";
|
||||||
};
|
};
|
||||||
meta = {
|
meta = {
|
||||||
license = lib.licenses.mit;
|
license = lib.licenses.mit;
|
||||||
|
@ -1347,8 +1347,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "whichkey";
|
name = "whichkey";
|
||||||
publisher = "VSpaceCode";
|
publisher = "VSpaceCode";
|
||||||
version = "0.8.5";
|
version = "0.9.2";
|
||||||
sha256 = "sha256-p5fukIfk/tZFQrkf6VuT4fjmeGtKAqHDh6r6ky847ks=";
|
sha256 = "sha256-f+t2d8iWW88OYzuYFxzQPnmFMgx/DELBywYhA8A/0EU=";
|
||||||
};
|
};
|
||||||
meta = {
|
meta = {
|
||||||
license = lib.licenses.mit;
|
license = lib.licenses.mit;
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
{ buildPackages, fetchurl, perl, buildLinux, nixosTests, stdenv, ... } @ args:
|
{ buildPackages, fetchurl, perl, buildLinux, nixosTests, stdenv, ... } @ args:
|
||||||
|
|
||||||
buildLinux (args // rec {
|
buildLinux (args // rec {
|
||||||
version = "4.4.274";
|
version = "4.4.275";
|
||||||
extraMeta.branch = "4.4";
|
extraMeta.branch = "4.4";
|
||||||
extraMeta.broken = stdenv.isAarch64;
|
extraMeta.broken = stdenv.isAarch64;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
|
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
|
||||||
sha256 = "1n4wawk8fi5s22177994vq9hzay49cackdabl9r1x8y2i9jcqmg4";
|
sha256 = "1aiwq6019sibsw5smj6ii28cr64dv24c19k4n8c09nakhmhcg94i";
|
||||||
};
|
};
|
||||||
|
|
||||||
kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_4 ];
|
kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_4 ];
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
{ buildPackages, fetchurl, perl, buildLinux, nixosTests, stdenv, ... } @ args:
|
{ buildPackages, fetchurl, perl, buildLinux, nixosTests, stdenv, ... } @ args:
|
||||||
|
|
||||||
buildLinux (args // rec {
|
buildLinux (args // rec {
|
||||||
version = "4.9.274";
|
version = "4.9.275";
|
||||||
extraMeta.branch = "4.9";
|
extraMeta.branch = "4.9";
|
||||||
extraMeta.broken = stdenv.isAarch64;
|
extraMeta.broken = stdenv.isAarch64;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
|
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
|
||||||
sha256 = "0xdi33f25lbpplx36cz7chdsn7a6xdjvwxgvnmvrw7b2y0g45m95";
|
sha256 = "08mz7mzmhk5n1gwadrc5fw8s40jk0rayvdpjcricl4sv56574lb6";
|
||||||
};
|
};
|
||||||
|
|
||||||
kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_9 ];
|
kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_4_9 ];
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
buildLinux (args // rec {
|
buildLinux (args // rec {
|
||||||
version = "5.13.1";
|
version = "5.13.2";
|
||||||
|
|
||||||
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
|
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
|
||||||
modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
|
modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
|
||||||
|
@ -13,7 +13,7 @@ buildLinux (args // rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
|
url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
|
||||||
sha256 = "140a9ngzlarin84mnnwgx6z3ckw431d578aixxl60ll5853gdakj";
|
sha256 = "0dx9khk7fh003xyb3xix0kc0rmjncg7ric5p830zhadnrw4hv563";
|
||||||
};
|
};
|
||||||
|
|
||||||
kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_13 ];
|
kernelTests = args.kernelTests or [ nixosTests.kernel-generic.linux_5_13 ];
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
{ stdenv, lib, fetchsvn, linux
|
{ stdenv, lib, fetchsvn, linux
|
||||||
, scripts ? fetchsvn {
|
, scripts ? fetchsvn {
|
||||||
url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/";
|
url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/";
|
||||||
rev = "18132";
|
rev = "18165";
|
||||||
sha256 = "01mgpfx5cddq4bgffydkxpm3xlgf7zfjr1c1icsyn7f2pibd114q";
|
sha256 = "17birwp6byxr4yb8cbc0afssli84ds1p2sisjl4g6rx3r7yqvsxn";
|
||||||
}
|
}
|
||||||
, ...
|
, ...
|
||||||
}:
|
}:
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
, ... } @ args:
|
, ... } @ args:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "5.4.123-rt59"; # updated by ./update-rt.sh
|
version = "5.4.129-rt61"; # updated by ./update-rt.sh
|
||||||
branch = lib.versions.majorMinor version;
|
branch = lib.versions.majorMinor version;
|
||||||
kversion = builtins.elemAt (lib.splitString "-" version) 0;
|
kversion = builtins.elemAt (lib.splitString "-" version) 0;
|
||||||
in buildLinux (args // {
|
in buildLinux (args // {
|
||||||
|
@ -14,14 +14,14 @@ in buildLinux (args // {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz";
|
url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz";
|
||||||
sha256 = "1pi223dls52piw65s3v4ml23wdyy73xpbdvp511187b6zgzk7zlf";
|
sha256 = "1ps64gx85lmbriq445hd2hcv4g4b1d1cwf4r3nd90x6i2cj4c9j4";
|
||||||
};
|
};
|
||||||
|
|
||||||
kernelPatches = let rt-patch = {
|
kernelPatches = let rt-patch = {
|
||||||
name = "rt";
|
name = "rt";
|
||||||
patch = fetchurl {
|
patch = fetchurl {
|
||||||
url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
|
url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
|
||||||
sha256 = "1m1mnmk7h35p7dv6mg3pla6pw3b645hbbccjmp1jc3fyn6qiy6fq";
|
sha256 = "0b3hp6a7afkjqd7an4hj423nq6flwzd42kjcyk4pifv5fx6c7pgq";
|
||||||
};
|
};
|
||||||
}; in [ rt-patch ] ++ kernelPatches;
|
}; in [ rt-patch ] ++ kernelPatches;
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ buildPhase() {
|
||||||
sysSrc=$(echo $kernel/lib/modules/$kernelVersion/source)
|
sysSrc=$(echo $kernel/lib/modules/$kernelVersion/source)
|
||||||
sysOut=$(echo $kernel/lib/modules/$kernelVersion/build)
|
sysOut=$(echo $kernel/lib/modules/$kernelVersion/build)
|
||||||
unset src # used by the nv makefile
|
unset src # used by the nv makefile
|
||||||
make IGNORE_PREEMPT_RT_PRESENCE=1 SYSSRC=$sysSrc SYSOUT=$sysOut module -j$NIX_BUILD_CORES
|
make IGNORE_PREEMPT_RT_PRESENCE=1 NV_BUILD_SUPPORTS_HMM=1 SYSSRC=$sysSrc SYSOUT=$sysOut module -j$NIX_BUILD_CORES
|
||||||
|
|
||||||
cd ..
|
cd ..
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
{ stdenv, lib, fetchFromGitHub, makeWrapper, php }:
|
{ stdenvNoCC, lib, fetchFromGitHub, makeWrapper, php }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
pname = "icingaweb2";
|
pname = "icingaweb2";
|
||||||
version = "2.8.3";
|
version = "2.9.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Icinga";
|
owner = "Icinga";
|
||||||
repo = "icingaweb2";
|
repo = "icingaweb2";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-wk6rTEYRS0q0HpQRbFAmfeYVrF/xLP/HchEXNqqNpYg=";
|
sha256 = "1vp2gdvgvw960178yaqql6iza0rg2h8japsnass3kkrwrmb2liq5";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
|
||||||
Analyse problems and act on them.
|
Analyse problems and act on them.
|
||||||
'';
|
'';
|
||||||
homepage = "https://www.icinga.com/products/icinga-web-2/";
|
homepage = "https://www.icinga.com/products/icinga-web-2/";
|
||||||
license = licenses.gpl2;
|
license = licenses.gpl2Only;
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
maintainers = with maintainers; [ das_j ];
|
maintainers = with maintainers; [ das_j ];
|
||||||
};
|
};
|
||||||
|
|
26
pkgs/servers/icingaweb2/ipl.nix
Normal file
26
pkgs/servers/icingaweb2/ipl.nix
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
{ stdenvNoCC, lib, fetchFromGitHub }:
|
||||||
|
|
||||||
|
stdenvNoCC.mkDerivation rec {
|
||||||
|
pname = "icingaweb2-ipl";
|
||||||
|
version = "0.6.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "Icinga";
|
||||||
|
repo = "icinga-php-library";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "0nzvd84r9f1mypfhq4p37hsvkrbd5wzgs1m9qhj45ncvf5rq49f1";
|
||||||
|
};
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p "$out"
|
||||||
|
cp -r * "$out"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "PHP library package for Icingaweb 2";
|
||||||
|
homepage = "https://github.com/Icinga/icinga-php-library";
|
||||||
|
license = lib.licenses.mit;
|
||||||
|
platforms = lib.platforms.all;
|
||||||
|
maintainers = with lib.maintainers; [ das_j ];
|
||||||
|
};
|
||||||
|
}
|
26
pkgs/servers/icingaweb2/thirdparty.nix
Normal file
26
pkgs/servers/icingaweb2/thirdparty.nix
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
{ stdenvNoCC, lib, fetchFromGitHub }:
|
||||||
|
|
||||||
|
stdenvNoCC.mkDerivation rec {
|
||||||
|
pname = "icingaweb2-thirdparty";
|
||||||
|
version = "0.10.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "Icinga";
|
||||||
|
repo = "icinga-php-thirdparty";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "03zq6p2xyjrln8hdfks70hg8mwa51d3pnkswnzavpbxlbk83vzz5";
|
||||||
|
};
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p "$out"
|
||||||
|
cp -r * "$out"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Third party dependencies for Icingaweb 2";
|
||||||
|
homepage = "https://github.com/Icinga/icinga-php-thirdparty";
|
||||||
|
license = lib.licenses.mit;
|
||||||
|
platforms = lib.platforms.all;
|
||||||
|
maintainers = with lib.maintainers; [ das_j ];
|
||||||
|
};
|
||||||
|
}
|
59
pkgs/servers/janus-gateway/default.nix
Normal file
59
pkgs/servers/janus-gateway/default.nix
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, gengetopt
|
||||||
|
, glib, libconfig, libnice, jansson, boringssl, zlib, srtp, libuv
|
||||||
|
, libmicrohttpd, curl, libwebsockets, sofia_sip, libogg, libopus
|
||||||
|
, usrsctp, ffmpeg
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
libwebsockets_janus = libwebsockets.overrideAttrs (_: {
|
||||||
|
configureFlags = [
|
||||||
|
"-DLWS_MAX_SMP=1"
|
||||||
|
"-DLWS_WITHOUT_EXTENSIONS=0"
|
||||||
|
];
|
||||||
|
});
|
||||||
|
in
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "janus-gateway";
|
||||||
|
version = "0.11.3";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "meetecho";
|
||||||
|
repo = pname;
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "15nadpz67w24f4wz8ya0kx0a1jc4wxv1kl0d5fr7kckkdyijh7gz";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ autoreconfHook pkg-config gengetopt ];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
glib libconfig libnice jansson boringssl zlib srtp libuv libmicrohttpd
|
||||||
|
curl libwebsockets_janus sofia_sip libogg libopus usrsctp ffmpeg
|
||||||
|
];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
configureFlags = [
|
||||||
|
"--enable-boringssl=${boringssl}"
|
||||||
|
"--enable-libsrtp2"
|
||||||
|
"--enable-turn-rest-api"
|
||||||
|
"--enable-json-logger"
|
||||||
|
"--enable-gelf-event-handler"
|
||||||
|
"--enable-post-processing"
|
||||||
|
];
|
||||||
|
|
||||||
|
outputs = [ "out" "dev" "doc" "man" ];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
moveToOutput share/janus "$doc"
|
||||||
|
moveToOutput etc "$doc"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "General purpose WebRTC server";
|
||||||
|
homepage = "https://janus.conf.meetecho.com/";
|
||||||
|
license = licenses.gpl3Only;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ fpletz ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -27,6 +27,6 @@ buildGoModule rec {
|
||||||
description = "The plugin-driven server agent for collecting & reporting metrics";
|
description = "The plugin-driven server agent for collecting & reporting metrics";
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
homepage = "https://www.influxdata.com/time-series-platform/telegraf/";
|
homepage = "https://www.influxdata.com/time-series-platform/telegraf/";
|
||||||
maintainers = with maintainers; [ mic92 roblabla timstott foxit64 ];
|
maintainers = with maintainers; [ mic92 roblabla timstott ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,13 +9,13 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "2.7.4";
|
version = "2.7.5";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "discourse";
|
owner = "discourse";
|
||||||
repo = "discourse";
|
repo = "discourse";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-3cvrdWBXRM5F8qFEqbe8ru1U0wBqCkRxK7GAV0beJNk=";
|
sha256 = "sha256-OykWaiBAHcZy41i+aRzBHCRgwnfQUBijHjb+ofIk25M=";
|
||||||
};
|
};
|
||||||
|
|
||||||
runtimeDeps = [
|
runtimeDeps = [
|
||||||
|
@ -64,7 +64,6 @@ let
|
||||||
});
|
});
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation (builtins.removeAttrs args [ "bundlerEnvArgs" ] // {
|
stdenv.mkDerivation (builtins.removeAttrs args [ "bundlerEnvArgs" ] // {
|
||||||
inherit name pname version src meta;
|
|
||||||
pluginName = if name != null then name else "${pname}-${version}";
|
pluginName = if name != null then name else "${pname}-${version}";
|
||||||
phases = [ "unpackPhase" "installPhase" ];
|
phases = [ "unpackPhase" "installPhase" ];
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
@ -151,6 +150,7 @@ let
|
||||||
brotli
|
brotli
|
||||||
procps
|
procps
|
||||||
nodePackages.uglify-js
|
nodePackages.uglify-js
|
||||||
|
nodePackages.terser
|
||||||
];
|
];
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
|
|
@ -3,10 +3,10 @@ let
|
||||||
callPackage = newScope args;
|
callPackage = newScope args;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
discourse-spoiler-alert = callPackage ./discourse-spoiler-alert {};
|
|
||||||
discourse-solved = callPackage ./discourse-solved {};
|
|
||||||
discourse-canned-replies = callPackage ./discourse-canned-replies {};
|
discourse-canned-replies = callPackage ./discourse-canned-replies {};
|
||||||
discourse-math = callPackage ./discourse-math {};
|
|
||||||
discourse-github = callPackage ./discourse-github {};
|
discourse-github = callPackage ./discourse-github {};
|
||||||
|
discourse-math = callPackage ./discourse-math {};
|
||||||
|
discourse-solved = callPackage ./discourse-solved {};
|
||||||
|
discourse-spoiler-alert = callPackage ./discourse-spoiler-alert {};
|
||||||
discourse-yearly-review = callPackage ./discourse-yearly-review {};
|
discourse-yearly-review = callPackage ./discourse-yearly-review {};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,17 @@
|
||||||
{ mkDiscoursePlugin, fetchFromGitHub }:
|
{ lib, mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
mkDiscoursePlugin {
|
mkDiscoursePlugin {
|
||||||
name = "discourse-canned-replies";
|
name = "discourse-canned-replies";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "discourse";
|
owner = "discourse";
|
||||||
repo = "discourse-canned-replies";
|
repo = "discourse-canned-replies";
|
||||||
rev = "7ee748f18a276aca42185e2079c1d4cadeecdaf8";
|
rev = "e3f1de8928df5955b64994079b7e2073556e5456";
|
||||||
sha256 = "0j10kxfr6v2rdd58smg2i7iac46z74qnnjk8b91jd1svazhis1ph";
|
sha256 = "1g4fazm6cn6hbfd08mq2zhc6dgm4qj1r1f1amhbgxhk6qsxf42cd";
|
||||||
|
};
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/discourse/discourse-canned-replies";
|
||||||
|
maintainers = with maintainers; [ talyz ];
|
||||||
|
license = licenses.gpl2Only;
|
||||||
|
description = "Adds support for inserting a canned reply into the composer window via a UI";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
source 'https://rubygems.org'
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
source "https://rubygems.org"
|
||||||
|
|
||||||
|
git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
|
||||||
|
|
||||||
|
# gem "rails"
|
||||||
gem 'sawyer', '0.8.2'
|
gem 'sawyer', '0.8.2'
|
||||||
gem 'octokit', '4.21.0'
|
gem 'octokit', '4.21.0'
|
||||||
|
|
|
@ -1,21 +1,25 @@
|
||||||
GEM
|
GEM
|
||||||
remote: https://rubygems.org/
|
remote: https://rubygems.org/
|
||||||
specs:
|
specs:
|
||||||
addressable (2.7.0)
|
addressable (2.8.0)
|
||||||
public_suffix (>= 2.0.2, < 5.0)
|
public_suffix (>= 2.0.2, < 5.0)
|
||||||
faraday (1.4.2)
|
faraday (1.5.0)
|
||||||
faraday-em_http (~> 1.0)
|
faraday-em_http (~> 1.0)
|
||||||
faraday-em_synchrony (~> 1.0)
|
faraday-em_synchrony (~> 1.0)
|
||||||
faraday-excon (~> 1.1)
|
faraday-excon (~> 1.1)
|
||||||
|
faraday-httpclient (~> 1.0.1)
|
||||||
faraday-net_http (~> 1.0)
|
faraday-net_http (~> 1.0)
|
||||||
faraday-net_http_persistent (~> 1.1)
|
faraday-net_http_persistent (~> 1.1)
|
||||||
|
faraday-patron (~> 1.0)
|
||||||
multipart-post (>= 1.2, < 3)
|
multipart-post (>= 1.2, < 3)
|
||||||
ruby2_keywords (>= 0.0.4)
|
ruby2_keywords (>= 0.0.4)
|
||||||
faraday-em_http (1.0.0)
|
faraday-em_http (1.0.0)
|
||||||
faraday-em_synchrony (1.0.0)
|
faraday-em_synchrony (1.0.0)
|
||||||
faraday-excon (1.1.0)
|
faraday-excon (1.1.0)
|
||||||
|
faraday-httpclient (1.0.1)
|
||||||
faraday-net_http (1.0.1)
|
faraday-net_http (1.0.1)
|
||||||
faraday-net_http_persistent (1.1.0)
|
faraday-net_http_persistent (1.1.0)
|
||||||
|
faraday-patron (1.0.0)
|
||||||
multipart-post (2.1.1)
|
multipart-post (2.1.1)
|
||||||
octokit (4.21.0)
|
octokit (4.21.0)
|
||||||
faraday (>= 0.9)
|
faraday (>= 0.9)
|
||||||
|
@ -27,11 +31,11 @@ GEM
|
||||||
faraday (> 0.8, < 2.0)
|
faraday (> 0.8, < 2.0)
|
||||||
|
|
||||||
PLATFORMS
|
PLATFORMS
|
||||||
ruby
|
x86_64-linux
|
||||||
|
|
||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
octokit (= 4.21.0)
|
octokit (= 4.21.0)
|
||||||
sawyer (= 0.8.2)
|
sawyer (= 0.8.2)
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
2.1.4
|
2.2.20
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ mkDiscoursePlugin, fetchFromGitHub }:
|
{ lib, mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
mkDiscoursePlugin {
|
mkDiscoursePlugin {
|
||||||
name = "discourse-github";
|
name = "discourse-github";
|
||||||
|
@ -6,7 +6,14 @@ mkDiscoursePlugin {
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "discourse";
|
owner = "discourse";
|
||||||
repo = "discourse-github";
|
repo = "discourse-github";
|
||||||
rev = "151e353a5a1971157c70c2e2b0f56387f212a81f";
|
rev = "154fd5ea597640c2259ce489b4ce75b48ac1973c";
|
||||||
sha256 = "00kra6zd2k1f2vwcdvxnxnammzh72f5qxcqbb94m0z6maj598wdy";
|
sha256 = "0wb5p219z42rc035rnh2iwrbsj000nxa9shbmc325rzcg6xlhdhw";
|
||||||
};
|
};
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/discourse/discourse-github";
|
||||||
|
maintainers = with maintainers; [ talyz ];
|
||||||
|
license = licenses.mit;
|
||||||
|
description = "Adds GitHub badges and linkback functionality";
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,21 +5,21 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy";
|
sha256 = "022r3m9wdxljpbya69y2i3h9g3dhhfaqzidf95m6qjzms792jvgp";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "2.7.0";
|
version = "2.8.0";
|
||||||
};
|
};
|
||||||
faraday = {
|
faraday = {
|
||||||
dependencies = ["faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-net_http" "faraday-net_http_persistent" "multipart-post" "ruby2_keywords"];
|
dependencies = ["faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-httpclient" "faraday-net_http" "faraday-net_http_persistent" "faraday-patron" "multipart-post" "ruby2_keywords"];
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "07mhk70gv453pg38md346470hknyhipdqppnplq706ll3k3lzb7v";
|
sha256 = "0gwbii45plm9bljk22bwzhzxrc5xid8qx24f54vrm74q3zaz00ah";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "1.4.2";
|
version = "1.5.0";
|
||||||
};
|
};
|
||||||
faraday-em_http = {
|
faraday-em_http = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
@ -51,6 +51,16 @@
|
||||||
};
|
};
|
||||||
version = "1.1.0";
|
version = "1.1.0";
|
||||||
};
|
};
|
||||||
|
faraday-httpclient = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "0fyk0jd3ks7fdn8nv3spnwjpzx2lmxmg2gh4inz3by1zjzqg33sc";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "1.0.1";
|
||||||
|
};
|
||||||
faraday-net_http = {
|
faraday-net_http = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
platforms = [];
|
platforms = [];
|
||||||
|
@ -71,6 +81,16 @@
|
||||||
};
|
};
|
||||||
version = "1.1.0";
|
version = "1.1.0";
|
||||||
};
|
};
|
||||||
|
faraday-patron = {
|
||||||
|
groups = ["default"];
|
||||||
|
platforms = [];
|
||||||
|
source = {
|
||||||
|
remotes = ["https://rubygems.org"];
|
||||||
|
sha256 = "19wgsgfq0xkski1g7m96snv39la3zxz6x7nbdgiwhg5v82rxfb6w";
|
||||||
|
type = "gem";
|
||||||
|
};
|
||||||
|
version = "1.0.0";
|
||||||
|
};
|
||||||
multipart-post = {
|
multipart-post = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
platforms = [];
|
platforms = [];
|
||||||
|
|
|
@ -1,11 +1,17 @@
|
||||||
{ mkDiscoursePlugin, fetchFromGitHub }:
|
{ lib, mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
mkDiscoursePlugin {
|
mkDiscoursePlugin {
|
||||||
name = "discourse-math";
|
name = "discourse-math";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "discourse";
|
owner = "discourse";
|
||||||
repo = "discourse-math";
|
repo = "discourse-math";
|
||||||
rev = "143ddea4558ea9a1b3fd71635bc11e055763c8e7";
|
rev = "aed0c83cee568d5239143bcf1df59c5fbe86b276";
|
||||||
sha256 = "18pq5ybl3g34i39cpixc3nszvq8gx5yji58zlbbl6428mm011cbx";
|
sha256 = "1k6kpnhf8s2l0w9zr5pn3wvn8w0n3gwkv7qkv0mkhkzy246ag20z";
|
||||||
|
};
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/discourse/discourse-math";
|
||||||
|
maintainers = with maintainers; [ talyz ];
|
||||||
|
license = licenses.mit;
|
||||||
|
description = "Official MathJax support for Discourse";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,17 @@
|
||||||
{ mkDiscoursePlugin, fetchFromGitHub }:
|
{ lib, mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
mkDiscoursePlugin {
|
mkDiscoursePlugin {
|
||||||
name = "discourse-solved";
|
name = "discourse-solved";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "discourse";
|
owner = "discourse";
|
||||||
repo = "discourse-solved";
|
repo = "discourse-solved";
|
||||||
rev = "179611766d53974308e6f7def21836997c3c55fc";
|
rev = "b96374bf4ab7e6d5cecb0761918b060a524eb9bf";
|
||||||
sha256 = "sha256:1s77h42d3bv2lqw33akxh8ss482vxnz4d7qz6xicwqfwv34qjf03";
|
sha256 = "0zrv70p0wz93akpcj6gpwjkw7az3iz9bx4n2z630kyrlmxdbj32a";
|
||||||
|
};
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/discourse/discourse-solved";
|
||||||
|
maintainers = with maintainers; [ talyz ];
|
||||||
|
license = licenses.mit;
|
||||||
|
description = "Allow accepted answers on topics";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,17 @@
|
||||||
{ mkDiscoursePlugin, fetchFromGitHub }:
|
{ lib, mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
mkDiscoursePlugin {
|
mkDiscoursePlugin {
|
||||||
name = "discourse-spoiler-alert";
|
name = "discourse-spoiler-alert";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "discourse";
|
owner = "discourse";
|
||||||
repo = "discourse-spoiler-alert";
|
repo = "discourse-spoiler-alert";
|
||||||
rev = "e200cfa571d252cab63f3d30d619b370986e4cee";
|
rev = "ec14a2316da0a4fc055cfc21c68a60040188a2b4";
|
||||||
sha256 = "0ya69ix5g77wz4c9x9gmng6l25ghb5xxlx3icr6jam16q14dzc33";
|
sha256 = "11n977gp8va7jkqa6i3ja279k4nmkhk5l4hg9xhs229450m1rnfp";
|
||||||
|
};
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/discourse/discourse-spoiler-alert";
|
||||||
|
maintainers = with maintainers; [ talyz ];
|
||||||
|
license = licenses.mit;
|
||||||
|
description = "Hide spoilers behind the spoiler-alert jQuery plugin";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,17 @@
|
||||||
{ mkDiscoursePlugin, fetchFromGitHub }:
|
{ lib, mkDiscoursePlugin, fetchFromGitHub }:
|
||||||
|
|
||||||
mkDiscoursePlugin {
|
mkDiscoursePlugin {
|
||||||
name = "discourse-yearly-review";
|
name = "discourse-yearly-review";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "discourse";
|
owner = "discourse";
|
||||||
repo = "discourse-yearly-review";
|
repo = "discourse-yearly-review";
|
||||||
rev = "d1471bdb68945f55342e72e2c525b4f628419a50";
|
rev = "95149df2282d62eebeb265b4895df15a2b259d03";
|
||||||
sha256 = "sha256:0xpl0l1vpih8xzb6y7k1lm72nj4ya99378viyhqfvpwzsn5pha2a";
|
sha256 = "02n27al8n8cxz3dx4awlnd4qhv8a0fmjac57yyblmpviapja1wj7";
|
||||||
|
};
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/discourse/discourse-yearly-review";
|
||||||
|
maintainers = with maintainers; [ talyz ];
|
||||||
|
license = licenses.mit;
|
||||||
|
description = "Publishes an automated Year in Review topic";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -186,11 +186,6 @@ GEM
|
||||||
jwt (2.2.3)
|
jwt (2.2.3)
|
||||||
kgio (2.11.3)
|
kgio (2.11.3)
|
||||||
libv8-node (15.14.0.1)
|
libv8-node (15.14.0.1)
|
||||||
libv8-node (15.14.0.1-arm64-darwin-20)
|
|
||||||
libv8-node (15.14.0.1-x86_64-darwin-18)
|
|
||||||
libv8-node (15.14.0.1-x86_64-darwin-19)
|
|
||||||
libv8-node (15.14.0.1-x86_64-darwin-20)
|
|
||||||
libv8-node (15.14.0.1-x86_64-linux)
|
|
||||||
listen (3.5.1)
|
listen (3.5.1)
|
||||||
rb-fsevent (~> 0.10, >= 0.10.3)
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
||||||
rb-inotify (~> 0.9, >= 0.9.10)
|
rb-inotify (~> 0.9, >= 0.9.10)
|
||||||
|
@ -214,7 +209,7 @@ GEM
|
||||||
rack (>= 1.1.3)
|
rack (>= 1.1.3)
|
||||||
method_source (1.0.0)
|
method_source (1.0.0)
|
||||||
mini_mime (1.1.0)
|
mini_mime (1.1.0)
|
||||||
mini_portile2 (2.5.1)
|
mini_portile2 (2.5.3)
|
||||||
mini_racer (0.4.0)
|
mini_racer (0.4.0)
|
||||||
libv8-node (~> 15.14.0.0)
|
libv8-node (~> 15.14.0.0)
|
||||||
mini_scheduler (0.13.0)
|
mini_scheduler (0.13.0)
|
||||||
|
@ -232,7 +227,7 @@ GEM
|
||||||
multipart-post (2.1.1)
|
multipart-post (2.1.1)
|
||||||
mustache (1.1.1)
|
mustache (1.1.1)
|
||||||
nio4r (2.5.7)
|
nio4r (2.5.7)
|
||||||
nokogiri (1.11.5)
|
nokogiri (1.11.7)
|
||||||
mini_portile2 (~> 2.5.0)
|
mini_portile2 (~> 2.5.0)
|
||||||
racc (~> 1.4)
|
racc (~> 1.4)
|
||||||
nokogumbo (2.0.5)
|
nokogumbo (2.0.5)
|
||||||
|
@ -267,7 +262,7 @@ GEM
|
||||||
omniauth-twitter (1.4.0)
|
omniauth-twitter (1.4.0)
|
||||||
omniauth-oauth (~> 1.1)
|
omniauth-oauth (~> 1.1)
|
||||||
rack
|
rack
|
||||||
onebox (2.2.15)
|
onebox (2.2.17)
|
||||||
addressable (~> 2.7.0)
|
addressable (~> 2.7.0)
|
||||||
htmlentities (~> 4.3)
|
htmlentities (~> 4.3)
|
||||||
multi_json (~> 1.11)
|
multi_json (~> 1.11)
|
||||||
|
@ -465,12 +460,7 @@ GEM
|
||||||
zeitwerk (2.4.2)
|
zeitwerk (2.4.2)
|
||||||
|
|
||||||
PLATFORMS
|
PLATFORMS
|
||||||
arm64-darwin-20
|
|
||||||
ruby
|
ruby
|
||||||
x86_64-darwin-18
|
|
||||||
x86_64-darwin-19
|
|
||||||
x86_64-darwin-20
|
|
||||||
x86_64-linux
|
|
||||||
|
|
||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
actionmailer (= 6.1.3.2)
|
actionmailer (= 6.1.3.2)
|
||||||
|
@ -600,4 +590,4 @@ DEPENDENCIES
|
||||||
yaml-lint
|
yaml-lint
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
2.2.16
|
2.2.20
|
||||||
|
|
|
@ -1135,10 +1135,10 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "0xg1x4708a4pn2wk8qs2d8kfzzdyv9kjjachg2f1phsx62ap2rx2";
|
sha256 = "1ad0mli9rc0f17zw4ibp24dbj1y39zkykijsjmnzl4gwpg5s0j6k";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "2.5.1";
|
version = "2.5.3";
|
||||||
};
|
};
|
||||||
mini_racer = {
|
mini_racer = {
|
||||||
dependencies = ["libv8-node"];
|
dependencies = ["libv8-node"];
|
||||||
|
@ -1284,10 +1284,10 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "1i80ny61maqzqr1fq5wgpkijmh5j8abisrmhn16kv7mzmxqg5w0m";
|
sha256 = "1vrn31385ix5k9b0yalnlzv360isv6dincbcvi8psllnwz4sjxj9";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "1.11.5";
|
version = "1.11.7";
|
||||||
};
|
};
|
||||||
nokogumbo = {
|
nokogumbo = {
|
||||||
dependencies = ["nokogiri"];
|
dependencies = ["nokogiri"];
|
||||||
|
@ -1414,10 +1414,10 @@
|
||||||
platforms = [];
|
platforms = [];
|
||||||
source = {
|
source = {
|
||||||
remotes = ["https://rubygems.org"];
|
remotes = ["https://rubygems.org"];
|
||||||
sha256 = "0a76xmwikcg2lv8k2cawzhmi2hx7j145v12mbpriby6zff797z4g";
|
sha256 = "1swlysqwfc6mb7smv52yv12sd79dchjf2f6r738wrag0wp5hazqy";
|
||||||
type = "gem";
|
type = "gem";
|
||||||
};
|
};
|
||||||
version = "2.2.15";
|
version = "2.2.17";
|
||||||
};
|
};
|
||||||
openssl = {
|
openssl = {
|
||||||
groups = ["default"];
|
groups = ["default"];
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#!/usr/bin/env nix-shell
|
#!/usr/bin/env nix-shell
|
||||||
#! nix-shell -i python3 -p bundix bundler nix-update python3 python3Packages.requests python3Packages.click python3Packages.click-log
|
#! nix-shell -i python3 -p bundix bundler nix-update nix-universal-prefetch python3 python3Packages.requests python3Packages.click python3Packages.click-log
|
||||||
|
|
||||||
import click
|
import click
|
||||||
import click_log
|
import click_log
|
||||||
|
@ -8,17 +8,22 @@ import tempfile
|
||||||
import re
|
import re
|
||||||
import logging
|
import logging
|
||||||
import subprocess
|
import subprocess
|
||||||
import pathlib
|
import os
|
||||||
|
import stat
|
||||||
|
import json
|
||||||
|
import requests
|
||||||
from distutils.version import LooseVersion
|
from distutils.version import LooseVersion
|
||||||
|
from pathlib import Path
|
||||||
from typing import Iterable
|
from typing import Iterable
|
||||||
|
|
||||||
import requests
|
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class DiscourseRepo:
|
class DiscourseRepo:
|
||||||
version_regex = re.compile(r'^v\d+\.\d+\.\d+$')
|
version_regex = re.compile(r'^v\d+\.\d+\.\d+$')
|
||||||
|
_latest_commit_sha = None
|
||||||
|
|
||||||
def __init__(self, owner: str = 'discourse', repo: str = 'discourse'):
|
def __init__(self, owner: str = 'discourse', repo: str = 'discourse'):
|
||||||
self.owner = owner
|
self.owner = owner
|
||||||
self.repo = repo
|
self.repo = repo
|
||||||
|
@ -35,6 +40,15 @@ class DiscourseRepo:
|
||||||
versions.sort(key=lambda x: LooseVersion(x.replace('v', '')), reverse=True)
|
versions.sort(key=lambda x: LooseVersion(x.replace('v', '')), reverse=True)
|
||||||
return versions
|
return versions
|
||||||
|
|
||||||
|
@property
|
||||||
|
def latest_commit_sha(self) -> str:
|
||||||
|
if self._latest_commit_sha is None:
|
||||||
|
r = requests.get(f'https://api.github.com/repos/{self.owner}/{self.repo}/commits?per_page=1')
|
||||||
|
r.raise_for_status()
|
||||||
|
self._latest_commit_sha = r.json()[0]['sha']
|
||||||
|
|
||||||
|
return self._latest_commit_sha
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def rev2version(tag: str) -> str:
|
def rev2version(tag: str) -> str:
|
||||||
"""
|
"""
|
||||||
|
@ -57,19 +71,23 @@ class DiscourseRepo:
|
||||||
|
|
||||||
def _call_nix_update(pkg, version):
|
def _call_nix_update(pkg, version):
|
||||||
"""calls nix-update from nixpkgs root dir"""
|
"""calls nix-update from nixpkgs root dir"""
|
||||||
nixpkgs_path = pathlib.Path(__file__).parent / '../../../../'
|
nixpkgs_path = Path(__file__).parent / '../../../../'
|
||||||
return subprocess.check_output(['nix-update', pkg, '--version', version], cwd=nixpkgs_path)
|
return subprocess.check_output(['nix-update', pkg, '--version', version], cwd=nixpkgs_path)
|
||||||
|
|
||||||
|
|
||||||
|
def _nix_eval(expr: str):
|
||||||
|
nixpkgs_path = Path(__file__).parent / '../../../../'
|
||||||
|
return json.loads(subprocess.check_output(['nix', 'eval', '--json', f'(with import {nixpkgs_path} {{}}; {expr})'], text=True))
|
||||||
|
|
||||||
|
|
||||||
def _get_current_package_version(pkg: str):
|
def _get_current_package_version(pkg: str):
|
||||||
nixpkgs_path = pathlib.Path(__file__).parent / '../../../../'
|
return _nix_eval(f'{pkg}.version')
|
||||||
return subprocess.check_output(['nix', 'eval', '--raw', f'nixpkgs.{pkg}.version'], text=True)
|
|
||||||
|
|
||||||
|
|
||||||
def _diff_file(filepath: str, old_version: str, new_version: str):
|
def _diff_file(filepath: str, old_version: str, new_version: str):
|
||||||
repo = DiscourseRepo()
|
repo = DiscourseRepo()
|
||||||
|
|
||||||
current_dir = pathlib.Path(__file__).parent
|
current_dir = Path(__file__).parent
|
||||||
|
|
||||||
old = repo.get_file(filepath, 'v' + old_version)
|
old = repo.get_file(filepath, 'v' + old_version)
|
||||||
new = repo.get_file(filepath, 'v' + new_version)
|
new = repo.get_file(filepath, 'v' + new_version)
|
||||||
|
@ -148,17 +166,87 @@ def update(rev):
|
||||||
version = repo.rev2version(rev)
|
version = repo.rev2version(rev)
|
||||||
logger.debug(f"Using version {version}")
|
logger.debug(f"Using version {version}")
|
||||||
|
|
||||||
rubyenv_dir = pathlib.Path(__file__).parent / "rubyEnv"
|
rubyenv_dir = Path(__file__).parent / "rubyEnv"
|
||||||
|
|
||||||
for fn in ['Gemfile.lock', 'Gemfile']:
|
for fn in ['Gemfile.lock', 'Gemfile']:
|
||||||
with open(rubyenv_dir / fn, 'w') as f:
|
with open(rubyenv_dir / fn, 'w') as f:
|
||||||
f.write(repo.get_file(fn, rev))
|
f.write(repo.get_file(fn, rev))
|
||||||
|
|
||||||
subprocess.check_output(['bundle', 'lock'], cwd=rubyenv_dir)
|
subprocess.check_output(['bundle', 'lock'], cwd=rubyenv_dir)
|
||||||
|
for platform in ['arm64-darwin-20', 'x86_64-darwin-18',
|
||||||
|
'x86_64-darwin-19', 'x86_64-darwin-20',
|
||||||
|
'x86_64-linux']:
|
||||||
|
subprocess.check_output(['bundle', 'lock', '--remove-platform', platform], cwd=rubyenv_dir)
|
||||||
subprocess.check_output(['bundix'], cwd=rubyenv_dir)
|
subprocess.check_output(['bundix'], cwd=rubyenv_dir)
|
||||||
|
|
||||||
_call_nix_update('discourse', repo.rev2version(rev))
|
_call_nix_update('discourse', repo.rev2version(rev))
|
||||||
|
|
||||||
|
@cli.command()
|
||||||
|
def update_plugins():
|
||||||
|
"""Update plugins to their latest revision.
|
||||||
|
|
||||||
|
"""
|
||||||
|
plugins = [
|
||||||
|
{'name': 'discourse-canned-replies'},
|
||||||
|
{'name': 'discourse-github'},
|
||||||
|
{'name': 'discourse-math'},
|
||||||
|
{'name': 'discourse-solved'},
|
||||||
|
{'name': 'discourse-spoiler-alert'},
|
||||||
|
{'name': 'discourse-yearly-review'},
|
||||||
|
]
|
||||||
|
|
||||||
|
for plugin in plugins:
|
||||||
|
fetcher = plugin.get('fetcher') or "fetchFromGitHub"
|
||||||
|
owner = plugin.get('owner') or "discourse"
|
||||||
|
name = plugin.get('name')
|
||||||
|
repo_name = plugin.get('repo_name') or name
|
||||||
|
|
||||||
|
repo = DiscourseRepo(owner=owner, repo=repo_name)
|
||||||
|
prev_commit_sha = _nix_eval(f'discourse.plugins.{name}.src.rev')
|
||||||
|
|
||||||
|
if prev_commit_sha == repo.latest_commit_sha:
|
||||||
|
click.echo(f'Plugin {name} is already at the latest revision')
|
||||||
|
continue
|
||||||
|
|
||||||
|
filename = _nix_eval(f'builtins.unsafeGetAttrPos "src" discourse.plugins.{name}')['file']
|
||||||
|
prev_hash = _nix_eval(f'discourse.plugins.{name}.src.outputHash')
|
||||||
|
new_hash = subprocess.check_output([
|
||||||
|
'nix-universal-prefetch', fetcher,
|
||||||
|
'--owner', owner,
|
||||||
|
'--repo', repo_name,
|
||||||
|
'--rev', repo.latest_commit_sha,
|
||||||
|
], text=True).strip("\n")
|
||||||
|
|
||||||
|
click.echo(f"Update {name}, {prev_commit_sha} -> {repo.latest_commit_sha} in {filename}")
|
||||||
|
|
||||||
|
with open(filename, 'r+') as f:
|
||||||
|
content = f.read()
|
||||||
|
content = content.replace(prev_commit_sha, repo.latest_commit_sha)
|
||||||
|
content = content.replace(prev_hash, new_hash)
|
||||||
|
f.seek(0)
|
||||||
|
f.write(content)
|
||||||
|
f.truncate()
|
||||||
|
|
||||||
|
rubyenv_dir = Path(filename).parent
|
||||||
|
gemfile = rubyenv_dir / "Gemfile"
|
||||||
|
gemfile_text = ''
|
||||||
|
for line in repo.get_file('plugin.rb', repo.latest_commit_sha).splitlines():
|
||||||
|
if 'gem ' in line:
|
||||||
|
gemfile_text = gemfile_text + line + os.linesep
|
||||||
|
|
||||||
|
if len(gemfile_text) > 0:
|
||||||
|
if os.path.isfile(gemfile):
|
||||||
|
os.remove(gemfile)
|
||||||
|
|
||||||
|
subprocess.check_output(['bundle', 'init'], cwd=rubyenv_dir)
|
||||||
|
os.chmod(gemfile, stat.S_IREAD | stat.S_IWRITE | stat.S_IRGRP | stat.S_IROTH)
|
||||||
|
|
||||||
|
with open(gemfile, 'a') as f:
|
||||||
|
f.write(gemfile_text)
|
||||||
|
|
||||||
|
subprocess.check_output(['bundle', 'lock', '--update'], cwd=rubyenv_dir)
|
||||||
|
subprocess.check_output(['bundix'], cwd=rubyenv_dir)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
cli()
|
cli()
|
||||||
|
|
|
@ -3102,11 +3102,11 @@ lib.makeScope newScope (self: with self; {
|
||||||
# THIS IS A GENERATED FILE. DO NOT EDIT!
|
# THIS IS A GENERATED FILE. DO NOT EDIT!
|
||||||
xorgserver = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, openssl, libX11, libXau, libXaw, libxcb, xcbutil, xcbutilwm, xcbutilimage, xcbutilkeysyms, xcbutilrenderutil, libXdmcp, libXfixes, libxkbfile, libXmu, libXpm, libXrender, libXres, libXt }: stdenv.mkDerivation {
|
xorgserver = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, openssl, libX11, libXau, libXaw, libxcb, xcbutil, xcbutilwm, xcbutilimage, xcbutilkeysyms, xcbutilrenderutil, libXdmcp, libXfixes, libxkbfile, libXmu, libXpm, libXrender, libXres, libXt }: stdenv.mkDerivation {
|
||||||
pname = "xorg-server";
|
pname = "xorg-server";
|
||||||
version = "1.20.11";
|
version = "1.20.12";
|
||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://xorg/individual/xserver/xorg-server-1.20.11.tar.bz2";
|
url = "mirror://xorg/individual/xserver/xorg-server-1.20.12.tar.xz";
|
||||||
sha256 = "0jacqgin8kcyy8fyv0lhgb4if8g9hp60rm3ih3s1mgps7xp7jk4i";
|
sha256 = "1b4ckvxaiiiwdxwyfzbbfkr384qqy5qzfsm37z0fr08x8f9w0v9k";
|
||||||
};
|
};
|
||||||
hardeningDisable = [ "bindnow" "relro" ];
|
hardeningDisable = [ "bindnow" "relro" ];
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
|
|
@ -218,4 +218,4 @@ mirror://xorg/individual/util/lndir-1.0.3.tar.bz2
|
||||||
mirror://xorg/individual/util/makedepend-1.0.6.tar.bz2
|
mirror://xorg/individual/util/makedepend-1.0.6.tar.bz2
|
||||||
mirror://xorg/individual/util/util-macros-1.19.3.tar.bz2
|
mirror://xorg/individual/util/util-macros-1.19.3.tar.bz2
|
||||||
mirror://xorg/individual/util/xorg-cf-files-1.0.6.tar.bz2
|
mirror://xorg/individual/util/xorg-cf-files-1.0.6.tar.bz2
|
||||||
mirror://xorg/individual/xserver/xorg-server-1.20.11.tar.bz2
|
mirror://xorg/individual/xserver/xorg-server-1.20.12.tar.xz
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "infracost";
|
pname = "infracost";
|
||||||
version = "0.9.3";
|
version = "0.9.4";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "infracost";
|
owner = "infracost";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
repo = "infracost";
|
repo = "infracost";
|
||||||
sha256 = "sha256-3AH/VUKIno/jObep5GNfIpyOW5TcfZ5UZyornJWTGOw=";
|
sha256 = "sha256-OQwMO9bhPK+Wjob8rAFYJQRpAYf1bPdRi2BjETjpSpE=";
|
||||||
};
|
};
|
||||||
vendorSha256 = "sha256-zMEtVPyzwW4SrbpydDFDqgHEC0/khkrSxlEnQ5I0he8=";
|
vendorSha256 = "sha256-zMEtVPyzwW4SrbpydDFDqgHEC0/khkrSxlEnQ5I0he8=";
|
||||||
|
|
||||||
|
@ -25,12 +25,7 @@ buildGoModule rec {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
# panic if .config directory can't be accessed
|
|
||||||
# https://github.com/infracost/infracost/pull/862
|
|
||||||
export HOME="$TMPDIR"
|
|
||||||
mkdir -p "$HOME/.config/infracost"
|
|
||||||
export INFRACOST_SKIP_UPDATE_CHECK=true
|
export INFRACOST_SKIP_UPDATE_CHECK=true
|
||||||
|
|
||||||
installShellCompletion --cmd infracost \
|
installShellCompletion --cmd infracost \
|
||||||
--bash <($out/bin/infracost completion --shell bash) \
|
--bash <($out/bin/infracost completion --shell bash) \
|
||||||
--fish <($out/bin/infracost completion --shell fish) \
|
--fish <($out/bin/infracost completion --shell fish) \
|
||||||
|
@ -41,10 +36,7 @@ buildGoModule rec {
|
||||||
installCheckPhase = ''
|
installCheckPhase = ''
|
||||||
runHook preInstallCheck
|
runHook preInstallCheck
|
||||||
|
|
||||||
export HOME="$TMPDIR"
|
|
||||||
mkdir -p "$HOME/.config/infracost"
|
|
||||||
export INFRACOST_SKIP_UPDATE_CHECK=true
|
export INFRACOST_SKIP_UPDATE_CHECK=true
|
||||||
|
|
||||||
$out/bin/infracost --help
|
$out/bin/infracost --help
|
||||||
$out/bin/infracost --version | grep "v${version}"
|
$out/bin/infracost --version | grep "v${version}"
|
||||||
|
|
||||||
|
@ -60,7 +52,7 @@ buildGoModule rec {
|
||||||
This helps developers, DevOps et al. quickly see the cost breakdown and
|
This helps developers, DevOps et al. quickly see the cost breakdown and
|
||||||
compare different deployment options upfront.
|
compare different deployment options upfront.
|
||||||
'';
|
'';
|
||||||
license = [ licenses.asl20 ];
|
license = licenses.asl20;
|
||||||
maintainers = with maintainers; [ davegallant jk ];
|
maintainers = with maintainers; [ davegallant jk ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,16 +3,16 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "tremor";
|
pname = "tremor";
|
||||||
version = "0.11.2";
|
version = "0.11.5";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tremor-rs";
|
owner = "tremor-rs";
|
||||||
repo = "tremor-runtime";
|
repo = "tremor-runtime";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-FedRwFVc+m25+Elj1Vp/fInbK6DVsUpniw29/dtecWo=";
|
sha256 = "sha256-fE0f0tCI2V+HqHZwn9cO+xs0o3o6w0nrJg9Et0zJMOE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-jxXoFOwoBSkn7pv10ctLpD7ko8bokc1ADkB7NQFRC7c=";
|
cargoHash = "sha256-dky9ejzMgKXlzpg+9bmkd7th+EHBpNmZJkgYt2pjuuI=";
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake pkg-config installShellFiles ];
|
nativeBuildInputs = [ cmake pkg-config installShellFiles ];
|
||||||
|
|
||||||
|
|
|
@ -2,15 +2,15 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "innernet";
|
pname = "innernet";
|
||||||
version = "1.3.1";
|
version = "1.4.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tonarino";
|
owner = "tonarino";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-Tnwq86gAbi24O8/26134gJCf9+wol1zma980t9iHEKY=";
|
sha256 = "sha256-n+xNWhOkRCIcoBHR8u+xZK81fU0usIfFhYg3BO9yXik=";
|
||||||
};
|
};
|
||||||
cargoSha256 = "sha256-Wy+i1lmXpsy0Sy0GF5XUfXsLQHeV7cQo9nUxUEFnHOU=";
|
cargoSha256 = "sha256-cTqQtJpuwVlUKfAK8ASf6vq6PU2NE8PT/el/Hz4HgtA=";
|
||||||
|
|
||||||
nativeBuildInputs = with llvmPackages; [
|
nativeBuildInputs = with llvmPackages; [
|
||||||
llvm
|
llvm
|
||||||
|
|
|
@ -2487,6 +2487,10 @@ in
|
||||||
|
|
||||||
discourse = callPackage ../servers/web-apps/discourse { };
|
discourse = callPackage ../servers/web-apps/discourse { };
|
||||||
|
|
||||||
|
discourseAllPlugins = discourse.override {
|
||||||
|
plugins = lib.filter (p: p ? pluginName) (builtins.attrValues discourse.plugins);
|
||||||
|
};
|
||||||
|
|
||||||
discourse-mail-receiver = callPackage ../servers/web-apps/discourse/mail_receiver { };
|
discourse-mail-receiver = callPackage ../servers/web-apps/discourse/mail_receiver { };
|
||||||
|
|
||||||
discocss = callPackage ../tools/misc/discocss { };
|
discocss = callPackage ../tools/misc/discocss { };
|
||||||
|
@ -19518,6 +19522,8 @@ in
|
||||||
|
|
||||||
icecream = callPackage ../servers/icecream { };
|
icecream = callPackage ../servers/icecream { };
|
||||||
|
|
||||||
|
icingaweb2-ipl = callPackage ../servers/icingaweb2/ipl.nix { };
|
||||||
|
icingaweb2-thirdparty = callPackage ../servers/icingaweb2/thirdparty.nix { };
|
||||||
icingaweb2 = callPackage ../servers/icingaweb2 { };
|
icingaweb2 = callPackage ../servers/icingaweb2 { };
|
||||||
icingaweb2Modules = {
|
icingaweb2Modules = {
|
||||||
theme-april = callPackage ../servers/icingaweb2/theme-april { };
|
theme-april = callPackage ../servers/icingaweb2/theme-april { };
|
||||||
|
@ -19537,6 +19543,8 @@ in
|
||||||
|
|
||||||
ircdHybrid = callPackage ../servers/irc/ircd-hybrid { };
|
ircdHybrid = callPackage ../servers/irc/ircd-hybrid { };
|
||||||
|
|
||||||
|
janus-gateway = callPackage ../servers/janus-gateway { };
|
||||||
|
|
||||||
jboss = callPackage ../servers/http/jboss { };
|
jboss = callPackage ../servers/http/jboss { };
|
||||||
|
|
||||||
jboss_mysql_jdbc = callPackage ../servers/http/jboss/jdbc/mysql { };
|
jboss_mysql_jdbc = callPackage ../servers/http/jboss/jdbc/mysql { };
|
||||||
|
@ -22294,6 +22302,8 @@ in
|
||||||
|
|
||||||
juno-theme = callPackage ../data/themes/juno { };
|
juno-theme = callPackage ../data/themes/juno { };
|
||||||
|
|
||||||
|
kanit-font = callPackage ../data/fonts/kanit { };
|
||||||
|
|
||||||
kanji-stroke-order-font = callPackage ../data/fonts/kanji-stroke-order-font {};
|
kanji-stroke-order-font = callPackage ../data/fonts/kanji-stroke-order-font {};
|
||||||
|
|
||||||
kawkab-mono-font = callPackage ../data/fonts/kawkab-mono {};
|
kawkab-mono-font = callPackage ../data/fonts/kawkab-mono {};
|
||||||
|
|
Loading…
Reference in a new issue