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/shell.xml" />
<xi:include href="functions/dockertools.xml" />
<xi:include href="functions/snaptools.xml" />
<xi:include href="functions/appimagetools.xml" />
<xi:include href="functions/prefer-remote-fetch.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";
name = "Matthew Pickering";
};
mpoquet = {
email = "millian.poquet@gmail.com";
github = "mpoquet";
name = "Millian Poquet";
};
mpscholten = {
email = "marc@mpscholten.de";
github = "mpscholten";
@ -3482,6 +3487,11 @@
github = "mrkkrp";
name = "Mark Karpov";
};
mrmebelman = {
email = "burzakovskij@protonmail.com";
github = "MrMebelMan";
name = "Vladyslav Burzakovskyy";
};
mrVanDalo = {
email = "contact@ingolf-wagner.de";
github = "mrVanDalo";

View File

@ -81,45 +81,45 @@
</listitem>
<listitem>
<para>
The options <option>services.prometheus.alertmanager.user</option> and
<option>services.prometheus.alertmanager.group</option> have been removed
because the alertmanager service is now using systemd's <link
xlink:href="http://0pointer.net/blog/dynamic-users-with-systemd.html">
DynamicUser mechanism</link> which obviates these options.
The options <option>services.prometheus.alertmanager.user</option> and
<option>services.prometheus.alertmanager.group</option> have been removed
because the alertmanager service is now using systemd's <link
xlink:href="http://0pointer.net/blog/dynamic-users-with-systemd.html">
DynamicUser mechanism</link> which obviates these options.
</para>
</listitem>
<listitem>
<para>
The NetworkManager systemd unit was renamed back from network-manager.service to
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 NetworkManager systemd unit was renamed back from network-manager.service to
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.
</para>
</listitem>
<listitem>
<para>
The <option>services.nzbget.configFile</option> and <option>services.nzbget.openFirewall</option>
options were removed as they are managed internally by the nzbget. The
<option>services.nzbget.dataDir</option> option hadn't actually been used by
the module for some time and so was removed as cleanup.
The <option>services.nzbget.configFile</option> and <option>services.nzbget.openFirewall</option>
options were removed as they are managed internally by the nzbget. The
<option>services.nzbget.dataDir</option> option hadn't actually been used by
the module for some time and so was removed as cleanup.
</para>
</listitem>
<listitem>
<para>
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.
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.
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.
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.
</para>
</listitem>
<listitem>
<para>
The <option>services.emby.enable</option> module has been removed, see
<option>services.jellyfin.enable</option> instead for a free software fork of Emby.
The <option>services.emby.enable</option> module has been removed, see
<option>services.jellyfin.enable</option> instead for a free software fork of Emby.
See the Jellyfin documentation:
<link xlink:href="https://jellyfin.readthedocs.io/en/latest/administrator-docs/migrate-from-emby/">
Migrating from Emby to Jellyfin
</link>
See the Jellyfin documentation:
<link xlink:href="https://jellyfin.readthedocs.io/en/latest/administrator-docs/migrate-from-emby/">
Migrating from Emby to Jellyfin
</link>
</para>
</listitem>
<listitem>
@ -136,50 +136,50 @@
</listitem>
<listitem>
<para>
Several of the apache subservices have been replaced with full NixOS
modules including LimeSurvey and WordPress.
These modules can be enabled using the <option>services.limesurvey.enable</option>
and <option>services.wordpress.enable</option> options.
Several of the apache subservices have been replaced with full NixOS
modules including LimeSurvey and WordPress.
These modules can be enabled using the <option>services.limesurvey.enable</option>
and <option>services.wordpress.enable</option> options.
</para>
</listitem>
<listitem>
<para>
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>
(capital <literal>L</literal>). This follows
<link xlink:href="https://github.com/systemd/systemd/commit/9cb8c5593443d24c19e40bfd4fc06d672f8c554c">
upstreams renaming
</link> of the setting.
</para>
<para>
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>
(capital <literal>L</literal>). This follows
<link xlink:href="https://github.com/systemd/systemd/commit/9cb8c5593443d24c19e40bfd4fc06d672f8c554c">
upstreams renaming
</link> of the setting.
</para>
</listitem>
<listitem>
<para>
As of this release the NixOps feature <literal>autoLuks</literal> is deprecated. It no longer works
with our systemd version without manual intervention.
As of this release the NixOps feature <literal>autoLuks</literal> is deprecated. It no longer works
with our systemd version without manual intervention.
</para>
<para>
Whenever the usage of the module is detected the evaluation will fail with a message
explaining why and how to deal with the situation.
Whenever the usage of the module is detected the evaluation will fail with a message
explaining why and how to deal with the situation.
</para>
<para>
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.
If you plan on using the feature please note that it might break with subsequent updates.
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.
If you plan on using the feature please note that it might break with subsequent updates.
</para>
<para>
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
state where it doesn't boot anymore.
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
state where it doesn't boot anymore.
</para>
<para>
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>.
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>.
</para>
</listitem>
<listitem>
</listitem>
<listitem>
<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" />,
<xref linkend="opt-programs.zsh.loginShellInit" /> and <xref linkend="opt-programs.zsh.promptInit" /> may break if it relies on those options being set.
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.
</para>
</listitem>
</itemizedlist>
@ -236,36 +236,36 @@
</listitem>
<listitem>
<para>
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>.
</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.
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>.
</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>.
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>
</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>
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>/var/lib/systemd/timesync</literal>), if required.
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>/var/lib/systemd/timesync</literal>), if required.
</para>
</listitem>
<listitem>
</listitem>
<listitem>
<para>
The package <literal>avahi</literal> is now built to look up service
definitions from <literal>/etc/avahi/services</literal> instead of its
@ -275,32 +275,36 @@
in the aforementioned directory. See <citerefentry>
<refentrytitle>avahi.service</refentrytitle><manvolnum>5</manvolnum>
</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>
</listitem>
<listitem>
<para>
The <literal>consul</literal> package was upgraded past version <literal>1.5</literal>,
so its deprecated legacy UI is no longer available.
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>
</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>.
The <literal>consul</literal> package was upgraded past version <literal>1.5</literal>,
so its deprecated legacy UI is no longer available.
</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>
</listitem>
<listitem>

