Merge branch 'master.upstream' into staging.upstream
This commit is contained in:
commit
dd2de66d61
|
@ -31,6 +31,7 @@ For pull-requests, please rebase onto nixpkgs `master`.
|
||||||
* [Documentation (Nix Expression Language chapter)](https://nixos.org/nix/manual/#ch-expression-language)
|
* [Documentation (Nix Expression Language chapter)](https://nixos.org/nix/manual/#ch-expression-language)
|
||||||
* [Manual (How to write packages for Nix)](https://nixos.org/nixpkgs/manual/)
|
* [Manual (How to write packages for Nix)](https://nixos.org/nixpkgs/manual/)
|
||||||
* [Manual (NixOS)](https://nixos.org/nixos/manual/)
|
* [Manual (NixOS)](https://nixos.org/nixos/manual/)
|
||||||
|
* [Nix Wiki](https://nixos.org/wiki/)
|
||||||
* [Continuous package builds for unstable/master](https://hydra.nixos.org/jobset/nixos/trunk-combined)
|
* [Continuous package builds for unstable/master](https://hydra.nixos.org/jobset/nixos/trunk-combined)
|
||||||
* [Continuous package builds for 14.12 release](https://hydra.nixos.org/jobset/nixos/release-14.12)
|
* [Continuous package builds for 14.12 release](https://hydra.nixos.org/jobset/nixos/release-14.12)
|
||||||
* [Continuous package builds for 15.09 release](https://hydra.nixos.org/jobset/nixos/release-15.09)
|
* [Continuous package builds for 15.09 release](https://hydra.nixos.org/jobset/nixos/release-15.09)
|
||||||
|
|
|
@ -116,7 +116,7 @@ rec {
|
||||||
|
|
||||||
Type:
|
Type:
|
||||||
collect ::
|
collect ::
|
||||||
(AttrSet -> Bool) -> AttrSet -> AttrSet
|
(AttrSet -> Bool) -> AttrSet -> [x]
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
collect isList { a = { b = ["b"]; }; c = [1]; }
|
collect isList { a = { b = ["b"]; }; c = [1]; }
|
||||||
|
|
|
@ -76,6 +76,7 @@
|
||||||
dbohdan = "Danyil Bohdan <danyil.bohdan@gmail.com>";
|
dbohdan = "Danyil Bohdan <danyil.bohdan@gmail.com>";
|
||||||
DerGuteMoritz = "Moritz Heidkamp <moritz@twoticketsplease.de>";
|
DerGuteMoritz = "Moritz Heidkamp <moritz@twoticketsplease.de>";
|
||||||
deepfire = "Kosyrev Serge <_deepfire@feelingofgreen.ru>";
|
deepfire = "Kosyrev Serge <_deepfire@feelingofgreen.ru>";
|
||||||
|
demin-dmitriy = "Dmitriy Demin <demindf@gmail.com>";
|
||||||
desiderius = "Didier J. Devroye <didier@devroye.name>";
|
desiderius = "Didier J. Devroye <didier@devroye.name>";
|
||||||
devhell = "devhell <\"^\"@regexmail.net>";
|
devhell = "devhell <\"^\"@regexmail.net>";
|
||||||
dezgeg = "Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>";
|
dezgeg = "Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>";
|
||||||
|
@ -89,6 +90,7 @@
|
||||||
edwtjo = "Edward Tjörnhammar <ed@cflags.cc>";
|
edwtjo = "Edward Tjörnhammar <ed@cflags.cc>";
|
||||||
eelco = "Eelco Dolstra <eelco.dolstra@logicblox.com>";
|
eelco = "Eelco Dolstra <eelco.dolstra@logicblox.com>";
|
||||||
eikek = "Eike Kettner <eike.kettner@posteo.de>";
|
eikek = "Eike Kettner <eike.kettner@posteo.de>";
|
||||||
|
elasticdog = "Aaron Bull Schaefer <aaron@elasticdog.com>";
|
||||||
ellis = "Ellis Whitehead <nixos@ellisw.net>";
|
ellis = "Ellis Whitehead <nixos@ellisw.net>";
|
||||||
emery = "Emery Hemingway <emery@vfemail.net>";
|
emery = "Emery Hemingway <emery@vfemail.net>";
|
||||||
enolan = "Echo Nolan <echo@echonolan.net>";
|
enolan = "Echo Nolan <echo@echonolan.net>";
|
||||||
|
@ -181,6 +183,7 @@
|
||||||
mathnerd314 = "Mathnerd314 <mathnerd314.gph+hs@gmail.com>";
|
mathnerd314 = "Mathnerd314 <mathnerd314.gph+hs@gmail.com>";
|
||||||
matthiasbeyer = "Matthias Beyer <mail@beyermatthias.de>";
|
matthiasbeyer = "Matthias Beyer <mail@beyermatthias.de>";
|
||||||
mbakke = "Marius Bakke <ymse@tuta.io>";
|
mbakke = "Marius Bakke <ymse@tuta.io>";
|
||||||
|
mbe = "Brandon Edens <brandonedens@gmail.com>";
|
||||||
meditans = "Carlo Nucera <meditans@gmail.com>";
|
meditans = "Carlo Nucera <meditans@gmail.com>";
|
||||||
meisternu = "Matt Miemiec <meister@krutt.org>";
|
meisternu = "Matt Miemiec <meister@krutt.org>";
|
||||||
michelk = "Michel Kuhlmann <michel@kuhlmanns.info>";
|
michelk = "Michel Kuhlmann <michel@kuhlmanns.info>";
|
||||||
|
@ -259,9 +262,11 @@
|
||||||
skeidel = "Sven Keidel <svenkeidel@gmail.com>";
|
skeidel = "Sven Keidel <svenkeidel@gmail.com>";
|
||||||
smironov = "Sergey Mironov <ierton@gmail.com>";
|
smironov = "Sergey Mironov <ierton@gmail.com>";
|
||||||
spacefrogg = "Michael Raitza <spacefrogg-nixos@meterriblecrew.net>";
|
spacefrogg = "Michael Raitza <spacefrogg-nixos@meterriblecrew.net>";
|
||||||
|
spencerjanssen = "Spencer Janssen <spencerjanssen@gmail.com>";
|
||||||
sprock = "Roger Mason <rmason@mun.ca>";
|
sprock = "Roger Mason <rmason@mun.ca>";
|
||||||
spwhitt = "Spencer Whitt <sw@swhitt.me>";
|
spwhitt = "Spencer Whitt <sw@swhitt.me>";
|
||||||
stephenmw = "Stephen Weinberg <stephen@q5comm.com>";
|
stephenmw = "Stephen Weinberg <stephen@q5comm.com>";
|
||||||
|
steveej = "Stefan Junker <mail@stefanjunker.de>";
|
||||||
szczyp = "Szczyp <qb@szczyp.com>";
|
szczyp = "Szczyp <qb@szczyp.com>";
|
||||||
sztupi = "Attila Sztupak <attila.sztupak@gmail.com>";
|
sztupi = "Attila Sztupak <attila.sztupak@gmail.com>";
|
||||||
tailhook = "Paul Colomiets <paul@colomiets.name>";
|
tailhook = "Paul Colomiets <paul@colomiets.name>";
|
||||||
|
@ -289,6 +294,7 @@
|
||||||
vlstill = "Vladimír Štill <xstill@fi.muni.cz>";
|
vlstill = "Vladimír Štill <xstill@fi.muni.cz>";
|
||||||
vmandela = "Venkateswara Rao Mandela <venkat.mandela@gmail.com>";
|
vmandela = "Venkateswara Rao Mandela <venkat.mandela@gmail.com>";
|
||||||
vozz = "Oliver Hunt <oliver.huntuk@gmail.com>";
|
vozz = "Oliver Hunt <oliver.huntuk@gmail.com>";
|
||||||
|
wedens = "wedens <kirill.wedens@gmail.com>";
|
||||||
winden = "Antonio Vargas Gonzalez <windenntw@gmail.com>";
|
winden = "Antonio Vargas Gonzalez <windenntw@gmail.com>";
|
||||||
wizeman = "Ricardo M. Correia <rcorreia@wizy.org>";
|
wizeman = "Ricardo M. Correia <rcorreia@wizy.org>";
|
||||||
wjlroe = "William Roe <willroe@gmail.com>";
|
wjlroe = "William Roe <willroe@gmail.com>";
|
||||||
|
|
|
@ -17,7 +17,7 @@ trap "exitHandler" EXIT
|
||||||
# fetch the trace and the drvPath of the attribute.
|
# fetch the trace and the drvPath of the attribute.
|
||||||
nix-instantiate $NIXPKGS -A $attr --show-trace > "$tmp/drvPath" 2> "$tmp/trace" || {
|
nix-instantiate $NIXPKGS -A $attr --show-trace > "$tmp/drvPath" 2> "$tmp/trace" || {
|
||||||
cat 1>&2 - "$tmp/trace" <<EOF
|
cat 1>&2 - "$tmp/trace" <<EOF
|
||||||
An error occured while evaluating $attr.
|
An error occurred while evaluating $attr.
|
||||||
EOF
|
EOF
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
|
@ -110,7 +110,7 @@ pkgs.vmTools.runInLinuxVM (
|
||||||
umount /mnt/proc /mnt/dev /mnt/sys
|
umount /mnt/proc /mnt/dev /mnt/sys
|
||||||
umount /mnt
|
umount /mnt
|
||||||
|
|
||||||
# Do an fsck to make sure resize2fs works.
|
# Do a fsck to make sure resize2fs works.
|
||||||
fsck.${fsType} -f -y $rootDisk
|
fsck.${fsType} -f -y $rootDisk
|
||||||
''
|
''
|
||||||
)
|
)
|
||||||
|
|
46
nixos/modules/config/debug-info.nix
Normal file
46
nixos/modules/config/debug-info.nix
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
{ config, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
environment.enableDebugInfo = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
Some NixOS packages provide debug symbols. However, these are
|
||||||
|
not included in the system closure by default to save disk
|
||||||
|
space. Enabling this option causes the debug symbols to appear
|
||||||
|
in <filename>/run/current-system/sw/lib/debug/.build-id</filename>,
|
||||||
|
where tools such as <command>gdb</command> can find them.
|
||||||
|
If you need debug symbols for a package that doesn't
|
||||||
|
provide them by default, you can enable them as follows:
|
||||||
|
<!-- FIXME: ugly, see #10721 -->
|
||||||
|
<programlisting>
|
||||||
|
nixpkgs.config.packageOverrides = pkgs: {
|
||||||
|
hello = overrideDerivation pkgs.hello (attrs: {
|
||||||
|
outputs = attrs.outputs or ["out"] ++ ["debug"];
|
||||||
|
buildInputs = attrs.buildInputs ++ [<nixpkgs/pkgs/build-support/setup-hooks/separate-debug-info.sh>];
|
||||||
|
});
|
||||||
|
};
|
||||||
|
</programlisting>
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
config = {
|
||||||
|
|
||||||
|
# FIXME: currently disabled because /lib is already in
|
||||||
|
# environment.pathsToLink, and we can't have both.
|
||||||
|
#environment.pathsToLink = [ "/lib/debug/.build-id" ];
|
||||||
|
|
||||||
|
environment.outputsToLink =
|
||||||
|
optional config.environment.enableDebugInfo "debug";
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
|
@ -3,6 +3,84 @@
|
||||||
with utils;
|
with utils;
|
||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
swapCfg = {config, options, ...}: {
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
device = mkOption {
|
||||||
|
example = "/dev/sda3";
|
||||||
|
type = types.str;
|
||||||
|
description = "Path of the device.";
|
||||||
|
};
|
||||||
|
|
||||||
|
label = mkOption {
|
||||||
|
example = "swap";
|
||||||
|
type = types.str;
|
||||||
|
description = ''
|
||||||
|
Label of the device. Can be used instead of <varname>device</varname>.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
size = mkOption {
|
||||||
|
default = null;
|
||||||
|
example = 2048;
|
||||||
|
type = types.nullOr types.int;
|
||||||
|
description = ''
|
||||||
|
If this option is set, ‘device’ is interpreted as the
|
||||||
|
path of a swapfile that will be created automatically
|
||||||
|
with the indicated size (in megabytes) if it doesn't
|
||||||
|
exist.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
priority = mkOption {
|
||||||
|
default = null;
|
||||||
|
example = 2048;
|
||||||
|
type = types.nullOr types.int;
|
||||||
|
description = ''
|
||||||
|
Specify the priority of the swap device. Priority is a value between 0 and 32767.
|
||||||
|
Higher numbers indicate higher priority.
|
||||||
|
null lets the kernel choose a priority, which will show up as a negative value.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
randomEncryption = mkOption {
|
||||||
|
default = false;
|
||||||
|
type = types.bool;
|
||||||
|
description = ''
|
||||||
|
Encrypt swap device with a random key. This way you won't have a persistent swap device.
|
||||||
|
|
||||||
|
WARNING: Don't try to hibernate when you have at least one swap partition with
|
||||||
|
this option enabled! We have no way to set the partition into which hibernation image
|
||||||
|
is saved, so if your image ends up on an encrypted one you would lose it!
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
deviceName = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
internal = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
realDevice = mkOption {
|
||||||
|
type = types.path;
|
||||||
|
internal = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
config = rec {
|
||||||
|
device = mkIf options.label.isDefined
|
||||||
|
"/dev/disk/by-label/${config.label}";
|
||||||
|
deviceName = escapeSystemdPath config.device;
|
||||||
|
realDevice = if config.randomEncryption then "/dev/mapper/${deviceName}" else config.device;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
||||||
###### interface
|
###### interface
|
||||||
|
@ -26,58 +104,7 @@ with lib;
|
||||||
recommended.
|
recommended.
|
||||||
'';
|
'';
|
||||||
|
|
||||||
type = types.listOf types.optionSet;
|
type = types.listOf (types.submodule swapCfg);
|
||||||
|
|
||||||
options = {config, options, ...}: {
|
|
||||||
|
|
||||||
options = {
|
|
||||||
|
|
||||||
device = mkOption {
|
|
||||||
example = "/dev/sda3";
|
|
||||||
type = types.str;
|
|
||||||
description = "Path of the device.";
|
|
||||||
};
|
|
||||||
|
|
||||||
label = mkOption {
|
|
||||||
example = "swap";
|
|
||||||
type = types.str;
|
|
||||||
description = ''
|
|
||||||
Label of the device. Can be used instead of <varname>device</varname>.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
size = mkOption {
|
|
||||||
default = null;
|
|
||||||
example = 2048;
|
|
||||||
type = types.nullOr types.int;
|
|
||||||
description = ''
|
|
||||||
If this option is set, ‘device’ is interpreted as the
|
|
||||||
path of a swapfile that will be created automatically
|
|
||||||
with the indicated size (in megabytes) if it doesn't
|
|
||||||
exist.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
priority = mkOption {
|
|
||||||
default = null;
|
|
||||||
example = 2048;
|
|
||||||
type = types.nullOr types.int;
|
|
||||||
description = ''
|
|
||||||
Specify the priority of the swap device. Priority is a value between 0 and 32767.
|
|
||||||
Higher numbers indicate higher priority.
|
|
||||||
null lets the kernel choose a priority, which will show up as a negative value.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
config = {
|
|
||||||
device = mkIf options.label.isDefined
|
|
||||||
"/dev/disk/by-label/${config.label}";
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -95,27 +122,37 @@ with lib;
|
||||||
|
|
||||||
createSwapDevice = sw:
|
createSwapDevice = sw:
|
||||||
assert sw.device != "";
|
assert sw.device != "";
|
||||||
let device' = escapeSystemdPath sw.device; in
|
let realDevice' = escapeSystemdPath sw.realDevice;
|
||||||
nameValuePair "mkswap-${escapeSystemdPath sw.device}"
|
in nameValuePair "mkswap-${sw.deviceName}"
|
||||||
{ description = "Initialisation of Swapfile ${sw.device}";
|
{ description = "Initialisation of swap device ${sw.device}";
|
||||||
wantedBy = [ "${device'}.swap" ];
|
wantedBy = [ "${realDevice'}.swap" ];
|
||||||
before = [ "${device'}.swap" ];
|
before = [ "${realDevice'}.swap" ];
|
||||||
path = [ pkgs.utillinux ];
|
path = [ pkgs.utillinux ] ++ optional sw.randomEncryption pkgs.cryptsetup;
|
||||||
script =
|
script =
|
||||||
''
|
''
|
||||||
if [ ! -e "${sw.device}" ]; then
|
${optionalString (sw.size != null) ''
|
||||||
fallocate -l ${toString sw.size}M "${sw.device}" ||
|
if [ ! -e "${sw.device}" ]; then
|
||||||
dd if=/dev/zero of="${sw.device}" bs=1M count=${toString sw.size}
|
fallocate -l ${toString sw.size}M "${sw.device}" ||
|
||||||
chmod 0600 ${sw.device}
|
dd if=/dev/zero of="${sw.device}" bs=1M count=${toString sw.size}
|
||||||
mkswap ${sw.device}
|
chmod 0600 ${sw.device}
|
||||||
fi
|
${optionalString (!sw.randomEncryption) "mkswap ${sw.realDevice}"}
|
||||||
|
fi
|
||||||
|
''}
|
||||||
|
${optionalString sw.randomEncryption ''
|
||||||
|
echo "secretkey" | cryptsetup luksFormat --batch-mode ${sw.device}
|
||||||
|
echo "secretkey" | cryptsetup luksOpen ${sw.device} ${sw.deviceName}
|
||||||
|
cryptsetup luksErase --batch-mode ${sw.device}
|
||||||
|
mkswap ${sw.realDevice}
|
||||||
|
''}
|
||||||
'';
|
'';
|
||||||
unitConfig.RequiresMountsFor = [ "${dirOf sw.device}" ];
|
unitConfig.RequiresMountsFor = [ "${dirOf sw.device}" ];
|
||||||
unitConfig.DefaultDependencies = false; # needed to prevent a cycle
|
unitConfig.DefaultDependencies = false; # needed to prevent a cycle
|
||||||
serviceConfig.Type = "oneshot";
|
serviceConfig.Type = "oneshot";
|
||||||
|
serviceConfig.RemainAfterExit = sw.randomEncryption;
|
||||||
|
serviceConfig.ExecStop = optionalString sw.randomEncryption "cryptsetup luksClose ${sw.deviceName}";
|
||||||
};
|
};
|
||||||
|
|
||||||
in listToAttrs (map createSwapDevice (filter (sw: sw.size != null) config.swapDevices));
|
in listToAttrs (map createSwapDevice (filter (sw: sw.size != null || sw.randomEncryption) config.swapDevices));
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -7,12 +7,6 @@ with lib;
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
extraManpages = pkgs.runCommand "extra-manpages" { buildInputs = [ pkgs.help2man ]; }
|
|
||||||
''
|
|
||||||
mkdir -p $out/share/man/man1
|
|
||||||
help2man ${pkgs.gnutar}/bin/tar > $out/share/man/man1/tar.1
|
|
||||||
'';
|
|
||||||
|
|
||||||
requiredPackages =
|
requiredPackages =
|
||||||
[ config.nix.package
|
[ config.nix.package
|
||||||
pkgs.acl
|
pkgs.acl
|
||||||
|
@ -34,7 +28,6 @@ let
|
||||||
pkgs.xz
|
pkgs.xz
|
||||||
pkgs.less
|
pkgs.less
|
||||||
pkgs.libcap
|
pkgs.libcap
|
||||||
pkgs.man
|
|
||||||
pkgs.nano
|
pkgs.nano
|
||||||
pkgs.ncurses
|
pkgs.ncurses
|
||||||
pkgs.netcat
|
pkgs.netcat
|
||||||
|
@ -47,7 +40,6 @@ let
|
||||||
pkgs.time
|
pkgs.time
|
||||||
pkgs.texinfoInteractive
|
pkgs.texinfoInteractive
|
||||||
pkgs.utillinux
|
pkgs.utillinux
|
||||||
extraManpages
|
|
||||||
];
|
];
|
||||||
|
|
||||||
in
|
in
|
||||||
|
@ -78,8 +70,16 @@ in
|
||||||
# to work.
|
# to work.
|
||||||
default = [];
|
default = [];
|
||||||
example = ["/"];
|
example = ["/"];
|
||||||
description = "List of directories to be symlinked in `/run/current-system/sw'.";
|
description = "List of directories to be symlinked in <filename>/run/current-system/sw</filename>.";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
outputsToLink = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [];
|
||||||
|
example = [ "doc" ];
|
||||||
|
description = "List of package outputs to be symlinked into <filename>/run/current-system/sw</filename>.";
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
system = {
|
system = {
|
||||||
|
@ -103,9 +103,7 @@ in
|
||||||
[ "/bin"
|
[ "/bin"
|
||||||
"/etc/xdg"
|
"/etc/xdg"
|
||||||
"/info"
|
"/info"
|
||||||
"/lib" # FIXME: remove
|
"/lib" # FIXME: remove and update debug-info.nix
|
||||||
#"/lib/debug/.build-id" # enables GDB to find separated debug info
|
|
||||||
"/man"
|
|
||||||
"/sbin"
|
"/sbin"
|
||||||
"/share/applications"
|
"/share/applications"
|
||||||
"/share/desktop-directories"
|
"/share/desktop-directories"
|
||||||
|
@ -113,7 +111,6 @@ in
|
||||||
"/share/emacs"
|
"/share/emacs"
|
||||||
"/share/icons"
|
"/share/icons"
|
||||||
"/share/info"
|
"/share/info"
|
||||||
"/share/man"
|
|
||||||
"/share/menus"
|
"/share/menus"
|
||||||
"/share/mime"
|
"/share/mime"
|
||||||
"/share/nano"
|
"/share/nano"
|
||||||
|
@ -126,7 +123,7 @@ in
|
||||||
system.path = pkgs.buildEnv {
|
system.path = pkgs.buildEnv {
|
||||||
name = "system-path";
|
name = "system-path";
|
||||||
paths = config.environment.systemPackages;
|
paths = config.environment.systemPackages;
|
||||||
inherit (config.environment) pathsToLink;
|
inherit (config.environment) pathsToLink outputsToLink;
|
||||||
ignoreCollisions = true;
|
ignoreCollisions = true;
|
||||||
# !!! Hacky, should modularise.
|
# !!! Hacky, should modularise.
|
||||||
postBuild =
|
postBuild =
|
||||||
|
|
|
@ -22,13 +22,9 @@ in
|
||||||
boot.loader.grub.enable = false;
|
boot.loader.grub.enable = false;
|
||||||
boot.loader.generic-extlinux-compatible.enable = true;
|
boot.loader.generic-extlinux-compatible.enable = true;
|
||||||
|
|
||||||
# FIXME: change this to linuxPackages_latest once v4.2 is out
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
boot.kernelPackages = pkgs.linuxPackages_testing;
|
|
||||||
boot.kernelParams = ["console=ttyS0,115200n8" "console=ttyAMA0,115200n8" "console=tty0"];
|
boot.kernelParams = ["console=ttyS0,115200n8" "console=ttyAMA0,115200n8" "console=tty0"];
|
||||||
|
|
||||||
# FIXME: fix manual evaluation on ARM
|
|
||||||
services.nixosManual.enable = lib.mkOverride 0 false;
|
|
||||||
|
|
||||||
# FIXME: this probably should be in installation-device.nix
|
# FIXME: this probably should be in installation-device.nix
|
||||||
users.extraUsers.root.initialHashedPassword = "";
|
users.extraUsers.root.initialHashedPassword = "";
|
||||||
|
|
||||||
|
|
|
@ -27,9 +27,6 @@ in
|
||||||
|
|
||||||
boot.kernelPackages = pkgs.linuxPackages_rpi;
|
boot.kernelPackages = pkgs.linuxPackages_rpi;
|
||||||
|
|
||||||
# FIXME: fix manual evaluation on ARM
|
|
||||||
services.nixosManual.enable = lib.mkOverride 0 false;
|
|
||||||
|
|
||||||
# FIXME: this probably should be in installation-device.nix
|
# FIXME: this probably should be in installation-device.nix
|
||||||
users.extraUsers.root.initialHashedPassword = "";
|
users.extraUsers.root.initialHashedPassword = "";
|
||||||
|
|
||||||
|
|
|
@ -235,7 +235,7 @@ fi
|
||||||
# default and/or activate it now.
|
# default and/or activate it now.
|
||||||
if [ "$action" = switch -o "$action" = boot -o "$action" = test -o "$action" = dry-activate ]; then
|
if [ "$action" = switch -o "$action" = boot -o "$action" = test -o "$action" = dry-activate ]; then
|
||||||
if ! $pathToConfig/bin/switch-to-configuration "$action"; then
|
if ! $pathToConfig/bin/switch-to-configuration "$action"; then
|
||||||
echo "warning: error(s) occured while switching to the new configuration" >&2
|
echo "warning: error(s) occurred while switching to the new configuration" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
[
|
[
|
||||||
|
./config/debug-info.nix
|
||||||
./config/fonts/corefonts.nix
|
./config/fonts/corefonts.nix
|
||||||
./config/fonts/fontconfig.nix
|
|
||||||
./config/fonts/fontconfig-ultimate.nix
|
./config/fonts/fontconfig-ultimate.nix
|
||||||
|
./config/fonts/fontconfig.nix
|
||||||
./config/fonts/fontdir.nix
|
./config/fonts/fontdir.nix
|
||||||
./config/fonts/fonts.nix
|
./config/fonts/fonts.nix
|
||||||
./config/fonts/ghostscript.nix
|
./config/fonts/ghostscript.nix
|
||||||
|
@ -22,9 +23,9 @@
|
||||||
./config/system-environment.nix
|
./config/system-environment.nix
|
||||||
./config/system-path.nix
|
./config/system-path.nix
|
||||||
./config/timezone.nix
|
./config/timezone.nix
|
||||||
./config/vpnc.nix
|
|
||||||
./config/unix-odbc-drivers.nix
|
./config/unix-odbc-drivers.nix
|
||||||
./config/users-groups.nix
|
./config/users-groups.nix
|
||||||
|
./config/vpnc.nix
|
||||||
./config/zram.nix
|
./config/zram.nix
|
||||||
./hardware/all-firmware.nix
|
./hardware/all-firmware.nix
|
||||||
./hardware/cpu/amd-microcode.nix
|
./hardware/cpu/amd-microcode.nix
|
||||||
|
@ -61,9 +62,11 @@
|
||||||
./programs/command-not-found/command-not-found.nix
|
./programs/command-not-found/command-not-found.nix
|
||||||
./programs/dconf.nix
|
./programs/dconf.nix
|
||||||
./programs/environment.nix
|
./programs/environment.nix
|
||||||
|
./programs/freetds.nix
|
||||||
./programs/ibus.nix
|
./programs/ibus.nix
|
||||||
./programs/kbdlight.nix
|
./programs/kbdlight.nix
|
||||||
./programs/light.nix
|
./programs/light.nix
|
||||||
|
./programs/man.nix
|
||||||
./programs/nano.nix
|
./programs/nano.nix
|
||||||
./programs/screen.nix
|
./programs/screen.nix
|
||||||
./programs/shadow.nix
|
./programs/shadow.nix
|
||||||
|
@ -73,7 +76,6 @@
|
||||||
./programs/uim.nix
|
./programs/uim.nix
|
||||||
./programs/venus.nix
|
./programs/venus.nix
|
||||||
./programs/wvdial.nix
|
./programs/wvdial.nix
|
||||||
./programs/freetds.nix
|
|
||||||
./programs/xfs_quota.nix
|
./programs/xfs_quota.nix
|
||||||
./programs/zsh/zsh.nix
|
./programs/zsh/zsh.nix
|
||||||
./rename.nix
|
./rename.nix
|
||||||
|
@ -264,6 +266,7 @@
|
||||||
./services/networking/atftpd.nix
|
./services/networking/atftpd.nix
|
||||||
./services/networking/avahi-daemon.nix
|
./services/networking/avahi-daemon.nix
|
||||||
./services/networking/bind.nix
|
./services/networking/bind.nix
|
||||||
|
./services/networking/autossh.nix
|
||||||
./services/networking/bird.nix
|
./services/networking/bird.nix
|
||||||
./services/networking/bitlbee.nix
|
./services/networking/bitlbee.nix
|
||||||
./services/networking/btsync.nix
|
./services/networking/btsync.nix
|
||||||
|
|
30
nixos/modules/programs/man.nix
Normal file
30
nixos/modules/programs/man.nix
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
programs.man.enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = true;
|
||||||
|
description = ''
|
||||||
|
Whether to enable manual pages and the <command>man</command> command.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
config = mkIf config.programs.man.enable {
|
||||||
|
|
||||||
|
environment.systemPackages = [ pkgs.man ];
|
||||||
|
|
||||||
|
environment.pathsToLink = [ "/share/man" ];
|
||||||
|
|
||||||
|
environment.outputsToLink = [ "man" ];
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
|
@ -202,6 +202,8 @@ in
|
||||||
# For non-root operation.
|
# For non-root operation.
|
||||||
initdb
|
initdb
|
||||||
fi
|
fi
|
||||||
|
# See postStart!
|
||||||
|
touch "${cfg.dataDir}/.first_startup"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
ln -sfn "${configFile}" "${cfg.dataDir}/postgresql.conf"
|
ln -sfn "${configFile}" "${cfg.dataDir}/postgresql.conf"
|
||||||
|
|
|
@ -92,7 +92,9 @@ in
|
||||||
|
|
||||||
system.build.manual = manual;
|
system.build.manual = manual;
|
||||||
|
|
||||||
environment.systemPackages = [ manual.manpages manual.manual help ];
|
environment.systemPackages =
|
||||||
|
[ manual.manual help ]
|
||||||
|
++ optional config.programs.man.enable manual.manpages;
|
||||||
|
|
||||||
boot.extraTTYs = mkIf cfg.showManual ["tty${cfg.ttyNumber}"];
|
boot.extraTTYs = mkIf cfg.showManual ["tty${cfg.ttyNumber}"];
|
||||||
|
|
||||||
|
|
|
@ -29,6 +29,7 @@ in
|
||||||
|
|
||||||
wantedBy = [ "graphical.target" ];
|
wantedBy = [ "graphical.target" ];
|
||||||
after = [ "NetworkManager-wait-online.service" "network.target" ];
|
after = [ "NetworkManager-wait-online.service" "network.target" ];
|
||||||
|
preStart = "mkdir -pv /var/tmp/teamviewer10/{logs,config}";
|
||||||
|
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "forking";
|
Type = "forking";
|
||||||
|
|
114
nixos/modules/services/networking/autossh.nix
Normal file
114
nixos/modules/services/networking/autossh.nix
Normal file
|
@ -0,0 +1,114 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
cfg = config.services.autossh;
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
###### interface
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
services.autossh = {
|
||||||
|
|
||||||
|
sessions = mkOption {
|
||||||
|
type = types.listOf (types.submodule {
|
||||||
|
options = {
|
||||||
|
name = mkOption {
|
||||||
|
type = types.string;
|
||||||
|
example = "socks-peer";
|
||||||
|
description = "Name of the local AutoSSH session";
|
||||||
|
};
|
||||||
|
user = mkOption {
|
||||||
|
type = types.string;
|
||||||
|
example = "bill";
|
||||||
|
description = "Name of the user the AutoSSH session should run as";
|
||||||
|
};
|
||||||
|
monitoringPort = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 0;
|
||||||
|
example = 20000;
|
||||||
|
description = ''
|
||||||
|
Port to be used by AutoSSH for peer monitoring. Note, that
|
||||||
|
AutoSSH also uses mport+1. Value of 0 disables the keep-alive
|
||||||
|
style monitoring
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
extraArguments = mkOption {
|
||||||
|
type = types.string;
|
||||||
|
example = "-N -D4343 bill@socks.example.net";
|
||||||
|
description = ''
|
||||||
|
Arguments to be passed to AutoSSH and retransmitted to SSH
|
||||||
|
process. Some meaningful options include -N (don't run remote
|
||||||
|
command), -D (open SOCKS proxy on local port), -R (forward
|
||||||
|
remote port), -L (forward local port), -v (Enable debug). Check
|
||||||
|
ssh manual for the complete list.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
default = [];
|
||||||
|
description = ''
|
||||||
|
List of AutoSSH sessions to start as systemd services. Each service is
|
||||||
|
named 'autossh-{session.name}'.
|
||||||
|
'';
|
||||||
|
|
||||||
|
example = [
|
||||||
|
{
|
||||||
|
name="socks-peer";
|
||||||
|
user="bill";
|
||||||
|
monitoringPort = 20000;
|
||||||
|
extraArguments="-N -D4343 billremote@socks.host.net";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
###### implementation
|
||||||
|
|
||||||
|
config = mkIf (cfg.sessions != []) {
|
||||||
|
|
||||||
|
systemd.services =
|
||||||
|
|
||||||
|
lib.fold ( s : acc : acc //
|
||||||
|
{
|
||||||
|
"autossh-${s.name}" =
|
||||||
|
let
|
||||||
|
mport = if s ? monitoringPort then s.monitoringPort else 0;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
description = "AutoSSH session (" + s.name + ")";
|
||||||
|
|
||||||
|
after = [ "network.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
|
||||||
|
# To be able to start the service with no network connection
|
||||||
|
environment.AUTOSSH_GATETIME="0";
|
||||||
|
|
||||||
|
# How often AutoSSH checks the network, in seconds
|
||||||
|
environment.AUTOSSH_POLL="30";
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
User = "${s.user}";
|
||||||
|
PermissionsStartOnly = true;
|
||||||
|
# AutoSSH may exit with 0 code if the SSH session was
|
||||||
|
# gracefully terminated by either local or remote side.
|
||||||
|
Restart = "on-success";
|
||||||
|
ExecStart = "${pkgs.autossh}/bin/autossh -M ${toString mport} ${s.extraArguments}";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}) {} cfg.sessions;
|
||||||
|
|
||||||
|
environment.systemPackages = [ pkgs.autossh ];
|
||||||
|
|
||||||
|
};
|
||||||
|
}
|
|
@ -40,7 +40,6 @@ let
|
||||||
polkit.addRule(function(action, subject) {
|
polkit.addRule(function(action, subject) {
|
||||||
if (
|
if (
|
||||||
subject.isInGroup("networkmanager")
|
subject.isInGroup("networkmanager")
|
||||||
&& subject.active
|
|
||||||
&& (action.id.indexOf("org.freedesktop.NetworkManager.") == 0
|
&& (action.id.indexOf("org.freedesktop.NetworkManager.") == 0
|
||||||
|| action.id.indexOf("org.freedesktop.ModemManager") == 0
|
|| action.id.indexOf("org.freedesktop.ModemManager") == 0
|
||||||
))
|
))
|
||||||
|
@ -207,10 +206,16 @@ in {
|
||||||
|
|
||||||
environment.systemPackages = cfg.packages;
|
environment.systemPackages = cfg.packages;
|
||||||
|
|
||||||
users.extraGroups = singleton {
|
users.extraGroups = [{
|
||||||
name = "networkmanager";
|
name = "networkmanager";
|
||||||
gid = config.ids.gids.networkmanager;
|
gid = config.ids.gids.networkmanager;
|
||||||
};
|
}
|
||||||
|
{
|
||||||
|
name = "nm-openvpn";
|
||||||
|
}];
|
||||||
|
users.extraUsers = [{
|
||||||
|
name = "nm-openvpn";
|
||||||
|
}];
|
||||||
|
|
||||||
systemd.packages = cfg.packages;
|
systemd.packages = cfg.packages;
|
||||||
|
|
||||||
|
|
|
@ -35,6 +35,8 @@ let
|
||||||
SessionCommand=${dmcfg.session.script}
|
SessionCommand=${dmcfg.session.script}
|
||||||
SessionDir=${dmcfg.session.desktops}
|
SessionDir=${dmcfg.session.desktops}
|
||||||
XauthPath=${pkgs.xorg.xauth}/bin/xauth
|
XauthPath=${pkgs.xorg.xauth}/bin/xauth
|
||||||
|
|
||||||
|
${cfg.extraConfig}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
in
|
in
|
||||||
|
@ -50,6 +52,19 @@ in
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
extraConfig = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "";
|
||||||
|
example = ''
|
||||||
|
[Autologin]
|
||||||
|
User=john
|
||||||
|
Session=plasma.desktop
|
||||||
|
'';
|
||||||
|
description = ''
|
||||||
|
Extra lines appended to the configuration of SDDM.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
theme = mkOption {
|
theme = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
default = "maui";
|
default = "maui";
|
||||||
|
|
|
@ -206,7 +206,7 @@ let
|
||||||
preLVMCommands postDeviceCommands postMountCommands kernelModules;
|
preLVMCommands postDeviceCommands postMountCommands kernelModules;
|
||||||
|
|
||||||
resumeDevices = map (sd: if sd ? device then sd.device else "/dev/disk/by-label/${sd.label}")
|
resumeDevices = map (sd: if sd ? device then sd.device else "/dev/disk/by-label/${sd.label}")
|
||||||
(filter (sd: sd ? label || hasPrefix "/dev/" sd.device) config.swapDevices);
|
(filter (sd: (sd ? label || hasPrefix "/dev/" sd.device) && !sd.randomEncryption) config.swapDevices);
|
||||||
|
|
||||||
fsInfo =
|
fsInfo =
|
||||||
let f = fs: [ fs.mountPoint (if fs.device != null then fs.device else "/dev/disk/by-label/${fs.label}") fs.fsType fs.options ];
|
let f = fs: [ fs.mountPoint (if fs.device != null then fs.device else "/dev/disk/by-label/${fs.label}") fs.fsType fs.options ];
|
||||||
|
|
|
@ -174,7 +174,7 @@ in
|
||||||
|
|
||||||
# Swap devices.
|
# Swap devices.
|
||||||
${flip concatMapStrings config.swapDevices (sw:
|
${flip concatMapStrings config.swapDevices (sw:
|
||||||
"${sw.device} none swap${prioOption sw.priority}\n"
|
"${sw.realDevice} none swap${prioOption sw.priority}\n"
|
||||||
)}
|
)}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
{ config, pkgs, modulesPath, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
imports = [ "${modulesPath}/virtualisation/nova-image.nix" ];
|
|
||||||
}
|
|
|
@ -1,90 +1,45 @@
|
||||||
|
# Usage:
|
||||||
|
# $ NIXOS_CONFIG=`pwd`/nixos/modules/virtualisation/nova-image.nix nix-build '<nixpkgs/nixos>' -A config.system.build.novaImage
|
||||||
|
|
||||||
{ config, lib, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [ ../profiles/qemu-guest.nix ../profiles/headless.nix ./ec2-data.nix ];
|
system.build.novaImage = import ../../lib/make-disk-image.nix {
|
||||||
|
inherit pkgs lib config;
|
||||||
system.build.novaImage =
|
partitioned = true;
|
||||||
pkgs.vmTools.runInLinuxVM (
|
diskSize = 1 * 1024;
|
||||||
pkgs.runCommand "nova-image"
|
configFile = pkgs.writeText "configuration.nix"
|
||||||
{ preVM =
|
''
|
||||||
''
|
{
|
||||||
mkdir $out
|
imports = [ <nixpkgs/nixos/modules/virtualisation/nova-image.nix> ];
|
||||||
diskImage=$out/image
|
|
||||||
${pkgs.vmTools.qemu}/bin/qemu-img create -f raw $diskImage "4G"
|
|
||||||
mv closure xchg/
|
|
||||||
'';
|
|
||||||
buildInputs = [ pkgs.utillinux pkgs.perl ];
|
|
||||||
exportReferencesGraph =
|
|
||||||
[ "closure" config.system.build.toplevel ];
|
|
||||||
}
|
}
|
||||||
''
|
'';
|
||||||
# Create a single / partition.
|
};
|
||||||
${pkgs.parted}/sbin/parted /dev/vda mklabel msdos
|
|
||||||
${pkgs.parted}/sbin/parted /dev/vda -- mkpart primary ext2 1M -1s
|
|
||||||
. /sys/class/block/vda1/uevent
|
|
||||||
mknod /dev/vda1 b $MAJOR $MINOR
|
|
||||||
|
|
||||||
# Create an empty filesystem and mount it.
|
imports = [
|
||||||
${pkgs.e2fsprogs}/sbin/mkfs.ext3 -L nixos /dev/vda1
|
../profiles/qemu-guest.nix
|
||||||
${pkgs.e2fsprogs}/sbin/tune2fs -c 0 -i 0 /dev/vda1
|
../profiles/headless.nix
|
||||||
mkdir /mnt
|
./ec2-data.nix
|
||||||
mount /dev/vda1 /mnt
|
];
|
||||||
|
|
||||||
# The initrd expects these directories to exist.
|
|
||||||
mkdir /mnt/dev /mnt/proc /mnt/sys
|
|
||||||
mount --bind /proc /mnt/proc
|
|
||||||
mount --bind /dev /mnt/dev
|
|
||||||
mount --bind /sys /mnt/sys
|
|
||||||
|
|
||||||
# Copy all paths in the closure to the filesystem.
|
|
||||||
storePaths=$(perl ${pkgs.pathsFromGraph} /tmp/xchg/closure)
|
|
||||||
|
|
||||||
mkdir -p /mnt/nix/store
|
|
||||||
${pkgs.rsync}/bin/rsync -av $storePaths /mnt/nix/store/
|
|
||||||
|
|
||||||
# Register the paths in the Nix database.
|
|
||||||
printRegistration=1 perl ${pkgs.pathsFromGraph} /tmp/xchg/closure | \
|
|
||||||
chroot /mnt ${config.nix.package}/bin/nix-store --load-db --option build-users-group ""
|
|
||||||
|
|
||||||
# Create the system profile to allow nixos-rebuild to work.
|
|
||||||
chroot /mnt ${config.nix.package}/bin/nix-env --option build-users-group "" \
|
|
||||||
-p /nix/var/nix/profiles/system --set ${config.system.build.toplevel}
|
|
||||||
|
|
||||||
# `nixos-rebuild' requires an /etc/NIXOS.
|
|
||||||
mkdir -p /mnt/etc
|
|
||||||
touch /mnt/etc/NIXOS
|
|
||||||
|
|
||||||
# `switch-to-configuration' requires a /bin/sh
|
|
||||||
mkdir -p /mnt/bin
|
|
||||||
ln -s ${config.system.build.binsh}/bin/sh /mnt/bin/sh
|
|
||||||
|
|
||||||
# Install a configuration.nix.
|
|
||||||
mkdir -p /mnt/etc/nixos
|
|
||||||
cp ${./nova-config.nix} /mnt/etc/nixos/configuration.nix
|
|
||||||
|
|
||||||
# Generate the GRUB menu.
|
|
||||||
chroot /mnt ${config.system.build.toplevel}/bin/switch-to-configuration boot
|
|
||||||
|
|
||||||
umount /mnt/proc /mnt/dev /mnt/sys
|
|
||||||
umount /mnt
|
|
||||||
''
|
|
||||||
);
|
|
||||||
|
|
||||||
fileSystems."/".device = "/dev/disk/by-label/nixos";
|
fileSystems."/".device = "/dev/disk/by-label/nixos";
|
||||||
|
|
||||||
boot.kernelParams = [ "console=ttyS0" ];
|
boot.kernelParams = [ "console=ttyS0" ];
|
||||||
|
|
||||||
boot.loader.grub.version = 2;
|
|
||||||
boot.loader.grub.device = "/dev/vda";
|
boot.loader.grub.device = "/dev/vda";
|
||||||
boot.loader.grub.timeout = 0;
|
boot.loader.grub.timeout = 0;
|
||||||
|
|
||||||
|
# Allow root logins
|
||||||
|
services.openssh.enable = true;
|
||||||
|
services.openssh.permitRootLogin = "without-password";
|
||||||
|
|
||||||
# Put /tmp and /var on /ephemeral0, which has a lot more space.
|
# Put /tmp and /var on /ephemeral0, which has a lot more space.
|
||||||
# Unfortunately we can't do this with the `fileSystems' option
|
# Unfortunately we can't do this with the `fileSystems' option
|
||||||
# because it has no support for creating the source of a bind
|
# because it has no support for creating the source of a bind
|
||||||
# mount. Also, "move" /nix to /ephemeral0 by layering a unionfs-fuse
|
# mount. Also, "move" /nix to /ephemeral0 by layering a unionfs-fuse
|
||||||
# mount on top of it so we have a lot more space for Nix operations.
|
# mount on top of it so we have a lot more space for Nix operations.
|
||||||
|
|
||||||
/*
|
/*
|
||||||
boot.initrd.postMountCommands =
|
boot.initrd.postMountCommands =
|
||||||
''
|
''
|
||||||
|
@ -106,10 +61,6 @@ with lib;
|
||||||
'';
|
'';
|
||||||
|
|
||||||
boot.initrd.supportedFilesystems = [ "unionfs-fuse" ];
|
boot.initrd.supportedFilesystems = [ "unionfs-fuse" ];
|
||||||
*/
|
*/
|
||||||
|
|
||||||
# Allow root logins only using the SSH key that the user specified
|
|
||||||
# at instance creation time.
|
|
||||||
services.openssh.enable = true;
|
|
||||||
services.openssh.permitRootLogin = "without-password";
|
|
||||||
}
|
}
|
||||||
|
|
70
pkgs/applications/audio/baudline/default.nix
Normal file
70
pkgs/applications/audio/baudline/default.nix
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
{ stdenv, fetchurl, libXmu, libXt, libX11, libXext, libXxf86vm, jack
|
||||||
|
, makeWrapper
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
rpath = stdenv.lib.makeLibraryPath
|
||||||
|
[ libXmu libXt libX11 libXext libXxf86vm jack ];
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "baudline-${version}";
|
||||||
|
version = "1.08";
|
||||||
|
|
||||||
|
src =
|
||||||
|
if stdenv.system == "x86_64-linux" then
|
||||||
|
fetchurl {
|
||||||
|
url = "http://www.baudline.com/baudline_${version}_linux_x86_64.tar.gz";
|
||||||
|
sha256 = "09fn0046i69in1jpizkzbaq5ggij0mpflcsparyskm3wh71mbzvr";
|
||||||
|
}
|
||||||
|
else if stdenv.system == "i686-linux" then
|
||||||
|
fetchurl {
|
||||||
|
url = "http://www.baudline.com/baudline_${version}_linux_i686.tar.gz";
|
||||||
|
sha256 = "1waip5pmcf5ffcfvn8lf1rvsaq2ab66imrbfqs777scz7k8fhhjb";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
throw "baudline isn't supported (yet?) on ${stdenv.system}";
|
||||||
|
|
||||||
|
buildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
# Prebuilt binary distribution.
|
||||||
|
# "patchelf --set-rpath" seems to break the application (cannot start), using
|
||||||
|
# LD_LIBRARY_PATH wrapper script instead.
|
||||||
|
buildPhase = "true";
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p "$out/bin"
|
||||||
|
mkdir -p "$out/libexec/baudline"
|
||||||
|
|
||||||
|
cp -r . "$out/libexec/baudline/"
|
||||||
|
|
||||||
|
interpreter="$(echo ${stdenv.glibc}/lib/ld-linux*)"
|
||||||
|
for prog in "$out"/libexec/baudline/baudline*; do
|
||||||
|
patchelf --interpreter "$interpreter" "$prog"
|
||||||
|
ln -sr "$prog" "$out/bin/"
|
||||||
|
done
|
||||||
|
for prog in "$out"/bin/*; do
|
||||||
|
wrapProgram "$prog" --prefix LD_LIBRARY_PATH : ${rpath}
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Scientific signal analysis application";
|
||||||
|
longDescription = ''
|
||||||
|
Baudline is a time-frequency browser designed for scientific
|
||||||
|
visualization of the spectral domain. Signal analysis is performed by
|
||||||
|
Fourier, correlation, and raster transforms that create colorful
|
||||||
|
spectrograms with vibrant detail. Conduct test and measurement
|
||||||
|
experiments with the built in function generator, or play back audio
|
||||||
|
files with a multitude of effects and filters. The baudline signal
|
||||||
|
analyzer combines fast digital signal processing, versatile high speed
|
||||||
|
displays, and continuous capture tools for hunting down and studying
|
||||||
|
elusive signal characteristics.
|
||||||
|
'';
|
||||||
|
homepage = http://www.baudline.com/;
|
||||||
|
# See http://www.baudline.com/faq.html#licensing_terms.
|
||||||
|
# (Do NOT (re)distribute on hydra.)
|
||||||
|
license = licenses.unfree;
|
||||||
|
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||||
|
maintainers = [ maintainers.bjornfor ];
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
|
@ -1,31 +1,27 @@
|
||||||
{ fetchurl, stdenv }:
|
{ fetchurl, stdenv }:
|
||||||
|
|
||||||
let version = "0.9";
|
stdenv.mkDerivation rec {
|
||||||
in
|
name = "cd-discid-${version}";
|
||||||
stdenv.mkDerivation {
|
version = "1.4";
|
||||||
name = "cd-discid-${version}";
|
|
||||||
src = fetchurl {
|
|
||||||
url = "mirror://debian/pool/main/c/cd-discid/cd-discid_${version}.orig.tar.gz";
|
|
||||||
sha256 = "1fx2ky1pb07l1r0bldpw16wdsfzw7a0093ib9v66kmilwy2sq5s9";
|
|
||||||
};
|
|
||||||
|
|
||||||
patches = [ ./install.patch ];
|
src = fetchurl {
|
||||||
|
url = "http://linukz.org/download/${name}.tar.gz";
|
||||||
|
sha256 = "0qrcvn7227qaayjcd5rm7z0k5q89qfy5qkdgwr5pd7ih0va8rmpz";
|
||||||
|
};
|
||||||
|
|
||||||
configurePhase = ''
|
installFlags = "PREFIX=$(out)";
|
||||||
sed -i "s|^[[:blank:]]*prefix *=.*$|prefix = $out|g ;
|
|
||||||
s|^[[:blank:]]*INSTALL *=.*$|INSTALL = install -c|g" \
|
meta = with stdenv.lib; {
|
||||||
"Makefile";
|
homepage = http://linukz.org/cd-discid.shtml;
|
||||||
|
license = licenses.gpl2Plus;
|
||||||
|
maintainers = [ maintainers.rycee ];
|
||||||
|
platforms = platforms.unix;
|
||||||
|
description = "command-line utility to get CDDB discid information from a CD-ROM disc";
|
||||||
|
|
||||||
|
longDescription = ''
|
||||||
|
cd-discid is a backend utility to get CDDB discid information
|
||||||
|
from a CD-ROM disc. It was originally designed for cdgrab (now
|
||||||
|
abcde), but can be used for any purpose requiring CDDB data.
|
||||||
'';
|
'';
|
||||||
|
};
|
||||||
meta = {
|
}
|
||||||
homepage = http://lly.org/~rcw/cd-discid/;
|
|
||||||
license = stdenv.lib.licenses.gpl2Plus;
|
|
||||||
description = "cd-discid, a command-line utility to retrieve a disc's CDDB ID";
|
|
||||||
|
|
||||||
longDescription = ''
|
|
||||||
cd-discid is a backend utility to get CDDB discid information
|
|
||||||
from a CD-ROM disc. It was originally designed for cdgrab (now
|
|
||||||
abcde), but can be used for any purpose requiring CDDB data.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
--- cd-discid-0.9/Makefile 2003-01-05 21:18:07.000000000 +0100
|
|
||||||
+++ cd-discid-0.9/Makefile 2008-05-26 22:14:56.000000000 +0200
|
|
||||||
@@ -32,9 +32,9 @@ clean:
|
|
||||||
|
|
||||||
install: cd-discid
|
|
||||||
$(INSTALL) -d -m 755 $(bindir)
|
|
||||||
- $(INSTALL) -s -m 755 -o 0 cd-discid $(bindir)
|
|
||||||
+ $(INSTALL) -s -m 755 cd-discid $(bindir)
|
|
||||||
$(INSTALL) -d -m 755 $(mandir)
|
|
||||||
- $(INSTALL) -m 644 -o 0 cd-discid.1 $(mandir)
|
|
||||||
+ $(INSTALL) -m 644 cd-discid.1 $(mandir)
|
|
||||||
|
|
||||||
tarball:
|
|
||||||
@cd .. && tar czvf cd-discid_$(VERSION).orig.tar.gz \
|
|
|
@ -12,13 +12,13 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "csound-6.03.2";
|
name = "csound-6.04";
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = mirror://sourceforge/csound/Csound6.03.2.tar.gz;
|
url = mirror://sourceforge/csound/Csound6.04.tar.gz;
|
||||||
sha256 = "0w6ij57dbfjljpf05bb9r91jphwaq1v63rh0713vl2n11d73dy7m";
|
sha256 = "1030w38lxdwjz1irr32m9cl0paqmgr02lab2m7f7j1yihwxj1w0g";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ cmake libsndfile flex bison alsaLib libpulseaudio tcltk ];
|
buildInputs = [ cmake libsndfile flex bison alsaLib libpulseaudio tcltk ];
|
||||||
|
|
|
@ -15,8 +15,9 @@ stdenv.mkDerivation rec {
|
||||||
# http://permalink.gmane.org/gmane.linux.redhat.fedora.extras.cvs/822346
|
# http://permalink.gmane.org/gmane.linux.redhat.fedora.extras.cvs/822346
|
||||||
patches = [ ./socket.patch ./gcc-47.patch ];
|
patches = [ ./socket.patch ./gcc-47.patch ];
|
||||||
|
|
||||||
buildInputs = [ alsaLib gtk libjack2 libuuid libxml2 makeWrapper
|
buildInputs = [ alsaLib gtk libjack2 libxml2 makeWrapper
|
||||||
pkgconfig readline ];
|
pkgconfig readline ];
|
||||||
|
propagatedBuildInputs = [ libuuid ];
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
for i in lash_control lash_panel
|
for i in lash_control lash_panel
|
||||||
|
|
35
pkgs/applications/audio/mp3val/default.nix
Normal file
35
pkgs/applications/audio/mp3val/default.nix
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
{ stdenv, fetchurl }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "mp3val-${version}";
|
||||||
|
version = "0.1.8";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "mirror://sourceforge/mp3val/${name}-src.tar.gz";
|
||||||
|
sha256 = "17y3646ghr38r620vkrxin3dksxqig5yb3nn4cfv6arm7kz6x8cm";
|
||||||
|
};
|
||||||
|
|
||||||
|
makefile = "Makefile.linux";
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
install -Dv mp3val "$out/bin/mp3val"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "A tool for validating and repairing MPEG audio streams";
|
||||||
|
longDescription = ''
|
||||||
|
MP3val is a small, high-speed, free software tool for checking MPEG audio
|
||||||
|
files' integrity. It can be useful for finding corrupted files (e.g.
|
||||||
|
incompletely downloaded, truncated, containing garbage). MP3val is
|
||||||
|
also able to fix most of the problems. Being a multiplatform application,
|
||||||
|
MP3val can be runned both under Windows and under Linux (or BSD). The most
|
||||||
|
common MPEG audio file type is MPEG 1 Layer III (mp3), but MP3val supports
|
||||||
|
also other MPEG versions and layers. The tool is also aware of the most
|
||||||
|
common types of tags (ID3v1, ID3v2, APEv2).
|
||||||
|
'';
|
||||||
|
homepage = http://mp3val.sourceforge.net/index.shtml;
|
||||||
|
license = stdenv.lib.licenses.gpl2;
|
||||||
|
platforms = stdenv.lib.platforms.unix;
|
||||||
|
maintainers = [ stdenv.lib.maintainers.devhell ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,24 +1,25 @@
|
||||||
{ stdenv, fetchurl, qt4, alsaLib, libjack2, dbus }:
|
{ stdenv, fetchurl, qt4, alsaLib, libjack2, dbus }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "0.3.12";
|
version = "0.4.0";
|
||||||
name = "qjackctl-${version}";
|
name = "qjackctl-${version}";
|
||||||
|
|
||||||
# some dependencies such as killall have to be installed additionally
|
# some dependencies such as killall have to be installed additionally
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/qjackctl/${name}.tar.gz";
|
url = "mirror://sourceforge/qjackctl/${name}.tar.gz";
|
||||||
sha256 = "14yvnc4k3hwsjflg8b2d04bc63pdl0gyqjc7vl6rdn29nbr23zwc";
|
sha256 = "0nj8c8vy00524hbjqwsqkliblcf9j7h46adk6v5np645pp2iqrav";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ qt4 alsaLib libjack2 dbus ];
|
buildInputs = [ qt4 alsaLib libjack2 dbus ];
|
||||||
|
|
||||||
configureFlags = "--enable-jack-version";
|
configureFlags = "--enable-jack-version";
|
||||||
|
|
||||||
meta = {
|
meta = with stdenv.lib; {
|
||||||
description = "A Qt application to control the JACK sound server daemon";
|
description = "A Qt application to control the JACK sound server daemon";
|
||||||
homepage = http://qjackctl.sourceforge.net/;
|
homepage = http://qjackctl.sourceforge.net/;
|
||||||
license = "GPL";
|
license = licenses.gpl2Plus;
|
||||||
platforms = stdenv.lib.platforms.linux;
|
maintainers = [ maintainers.goibhniu ];
|
||||||
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,8 +15,8 @@ stdenv.mkDerivation rec {
|
||||||
else
|
else
|
||||||
requireFile {
|
requireFile {
|
||||||
url = "http://backstage.renoise.com/frontend/app/index.html#/login";
|
url = "http://backstage.renoise.com/frontend/app/index.html#/login";
|
||||||
name = "rns_3_0_1_reg_x86_64.tar.gz";
|
name = "rns_3_0_1_linux_x86_64.tar.gz";
|
||||||
sha256 = "1swax2jz0gswdpzz8alwjfd8rhigc2yfspj7p8wvdvylqrf7n8q7";
|
sha256 = "1yb5w5jrg9dk9fg5rfvfk6p0rxn4r4i32vxp2l9lzhbs02pv15wd";
|
||||||
}
|
}
|
||||||
else if builtins.currentSystem == "i686-linux" then
|
else if builtins.currentSystem == "i686-linux" then
|
||||||
if demo then
|
if demo then
|
||||||
|
|
|
@ -4,11 +4,11 @@
|
||||||
withLirc ? false, lirc ? null } :
|
withLirc ? false, lirc ? null } :
|
||||||
|
|
||||||
stdenv.mkDerivation (rec {
|
stdenv.mkDerivation (rec {
|
||||||
version = "14.12";
|
version = "15.08";
|
||||||
name = "rosegarden-${version}";
|
name = "rosegarden-${version}";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/rosegarden/${name}.tar.bz2";
|
url = "mirror://sourceforge/rosegarden/${name}.tar.bz2";
|
||||||
sha256 = "0zhlxr1njyy6837f09l6p75js0j5mxmls6m02bqafv9j32wgnxpq";
|
sha256 = "1pk24bhpsmvn6rkqgll31na44w03banra1y7kiqd0gajlnw7wlls";
|
||||||
};
|
};
|
||||||
|
|
||||||
QTDIR=qt4;
|
QTDIR=qt4;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ stdenv, fetchurl, buildEnv, makeDesktopItem, makeWrapper, zlib, glib, alsaLib
|
{ stdenv, fetchurl, buildEnv, makeDesktopItem, makeWrapper, zlib, glib, alsaLib
|
||||||
, dbus, gtk, atk, pango, freetype, fontconfig, libgnome_keyring3, gdk_pixbuf
|
, dbus, gtk, atk, pango, freetype, fontconfig, libgnome_keyring3, gdk_pixbuf
|
||||||
, cairo, cups, expat, libgpgerror, nspr, gconf, nss, xorg, libcap, systemd
|
, gvfs, cairo, cups, expat, libgpgerror, nspr, gconf, nss, xorg, libcap, systemd
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
@ -16,15 +16,15 @@ let
|
||||||
};
|
};
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
name = "atom-${version}";
|
name = "atom-${version}";
|
||||||
version = "1.0.4";
|
version = "1.1.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
|
url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
|
||||||
sha256 = "0jki2ca12mazvszy05xc7zy8nfpavl0rnzcyksvvic32l3w2yxj7";
|
sha256 = "1rbwwwryhcasqgn2y1d9hvi3n4dag50dh1fd9hmkx4h9nmm3mbi0";
|
||||||
name = "${name}.deb";
|
name = "${name}.deb";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ atomEnv makeWrapper ];
|
buildInputs = [ atomEnv gvfs makeWrapper ];
|
||||||
|
|
||||||
phases = [ "installPhase" "fixupPhase" ];
|
phases = [ "installPhase" "fixupPhase" ];
|
||||||
|
|
||||||
|
@ -41,7 +41,8 @@ in stdenv.mkDerivation rec {
|
||||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||||
$out/share/atom/resources/app/apm/bin/node
|
$out/share/atom/resources/app/apm/bin/node
|
||||||
wrapProgram $out/bin/atom \
|
wrapProgram $out/bin/atom \
|
||||||
--prefix "LD_LIBRARY_PATH" : "${atomEnv}/lib:${atomEnv}/lib64"
|
--prefix "LD_LIBRARY_PATH" : "${atomEnv}/lib:${atomEnv}/lib64" \
|
||||||
|
--prefix "PATH" : "${gvfs}/bin"
|
||||||
wrapProgram $out/bin/apm \
|
wrapProgram $out/bin/apm \
|
||||||
--prefix "LD_LIBRARY_PATH" : "${atomEnv}/lib:${atomEnv}/lib64"
|
--prefix "LD_LIBRARY_PATH" : "${atomEnv}/lib:${atomEnv}/lib64"
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -106,16 +106,16 @@ rec {
|
||||||
|
|
||||||
anyedittools = buildEclipsePlugin rec {
|
anyedittools = buildEclipsePlugin rec {
|
||||||
name = "anyedit-${version}";
|
name = "anyedit-${version}";
|
||||||
version = "2.4.15.201504172030";
|
version = "2.5.0.201510241327";
|
||||||
|
|
||||||
srcFeature = fetchurl {
|
srcFeature = fetchurl {
|
||||||
url = "http://andrei.gmxhome.de/eclipse/features/AnyEditTools_${version}.jar";
|
url = "http://andrei.gmxhome.de/eclipse/features/AnyEditTools_${version}.jar";
|
||||||
sha256 = "19hbwgqn02ghflbcp5cw3qy203mym5kwgzq4xrn0xcl8ckl5s2pp";
|
sha256 = "01qaxg1b4n7y7g1xdkx1bnmpwqydln270mk14l4pl35q3c88s5nc";
|
||||||
};
|
};
|
||||||
|
|
||||||
srcPlugin = fetchurl {
|
srcPlugin = fetchurl {
|
||||||
url = "http://dl.bintray.com/iloveeclipse/plugins/de.loskutov.anyedit.AnyEditTools_${version}.jar";
|
url = "https://github.com/iloveeclipse/anyedittools/releases/download/2.5.0/de.loskutov.anyedit.AnyEditTools_${version}.jar";
|
||||||
sha256 = "1i3ghf2mhdfhify30hlyxqmyqcp40pkd5zhsiyg6finn4w81sxv2";
|
sha256 = "0m4qxkscl5xih8x1znbrih4jh28wky4l62spfif9zw0s7mgl117c";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ stdenv, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d
|
{ stdenv, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d
|
||||||
, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
|
, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
|
||||||
, libtiff, librsvg, texinfo, gconf, libxml2, imagemagick, gnutls
|
, libtiff, librsvg, texinfo, gconf, libxml2, imagemagick, gnutls
|
||||||
, alsaLib, cairo, acl, gpm, AppKit, Foundation, libobjc
|
, alsaLib, cairo, acl, gpm, AppKit
|
||||||
, withX ? !stdenv.isDarwin
|
, withX ? !stdenv.isDarwin
|
||||||
, withGTK3 ? false, gtk3 ? null
|
, withGTK3 ? false, gtk3 ? null
|
||||||
, withGTK2 ? true, gtk2
|
, withGTK2 ? true, gtk2
|
||||||
|
@ -47,11 +47,9 @@ stdenv.mkDerivation rec {
|
||||||
imagemagick gconf ]
|
imagemagick gconf ]
|
||||||
++ stdenv.lib.optional (withX && withGTK2) gtk2
|
++ stdenv.lib.optional (withX && withGTK2) gtk2
|
||||||
++ stdenv.lib.optional (withX && withGTK3) gtk3
|
++ stdenv.lib.optional (withX && withGTK3) gtk3
|
||||||
++ stdenv.lib.optional (stdenv.isDarwin && withX) cairo
|
++ stdenv.lib.optional (stdenv.isDarwin && withX) cairo;
|
||||||
++ stdenv.lib.optionals stdenv.isDarwin [ AppKit Foundation libobjc ];
|
|
||||||
|
|
||||||
NIX_LDFLAGS = stdenv.lib.optional stdenv.isDarwin
|
propagatedBuildInputs = stdenv.lib.optional stdenv.isDarwin AppKit;
|
||||||
"/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation";
|
|
||||||
|
|
||||||
configureFlags =
|
configureFlags =
|
||||||
if stdenv.isDarwin
|
if stdenv.isDarwin
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
{ stdenv, fetchurl, ncurses, pkgconfig, texinfo, libxml2, gnutls, Carbon, Foundation,
|
{ stdenv, fetchurl, ncurses, pkgconfig, texinfo, libxml2, gnutls
|
||||||
libobjc, Cocoa, WebKit, Quartz, ImageCaptureCore, OSAKit
|
, Carbon, Cocoa, ImageCaptureCore, OSAKit, Quartz, WebKit
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
emacsName = "emacs-24.5";
|
emacsName = "emacs-24.5";
|
||||||
name = "${emacsName}-mac-5.11";
|
name = "${emacsName}-mac-5.12";
|
||||||
|
|
||||||
#builder = ./builder.sh;
|
#builder = ./builder.sh;
|
||||||
|
|
||||||
|
@ -15,18 +15,17 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
macportSrc = fetchurl {
|
macportSrc = fetchurl {
|
||||||
url = "ftp://ftp.math.s.chiba-u.ac.jp/emacs/${name}.tar.gz";
|
url = "ftp://ftp.math.s.chiba-u.ac.jp/emacs/${name}.tar.gz";
|
||||||
sha256 = "0p4jh6s1qi6jm6zr82grk65x33ix1hb0fbpih4vh3vnx6310iwsb";
|
sha256 = "1kryg4xw2jn2jwd9ilm2snjvgmnbbp392ry1skzl4d4xf7ff3vx1";
|
||||||
};
|
};
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = "-Wno-deprecated-declarations";
|
|
||||||
NIX_LDFLAGS = stdenv.lib.optional stdenv.isDarwin
|
|
||||||
"/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation";
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
ncurses pkgconfig texinfo libxml2 gnutls Carbon Cocoa Foundation libobjc WebKit Quartz
|
ncurses pkgconfig texinfo libxml2 gnutls
|
||||||
ImageCaptureCore OSAKit
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
Carbon Cocoa ImageCaptureCore OSAKit Quartz WebKit
|
||||||
];
|
];
|
||||||
|
|
||||||
postUnpack = ''
|
postUnpack = ''
|
||||||
|
@ -36,6 +35,7 @@ stdenv.mkDerivation rec {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
|
substituteInPlace lisp/international/mule-cmds.el --replace /usr $TMPDIR
|
||||||
substituteInPlace Makefile.in --replace "/bin/pwd" "pwd"
|
substituteInPlace Makefile.in --replace "/bin/pwd" "pwd"
|
||||||
substituteInPlace lib-src/Makefile.in --replace "/bin/pwd" "pwd"
|
substituteInPlace lib-src/Makefile.in --replace "/bin/pwd" "pwd"
|
||||||
|
|
||||||
|
@ -102,7 +102,7 @@ stdenv.mkDerivation rec {
|
||||||
separately.
|
separately.
|
||||||
|
|
||||||
This is "Mac port" addition to GNU Emacs 24. This provides a native
|
This is "Mac port" addition to GNU Emacs 24. This provides a native
|
||||||
GUI support for Mac OS X 10.4 - 10.9. Note that Emacs 23 and later
|
GUI support for Mac OS X 10.4 - 10.11. Note that Emacs 23 and later
|
||||||
already contain the official GUI support via the NS (Cocoa) port for
|
already contain the official GUI support via the NS (Cocoa) port for
|
||||||
Mac OS X 10.4 and later. So if it is good enough for you, then you
|
Mac OS X 10.4 and later. So if it is good enough for you, then you
|
||||||
don't need to try this.
|
don't need to try this.
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
{stdenv, fetchurl, emacs}:
|
{stdenv, fetchurl, emacs}:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "2.11.0";
|
version = "2.12.1";
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "emacs-dash-${version}";
|
name = "emacs-dash-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/magnars/dash.el/archive/${version}.tar.gz";
|
url = "https://github.com/magnars/dash.el/archive/${version}.tar.gz";
|
||||||
sha256 = "1piwcwilkxcbjxx832mhb7q3pz1fgwp203r581bpqcw6kd5x726q";
|
sha256 = "082jl7mp4x063bpj5ad2pc5125k0d6p7rb89gcj7ny3lma9h2ij1";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ emacs ];
|
buildInputs = [ emacs ];
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ stdenv, fetchFromGitHub, emacs, texinfo, gitModes, git, dash }:
|
{ stdenv, fetchFromGitHub, emacs, texinfo, gitModes, git, dash }:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "2.2.1";
|
version = "2.3.0";
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "magit-${version}";
|
name = "magit-${version}";
|
||||||
|
@ -10,7 +10,7 @@ stdenv.mkDerivation {
|
||||||
owner = "magit";
|
owner = "magit";
|
||||||
repo = "magit";
|
repo = "magit";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "1bq26wrgm4wgif0hj16mkmiz0p1iilxs7dmdd1vq5df8nivmakjz";
|
sha256 = "1zbx1ky1481lkvfjr4k23q7jdrk9ji9v5ghj88qib36vbmzfwww8";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ emacs texinfo git ];
|
buildInputs = [ emacs texinfo git ];
|
||||||
|
@ -28,15 +28,10 @@ stdenv.mkDerivation {
|
||||||
cp lisp/magit-version.el .
|
cp lisp/magit-version.el .
|
||||||
'';
|
'';
|
||||||
|
|
||||||
doCheck = false; # one out of 5 tests fails, not sure why
|
doCheck = false; # 2 out of 15 tests fails, not sure why
|
||||||
checkTarget = "test";
|
checkTarget = "test";
|
||||||
preCheck = "export EMAIL='Joe Doe <joe.doe@example.org>'";
|
preCheck = "export EMAIL='Joe Doe <joe.doe@example.org>'";
|
||||||
|
|
||||||
# postInstall = ''
|
|
||||||
# mkdir -p $out/bin
|
|
||||||
# mv "bin/"* $out/bin/
|
|
||||||
# '';
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://github.com/magit/magit";
|
homepage = "https://github.com/magit/magit";
|
||||||
description = "Magit, an Emacs interface to Git";
|
description = "Magit, an Emacs interface to Git";
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
, withPython3 ? true, python3Packages, extraPython3Packages ? []
|
, withPython3 ? true, python3Packages, extraPython3Packages ? []
|
||||||
, withJemalloc ? true, jemalloc
|
, withJemalloc ? true, jemalloc
|
||||||
|
|
||||||
|
, withPyGUI ? false
|
||||||
, vimAlias ? false
|
, vimAlias ? false
|
||||||
, configure ? null
|
, configure ? null
|
||||||
}:
|
}:
|
||||||
|
@ -45,7 +46,11 @@ let
|
||||||
};
|
};
|
||||||
|
|
||||||
pythonEnv = pythonPackages.python.buildEnv.override {
|
pythonEnv = pythonPackages.python.buildEnv.override {
|
||||||
extraLibs = [ pythonPackages.neovim ] ++ extraPythonPackages;
|
extraLibs = (
|
||||||
|
if withPyGUI
|
||||||
|
then [ pythonPackages.neovim_gui ]
|
||||||
|
else [ pythonPackages.neovim ]
|
||||||
|
) ++ extraPythonPackages;
|
||||||
ignoreCollisions = true;
|
ignoreCollisions = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -103,6 +108,9 @@ let
|
||||||
$out/bin/nvim
|
$out/bin/nvim
|
||||||
'' + optionalString withPython ''
|
'' + optionalString withPython ''
|
||||||
ln -s ${pythonEnv}/bin/python $out/bin/nvim-python
|
ln -s ${pythonEnv}/bin/python $out/bin/nvim-python
|
||||||
|
'' + optionalString withPyGUI ''
|
||||||
|
makeWrapper "${pythonEnv}/bin/pynvim" "$out/bin/pynvim" \
|
||||||
|
--prefix PATH : "$out/bin"
|
||||||
'' + optionalString withPython3 ''
|
'' + optionalString withPython3 ''
|
||||||
ln -s ${python3Env}/bin/python3 $out/bin/nvim-python3
|
ln -s ${python3Env}/bin/python3 $out/bin/nvim-python3
|
||||||
'' + optionalString (withPython || withPython3) ''
|
'' + optionalString (withPython || withPython3) ''
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ stdenv, fetchurl, cmake, boost155, zlib, openssl, R, qt4, libuuid, hunspellDicts, unzip, ant, jdk }:
|
{ stdenv, fetchurl, cmake, boost155, zlib, openssl, R, qt4, libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper }:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "0.98.110";
|
version = "0.98.110";
|
||||||
|
@ -8,7 +8,7 @@ in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "RStudio-${version}";
|
name = "RStudio-${version}";
|
||||||
|
|
||||||
buildInputs = [ cmake boost155 zlib openssl R qt4 libuuid unzip ant jdk ];
|
buildInputs = [ cmake boost155 zlib openssl R qt4 libuuid unzip ant jdk makeWrapper ];
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/rstudio/rstudio/archive/v${version}.tar.gz";
|
url = "https://github.com/rstudio/rstudio/archive/v${version}.tar.gz";
|
||||||
|
@ -61,6 +61,10 @@ stdenv.mkDerivation {
|
||||||
|
|
||||||
cmakeFlags = [ "-DRSTUDIO_TARGET=Desktop" ];
|
cmakeFlags = [ "-DRSTUDIO_TARGET=Desktop" ];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
wrapProgram $out/bin/rstudio --suffix PATH : ${gnumake}/bin
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib;
|
meta = with stdenv.lib;
|
||||||
{ description = "Set of integrated tools for the R language";
|
{ description = "Set of integrated tools for the R language";
|
||||||
homepage = http://www.rstudio.com/;
|
homepage = http://www.rstudio.com/;
|
||||||
|
|
|
@ -1,10 +1,15 @@
|
||||||
{ fetchurl, stdenv, glib, xorg, cairo, gtk, pango, makeWrapper, openssl, bzip2 }:
|
{ fetchurl, stdenv, glib, xorg, cairo, gtk, pango, makeWrapper, openssl, bzip2,
|
||||||
|
pkexecPath ? "/var/setuid-wrappers/pkexec", libredirect,
|
||||||
|
gksuSupport ? false, gksu}:
|
||||||
|
|
||||||
assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
|
assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
|
||||||
|
assert gksuSupport -> gksu != null;
|
||||||
|
|
||||||
let
|
let
|
||||||
build = "3083";
|
build = "3083";
|
||||||
libPath = stdenv.lib.makeLibraryPath [glib xorg.libX11 gtk cairo pango];
|
libPath = stdenv.lib.makeLibraryPath [glib xorg.libX11 gtk cairo pango];
|
||||||
|
redirects = [ "/usr/bin/pkexec=${pkexecPath}" ]
|
||||||
|
++ stdenv.lib.optional gksuSupport "/usr/bin/gksudo=${gksu}/bin/gksudo";
|
||||||
in let
|
in let
|
||||||
# package with just the binaries
|
# package with just the binaries
|
||||||
sublime = stdenv.mkDerivation {
|
sublime = stdenv.mkDerivation {
|
||||||
|
@ -35,6 +40,9 @@ in let
|
||||||
--set-rpath ${libPath}:${stdenv.cc.cc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"} \
|
--set-rpath ${libPath}:${stdenv.cc.cc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"} \
|
||||||
$i
|
$i
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# Rewrite pkexec|gksudo argument. Note that we can't delete bytes in binary.
|
||||||
|
sed -i -e 's,/bin/cp\x00,cp\x00\x00\x00\x00\x00\x00,g' sublime_text
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
|
@ -44,6 +52,10 @@ in let
|
||||||
mkdir -p $out
|
mkdir -p $out
|
||||||
cp -prvd * $out/
|
cp -prvd * $out/
|
||||||
|
|
||||||
|
wrapProgram $out/sublime_text \
|
||||||
|
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
|
||||||
|
--set NIX_REDIRECTS ${builtins.concatStringsSep ":" redirects}
|
||||||
|
|
||||||
# Without this, plugin_host crashes, even though it has the rpath
|
# Without this, plugin_host crashes, even though it has the rpath
|
||||||
wrapProgram $out/plugin_host --prefix LD_PRELOAD : ${stdenv.cc.cc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}/libgcc_s.so.1:${openssl}/lib/libssl.so:${bzip2}/lib/libbz2.so
|
wrapProgram $out/plugin_host --prefix LD_PRELOAD : ${stdenv.cc.cc}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}/libgcc_s.so.1:${openssl}/lib/libssl.so:${bzip2}/lib/libbz2.so
|
||||||
'';
|
'';
|
||||||
|
@ -64,7 +76,7 @@ in stdenv.mkDerivation {
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Sophisticated text editor for code, markup and prose";
|
description = "Sophisticated text editor for code, markup and prose";
|
||||||
homepage = https://www.sublimetext.com/;
|
homepage = https://www.sublimetext.com/;
|
||||||
maintainers = with maintainers; [ wmertens ];
|
maintainers = with maintainers; [ wmertens demin-dmitriy ];
|
||||||
license = licenses.unfree;
|
license = licenses.unfree;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ stdenv, fetchFromGitHub, ncurses, gettext, pkgconfig
|
{ stdenv, fetchFromGitHub, ncurses, gettext, pkgconfig
|
||||||
|
|
||||||
# apple frameworks
|
# apple frameworks
|
||||||
, CoreServices, CoreData, Cocoa, Foundation, libobjc, cf-private }:
|
, Carbon, Cocoa }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "vim-${version}";
|
name = "vim-${version}";
|
||||||
|
@ -14,16 +14,10 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "1m34s2hsc5lcish6gmvn2iwaz0k7jc3kg9q4nf30fj9inl7gaybs";
|
sha256 = "1m34s2hsc5lcish6gmvn2iwaz0k7jc3kg9q4nf30fj9inl7gaybs";
|
||||||
};
|
};
|
||||||
|
|
||||||
# this makes maintainers very sad
|
|
||||||
# open source CF doesn't have anything NSArray-related, causing linking errors. the
|
|
||||||
# missing symbol is in system CoreFoundation.
|
|
||||||
NIX_LDFLAGS = stdenv.lib.optional stdenv.isDarwin
|
|
||||||
"/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation";
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
buildInputs = [ ncurses pkgconfig ]
|
buildInputs = [ ncurses pkgconfig ]
|
||||||
++ stdenv.lib.optionals stdenv.isDarwin [ cf-private CoreData CoreServices Cocoa Foundation libobjc ];
|
++ stdenv.lib.optionals stdenv.isDarwin [ Carbon Cocoa ];
|
||||||
nativeBuildInputs = [ gettext ];
|
nativeBuildInputs = [ gettext ];
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
{ stdenv, fetchurl, cairo, colord, glib, gtk3, gusb, intltool, itstool, libusb
|
{ stdenv, fetchurl, cairo, colord, glib, gtk3, gusb, intltool, itstool, libusb
|
||||||
, libxml2, makeWrapper, packagekit, pkgconfig, saneBackends, systemd, vala }:
|
, libxml2, makeWrapper, pkgconfig, saneBackends, systemd, vala }:
|
||||||
|
|
||||||
let version = "3.18.1"; in
|
let version = "3.19.1"; in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "simple-scan-${version}";
|
name = "simple-scan-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
sha256 = "1i37j36kbn1h8yfzcvbis6f38xz2nj5512ls3gb0j5na0bvja2cw";
|
sha256 = "1d2a8cncq36ly60jpz0fzdw1lgxynl6lyrlw0q66yijlxqn81ynr";
|
||||||
url = "https://launchpad.net/simple-scan/3.18/${version}/+download/${name}.tar.xz";
|
url = "https://launchpad.net/simple-scan/3.19/${version}/+download/${name}.tar.xz";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ cairo colord glib gusb gtk3 libusb libxml2 packagekit
|
buildInputs = [ cairo colord glib gusb gtk3 libusb libxml2 saneBackends
|
||||||
saneBackends systemd vala ];
|
systemd vala ];
|
||||||
nativeBuildInputs = [ intltool itstool makeWrapper pkgconfig ];
|
nativeBuildInputs = [ intltool itstool makeWrapper pkgconfig ];
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
|
@ -281,7 +281,7 @@ let
|
||||||
buildInputs = [ scope.canberra ];
|
buildInputs = [ scope.canberra ];
|
||||||
nativeBuildInputs = [ scope.pkgconfig ];
|
nativeBuildInputs = [ scope.pkgconfig ];
|
||||||
# cmake does not detect path to `ilmbase`
|
# cmake does not detect path to `ilmbase`
|
||||||
NIX_CFLAGS_COMPILE = "-I${scope.ilmbase}/include/OpenEXR";
|
NIX_CFLAGS_COMPILE = "-I${scope.ilmbase}/include/OpenEXR -I${pkgs.glib}/include/glib-2.0 -I${pkgs.glib}/lib/glib-2.0/include";
|
||||||
# some components of this package have been replaced in other packages
|
# some components of this package have been replaced in other packages
|
||||||
meta = { priority = 10; };
|
meta = { priority = 10; };
|
||||||
};
|
};
|
||||||
|
|
|
@ -23,11 +23,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gnuradio-${version}";
|
name = "gnuradio-${version}";
|
||||||
version = "3.7.7.1";
|
version = "3.7.8";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://gnuradio.org/releases/gnuradio/${name}.tar.gz";
|
url = "http://gnuradio.org/releases/gnuradio/${name}.tar.gz";
|
||||||
sha256 = "0kjqav1rdyi60vq85djmigyrgh606ga625icwj15iarlqwzv29rb";
|
sha256 = "0wj1rp8fdrmsfqbcaicvfxk71vkd9hcczmb1vrnvfzypnmacn6gy";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
|
|
@ -3,11 +3,11 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gphoto2-2.5.5";
|
name = "gphoto2-2.5.8";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/gphoto/${name}.tar.bz2";
|
url = "mirror://sourceforge/gphoto/${name}.tar.bz2";
|
||||||
sha256 = "1d0lvp5gsrss72597wixhgh8prcw4g7izfg3zdzzsswjgnlsxsal";
|
sha256 = "0kgfql6c64ha1gahjdwlqhmkslnfywmc2fkys4c5682zv4awvax9";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig gettext ];
|
nativeBuildInputs = [ pkgconfig gettext ];
|
||||||
|
|
21
pkgs/applications/misc/jp2a/default.nix
Normal file
21
pkgs/applications/misc/jp2a/default.nix
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
{ stdenv, fetchurl, libjpeg }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
version = "1.0.6";
|
||||||
|
name = "jp2a-${version}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "mirror://sourceforge/jp2a/${name}.tar.gz";
|
||||||
|
sha256 = "076frk3pa16s4r1b10zgy81vdlz0385zh3ykbnkaij25jn5aqc09";
|
||||||
|
};
|
||||||
|
|
||||||
|
makeFlags = "PREFIX=$(out)";
|
||||||
|
|
||||||
|
buildInputs = [ libjpeg ];
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = https://csl.name/jp2a/;
|
||||||
|
description = "A small utility that converts JPG images to ASCII.";
|
||||||
|
license = licenses.gpl2;
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,13 +1,13 @@
|
||||||
{ stdenv, fetchurl, pkgs, pythonPackages }:
|
{ stdenv, fetchurl, pkgs, pythonPackages }:
|
||||||
|
|
||||||
pythonPackages.buildPythonPackage rec {
|
pythonPackages.buildPythonPackage rec {
|
||||||
version = "0.6.0";
|
version = "0.6.3";
|
||||||
name = "khard-${version}";
|
name = "khard-${version}";
|
||||||
namePrefix = "";
|
namePrefix = "";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/scheibler/khard/archive/v${version}.tar.gz";
|
url = "https://github.com/scheibler/khard/archive/v${version}.tar.gz";
|
||||||
sha256 = "1ag6p416iibwgvijjc8bwyrssxw3s3j559700xfgp10vj0nqk1hb";
|
sha256 = "1dn1v4ycgqbq8vknz1dy710asq8cizxmzaynn69xknwkpgda7fm9";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = with pythonPackages; [
|
propagatedBuildInputs = with pythonPackages; [
|
||||||
|
|
|
@ -1,41 +0,0 @@
|
||||||
{ stdenv, fetchurl, qt4, muparser, which, boost, pkgconfig }:
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
version = "2.0.8";
|
|
||||||
name = "librecad-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "https://github.com/LibreCAD/LibreCAD/tarball/${version}";
|
|
||||||
name = name + ".tar.gz";
|
|
||||||
sha256 = "110vn1rvzidg8k6ifz1zws2wsn4cd05xl5ha0hbff2ln7izy84zc";
|
|
||||||
};
|
|
||||||
|
|
||||||
patchPhase = ''
|
|
||||||
sed -i -e s,/bin/bash,`type -P bash`, scripts/postprocess-unix.sh
|
|
||||||
sed -i -e s,/usr/share,$out/share, librecad/src/lib/engine/rs_system.cpp
|
|
||||||
'';
|
|
||||||
|
|
||||||
configurePhase = ''
|
|
||||||
qmake librecad.pro PREFIX=$out MUPARSER_DIR=${muparser} BOOST_DIR=${boost.dev}
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/bin $out/share
|
|
||||||
cp -R unix/librecad $out/bin
|
|
||||||
cp -R unix/resources $out/share/librecad
|
|
||||||
'';
|
|
||||||
|
|
||||||
buildInputs = [ qt4 muparser which boost ];
|
|
||||||
nativeBuildInputs = [ pkgconfig ];
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "A 2D CAD package based upon Qt";
|
|
||||||
homepage = http://librecad.org;
|
|
||||||
repositories.git = git://github.com/LibreCAD/LibreCAD.git;
|
|
||||||
license = stdenv.lib.licenses.gpl2;
|
|
||||||
maintainers = with stdenv.lib.maintainers; [viric];
|
|
||||||
platforms = with stdenv.lib.platforms; linux;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,20 +1,23 @@
|
||||||
{ stdenv, fetchurl, qt4, muparser, which}:
|
{ stdenv, fetchurl, qt4, muparser, which, boost, pkgconfig }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation rec {
|
||||||
name = "librecad-1.0.4";
|
version = "2.0.8";
|
||||||
|
name = "librecad-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = https://github.com/LibreCAD/LibreCAD/tarball/v1.0.4;
|
url = "https://github.com/LibreCAD/LibreCAD/tarball/${version}";
|
||||||
name = "librecad-1.0.4.tar.gz";
|
name = name + ".tar.gz";
|
||||||
sha256 = "00nzbijw7pn1zkj4256da501xcm6rkcvycpa79y6dr2p6c43yc6m";
|
sha256 = "110vn1rvzidg8k6ifz1zws2wsn4cd05xl5ha0hbff2ln7izy84zc";
|
||||||
};
|
};
|
||||||
|
|
||||||
patchPhase = ''
|
patchPhase = ''
|
||||||
sed -i -e s,/bin/bash,`type -P bash`, scripts/postprocess-unix.sh
|
sed -i -e s,/bin/bash,`type -P bash`, scripts/postprocess-unix.sh
|
||||||
sed -i -e s,/usr/share,$out/share, src/lib/engine/rs_system.cpp
|
sed -i -e s,/usr/share,$out/share, librecad/src/lib/engine/rs_system.cpp
|
||||||
'';
|
'';
|
||||||
|
|
||||||
configurePhase = "qmake PREFIX=$out";
|
configurePhase = ''
|
||||||
|
qmake librecad.pro PREFIX=$out MUPARSER_DIR=${muparser} BOOST_DIR=${boost.dev}
|
||||||
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/bin $out/share
|
mkdir -p $out/bin $out/share
|
||||||
|
@ -22,11 +25,15 @@ stdenv.mkDerivation {
|
||||||
cp -R unix/resources $out/share/librecad
|
cp -R unix/resources $out/share/librecad
|
||||||
'';
|
'';
|
||||||
|
|
||||||
buildInputs = [ qt4 muparser which ];
|
buildInputs = [ qt4 muparser which boost ];
|
||||||
|
nativeBuildInputs = [ pkgconfig ];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "A 2D CAD package based upon Qt";
|
description = "A 2D CAD package based upon Qt";
|
||||||
homepage = http://librecad.org;
|
homepage = http://librecad.org;
|
||||||
|
repositories.git = git://github.com/LibreCAD/LibreCAD.git;
|
||||||
license = stdenv.lib.licenses.gpl2;
|
license = stdenv.lib.licenses.gpl2;
|
||||||
maintainers = with stdenv.lib.maintainers; [viric];
|
maintainers = with stdenv.lib.maintainers; [viric];
|
||||||
platforms = with stdenv.lib.platforms; linux;
|
platforms = with stdenv.lib.platforms; linux;
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
{ stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, libmediainfo, wxGTK, desktop_file_utils, libSM, imagemagick }:
|
{ stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, libmediainfo, wxGTK, desktop_file_utils, libSM, imagemagick }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "0.7.77";
|
version = "0.7.78";
|
||||||
name = "mediainfo-gui-${version}";
|
name = "mediainfo-gui-${version}";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
|
url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
|
||||||
sha256 = "0n15z1jlj5s69pwk3mdv4r5c8ncfy7qjbdw5wfwynwypkl5382pn";
|
sha256 = "0458rxla3nhw9rbb2psak8qvxwr0drfhdl82k6wvb3a38xb0qij3";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ automake autoconf libtool pkgconfig libzen libmediainfo wxGTK desktop_file_utils libSM imagemagick ];
|
buildInputs = [ automake autoconf libtool pkgconfig libzen libmediainfo wxGTK desktop_file_utils libSM imagemagick ];
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
{ stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, libmediainfo, zlib }:
|
{ stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, libmediainfo, zlib }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "0.7.77";
|
version = "0.7.78";
|
||||||
name = "mediainfo-${version}";
|
name = "mediainfo-${version}";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
|
url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
|
||||||
sha256 = "0n15z1jlj5s69pwk3mdv4r5c8ncfy7qjbdw5wfwynwypkl5382pn";
|
sha256 = "0458rxla3nhw9rbb2psak8qvxwr0drfhdl82k6wvb3a38xb0qij3";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ automake autoconf libtool pkgconfig libzen libmediainfo zlib ];
|
buildInputs = [ automake autoconf libtool pkgconfig libzen libmediainfo zlib ];
|
||||||
|
|
|
@ -1,18 +1,18 @@
|
||||||
{ stdenv, python27Packages, fetchgit }:
|
{ stdenv, python27Packages, fetchFromGitHub }:
|
||||||
let
|
|
||||||
py = python27Packages;
|
|
||||||
in
|
|
||||||
py.buildPythonPackage rec {
|
|
||||||
name = "printrun";
|
|
||||||
|
|
||||||
src = fetchgit {
|
python27Packages.buildPythonPackage rec {
|
||||||
url = "https://github.com/kliment/Printrun";
|
name = "printrun-20150310";
|
||||||
rev = "2299962bb338d3f4335b97211ee609ebaea008f7"; # printrun-20140801
|
|
||||||
sha256 = "19nay7xclm36x56hpm87gw4ca6rnygpqaw5ypbmrz0hyxx140abj";
|
src = fetchFromGitHub {
|
||||||
|
owner = "kliment";
|
||||||
|
repo = "Printrun";
|
||||||
|
rev = name;
|
||||||
|
sha256 = "09ijv8h4k5h15swg64s7igamvynawz7gdi7hiymzrzywdvr0zwsa";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = with py; [ wxPython30 pyserial dbus psutil
|
propagatedBuildInputs = with python27Packages; [
|
||||||
numpy pyopengl pyglet cython ];
|
wxPython30 pyserial dbus psutil numpy pyopengl pyglet cython
|
||||||
|
];
|
||||||
|
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
|
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "qtpass-${version}";
|
name = "qtpass-${version}";
|
||||||
version = "1.0.1";
|
version = "1.0.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/IJHack/qtpass/archive/v${version}.tar.gz";
|
url = "https://github.com/IJHack/qtpass/archive/v${version}.tar.gz";
|
||||||
sha256 = "1mmncvamvwr3hizc1jgpb5kscl9idmrfd2785jhwi87q11wjrwxz";
|
sha256 = "a61a29ddd5a874fcdcb915dbc9d91e10787be22d794cc8ebb2ba3cff27030c67";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ git gnupg makeWrapper pass qt5.base ];
|
buildInputs = [ git gnupg makeWrapper pass qt5.base ];
|
||||||
|
|
|
@ -1,18 +1,19 @@
|
||||||
{ stdenv, fetchurl, autoconf, automake, pkgconfig
|
{ stdenv, fetchurl, autoconf, automake, pkgconfig
|
||||||
, libX11, libXinerama, libXft, pango
|
, libX11, libXinerama, libXft, pango, cairo
|
||||||
, i3Support ? false, i3
|
, libstartup_notification, i3Support ? false, i3
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "rofi-${version}";
|
name = "rofi-${version}";
|
||||||
version = "0.15.8";
|
version = "0.15.10";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/DaveDavenport/rofi/archive/${version}.tar.gz";
|
url = "https://github.com/DaveDavenport/rofi/archive/${version}.tar.gz";
|
||||||
sha256 = "1qhj8xrxfnzy16g577w0zxg1cy885rbqydlbbxgfk0dpjvq70lq6";
|
sha256 = "0wwdc9dj8qfmqv4pcllq78h38hqmz9s3hqf71fsk71byiid69ln9";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ autoconf automake pkgconfig libX11 libXinerama libXft pango
|
buildInputs = [ autoconf automake pkgconfig libX11 libXinerama libXft pango
|
||||||
|
cairo libstartup_notification
|
||||||
] ++ stdenv.lib.optional i3Support i3;
|
] ++ stdenv.lib.optional i3Support i3;
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
|
|
|
@ -3,13 +3,13 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "1.2.7";
|
version = "1.2.9";
|
||||||
name = "slic3r-${version}";
|
name = "slic3r-${version}";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "git://github.com/alexrj/Slic3r";
|
url = "git://github.com/alexrj/Slic3r";
|
||||||
rev = "refs/tags/${version}";
|
rev = "refs/tags/${version}";
|
||||||
sha256 = "1bybbl8b0lfh9wkn1k9cxd11hlc5064wzh0fk6zdmc9vnnay399i";
|
sha256 = "1xwl8ay5m6pwrrnhbmnmpwyh4wc8hsi4ldzgq98f4bh6szj6jh4z";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = with perlPackages; [ perl makeWrapper which
|
buildInputs = with perlPackages; [ perl makeWrapper which
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "taskwarrior-${version}";
|
name = "taskwarrior-${version}";
|
||||||
version = "2.4.4";
|
version = "2.5.0";
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://www.taskwarrior.org/download/task-${version}.tar.gz";
|
url = "http://www.taskwarrior.org/download/task-${version}.tar.gz";
|
||||||
sha256 = "7ff406414e0be480f91981831507ac255297aab33d8246f98dbfd2b1b2df8e3b";
|
sha256 = "0dj66c4pwdmfnzdlm1r23gqim6banycyzvmq266114v9b90ng3jd";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake libuuid gnutls ];
|
nativeBuildInputs = [ cmake libuuid gnutls ];
|
||||||
|
|
|
@ -37,7 +37,7 @@ mkChromiumDerivation (base: rec {
|
||||||
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/;
|
||||||
maintainers = with maintainers; [ goibhniu chaoflow aszlig ];
|
maintainers = with maintainers; [ chaoflow aszlig ];
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
};
|
};
|
||||||
|
|
|
@ -45,10 +45,11 @@ in stdenv.mkDerivation {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
patches =
|
patches =
|
||||||
if versionOlder version "45.0.0.0"
|
(if versionOlder version "45.0.0.0"
|
||||||
then singleton ./nix_plugin_paths_44.patch
|
then singleton ./nix_plugin_paths_44.patch
|
||||||
else singleton ./nix_plugin_paths_46.patch ++
|
else singleton ./nix_plugin_paths_46.patch ++
|
||||||
optional (!versionOlder version "46.0.0.0") ./build_fixes_46.patch;
|
optional (!versionOlder version "46.0.0.0") ./build_fixes_46.patch) ++
|
||||||
|
singleton ./widevine.patch;
|
||||||
|
|
||||||
patchPhase = let
|
patchPhase = let
|
||||||
diffmod = sym: "/^${sym} /{s/^${sym} //;${transform ""};s/^/${sym} /}";
|
diffmod = sym: "/^${sym} /{s/^${sym} //;${transform ""};s/^/${sym} /}";
|
||||||
|
|
|
@ -13,9 +13,9 @@
|
||||||
sha256bin64 = "1m8vv3qh79an3719afz7n2ijqanf4cyxz2q4bzm512x52z5zipl7";
|
sha256bin64 = "1m8vv3qh79an3719afz7n2ijqanf4cyxz2q4bzm512x52z5zipl7";
|
||||||
};
|
};
|
||||||
stable = {
|
stable = {
|
||||||
version = "46.0.2490.71";
|
version = "45.0.2454.101";
|
||||||
sha256 = "1dnwhwvn39x8lm1jszjn8y7vy478zy75gm696rr2dvk4kqj1hjyd";
|
sha256 = "1yw5xlgy5hd3iwcyf0sillq5p367fcpvp4mizpmv52cwmv52ss0v";
|
||||||
sha256bin32 = "1v1acg32dzmkydzy7sh6xjbzqar052iw8x8hql2yjz5kxznir4sf";
|
sha256bin32 = "1ll8lmkmx7v74naz1vcnrwk5ighh0skfcb66jkq4kgxrb5fjgwm5";
|
||||||
sha256bin64 = "15ladhxiym760mid5zq09vp73irzwlp31br9yqslzgv4460ma3np";
|
sha256bin64 = "1cwbd3n77dnbfnrfr8g0qng9xkgvz6y7mx489gpx1wsamgi42bzj";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
diff -upr chromium-42.0.2311.90.orig/third_party/widevine/cdm/widevine_cdm_version.h chromium-42.0.2311.90/third_party/widevine/cdm/widevine_cdm_version.h
|
||||||
|
--- chromium-42.0.2311.90.orig/third_party/widevine/cdm/widevine_cdm_version.h 2015-04-15 01:18:59.000000000 +0300
|
||||||
|
+++ chromium-42.0.2311.90/third_party/widevine/cdm/widevine_cdm_version.h 2015-04-15 09:09:49.157260050 +0300
|
||||||
|
@@ -14,4 +14,8 @@
|
||||||
|
// - WIDEVINE_CDM_VERSION_STRING (with the version of the CDM that's available
|
||||||
|
// as a string, e.g., "1.0.123.456").
|
||||||
|
|
||||||
|
+#include "third_party/widevine/cdm/widevine_cdm_common.h"
|
||||||
|
+#define WIDEVINE_CDM_AVAILABLE
|
||||||
|
+#define WIDEVINE_CDM_VERSION_STRING "@WIDEVINE_VERSION@"
|
||||||
|
+
|
||||||
|
#endif // WIDEVINE_CDM_VERSION_H_
|
|
@ -36,7 +36,7 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
# -> http://get.adobe.com/flashplayer/
|
# -> http://get.adobe.com/flashplayer/
|
||||||
version = "11.2.202.535";
|
version = "11.2.202.540";
|
||||||
|
|
||||||
src =
|
src =
|
||||||
if stdenv.system == "x86_64-linux" then
|
if stdenv.system == "x86_64-linux" then
|
||||||
|
@ -47,7 +47,7 @@ let
|
||||||
else rec {
|
else rec {
|
||||||
inherit version;
|
inherit version;
|
||||||
url = "http://fpdownload.adobe.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
|
url = "http://fpdownload.adobe.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
|
||||||
sha256 = "13fy842plbnv4w081sbhga0jrpbwz8yydg49c2v96l2marmzw9zp";
|
sha256 = "0zya9n5h669wbna182ig6dl4yf5sv4lvqk19rqhcwv3i718b0ai6";
|
||||||
}
|
}
|
||||||
else if stdenv.system == "i686-linux" then
|
else if stdenv.system == "i686-linux" then
|
||||||
if debug then
|
if debug then
|
||||||
|
@ -60,7 +60,7 @@ let
|
||||||
else rec {
|
else rec {
|
||||||
inherit version;
|
inherit version;
|
||||||
url = "http://fpdownload.adobe.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
|
url = "http://fpdownload.adobe.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
|
||||||
sha256 = "0z99nz1k0cf86dgs367ddxfnf05m32psidpmdzi5qiqaj10h6j6s";
|
sha256 = "1n8ik5f257s388ql7gkmfh1iqil0g4kzxh3zsv2x8r6ssrvpq1by";
|
||||||
}
|
}
|
||||||
else throw "Flash Player is not supported on this platform";
|
else throw "Flash Player is not supported on this platform";
|
||||||
|
|
||||||
|
|
|
@ -20,11 +20,11 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
# NOTE: When updating, please also update in current stable, as older versions stop working
|
# NOTE: When updating, please also update in current stable, as older versions stop working
|
||||||
version = "3.8.9";
|
version = "3.10.9";
|
||||||
sha256 =
|
sha256 =
|
||||||
{
|
{
|
||||||
"x86_64-linux" = "1mdhf57bqi4vihbzv5lz8zk4n576c1qjm7hzcq4f5qvkdsmp5in2";
|
"x86_64-linux" = "1kg6x1z8if63s15464xiz59qwncb5xhv108icicb5s2yhjzzyi29";
|
||||||
"i686-linux" = "0gighh782jjmlgqgbw2d00a3ri5h3inqdik7v70f1yygvkr7awy8";
|
"i686-linux" = "172x9f7x425w5ljr6xa0srvv19qysmvr3gs3jkbmnxfwrfxyxf79";
|
||||||
}."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
|
}."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
|
||||||
|
|
||||||
arch =
|
arch =
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
{ stdenv, fetchurl, dbus, gnutls, wxGTK30, libidn, tinyxml, gettext
|
{ stdenv, fetchurl, dbus, gnutls, wxGTK30, libidn, tinyxml, gettext
|
||||||
, pkgconfig, xdg_utils, gtk2, sqlite, pugixml }:
|
, pkgconfig, xdg_utils, gtk2, sqlite, pugixml }:
|
||||||
|
|
||||||
let version = "3.14.0"; in
|
let version = "3.14.1"; in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "filezilla-${version}";
|
name = "filezilla-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/project/filezilla/FileZilla_Client/${version}/FileZilla_${version}_src.tar.bz2";
|
url = "mirror://sourceforge/project/filezilla/FileZilla_Client/${version}/FileZilla_${version}_src.tar.bz2";
|
||||||
sha256 = "1zbrsmrqnxzj6cnf2y1sx384nv6c8l3338ynazjfbiqbyfs5lf4j";
|
sha256 = "0v6lb7miy6jbnswii816na8818xqxlvs1vadnii21xfmrsv7225i";
|
||||||
};
|
};
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
|
|
|
@ -1,56 +1,67 @@
|
||||||
{ stdenv, fetchurl, ant, jdk }:
|
{ stdenv, fetchurl, fetchgit, ant, jdk, makeWrapper }:
|
||||||
|
|
||||||
let
|
let
|
||||||
# The .gitmodules in freenet-official-20130413-eccc9b3198
|
|
||||||
# points to freenet-contrib-staging-ce3b7d5
|
|
||||||
freenet_ext = fetchurl {
|
freenet_ext = fetchurl {
|
||||||
url = https://downloads.freenetproject.org/latest/freenet-ext.jar;
|
url = https://downloads.freenetproject.org/latest/freenet-ext.jar;
|
||||||
sha1 = "507ab3f6ee91f47c187149136fb6d6e98f9a8c7f";
|
sha256 = "17ypljdvazgx2z6hhswny1lxfrknysz3x6igx8vl3xgdpvbb7wij";
|
||||||
};
|
};
|
||||||
|
|
||||||
bcprov = fetchurl {
|
bcprov = fetchurl {
|
||||||
url = http://www.bouncycastle.org/download/bcprov-jdk15on-148.jar;
|
url = https://downloads.freenetproject.org/latest/bcprov-jdk15on-152.jar;
|
||||||
sha256 = "12129q8rmqwlvj6z4j0gc3w0hq5ccrkf2gdlsggp3iws7cp7wjw0";
|
sha256 = "0wqpdcvcfh939fk8yr033ijzr1vjbp6ydlnv5ly8jiykwj0x3i0d";
|
||||||
};
|
};
|
||||||
|
seednodes = fetchurl {
|
||||||
|
url = https://downloads.freenetproject.org/alpha/opennet/seednodes.fref;
|
||||||
|
sha256 = "109zn9w8axdkjwhkkcm2s8dvib0mq0n8imjgs3r8hvi128cjsmg9";
|
||||||
|
};
|
||||||
|
version = "build01470";
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "freenet-20130413-eccc9b3198";
|
name = "freenet-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = https://github.com/freenet/fred-official/tarball/eccc9b3198;
|
src = fetchgit {
|
||||||
name = "freenet-official-eccc9b3198.tar.gz";
|
url = https://github.com/freenet/fred;
|
||||||
sha256 = "0x0s8gmb95770l7968r99sq0588vf0n1687ivc2hixar19cw620y";
|
rev = "refs/tags/${version}";
|
||||||
|
sha256 = "1b6e6fec2b9a729d4a25605fa142df9ea42e59b379ff665f580e32c6178c9746";
|
||||||
};
|
};
|
||||||
|
|
||||||
patchPhase = ''
|
patchPhase = ''
|
||||||
cp ${freenet_ext} lib/freenet/freenet-ext.jar
|
cp ${freenet_ext} lib/freenet/freenet-ext.jar
|
||||||
cp ${bcprov} lib/bcprov.jar
|
cp ${bcprov} lib/bcprov-jdk15on-152.jar
|
||||||
|
|
||||||
sed '/antcall.*-ext/d' -i build.xml
|
sed '/antcall.*-ext/d' -i build.xml
|
||||||
|
sed 's/@unknown@/${version}/g' -i build-clean.xml
|
||||||
'';
|
'';
|
||||||
|
|
||||||
buildInputs = [ ant jdk ];
|
buildInputs = [ ant jdk makeWrapper ];
|
||||||
|
|
||||||
buildPhase = "ant package-only";
|
buildPhase = "ant package-only";
|
||||||
|
|
||||||
|
freenetWrapper = ./freenetWrapper;
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/share/freenet $out/bin
|
mkdir -p $out/share/freenet $out/bin
|
||||||
cp lib/bcprov.jar $out/share/freenet
|
cp lib/bcprov-jdk15on-152.jar $out/share/freenet
|
||||||
cp lib/freenet/freenet-ext.jar $out/share/freenet
|
cp lib/freenet/freenet-ext.jar $out/share/freenet
|
||||||
cp dist/freenet.jar $out/share/freenet
|
cp dist/freenet.jar $out/share/freenet
|
||||||
|
|
||||||
cat <<EOF > $out/bin/freenet
|
cat <<EOF > $out/bin/freenet.wrapped
|
||||||
#!${stdenv.shell}
|
#!${stdenv.shell}
|
||||||
${jdk.jre}/bin/java -cp $out/share/freenet/bcprov.jar:$out/share/freenet/freenet-ext.jar:$out/share/freenet/freenet.jar \\
|
${jdk.jre}/bin/java -cp $out/share/freenet/bcprov-jdk15on-152.jar:$out/share/freenet/freenet-ext.jar:$out/share/freenet/freenet.jar \\
|
||||||
-Xmx1024M freenet.node.NodeStarter
|
-Xmx1024M freenet.node.NodeStarter
|
||||||
EOF
|
EOF
|
||||||
chmod +x $out/bin/freenet
|
chmod +x $out/bin/freenet.wrapped
|
||||||
|
makeWrapper $freenetWrapper $out/bin/freenet \
|
||||||
|
--set FREENET_ROOT "$out" \
|
||||||
|
--set FREENET_SEEDNODES "${seednodes}"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Decentralised and censorship-resistant network";
|
description = "Decentralised and censorship-resistant network";
|
||||||
homepage = https://freenetproject.org/;
|
homepage = https://freenetproject.org/;
|
||||||
license = stdenv.lib.licenses.gpl2Plus;
|
license = stdenv.lib.licenses.gpl2Plus;
|
||||||
|
maintainers = [ stdenv.lib.maintainers.doublec ];
|
||||||
platforms = with stdenv.lib.platforms; linux;
|
platforms = with stdenv.lib.platforms; linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
16
pkgs/applications/networking/p2p/freenet/freenetWrapper
Executable file
16
pkgs/applications/networking/p2p/freenet/freenetWrapper
Executable file
|
@ -0,0 +1,16 @@
|
||||||
|
#! /usr/bin/env bash
|
||||||
|
|
||||||
|
export FREENET_HOME="$HOME/.local/share/freenet"
|
||||||
|
if [ -n "$XDG_DATA_HOME" ]
|
||||||
|
then export FREENET_HOME="$XDG_DATA_HOME/freenet"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -d $FREENET_HOME ]; then
|
||||||
|
mkdir -p $FREENET_HOME
|
||||||
|
fi
|
||||||
|
|
||||||
|
cp -u $FREENET_SEEDNODES $FREENET_HOME/seednodes.fref
|
||||||
|
chmod u+rw $FREENET_HOME/seednodes.fref
|
||||||
|
|
||||||
|
cd $FREENET_HOME
|
||||||
|
exec $FREENET_ROOT/bin/freenet.wrapped "$@"
|
|
@ -1,6 +1,5 @@
|
||||||
{ stdenv, fetchurl, libX11, libXtst, libXext, libXdamage, libXfixes,
|
{ stdenv, fetchurl, libX11, libXtst, libXext, libXdamage, libXfixes,
|
||||||
wineUnstable, makeWrapper, libXau , bash, patchelf, config,
|
wineUnstable, makeWrapper, libXau , patchelf, config }:
|
||||||
acceptLicense ? false }:
|
|
||||||
|
|
||||||
with stdenv.lib;
|
with stdenv.lib;
|
||||||
|
|
||||||
|
@ -30,22 +29,23 @@ stdenv.mkDerivation {
|
||||||
rm -R $out/share/teamviewer/tv_bin/wine/{bin,lib,share}
|
rm -R $out/share/teamviewer/tv_bin/wine/{bin,lib,share}
|
||||||
|
|
||||||
cat > $out/bin/teamviewer << EOF
|
cat > $out/bin/teamviewer << EOF
|
||||||
#!${bash}/bin/sh
|
#!${stdenv.shell}
|
||||||
export LD_LIBRARY_PATH=${toldpath}\''${LD_LIBRARY_PATH:+:\$LD_LIBRARY_PATH}
|
export LD_LIBRARY_PATH=${toldpath}\''${LD_LIBRARY_PATH:+:\$LD_LIBRARY_PATH}
|
||||||
export PATH=${topath}\''${PATH:+:\$PATH}
|
export PATH=${topath}\''${PATH:+:\$PATH}
|
||||||
$out/share/teamviewer/tv_bin/script/teamviewer "\$@"
|
$out/share/teamviewer/tv_bin/script/teamviewer "\$@"
|
||||||
EOF
|
EOF
|
||||||
chmod +x $out/bin/teamviewer
|
chmod +x $out/bin/teamviewer
|
||||||
|
|
||||||
patchelf --set-rpath "${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib:${libX11}/lib:${libXext}/lib:${libXau}/lib:${libXdamage}/lib:${libXfixes}/lib" $out/share/teamviewer/tv_bin/teamviewerd
|
|
||||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/share/teamviewer/tv_bin/teamviewerd
|
|
||||||
ln -s $out/share/teamviewer/tv_bin/teamviewerd $out/bin/
|
ln -s $out/share/teamviewer/tv_bin/teamviewerd $out/bin/
|
||||||
${optionalString acceptLicense "
|
rm -rf $out/share/teamviewer/logfiles $out/share/teamviewer/config
|
||||||
cat > $out/share/teamviewer/config/global.conf << EOF
|
ln -sv /var/tmp/teamviewer10/logs/ $out/share/teamviewer/logfiles
|
||||||
[int32] EulaAccepted = 1
|
ln -sv /var/tmp/teamviewer10/config/ $out/share/teamviewer/config
|
||||||
[int32] EulaAcceptedRevision = 6
|
'';
|
||||||
EOF
|
|
||||||
"}
|
# the fixupPhase undoes the rpath patch
|
||||||
|
postFixup = ''
|
||||||
|
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/share/teamviewer/tv_bin/teamviewerd
|
||||||
|
patchelf --set-rpath "${stdenv.cc.cc}/lib64:${stdenv.cc.cc}/lib:${libX11}/lib:${libXext}/lib:${libXau}/lib:${libXdamage}/lib:${libXfixes}/lib" $out/share/teamviewer/tv_bin/teamviewerd
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
|
|
@ -4,11 +4,11 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gnumeric-1.12.23";
|
name = "gnumeric-1.12.24";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/gnumeric/1.12/${name}.tar.xz";
|
url = "mirror://gnome/sources/gnumeric/1.12/${name}.tar.xz";
|
||||||
sha256 = "0lcmw4jrfg9y2fhx13xw8w85vi7bcmgyn2sdjxi21xkh3szlqiq0";
|
sha256 = "0lcm8k0jb8rd5y4ii803f21nv8rx6gc3mmdlrj5h0rkkn9qm57f5";
|
||||||
};
|
};
|
||||||
|
|
||||||
configureFlags = "--disable-component";
|
configureFlags = "--disable-component";
|
||||||
|
|
41
pkgs/applications/taxes/aangifte-2013-wa/default.nix
Normal file
41
pkgs/applications/taxes/aangifte-2013-wa/default.nix
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
{ stdenv, fetchurl, makeWrapper, xdg_utils, libX11, libXext, libSM }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "aangifte2013-wa";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = http://download.belastingdienst.nl/belastingdienst/apps/linux/wa2013_linux.tar.gz;
|
||||||
|
sha256 = "1bx6qnxikzpzrn8r66qxcind3k9yznwgp05dm549ph0w4rjbhgc9";
|
||||||
|
};
|
||||||
|
|
||||||
|
dontStrip = true;
|
||||||
|
dontPatchELF = true;
|
||||||
|
|
||||||
|
buildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
buildPhase =
|
||||||
|
''
|
||||||
|
for i in bin/*; do
|
||||||
|
patchelf \
|
||||||
|
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||||
|
--set-rpath ${stdenv.lib.makeLibraryPath [ libX11 libXext libSM ]}:$(cat $NIX_CC/nix-support/orig-cc)/lib \
|
||||||
|
$i
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase =
|
||||||
|
''
|
||||||
|
mkdir -p $out
|
||||||
|
cp -prvd * $out/
|
||||||
|
wrapProgram $out/bin/wa2013ux --prefix PATH : ${xdg_utils}/bin \
|
||||||
|
--prefix LD_PRELOAD : $(cat $NIX_CC/nix-support/orig-cc)/lib/libgcc_s.so.1
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Elektronische aangifte WA 2013 (Dutch Tax Return Program)";
|
||||||
|
url = http://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/themaoverstijgend/programmas_en_formulieren/aangifteprogramma_2013_linux;
|
||||||
|
license = stdenv.lib.licenses.unfree;
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
hydraPlatforms = [];
|
||||||
|
};
|
||||||
|
}
|
41
pkgs/applications/taxes/aangifte-2014-wa/default.nix
Normal file
41
pkgs/applications/taxes/aangifte-2014-wa/default.nix
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
{ stdenv, fetchurl, makeWrapper, xdg_utils, libX11, libXext, libSM }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "aangifte2014-wa";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = http://download.belastingdienst.nl/belastingdienst/apps/linux/wa2014_linux.tar.gz;
|
||||||
|
sha256 = "0ckwk190vyvwgv8kq0xxsxvm1kniv3iip4l5aycjx1wcyic2289x";
|
||||||
|
};
|
||||||
|
|
||||||
|
dontStrip = true;
|
||||||
|
dontPatchELF = true;
|
||||||
|
|
||||||
|
buildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
buildPhase =
|
||||||
|
''
|
||||||
|
for i in bin/*; do
|
||||||
|
patchelf \
|
||||||
|
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||||
|
--set-rpath ${stdenv.lib.makeLibraryPath [ libX11 libXext libSM ]}:$(cat $NIX_CC/nix-support/orig-cc)/lib \
|
||||||
|
$i
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase =
|
||||||
|
''
|
||||||
|
mkdir -p $out
|
||||||
|
cp -prvd * $out/
|
||||||
|
wrapProgram $out/bin/wa2014ux --prefix PATH : ${xdg_utils}/bin \
|
||||||
|
--prefix LD_PRELOAD : $(cat $NIX_CC/nix-support/orig-cc)/lib/libgcc_s.so.1
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Elektronische aangifte WA 2014 (Dutch Tax Return Program)";
|
||||||
|
url = http://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/themaoverstijgend/programmas_en_formulieren/aangifteprogramma_2014_linux;
|
||||||
|
license = stdenv.lib.licenses.unfree;
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
hydraPlatforms = [];
|
||||||
|
};
|
||||||
|
}
|
41
pkgs/applications/taxes/aangifte-2014/default.nix
Normal file
41
pkgs/applications/taxes/aangifte-2014/default.nix
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
{ stdenv, fetchurl, makeWrapper, xdg_utils, libX11, libXext, libSM }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "aangifte2014-1";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = http://download.belastingdienst.nl/belastingdienst/apps/linux/ib2014_linux.tar.gz;
|
||||||
|
sha256 = "1lkpfn9ban122hw27vvscdlg3933i2lqcdhp7lk26f894jbwzq3j";
|
||||||
|
};
|
||||||
|
|
||||||
|
dontStrip = true;
|
||||||
|
dontPatchELF = true;
|
||||||
|
|
||||||
|
buildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
buildPhase =
|
||||||
|
''
|
||||||
|
for i in bin/*; do
|
||||||
|
patchelf \
|
||||||
|
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||||
|
--set-rpath ${stdenv.lib.makeLibraryPath [ libX11 libXext libSM ]}:$(cat $NIX_CC/nix-support/orig-cc)/lib \
|
||||||
|
$i
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase =
|
||||||
|
''
|
||||||
|
mkdir -p $out
|
||||||
|
cp -prvd * $out/
|
||||||
|
wrapProgram $out/bin/ib2014ux --prefix PATH : ${xdg_utils}/bin \
|
||||||
|
--prefix LD_PRELOAD : $(cat $NIX_CC/nix-support/orig-cc)/lib/libgcc_s.so.1
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Elektronische aangifte IB 2014 (Dutch Tax Return Program)";
|
||||||
|
url = http://www.belastingdienst.nl/wps/wcm/connect/bldcontentnl/themaoverstijgend/programmas_en_formulieren/aangifteprogramma_2014_linux;
|
||||||
|
license = stdenv.lib.licenses.unfree;
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
hydraPlatforms = [];
|
||||||
|
};
|
||||||
|
}
|
|
@ -71,6 +71,8 @@ rec {
|
||||||
|
|
||||||
tig = callPackage ./tig { };
|
tig = callPackage ./tig { };
|
||||||
|
|
||||||
|
transcrypt = callPackage ./transcrypt { };
|
||||||
|
|
||||||
hub = import ./hub {
|
hub = import ./hub {
|
||||||
inherit go;
|
inherit go;
|
||||||
inherit stdenv fetchgit;
|
inherit stdenv fetchgit;
|
||||||
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
{ stdenv, fetchurl, git, openssl }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "transcrypt-0.9.7";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = https://github.com/elasticdog/transcrypt/archive/v0.9.7.tar.gz;
|
||||||
|
sha256 = "0pgrf74wdc7whvwz7lkkq6qfk38n37dc5668baq7czgckibvjqdh";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ git openssl ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
install -m 755 -D transcrypt $out/bin/transcrypt
|
||||||
|
install -m 644 -D man/transcrypt.1 $out/share/man/man1/transcrypt.1
|
||||||
|
install -m 644 -D contrib/bash/transcrypt $out/share/bash-completion/completions/transcrypt
|
||||||
|
install -m 644 -D contrib/zsh/_transcrypt $out/share/zsh/site-functions/_transcrypt
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Transparently encrypt files within a Git repository";
|
||||||
|
longDescription = ''
|
||||||
|
A script to configure transparent encryption of sensitive files stored in
|
||||||
|
a Git repository. Files that you choose will be automatically encrypted
|
||||||
|
when you commit them, and automatically decrypted when you check them
|
||||||
|
out. The process will degrade gracefully, so even people without your
|
||||||
|
encryption password can safely commit changes to the repository's
|
||||||
|
non-encrypted files.
|
||||||
|
'';
|
||||||
|
homepage = https://github.com/elasticdog/transcrypt;
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = [ maintainers.elasticdog ];
|
||||||
|
platforms = platforms.all;
|
||||||
|
};
|
||||||
|
}
|
|
@ -7,11 +7,11 @@ assert stdenv ? glibc;
|
||||||
assert faacSupport -> faac != null;
|
assert faacSupport -> faac != null;
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "avidemux-2.5.6";
|
name = "avidemux-2.6.9";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = mirror://sourceforge/avidemux/avidemux_2.5.6.tar.gz;
|
url = mirror://sourceforge/avidemux/avidemux_2.6.9.tar.gz;
|
||||||
sha256 = "12wvxz0n2g85f079d8mdkkp2zm279d34m9v7qgcqndh48cn7znnn";
|
sha256 = "01jhgricd7m9hdhr22yrdjfrnl41zccm2yxw7gfb02mwcswvswy0";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ cmake pkgconfig libxml2 qt4 gtk gettext SDL libXv
|
buildInputs = [ cmake pkgconfig libxml2 qt4 gtk gettext SDL libXv
|
||||||
|
@ -40,7 +40,7 @@ stdenv.mkDerivation {
|
||||||
meta = {
|
meta = {
|
||||||
homepage = http://fixounet.free.fr/avidemux/;
|
homepage = http://fixounet.free.fr/avidemux/;
|
||||||
description = "Free video editor designed for simple video editing tasks";
|
description = "Free video editor designed for simple video editing tasks";
|
||||||
maintainers = with stdenv.lib.maintainers; [viric];
|
maintainers = with stdenv.lib.maintainers; [ viric jagajaga ];
|
||||||
platforms = with stdenv.lib.platforms; linux;
|
platforms = with stdenv.lib.platforms; linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,11 +43,11 @@ let
|
||||||
};
|
};
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
name = "kodi-" + version;
|
name = "kodi-" + version;
|
||||||
version = "15.1";
|
version = "15.2";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/xbmc/xbmc/archive/${version}-${rel}.tar.gz";
|
url = "https://github.com/xbmc/xbmc/archive/${version}-${rel}.tar.gz";
|
||||||
sha256 = "0187qxzyq4nhzbcwbhi71j4bl5k7pwjryhklil90gy5ziw6n3ckj";
|
sha256 = "043i0f1crx9glwxil4xm45z5kxpkrx316gi4ir4d3rbd5safp2nx";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
|
|
@ -59,13 +59,13 @@ in
|
||||||
|
|
||||||
plugin = "genesis";
|
plugin = "genesis";
|
||||||
namespace = "plugin.video.genesis";
|
namespace = "plugin.video.genesis";
|
||||||
version = "4.0.1";
|
version = "5.1.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "lambda81";
|
owner = "lambda81";
|
||||||
repo = "lambda-addons";
|
repo = "lambda-addons";
|
||||||
rev = "34af083980598177684eeb6e1e73da336b84575a";
|
rev = "f2cd04f33af88d60e1330573bbf2ef9cee7f0a56";
|
||||||
sha256 = "1fh3j4ymkrx9flpvnlyjp1q4avfmjv5a6yfwl3cmqnslkkp6kn9n";
|
sha256 = "0z0ldckqqif9v5nhnjr5n2495cm3z9grjmrh7czl4xlnq4bvviqq";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
@ -81,13 +81,13 @@ in
|
||||||
|
|
||||||
plugin = "svtplay";
|
plugin = "svtplay";
|
||||||
namespace = "plugin.video.svtplay";
|
namespace = "plugin.video.svtplay";
|
||||||
version = "4.0.14";
|
version = "4.0.15";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "nilzen";
|
owner = "nilzen";
|
||||||
repo = "xbmc-" + plugin;
|
repo = "xbmc-" + plugin;
|
||||||
rev = "a6041aa6cf8f8461c0ebb093d901320822539094";
|
rev = "3b926898b7007827b469ecb1c27ede4238fd26f6";
|
||||||
sha256 = "1nxa2855i1if4vsflhb88i9s12flp2yzgan2wzdv2117cmll4pvd";
|
sha256 = "1bx2c3z8rbkk75hykpmls956hfkwvsm4d8gvlrh53s8zimlwgv7k";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
@ -105,4 +105,4 @@ in
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
{ stdenv, fetchbzr, python, pyqt4, sip, rtmpdump, makeWrapper }:
|
{ stdenv, fetchbzr, python, pyqt4, sip, rtmpdump, makeWrapper }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "qarte-2.3.0";
|
name = "qarte-2.4.0";
|
||||||
src = fetchbzr {
|
src = fetchbzr {
|
||||||
url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/trunk;
|
url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/trunk;
|
||||||
rev = "148";
|
rev = "150";
|
||||||
sha256 = "0bp2qbl2g3dygmb31lwlarki9lybkb9zxixda4lwrlz628w93fxh";
|
sha256 = "0fj11jx9l5qi968c906rrksdic7w4yj414m47k6axlb4v6ghdnar";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ makeWrapper ];
|
buildInputs = [ makeWrapper ];
|
||||||
|
|
|
@ -1,21 +0,0 @@
|
||||||
{ fetchurl, pythonPackages }:
|
|
||||||
|
|
||||||
pythonPackages.buildPythonPackage rec {
|
|
||||||
name = "novaclient-2012.1";
|
|
||||||
namePrefix = "";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://pypi.python.org/packages/source/p/python-novaclient/python-${name}.tar.gz";
|
|
||||||
md5 = "8f53a308e08b2af4645281917be77ffc";
|
|
||||||
};
|
|
||||||
|
|
||||||
pythonPath = [ pythonPackages.prettytable pythonPackages.argparse pythonPackages.httplib2 ];
|
|
||||||
|
|
||||||
buildInputs = [ pythonPackages.mock pythonPackages.nose ];
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = https://github.com/rackspace/python-novaclient;
|
|
||||||
description = "Client library and command line tool for the OpenStack Nova API";
|
|
||||||
broken = true;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
diff -ru -x '*~' nova-2011.2-orig//bin/nova-manage nova-2011.2//bin/nova-manage
|
|
||||||
--- nova-2011.2-orig//bin/nova-manage 2011-04-15 04:57:52.000000000 +0200
|
|
||||||
+++ nova-2011.2//bin/nova-manage 2011-06-09 18:28:39.063299654 +0200
|
|
||||||
@@ -1009,7 +1009,7 @@
|
|
||||||
if (FLAGS.image_service == 'nova.image.local.LocalImageService'
|
|
||||||
and directory == os.path.abspath(FLAGS.images_path)):
|
|
||||||
new_dir = "%s_bak" % directory
|
|
||||||
- os.move(directory, new_dir)
|
|
||||||
+ os.rename(directory, new_dir)
|
|
||||||
os.mkdir(directory)
|
|
||||||
directory = new_dir
|
|
||||||
for fn in glob.glob("%s/*/info.json" % directory):
|
|
|
@ -1,95 +0,0 @@
|
||||||
{ stdenv, fetchurl, pythonPackages, intltool, libvirt, libxml2Python, curl, novaclient }:
|
|
||||||
|
|
||||||
with stdenv.lib;
|
|
||||||
|
|
||||||
let version = "2011.2"; in
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "nova-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://launchpad.net/nova/cactus/${version}/+download/nova-${version}.tar.gz";
|
|
||||||
sha256 = "1s2w0rm332y9x34ngjz8sys9sbldg857rx9d6r3nb1ik979fx8p7";
|
|
||||||
};
|
|
||||||
|
|
||||||
patches =
|
|
||||||
[ ./convert.patch ];
|
|
||||||
|
|
||||||
pythonPath = with pythonPackages;
|
|
||||||
[ setuptools eventlet greenlet gflags netaddr sqlalchemy carrot routes
|
|
||||||
paste_deploy m2crypto ipy twisted sqlalchemy_migrate
|
|
||||||
distutils_extra simplejson readline glance cheetah lockfile httplib2
|
|
||||||
# !!! should libvirt be a build-time dependency? Note that
|
|
||||||
# libxml2Python is a dependency of libvirt.py.
|
|
||||||
libvirt libxml2Python
|
|
||||||
novaclient
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs =
|
|
||||||
[ pythonPackages.python
|
|
||||||
pythonPackages.wrapPython
|
|
||||||
pythonPackages.mox
|
|
||||||
intltool
|
|
||||||
] ++ pythonPath;
|
|
||||||
|
|
||||||
PYTHON_EGG_CACHE = "`pwd`/.egg-cache";
|
|
||||||
|
|
||||||
preConfigure =
|
|
||||||
''
|
|
||||||
# Set the built-in state location to something sensible.
|
|
||||||
sed -i nova/flags.py \
|
|
||||||
-e "/DEFINE.*'state_path'/ s|../|/var/lib/nova|"
|
|
||||||
|
|
||||||
substituteInPlace nova/virt/images.py --replace /usr/bin/curl ${curl}/bin/curl
|
|
||||||
|
|
||||||
substituteInPlace nova/api/ec2/cloud.py \
|
|
||||||
--replace 'sh genrootca.sh' $out/libexec/nova/genrootca.sh
|
|
||||||
'';
|
|
||||||
|
|
||||||
buildPhase = "python setup.py build";
|
|
||||||
|
|
||||||
installPhase =
|
|
||||||
''
|
|
||||||
p=$(toPythonPath $out)
|
|
||||||
export PYTHONPATH=$p:$PYTHONPATH
|
|
||||||
mkdir -p $p
|
|
||||||
python setup.py install --prefix=$out
|
|
||||||
|
|
||||||
# Nova doesn't like to be called ".nova-foo-wrapped" because it
|
|
||||||
# computes some stuff from its own argv[0]. So put the wrapped
|
|
||||||
# programs in $out/libexec under their original names.
|
|
||||||
mkdir -p $out/libexec/nova
|
|
||||||
|
|
||||||
wrapProgram() {
|
|
||||||
local prog="$1"
|
|
||||||
local hidden=$out/libexec/nova/$(basename "$prog")
|
|
||||||
mv $prog $hidden
|
|
||||||
makeWrapper $hidden $prog "$@"
|
|
||||||
}
|
|
||||||
|
|
||||||
wrapPythonPrograms
|
|
||||||
|
|
||||||
cp -prvd etc $out/etc
|
|
||||||
|
|
||||||
# Nova makes some weird assumptions about where to find its own
|
|
||||||
# programs relative to the Python directory.
|
|
||||||
ln -sfn $out/bin $out/lib/${pythonPackages.python.libPrefix}/site-packages/bin
|
|
||||||
|
|
||||||
# Install the certificate generation script.
|
|
||||||
cp nova/CA/genrootca.sh $out/libexec/nova/
|
|
||||||
cp nova/CA/openssl.cnf.tmpl $out/libexec/nova/
|
|
||||||
|
|
||||||
# Allow nova-manage etc. to find the proper configuration file.
|
|
||||||
ln -s /etc/nova/nova.conf $out/libexec/nova/nova.conf
|
|
||||||
'';
|
|
||||||
|
|
||||||
doCheck = false; # !!! fix
|
|
||||||
|
|
||||||
checkPhase = "python setup.py test";
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = http://nova.openstack.org/;
|
|
||||||
description = "OpenStack Compute (a.k.a. Nova), a cloud computing fabric controller";
|
|
||||||
broken = true;
|
|
||||||
};
|
|
||||||
}
|
|
67
pkgs/applications/virtualization/openstack/glance.nix
Normal file
67
pkgs/applications/virtualization/openstack/glance.nix
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
|
||||||
|
{ stdenv, fetchurl, pythonPackages, sqlite, which, strace }:
|
||||||
|
|
||||||
|
pythonPackages.buildPythonPackage rec {
|
||||||
|
name = "glance-${version}";
|
||||||
|
version = "11.0.0";
|
||||||
|
namePrefix = "";
|
||||||
|
|
||||||
|
PBR_VERSION = "${version}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/openstack/glance/archive/${version}.tar.gz";
|
||||||
|
sha256 = "05rz1lmzdmpnw8sf87vvi0l6q9g6s840z934zyinw17yfcvmqrdg";
|
||||||
|
};
|
||||||
|
|
||||||
|
# https://github.com/openstack/glance/blob/stable/liberty/requirements.txt
|
||||||
|
propagatedBuildInputs = with pythonPackages; [
|
||||||
|
pbr sqlalchemy_1_0 anyjson eventlet PasteDeploy routes webob sqlalchemy_migrate
|
||||||
|
httplib2 pycrypto iso8601 stevedore futurist keystonemiddleware paste
|
||||||
|
jsonschema keystoneclient pyopenssl six retrying semantic-version qpid-python
|
||||||
|
WSME osprofiler glance_store castellan taskflow cryptography xattr pysendfile
|
||||||
|
|
||||||
|
# oslo componenets
|
||||||
|
oslo-config oslo-context oslo-concurrency oslo-service oslo-utils oslo-db
|
||||||
|
oslo-i18n oslo-log oslo-messaging oslo-middleware oslo-policy oslo-serialization
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = with pythonPackages; [
|
||||||
|
Babel coverage fixtures mox3 mock oslosphinx requests2 testrepository pep8
|
||||||
|
testresources testscenarios testtools psutil_1 oslotest psycopg2 MySQL_python
|
||||||
|
sqlite which strace
|
||||||
|
];
|
||||||
|
|
||||||
|
patchPhase = ''
|
||||||
|
# it's not a test, but a class mixin
|
||||||
|
sed -i 's/ImageCacheTestCase/ImageCacheMixin/' glance/tests/unit/test_image_cache.py
|
||||||
|
|
||||||
|
# these require network access, see https://bugs.launchpad.net/glance/+bug/1508868
|
||||||
|
sed -i 's/test_get_image_data_http/noop/' glance/tests/unit/common/scripts/test_scripts_utils.py
|
||||||
|
sed -i 's/test_set_image_data_http/noop/' glance/tests/unit/common/scripts/image_import/test_main.py
|
||||||
|
sed -i 's/test_create_image_with_nonexistent_location_url/noop/' glance/tests/unit/v1/test_api.py
|
||||||
|
sed -i 's/test_upload_image_http_nonexistent_location_url/noop/' glance/tests/unit/v1/test_api.py
|
||||||
|
|
||||||
|
# TODO: couldn't figure out why this test is failing
|
||||||
|
sed -i 's/test_all_task_api/noop/' glance/tests/integration/v2/test_tasks_api.py
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
# check all binaries don't crash
|
||||||
|
for i in $out/bin/*; do
|
||||||
|
case "$i" in
|
||||||
|
*glance-artifacts) # https://bugs.launchpad.net/glance/+bug/1508879
|
||||||
|
:
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
$i --help
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = http://glance.openstack.org/;
|
||||||
|
description = "Services for discovering, registering, and retrieving virtual machine images";
|
||||||
|
license = stdenv.lib.licenses.asl20;
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
49
pkgs/applications/virtualization/openstack/keystone.nix
Normal file
49
pkgs/applications/virtualization/openstack/keystone.nix
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
{ stdenv, fetchurl, pythonPackages, xmlsec, which }:
|
||||||
|
|
||||||
|
pythonPackages.buildPythonPackage rec {
|
||||||
|
name = "keystone-${version}";
|
||||||
|
version = "8.0.0";
|
||||||
|
namePrefix = "";
|
||||||
|
|
||||||
|
PBR_VERSION = "${version}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/openstack/keystone/archive/${version}.tar.gz";
|
||||||
|
sha256 = "1xbrs7xgwjzrs07zyxxcl2lq18dh582gd6lx1zzzji8c0qmffy0z";
|
||||||
|
};
|
||||||
|
|
||||||
|
# remove on next version bump
|
||||||
|
patches = [ ./remove-oslo-policy-tests.patch ];
|
||||||
|
|
||||||
|
# https://github.com/openstack/keystone/blob/stable/liberty/requirements.txt
|
||||||
|
propagatedBuildInputs = with pythonPackages; [
|
||||||
|
pbr webob eventlet greenlet PasteDeploy paste routes cryptography six
|
||||||
|
sqlalchemy_1_0 sqlalchemy_migrate stevedore passlib keystoneclient memcached
|
||||||
|
keystonemiddleware oauthlib pysaml2 dogpile_cache jsonschema pycadf msgpack
|
||||||
|
xmlsec MySQL_python
|
||||||
|
|
||||||
|
# oslo
|
||||||
|
oslo-cache oslo-concurrency oslo-config oslo-context oslo-messaging oslo-db
|
||||||
|
oslo-i18n oslo-log oslo-middleware oslo-policy oslo-serialization oslo-service
|
||||||
|
oslo-utils
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = with pythonPackages; [
|
||||||
|
coverage fixtures mock subunit tempest-lib testtools testrepository
|
||||||
|
ldap ldappool webtest requests2 oslotest pep8 pymongo which
|
||||||
|
];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
# check all binaries don't crash
|
||||||
|
for i in $out/bin/*; do
|
||||||
|
$i --help
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = http://keystone.openstack.org/;
|
||||||
|
description = "Authentication, authorization and service discovery mechanisms via HTTP";
|
||||||
|
license = stdenv.lib.licenses.asl20;
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
60
pkgs/applications/virtualization/openstack/neutron.nix
Normal file
60
pkgs/applications/virtualization/openstack/neutron.nix
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
|
||||||
|
{ stdenv, fetchurl, pythonPackages, xmlsec, which }:
|
||||||
|
|
||||||
|
pythonPackages.buildPythonPackage rec {
|
||||||
|
name = "neutron-${version}";
|
||||||
|
version = "7.0.0";
|
||||||
|
namePrefix = "";
|
||||||
|
|
||||||
|
PBR_VERSION = "${version}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/openstack/neutron/archive/${version}.tar.gz";
|
||||||
|
sha256 = "02ll081xly7zfjmgkal81fy3aplbnn5zgx8xfy3yy1nv3kfnyi40";
|
||||||
|
};
|
||||||
|
|
||||||
|
# https://github.com/openstack/neutron/blob/stable/liberty/requirements.txt
|
||||||
|
propagatedBuildInputs = with pythonPackages; [
|
||||||
|
pbr paste PasteDeploy routes debtcollector eventlet greenlet httplib2 requests2
|
||||||
|
jinja2 keystonemiddleware netaddr retrying sqlalchemy_1_0 webob alembic six
|
||||||
|
stevedore pecan ryu networking-hyperv MySQL_python
|
||||||
|
|
||||||
|
# clients
|
||||||
|
keystoneclient neutronclient novaclient
|
||||||
|
|
||||||
|
# oslo components
|
||||||
|
oslo-concurrency oslo-config oslo-context oslo-db oslo-i18n oslo-log oslo-messaging
|
||||||
|
oslo-middleware oslo-policy oslo-rootwrap oslo-serialization oslo-service oslo-utils
|
||||||
|
oslo-versionedobjects
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = with pythonPackages; [
|
||||||
|
cliff coverage fixtures mock subunit requests-mock oslosphinx testrepository
|
||||||
|
testtools testresources testscenarios webtest oslotest os-testr tempest-lib
|
||||||
|
ddt pep8
|
||||||
|
];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
# requires extra optional dependencies
|
||||||
|
# TODO: package networking_mlnx, networking_vsphere, bsnstacklib, XenAPI
|
||||||
|
rm $out/bin/{neutron-mlnx-agent,neutron-ovsvapp-agent,neutron-restproxy-agent,neutron-rootwrap-xen-dom0}
|
||||||
|
|
||||||
|
# check all binaries don't crash
|
||||||
|
for i in $out/bin/*; do
|
||||||
|
case "$i" in
|
||||||
|
*neutron-pd-notify|*neutron-rootwrap-daemon|*neutron-rootwrap)
|
||||||
|
:
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
$i --help
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = http://neutron.openstack.org/;
|
||||||
|
description = "Virtual network service for Openstack";
|
||||||
|
license = stdenv.lib.licenses.asl20;
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
63
pkgs/applications/virtualization/openstack/nova.nix
Normal file
63
pkgs/applications/virtualization/openstack/nova.nix
Normal file
|
@ -0,0 +1,63 @@
|
||||||
|
{ stdenv, fetchurl, pythonPackages, openssl, openssh }:
|
||||||
|
|
||||||
|
pythonPackages.buildPythonPackage rec {
|
||||||
|
name = "nova-${version}";
|
||||||
|
version = "12.0.0";
|
||||||
|
namePrefix = "";
|
||||||
|
|
||||||
|
PBR_VERSION = "${version}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/openstack/nova/archive/${version}.tar.gz";
|
||||||
|
sha256 = "175n1znvmy8f5vqvabc2fa4qy8y17685z4gzpq8984mdsdnpv21w";
|
||||||
|
};
|
||||||
|
|
||||||
|
# https://github.com/openstack/nova/blob/stable/liberty/requirements.txt
|
||||||
|
propagatedBuildInputs = with pythonPackages; [
|
||||||
|
pbr sqlalchemy_1_0 boto decorator eventlet jinja2 lxml routes cryptography
|
||||||
|
webob greenlet PasteDeploy paste prettytable sqlalchemy_migrate netaddr
|
||||||
|
netifaces paramiko Babel iso8601 jsonschema keystoneclient requests2 six
|
||||||
|
stevedore websockify rfc3986 os-brick psutil_1 alembic psycopg2 pymysql
|
||||||
|
keystonemiddleware MySQL_python
|
||||||
|
|
||||||
|
# oslo components
|
||||||
|
oslo-rootwrap oslo-reports oslo-utils oslo-i18n oslo-config oslo-context
|
||||||
|
oslo-log oslo-serialization oslo-middleware oslo-db oslo-service oslo-messaging
|
||||||
|
oslo-concurrency oslo-versionedobjects
|
||||||
|
|
||||||
|
# clients
|
||||||
|
cinderclient neutronclient glanceclient
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = with pythonPackages; [
|
||||||
|
coverage fixtures mock mox3 subunit requests-mock pillow oslosphinx
|
||||||
|
oslotest testrepository testresources testtools tempest-lib bandit
|
||||||
|
oslo-vmware pep8 barbicanclient ironicclient openssl openssh
|
||||||
|
];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
cp -prvd etc $out/etc
|
||||||
|
|
||||||
|
# check all binaries don't crash
|
||||||
|
for i in $out/bin/*; do
|
||||||
|
case "$i" in
|
||||||
|
*nova-dhcpbridge*)
|
||||||
|
:
|
||||||
|
;;
|
||||||
|
*nova-rootwrap*)
|
||||||
|
:
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
$i --help
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = http://nova.openstack.org/;
|
||||||
|
description = "OpenStack Compute (a.k.a. Nova), a cloud computing fabric controller";
|
||||||
|
license = stdenv.lib.licenses.asl20;
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
|
@ -0,0 +1,61 @@
|
||||||
|
From 6016d017004acaae288312b196ef07ea98e9962d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Brant Knudson <bknudson@us.ibm.com>
|
||||||
|
Date: Mon, 12 Oct 2015 15:12:45 -0500
|
||||||
|
Subject: [PATCH] Remove oslo.policy implementation tests from keystone
|
||||||
|
|
||||||
|
oslo.policy 0.12.0 contains a change to use requests to do the http
|
||||||
|
check rather than urllib. This change caused keystone tests to fail
|
||||||
|
because the keystone tests were mocking urllib, making assumptions
|
||||||
|
about how oslo.policy is implemented. Keystone doesn't need to test
|
||||||
|
internal features of oslo.policy, so these tests are removed.
|
||||||
|
|
||||||
|
Change-Id: I9d6e4950b9fe75cbb94100c8effdcec002642027
|
||||||
|
Closes-Bug: 1505374
|
||||||
|
---
|
||||||
|
keystone/tests/unit/test_policy.py | 24 ------------------------
|
||||||
|
1 file changed, 24 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/keystone/tests/unit/test_policy.py b/keystone/tests/unit/test_policy.py
|
||||||
|
index b2f0e52..686e2b7 100644
|
||||||
|
--- a/keystone/tests/unit/test_policy.py
|
||||||
|
+++ b/keystone/tests/unit/test_policy.py
|
||||||
|
@@ -16,10 +16,8 @@
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
|
||||||
|
-import mock
|
||||||
|
from oslo_policy import policy as common_policy
|
||||||
|
import six
|
||||||
|
-from six.moves.urllib import request as urlrequest
|
||||||
|
from testtools import matchers
|
||||||
|
|
||||||
|
from keystone import exception
|
||||||
|
@@ -118,28 +116,6 @@ def test_enforce_good_action(self):
|
||||||
|
action = "example:allowed"
|
||||||
|
rules.enforce(self.credentials, action, self.target)
|
||||||
|
|
||||||
|
- def test_enforce_http_true(self):
|
||||||
|
-
|
||||||
|
- def fakeurlopen(url, post_data):
|
||||||
|
- return six.StringIO("True")
|
||||||
|
-
|
||||||
|
- action = "example:get_http"
|
||||||
|
- target = {}
|
||||||
|
- with mock.patch.object(urlrequest, 'urlopen', fakeurlopen):
|
||||||
|
- result = rules.enforce(self.credentials, action, target)
|
||||||
|
- self.assertTrue(result)
|
||||||
|
-
|
||||||
|
- def test_enforce_http_false(self):
|
||||||
|
-
|
||||||
|
- def fakeurlopen(url, post_data):
|
||||||
|
- return six.StringIO("False")
|
||||||
|
-
|
||||||
|
- action = "example:get_http"
|
||||||
|
- target = {}
|
||||||
|
- with mock.patch.object(urlrequest, 'urlopen', fakeurlopen):
|
||||||
|
- self.assertRaises(exception.ForbiddenAction, rules.enforce,
|
||||||
|
- self.credentials, action, target)
|
||||||
|
-
|
||||||
|
def test_templatized_enforcement(self):
|
||||||
|
target_mine = {'project_id': 'fake'}
|
||||||
|
target_not_mine = {'project_id': 'another'}
|
|
@ -2,47 +2,53 @@
|
||||||
, fetchurl, fetchFromGitHub }:
|
, fetchurl, fetchFromGitHub }:
|
||||||
|
|
||||||
let
|
let
|
||||||
coreosImageRelease = "738.1.0";
|
coreosImageRelease = "794.1.0";
|
||||||
|
coreosImageSystemdVersion = "222";
|
||||||
|
stage1Flavour = "coreos";
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
version = "0.8.0";
|
version = "0.10.0";
|
||||||
name = "rkt-${version}";
|
name = "rkt-${version}";
|
||||||
|
BUILDDIR="build-${name}";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
owner = "coreos";
|
owner = "coreos";
|
||||||
repo = "rkt";
|
repo = "rkt";
|
||||||
sha256 = "1abv9psd5w0m8p2kvrwyjnrclzajmrpbwfwmkgpnkydhmsimhnn0";
|
sha256 = "1d9n00wkzib4v5mfl46f2mqc8zfpv33kqixifmv8p4azqv78cbxn";
|
||||||
};
|
};
|
||||||
|
|
||||||
stage1image = fetchurl {
|
stage1BaseImage = fetchurl {
|
||||||
url = "http://alpha.release.core-os.net/amd64-usr/${coreosImageRelease}/coreos_production_pxe_image.cpio.gz";
|
url = "http://alpha.release.core-os.net/amd64-usr/${coreosImageRelease}/coreos_production_pxe_image.cpio.gz";
|
||||||
sha256 = "1rnb9rwms5g7f142d9yh169a5k2hxiximpgk4y4kqmc1294lqnl0";
|
sha256 = "05nzl3av6cawr8v203a8c95c443g6h1nfy2n4jmgvn0j4iyy44ym";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ autoconf automake go file git wget gnupg1 squashfsTools cpio ];
|
buildInputs = [ autoconf automake go file git wget gnupg1 squashfsTools cpio ];
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
./autogen.sh
|
./autogen.sh
|
||||||
|
configureFlagsArray=(
|
||||||
|
--with-stage1=${stage1Flavour}
|
||||||
|
--with-stage1-image-path=$out/stage1-${stage1Flavour}.aci
|
||||||
|
--with-coreos-local-pxe-image-path=${stage1BaseImage}
|
||||||
|
--with-coreos-local-pxe-image-systemd-version=v${coreosImageSystemdVersion}
|
||||||
|
);
|
||||||
'';
|
'';
|
||||||
|
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
# hack to avoid downloading image during build, this has been
|
export BUILDDIR
|
||||||
# improved in rkt master
|
|
||||||
mkdir -p build-rkt-0.8.0/tmp/usr_from_coreos
|
|
||||||
cp -v ${stage1image} build-rkt-0.8.0/tmp/usr_from_coreos/pxe.img
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
cp -Rv build-rkt-${version}/bin/* $out/bin
|
cp -Rv $BUILDDIR/bin/* $out/bin
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A fast, composable, and secure App Container runtime for Linux";
|
description = "A fast, composable, and secure App Container runtime for Linux";
|
||||||
homepage = http://rkt.io;
|
homepage = https://github.com/coreos/rkt;
|
||||||
license = licenses.asl20;
|
license = licenses.asl20;
|
||||||
maintainers = with maintainers; [ ragge ];
|
maintainers = with maintainers; [ ragge steveej ];
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,7 +19,7 @@ buildPythonPackage rec {
|
||||||
|
|
||||||
propagatedBuildInputs =
|
propagatedBuildInputs =
|
||||||
[ eventlet greenlet gflags netaddr sqlalchemy carrot routes
|
[ eventlet greenlet gflags netaddr sqlalchemy carrot routes
|
||||||
paste_deploy m2crypto ipy twisted sqlalchemy_migrate
|
PasteDeploy m2crypto ipy twisted sqlalchemy_migrate
|
||||||
distutils_extra simplejson readline glance cheetah lockfile httplib2
|
distutils_extra simplejson readline glance cheetah lockfile httplib2
|
||||||
urlgrabber virtinst pyGtkGlade pythonDBus gnome_python pygobject3
|
urlgrabber virtinst pyGtkGlade pythonDBus gnome_python pygobject3
|
||||||
libvirt libxml2Python ipaddr vte libosinfo
|
libvirt libxml2Python ipaddr vte libosinfo
|
||||||
|
|
|
@ -14,15 +14,15 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
pythonPath = with pythonPackages;
|
pythonPath = with pythonPackages;
|
||||||
[ setuptools eventlet greenlet gflags netaddr sqlalchemy carrot routes
|
[ setuptools eventlet greenlet gflags netaddr sqlalchemy carrot routes
|
||||||
paste_deploy m2crypto ipy twisted sqlalchemy_migrate
|
PasteDeploy m2crypto ipy twisted sqlalchemy_migrate
|
||||||
distutils_extra simplejson readline glance cheetah lockfile httplib2
|
distutils_extra simplejson readline glance cheetah lockfile httplib2
|
||||||
# !!! should libvirt be a build-time dependency? Note that
|
# !!! should libvirt be a build-time dependency? Note that
|
||||||
# libxml2Python is a dependency of libvirt.py.
|
# libxml2Python is a dependency of libvirt.py.
|
||||||
libvirt libxml2Python urlgrabber
|
libvirt libxml2Python urlgrabber
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs =
|
buildInputs =
|
||||||
[ pythonPackages.python
|
[ pythonPackages.python
|
||||||
pythonPackages.wrapPython
|
pythonPackages.wrapPython
|
||||||
pythonPackages.mox
|
pythonPackages.mox
|
||||||
intltool
|
intltool
|
||||||
|
|
21
pkgs/applications/window-managers/kbdd/default.nix
Normal file
21
pkgs/applications/window-managers/kbdd/default.nix
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
{ stdenv, fetchgit, pkgconfig, dbus_glib, autoreconfHook, xorg }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "kbdd";
|
||||||
|
|
||||||
|
src = fetchgit {
|
||||||
|
url = https://github.com/qnikst/kbdd;
|
||||||
|
rev = "47dee0232f157cd865e43d92005a2ba107f6fd75";
|
||||||
|
sha256 = "1b9a66d216326a9759cad26393fbf8259fe7a0c2dd1075047fc989f0e52d969f";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ pkgconfig xorg.libX11 dbus_glib autoreconfHook ];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Simple daemon and library to make per window layout using XKB";
|
||||||
|
homepage = https://github.com/qnikst/kbdd;
|
||||||
|
license = stdenv.lib.licenses.gpl3;
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
maintainers = [ stdenv.lib.maintainers.wedens ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -2,7 +2,7 @@
|
||||||
# a fork of the buildEnv in the Nix distribution. Most changes should
|
# a fork of the buildEnv in the Nix distribution. Most changes should
|
||||||
# eventually be merged back into the Nix distribution.
|
# eventually be merged back into the Nix distribution.
|
||||||
|
|
||||||
{ perl, runCommand }:
|
{ perl, runCommand, lib }:
|
||||||
|
|
||||||
{ name
|
{ name
|
||||||
|
|
||||||
|
@ -21,6 +21,10 @@
|
||||||
# directories in the list is not symlinked.
|
# directories in the list is not symlinked.
|
||||||
pathsToLink ? ["/"]
|
pathsToLink ? ["/"]
|
||||||
|
|
||||||
|
, # The package outputs to include. By default, only the default
|
||||||
|
# output is included.
|
||||||
|
outputsToLink ? []
|
||||||
|
|
||||||
, # Root the result in directory "$out${extraPrefix}", e.g. "/share".
|
, # Root the result in directory "$out${extraPrefix}", e.g. "/share".
|
||||||
extraPrefix ? ""
|
extraPrefix ? ""
|
||||||
|
|
||||||
|
@ -34,14 +38,16 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
runCommand name
|
runCommand name
|
||||||
rec { inherit manifest ignoreCollisions passthru pathsToLink extraPrefix postBuild buildInputs;
|
{ inherit manifest ignoreCollisions passthru pathsToLink extraPrefix postBuild buildInputs;
|
||||||
pkgs = builtins.toJSON (map (drv: {
|
pkgs = builtins.toJSON (map (drv: {
|
||||||
paths = [ drv ]; # FIXME: handle multiple outputs
|
paths =
|
||||||
priority = drv.meta.priority or 5;
|
[ drv ]
|
||||||
}) paths);
|
++ lib.concatMap (outputName: lib.optional (drv.${outputName}.outPath or null != null) drv.${outputName}) outputsToLink;
|
||||||
preferLocalBuild = true;
|
priority = drv.meta.priority or 5;
|
||||||
# XXX: The size is somewhat arbitrary
|
}) paths);
|
||||||
passAsFile = if builtins.stringLength pkgs >= 128*1024 then [ "pkgs" ] else null;
|
preferLocalBuild = true;
|
||||||
|
# XXX: The size is somewhat arbitrary
|
||||||
|
passAsFile = if builtins.stringLength pkgs >= 128*1024 then [ "pkgs" ] else null;
|
||||||
}
|
}
|
||||||
''
|
''
|
||||||
${perl}/bin/perl -w ${./builder.pl}
|
${perl}/bin/perl -w ${./builder.pl}
|
||||||
|
|
|
@ -8,6 +8,7 @@
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#include <spawn.h>
|
||||||
|
|
||||||
#define MAX_REDIRECTS 128
|
#define MAX_REDIRECTS 128
|
||||||
|
|
||||||
|
@ -103,9 +104,29 @@ int __xstat(int ver, const char * path, struct stat * st)
|
||||||
return __xstat_real(ver, rewrite(path, buf), st);
|
return __xstat_real(ver, rewrite(path, buf), st);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int __xstat64(int ver, const char * path, struct stat64 * st)
|
||||||
|
{
|
||||||
|
int (*__xstat64_real) (int ver, const char *, struct stat64 *) = dlsym(RTLD_NEXT, "__xstat64");
|
||||||
|
char buf[PATH_MAX];
|
||||||
|
return __xstat64_real(ver, rewrite(path, buf), st);
|
||||||
|
}
|
||||||
|
|
||||||
int * access(const char * path, int mode)
|
int * access(const char * path, int mode)
|
||||||
{
|
{
|
||||||
int * (*access_real) (const char *, int mode) = dlsym(RTLD_NEXT, "access");
|
int * (*access_real) (const char *, int mode) = dlsym(RTLD_NEXT, "access");
|
||||||
char buf[PATH_MAX];
|
char buf[PATH_MAX];
|
||||||
return access_real(rewrite(path, buf), mode);
|
return access_real(rewrite(path, buf), mode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int posix_spawn(pid_t * pid, const char * path,
|
||||||
|
const posix_spawn_file_actions_t * file_actions,
|
||||||
|
const posix_spawnattr_t * attrp,
|
||||||
|
char * const argv[], char * const envp[])
|
||||||
|
{
|
||||||
|
int (*posix_spawn_real) (pid_t *, const char *,
|
||||||
|
const posix_spawn_file_actions_t *,
|
||||||
|
const posix_spawnattr_t *,
|
||||||
|
char * const argv[], char * const envp[]) = dlsym(RTLD_NEXT, "posix_spawn");
|
||||||
|
char buf[PATH_MAX];
|
||||||
|
return posix_spawn_real(pid, rewrite(path, buf), file_actions, attrp, argv, envp);
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +1,3 @@
|
||||||
#! /bin/sh
|
|
||||||
|
|
||||||
source $stdenv/setup
|
source $stdenv/setup
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
|
@ -9,7 +9,7 @@ stdenv.mkDerivation {
|
||||||
phases = "unpackPhase installPhase";
|
phases = "unpackPhase installPhase";
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
${./fetch-cargo-deps} . "$out"
|
bash ${./fetch-cargo-deps} . "$out"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
outputHashAlgo = "sha256";
|
outputHashAlgo = "sha256";
|
||||||
|
|
|
@ -1837,6 +1837,7 @@ rec {
|
||||||
"bzip2"
|
"bzip2"
|
||||||
"tar"
|
"tar"
|
||||||
"grep"
|
"grep"
|
||||||
|
"mawk"
|
||||||
"sed"
|
"sed"
|
||||||
"findutils"
|
"findutils"
|
||||||
"g++"
|
"g++"
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
{ stdenv, fetchurl, perl, bdftopcf, mkfontdir, mkfontscale }:
|
{ stdenv, fetchurl, perl, bdftopcf, mkfontdir, mkfontscale }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "terminus-font-4.39";
|
name = "terminus-font-4.40";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/project/terminus-font/${name}/${name}.tar.gz";
|
url = "mirror://sourceforge/project/terminus-font/${name}/${name}.tar.gz";
|
||||||
sha256 = "1gzmn7zakvy6yrvmswyjfklnsvqrjm0imhq8rjws8rdkhqwkh21i";
|
sha256 = "0487cyx5h1f0crbny5sg73a22gmym5vk1i7646gy7hgiscj2rxb4";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ perl bdftopcf mkfontdir mkfontscale ];
|
buildInputs = [ perl bdftopcf mkfontdir mkfontscale ];
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
{ stdenv, fetchurl, unzip }:
|
{ stdenv, fetchurl, unzip }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "ubuntu-font-family-0.80";
|
name = "ubuntu-font-family-0.83";
|
||||||
buildInputs = [unzip];
|
buildInputs = [unzip];
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://font.ubuntu.com/download/${name}.zip";
|
url = "http://font.ubuntu.com/download/${name}.zip";
|
||||||
sha256 = "0k4f548riq23gmw4zhn30qqkcpaj4g2ab5rbc3lflfxwkc4p0w8h";
|
sha256 = "0hjvq2x758dx0sfwqhzflns0ns035qm7h6ygskbx1svzg517sva5";
|
||||||
};
|
};
|
||||||
|
|
||||||
installPhase =
|
installPhase =
|
||||||
|
|
29
pkgs/data/icons/elementary-icon-theme/default.nix
Normal file
29
pkgs/data/icons/elementary-icon-theme/default.nix
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
{ stdenv, fetchzip }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
version = "3.2.2";
|
||||||
|
|
||||||
|
package-name = "elementary-icon-theme";
|
||||||
|
|
||||||
|
name = "${package-name}-${version}";
|
||||||
|
|
||||||
|
src = fetchzip {
|
||||||
|
url = "https://launchpad.net/elementaryicons/3.x/${version}/+download/elementary-icon-theme-${version}.tar.xz";
|
||||||
|
sha256 = "0b6sgvkzc5h9zm3la6f0ngs9pfjrsj318qcynxd3yydb50cd3hnf";
|
||||||
|
};
|
||||||
|
|
||||||
|
dontBuild = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
install -dm 755 $out/share/icons
|
||||||
|
cp -dr --no-preserve='ownership' . $out/share/icons/Elementary/
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Elementary icon theme";
|
||||||
|
homepage = "https://launchpad.net/elementaryicons";
|
||||||
|
license = licenses.gpl3;
|
||||||
|
platforms = platforms.all;
|
||||||
|
maintainers = with maintainers; [ simonvandel ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,11 +1,11 @@
|
||||||
{ stdenv, fetchFromGitHub, unzip }:
|
{ stdenv, fetchFromGitHub, unzip }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "4727aa5";
|
version = "129da4d8036c9ea52ba8b94cdfa0148e4c2cff96";
|
||||||
|
|
||||||
package-name = "numix-icon-theme-circle";
|
package-name = "numix-icon-theme-circle";
|
||||||
|
|
||||||
name = "${package-name}-20151005";
|
name = "${package-name}-20151014";
|
||||||
|
|
||||||
buildInputs = [ unzip ];
|
buildInputs = [ unzip ];
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
|
||||||
owner = "numixproject";
|
owner = "numixproject";
|
||||||
repo = package-name;
|
repo = package-name;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "0khps3il0wyjizzzv8rxznhywp3nqd1hj1zhdvyqzgql3gffylqc";
|
sha256 = "1505j63qh96hy04x3ywc6kspavzgjd848cgdkda23kjdbx0fpij4";
|
||||||
};
|
};
|
||||||
|
|
||||||
dontBuild = true;
|
dontBuild = true;
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
{ stdenv, fetchFromGitHub }:
|
{ stdenv, fetchFromGitHub }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "ae57260";
|
version = "0f7641b048a07eb614662c502eb209dad5eb6d97";
|
||||||
|
|
||||||
package-name = "numix-icon-theme";
|
package-name = "numix-icon-theme";
|
||||||
|
|
||||||
name = "${package-name}-20150910";
|
name = "${package-name}-20151023";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "numixproject";
|
owner = "numixproject";
|
||||||
repo = package-name;
|
repo = package-name;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "147a8d9wkhrq4f4154gb0l16rj849lsccxl8npicr6zixvsjgqlq";
|
sha256 = "16kbasgbb5mgiyl9b240215kivdnl8ynpkxhp5gairba9l4jpbih";
|
||||||
};
|
};
|
||||||
|
|
||||||
dontBuild = true;
|
dontBuild = true;
|
||||||
|
|
|
@ -8,17 +8,17 @@ let
|
||||||
|
|
||||||
# Annoyingly, these files are updated without a change in URL. This means that
|
# Annoyingly, these files are updated without a change in URL. This means that
|
||||||
# builds will start failing every month or so, until the hashes are updated.
|
# builds will start failing every month or so, until the hashes are updated.
|
||||||
version = "2015-10-19";
|
version = "2015-10-27";
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "geolite-legacy-${version}";
|
name = "geolite-legacy-${version}";
|
||||||
|
|
||||||
srcGeoIP = fetchDB
|
srcGeoIP = fetchDB
|
||||||
"GeoLiteCountry/GeoIP.dat.gz" "GeoIP.dat.gz"
|
"GeoLiteCountry/GeoIP.dat.gz" "GeoIP.dat.gz"
|
||||||
"066j1mnpzfyd5cp0knvg13v01fdvgv32ggvab0xwyh1pa0c14dv4";
|
"1w0dh8p0zjbrkzm156wy77im4v0yp9d44gygrc10majnyhzkjlff";
|
||||||
srcGeoIPv6 = fetchDB
|
srcGeoIPv6 = fetchDB
|
||||||
"GeoIPv6.dat.gz" "GeoIPv6.dat.gz"
|
"GeoIPv6.dat.gz" "GeoIPv6.dat.gz"
|
||||||
"1q5vgk522wq5ybhbw86zk8njgg611kc46a22vkrp08vklbni3akz";
|
"0bs3p76lwlfbawqn0wj2fnnd52bdmkc35rjkpb7wy6sz6x33p79r";
|
||||||
srcGeoLiteCity = fetchDB
|
srcGeoLiteCity = fetchDB
|
||||||
"GeoLiteCity.dat.xz" "GeoIPCity.dat.xz"
|
"GeoLiteCity.dat.xz" "GeoIPCity.dat.xz"
|
||||||
"09w7vs13xzji574bykggh8cph992zc4yajvhjh4qrvwrxjmjilw3";
|
"09w7vs13xzji574bykggh8cph992zc4yajvhjh4qrvwrxjmjilw3";
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue