diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl index a929e1eb8262..b768be6a3e01 100644 --- a/nixos/modules/installer/tools/nixos-generate-config.pl +++ b/nixos/modules/installer/tools/nixos-generate-config.pl @@ -354,7 +354,7 @@ EOF if ($status != 0 || join("", @msg) =~ /ERROR:/) { die "Failed to retrieve subvolume info for $mountPoint\n"; } - my @ids = join("", @id_info) =~ m/Object ID:[ \t\n]*([^ \t\n]*)/; + my @ids = join("", @id_info) =~ m/Subvolume ID:[ \t\n]*([^ \t\n]*)/; if ($#ids > 0) { die "Btrfs subvol name for $mountPoint listed multiple times in mount\n" } elsif ($#ids == 0) { diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index d580e269df96..f74b16f678fd 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -219,6 +219,7 @@ ./services/misc/rogue.nix ./services/misc/siproxd.nix ./services/misc/subsonic.nix + ./services/misc/sundtek.nix ./services/misc/svnserve.nix ./services/misc/synergy.nix ./services/misc/uhub.nix @@ -346,6 +347,7 @@ ./services/networking/wicd.nix ./services/networking/wpa_supplicant.nix ./services/networking/xinetd.nix + ./services/networking/zerotierone.nix ./services/networking/znc.nix ./services/printing/cupsd.nix ./services/scheduling/atd.nix diff --git a/nixos/modules/services/cluster/kubernetes.nix b/nixos/modules/services/cluster/kubernetes.nix index 86b8817c28c6..d00c1aaa1055 100644 --- a/nixos/modules/services/cluster/kubernetes.nix +++ b/nixos/modules/services/cluster/kubernetes.nix @@ -224,7 +224,7 @@ in { machines = mkOption { description = "Kubernetes controller list of machines to schedule to schedule onto"; - default = [config.networking.hostName]; + default = []; type = types.listOf types.str; }; @@ -242,6 +242,12 @@ in { type = types.bool; }; + registerNode = mkOption { + description = "Whether to auto register kubelet with API server."; + default = true; + type = types.bool; + }; + address = mkOption { description = "Kubernetes kubelet info server listening address."; default = "0.0.0.0"; @@ -274,7 +280,7 @@ in { cadvisorPort = mkOption { description = "Kubernetes kubelet local cadvisor port."; - default = config.services.cadvisor.port; + default = 4194; type = types.int; }; @@ -324,7 +330,7 @@ in { }; kube2sky = { - enable = mkEnableOption "kube2sky dns service"; + enable = mkEnableOption "Whether to enable kube2sky dns service."; domain = mkOption { description = "Kuberntes kube2sky domain under which all DNS names will be hosted."; @@ -445,6 +451,7 @@ in { export PATH="/bin:/sbin:/usr/bin:/usr/sbin:$PATH" exec ${cfg.package}/bin/kubelet \ --api-servers=${concatMapStringsSep "," (f: "http://${f}") cfg.kubelet.apiServers} \ + --register-node=${if cfg.kubelet.registerNode then "true" else "false"} \ --address=${cfg.kubelet.address} \ --port=${toString cfg.kubelet.port} \ --hostname-override=${cfg.kubelet.hostname} \ @@ -511,8 +518,6 @@ in { (mkIf (any (el: el == "node") cfg.roles) { virtualisation.docker.enable = mkDefault true; - services.cadvisor.enable = mkDefault true; - services.cadvisor.port = mkDefault 4194; services.kubernetes.kubelet.enable = mkDefault true; services.kubernetes.proxy.enable = mkDefault true; }) diff --git a/nixos/modules/services/misc/nix-daemon.nix b/nixos/modules/services/misc/nix-daemon.nix index b79a69e2ba8f..b5a8a7df9fca 100644 --- a/nixos/modules/services/misc/nix-daemon.nix +++ b/nixos/modules/services/misc/nix-daemon.nix @@ -143,7 +143,7 @@ in default = 0; description = '' Nix daemon process priority. This priority propagates to build processes. - 0 is the default Unix process priority, 20 is the lowest. + 0 is the default Unix process priority, 19 is the lowest. ''; }; diff --git a/nixos/modules/services/misc/sundtek.nix b/nixos/modules/services/misc/sundtek.nix new file mode 100644 index 000000000000..8438ef79904f --- /dev/null +++ b/nixos/modules/services/misc/sundtek.nix @@ -0,0 +1,33 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.services.sundtek; + +in +{ + options.services.sundtek = { + enable = mkEnableOption "Sundtek driver"; + }; + + config = mkIf cfg.enable { + + environment.systemPackages = [ pkgs.sundtek ]; + + systemd.services.sundtek = { + description = "Sundtek driver"; + wantedBy = [ "multi-user.target" ]; + + serviceConfig = { + Type = "oneshot"; + ExecStart = '' + ${pkgs.sundtek}/bin/mediasrv -d -v -p ${pkgs.sundtek}/bin ;\ + ${pkgs.sundtek}/bin/mediaclient --start=5 --wait-for-devices + ''; + ExecStop = "${pkgs.sundtek}/bin/mediaclient --shutdown"; + RemainAfterExit = true; + }; + }; + }; +} diff --git a/nixos/modules/services/networking/bitlbee.nix b/nixos/modules/services/networking/bitlbee.nix index 7276603da16f..1ffd57e0621d 100644 --- a/nixos/modules/services/networking/bitlbee.nix +++ b/nixos/modules/services/networking/bitlbee.nix @@ -17,10 +17,12 @@ let [settings] RunMode = Daemon User = bitlbee - ConfigDir = /var/lib/bitlbee + ConfigDir = ${cfg.configDir} DaemonInterface = ${cfg.interface} DaemonPort = ${toString cfg.portNumber} AuthMode = ${cfg.authMode} + ${lib.optionalStringv (cfg.hostName != "") "HostName = ${cfg.hostName}"} + ${lib.optionalString (cfg.protocols != "") "Protocols = ${cfg.protocols}"} ${cfg.extraSettings} [defaults] @@ -73,6 +75,34 @@ in ''; }; + hostName = mkOption { + default = ""; + type = types.str; + description = '' + Normally, BitlBee gets a hostname using getsockname(). If you have a nicer + alias for your BitlBee daemon, you can set it here and BitlBee will identify + itself with that name instead. + ''; + }; + + configDir = mkOption { + default = "/var/lib/bitlbee"; + type = types.path; + description = '' + Specify an alternative directory to store all the per-user configuration + files. + ''; + }; + + protocols = mkOption { + default = ""; + type = types.str; + description = '' + This option allows to remove the support of protocol, even if compiled + in. If nothing is given, there are no restrictions. + ''; + }; + extraSettings = mkOption { default = ""; description = '' diff --git a/nixos/modules/services/networking/zerotierone.nix b/nixos/modules/services/networking/zerotierone.nix new file mode 100644 index 000000000000..886ea18d9809 --- /dev/null +++ b/nixos/modules/services/networking/zerotierone.nix @@ -0,0 +1,32 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.services.zerotierone; +in +{ + options.services.zerotierone.enable = mkEnableOption "ZeroTierOne"; + + config = mkIf cfg.enable { + systemd.services.zerotierone = { + description = "ZeroTierOne"; + path = [ pkgs.zerotierone ]; + after = [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + preStart = + '' + mkdir -p /var/lib/zerotier-one + chmod 700 /var/lib/zerotier-one + chown -R root:root /var/lib/zerotier-one + ''; + serviceConfig = { + Type = "forking"; + User = "root"; + PIDFile = "/var/lib/zerotier-one/zerotier-one.pid"; + ExecStart = "${pkgs.zerotierone}/bin/zerotier-one -d"; + }; + }; + environment.systemPackages = [ pkgs.zerotierone ]; + }; +} diff --git a/nixos/modules/services/web-servers/apache-httpd/default.nix b/nixos/modules/services/web-servers/apache-httpd/default.nix index 2885fd396525..7350a6a68c70 100644 --- a/nixos/modules/services/web-servers/apache-httpd/default.nix +++ b/nixos/modules/services/web-servers/apache-httpd/default.nix @@ -187,9 +187,6 @@ let MIMEMagicFile ${httpd}/conf/magic - - AddEncoding x-compress Z - AddEncoding x-gzip gz tgz ''; diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl index c4b1abc8cb03..34bff727b73a 100644 --- a/nixos/modules/system/boot/loader/grub/install-grub.pl +++ b/nixos/modules/system/boot/loader/grub/install-grub.pl @@ -186,7 +186,7 @@ sub GrubFs { if ($status != 0) { die "Failed to retrieve subvolume info for @{[$fs->mount]}\n"; } - my @ids = join("", @id_info) =~ m/Object ID:[ \t\n]*([^ \t\n]*)/; + my @ids = join("", @id_info) =~ m/Subvolume ID:[ \t\n]*([^ \t\n]*)/; if ($#ids > 0) { die "Btrfs subvol name for @{[$fs->device]} listed multiple times in mount\n" } elsif ($#ids == 0) { diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix index 191d5044341f..2d2976ea5b7c 100644 --- a/nixos/release-combined.nix +++ b/nixos/release-combined.nix @@ -56,6 +56,7 @@ in rec { (all nixos.tests.installer.lvm) (all nixos.tests.installer.luksroot) (all nixos.tests.installer.separateBoot) + (all nixos.tests.installer.separateBootFat) (all nixos.tests.installer.simple) (all nixos.tests.installer.simpleLabels) (all nixos.tests.installer.simpleProvided) diff --git a/nixos/release.nix b/nixos/release.nix index a8b6d275f1d8..c288adfd2063 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -229,6 +229,7 @@ in rec { tests.installer.lvm = forAllSystems (system: hydraJob (import tests/installer.nix { inherit system; }).lvm.test); tests.installer.luksroot = forAllSystems (system: hydraJob (import tests/installer.nix { inherit system; }).luksroot.test); tests.installer.separateBoot = forAllSystems (system: hydraJob (import tests/installer.nix { inherit system; }).separateBoot.test); + tests.installer.separateBootFat = forAllSystems (system: hydraJob (import tests/installer.nix { inherit system; }).separateBootFat.test); tests.installer.simple = forAllSystems (system: hydraJob (import tests/installer.nix { inherit system; }).simple.test); tests.installer.simpleLabels = forAllSystems (system: hydraJob (import tests/installer.nix { inherit system; }).simpleLabels.test); tests.installer.simpleProvided = forAllSystems (system: hydraJob (import tests/installer.nix { inherit system; }).simpleProvided.test); diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index 32be1ea23b98..4da5c29ca0d3 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -254,6 +254,27 @@ in { ''; }; + # Same as the previous, but with fat32 /boot. + separateBootFat = makeInstallerTest "separateBootFat" + { createPartitions = + '' + $machine->succeed( + "parted /dev/vda mklabel msdos", + "parted /dev/vda -- mkpart primary ext2 1M 50MB", # /boot + "parted /dev/vda -- mkpart primary linux-swap 50MB 1024M", + "parted /dev/vda -- mkpart primary ext2 1024M -1s", # / + "udevadm settle", + "mkswap /dev/vda2 -L swap", + "swapon -L swap", + "mkfs.ext3 -L nixos /dev/vda3", + "mount LABEL=nixos /mnt", + "mkfs.vfat -n BOOT /dev/vda1", + "mkdir -p /mnt/boot", + "mount LABEL=BOOT /mnt/boot", + ); + ''; + }; + # Create two physical LVM partitions combined into one volume group # that contains the logical swap and root partitions. lvm = makeInstallerTest "lvm" diff --git a/pkgs/applications/misc/diffpdf/default.nix b/pkgs/applications/misc/diffpdf/default.nix new file mode 100644 index 000000000000..88952f5eb761 --- /dev/null +++ b/pkgs/applications/misc/diffpdf/default.nix @@ -0,0 +1,53 @@ +{ stdenv, fetchurl, qt4, poppler_qt4 }: + +stdenv.mkDerivation rec { + version = "2.1.3"; + name = "diffpdf-${version}"; + + src = fetchurl { + url = "http://www.qtrac.eu/${name}.tar.gz"; + sha256 = "0cr468fi0d512jjj23r5flfzx957vibc9c25gwwhi0d773h2w566"; + }; + + patches = [ ./fix_path_poppler_qt4.patch ]; + + buildInputs = [ qt4 poppler_qt4 ]; + + preBuild = '' + substituteInPlace diffpdf.pro --replace @@NIX_POPPLER_QT4@@ ${poppler_qt4} + [ -e "*.qm" ] && make clean + lrelease diffpdf.pro + qmake -makefile PREFIX=\$out + ''; + + installPhase = '' + mkdir -p $out/bin $out/share/man/man1 + + install -Dpm755 -D diffpdf $out/bin/diffpdf + install -Dpm644 -D diffpdf.1 $out/share/man/man1/diffpdf.1 + + install -dpm755 $out/share/doc/${name} $out/share/licenses/${name} $out/share/pixmaps $out/share/applications + install -Dpm644 CHANGES README help.html $out/share/doc/${name}/ + install -Dpm644 gpl-2.0.txt $out/share/licenses/${name}/ + install -Dpm644 images/icon.png $out/share/pixmaps/${name}.png + + cat > $out/share/applications/diffpdf.desktop <= 2.1.0 tries to download config.{guess,sub} - postPatch = '' - rm tool/config_files.rb + postPatch = ops useRailsExpress '' + sed -i configure.in -e '/config.guess/d' cp ${config}/config.guess tool/ cp ${config}/config.sub tool/ ''; diff --git a/pkgs/development/interpreters/ruby/ruby-2.2.2.nix b/pkgs/development/interpreters/ruby/ruby-2.2.2.nix new file mode 100644 index 000000000000..5537d0e8c806 --- /dev/null +++ b/pkgs/development/interpreters/ruby/ruby-2.2.2.nix @@ -0,0 +1,110 @@ +{ stdenv, lib, fetchurl, fetchgit, fetchFromGitHub +, zlib, zlibSupport ? true +, openssl, opensslSupport ? true +, gdbm, gdbmSupport ? true +, ncurses, readline, cursesSupport ? true +, groff, docSupport ? false +, libyaml, yamlSupport ? true +, libffi, fiddleSupport ? true +, ruby_2_2_2, autoreconfHook, bison, useRailsExpress ? true +}: + +let + op = stdenv.lib.optional; + ops = stdenv.lib.optionals; + patchSet = import ./rvm-patchsets.nix { inherit fetchFromGitHub; }; + config = import ./config.nix fetchgit; + baseruby = ruby_2_2_2.override { useRailsExpress = false; }; +in + +stdenv.mkDerivation rec { + version = with passthru; "${majorVersion}.${minorVersion}.${teenyVersion}-p${patchLevel}"; + + name = "ruby-${version}"; + + src = if useRailsExpress then fetchFromGitHub { + owner = "ruby"; + repo = "ruby"; + rev = "v2_2_2"; + sha256 = "08mw1ql2ghy483cp8xzzm78q17simn4l6phgm2gah7kjh9y3vbrn"; + } else fetchurl { + url = "http://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.2.tar.gz"; + sha256 = "0i4v7l8pnam0by2cza12zldlhrffqchwb2m9shlnp7j2gqqhzz2z"; + }; + + # Have `configure' avoid `/usr/bin/nroff' in non-chroot builds. + NROFF = "${groff}/bin/nroff"; + + buildInputs = ops useRailsExpress [ autoreconfHook bison ] + ++ (op fiddleSupport libffi) + ++ (ops cursesSupport [ ncurses readline ]) + ++ (op docSupport groff) + ++ (op zlibSupport zlib) + ++ (op opensslSupport openssl) + ++ (op gdbmSupport gdbm) + ++ (op yamlSupport libyaml) + # Looks like ruby fails to build on darwin without readline even if curses + # support is not enabled, so add readline to the build inputs if curses + # support is disabled (if it's enabled, we already have it) and we're + # running on darwin + ++ (op (!cursesSupport && stdenv.isDarwin) readline); + + enableParallelBuilding = true; + + patches = ops useRailsExpress [ + "${patchSet}/patches/ruby/2.2.2/railsexpress/01-zero-broken-tests.patch" + "${patchSet}/patches/ruby/2.2.2/railsexpress/02-improve-gc-stats.patch" + "${patchSet}/patches/ruby/2.2.2/railsexpress/03-display-more-detailed-stack-trace.patch" + "${patchSet}/patches/ruby/2.2.2/railsexpress/04-backported-bugfixes-222.patch" + ]; + + postPatch = ops useRailsExpress '' + sed -i configure.in -e '/config.guess/d' + cp ${config}/config.guess tool/ + cp ${config}/config.sub tool/ + ''; + + configureFlags = ["--enable-shared" ] + ++ op useRailsExpress "--with-baseruby=${baseruby}/bin/ruby" + # on darwin, we have /usr/include/tk.h -- so the configure script detects + # that tk is installed + ++ ( if stdenv.isDarwin then [ "--with-out-ext=tk " ] else [ ]); + + installFlags = stdenv.lib.optionalString docSupport "install-doc"; + # Bundler tries to create this directory + postInstall = '' + # Bundler tries to create this directory + mkdir -pv $out/${passthru.gemPath} + mkdir -p $out/nix-support + cat > $out/nix-support/setup-hook < 1.2) + compass-core (~> 1.0.2) + compass-import-once (~> 1.0.5) + rb-fsevent (>= 0.9.3) + rb-inotify (>= 0.9) + sass (>= 3.3.13, < 3.5) + compass-core (1.0.3) + multi_json (~> 1.0) + sass (>= 3.3.0, < 3.5) + compass-import-once (1.0.5) + sass (>= 3.2, < 3.5) + ffi (1.9.8) + multi_json (1.11.0) + rb-fsevent (0.9.4) + rb-inotify (0.9.5) + ffi (>= 0.5.0) + sass (3.4.13) + +PLATFORMS + ruby + +DEPENDENCIES + compass diff --git a/pkgs/development/tools/compass/default.nix b/pkgs/development/tools/compass/default.nix new file mode 100644 index 000000000000..2b0a5aaf90a0 --- /dev/null +++ b/pkgs/development/tools/compass/default.nix @@ -0,0 +1,18 @@ +{ stdenv, lib, bundlerEnv, ruby }: + +bundlerEnv { + name = "compass-1.0.3"; + + inherit ruby; + gemfile = ./Gemfile; + lockfile = ./Gemfile.lock; + gemset = ./gemset.nix; + + meta = with lib; { + description = "Stylesheet Authoring Environment that makes your website design simpler to implement and easier to maintain."; + homepage = https://github.com/Compass/compass; + license = with licenses; mit; + maintainers = with maintainers; [ offline ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/tools/compass/gemset.nix b/pkgs/development/tools/compass/gemset.nix new file mode 100644 index 000000000000..aaf74f3f33c4 --- /dev/null +++ b/pkgs/development/tools/compass/gemset.nix @@ -0,0 +1,83 @@ +{ + "chunky_png" = { + version = "1.3.4"; + source = { + type = "gem"; + sha256 = "0n5xhkj3vffihl3h9s8yjzazqaqcm4p1nyxa1w2dk3fkpzvb0wfw"; + }; + }; + "compass" = { + version = "1.0.3"; + source = { + type = "gem"; + sha256 = "0lfi83w8z75czr0pf0rmj9hda22082h3cmvczl8r1ma9agf88y2c"; + }; + dependencies = [ + "chunky_png" + "compass-core" + "compass-import-once" + "rb-fsevent" + "rb-inotify" + "sass" + ]; + }; + "compass-core" = { + version = "1.0.3"; + source = { + type = "gem"; + sha256 = "0yaspqwdmzwdcqviclbs3blq7an16pysrfzylz8q1gxmmd6bpj3a"; + }; + dependencies = [ + "multi_json" + "sass" + ]; + }; + "compass-import-once" = { + version = "1.0.5"; + source = { + type = "gem"; + sha256 = "0bn7gwbfz7jvvdd0qdfqlx67fcb83gyvxqc7dr9fhcnks3z8z5rq"; + }; + dependencies = [ + "sass" + ]; + }; + "ffi" = { + version = "1.9.8"; + source = { + type = "gem"; + sha256 = "0ph098bv92rn5wl6rn2hwb4ng24v4187sz8pa0bpi9jfh50im879"; + }; + }; + "multi_json" = { + version = "1.11.0"; + source = { + type = "gem"; + sha256 = "1mg3hp17ch8bkf3ndj40s50yjs0vrqbfh3aq5r02jkpjkh23wgxl"; + }; + }; + "rb-fsevent" = { + version = "0.9.4"; + source = { + type = "gem"; + sha256 = "12if5xsik64kihxf5awsyavlp595y47g9qz77vfp2zvkxgglaka7"; + }; + }; + "rb-inotify" = { + version = "0.9.5"; + source = { + type = "gem"; + sha256 = "0kddx2ia0qylw3r52nhg83irkaclvrncgy2m1ywpbhlhsz1rymb9"; + }; + dependencies = [ + "ffi" + ]; + }; + "sass" = { + version = "3.4.13"; + source = { + type = "gem"; + sha256 = "0wxkjm41xr77pnfi06cbwv6vq0ypbni03jpbpskd7rj5b0zr27ig"; + }; + }; +} \ No newline at end of file diff --git a/pkgs/development/tools/misc/arcanist/default.nix b/pkgs/development/tools/misc/arcanist/default.nix index dfa83ffb3127..a6a457c2b583 100644 --- a/pkgs/development/tools/misc/arcanist/default.nix +++ b/pkgs/development/tools/misc/arcanist/default.nix @@ -3,18 +3,18 @@ let libphutil = fetchgit { url = "git://github.com/phacility/libphutil.git"; - rev = "672c0f7d5da9be6cda619428a9da3b91a670ea2f"; - sha256 = "830c7abce7244afa188255a6f288c345004cc4be1c8bbe93afa2aa2f1768f025"; + rev = "3753a09dfc7e7ee2626946735e420e5b50480f89"; + sha256 = "86c2613fed23edff58452ceb9fa98ceb559c7e41abdb6752f87ebcf0f50a1a66"; }; arcanist = fetchgit { url = "git://github.com/phacility/arcanist.git"; - rev = "64d03ff68bf2ff4ef99186472704df8aface9ef3"; - sha256 = "e9c5f9a9dcb1be0b7fd6f5fbda865e14277ddb0c1cedd256c459b3540ec6ded7"; + rev = "4d6d3feb7fc1fb63789554dddee8e489999c1201"; + sha256 = "e3a9314544c4430ac6e67ba2ae180a96b009b3ab848ba8712fc2b308cf880372"; }; in stdenv.mkDerivation rec { name = "arcanist-${version}"; - version = "20150525"; + version = "20150707"; src = [ arcanist libphutil ]; buildInputs = [ php makeWrapper flex ]; diff --git a/pkgs/development/web/nodejs/default.nix b/pkgs/development/web/nodejs/default.nix index f0598f735596..3f8d1c1f00a2 100644 --- a/pkgs/development/web/nodejs/default.nix +++ b/pkgs/development/web/nodejs/default.nix @@ -7,7 +7,7 @@ assert stdenv.system != "armv5tel-linux"; let - version = "0.12.0"; + version = "0.12.6"; deps = { inherit openssl zlib libuv; @@ -31,7 +31,7 @@ in stdenv.mkDerivation { src = fetchurl { url = "http://nodejs.org/dist/v${version}/node-v${version}.tar.gz"; - sha256 = "0cifd2qhpyrbxx71a4hsagzk24qas8m5zvwcyhx69cz9yhxf404p"; + sha256 = "1llsl7zl3080zd7jfhhy4d5s9pnhr15niw6vivp9sflpa71mlfvs"; }; configureFlags = concatMap sharedConfigureFlags (builtins.attrNames deps) ++ [ "--without-dtrace" ]; diff --git a/pkgs/misc/drivers/sundtek/default.nix b/pkgs/misc/drivers/sundtek/default.nix new file mode 100644 index 000000000000..0ad313a72331 --- /dev/null +++ b/pkgs/misc/drivers/sundtek/default.nix @@ -0,0 +1,48 @@ +{ fetchurl, stdenv }: + +with stdenv.lib; + +let + version = "30-06-2015"; + rpath = makeLibraryPath [ "$out/lib" "$out/bin" ]; + platform = with stdenv; + if isx86_64 then "64bit" + else + if isi686 then "32bit" + else abort "${system} not considered in build derivation. Might still be supported."; + +in + stdenv.mkDerivation { + src = fetchurl { + url = "http://www.sundtek.de/media/netinst/${platform}/installer.tar.gz"; + sha256 = "304d2785b5e9046c78fc092341721fdc404074105e63dd635e838559d42313c3"; + }; + name = "sundtek-${version}"; + + phases = [ "unpackPhase" "installPhase" "fixupPhase" ]; + + sourceRoot = "."; + + installPhase = '' + cp -r opt $out + + # add and fix pkg-config file + mkdir -p $out/lib/pkgconfig + substitute $out/doc/libmedia.pc $out/lib/pkgconfig/libmedia.pc \ + --replace /opt $out + ''; + + postFixup = '' + find $out -type f -exec \ + patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" {} \ + patchelf --set-rpath ${rpath} {} \; + ''; + + meta = { + description = "Sundtek MediaTV driver"; + maintainers = [ maintainers.simonvandel ]; + platforms = platforms.unix; + license = licenses.unfree; + homepage = "http://support.sundtek.com/index.php/topic,1573.0.html"; + }; + } diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix index b91a1a2ae106..056f6d1e9d3a 100644 --- a/pkgs/misc/vim-plugins/default.nix +++ b/pkgs/misc/vim-plugins/default.nix @@ -80,6 +80,7 @@ rec { vimshell = vimshell-vim; watchdogs = vim-watchdogs; webapi-vim = WebAPI; + wombat256 = wombat256-vim; # backwards compat, added 2015-7-8 yankring = YankRing; CSApprox = buildVimPluginFrom2Nix { # created by nix#NixDerivation @@ -1315,18 +1316,15 @@ rec { }; - wombat256 = buildVimPluginFrom2Nix { # created by nix#NixDerivation - name = "wombat256"; - src = fetchurl { - url = "http://www.vim.org/scripts/download_script.php?src_id=13400"; - name = "wombat256mod.vim"; - sha256 = "1san0jg9sfm6chhnr1wc5nhczlp11ibca0v7i4gf68h9ick9mysn"; + wombat256-vim = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "wombat256-vim-2010-10-17"; + src = fetchgit { + url = "git://github.com/vim-scripts/wombat256.vim"; + rev = "8734ba45dcf5e38c4d2686b35c94f9fcb30427e2"; + sha256 = "2feb7d57ab0a9f2ea44ccd606e540db64ab3285956398a50ecc562d7b8dbcd05"; }; - buildInputs = [ unzip ]; dependencies = []; - meta = { - url = "http://www.vim.org/scripts/script.php?script_id=2465"; - }; + }; } diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names index 972754ec2baf..91d7f32fce53 100644 --- a/pkgs/misc/vim-plugins/vim-plugin-names +++ b/pkgs/misc/vim-plugins/vim-plugin-names @@ -57,6 +57,7 @@ "github:vim-scripts/a.vim" "github:vim-scripts/align" "github:vim-scripts/tabmerge" +"github:vim-scripts/wombat256.vim" "github:wakatime/vim-wakatime" "github:wincent/command-t" "matchit.zip" @@ -97,4 +98,3 @@ "vim-snippets" "vim2hs" "vundle" -"wombat256" diff --git a/pkgs/servers/shairport-sync/default.nix b/pkgs/servers/shairport-sync/default.nix index 2bfe74900f6a..2ee5683a2ca2 100644 --- a/pkgs/servers/shairport-sync/default.nix +++ b/pkgs/servers/shairport-sync/default.nix @@ -1,36 +1,40 @@ -{ stdenv, fetchurl, openssl, avahi, alsaLib, libdaemon, autoconf, automake, libtool, popt, unzip, pkgconfig, libconfig, libpulseaudio }: +{ stdenv, fetchFromGitHub, autoreconfHook, openssl, avahi, alsaLib +, libdaemon, popt, pkgconfig, libconfig, libpulseaudio, soxr }: stdenv.mkDerivation rec { - version = "2.3.0"; + version = "2.3.6.5"; name = "shairport-sync-${version}"; - src = fetchurl { - url = "https://github.com/mikebrady/shairport-sync/archive/${version}.zip"; - sha256 = "1kslif2ifrn0frvi39d44wpn53sjahwq0xjc0hd98ycf3xbcgndg"; + src = fetchFromGitHub { + sha256 = "1337y62pnch27s2gr47miip3na1am24xprlc5a27lbr764nr85s3"; + rev = version; + repo = "shairport-sync"; + owner = "mikebrady"; }; buildInputs = [ + autoreconfHook openssl avahi alsaLib libdaemon - autoconf - automake pkgconfig - libtool popt - unzip libconfig libpulseaudio + soxr ]; enableParallelBuilding = true; - preConfigure = "autoreconf -vfi"; - configureFlags = "--with-alsa --with-avahi --with-ssl=openssl --without-initscript --with-pulseaudio"; + configureFlags = '' + --with-alsa --with-pipe --with-pulseaudio --with-stdout + --with-avahi --with-ssl=openssl --with-soxr + --without-configfiles --without-initscript + ''; meta = with stdenv.lib; { - homepage = https://github.com/mikebrady/shairport-sync; + inherit (src.meta) homepage; description = "Airtunes server and emulator with multi-room capabilities"; license = licenses.mit; platforms = platforms.unix; diff --git a/pkgs/tools/cd-dvd/xorriso/default.nix b/pkgs/tools/cd-dvd/xorriso/default.nix index c5595fab2e0b..29d483f725fa 100644 --- a/pkgs/tools/cd-dvd/xorriso/default.nix +++ b/pkgs/tools/cd-dvd/xorriso/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv, libcdio, zlib, bzip2, readline, acl, attr }: stdenv.mkDerivation rec { - name = "xorriso-1.3.8"; + name = "xorriso-1.4.0"; src = fetchurl { url = "mirror://gnu/xorriso/${name}.tar.gz"; - sha256 = "0zhhj9lr9z7hnb2alac54mc28w1l0mbanphhpmy3ylsi8rih84lh"; + sha256 = "0mhfxn2idkrw1i65a5y4gnb1fig85zpnszb9ax7w4a2v062y1l8b"; }; doCheck = true; diff --git a/pkgs/tools/networking/i2pd/default.nix b/pkgs/tools/networking/i2pd/default.nix index f1b32ddb7e7b..dd28345a48d2 100644 --- a/pkgs/tools/networking/i2pd/default.nix +++ b/pkgs/tools/networking/i2pd/default.nix @@ -1,14 +1,16 @@ -{ stdenv, fetchurl, boost, cryptopp }: +{ stdenv, fetchFromGitHub, boost, cryptopp }: stdenv.mkDerivation rec { - name = "i2pd-${version}"; - version = "0.9.0"; + name = pname + "-" + version; + pname = "i2pd"; + version = "0.10.0"; - src = fetchurl { - name = "i2pd-src-${version}.tar.gz"; - url = "https://github.com/PurpleI2P/i2pd/archive/${version}.tar.gz"; - sha256 = "1rcf4wc34g2alva9jzj6bz0f88g2f5v1w4418b6lp6chvqi7fhc7"; + src = fetchFromGitHub { + owner = "PurpleI2P"; + repo = pname; + rev = version; + sha256 = "11w62rc326rhj2xh06307ngx0fai30qny8ml6n5lrx2y1dzjfxd1"; }; buildInputs = [ boost cryptopp ]; diff --git a/pkgs/tools/package-management/disnix/DisnixWebService/default.nix b/pkgs/tools/package-management/disnix/DisnixWebService/default.nix index 4e143bed5194..65a90bfae96d 100644 --- a/pkgs/tools/package-management/disnix/DisnixWebService/default.nix +++ b/pkgs/tools/package-management/disnix/DisnixWebService/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl, apacheAnt, jdk, axis2, dbus_java}: stdenv.mkDerivation { - name = "DisnixWebService-0.3"; + name = "DisnixWebService-0.4"; src = fetchurl { - url = http://hydra.nixos.org/build/20419315/download/4/DisnixWebService-0.3.tar.bz2; - sha256 = "03vm84h7div200jr5z28hiwk0fq7i45j0ki18c2h4pmbsd89479i"; + url = http://hydra.nixos.org/build/23484798/download/4/DisnixWebService-0.4.tar.bz2; + sha256 = "1rfzmh4rxip8nq25fvi6vw51xb7h0nch4l06s0xgwwv4gw8p0lhm"; }; buildInputs = [ apacheAnt jdk ]; PREFIX = ''''${env.out}''; diff --git a/pkgs/tools/package-management/disnix/default.nix b/pkgs/tools/package-management/disnix/default.nix index 98213d9cf342..39d8132ba097 100644 --- a/pkgs/tools/package-management/disnix/default.nix +++ b/pkgs/tools/package-management/disnix/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, dbus_glib, libxml2, libxslt, getopt, nixUnstable, dysnomia, libintlOrEmpty, libiconv }: stdenv.mkDerivation { - name = "disnix-0.3"; + name = "disnix-0.4"; src = fetchurl { - url = http://hydra.nixos.org/build/20419300/download/4/disnix-0.3.tar.gz; - sha256 = "11yh270r8mgnkz98ax3p4rlc5dh88sxykvsmcpvgaqnqjh1rwd3j"; + url = http://hydra.nixos.org/build/23484781/download/4/disnix-0.4.tar.gz; + sha256 = "1hvjy19br4x7cvgn0rslysrp3w7jfh30s7piq6v9j2b6k6wmh2hk"; }; buildInputs = [ pkgconfig dbus_glib libxml2 libxslt getopt nixUnstable libintlOrEmpty libiconv dysnomia ]; diff --git a/pkgs/tools/package-management/disnix/disnixos/default.nix b/pkgs/tools/package-management/disnix/disnixos/default.nix index 52312ca7191e..4603f108d378 100644 --- a/pkgs/tools/package-management/disnix/disnixos/default.nix +++ b/pkgs/tools/package-management/disnix/disnixos/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, disnix, socat, pkgconfig, getopt }: stdenv.mkDerivation { - name = "disnixos-0.2"; + name = "disnixos-0.3"; src = fetchurl { - url = http://hydra.nixos.org/build/20419306/download/3/disnixos-0.2.tar.gz; - sha256 = "1xysklly0gvh0np0h3f30sfs5lx6qnwj59l8caynwn46qy596gnx"; + url = http://hydra.nixos.org/build/23484787/download/3/disnixos-0.3.tar.gz; + sha256 = "08v9vbg3727mv4iyzwfnf5x3la2xjj1agbbzm8aaa09q7alqasvw"; }; buildInputs = [ socat pkgconfig disnix getopt ]; diff --git a/pkgs/tools/package-management/disnix/dysnomia/default.nix b/pkgs/tools/package-management/disnix/dysnomia/default.nix index 0507ff45dc72..f79250cf0189 100644 --- a/pkgs/tools/package-management/disnix/dysnomia/default.nix +++ b/pkgs/tools/package-management/disnix/dysnomia/default.nix @@ -20,10 +20,10 @@ assert enableEjabberdDump -> ejabberd != null; assert enableMongoDatabase -> mongodb != null; stdenv.mkDerivation { - name = "dysnomia-0.3"; + name = "dysnomia-0.4"; src = fetchurl { - url = http://hydra.nixos.org/build/20419293/download/1/dysnomia-0.3.tar.gz; - sha256 = "09z9ad72wzxjvbc3hynbj9n1y4rrxw1by1wxacjmdqyp46h4b746"; + url = http://hydra.nixos.org/build/23484767/download/1/dysnomia-0.4.tar.gz; + sha256 = "1xyd1gzsy4nlbv2l2lrrs964vvb74yhmb8snr4chf7hcyaybb6cq"; }; preConfigure = if enableEjabberdDump then "export PATH=$PATH:${ejabberd}/sbin" else ""; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1d2e8e4fe379..6afed1980a80 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1154,6 +1154,8 @@ let cloogppl = callPackage ../development/libraries/cloog-ppl { }; + compass = callPackage ../development/tools/compass { }; + convmv = callPackage ../tools/misc/convmv { }; cool-retro-term = callPackage ../applications/misc/cool-retro-term { }; @@ -2981,6 +2983,8 @@ let suidChroot = callPackage ../tools/system/suid-chroot { }; + sundtek = callPackage ../misc/drivers/sundtek { }; + super = callPackage ../tools/security/super { }; ssdeep = callPackage ../tools/security/ssdeep { }; @@ -4195,7 +4199,7 @@ let bitstring_2_0_4 = callPackage ../development/ocaml-modules/bitstring/2.0.4.nix { }; bitstring_git = callPackage ../development/ocaml-modules/bitstring { }; - + bitstring = if lib.versionOlder "4.02" ocaml_version then bitstring_git @@ -5024,24 +5028,23 @@ let bundlerEnv = callPackage ../development/interpreters/ruby/bundler-env { }; ruby_1_8_7 = callPackage ../development/interpreters/ruby/ruby-1.8.7.nix { }; - ruby_1_9_3 = callPackage ../development/interpreters/ruby/ruby-1.9.3.nix { - inherit (darwin) libobjc; - }; - ruby_2_0_0 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.0.0.nix { }); - ruby_2_1_0 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.1.0.nix { }); - ruby_2_1_1 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.1.1.nix { }); - ruby_2_1_2 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.1.2.nix { }); - ruby_2_1_3 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.1.3.nix { }); - ruby_2_1_6 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.1.6.nix { }); - ruby_2_2_0 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.2.0.nix { }); + ruby_1_9_3 = callPackage ../development/interpreters/ruby/ruby-1.9.3.nix { }; + ruby_2_0_0 = callPackage ../development/interpreters/ruby/ruby-2.0.0.nix { }; + ruby_2_1_0 = callPackage ../development/interpreters/ruby/ruby-2.1.0.nix { }; + ruby_2_1_1 = callPackage ../development/interpreters/ruby/ruby-2.1.1.nix { }; + ruby_2_1_2 = callPackage ../development/interpreters/ruby/ruby-2.1.2.nix { }; + ruby_2_1_3 = callPackage ../development/interpreters/ruby/ruby-2.1.3.nix { }; + ruby_2_1_6 = callPackage ../development/interpreters/ruby/ruby-2.1.6.nix { }; + ruby_2_2_0 = callPackage ../development/interpreters/ruby/ruby-2.2.0.nix { }; + ruby_2_2_2 = callPackage ../development/interpreters/ruby/ruby-2.2.2.nix { }; # Ruby aliases - ruby = ruby_2_1; + ruby = ruby_2_2; ruby_1_8 = ruby_1_8_7; ruby_1_9 = ruby_1_9_3; ruby_2_0 = ruby_2_0_0; ruby_2_1 = ruby_2_1_6; - ruby_2_2 = ruby_2_2_0; + ruby_2_2 = ruby_2_2_2; rubygemsFun = ruby: builderDefsPackage (import ../development/interpreters/ruby/rubygems.nix) { inherit ruby makeWrapper; @@ -12028,6 +12031,8 @@ let mutt-kz = callPackage ../applications/networking/mailreaders/mutt-kz { }; + openshift = callPackage ../applications/networking/cluster/openshift { }; + panamax_api = callPackage ../applications/networking/cluster/panamax/api { ruby = ruby_2_1; }; @@ -12069,10 +12074,14 @@ let maxlib = callPackage ../applications/audio/pd-plugins/maxlib { }; + pdfdiff = callPackage ../applications/misc/pdfdiff { }; + mupdf = callPackage ../applications/misc/mupdf { openjpeg = openjpeg_2_0; }; + diffpdf = callPackage ../applications/misc/diffpdf { }; + mypaint = callPackage ../applications/graphics/mypaint { }; mythtv = callPackage ../applications/video/mythtv { }; @@ -14334,6 +14343,10 @@ let ### SCIENCE / MATH + caffe = callPackage ../applications/science/math/caffe { + cudaSupport = config.caffe.cudaSupport or config.cudaSupport or true; + }; + ecm = callPackage ../applications/science/math/ecm { }; eukleides = callPackage ../applications/science/math/eukleides { diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ad135e34a4d1..3bc7c184e469 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -68,7 +68,7 @@ let /\\$/{N;br} /__future__|^ *(#.*)?$/{n;br} ${concatImapStrings mkStringSkipper quoteVariants} - /^ *[^# ]/i import sys; sys.argv[0] = '"'$(basename "$i")'"' + /^ *[^# ]/i import sys; sys.argv[0] = '"'$(basename "$f")'"' } ''; } @@ -1710,6 +1710,29 @@ let }; }; + cassandraDriver = buildPythonPackage rec { + name = "cassandra-driver-2.6.0c2"; + + src = pkgs.fetchurl { + url = "http://pypi.python.org/packages/source/c/cassandra-driver/${name}.tar.gz"; + sha256 = "00cc2rkvkxaxn7sf2qzy29s6h394fla73rbdh9krxbswp5nvp27r"; + }; + + propagatedBuildInputs = with self; [ + futures + nose + six + sure + pytz + pyyaml + ]; + + meta = { + homepage = http://datastax.github.io/python-driver/; + description = "A Python client driver for Apache Cassandra"; + }; + }; + celery = buildPythonPackage rec { name = "celery-${version}"; @@ -8822,22 +8845,21 @@ let pgcli = buildPythonPackage rec { name = "pgcli-${version}"; - version = "0.17.0"; + version = "0.18.0"; src = pkgs.fetchFromGitHub { - sha256 = "0fnzhsir1m7a2rlh3iqinrz5i38ssfg9p7s60bkyy55614l146yg"; + sha256 = "1ydi1725ryz9by770kyx06cwrvyvixbg3502brkf5hvbjd8ddzrl"; rev = "v${version}"; repo = "pgcli"; owner = "amjith"; }; - propagatedBuildInputs = with self; [ click jedi prompt_toolkit psycopg2 pygments sqlparse ]; - - postPatch = '' - substituteInPlace setup.py --replace "==" ">=" - ''; + propagatedBuildInputs = with self; [ + click configobj prompt_toolkit psycopg2 pygments sqlparse + ]; meta = { + inherit version; description = "Command-line interface for PostgreSQL"; longDescription = '' Rich command-line interface for PostgreSQL with auto-completion and