Merge branch 'master' into staging

... to get expat mass rebuild.
Hydra nixpkgs: ?compare=1272431
This commit is contained in:
Vladimír Čunát 2016-05-19 15:42:18 +02:00
commit 5eea16ee90
137 changed files with 7290 additions and 6011 deletions

View File

@ -76,6 +76,7 @@
choochootrain = "Hurshal Patel <hurshal@imap.cc>";
christopherpoole = "Christopher Mark Poole <mail@christopherpoole.net>";
cleverca22 = "Michael Bishop <cleverca22@gmail.com>";
cmcdragonkai = "Roger Qiu <roger.qiu@matrix.ai>";
coconnor = "Corey O'Connor <coreyoconnor@gmail.com>";
codsl = "codsl <codsl@riseup.net>";
codyopel = "Cody Opel <codyopel@gmail.com>";
@ -160,7 +161,7 @@
hrdinka = "Christoph Hrdinka <c.nix@hrdinka.at>";
iand675 = "Ian Duncan <ian@iankduncan.com>";
ianwookim = "Ian-Woo Kim <ianwookim@gmail.com>";
iElectric = "Domen Kozar <domen@dev.si>";
domenkozar = "Domen Kozar <domen@dev.si>";
igsha = "Igor Sharonov <igor.sharonov@gmail.com>";
ikervagyok = "Balázs Lengyel <ikervagyok@gmail.com>";
j-keck = "Jürgen Keck <jhyphenkeck@gmail.com>";

View File

@ -1,7 +1,7 @@
{ stdenv, makeWrapper, perl, perlPackages }:
stdenv.mkDerivation {
name = "nix-generate-from-cpan-2";
name = "nix-generate-from-cpan-3";
buildInputs = with perlPackages; [
makeWrapper perl CPANMeta GetoptLongDescriptive CPANPLUS Readonly Log4Perl
@ -20,5 +20,6 @@ stdenv.mkDerivation {
meta = {
maintainers = with stdenv.lib.maintainers; [ eelco rycee ];
description = "Utility to generate a Nix expression for a Perl package from CPAN";
platforms = stdenv.lib.platforms.unix;
};
}

View File

@ -278,13 +278,13 @@ sub get_deps {
foreach my $n ( $deps->required_modules ) {
next if $n eq "perl";
# Hacky way to figure out if this module is part of Perl.
if ( $n !~ /^JSON/ && $n !~ /^YAML/ && $n !~ /^Module::Pluggable/ && $n !~ /^if$/ ) {
eval "use $n;";
if ( !$@ ) {
DEBUG("skipping Perl-builtin module $n");
next;
}
# Figure out whether the module is a core module by attempting
# to `use` the module in a pure Perl interpreter and checking
# whether it succeeded. Note, $^X is a magic variable holding
# the path to the running Perl interpreter.
if ( system("env -i $^X -M$n -e1 >/dev/null 2>&1") == 0 ) {
DEBUG("skipping Perl-builtin module $n");
next;
}
my $pkg = module_to_pkg( $cb, $n );

View File

@ -5,8 +5,57 @@ let
cfg = config.programs.tmux;
in
{
defaultKeyMode = "emacs";
defaultResize = 5;
defaultShortcut = "b";
defaultTerminal = "screen";
boolToStr = value: if value then "on" else "off";
tmuxConf = ''
set -g default-terminal "${cfg.terminal}"
set -g base-index ${toString cfg.baseIndex}
setw -g pane-base-index ${toString cfg.baseIndex}
${if cfg.newSession then "new-session" else ""}
${if cfg.reverseSplit then ''
bind v split-window -h
bind s split-window -v
'' else ""}
set -g status-keys ${cfg.keyMode}
set -g mode-keys ${cfg.keyMode}
${if cfg.keyMode == "vi" then ''
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
bind -r H resize-pane -L ${toString cfg.resizeAmount}
bind -r J resize-pane -D ${toString cfg.resizeAmount}
bind -r K resize-pane -U ${toString cfg.resizeAmount}
bind -r L resize-pane -R ${toString cfg.resizeAmount}
'' else ""}
${if (cfg.shortcut != defaultShortcut) then ''
# rebind main key: C-${cfg.shortcut}
unbind C-${defaultShortcut}
set -g prefix C-${cfg.shortcut}
bind ${cfg.shortcut} send-prefix
bind C-${cfg.shortcut} last-window
'' else ""}
setw -g aggressive-resize ${boolToStr cfg.aggressiveResize}
setw -g clock-mode-style ${if cfg.clock24 then "24" else "12"}
set -s escape-time ${toString cfg.escapeTime}
set -g history-limit ${toString cfg.historyLimit}
${cfg.extraTmuxConf}
'';
in {
###### interface
options = {
@ -14,13 +63,92 @@ in
enable = mkEnableOption "<command>tmux</command> - a <command>screen</command> replacement.";
tmuxconf = mkOption {
aggressiveResize = mkOption {
default = false;
example = true;
type = types.bool;
description = ''
Resize the window to the size of the smallest session for which it is the current window.
'';
};
baseIndex = mkOption {
default = 0;
example = 1;
type = types.int;
description = "Base index for windows and panes.";
};
clock24 = mkOption {
default = false;
example = true;
type = types.bool;
description = "Use 24 hour clock.";
};
escapeTime = mkOption {
default = 500;
example = 0;
type = types.int;
description = "Time in milliseconds for which tmux waits after an escape is input.";
};
extraTmuxConf = mkOption {
default = "";
description = ''
The contents of /etc/tmux.conf
Additional contents of /etc/tmux.conf
'';
type = types.lines;
};
historyLimit = mkOption {
default = 2000;
example = 5000;
type = types.int;
description = "Maximum number of lines held in window history.";
};
keyMode = mkOption {
default = defaultKeyMode;
example = "vi";
type = types.enum [ "emacs" "vi" ];
description = "VI or Emacs style shortcuts.";
};
newSession = mkOption {
default = false;
example = true;
type = types.bool;
description = "Automatically spawn a session if trying to attach and none are running.";
};
reverseSplit = mkOption {
default = false;
example = true;
type = types.bool;
description = "Reverse the window split shortcuts.";
};
resizeAmount = mkOption {
default = defaultResize;
example = 10;
type = types.int;
description = "Number of lines/columns when resizing.";
};
shortcut = mkOption {
default = defaultShortcut;
example = "a";
type = types.str;
description = "Ctrl following by this key is used as the main shortcut.";
};
terminal = mkOption {
default = defaultTerminal;
example = "screen-256color";
type = types.str;
description = "Set the $TERM variable.";
};
};
};
@ -29,7 +157,7 @@ in
config = mkIf cfg.enable {
environment = {
systemPackages = [ pkgs.tmux ];
etc."tmux.conf".text = cfg.tmuxconf;
etc."tmux.conf".text = tmuxConf;
};
};
}

View File

@ -2,19 +2,14 @@
with lib;
let
cfg = config.services.subsonic;
homeDir = "/var/subsonic";
in
{
let cfg = config.services.subsonic; in {
options = {
services.subsonic = {
enable = mkEnableOption "Subsonic daemon";
home = mkOption {
type = types.path;
default = "${homeDir}";
default = "/var/lib/subsonic";
description = ''
The directory where Subsonic will create files.
Make sure it is writable.
@ -112,30 +107,43 @@ in
description = "Personal media streamer";
after = [ "local-fs.target" "network.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
ExecStart = ''
${pkgs.jre}/bin/java -Xmx${toString cfg.maxMemory}m \
-Dsubsonic.home=${cfg.home} \
-Dsubsonic.host=${cfg.listenAddress} \
-Dsubsonic.port=${toString cfg.port} \
-Dsubsonic.httpsPort=${toString cfg.httpsPort} \
-Dsubsonic.contextPath=${cfg.contextPath} \
-Dsubsonic.defaultMusicFolder=${cfg.defaultMusicFolder} \
-Dsubsonic.defaultPodcastFolder=${cfg.defaultPodcastFolder} \
-Dsubsonic.defaultPlaylistFolder=${cfg.defaultPlaylistFolder} \
-Djava.awt.headless=true \
-verbose:gc \
-jar ${pkgs.subsonic}/subsonic-booter-jar-with-dependencies.jar
'';
script = ''
${pkgs.jre}/bin/java -Xmx${toString cfg.maxMemory}m \
-Dsubsonic.home=${cfg.home} \
-Dsubsonic.host=${cfg.listenAddress} \
-Dsubsonic.port=${toString cfg.port} \
-Dsubsonic.httpsPort=${toString cfg.httpsPort} \
-Dsubsonic.contextPath=${cfg.contextPath} \
-Dsubsonic.defaultMusicFolder=${cfg.defaultMusicFolder} \
-Dsubsonic.defaultPodcastFolder=${cfg.defaultPodcastFolder} \
-Dsubsonic.defaultPlaylistFolder=${cfg.defaultPlaylistFolder} \
-Djava.awt.headless=true \
-verbose:gc \
-jar ${pkgs.subsonic}/subsonic-booter-jar-with-dependencies.jar
'';
preStart = ''
# Formerly this module set cfg.home to /var/subsonic. Try to move
# /var/subsonic to cfg.home.
oldHome="/var/subsonic"
if [ "${cfg.home}" != "$oldHome" ] &&
! [ -e "${cfg.home}" ] &&
[ -d "$oldHome" ] &&
[ $(${pkgs.coreutils}/bin/stat -c %u "$oldHome") -eq \
${toString config.users.extraUsers.subsonic.uid} ]; then
logger Moving "$oldHome" to "${cfg.home}"
${pkgs.coreutils}/bin/mv -T "$oldHome" "${cfg.home}"
fi
# Install transcoders.
ExecStartPre = ''
${pkgs.coreutils}/bin/rm -rf ${cfg.home}/transcode ; \
${pkgs.coreutils}/bin/mkdir -p ${cfg.home}/transcode ; \
${pkgs.bash}/bin/bash -c ' \
for exe in "$@"; do \
${pkgs.coreutils}/bin/ln -sf "$exe" ${cfg.home}/transcode; \
done' IGNORED_FIRST_ARG ${toString cfg.transcoders}
'';
${pkgs.coreutils}/bin/rm -rf ${cfg.home}/transcode ; \
${pkgs.coreutils}/bin/mkdir -p ${cfg.home}/transcode ; \
${pkgs.bash}/bin/bash -c ' \
for exe in "$@"; do \
${pkgs.coreutils}/bin/ln -sf "$exe" ${cfg.home}/transcode; \
done' IGNORED_FIRST_ARG ${toString cfg.transcoders}
'';
serviceConfig = {
# Needed for Subsonic to find subsonic.war.
WorkingDirectory = "${pkgs.subsonic}";
Restart = "always";
@ -146,7 +154,7 @@ in
users.extraUsers.subsonic = {
description = "Subsonic daemon user";
home = homeDir;
home = cfg.home;
createHome = true;
group = "subsonic";
uid = config.ids.uids.subsonic;

View File

@ -110,7 +110,7 @@ in
};
services.dbus.packages = [
pkgs.dbus
pkgs.dbus.out
config.system.path
];

View File

@ -25,7 +25,7 @@ in
{
name = "bittorrent";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ iElectric eelco chaoflow rob wkennington ];
maintainers = [ domenkozar eelco chaoflow rob wkennington ];
};
nodes =

View File

@ -3,7 +3,7 @@
import ./make-test.nix ({ pkgs, ...} : {
name = "gitlab";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ iElectric offline ];
maintainers = [ domenkozar offline ];
};
nodes = {

View File

@ -1,7 +1,7 @@
import ./make-test.nix ({ pkgs, ...} : {
name = "gnome3";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ iElectric eelco chaoflow lethalman ];
maintainers = [ domenkozar eelco chaoflow lethalman ];
};
machine =

View File

@ -6,7 +6,7 @@
import ./make-test.nix ({ pkgs, ...} : {
name = "jenkins";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ bjornfor coconnor iElectric eelco chaoflow ];
maintainers = [ bjornfor coconnor domenkozar eelco chaoflow ];
};
nodes = {

View File

@ -1,7 +1,7 @@
import ./make-test.nix ({ pkgs, ... }: {
name = "kde4";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ iElectric eelco chaoflow ];
maintainers = [ domenkozar eelco chaoflow ];
};
machine =

View File

@ -4,7 +4,7 @@
import ./make-test.nix ({ pkgs, ...} : {
name = "munin";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ iElectric eelco chaoflow ];
maintainers = [ domenkozar eelco chaoflow ];
};
nodes = {

View File

@ -3,7 +3,7 @@
import ./make-test.nix ({pkgs, ... }: {
name = "printing";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ iElectric eelco chaoflow jgeerds ];
maintainers = [ domenkozar eelco chaoflow jgeerds ];
};
nodes = {

View File

@ -22,7 +22,7 @@ in
rec {
name = "quake3";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ iElectric eelco chaoflow ];
maintainers = [ domenkozar eelco chaoflow ];
};
# TODO: lcov doesn't work atm

View File

@ -1,9 +1,10 @@
{ stdenv, fetchFromGitHub, makeWrapper, callPackage, libgroove, python, utillinux }:
{ stdenv, fetchFromGitHub, makeWrapper, callPackage, libgroove, python, utillinux, nodejs }:
with stdenv.lib;
let
nodePackages = callPackage (import ../../../top-level/node-packages.nix) {
inherit nodejs;
neededNatives = [ libgroove python utillinux ];
self = nodePackages;
generated = ./package.nix;

View File

@ -18,7 +18,7 @@ in stdenv.mkDerivation rec {
description = "An online/offline backup solution";
homepage = "http://www.crashplan.org";
license = licenses.unfree;
maintainers = with maintainers; [ sztupi iElectric ];
maintainers = with maintainers; [ sztupi domenkozar ];
};
buildInputs = [ makeWrapper cpio ];

View File

@ -23,13 +23,13 @@ let
in
stdenv.mkDerivation rec {
name = "emacs-25.0.93";
name = "emacs-25.0.94";
builder = ./builder.sh;
src = fetchurl {
url = "ftp://alpha.gnu.org/gnu/emacs/pretest/${name}.tar.xz";
sha256 = "1wbr2n723ycg16rlg81v9x17w9ciy7qyckxplnwghlyfj6j9k4dk";
sha256 = "19kd9iwj4rz7llihs7a4gmag98n3asrxn3jh6mdmyn24w2kmxi69";
};
patches = lib.optionals stdenv.isDarwin [

View File

@ -1257,10 +1257,10 @@
}) {};
org = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
pname = "org";
version = "20160502";
version = "20160516";
src = fetchurl {
url = "https://elpa.gnu.org/packages/org-20160502.tar";
sha256 = "0li067na4p0k9r4nr6a2vfqygvlmzsdgm5kgg2p60lsvydh43fvw";
url = "https://elpa.gnu.org/packages/org-20160516.tar";
sha256 = "164v1zddgyfy9v1qhl1fqz2vcgm5w4dhfmra5ngpgnjh1402l0pm";
};
packageRequires = [];
meta = {
@ -1760,10 +1760,10 @@
validate = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "validate";
version = "0.3";
version = "0.5";
src = fetchurl {
url = "https://elpa.gnu.org/packages/validate-0.3.el";
sha256 = "0nq917217ax5zykzaybv7diz1vgl3y6r8vi7hmz3lzm5dl90jy3m";
url = "https://elpa.gnu.org/packages/validate-0.5.el";
sha256 = "1gzphvcqih5zz80mmnc2wx2kgc13g9hv98kqsfpndbdd3bw3blph";
};
packageRequires = [ cl-lib emacs ];
meta = {
@ -1838,10 +1838,10 @@
}) {};
websocket = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
pname = "websocket";
version = "1.5";
version = "1.6";
src = fetchurl {
url = "https://elpa.gnu.org/packages/websocket-1.5.tar";
sha256 = "0plgc8an229cqbghrxd6wh73b081dc17fx1r940dqhgi284pcjsy";
url = "https://elpa.gnu.org/packages/websocket-1.6.tar";
sha256 = "09im218c1gkq1lg356rcqqpkydnpxs5qzdqkwk95pwndswb40a5a";
};
packageRequires = [];
meta = {

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +1,10 @@
{ callPackage }: {
org = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
pname = "org";
version = "20160502";
version = "20160516";
src = fetchurl {
url = "http://orgmode.org/elpa/org-20160502.tar";
sha256 = "0ranc2qiw6g6qja0jh1dvh06k6waagkiir2q2zla5d54brw4fg5a";
url = "http://orgmode.org/elpa/org-20160516.tar";
sha256 = "0zr87i55l92n1m8fgzvpdm40gh4fjwzsvgq47cmviqjr38kzdxv0";
};
packageRequires = [];
meta = {
@ -14,10 +14,10 @@
}) {};
org-plus-contrib = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
pname = "org-plus-contrib";
version = "20160502";
version = "20160516";
src = fetchurl {
url = "http://orgmode.org/elpa/org-plus-contrib-20160502.tar";
sha256 = "1znqh4pp9dlqmmdjhgy6vb880hq3cl4q6nmv48x8n5may159mvm0";
url = "http://orgmode.org/elpa/org-plus-contrib-20160516.tar";
sha256 = "1g1a9qsn1i1fh5ppa2jimfqvzkd7rhq5a7xz73lkaw8j3niqy62s";
};
packageRequires = [];
meta = {

View File

@ -75,7 +75,7 @@ index 0000000..a2f9918
+
+let b:current_syntax = "nix"
+
+" thanks to iElectric
+" thanks to domenkozar
+" scan backwards to find begining of multiline statements
+syn sync ccomment nixMultiLineComment minlines=10 maxlines=500
+syn sync ccomment nixStringIndented minlines=10 maxlines=500

View File

@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
description = "Popular photo organizer for the GNOME desktop";
homepage = https://wiki.gnome.org/Apps/Shotwell;
license = licenses.lgpl21Plus;
maintainers = with maintainers; [iElectric];
maintainers = with maintainers; [domenkozar];
platforms = platforms.linux;
};
}

View File

@ -1,5 +1,6 @@
{ stdenv, fetchurl, cairo, colord, glib, gtk3, gusb, intltool, itstool
, libusb1, libxml2, pkgconfig, sane-backends, vala, wrapGAppsHook }:
, libusb1, libxml2, pkgconfig, sane-backends, vala, wrapGAppsHook
, gnome3 }:
stdenv.mkDerivation rec {
name = "simple-scan-${version}";
@ -16,11 +17,30 @@ stdenv.mkDerivation rec {
configureFlags = [ "--disable-packagekit" ];
patchPhase = ''
sed -i -e 's#Icon=scanner#Icon=simple-scan#g' ./data/simple-scan.desktop.in
'';
preBuild = ''
# Clean up stale .c files referencing packagekit headers as of 3.20.0:
make clean
'';
postInstall = ''
(
cd ${gnome3.defaultIconTheme}/share/icons/Adwaita
for f in `find . | grep 'scanner\.'`
do
local outFile="`echo "$out/share/icons/hicolor/$f" | sed \
-e 's#/devices/#/apps/#g' \
-e 's#scanner\.#simple-scan\.#g'`"
mkdir -p "`realpath -m "$outFile/.."`"
cp "$f" "$outFile"
done
)
'';
enableParallelBuilding = true;
doCheck = true;

View File

@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
description = "Comprehensive e-book software";
homepage = http://calibre-ebook.com;
license = with licenses; if unrarSupport then unfreeRedistributable else gpl3;
maintainers = with maintainers; [ viric iElectric pSub AndersonTorres ];
maintainers = with maintainers; [ viric domenkozar pSub AndersonTorres ];
platforms = platforms.linux;
inherit version;
};

View File

@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
description = "Lightweight and fast battery icon that sits in the system tray";
homepage = https://github.com/valr/cbatticon;
license = licenses.gpl2;
maintainers = [ maintainers.iElectric ];
maintainers = [ maintainers.domenkozar ];
platforms = platforms.linux;
};
}

View File

@ -35,6 +35,6 @@ stdenv.mkDerivation rec {
license = stdenv.lib.licenses.bsd3;
# NOTE: 'unix' or even 'all' COULD work too, I'm not sure
platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.iElectric ];
maintainers = [ stdenv.lib.maintainers.domenkozar ];
};
}

View File

@ -1,4 +1,5 @@
source 'https://rubygems.org'
gem 'jekyll'
gem 'jekyll-paginate'
gem 'rdiscount'
gem 'RedCloth'

View File

@ -17,6 +17,7 @@ GEM
sass (~> 3.4)
jekyll-watch (1.3.0)
listen (~> 3.0)
jekyll-paginate (1.1.0)
kramdown (1.9.0)
liquid (3.0.6)
listen (3.0.5)

View File

@ -30,6 +30,7 @@
"colorator"
"jekyll-sass-converter"
"jekyll-watch"
"jekyll-paginate"
"kramdown"
"liquid"
"mercenary"
@ -57,6 +58,13 @@
"listen"
];
};
"jekyll-paginate" = {
version = "1.1.0";
source = {
type = "gem";
sha256 = "0r7bcs8fq98zldih4787zk5i9w24nz5wa26m84ssja95n3sas2l8";
};
};
"kramdown" = {
version = "1.9.0";
source = {

View File

@ -52,7 +52,7 @@ pythonPackages.buildPythonApplication rec {
description = "Open source document analysis and OCR system";
license = licenses.asl20;
homepage = https://github.com/tmbdev/ocropy/;
maintainers = with maintainers; [ iElectric nckx viric ];
maintainers = with maintainers; [ domenkozar nckx viric ];
platforms = platforms.linux;
};
}

View File

@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
description = "PostgreSQL administration GUI tool";
homepage = http://www.pgadmin.org;
license = licenses.gpl2;
maintainers = with maintainers; [ iElectric wmertens ];
maintainers = with maintainers; [ domenkozar wmertens ];
platforms = platforms.unix;
};
}

View File

@ -0,0 +1,40 @@
{ stdenv, fetchFromGitLab, pythonPackages }:
stdenv.mkDerivation rec {
name = "phwmon-${version}";
version = "2016-03-13";
src = fetchFromGitLab {
owner = "o9000";
repo = "phwmon";
rev = "90247ceaff915ad1040352c5cc9195e4153472d4";
sha256 = "1gkjfmd8rai7bl1j7jz9drmzlw72n7mczl0akv39ya4l6k8plzvv";
};
nativeBuildInputs = [ pythonPackages.wrapPython ];
buildInputs = [ pythonPackages.pygtk pythonPackages.psutil ];
pythonPath = [ pythonPackages.pygtk pythonPackages.psutil ];
patchPhase = ''
substituteInPlace install.sh --replace "/usr/local" "$out"
'';
installPhase = ''
mkdir -p $out/bin $out/share/applications
./install.sh
'';
postFixup = ''
wrapPythonPrograms
'';
meta = {
homepage = https://gitlab.com/o9000/phwmon;
description = "Hardware monitor (CPU, memory, network and disk I/O) for the system tray";
license = stdenv.lib.licenses.gpl2;
platforms = stdenv.lib.platforms.unix;
maintainers = [ stdenv.lib.maintainers.romildo ];
};
}

View File

@ -0,0 +1,40 @@
{ stdenv, fetchFromGitLab, pythonPackages, gnome }:
stdenv.mkDerivation rec {
name = "pmenu-${version}";
version = "2016-05-13";
src = fetchFromGitLab {
owner = "o9000";
repo = "pmenu";
rev = "90b722de345cff56f8ec0908a0e8a7d733c0c671";
sha256 = "15bkvadr7ab44mc8gkdqs3w14cm498mwf72w5rjm2rdh55357jjh";
};
nativeBuildInputs = [ pythonPackages.wrapPython ];
buildInputs = [ pythonPackages.pygtk gnome.gnome_menus ];
pythonPath = [ pythonPackages.pygtk ];
patchPhase = ''
substituteInPlace install.sh --replace "/usr/local" "$out"
'';
installPhase = ''
mkdir -p $out/bin $out/share/applications
./install.sh
'';
postFixup = ''
wrapPythonPrograms
'';
meta = {
homepage = https://gitlab.com/o9000/pmenu;
description = "Start menu for Linux/BSD";
license = stdenv.lib.licenses.gpl2;
platforms = stdenv.lib.platforms.unix;
maintainers = [ stdenv.lib.maintainers.romildo ];
};
}

View File

@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
name = "tint2-${version}";
version = "0.12.10";
version = "0.12.11";
src = fetchFromGitLab {
owner = "o9000";
repo = "tint2";
rev = version;
sha256 = "0da28ykid84i4pw0cvgaxw0wq2yn03i68g54dzmajgsl1wvkqb0z";
sha256 = "0gfxbxslc8h95q7cq84a69yd7qdhyks978l3rmk48jhwwixdp0hr";
};
enableParallelBuilding = true;
@ -39,8 +39,9 @@ stdenv.mkDerivation rec {
meta = {
homepage = https://gitlab.com/o9000/tint2;
description = "Simple panel/taskbar unintrusive and light (memory, cpu, aestetic)";
license = stdenv.lib.licenses.gpl2;
description = "Simple panel/taskbar unintrusive and light (memory / cpu / aestetic)";
platforms = stdenv.lib.platforms.linux;
platforms = stdenv.lib.platforms.unix;
maintainers = [ stdenv.lib.maintainers.romildo ];
};
}

View File

@ -35,6 +35,6 @@ stdenv.mkDerivation rec {
homepage = https://www.getsync.com/;
license = stdenv.lib.licenses.unfreeRedistributable;
platforms = stdenv.lib.platforms.linux;
maintainers = with stdenv.lib.maintainers; [ iElectric thoughtpolice cwoac ];
maintainers = with stdenv.lib.maintainers; [ domenkozar thoughtpolice cwoac ];
};
}

View File

@ -172,6 +172,8 @@ stdenv.mkDerivation {
--suffix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
'';
passthru.ffmpegSupport = true;
meta = with stdenv.lib; {
description = "Mozilla Firefox, free web browser (binary package)";
homepage = http://www.mozilla.org/firefox/;

View File

@ -3,7 +3,7 @@
, freetype, fontconfig, file, alsaLib, nspr, nss, libnotify
, yasm, mesa, sqlite, unzip, makeWrapper, pysqlite
, hunspell, libevent, libstartup_notification, libvpx
, cairo, icu, libpng, jemalloc, libpulseaudio
, cairo, gstreamer, gst_plugins_base, icu, libpng, jemalloc, libpulseaudio
, enableGTK3 ? false
, debugBuild ? false
, # If you want the resulting program to call itself "Firefox" instead
@ -39,7 +39,8 @@ common = { pname, version, sha512 }: stdenv.mkDerivation rec {
icu libpng jemalloc
libpulseaudio # only headers are needed
]
++ lib.optional enableGTK3 gtk3;
++ lib.optional enableGTK3 gtk3
++ lib.optionals (!passthru.ffmpegSupport) [ gstreamer gst_plugins_base ];
configureFlags =
[ "--enable-application=browser"
@ -122,7 +123,8 @@ common = { pname, version, sha512 }: stdenv.mkDerivation rec {
passthru = {
inherit gtk nspr version;
isFirefox3Like = true;
browserName = pname;
browserName = "firefox";
ffmpegSupport = lib.versionAtLeast version "46.0";
};
};

View File

@ -2,7 +2,7 @@
## various stuff that can be plugged in
, gnash, flashplayer, hal-flash
, MPlayerPlugin, gecko_mediaplayer, ffmpeg, xorg, libpulseaudio, libcanberra
, MPlayerPlugin, gecko_mediaplayer, ffmpeg, gst_all, xorg, libpulseaudio, libcanberra
, supportsJDK, jrePlugin, icedtea_web
, trezor-bridge, bluejeans, djview4, adobe-reader
, google_talk_plugin, fribid, gnome3/*.gnome_shell*/
@ -23,6 +23,7 @@ let
cfg = stdenv.lib.attrByPath [ browserName ] {} config;
enableAdobeFlash = cfg.enableAdobeFlash or false;
enableGnash = cfg.enableGnash or false;
ffmpegSupport = browser.ffmpegSupport or false;
jre = cfg.jre or false;
icedtea = cfg.icedtea or false;
@ -45,11 +46,12 @@ let
++ lib.optional (cfg.enableAdobeReader or false) adobe-reader
++ lib.optional (cfg.enableEsteid or false) esteidfirefoxplugin
);
libs = [ ffmpeg ]
libs = (if ffmpegSupport then [ ffmpeg ] else with gst_all; [ gstreamer gst-plugins-base ])
++ lib.optionals (cfg.enableQuakeLive or false)
(with xorg; [ stdenv.cc libX11 libXxf86dga libXxf86vm libXext libXt alsaLib zlib ])
++ lib.optional (enableAdobeFlash && (cfg.enableAdobeFlashDRM or false)) hal-flash
++ lib.optional (config.pulseaudio or false) libpulseaudio;
gst-plugins = with gst_all; [ gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-ffmpeg ];
gtk_modules = [ libcanberra ];
in
@ -75,7 +77,7 @@ stdenv.mkDerivation {
];
};
buildInputs = [makeWrapper];
buildInputs = [makeWrapper] ++ lib.optionals (!ffmpegSupport) gst-plugins;
buildCommand = ''
if [ ! -x "${browser}/bin/${browserName}" ]
@ -91,7 +93,8 @@ stdenv.mkDerivation {
--suffix-each GTK_PATH ':' "$gtk_modules" \
--suffix-each LD_PRELOAD ':' "$(cat $(filterExisting $(addSuffix /extra-ld-preload $plugins)))" \
--prefix-contents PATH ':' "$(filterExisting $(addSuffix /extra-bin-path $plugins))" \
--set MOZ_OBJDIR "$(ls -d "${browser}/lib/${browserName}"*)"
--set MOZ_OBJDIR "$(ls -d "${browser}/lib/${browserName}"*)" \
${lib.optionalString (!ffmpegSupport) ''--prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH"''}
${ lib.optionalString libtrick
''

View File

@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
homepage = https://www.shrew.net/software;
description = "IPsec Client for FreeBSD, NetBSD and many Linux based operating systems";
platforms = platforms.unix;
maintainers = [ maintainers.iElectric ];
maintainers = [ maintainers.domenkozar ];
license = licenses.sleepycat;
};
}

View File

@ -1,12 +1,13 @@
{ stdenv, fetchurl, xorg, freetype, fontconfig, openssl, glib, nss, nspr, expat
, alsaLib, dbus, zlib, libxml2, libxslt, makeWrapper, xkeyboard_config, systemd
, mesa_noglu, xcbutilkeysyms }:
, mesa_noglu, xcbutilkeysyms, xdg_utils }:
let
version = "4.0.1631";
version = "4.0.1637";
rpath = stdenv.lib.makeLibraryPath [
xdg_utils
xorg.libXext
xorg.libSM
xorg.libICE
@ -42,7 +43,7 @@ let
if stdenv.system == "x86_64-linux" then
fetchurl {
url = "https://atlassian.artifactoryonline.com/atlassian/hipchat-apt-client/pool/HipChat4-${version}-Linux.deb";
sha256 = "1ip79zq7j7842sf254296wvvd236w7c764r8wgjdyxzqyvfjfd81";
sha256 = "043qcylqzkzgmlhhxnhm5wy3gvh2cyhjmxnnrrz7y183ji6rw6nd";
}
else
throw "HipChat is not supported on ${stdenv.system}";

View File

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "Lightweight Tox client";
license = licenses.gpl3;
maintainers = with maintainers; [ iElectric jgeerds ];
maintainers = with maintainers; [ domenkozar jgeerds ];
platforms = platforms.all;
};
}

View File

@ -29,6 +29,6 @@ pythonPackages.buildPythonApplication rec {
homepage = https://www.mailpile.is/;
license = [ licenses.asl20 licenses.agpl3 ];
platforms = platforms.linux;
maintainers = [ maintainers.iElectric ];
maintainers = [ maintainers.domenkozar ];
};
}

View File

@ -56,6 +56,6 @@ stdenv.mkDerivation {
homepage = http://retroshare.sourceforge.net/;
#license = licenses.bsd2;
platforms = platforms.linux;
maintainers = [ maintainers.iElectric ];
maintainers = [ maintainers.domenkozar ];
};
}

View File

@ -49,6 +49,6 @@ stdenv.mkDerivation {
homepage = http://retroshare.sourceforge.net/;
#license = licenses.bsd2;
platforms = platforms.linux;
maintainers = [ maintainers.iElectric ];
maintainers = [ maintainers.domenkozar ];
};
}

View File

@ -103,7 +103,7 @@ stdenv.mkDerivation rec {
homepage = http://www.gnucash.org/;
maintainers = [ stdenv.lib.maintainers.peti stdenv.lib.maintainers.iElectric ];
maintainers = [ stdenv.lib.maintainers.peti stdenv.lib.maintainers.domenkozar ];
platforms = stdenv.lib.platforms.gnu;
};
}

View File

@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
homepage = http://www.gnucash.org/;
maintainers = [ stdenv.lib.maintainers.peti stdenv.lib.maintainers.iElectric ];
maintainers = [ stdenv.lib.maintainers.peti stdenv.lib.maintainers.domenkozar ];
platforms = stdenv.lib.platforms.gnu;
};
}

View File

@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
homepage = "http://jonas.nitro.dk/tig/";
description = "Text-mode interface for git";
maintainers = with maintainers; [ garbas bjornfor iElectric qknight ];
maintainers = with maintainers; [ garbas bjornfor domenkozar qknight ];
license = licenses.gpl2;
platforms = platforms.unix;
};

View File

@ -99,13 +99,13 @@ let
in {
subversion18 = common {
version = "1.8.15";
sha256 = "0b68rjy1sjd66nqcswrm1bhda3vk2ngkgs6drcanmzbcd3vs366g";
version = "1.8.16";
sha256 = "0imkxn25n6sbcgfldrx4z29npjprb1lxjm5fb89q4297161nx3zi";
};
subversion19 = common {
version = "1.9.3";
sha256 = "8bbf6bb125003d88ee1c22935a36b7b1ab7d957e0c8b5fbfe5cb6310b6e86ae0";
version = "1.9.4";
sha256 = "16cjkvvq628hbznkhqkppzs8nifcr7k43s5y4c32cgwqmgigjrqj";
};
}

View File

@ -2,11 +2,11 @@
pythonPackages.buildPythonApplication rec {
name = "tortoisehg-${version}";
version = "3.7.3";
version = "3.8.1";
src = fetchurl {
url = "https://bitbucket.org/tortoisehg/targz/downloads/${name}.tar.gz";
sha256 = "1vahiavpkf9ib2mx8z5i6f0kh072zycazmbrc4sl94p5pvv5w1dh";
sha256 = "1v5h5yz9b360ris9p8zsdjxqvaflp9z2b6b7dfb4abn2irv3jip6";
};
pythonPath = with pythonPackages; [ pyqt4 mercurial qscintilla iniparse ];

View File

@ -46,6 +46,6 @@ python3Packages.buildPythonApplication rec {
homepage = https://code.launchpad.net/kazam;
#license = licenses.bsd2;
platforms = platforms.linux;
maintainers = [ maintainers.iElectric ];
maintainers = [ maintainers.domenkozar ];
};
}

View File

@ -121,6 +121,6 @@ in stdenv.mkDerivation rec {
description = "Media center";
license = stdenv.lib.licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ iElectric titanous edwtjo ];
maintainers = with maintainers; [ domenkozar titanous edwtjo ];
};
}

View File

@ -32,6 +32,6 @@ stdenv.mkDerivation rec {
description = "A tool for creating GIF screencasts of a terminal, with key presses overlaid";
homepage = https://github.com/KeyboardFire/mkcast;
platforms = platforms.linux;
maintainers = with maintainers; [ iElectric pSub ];
maintainers = with maintainers; [ domenkozar pSub ];
};
}

View File

@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
description = "TV application for Linux with apps and tools such as a teletext browser";
license = stdenv.lib.licenses.gpl2;
homepage = https://www.kraxel.org/blog/linux/xawtv/;
maintainers = with stdenv.lib.maintainers; [ iElectric ];
maintainers = with stdenv.lib.maintainers; [ domenkozar ];
platforms = stdenv.lib.platforms.linux;
};

View File

@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "A simple screen locker like slock";
homepage = http://i3wm.org/i3lock/;
maintainers = with maintainers; [ garbas malyn iElectric ];
maintainers = with maintainers; [ garbas malyn ];
license = licenses.bsd3;
platforms = platforms.all;
};

View File

@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "A simple screen locker like slock";
homepage = http://i3wm.org/i3lock/;
maintainers = with maintainers; [ garbas malyn iElectric ];
maintainers = with maintainers; [ garbas malyn domenkozar ];
license = licenses.bsd3;
platforms = platforms.all;
};

