Merge master into staging-next

This commit is contained in:
Frederik Rietdijk 2019-07-09 15:46:00 +02:00
commit 74c24385cb
102 changed files with 2944 additions and 1758 deletions

View File

@ -16,6 +16,7 @@
<xi:include href="functions/fhs-environments.xml" /> <xi:include href="functions/fhs-environments.xml" />
<xi:include href="functions/shell.xml" /> <xi:include href="functions/shell.xml" />
<xi:include href="functions/dockertools.xml" /> <xi:include href="functions/dockertools.xml" />
<xi:include href="functions/snaptools.xml" />
<xi:include href="functions/appimagetools.xml" /> <xi:include href="functions/appimagetools.xml" />
<xi:include href="functions/prefer-remote-fetch.xml" /> <xi:include href="functions/prefer-remote-fetch.xml" />
<xi:include href="functions/nix-gitignore.xml" /> <xi:include href="functions/nix-gitignore.xml" />

View File

@ -0,0 +1,74 @@
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
xml:id="sec-pkgs-snapTools">
<title>pkgs.snapTools</title>
<para>
<varname>pkgs.snapTools</varname> is a set of functions for creating
Snapcraft images. Snap and Snapcraft is not used to perform these operations.
</para>
<section xml:id="ssec-pkgs-snapTools-makeSnap-signature">
<title>The makeSnap Function</title>
<para>
<function>makeSnap</function> takes a single named argument,
<parameter>meta</parameter>. This argument mirrors
<link xlink:href="https://docs.snapcraft.io/snap-format">the upstream
<filename>snap.yaml</filename> format</link> exactly.
</para>
<para>
The <parameter>base</parameter> should not be be specified, as
<function>makeSnap</function> will force set it.
</para>
<para>
Currently, <function>makeSnap</function> does not support creating GUI
stubs.
</para>
</section>
<section xml:id="ssec-pkgs-snapTools-build-a-snap-hello">
<title>Build a Hello World Snap</title>
<example xml:id="ex-snapTools-buildSnap-hello">
<title>Making a Hello World Snap</title>
<para>
The following expression packages GNU Hello as a Snapcraft snap.
</para>
<programlisting><xi:include href="../../pkgs/build-support/snap/example-hello.nix" parse="text" /></programlisting>
<para>
<command>nix-build</command> this expression and install it with
<command>snap install ./result --dangerous</command>.
<command>hello</command> will now be the Snapcraft version of the package.
</para>
</example>
</section>
<section xml:id="ssec-pkgs-snapTools-build-a-snap-firefox">
<title>Build a Hello World Snap</title>
<example xml:id="ex-snapTools-buildSnap-firefox">
<title>Making a Graphical Snap</title>
<para>
Graphical programs require many more integrations with the host. This
example uses Firefox as an example, because it is one of the most
complicated programs we could package.
</para>
<programlisting><xi:include href="../../pkgs/build-support/snap/example-firefox.nix" parse="text" /></programlisting>
<para>
<command>nix-build</command> this expression and install it with
<command>snap install ./result --dangerous</command>.
<command>nix-example-firefox</command> will now be the Snapcraft version of
the Firefox package.
</para>
<para>
The specific meaning behind plugs can be looked up in the
<link xlink:href="https://docs.snapcraft.io/supported-interfaces">Snapcraft
interface documentation</link>.
</para>
</example>
</section>
</section>

View File

@ -3462,6 +3462,11 @@
github = "mpickering"; github = "mpickering";
name = "Matthew Pickering"; name = "Matthew Pickering";
}; };
mpoquet = {
email = "millian.poquet@gmail.com";
github = "mpoquet";
name = "Millian Poquet";
};
mpscholten = { mpscholten = {
email = "marc@mpscholten.de"; email = "marc@mpscholten.de";
github = "mpscholten"; github = "mpscholten";
@ -3482,6 +3487,11 @@
github = "mrkkrp"; github = "mrkkrp";
name = "Mark Karpov"; name = "Mark Karpov";
}; };
mrmebelman = {
email = "burzakovskij@protonmail.com";
github = "MrMebelMan";
name = "Vladyslav Burzakovskyy";
};
mrVanDalo = { mrVanDalo = {
email = "contact@ingolf-wagner.de"; email = "contact@ingolf-wagner.de";
github = "mrVanDalo"; github = "mrVanDalo";

View File

@ -81,45 +81,45 @@
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The options <option>services.prometheus.alertmanager.user</option> and The options <option>services.prometheus.alertmanager.user</option> and
<option>services.prometheus.alertmanager.group</option> have been removed <option>services.prometheus.alertmanager.group</option> have been removed
because the alertmanager service is now using systemd's <link because the alertmanager service is now using systemd's <link
xlink:href="http://0pointer.net/blog/dynamic-users-with-systemd.html"> xlink:href="http://0pointer.net/blog/dynamic-users-with-systemd.html">
DynamicUser mechanism</link> which obviates these options. DynamicUser mechanism</link> which obviates these options.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The NetworkManager systemd unit was renamed back from network-manager.service to The NetworkManager systemd unit was renamed back from network-manager.service to
NetworkManager.service for better compatibility with other applications expecting this name. NetworkManager.service for better compatibility with other applications expecting this name.
The same applies to ModemManager where modem-manager.service is now called ModemManager.service again. The same applies to ModemManager where modem-manager.service is now called ModemManager.service again.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The <option>services.nzbget.configFile</option> and <option>services.nzbget.openFirewall</option> The <option>services.nzbget.configFile</option> and <option>services.nzbget.openFirewall</option>
options were removed as they are managed internally by the nzbget. The options were removed as they are managed internally by the nzbget. The
<option>services.nzbget.dataDir</option> option hadn't actually been used by <option>services.nzbget.dataDir</option> option hadn't actually been used by
the module for some time and so was removed as cleanup. the module for some time and so was removed as cleanup.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The <option>services.mysql.pidDir</option> option was removed, as it was only used by the wordpress The <option>services.mysql.pidDir</option> option was removed, as it was only used by the wordpress
apache-httpd service to wait for mysql to have started up. apache-httpd service to wait for mysql to have started up.
This can be accomplished by either describing a dependency on mysql.service (preferred) This can be accomplished by either describing a dependency on mysql.service (preferred)
or waiting for the (hardcoded) <filename>/run/mysqld/mysql.sock</filename> file to appear. or waiting for the (hardcoded) <filename>/run/mysqld/mysql.sock</filename> file to appear.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The <option>services.emby.enable</option> module has been removed, see The <option>services.emby.enable</option> module has been removed, see
<option>services.jellyfin.enable</option> instead for a free software fork of Emby. <option>services.jellyfin.enable</option> instead for a free software fork of Emby.
See the Jellyfin documentation: See the Jellyfin documentation:
<link xlink:href="https://jellyfin.readthedocs.io/en/latest/administrator-docs/migrate-from-emby/"> <link xlink:href="https://jellyfin.readthedocs.io/en/latest/administrator-docs/migrate-from-emby/">
Migrating from Emby to Jellyfin Migrating from Emby to Jellyfin
</link> </link>
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
@ -136,50 +136,50 @@
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Several of the apache subservices have been replaced with full NixOS Several of the apache subservices have been replaced with full NixOS
modules including LimeSurvey and WordPress. modules including LimeSurvey and WordPress.
These modules can be enabled using the <option>services.limesurvey.enable</option> These modules can be enabled using the <option>services.limesurvey.enable</option>
and <option>services.wordpress.enable</option> options. and <option>services.wordpress.enable</option> options.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The option <option>systemd.network.networks.&lt;name&gt;.routes.*.routeConfig.GatewayOnlink</option> The option <option>systemd.network.networks.&lt;name&gt;.routes.*.routeConfig.GatewayOnlink</option>
was renamed to <option>systemd.network.networks.&lt;name&gt;.routes.*.routeConfig.GatewayOnLink</option> was renamed to <option>systemd.network.networks.&lt;name&gt;.routes.*.routeConfig.GatewayOnLink</option>
(capital <literal>L</literal>). This follows (capital <literal>L</literal>). This follows
<link xlink:href="https://github.com/systemd/systemd/commit/9cb8c5593443d24c19e40bfd4fc06d672f8c554c"> <link xlink:href="https://github.com/systemd/systemd/commit/9cb8c5593443d24c19e40bfd4fc06d672f8c554c">
upstreams renaming upstreams renaming
</link> of the setting. </link> of the setting.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
As of this release the NixOps feature <literal>autoLuks</literal> is deprecated. It no longer works As of this release the NixOps feature <literal>autoLuks</literal> is deprecated. It no longer works
with our systemd version without manual intervention. with our systemd version without manual intervention.
</para> </para>
<para> <para>
Whenever the usage of the module is detected the evaluation will fail with a message Whenever the usage of the module is detected the evaluation will fail with a message
explaining why and how to deal with the situation. explaining why and how to deal with the situation.
</para> </para>
<para> <para>
A new knob named <literal>nixops.enableDeprecatedAutoLuks</literal> A new knob named <literal>nixops.enableDeprecatedAutoLuks</literal>
has been introduced to disable the eval failure and to acknowledge the notice was received and read. has been introduced to disable the eval failure and to acknowledge the notice was received and read.
If you plan on using the feature please note that it might break with subsequent updates. If you plan on using the feature please note that it might break with subsequent updates.
</para> </para>
<para> <para>
Make sure you set the <literal>_netdev</literal> option for each of the file systems referring to block Make sure you set the <literal>_netdev</literal> option for each of the file systems referring to block
devices provided by the autoLuks module. Not doing this might render the system in a devices provided by the autoLuks module. Not doing this might render the system in a
state where it doesn't boot anymore. state where it doesn't boot anymore.
</para> </para>
<para> <para>
If you are actively using the <literal>autoLuks</literal> module please let us know in If you are actively using the <literal>autoLuks</literal> module please let us know in
<link xlink:href="https://github.com/NixOS/nixpkgs/issues/62211">issue #62211</link>. <link xlink:href="https://github.com/NixOS/nixpkgs/issues/62211">issue #62211</link>.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The setopt declarations will be evaluated at the end of <literal>/etc/zshrc</literal>, so any code in <xref linkend="opt-programs.zsh.interactiveShellInit" />, The setopt declarations will be evaluated at the end of <literal>/etc/zshrc</literal>, so any code in <xref linkend="opt-programs.zsh.interactiveShellInit" />,
<xref linkend="opt-programs.zsh.loginShellInit" /> and <xref linkend="opt-programs.zsh.promptInit" /> may break if it relies on those options being set. <xref linkend="opt-programs.zsh.loginShellInit" /> and <xref linkend="opt-programs.zsh.promptInit" /> may break if it relies on those options being set.
</para> </para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
@ -236,36 +236,36 @@
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The <literal>hunspellDicts.fr-any</literal> dictionary now ships with <literal>fr_FR.{aff,dic}</literal> The <literal>hunspellDicts.fr-any</literal> dictionary now ships with <literal>fr_FR.{aff,dic}</literal>
which is linked to <literal>fr-toutesvariantes.{aff,dic}</literal>. which is linked to <literal>fr-toutesvariantes.{aff,dic}</literal>.
</para>
</listitem>
<listitem>
<para>
The <literal>mysql</literal> service now runs as <literal>mysql</literal>
user. Previously, systemd did execute it as root, and mysql dropped privileges
itself.
This includes <literal>ExecStartPre=</literal> and
<literal>ExecStartPost=</literal> phases.
To accomplish that, runtime and data directory setup was delegated to
RuntimeDirectory and tmpfiles.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
With the upgrade to systemd version 242 the <literal>systemd-timesyncd</literal> The <literal>mysql</literal> service now runs as <literal>mysql</literal>
service is no longer using <literal>DynamicUser=yes</literal>. In order for the user. Previously, systemd did execute it as root, and mysql dropped privileges
upgrade to work we rely on an activation script to move the state from the old itself.
to the new directory. The older directory (prior <literal>19.09</literal>) was This includes <literal>ExecStartPre=</literal> and
<literal>/var/lib/private/systemd/timesync</literal>. <literal>ExecStartPost=</literal> phases.
To accomplish that, runtime and data directory setup was delegated to
RuntimeDirectory and tmpfiles.
</para>
</listitem>
<listitem>
<para>
With the upgrade to systemd version 242 the <literal>systemd-timesyncd</literal>
service is no longer using <literal>DynamicUser=yes</literal>. In order for the
upgrade to work we rely on an activation script to move the state from the old
to the new directory. The older directory (prior <literal>19.09</literal>) was
<literal>/var/lib/private/systemd/timesync</literal>.
</para> </para>
<para> <para>
As long as the <literal>system.config.stateVersion</literal> is below As long as the <literal>system.config.stateVersion</literal> is below
<literal>19.09</literal> the state folder will migrated to its proper location <literal>19.09</literal> the state folder will migrated to its proper location
(<literal>/var/lib/systemd/timesync</literal>), if required. (<literal>/var/lib/systemd/timesync</literal>), if required.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The package <literal>avahi</literal> is now built to look up service The package <literal>avahi</literal> is now built to look up service
definitions from <literal>/etc/avahi/services</literal> instead of its definitions from <literal>/etc/avahi/services</literal> instead of its
@ -275,32 +275,36 @@
in the aforementioned directory. See <citerefentry> in the aforementioned directory. See <citerefentry>
<refentrytitle>avahi.service</refentrytitle><manvolnum>5</manvolnum> <refentrytitle>avahi.service</refentrytitle><manvolnum>5</manvolnum>
</citerefentry> for more information on custom service definitions. </citerefentry> for more information on custom service definitions.
Since version 0.1.19, <literal>cargo-vendor</literal> honors package
includes that are specified in the <filename>Cargo.toml</filename>
file of Rust crates. <literal>rustPlatform.buildRustPackage</literal> uses
<literal>cargo-vendor</literal> to collect and build dependent crates.
Since this change in <literal>cargo-vendor</literal> changes the set of
vendored files for most Rust packages, the hash that use used to verify
the dependencies, <literal>cargoSha256</literal>, also changes.
</para>
<para>
The <literal>cargoSha256</literal> hashes of all in-tree derivations that
use <literal>buildRustPackage</literal> have been updated to reflect this
change. However, third-party derivations that use
<literal>buildRustPackage</literal> may have to be updated as well.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The <literal>consul</literal> package was upgraded past version <literal>1.5</literal>, Since version 0.1.19, <literal>cargo-vendor</literal> honors package
so its deprecated legacy UI is no longer available. includes that are specified in the <filename>Cargo.toml</filename>
file of Rust crates. <literal>rustPlatform.buildRustPackage</literal> uses
<literal>cargo-vendor</literal> to collect and build dependent crates.
Since this change in <literal>cargo-vendor</literal> changes the set of
vendored files for most Rust packages, the hash that use used to verify
the dependencies, <literal>cargoSha256</literal>, also changes.
</para>
<para>
The <literal>cargoSha256</literal> hashes of all in-tree derivations that
use <literal>buildRustPackage</literal> have been updated to reflect this
change. However, third-party derivations that use
<literal>buildRustPackage</literal> may have to be updated as well.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
The default resample-method for PulseAudio has been changed from the upstream default <literal>speex-float-1</literal> The <literal>consul</literal> package was upgraded past version <literal>1.5</literal>,
to <literal>speex-float-5</literal>. Be aware that low-powered ARM-based and MIPS-based boards will struggle with this so its deprecated legacy UI is no longer available.
so you'll need to set <option>hardware.pulseaudio.daemon.config.resample-method</option> back to <literal>speex-float-1</literal>. </para>
</listitem>
<listitem>
<para>
The default resample-method for PulseAudio has been changed from the upstream default <literal>speex-float-1</literal>
to <literal>speex-float-5</literal>. Be aware that low-powered ARM-based and MIPS-based boards will struggle with this
so you'll need to set <option>hardware.pulseaudio.daemon.config.resample-method</option> back to <literal>speex-float-1</literal>.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>

View File

@ -233,7 +233,7 @@ in
oneToString = set: ip: ip + " " + concatStringsSep " " set.${ip}; oneToString = set: ip: ip + " " + concatStringsSep " " set.${ip};
allToString = set: concatMapStringsSep "\n" (oneToString set) (attrNames set); allToString = set: concatMapStringsSep "\n" (oneToString set) (attrNames set);
in '' in ''
${allToString cfg.hosts} ${allToString (filterAttrs (_: v: v != []) cfg.hosts)}
${cfg.extraHosts} ${cfg.extraHosts}
''; '';

View File

@ -1,9 +1,24 @@
{ config, lib, ... }: { config, lib, ... }:
{ with lib;
options.hardware.enableKSM = lib.mkEnableOption "Kernel Same-Page Merging";
config = lib.mkIf config.hardware.enableKSM { let
cfg = config.hardware.ksm;
in {
options.hardware.ksm = {
enable = mkEnableOption "Kernel Same-Page Merging";
sleep = mkOption {
type = types.nullOr types.int;
default = null;
description = ''
How many milliseconds ksmd should sleep between scans.
Setting it to <literal>null</literal> uses the kernel's default time.
'';
};
};
config = mkIf cfg.enable {
systemd.services.enable-ksm = { systemd.services.enable-ksm = {
description = "Enable Kernel Same-Page Merging"; description = "Enable Kernel Same-Page Merging";
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
@ -11,6 +26,7 @@
script = '' script = ''
if [ -e /sys/kernel/mm/ksm ]; then if [ -e /sys/kernel/mm/ksm ]; then
echo 1 > /sys/kernel/mm/ksm/run echo 1 > /sys/kernel/mm/ksm/run
${optionalString (cfg.sleep != null) ''echo ${toString cfg.sleep} > /sys/kernel/mm/ksm/sleep_millisecs''}
fi fi
''; '';
}; };

View File

@ -492,6 +492,7 @@
./services/monitoring/heapster.nix ./services/monitoring/heapster.nix
./services/monitoring/incron.nix ./services/monitoring/incron.nix
./services/monitoring/kapacitor.nix ./services/monitoring/kapacitor.nix
./services/monitoring/loki.nix
./services/monitoring/longview.nix ./services/monitoring/longview.nix
./services/monitoring/monit.nix ./services/monitoring/monit.nix
./services/monitoring/munin.nix ./services/monitoring/munin.nix

View File

@ -241,6 +241,9 @@ with lib;
# binfmt # binfmt
(mkRenamedOptionModule [ "boot" "binfmtMiscRegistrations" ] [ "boot" "binfmt" "registrations" ]) (mkRenamedOptionModule [ "boot" "binfmtMiscRegistrations" ] [ "boot" "binfmt" "registrations" ])
# KSM
(mkRenamedOptionModule [ "hardware" "enableKSM" ] [ "hardware" "ksm" "enable" ])
] ++ (flip map [ "blackboxExporter" "collectdExporter" "fritzboxExporter" ] ++ (flip map [ "blackboxExporter" "collectdExporter" "fritzboxExporter"
"jsonExporter" "minioExporter" "nginxExporter" "nodeExporter" "jsonExporter" "minioExporter" "nginxExporter" "nodeExporter"
"snmpExporter" "unifiExporter" "varnishExporter" ] "snmpExporter" "unifiExporter" "varnishExporter" ]

View File

@ -108,7 +108,7 @@ in
}; };
extraConfig = mkOption { extraConfig = mkOption {
type = types.str; type = types.lines;
default = ""; default = "";
description = "Any other configuration options you might want to add"; description = "Any other configuration options you might want to add";
}; };

View File

@ -34,6 +34,13 @@ in
default = "jackett"; default = "jackett";
description = "Group under which Jackett runs."; description = "Group under which Jackett runs.";
}; };
package = mkOption {
type = types.package;
default = pkgs.jackett;
defaultText = "pkgs.jackett";
description = "Jackett package to use.";
};
}; };
}; };
@ -51,7 +58,7 @@ in
Type = "simple"; Type = "simple";
User = cfg.user; User = cfg.user;
Group = cfg.group; Group = cfg.group;
ExecStart = "${pkgs.jackett}/bin/Jackett --NoUpdates --DataFolder '${cfg.dataDir}'"; ExecStart = "${cfg.package}/bin/Jackett --NoUpdates --DataFolder '${cfg.dataDir}'";
Restart = "on-failure"; Restart = "on-failure";
}; };
}; };

View File

@ -68,6 +68,7 @@ in
users.users = mkIf (cfg.user == "lidarr") { users.users = mkIf (cfg.user == "lidarr") {
lidarr = { lidarr = {
group = cfg.group; group = cfg.group;
home = "/var/lib/lidarr";
uid = config.ids.uids.lidarr; uid = config.ids.uids.lidarr;
}; };
}; };

View File

@ -262,7 +262,7 @@ in {
fastcgi_pass ${fcgi.socketType}:${fcgi.socketAddress}; fastcgi_pass ${fcgi.socketType}:${fcgi.socketAddress};
} }
location /cache { location /cache/ {
alias /var/cache/${dirName}; alias /var/cache/${dirName};
} }

View File

@ -0,0 +1,112 @@
{ config, lib, pkgs, ... }:
let
inherit (lib) escapeShellArgs literalExample mkEnableOption mkIf mkOption types;
cfg = config.services.loki;
prettyJSON = conf:
pkgs.runCommand "loki-config.json" { } ''
echo '${builtins.toJSON conf}' | ${pkgs.jq}/bin/jq 'del(._module)' > $out
'';
in {
options.services.loki = {
enable = mkEnableOption "loki";
user = mkOption {
type = types.str;
default = "loki";
description = ''
User under which the Loki service runs.
'';
};
group = mkOption {
type = types.str;
default = "loki";
description = ''
Group under which the Loki service runs.
'';
};
dataDir = mkOption {
type = types.path;
default = "/var/lib/loki";
description = ''
Specify the directory for Loki.
'';
};
configuration = mkOption {
type = types.attrs;
default = {};
description = ''
Specify the configuration for Loki in Nix.
'';
};
configFile = mkOption {
type = types.nullOr types.path;
default = null;
description = ''
Specify a configuration file that Loki should use.
'';
};
extraFlags = mkOption {
type = types.listOf types.str;
default = [];
example = literalExample [ "--server.http-listen-port=3101" ];
description = ''
Specify a list of additional command line flags,
which get escaped and are then passed to Loki.
'';
};
};
config = mkIf cfg.enable {
assertions = [{
assertion = (
(cfg.configuration == {} -> cfg.configFile != null) &&
(cfg.configFile != null -> cfg.configuration == {})
);
message = ''
Please specify either
'services.loki.configuration' or
'services.loki.configFile'.
'';
}];
users.groups.${cfg.group} = { };
users.users.${cfg.user} = {
description = "Loki Service User";
group = cfg.group;
home = cfg.dataDir;
createHome = true;
isSystemUser = true;
};
systemd.services.loki = {
description = "Loki Service Daemon";
wantedBy = [ "multi-user.target" ];
serviceConfig = let
conf = if cfg.configFile == null
then prettyJSON cfg.configuration
else cfg.configFile;
in
{
ExecStart = "${pkgs.grafana-loki}/bin/loki --config.file=${conf} ${escapeShellArgs cfg.extraFlags}";
User = cfg.user;
Restart = "always";
PrivateTmp = true;
ProtectHome = true;
ProtectSystem = "full";
DecvicePolicy = "closed";
NoNewPrivileges = true;
WorkingDirectory = cfg.dataDir;
};
};
};
}

View File

@ -141,11 +141,18 @@ in {
path = (with pkgs; [ gawk curl ]) ++ lib.optional cfg.python.enable path = (with pkgs; [ gawk curl ]) ++ lib.optional cfg.python.enable
(pkgs.python3.withPackages cfg.python.extraPackages); (pkgs.python3.withPackages cfg.python.extraPackages);
serviceConfig = { serviceConfig = {
Environment="PYTHONPATH=${pkgs.netdata}/libexec/netdata/python.d/python_modules";
ExecStart = "${pkgs.netdata}/bin/netdata -P /run/netdata/netdata.pid -D -c ${configFile}";
ExecReload = "${pkgs.utillinux}/bin/kill -s HUP -s USR1 -s USR2 $MAINPID";
TimeoutStopSec = 60;
# User and group
User = cfg.user; User = cfg.user;
Group = cfg.group; Group = cfg.group;
Environment="PYTHONPATH=${pkgs.netdata}/libexec/netdata/python.d/python_modules"; # Runtime directory and mode
ExecStart = "${pkgs.netdata}/bin/netdata -D -c ${configFile}"; RuntimeDirectory = "netdata";
TimeoutStopSec = 60; RuntimeDirectoryMode = "0755";
# Performance
LimitNOFILE = "30000";
}; };
}; };
@ -165,6 +172,11 @@ in {
permissions = "u+rx,g+rx,o-rwx"; permissions = "u+rx,g+rx,o-rwx";
}; };
security.pam.loginLimits = [
{ domain = "netdata"; type = "soft"; item = "nofile"; value = "10000"; }
{ domain = "netdata"; type = "hard"; item = "nofile"; value = "30000"; }
];
users.users = optional (cfg.user == defaultUser) { users.users = optional (cfg.user == defaultUser) {
name = defaultUser; name = defaultUser;
}; };

View File