View File

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

View File

@ -1,9 +1,24 @@
{ config, lib, ... }:
{
options.hardware.enableKSM = lib.mkEnableOption "Kernel Same-Page Merging";
with lib;
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 = {
description = "Enable Kernel Same-Page Merging";
wantedBy = [ "multi-user.target" ];
@ -11,6 +26,7 @@
script = ''
if [ -e /sys/kernel/mm/ksm ]; then
echo 1 > /sys/kernel/mm/ksm/run
${optionalString (cfg.sleep != null) ''echo ${toString cfg.sleep} > /sys/kernel/mm/ksm/sleep_millisecs''}
fi
'';
};

View File

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

View File

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

View File

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

View File

@ -34,6 +34,13 @@ in
default = "jackett";
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";
User = cfg.user;
Group = cfg.group;
ExecStart = "${pkgs.jackett}/bin/Jackett --NoUpdates --DataFolder '${cfg.dataDir}'";
ExecStart = "${cfg.package}/bin/Jackett --NoUpdates --DataFolder '${cfg.dataDir}'";
Restart = "on-failure";
};
};

View File

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

View File

@ -262,7 +262,7 @@ in {
fastcgi_pass ${fcgi.socketType}:${fcgi.socketAddress};
}
location /cache {
location /cache/ {
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
(pkgs.python3.withPackages cfg.python.extraPackages);
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;
Group = cfg.group;
Environment="PYTHONPATH=${pkgs.netdata}/libexec/netdata/python.d/python_modules";
ExecStart = "${pkgs.netdata}/bin/netdata -D -c ${configFile}";
TimeoutStopSec = 60;
# Runtime directory and mode
RuntimeDirectory = "netdata";
RuntimeDirectoryMode = "0755";
# Performance
LimitNOFILE = "30000";
};
};
@ -165,6 +172,11 @@ in {
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) {
name = defaultUser;
};

View File

