Merge branch 'master' into staging

This commit is contained in:
Daiderd Jordan 2017-01-04 01:42:10 +01:00
commit 27660cfdc0
No known key found for this signature in database
GPG Key ID: D02435D05B810C96
139 changed files with 1908 additions and 1225 deletions

View File

@ -109,6 +109,7 @@
cwoac = "Oliver Matthews <oliver@codersoffortune.net>"; cwoac = "Oliver Matthews <oliver@codersoffortune.net>";
DamienCassou = "Damien Cassou <damien@cassou.me>"; DamienCassou = "Damien Cassou <damien@cassou.me>";
danbst = "Danylo Hlynskyi <abcz2.uprola@gmail.com>"; danbst = "Danylo Hlynskyi <abcz2.uprola@gmail.com>";
danielfullmer = "Daniel Fullmer <danielrf12@gmail.com>";
dasuxullebt = "Christoph-Simon Senjak <christoph.senjak@googlemail.com>"; dasuxullebt = "Christoph-Simon Senjak <christoph.senjak@googlemail.com>";
davidak = "David Kleuker <post@davidak.de>"; davidak = "David Kleuker <post@davidak.de>";
davidrusu = "David Rusu <davidrusu.me@gmail.com>"; davidrusu = "David Rusu <davidrusu.me@gmail.com>";
@ -507,6 +508,7 @@
yurrriq = "Eric Bailey <eric@ericb.me>"; yurrriq = "Eric Bailey <eric@ericb.me>";
z77z = "Marco Maggesi <maggesi@math.unifi.it>"; z77z = "Marco Maggesi <maggesi@math.unifi.it>";
zagy = "Christian Zagrodnick <cz@flyingcircus.io>"; zagy = "Christian Zagrodnick <cz@flyingcircus.io>";
zauberpony = "Elmar Athmer <elmar@athmer.org>";
zef = "Zef Hemel <zef@zef.me>"; zef = "Zef Hemel <zef@zef.me>";
zimbatm = "zimbatm <zimbatm@zimbatm.com>"; zimbatm = "zimbatm <zimbatm@zimbatm.com>";
zohl = "Al Zohali <zohl@fmap.me>"; zohl = "Al Zohali <zohl@fmap.me>";

View File

@ -9,6 +9,7 @@ let
inherit (config.services.avahi) nssmdns; inherit (config.services.avahi) nssmdns;
inherit (config.services.samba) nsswins; inherit (config.services.samba) nsswins;
ldap = (config.users.ldap.enable && config.users.ldap.nsswitch); ldap = (config.users.ldap.enable && config.users.ldap.nsswitch);
sssd = config.services.sssd.enable;
hostArray = [ "files" "mymachines" ] hostArray = [ "files" "mymachines" ]
++ optionals nssmdns [ "mdns_minimal [!UNAVAIL=return]" ] ++ optionals nssmdns [ "mdns_minimal [!UNAVAIL=return]" ]
@ -18,12 +19,17 @@ let
++ ["myhostname" ]; ++ ["myhostname" ];
passwdArray = [ "files" ] passwdArray = [ "files" ]
++ optional sssd "sss"
++ optionals ldap [ "ldap" ] ++ optionals ldap [ "ldap" ]
++ [ "mymachines" ]; ++ [ "mymachines" ];
shadowArray = [ "files" ] shadowArray = [ "files" ]
++ optional sssd "sss"
++ optionals ldap [ "ldap" ]; ++ optionals ldap [ "ldap" ];
servicesArray = [ "files" ]
++ optional sssd "sss";
in { in {
options = { options = {
@ -60,7 +66,7 @@ in {
networks: files networks: files
ethers: files ethers: files
services: files services: ${concatStringsSep " " servicesArray}
protocols: files protocols: files
rpc: files rpc: files
''; '';

View File

@ -69,7 +69,7 @@ in
config = mkIf cfg.enable { config = mkIf cfg.enable {
# FIXME: Implement powersave governor for sandy bridge or later Intel CPUs # Leftover for old setups, should be set by nixos-generate-config now
powerManagement.cpuFreqGovernor = mkDefault "ondemand"; powerManagement.cpuFreqGovernor = mkDefault "ondemand";
systemd.targets.post-resume = { systemd.targets.post-resume = {

View File

@ -1,5 +1,5 @@
{ {
x86_64-linux = "/nix/store/i4mwf2gpvar7dqvlpp5m86llbq3ahbvb-nix-1.11.4"; x86_64-linux = "/nix/store/m8z91vpfxyszhjpq4wl8m1zwlqik4fkn-nix-1.11.5";
i686-linux = "/nix/store/a3gjrbspb0q4hs3sv5g1y2nza43i8nzv-nix-1.11.4"; i686-linux = "/nix/store/vk71likl32igqg6apqsj52ln3vhkq1pa-nix-1.11.5";
x86_64-darwin = "/nix/store/7v21yd3qpv0nclcy5cqr5njj9bril12s-nix-1.11.4"; x86_64-darwin = "/nix/store/qfwm0b5qkr8v8gsv9dh2z3arky9p1myg-nix-1.11.5";
} }

View File

@ -94,6 +94,21 @@ sub hasCPUFeature {
my $cpus = scalar (grep {/^processor\s*:/} (split '\n', $cpuinfo)); my $cpus = scalar (grep {/^processor\s*:/} (split '\n', $cpuinfo));
# Determine CPU governor to use
if (-e "/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors") {
my $governors = read_file("/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors");
# ondemand governor is not available on sandy bridge or later Intel CPUs
my @desired_governors = ("ondemand", "powersave");
my $e;
foreach $e (@desired_governors) {
if (index($governors, $e) != -1) {
last if (push @attrs, "powerManagement.cpuFreqGovernor = \"$e\";");
}
}
}
# Virtualization support? # Virtualization support?
push @kernelModules, "kvm-intel" if hasCPUFeature "vmx"; push @kernelModules, "kvm-intel" if hasCPUFeature "vmx";
push @kernelModules, "kvm-amd" if hasCPUFeature "svm"; push @kernelModules, "kvm-amd" if hasCPUFeature "svm";

View File

@ -285,6 +285,7 @@
./services/misc/siproxd.nix ./services/misc/siproxd.nix
./services/misc/sonarr.nix ./services/misc/sonarr.nix
./services/misc/spice-vdagentd.nix ./services/misc/spice-vdagentd.nix
./services/misc/sssd.nix
./services/misc/subsonic.nix ./services/misc/subsonic.nix
./services/misc/sundtek.nix ./services/misc/sundtek.nix
./services/misc/svnserve.nix ./services/misc/svnserve.nix

View File

@ -233,6 +233,8 @@ let
account sufficient pam_unix.so account sufficient pam_unix.so
${optionalString use_ldap ${optionalString use_ldap
"account sufficient ${pam_ldap}/lib/security/pam_ldap.so"} "account sufficient ${pam_ldap}/lib/security/pam_ldap.so"}
${optionalString config.services.sssd.enable
"account sufficient ${pkgs.sssd}/lib/security/pam_sss.so"}
${optionalString config.krb5.enable ${optionalString config.krb5.enable
"account sufficient ${pam_krb5}/lib/security/pam_krb5.so"} "account sufficient ${pam_krb5}/lib/security/pam_krb5.so"}
@ -273,6 +275,8 @@ let
"auth sufficient ${pkgs.oathToolkit}/lib/security/pam_oath.so window=${toString oath.window} usersfile=${toString oath.usersFile} digits=${toString oath.digits}"} "auth sufficient ${pkgs.oathToolkit}/lib/security/pam_oath.so window=${toString oath.window} usersfile=${toString oath.usersFile} digits=${toString oath.digits}"}
${optionalString use_ldap ${optionalString use_ldap
"auth sufficient ${pam_ldap}/lib/security/pam_ldap.so use_first_pass"} "auth sufficient ${pam_ldap}/lib/security/pam_ldap.so use_first_pass"}
${optionalString config.services.sssd.enable
"auth sufficient ${pkgs.sssd}/lib/security/pam_sss.so use_first_pass"}
${optionalString config.krb5.enable '' ${optionalString config.krb5.enable ''
auth [default=ignore success=1 service_err=reset] ${pam_krb5}/lib/security/pam_krb5.so use_first_pass auth [default=ignore success=1 service_err=reset] ${pam_krb5}/lib/security/pam_krb5.so use_first_pass
auth [default=die success=done] ${pam_ccreds}/lib/security/pam_ccreds.so action=validate use_first_pass auth [default=die success=done] ${pam_ccreds}/lib/security/pam_ccreds.so action=validate use_first_pass
@ -288,6 +292,8 @@ let
"password optional ${pkgs.pam_mount}/lib/security/pam_mount.so"} "password optional ${pkgs.pam_mount}/lib/security/pam_mount.so"}
${optionalString use_ldap ${optionalString use_ldap
"password sufficient ${pam_ldap}/lib/security/pam_ldap.so"} "password sufficient ${pam_ldap}/lib/security/pam_ldap.so"}
${optionalString config.services.sssd.enable
"password sufficient ${pkgs.sssd}/lib/security/pam_sss.so use_authtok"}
${optionalString config.krb5.enable ${optionalString config.krb5.enable
"password sufficient ${pam_krb5}/lib/security/pam_krb5.so use_first_pass"} "password sufficient ${pam_krb5}/lib/security/pam_krb5.so use_first_pass"}
${optionalString config.services.samba.syncPasswordsByPam ${optionalString config.services.samba.syncPasswordsByPam
@ -303,13 +309,15 @@ let
if config.boot.isContainer then "optional" else "required" if config.boot.isContainer then "optional" else "required"
} pam_loginuid.so"} } pam_loginuid.so"}
${optionalString cfg.makeHomeDir ${optionalString cfg.makeHomeDir
"session required ${pkgs.pam}/lib/security/pam_mkhomedir.so silent skel=/etc/skel umask=0022"} "session required ${pkgs.pam}/lib/security/pam_mkhomedir.so silent skel=${config.security.pam.makeHomeDir.skelDirectory} umask=0022"}
${optionalString cfg.updateWtmp ${optionalString cfg.updateWtmp
"session required ${pkgs.pam}/lib/security/pam_lastlog.so silent"} "session required ${pkgs.pam}/lib/security/pam_lastlog.so silent"}
${optionalString config.security.pam.enableEcryptfs ${optionalString config.security.pam.enableEcryptfs
"session optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so"} "session optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so"}
${optionalString use_ldap ${optionalString use_ldap
"session optional ${pam_ldap}/lib/security/pam_ldap.so"} "session optional ${pam_ldap}/lib/security/pam_ldap.so"}
${optionalString config.services.sssd.enable
"session optional ${pkgs.sssd}/lib/security/pam_sss.so"}
${optionalString config.krb5.enable ${optionalString config.krb5.enable
"session optional ${pam_krb5}/lib/security/pam_krb5.so"} "session optional ${pam_krb5}/lib/security/pam_krb5.so"}
${optionalString cfg.otpwAuth ${optionalString cfg.otpwAuth
@ -397,6 +405,16 @@ in
''; '';
}; };
security.pam.makeHomeDir.skelDirectory = mkOption {
type = types.str;
default = "/var/empty";
example = "/etc/skel";
description = ''
Path to skeleton directory whose contents are copied to home
directories newly created by <literal>pam_mkhomedir</literal>.
'';
};
security.pam.enableSSHAgentAuth = mkOption { security.pam.enableSSHAgentAuth = mkOption {
default = false; default = false;
description = description =
@ -447,6 +465,7 @@ in
# Include the PAM modules in the system path mostly for the manpages. # Include the PAM modules in the system path mostly for the manpages.
[ pkgs.pam ] [ pkgs.pam ]
++ optional config.users.ldap.enable pam_ldap ++ optional config.users.ldap.enable pam_ldap
++ optional config.services.sssd.enable pkgs.sssd
++ optionals config.krb5.enable [pam_krb5 pam_ccreds] ++ optionals config.krb5.enable [pam_krb5 pam_ccreds]
++ optionals config.security.pam.enableOTPW [ pkgs.otpw ] ++ optionals config.security.pam.enableOTPW [ pkgs.otpw ]
++ optionals config.security.pam.oath.enable [ pkgs.oathToolkit ] ++ optionals config.security.pam.oath.enable [ pkgs.oathToolkit ]

View File

@ -2,7 +2,9 @@
with lib; with lib;
{ let cfg = config.services.hardware.pommed;
defaultConf = "${pkgs.pommed_light}/etc/pommed.conf.mactel";
in {
options = { options = {
@ -12,37 +14,37 @@ with lib;
type = types.bool; type = types.bool;
default = false; default = false;
description = '' description = ''
Whether to use the pommed tool to handle Apple laptop keyboard hotkeys. Whether to use the pommed tool to handle Apple laptop
keyboard hotkeys.
''; '';
}; };
configFile = mkOption { configFile = mkOption {
type = types.path; type = types.nullOr types.path;
default = null;
description = '' description = ''
The path to the <filename>pommed.conf</filename> file. The path to the <filename>pommed.conf</filename> file. Leave
to null to use the default config file
(<filename>/etc/pommed.conf.mactel</filename>). See the
files <filename>/etc/pommed.conf.mactel</filename> and
<filename>/etc/pommed.conf.pmac</filename> for examples to
build on.
''; '';
}; };
}; };
}; };
config = mkIf config.services.hardware.pommed.enable { config = mkIf cfg.enable {
environment.systemPackages = [ pkgs.polkit ]; environment.systemPackages = [ pkgs.polkit pkgs.pommed_light ];
environment.etc."pommed.conf".source = config.services.hardware.pommed.configFile; environment.etc."pommed.conf".source =
if cfg.configFile == null then defaultConf else cfg.configFile;
services.hardware.pommed.configFile = "${pkgs.pommed}/etc/pommed.conf";
services.dbus.packages = [ pkgs.pommed ];
systemd.services.pommed = { systemd.services.pommed = {
description = "Pommed hotkey management"; description = "Pommed Apple Hotkeys Daemon";
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
after = [ "dbus.service" ]; script = "${pkgs.pommed_light}/bin/pommed -f";
postStop = "rm -f /var/run/pommed.pid";
script = "${pkgs.pommed}/bin/pommed";
serviceConfig.Type = "forking";
path = [ pkgs.eject ];
}; };
}; };
} }

View File

@ -105,7 +105,9 @@ in
If set, Nix will perform builds in a sandboxed environment that it If set, Nix will perform builds in a sandboxed environment that it
will set up automatically for each build. This prevents will set up automatically for each build. This prevents
impurities in builds by disallowing access to dependencies impurities in builds by disallowing access to dependencies
outside of the Nix store. outside of the Nix store. This isn't enabled by default for
performance. It doesn't affect derivation hashes, so changing
this option will not trigger a rebuild of packages.
"; ";
}; };

View File

@ -0,0 +1,36 @@
server-user nscd
threads 1
paranoia no
debug-level 0
enable-cache passwd yes
positive-time-to-live passwd 0
negative-time-to-live passwd 0
suggested-size passwd 211
check-files passwd yes
persistent passwd no
shared passwd yes
enable-cache group yes
positive-time-to-live group 0
negative-time-to-live group 0
suggested-size group 211
check-files group yes
persistent group no
shared group yes
enable-cache hosts yes
positive-time-to-live hosts 600
negative-time-to-live hosts 5
suggested-size hosts 211
check-files hosts yes
persistent hosts no
shared hosts yes
enable-cache services yes
positive-time-to-live services 0
negative-time-to-live services 0
suggested-size services 211
check-files services yes
persistent services no
shared services yes

View File

@ -0,0 +1,97 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.sssd;
nscd = config.services.nscd;
in {
options = {
services.sssd = {
enable = mkEnableOption "the System Security Services Daemon.";
config = mkOption {
type = types.lines;
description = "Contents of <filename>sssd.conf</filename>.";
default = ''
[sssd]
config_file_version = 2
services = nss, pam
domains = shadowutils
[nss]
[pam]
[domain/shadowutils]
id_provider = proxy
proxy_lib_name = files
auth_provider = proxy
proxy_pam_target = sssd-shadowutils
proxy_fast_alias = True
'';
};
sshAuthorizedKeysIntegration = mkOption {
type = types.bool;
default = false;
description = ''
Whether to make sshd look up authorized keys from SSS.
For this to work, the <literal>ssh</literal> SSS service must be enabled in the sssd configuration.
'';
};
};
};
config = mkMerge [
(mkIf cfg.enable {
assertions = singleton {
assertion = nscd.enable;
message = "nscd must be enabled through `services.nscd.enable` for SSSD to work.";
};
systemd.services.sssd = {
description = "System Security Services Daemon";
wantedBy = [ "multi-user.target" ];
before = [ "systemd-user-sessions.service" "nss-user-lookup.target" ];
after = [ "network-online.target" "nscd.service" ];
requires = [ "network-online.target" "nscd.service" ];
wants = [ "nss-user-lookup.target" ];
restartTriggers = [
config.environment.etc."nscd.conf".source
config.environment.etc."sssd/sssd.conf".source
];
script = ''
export LDB_MODULES_PATH+="''${LDB_MODULES_PATH+:}${pkgs.ldb}/modules/ldb:${pkgs.sssd}/modules/ldb"
mkdir -p /var/lib/sss/{pubconf,db,mc,pipes,gpo_cache,secrets} /var/lib/sss/pipes/private /var/lib/sss/pubconf/krb5.include.d
${pkgs.sssd}/bin/sssd -D
'';
serviceConfig = {
Type = "forking";
PIDFile = "/run/sssd.pid";
};
};
environment.etc."sssd/sssd.conf" = {
text = cfg.config;
mode = "0400";
};
system.nssModules = optional cfg.enable pkgs.sssd;
services.nscd.config = builtins.readFile ./nscd-sssd.conf;
services.dbus.packages = [ pkgs.sssd ];
})
(mkIf cfg.sshAuthorizedKeysIntegration {
# Ugly: sshd refuses to start if a store path is given because /nix/store is group-writable.
# So indirect by a symlink.
environment.etc."ssh/authorized_keys_command" = {
mode = "0755";
text = ''
#!/bin/sh
exec ${pkgs.sssd}/bin/sss_ssh_authorizedkeys "$@"
'';
};
services.openssh.extraConfig = ''
AuthorizedKeysCommand /etc/ssh/authorized_keys_command
AuthorizedKeysCommandUser nobody
'';
})];
}

View File

@ -84,7 +84,7 @@ in
RestartSec = "5s"; RestartSec = "5s";
ExecStartPre = "${cfg.package}/bin/miredo-checkconf -f ${miredoConf}"; ExecStartPre = "${cfg.package}/bin/miredo-checkconf -f ${miredoConf}";
ExecStart = "${cfg.package}/bin/miredo -c ${miredoConf} -p ${pidFile} -f"; ExecStart = "${cfg.package}/bin/miredo -c ${miredoConf} -p ${pidFile} -f";
ExecReload = "/bin/kill -HUP $MAINPID"; ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
}; };
}; };