@ -179,10 +179,9 @@ in
requestEncryptionCredentials = mkOption { requestEncryptionCredentials = mkOption {
type = types.bool; type = types.bool;
default = config.boot.zfs.enableUnstable; default = true;
description = '' description = ''
Request encryption keys or passwords for all encrypted datasets on import. Request encryption keys or passwords for all encrypted datasets on import.
Dataset encryption is only supported in zfsUnstable at the moment.
For root pools the encryption key can be supplied via both an For root pools the encryption key can be supplied via both an
interactive prompt (keylocation=prompt) and from a file interactive prompt (keylocation=prompt) and from a file
(keylocation=file://). Note that for data pools the encryption key can (keylocation=file://). Note that for data pools the encryption key can

View File

@ -4,13 +4,16 @@ with lib;
let let
cfg = config.virtualisation.kvmgt; cfg = config.virtualisation.kvmgt;
kernelPackages = config.boot.kernelPackages; kernelPackages = config.boot.kernelPackages;
vgpuOptions = { vgpuOptions = {
uuid = mkOption { uuid = mkOption {
type = types.string; type = types.string;
description = "UUID of VGPU device. You can generate one with <package>libossp_uuid</package>."; description = "UUID of VGPU device. You can generate one with <package>libossp_uuid</package>.";
}; };
}; };
in { in {
options = { options = {
virtualisation.kvmgt = { virtualisation.kvmgt = {
@ -45,7 +48,13 @@ in {
assertion = versionAtLeast kernelPackages.kernel.version "4.16"; assertion = versionAtLeast kernelPackages.kernel.version "4.16";
message = "KVMGT is not properly supported for kernels older than 4.16"; message = "KVMGT is not properly supported for kernels older than 4.16";
}; };
boot.kernelParams = [ "i915.enable_gvt=1" ];
boot.kernelModules = [ "kvmgt" ];
boot.extraModprobeConfig = ''
options i915 enable_gvt=1
'';
systemd.paths = mapAttrs' (name: value: systemd.paths = mapAttrs' (name: value:
nameValuePair "kvmgt-${name}" { nameValuePair "kvmgt-${name}" {
description = "KVMGT VGPU ${name} path"; description = "KVMGT VGPU ${name} path";
@ -55,6 +64,7 @@ in {
}; };
} }
) cfg.vgpus; ) cfg.vgpus;
systemd.services = mapAttrs' (name: value: systemd.services = mapAttrs' (name: value:
nameValuePair "kvmgt-${name}" { nameValuePair "kvmgt-${name}" {
description = "KVMGT VGPU ${name}"; description = "KVMGT VGPU ${name}";

View File

@ -139,6 +139,7 @@ in
#lightdm = handleTest ./lightdm.nix {}; #lightdm = handleTest ./lightdm.nix {};
limesurvey = handleTest ./limesurvey.nix {}; limesurvey = handleTest ./limesurvey.nix {};
login = handleTest ./login.nix {}; login = handleTest ./login.nix {};
loki = handleTest ./loki.nix {};
#logstash = handleTest ./logstash.nix {}; #logstash = handleTest ./logstash.nix {};
mailcatcher = handleTest ./mailcatcher.nix {}; mailcatcher = handleTest ./mailcatcher.nix {};
mathics = handleTest ./mathics.nix {}; mathics = handleTest ./mathics.nix {};

37
nixos/tests/loki.nix Normal file
View File

@ -0,0 +1,37 @@
import ./make-test.nix ({ lib, pkgs, ... }:
{
name = "loki";
meta = with lib.maintainers; {
maintainers = [ willibutz ];
};
machine = { ... }: {
services.loki = {
enable = true;
configFile = "${pkgs.grafana-loki.src}/cmd/loki/loki-local-config.yaml";
};
systemd.services.promtail = {
description = "Promtail service for Loki test";
wantedBy = [ "multi-user.target" ];
serviceConfig = {
ExecStart = ''
${pkgs.grafana-loki}/bin/promtail --config.file ${pkgs.grafana-loki.src}/cmd/promtail/promtail-local-config.yaml
'';
DynamicUser = true;
};
};
};
testScript = ''
$machine->start;
$machine->waitForUnit("loki.service");
$machine->waitForUnit("promtail.service");
$machine->waitForOpenPort(3100);
$machine->waitForOpenPort(9080);
$machine->succeed("echo 'Loki Ingestion Test' > /var/log/testlog");
$machine->waitUntilSucceeds("${pkgs.grafana-loki}/bin/logcli --addr='http://localhost:3100' query --no-labels '{job=\"varlogs\",filename=\"/var/log/testlog\"}' | grep -q 'Loki Ingestion Test'");
'';
})

View File

@ -1,6 +1,7 @@
;; -*- lexical-binding: t; -*-
(defun nix--profile-paths () (defun nix--profile-paths ()
"Returns a list of all paths in the NIX_PROFILES environment "Return a list of all paths in NIX_PROFILES.
variable, ordered from more-specific (the user profile) to the The list is ordered from more-specific (the user profile) to the
least specific (the system profile)" least specific (the system profile)"
(reverse (split-string (or (getenv "NIX_PROFILES") "")))) (reverse (split-string (or (getenv "NIX_PROFILES") ""))))
@ -23,6 +24,7 @@ least specific (the system profile)"
;;; Make `woman' find the man pages ;;; Make `woman' find the man pages
(defvar woman-manpath)
(eval-after-load 'woman (eval-after-load 'woman
'(setq woman-manpath '(setq woman-manpath
(append (mapcar (lambda (x) (concat x "/share/man/")) (append (mapcar (lambda (x) (concat x "/share/man/"))
@ -30,6 +32,7 @@ least specific (the system profile)"
woman-manpath))) woman-manpath)))
;;; Make tramp work for remote NixOS machines ;;; Make tramp work for remote NixOS machines
(defvar tramp-remote-path)
(eval-after-load 'tramp-sh (eval-after-load 'tramp-sh
;; TODO: We should also add the other `NIX_PROFILES' to this path. ;; TODO: We should also add the other `NIX_PROFILES' to this path.
;; However, these are user-specific, so we would need to discover ;; However, these are user-specific, so we would need to discover
@ -42,6 +45,7 @@ least specific (the system profile)"
;;; the current file: ;;; the current file:
;;; from: /nix/store/<hash>-emacs-<version>/share/emacs/site-lisp/site-start.el ;;; from: /nix/store/<hash>-emacs-<version>/share/emacs/site-lisp/site-start.el
;;; to: /nix/store/<hash>-emacs-<version>/share/emacs/<version>/src/ ;;; to: /nix/store/<hash>-emacs-<version>/share/emacs/<version>/src/
(defvar find-function-C-source-directory)
(let ((emacs (let ((emacs
(file-name-directory ; .../emacs/ (file-name-directory ; .../emacs/
(directory-file-name ; .../emacs/site-lisp (directory-file-name ; .../emacs/site-lisp

View File

@ -21,13 +21,13 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "neovim-unwrapped-${version}"; name = "neovim-unwrapped-${version}";
version = "0.3.7"; version = "0.3.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "neovim"; owner = "neovim";
repo = "neovim"; repo = "neovim";
rev = "v${version}"; rev = "v${version}";
sha256 = "1j6w5jvq5v7kf7diad91qs1acr427nidnk9s24yyrz0hwdd1c2lh"; sha256 = "15flii3p4g9f65xy9jpkb8liajrvhm5ck4j39z6d6b1nkxr6ghwb";
}; };
patches = [ patches = [

View File

@ -0,0 +1,94 @@
{ stdenv, lib, fetchurl, rpmextract, autoPatchelfHook, wrapGAppsHook
# Dynamic libraries
, alsaLib, atk, at-spi2-atk, at-spi2-core, cairo, dbus, cups, expat
, gdk_pixbuf, glib, gtk3, libX11, libXScrnSaver, libXcomposite, libXcursor
, libXdamage, libXext, libXfixes, libXi, libXrandr, libXrender, libXtst
, libxcb, libuuid, nspr, nss, pango
, systemd
}:
stdenv.mkDerivation rec {
pname = "drawio";
version = "10.8.0";
src = fetchurl {
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
sha256 = "0c5wymzhbp72x0yhvw7vb4akkdvj97npl9kglk79vqjbzfn5di9k";
};
nativeBuildInputs = [
autoPatchelfHook
rpmextract
wrapGAppsHook
];
buildInputs = [
alsaLib
atk
at-spi2-atk
at-spi2-core
cairo
cups
dbus
expat
gdk_pixbuf
glib
gtk3
libX11
libXScrnSaver
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXrandr
libXrender
libXtst
libxcb
libuuid
nspr
nss
pango
systemd
];
runtimeDependencies = [
systemd.lib
];
dontBuild = true;
dontConfigure = true;
unpackPhase = "rpmextract ${src}";
installPhase = ''
mkdir -p $out/share
cp -r opt/draw.io $out/share/
# Application icon
mkdir -p $out/share/icons/hicolor
cp -r usr/share/icons/hicolor/0x0 $out/share/icons/hicolor/1024x1024
# XDG desktop item
cp -r usr/share/applications $out/share/applications
# Symlink wrapper
mkdir -p $out/bin
ln -s $out/share/draw.io/draw.io $out/bin/draw.io
# Update binary path
substituteInPlace $out/share/applications/draw.io.desktop \
--replace /opt/draw.io/draw.io $out/bin/draw.io
'';
meta = with stdenv.lib; {
description = "A desktop application for creating diagrams";
homepage = https://about.draw.io/;
license = licenses.asl20;
maintainers = with maintainers; [ danieldk ];
platforms = [ "x86_64-linux" ];
};
}

View File

@ -0,0 +1,42 @@
# reduced version of commit f30492f40f78d867b43422215057dd21de4ba447
# from upstream hg repository:
RegisterPNGImage(): Pass correct size value to strlcat().
diff -r 95c4711e8bee -r f30492f40f78 coders/png.c
--- a/coders/png.c Mon Jun 17 07:24:30 2019 -0500
+++ b/coders/png.c Mon Jun 17 18:54:43 2019 -0500
@@ -6427,26 +6427,26 @@
*version='\0';
#if defined(PNG_LIBPNG_VER_STRING)
- (void) strlcat(version,"libpng ",MaxTextExtent);
- (void) strlcat(version,PNG_LIBPNG_VER_STRING,MaxTextExtent);
+ (void) strlcat(version,"libpng ",sizeof(version));
+ (void) strlcat(version,PNG_LIBPNG_VER_STRING,sizeof(version));
#if (PNG_LIBPNG_VER > 10005)
if (LocaleCompare(PNG_LIBPNG_VER_STRING,png_get_header_ver(NULL)) != 0)
{
- (void) strlcat(version,",",MaxTextExtent);
- (void) strlcat(version,png_get_libpng_ver(NULL),MaxTextExtent);
+ (void) strlcat(version,",",sizeof(version));
+ (void) strlcat(version,png_get_libpng_ver(NULL),sizeof(version));
}
#endif
#endif
#if defined(ZLIB_VERSION)
if (*version != '\0')
- (void) strlcat(version,", ",MaxTextExtent);
- (void) strlcat(version,"zlib ",MaxTextExtent);
- (void) strlcat(version,ZLIB_VERSION,MaxTextExtent);
+ (void) strlcat(version,", ",sizeof(version));
+ (void) strlcat(version,"zlib ",sizeof(version));
+ (void) strlcat(version,ZLIB_VERSION,sizeof(version));
if (LocaleCompare(ZLIB_VERSION,zlib_version) != 0)
{
- (void) strlcat(version,",",MaxTextExtent);
- (void) strlcat(version,zlib_version,MaxTextExtent);
+ (void) strlcat(version,",",sizeof(version));
+ (void) strlcat(version,zlib_version,sizeof(version));
}
#endif

View File

@ -4,15 +4,16 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "graphicsmagick-${version}"; name = "graphicsmagick-${version}";
version = "1.3.31"; version = "1.3.32";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/graphicsmagick/GraphicsMagick-${version}.tar.xz"; url = "mirror://sourceforge/graphicsmagick/GraphicsMagick-${version}.tar.xz";
sha256 = "0y22740f25qxsqqqg26xqlfp920dm57b7hrgaqmx7azksrcvnsq9"; sha256 = "1qclp9i31idpcbbqswmnq2q11lmv0a7cvdb1y72xcky8sshaahmq";
}; };
patches = [ patches = [
./disable-popen.patch ./disable-popen.patch
./1.3.32-darwin-png-strlcat-fix.patch
]; ];
configureFlags = [ configureFlags = [

View File

@ -1,18 +1,18 @@
{ stdenv, fetchFromGitHub, makeWrapper { stdenv, lib, fetchFromGitHub, makeWrapper
, pkgconfig, which, perl, libXrandr , pkgconfig, which, perl, libXrandr
, cairo, dbus, systemd, gdk_pixbuf, glib, libX11, libXScrnSaver , cairo, dbus, systemd, gdk_pixbuf, glib, libX11, libXScrnSaver
, libXinerama, libnotify, pango, xorgproto, librsvg, dunstify ? false , libXinerama, libnotify, pango, xorgproto, librsvg, dunstify ? false
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "dunst-${version}"; pname = "dunst";
version = "1.4.0"; version = "1.4.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dunst-project"; owner = "dunst-project";
repo = "dunst"; repo = "dunst";
rev = "v${version}"; rev = "v${version}";
sha256 = "1rwbylygd88r61yrxc7ckg9svgq8b1i2falr0mk9sabqxzn9050s"; sha256 = "0xjj1f2jr1ja5grj6wrx5jjz1sx5fpqnvkw7nqi4452j3nc4p4l2";
}; };
nativeBuildInputs = [ perl pkgconfig which systemd makeWrapper ]; nativeBuildInputs = [ perl pkgconfig which systemd makeWrapper ];
@ -33,19 +33,19 @@ stdenv.mkDerivation rec {
buildFlags = if dunstify then [ "dunstify" ] else []; buildFlags = if dunstify then [ "dunstify" ] else [];
postInstall = stdenv.lib.optionalString dunstify '' postInstall = lib.optionalString dunstify ''
install -Dm755 dunstify $out/bin install -Dm755 dunstify $out/bin
'' + '' '' + ''
wrapProgram $out/bin/dunst \ wrapProgram $out/bin/dunst \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE"
''; '';
meta = with stdenv.lib; { meta = with lib; {
description = "Lightweight and customizable notification daemon"; description = "Lightweight and customizable notification daemon";
homepage = https://dunst-project.org/; homepage = "https://dunst-project.org/";
license = licenses.bsd3; license = licenses.bsd3;
# NOTE: 'unix' or even 'all' COULD work too, I'm not sure # NOTE: 'unix' or even 'all' COULD work too, I'm not sure
platforms = platforms.linux; platforms = platforms.linux;
maintainers = [ maintainers.domenkozar ]; maintainers = with maintainers; [ domenkozar ];
}; };
} }

View File

@ -15,7 +15,6 @@ let
packageOverrides = lib.foldr lib.composeExtensions (self: super: { }) ([ packageOverrides = lib.foldr lib.composeExtensions (self: super: { }) ([
(mkOverride "flask" "0.10.1" "0wrkavjdjndknhp8ya8j850jq7a1cli4g5a93mg8nh1xz2gq50sc") (mkOverride "flask" "0.10.1" "0wrkavjdjndknhp8ya8j850jq7a1cli4g5a93mg8nh1xz2gq50sc")
(mkOverride "flask_login" "0.2.11" "1rg3rsjs1gwi2pw6vr9jmhaqm9b3vc9c4hfcsvp4y8agbh7g3mc3") (mkOverride "flask_login" "0.2.11" "1rg3rsjs1gwi2pw6vr9jmhaqm9b3vc9c4hfcsvp4y8agbh7g3mc3")
(mkOverride "sarge" "0.1.4" "08s8896973bz1gg0pkr592w6g4p6v47bkfvws5i91p9xf8b35yar")
(mkOverride "tornado" "4.5.3" "02jzd23l4r6fswmwxaica9ldlyc2p6q8dk6dyff7j58fmdzf853d") (mkOverride "tornado" "4.5.3" "02jzd23l4r6fswmwxaica9ldlyc2p6q8dk6dyff7j58fmdzf853d")
# Octoprint holds back jinja2 to 2.8.1 due to breaking changes. # Octoprint holds back jinja2 to 2.8.1 due to breaking changes.

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, octoprint, python2Packages }: { stdenv, fetchFromGitHub, octoprint, python2Packages, marlin-calc }:
let let
buildPlugin = args: python2Packages.buildPythonPackage (args // { buildPlugin = args: python2Packages.buildPythonPackage (args // {
@ -123,6 +123,74 @@ let
}; };
}; };
touchui = buildPlugin rec {
pname = "TouchUI";
version = "0.3.13";
src = fetchFromGitHub {
owner = "BillyBlaze";
repo = "OctoPrint-${pname}";
rev = version;
sha256 = "0qk12ysabdzy6cna3l4f8v3qcnppppwxxsjx2i0xn1nd0cv6yzwh";
};
meta = with stdenv.lib; {
description = "Touch friendly interface for a small TFT module or phone for OctoPrint";
homepage = "https://github.com/BillyBlaze/OctoPrint-TouchUI";
license = licenses.agpl3;
maintainers = with maintainers; [ gebner ];
};
};
psucontrol = buildPlugin rec {
pname = "PSUControl";
version = "0.1.8";
src = fetchFromGitHub {
owner = "kantlivelong";
repo = "OctoPrint-${pname}";
rev = version;
sha256 = "0aj38d7b7d5pzmzq841pip18cpg18wy2vrxq2nd13875597y54b8";
};
preConfigure = ''
# optional; RPi.GPIO is broken on vanilla kernels
sed /RPi.GPIO/d -i requirements.txt
'';
meta = with stdenv.lib; {
description = "OctoPrint plugin to control ATX/AUX power supply";
homepage = "https://github.com/kantlivelong/OctoPrint-PSUControl";
license = licenses.agpl3;
maintainers = with maintainers; [ gebner ];
};
};
printtimegenius = buildPlugin rec {
pname = "PrintTimeGenius";
version = "1.3.1";
src = fetchFromGitHub {
owner = "eyal0";
repo = "OctoPrint-${pname}";
rev = version;
sha256 = "0ijv1nxmikv06a00hqqkqri6wnydqh6lwcx07pmvw6jy706jhy28";
};
preConfigure = ''
# PrintTimeGenius ships with marlin-calc binaries for multiple architectures
rm */analyzers/marlin-calc*
sed 's@"{}.{}".format(binary_base_name, machine)@"${marlin-calc}/bin/marlin-calc"@' -i */analyzers/analyze_progress.py
'';
meta = with stdenv.lib; {
description = "Better print time estimation for OctoPrint";
homepage = "https://github.com/eyal0/OctoPrint-PrintTimeGenius";
license = licenses.agpl3;
maintainers = with maintainers; [ gebner ];
};
};
}; };
in self in self

View File

@ -1,15 +1,16 @@
{ stdenv, fetchurl, autoreconfHook, pkgconfig, libxkbcommon, pango, which, git { stdenv, lib, fetchurl
, autoreconfHook, pkgconfig, libxkbcommon, pango, which, git
, cairo, libxcb, xcbutil, xcbutilwm, xcbutilxrm, libstartup_notification , cairo, libxcb, xcbutil, xcbutilwm, xcbutilxrm, libstartup_notification
, bison, flex, librsvg, check , bison, flex, librsvg, check
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "1.5.3"; pname = "rofi-unwrapped";
name = "rofi-unwrapped-${version}"; version = "1.5.4";
src = fetchurl { src = fetchurl {
url = "https://github.com/DaveDavenport/rofi/releases/download/${version}/rofi-${version}.tar.gz"; url = "https://github.com/davatorium/rofi/releases/download/${version}/rofi-${version}.tar.gz";
sha256 = "1mskknfnpgmaghplwcyc44qc8swb1f9qiyi67fz9i77jijjpj1lx"; sha256 = "1g1170zmh5v7slnm1sm2d08jgz6icikf8rm17apm1bjzzyw1lhk7";
}; };
preConfigure = '' preConfigure = ''
@ -22,11 +23,12 @@ stdenv.mkDerivation rec {
buildInputs = [ libxkbcommon pango cairo git bison flex librsvg check buildInputs = [ libxkbcommon pango cairo git bison flex librsvg check
libstartup_notification libxcb xcbutil xcbutilwm xcbutilxrm which libstartup_notification libxcb xcbutil xcbutilwm xcbutilxrm which
]; ];
doCheck = false; doCheck = false;
meta = with stdenv.lib; { meta = with lib; {
description = "Window switcher, run dialog and dmenu replacement"; description = "Window switcher, run dialog and dmenu replacement";
homepage = https://github.com/davatorium/rofi; homepage = "https://github.com/davatorium/rofi";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ mbakke ma27 ]; maintainers = with maintainers; [ mbakke ma27 ];
platforms = with platforms; linux; platforms = with platforms; linux;

View File

@ -2,7 +2,9 @@
if theme == null then rofi-unwrapped else if theme == null then rofi-unwrapped else
stdenv.mkDerivation { stdenv.mkDerivation {
name = "rofi-${rofi-unwrapped.version}"; pname = "rofi";
version = rofi-unwrapped.version;
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];
preferLocalBuild = true; preferLocalBuild = true;
passthru.unwrapped = rofi-unwrapped; passthru.unwrapped = rofi-unwrapped;

View File

@ -28,12 +28,12 @@ let
, extraPlugins ? [] , extraPlugins ? []
, extraNativeMessagingHosts ? [] , extraNativeMessagingHosts ? []
, gdkWayland ? false , gdkWayland ? false
, cfg ? config.${browserName} or {}
}: }:
assert gdkWayland -> (browser ? gtk3); # Can only use the wayland backend if gtk3 is being used assert gdkWayland -> (browser ? gtk3); # Can only use the wayland backend if gtk3 is being used
let let
cfg = config.${browserName} or {};
enableAdobeFlash = cfg.enableAdobeFlash or false; enableAdobeFlash = cfg.enableAdobeFlash or false;
ffmpegSupport = browser.ffmpegSupport or false; ffmpegSupport = browser.ffmpegSupport or false;
gssSupport = browser.gssSupport or false; gssSupport = browser.gssSupport or false;

View File

@ -13,6 +13,7 @@
, glib , glib
, gnome2 , gnome2
, gtk3 , gtk3
, lib
, libX11 , libX11
, libxcb , libxcb
, libXScrnSaver , libXScrnSaver
@ -39,10 +40,9 @@
let let
mirror = https://get.geo.opera.com/pub/opera/desktop; mirror = "https://get.geo.opera.com/pub/opera/desktop";
version = "60.0.3255.170";
rpath = stdenv.lib.makeLibraryPath [ rpath = lib.makeLibraryPath [
# These provide shared libraries loaded when starting. If one is missing, # These provide shared libraries loaded when starting. If one is missing,
# an error is shown in stderr. # an error is shown in stderr.
@ -90,13 +90,14 @@ let
at-spi2-core at-spi2-core
]; ];
in stdenv.mkDerivation { in stdenv.mkDerivation rec {
name = "opera-${version}"; pname = "opera";
version = "62.0.3331.43";
src = fetchurl { src = fetchurl {
url = "${mirror}/${version}/linux/opera-stable_${version}_amd64.deb"; url = "${mirror}/${version}/linux/${pname}-stable_${version}_amd64.deb";
sha256 = "04bcy9qhrhps3712k229yn58ak2j93wcp613zd6l2zxb8a286991"; sha256 = "0zylg32zn6blkgy4bwmjzc26i712lwakahvrd24ncpfa8805f7x7";
}; };
unpackCmd = "${dpkg}/bin/dpkg-deb -x $curSrc ."; unpackCmd = "${dpkg}/bin/dpkg-deb -x $curSrc .";
@ -118,10 +119,10 @@ in stdenv.mkDerivation {
done done
''; '';
meta = { meta = with lib; {
homepage = https://www.opera.com; homepage = "https://www.opera.com";
description = "Web browser"; description = "Web browser";
platforms = [ "x86_64-linux" ]; platforms = [ "x86_64-linux" ];
license = stdenv.lib.licenses.unfree; license = licenses.unfree;
}; };
} }

View File

@ -3,14 +3,14 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
name = "newsboat-${version}"; name = "newsboat-${version}";
version = "2.15"; version = "2.16.1";
src = fetchurl { src = fetchurl {
url = "https://newsboat.org/releases/${version}/${name}.tar.xz"; url = "https://newsboat.org/releases/${version}/${name}.tar.xz";
sha256 = "1dqdcp34jmphqf3d8ik0xdhg0s66nd5rky0y8y591nidq29wws6s"; sha256 = "0lxdsfcwa4byhfnn0gv34w3rr531f4nfqgi8j4qqmh3gncbwh8s0";
}; };
cargoSha256 = "06r682vvr8m7gl443qx9ncmq8dpmdxcls68f29d0mmf7llddy5sa"; cargoSha256 = "0ck2dgfk4fay4cjl66wqkbnq4rqrd717jl63l1mvqmvad9i19igm";
postPatch = '' postPatch = ''
substituteInPlace Makefile --replace "|| true" "" substituteInPlace Makefile --replace "|| true" ""
@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec {
''; '';
nativeBuildInputs = [ pkgconfig asciidoc docbook_xml_dtd_45 libxslt docbook_xsl ] nativeBuildInputs = [ pkgconfig asciidoc docbook_xml_dtd_45 libxslt docbook_xsl ]
++ stdenv.lib.optional stdenv.isDarwin [ makeWrapper libiconv ]; ++ stdenv.lib.optionals stdenv.isDarwin [ makeWrapper libiconv ];
buildInputs = [ stfl sqlite curl gettext libxml2 json_c ncurses ] buildInputs = [ stfl sqlite curl gettext libxml2 json_c ncurses ]
++ stdenv.lib.optional stdenv.isDarwin Security; ++ stdenv.lib.optional stdenv.isDarwin Security;
@ -29,7 +29,8 @@ rustPlatform.buildRustPackage rec {
make make
''; '';
NIX_CFLAGS_COMPILE = "-Wno-error=sign-compare"; NIX_CFLAGS_COMPILE = [ "-Wno-error=sign-compare" ]
++ stdenv.lib.optional stdenv.isDarwin "-Wno-error=format-security";
doCheck = true; doCheck = true;
@ -48,7 +49,7 @@ rustPlatform.buildRustPackage rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://newsboat.org/; homepage = https://newsboat.org/;
description = "A fork of Newsbeuter, an RSS/Atom feed reader for the text console."; description = "A fork of Newsbeuter, an RSS/Atom feed reader for the text console";
maintainers = with maintainers; [ dotlambda nicknovitski ]; maintainers = with maintainers; [ dotlambda nicknovitski ];
license = licenses.mit; license = licenses.mit;
platforms = platforms.unix; platforms = platforms.unix;

View File

@ -18,14 +18,14 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "simgrid"; pname = "simgrid";
version = "3.22.2"; version = "3.23";
src = fetchFromGitLab { src = fetchFromGitLab {
domain = "framagit.org"; domain = "framagit.org";
owner = pname; owner = pname;
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "02zzivp3k7n2yvlr79p9kapzxpxq9x4x7jf2vrkpkwnssv4f9b4p"; sha256 = "068xg5ps4j4v2sqqyl4vf83nfazp54gsy84gvlw52h94c4mj4xmp";
}; };
nativeBuildInputs = [ cmake perl python3 boost valgrind ] nativeBuildInputs = [ cmake perl python3 boost valgrind ]
@ -106,7 +106,7 @@ stdenv.mkDerivation rec {
''; '';
homepage = https://simgrid.org/; homepage = https://simgrid.org/;
license = licenses.lgpl2Plus; license = licenses.lgpl2Plus;
maintainers = with maintainers; [ mickours ]; maintainers = with maintainers; [ mickours mpoquet ];
platforms = ["x86_64-linux"]; platforms = ["x86_64-linux"];
}; };
} }

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, openssl, zlib, asciidoc, libxml2, libxslt { stdenv, fetchurl, fetchpatch, openssl, zlib, asciidoc, libxml2, libxslt
, docbook_xsl, pkgconfig, luajit , docbook_xsl, pkgconfig, luajit
, coreutils, gnused, groff, docutils , coreutils, gnused, groff, docutils
, gzip, bzip2, xz , gzip, bzip2, xz
@ -22,6 +22,14 @@ stdenv.mkDerivation rec {
sha256 = "14hfwfkrci829a9316hnvkglnqqw1p03cw9k56p4fcb078wbwh4b"; sha256 = "14hfwfkrci829a9316hnvkglnqqw1p03cw9k56p4fcb078wbwh4b";
}; };
patches = [
(fetchpatch {
name = "prevent-dos-limit-path-length.patch";
url = "https://git.zx2c4.com/cgit/patch/?id=54c407a74a35d4ee9ffae94cc5bc9096c9f7f54a";
sha256 = "1qlbpqsc293lmc9hzwf1j4jr5qlv8cm1r249v3yij5s4wki1595j";
})
];
nativeBuildInputs = [ pkgconfig ] ++ [ python wrapPython ]; nativeBuildInputs = [ pkgconfig ] ++ [ python wrapPython ];
buildInputs = [ buildInputs = [
openssl zlib asciidoc libxml2 libxslt docbook_xsl luajit openssl zlib asciidoc libxml2 libxslt docbook_xsl luajit

View File

@ -89,6 +89,10 @@ let
git-extras = callPackage ./git-extras { }; git-extras = callPackage ./git-extras { };
git-gone = callPackage ./git-gone {
inherit (darwin.apple_sdk.frameworks) Security;
};
git-hub = callPackage ./git-hub { }; git-hub = callPackage ./git-hub { };
git-ignore = callPackage ./git-ignore { }; git-ignore = callPackage ./git-ignore { };

View File

@ -0,0 +1,28 @@
{ stdenv, fetchFromGitHub, rustPlatform, pkgconfig, openssl, curl, libiconv, Security }:
rustPlatform.buildRustPackage rec {
pname = "git-gone";
version = "0.1.2";
src = fetchFromGitHub {
owner = "lunaryorn";
repo = pname;
rev = "v${version}";
sha256 = "0vgkx227wpg9l2zza6446wzshjhnrhba3qhabibn4gg8wwcqmmxf";
};
cargoSha256 = "11h2whlgjhg3j98a9w9k29njj89wx93w0dcyf981985flin709sx";
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ openssl ]
++ stdenv.lib.optionals stdenv.isDarwin [ curl libiconv Security ];
meta = with stdenv.lib; {
description = "Cleanup stale Git branches of pull requests";
homepage = "https://github.com/lunaryorn/git-gone";
license = licenses.asl20;
maintainers = [ maintainers.marsam ];
platforms = platforms.unix;
};
}

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "mjpg-streamer-${version}"; name = "mjpg-streamer-${version}";
version = "2016-03-08"; version = "unstable-2019-05-24";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jacksonliam"; owner = "jacksonliam";
repo = "mjpg-streamer"; repo = "mjpg-streamer";
rev = "4060cb64e3557037fd404d10e1c1d076b672e9e8"; rev = "501f6362c5afddcfb41055f97ae484252c85c912";
sha256 = "0g7y832jsz4ylmq9qp2l4fq6bm8l6dhsbi60fr5jfqpx4l0pia8m"; sha256 = "1cl159svfs1zzzrd3zgn4x7qy6751bvlnxfwf5hn5fmg4iszajw7";
}; };
prePatch = '' prePatch = ''
@ -23,9 +23,10 @@ stdenv.mkDerivation rec {
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://sourceforge.net/projects/mjpg-streamer/; homepage = "https://github.com/jacksonliam/mjpg-streamer";
description = "MJPG-streamer takes JPGs from Linux-UVC compatible webcams, filesystem or other input plugins and streams them as M-JPEG via HTTP to webbrowsers, VLC and other software"; description = "MJPG-streamer takes JPGs from Linux-UVC compatible webcams, filesystem or other input plugins and streams them as M-JPEG via HTTP to webbrowsers, VLC and other software";
platforms = platforms.linux; platforms = platforms.linux;
license = licenses.gpl2; license = licenses.gpl2;
maintainers = with maintainers; [ gebner ];
}; };
} }

View File

@ -0,0 +1,4 @@
{ callPackage, hello }:
{
makeSnap = callPackage ./make-snap.nix { };
}

View File

@ -0,0 +1,28 @@
let
inherit (import <nixpkgs> { }) snapTools firefox;
in snapTools.makeSnap {
meta = {
name = "nix-example-firefox";
summary = firefox.meta.description;
architectures = [ "amd64" ];
apps.nix-example-firefox = {
command = "${firefox}/bin/firefox";
plugs = [
"pulseaudio"
"camera"
"browser-support"
"avahi-observe"
"cups-control"
"desktop"
"desktop-legacy"
"gsettings"
"home"
"network"
"mount-observe"
"removable-media"
"x11"
];
};
confinement = "strict";
};
}

View File

@ -0,0 +1,12 @@
let
inherit (import <nixpkgs> { }) snapTools hello;
in snapTools.makeSnap {
meta = {
name = "hello";
summary = hello.meta.description;
description = hello.meta.longDescription;
architectures = [ "amd64" ];
confinement = "strict";
apps.hello.command = "${hello}/bin/hello";
};
}

View File

@ -0,0 +1,84 @@
{
runCommand, squashfsTools, closureInfo, lib, jq, writeText
}:
{
# The meta parameter is the contents of the `snap.yaml`, NOT the
# `snapcraft.yaml`.
#
# - `snap.yaml` is what is inside of the final Snap,
# - `snapcraft.yaml` is used by `snapcraft` to build snaps
#
# Since we skip the `snapcraft` tool, we skip the `snapcraft.yaml`
# file. For more information:
#
# https://docs.snapcraft.io/snap-format
#
# Note: unsquashfs'ing an existing snap from the store can be helpful
# for determining what you you're missing.
#
meta
}: let
snap_yaml = let
# Validate the snap's meta contains a name.
# Also: automatically set the `base` parameter and the layout for
# the `/nix` bind.
validate = { name, ... } @ args:
args // {
# Combine the provided arguments with the required options.
# base: built from https://github.com/NixOS/snapd-nix-base
# and published as The NixOS Foundation on the Snapcraft store.
base = "nix-base";
layout = (args.layout or {}) // {
# Bind mount the Snap's root nix directory to `/nix` in the
# execution environment's filesystem namespace.
"/nix".bind = "$SNAP/nix";
};
};
in writeText "snap.yaml"
(builtins.toJSON (validate meta));
# These are specifically required by snapd, so don't change them
# unless you've verified snapcraft / snapd can handle them. Best bet
# is to just mirror this list against how snapcraft creates images.
# from: https://github.com/snapcore/snapcraft/blob/b88e378148134383ffecf3658e3a940b67c9bcc9/snapcraft/internal/lifecycle/_packer.py#L96-L98
mksquashfs_args = [
"-noappend" "-comp" "xz" "-no-xattrs" "-no-fragments"
# Note: We want -all-root every time, since all the files are
# owned by root anyway. This is true for Nix, but not true for
# other builds.
# from: https://github.com/snapcore/snapcraft/blob/b88e378148134383ffecf3658e3a940b67c9bcc9/snapcraft/internal/lifecycle/_packer.py#L100
"-all-root"
];
in runCommand "squashfs.img" {
nativeBuildInputs = [ squashfsTools jq ];
closureInfo = closureInfo {
rootPaths = [ snap_yaml ];
};
} ''
root=$PWD/root
mkdir $root
(
# Put the snap.yaml in to `/meta/snap.yaml`, setting the version
# to the hash part of the store path
mkdir $root/meta
version=$(echo $out | cut -d/ -f4 | cut -d- -f1)
cat ${snap_yaml} | jq ". + { version: \"$version\" }" \
> $root/meta/snap.yaml
)
(
# Copy the store closure in to the root
mkdir -p $root/nix/store
cat $closureInfo/store-paths | xargs -I{} cp -r {} $root/nix/store/
)
# Generate the squashfs image.
mksquashfs $root $out \
${lib.concatStringsSep " " mksquashfs_args}
''

View File

@ -1,23 +1,23 @@
{ stdenv, fetchFromGitHub, autoreconfHook }: { stdenv, fetchFromGitHub, meson, ninja, pkgconfig, glib }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "adapta-backgrounds-${version}"; pname = "adapta-backgrounds";
version = "0.5.2.3"; version = "0.5.3.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "adapta-project"; owner = "adapta-project";
repo = "adapta-backgrounds"; repo = "adapta-backgrounds";
rev = version; rev = version;
sha256 = "0n0ggcxinja81lasmpviqq3l4jiwb05bs8r5aah1im2zvls1g007"; sha256 = "04hmbmzf97rsii8gpwy3wkljy5xhxmlsl34d63s6hfy05knclydj";
}; };
nativeBuildInputs = [ autoreconfHook ]; nativeBuildInputs = [ meson ninja pkgconfig glib ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Wallpaper collection for adapta-project"; description = "Wallpaper collection for adapta-project";
homepage = https://github.com/adapta-project/adapta-backgrounds; homepage = "https://github.com/adapta-project/adapta-backgrounds";
license = with licenses; [ gpl2 cc-by-sa-40 ]; license = with licenses; [ gpl2 cc-by-sa-40 ];
platforms = platforms.all; platforms = platforms.all;
maintainers = [ maintainers.romildo ]; maintainers = with maintainers; [ romildo ];
}; };
} }

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "shades-of-gray-theme"; pname = "shades-of-gray-theme";
version = "1.1.7"; version = "1.1.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "WernerFP"; owner = "WernerFP";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "09r26izbx9sj9czc95cn4r0c1v9yj2qm84zdl047fiqa49czwbzq"; sha256 = "08i2pkq7ygf9fs9cdrw4khrb8m1w2hvgmz064g36fh35r02sms3w";
}; };
buildInputs = [ gtk_engines ]; buildInputs = [ gtk_engines ];

View File

@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
pname = "mutter"; pname = "mutter";
version = "3.32.2"; version = "3.32.2";
outputs = [ "out" "dev" "man" ];
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/mutter/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/mutter/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1h577i2ap7dpfy1jg101jvc6nzccc0csgvd55ahydlr8f94frcva"; sha256 = "1h577i2ap7dpfy1jg101jvc6nzccc0csgvd55ahydlr8f94frcva";
@ -20,6 +22,7 @@ stdenv.mkDerivation rec {
mesonFlags = [ mesonFlags = [
"-Dxwayland-path=${xwayland}/bin/Xwayland" "-Dxwayland-path=${xwayland}/bin/Xwayland"
"-Dinstalled_tests=false" # TODO: enable these
]; ];
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -231,6 +231,10 @@ stdenv.mkDerivation (rec {
# that in turn causes GHCi to abort # that in turn causes GHCi to abort
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
# See #63511 - the only unstripped file is the debug rts which isn't meant to
# be stripped.
dontStrip = true;
checkTarget = "test"; checkTarget = "test";
doCheck = false; # fails with "testsuite/tests: No such file or directory. Stop." doCheck = false; # fails with "testsuite/tests: No such file or directory. Stop."

View File

@ -208,6 +208,10 @@ stdenv.mkDerivation (rec {
# that in turn causes GHCi to abort # that in turn causes GHCi to abort
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
# See #63511 - the only unstripped file is the debug rts which isn't meant to
# be stripped.
dontStrip = true;
checkTarget = "test"; checkTarget = "test";
hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie"; hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie";

View File

@ -207,6 +207,10 @@ stdenv.mkDerivation (rec {
# that in turn causes GHCi to abort # that in turn causes GHCi to abort
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
# See #63511 - the only unstripped file is the debug rts which isn't meant to
# be stripped.
dontStrip = true;
checkTarget = "test"; checkTarget = "test";
hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie"; hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie";

View File

@ -207,6 +207,10 @@ stdenv.mkDerivation (rec {
# that in turn causes GHCi to abort # that in turn causes GHCi to abort
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols"; stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
# See #63511 - the only unstripped file is the debug rts which isn't meant to
# be stripped.
dontStrip = true;
checkTarget = "test"; checkTarget = "test";
hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie"; hardeningDisable = [ "format" ] ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie";

View File

@ -72,7 +72,7 @@ self: super: {
name = "git-annex-${super.git-annex.version}-src"; name = "git-annex-${super.git-annex.version}-src";
url = "git://git-annex.branchable.com/"; url = "git://git-annex.branchable.com/";
rev = "refs/tags/" + super.git-annex.version; rev = "refs/tags/" + super.git-annex.version;
sha256 = "02vj13qyzjbk14ddpabycq2mwzggsk63vddffjyzaqpy9d7x35s9"; sha256 = "11d4qyhmc774h2xyrpyn9rxx99x3vjs0fcxsg49gj5ayzmykafap";
}; };
}).override { }).override {
dbus = if pkgs.stdenv.isLinux then self.dbus else null; dbus = if pkgs.stdenv.isLinux then self.dbus else null;

View File

@ -492,7 +492,11 @@ self: super: builtins.intersectAttrs super {
servant-streaming-server = dontCheck super.servant-streaming-server; servant-streaming-server = dontCheck super.servant-streaming-server;
# https://github.com/haskell-servant/servant/pull/1128 # https://github.com/haskell-servant/servant/pull/1128
servant-client-core = appendPatch super.servant-client-core ./patches/servant-client-core-streamBody.patch; servant-client-core = if (pkgs.lib.getVersion super.servant-client-core) == "0.15" then
appendPatch super.servant-client-core ./patches/servant-client-core-streamBody.patch
else
super.servant-client-core;
# tests run executable, relying on PATH # tests run executable, relying on PATH
# without this, tests fail with "Couldn't launch intero process" # without this, tests fail with "Couldn't launch intero process"

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, jdk, rlwrap, makeWrapper }: { stdenv, fetchurl, jdk11, rlwrap, makeWrapper }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "clojure-${version}"; pname = "clojure";
version = "1.10.0.442"; version = "1.10.1.462";
src = fetchurl { src = fetchurl {
url = "https://download.clojure.org/install/clojure-tools-${version}.tar.gz"; url = "https://download.clojure.org/install/clojure-tools-${version}.tar.gz";
sha256 = "147pkid3pvw60gq8vansid3x6wwfy9pqdbla3wfd5qaxqbcrhclw"; sha256 = "0mi7fzqvkg2ihigxkkamc742m1iba0yzy8ivciavzmpcnw128sc6";
}; };
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];
@ -14,11 +14,11 @@ stdenv.mkDerivation rec {
outputs = [ "out" "prefix" ]; outputs = [ "out" "prefix" ];
installPhase = let installPhase = let
binPath = stdenv.lib.makeBinPath [ rlwrap jdk ]; binPath = stdenv.lib.makeBinPath [ rlwrap jdk11 ];
in '' in ''
mkdir -p $prefix/libexec mkdir -p $prefix/libexec
cp clojure-tools-${version}.jar $prefix/libexec cp clojure-tools-${version}.jar $prefix/libexec
cp {,example-}deps.edn $prefix cp example-deps.edn $prefix
substituteInPlace clojure --replace PREFIX $prefix substituteInPlace clojure --replace PREFIX $prefix
@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
offers a software transactional memory system and reactive Agent offers a software transactional memory system and reactive Agent
system that ensure clean, correct, multithreaded designs. system that ensure clean, correct, multithreaded designs.
''; '';
maintainers = with maintainers; [ the-kenny ]; maintainers = with maintainers; [ jlesquembre ];
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }

View File

@ -0,0 +1,100 @@
From 597e73f2a4b2f0b508127931b36d5540d6941823 Mon Sep 17 00:00:00 2001
From: Frederik Rietdijk <fridh@fridh.nl>
Date: Mon, 28 Aug 2017 09:24:06 +0200
Subject: [PATCH] Don't use ldconfig
---
Lib/ctypes/util.py | 70 ++----------------------------------------------------
1 file changed, 2 insertions(+), 68 deletions(-)
diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py
index 5e8b31a854..7b45ce6c15 100644
--- a/Lib/ctypes/util.py
+++ b/Lib/ctypes/util.py
@@ -94,46 +94,7 @@ elif os.name == "posix":
import re, tempfile
def _findLib_gcc(name):
- # Run GCC's linker with the -t (aka --trace) option and examine the
- # library name it prints out. The GCC command will fail because we
- # haven't supplied a proper program with main(), but that does not
- # matter.
- expr = os.fsencode(r'[^\(\)\s]*lib%s\.[^\(\)\s]*' % re.escape(name))
-
- c_compiler = shutil.which('gcc')
- if not c_compiler:
- c_compiler = shutil.which('cc')
- if not c_compiler:
- # No C compiler available, give up
- return None
-
- temp = tempfile.NamedTemporaryFile()
- try:
- args = [c_compiler, '-Wl,-t', '-o', temp.name, '-l' + name]
-
- env = dict(os.environ)
- env['LC_ALL'] = 'C'
- env['LANG'] = 'C'
- try:
- proc = subprocess.Popen(args,
- stdout=subprocess.PIPE,
- stderr=subprocess.STDOUT,
- env=env)
- except OSError: # E.g. bad executable
- return None
- with proc:
- trace = proc.stdout.read()
- finally:
- try:
- temp.close()
- except FileNotFoundError:
- # Raised if the file was already removed, which is the normal
- # behaviour of GCC if linking fails
- pass
- res = re.search(expr, trace)
- if not res:
- return None
- return os.fsdecode(res.group(0))
+ return None
if sys.platform == "sunos5":
@@ -255,34 +216,7 @@ elif os.name == "posix":
else:
def _findSoname_ldconfig(name):
- import struct
- if struct.calcsize('l') == 4:
- machine = os.uname().machine + '-32'
- else:
- machine = os.uname().machine + '-64'
- mach_map = {
- 'x86_64-64': 'libc6,x86-64',
- 'ppc64-64': 'libc6,64bit',
- 'sparc64-64': 'libc6,64bit',
- 's390x-64': 'libc6,64bit',
- 'ia64-64': 'libc6,IA-64',
- }
- abi_type = mach_map.get(machine, 'libc6')
-
- # XXX assuming GLIBC's ldconfig (with option -p)
- regex = r'\s+(lib%s\.[^\s]+)\s+\(%s'
- regex = os.fsencode(regex % (re.escape(name), abi_type))
- try:
- with subprocess.Popen(['/sbin/ldconfig', '-p'],
- stdin=subprocess.DEVNULL,
- stderr=subprocess.DEVNULL,
- stdout=subprocess.PIPE,
- env={'LC_ALL': 'C', 'LANG': 'C'}) as p:
- res = re.search(regex, p.stdout.read())
- if res:
- return os.fsdecode(res.group(1))
- except OSError:
- pass
+ return None
def _findLib_ld(name):
# See issue #9998 for why this is needed
--
2.15.0

View File

@ -98,6 +98,19 @@ in {
inherit passthruFun; inherit passthruFun;
}; };
python38 = callPackage ./cpython {
self = python38;
sourceVersion = {
major = "3";
minor = "8";
patch = "0";
suffix = "b2";
};
sha256 = "1rh9dz5vmc56y45d6j2wfjw4m7x25i6v8vyld4mrqh06s2gn1hbl";
inherit (darwin) CF configd;
inherit passthruFun;
};
pypy27 = callPackage ./pypy { pypy27 = callPackage ./pypy {
self = pypy27; self = pypy27;
sourceVersion = { sourceVersion = {

View File

@ -1,7 +1,7 @@
{ stdenv, fetchurl, cmake, pkgconfig, alsaLib { stdenv, fetchurl, cmake, pkgconfig, alsaLib
, libjack2, libsndfile, fftw, curl, gcc , libjack2, libsndfile, fftw, curl, gcc
, libXt, qtbase, qttools, qtwebkit, readline , libXt, qtbase, qttools, qtwebengine
, useSCEL ? false, emacs , readline, qtwebsockets, useSCEL ? false, emacs
}: }:
let optional = stdenv.lib.optional; let optional = stdenv.lib.optional;
@ -9,12 +9,12 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "supercollider-${version}"; name = "supercollider-${version}";
version = "3.9.3"; version = "3.10.2";
src = fetchurl { src = fetchurl {
url = "https://github.com/supercollider/supercollider/releases/download/Version-${version}/SuperCollider-${version}-Source-linux.tar.bz2"; url = "https://github.com/supercollider/supercollider/releases/download/Version-${version}/SuperCollider-${version}-Source-linux.tar.bz2";
sha256 = "1d8ixfl100jvlialxdizp8wqsl1mp5pi2bam25vp97bhjd59cfdr"; sha256 = "0ynz1ydcpsd5h57h1n4a7avm6p1cif5a8rkmz4qpr46pr8z9p6iq";
}; };
hardeningDisable = [ "stackprotector" ]; hardeningDisable = [ "stackprotector" ];
@ -27,14 +27,15 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake pkgconfig qttools ]; nativeBuildInputs = [ cmake pkgconfig qttools ];
buildInputs = [ buildInputs = [
gcc libjack2 libsndfile fftw curl libXt qtbase qtwebkit readline ] gcc libjack2 libsndfile fftw curl libXt qtbase qtwebengine qtwebsockets readline ]
++ optional (!stdenv.isDarwin) alsaLib ++ optional (!stdenv.isDarwin) alsaLib
++ optional useSCEL emacs; ++ optional useSCEL emacs;
meta = { meta = with stdenv.lib; {
description = "Programming language for real time audio synthesis"; description = "Programming language for real time audio synthesis";
homepage = http://supercollider.sourceforge.net/; homepage = http://supercollider.sourceforge.net/;
license = stdenv.lib.licenses.gpl3Plus; maintainers = with maintainers; [ mrmebelman ];
license = licenses.gpl3;
platforms = [ "x686-linux" "x86_64-linux" ]; platforms = [ "x686-linux" "x86_64-linux" ];
}; };
} }

View File

@ -1,45 +1,77 @@
{ stdenv, fetchurl, pkgconfig, glib, intltool, makeWrapper, shadow { stdenv
, gobject-introspection, polkit, systemd, coreutils, meson, dbus , fetchurl
, ninja, python3 }: , fetchpatch
, substituteAll
, pkgconfig
, glib
, shadow
, gobject-introspection
, polkit
, systemd
, coreutils
, meson
, dbus
, ninja
, python3
, gettext
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "accountsservice-${version}"; pname = "accountsservice";
version = "0.6.55"; version = "0.6.55";
outputs = [ "out" "dev" ];
src = fetchurl { src = fetchurl {
url = "https://www.freedesktop.org/software/accountsservice/accountsservice-${version}.tar.xz"; url = "https://www.freedesktop.org/software/${pname}/${pname}-${version}.tar.xz";
sha256 = "16wwd633jak9ajyr1f1h047rmd09fhf3kzjz6g5xjsz0lwcj8azz"; sha256 = "16wwd633jak9ajyr1f1h047rmd09fhf3kzjz6g5xjsz0lwcj8azz";
}; };
nativeBuildInputs = [ pkgconfig makeWrapper meson ninja python3 ]; nativeBuildInputs = [
dbus
gettext
gobject-introspection
meson
ninja
pkgconfig
python3
];
buildInputs = [ glib intltool gobject-introspection polkit systemd dbus ]; buildInputs = [
glib
polkit
];
mesonFlags = [ "-Dsystemdsystemunitdir=etc/systemd/system" mesonFlags = [
"-Dlocalstatedir=/var" ]; "-Dadmin_group=wheel"
prePatch = '' "-Dlocalstatedir=/var"
"-Dsystemdsystemunitdir=${placeholder ''out''}/etc/systemd/system"
];
postPatch = ''
chmod +x meson_post_install.py chmod +x meson_post_install.py
patchShebangs meson_post_install.py patchShebangs meson_post_install.py
substituteInPlace src/daemon.c --replace '"/usr/sbin/useradd"' '"${shadow}/bin/useradd"' \
--replace '"/usr/sbin/userdel"' '"${shadow}/bin/userdel"'
substituteInPlace src/user.c --replace '"/usr/sbin/usermod"' '"${shadow}/bin/usermod"' \
--replace '"/usr/bin/chage"' '"${shadow}/bin/chage"' \
--replace '"/usr/bin/passwd"' '"${shadow}/bin/passwd"' \
--replace '"/bin/cat"' '"${coreutils}/bin/cat"'
''; '';
patches = [ patches = [
(substituteAll {
src = ./fix-paths.patch;
inherit shadow coreutils;
})
./no-create-dirs.patch ./no-create-dirs.patch
./Disable-methods-that-change-files-in-etc.patch ./Disable-methods-that-change-files-in-etc.patch
# Systemd unit improvements. Notably using StateDirectory eliminating the
# need of an ad-hoc script.
(fetchpatch {
url = "https://gitlab.freedesktop.org/accountsservice/accountsservice/commit/152b845bbd3ca2a64516691493a160825f1a2046.patch";
sha256 = "114wrf5mwj5bgc5v1g05md4ridcnwdrwppr3bjz96sknwh5hk8s5";
})
(fetchpatch {
url = "https://gitlab.freedesktop.org/accountsservice/accountsservice/commit/0e712e935abd26499ff5995ab363e5bfd9ee7c4c.patch";
sha256 = "1y60a5fmgfqjzprwpizilrazqn3mggdlgc5sgcpsprsp62fv78rl";
})
]; ];
preFixup = ''
wrapProgram "$out/libexec/accounts-daemon" \
--run "${coreutils}/bin/mkdir -p /var/lib/AccountsService/users" \
--run "${coreutils}/bin/mkdir -p /var/lib/AccountsService/icons"
'';
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "D-Bus interface for user account query and manipulation"; description = "D-Bus interface for user account query and manipulation";
homepage = https://www.freedesktop.org/wiki/Software/AccountsService; homepage = https://www.freedesktop.org/wiki/Software/AccountsService;

View File

@ -0,0 +1,125 @@
diff --git a/src/daemon.c b/src/daemon.c
index c52bda3..75d214e 100644
--- a/src/daemon.c
+++ b/src/daemon.c
@@ -1106,7 +1106,7 @@ daemon_create_user_authorized_cb (Daemon *daemon,
sys_log (context, "create user '%s'", cd->user_name);
- argv[0] = "/usr/sbin/useradd";
+ argv[0] = "@shadow@/bin/useradd";
argv[1] = "-m";
argv[2] = "-c";
argv[3] = cd->real_name;
@@ -1318,7 +1318,7 @@ daemon_delete_user_authorized_cb (Daemon *daemon,
user_set_saved (user, FALSE);
- argv[0] = "/usr/sbin/userdel";
+ argv[0] = "@shadow@/bin/userdel";
if (ud->remove_files) {
argv[1] = "-f";
argv[2] = "-r";
diff --git a/src/user.c b/src/user.c
index 9f57af5..e65289d 100644
--- a/src/user.c
+++ b/src/user.c
@@ -844,7 +844,7 @@ user_change_real_name_authorized_cb (Daemon *daemon,
accounts_user_get_uid (ACCOUNTS_USER (user)),
name);
- argv[0] = "/usr/sbin/usermod";
+ argv[0] = "@shadown@/bin/usermod";
argv[1] = "-c";
argv[2] = name;
argv[3] = "--";
@@ -913,7 +913,7 @@ user_change_user_name_authorized_cb (Daemon *daemon,
accounts_user_get_uid (ACCOUNTS_USER (user)),
name);
- argv[0] = "/usr/sbin/usermod";
+ argv[0] = "@shadow@/bin/usermod";
argv[1] = "-l";
argv[2] = name;
argv[3] = "--";
@@ -1321,7 +1321,7 @@ user_change_home_dir_authorized_cb (Daemon *daemon,
accounts_user_get_uid (ACCOUNTS_USER (user)),
home_dir);
- argv[0] = "/usr/sbin/usermod";
+ argv[0] = "@shadow@/bin/usermod";
argv[1] = "-m";
argv[2] = "-d";
argv[3] = home_dir;
@@ -1378,7 +1378,7 @@ user_change_shell_authorized_cb (Daemon *daemon,
accounts_user_get_uid (ACCOUNTS_USER (user)),
shell);
- argv[0] = "/usr/sbin/usermod";
+ argv[0] = "@shadow@/bin/usermod";
argv[1] = "-s";
argv[2] = shell;
argv[3] = "--";
@@ -1520,7 +1520,7 @@ user_change_icon_file_authorized_cb (Daemon *daemon,
return;
}
- argv[0] = "/bin/cat";
+ argv[0] = "@coreutils@/bin/cat";
argv[1] = filename;
argv[2] = NULL;
@@ -1601,7 +1601,7 @@ user_change_locked_authorized_cb (Daemon *daemon,
locked ? "locking" : "unlocking",
accounts_user_get_user_name (ACCOUNTS_USER (user)),
accounts_user_get_uid (ACCOUNTS_USER (user)));
- argv[0] = "/usr/sbin/usermod";
+ argv[0] = "@shadow@/bin/usermod";
argv[1] = locked ? "-L" : "-U";
argv[2] = "--";
argv[3] = accounts_user_get_user_name (ACCOUNTS_USER (user));
@@ -1726,7 +1726,7 @@ user_change_account_type_authorized_cb (Daemon *daemon,
g_free (groups);
- argv[0] = "/usr/sbin/usermod";
+ argv[0] = "@shadow@/bin/usermod";
argv[1] = "-G";
argv[2] = str->str;
argv[3] = "--";
@@ -1794,7 +1794,7 @@ user_change_password_mode_authorized_cb (Daemon *daemon,
if (mode == PASSWORD_MODE_SET_AT_LOGIN ||
mode == PASSWORD_MODE_NONE) {
- argv[0] = "/usr/bin/passwd";
+ argv[0] = "/run/wrappers/bin/passwd";
argv[1] = "-d";
argv[2] = "--";
argv[3] = accounts_user_get_user_name (ACCOUNTS_USER (user));
@@ -1806,7 +1806,7 @@ user_change_password_mode_authorized_cb (Daemon *daemon,
}
if (mode == PASSWORD_MODE_SET_AT_LOGIN) {
- argv[0] = "/usr/bin/chage";
+ argv[0] = "@shadow@/bin/chage";
argv[1] = "-d";
argv[2] = "0";
argv[3] = "--";
@@ -1827,7 +1827,7 @@ user_change_password_mode_authorized_cb (Daemon *daemon,
accounts_user_set_locked (ACCOUNTS_USER (user), FALSE);
}
else if (accounts_user_get_locked (ACCOUNTS_USER (user))) {
- argv[0] = "/usr/sbin/usermod";
+ argv[0] = "@shadow@/bin/usermod";
argv[1] = "-U";
argv[2] = "--";
argv[3] = accounts_user_get_user_name (ACCOUNTS_USER (user));
@@ -1905,7 +1905,7 @@ user_change_password_authorized_cb (Daemon *daemon,
g_object_freeze_notify (G_OBJECT (user));
- argv[0] = "/usr/sbin/usermod";
+ argv[0] = "@shadow@/bin/usermod";
argv[1] = "-p";
argv[2] = strings[0];
argv[3] = "--";

View File

@ -2,10 +2,10 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "leatherman-${version}"; name = "leatherman-${version}";
version = "1.6.0"; version = "1.7.0";
src = fetchFromGitHub { src = fetchFromGitHub {
sha256 = "1dy1iisc0h1l28ff72pq7vxa4mj5zpq2jflpdghhx8yqksxhii4k"; sha256 = "0n6vcbc43hdaxg5inl2b43bsksdkj3k0qxis6gkkclipivp8pz0p";
rev = version; rev = version;
repo = "leatherman"; repo = "leatherman";
owner = "puppetlabs"; owner = "puppetlabs";

View File

@ -5,16 +5,16 @@
buildGoModule rec { buildGoModule rec {
pname = "packr"; pname = "packr";
version = "2.5.1"; version = "2.5.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "gobuffalo"; owner = "gobuffalo";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "070hpnsr5w1r1cg9wl80cafmhkx4z3s29wq04fa7rk49hmwml4jy"; sha256 = "1ciffa5xbd93fylwz93wr4m4fj83dcla55dmdshaqz28rbsapnc1";
}; };
modSha256 = "0xvpk9jjcqac44s4fp0jwpljxvs0ypjwc5qfg0w90s2r7jn50fxn"; modSha256 = "086gydrl3i35hawb5m7rsb4a0llcpdpgid1xfw2z9n6jkwkclw4n";
meta = with lib; { meta = with lib; {
description = "The simple and easy way to embed static files into Go binaries"; description = "The simple and easy way to embed static files into Go binaries";

View File

@ -0,0 +1,41 @@
{ stdenv
, lib
, fetchurl
, findlib
, ocaml
, ocamlbuild
, topkg
}:
let
minimumSupportedOcamlVersion = "4.02.0";
in
assert lib.versionOlder minimumSupportedOcamlVersion ocaml.version;
stdenv.mkDerivation rec {
pname = "hmap";
version = "0.8.1";
name = "ocaml${ocaml.version}-${pname}-${version}";
src = fetchurl {
url = "http://erratique.ch/software/hmap/releases/${pname}-${version}.tbz";
sha256 = "10xyjy4ab87z7jnghy0wnla9wrmazgyhdwhr4hdmxxdn28dxn03a";
};
buildInputs = [ ocaml ocamlbuild findlib topkg ];
inherit (topkg) installPhase;
buildPhase = "${topkg.run} build --tests true";
doCheck = true;
checkPhase = "${topkg.run} test";
meta = {
description = "Heterogeneous value maps for OCaml";
homepage = "https://erratique.ch/software/hmap";
license = lib.licenses.isc;
maintainers = [ lib.maintainers.pmahoney ];
};
}

View File

@ -0,0 +1,30 @@
{ buildDunePackage
, ppx_sexp_conv
, ppx_fields_conv
, cmdliner
, cohttp-lwt-unix
, logs
, magic-mime
, opium_kernel
, stringext
, alcotest
}:
buildDunePackage rec {
pname = "opium";
inherit (opium_kernel) version src meta minimumOCamlVersion;
doCheck = true;
buildInputs = [
ppx_sexp_conv ppx_fields_conv
alcotest
];
propagatedBuildInputs = [
opium_kernel cmdliner cohttp-lwt-unix magic-mime logs stringext
];
}

View File

@ -0,0 +1,42 @@
{ lib
, buildDunePackage
, fetchFromGitHub
, ppx_fields_conv
, ppx_sexp_conv
, cohttp-lwt
, ezjsonm
, hmap
}:
buildDunePackage rec {
pname = "opium_kernel";
version = "0.17.1";
minimumOCamlVersion = "4.04.1";
src = fetchFromGitHub {
owner = "rgrinberg";
repo = "opium";
rev = "v${version}";
sha256 = "03xzh0ik6k3c0yn1w1avph667vdagwclzimwwrlf9qdxnzxvcnp3";
};
doCheck = true;
buildInputs = [
ppx_sexp_conv ppx_fields_conv
];
propagatedBuildInputs = [
hmap cohttp-lwt ezjsonm
];
meta = {
description = "Sinatra like web toolkit for OCaml based on cohttp & lwt";
homepage = "https://github.com/rgrinberg/opium";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.pmahoney ];
};
}

View File

@ -5,11 +5,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "altair"; pname = "altair";
version = "3.0.1"; version = "3.1.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "63934563a7a7b7186335858206a0b9be6043163b8b54a26cd3b3299a9e5e391f"; sha256 = "1zdznkybw3g8fd280h5j5cnnwcv30610gp8fl8vwqda1w2p6pgvp";
}; };
postPatch = '' postPatch = ''

View File

@ -5,11 +5,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "fido2"; pname = "fido2";
version = "0.5.0"; version = "0.7.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1pl8d2pr6jzqj4y9qiaddhjgnl92kikjxy0bgzm2jshkzzic8mp3"; sha256 = "11wdcjymw8y6wxgp29gbhdxff3lpc5yp5fcqnr5vnj88g192ic27";
}; };
propagatedBuildInputs = [ six cryptography ]; propagatedBuildInputs = [ six cryptography ];

View File

@ -4,7 +4,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "marshmallow-sqlalchemy"; pname = "marshmallow-sqlalchemy";
version = "0.16.3"; version = "0.17.0";
meta = { meta = {
homepage = "https://github.com/marshmallow-code/marshmallow-sqlalchemy"; homepage = "https://github.com/marshmallow-code/marshmallow-sqlalchemy";
@ -14,7 +14,7 @@ buildPythonPackage rec {
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0qzpl53r58fk328cn41365c6jkliwmj41v16zkyjxb9d4s2mvn14"; sha256 = "17pnbv28n9vy3q66ckxfdbb9k1riy6s8lg63zfm5jsx00f0zqqnn";
}; };
propagatedBuildInputs = [ marshmallow sqlalchemy ]; propagatedBuildInputs = [ marshmallow sqlalchemy ];

View File

@ -1,19 +1,18 @@
{ stdenv, buildPythonPackage, fetchPypi, pythonOlder, pytest, setuptools, structlog, pytest-asyncio, pytest_xdist, flaky, tornado, pycurl }: { stdenv, buildPythonPackage, fetchPypi, pythonOlder, pytest, setuptools, structlog, pytest-asyncio, flaky, tornado, pycurl }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "nvchecker"; pname = "nvchecker";
version = "1.4.3"; version = "1.4.4";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0v340wkq4sn9pvcpjh076l8mcqkn3nrn7if8p6iysk02bjxvknbv"; sha256 = "6276ed2a897a30ccd71bfd7cf9e6b7842f37f3d5a86d7a70fe46f437c62b1875";
}; };
propagatedBuildInputs = [ setuptools structlog tornado pycurl ]; propagatedBuildInputs = [ setuptools structlog tornado pycurl ];
checkInputs = [ pytest pytest-asyncio pytest_xdist flaky ]; checkInputs = [ pytest pytest-asyncio flaky ];
# Disable tests for now, because our version of pytest seems to be too new # requires network access
# https://github.com/lilydjwg/nvchecker/commit/42a02efec84824a073601e1c2de30339d251e4c7
doCheck = false; doCheck = false;
checkPhase = '' checkPhase = ''

View File

@ -5,13 +5,13 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "python-jsonrpc-server"; pname = "python-jsonrpc-server";
version = "0.1.2"; version = "0.2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "palantir"; owner = "palantir";
repo = "python-jsonrpc-server"; repo = "python-jsonrpc-server";
rev = version; rev = version;
sha256 = "0k55rpywghapk5db8dgp2jj5v5654q6m571s1gcz1mpn2qxkz69l"; sha256 = "054b0xm5z3f82jwp7zj21pkh7gwj9jd933jhymdx49n1n1iynfn0";
}; };
postPatch = '' postPatch = ''

View File

@ -1,5 +1,5 @@
{ stdenv, buildPythonPackage, fetchFromGitHub, pythonOlder, isPy27 { stdenv, buildPythonPackage, fetchFromGitHub, pythonOlder, isPy27
, configparser, futures, future, jedi, pluggy, python-jsonrpc-server , backports_functools_lru_cache, configparser, futures, future, jedi, pluggy, python-jsonrpc-server
, pytest, mock, pytestcov, coverage , pytest, mock, pytestcov, coverage
, # Allow building a limited set of providers, e.g. ["pycodestyle"]. , # Allow building a limited set of providers, e.g. ["pycodestyle"].
providers ? ["*"] providers ? ["*"]
@ -54,7 +54,7 @@ buildPythonPackage rec {
++ stdenv.lib.optional (withProvider "rope") rope ++ stdenv.lib.optional (withProvider "rope") rope
++ stdenv.lib.optional (withProvider "yapf") yapf ++ stdenv.lib.optional (withProvider "yapf") yapf
++ stdenv.lib.optional isPy27 configparser ++ stdenv.lib.optional isPy27 configparser
++ stdenv.lib.optional (pythonOlder "3.2") futures; ++ stdenv.lib.optionals (pythonOlder "3.2") [ backports_functools_lru_cache futures ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://github.com/palantir/python-language-server; homepage = https://github.com/palantir/python-language-server;

View File

@ -1,22 +1,28 @@
{ lib, buildPythonPackage, fetchPypi, xmltodict, requests { lib, buildPythonPackage, fetchPypi, xmltodict, requests
# Test dependencies # Test dependencies
, pytest_3, pytestcov, coveralls, pylint, flake8, graphviz, mock, sphinx , pytest, pytestcov, coveralls, pylint, flake8, graphviz, mock, sphinx
, sphinx_rtd_theme , sphinx_rtd_theme
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "soco"; pname = "soco";
version = "0.16"; version = "0.17";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "7bed4475e3f134283af1f520a9b2e6ce2a8e69bdc1b58ee68528b3d093972424"; sha256 = "15zw6i5z5p8vsa3lp20rjizhv4lzz935r73im0xm6zsl71bsgvj8";
}; };
postPatch = ''
# https://github.com/SoCo/SoCo/pull/670
substituteInPlace requirements-dev.txt \
--replace "pytest-cov>=2.4.0,<2.6" "pytest-cov>=2.4.0"
'';
propagatedBuildInputs = [ xmltodict requests ]; propagatedBuildInputs = [ xmltodict requests ];
checkInputs = [ checkInputs = [
pytest_3 pytestcov coveralls pylint flake8 graphviz mock sphinx pytest pytestcov coveralls pylint flake8 graphviz mock sphinx
sphinx_rtd_theme sphinx_rtd_theme
]; ];

View File

@ -1,3 +1,8 @@
{ haskellPackages, haskell }: { haskellPackages, haskell }:
(haskell.lib.doDistribute haskellPackages.cachix).bin (haskellPackages.override {
overrides = self: super: {
cachix = haskell.lib.enableSeparateBinOutput (haskell.lib.doDistribute (self.cachix_0_2_1 or self.cachix));
cachix-api = self.cachix-api_0_2_1 or self.cachix-api;
};
}).cachix.bin

View File

@ -2,16 +2,26 @@
buildGoModule rec { buildGoModule rec {
name = "gotools-unstable-${version}"; name = "gotools-unstable-${version}";
version = "2019-06-03"; version = "2019-07-06";
rev = "8aaa1484dc108aa23dcf2d4a09371c0c9e280f6b"; rev = "72ffa07ba3db8d09f5215feec0f89464f3028f8e";
src = fetchgit { src = fetchgit {
inherit rev; inherit rev;
url = "https://go.googlesource.com/tools"; url = "https://go.googlesource.com/tools";
sha256 = "0sa41fi38b6pvz7jjr6vqrd152qjvmbcagm1qdxw41vqcdw3ljx3"; sha256 = "0c0s5aiwj807vxfzwrah32spwq8cnxvy0j117i5cbsqw2df80pgv";
}; };
modSha256 = "0cm7fwb1k5hvbhh86kagzsw5vwgkr6dr7glhbjxg5xaahlhx2w5w"; # Build of golang.org/x/tools/gopls fails with:
# can't load package: package golang.org/x/tools/gopls: unknown import path "golang.org/x/tools/gopls": cannot find module providing package golang.org/x/tools/gopls
# That is most probably caused by golang.org/x/tools/gopls containing a separate Go module.
# In order to fix this, we simply remove the module.
# Note that build of golang.org/x/tools/cmd/gopls provides identical binary as golang.org/x/tools/gopls.
# See https://github.com/NixOS/nixpkgs/pull/64335.
postPatch = ''
rm -rf gopls
'';
modSha256 = "16nkrpki9fnxsrxxxs9ljz49plcz393z0sqq2knkk30pmncpwd3q";
postConfigure = '' postConfigure = ''
# Make the builtin tools available here # Make the builtin tools available here

View File

@ -1,3 +1,3 @@
source "https://rubygems.org" source "https://rubygems.org"
gem "travis", "1.8.9" gem "travis", "1.8.10"

View File

@ -2,14 +2,14 @@ GEM
remote: https://rubygems.org/ remote: https://rubygems.org/
specs: specs:
addressable (2.4.0) addressable (2.4.0)
backports (3.11.4) backports (3.15.0)
ethon (0.11.0) ethon (0.12.0)
ffi (>= 1.3.0) ffi (>= 1.3.0)
faraday (0.15.2) faraday (0.15.4)
multipart-post (>= 1.2, < 3) multipart-post (>= 1.2, < 3)
faraday_middleware (0.12.2) faraday_middleware (0.13.1)
faraday (>= 0.7.4, < 1.0) faraday (>= 0.7.4, < 1.0)
ffi (1.9.25) ffi (1.11.1)
gh (0.15.1) gh (0.15.1)
addressable (~> 2.4.0) addressable (~> 2.4.0)
backports backports
@ -18,17 +18,17 @@ GEM
net-http-persistent (~> 2.9) net-http-persistent (~> 2.9)
net-http-pipeline net-http-pipeline
highline (1.7.10) highline (1.7.10)
json (2.1.0) json (2.2.0)
launchy (2.4.3) launchy (2.4.3)
addressable (~> 2.3) addressable (~> 2.3)
multi_json (1.13.1) multi_json (1.13.1)
multipart-post (2.0.0) multipart-post (2.1.1)
net-http-persistent (2.9.4) net-http-persistent (2.9.4)
net-http-pipeline (1.0.1) net-http-pipeline (1.0.1)
pusher-client (0.6.2) pusher-client (0.6.2)
json json
websocket (~> 1.0) websocket (~> 1.0)
travis (1.8.9) travis (1.8.10)
backports backports
faraday (~> 0.9) faraday (~> 0.9)
faraday_middleware (~> 0.9, >= 0.9.1) faraday_middleware (~> 0.9, >= 0.9.1)
@ -45,7 +45,7 @@ PLATFORMS
ruby ruby
DEPENDENCIES DEPENDENCIES
travis (= 1.8.9) travis (= 1.8.10)
BUNDLED WITH BUNDLED WITH
1.14.6 1.17.2

View File

@ -10,45 +10,45 @@
backports = { backports = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1hshjxww2h7s0dk57njrygq4zpp0nlqrjfya7zwm27iq3rhc3y8g"; sha256 = "0cczfi1yp7a68bg7ipzi4lvrmi4xsi36n9a19krr4yb3nfwd8fn2";
type = "gem"; type = "gem";
}; };
version = "3.11.4"; version = "3.15.0";
}; };
ethon = { ethon = {
dependencies = ["ffi"]; dependencies = ["ffi"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0y70szwm2p0b9qfvpqrzjrgm3jz0ig65vlbfr6ppc3z0m1h7kv48"; sha256 = "0gggrgkcq839mamx7a8jbnp2h7x2ykfn34ixwskwb0lzx2ak17g9";
type = "gem"; type = "gem";
}; };
version = "0.11.0"; version = "0.12.0";
}; };
faraday = { faraday = {
dependencies = ["multipart-post"]; dependencies = ["multipart-post"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "14lg0c4bphk16rccc5jmaan6nfcvmy0caiahpc61f9zfwpsj7ymg"; sha256 = "0s72m05jvzc1pd6cw1i289chas399q0a14xrwg4rvkdwy7bgzrh0";
type = "gem"; type = "gem";
}; };
version = "0.15.2"; version = "0.15.4";
}; };
faraday_middleware = { faraday_middleware = {
dependencies = ["faraday"]; dependencies = ["faraday"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1p7icfl28nvl8qqdsngryz1snqic9l8x6bk0dxd7ygn230y0k41d"; sha256 = "1a93rs58bakqck7bcihasz66a1riy22h2zpwrpmb13gp8mw3wkmr";
type = "gem"; type = "gem";
}; };
version = "0.12.2"; version = "0.13.1";
}; };
ffi = { ffi = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0jpm2dis1j7zvvy3lg7axz9jml316zrn7s0j59vyq3qr127z0m7q"; sha256 = "06mvxpjply8qh4j3fj9wh08kdzwkbnvsiysh0vrhlk5cwxzjmblh";
type = "gem"; type = "gem";
}; };
version = "1.9.25"; version = "1.11.1";
}; };
gh = { gh = {
dependencies = ["addressable" "backports" "faraday" "multi_json" "net-http-persistent" "net-http-pipeline"]; dependencies = ["addressable" "backports" "faraday" "multi_json" "net-http-persistent" "net-http-pipeline"];
@ -70,10 +70,10 @@
json = { json = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "01v6jjpvh3gnq6sgllpfqahlgxzj50ailwhj9b3cd20hi2dx0vxp"; sha256 = "0sx97bm9by389rbzv8r1f43h06xcz8vwi3h5jv074gvparql7lcx";
type = "gem"; type = "gem";
}; };
version = "2.1.0"; version = "2.2.0";
}; };
launchy = { launchy = {
dependencies = ["addressable"]; dependencies = ["addressable"];
@ -95,10 +95,10 @@
multipart-post = { multipart-post = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x"; sha256 = "1zgw9zlwh2a6i1yvhhc4a84ry1hv824d6g2iw2chs3k5aylpmpfj";
type = "gem"; type = "gem";
}; };
version = "2.0.0"; version = "2.1.1";
}; };
net-http-persistent = { net-http-persistent = {
source = { source = {
@ -129,10 +129,10 @@
dependencies = ["backports" "faraday" "faraday_middleware" "gh" "highline" "launchy" "pusher-client" "typhoeus"]; dependencies = ["backports" "faraday" "faraday_middleware" "gh" "highline" "launchy" "pusher-client" "typhoeus"];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0lw206zr2waic1kmm6x9qj91975g035wfsvbqs09z1cy8cvp63yw"; sha256 = "0ggdksipvnkl7s0g84l4wfpm9v70x9id8xvb9jmn3l0hhlk54dsk";
type = "gem"; type = "gem";
}; };
version = "1.8.9"; version = "1.8.10";
}; };
typhoeus = { typhoeus = {
dependencies = ["ethon"]; dependencies = ["ethon"];
@ -151,4 +151,4 @@
}; };
version = "1.2.8"; version = "1.2.8";
}; };
} }

View File

@ -2,12 +2,12 @@ GEM
remote: https://rubygems.org/ remote: https://rubygems.org/
specs: specs:
ast (2.4.0) ast (2.4.0)
jaro_winkler (1.5.2) jaro_winkler (1.5.3)
parallel (1.17.0) parallel (1.17.0)
parser (2.6.3.0) parser (2.6.3.0)
ast (~> 2.4.0) ast (~> 2.4.0)
rainbow (3.0.0) rainbow (3.0.0)
rubocop (0.71.0) rubocop (0.72.0)
jaro_winkler (~> 1.5.1) jaro_winkler (~> 1.5.1)
parallel (~> 1.10) parallel (~> 1.10)
parser (>= 2.6) parser (>= 2.6)

View File

@ -11,7 +11,7 @@ bundlerEnv rec {
description = "Automatic Ruby code style checking tool"; description = "Automatic Ruby code style checking tool";
homepage = "https://docs.rubocop.org/"; homepage = "https://docs.rubocop.org/";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ leemachin ]; maintainers = with maintainers; [ marsam leemachin ];
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }

View File

@ -14,10 +14,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1zz27z88qznix4r65gd9h56gl177snlfpgv10b0s69vi8qpl909l"; sha256 = "1930v0chc1q4fr7hn0y1j34mw0v032a8kh0by4d4sbz8ksy056kf";
type = "gem"; type = "gem";
}; };
version = "1.5.2"; version = "1.5.3";
}; };
parallel = { parallel = {
groups = ["default"]; groups = ["default"];
@ -56,10 +56,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0mjyrf1dmf58i40izs8rp2j4mqnyd4qpah9svmkwhs33ckxsjh6b"; sha256 = "192vmm9ah6b4wyabawaszpr8n3z93y3ymykp3m4pncrbwngmn3m2";
type = "gem"; type = "gem";
}; };
version = "0.71.0"; version = "0.72.0";
}; };
ruby-progressbar = { ruby-progressbar = {
groups = ["default"]; groups = ["default"];

View File

@ -0,0 +1,23 @@
{ lib, rustPlatform, fetchFromGitHub }:
rustPlatform.buildRustPackage rec {
pname = "cargo-inspect";
version = "0.10.1";
src = fetchFromGitHub {
owner = "mre";
repo = pname;
rev = version;
sha256 = "0rjy8jlar939fkl7wi8a6zxsrl4axz2nrhv745ny8x38ii4sfbzr";
};
cargoSha256 = "1pxvcf991w0jfxdissvwal5slrx7vpk3rqkzwk4hxfv0mjiqxsg5";
meta = with lib; {
description = "See what Rust is doing behind the curtains";
homepage = https://github.com/mre/cargo-inspect;
license = with licenses; [ mit asl20 ];
platforms = platforms.all;
maintainers = with maintainers; [ minijackson ];
};
}

View File

@ -5,16 +5,16 @@ let
inherit (darwin.apple_sdk.frameworks) Security; inherit (darwin.apple_sdk.frameworks) Security;
in rustPlatform.buildRustPackage rec { in rustPlatform.buildRustPackage rec {
name = "pyo3-pack-${version}"; name = "pyo3-pack-${version}";
version = "0.5.0"; version = "0.6.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "PyO3"; owner = "PyO3";
repo = "pyo3-pack"; repo = "pyo3-pack";
rev = "v${version}"; rev = "v${version}";
sha256 = "0577v8nqjbb7l7fqvac706bg9zrcp8fbh9ca1mkj44db12v02kgb"; sha256 = "0zk0jhr7lnl9z6c8pbk7si3wa8b1kqzj3wrslc1n5fjla7xx8fzn";
}; };
cargoSha256 = "1prwgkgvg11cbpx086irrafg59mfvnykadagcp3qgyry6d82blsv"; cargoSha256 = "13gycipxc17baxg8nvjzkw96i1pxgncx7qjcrm9aab7p9vi2vrih";
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];

View File

@ -5,12 +5,12 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "5.40"; version = "5.43";
name = "xscreensaver-${version}"; pname = "xscreensaver";
src = fetchurl { src = fetchurl {
url = "https://www.jwz.org/xscreensaver/${name}.tar.gz"; url = "https://www.jwz.org/${pname}/${pname}-${version}.tar.gz";
sha256 = "1q2sr7h6ps6d3hk8895g12rrcqiihjl7py1ly077ikv4866r181h"; sha256 = "1m43nfcpagv03zwlivpzp82qdv590s5c8vjjn4iirqjl6mzvdshp";
}; };
buildInputs = buildInputs =

View File

@ -61,12 +61,12 @@ let
ale = buildVimPluginFrom2Nix { ale = buildVimPluginFrom2Nix {
pname = "ale"; pname = "ale";
version = "2019-07-02"; version = "2019-07-06";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "w0rp"; owner = "w0rp";
repo = "ale"; repo = "ale";
rev = "a5240009ba5ff22daad95c306f7dec372d46bda0"; rev = "6c47d7fc352659cd2dc869a9a46a04a8492fc829";
sha256 = "1l588l3b2h2bcc15xyn3v6rbh8irnh9jzdx0515sp4pcch1gqgfj"; sha256 = "1xk69prw20d37zw6q83yiv31nw9hrlqprrs9yxrqrlh0zdgn7cn9";
}; };
}; };
@ -248,12 +248,12 @@ let
coc-nvim = buildVimPluginFrom2Nix { coc-nvim = buildVimPluginFrom2Nix {
pname = "coc-nvim"; pname = "coc-nvim";
version = "2019-07-05"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "neoclide"; owner = "neoclide";
repo = "coc.nvim"; repo = "coc.nvim";
rev = "709928f6fbbd2d0fb0b51ee89458b62da8220a4e"; rev = "8c7241d7e3f56bc2efda92c05e0148dcf7c41bc6";
sha256 = "04f8aj337r4347f06pyalbfpqp7isk7sbp9qlv32r28m6l6iw86q"; sha256 = "0agn16dj800sydqwjdr85m3d66hfbn8hh1azb2hsniwd5d1qkr6v";
}; };
}; };
@ -425,34 +425,34 @@ let
denite-git = buildVimPluginFrom2Nix { denite-git = buildVimPluginFrom2Nix {
pname = "denite-git"; pname = "denite-git";
version = "2019-04-29"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "chemzqm"; owner = "chemzqm";
repo = "denite-git"; repo = "denite-git";
rev = "b6a0c7d08a1477a1607ba8be3a33c1352f93d79d"; rev = "b3b3742f263475cc0e16c1c03845e46d0c0faa16";
sha256 = "001848nr3pdzv6z2c9a262n63gcln1dr98qamkr5c5khxc1da322"; sha256 = "15m7y4mzzysfhmmzwj7q6y8d2rcczn6fvicw77j7njssf9fmwc10";
}; };
}; };
denite-nvim = buildVimPluginFrom2Nix { denite-nvim = buildVimPluginFrom2Nix {
pname = "denite-nvim"; pname = "denite-nvim";
version = "2019-07-01"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Shougo"; owner = "Shougo";
repo = "denite.nvim"; repo = "denite.nvim";
rev = "90f8367cefbb443ba0d5b363c63be087a5937d43"; rev = "8a9f52235c32011c91ad3630bed88cdcc6b55b08";
sha256 = "164sxi42yyqbj2v4vklmphhjqfq54ci9n21hcl3hwbrfgrh5i67i"; sha256 = "0wvawl32w3zg04l513h7cby0ks4zzxli6m3yzyyv92ajnkmj4n0h";
}; };
}; };
deol-nvim = buildVimPluginFrom2Nix { deol-nvim = buildVimPluginFrom2Nix {
pname = "deol-nvim"; pname = "deol-nvim";
version = "2019-06-24"; version = "2019-07-07";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Shougo"; owner = "Shougo";
repo = "deol.nvim"; repo = "deol.nvim";
rev = "85f0e6dde132c670eda32eb98c6a6f3d7b31a984"; rev = "4879e34f353cc8c2ac8cb5c14e3efebc15c05ab0";
sha256 = "154cdczdwzwx24c8ggasll3yf86y1r4z5hb3rld42m2dpbnhcrns"; sha256 = "12r2770b78rm9xx0pb4qgfzlyjmhdji4q6iga2pflxik6rk0gw4c";
}; };
}; };
@ -549,12 +549,12 @@ let
deoplete-nvim = buildVimPluginFrom2Nix { deoplete-nvim = buildVimPluginFrom2Nix {
pname = "deoplete-nvim"; pname = "deoplete-nvim";
version = "2019-06-30"; version = "2019-07-06";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Shougo"; owner = "Shougo";
repo = "deoplete.nvim"; repo = "deoplete.nvim";
rev = "2ac0da55367db0b9d8920bb7bcbc051f9b07b90c"; rev = "fc55354e8521599ae509a8ed7c05438199933c8b";
sha256 = "05j2s6332p7gbpwg2hfimvvmk0qaah9danl5d8brq1w34bs79vjd"; sha256 = "0zk390jybshd10fzg5r2bfc7gj0n3cr28wdpbzri4lvddnj7x3wa";
}; };
}; };
@ -783,12 +783,12 @@ let
gist-vim = buildVimPluginFrom2Nix { gist-vim = buildVimPluginFrom2Nix {
pname = "gist-vim"; pname = "gist-vim";
version = "2018-11-09"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mattn"; owner = "mattn";
repo = "gist-vim"; repo = "gist-vim";
rev = "3abf2444bb6a7744a64b4a2c2b02d6761a7de072"; rev = "e485c6c24a62b378a2a4c8687e36e7f54ceca18c";
sha256 = "197j6bhyfggxka9mycyk3mr6sawf7rnaz74csk47d2qlkfs4zf0v"; sha256 = "1fkm7aada088l9f5rf6fk1valfanwzfrsfip9w4q9w2mqvd7n1kn";
}; };
}; };
@ -1002,6 +1002,17 @@ let
}; };
}; };
jq-vim = buildVimPluginFrom2Nix {
pname = "jq-vim";
version = "2019-05-21";
src = fetchFromGitHub {
owner = "vito-c";
repo = "jq.vim";
rev = "6e056fa297ce58d45500b0937b8214400e9a50fa";
sha256 = "0dfsym34xiza9221bdsr51jykcxmz8bnkzi846bqxxjxiw0p3yk1";
};
};
julia-vim = buildVimPluginFrom2Nix { julia-vim = buildVimPluginFrom2Nix {
pname = "julia-vim"; pname = "julia-vim";
version = "2019-06-26"; version = "2019-06-26";
@ -1059,12 +1070,12 @@ let
lh-vim-lib = buildVimPluginFrom2Nix { lh-vim-lib = buildVimPluginFrom2Nix {
pname = "lh-vim-lib"; pname = "lh-vim-lib";
version = "2019-07-03"; version = "2019-07-05";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "LucHermitte"; owner = "LucHermitte";
repo = "lh-vim-lib"; repo = "lh-vim-lib";
rev = "269722248fdff3787240e083702cb0dc9472472d"; rev = "a265823c00098cda2e2a3d29eb40d244a3b6103f";
sha256 = "0z0sgkb136fnb43z5hbksn3402sm8281q0vv4yqhla9aw4553yqd"; sha256 = "00i37ng5v3wabjmhlx7a0cdpn6k49dy99ar8bmh4c7r82894qf2j";
}; };
}; };
@ -1279,12 +1290,12 @@ let
neoformat = buildVimPluginFrom2Nix { neoformat = buildVimPluginFrom2Nix {
pname = "neoformat"; pname = "neoformat";
version = "2019-06-13"; version = "2019-07-05";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "sbdchd"; owner = "sbdchd";
repo = "neoformat"; repo = "neoformat";
rev = "b60a530de93a1131a320fa10a289c9ffee771a1e"; rev = "5be5c1e6eeea2a26f706a54c5b9bab8746763e89";
sha256 = "0f6drp06f0r6c5d777i5dh3kks1j73945ip8ng51v4803m7m2g3g"; sha256 = "1chi9qkg06jv79vp3y9c4y49qijrbsn62xjgkwjpvm7hiay4b6z3";
}; };
}; };
@ -1301,23 +1312,23 @@ let
neomake = buildVimPluginFrom2Nix { neomake = buildVimPluginFrom2Nix {
pname = "neomake"; pname = "neomake";
version = "2019-06-28"; version = "2019-07-07";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "neomake"; owner = "neomake";
repo = "neomake"; repo = "neomake";
rev = "43007dac3e4c761caee7a5d8c74172da2af08ea6"; rev = "3fe8bea59e6f19538968ea41ac33d6418071ffd6";
sha256 = "1bxz0czckmc2cw7kh8cd1rcg0sg2pj7vjdlgwd0bmqr6x9xarp0d"; sha256 = "0rnwzwk4vqvnp42854vxzxllyqap44p9wfppp89c1j0x2hi3ylih";
}; };
}; };
neomru-vim = buildVimPluginFrom2Nix { neomru-vim = buildVimPluginFrom2Nix {
pname = "neomru-vim"; pname = "neomru-vim";
version = "2019-06-30"; version = "2019-07-06";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Shougo"; owner = "Shougo";
repo = "neomru.vim"; repo = "neomru.vim";
rev = "53f9cd784b78839e865cabc43f6a7efacc4c8cad"; rev = "79e6c9d04b75d67a1494435a4fb25573373cb1dc";
sha256 = "05xss5546n1pinhh1bpp4gmsxjbmdlp08lpzxrrq4gkyqddxdkqd"; sha256 = "194cr8nkkqrz3f9l9ymxdbnwgbrafn1i6lhrqalskawq6kn7kb21";
}; };
}; };
@ -1400,12 +1411,12 @@ let
nerdtree = buildVimPluginFrom2Nix { nerdtree = buildVimPluginFrom2Nix {
pname = "nerdtree"; pname = "nerdtree";
version = "2019-07-04"; version = "2019-07-07";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "scrooloose"; owner = "scrooloose";
repo = "nerdtree"; repo = "nerdtree";
rev = "89a1a4355bd9572d0f5b3d23733c243c6e7b05c2"; rev = "2f0d48d632dc303095084b382cb665ae57ad2e63";
sha256 = "0khc6dzngc9f19rnqdq69biawjy7xfs17dnix2gz6j9z8jsx794x"; sha256 = "0zlfam5kvz3cyl40hk5g6bpmmwm62g6l73wf408q0v8k0zn87mb7";
}; };
}; };
@ -1521,12 +1532,12 @@ let
papercolor-theme = buildVimPluginFrom2Nix { papercolor-theme = buildVimPluginFrom2Nix {
pname = "papercolor-theme"; pname = "papercolor-theme";
version = "2019-06-19"; version = "2019-07-07";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "NLKNguyen"; owner = "NLKNguyen";
repo = "papercolor-theme"; repo = "papercolor-theme";
rev = "8e7343ce8f28d5177939e394043ce0250e6f9a6e"; rev = "20f3b25cdd772d4483eb8ced453f94f93b6126e1";
sha256 = "08d0y7xr72d42jgb0y3w2qxl6i7kv4alqaplzmiw8xkd0m3dxss8"; sha256 = "1yck7f48v9rz7wq2q2b372bv07qmpj562ncwfdiavsgy6wms3p4b";
}; };
}; };
@ -1873,12 +1884,12 @@ let
swift-vim = buildVimPluginFrom2Nix { swift-vim = buildVimPluginFrom2Nix {
pname = "swift-vim"; pname = "swift-vim";
version = "2018-09-12"; version = "2019-07-09";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "keith"; owner = "keith";
repo = "swift.vim"; repo = "swift.vim";
rev = "5e330f026d4184c917cc156410634551dbd9a944"; rev = "d3d66151598b5d6dda159524baa9c66b3d1bf5ad";
sha256 = "1gx2vg5w6r7k9070j03wz3bzjdkw3g01nkahd5jawk9z10ifswax"; sha256 = "0pq4nwdhnw3qzz3xaz9fpbf3p0l6vrmjkqj4lrfymafbmxc94j6w";
}; };
}; };
@ -2643,12 +2654,12 @@ let
vim-devicons = buildVimPluginFrom2Nix { vim-devicons = buildVimPluginFrom2Nix {
pname = "vim-devicons"; pname = "vim-devicons";
version = "2019-07-03"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ryanoasis"; owner = "ryanoasis";
repo = "vim-devicons"; repo = "vim-devicons";
rev = "69028519c368304a6bf95f629b924c2ea85c69db"; rev = "0c9e6faaf246767c850eb92f48c4bdc068cdf235";
sha256 = "0kndqqknl2c7rcd9ssfc7q0w84m6776gyszra52xhc1wlgdi0r77"; sha256 = "1kmdzf34clhvcjwxr47phvw835nfhm70swar5s6cf2pis1wllmjw";
}; };
}; };
@ -2676,12 +2687,12 @@ let
vim-dispatch = buildVimPluginFrom2Nix { vim-dispatch = buildVimPluginFrom2Nix {
pname = "vim-dispatch"; pname = "vim-dispatch";
version = "2019-06-30"; version = "2019-07-01";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tpope"; owner = "tpope";
repo = "vim-dispatch"; repo = "vim-dispatch";
rev = "a625661cd1d35b454c9b2a9452dbfec46c4d3e17"; rev = "5b58b6dc290ece1c37e806e46ee117f5722a535a";
sha256 = "1v7qjslkyrrpbb780j1450piv5jb02qbidfh0863g615hz2mbnni"; sha256 = "17lzf60lm7z4r5cmfdb5di1c1rabczsjq5i0qck4l6j3xlv449xj";
}; };
}; };
@ -2797,12 +2808,12 @@ let
vim-fireplace = buildVimPluginFrom2Nix { vim-fireplace = buildVimPluginFrom2Nix {
pname = "vim-fireplace"; pname = "vim-fireplace";
version = "2019-07-05"; version = "2019-07-07";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tpope"; owner = "tpope";
repo = "vim-fireplace"; repo = "vim-fireplace";
rev = "ab8ffc76e56d5a3f187c3eefd11dfa3306491fde"; rev = "7c7641d18a8c530b70363e19f3f258b597b42484";
sha256 = "1mwmja6y68sq8fsv2zy118mx3gy1cz8p9cigydnj1p7fxbn88km8"; sha256 = "0fpiv936qisadl87p9rim1y5qw0wwvl9clmy27rhy5bbspwr8pdr";
}; };
}; };
@ -2841,12 +2852,12 @@ let
vim-flutter = buildVimPluginFrom2Nix { vim-flutter = buildVimPluginFrom2Nix {
pname = "vim-flutter"; pname = "vim-flutter";
version = "2019-06-23"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "thosakwe"; owner = "thosakwe";
repo = "vim-flutter"; repo = "vim-flutter";
rev = "8d7a9158cca84c4ea2a5ebc066607652fab7a9e8"; rev = "7f12c91b9f3789ab3559eeed9ed8905afcca6dfb";
sha256 = "0kjr7nlqkkzlvh6p9j996bbcgd0frakla591y4ln12qwa7ys0gd1"; sha256 = "07hx5hdqw0scgviqn92xjx8zcfl4ils94cdsp9jh2h98jqhcic1p";
}; };
}; };
@ -2863,12 +2874,12 @@ let
vim-fugitive = buildVimPluginFrom2Nix { vim-fugitive = buildVimPluginFrom2Nix {
pname = "vim-fugitive"; pname = "vim-fugitive";
version = "2019-07-05"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tpope"; owner = "tpope";
repo = "vim-fugitive"; repo = "vim-fugitive";
rev = "137433c3c058e0a70f45697ad515e3a881877f95"; rev = "102b3a50e20d857b38e4c392b78be9a340669a70";
sha256 = "0aairxdj4ci2kpns9ff214348i0d24nr8nki6nwbxd88ivw4z09h"; sha256 = "0q7icsjycxw4l5awapkj8sig297f37hcyk5s4ns0ldrylh0xckl9";
}; };
}; };
@ -2927,6 +2938,17 @@ let
}; };
}; };
vim-glsl = buildVimPluginFrom2Nix {
pname = "vim-glsl";
version = "2017-10-15";
src = fetchFromGitHub {
owner = "tikhomirov";
repo = "vim-glsl";
rev = "697eca9784ffac39308e1fd45e0300582c3d060b";
sha256 = "0qj00wgshx0pm6w1p682kc6s4xnzshnwx0sr65b24g1m495ck4q4";
};
};
vim-go = buildVimPluginFrom2Nix { vim-go = buildVimPluginFrom2Nix {
pname = "vim-go"; pname = "vim-go";
version = "2019-07-04"; version = "2019-07-04";
@ -3160,12 +3182,12 @@ let
vim-javascript = buildVimPluginFrom2Nix { vim-javascript = buildVimPluginFrom2Nix {
pname = "vim-javascript"; pname = "vim-javascript";
version = "2019-06-24"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "pangloss"; owner = "pangloss";
repo = "vim-javascript"; repo = "vim-javascript";
rev = "8a599c5e84bb064e2345867332ecbcc252e3b04a"; rev = "7cc6baebaf0065fd8c31cc9216c87bfa543eb71a";
sha256 = "1hyn592812hav4n7g488ysmrqw0c2bjkwvfwkzz9xpwj1v25f2yl"; sha256 = "0d905n5v4c8vifp229lijrylq6ajlsmxkl1w603nzkappw8kky1s";
}; };
}; };
@ -3579,12 +3601,12 @@ let
vim-plug = buildVimPluginFrom2Nix { vim-plug = buildVimPluginFrom2Nix {
pname = "vim-plug"; pname = "vim-plug";
version = "2019-06-17"; version = "2019-07-09";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "junegunn"; owner = "junegunn";
repo = "vim-plug"; repo = "vim-plug";
rev = "f1ad2d864ab43c56bf86ce01be9971f62bc14f6c"; rev = "fddbcb8f1a37e216504b3d14859a0a992a81cd5d";
sha256 = "071vr96ckm1bwf6nfziv4fw4spz44d5g65fcx2b61fb36azwxggh"; sha256 = "1ijdmp081r9dpn4ryr6j36s56ahz3lnn9g72akby4hj6da1bj4mb";
}; };
}; };
@ -3865,12 +3887,12 @@ let
vim-snippets = buildVimPluginFrom2Nix { vim-snippets = buildVimPluginFrom2Nix {
pname = "vim-snippets"; pname = "vim-snippets";
version = "2019-06-02"; version = "2019-07-06";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "honza"; owner = "honza";
repo = "vim-snippets"; repo = "vim-snippets";
rev = "a11cf5b47fcb9de72b5c8694a4e2fe2dca8c0ae7"; rev = "c8e8b35e9a56aab5b1ef871a164b6e8d6ea79ad0";
sha256 = "12k2ybk4dpc13spy2pxxnlip5rfzdbb3yjhr37hsgxhhjw6hibrq"; sha256 = "0lb6kmg4ckrxhys0k9gss3hp60x0mik10sm0y5g8yf74a1vzysvf";
}; };
}; };
@ -4008,23 +4030,23 @@ let
vim-terraform = buildVimPluginFrom2Nix { vim-terraform = buildVimPluginFrom2Nix {
pname = "vim-terraform"; pname = "vim-terraform";
version = "2019-06-20"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "hashivim"; owner = "hashivim";
repo = "vim-terraform"; repo = "vim-terraform";
rev = "996917464cd6b6fd7f11905ac4d77314fcac5593"; rev = "6ee2aab70d8cd3d2405b3042141c94766ea461b0";
sha256 = "1bqqizqsn1nzqg02vis9v0rndkw24n3dkvrd799s04818rncm84m"; sha256 = "1zld21a0l94hg3qvpb6rzi8kvv9f86mn7pl95rjvs022vfprry05";
}; };
}; };
vim-test = buildVimPluginFrom2Nix { vim-test = buildVimPluginFrom2Nix {
pname = "vim-test"; pname = "vim-test";
version = "2019-06-25"; version = "2019-07-06";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "janko-m"; owner = "janko-m";
repo = "vim-test"; repo = "vim-test";
rev = "3507d31dccde27ea27e2858e00784d5be18565f4"; rev = "113c3bd92a18a0b20b0c63f8335139021afc8b0f";
sha256 = "0ap9bbk0qa3cz1rxykgrd5hv582av2n36x6s52awg90d4hx37inp"; sha256 = "0ijxnbgz5l3y5gdavh0z7173dn7930xyn2rzz0sbja9m53f8yik7";
}; };
}; };
@ -4283,34 +4305,34 @@ let
vimproc-vim = buildVimPluginFrom2Nix { vimproc-vim = buildVimPluginFrom2Nix {
pname = "vimproc-vim"; pname = "vimproc-vim";
version = "2019-03-10"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Shougo"; owner = "Shougo";
repo = "vimproc.vim"; repo = "vimproc.vim";
rev = "eb5b2b1248ccc8b1b9e84d7658508e38b964d17d"; rev = "0328ac6096ac57d647bed1ee59c8b616b3ba2858";
sha256 = "0h9na94cg396mldqdasdkv30z67zp5r36794dlhh9j5kblc00x0v"; sha256 = "1apg6zjpqagj8m7rai64awp2n4s77grjlyr56hdk09bh9678wg31";
}; };
}; };
vimshell-vim = buildVimPluginFrom2Nix { vimshell-vim = buildVimPluginFrom2Nix {
pname = "vimshell-vim"; pname = "vimshell-vim";
version = "2018-06-02"; version = "2019-07-07";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Shougo"; owner = "Shougo";
repo = "vimshell.vim"; repo = "vimshell.vim";
rev = "03bf7673a5098918a533000d67dca97546695237"; rev = "8aa928d4652286ad3106f6ef2cbbbf7eadec5a52";
sha256 = "1ckxjap9kz8skbjchg561sqyd5y5qwacg8mabmniy78qa7i3qdzi"; sha256 = "1qwccpsfjsap8lggq8k9cmvdzq1mgn1ss4bsdplk1pj7prlj9pxb";
}; };
}; };
vimtex = buildVimPluginFrom2Nix { vimtex = buildVimPluginFrom2Nix {
pname = "vimtex"; pname = "vimtex";
version = "2019-07-04"; version = "2019-07-07";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "lervag"; owner = "lervag";
repo = "vimtex"; repo = "vimtex";
rev = "e0522f353d7d1ee69a1c7d26c512fa8af1921f43"; rev = "bdc7ba470e477255ddb26c84c8934da58904c475";
sha256 = "0hqn9hmlim53s7gbaxzv3z7rg7lj5ayd42z5vqmkwsj4y2lmkzkb"; sha256 = "0hazv9xqjag6fgg7y34ilcnjd3pah259r1jazxwbkdxrzgc0pmhw";
}; };
}; };
@ -4371,12 +4393,23 @@ let
webapi-vim = buildVimPluginFrom2Nix { webapi-vim = buildVimPluginFrom2Nix {
pname = "webapi-vim"; pname = "webapi-vim";
version = "2018-03-14"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mattn"; owner = "mattn";
repo = "webapi-vim"; repo = "webapi-vim";
rev = "252250381a9509257bfb06b9f95441e41e3e23b5"; rev = "263e31b11948de7b20290b6ffc118e2c3223e2d2";
sha256 = "0g37d1i6rxsj6f31g9jy2bhr8ng3jwmnvqqcmw19vbql4v56zq6a"; sha256 = "08dd6qqvf24y5c49j2rirwfp78q6i5b7f6ng93gfkrx6adacin5d";
};
};
wmgraphviz-vim = buildVimPluginFrom2Nix {
pname = "wmgraphviz-vim";
version = "2018-04-26";
src = fetchFromGitHub {
owner = "wannesm";
repo = "wmgraphviz.vim";
rev = "f08ff5becd1e6e81d681ff2926f2cce29f63cb18";
sha256 = "12mb0lbkrzrxyawd9gg6igmsaylvsixcslim0lcgsrd551l9lq2l";
}; };
}; };
@ -4449,12 +4482,12 @@ let
youcompleteme = buildVimPluginFrom2Nix { youcompleteme = buildVimPluginFrom2Nix {
pname = "youcompleteme"; pname = "youcompleteme";
version = "2019-06-29"; version = "2019-07-05";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "valloric"; owner = "valloric";
repo = "youcompleteme"; repo = "youcompleteme";
rev = "d556a43c1af6a4e4075e875934e250f589df0dee"; rev = "04c3505129cd80b92f1b6177dca8aecc55cb0760";
sha256 = "05vl8gri43k8psjmhaybhm27ycm8hdgrdaqcy89sznpww5lm1nx8"; sha256 = "09ws8m6s7lzs2174xanrcz8jd6sfczisv3zb5czskizkgph6vkkj";
fetchSubmodules = true; fetchSubmodules = true;
}; };
}; };
@ -4494,12 +4527,12 @@ let
zig-vim = buildVimPluginFrom2Nix { zig-vim = buildVimPluginFrom2Nix {
pname = "zig-vim"; pname = "zig-vim";
version = "2019-07-03"; version = "2019-07-08";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "zig-lang"; owner = "zig-lang";
repo = "zig.vim"; repo = "zig.vim";
rev = "2cbecaea8bd2d804d8ff1d74013e402a64ecb786"; rev = "78c6336a9c28a1ae7e9699a65e7b46475e530978";
sha256 = "11ab4msfkl101340wdrn7am5rx3ll9b0r90f9mv9wxj531fizyvy"; sha256 = "009vjz75may02ahhh5v72nxaxpk4arghvisszsxk8dnqrc251avi";
}; };
}; };

View File

@ -111,10 +111,10 @@ self: super: {
coc-nvim = let coc-nvim = let
version = "0.0.71"; version = "0.0.72";
index_js = fetchzip { index_js = fetchzip {
url = "https://github.com/neoclide/coc.nvim/releases/download/v${version}/coc.tar.gz"; url = "https://github.com/neoclide/coc.nvim/releases/download/v${version}/coc.tar.gz";
sha256 = "1bhkyrmrpriizg3f76x4vp94f2bfwcf7a6cp3jvv7vj4zaqhsjzz"; sha256 = "128wlbnpz4gwpfnmzry5k52d58fyp9nccha314ndfnr9xgd6r52y";
}; };
in super.coc-nvim.overrideAttrs(old: { in super.coc-nvim.overrideAttrs(old: {
# you still need to enable the node js provider in your nvim config # you still need to enable the node js provider in your nvim config
@ -416,19 +416,19 @@ self: super: {
youcompleteme = super.youcompleteme.overrideAttrs(old: { youcompleteme = super.youcompleteme.overrideAttrs(old: {
buildPhase = '' buildPhase = ''
substituteInPlace plugin/youcompleteme.vim \ substituteInPlace plugin/youcompleteme.vim \
--replace "'ycm_path_to_python_interpreter', '''" \ --replace "'ycm_python_interpreter_path', '''" \
"'ycm_path_to_python_interpreter', '${python}/bin/python'" "'ycm_python_interpreter_path', '${python3}/bin/python'"
rm -r third_party/ycmd rm -r third_party/ycmd
ln -s ${ycmd}/lib/ycmd third_party ln -s ${ycmd}/lib/ycmd third_party
''; '';
meta = { meta = with stdenv.lib; {
description = "A code-completion engine for Vim"; description = "A code-completion engine for Vim";
homepage = https://github.com/Valloric/YouCompleteMe; homepage = "https://github.com/Valloric/YouCompleteMe";
license = stdenv.lib.licenses.gpl3; license = licenses.gpl3;
maintainers = with stdenv.lib.maintainers; [marcweber jagajaga]; maintainers = with maintainers; [ marcweber jagajaga ];
platforms = stdenv.lib.platforms.unix; platforms = platforms.unix;
}; };
}); });

View File

@ -44,8 +44,8 @@ CoatiSoftware/vim-sourcetrail
cocopon/iceberg.vim cocopon/iceberg.vim
ctjhoa/spacevim ctjhoa/spacevim
ctrlpvim/ctrlp.vim ctrlpvim/ctrlp.vim
dag/vim-fish
dag/vim2hs dag/vim2hs
dag/vim-fish
dannyob/quickfixstatus dannyob/quickfixstatus
dart-lang/dart-vim-plugin dart-lang/dart-vim-plugin
davidhalter/jedi-vim davidhalter/jedi-vim
@ -164,8 +164,8 @@ lepture/vim-jinja
lervag/vimtex lervag/vimtex
lfilho/cosco.vim lfilho/cosco.vim
LnL7/vim-nix LnL7/vim-nix
LucHermitte/lh-vim-lib
LucHermitte/lh-brackets LucHermitte/lh-brackets
LucHermitte/lh-vim-lib
ludovicchabant/vim-gutentags ludovicchabant/vim-gutentags
ludovicchabant/vim-lawrencium ludovicchabant/vim-lawrencium
lukaszkorecki/workflowish lukaszkorecki/workflowish
@ -231,9 +231,9 @@ ncm2/ncm2-ultisnips
neoclide/coc.nvim neoclide/coc.nvim
neoclide/vim-easygit neoclide/vim-easygit
neomake/neomake neomake/neomake
neovim/nvimdev.nvim
neovimhaskell/haskell-vim neovimhaskell/haskell-vim
neovimhaskell/nvim-hs.vim neovimhaskell/nvim-hs.vim
neovim/nvimdev.nvim
neutaaaaan/iosvkem neutaaaaan/iosvkem
nixprime/cpsm nixprime/cpsm
NLKNguyen/papercolor-theme NLKNguyen/papercolor-theme
@ -324,6 +324,7 @@ thinca/vim-scouter
thinca/vim-themis thinca/vim-themis
thinca/vim-visualstar thinca/vim-visualstar
thosakwe/vim-flutter thosakwe/vim-flutter
tikhomirov/vim-glsl
tomasr/molokai tomasr/molokai
tomlion/vim-solidity tomlion/vim-solidity
tommcdo/vim-lion tommcdo/vim-lion
@ -363,14 +364,15 @@ valloric/youcompleteme
vhda/verilog_systemverilog.vim vhda/verilog_systemverilog.vim
vim-airline/vim-airline vim-airline/vim-airline
vim-airline/vim-airline-themes vim-airline/vim-airline-themes
vimoutliner/vimoutliner
vim-pandoc/vim-pandoc vim-pandoc/vim-pandoc
vim-pandoc/vim-pandoc-after vim-pandoc/vim-pandoc-after
vim-pandoc/vim-pandoc-syntax vim-pandoc/vim-pandoc-syntax
vim-ruby/vim-ruby vim-ruby/vim-ruby
vim-scripts/a.vim
vim-scripts/align vim-scripts/align
vim-scripts/argtextobj.vim vim-scripts/argtextobj.vim
vim-scripts/autoload_cscope.vim vim-scripts/autoload_cscope.vim
vim-scripts/a.vim
vim-scripts/bats.vim vim-scripts/bats.vim
vim-scripts/changeColorScheme.vim vim-scripts/changeColorScheme.vim
vim-scripts/Colour-Sampler-Pack vim-scripts/Colour-Sampler-Pack
@ -389,11 +391,12 @@ vim-scripts/taglist.vim
vim-scripts/wombat256.vim vim-scripts/wombat256.vim
vim-scripts/YankRing.vim vim-scripts/YankRing.vim
vim-utils/vim-husk vim-utils/vim-husk
vimoutliner/vimoutliner
vimwiki/vimwiki vimwiki/vimwiki
vito-c/jq.vim
vmchale/dhall-vim vmchale/dhall-vim
w0rp/ale w0rp/ale
wakatime/vim-wakatime wakatime/vim-wakatime
wannesm/wmgraphviz.vim
wellle/targets.vim wellle/targets.vim
wellle/tmux-complete.vim wellle/tmux-complete.vim
will133/vim-dirdiff will133/vim-dirdiff

View File

@ -1,4 +1,7 @@
{ stdenv, fetchzip, vscode-utils, jq, mono, clang-tools, writeScript, runtimeShell { stdenv, vscode-utils
, fetchurl, unzip
, mono, writeScript, runtimeShell
, jq, clang-tools
, gdbUseFixed ? true, gdb # The gdb default setting will be fixed to specified. Use version from `PATH` otherwise. , gdbUseFixed ? true, gdb # The gdb default setting will be fixed to specified. Use version from `PATH` otherwise.
}: }:
@ -30,25 +33,37 @@ assert gdbUseFixed -> null != gdb;
let let
gdbDefaultsTo = if gdbUseFixed then "${gdb}/bin/gdb" else "gdb"; gdbDefaultsTo = if gdbUseFixed then "${gdb}/bin/gdb" else "gdb";
langComponentBinaries = stdenv.mkDerivation { langComponentBinaries = stdenv.mkDerivation rec {
name = "cpptools-language-component-binaries"; name = "cpptools-language-component-binaries";
src = fetchzip { src = fetchurl {
# Follow https://go.microsoft.com/fwlink/?linkid=2037608 # Follow https://go.microsoft.com/fwlink/?linkid=2037608
url = "https://download.visualstudio.microsoft.com/download/pr/97ed3eeb-b31e-421c-92dc-4f3a98af301e/069a1e6ab1b4b017853a7e9e08067744/bin_linux.zip"; url = "https://download.visualstudio.microsoft.com/download/pr/fd05d7fd-b771-4746-9c54-b5b30afcd82e/1f443716d6156a265bf50cb6e53fa999/bin_linux.zip";
sha256 = "19flm4vcrg89x0b20bd0g45apabzfqgvcpjddnmyk312jc242gmb"; sha256 = "198xnq709clibjmd8rrv0haniy2m3qvhn89hg9hpj6lvg9lsr7a4";
}; };
patchPhase = '' sourceRoot = name;
elfInterpreter="${stdenv.glibc.out}/lib/ld-linux-x86-64.so.2"
patchelf --set-interpreter "$elfInterpreter" ./Microsoft.VSCode.CPP.Extension.linux nativeBuildInputs = [ unzip ];
patchelf --set-interpreter "$elfInterpreter" ./Microsoft.VSCode.CPP.IntelliSense.Msvc.linux
chmod a+x ./Microsoft.VSCode.CPP.Extension.linux ./Microsoft.VSCode.CPP.IntelliSense.Msvc.linux unpackPhase = ''
runHook preUnpack
unzip -d $name $src || true
runHook postUnpack
''; '';
installPhase = '' installPhase = ''
runHook preInstall
mkdir -p "$out/bin" mkdir -p "$out/bin"
find . -mindepth 1 -maxdepth 1 | xargs cp -a -t "$out/bin" cp -a -t "$out/bin" ./bin/*
runHook postInstall
'';
postFixup = ''
elfInterpreter="$(cat $NIX_CC/nix-support/dynamic-linker)"
patchelf --set-interpreter "$elfInterpreter" $out/bin/Microsoft.VSCode.CPP.Extension.linux
patchelf --set-interpreter "$elfInterpreter" $out/bin/Microsoft.VSCode.CPP.IntelliSense.Msvc.linux
chmod a+x $out/bin/Microsoft.VSCode.CPP.Extension.linux $out/bin/Microsoft.VSCode.CPP.IntelliSense.Msvc.linux
''; '';
}; };
@ -68,8 +83,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
name = "cpptools"; name = "cpptools";
publisher = "ms-vscode"; publisher = "ms-vscode";
version = "0.23.1"; version = "0.24.0";
sha256 = "08kfzvyl8vgjmhqzpp7pxw0gd87jr5g7z15ag4cpcil4inq4c8k3"; sha256 = "0b0rwj3aadd4kf561zpzv95r96dqvhkn7db8d7rz3naaqydz0z8i";
}; };
buildInputs = [ buildInputs = [
@ -80,16 +95,12 @@ vscode-utils.buildVscodeMarketplaceExtension {
mv ./package.json ./package_ori.json mv ./package.json ./package_ori.json
# 1. Add activation events so that the extension is functional. This listing is empty when unpacking the extension but is filled at runtime. # 1. Add activation events so that the extension is functional. This listing is empty when unpacking the extension but is filled at runtime.
# 2. Patch `packages.json` so that nix's *gdb* is used as default value for `miDebuggerPath`. # 2. Patch `package.json` so that nix's *gdb* is used as default value for `miDebuggerPath`.
cat ./package_ori.json | \ cat ./package_ori.json | \
jq --slurpfile actEvts ${./package-activation-events.json} '(.activationEvents) = $actEvts[0]' | \ jq --slurpfile actEvts ${./package-activation-events.json} '(.activationEvents) = $actEvts[0]' | \
jq '(.contributes.debuggers[].configurationAttributes | .attach , .launch | .properties.miDebuggerPath | select(. != null) | select(.default == "/usr/bin/gdb") | .default) = "${gdbDefaultsTo}"' > \ jq '(.contributes.debuggers[].configurationAttributes | .attach , .launch | .properties.miDebuggerPath | select(. != null) | select(.default == "/usr/bin/gdb") | .default) = "${gdbDefaultsTo}"' > \
./package.json ./package.json
# Patch `packages.json` so that nix's *gdb* is used as default value for `miDebuggerPath`.
substituteInPlace "./package.json" \
--replace "\"default\": \"/usr/bin/gdb\"" "\"default\": \"${gdbDefaultsTo}\""
# Prevent download/install of extensions # Prevent download/install of extensions
touch "./install.lock" touch "./install.lock"

View File

@ -0,0 +1,18 @@
{ stdenv, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args:
with stdenv.lib;
buildLinux (args // rec {
version = "5.2";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg;
# branchVersion needs to be x.y
extraMeta.branch = concatStrings (intersperse "." (take 2 (splitString "." version)));
src = fetchurl {
url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
sha256 = "1ry11b5sc20jh7flnp94m20627jzl3l09rzmfjsk3a71fbv6dbal";
};
} // (args.argsOverride or {}))

View File

@ -18,12 +18,12 @@ let
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "jellyfin"; pname = "jellyfin";
version = "10.3.5"; version = "10.3.6";
# Impossible to build anything offline with dotnet # Impossible to build anything offline with dotnet
src = fetchurl { src = fetchurl {
url = "https://github.com/jellyfin/jellyfin/releases/download/v${version}/jellyfin_${version}_portable.tar.gz"; url = "https://github.com/jellyfin/jellyfin/releases/download/v${version}/jellyfin_${version}_portable.tar.gz";
sha256 = "12asyrj2ax699gaf8402xfx049n6x0v8j5sba229vw1s66c2m8j2"; sha256 = "1vkb952y4n2gxgm2grxmpx93mljzfqm1m9f13lbw7qdhxb80zy41";
}; };
buildInputs = [ buildInputs = [

View File

@ -2,7 +2,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "plv8"; pname = "plv8";
version = "2.3.11"; version = "2.3.12";
nativeBuildInputs = [ perl ]; nativeBuildInputs = [ perl ];
buildInputs = [ v8 postgresql ]; buildInputs = [ v8 postgresql ];
@ -11,26 +11,26 @@ stdenv.mkDerivation rec {
owner = "plv8"; owner = "plv8";
repo = "plv8"; repo = "plv8";
rev = "v${version}"; rev = "v${version}";
sha256 = "0bv2b8xxdqqhj6nwyc8kwhi5m5i7i1yl078sk3bnnc84b0mnza5x"; sha256 = "1yi1ibiibvd0x4z5dm698w32ljrj3yr4j25jm1zkgkwd4ii8y644";
}; };
makeFlags = [ "--makefile=Makefile.shared" ]; makefile = "Makefile.shared";
buildFlags = [ "all" ];
preConfigure = '' preConfigure = ''
patchShebangs ./generate_upgrade.sh patchShebangs ./generate_upgrade.sh
''; '';
buildPhase = "make -f Makefile.shared all";
installPhase = '' installPhase = ''
mkdir -p $out/bin mkdir -p $out/bin # For buildEnv to setup proper symlinks. See #22653
install -D plv8*.so -t $out/lib install -D plv8*.so -t $out/lib
install -D {plls,plcoffee,plv8}{--${version}.sql,.control} -t $out/share/postgresql/extension install -D {plls,plcoffee,plv8}{--${version}.sql,.control} -t $out/share/postgresql/extension
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "PL/v8 - A Procedural Language in JavaScript powered by V8"; description = "V8 Engine Javascript Procedural Language add-on for PostgreSQL";
homepage = https://pgxn.org/dist/plv8/; homepage = "https://plv8.github.io/";
maintainers = with maintainers; [ volth ]; maintainers = with maintainers; [ volth ];
platforms = platforms.linux; platforms = platforms.linux;
license = licenses.postgresql; license = licenses.postgresql;

View File

@ -89,6 +89,8 @@ in stdenv.mkDerivation rec {
patches = [ patches = [
./default-to-http-1dot1.patch ./default-to-http-1dot1.patch
# Explicitly link with dynamic linking library to fix build
./link-with-libdl.patch
]; ];
postPatch = '' postPatch = ''

View File

@ -0,0 +1,17 @@
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -20,10 +20,10 @@ add_executable(zms zms.cpp)
include_directories(libbcrypt/include/bcrypt)
include_directories(jwt-cpp/include/jwt-cpp)
-target_link_libraries(zmc zm ${ZM_EXTRA_LIBS} ${ZM_BIN_LIBS})
-target_link_libraries(zma zm ${ZM_EXTRA_LIBS} ${ZM_BIN_LIBS})
-target_link_libraries(zmu zm ${ZM_EXTRA_LIBS} ${ZM_BIN_LIBS})
-target_link_libraries(zms zm ${ZM_EXTRA_LIBS} ${ZM_BIN_LIBS})
+target_link_libraries(zmc zm ${ZM_EXTRA_LIBS} ${ZM_BIN_LIBS} ${CMAKE_DL_LIBS})
+target_link_libraries(zma zm ${ZM_EXTRA_LIBS} ${ZM_BIN_LIBS} ${CMAKE_DL_LIBS})
+target_link_libraries(zmu zm ${ZM_EXTRA_LIBS} ${ZM_BIN_LIBS} ${CMAKE_DL_LIBS})
+target_link_libraries(zms zm ${ZM_EXTRA_LIBS} ${ZM_BIN_LIBS} ${CMAKE_DL_LIBS})
# Generate man files for the binaries destined for the bin folder
FOREACH(CBINARY zma zmc zmu)

View File

@ -1,33 +1,32 @@
{ lib, buildGoPackage, fetchFromGitHub }: { lib, buildGoModule, fetchFromGitHub }:
buildGoPackage rec { buildGoModule rec {
pname = "eksctl"; pname = "eksctl";
version = "0.1.38"; version = "0.1.39";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "weaveworks"; owner = "weaveworks";
repo = "eksctl"; repo = "eksctl";
rev = version; rev = version;
sha256 = "1nhsy4d1a1vh7g2ibcxnzgxnldfyh51hiq4v4vy123487b6ndqd0"; sha256 = "11y2pb5jn64v89a9hwi25rakrnsvhyjyr8kdrjk81d6hhrfkz3g0";
}; };
goPackagePath = "github.com/weaveworks/eksctl"; modSha256 = "1lmkwx0r19c2wg9nm85k92nlxjzr8q917jf3f333yf3csfyiix2f";
subPackages = [ "cmd/eksctl" ]; subPackages = [ "cmd/eksctl" ];
buildFlags = buildFlags =
'' ''
-ldflags=-s
-ldflags=-w
-tags netgo -tags netgo
-tags release -tags release
''; '';
postInstall = postInstall =
'' ''
mkdir -p "$bin/share/"{bash-completion/completions,zsh/site-functions} mkdir -p "$out/share/"{bash-completion/completions,zsh/site-functions}
$bin/bin/eksctl completion bash > "$bin/share/bash-completion/completions/eksctl"
$bin/bin/eksctl completion zsh > "$bin/share/zsh/site-functions/_eksctl" $out/bin/eksctl completion bash > "$out/share/bash-completion/completions/eksctl"
$out/bin/eksctl completion zsh > "$out/share/zsh/site-functions/_eksctl"
''; '';
meta = with lib; { meta = with lib; {

View File

@ -0,0 +1,35 @@
{ stdenv, lib, fetchFromGitHub, git, awscli, python3 }:
python3.pkgs.buildPythonApplication rec {
pname = "iceshelf";
version = "unstable-2019-07-03";
format = "other";
src = fetchFromGitHub {
owner = "mrworf";
repo = pname;
rev = "26768dde3fc54fa412e523eb8f8552e866b4853b";
sha256 = "08rcbd14vn7312rmk2hyvdzvhibri31c4r5lzdrwb1n1y9q761qm";
};
propagatedBuildInputs = [
git
awscli
python3.pkgs.python-gnupg
];
installPhase = ''
mkdir -p $out/bin $out/share/doc/${pname} $out/${python3.sitePackages}
cp -v iceshelf iceshelf-restore $out/bin
cp -v iceshelf.sample.conf $out/share/doc/${pname}/
cp -rv modules $out/${python3.sitePackages}
'';
meta = with lib; {
description = "A simple tool to allow storage of signed, encrypted, incremental backups using Amazon's Glacier storage";
license = licenses.lgpl2;
homepage = "https://github.com/mrworf/iceshelf";
maintainers = with maintainers; [ mmahut ];
};
}

View File

@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
# This patch adds an option to pad filesystems (increasing size) in # This patch adds an option to pad filesystems (increasing size) in
# exchange for better chunking / binary diff calculation. # exchange for better chunking / binary diff calculation.
./squashfs-tools-4.3-4k-align.patch ./squashfs-tools-4.4-4k-align.patch
] ++ stdenv.lib.optional stdenv.isDarwin ./darwin.patch; ] ++ stdenv.lib.optional stdenv.isDarwin ./darwin.patch;
buildInputs = [ zlib xz zstd ] buildInputs = [ zlib xz zstd ]

View File

@ -16,24 +16,20 @@ increased_size = (number_of_unfragmented_files_in_image + number of fragments) *
The 4k alignment can be enabled by flag '-4k-align' The 4k alignment can be enabled by flag '-4k-align'
--- ---
squashfs-tools/mksquashfs.c | 16 ++++++++++++++++ diff -u a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c
1 file changed, 16 insertions(+) --- a/squashfs-tools/mksquashfs.c 2019-07-06 15:50:22.214873176 +0000
+++ b/squashfs-tools/mksquashfs.c 2019-07-06 15:51:22.244802582 +0000
diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c @@ -100,7 +100,9 @@
index 8b1376f..683973d 100644
--- a/squashfs-tools/mksquashfs.c
+++ b/squashfs-tools/mksquashfs.c
@@ -99,6 +99,8 @@ int old_exclude = TRUE;
int use_regex = FALSE; int use_regex = FALSE;
int nopad = FALSE; int nopad = FALSE;
int exit_on_error = FALSE; int exit_on_error = FALSE;
static off_t squashfs_start_offset = 0;
+int do_4k_align = FALSE; +int do_4k_align = FALSE;
static off_t squashfs_start_offset = 0;
+#define ALIGN_UP(bytes, size) (bytes = (bytes + size - 1) & ~(size - 1)) +#define ALIGN_UP(bytes, size) (bytes = (bytes + size - 1) & ~(size - 1))
long long global_uid = -1, global_gid = -1; long long global_uid = -1, global_gid = -1;
@@ -1513,6 +1515,9 @@ void unlock_fragments() @@ -1495,6 +1497,9 @@
* queue at this time. * queue at this time.
*/ */
while(!queue_empty(locked_fragment)) { while(!queue_empty(locked_fragment)) {
@ -41,9 +37,9 @@ index 8b1376f..683973d 100644
+ if(do_4k_align) + if(do_4k_align)
+ ALIGN_UP(bytes, 4096); + ALIGN_UP(bytes, 4096);
write_buffer = queue_get(locked_fragment); write_buffer = queue_get(locked_fragment);
frg = write_buffer->block; frg = write_buffer->block;
size = SQUASHFS_COMPRESSED_SIZE_BLOCK(fragment_table[frg].size); size = SQUASHFS_COMPRESSED_SIZE_BLOCK(fragment_table[frg].size);
@@ -2420,6 +2420,9 @@ @@ -2414,6 +2419,9 @@
compressed_size = SQUASHFS_COMPRESSED_SIZE_BLOCK(c_byte); compressed_size = SQUASHFS_COMPRESSED_SIZE_BLOCK(c_byte);
write_buffer->size = compressed_size; write_buffer->size = compressed_size;
if(fragments_locked == FALSE) { if(fragments_locked == FALSE) {
@ -53,18 +49,18 @@ index 8b1376f..683973d 100644
fragment_table[file_buffer->block].size = c_byte; fragment_table[file_buffer->block].size = c_byte;
fragment_table[file_buffer->block].start_block = bytes; fragment_table[file_buffer->block].start_block = bytes;
write_buffer->block = bytes; write_buffer->block = bytes;
@@ -2761,6 +2769,10 @@ int write_file_blocks(squashfs_inode *inode, struct dir_ent *dir_ent, @@ -2728,6 +2736,10 @@
long long sparse = 0; long long sparse = 0;
struct file_buffer *fragment_buffer = NULL; struct file_buffer *fragment_buffer = NULL;
+ // 4k align the start of each file. + // 4k align the start of each file.
+ if(do_4k_align) + if(do_4k_align)
+ ALIGN_UP(bytes, 4096); + ALIGN_UP(bytes, 4096);
+ +
if(pre_duplicate(read_size)) if(pre_duplicate(read_size))
return write_file_blocks_dup(inode, dir_ent, read_buffer, dup); return write_file_blocks_dup(inode, dir_ent, read_buffer, dup);
@@ -4692,6 +4704,7 @@ void write_filesystem_tables(struct squashfs_super_block *sBlk, int nopad) @@ -4808,6 +4820,7 @@
"compressed", no_fragments ? "no" : noF ? "uncompressed" : "compressed", no_fragments ? "no" : noF ? "uncompressed" :
"compressed", no_xattrs ? "no" : noX ? "uncompressed" : "compressed", no_xattrs ? "no" : noX ? "uncompressed" :
"compressed", noI || noId ? "uncompressed" : "compressed"); "compressed", noI || noId ? "uncompressed" : "compressed");
@ -72,7 +68,7 @@ index 8b1376f..683973d 100644
printf("\tduplicates are %sremoved\n", duplicate_checking ? "" : printf("\tduplicates are %sremoved\n", duplicate_checking ? "" :
"not "); "not ");
printf("Filesystem size %.2f Kbytes (%.2f Mbytes)\n", bytes / 1024.0, printf("Filesystem size %.2f Kbytes (%.2f Mbytes)\n", bytes / 1024.0,
@@ -5346,6 +5359,8 @@ print_compressor_options: @@ -5570,6 +5583,8 @@
root_name = argv[i]; root_name = argv[i];
} else if(strcmp(argv[i], "-version") == 0) { } else if(strcmp(argv[i], "-version") == 0) {
VERSION(); VERSION();
@ -81,7 +77,7 @@ index 8b1376f..683973d 100644
} else { } else {
ERROR("%s: invalid option\n\n", argv[0]); ERROR("%s: invalid option\n\n", argv[0]);
printOptions: printOptions:
@@ -5387,6 +5402,7 @@ printOptions: @@ -5613,6 +5628,7 @@
ERROR("\t\t\tdirectory containing that directory, " ERROR("\t\t\tdirectory containing that directory, "
"rather than the\n"); "rather than the\n");
ERROR("\t\t\tcontents of the directory\n"); ERROR("\t\t\tcontents of the directory\n");
@ -89,5 +85,3 @@ index 8b1376f..683973d 100644
ERROR("\nFilesystem filter options:\n"); ERROR("\nFilesystem filter options:\n");
ERROR("-p <pseudo-definition>\tAdd pseudo file " ERROR("-p <pseudo-definition>\tAdd pseudo file "
"definition\n"); "definition\n");
--
2.14.1.480.gb18f417b89-goog (previously; hand-patched by charles-dyfis-net)

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "flashrom-${version}"; name = "flashrom-${version}";
version = "1.0.1"; version = "1.1";
src = fetchurl { src = fetchurl {
url = "https://download.flashrom.org/releases/flashrom-v${version}.tar.bz2"; url = "https://download.flashrom.org/releases/flashrom-v${version}.tar.bz2";
sha256 = "0i6yrrl69hrqmwd7azj7x3j46m0qpvzmk3b5basym7mnlpfzhyfm"; sha256 = "06afq680n9p34hi3vrkn12vd1pfyq2062db9qqbi4hi21k3skbdf";
}; };
# Newer versions of libusb deprecate some API flashrom uses. # Newer versions of libusb deprecate some API flashrom uses.

View File

@ -0,0 +1,31 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "marlin-calc";
version = "2019-06-04";
src = fetchFromGitHub {
owner = "eyal0";
repo = "Marlin";
rev = "4120d1c72d6c32e9c5cc745c05d20963ba4bbca3";
sha256 = "06aly7s4k1r31njm43sbxq9a0127sw43pnaddh92a3cc39rbj2va";
};
buildPhase = ''
cd Marlin/src
c++ module/planner.cpp module/calc.cpp feature/fwretract.cpp \
-O2 -Wall -std=gnu++11 -o marlin-calc
'';
installPhase = ''
install -Dm0755 {,$out/bin/}marlin-calc
'';
meta = with stdenv.lib; {
homepage = "https://github.com/eyal0/Marlin";
description = "Marlin 3D printer timing simulator";
license = licenses.gpl3;
maintainers = with maintainers; [ gebner ];
platforms = platforms.unix;
};
}

View File

@ -1,14 +1,23 @@
{ stdenv, fetchzip, openresolv ? null, libmnl ? null, procps ? null, iproute ? null, makeWrapper ? null, wireguard-go ? null }: {
stdenv, fetchzip,
iproute ? null,
libmnl ? null,
makeWrapper ? null,
openresolv ? null,
procps ? null,
wireguard-go ? null,
}:
with stdenv.lib; with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "wireguard-tools-${version}"; pname = "wireguard-tools";
version = "0.0.20190601"; version = "0.0.20190702";
src = fetchzip { src = fetchzip {
url = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${version}.tar.xz"; url = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${version}.tar.xz";
sha256 = "0glcshf4dk2kfdkqc0x6ds45kpw6amsi8p2m81bfpmgnaglcbp7c"; sha256 = "1xl4hzqrny3855s7h1k24py81gdjyfv0mhv6y528f6p0h38r89s3";
}; };
sourceRoot = "source/src/tools"; sourceRoot = "source/src/tools";
@ -39,10 +48,10 @@ stdenv.mkDerivation rec {
passthru.updateScript = ./update.sh; passthru.updateScript = ./update.sh;
meta = with stdenv.lib; { meta = {
description = "Tools for the WireGuard secure network tunnel"; description = "Tools for the WireGuard secure network tunnel";
downloadPage = https://git.zx2c4.com/WireGuard/refs/; downloadPage = "https://git.zx2c4.com/WireGuard/refs/";
homepage = https://www.wireguard.com/; homepage = "https://www.wireguard.com/";
license = licenses.gpl2; license = licenses.gpl2;
maintainers = with maintainers; [ elseym ericsagnes mic92 zx2c4 ]; maintainers = with maintainers; [ elseym ericsagnes mic92 zx2c4 ];
platforms = platforms.unix; platforms = platforms.unix;

View File

@ -5,6 +5,7 @@
, makeWrapper , makeWrapper
, buildFHSUserEnv , buildFHSUserEnv
, libselinux , libselinux
, libarchive
, xorg , xorg
# Conda installs its packages and environments under this directory # Conda installs its packages and environments under this directory
, installationPath ? "~/.conda" , installationPath ? "~/.conda"
@ -59,6 +60,7 @@ in
# Some other required environment variables # Some other required environment variables
export FONTCONFIG_FILE=/etc/fonts/fonts.conf export FONTCONFIG_FILE=/etc/fonts/fonts.conf
export QTCOMPOSE=${xorg.libX11}/share/X11/locale export QTCOMPOSE=${xorg.libX11}/share/X11/locale
export LIBARCHIVE=${libarchive.lib}/lib/libarchive.so
''; '';
meta = { meta = {

View File

@ -1,28 +0,0 @@
{ stdenv, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
name = "kbfs-${version}";
version = "2.11.0";
goPackagePath = "github.com/keybase/kbfs";
subPackages = [ "kbfsfuse" "kbfsgit/git-remote-keybase" ];
dontRenameImports = true;
src = fetchFromGitHub {
owner = "keybase";
repo = "kbfs";
rev = "v${version}";
sha256 = "1qlns7vpyj3ivm7d3vvlmx3iksl7hpcg87yh30f3n64c8jk0xc83";
};
buildFlags = [ "-tags production" ];
meta = with stdenv.lib; {
homepage = https://www.keybase.io;
description = "The Keybase FS FUSE driver";
platforms = platforms.unix;
maintainers = with maintainers; [ rvolosatovs bennofs np ];
license = licenses.bsd3;
};
}

View File

@ -0,0 +1,22 @@
{ stdenv, buildGoPackage, fetchFromGitHub, keybase }:
buildGoPackage rec {
pname = "kbfs";
inherit (keybase) src version;
goPackagePath = "github.com/keybase/client";
subPackages = [ "go/kbfs/kbfsfuse" "go/kbfs/kbfsgit/git-remote-keybase" ];
dontRenameImports = true;
buildFlags = [ "-tags production" ];
meta = with stdenv.lib; {
homepage = "https://keybase.io/docs/kbfs";
description = "The Keybase filesystem";
platforms = platforms.unix;
maintainers = with maintainers; [ rvolosatovs bennofs np ];
license = licenses.bsd3;
};
}

View File

@ -179,6 +179,8 @@ in
dockerTools = callPackage ../build-support/docker { }; dockerTools = callPackage ../build-support/docker { };
snapTools = callPackage ../build-support/snap { };
nix-prefetch-docker = callPackage ../build-support/docker/nix-prefetch-docker.nix { }; nix-prefetch-docker = callPackage ../build-support/docker/nix-prefetch-docker.nix { };
docker-compose = python3Packages.callPackage ../applications/virtualization/docker-compose {}; docker-compose = python3Packages.callPackage ../applications/virtualization/docker-compose {};
@ -1697,6 +1699,8 @@ in
lynis = callPackage ../tools/security/lynis { }; lynis = callPackage ../tools/security/lynis { };
marlin-calc = callPackage ../tools/misc/marlin-calc {};
mathics = pythonPackages.mathics; mathics = pythonPackages.mathics;
masscan = callPackage ../tools/security/masscan { masscan = callPackage ../tools/security/masscan {
@ -3724,6 +3728,8 @@ in
icecast = callPackage ../servers/icecast { }; icecast = callPackage ../servers/icecast { };
iceshelf = callPackage ../tools/backup/iceshelf { };
darkice = callPackage ../tools/audio/darkice { }; darkice = callPackage ../tools/audio/darkice { };
deco = callPackage ../applications/misc/deco { }; deco = callPackage ../applications/misc/deco { };
@ -3990,7 +3996,7 @@ in
inherit (darwin.apple_sdk.frameworks) AVFoundation AudioToolbox ImageIO CoreMedia Foundation CoreGraphics MediaToolbox; inherit (darwin.apple_sdk.frameworks) AVFoundation AudioToolbox ImageIO CoreMedia Foundation CoreGraphics MediaToolbox;
}; };
kbfs = callPackage ../tools/security/kbfs { }; kbfs = callPackage ../tools/security/keybase/kbfs.nix { };
keybase-gui = callPackage ../tools/security/keybase/gui.nix { }; keybase-gui = callPackage ../tools/security/keybase/gui.nix { };
@ -8063,6 +8069,7 @@ in
cargo-bloat = callPackage ../development/tools/rust/cargo-bloat { }; cargo-bloat = callPackage ../development/tools/rust/cargo-bloat { };
cargo-expand = callPackage ../development/tools/rust/cargo-expand { }; cargo-expand = callPackage ../development/tools/rust/cargo-expand { };
cargo-fuzz = callPackage ../development/tools/rust/cargo-fuzz { }; cargo-fuzz = callPackage ../development/tools/rust/cargo-fuzz { };
cargo-inspect = callPackage ../development/tools/rust/cargo-inspect { };
cargo-make = callPackage ../development/tools/rust/cargo-make { cargo-make = callPackage ../development/tools/rust/cargo-make {
inherit (darwin.apple_sdk.frameworks) Security; inherit (darwin.apple_sdk.frameworks) Security;
}; };
@ -8530,6 +8537,7 @@ in
python35Full = python35.override{x11Support=true;}; python35Full = python35.override{x11Support=true;};
python36Full = python36.override{x11Support=true;}; python36Full = python36.override{x11Support=true;};
python37Full = python37.override{x11Support=true;}; python37Full = python37.override{x11Support=true;};
python38Full = python38.override{x11Support=true;};
# pythonPackages further below, but assigned here because they need to be in sync # pythonPackages further below, but assigned here because they need to be in sync
pythonPackages = python.pkgs; pythonPackages = python.pkgs;
@ -8537,13 +8545,14 @@ in
python3Packages = python3.pkgs; python3Packages = python3.pkgs;
pythonInterpreters = callPackage ./../development/interpreters/python {}; pythonInterpreters = callPackage ./../development/interpreters/python {};
inherit (pythonInterpreters) python27 python35 python36 python37 pypy27 pypy35; inherit (pythonInterpreters) python27 python35 python36 python37 python38 pypy27 pypy35;
# Python package sets. # Python package sets.
python27Packages = lib.hiPrioSet (recurseIntoAttrs python27.pkgs); python27Packages = lib.hiPrioSet (recurseIntoAttrs python27.pkgs);
python35Packages = python35.pkgs; python35Packages = python35.pkgs;
python36Packages = python36.pkgs; python36Packages = python36.pkgs;
python37Packages = recurseIntoAttrs python37.pkgs; python37Packages = recurseIntoAttrs python37.pkgs;
python38Packages = python38.pkgs;
pypyPackages = pypy.pkgs; pypyPackages = pypy.pkgs;
pypy2Packages = pypy2.pkgs; pypy2Packages = pypy2.pkgs;
pypy27Packages = pypy27.pkgs; pypy27Packages = pypy27.pkgs;
@ -9854,7 +9863,7 @@ in
ycmd = callPackage ../development/tools/misc/ycmd { ycmd = callPackage ../development/tools/misc/ycmd {
inherit (darwin.apple_sdk.frameworks) Cocoa; inherit (darwin.apple_sdk.frameworks) Cocoa;
python = python2; python = python3;
}; };
yodl = callPackage ../development/tools/misc/yodl { }; yodl = callPackage ../development/tools/misc/yodl { };
@ -15353,6 +15362,14 @@ in
]; ];
}; };
linux_5_2 = callPackage ../os-specific/linux/kernel/linux-5.2.nix {
kernelPatches =
[ kernelPatches.bridge_stp_helper
kernelPatches.modinst_arg_list_too_long
kernelPatches.export_kernel_fpu_functions
];
};
linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix { linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix {
kernelPatches = [ kernelPatches = [
kernelPatches.bridge_stp_helper kernelPatches.bridge_stp_helper
@ -15544,7 +15561,7 @@ in
linux = linuxPackages.kernel; linux = linuxPackages.kernel;
# Update this when adding the newest kernel major version! # Update this when adding the newest kernel major version!
linuxPackages_latest = linuxPackages_5_1; linuxPackages_latest = linuxPackages_5_2;
linux_latest = linuxPackages_latest.kernel; linux_latest = linuxPackages_latest.kernel;
# Build the kernel modules for the some of the kernels. # Build the kernel modules for the some of the kernels.
@ -15555,6 +15572,7 @@ in
linuxPackages_4_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_14); linuxPackages_4_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_14);
linuxPackages_4_19 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_19); linuxPackages_4_19 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_19);
linuxPackages_5_1 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_1); linuxPackages_5_1 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_1);
linuxPackages_5_2 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_2);
# When adding to this list: # When adding to this list:
# - Update linuxPackages_latest to the latest version # - Update linuxPackages_latest to the latest version
@ -17415,6 +17433,8 @@ in
dragonfly-reverb = callPackage ../applications/audio/dragonfly-reverb { }; dragonfly-reverb = callPackage ../applications/audio/dragonfly-reverb { };
drawio = callPackage ../applications/graphics/drawio {};
drawpile = libsForQt5.callPackage ../applications/graphics/drawpile { }; drawpile = libsForQt5.callPackage ../applications/graphics/drawpile { };
drawpile-server-headless = libsForQt5.callPackage ../applications/graphics/drawpile { drawpile-server-headless = libsForQt5.callPackage ../applications/graphics/drawpile {
buildClient = false; buildClient = false;
@ -19308,6 +19328,17 @@ in
polybar = callPackage ../applications/misc/polybar { }; polybar = callPackage ../applications/misc/polybar { };
polybarFull = callPackage ../applications/misc/polybar {
alsaSupport = true;
githubSupport = true;
mpdSupport = true;
pulseSupport = true;
iwSupport = true;
nlSupport = true;
i3Support = true;
i3GapsSupport = true;
};
ptex = callPackage ../development/libraries/ptex {}; ptex = callPackage ../development/libraries/ptex {};
qtcurve = libsForQt5.callPackage ../misc/themes/qtcurve {}; qtcurve = libsForQt5.callPackage ../misc/themes/qtcurve {};

Some files were not shown because too many files have changed in this diff Show More