View File

@ -38,6 +38,7 @@ lib.overrideDerivation (fetchurl ({
+ (if stripRoot then ''
if [ $(ls "$unpackDir" | wc -l) != 1 ]; then
echo "error: zip file must contain a single file or directory."
echo "hint: Pass stripRoot=false; to fetchzip to assume flat list of files."
exit 1
fi
fn=$(cd "$unpackDir" && echo *)

View File

@ -54,11 +54,15 @@ vmTools.runInLinuxImage (stdenv.mkDerivation (
eval "$preInstall"
export LOGNAME=root
# otherwise build hangs when it wants to display
# the log file
export PAGER=cat
${checkinstall}/sbin/checkinstall --nodoc -y -D \
--fstrans=${if fsTranslation then "yes" else "no"} \
--requires="${concatStringsSep "," debRequires}" \
--provides="${concatStringsSep "," debProvides}" \
${optionalString (src ? version) "--pkgversion=$(echo ${src.version} | tr _ -)"} \
${if (src ? version) then "--pkgversion=$(echo ${src.version} | tr _ -)"
else "--pkgversion=0.0.0"} \
''${debMaintainer:+--maintainer="'$debMaintainer'"} \
''${debName:+--pkgname="'$debName'"} \
$checkInstallFlags \

View File

@ -4,10 +4,10 @@ libffi, pam, alsaLib, luajit, bzip2, libuuid, libpthreadstubs, gdbm, libcap, mes
stdenv.mkDerivation rec {
name = "enlightenment-${version}";
version = "0.20.7";
version = "0.20.8";
src = fetchurl {
url = "http://download.enlightenment.org/rel/apps/enlightenment/${name}.tar.xz";
sha256 = "10g1mn1myspdrxl7jcjx6v52g3pmmb0k2bxjgaqdx2s851cyipkw";
sha256 = "17fi3frq4a73i0x7v7244g9m0fbjfamw0cfb4zhqs2rp1z8nq1iy";
};
nativeBuildInputs = [ pkgconfig ];

View File

@ -11,8 +11,15 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig intltool gnome_doc_utils which libuuid libxml2
desktop_file_utils wrapGAppsHook ];
# Silly ./configure, it looks for dbus file from gnome-shell in the
# installation tree of the package it is configuring.
preConfigure = ''
mkdir -p "$out/share/dbus-1/interfaces"
cp "${gnome3.gnome_shell}/share/dbus-1/interfaces/org.gnome.ShellSearchProvider2.xml" "$out/share/dbus-1/interfaces"
'';
# FIXME: enable for gnome3
configureFlags = [ "--disable-search-provider" "--disable-migration" ];
configureFlags = [ "--disable-migration" ];
meta = with stdenv.lib; {
description = "The GNOME Terminal Emulator";

View File

@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/action/show/Projects/Vino;
description = "GNOME desktop sharing server";
maintainers = with maintainers; [ lethalman iElectric ];
maintainers = with maintainers; [ lethalman domenkozar ];
license = licenses.gpl2;
platforms = platforms.linux;
};

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Apps/Yelp/Tools;
description = "Small programs that help you create, edit, manage, and publish your Mallard or DocBook documentation";
maintainers = with maintainers; [ iElectric ];
maintainers = with maintainers; [ domenkozar ];
license = licenses.gpl2;
platforms = platforms.linux;
};

View File

@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/action/show/Apps/Gitg;
description = "GNOME GUI client to view git repositories";
maintainers = with maintainers; [ iElectric ];
maintainers = with maintainers; [ domenkozar ];
license = licenses.gpl2;
platforms = platforms.linux;
};

View File

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: {
name = "gitg-3.18.0";
name = "gitg-3.20.0";
src = fetchurl {
url = mirror://gnome/sources/gitg/3.18/gitg-3.18.0.tar.xz;
sha256 = "fa4b7b9c492f13f5f1d864af1281ea377ac8c7619c856e05f533b18989edf421";
url = mirror://gnome/sources/gitg/3.20/gitg-3.20.0.tar.xz;
sha256 = "1f09f61208349d003f228e51dc9709bd3426960f5585c0e38197bd02b51f3346";
};
}

View File

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: {
name = "libgit2-glib-0.23.6";
name = "libgit2-glib-0.24.0";
src = fetchurl {
url = mirror://gnome/sources/libgit2-glib/0.23/libgit2-glib-0.23.6.tar.xz;
sha256 = "5c8d6b5cb81ab64b96cb0c52ef37463b6d8998a40ce77a08eda9db66fb781144";
url = mirror://gnome/sources/libgit2-glib/0.24/libgit2-glib-0.24.0.tar.xz;
sha256 = "d616c268821c28ff8dc1a6419dbf8555fa48e31dc6509c10f5151be7690f4845";
};
}

View File

@ -1,5 +1,11 @@
{ lib, stdenv, buildEnv, haskell, nodejs, fetchurl, fetchpatch, makeWrapper }:
# To update:
# 1) Update versions in ./update-elm.rb and run it.
# 2) Checkout elm-reactor and run `elm-package install -y` inside.
# 3) Run ./elm2nix.rb in elm-reactor's directory.
# 4) Move the resulting 'package.nix' to 'packages/elm-reactor-elm.nix'.
let
makeElmStuff = deps:
let json = builtins.toJSON (lib.mapAttrs (name: info: info.version) deps);
@ -61,9 +67,6 @@ let
in elmPkgs // {
inherit elmPkgs;
elmVersion = elmRelease.version;
# To unbreak elm-compiler
language-ecmascript = self.language-ecmascript_0_17_0_2;
};
};
in hsPkgs.elmPkgs // {

View File

@ -5,18 +5,18 @@
};
"evancz/elm-markdown" = {
version = "3.0.0";
sha256 = "1wlr8sgnyq6qgh5rcjy7imfmpqxrxgmmqcfx6p541fs70yiqya12";
sha256 = "0r3hcim4mpn46ahv1q6sjp6i2viyp7jik6i71xgwmvfb9drns2p6";
};
"elm-lang/html" = {
version = "1.0.0";
sha256 = "16cr01yxkpkmgbgclp2p80nd62a6fjw3qipzjsgksrhwv9vv4gm4";
};
"elm-lang/core" = {
version = "4.0.0";
sha256 = "04qgzgv90qyhjk55yw4szy50h2dqdlm0a2padbgn02yf4bb1b4nw";
};
"elm-lang/svg" = {
version = "1.0.0";
sha256 = "0c29y6c58x2sq1bl29z1hr5gi2rlza8clk7ssgzmsf4xbvcczbjx";
};
"elm-lang/core" = {
version = "4.0.0";
sha256 = "04qgzgv90qyhjk55yw4szy50h2dqdlm0a2padbgn02yf4bb1b4nw";
};
}