View File

@ -9,8 +9,6 @@ let
inherit (lib) singleton; inherit (lib) singleton;
cfgFile = pkgs.writeText "nscd.conf" cfg.config;
in in
{ {
@ -41,6 +39,7 @@ in
###### implementation ###### implementation
config = mkIf cfg.enable { config = mkIf cfg.enable {
environment.etc."nscd.conf".text = cfg.config;
users.extraUsers.nscd = users.extraUsers.nscd =
{ isSystemUser = true; { isSystemUser = true;
@ -61,10 +60,14 @@ in
mkdir -m 0755 -p /var/db/nscd mkdir -m 0755 -p /var/db/nscd
''; '';
restartTriggers = [ config.environment.etc.hosts.source config.environment.etc."nsswitch.conf".source ]; restartTriggers = [
config.environment.etc.hosts.source
config.environment.etc."nsswitch.conf".source
config.environment.etc."nscd.conf".source
];
serviceConfig = serviceConfig =
{ ExecStart = "@${pkgs.glibc.bin}/sbin/nscd nscd -f ${cfgFile}"; { ExecStart = "@${pkgs.glibc.bin}/sbin/nscd nscd";
Type = "forking"; Type = "forking";
PIDFile = "/run/nscd/nscd.pid"; PIDFile = "/run/nscd/nscd.pid";
Restart = "always"; Restart = "always";
@ -79,7 +82,7 @@ in
# its pid. So wait until it's ready. # its pid. So wait until it's ready.
postStart = postStart =
'' ''
while ! ${pkgs.glibc.bin}/sbin/nscd -g -f ${cfgFile} > /dev/null; do while ! ${pkgs.glibc.bin}/sbin/nscd -g > /dev/null; do
sleep 0.2 sleep 0.2
done done
''; '';

View File

@ -31,12 +31,25 @@ in
''; '';
}; };
extraPackages = mkOption {
type = types.listOf types.package;
default = [];
description = ''
KDE packages that need to be installed system-wide.
'';
};
}; };
}; };
config = mkIf (xcfg.enable && cfg.enable) { config = mkMerge [
(mkIf (cfg.extraPackages != []) {
environment.systemPackages = [ (kde5.kdeWrapper cfg.extraPackages) ];
})
(mkIf (xcfg.enable && cfg.enable) {
warnings = optional config.services.xserver.desktopManager.kde4.enable warnings = optional config.services.xserver.desktopManager.kde4.enable
"KDE 4 should not be enabled at the same time as KDE 5"; "KDE 4 should not be enabled at the same time as KDE 5";
@ -120,7 +133,6 @@ in
kde5.kdecoration kde5.kdecoration
kde5.kdeplasma-addons kde5.kdeplasma-addons
kde5.kgamma5 kde5.kgamma5
kde5.khelpcenter
kde5.khotkeys kde5.khotkeys
kde5.kinfocenter kde5.kinfocenter
kde5.kmenuedit kde5.kmenuedit
@ -133,7 +145,6 @@ in
kde5.libkscreen kde5.libkscreen
kde5.libksysguard kde5.libksysguard
kde5.milou kde5.milou
kde5.oxygen
kde5.plasma-integration kde5.plasma-integration
kde5.polkit-kde-agent kde5.polkit-kde-agent
kde5.systemsettings kde5.systemsettings
@ -142,12 +153,10 @@ in
kde5.plasma-workspace kde5.plasma-workspace
kde5.plasma-workspace-wallpapers kde5.plasma-workspace-wallpapers
kde5.dolphin
kde5.dolphin-plugins kde5.dolphin-plugins
kde5.ffmpegthumbs kde5.ffmpegthumbs
kde5.kdegraphics-thumbnailers kde5.kdegraphics-thumbnailers
kde5.kio-extras kde5.kio-extras
kde5.konsole
kde5.print-manager kde5.print-manager
# Install Breeze icons if available # Install Breeze icons if available
@ -179,6 +188,15 @@ in
++ lib.optional config.services.colord.enable pkgs.colord-kde ++ lib.optional config.services.colord.enable pkgs.colord-kde
++ lib.optionals config.services.samba.enable [ kde5.kdenetwork-filesharing pkgs.samba ]; ++ lib.optionals config.services.samba.enable [ kde5.kdenetwork-filesharing pkgs.samba ];
services.xserver.desktopManager.kde5.extraPackages =
[
kde5.khelpcenter
kde5.oxygen
kde5.dolphin
kde5.konsole
];
environment.pathsToLink = [ "/share" ]; environment.pathsToLink = [ "/share" ];
environment.etc = singleton { environment.etc = singleton {
@ -186,9 +204,9 @@ in
target = "X11/xkb"; target = "X11/xkb";
}; };
# Enable GTK applications to load SVG icons
environment.variables = environment.variables =
{ {
# Enable GTK applications to load SVG icons
GST_PLUGIN_SYSTEM_PATH_1_0 = GST_PLUGIN_SYSTEM_PATH_1_0 =
lib.makeSearchPath "/lib/gstreamer-1.0" lib.makeSearchPath "/lib/gstreamer-1.0"
(builtins.map (pkg: pkg.out) (with pkgs.gst_all_1; [ (builtins.map (pkg: pkg.out) (with pkgs.gst_all_1; [
@ -229,6 +247,7 @@ in
security.pam.services.kde = { allowNullPassword = true; }; security.pam.services.kde = { allowNullPassword = true; };
}; })
];
} }

View File

@ -19,7 +19,7 @@ let cfg = config.services.xserver.synaptics;
Option "TapButton3" "0" Option "TapButton3" "0"
''; '';
pkg = pkgs.xorg.xf86inputsynaptics; pkg = pkgs.xorg.xf86inputsynaptics;
etcFile = "X11/xorg.conf.d/50-synaptics.conf"; etcFile = "X11/xorg.conf.d/70-synaptics.conf";
in { in {
options = { options = {
@ -172,7 +172,7 @@ in {
services.xserver.modules = [ pkg.out ]; services.xserver.modules = [ pkg.out ];
environment.etc."${etcFile}".source = environment.etc."${etcFile}".source =
"${pkg.out}/share/X11/xorg.conf.d/50-synaptics.conf"; "${pkg.out}/share/X11/xorg.conf.d/70-synaptics.conf";
environment.systemPackages = [ pkg ]; environment.systemPackages = [ pkg ];

View File

@ -318,6 +318,8 @@ mountFS() {
[ "$mountPoint" == "/" ] && [ "$mountPoint" == "/" ] &&
[ -f "/mnt-root/etc/NIXOS_LUSTRATE" ] && [ -f "/mnt-root/etc/NIXOS_LUSTRATE" ] &&
lustrateRoot "/mnt-root" lustrateRoot "/mnt-root"
true
} }
lustrateRoot () { lustrateRoot () {

View File

@ -910,11 +910,8 @@ in
domainname "${cfg.domain}" domainname "${cfg.domain}"
''; '';
environment.etc = mkIf (cfg.hostId != null) environment.etc."hostid" = mkIf (cfg.hostId != null)
[ { source = pkgs.runCommand "gen-hostid" {} ''
{
target = "hostid";
source = pkgs.runCommand "gen-hostid" {} ''
hi="${cfg.hostId}" hi="${cfg.hostId}"
${if pkgs.stdenv.isBigEndian then '' ${if pkgs.stdenv.isBigEndian then ''
echo -ne "\x''${hi:0:2}\x''${hi:2:2}\x''${hi:4:2}\x''${hi:6:2}" > $out echo -ne "\x''${hi:0:2}\x''${hi:2:2}\x''${hi:4:2}\x''${hi:6:2}" > $out
@ -922,8 +919,14 @@ in
echo -ne "\x''${hi:6:2}\x''${hi:4:2}\x''${hi:2:2}\x''${hi:0:2}" > $out echo -ne "\x''${hi:6:2}\x''${hi:4:2}\x''${hi:2:2}\x''${hi:0:2}" > $out
''} ''}
''; '';
} };
];
# static hostname configuration needed for hostnamectl and the
# org.freedesktop.hostname1 dbus service (both provided by systemd)
environment.etc."hostname" = mkIf (cfg.hostName != "")
{
text = cfg.hostName + "\n";
};
environment.systemPackages = environment.systemPackages =
[ pkgs.host [ pkgs.host

View File

@ -94,7 +94,6 @@ let cfg = config.ec2; in
elif [ "$fsType" = ext3 ]; then elif [ "$fsType" = ext3 ]; then
mp="/disk$diskNr" mp="/disk$diskNr"
diskNr=$((diskNr + 1)) diskNr=$((diskNr + 1))
echo "mounting $device on $mp..."
if mountFS "$device" "$mp" "" ext3; then if mountFS "$device" "$mp" "" ext3; then
if [ -z "$diskForUnionfs" ]; then diskForUnionfs="$mp"; fi if [ -z "$diskForUnionfs" ]; then diskForUnionfs="$mp"; fi
fi fi

View File

@ -1,8 +1,10 @@
{ stdenv, fetchurl, wxGTK30, pkgconfig, gettext, gtk2, glib, zlib, perl, intltool, { stdenv, fetchurl, wxGTK30, pkgconfig, file, gettext, gtk2, glib, zlib, perl, intltool,
libogg, libvorbis, libmad, libjack2, lv2, lilv, serd, sord, sratom, suil, alsaLib, libsndfile, soxr, flac, lame, fetchpatch, libogg, libvorbis, libmad, libjack2, lv2, lilv, serd, sord, sratom, suil, alsaLib, libsndfile, soxr, flac, lame, fetchpatch,
expat, libid3tag, ffmpeg, soundtouch /*, portaudio - given up fighting their portaudio.patch */ expat, libid3tag, ffmpeg, soundtouch /*, portaudio - given up fighting their portaudio.patch */
}: }:
with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "2.1.2"; version = "2.1.2";
name = "audacity-${version}"; name = "audacity-${version}";
@ -23,12 +25,34 @@ stdenv.mkDerivation rec {
mkdir lib-src mkdir lib-src
mv lib-src-rm/{Makefile*,lib-widget-extra,portaudio-v19,portmixer,portsmf,FileDialog,sbsms,libnyquist} lib-src/ mv lib-src-rm/{Makefile*,lib-widget-extra,portaudio-v19,portmixer,portsmf,FileDialog,sbsms,libnyquist} lib-src/
rm -r lib-src-rm/ rm -r lib-src-rm/
# we will get a (possibly harmless) warning during configure without this
substituteInPlace configure \
--replace /usr/bin/file ${file}/bin/file
''; '';
configureFlags = [ "--with-libsamplerate" ]; configureFlags = [
"--with-libsamplerate"
];
# audacity only looks for lame and ffmpeg at runtime, so we need to link them in manually
NIX_LDFLAGS = [
# LAME
"-lmp3lame"
# ffmpeg
"-lavcodec"
"-lavdevice"
"-lavfilter"
"-lavformat"
"-lavresample"
"-lavutil"
"-lpostproc"
"-lswresample"
"-lswscale"
];
buildInputs = [ buildInputs = [
pkgconfig gettext wxGTK30 expat alsaLib pkgconfig file gettext wxGTK30 expat alsaLib
libsndfile soxr libid3tag libjack2 lv2 lilv serd sord sratom suil gtk2 libsndfile soxr libid3tag libjack2 lv2 lilv serd sord sratom suil gtk2
ffmpeg libmad lame libvorbis flac soundtouch ffmpeg libmad lame libvorbis flac soundtouch
]; #ToDo: detach sbsms ]; #ToDo: detach sbsms
@ -36,11 +60,11 @@ stdenv.mkDerivation rec {
dontDisableStatic = true; dontDisableStatic = true;
doCheck = false; # Test fails doCheck = false; # Test fails
meta = { meta = with stdenv.lib; {
description = "Sound editor with graphical UI"; description = "Sound editor with graphical UI";
homepage = http://audacityteam.org/; homepage = http://audacityteam.org/;
license = stdenv.lib.licenses.gpl2Plus; license = licenses.gpl2Plus;
platforms = with stdenv.lib.platforms; linux; platforms = with platforms; linux;
maintainers = with stdenv.lib.maintainers; [ the-kenny ]; maintainers = with maintainers; [ the-kenny ];
}; };
} }

View File

@ -1,10 +1,9 @@
{ stdenv, fetchFromGitHub, python2Packages, makeWrapper, chromaprint }: { stdenv, fetchFromGitHub, python2Packages, makeWrapper, chromaprint }:
let let
pypkgs = python2Packages;
pname = "puddletag"; pname = "puddletag";
in pypkgs.buildPythonApplication rec { in python2Packages.buildPythonApplication rec {
name = "${pname}-${version}"; name = "${pname}-${version}";
version = "1.2.0"; version = "1.2.0";
@ -17,11 +16,9 @@ in pypkgs.buildPythonApplication rec {
sourceRoot = "${pname}-v${version}-src/source"; sourceRoot = "${pname}-v${version}-src/source";
disabled = pypkgs.isPy3k; # work to support python 3 has not begun disabled = python2Packages.isPy3k; # work to support python 3 has not begun
outputs = [ "out" ]; propagatedBuildInputs = [ chromaprint ] ++ (with python2Packages; [
propagatedBuildInputs = [ chromaprint ] ++ (with pypkgs; [
configobj configobj
mutagen mutagen
pyparsing pyparsing
@ -35,7 +32,7 @@ in pypkgs.buildPythonApplication rec {
siteDir=$(toPythonPath $out) siteDir=$(toPythonPath $out)
mkdir -p $siteDir mkdir -p $siteDir
PYTHONPATH=$PYTHONPATH:$siteDir PYTHONPATH=$PYTHONPATH:$siteDir
${pypkgs.python.interpreter} setup.py install --prefix $out ${python2Packages.python.interpreter} setup.py install --prefix $out
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -88,16 +88,16 @@ rec {
eclipse-platform = eclipse-platform-46; eclipse-platform = eclipse-platform-46;
eclipse-platform-46 = buildEclipse { eclipse-platform-46 = buildEclipse {
name = "eclipse-platform-4.6.1"; name = "eclipse-platform-4.6.2";
description = "Eclipse platform"; description = "Eclipse Platform Neon 2";
sources = { sources = {
"x86_64-linux" = fetchurl { "x86_64-linux" = fetchurl {
url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.1-201609071200/eclipse-SDK-4.6.1-linux-gtk-x86_64.tar.gz; url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.2-201611241400/eclipse-platform-4.6.2-linux-gtk-x86_64.tar.gz;
sha256 = "1mr7sj4whz23iwz5j6mbqd80a39177qv0r7b6cip7dji4n2agl8j"; sha256 = "1fmpirjkp210angyfz3nr5jp58snjy6784zkkbmdxkiyg9kg2wqq";
}; };
"i686-linux" = fetchurl { "i686-linux" = fetchurl {
url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.1-201609071200/eclipse-SDK-4.6.1-linux-gtk.tar.gz; url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.2-201611241400/eclipse-platform-4.6.2-linux-gtk.tar.gz;
sha256 = "0kgj0zpgzwx90q13c4mr8swf63azd56532ycxgq2rbs0d1qbl87j"; sha256 = "0274g6ypiqsqkch10868ygbm6avc5pa57saz9wd196kdivl1bdpm";
}; };
}; };
}; };
@ -123,16 +123,16 @@ rec {
### Eclipse SDK ### Eclipse SDK
eclipse-sdk-46 = buildEclipse { eclipse-sdk-46 = buildEclipse {
name = "eclipse-sdk-4.6.1"; name = "eclipse-sdk-4.6.2";
description = "Eclipse Neon Classic"; description = "Eclipse Neon 2 Classic";
sources = { sources = {
"x86_64-linux" = fetchurl { "x86_64-linux" = fetchurl {
url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.1-201609071200/eclipse-SDK-4.6.1-linux-gtk-x86_64.tar.gz; url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.2-201611241400/eclipse-SDK-4.6.2-linux-gtk-x86_64.tar.gz;
sha256 = "1mr7sj4whz23iwz5j6mbqd80a39177qv0r7b6cip7dji4n2agl8j"; sha256 = "0g3nk1gcz178j8xk6nblkfsaysm8gq8101383fx60x6w25rdfgjb";
}; };
"i686-linux" = fetchurl { "i686-linux" = fetchurl {
url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.1-201609071200/eclipse-SDK-4.6.1-linux-gtk.tar.gz; url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.2-201611241400/eclipse-SDK-4.6.2-linux-gtk.tar.gz;
sha256 = "0kgj0zpgzwx90q13c4mr8swf63azd56532ycxgq2rbs0d1qbl87j"; sha256 = "09wlkcxs5h3j8habqxgr4all99vkgmyixc0vr9dj3qs0kl85k5mz";
}; };
}; };
}; };

View File

@ -60,8 +60,9 @@ let
}; };
}; };
in in
kdeWrapper unwrapped kdeWrapper
{ {
inherit unwrapped;
targets = [ "bin/kile" ]; targets = [ "bin/kile" ];
paths = [ konsole.unwrapped ]; paths = [ konsole.unwrapped ];
} }

View File

@ -6,11 +6,15 @@ stdenv.mkDerivation {
patches = [ ./CVE-2014-3618.patch ]; patches = [ ./CVE-2014-3618.patch ];
# getline is defined differently in glibc now. So rename it. # getline is defined differently in glibc now. So rename it.
# Without the .PHONY target "make install" won't install anything on Darwin.
postPatch = '' postPatch = ''
sed -e "s%^RM.*$%#%" -i Makefile sed -e "s%^RM.*$%#%" -i Makefile
sed -e "s%^BASENAME.*%\BASENAME=$out%" -i Makefile sed -e "s%^BASENAME.*%\BASENAME=$out%" -i Makefile
sed -e "s%^LIBS=.*%LIBS=-lm%" -i Makefile sed -e "s%^LIBS=.*%LIBS=-lm%" -i Makefile
sed -e "s%getline%thisgetline%g" -i src/*.c src/*.h sed -e "s%getline%thisgetline%g" -i src/*.c src/*.h
sed -e "3i\
.PHONY: install
" -i Makefile
''; '';
src = fetchurl { src = fetchurl {

View File

@ -20,15 +20,14 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "4.5.6"; version = "4.5.97";
name = "subsurface-${version}"; name = "subsurface-${version}";
# use fetchgit instead of the official tgz is not complete
src = fetchgit { src = fetchgit {
sha256 = "156rqcszy0c4plk2mv7wdd4h7s7mygpq5sdc64pjfs4qvvsdj10f"; sha256 = "0mbf8m5sbimbyvlh65sjlydrycr4ssfyfzdlqyl0wcpzw7h0qfp8";
url = "git://git.subsurface-divelog.org/subsurface"; url = "git://git.subsurface-divelog.org/subsurface";
rev = "4d8d7c2a0fa1b4b0e6953d92287c75b6f97472d0"; rev = "5f15ad5a86ada3c5e574041a5f9d85235322dabb";
branchName = "v4.5-branch"; branchName = "master";
}; };
buildInputs = [ qtbase libdivecomputer libmarble-ssrf libxslt buildInputs = [ qtbase libdivecomputer libmarble-ssrf libxslt
@ -43,8 +42,7 @@ stdenv.mkDerivation rec {
marble_libs=$(echo $(echo $CMAKE_LIBRARY_PATH | grep -o "/nix/store/[[:alnum:]]*-libmarble-ssrf-[a-zA-Z0-9\-]*/lib")/libssrfmarblewidget.so) marble_libs=$(echo $(echo $CMAKE_LIBRARY_PATH | grep -o "/nix/store/[[:alnum:]]*-libmarble-ssrf-[a-zA-Z0-9\-]*/lib")/libssrfmarblewidget.so)
cmakeFlags="$cmakeFlags -DCMAKE_BUILD_TYPE=Debug \ cmakeFlags="$cmakeFlags -DCMAKE_BUILD_TYPE=Debug \
-DMARBLE_LIBRARIES=$marble_libs \ -DMARBLE_LIBRARIES=$marble_libs \
-DNO_PRINTING=OFF \ -DNO_PRINTING=OFF"
-DUSE_LIBGIT23_API=1"
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
''; '';
homepage = https://launchpad.net/synapse-project; homepage = https://launchpad.net/synapse-project;
license = stdenv.lib.licenses.gpl3; license = stdenv.lib.licenses.gpl3;
maintainers = with stdenv.lib.maintainers; mahe; maintainers = with stdenv.lib.maintainers; [ mahe ];
platforms = with stdenv.lib.platforms; all; platforms = with stdenv.lib.platforms; all;
}; };
} }

View File

@ -1,4 +1,7 @@
{ stdenv, fetchurl, pkgconfig, which, openssl, qt4, libtool, gcc, makeWrapper }: { stdenv, fetchurl, pkgconfig, which, makeQtWrapper,
libtool, openssl, qtbase, qttools }:
with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "xca-${version}"; name = "xca-${version}";
@ -9,19 +12,28 @@ stdenv.mkDerivation rec {
sha256 = "1r2w9gpahjv221j963bd4vn0gj4cxmb9j42f3cd9qdn890hizw84"; sha256 = "1r2w9gpahjv221j963bd4vn0gj4cxmb9j42f3cd9qdn890hizw84";
}; };
postInstall = '' enableParallelBuilding = false;
wrapProgram "$out/bin/xca" \
--prefix LD_LIBRARY_PATH : \ buildInputs = [ libtool openssl qtbase qttools ];
"${gcc.cc.lib}/lib64:${stdenv.lib.makeLibraryPath [ qt4 gcc.cc openssl libtool ]}"
nativeBuildInputs = [ makeQtWrapper pkgconfig which ];
preBuild = ''
substituteInPlace Local.mak \
--replace ${qtbase}/bin/moc ${qtbase.dev}/bin/moc \
--replace ${qtbase}/bin/uic ${qtbase.dev}/bin/uic
''; '';
buildInputs = [ openssl qt4 libtool gcc makeWrapper ]; postInstall = ''
nativeBuildInputs = [ pkgconfig ]; wrapQtProgram "$out/bin/xca"
wrapQtProgram "$out/bin/xca_db_stat"
'';
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Interface for managing asymetric keys like RSA or DSA"; description = "Interface for managing asymetric keys like RSA or DSA";
homepage = http://xca.sourceforge.net/; homepage = http://xca.sourceforge.net/;
platforms = platforms.all; platforms = platforms.all;
license = licenses.bsd3; license = licenses.bsd3;
maintainers = with maintainers; [ offline peterhoeg ];
}; };
} }

View File

@ -55,9 +55,9 @@ let
in in
kdeWrapper unwrapped kdeWrapper
{ {
inherit unwrapped;
targets = [ "bin/yakuake" ]; targets = [ "bin/yakuake" ];
paths = [ konsole.unwrapped ]; paths = [ konsole.unwrapped ];
} }

View File

@ -42,6 +42,8 @@ mkChromiumDerivation (base: rec {
passthru = { inherit sandboxExecutableName; }; passthru = { inherit sandboxExecutableName; };
requiredSystemFeatures = [ "big-parallel" ];
meta = { meta = {
description = "An open source web browser from Google"; description = "An open source web browser from Google";
homepage = http://www.chromium.org/; homepage = http://www.chromium.org/;
@ -49,6 +51,5 @@ mkChromiumDerivation (base: rec {
license = licenses.bsd3; license = licenses.bsd3;
platforms = platforms.linux; platforms = platforms.linux;
hydraPlatforms = if channel == "stable" then ["x86_64-linux"] else []; hydraPlatforms = if channel == "stable" then ["x86_64-linux"] else [];
requiredSystemFeatures = [ "big-parallel" ];
}; };
}) })

View File

@ -1,18 +1,18 @@
# This file is autogenerated from update.sh in the same directory. # This file is autogenerated from update.sh in the same directory.
{ {
beta = { beta = {
sha256 = "0mafk3cxwc16qbd7jzqj8rw1ys6s2bv7f9byixjcgssvjf073ksv"; sha256 = "00mq90h5kjj3x7asclp97x5mqy6pvcj0vqxcf77djlyjmsy1q10i";
sha256bin64 = "0sb2d7vyrckkbg823rnl7y3k6q3kvmxp13lpm0ncy821cx89m89a"; sha256bin64 = "1prmj546sp627crnjfj2sxprr6ahb59ajgqp8jwy4wiy1x5c3j88";
version = "55.0.2883.75"; version = "56.0.2924.28";
}; };
dev = { dev = {
sha256 = "1g4jy8zpmgqh9br2jcvbrnnr8fc5i4s5hvv01bs433rlcgaqk066"; sha256 = "1dnqqlhdxawwy4zdk2p8zn6vg0cpi3hqpl9rf3j0xylvm3knr9a1";
sha256bin64 = "08vzar0zshf39390xhr8l7gvzai9pxcqzwqzrmizaaqi9m5pijdr"; sha256bin64 = "1hnmca8jqvammsb3y847p2n9hm93129li5zfi5pacqizqlakmv3z";
version = "56.0.2924.18"; version = "57.0.2950.4";
}; };
stable = { stable = {
sha256 = "0mafk3cxwc16qbd7jzqj8rw1ys6s2bv7f9byixjcgssvjf073ksv"; sha256 = "0n0sp3f3cmac2lblzn3mjkkhm8p6vy34dafr0kpdz14w1lad66z8";
sha256bin64 = "0qfqj8067vjqklg1zm203dh6c29sbhk6w7flvi8h3z28y1pws2qw"; sha256bin64 = "1cvp9fvdpd8qrl48lzs7f6k43bqd43gp0sbzz6h7yrpzw1c49r0m";
version = "55.0.2883.75"; version = "55.0.2883.87";
}; };
} }

View File

@ -24,12 +24,12 @@ let
in buildPythonApplication rec { in buildPythonApplication rec {
name = "qutebrowser-${version}"; name = "qutebrowser-${version}";
version = "0.8.4"; version = "0.9.0";
namePrefix = ""; namePrefix = "";
src = fetchurl { src = fetchurl {
url = "https://github.com/The-Compiler/qutebrowser/releases/download/v${version}/${name}.tar.gz"; url = "https://github.com/The-Compiler/qutebrowser/releases/download/v${version}/${name}.tar.gz";
sha256 = "0wc6iq7rw89625v595bs4y8spzhid6nnz2gq67f2kbjppk2rikpm"; sha256 = "1fp7yddx8xmy6hx01gg4z3vnw8b9qa5ixam7150i3xaalx0gjzfq";
}; };
# Needs tox # Needs tox
@ -79,7 +79,7 @@ in buildPythonApplication rec {
''; '';
meta = { meta = {
homepage = https://github.com/The-Compiler/qutebrowser; homepage = "https://github.com/The-Compiler/qutebrowser";
description = "Keyboard-focused browser with a minimal GUI"; description = "Keyboard-focused browser with a minimal GUI";
license = stdenv.lib.licenses.gpl3Plus; license = stdenv.lib.licenses.gpl3Plus;
maintainers = [ stdenv.lib.maintainers.jagajaga ]; maintainers = [ stdenv.lib.maintainers.jagajaga ];

View File

@ -2,7 +2,7 @@
buildGoPackage rec { buildGoPackage rec {
name = "terraform-${version}"; name = "terraform-${version}";
version = "0.8.1"; version = "0.8.2";
rev = "v${version}"; rev = "v${version}";
goPackagePath = "github.com/hashicorp/terraform"; goPackagePath = "github.com/hashicorp/terraform";
@ -11,7 +11,7 @@ buildGoPackage rec {
inherit rev; inherit rev;
owner = "hashicorp"; owner = "hashicorp";
repo = "terraform"; repo = "terraform";
sha256 = "1fgnivhn6hrxpwwajl80vj2w81lv6vypprlbgif8m0z0na7p8956"; sha256 = "1645la750lqx2m57sbl6xg1cnqgwrfk5dhcw08wm4z7zxdnqys7b";
}; };
postInstall = '' postInstall = ''

View File

@ -4,11 +4,11 @@
, gsm, speex, portaudio, spandsp, libuuid, ccache , gsm, speex, portaudio, spandsp, libuuid, ccache
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "0.4.20"; version = "0.5.0";
name = "baresip-${version}"; name = "baresip-${version}";
src=fetchurl { src=fetchurl {
url = "http://www.creytiv.com/pub/baresip-${version}.tar.gz"; url = "http://www.creytiv.com/pub/baresip-${version}.tar.gz";
sha256 = "0m8afbfdc9a57cy94ny7g6jv2ndfmrvkx0lgk64i8w870958gkwb"; sha256 = "0dhlgjkqn7jkd1pmdyid41c829clzmi5kczjdwxzh5ygn95lydjc";
}; };
buildInputs = [zlib openssl libre librem pkgconfig buildInputs = [zlib openssl libre librem pkgconfig
cairo mpg123 gstreamer gst_ffmpeg gst_plugins_base gst_plugins_bad gst_plugins_good cairo mpg123 gstreamer gst_ffmpeg gst_plugins_base gst_plugins_bad gst_plugins_good

View File

@ -75,7 +75,8 @@ let
homepage = https://konversation.kde.org; homepage = https://konversation.kde.org;
}; };
}; };
in kdeWrapper unwrapped { in kdeWrapper {
inherit unwrapped;
targets = [ "bin/konversation" ]; targets = [ "bin/konversation" ];
} }

View File

@ -1,8 +1,8 @@
{ stdenv, buildGoPackage, fetchFromGitHub, fetchhg, fetchbzr, fetchsvn }: { stdenv, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec { buildGoPackage rec {
name = "rclone-${version}"; name = "rclone-${version}";
version = "1.33"; version = "1.35";
goPackagePath = "github.com/ncw/rclone"; goPackagePath = "github.com/ncw/rclone";
@ -10,16 +10,14 @@ buildGoPackage rec {
owner = "ncw"; owner = "ncw";
repo = "rclone"; repo = "rclone";
rev = "v${version}"; rev = "v${version}";
sha256 = "00y48ww40x73xpdvkzfhllwvbh9a2ffmmkc6ri9343wvmb53laqk"; sha256 = "15dmppb7qgr3vg76dsv770l51lmsl8n8k3rvbnhhks5a2cz0kf2i";
}; };
goDeps = ./deps.nix; meta = with stdenv.lib; {
meta = {
description = "Command line program to sync files and directories to and from major cloud storage"; description = "Command line program to sync files and directories to and from major cloud storage";
homepage = "http://rclone.org"; homepage = "http://rclone.org";
license = stdenv.lib.licenses.mit; license = licenses.mit;
maintainers = [ ]; maintainers = with maintainers; [ danielfullmer ];
platforms = stdenv.lib.platforms.all; platforms = platforms.all;
}; };
} }

View File

@ -1,219 +0,0 @@
# This file was generated by go2nix.
[
{
goPackagePath = "bazil.org/fuse";
fetch = {
type = "git";
url = "https://github.com/bazil/fuse";
rev = "371fbbdaa8987b715bdd21d6adc4c9b20155f748";
sha256 = "1x5p301py7mcxgwklfm6pqqkzssln0nfzllng49pnk60m03ilp4w";
};
}
{
goPackagePath = "cloud.google.com/go";
fetch = {
type = "git";
url = "https://code.googlesource.com/gocloud";
rev = "90296fd601ebfc594192e722a022663b0c3f8756";
sha256 = "0qg0d1afhqmpfaq2lh29c87d18s5148yshg0s295dhzdn1m9nhww";
};
}
{
goPackagePath = "github.com/Unknwon/goconfig";
fetch = {
type = "git";
url = "https://github.com/Unknwon/goconfig";
rev = "5aa4f8cd5a472c2411c778b4680f59f2223f1966";
sha256 = "0r6na17sz762c1dyn6gb16v2zhvzg6krmz7pcjg1m0l5wxdf4n0d";
};
}
{
goPackagePath = "github.com/VividCortex/ewma";
fetch = {
type = "git";
url = "https://github.com/VividCortex/ewma";
rev = "c595cd886c223c6c28fc9ae2727a61b5e4693d85";
sha256 = "0f09886vm4rkhgqqh2b20r8rws4syvny3la107hh6qby027bpab2";
};
}
{
goPackagePath = "github.com/aws/aws-sdk-go";
fetch = {
type = "git";
url = "https://github.com/aws/aws-sdk-go";
rev = "13a12060f716145019378a10e2806c174356b857";
sha256 = "09yl85kk2y4ayk44af5rbnkq4vy82vbh2z5ac4vpl2vgv7zyh46h";
};
}
{
goPackagePath = "github.com/cpuguy83/go-md2man";
fetch = {
type = "git";
url = "https://github.com/cpuguy83/go-md2man";
rev = "a65d4d2de4d5f7c74868dfa9b202a3c8be315aaa";
sha256 = "1rm3zjrmfpzy0l3qp02xmd5pqzl77pdql9pbxhl0k1qw2vfzrjv6";
};
}
{
goPackagePath = "github.com/google/go-querystring";
fetch = {
type = "git";
url = "https://github.com/google/go-querystring";
rev = "9235644dd9e52eeae6fa48efd539fdc351a0af53";
sha256 = "0q398679fwp7vlnpd2rlzz452a7a4qvpcspak81psfl3xwimpzgq";
};
}
{
goPackagePath = "github.com/mreiferson/go-httpclient";
fetch = {
type = "git";
url = "https://github.com/mreiferson/go-httpclient";
rev = "31f0106b4474f14bc441575c19d3a5fa21aa1f6c";
sha256 = "1iz95p7fl43smyh1lzjnwk6gq9y7q15m2qdkf0f4kxf3x5731v9i";
};
}
{
goPackagePath = "github.com/ncw/go-acd";
fetch = {
type = "git";
url = "https://github.com/ncw/go-acd";
rev = "56da839497f9854a91f99fe752c33c7977a6f48b";
sha256 = "1va6hpl73ps443r0s2icplcx113gkhmi2gbsgpaw2iii5lji5085";
};
}
{
goPackagePath = "github.com/ncw/swift";
fetch = {
type = "git";
url = "https://github.com/ncw/swift";
rev = "b964f2ca856aac39885e258ad25aec08d5f64ee6";
sha256 = "0c86ap1zb56r6g96cnbn5j3i3r96c5l8rl98h3sxlqi5agwp3km4";
};
}
{
goPackagePath = "github.com/ogier/pflag";
fetch = {
type = "git";
url = "https://github.com/ogier/pflag";
rev = "45c278ab3607870051a2ea9040bb85fcb8557481";
sha256 = "0620v75wppfd84d95n312wpngcb73cph4q3ivs1h0waljfnsrd5l";
};
}
{
goPackagePath = "github.com/pkg/errors";
fetch = {
type = "git";
url = "https://github.com/pkg/errors";
rev = "645ef00459ed84a119197bfb8d8205042c6df63d";
sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
};
}
{
goPackagePath = "github.com/rfjakob/eme";
fetch = {
type = "git";
url = "https://github.com/rfjakob/eme";
rev = "601d0e278ceda9aa2085a61c9265f6e690ef5255";
sha256 = "1ryh5f2a42psrqcpjh73shk3p0mva2vcyyfav4nhxmfqall77k5z";
};
}
{
goPackagePath = "github.com/skratchdot/open-golang";
fetch = {
type = "git";
url = "https://github.com/skratchdot/open-golang";
rev = "75fb7ed4208cf72d323d7d02fd1a5964a7a9073c";
sha256 = "1b67imqbsdvg19vif1q1dfmapxy3v2anagacbql95fwnnw0v8jga";
};
}
{
goPackagePath = "github.com/spf13/cobra";
fetch = {
type = "git";
url = "https://github.com/spf13/cobra";
rev = "9c28e4bbd74e5c3ed7aacbc552b2cab7cfdfe744";
sha256 = "02bgp0yy9bi05k2in9axqi3db1c6mjffdsmki51pn9iryxz4zkh3";
};
}
{
goPackagePath = "github.com/spf13/pflag";
fetch = {
type = "git";
url = "https://github.com/spf13/pflag";
rev = "c7e63cf4530bcd3ba943729cee0efeff2ebea63f";
sha256 = "197mlkgb01zk86fxfl8r8maymcxsspqblg7hmngjxf7ivdid1i1l";
};
}
{
goPackagePath = "github.com/stacktic/dropbox";
fetch = {
type = "git";
url = "https://github.com/stacktic/dropbox";
rev = "58f839b21094d5e0af7caf613599830589233d20";
sha256 = "1psmxpnn40ri9bgjvivljnd4p977f635mh3w7m5mglxxgc9392pi";
};
}
{
goPackagePath = "github.com/tsenart/tb";
fetch = {
type = "git";
url = "https://github.com/tsenart/tb";
rev = "19f4c3d79d2bd67d0911b2e310b999eeea4454c1";
sha256 = "148vy4xij5qm8dq5plyczx2wbpi4gpg8ksr5r3b4m8j0z1kjws8y";
};
}
{
goPackagePath = "golang.org/x/crypto";
fetch = {
type = "git";
url = "https://go.googlesource.com/crypto";
rev = "5dc8cb4b8a8eb076cbb5a06bc3b8682c15bdbbd3";
sha256 = "18c1vpqlj10z1id66hglgnv51d9gwphgsdvxgghc6mcm01f1g5xj";
};
}
{
goPackagePath = "golang.org/x/net";
fetch = {
type = "git";
url = "https://go.googlesource.com/net";
rev = "6acef71eb69611914f7a30939ea9f6e194c78172";
sha256 = "1fcsv50sbq0lpzrhx3m9jw51wa255fsbqjwsx9iszq4d0gysnnvc";
};
}
{
goPackagePath = "golang.org/x/oauth2";
fetch = {
type = "git";
url = "https://go.googlesource.com/oauth2";
rev = "3c3a985cb79f52a3190fbc056984415ca6763d01";
sha256 = "0c7x8wkya56z03j2qfm61932npsddgqyggi75hkla9755d1inqlv";
};
}
{
goPackagePath = "golang.org/x/text";
fetch = {
type = "git";
url = "https://go.googlesource.com/text";
rev = "a71fd10341b064c10f4a81ceac72bcf70f26ea34";
sha256 = "1igxqrgnnb6983fl0yck0xal2hwnkcgbslr7cxyrg7a65vawd0q1";
};
}
{
goPackagePath = "google.golang.org/api";
fetch = {
type = "git";
url = "https://code.googlesource.com/google-api-go-client";
rev = "eb84d1a029af1654777e7ba65c979085305c3e38";
sha256 = "0ldmzcx5lxa81lcr39djcvyhd0ls11jlswj5877rinq3505ayf5l";
};
}
{
goPackagePath = "github.com/stretchr/testify/";
fetch = {
type = "git";
url = "https://github.com/stretchr/testify";
rev = "1f4a1643a57e798696635ea4c126e9127adb7d3c";
sha256 = "0nam9d68rn8ha8ldif22kkgv6k6ph3y88fp26159wdrs63ca3bzl";
};
}
]

View File

@ -1,14 +1,14 @@
{ stdenv, lib, fetchFromGitHub, go, pkgs }: { stdenv, lib, fetchFromGitHub, go, pkgs }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "0.14.17"; version = "0.14.18";
name = "syncthing-${version}"; name = "syncthing-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "syncthing"; owner = "syncthing";
repo = "syncthing"; repo = "syncthing";
rev = "v${version}"; rev = "v${version}";
sha256 = "0l220jnm8xwfc5jrznan15290al05bim5yyy4wngj9c55av6mlzq"; sha256 = "099r1n9awznv17ac1fm4ff6az40bvk6xxwaw8x8fx7ikqi1wv8vp";
}; };
buildInputs = [ go ]; buildInputs = [ go ];
@ -45,8 +45,8 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://www.syncthing.net/; homepage = https://www.syncthing.net/;
description = "Open Source Continuous File Synchronization"; description = "Open Source Continuous File Synchronization";
license = stdenv.lib.licenses.mpl20; license = licenses.mpl20;
maintainers = with stdenv.lib.maintainers; [ pshendry joko peterhoeg ]; maintainers = with maintainers; [ pshendry joko peterhoeg ];
platforms = stdenv.lib.platforms.unix; platforms = platforms.unix;
}; };
} }

View File

@ -251,6 +251,8 @@ in stdenv.mkDerivation rec {
inherit srcs; inherit srcs;
}; };
requiredSystemFeatures = [ "big-parallel" ];
meta = with lib; { meta = with lib; {
description = "Comprehensive, professional-quality productivity suite, a variant of openoffice.org"; description = "Comprehensive, professional-quality productivity suite, a variant of openoffice.org";
homepage = http://libreoffice.org/; homepage = http://libreoffice.org/;
@ -258,6 +260,5 @@ in stdenv.mkDerivation rec {
maintainers = with maintainers; [ viric raskin ]; maintainers = with maintainers; [ viric raskin ];
platforms = platforms.linux; platforms = platforms.linux;
hydraPlatforms = []; hydraPlatforms = [];
requiredSystemFeatures = [ "big-parallel" ];
}; };
} }

View File

@ -254,12 +254,13 @@ in stdenv.mkDerivation rec {
inherit srcs; inherit srcs;
}; };
requiredSystemFeatures = [ "big-parallel" ];
meta = with lib; { meta = with lib; {
description = "Comprehensive, professional-quality productivity suite (Still/stable release)"; description = "Comprehensive, professional-quality productivity suite (Still/stable release)";
homepage = http://libreoffice.org/; homepage = http://libreoffice.org/;
license = licenses.lgpl3; license = licenses.lgpl3;
maintainers = with maintainers; [ viric raskin ]; maintainers = with maintainers; [ viric raskin ];
platforms = platforms.linux; platforms = platforms.linux;
requiredSystemFeatures = [ "big-parallel" ];
}; };
} }

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, python2 }: { stdenv, fetchFromGitHub, python2, fixDarwinDylibNames }:
let let
python = python2; python = python2;
@ -13,7 +13,7 @@ in stdenv.mkDerivation rec {
sha256 = "0ssp190ksak93hiz61z90x6hy9hcw1ywp8b2dzmbhn6fbd4bnxzp"; sha256 = "0ssp190ksak93hiz61z90x6hy9hcw1ywp8b2dzmbhn6fbd4bnxzp";
}; };
buildInputs = [ python ]; buildInputs = [ python fixDarwinDylibNames ];
enableParallelBuilding = true; enableParallelBuilding = true;
configurePhase = '' configurePhase = ''

View File

@ -4,7 +4,7 @@ tk ? null, gnuplot ? null, ecl ? null, ecl-fasl ? false
let let
name = "maxima"; name = "maxima";
version = "5.38.1"; version = "5.39.0";
searchPath = searchPath =
stdenv.lib.makeBinPath stdenv.lib.makeBinPath
@ -15,7 +15,7 @@ stdenv.mkDerivation ({
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/${name}/${name}-${version}.tar.gz"; url = "mirror://sourceforge/${name}/${name}-${version}.tar.gz";
sha256 = "1p6646rvq43hk09msyp0dk50cqpkh07mf4x0bc2fqisqmcv6b1hf"; sha256 = "1cvignn5y6qzrby6qb885yc8zdcdqdr1d50vcvc3gapw2f0gk3zm";
}; };
buildInputs = stdenv.lib.filter (x: x != null) buildInputs = stdenv.lib.filter (x: x != null)

View File

@ -14,11 +14,11 @@
}: }:
let let
version = "2.6.15"; version = "2.6.16";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/avidemux/avidemux/${version}/avidemux_${version}.tar.gz"; url = "mirror://sourceforge/avidemux/avidemux/${version}/avidemux_${version}.tar.gz";
sha256 = "0mr2nll81ki9d1s68klhm19jmr15450wjaws1p0b0y2qqwyrprdh"; sha256 = "0jipvpvw871qhhkyykrrrqc9vfbw24v243vzmm8lqifj73h6qvgc";
}; };
common = { common = {

View File

@ -18,11 +18,11 @@ let
s = # Generated upstream information s = # Generated upstream information
rec { rec {
baseName="compiz"; baseName="compiz";
version="0.9.13.0"; version="0.9.13.1";
name="${baseName}-${version}"; name="${baseName}-${version}";
hash="00m73im5kdpbfjg9ryzxnab5qvx5j51gxwr3wzimkrcbax6vb3ph"; hash="1grc4a4gc662hjs5adzdd3zlgsg1rh1wqm9aanbs8wm0l8mq0m4q";
url="https://launchpad.net/compiz/0.9.13/0.9.13.0/+download/compiz-0.9.13.0.tar.bz2"; url="https://launchpad.net/compiz/0.9.13/0.9.13.1/+download/compiz-0.9.13.1.tar.bz2";
sha256="00m73im5kdpbfjg9ryzxnab5qvx5j51gxwr3wzimkrcbax6vb3ph"; sha256="1grc4a4gc662hjs5adzdd3zlgsg1rh1wqm9aanbs8wm0l8mq0m4q";
}; };
buildInputs = [cmake pkgconfig buildInputs = [cmake pkgconfig
libXrender renderproto gtk2 libwnck pango cairo libXrender renderproto gtk2 libwnck pango cairo

View File

@ -35,12 +35,13 @@ in stdenv.mkDerivation rec {
enableParallelBuilding = true; enableParallelBuilding = true;
requiredSystemFeatures = [ "big-parallel" ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Evolution; homepage = https://wiki.gnome.org/Apps/Evolution;
description = "Personal information management application that provides integrated mail, calendaring and address book functionality"; description = "Personal information management application that provides integrated mail, calendaring and address book functionality";
maintainers = gnome3.maintainers; maintainers = gnome3.maintainers;
license = licenses.lgpl2Plus; license = licenses.lgpl2Plus;
platforms = platforms.linux; platforms = platforms.linux;
requiredSystemFeatures = [ "big-parallel" ];
}; };
} }

View File

@ -35,12 +35,13 @@ in stdenv.mkDerivation rec {
enableParallelBuilding = true; enableParallelBuilding = true;
requiredSystemFeatures = [ "big-parallel" ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Evolution; homepage = https://wiki.gnome.org/Apps/Evolution;
description = "Personal information management application that provides integrated mail, calendaring and address book functionality"; description = "Personal information management application that provides integrated mail, calendaring and address book functionality";
maintainers = gnome3.maintainers; maintainers = gnome3.maintainers;
license = licenses.lgpl2Plus; license = licenses.lgpl2Plus;
platforms = platforms.linux; platforms = platforms.linux;
requiredSystemFeatures = [ "big-parallel" ];
}; };
} }

View File

@ -36,7 +36,8 @@ let
}; };
}; };
in in
kdeWrapper unwrapped kdeWrapper
{ {
inherit unwrapped;
targets = [ "bin/ark" ]; targets = [ "bin/ark" ];
} }