@ -179,10 +179,9 @@ in
requestEncryptionCredentials = mkOption {
type = types.bool;
default = config.boot.zfs.enableUnstable;
default = true;
description = ''
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
interactive prompt (keylocation=prompt) and from a file
(keylocation=file://). Note that for data pools the encryption key can

View File

@ -4,13 +4,16 @@ with lib;
let
cfg = config.virtualisation.kvmgt;
kernelPackages = config.boot.kernelPackages;
vgpuOptions = {
uuid = mkOption {
type = types.string;
description = "UUID of VGPU device. You can generate one with <package>libossp_uuid</package>.";
};
};
in {
options = {
virtualisation.kvmgt = {
@ -45,7 +48,13 @@ in {
assertion = versionAtLeast kernelPackages.kernel.version "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:
nameValuePair "kvmgt-${name}" {
description = "KVMGT VGPU ${name} path";
@ -55,6 +64,7 @@ in {
};
}
) cfg.vgpus;
systemd.services = mapAttrs' (name: value:
nameValuePair "kvmgt-${name}" {
description = "KVMGT VGPU ${name}";

View File

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

View File

@ -21,13 +21,13 @@ let
in
stdenv.mkDerivation rec {
name = "neovim-unwrapped-${version}";
version = "0.3.7";
version = "0.3.8";
src = fetchFromGitHub {
owner = "neovim";
repo = "neovim";
rev = "v${version}";
sha256 = "1j6w5jvq5v7kf7diad91qs1acr427nidnk9s24yyrz0hwdd1c2lh";
sha256 = "15flii3p4g9f65xy9jpkb8liajrvhm5ck4j39z6d6b1nkxr6ghwb";
};
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 {
name = "graphicsmagick-${version}";
version = "1.3.31";
version = "1.3.32";
src = fetchurl {
url = "mirror://sourceforge/graphicsmagick/GraphicsMagick-${version}.tar.xz";
sha256 = "0y22740f25qxsqqqg26xqlfp920dm57b7hrgaqmx7azksrcvnsq9";
sha256 = "1qclp9i31idpcbbqswmnq2q11lmv0a7cvdb1y72xcky8sshaahmq";
};
patches = [
./disable-popen.patch
./1.3.32-darwin-png-strlcat-fix.patch
];
configureFlags = [

View File

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

View File

@ -15,7 +15,6 @@ let
packageOverrides = lib.foldr lib.composeExtensions (self: super: { }) ([
(mkOverride "flask" "0.10.1" "0wrkavjdjndknhp8ya8j850jq7a1cli4g5a93mg8nh1xz2gq50sc")
(mkOverride "flask_login" "0.2.11" "1rg3rsjs1gwi2pw6vr9jmhaqm9b3vc9c4hfcsvp4y8agbh7g3mc3")
(mkOverride "sarge" "0.1.4" "08s8896973bz1gg0pkr592w6g4p6v47bkfvws5i91p9xf8b35yar")
(mkOverride "tornado" "4.5.3" "02jzd23l4r6fswmwxaica9ldlyc2p6q8dk6dyff7j58fmdzf853d")
# 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
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

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

View File

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

View File

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

View File

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

View File

@ -3,14 +3,14 @@
rustPlatform.buildRustPackage rec {
name = "newsboat-${version}";
version = "2.15";
version = "2.16.1";
src = fetchurl {
url = "https://newsboat.org/releases/${version}/${name}.tar.xz";
sha256 = "1dqdcp34jmphqf3d8ik0xdhg0s66nd5rky0y8y591nidq29wws6s";
sha256 = "0lxdsfcwa4byhfnn0gv34w3rr531f4nfqgi8j4qqmh3gncbwh8s0";
};
cargoSha256 = "06r682vvr8m7gl443qx9ncmq8dpmdxcls68f29d0mmf7llddy5sa";
cargoSha256 = "0ck2dgfk4fay4cjl66wqkbnq4rqrd717jl63l1mvqmvad9i19igm";
postPatch = ''
substituteInPlace Makefile --replace "|| true" ""
@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec {
'';
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 ]
++ stdenv.lib.optional stdenv.isDarwin Security;
@ -29,7 +29,8 @@ rustPlatform.buildRustPackage rec {
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;
@ -48,7 +49,7 @@ rustPlatform.buildRustPackage rec {
meta = with stdenv.lib; {
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 ];
license = licenses.mit;
platforms = platforms.unix;

View File

@ -18,14 +18,14 @@ in
stdenv.mkDerivation rec {
pname = "simgrid";
version = "3.22.2";
version = "3.23";
src = fetchFromGitLab {
domain = "framagit.org";
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "02zzivp3k7n2yvlr79p9kapzxpxq9x4x7jf2vrkpkwnssv4f9b4p";
sha256 = "068xg5ps4j4v2sqqyl4vf83nfazp54gsy84gvlw52h94c4mj4xmp";
};
nativeBuildInputs = [ cmake perl python3 boost valgrind ]
@ -106,7 +106,7 @@ stdenv.mkDerivation rec {
'';
homepage = https://simgrid.org/;
license = licenses.lgpl2Plus;
maintainers = with maintainers; [ mickours ];
maintainers = with maintainers; [ mickours mpoquet ];
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
, coreutils, gnused, groff, docutils
, gzip, bzip2, xz
@ -22,6 +22,14 @@ stdenv.mkDerivation rec {
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 ];
buildInputs = [
openssl zlib asciidoc libxml2 libxslt docbook_xsl luajit

View File

@ -89,6 +89,10 @@ let
git-extras = callPackage ./git-extras { };
git-gone = callPackage ./git-gone {
inherit (darwin.apple_sdk.frameworks) Security;
};
git-hub = callPackage ./git-hub { };
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 {
name = "mjpg-streamer-${version}";
version = "2016-03-08";
version = "unstable-2019-05-24";
src = fetchFromGitHub {
owner = "jacksonliam";
repo = "mjpg-streamer";
rev = "4060cb64e3557037fd404d10e1c1d076b672e9e8";
sha256 = "0g7y832jsz4ylmq9qp2l4fq6bm8l6dhsbi60fr5jfqpx4l0pia8m";
rev = "501f6362c5afddcfb41055f97ae484252c85c912";
sha256 = "1cl159svfs1zzzrd3zgn4x7qy6751bvlnxfwf5hn5fmg4iszajw7";
};
prePatch = ''
@ -23,9 +23,10 @@ stdenv.mkDerivation rec {
'';
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";
platforms = platforms.linux;
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 {
name = "adapta-backgrounds-${version}";
version = "0.5.2.3";
pname = "adapta-backgrounds";
version = "0.5.3.1";
src = fetchFromGitHub {
owner = "adapta-project";
repo = "adapta-backgrounds";
rev = version;
sha256 = "0n0ggcxinja81lasmpviqq3l4jiwb05bs8r5aah1im2zvls1g007";
sha256 = "04hmbmzf97rsii8gpwy3wkljy5xhxmlsl34d63s6hfy05knclydj";
};
nativeBuildInputs = [ autoreconfHook ];
nativeBuildInputs = [ meson ninja pkgconfig glib ];
meta = with stdenv.lib; {
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 ];
platforms = platforms.all;
maintainers = [ maintainers.romildo ];
maintainers = with maintainers; [ romildo ];
};
}

View File

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

View File

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

View File

@ -231,6 +231,10 @@ stdenv.mkDerivation (rec {
# that in turn causes GHCi to abort
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";
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
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";
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
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";
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
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";
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";
url = "git://git-annex.branchable.com/";
rev = "refs/tags/" + super.git-annex.version;
sha256 = "02vj13qyzjbk14ddpabycq2mwzggsk63vddffjyzaqpy9d7x35s9";
sha256 = "11d4qyhmc774h2xyrpyn9rxx99x3vjs0fcxsg49gj5ayzmykafap";
};
}).override {
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;
# 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
# 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 {
name = "clojure-${version}";
version = "1.10.0.442";
pname = "clojure";
version = "1.10.1.462";
src = fetchurl {
url = "https://download.clojure.org/install/clojure-tools-${version}.tar.gz";
sha256 = "147pkid3pvw60gq8vansid3x6wwfy9pqdbla3wfd5qaxqbcrhclw";
sha256 = "0mi7fzqvkg2ihigxkkamc742m1iba0yzy8ivciavzmpcnw128sc6";
};
buildInputs = [ makeWrapper ];
@ -14,11 +14,11 @@ stdenv.mkDerivation rec {
outputs = [ "out" "prefix" ];
installPhase = let
binPath = stdenv.lib.makeBinPath [ rlwrap jdk ];
binPath = stdenv.lib.makeBinPath [ rlwrap jdk11 ];
in ''
mkdir -p $prefix/libexec
cp clojure-tools-${version}.jar $prefix/libexec
cp {,example-}deps.edn $prefix
cp example-deps.edn $prefix
substituteInPlace clojure --replace PREFIX $prefix
@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
offers a software transactional memory system and reactive Agent
system that ensure clean, correct, multithreaded designs.
'';
maintainers = with maintainers; [ the-kenny ];
maintainers = with maintainers; [ jlesquembre ];
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;
};
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 {
self = pypy27;
sourceVersion = {

View File

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

View File

@ -1,45 +1,77 @@
{ stdenv, fetchurl, pkgconfig, glib, intltool, makeWrapper, shadow
, gobject-introspection, polkit, systemd, coreutils, meson, dbus
, ninja, python3 }:
{ stdenv
, fetchurl
, fetchpatch
, substituteAll
, pkgconfig
, glib
, shadow
, gobject-introspection
, polkit
, systemd
, coreutils
, meson
, dbus
, ninja
, python3
, gettext
}:
stdenv.mkDerivation rec {
name = "accountsservice-${version}";
pname = "accountsservice";
version = "0.6.55";
outputs = [ "out" "dev" ];
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";
};
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"
"-Dlocalstatedir=/var" ];
prePatch = ''
mesonFlags = [
"-Dadmin_group=wheel"
"-Dlocalstatedir=/var"
"-Dsystemdsystemunitdir=${placeholder ''out''}/etc/systemd/system"
];
postPatch = ''
chmod +x 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 = [
(substituteAll {
src = ./fix-paths.patch;
inherit shadow coreutils;
})
./no-create-dirs.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; {
description = "D-Bus interface for user account query and manipulation";
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 {
name = "leatherman-${version}";
version = "1.6.0";
version = "1.7.0";
src = fetchFromGitHub {
sha256 = "1dy1iisc0h1l28ff72pq7vxa4mj5zpq2jflpdghhx8yqksxhii4k";
sha256 = "0n6vcbc43hdaxg5inl2b43bsksdkj3k0qxis6gkkclipivp8pz0p";
rev = version;
repo = "leatherman";
owner = "puppetlabs";

View File

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "packr";
version = "2.5.1";
version = "2.5.2";
src = fetchFromGitHub {
owner = "gobuffalo";
repo = pname;
rev = "v${version}";
sha256 = "070hpnsr5w1r1cg9wl80cafmhkx4z3s29wq04fa7rk49hmwml4jy";
sha256 = "1ciffa5xbd93fylwz93wr4m4fj83dcla55dmdshaqz28rbsapnc1";
};
modSha256 = "0xvpk9jjcqac44s4fp0jwpljxvs0ypjwc5qfg0w90s2r7jn50fxn";
modSha256 = "086gydrl3i35hawb5m7rsb4a0llcpdpgid1xfw2z9n6jkwkclw4n";
meta = with lib; {
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 {
pname = "altair";
version = "3.0.1";
version = "3.1.0";
src = fetchPypi {
inherit pname version;
sha256 = "63934563a7a7b7186335858206a0b9be6043163b8b54a26cd3b3299a9e5e391f";
sha256 = "1zdznkybw3g8fd280h5j5cnnwcv30610gp8fl8vwqda1w2p6pgvp";
};
postPatch = ''

View File

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

View File

@ -4,7 +4,7 @@
buildPythonPackage rec {
pname = "marshmallow-sqlalchemy";
version = "0.16.3";
version = "0.17.0";
meta = {
homepage = "https://github.com/marshmallow-code/marshmallow-sqlalchemy";
@ -14,7 +14,7 @@ buildPythonPackage rec {
src = fetchPypi {
inherit pname version;
sha256 = "0qzpl53r58fk328cn41365c6jkliwmj41v16zkyjxb9d4s2mvn14";
sha256 = "17pnbv28n9vy3q66ckxfdbb9k1riy6s8lg63zfm5jsx00f0zqqnn";
};
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 {
pname = "nvchecker";
version = "1.4.3";
version = "1.4.4";
src = fetchPypi {
inherit pname version;
sha256 = "0v340wkq4sn9pvcpjh076l8mcqkn3nrn7if8p6iysk02bjxvknbv";
sha256 = "6276ed2a897a30ccd71bfd7cf9e6b7842f37f3d5a86d7a70fe46f437c62b1875";
};
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
# https://github.com/lilydjwg/nvchecker/commit/42a02efec84824a073601e1c2de30339d251e4c7
# requires network access
doCheck = false;
checkPhase = ''

View File

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

View File

@ -1,5 +1,5 @@
{ 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
, # Allow building a limited set of providers, e.g. ["pycodestyle"].
providers ? ["*"]
@ -54,7 +54,7 @@ buildPythonPackage rec {
++ stdenv.lib.optional (withProvider "rope") rope
++ stdenv.lib.optional (withProvider "yapf") yapf
++ 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; {
homepage = https://github.com/palantir/python-language-server;

View File

@ -1,22 +1,28 @@
{ lib, buildPythonPackage, fetchPypi, xmltodict, requests
# Test dependencies
, pytest_3, pytestcov, coveralls, pylint, flake8, graphviz, mock, sphinx
, pytest, pytestcov, coveralls, pylint, flake8, graphviz, mock, sphinx
, sphinx_rtd_theme
}:
buildPythonPackage rec {
pname = "soco";
version = "0.16";
version = "0.17";
src = fetchPypi {
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 ];
checkInputs = [
pytest_3 pytestcov coveralls pylint flake8 graphviz mock sphinx
pytest pytestcov coveralls pylint flake8 graphviz mock sphinx
sphinx_rtd_theme
];

View File

@ -1,3 +1,8 @@
{ 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 {
name = "gotools-unstable-${version}";
version = "2019-06-03";
rev = "8aaa1484dc108aa23dcf2d4a09371c0c9e280f6b";
version = "2019-07-06";
rev = "72ffa07ba3db8d09f5215feec0f89464f3028f8e";
src = fetchgit {
inherit rev;
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 = ''
# Make the builtin tools available here

View File

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

View File

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

View File

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

View File

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

View File

@ -14,10 +14,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1zz27z88qznix4r65gd9h56gl177snlfpgv10b0s69vi8qpl909l";
sha256 = "1930v0chc1q4fr7hn0y1j34mw0v032a8kh0by4d4sbz8ksy056kf";
type = "gem";
};
version = "1.5.2";
version = "1.5.3";
};
parallel = {
groups = ["default"];
@ -56,10 +56,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0mjyrf1dmf58i40izs8rp2j4mqnyd4qpah9svmkwhs33ckxsjh6b";
sha256 = "192vmm9ah6b4wyabawaszpr8n3z93y3ymykp3m4pncrbwngmn3m2";
type = "gem";
};
version = "0.71.0";
version = "0.72.0";
};
ruby-progressbar = {
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;
in rustPlatform.buildRustPackage rec {
name = "pyo3-pack-${version}";
version = "0.5.0";
version = "0.6.1";
src = fetchFromGitHub {
owner = "PyO3";
repo = "pyo3-pack";
rev = "v${version}";
sha256 = "0577v8nqjbb7l7fqvac706bg9zrcp8fbh9ca1mkj44db12v02kgb";
sha256 = "0zk0jhr7lnl9z6c8pbk7si3wa8b1kqzj3wrslc1n5fjla7xx8fzn";
};
cargoSha256 = "1prwgkgvg11cbpx086irrafg59mfvnykadagcp3qgyry6d82blsv";
cargoSha256 = "13gycipxc17baxg8nvjzkw96i1pxgncx7qjcrm9aab7p9vi2vrih";
nativeBuildInputs = [ pkgconfig ];

View File

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

View File

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

View File

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

View File

@ -44,8 +44,8 @@ CoatiSoftware/vim-sourcetrail
cocopon/iceberg.vim
ctjhoa/spacevim
ctrlpvim/ctrlp.vim
dag/vim-fish
dag/vim2hs
dag/vim-fish
dannyob/quickfixstatus
dart-lang/dart-vim-plugin
davidhalter/jedi-vim
@ -164,8 +164,8 @@ lepture/vim-jinja
lervag/vimtex
lfilho/cosco.vim
LnL7/vim-nix
LucHermitte/lh-vim-lib
LucHermitte/lh-brackets
LucHermitte/lh-vim-lib
ludovicchabant/vim-gutentags
ludovicchabant/vim-lawrencium
lukaszkorecki/workflowish
@ -231,9 +231,9 @@ ncm2/ncm2-ultisnips
neoclide/coc.nvim
neoclide/vim-easygit
neomake/neomake
neovim/nvimdev.nvim
neovimhaskell/haskell-vim
neovimhaskell/nvim-hs.vim
neovim/nvimdev.nvim
neutaaaaan/iosvkem
nixprime/cpsm
NLKNguyen/papercolor-theme
@ -324,6 +324,7 @@ thinca/vim-scouter
thinca/vim-themis
thinca/vim-visualstar
thosakwe/vim-flutter
tikhomirov/vim-glsl
tomasr/molokai
tomlion/vim-solidity
tommcdo/vim-lion
@ -363,14 +364,15 @@ valloric/youcompleteme
vhda/verilog_systemverilog.vim
vim-airline/vim-airline
vim-airline/vim-airline-themes
vimoutliner/vimoutliner
vim-pandoc/vim-pandoc
vim-pandoc/vim-pandoc-after
vim-pandoc/vim-pandoc-syntax
vim-ruby/vim-ruby
vim-scripts/a.vim
vim-scripts/align
vim-scripts/argtextobj.vim
vim-scripts/autoload_cscope.vim
vim-scripts/a.vim
vim-scripts/bats.vim
vim-scripts/changeColorScheme.vim
vim-scripts/Colour-Sampler-Pack
@ -389,11 +391,12 @@ vim-scripts/taglist.vim
vim-scripts/wombat256.vim
vim-scripts/YankRing.vim
vim-utils/vim-husk
vimoutliner/vimoutliner
vimwiki/vimwiki
vito-c/jq.vim
vmchale/dhall-vim
w0rp/ale
wakatime/vim-wakatime
wannesm/wmgraphviz.vim
wellle/targets.vim
wellle/tmux-complete.vim
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.
}:
@ -30,25 +33,37 @@ assert gdbUseFixed -> null != gdb;
let
gdbDefaultsTo = if gdbUseFixed then "${gdb}/bin/gdb" else "gdb";
langComponentBinaries = stdenv.mkDerivation {
langComponentBinaries = stdenv.mkDerivation rec {
name = "cpptools-language-component-binaries";
src = fetchzip {
src = fetchurl {
# 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";
sha256 = "19flm4vcrg89x0b20bd0g45apabzfqgvcpjddnmyk312jc242gmb";
url = "https://download.visualstudio.microsoft.com/download/pr/fd05d7fd-b771-4746-9c54-b5b30afcd82e/1f443716d6156a265bf50cb6e53fa999/bin_linux.zip";
sha256 = "198xnq709clibjmd8rrv0haniy2m3qvhn89hg9hpj6lvg9lsr7a4";
};
patchPhase = ''
elfInterpreter="${stdenv.glibc.out}/lib/ld-linux-x86-64.so.2"
patchelf --set-interpreter "$elfInterpreter" ./Microsoft.VSCode.CPP.Extension.linux
patchelf --set-interpreter "$elfInterpreter" ./Microsoft.VSCode.CPP.IntelliSense.Msvc.linux
chmod a+x ./Microsoft.VSCode.CPP.Extension.linux ./Microsoft.VSCode.CPP.IntelliSense.Msvc.linux
sourceRoot = name;
nativeBuildInputs = [ unzip ];
unpackPhase = ''
runHook preUnpack
unzip -d $name $src || true
runHook postUnpack
'';
installPhase = ''
runHook preInstall
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 = {
name = "cpptools";
publisher = "ms-vscode";
version = "0.23.1";
sha256 = "08kfzvyl8vgjmhqzpp7pxw0gd87jr5g7z15ag4cpcil4inq4c8k3";
version = "0.24.0";
sha256 = "0b0rwj3aadd4kf561zpzv95r96dqvhkn7db8d7rz3naaqydz0z8i";
};
buildInputs = [
@ -80,16 +95,12 @@ vscode-utils.buildVscodeMarketplaceExtension {
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.
# 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 | \
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}"' > \
./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
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 {
pname = "jellyfin";
version = "10.3.5";
version = "10.3.6";
# Impossible to build anything offline with dotnet
src = fetchurl {
url = "https://github.com/jellyfin/jellyfin/releases/download/v${version}/jellyfin_${version}_portable.tar.gz";
sha256 = "12asyrj2ax699gaf8402xfx049n6x0v8j5sba229vw1s66c2m8j2";
sha256 = "1vkb952y4n2gxgm2grxmpx93mljzfqm1m9f13lbw7qdhxb80zy41";
};
buildInputs = [

View File

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

View File

@ -89,6 +89,8 @@ in stdenv.mkDerivation rec {
patches = [
./default-to-http-1dot1.patch
# Explicitly link with dynamic linking library to fix build
./link-with-libdl.patch
];
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";
version = "0.1.38";
version = "0.1.39";
src = fetchFromGitHub {
owner = "weaveworks";
repo = "eksctl";
rev = version;
sha256 = "1nhsy4d1a1vh7g2ibcxnzgxnldfyh51hiq4v4vy123487b6ndqd0";
sha256 = "11y2pb5jn64v89a9hwi25rakrnsvhyjyr8kdrjk81d6hhrfkz3g0";
};
goPackagePath = "github.com/weaveworks/eksctl";
modSha256 = "1lmkwx0r19c2wg9nm85k92nlxjzr8q917jf3f333yf3csfyiix2f";
subPackages = [ "cmd/eksctl" ];
buildFlags =
''
-ldflags=-s
-ldflags=-w
-tags netgo
-tags release
'';
postInstall =
''
mkdir -p "$bin/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"
mkdir -p "$out/share/"{bash-completion/completions,zsh/site-functions}
$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; {

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
# 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;
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'
---
squashfs-tools/mksquashfs.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c
index 8b1376f..683973d 100644
--- a/squashfs-tools/mksquashfs.c
+++ b/squashfs-tools/mksquashfs.c
@@ -99,6 +99,8 @@ int old_exclude = TRUE;
diff -u a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c
--- 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
@@ -100,7 +100,9 @@
int use_regex = FALSE;
int nopad = FALSE;
int exit_on_error = FALSE;
static off_t squashfs_start_offset = 0;
+int do_4k_align = FALSE;
static off_t squashfs_start_offset = 0;
+#define ALIGN_UP(bytes, size) (bytes = (bytes + size - 1) & ~(size - 1))
long long global_uid = -1, global_gid = -1;
@@ -1513,6 +1515,9 @@ void unlock_fragments()
@@ -1495,6 +1497,9 @@
* queue at this time.
*/
while(!queue_empty(locked_fragment)) {
@ -41,9 +37,9 @@ index 8b1376f..683973d 100644
+ if(do_4k_align)
+ ALIGN_UP(bytes, 4096);
write_buffer = queue_get(locked_fragment);
frg = write_buffer->block;
frg = write_buffer->block;
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);
write_buffer->size = compressed_size;
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].start_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;
struct file_buffer *fragment_buffer = NULL;
+ // 4k align the start of each file.
+ if(do_4k_align)
+ ALIGN_UP(bytes, 4096);
+
if(pre_duplicate(read_size))
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_xattrs ? "no" : noX ? "uncompressed" :
"compressed", noI || noId ? "uncompressed" : "compressed");
@ -72,7 +68,7 @@ index 8b1376f..683973d 100644
printf("\tduplicates are %sremoved\n", duplicate_checking ? "" :
"not ");
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];
} else if(strcmp(argv[i], "-version") == 0) {
VERSION();
@ -81,7 +77,7 @@ index 8b1376f..683973d 100644
} else {
ERROR("%s: invalid option\n\n", argv[0]);
printOptions:
@@ -5387,6 +5402,7 @@ printOptions:
@@ -5613,6 +5628,7 @@
ERROR("\t\t\tdirectory containing that directory, "
"rather than the\n");
ERROR("\t\t\tcontents of the directory\n");
@ -89,5 +85,3 @@ index 8b1376f..683973d 100644
ERROR("\nFilesystem filter options:\n");
ERROR("-p <pseudo-definition>\tAdd pseudo file "
"definition\n");
--
2.14.1.480.gb18f417b89-goog (previously; hand-patched by charles-dyfis-net)

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "flashrom-${version}";
version = "1.0.1";
version = "1.1";
src = fetchurl {
url = "https://download.flashrom.org/releases/flashrom-v${version}.tar.bz2";
sha256 = "0i6yrrl69hrqmwd7azj7x3j46m0qpvzmk3b5basym7mnlpfzhyfm";
sha256 = "06afq680n9p34hi3vrkn12vd1pfyq2062db9qqbi4hi21k3skbdf";
};
# 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;
stdenv.mkDerivation rec {
name = "wireguard-tools-${version}";
version = "0.0.20190601";
pname = "wireguard-tools";
version = "0.0.20190702";
src = fetchzip {
url = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${version}.tar.xz";
sha256 = "0glcshf4dk2kfdkqc0x6ds45kpw6amsi8p2m81bfpmgnaglcbp7c";
sha256 = "1xl4hzqrny3855s7h1k24py81gdjyfv0mhv6y528f6p0h38r89s3";
};
sourceRoot = "source/src/tools";
@ -39,10 +48,10 @@ stdenv.mkDerivation rec {
passthru.updateScript = ./update.sh;
meta = with stdenv.lib; {
meta = {
description = "Tools for the WireGuard secure network tunnel";
downloadPage = https://git.zx2c4.com/WireGuard/refs/;
homepage = https://www.wireguard.com/;
downloadPage = "https://git.zx2c4.com/WireGuard/refs/";
homepage = "https://www.wireguard.com/";
license = licenses.gpl2;
maintainers = with maintainers; [ elseym ericsagnes mic92 zx2c4 ];
platforms = platforms.unix;

View File

@ -5,6 +5,7 @@
, makeWrapper
, buildFHSUserEnv
, libselinux
, libarchive
, xorg
# Conda installs its packages and environments under this directory
, installationPath ? "~/.conda"
@ -59,6 +60,7 @@ in
# Some other required environment variables
export FONTCONFIG_FILE=/etc/fonts/fonts.conf
export QTCOMPOSE=${xorg.libX11}/share/X11/locale
export LIBARCHIVE=${libarchive.lib}/lib/libarchive.so
'';
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 { };
snapTools = callPackage ../build-support/snap { };
nix-prefetch-docker = callPackage ../build-support/docker/nix-prefetch-docker.nix { };
docker-compose = python3Packages.callPackage ../applications/virtualization/docker-compose {};
@ -1697,6 +1699,8 @@ in
lynis = callPackage ../tools/security/lynis { };
marlin-calc = callPackage ../tools/misc/marlin-calc {};
mathics = pythonPackages.mathics;
masscan = callPackage ../tools/security/masscan {
@ -3724,6 +3728,8 @@ in
icecast = callPackage ../servers/icecast { };
iceshelf = callPackage ../tools/backup/iceshelf { };
darkice = callPackage ../tools/audio/darkice { };
deco = callPackage ../applications/misc/deco { };
@ -3990,7 +3996,7 @@ in
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 { };
@ -8063,6 +8069,7 @@ in
cargo-bloat = callPackage ../development/tools/rust/cargo-bloat { };
cargo-expand = callPackage ../development/tools/rust/cargo-expand { };
cargo-fuzz = callPackage ../development/tools/rust/cargo-fuzz { };
cargo-inspect = callPackage ../development/tools/rust/cargo-inspect { };
cargo-make = callPackage ../development/tools/rust/cargo-make {
inherit (darwin.apple_sdk.frameworks) Security;
};
@ -8530,6 +8537,7 @@ in
python35Full = python35.override{x11Support=true;};
python36Full = python36.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 = python.pkgs;
@ -8537,13 +8545,14 @@ in
python3Packages = python3.pkgs;
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.
python27Packages = lib.hiPrioSet (recurseIntoAttrs python27.pkgs);
python35Packages = python35.pkgs;
python36Packages = python36.pkgs;
python37Packages = recurseIntoAttrs python37.pkgs;
python38Packages = python38.pkgs;
pypyPackages = pypy.pkgs;
pypy2Packages = pypy2.pkgs;
pypy27Packages = pypy27.pkgs;
@ -9854,7 +9863,7 @@ in
ycmd = callPackage ../development/tools/misc/ycmd {
inherit (darwin.apple_sdk.frameworks) Cocoa;
python = python2;
python = python3;
};
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 {
kernelPatches = [
kernelPatches.bridge_stp_helper
@ -15544,7 +15561,7 @@ in
linux = linuxPackages.kernel;
# Update this when adding the newest kernel major version!
linuxPackages_latest = linuxPackages_5_1;
linuxPackages_latest = linuxPackages_5_2;
linux_latest = linuxPackages_latest.kernel;
# 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_19 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_19);
linuxPackages_5_1 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_1);
linuxPackages_5_2 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_2);
# When adding to this list:
# - Update linuxPackages_latest to the latest version
@ -17415,6 +17433,8 @@ in
dragonfly-reverb = callPackage ../applications/audio/dragonfly-reverb { };
drawio = callPackage ../applications/graphics/drawio {};
drawpile = libsForQt5.callPackage ../applications/graphics/drawpile { };
drawpile-server-headless = libsForQt5.callPackage ../applications/graphics/drawpile {
buildClient = false;
@ -19308,6 +19328,17 @@ in
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 {};
qtcurve = libsForQt5.callPackage ../misc/themes/qtcurve {};

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