View File

@ -1,12 +1,12 @@
#!/usr/bin/env ruby
# Take those from https://github.com/elm-lang/elm-platform/blob/master/installers/BuildFromSource.hs
$elm_version = "0.16.0"
$elm_packages = { "elm-compiler" => "0.16",
"elm-package" => "0.16",
"elm-make" => "0.16",
"elm-reactor" => "0.16",
"elm-repl" => "0.16"
$elm_version = "0.17"
$elm_packages = { "elm-compiler" => "0.17",
"elm-package" => "0.17",
"elm-make" => "0.17",
"elm-reactor" => "0.17",
"elm-repl" => "0.17"
}
for pkg, ver in $elm_packages

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://downloads.haskell.org/~ghc/8.0.1/${name}-src.tar.xz";
sha256 = "0riyry246a6km4mw1q9iiw6p75ww2f8s81i34g151zwwdygk7qpf";
sha256 = "1lniqy29djhjkddnailpaqhlqh4ld2mqvb1fxgxw1qqjhz6j1ywh";
};
patches = [

View File

@ -1,11 +1,12 @@
{ stdenv, pixie, fetchgit }:
{ stdenv, pixie, fetchFromGitHub }:
stdenv.mkDerivation {
stdenv.mkDerivation rec {
name = "dust-0-91";
src = fetchgit {
url = "https://github.com/pixie-lang/dust.git";
src = fetchFromGitHub {
owner = "pixie-lang";
repo = "dust";
rev = "efe469661e749a71e86858fd006f61464810575a";
sha256 = "0krh7ynald3gqv9f17a4kfx7sx8i31l6j1fhd5k8b6m8cid7f9c1";
sha256 = "09n57b6haxwask9m8vimv42ikczf7lgfc7m9izjrcqgs0padvfzc";
};
buildInputs = [ pixie ];
patches = [ ./make-paths-configurable.patch ];
@ -24,4 +25,10 @@ stdenv.mkDerivation {
cp -a src/ run.pxi $out/share/dust
mv dust $out/bin/dust
'';
meta = {
description = "Provides tooling around pixie, e.g. a nicer repl, running tests and fetching dependencies";
homepage = src.meta.homepage;
license = stdenv.lib.licenses.lgpl3;
};
}

View File

@ -118,7 +118,7 @@ let
description = "Fast, compliant alternative implementation of the Python language (2.7.8)";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ iElectric ];
maintainers = with maintainers; [ domenkozar ];
};
};

View File

@ -119,7 +119,7 @@ let
'';
license = stdenv.lib.licenses.psfl;
platforms = stdenv.lib.platforms.all;
maintainers = with stdenv.lib.maintainers; [ chaoflow iElectric ];
maintainers = with stdenv.lib.maintainers; [ chaoflow domenkozar ];
# If you want to use Python 2.6, remove "broken = true;" at your own
# risk. Python 2.6 has known security vulnerabilities is not receiving
# security updates as of October 2013.

View File

@ -173,7 +173,7 @@ let
'';
license = stdenv.lib.licenses.psfl;
platforms = stdenv.lib.platforms.all;
maintainers = with stdenv.lib.maintainers; [ chaoflow iElectric ];
maintainers = with stdenv.lib.maintainers; [ chaoflow domenkozar ];
};
};

View File

@ -127,6 +127,6 @@ stdenv.mkDerivation {
'';
license = licenses.psfl;
platforms = with platforms; linux ++ darwin;
maintainers = with maintainers; [ chaoflow iElectric cstrahan ];
maintainers = with maintainers; [ chaoflow domenkozar cstrahan ];
};
}

View File

@ -127,6 +127,6 @@ stdenv.mkDerivation {
'';
license = licenses.psfl;
platforms = with platforms; linux ++ darwin;
maintainers = with maintainers; [ chaoflow iElectric cstrahan ];
maintainers = with maintainers; [ chaoflow domenkozar cstrahan ];
};
}

View File