View File

@ -24,8 +24,9 @@ let
]; ];
}; };
in in
kdeWrapper unwrapped kdeWrapper
{ {
inherit unwrapped;
targets = [ "bin/dolphin" ]; targets = [ "bin/dolphin" ];
paths = [ dolphin-plugins konsole.unwrapped ]; paths = [ dolphin-plugins konsole.unwrapped ];
} }

View File

@ -18,4 +18,7 @@ let
]; ];
}; };
in in
kdeWrapper unwrapped { targets = [ "bin/filelight" ]; } kdeWrapper {
inherit unwrapped;
targets = [ "bin/filelight" ];
}

View File

@ -20,7 +20,8 @@ let
]; ];
}; };
in in
kdeWrapper unwrapped { kdeWrapper {
inherit unwrapped;
targets = [ "bin/gwenview" ]; targets = [ "bin/gwenview" ];
paths = [ kipi-plugins ]; paths = [ kipi-plugins ];
} }

View File

@ -24,8 +24,9 @@ let
]; ];
}; };
in in
kdeWrapper unwrapped kdeWrapper
{ {
inherit unwrapped;
targets = [ "bin/kate" "bin/kwrite" ]; targets = [ "bin/kate" "bin/kwrite" ];
paths = [ konsole.unwrapped ]; paths = [ konsole.unwrapped ];
} }

View File

@ -18,4 +18,7 @@ let
]; ];
}; };
in in
kdeWrapper unwrapped { targets = [ "bin/kcalc" ]; } kdeWrapper {
inherit unwrapped;
targets = [ "bin/kcalc" ];
}

View File

@ -15,4 +15,7 @@ let
propagatedBuildInputs = [ ki18n kwidgetsaddons kxmlgui ]; propagatedBuildInputs = [ ki18n kwidgetsaddons kxmlgui ];
}; };
in in
kdeWrapper unwrapped { targets = [ "bin/kcolorchooser" ]; } kdeWrapper {
inherit unwrapped;
targets = [ "bin/kcolorchooser" ];
}

View File

@ -74,8 +74,9 @@ unwrapped = kdeApp {
}; };
}; };
in in
kdeWrapper unwrapped kdeWrapper
{ {
inherit unwrapped;
targets = [ "bin/kdenlive" ]; targets = [ "bin/kdenlive" ];
paths = [ kinit ]; paths = [ kinit ];
} }

View File

@ -18,4 +18,7 @@ let
]; ];
}; };
in in
kdeWrapper unwrapped { targets = [ "bin/kdf" ]; } kdeWrapper {
inherit unwrapped;
targets = [ "bin/kdf" ];
}

View File

@ -16,4 +16,7 @@ let
]; ];
}; };
in in
kdeWrapper unwrapped { targets = [ "bin/khelpcenter" ]; } kdeWrapper {
inherit unwrapped;
targets = [ "bin/khelpcenter" ];
}

View File

@ -15,4 +15,7 @@ let
]; ];
}; };
in in
kdeWrapper unwrapped { targets = [ "bin/kompare" ]; } kdeWrapper {
inherit unwrapped;
targets = [ "bin/kompare" ];
}

View File

@ -24,4 +24,7 @@ let
]; ];
}; };
in in
kdeWrapper unwrapped { targets = [ "bin/konsole" ]; } kdeWrapper {
inherit unwrapped;
targets = [ "bin/konsole" ];
}

View File

@ -30,6 +30,7 @@ let
kxmlgui kxmlgui
]; ];
}; };
in kdeWrapper unwrapped { in kdeWrapper {
inherit unwrapped;
targets = ["bin/kwalletmanager5"]; targets = ["bin/kwalletmanager5"];
} }

View File

@ -18,7 +18,8 @@ let
enableParallelBuilding = true; enableParallelBuilding = true;
}; };
in in
kdeWrapper unwrapped { kdeWrapper {
inherit unwrapped;
targets = [ "bin/marble-qt" ]; targets = [ "bin/marble-qt" ];
paths = [ unwrapped ]; paths = [ unwrapped ];
} }

View File

@ -25,6 +25,7 @@ let
}; };
}; };
in in
kdeWrapper unwrapped { kdeWrapper {
inherit unwrapped;
targets = [ "bin/okular" ]; targets = [ "bin/okular" ];
} }

View File

@ -18,7 +18,8 @@ let
]; ];
}; };
in in
kdeWrapper unwrapped { kdeWrapper {
inherit unwrapped;
targets = [ "bin/spectacle" ]; targets = [ "bin/spectacle" ];
paths = [ kipi-plugins ]; paths = [ kipi-plugins ];
} }

View File