@ -1,77 +0,0 @@
Found at https://hg.mozilla.org/releases/mozilla-esr31/rev/2f3e78643f5c on 2015-07-27. Modified: replaced path parser/expat/lib/xmlparse.c with lib/xmlparse.c.
diff --git a/lib/xmlparse.c b/lib/xmlparse.c
--- a/lib/xmlparse.c
+++ b/lib/xmlparse.c
@@ -1646,29 +1646,40 @@ XML_ParseBuffer(XML_Parser parser, int l
XmlUpdatePosition(encoding, positionPtr, bufferPtr, &position);
positionPtr = bufferPtr;
return result;
}
void * XMLCALL
XML_GetBuffer(XML_Parser parser, int len)
{
+/* BEGIN MOZILLA CHANGE (sanity check len) */
+ if (len < 0) {
+ errorCode = XML_ERROR_NO_MEMORY;
+ return NULL;
+ }
+/* END MOZILLA CHANGE */
switch (ps_parsing) {
case XML_SUSPENDED:
errorCode = XML_ERROR_SUSPENDED;
return NULL;
case XML_FINISHED:
errorCode = XML_ERROR_FINISHED;
return NULL;
default: ;
}
if (len > bufferLim - bufferEnd) {
- /* FIXME avoid integer overflow */
int neededSize = len + (int)(bufferEnd - bufferPtr);
+/* BEGIN MOZILLA CHANGE (sanity check neededSize) */
+ if (neededSize < 0) {
+ errorCode = XML_ERROR_NO_MEMORY;
+ return NULL;
+ }
+/* END MOZILLA CHANGE */
#ifdef XML_CONTEXT_BYTES
int keep = (int)(bufferPtr - buffer);
if (keep > XML_CONTEXT_BYTES)
keep = XML_CONTEXT_BYTES;
neededSize += keep;
#endif /* defined XML_CONTEXT_BYTES */
if (neededSize <= bufferLim - buffer) {
@@ -1687,17 +1698,25 @@ XML_GetBuffer(XML_Parser parser, int len
}
else {
char *newBuf;
int bufferSize = (int)(bufferLim - bufferPtr);
if (bufferSize == 0)
bufferSize = INIT_BUFFER_SIZE;
do {
bufferSize *= 2;
- } while (bufferSize < neededSize);
+/* BEGIN MOZILLA CHANGE (prevent infinite loop on overflow) */
+ } while (bufferSize < neededSize && bufferSize > 0);
+/* END MOZILLA CHANGE */
+/* BEGIN MOZILLA CHANGE (sanity check bufferSize) */
+ if (bufferSize <= 0) {
+ errorCode = XML_ERROR_NO_MEMORY;
+ return NULL;
+ }
+/* END MOZILLA CHANGE */
newBuf = (char *)MALLOC(bufferSize);
if (newBuf == 0) {
errorCode = XML_ERROR_NO_MEMORY;
return NULL;
}
bufferLim = newBuf + bufferSize;
#ifdef XML_CONTEXT_BYTES
if (bufferPtr) {

View File

@ -1,15 +1,13 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "expat-2.1.0";
name = "expat-2.1.1";
src = fetchurl {
url = "mirror://sourceforge/expat/${name}.tar.gz";
sha256 = "11pblz61zyxh68s5pdcbhc30ha1b2vfjd83aiwfg4vc15x3hadw2";
url = "mirror://sourceforge/expat/${name}.tar.bz2";
sha256 = "0ryyjgvy7jq0qb7a9mhc1giy3bzn56aiwrs8dpydqngplbjq9xdg";
};
patches = [ ./CVE-2015-1283.patch ];
outputs = [ "dev" "out" ]; # TODO: fix referrers
outputBin = "dev";
@ -17,6 +15,8 @@ stdenv.mkDerivation rec {
outputMan = "dev"; # tiny page for a dev tool
doCheck = true;
meta = with stdenv.lib; {
homepage = http://www.libexpat.org/;
description = "A stream-oriented XML parser library written in C";

View File

@ -26,7 +26,6 @@ stdenv.mkDerivation rec {
--replace "/usr/include/libxml2" "${libxml2.dev}/include/libxml2"
substituteInPlace src/core/basetypes/MCHTMLCleaner.cpp \
--replace buffio.h tidybuffio.h
>>>>>>> master
'';
cmakeFlags = [

View File

@ -164,7 +164,7 @@ python.stdenv.mkDerivation (builtins.removeAttrs attrs ["disabled" "doCheck"] //
platforms = python.meta.platforms;
} // meta // {
# add extra maintainer(s) to every package
maintainers = (meta.maintainers or []) ++ [ chaoflow iElectric ];
maintainers = (meta.maintainers or []) ++ [ chaoflow domenkozar ];
# a marker for release utilities to discover python packages
isBuildPythonPackage = python.meta.platforms;
};

View File

@ -7,7 +7,7 @@ with stdenv.lib;
let
baseVersion = "3.6";
revision = "0";
revision = "1";
version = "${baseVersion}.${revision}";
in
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "http://download.qt-project.org/official_releases/qtcreator/${baseVersion}/${version}/qt-creator-opensource-src-${version}.tar.gz";
sha256 = "1v0x5asx9fj331jshial97gk7bwlb1a0k05h4zr22gh5cd4i0c5i";
sha256 = "1qjxy5l76dij3wqakd66prn1i0k1gd3gi4cv38bivk9j0gw12dp5";
};
buildInputs = [ makeWrapper qtbase qtscript qtquickcontrols qtdeclarative ];

View File

@ -0,0 +1,17 @@
source "$stdenv"/setup
cp --recursive "$src" ./
chmod --recursive u=rwx ./"$(basename "$src")"
cd ./"$(basename "$src")"
cmake ./
make
mkdir --parents "$out"/bin
cp ./TraceFileGen "$out"/bin
mkdir --parents "$out"/share/doc/"$name"/html
cp --recursive ./Documentation/html/* "$out/share/doc/$name/html/"

View File

@ -0,0 +1,25 @@
{ stdenv, fetchgit, cmake }:
stdenv.mkDerivation rec {
name = "tracefilegen-2015-11-14";
src = fetchgit {
url = "https://github.com/GarCoSim/TraceFileGen.git";
rev = "4acf75b142683cc475c6b1c841a221db0753b404";
sha256 = "0mh661l9d1lczv0mr2y9swzqqlwikyqiv1hdd71r9v8cvm54y5ij";
};
buildInputs = [ cmake ];
builder = ./builder.sh;
meta = with stdenv.lib; {
description = "Automatically generate all types of basic memory management operations and write into trace files";
homepage = "https://github.com/GarCoSim";
maintainers = [ maintainers.cmcdragonkai ];
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,26 @@
{ stdenv, fetchgit }:
stdenv.mkDerivation {
name = "tracefilesim-2015-11-07";
src = fetchgit {
url = "https://github.com/GarCoSim/TraceFileSim.git";
rev = "368aa6b1d6560e7ecbd16fca47000c8f528f3da2";
sha256 = "156m92k38ap4bzidbr8dzl065rni8lrib71ih88myk9z5y1x5nxm";
};
installPhase = ''
mkdir --parents "$out/bin"
cp ./traceFileSim "$out/bin"
'';
meta = with stdenv.lib; {
description = "Ease the analysis of existing memory management techniques, as well as the prototyping of new memory management techniques.";
homepage = "https://github.com/GarCoSim";
maintainers = [ maintainers.cmcdragonkai ];
licenses = licenses.gpl2;
platforms = platforms.linux;
};
}

View File

@ -17,7 +17,11 @@ stdenv.mkDerivation rec {
'';
buildInputs = [ cmake libpfm zlib python pkgconfig pythonPackages.pexpect which procps gdb ];
cmakeFlags = "-DCMAKE_C_FLAGS_RELEASE:STRING= -DCMAKE_CXX_FLAGS_RELEASE:STRING=";
cmakeFlags = [
"-DCMAKE_C_FLAGS_RELEASE:STRING="
"-DCMAKE_CXX_FLAGS_RELEASE:STRING="
"-Ddisable32bit=ON"
];
enableParallelBuilding = true;

View File

@ -8,15 +8,15 @@
{ stdenv, fetchurl, unzip, glib, libSM, libICE, gtk, libXext, libXft
, fontconfig, libXrender, libXfixes, libX11, libXi, libXrandr, libXcursor
, freetype, libXinerama
, makeDesktopItem
, freetype, libXinerama, libxcb, zlib, pciutils
, makeDesktopItem, xkeyboardconfig
}:
let
libPath = stdenv.lib.makeLibraryPath [
glib libSM libICE gtk libXext libXft fontconfig libXrender libXfixes libX11
libXi libXrandr libXcursor freetype libXinerama
libXi libXrandr libXcursor freetype libXinerama libxcb zlib stdenv.cc.cc.lib
];
in
@ -25,21 +25,21 @@ assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
stdenv.mkDerivation rec {
pname = "saleae-logic";
version = "1.1.15";
version = "1.2.9";
name = "${pname}-${version}";
src =
if stdenv.system == "i686-linux" then
fetchurl {
name = "saleae-logic-${version}-32bit.zip";
url = "http://downloads.saleae.com/Logic%20${version}%20(32-bit).zip";
sha256 = "0h13my4xgv8v8l12shimhhn54nn0dldbxz1gpbx92ysd8q8x1q79";
name = "saleae-logic-${version}-32bit.zip";
url = "http://downloads.saleae.com/logic/${version}/Logic%20${version}%20(32-bit).zip";
sha256 = "0000004xgv8v8l12shimhhn54nn0dldbxz1gpbx92ysd8q8x1q79";
}
else if stdenv.system == "x86_64-linux" then
fetchurl {
name = "saleae-logic-${version}-64bit.zip";
url = "http://downloads.saleae.com/Logic%20${version}%20(64-bit).zip";
sha256 = "1phnjsmaj1gflx7shh8wfrd8dnhn43s3v7bck41h8yj4nd4ax69z";
name = "saleae-logic-${version}-64bit.zip";
url = "http://downloads.saleae.com/logic/${version}/Logic%20${version}%20(64-bit).zip";
sha256 = "1d4hmp756ysfk5i1ys4mlkd1czbdw0zqznkzx08pyqk93zc7b16s";
}
else
abort "Saleae Logic software requires i686-linux or x86_64-linux";
@ -74,6 +74,8 @@ stdenv.mkDerivation rec {
cat > "$out/bin/saleae-logic" << EOF
#!${stdenv.shell}
export LD_PRELOAD="$out/lib/preload.so"
export QT_XKB_CONFIG_ROOT="${xkeyboardconfig}/share/X11/xkb"
export PATH="${pciutils}/bin:\$PATH"
exec "$out/Logic" "\$@"
EOF
chmod a+x "$out"/bin/saleae-logic

View File

@ -2,17 +2,20 @@
* LD_PRELOAD trick to make Saleae Logic work from a read-only installation
* directory.
*
* Saleae Logic tries to write to the ./Settings/settings.xml file, relative to
* its installation directory. Because the nix store is read-only, we have to
* redirect access to this file somewhere else. Here's the map:
* Saleae Logic tries to write to a few directories inside its installation
* directory. Because the Nix store is read-only, we have to redirect access to
* this file somewhere else. Here's the map:
*
* $out/Settings/settings.xml => $HOME/.saleae-logic-settings.xml
* $out/Settings/ => $HOME/.saleae-logic/Settings/
* $out/Databases/ => $HOME/.saleae-logic/Databases/
* $out/Errors/ => $HOME/.saleae-logic/Errors/
* $out/Calibration/ => $HOME/.saleae-logic/Calibration/
*
* This also makes the software multi-user aware :-)
*
* NOTE: The next Logic version is supposed to have command line parameters for
* configuring where the Settings/ directory is located, but until then we have
* to use this.
* NOTE: AFAIK (Bjørn Forsman), Logic version 1.2+ was supposed to have a
* command line parameter for redirecting these write operations, but
* apparently that feature got postponed.
*
* Usage:
* gcc -shared -fPIC -DOUT="$out" preload.c -o preload.so -ldl
@ -33,30 +36,65 @@
#include <limits.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <errno.h>
#ifndef OUT
#error Missing OUT define - path to the installation directory.
#endif
/*
* TODO: How to properly wrap "open", which is declared as a variadic function
* in glibc? The man page lists these signatures:
*
* int open(const char *pathname, int flags);
* int open(const char *pathname, int flags, mode_t mode);
*
* But using either signature in this code cause a compile error, because
* glibc has declared the function as "int open(const char *, int, ...)".
* Same thing with "openat".
*
* For now we discard the variadic args. It seems to work.
*
* Relevant:
* http://stackoverflow.com/questions/28462523/how-to-wrap-ioctlint-d-unsigned-long-request-using-ld-preload
*/
typedef FILE *(*fopen_func_t)(const char *path, const char *mode);
typedef FILE *(*fopen64_func_t)(const char *path, const char *mode);
typedef int (*open_func_t)(const char *pathname, int flags, ...);
typedef int (*open64_func_t)(const char *pathname, int flags, ...);
typedef int (*openat_func_t)(int dirfd, const char *pathname, int flags, ...);
typedef int (*openat64_func_t)(int dirfd, const char *pathname, int flags, ...);
typedef int (*xstat_func_t)(int vers, const char *pathname, struct stat *buf);
typedef int (*xstat64_func_t)(int vers, const char *pathname, struct stat64 *buf);
typedef int (*access_func_t)(const char *pathname, int mode);
typedef int (*faccessat_func_t)(int dirfd, const char *pathname, int mode, int flags);
typedef int (*unlink_func_t)(const char *pathname);
/*
* Redirect $out/Settings/settings.xml => $HOME/.saleae-logic-settings.xml. No
* other paths are changed. Path is truncated if bigger than PATH_MAX.
* Redirect $out/{Settings,Databases,Errors,Calibration}/ => $HOME/.saleae-logic/.
* Path is truncated if bigger than PATH_MAX.
*
* @param pathname Original file path.
* @param buffer Pointer to a buffer of size PATH_MAX bytes that this function
* will write the new redirected path to (if needed).
*
* @return Pointer to the resulting path. It will either be equal to the
* pathname or buffer argument.
* pathname (no redirect) or buffer argument (was redirected).
*/
static const char *redirect(const char *pathname, char *buffer)
{
const char *homepath;
const char *new_path;
static char have_warned;
const char *remainder;
static char have_initialized;
static size_t out_strlen;
static size_t settings_strlen;
static size_t databases_strlen;
static size_t errors_strlen;
static size_t calibration_strlen;
int ret;
int i;
homepath = getenv("HOME");
if (!homepath) {
@ -67,9 +105,59 @@ static const char *redirect(const char *pathname, char *buffer)
}
}
if (!have_initialized) {
/*
* The directories that Saleae Logic expects to find.
* The first element is intentionally empty (create base dir).
*/
char *dirs[] = {"", "/Settings", "/Databases", "/Errors", "/Calibration"};
char old_settings_path[PATH_MAX];
access_func_t orig_access;
out_strlen = strlen(OUT);
settings_strlen = out_strlen + strlen("/Settings");
databases_strlen = out_strlen + strlen("/Databases");
errors_strlen = out_strlen + strlen("/Errors");
calibration_strlen = out_strlen + strlen("/Calibration");
for (i = 0; i < sizeof dirs / sizeof dirs[0]; i++) {
snprintf(buffer, PATH_MAX, "%s/.saleae-logic%s", homepath, dirs[i]);
buffer[PATH_MAX-1] = '\0';
ret = mkdir(buffer, 0755);
if (0 != ret && errno != EEXIST) {
fprintf(stderr, "ERROR: Failed to create directory \"%s\": %s\n",
buffer, strerror(errno));
return NULL;
}
}
/*
* Automatic migration of the settings file:
* ~/.saleae-logic-settings.xml => ~/.saleae-logic/Settings/settings.xml
*/
snprintf(old_settings_path, PATH_MAX, "%s/.saleae-logic-settings.xml", homepath);
old_settings_path[PATH_MAX-1] = '\0';
orig_access = (access_func_t)dlsym(RTLD_NEXT, "access");
if (orig_access(old_settings_path, F_OK) == 0) {
snprintf(buffer, PATH_MAX, "%s/.saleae-logic/Settings/settings.xml", homepath);
buffer[PATH_MAX-1] = '\0';
ret = rename(old_settings_path, buffer);
if (ret != 0) {
fprintf(stderr, "WARN: Failed to move %s to %s",
old_settings_path, buffer);
}
}
have_initialized = 1;
}
new_path = pathname;
if (strcmp(OUT "/Settings/settings.xml", pathname) == 0) {
snprintf(buffer, PATH_MAX, "%s/.saleae-logic-settings.xml", homepath);
remainder = pathname + out_strlen;
if ((strncmp(OUT "/Settings", pathname, settings_strlen) == 0) ||
(strncmp(OUT "/Databases", pathname, databases_strlen) == 0) ||
(strncmp(OUT "/Errors", pathname, errors_strlen) == 0) ||
(strncmp(OUT "/Calibration", pathname, calibration_strlen) == 0)) {
snprintf(buffer, PATH_MAX, "%s/.saleae-logic%s", homepath, remainder);
buffer[PATH_MAX-1] = '\0';
new_path = buffer;
}
@ -79,36 +167,175 @@ static const char *redirect(const char *pathname, char *buffer)
FILE *fopen(const char *pathname, const char *mode)
{
FILE *fp;
const char *path;
char buffer[PATH_MAX];
fopen_func_t orig_fopen;
orig_fopen = (fopen_func_t)dlsym(RTLD_NEXT, "fopen");
path = redirect(pathname, buffer);
fp = orig_fopen(path, mode);
if (path != pathname && getenv("PRELOAD_DEBUG")) {
fprintf(stderr, "preload_debug: fopen(\"%s\", \"%s\") => \"%s\": fp=%p\n", pathname, mode, path, fp);
fprintf(stderr, "preload_debug: fopen(\"%s\", \"%s\") => \"%s\"\n", pathname, mode, path);
}
return fp;
return orig_fopen(path, mode);
}
FILE *fopen64(const char *pathname, const char *mode)
{
FILE *fp;
const char *path;
char buffer[PATH_MAX];
fopen64_func_t orig_fopen64;
orig_fopen64 = (fopen64_func_t)dlsym(RTLD_NEXT, "fopen64");
path = redirect(pathname, buffer);
fp = orig_fopen64(path, mode);
if (path != pathname && getenv("PRELOAD_DEBUG")) {
fprintf(stderr, "preload_debug: fopen64(\"%s\", \"%s\") => \"%s\": fp=%p\n", pathname, mode, path, fp);
fprintf(stderr, "preload_debug: fopen64(\"%s\", \"%s\") => \"%s\"\n", pathname, mode, path);
}
return fp;
return orig_fopen64(path, mode);
}
int open(const char *pathname, int flags, ...)
{
const char *path;
char buffer[PATH_MAX];
open_func_t orig_open;
orig_open = (open_func_t)dlsym(RTLD_NEXT, "open");
path = redirect(pathname, buffer);
if (path != pathname && getenv("PRELOAD_DEBUG")) {
fprintf(stderr, "preload_debug: open(\"%s\", ...) => \"%s\"\n", pathname, path);
}
return orig_open(path, flags);
}
int open64(const char *pathname, int flags, ...)
{
const char *path;
char buffer[PATH_MAX];
open64_func_t orig_open64;
orig_open64 = (open64_func_t)dlsym(RTLD_NEXT, "open64");
path = redirect(pathname, buffer);
if (path != pathname && getenv("PRELOAD_DEBUG")) {
fprintf(stderr, "preload_debug: open64(\"%s\", ...) => \"%s\"\n", pathname, path);
}
return orig_open64(path, flags);
}
int openat(int dirfd, const char *pathname, int flags, ...)
{
const char *path;
char buffer[PATH_MAX];
openat_func_t orig_openat;
orig_openat = (openat_func_t)dlsym(RTLD_NEXT, "openat");
path = redirect(pathname, buffer);
if (path != pathname && getenv("PRELOAD_DEBUG")) {
fprintf(stderr, "preload_debug: openat(%d, \"%s\", %#x) => \"%s\"\n", dirfd, pathname, flags, path);
}
return orig_openat(dirfd, path, flags);
}
int openat64(int dirfd, const char *pathname, int flags, ...)
{
const char *path;
char buffer[PATH_MAX];
openat64_func_t orig_openat64;
orig_openat64 = (openat64_func_t)dlsym(RTLD_NEXT, "openat64");
path = redirect(pathname, buffer);
if (path != pathname && getenv("PRELOAD_DEBUG")) {
fprintf(stderr, "preload_debug: openat64(%d, \"%s\", %#x) => \"%s\"\n", dirfd, pathname, flags, path);
}
return orig_openat64(dirfd, path, flags);
}
/*
* Notes about "stat".
*
* The stat function is special, at least in glibc, in that it cannot be
* directly overridden by LD_PRELOAD, due to it being inline wrapper around
* __xstat. The __xstat functions take one extra parameter, a version number,
* to indicate what "struct stat" should look like. This trick allows changing
* the contents of mode_t without changing the shared library major number. See
* sys/stat.h header for more info.
*/
int __xstat(int vers, const char *pathname, struct stat *buf)
{
const char *path;
char buffer[PATH_MAX];
xstat_func_t orig_xstat;
orig_xstat = (xstat_func_t)dlsym(RTLD_NEXT, "__xstat");
path = redirect(pathname, buffer);
if (path != pathname && getenv("PRELOAD_DEBUG")) {
fprintf(stderr, "preload_debug: (__x)stat(\"%s\", ...) => \"%s\"\n", pathname, path);
}
return orig_xstat(vers, path, buf);
}
int __xstat64(int vers, const char *pathname, struct stat64 *buf)
{
const char *path;
char buffer[PATH_MAX];
xstat64_func_t orig_xstat64;
orig_xstat64 = (xstat64_func_t)dlsym(RTLD_NEXT, "__xstat64");
path = redirect(pathname, buffer);
if (path != pathname && getenv("PRELOAD_DEBUG")) {
fprintf(stderr, "preload_debug: (__x)stat64(\"%s\", ...) => \"%s\"\n", pathname, path);
}
return orig_xstat64(vers, path, buf);
}
int access(const char *pathname, int mode)
{
const char *path;
char buffer[PATH_MAX];
access_func_t orig_access;
orig_access = (access_func_t)dlsym(RTLD_NEXT, "access");
path = redirect(pathname, buffer);
if (path != pathname && getenv("PRELOAD_DEBUG")) {
fprintf(stderr, "preload_debug: access(\"%s\", ...) => \"%s\"\n", pathname, path);
}
return orig_access(path, mode);
}
int faccessat(int dirfd, const char *pathname, int mode, int flags)
{
const char *path;
char buffer[PATH_MAX];
faccessat_func_t orig_faccessat;
orig_faccessat = (faccessat_func_t)dlsym(RTLD_NEXT, "faccessat");
path = redirect(pathname, buffer);
if (path != pathname && getenv("PRELOAD_DEBUG")) {
fprintf(stderr, "preload_debug: faccessat(\"%s\", ...) => \"%s\"\n", pathname, path);
}
return orig_faccessat(dirfd, path, mode, flags);
}
int unlink(const char *pathname)
{
const char *path;
char buffer[PATH_MAX];
unlink_func_t orig_unlink;
orig_unlink = (unlink_func_t)dlsym(RTLD_NEXT, "unlink");
path = redirect(pathname, buffer);
if (path != pathname && getenv("PRELOAD_DEBUG")) {
fprintf(stderr, "preload_debug: unlink(\"%s\") => \"%s\"\n", pathname, path);
}
return orig_unlink(path);
}

View File

@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
homepage = https://sslmate.com;
maintainers = [ maintainers.iElectric ];
maintainers = [ maintainers.domenkozar ];
description = "Easy to buy, deploy, and manage your SSL certs";
platforms = platforms.unix;
license = licenses.mit; # X11

View File

@ -4,9 +4,9 @@
}@args:
import ./nodejs.nix (args // rec {
version = "6.1.0";
version = "6.2.0";
src = fetchurl {
url = "https://nodejs.org/download/release/v${version}/node-v${version}.tar.gz";
sha256 = "1hsbmr3yc6zmyhz058zfxg77dzjhk94g1k0y65p6xq8ihq5yyrwy";
sha256 = "1fcldsnkk6px5fms405j9z2yv6mmscin5x7sma8bdavqgn283zgw";
};
})

View File

@ -48,6 +48,6 @@ stdenv.mkDerivation {
description = "next-generation RTS that takes the genre to a planetary scale";
license = stdenv.lib.licenses.unfree;
platforms = platforms.linux;
maintainers = [ maintainers.iElectric ];
maintainers = [ maintainers.domenkozar ];
};
}

View File

@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
homepage = http://springrts.com/;
description = "A powerful real-time strategy (RTS) game engine";
license = licenses.gpl2;
maintainers = [ maintainers.phreedom maintainers.qknight maintainers.iElectric ];
maintainers = [ maintainers.phreedom maintainers.qknight maintainers.domenkozar ];
platforms = platforms.linux;
};
}

View File

@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
repositories.git = git://github.com/springlobby/springlobby.git;
description = "Cross-platform lobby client for the Spring RTS project";
license = licenses.gpl2;
maintainers = with maintainers; [ phreedom qknight iElectric ];
maintainers = with maintainers; [ phreedom qknight domenkozar ];
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,38 @@
{ stdenv, fetchFromGitHub, makeWrapper, cmake, llvmPackages, kernel,
flex, bison, elfutils, python, pythonPackages, luajit, netperf, iperf }:
stdenv.mkDerivation rec {
version = "git-2016-05-18";
name = "bcc-${version}";
src = fetchFromGitHub {
owner = "iovisor";
repo = "bcc";
rev = "c7f317deb577d59007411e978ac21a2ea376358f";
sha256 = "0jv4smy615kp7623pd61s46m52jjp6m47w0fjgr7s22qamra3g98";
};
buildInputs = [ makeWrapper cmake llvmPackages.llvm llvmPackages.clang-unwrapped kernel
flex bison elfutils python pythonPackages.netaddr luajit netperf iperf
];
cmakeFlags="-DBCC_KERNEL_MODULES_DIR=${kernel.dev}/lib/modules -DBCC_KERNEL_HAS_SOURCE_DIR=1";
postInstall = ''
mkdir -p $out/bin
for f in $out/share/bcc/tools\/*; do
ln -s $f $out/bin/$(basename $f)
wrapProgram $f \
--prefix LD_LIBRARY_PATH : $out/lib \
--prefix PYTHONPATH : $out/lib/python2.7/site-packages \
--prefix PYTHONPATH : :${pythonPackages.netaddr}/lib/${python.libPrefix}/site-packages
done
'';
meta = with stdenv.lib; {
description = "Dynamic Tracing Tools for Linux";
homepage = "https://iovisor.github.io/bcc/";
license = licenses.asl20;
maintainers = with maintainers; [ ragge ];
};
}

View File

@ -14,6 +14,9 @@ stdenv.mkDerivation rec {
RTE_KERNELDIR = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build";
RTE_TARGET = "x86_64-native-linuxapp-gcc";
# we need ssse3 instructions to build
NIX_CFLAGS_COMPILE = [ "-march=core2" ];
enableParallelBuilding = true;
outputs = [ "out" "examples" ];
@ -36,6 +39,6 @@ stdenv.mkDerivation rec {
homepage = http://dpdk.org/;
license = with licenses; [ lgpl21 gpl2 bsd2 ];
platforms = [ "x86_64-linux" ];
maintainers = [ maintainers.iElectric ];
maintainers = [ maintainers.domenkozar ];
};
}

View File

@ -1,13 +1,15 @@
{ stdenv, fetchurl, bison, flex, which, perl }:
let version = "3.3.5"; in
stdenv.mkDerivation rec {
name = "lm-sensors-${version}";
version = "3.4.0"; # don't forget to tweak fedoraproject mirror URL hash
src = fetchurl {
url = "http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-${version}.tar.bz2";
sha256 = "1ksgrynxgrq590nb2fwxrl1gwzisjkqlyg3ljfd1al0ibrk6mbjx";
urls = [
"http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-${version}.tar.bz2"
"http://pkgs.fedoraproject.org/repo/pkgs/lm_sensors/lm_sensors-${version}.tar.bz2/c03675ae9d43d60322110c679416901a/lm_sensors-${version}.tar.bz2"
];
sha256 = "07q6811l4pp0f7pxr8bk3s97ippb84mx5qdg7v92s9hs10b90mz0";
};
buildInputs = [ bison flex which perl ];

View File

@ -22,6 +22,6 @@ stdenv.mkDerivation rec {
homepage = https://fedoraproject.org/wiki/Features/numad;
license = licenses.lgpl21;
platforms = platforms.linux;
maintainers = with maintainers; [ iElectric ];
maintainers = with maintainers; [ domenkozar ];
};
}

View File

@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
description = "A kernel module to create V4L2 loopback devices";
homepage = https://github.com/umlaeute/v4l2loopback;
license = licenses.gpl2;
maintainers = [ maintainers.iElectric ];
maintainers = [ maintainers.domenkozar ];
platforms = platforms.linux;
};
}

View File

@ -1,4 +1,4 @@
{ stdenv, goPackages, ruby, bundlerEnv }:
{ stdenv, go16Packages, ruby, bundlerEnv, zip }:
let
# `sass` et al
@ -11,11 +11,11 @@ let
in
stdenv.mkDerivation {
name = "consul-ui-${goPackages.consul.rev}";
name = "consul-ui-${go16Packages.consul.rev}";
src = goPackages.consul.src;
src = go16Packages.consul.src;
buildInputs = [ ruby gems ];
buildInputs = [ ruby gems zip ];
buildPhase = ''
# Build ui static files
@ -26,7 +26,7 @@ stdenv.mkDerivation {
installPhase = ''
# Install ui static files
mkdir -p $out
mv dist/* $out
mv ../pkg/web_ui/* $out
'';
meta = with stdenv.lib; {

View File

@ -36,6 +36,10 @@ stdenv.mkDerivation rec {
postInstall = ''
moveToOutput bin/bind9-config $dev
moveToOutput bin/isc-config.sh $dev
for f in $out/lib/*.la; do
sed -i $f -e 's|-L${openssl.dev}|-L${openssl.out}|g'
done
'';
meta = {

View File

@ -127,7 +127,7 @@ stdenv.mkDerivation rec {
'';
homepage = http://munin-monitoring.org/;
license = licenses.gpl2;
maintainers = [ maintainers.iElectric maintainers.bjornfor ];
maintainers = [ maintainers.domenkozar maintainers.bjornfor ];
platforms = platforms.linux;
};
}

View File

@ -57,8 +57,8 @@ in {
};
owncloud90 = common {
versiona = "9.0.0";
sha256 = "0z57lc6z1h7yn1sa26q8qnhjxyjn0ydy3mf4yy4i9a3p198kfryi";
versiona = "9.0.2";
sha256 = "845c43fe981fa0fd07fc3708f41f1ea15ecb11c2a15c65a4de191fc85b237c74";
};
}

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