@ -15,6 +15,7 @@ let
]; ];
}; };
in in
kdeWrapper unwrapped { kdeWrapper {
inherit unwrapped;
targets = [ "bin/oxygen-demo5" "bin/oxygen-settings5" ]; targets = [ "bin/oxygen-demo5" "bin/oxygen-settings5" ];
} }

View File

@ -95,6 +95,7 @@ xfce_self = rec { # the lines are very long but it seems better than the even-od
xfce4_xkb_plugin = callPackage ./panel-plugins/xfce4-xkb-plugin.nix { }; xfce4_xkb_plugin = callPackage ./panel-plugins/xfce4-xkb-plugin.nix { };
xfce4_weather_plugin = callPackage ./panel-plugins/xfce4-weather-plugin.nix { }; xfce4_weather_plugin = callPackage ./panel-plugins/xfce4-weather-plugin.nix { };
xfce4_whiskermenu_plugin = callPackage ./panel-plugins/xfce4-whiskermenu-plugin.nix { }; xfce4_whiskermenu_plugin = callPackage ./panel-plugins/xfce4-whiskermenu-plugin.nix { };
xfce4_windowck_plugin = callPackage ./panel-plugins/xfce4-windowck-plugin.nix { };
xfce4_pulseaudio_plugin = callPackage ./panel-plugins/xfce4-pulseaudio-plugin.nix { }; xfce4_pulseaudio_plugin = callPackage ./panel-plugins/xfce4-pulseaudio-plugin.nix { };
}; # xfce_self }; # xfce_self

View File

@ -0,0 +1,30 @@
{ stdenv, fetchFromGitHub, pkgconfig, intltool, python3, imagemagick, libwnck, gtk2
, exo, libxfce4ui, libxfce4util, xfce4panel, xfconf, xfce4_dev_tools }:
stdenv.mkDerivation rec {
p_name = "xfce4-windowck-plugin";
version = "0.4.4";
src = fetchFromGitHub {
owner = "cedl38";
repo = "xfce4-windowck-plugin";
rev = "v${version}";
sha256 = "0c6a1ibh39dpq9x0dha5lsg0vzmgaf051fgwz0nlky0s94nwzvgv";
};
name = "${p_name}-${version}";
buildInputs = [ pkgconfig intltool python3 imagemagick libwnck gtk2
exo libxfce4ui libxfce4util xfce4panel xfconf xfce4_dev_tools ];
preConfigure = "./autogen.sh";
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
description = "Set of two plugins which allows you to put the maximized window title and windows buttons on the panel";
license = licenses.gpl2Plus;
platforms = platforms.unix;
maintainers = [ maintainers.volth ];
};
}

View File

@ -0,0 +1,59 @@
{stdenv, fetchurl
, libtool, autoconf, automake
, gmp, mpfr, libffi, makeWrapper
, noUnicode ? false
, gcc
, threadSupport ? true
}:
let
s = # Generated upstream information
rec {
baseName="ecl";
version="16.1.2";
name="${baseName}-${version}";
url="https://common-lisp.net/project/ecl/static/files/release/ecl-16.1.2.tgz";
sha256="16ab8qs3awvdxy8xs8jy82v8r04x4wr70l9l2j45vgag18d2nj1d";
};
buildInputs = [
libtool autoconf automake makeWrapper
];
propagatedBuildInputs = [
libffi gmp mpfr gcc
];
in
stdenv.mkDerivation {
inherit (s) name version;
inherit buildInputs propagatedBuildInputs;
src = fetchurl {
inherit (s) url sha256;
};
configureFlags = [
(if threadSupport then "--enable-threads" else "--disable-threads")
"--with-gmp-prefix=${gmp.dev}"
"--with-libffi-prefix=${libffi.dev}"
]
++
(stdenv.lib.optional (! noUnicode)
"--enable-unicode")
;
hardeningDisable = [ "format" ];
postInstall = ''
sed -e 's/@[-a-zA-Z_]*@//g' -i $out/bin/ecl-config
wrapProgram "$out/bin/ecl" \
--prefix PATH ':' "${gcc}/bin" \
--prefix NIX_LDFLAGS ' ' "-L${gmp.lib or gmp.out or gmp}/lib" \
--prefix NIX_LDFLAGS ' ' "-L${libffi.lib or libffi.out or libffi}/lib"
'';
meta = {
inherit (s) version;
description = "Lisp implementation aiming to be small, fast and easy to embed";
license = stdenv.lib.licenses.mit ;
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
};
}

View File

@ -9,11 +9,11 @@ let
s = # Generated upstream information s = # Generated upstream information
rec { rec {
baseName="ecl"; baseName="ecl";
version="16.1.2"; version="16.1.3";
name="${baseName}-${version}"; name="${baseName}-${version}";
hash="16ab8qs3awvdxy8xs8jy82v8r04x4wr70l9l2j45vgag18d2nj1d"; hash="0m0j24w5d5a9dwwqyrg0d35c0nys16ijb4r0nyk87yp82v38b9bn";
url="https://common-lisp.net/project/ecl/static/files/release/ecl-16.1.2.tgz"; url="https://common-lisp.net/project/ecl/static/files/release/ecl-16.1.3.tgz";
sha256="16ab8qs3awvdxy8xs8jy82v8r04x4wr70l9l2j45vgag18d2nj1d"; sha256="0m0j24w5d5a9dwwqyrg0d35c0nys16ijb4r0nyk87yp82v38b9bn";
}; };
buildInputs = [ buildInputs = [
libtool autoconf automake makeWrapper libtool autoconf automake makeWrapper

View File

@ -1,44 +1,52 @@
{ stdenv, fetchFromGitHub, python }: { stdenv, fetchFromGitHub, cmake, python, ... }:
let let
rev = "1.36.4"; rev = "1.37.1";
gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "emscripten-fastcomp-${rev}"; name = "emscripten-fastcomp-${rev}";
srcFC = fetchFromGitHub { src = fetchFromGitHub {
owner = "kripken"; owner = "kripken";
repo = "emscripten-fastcomp"; repo = "emscripten-fastcomp";
sha256 = "0838rl0n9hyq5dd0gmj5rvigbmk5mhrhzyjk0zd8mjs2mk8z510l"; sha256 = "08jci6h73j4pcd6iq5r4zn8c6qpd6qxc7xivxh3iama9hghmxyk9";
inherit rev; inherit rev;
}; };
srcFL = fetchFromGitHub { srcFL = fetchFromGitHub {
owner = "kripken"; owner = "kripken";
repo = "emscripten-fastcomp-clang"; repo = "emscripten-fastcomp-clang";
sha256 = "169hfabamv3jmf88flhl4scwaxdh24196gwpz3sdb26lzcns519q"; sha256 = "053svm8vnsma61jzzr8n1224brmjw4pzvklh572bm1p7yg32chaw";
inherit rev; inherit rev;
}; };
buildInputs = [ python ]; nativeBuildInputs = [ cmake python ];
buildCommand = '' preConfigure = ''
cp -as ${srcFC} $TMPDIR/src cp -Lr ${srcFL} tools/clang
chmod +w $TMPDIR/src/tools chmod +w -R tools/clang
cp -as ${srcFL} $TMPDIR/src/tools/clang
chmod +w $TMPDIR/src
mkdir $TMPDIR/src/build
cd $TMPDIR/src/build
../configure --enable-optimized --disable-assertions --enable-targets=host,js
make
cp -a Release/bin $out
''; '';
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DLLVM_TARGETS_TO_BUILD='X86;JSBackend'"
"-DLLVM_INCLUDE_EXAMPLES=OFF"
"-DLLVM_INCLUDE_TESTS=OFF"
# "-DCLANG_INCLUDE_EXAMPLES=OFF"
"-DCLANG_INCLUDE_TESTS=OFF"
] ++ (stdenv.lib.optional stdenv.isLinux
# necessary for clang to find crtend.o
"-DGCC_INSTALL_PREFIX=${gcc}"
);
enableParallelBuilding = true;
passthru = {
isClang = true;
inherit gcc;
};
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://github.com/kripken/emscripten-fastcomp; homepage = https://github.com/kripken/emscripten-fastcomp;
description = "Emscripten llvm"; description = "Emscripten LLVM";
platforms = platforms.all; platforms = platforms.all;
maintainers = with maintainers; [ qknight matthewbauer ]; maintainers = with maintainers; [ qknight matthewbauer ];
license = stdenv.lib.licenses.ncsa; license = stdenv.lib.licenses.ncsa;

View File

@ -1,7 +1,7 @@
{ stdenv, fetchFromGitHub, emscriptenfastcomp, python, nodejs, closurecompiler, jre }: { stdenv, fetchFromGitHub, emscriptenfastcomp, python, nodejs, closurecompiler, jre }:
let let
rev = "1.36.4"; rev = "1.37.1";
appdir = "share/emscripten"; appdir = "share/emscripten";
in in
@ -11,7 +11,7 @@ stdenv.mkDerivation {
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "kripken"; owner = "kripken";
repo = "emscripten"; repo = "emscripten";
sha256 = "1c9592i891z1v9rp4a4lnsp14nwiqfxnh37g6xwwjd1bqx7x4hn7"; sha256 = "0xl8lv0ihxsnwnhma3i34pkbz0v1yyc93ac6mdqmzv6fx2wczm04";
inherit rev; inherit rev;
}; };
@ -23,11 +23,13 @@ stdenv.mkDerivation {
sed -i -e "s,EM_CONFIG = '~/.emscripten',EM_CONFIG = '$out/${appdir}/config'," $out/${appdir}/tools/shared.py sed -i -e "s,EM_CONFIG = '~/.emscripten',EM_CONFIG = '$out/${appdir}/config'," $out/${appdir}/tools/shared.py
sed -i -e 's,^.*did not see a source tree above the LLVM.*$, return True,' $out/${appdir}/tools/shared.py sed -i -e 's,^.*did not see a source tree above the LLVM.*$, return True,' $out/${appdir}/tools/shared.py
sed -i -e 's,def check_sanity(force=False):,def check_sanity(force=False):\n return,' $out/${appdir}/tools/shared.py sed -i -e 's,def check_sanity(force=False):,def check_sanity(force=False):\n return,' $out/${appdir}/tools/shared.py
# fixes cmake support
sed -i -e "s/print \('emcc (Emscript.*\)/sys.stderr.write(\1); sys.stderr.flush()/g" $out/${appdir}/emcc.py
mkdir $out/bin mkdir $out/bin
ln -s $out/${appdir}/{em++,em-config,emar,embuilder.py,emcc,emcmake,emconfigure,emlink.py,emmake,emranlib,emrun,emscons} $out/bin ln -s $out/${appdir}/{em++,em-config,emar,embuilder.py,emcc,emcmake,emconfigure,emlink.py,emmake,emranlib,emrun,emscons} $out/bin
echo "EMSCRIPTEN_ROOT = '$out/${appdir}'" > $out/${appdir}/config echo "EMSCRIPTEN_ROOT = '$out/${appdir}'" > $out/${appdir}/config
echo "LLVM_ROOT = '${emscriptenfastcomp}'" >> $out/${appdir}/config echo "LLVM_ROOT = '${emscriptenfastcomp}/bin'" >> $out/${appdir}/config
echo "PYTHON = '${python}/bin/python'" >> $out/${appdir}/config echo "PYTHON = '${python}/bin/python'" >> $out/${appdir}/config
echo "NODE_JS = '${nodejs}/bin/node'" >> $out/${appdir}/config echo "NODE_JS = '${nodejs}/bin/node'" >> $out/${appdir}/config
echo "JS_ENGINES = [NODE_JS]" >> $out/${appdir}/config echo "JS_ENGINES = [NODE_JS]" >> $out/${appdir}/config

View File

@ -0,0 +1,46 @@
{ stdenv, fetchgit, mpfr, m4, binutils, fetchcvs, emacs, zlib, which
, texinfo, libX11, xproto, inputproto, libXi, gmp, readline, strace
, libXext, xextproto, libXt, libXaw, libXmu } :
assert stdenv ? cc ;
assert stdenv.cc.isGNU ;
assert stdenv.cc ? libc ;
assert stdenv.cc.libc != null ;
stdenv.mkDerivation rec {
name = "gcl-${version}";
version = "2.6.13pre50";
src = fetchgit {
sha256 = "0vpxb6z5g9fjavrgx8gz8fsjvskfz64f63qibh5s00fvvndlwi88";
url = "http://git.savannah.gnu.org/r/gcl.git";
rev = "refs/tags/Version_2_6_13pre50";
};
postPatch = ''
sed -e 's/<= obj-date/<= (if (= 0 obj-date) 1 obj-date)/' -i lsp/make.lisp
'';
sourceRoot = "gcl/gcl";
patches = [];
buildInputs = [
mpfr m4 binutils emacs gmp
libX11 xproto inputproto libXi
libXext xextproto libXt libXaw libXmu
zlib which texinfo readline strace
];
configureFlags = [
"--enable-ansi"
];
hardeningDisable = [ "pic" "bindnow" ];
meta = {
description = "GNU Common Lisp compiler working via GCC";
maintainers = [ stdenv.lib.maintainers.raskin ];
platforms = stdenv.lib.platforms.linux;
};
}

View File

@ -1,13 +1,13 @@
{ stdenv, fetchgit, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils { stdenv, fetchgit, bootPkgs, perl, gmp, ncurses, libiconv, binutils, coreutils
, autoconf, automake, happy, alex, crossSystem, selfPkgs, cross ? null , autoconf, automake, happy, alex, python3, crossSystem, selfPkgs, cross ? null
}: }:
let let
inherit (bootPkgs) ghc; inherit (bootPkgs) ghc;
commonBuildInputs = [ ghc perl autoconf automake happy alex ]; commonBuildInputs = [ ghc perl autoconf automake happy alex python3 ];
version = "8.1.20161115"; version = "8.1.20161224";
commonPreConfigure = '' commonPreConfigure = ''
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
@ -19,27 +19,26 @@ let
in stdenv.mkDerivation (rec { in stdenv.mkDerivation (rec {
inherit version; inherit version;
name = "ghc-${version}"; name = "ghc-${version}";
rev = "017d11e0a36866b05ace32ece1af11adf652a619"; rev = "2689a1692636521777f007861a484e7064b2d696";
src = fetchgit { src = fetchgit {
url = "git://git.haskell.org/ghc.git"; url = "git://git.haskell.org/ghc.git";
inherit rev; inherit rev;
sha256 = "1ryggmz961qd0fl50rkjjvi6g9azwla2vx9310a9nzjaj5x6ib4y"; sha256 = "0rk6xy7kgxx849nprq1ji459p88nyy93236g841m5p6mdh7mmrcr";
}; };
postPatch = '' postPatch = "patchShebangs .";
preConfigure = ''
echo ${version} >VERSION echo ${version} >VERSION
echo ${rev} >GIT_COMMIT_ID echo ${rev} >GIT_COMMIT_ID
patchShebangs .
./boot ./boot
''; '' + commonPreConfigure ;
buildInputs = commonBuildInputs; buildInputs = commonBuildInputs;
enableParallelBuilding = true; enableParallelBuilding = true;
preConfigure = commonPreConfigure;
configureFlags = [ configureFlags = [
"CC=${stdenv.cc}/bin/cc" "CC=${stdenv.cc}/bin/cc"
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib" "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
@ -52,6 +51,8 @@ in stdenv.mkDerivation (rec {
# that in turn causes GHCi to abort # that in turn causes GHCi to abort
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols"; stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols";
checkTarget = "test";
postInstall = '' postInstall = ''
paxmark m $out/lib/${name}/bin/{ghc,haddock} paxmark m $out/lib/${name}/bin/{ghc,haddock}

View File

@ -1,83 +0,0 @@
{ stdenv, fetchgit, bootPkgs, perl, gmp, ncurses, libiconv, autoconf, automake, happy, alex }:
let
inherit (bootPkgs) ghc;
buildMK = ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp.out}/lib"
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses.dev}/include"
libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses.out}/lib"
DYNAMIC_BY_DEFAULT = NO
SRC_HC_OPTS = -H64m -O -fasm
GhcLibHcOpts = -O -dcore-lint
GhcStage1HcOpts = -Rghc-timing -O -fasm
GhcStage2HcOpts = -Rghc-timing -O0 -DDEBUG
SplitObjs = NO
HADDOCK_DOCS = NO
BUILD_DOCBOOK_HTML = NO
BUILD_DOCBOOK_PS = NO
BUILD_DOCBOOK_PDF = NO
LAX_DEPENDENCIES = YES
${stdenv.lib.optionalString stdenv.isDarwin ''
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include"
libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib"
''}
'';
in
stdenv.mkDerivation rec {
version = "7.11.20150826";
name = "ghc-${version}"; # We cannot add a "nokinds" tag here; see git comment for details.
rev = "5f7f64b7fc879b5ecfd6987ec5565bd90f7c0179";
src = fetchgit {
url = "https://github.com/goldfirere/ghc.git";
inherit rev;
sha256 = "183l4v6aw52r3ydwl8bxg1lh3cwfakb35rpy6mjg23dqmqsynmcn";
};
patches = [ ./relocation.patch ];
postUnpack = ''
pushd ghc-${builtins.substring 0 7 rev}
echo ${version} >VERSION
echo ${rev} >GIT_COMMIT_ID
patchShebangs .
./boot
popd
'';
buildInputs = [ ghc perl autoconf automake happy alex ];
preConfigure = ''
echo >mk/build.mk "${buildMK}"
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
'' + stdenv.lib.optionalString (!stdenv.isDarwin) ''
export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}"
'';
configureFlags = [
"--with-gcc=${stdenv.cc}/bin/cc"
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
];
enableParallelBuilding = true;
# required, because otherwise all symbols from HSffi.o are stripped, and
# that in turn causes GHCi to abort
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols";
passthru = {
inherit bootPkgs;
};
meta = {
homepage = "http://haskell.org/ghc";
description = "The dependently-typed 'nokinds' branch of the Glasgow Haskell Compiler by Richard Eisenberg";
maintainers = with stdenv.lib.maintainers; [ deepfire ];
inherit (ghc.meta) license platforms;
};
}

View File

@ -1,6 +1,6 @@
{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC, ccWrapperFun }: { newScope, stdenv, cmake, libxml2, python2, isl, fetchurl, overrideCC, wrapCC, ccWrapperFun }:
let let
callPackage = newScope (self // { inherit stdenv isl version fetch; }); callPackage = newScope (self // { inherit stdenv cmake libxml2 python2 isl version fetch; });
version = "3.7.1"; version = "3.7.1";

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, makeWrapper, cacert, zlib }: { stdenv, fetchurl, makeWrapper, cacert, zlib, buildRustPackage }:
let let
inherit (stdenv.lib) optionalString; inherit (stdenv.lib) optionalString;
@ -9,7 +9,7 @@ let
bootstrapHash = bootstrapHash =
if stdenv.system == "x86_64-linux" if stdenv.system == "x86_64-linux"
then "1afsqaavhwiaxm38zr08cbq0985c7lrb1jzdcmq0jh6y8rb8ikff" then "05bppmc6hqgv2g4x76rj95xf40x2aikqmcnql5li27rqwliyxznj"
else throw "missing boostrap hash for platform ${stdenv.system}"; else throw "missing boostrap hash for platform ${stdenv.system}";
needsPatchelf = stdenv.isLinux; needsPatchelf = stdenv.isLinux;
@ -19,10 +19,12 @@ let
sha256 = bootstrapHash; sha256 = bootstrapHash;
}; };
version = "2016-12-05"; version = "2016-12-29";
in in
rec { rec {
inherit buildRustPackage;
rustc = stdenv.mkDerivation rec { rustc = stdenv.mkDerivation rec {
name = "rustc-nightly-${version}"; name = "rustc-nightly-${version}";
@ -49,5 +51,33 @@ rec {
"$out/bin/rustc" "$out/bin/rustc"
''} ''}
''; '';
};
cargo = stdenv.mkDerivation rec {
name = "cargo-nightly-${version}";
inherit version;
inherit src;
meta = with stdenv.lib; {
homepage = http://www.rust-lang.org/;
description = "A safe, concurrent, practical language";
maintainers = with maintainers; [ qknight ];
license = [ licenses.mit licenses.asl20 ];
};
buildInputs = [ makeWrapper ];
phases = ["unpackPhase" "installPhase"];
installPhase = ''
./install.sh --prefix=$out \
--components=cargo
${optionalString needsPatchelf ''
patchelf \
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
"$out/bin/cargo"
''}
'';
}; };
} }

View File

@ -0,0 +1,104 @@
{ stdenv, fetchurl, writeText, sbclBootstrap
, sbclBootstrapHost ? "${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit"
, threadSupport ? (stdenv.isi686 || stdenv.isx86_64)
# Meant for sbcl used for creating binaries portable to non-NixOS via save-lisp-and-die.
# Note that the created binaries still need `patchelf --set-interpreter ...`
# to get rid of ${glibc} dependency.
, purgeNixReferences ? false
}:
stdenv.mkDerivation rec {
name = "sbcl-${version}";
version = "1.3.12";
src = fetchurl {
url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2";
sha256 = "1hjr2xqazy4j0m58y4na6fz8ii3xflqairxy7vpd7ajbs00yqfc0";
};
patchPhase = ''
echo '"${version}.nixos"' > version.lisp-expr
echo "
(lambda (features)
(flet ((enable (x)
(pushnew x features))
(disable (x)
(setf features (remove x features))))
''
+ (if threadSupport then "(enable :sb-thread)" else "(disable :sb-thread)")
+ stdenv.lib.optionalString stdenv.isArm "(enable :arm)"
+ ''
)) " > customize-target-features.lisp
pwd
# SBCL checks whether files are up-to-date in many places..
# Unfortunately, same timestamp is not good enough
sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp
sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp
sed -i src/cold/slam.lisp -e \
'/file-write-date input/a)'
sed -i src/cold/slam.lisp -e \
'/file-write-date output/i(or (and (= 2208988801 (file-write-date output)) (= 2208988801 (file-write-date input)))'
sed -i src/code/target-load.lisp -e \
'/date defaulted-fasl/a)'
sed -i src/code/target-load.lisp -e \
'/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))'
# Fix the tests
sed -e '/deftest pwent/inil' -i contrib/sb-posix/posix-tests.lisp
sed -e '/deftest grent/inil' -i contrib/sb-posix/posix-tests.lisp
sed -e '/deftest .*ent.non-existing/,+5d' -i contrib/sb-posix/posix-tests.lisp
sed -e '/deftest \(pw\|gr\)ent/,+3d' -i contrib/sb-posix/posix-tests.lisp
sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp
sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp
# Use whatever `cc` the stdenv provides
substituteInPlace src/runtime/Config.x86-64-darwin --replace gcc cc
substituteInPlace src/runtime/Config.x86-64-darwin \
--replace mmacosx-version-min=10.4 mmacosx-version-min=10.5
''
+ (if purgeNixReferences
then
# This is the default location to look for the core; by default in $out/lib/sbcl
''
sed 's@^\(#define SBCL_HOME\) .*$@\1 "/no-such-path"@' \
-i src/runtime/runtime.c
''
else
# Fix software version retrieval
''
sed -e "s@/bin/uname@$(command -v uname)@g" -i src/code/*-os.lisp
''
);
preBuild = ''
export INSTALL_ROOT=$out
mkdir -p test-home
export HOME=$PWD/test-home
'';
buildPhase = ''
sh make.sh --prefix=$out --xc-host="${sbclBootstrapHost}"
'';
installPhase = ''
INSTALL_ROOT=$out sh install.sh
'';
# Specifying $SBCL_HOME is only truly needed with `purgeNixReferences = true`.
setupHook = writeText "setupHook.sh" ''
envHooks+=(_setSbclHome)
_setSbclHome() {
export SBCL_HOME='@out@/lib/sbcl/'
}
'';
meta = sbclBootstrap.meta // {
inherit version;
updateWalker = true;
};
}

View File

@ -9,11 +9,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "sbcl-${version}"; name = "sbcl-${version}";
version = "1.3.12"; version = "1.3.13";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2"; url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2";
sha256 = "1hjr2xqazy4j0m58y4na6fz8ii3xflqairxy7vpd7ajbs00yqfc0"; sha256 = "1k3nij1pchkard02p51mbbsn4rrj116v1apjjpd3f9h2m7j3asac";
}; };
patchPhase = '' patchPhase = ''

View File

@ -1095,7 +1095,7 @@ self: super: {
# https://github.com/NixOS/nixpkgs/issues/19612 # https://github.com/NixOS/nixpkgs/issues/19612
wai-app-file-cgi = (dontCheck super.wai-app-file-cgi).overrideScope (self: super: { wai-app-file-cgi = (dontCheck super.wai-app-file-cgi).overrideScope (self: super: {
http-client = self.http-client_0_5_3_2; http-client = self.http-client_0_5_5;
http-client-tls = self.http-client-tls_0_3_3; http-client-tls = self.http-client-tls_0_3_3;
http-conduit = self.http-conduit_2_2_3; http-conduit = self.http-conduit_2_2_3;
}); });

View File

@ -1,102 +0,0 @@
{ pkgs }:
with import ./lib.nix { inherit pkgs; };
self: super: {
# Use the latest LLVM.
inherit (pkgs) llvmPackages;
# Disable GHC 7.11.x core libraries.
array = null;
base = null;
binary = null;
bin-package-db = null;
bytestring = null;
Cabal = null;
containers = null;
deepseq = null;
directory = null;
filepath = null;
ghc-prim = null;
haskeline = null;
hoopl = null;
hpc = null;
integer-gmp = null;
pretty = null;
process = null;
rts = null;
template-haskell = null;
terminfo = null;
time = null;
transformers = null;
unix = null;
xhtml = null;
# Don't use jailbreak built with Cabal 1.22.x because of https://github.com/peti/jailbreak-cabal/issues/9.
jailbreak-cabal = pkgs.haskell.packages.ghc784.jailbreak-cabal;
# GHC 7.10.x's Haddock binary cannot generate hoogle files.
# https://ghc.haskell.org/trac/ghc/ticket/9921
mkDerivation = drv: super.mkDerivation (drv // { doHoogle = false; doHaddock = false; });
# haddock: No input file(s).
nats = dontHaddock super.nats;
bytestring-builder = dontHaddock super.bytestring-builder;
# We have time 1.5
aeson = disableCabalFlag super.aeson "old-locale";
# Show works differently for record syntax now, breaking haskell-src-exts' parser tests
# https://github.com/haskell-suite/haskell-src-exts/issues/224
haskell-src-exts = dontCheck super.haskell-src-exts;
mono-traversable = appendPatch super.mono-traversable (pkgs.fetchpatch {
url = "https://github.com/snoyberg/mono-traversable/pull/77.patch";
sha256 = "1qrvrh3cqfkymi5yb9y9z88rq4n7ag0ac2k00mcnqh4dz1vh4fg1";
});
yesod-auth = appendPatch super.yesod-auth (pkgs.fetchpatch {
url = "https://github.com/yesodweb/yesod/pull/1006.patch";
sha256 = "0l6wjj8cfz6jy6j92kywsccafyffhlm5240q82bzirb278adqvar";
stripLen = 1;
});
# Setup: At least the following dependencies are missing: base <4.8
hspec-expectations = overrideCabal super.hspec-expectations (drv: {
postPatch = "sed -i -e 's|base < 4.8|base|' hspec-expectations.cabal";
});
utf8-string = overrideCabal super.utf8-string (drv: {
postPatch = "sed -i -e 's|base >= 3 && < 4.8|base|' utf8-string.cabal";
});
# bos/attoparsec#92
attoparsec = dontCheck super.attoparsec;
# test suite hangs silently for at least 10 minutes
split = dontCheck super.split;
# Test suite fails with some (seemingly harmless) error.
# https://code.google.com/p/scrapyourboilerplate/issues/detail?id=24
syb = dontCheck super.syb;
# Test suite has stricter version bounds
retry = dontCheck super.retry;
# Test suite fails with time >= 1.5
http-date = dontCheck super.http-date;
# Version 1.19.5 fails its test suite.
happy = dontCheck super.happy;
# Workaround for a workaround, see comment for "ghcjs" flag.
jsaddle = let jsaddle' = disableCabalFlag super.jsaddle "ghcjs";
in addBuildDepends jsaddle' [ self.glib self.gtk3 self.webkitgtk3
self.webkitgtk3-javascriptcore ];
# The compat library is empty in the presence of mtl 2.2.x.
mtl-compat = dontHaddock super.mtl-compat;
# Won't work with LLVM 3.5.
llvm-general = markBrokenVersion "3.4.5.3" super.llvm-general;
}

View File

@ -86,7 +86,7 @@ let
# We cannot enable -j<n> parallelism for libraries because GHC is far more # We cannot enable -j<n> parallelism for libraries because GHC is far more
# likely to generate a non-determistic library ID in that case. Further # likely to generate a non-determistic library ID in that case. Further
# details are at <https://github.com/peti/ghc-library-id-bug>. # details are at <https://github.com/peti/ghc-library-id-bug>.
enableParallelBuilding = versionOlder "7.8" ghc.version && !hasActiveLibrary; enableParallelBuilding = (versionOlder "7.8" ghc.version && !hasActiveLibrary) || versionOlder "8.0.1" ghc.version;
crossCabalFlags = [ crossCabalFlags = [
"--with-ghc=${ghc.cross.config}-ghc" "--with-ghc=${ghc.cross.config}-ghc"
@ -114,7 +114,6 @@ let
(optionalString (isGhcjs || versionOlder "7" ghc.version) (enableFeature enableStaticLibraries "library-vanilla")) (optionalString (isGhcjs || versionOlder "7" ghc.version) (enableFeature enableStaticLibraries "library-vanilla"))
(optionalString (isGhcjs || versionOlder "7.4" ghc.version) (enableFeature enableSharedExecutables "executable-dynamic")) (optionalString (isGhcjs || versionOlder "7.4" ghc.version) (enableFeature enableSharedExecutables "executable-dynamic"))
(optionalString (isGhcjs || versionOlder "7" ghc.version) (enableFeature doCheck "tests")) (optionalString (isGhcjs || versionOlder "7" ghc.version) (enableFeature doCheck "tests"))
(optionalString (versionOlder "8.0.1" ghc.version) "--ghc-option=-j$NIX_BUILD_CORES")
] ++ optionals isGhcjs [ ] ++ optionals isGhcjs [
"--with-hsc2hs=${nativeGhc}/bin/hsc2hs" "--with-hsc2hs=${nativeGhc}/bin/hsc2hs"
"--ghcjs" "--ghcjs"
@ -245,41 +244,9 @@ stdenv.mkDerivation ({
runHook postConfigure runHook postConfigure
''; '';
# The darwin pre/post build sections are a workaround https://github.com/haskell/cabal/issues/4183
# It seems like --extra-lib-dirs from the previous steps is not detected properly,
# to work around this we build using a DYLD_LIBRARY_PATH and fixup the build afterwards.
buildPhase = '' buildPhase = ''
runHook preBuild runHook preBuild
${optionalString stdenv.isDarwin ''
local inputClosure=""
for i in $propagatedNativeBuildInputs $nativeBuildInputs; do
findInputs $i inputClosure propagated-native-build-inputs
done
local -a inputLibs=()
for p in $inputClosure; do
if [ -d "$p/lib/${ghc.name}/package.conf.d" ]; then
continue
fi
if [ -d "$p/lib" ]; then
inputLibs+="$p/lib"
fi
done
for lib in $inputLibs; do
export DYLD_LIBRARY_PATH="$lib:''${DYLD_LIBRARY_PATH:+:$DYLD_LIBRARY_PATH}"
done
''}
${setupCommand} build ${buildTarget}${crossCabalFlagsString} ${setupCommand} build ${buildTarget}${crossCabalFlagsString}
${optionalString stdenv.isDarwin ''
unset DYLD_LIBRARY_PATH
local outputLib=dist/build/*-ghc${ghc.version}.dylib
for lib in $inputLib/*.dylib; do
for name in $(otool -L $outputLib | awk '$1 ~ /^'$(basename lib)'/ {print $1}' | cat); do
install_name_tool -change $name $lib $outputLib
done
done
''}
runHook postBuild runHook postBuild
''; '';

View File

@ -3,10 +3,10 @@ let
s = # Generated upstream information s = # Generated upstream information
rec { rec {
baseName="angelscript"; baseName="angelscript";
version = "2.31.1"; version = "2.31.2";
name="${baseName}-${version}"; name="${baseName}-${version}";
url="http://www.angelcode.com/angelscript/sdk/files/angelscript_${version}.zip"; url="http://www.angelcode.com/angelscript/sdk/files/angelscript_${version}.zip";
sha256 = "00z0x2w1dnfd2h8xvmq3qy2n8gqxyi9gxwnsz0q420by8vnrljmh"; sha256 = "1cl1yg36ad4wq0vks4xg0hv7iyvq6yzsd4y1jng5qdf8qybq02qc";
}; };
buildInputs = [ buildInputs = [
unzip unzip

View File

@ -0,0 +1,94 @@
{ stdenv, fetchurl, CF, configd, coreutils }:
with stdenv.lib;
let
mkPaths = paths: {
C_INCLUDE_PATH = makeSearchPathOutput "dev" "include" paths;
LIBRARY_PATH = makeLibraryPath paths;
};
in
stdenv.mkDerivation rec {
name = "python-boot-${version}";
version = "2.7.12";
libPrefix = "python2.7";
src = fetchurl {
url = "https://www.python.org/ftp/python/2.7.12/Python-${version}.tar.xz";
sha256 = "0y7rl603vmwlxm6ilkhc51rx2mfj14ckcz40xxgs0ljnvlhp30yp";
};
inherit (mkPaths buildInputs) C_INCLUDE_PATH LIBRARY_PATH;
LDFLAGS = optionalString (!stdenv.isDarwin) "-lgcc_s";
NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin "-msse2";
buildInputs = optionals stdenv.isDarwin [ CF configd ];
patches =
[ # Look in C_INCLUDE_PATH and LIBRARY_PATH for stuff.
./search-path.patch
# Python recompiles a Python if the mtime stored *in* the
# pyc/pyo file differs from the mtime of the source file. This
# doesn't work in Nix because Nix changes the mtime of files in
# the Nix store to 1. So treat that as a special case.
./nix-store-mtime.patch
# patch python to put zero timestamp into pyc
# if DETERMINISTIC_BUILD env var is set
./deterministic-build.patch
];
DETERMINISTIC_BUILD = 1;
preConfigure = ''
# Purity.
for i in /usr /sw /opt /pkg; do
substituteInPlace ./setup.py --replace $i /no-such-path
done
'' + optionalString (stdenv ? cc && stdenv.cc.libc != null) ''
for i in Lib/plat-*/regen; do
substituteInPlace $i --replace /usr/include/ ${stdenv.cc.libc}/include/
done
'' + optionalString stdenv.isDarwin ''
substituteInPlace configure --replace '`/usr/bin/arch`' '"i386"'
substituteInPlace Lib/multiprocessing/__init__.py \
--replace 'os.popen(comm)' 'os.popen("${coreutils}/bin/nproc")'
'';
configureFlags = [ "--enable-shared" "--with-threads" "--enable-unicode=ucs4" ]
++ optionals stdenv.isCygwin [ "ac_cv_func_bind_textdomain_codeset=yes" ]
++ optionals stdenv.isDarwin [ "--disable-toolbox-glue" ];
postInstall =
''
ln -s $out/share/man/man1/{python2.7.1.gz,python.1.gz}
paxmark E $out/bin/python2.7
rm "$out"/lib/python*/plat-*/regen # refers to glibc.dev
'';
enableParallelBuilding = true;
meta = {
homepage = "http://python.org";
description = "A high-level dynamically-typed programming language";
longDescription = ''
Python is a remarkably powerful dynamic programming language that
is used in a wide variety of application domains. Some of its key
distinguishing features include: clear, readable syntax; strong
introspection capabilities; intuitive object orientation; natural
expression of procedural code; full modularity, supporting
hierarchical packages; exception-based error handling; and very
high level dynamic data types.
'';
license = stdenv.lib.licenses.psfl;
platforms = stdenv.lib.platforms.all;
maintainers = with stdenv.lib.maintainers; [ lnl7 chaoflow domenkozar ];
};
}

View File

@ -8,8 +8,8 @@
assert zlibSupport -> zlib != null; assert zlibSupport -> zlib != null;
let let
majorVersion = "5.4"; majorVersion = "5.6";
minorVersion = "1"; minorVersion = "0";
minorVersionSuffix = ""; minorVersionSuffix = "";
pythonVersion = "2.7"; pythonVersion = "2.7";
version = "${majorVersion}.${minorVersion}${minorVersionSuffix}"; version = "${majorVersion}.${minorVersion}${minorVersionSuffix}";
@ -23,7 +23,7 @@ let
src = fetchurl { src = fetchurl {
url = "https://bitbucket.org/pypy/pypy/get/release-pypy${pythonVersion}-v${version}.tar.bz2"; url = "https://bitbucket.org/pypy/pypy/get/release-pypy${pythonVersion}-v${version}.tar.bz2";
sha256 = "1x8sa5x1nkrb8wrmicri94ji8kvyxihyryi8br5fk7gak0agcai0"; sha256 = "145a0kd5c0s1v2rpavw9ihncfb05s2x7chc70v8fssvyxq601911";
}; };
# http://bugs.python.org/issue27369 # http://bugs.python.org/issue27369

View File

@ -11,18 +11,18 @@ stdenv.mkDerivation rec {
sha256 = "0z8lwq53yk4h7pgibicx3q9idz15qb95r0pjpz0j5vql6qh46rja"; sha256 = "0z8lwq53yk4h7pgibicx3q9idz15qb95r0pjpz0j5vql6qh46rja";
}; };
meta = with stdenv.lib; {
inherit (src.meta) homepage;
description = "C++ wrapper for czmq. Aims to be minimal, simple and consistent";
license = licenses.lgpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ chris-martin ];
};
nativeBuildInputs = [ autoreconfHook pkgconfig ]; nativeBuildInputs = [ autoreconfHook pkgconfig ];
propagatedBuildInputs = [ czmq ]; propagatedBuildInputs = [ czmq ];
# https://github.com/zeromq/czmqpp/issues/42 # https://github.com/zeromq/czmqpp/issues/42
patches = [ ./socket.patch ]; patches = [ ./socket.patch ];
meta = with stdenv.lib; {
inherit (src.meta) homepage;
description = "C++ wrapper for czmq. Aims to be minimal, simple and consistent";
license = licenses.lgpl3;
platforms = platforms.linux ++ platforms.darwin;
maintainers = with maintainers; [ chris-martin ];
};
} }

View File

@ -0,0 +1,25 @@
{stdenv, fetchurl, cmake}:
let
version = "3.3.1";
in
stdenv.mkDerivation {
name = "eigen-${version}";
src = fetchurl {
url = "http://bitbucket.org/eigen/eigen/get/${version}.tar.gz";
name = "eigen-${version}.tar.gz";
sha256 = "141axgv5kykq7125scisjvnfcdx7qcj8n8zlk7g09r7fhqgjr79w";
};
nativeBuildInputs = [ cmake ];
meta = with stdenv.lib; {
description = "C++ template library for linear algebra: vectors, matrices, and related algorithms";
license = licenses.lgpl3Plus;
homepage = http://eigen.tuxfamily.org ;
platforms = platforms.unix;
maintainers = with stdenv.lib.maintainers; [ sander urkud raskin ];
inherit version;
};
}

View File

@ -1,27 +0,0 @@
{ stdenv, fetchurl, pkgconfig, cmake, zlib, python, libssh2, openssl, http-parser, libiconv }:
stdenv.mkDerivation (rec {
version = "0.23.2";
name = "libgit2-${version}";
src = fetchurl {
name = "${name}.tar.gz";
url = "https://github.com/libgit2/libgit2/tarball/v${version}";
sha256 = "1d3901bmgvdnmzrx21afi1d0llsqmca3ckj942p0i2wpdpr1kbcp";
};
cmakeFlags = "-DTHREADSAFE=ON";
nativeBuildInputs = [ cmake python pkgconfig ];
buildInputs = [ zlib libssh2 openssl http-parser ];
meta = {
description = "the Git linkable library";
homepage = http://libgit2.github.com/;
license = stdenv.lib.licenses.gpl2;
platforms = with stdenv.lib.platforms; all;
};
} // stdenv.lib.optionalAttrs (!stdenv.isLinux) {
NIX_LDFLAGS = "-liconv";
propagatedBuildInputs = [ libiconv ];
})

View File

@ -1,31 +1,47 @@
{ stdenv, lib, makeWrapper, buildEnv }: { stdenv, lib, makeWrapper, buildEnv }:
drv: packages:
{ targets, paths ? [] }:
let let
packages_ = if builtins.isList packages then packages else [packages];
unwrapped = lib.concatMap (p: if builtins.isList p.unwrapped then p.unwrapped else [p.unwrapped]) packages_;
targets = lib.concatMap (p: p.targets) packages_;
paths = lib.concatMap (p: p.paths or []) packages_;
name =
if builtins.length unwrapped == 1
then (lib.head unwrapped).name
else "kde-application";
meta =
if builtins.length unwrapped == 1
then (lib.head unwrapped).meta
else {};
env = buildEnv { env = buildEnv {
inherit (drv) name meta; inherit name meta;
paths = builtins.map lib.getBin ([drv] ++ paths); paths = builtins.map lib.getBin (unwrapped ++ paths);
pathsToLink = [ "/bin" "/share" "/lib/qt5" "/etc/xdg" ]; pathsToLink = [ "/bin" "/share" "/lib/qt5" "/etc/xdg" ];
}; };
in in
stdenv.mkDerivation { stdenv.mkDerivation {
inherit (drv) name meta; inherit name meta;
preferLocalBuild = true; preferLocalBuild = true;
paths = builtins.map lib.getBin ([drv] ++ paths); inherit unwrapped env targets;
inherit drv env targets;
passthru = { unwrapped = drv; }; passthru = {
inherit targets paths;
unwrapped = if builtins.length unwrapped == 1 then lib.head unwrapped else unwrapped;
};
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];
builder = builtins.toFile "builder.sh" '' buildCommand = ''
. $stdenv/setup
for t in $targets; do for t in $targets; do
good=""
for drv in $unwrapped; do
if [ -a "$drv/$t" ]; then if [ -a "$drv/$t" ]; then
makeWrapper "$drv/$t" "$out/$t" \ makeWrapper "$drv/$t" "$out/$t" \
--argv0 '"$0"' \ --argv0 '"$0"' \
@ -35,19 +51,23 @@ stdenv.mkDerivation {
--set QML_IMPORT_PATH "$env/lib/qt5/imports" \ --set QML_IMPORT_PATH "$env/lib/qt5/imports" \
--set QML2_IMPORT_PATH "$env/lib/qt5/qml" \ --set QML2_IMPORT_PATH "$env/lib/qt5/qml" \
--set QT_PLUGIN_PATH "$env/lib/qt5/plugins" --set QT_PLUGIN_PATH "$env/lib/qt5/plugins"
else good="1"
echo "no such file or directory: $drv/$t" break
fi
done
if [ -z "$good" ]; then
echo "file or directory not found in derivations: $t"
exit 1 exit 1
fi fi
done done
if [ -a "$drv/share" ]; then ln -s "$env/share" "$out"
ln -s "$drv/share" "$out"
fi
for drv in $unwrapped; do
if [ -a "$drv/nix-support/propagated-user-env-packages" ]; then if [ -a "$drv/nix-support/propagated-user-env-packages" ]; then
mkdir -p "$out/nix-support" mkdir -p "$out/nix-support"
ln -s "$drv/nix-support/propagated-user-env-packages" "$out/nix-support/" cat "$drv/nix-support/propagated-user-env-packages" >> "$out/nix-support/propagated-user-env-packages"
fi fi
done
''; '';
} }

View File

@ -0,0 +1,25 @@
{ stdenv, fetchgit, autoreconfHook }:
stdenv.mkDerivation rec {
name = "libdivecomputer-${version}";
version = "ssrf-0.5.0";
src = fetchgit {
url = "git://subsurface-divelog.org/libdc";
rev = "534dd2f34b8271b2a1cac0e3151bfdc81da40e47";
branchName = "Subsurface-branch";
sha256 = "0iw9pczmwqlfjlgrik79b2pd4lmipxhjzj60ysk8qzl3axadjycp";
};
nativeBuildInputs = [ autoreconfHook ];
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = http://www.libdivecomputer.org;
description = "A cross-platform and open source library for communication with dive computers from various manufacturers";
maintainers = [ maintainers.mguentner ];
license = licenses.lgpl21;
platforms = platforms.all;
};
}

View File

@ -7,15 +7,10 @@ stdenv.mkDerivation rec {
owner = "gphoto"; owner = "gphoto";
repo = "libgphoto2"; repo = "libgphoto2";
rev = "${meta.tag}"; rev = "${meta.tag}";
sha256 = "17k3jxib2jcr2wk83p34h3lvvjbs2gqhqfcngm8zmlrwb385yalh"; sha256 = "01nirw0xb8fjjv0jz88bmddv26bgg82w1wg65q51iblmy9z8azfh";
}; };
patches = [(fetchpatch { patches = [];
name = "libjpeg_turbo_1.5.0_fix.patch";
url = "https://anonscm.debian.org/cgit/pkg-phototools/libgphoto2.git/plain"
+ "/debian/patches/libjpeg_turbo_1.5.0_fix.patch?id=8ce79a2a02d";
sha256 = "1zclgg20nv4krj8gigq3ylirxqiv1v8p59cfji041m156hy80gy2";
})];
nativeBuildInputs = [ pkgconfig gettext autoreconfHook ]; nativeBuildInputs = [ pkgconfig gettext autoreconfHook ];
buildInputs = [ libtool libjpeg libusb1 ]; buildInputs = [ libtool libjpeg libusb1 ];
@ -38,8 +33,8 @@ stdenv.mkDerivation rec {
MTP, and other vendor specific protocols for controlling and transferring data MTP, and other vendor specific protocols for controlling and transferring data
from digital cameras. from digital cameras.
''; '';
version = "2.5.10"; version = "2.5.11";
tag = "libgphoto2-2_5_10-release"; tag = "libgphoto2-2_5_11-release";
# XXX: the homepage claims LGPL, but several src files are lgpl21Plus # XXX: the homepage claims LGPL, but several src files are lgpl21Plus
license = stdenv.lib.licenses.lgpl21Plus; license = stdenv.lib.licenses.lgpl21Plus;
platforms = with stdenv.lib.platforms; unix; platforms = with stdenv.lib.platforms; unix;

View File

@ -3,11 +3,11 @@ let
s = # Generated upstream information s = # Generated upstream information
rec { rec {
baseName="libmwaw"; baseName="libmwaw";
version="0.3.8"; version="0.3.9";
name="${baseName}-${version}"; name="${baseName}-${version}";
hash="019vk8cj3lgbrpgj48zy25mpkgmllwxznkfd94hh9vbb1cjvpz3a"; hash="185jnp7b7s550xpz3bhaii275qw5yd3j29zijkd2rr8h2p9s9z7p";
url="mirror://sourceforge/project/libmwaw/libmwaw/libmwaw-0.3.8/libmwaw-0.3.8.tar.xz"; url="https://heanet.dl.sourceforge.net/project/libmwaw/libmwaw/libmwaw-0.3.9/libmwaw-0.3.9.tar.xz";
sha256="019vk8cj3lgbrpgj48zy25mpkgmllwxznkfd94hh9vbb1cjvpz3a"; sha256="185jnp7b7s550xpz3bhaii275qw5yd3j29zijkd2rr8h2p9s9z7p";
}; };
buildInputs = [ buildInputs = [
boost pkgconfig cppunit zlib libwpg libwpd librevenge boost pkgconfig cppunit zlib libwpg libwpd librevenge

View File

@ -3,10 +3,12 @@
assert zlib != null; assert zlib != null;
let let
version = "1.6.26"; version = "1.6.27";
sha256 = "1ybkgcqqsd4iiiyv60pxjfi1csszb50bd2cxxsy3sv4q4sil6rr6"; patchVersion = "1.6.26";
# patchVersion = version;
sha256 = "0yxmajq2ri1smpz5spi0f055izbdkmmr7a5zp7d6qd9nfgczz8pw";
patch_src = fetchurl { patch_src = fetchurl {
url = "mirror://sourceforge/libpng-apng/libpng-${version}-apng.patch.gz"; url = "mirror://sourceforge/libpng-apng/libpng-${patchVersion}-apng.patch.gz";
sha256 = "0b6p2k4afvhk1svargpllcvhxb4g3p857wkqk85cks0yv42ckph1"; sha256 = "0b6p2k4afvhk1svargpllcvhxb4g3p857wkqk85cks0yv42ckph1";
}; };
whenPatched = stdenv.lib.optionalString apngSupport; whenPatched = stdenv.lib.optionalString apngSupport;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub { stdenv, fetchFromGitHub, fixDarwinDylibNames
# Optional Arguments # Optional Arguments
, snappy ? null, google-gflags ? null, zlib ? null, bzip2 ? null, lz4 ? null , snappy ? null, google-gflags ? null, zlib ? null, bzip2 ? null, lz4 ? null
@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
sha256 = "1bxyykj13mw48yk108bkmxlfrp6bd95f27bysayax4lqxkgx0zzw"; sha256 = "1bxyykj13mw48yk108bkmxlfrp6bd95f27bysayax4lqxkgx0zzw";
}; };
buildInputs = [ snappy google-gflags zlib bzip2 lz4 malloc ]; buildInputs = [ snappy google-gflags zlib bzip2 lz4 malloc fixDarwinDylibNames ];
postPatch = '' postPatch = ''
# Hack to fix typos # Hack to fix typos
@ -36,11 +36,16 @@ stdenv.mkDerivation rec {
JEMALLOC_LIB = stdenv.lib.optionalString (malloc == jemalloc) "-ljemalloc"; JEMALLOC_LIB = stdenv.lib.optionalString (malloc == jemalloc) "-ljemalloc";
buildFlags = [ buildFlags = [
"DEBUG_LEVEL=0"
"shared_lib"
"static_lib" "static_lib"
]; ];
installFlags = [ installFlags = [
"INSTALL_PATH=\${out}" "INSTALL_PATH=\${out}"
"DEBUG_LEVEL=0"
"install-shared"
"install-static"
]; ];
postInstall = '' postInstall = ''

View File

@ -1,7 +1,8 @@
{ stdenv, fetchurl, perl, python2, ruby, bison, gperf, cmake { stdenv, fetchurl, perl, python2, ruby, bison, gperf, cmake
, pkgconfig, gettext, gobjectIntrospection, libnotify, gnutls , pkgconfig, gettext, gobjectIntrospection, libnotify, gnutls
, gtk2, gtk3, wayland, libwebp, enchant, xlibs, libxkbcommon, epoxy, at_spi2_core , gtk2, gtk3, wayland, libwebp, enchant, xlibs, libxkbcommon, epoxy, at_spi2_core
, libxml2, libsoup, libsecret, libxslt, harfbuzz, libpthreadstubs , libxml2, libsoup, libsecret, libxslt, harfbuzz, libpthreadstubs, pcre, nettle, libtasn1, p11_kit
, libidn
, enableGeoLocation ? true, geoclue2, sqlite , enableGeoLocation ? true, geoclue2, sqlite
, gst-plugins-base , gst-plugins-base
}: }:
@ -11,7 +12,7 @@ assert enableGeoLocation -> geoclue2 != null;
with stdenv.lib; with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "webkitgtk-${version}"; name = "webkitgtk-${version}";
version = "2.14.1"; version = "2.14.2";
meta = { meta = {
description = "Web content rendering engine, GTK+ port"; description = "Web content rendering engine, GTK+ port";
@ -26,7 +27,7 @@ stdenv.mkDerivation rec {
src = fetchurl { src = fetchurl {
url = "http://webkitgtk.org/releases/${name}.tar.xz"; url = "http://webkitgtk.org/releases/${name}.tar.xz";
sha256 = "1dffnz20psgc604azhbzn9a6cdhafar9dw74w3bbwrfy531pcb9f"; sha256 = "0mjmcxhafh6l6j062z2nwfqbbvfyx16iqrzrbajswijh23awpnrf";
}; };
# see if we can clean this up.... # see if we can clean this up....
@ -49,8 +50,8 @@ stdenv.mkDerivation rec {
]; ];
buildInputs = [ buildInputs = [
gtk2 wayland libwebp enchant libnotify gnutls gtk2 wayland libwebp enchant libnotify gnutls pcre nettle libidn
libxml2 libsecret libxslt harfbuzz libpthreadstubs libxml2 libsecret libxslt harfbuzz libpthreadstubs libtasn1 p11_kit
gst-plugins-base libxkbcommon epoxy at_spi2_core gst-plugins-base libxkbcommon epoxy at_spi2_core
] ++ optional enableGeoLocation geoclue2 ] ++ optional enableGeoLocation geoclue2
++ (with xlibs; [ libXdmcp libXt libXtst ]); ++ (with xlibs; [ libXdmcp libXt libXtst ]);

View File

@ -123,7 +123,7 @@ let
if [ -f "${src}" ] if [ -f "${src}" ]
then then
# Figure out what directory has been unpacked # Figure out what directory has been unpacked
packageDir=$(find . -type d -maxdepth 1 | tail -1) packageDir="$(find . -maxdepth 1 -type d | tail -1)"
# Restore write permissions to make building work # Restore write permissions to make building work
find "$packageDir" -type d -print0 | xargs -0 chmod u+x find "$packageDir" -type d -print0 | xargs -0 chmod u+x
@ -133,11 +133,18 @@ let
mv "$packageDir" "$DIR/${packageName}" mv "$packageDir" "$DIR/${packageName}"
elif [ -d "${src}" ] elif [ -d "${src}" ]
then then
# Get a stripped name (without hash) of the source directory.
# On old nixpkgs it's already set internally.
if [ -z "$strippedName" ]
then
strippedName="$(stripHash ${src})"
fi
# Restore write permissions to make building work # Restore write permissions to make building work
chmod -R u+w $strippedName chmod -R u+w "$strippedName"
# Move the extracted directory into the output folder # Move the extracted directory into the output folder
mv $strippedName "$DIR/${packageName}" mv "$strippedName" "$DIR/${packageName}"
fi fi
# Unset the stripped name to not confuse the next unpack step # Unset the stripped name to not confuse the next unpack step
@ -207,6 +214,9 @@ let
if [ "$dontNpmInstall" != "1" ] if [ "$dontNpmInstall" != "1" ]
then then
# NPM tries to download packages even when they already exist if npm-shrinkwrap is used.
rm -f npm-shrinkwrap.json
npm --registry http://www.example.com --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} install npm --registry http://www.example.com --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} install
fi fi
@ -263,10 +273,13 @@ let
# calling executables outside the Nix store as much as possible # calling executables outside the Nix store as much as possible
patchShebangs . patchShebangs .
export HOME=$TMPDIR export HOME=$PWD
npm --registry http://www.example.com --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} rebuild npm --registry http://www.example.com --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} rebuild
${stdenv.lib.optionalString (!dontNpmInstall) '' ${stdenv.lib.optionalString (!dontNpmInstall) ''
# NPM tries to download packages even when they already exist if npm-shrinkwrap is used.
rm -f npm-shrinkwrap.json
npm --registry http://www.example.com --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} install npm --registry http://www.example.com --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} install
''} ''}

View File

@ -1,15 +1,15 @@
{ stdenv, fetchurl, pkgconfig { stdenv, fetchurl, pkgconfig
, bzip2, curl, expat, libarchive, xz, zlib, libuv , bzip2, curl, expat, libarchive, xz, zlib, libuv
, useNcurses ? false, ncurses, useQt4 ? false, qt4 # darwin attributes
, wantPS ? false, ps ? null , ps
, isBootstrap ? false
, useSharedLibraries ? !stdenv.isCygwin
, useNcurses ? false, ncurses
, useQt4 ? false, qt4
}: }:
with stdenv.lib; with stdenv.lib;
assert wantPS -> (ps != null);
assert stdenv ? cc;
assert stdenv.cc ? libc;
let let
os = stdenv.lib.optionalString; os = stdenv.lib.optionalString;
majorVersion = "3.7"; majorVersion = "3.7";
@ -18,7 +18,7 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "cmake-${os useNcurses "cursesUI-"}${os useQt4 "qt4UI-"}${version}"; name = "cmake-${os isBootstrap "boot-"}${os useNcurses "cursesUI-"}${os useQt4 "qt4UI-"}${version}";
inherit majorVersion; inherit majorVersion;
@ -28,6 +28,11 @@ stdenv.mkDerivation rec {
sha256 = "449a5bce64dbd4d5b9517ebd1a1248ed197add6ad27934478976fd5f1f9330e1"; sha256 = "449a5bce64dbd4d5b9517ebd1a1248ed197add6ad27934478976fd5f1f9330e1";
}; };
prePatch = optionalString (!useSharedLibraries) ''
substituteInPlace Utilities/cmlibarchive/CMakeLists.txt \
--replace '"-framework CoreServices"' '""'
'';
# Don't search in non-Nix locations such as /usr, but do search in our libc. # Don't search in non-Nix locations such as /usr, but do search in our libc.
patches = [ ./search-path-3.2.patch ] patches = [ ./search-path-3.2.patch ]
++ optional stdenv.isCygwin ./3.2.2-cygwin.patch; ++ optional stdenv.isCygwin ./3.2.2-cygwin.patch;
@ -38,39 +43,36 @@ stdenv.mkDerivation rec {
setupHook = ./setup-hook.sh; setupHook = ./setup-hook.sh;
buildInputs = buildInputs =
[ setupHook pkgconfig bzip2 curl expat libarchive xz zlib libuv ] [ setupHook pkgconfig ]
++ optionals useSharedLibraries [ bzip2 curl expat libarchive xz zlib libuv ]
++ optional useNcurses ncurses ++ optional useNcurses ncurses
++ optional useQt4 qt4; ++ optional useQt4 qt4;
propagatedBuildInputs = optional wantPS ps; propagatedBuildInputs = optional stdenv.isDarwin ps;
preConfigure = with stdenv; '' preConfigure = ''
fixCmakeFiles . fixCmakeFiles .
substituteInPlace Modules/Platform/UnixPaths.cmake \ substituteInPlace Modules/Platform/UnixPaths.cmake \
--subst-var-by libc_bin ${getBin cc.libc} \ --subst-var-by libc_bin ${getBin stdenv.cc.libc} \
--subst-var-by libc_dev ${getDev cc.libc} \ --subst-var-by libc_dev ${getDev stdenv.cc.libc} \
--subst-var-by libc_lib ${getLib cc.libc} --subst-var-by libc_lib ${getLib stdenv.cc.libc}
substituteInPlace Modules/FindCxxTest.cmake \ substituteInPlace Modules/FindCxxTest.cmake \
--replace "$""{PYTHON_EXECUTABLE}" ${stdenv.shell} --replace "$""{PYTHON_EXECUTABLE}" ${stdenv.shell}
configureFlags="--parallel=''${NIX_BUILD_CORES:-1} $configureFlags" configureFlags="--parallel=''${NIX_BUILD_CORES:-1} $configureFlags"
''; '';
configureFlags =
[ "--docdir=share/doc/${name}" configureFlags = [ "--docdir=share/doc/${name}" ]
"--no-system-jsoncpp" ++ (if useSharedLibraries then [ "--no-system-jsoncpp" "--system-libs" ] else [ "--no-system-libs" ]) # FIXME: cleanup
]
++ optional (!stdenv.isCygwin) "--system-libs"
++ optional useQt4 "--qt-gui" ++ optional useQt4 "--qt-gui"
++ ["--"] ++ optionals (!useNcurses) [ "--" "-DBUILD_CursesDialog=OFF" ];
++ optional (!useNcurses) "-DBUILD_CursesDialog=OFF";
dontUseCmakeConfigure = true; dontUseCmakeConfigure = true;
enableParallelBuilding = true; enableParallelBuilding = true;
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = http://www.cmake.org/; homepage = http://www.cmake.org/;
description = "Cross-Platform Makefile Generator"; description = "Cross-Platform Makefile Generator";
platforms = if useQt4 then qt4.meta.platforms else platforms.all; platforms = if useQt4 then qt4.meta.platforms else platforms.all;
maintainers = with maintainers; [ urkud mornfall ttuegel ]; maintainers = with maintainers; [ urkud mornfall ttuegel lnl7 ];
}; };
} }

View File

@ -52,12 +52,12 @@ rec {
}; };
gradle_latest = gradleGen rec { gradle_latest = gradleGen rec {
name = "gradle-3.2.1"; name = "gradle-3.3";
nativeVersion = "0.11"; nativeVersion = "0.12";
src = fetchurl { src = fetchurl {
url = "http://services.gradle.org/distributions/${name}-bin.zip"; url = "http://services.gradle.org/distributions/${name}-bin.zip";
sha256 = "1286wqycc7xnrkn6n37r5g19ajv6igqhavdh9pjxqmry9mjs6hwq"; sha256 = "14m2m5f5s2cpp6w0x3lkq6lyx5cd7jp0hldnrab0dkyqg31511n5";
}; };
}; };

View File

@ -2,13 +2,13 @@
let let
name = "scons"; name = "scons";
version = "2.5.0"; version = "2.5.1";
in python2Packages.buildPythonApplication { in python2Packages.buildPythonApplication {
name = "${name}-${version}"; name = "${name}-${version}";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/scons/${name}-${version}.tar.gz"; url = "mirror://sourceforge/scons/${name}-${version}.tar.gz";
sha256 = "1sdcj8iapfzmlq7098yas40qwl6khsiwydbxv33sw81wy93nnagb"; sha256 = "1wji1z9jdkhnmm99apx6fhld9cs52rr56aigniyrcsmlwy52298b";
}; };
# No tests # No tests
doCheck = false; doCheck = false;

View File

@ -3,11 +3,11 @@ let
s = # Generated upstream information s = # Generated upstream information
rec { rec {
baseName="luarocks"; baseName="luarocks";
version="2.4.0"; version="2.4.2";
name="${baseName}-${version}"; name="${baseName}-${version}";
hash="1hwpjj4nvy8m7hfmhf52vbhmlh7r3wfjjcc589yj8dnh528iqf24"; hash="1rfjfjgnafjxs1zrd1gy0ga5lw28sf5lrdmgzgh6bcp1hd2w67hf";
url="http://luarocks.org/releases/luarocks-2.4.0.tar.gz"; url="http://luarocks.org/releases/luarocks-2.4.2.tar.gz";
sha256="1hwpjj4nvy8m7hfmhf52vbhmlh7r3wfjjcc589yj8dnh528iqf24"; sha256="1rfjfjgnafjxs1zrd1gy0ga5lw28sf5lrdmgzgh6bcp1hd2w67hf";
}; };
buildInputs = [ buildInputs = [
lua curl makeWrapper which unzip lua curl makeWrapper which unzip

View File

@ -3,11 +3,11 @@ let
s = # Generated upstream information s = # Generated upstream information
rec { rec {
baseName="slimerjs"; baseName="slimerjs";
version="0.10.1"; version="0.10.2";
name="${baseName}-${version}"; name="${baseName}-${version}";
hash="14xfhn9v3mn4m7hfa36750vp7qgmnc5yfrdkjymzm8g9fz39ddx2"; hash="16pg12bvfqls707nsdqi3bl1c833kncsvnd0qiq5692lrh93x529";
url="http://download.slimerjs.org/releases/0.10.1/slimerjs-0.10.1.zip"; url="http://download.slimerjs.org/releases/0.10.2/slimerjs-0.10.2.zip";
sha256="14xfhn9v3mn4m7hfa36750vp7qgmnc5yfrdkjymzm8g9fz39ddx2"; sha256="16pg12bvfqls707nsdqi3bl1c833kncsvnd0qiq5692lrh93x529";
}; };
buildInputs = [ buildInputs = [
unzip zip unzip zip

View File

@ -0,0 +1,22 @@
{ stdenv, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
name = "vultr-${version}";
version = "1.12.0";
goPackagePath = "github.com/JamesClonk/vultr";
src = fetchFromGitHub {
owner = "JamesClonk";
repo = "vultr";
rev = "${version}";
sha256 = "0fzwzp0vhf3cgl9ij5zpdyn29w9rwwxghr50jjfbagpkfpy4g686";
};
meta = {
description = "A command line tool for Vultr services, a provider for cloud virtual private servers";
homepage = "https://github.com/JamesClonk/vultr";
license = stdenv.lib.licenses.mit;
platforms = stdenv.lib.platforms.all;
maintainers = [ stdenv.lib.maintainers.zauberpony ];
};
}

View File

@ -1,6 +1,6 @@
{stdenv, gtk3, pkgconfig, libX11, perl, fetchurl, automake115x, autoconf}: {stdenv, gtk3, pkgconfig, libX11, perl, fetchurl, automake115x, autoconf}:
let let
version = "20160429.b31155b"; version = "20161228.7cae89f";
buildInputs = [ buildInputs = [
gtk3 pkgconfig libX11 perl automake115x autoconf gtk3 pkgconfig libX11 perl automake115x autoconf
]; ];
@ -8,7 +8,7 @@ in
stdenv.mkDerivation { stdenv.mkDerivation {
src = fetchurl { src = fetchurl {
url = "http://www.chiark.greenend.org.uk/~sgtatham/puzzles/puzzles-${version}.tar.gz"; url = "http://www.chiark.greenend.org.uk/~sgtatham/puzzles/puzzles-${version}.tar.gz";
sha256 = "0y807srhf6571ijdwpa493qzsx161f0a1pmh2qi44f6ixfcrkgzi"; sha256 = "0kqy3gdgfjgaqbjl95pnljz44v91i79qphwdp91k0n5alswxwn76";
}; };
name = "sgt-puzzles-r" + version; name = "sgt-puzzles-r" + version;
inherit buildInputs; inherit buildInputs;

View File

@ -6,9 +6,9 @@ let fetchurl = args@{url, sha256, ...}:
in rec { in rec {
stable = fetchurl rec { stable = fetchurl rec {
version = "1.8.4"; version = "1.8.6";
url = "https://dl.winehq.org/wine/source/1.8/wine-${version}.tar.bz2"; url = "https://dl.winehq.org/wine/source/1.8/wine-${version}.tar.bz2";
sha256 = "0yahh1n3s3y0bp1a1sr3zpna56749jdgr85hwmpq393pjx1i0pai"; sha256 = "1lq6770pkv3342ss2ih18s2hw6i1srbcfg3mljwalqrvxfb7hydi";
## see http://wiki.winehq.org/Gecko ## see http://wiki.winehq.org/Gecko
gecko32 = fetchurl rec { gecko32 = fetchurl rec {
@ -30,9 +30,9 @@ in rec {
}; };
unstable = fetchurl rec { unstable = fetchurl rec {
version = "2.0-rc2"; version = "2.0-rc3";
url = "https://dl.winehq.org/wine/source/2.0/wine-${version}.tar.bz2"; url = "https://dl.winehq.org/wine/source/2.0/wine-${version}.tar.bz2";
sha256 = "0pjkrvslfksx7m2w52pnd3dfxb82l082cz9dr57x58s9al2jpwb6"; sha256 = "0sq8li7p30h2a5bbpv27vxpzihr8h890qm78nq21fnh0zflg8x8y";
inherit (stable) mono; inherit (stable) mono;
gecko32 = fetchurl rec { gecko32 = fetchurl rec {
version = "2.47"; version = "2.47";
@ -48,15 +48,15 @@ in rec {
staging = fetchFromGitHub rec { staging = fetchFromGitHub rec {
inherit (unstable) version; inherit (unstable) version;
sha256 = "1xx9bfirij12l278f5f7vpxxay1zacnrsaib6yfzrybm517ynfw3"; sha256 = "1nk8s54nrlws0d8wpyj1vv2z0l2jansn990xw73v15wzwc3j9p6l";
owner = "wine-compholio"; owner = "wine-compholio";
repo = "wine-staging"; repo = "wine-staging";
rev = "v${version}"; rev = "v${version}";
}; };
winetricks = fetchFromGitHub rec { winetricks = fetchFromGitHub rec {
version = "20160724"; version = "20170101";
sha256 = "0nl8gnmsqwwrc8773q8py64kv3r5836xjxsnxjv91n4hhmvgyrzs"; sha256 = "0c2aam68x3nlvc6f4r6rnfw6y3a86644zb0qirwkmh3p04mpdl39";
owner = "Winetricks"; owner = "Winetricks";
repo = "winetricks"; repo = "winetricks";
rev = version; rev = version;

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, autoconf, automake, libtool_2 { stdenv, fetchFromGitHub, autoconf, automake, libtool_2
, llvm, libcxx, libcxxabi, clang, openssl, libuuid , llvm, libcxx, libcxxabi, clang, libuuid
, libobjc ? null , libobjc ? null
}: }:
@ -15,7 +15,7 @@ let
sha256 = "0bzyabzr5dvbxglr74d0kbrk2ij5x7s5qcamqi1v546q1had1wz1"; sha256 = "0bzyabzr5dvbxglr74d0kbrk2ij5x7s5qcamqi1v546q1had1wz1";
}; };
buildInputs = [ autoconf automake libtool_2 openssl libuuid ] ++ buildInputs = [ autoconf automake libtool_2 libuuid ] ++
# Only need llvm and clang if the stdenv isn't already clang-based (TODO: just make a stdenv.cc.isClang) # Only need llvm and clang if the stdenv isn't already clang-based (TODO: just make a stdenv.cc.isClang)
stdenv.lib.optionals (!stdenv.isDarwin) [ llvm clang ] ++ stdenv.lib.optionals (!stdenv.isDarwin) [ llvm clang ] ++
stdenv.lib.optionals stdenv.isDarwin [ libcxxabi libobjc ]; stdenv.lib.optionals stdenv.isDarwin [ libcxxabi libobjc ];

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