quakespasm: init at 0.92.1
This commit is contained in:
commit
15b98cb634
|
@ -167,6 +167,11 @@
|
||||||
Because of this, a best-of-both-worlds solution is in the works with no splicing or explicit access of <varname>buildPackages</varname> needed.
|
Because of this, a best-of-both-worlds solution is in the works with no splicing or explicit access of <varname>buildPackages</varname> needed.
|
||||||
For now, feel free to use either method.
|
For now, feel free to use either method.
|
||||||
</para>
|
</para>
|
||||||
|
<note><para>
|
||||||
|
There is also a "backlink" <varname>__targetPackages</varname>, yielding a package set whose <varname>buildPackages</varname> is the current package set.
|
||||||
|
This is a hack, though, to accommodate compilers with lousy build systems.
|
||||||
|
Please do not use this unless you are absolutely sure you are packaging such a compiler and there is no other way.
|
||||||
|
</para></note>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
|
|
|
@ -16,8 +16,7 @@ $ cd sensu
|
||||||
$ cat > Gemfile
|
$ cat > Gemfile
|
||||||
source 'https://rubygems.org'
|
source 'https://rubygems.org'
|
||||||
gem 'sensu'
|
gem 'sensu'
|
||||||
$ nix-shell -p bundler --command "bundler package --path /tmp/vendor/bundle"
|
$ $(nix-build '<nixpkgs>' -A bundix)/bin/bundix --magic
|
||||||
$ $(nix-build '<nixpkgs>' -A bundix)/bin/bundix
|
|
||||||
$ cat > default.nix
|
$ cat > default.nix
|
||||||
{ lib, bundlerEnv, ruby }:
|
{ lib, bundlerEnv, ruby }:
|
||||||
|
|
||||||
|
|
|
@ -293,6 +293,7 @@
|
||||||
luispedro = "Luis Pedro Coelho <luis@luispedro.org>";
|
luispedro = "Luis Pedro Coelho <luis@luispedro.org>";
|
||||||
lukego = "Luke Gorrie <luke@snabb.co>";
|
lukego = "Luke Gorrie <luke@snabb.co>";
|
||||||
lw = "Sergey Sofeychuk <lw@fmap.me>";
|
lw = "Sergey Sofeychuk <lw@fmap.me>";
|
||||||
|
m3tti = "Mathaeus Sander <mathaeus.peter.sander@gmail.com>";
|
||||||
ma27 = "Maximilian Bosch <maximilian@mbosch.me>";
|
ma27 = "Maximilian Bosch <maximilian@mbosch.me>";
|
||||||
madjar = "Georges Dubus <georges.dubus@compiletoi.net>";
|
madjar = "Georges Dubus <georges.dubus@compiletoi.net>";
|
||||||
magnetophon = "Bart Brouns <bart@magnetophon.nl>";
|
magnetophon = "Bart Brouns <bart@magnetophon.nl>";
|
||||||
|
|
|
@ -102,7 +102,9 @@
|
||||||
./programs/wvdial.nix
|
./programs/wvdial.nix
|
||||||
./programs/xfs_quota.nix
|
./programs/xfs_quota.nix
|
||||||
./programs/xonsh.nix
|
./programs/xonsh.nix
|
||||||
|
./programs/zsh/oh-my-zsh.nix
|
||||||
./programs/zsh/zsh.nix
|
./programs/zsh/zsh.nix
|
||||||
|
./programs/zsh/zsh-syntax-highlighting.nix
|
||||||
./rename.nix
|
./rename.nix
|
||||||
./security/acme.nix
|
./security/acme.nix
|
||||||
./security/apparmor.nix
|
./security/apparmor.nix
|
||||||
|
|
35
nixos/modules/profiles/hardened.nix
Normal file
35
nixos/modules/profiles/hardened.nix
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
# A profile with most (vanilla) hardening options enabled by default,
|
||||||
|
# potentially at the cost of features and performance.
|
||||||
|
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
{
|
||||||
|
security.hideProcessInformation = mkDefault true;
|
||||||
|
|
||||||
|
security.apparmor.enable = mkDefault true;
|
||||||
|
|
||||||
|
# Restrict ptrace() usage to processes with a pre-defined relationship
|
||||||
|
# (e.g., parent/child)
|
||||||
|
boot.kernel.sysctl."kernel.yama.ptrace_scope" = mkOverride 500 1;
|
||||||
|
|
||||||
|
# Prevent replacing the running kernel image w/o reboot
|
||||||
|
boot.kernel.sysctl."kernel.kexec_load_disabled" = mkDefault true;
|
||||||
|
|
||||||
|
# Restrict access to kernel ring buffer (information leaks)
|
||||||
|
boot.kernel.sysctl."kernel.dmesg_restrict" = mkDefault true;
|
||||||
|
|
||||||
|
# Hide kptrs even for processes with CAP_SYSLOG
|
||||||
|
boot.kernel.sysctl."kernel.kptr_restrict" = mkOverride 500 2;
|
||||||
|
|
||||||
|
# Unprivileged access to bpf() has been used for privilege escalation in
|
||||||
|
# the past
|
||||||
|
boot.kernel.sysctl."kernel.unprivileged_bpf_disabled" = mkDefault true;
|
||||||
|
|
||||||
|
# Disable bpf() JIT (to eliminate spray attacks)
|
||||||
|
boot.kernel.sysctl."net.core.bpf_jit_enable" = mkDefault false;
|
||||||
|
|
||||||
|
# ... or at least apply some hardening to it
|
||||||
|
boot.kernel.sysctl."net.core.bpf_jit_harden" = mkDefault true;
|
||||||
|
}
|
66
nixos/modules/programs/zsh/oh-my-zsh.nix
Normal file
66
nixos/modules/programs/zsh/oh-my-zsh.nix
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.programs.zsh.oh-my-zsh;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options = {
|
||||||
|
programs.zsh.oh-my-zsh = {
|
||||||
|
enable = mkOption {
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
Enable oh-my-zsh.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
plugins = mkOption {
|
||||||
|
default = [];
|
||||||
|
type = types.listOf(types.str);
|
||||||
|
description = ''
|
||||||
|
List of oh-my-zsh plugins
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
custom = mkOption {
|
||||||
|
default = "";
|
||||||
|
type = types.str;
|
||||||
|
description = ''
|
||||||
|
Path to a custom oh-my-zsh package to override config of oh-my-zsh.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
theme = mkOption {
|
||||||
|
default = "";
|
||||||
|
type = types.str;
|
||||||
|
description = ''
|
||||||
|
Name of the theme to be used by oh-my-zsh.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
environment.systemPackages = with pkgs; [ oh-my-zsh ];
|
||||||
|
|
||||||
|
programs.zsh.interactiveShellInit = with pkgs; with builtins; ''
|
||||||
|
# oh-my-zsh configuration generated by NixOS
|
||||||
|
export ZSH=${oh-my-zsh}/share/oh-my-zsh
|
||||||
|
|
||||||
|
${optionalString (length(cfg.plugins) > 0)
|
||||||
|
"plugins=(${concatStringsSep " " cfg.plugins})"
|
||||||
|
}
|
||||||
|
|
||||||
|
${optionalString (stringLength(cfg.custom) > 0)
|
||||||
|
"ZSH_CUSTOM=\"${cfg.custom}\""
|
||||||
|
}
|
||||||
|
|
||||||
|
${optionalString (stringLength(cfg.theme) > 0)
|
||||||
|
"ZSH_THEME=\"${cfg.theme}\""
|
||||||
|
}
|
||||||
|
|
||||||
|
source $ZSH/oh-my-zsh.sh
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
43
nixos/modules/programs/zsh/zsh-syntax-highlighting.nix
Normal file
43
nixos/modules/programs/zsh/zsh-syntax-highlighting.nix
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.programs.zsh.syntax-highlighting;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options = {
|
||||||
|
programs.zsh.syntax-highlighting = {
|
||||||
|
enable = mkOption {
|
||||||
|
default = false;
|
||||||
|
type = types.bool;
|
||||||
|
description = ''
|
||||||
|
Enable zsh-syntax-highlighting.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
highlighters = mkOption {
|
||||||
|
default = [ "main" ];
|
||||||
|
type = types.listOf(types.str);
|
||||||
|
description = ''
|
||||||
|
Specifies the highlighters to be used by zsh-syntax-highlighting.
|
||||||
|
|
||||||
|
The following defined options can be found here:
|
||||||
|
https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters.md
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
environment.systemPackages = with pkgs; [ zsh-syntax-highlighting ];
|
||||||
|
|
||||||
|
programs.zsh.interactiveShellInit = with pkgs; with builtins; ''
|
||||||
|
source ${zsh-syntax-highlighting}/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
||||||
|
|
||||||
|
${optionalString (length(cfg.highlighters) > 0)
|
||||||
|
"ZSH_HIGHLIGHT_HIGHLIGHTERS=(${concatStringsSep " " cfg.highlighters})"
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
|
@ -84,14 +84,6 @@ in
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
};
|
};
|
||||||
|
|
||||||
enableSyntaxHighlighting = mkOption {
|
|
||||||
default = false;
|
|
||||||
description = ''
|
|
||||||
Enable zsh-syntax-highlighting
|
|
||||||
'';
|
|
||||||
type = types.bool;
|
|
||||||
};
|
|
||||||
|
|
||||||
enableAutosuggestions = mkOption {
|
enableAutosuggestions = mkOption {
|
||||||
default = false;
|
default = false;
|
||||||
description = ''
|
description = ''
|
||||||
|
@ -130,10 +122,6 @@ in
|
||||||
|
|
||||||
${if cfg.enableCompletion then "autoload -U compinit && compinit" else ""}
|
${if cfg.enableCompletion then "autoload -U compinit && compinit" else ""}
|
||||||
|
|
||||||
${optionalString (cfg.enableSyntaxHighlighting)
|
|
||||||
"source ${pkgs.zsh-syntax-highlighting}/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh"
|
|
||||||
}
|
|
||||||
|
|
||||||
${optionalString (cfg.enableAutosuggestions)
|
${optionalString (cfg.enableAutosuggestions)
|
||||||
"source ${pkgs.zsh-autosuggestions}/share/zsh-autosuggestions/zsh-autosuggestions.zsh"
|
"source ${pkgs.zsh-autosuggestions}/share/zsh-autosuggestions/zsh-autosuggestions.zsh"
|
||||||
}
|
}
|
||||||
|
@ -143,7 +131,6 @@ in
|
||||||
|
|
||||||
${cfge.interactiveShellInit}
|
${cfge.interactiveShellInit}
|
||||||
|
|
||||||
|
|
||||||
HELPDIR="${pkgs.zsh}/share/zsh/$ZSH_VERSION/help"
|
HELPDIR="${pkgs.zsh}/share/zsh/$ZSH_VERSION/help"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -206,8 +193,7 @@ in
|
||||||
environment.etc."zinputrc".source = ./zinputrc;
|
environment.etc."zinputrc".source = ./zinputrc;
|
||||||
|
|
||||||
environment.systemPackages = [ pkgs.zsh ]
|
environment.systemPackages = [ pkgs.zsh ]
|
||||||
++ optional cfg.enableCompletion pkgs.nix-zsh-completions
|
++ optional cfg.enableCompletion pkgs.nix-zsh-completions;
|
||||||
++ optional cfg.enableSyntaxHighlighting pkgs.zsh-syntax-highlighting;
|
|
||||||
|
|
||||||
environment.pathsToLink = optional cfg.enableCompletion "/share/zsh";
|
environment.pathsToLink = optional cfg.enableCompletion "/share/zsh";
|
||||||
|
|
||||||
|
|
|
@ -204,5 +204,8 @@ with lib;
|
||||||
"Set the option `services.xserver.displayManager.sddm.package' instead.")
|
"Set the option `services.xserver.displayManager.sddm.package' instead.")
|
||||||
(mkRemovedOptionModule [ "fonts" "fontconfig" "forceAutohint" ] "")
|
(mkRemovedOptionModule [ "fonts" "fontconfig" "forceAutohint" ] "")
|
||||||
(mkRemovedOptionModule [ "fonts" "fontconfig" "renderMonoTTFAsBitmap" ] "")
|
(mkRemovedOptionModule [ "fonts" "fontconfig" "renderMonoTTFAsBitmap" ] "")
|
||||||
|
|
||||||
|
# ZSH
|
||||||
|
(mkRenamedOptionModule [ "programs" "zsh" "enableSyntaxHighlighting" ] [ "programs" "zsh" "syntax-highlighting" "enable" ])
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -149,7 +149,7 @@ in
|
||||||
--group fcron \
|
--group fcron \
|
||||||
--directory /var/spool/fcron
|
--directory /var/spool/fcron
|
||||||
# load system crontab file
|
# load system crontab file
|
||||||
#${pkgs.fcron}/bin/fcrontab -u systab ${pkgs.writeText "systab" cfg.systab}
|
/run/wrappers/bin/fcrontab -u systab ${pkgs.writeText "systab" cfg.systab}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
|
|
|
@ -32,14 +32,8 @@ let
|
||||||
''
|
''
|
||||||
#! ${pkgs.bash}/bin/bash
|
#! ${pkgs.bash}/bin/bash
|
||||||
|
|
||||||
# SDDM splits "Exec" line in .desktop file by whitespace and pass script path as $1
|
# Handle being called by SDDM.
|
||||||
if [[ "$0" = "$1" ]]; then
|
if test "''${1:0:1}" = / ; then eval exec $1 $2 ; fi
|
||||||
# remove superfluous $1 again
|
|
||||||
shift
|
|
||||||
# join arguments again and evaluate them in a shell context
|
|
||||||
# to interpret shell quoting
|
|
||||||
eval exec "$0" "$@"
|
|
||||||
fi
|
|
||||||
|
|
||||||
${optionalString cfg.displayManager.logToJournal ''
|
${optionalString cfg.displayManager.logToJournal ''
|
||||||
if [ -z "$_DID_SYSTEMD_CAT" ]; then
|
if [ -z "$_DID_SYSTEMD_CAT" ]; then
|
||||||
|
|
|
@ -17,6 +17,7 @@ let
|
||||||
login_cmd exec ${pkgs.stdenv.shell} ${dmcfg.session.script} "%session"
|
login_cmd exec ${pkgs.stdenv.shell} ${dmcfg.session.script} "%session"
|
||||||
halt_cmd ${config.systemd.package}/sbin/shutdown -h now
|
halt_cmd ${config.systemd.package}/sbin/shutdown -h now
|
||||||
reboot_cmd ${config.systemd.package}/sbin/shutdown -r now
|
reboot_cmd ${config.systemd.package}/sbin/shutdown -r now
|
||||||
|
logfile /dev/stderr
|
||||||
${optionalString (cfg.defaultUser != null) ("default_user " + cfg.defaultUser)}
|
${optionalString (cfg.defaultUser != null) ("default_user " + cfg.defaultUser)}
|
||||||
${optionalString (cfg.defaultUser != null) ("focus_password yes")}
|
${optionalString (cfg.defaultUser != null) ("focus_password yes")}
|
||||||
${optionalString cfg.autoLogin "auto_login yes"}
|
${optionalString cfg.autoLogin "auto_login yes"}
|
||||||
|
@ -128,11 +129,7 @@ in
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
|
|
||||||
services.xserver.displayManager.job =
|
services.xserver.displayManager.job =
|
||||||
{ preStart =
|
{ environment =
|
||||||
''
|
|
||||||
rm -f /var/log/slim.log
|
|
||||||
'';
|
|
||||||
environment =
|
|
||||||
{ SLIM_CFGFILE = slimConfig;
|
{ SLIM_CFGFILE = slimConfig;
|
||||||
SLIM_THEMESDIR = slimThemesDir;
|
SLIM_THEMESDIR = slimThemesDir;
|
||||||
};
|
};
|
||||||
|
|
|
@ -94,6 +94,7 @@ in rec {
|
||||||
(all nixos.tests.proxy)
|
(all nixos.tests.proxy)
|
||||||
(all nixos.tests.sddm.default)
|
(all nixos.tests.sddm.default)
|
||||||
(all nixos.tests.simple)
|
(all nixos.tests.simple)
|
||||||
|
(all nixos.tests.slim)
|
||||||
(all nixos.tests.udisks2)
|
(all nixos.tests.udisks2)
|
||||||
(all nixos.tests.xfce)
|
(all nixos.tests.xfce)
|
||||||
|
|
||||||
|
|
|
@ -299,6 +299,7 @@ in rec {
|
||||||
tests.samba = callTest tests/samba.nix {};
|
tests.samba = callTest tests/samba.nix {};
|
||||||
tests.sddm = callSubTests tests/sddm.nix {};
|
tests.sddm = callSubTests tests/sddm.nix {};
|
||||||
tests.simple = callTest tests/simple.nix {};
|
tests.simple = callTest tests/simple.nix {};
|
||||||
|
tests.slim = callTest tests/slim.nix {};
|
||||||
tests.smokeping = callTest tests/smokeping.nix {};
|
tests.smokeping = callTest tests/smokeping.nix {};
|
||||||
tests.taskserver = callTest tests/taskserver.nix {};
|
tests.taskserver = callTest tests/taskserver.nix {};
|
||||||
tests.tomcat = callTest tests/tomcat.nix {};
|
tests.tomcat = callTest tests/tomcat.nix {};
|
||||||
|
|
|
@ -122,7 +122,7 @@ import ./make-test.nix ({ pkgs, ...} : {
|
||||||
|
|
||||||
# Test hidepid
|
# Test hidepid
|
||||||
subtest "hidepid", sub {
|
subtest "hidepid", sub {
|
||||||
$machine->succeed("grep -Fq hidepid=2 /etc/mtab");
|
$machine->succeed("grep -Fq hidepid=2 /proc/mounts");
|
||||||
$machine->succeed("[ `su - sybil -c 'pgrep -c -u root'` = 0 ]");
|
$machine->succeed("[ `su - sybil -c 'pgrep -c -u root'` = 0 ]");
|
||||||
$machine->succeed("[ `su - alice -c 'pgrep -c -u root'` != 0 ]");
|
$machine->succeed("[ `su - alice -c 'pgrep -c -u root'` != 0 ]");
|
||||||
};
|
};
|
||||||
|
|
66
nixos/tests/slim.nix
Normal file
66
nixos/tests/slim.nix
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
import ./make-test.nix ({ pkgs, ...} : {
|
||||||
|
name = "slim";
|
||||||
|
|
||||||
|
meta = with pkgs.stdenv.lib.maintainers; {
|
||||||
|
maintainers = [ aszlig ];
|
||||||
|
};
|
||||||
|
|
||||||
|
machine = { pkgs, lib, ... }: {
|
||||||
|
imports = [ ./common/user-account.nix ];
|
||||||
|
services.xserver.enable = true;
|
||||||
|
services.xserver.windowManager.default = "icewm";
|
||||||
|
services.xserver.windowManager.icewm.enable = true;
|
||||||
|
services.xserver.desktopManager.default = "none";
|
||||||
|
services.xserver.displayManager.slim = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
# Use a custom theme in order to get best OCR results
|
||||||
|
theme = pkgs.runCommand "slim-theme-ocr" {
|
||||||
|
nativeBuildInputs = [ pkgs.imagemagick ];
|
||||||
|
} ''
|
||||||
|
mkdir "$out"
|
||||||
|
convert -size 1x1 xc:white "$out/background.jpg"
|
||||||
|
convert -size 200x100 xc:white "$out/panel.jpg"
|
||||||
|
cat > "$out/slim.theme" <<EOF
|
||||||
|
background_color #ffffff
|
||||||
|
background_style tile
|
||||||
|
|
||||||
|
input_fgcolor #000000
|
||||||
|
msg_color #000000
|
||||||
|
|
||||||
|
session_color #000000
|
||||||
|
session_font Verdana:size=16:bold
|
||||||
|
|
||||||
|
username_msg Username:
|
||||||
|
username_font Verdana:size=16:bold
|
||||||
|
username_color #000000
|
||||||
|
username_x 50%
|
||||||
|
username_y 40%
|
||||||
|
|
||||||
|
password_msg Password:
|
||||||
|
password_x 50%
|
||||||
|
password_y 40%
|
||||||
|
EOF
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
enableOCR = true;
|
||||||
|
|
||||||
|
testScript = { nodes, ... }: let
|
||||||
|
user = nodes.machine.config.users.extraUsers.alice;
|
||||||
|
in ''
|
||||||
|
startAll;
|
||||||
|
$machine->waitForText(qr/Username:/);
|
||||||
|
$machine->sendChars("${user.name}\n");
|
||||||
|
$machine->waitForText(qr/Password:/);
|
||||||
|
$machine->sendChars("${user.password}\n");
|
||||||
|
|
||||||
|
$machine->waitForFile('${user.home}/.Xauthority');
|
||||||
|
$machine->succeed('xauth merge ${user.home}/.Xauthority');
|
||||||
|
$machine->waitForWindow('^IceWM ');
|
||||||
|
|
||||||
|
# Make sure SLiM doesn't create a log file
|
||||||
|
$machine->fail('test -e /var/log/slim.log');
|
||||||
|
'';
|
||||||
|
})
|
|
@ -22,6 +22,10 @@ stdenv.mkDerivation rec {
|
||||||
# Ensure that sessions appear in sort order, rather than in
|
# Ensure that sessions appear in sort order, rather than in
|
||||||
# directory order.
|
# directory order.
|
||||||
./sort-sessions.patch
|
./sort-sessions.patch
|
||||||
|
|
||||||
|
# Allow to set logfile to a special "/dev/stderr" in order to continue
|
||||||
|
# logging to stderr and thus to the journal.
|
||||||
|
./no-logfile.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
preConfigure = "substituteInPlace CMakeLists.txt --replace /lib $out/lib";
|
preConfigure = "substituteInPlace CMakeLists.txt --replace /lib $out/lib";
|
||||||
|
|
80
pkgs/applications/display-managers/slim/no-logfile.patch
Normal file
80
pkgs/applications/display-managers/slim/no-logfile.patch
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
diff --git a/log.cpp b/log.cpp
|
||||||
|
index b44677a..7c89dda 100644
|
||||||
|
--- a/log.cpp
|
||||||
|
+++ b/log.cpp
|
||||||
|
@@ -1,23 +1,31 @@
|
||||||
|
#include "log.h"
|
||||||
|
#include <iostream>
|
||||||
|
+#include <cstring>
|
||||||
|
|
||||||
|
bool
|
||||||
|
LogUnit::openLog(const char * filename)
|
||||||
|
{
|
||||||
|
- if (logFile.is_open()) {
|
||||||
|
+ if (isFile && logFile.is_open()) {
|
||||||
|
cerr << APPNAME
|
||||||
|
<< ": opening a new Log file, while another is already open"
|
||||||
|
<< endl;
|
||||||
|
- logFile.close();
|
||||||
|
+ closeLog();
|
||||||
|
}
|
||||||
|
- logFile.open(filename, ios_base::app);
|
||||||
|
|
||||||
|
- return !(logFile.fail());
|
||||||
|
+ if (strcmp(filename, "/dev/stderr") == 0) {
|
||||||
|
+ isFile = false;
|
||||||
|
+ return true;
|
||||||
|
+ } else {
|
||||||
|
+ logFile.open(filename, ios_base::app);
|
||||||
|
+ isFile = true;
|
||||||
|
+ return !(logFile.fail());
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
LogUnit::closeLog()
|
||||||
|
{
|
||||||
|
+ if (!isFile) return;
|
||||||
|
if (logFile.is_open())
|
||||||
|
logFile.close();
|
||||||
|
}
|
||||||
|
diff --git a/log.h b/log.h
|
||||||
|
index b7810be..ad548a2 100644
|
||||||
|
--- a/log.h
|
||||||
|
+++ b/log.h
|
||||||
|
@@ -9,11 +9,14 @@
|
||||||
|
#endif
|
||||||
|
#include "const.h"
|
||||||
|
#include <fstream>
|
||||||
|
+#include <iostream>
|
||||||
|
|
||||||
|
using namespace std;
|
||||||
|
|
||||||
|
static class LogUnit {
|
||||||
|
ofstream logFile;
|
||||||
|
+ bool isFile;
|
||||||
|
+ inline ostream &getStream() { return isFile ? logFile : cerr; }
|
||||||
|
public:
|
||||||
|
bool openLog(const char * filename);
|
||||||
|
void closeLog();
|
||||||
|
@@ -22,17 +25,17 @@ public:
|
||||||
|
|
||||||
|
template<typename Type>
|
||||||
|
LogUnit & operator<<(const Type & text) {
|
||||||
|
- logFile << text; logFile.flush();
|
||||||
|
+ getStream() << text; getStream().flush();
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
LogUnit & operator<<(ostream & (*fp)(ostream&)) {
|
||||||
|
- logFile << fp; logFile.flush();
|
||||||
|
+ getStream() << fp; getStream().flush();
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
LogUnit & operator<<(ios_base & (*fp)(ios_base&)) {
|
||||||
|
- logFile << fp; logFile.flush();
|
||||||
|
+ getStream() << fp; getStream().flush();
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
} logStream;
|
|
@ -1,4 +1,4 @@
|
||||||
{ stdenv, fetchurl, config, makeWrapper
|
{ stdenv, fetchurl, config, wrapGAppsHook
|
||||||
, alsaLib
|
, alsaLib
|
||||||
, atk
|
, atk
|
||||||
, cairo
|
, cairo
|
||||||
|
@ -77,7 +77,7 @@ stdenv.mkDerivation {
|
||||||
|
|
||||||
src = fetchurl { inherit (source) url sha512; };
|
src = fetchurl { inherit (source) url sha512; };
|
||||||
|
|
||||||
phases = "unpackPhase installPhase";
|
phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
|
||||||
|
|
||||||
libPath = stdenv.lib.makeLibraryPath
|
libPath = stdenv.lib.makeLibraryPath
|
||||||
[ stdenv.cc.cc
|
[ stdenv.cc.cc
|
||||||
|
@ -124,11 +124,12 @@ stdenv.mkDerivation {
|
||||||
stdenv.cc.cc
|
stdenv.cc.cc
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [ makeWrapper gtk3 defaultIconTheme ];
|
buildInputs = [ wrapGAppsHook gtk3 defaultIconTheme ];
|
||||||
|
|
||||||
# "strip" after "patchelf" may break binaries.
|
# "strip" after "patchelf" may break binaries.
|
||||||
# See: https://github.com/NixOS/patchelf/issues/10
|
# See: https://github.com/NixOS/patchelf/issues/10
|
||||||
dontStrip = 1;
|
dontStrip = true;
|
||||||
|
dontPatchELF = true;
|
||||||
|
|
||||||
installPhase =
|
installPhase =
|
||||||
''
|
''
|
||||||
|
@ -155,22 +156,7 @@ stdenv.mkDerivation {
|
||||||
# wrapFirefox expects "$out/lib" instead of "$out/usr/lib"
|
# wrapFirefox expects "$out/lib" instead of "$out/usr/lib"
|
||||||
ln -s "$out/usr/lib" "$out/lib"
|
ln -s "$out/usr/lib" "$out/lib"
|
||||||
|
|
||||||
# Create a desktop item.
|
gappsWrapperArgs+=(--argv0 "$out/bin/.firefox-wrapped")
|
||||||
mkdir -p $out/share/applications
|
|
||||||
cat > $out/share/applications/firefox.desktop <<EOF
|
|
||||||
[Desktop Entry]
|
|
||||||
Type=Application
|
|
||||||
Exec=$out/bin/firefox
|
|
||||||
Icon=$out/usr/lib/firefox-bin-${version}/browser/icons/mozicon128.png
|
|
||||||
Name=Firefox
|
|
||||||
GenericName=Web Browser
|
|
||||||
Categories=Application;Network;
|
|
||||||
EOF
|
|
||||||
|
|
||||||
wrapProgram "$out/bin/firefox" \
|
|
||||||
--argv0 "$out/bin/.firefox-wrapped" \
|
|
||||||
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:" \
|
|
||||||
--suffix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.ffmpegSupport = true;
|
passthru.ffmpegSupport = true;
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
, yasm, mesa, sqlite, unzip, makeWrapper
|
, yasm, mesa, sqlite, unzip, makeWrapper
|
||||||
, hunspell, libevent, libstartup_notification, libvpx
|
, hunspell, libevent, libstartup_notification, libvpx
|
||||||
, cairo, gstreamer, gst-plugins-base, icu, libpng, jemalloc, libpulseaudio
|
, cairo, gstreamer, gst-plugins-base, icu, libpng, jemalloc, libpulseaudio
|
||||||
, autoconf213, which
|
, autoconf213, which, cargo, rustc
|
||||||
, writeScript, xidel, common-updater-scripts, coreutils, gnused, gnugrep, curl
|
, writeScript, xidel, common-updater-scripts, coreutils, gnused, gnugrep, curl
|
||||||
, enableGTK3 ? false, gtk3, wrapGAppsHook
|
, enableGTK3 ? false, gtk3, wrapGAppsHook
|
||||||
, debugBuild ? false
|
, debugBuild ? false
|
||||||
|
@ -48,7 +48,9 @@ common = { pname, version, sha512, updateScript }: stdenv.mkDerivation rec {
|
||||||
++ lib.optional enableGTK3 gtk3
|
++ lib.optional enableGTK3 gtk3
|
||||||
++ lib.optionals (!passthru.ffmpegSupport) [ gstreamer gst-plugins-base ];
|
++ lib.optionals (!passthru.ffmpegSupport) [ gstreamer gst-plugins-base ];
|
||||||
|
|
||||||
nativeBuildInputs = [ autoconf213 which gnused pkgconfig perl python ] ++ lib.optional enableGTK3 wrapGAppsHook;
|
nativeBuildInputs =
|
||||||
|
[ autoconf213 which gnused pkgconfig perl python cargo rustc ]
|
||||||
|
++ lib.optional enableGTK3 wrapGAppsHook;
|
||||||
|
|
||||||
configureFlags =
|
configureFlags =
|
||||||
[ "--enable-application=browser"
|
[ "--enable-application=browser"
|
||||||
|
@ -151,8 +153,8 @@ in {
|
||||||
|
|
||||||
firefox-unwrapped = common {
|
firefox-unwrapped = common {
|
||||||
pname = "firefox";
|
pname = "firefox";
|
||||||
version = "52.0.2";
|
version = "53.0";
|
||||||
sha512 = "15668625d212acf874b560d0adf738faf3e0df532c549ab94e1d91944542e13bf16265f08fca1eded42820f9b7ad3f0ff70a8b5bc9adde0a79d11e022bb1158e";
|
sha512 = "36ec810bab58e3d99478455a38427a5efbc74d6dd7d4bb93b700fd7429b9b89250efd0abe4609091483991802090c6373c8434dfc9ba64c79a778e51fd2a2886";
|
||||||
updateScript = import ./update.nix {
|
updateScript = import ./update.nix {
|
||||||
attrPath = "firefox-unwrapped";
|
attrPath = "firefox-unwrapped";
|
||||||
inherit writeScript lib common-updater-scripts xidel coreutils gnused gnugrep curl;
|
inherit writeScript lib common-updater-scripts xidel coreutils gnused gnugrep curl;
|
||||||
|
|
|
@ -25,15 +25,18 @@ in stdenv.mkDerivation rec {
|
||||||
"16l9jma2hiwzl9l41yhrwribcgmxca271rq0cfbbm9701mmmciyy";
|
"16l9jma2hiwzl9l41yhrwribcgmxca271rq0cfbbm9701mmmciyy";
|
||||||
};
|
};
|
||||||
|
|
||||||
phases = [ "unpackPhase" "installPhase" "postFixup" ];
|
# don't remove runtime deps
|
||||||
|
dontPatchELF = true;
|
||||||
|
|
||||||
deps = with xorg; [
|
deps = (with xorg; [
|
||||||
gtk2 atk glib pango gdk_pixbuf cairo freetype fontconfig dbus
|
libXi libXcursor libXdamage libXrandr libXcomposite libXext libXfixes
|
||||||
libXi libXcursor libXdamage libXrandr libXcomposite libXext libXfixes
|
libXrender libX11 libXtst libXScrnSaver
|
||||||
libXrender libX11 libXtst libXScrnSaver gnome2.GConf nss nspr alsaLib
|
]) ++ [
|
||||||
cups expat stdenv.cc.cc
|
gtk2 atk glib pango gdk_pixbuf cairo freetype fontconfig dbus
|
||||||
|
gnome2.GConf nss nspr alsaLib cups expat stdenv.cc.cc
|
||||||
udev libnotify
|
# runtime deps
|
||||||
|
] ++ [
|
||||||
|
udev libnotify
|
||||||
];
|
];
|
||||||
|
|
||||||
unpackPhase = ''
|
unpackPhase = ''
|
||||||
|
@ -42,19 +45,20 @@ in stdenv.mkDerivation rec {
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" Franz
|
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" Franz
|
||||||
patchelf --set-rpath "$out/share/franz:${stdenv.lib.makeLibraryPath deps}" Franz
|
patchelf --set-rpath "$out/opt/franz:${stdenv.lib.makeLibraryPath deps}" Franz
|
||||||
|
|
||||||
mkdir -p $out/bin $out/share/franz
|
mkdir -p $out/bin $out/opt/franz
|
||||||
cp -r * $out/share/franz
|
cp -r * $out/opt/franz
|
||||||
ln -s $out/share/franz/Franz $out/bin
|
ln -s $out/opt/franz/Franz $out/bin
|
||||||
|
|
||||||
|
# provide desktop item and icon
|
||||||
mkdir -p $out/share/applications $out/share/pixmaps
|
mkdir -p $out/share/applications $out/share/pixmaps
|
||||||
ln -s ${desktopItem}/share/applications/* $out/share/applications
|
ln -s ${desktopItem}/share/applications/* $out/share/applications
|
||||||
ln -s $out/share/franz/resources/app.asar.unpacked/assets/franz.png $out/share/pixmaps
|
ln -s $out/opt/franz/resources/app.asar.unpacked/assets/franz.png $out/share/pixmaps
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postFixup = ''
|
postFixup = ''
|
||||||
paxmark m $out/share/franz/Franz
|
paxmark m $out/opt/franz/Franz
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
|
|
@ -12,7 +12,6 @@ let
|
||||||
url = "https://raw.githubusercontent.com/saenzramiro/rambox/9e4444e6297dd35743b79fe23f8d451a104028d5/resources/Icon.png";
|
url = "https://raw.githubusercontent.com/saenzramiro/rambox/9e4444e6297dd35743b79fe23f8d451a104028d5/resources/Icon.png";
|
||||||
sha256 = "0r00l4r5mlbgn689i3rp6ks11fgs4h2flvrlggvm2qdd974d1x0b";
|
sha256 = "0r00l4r5mlbgn689i3rp6ks11fgs4h2flvrlggvm2qdd974d1x0b";
|
||||||
};
|
};
|
||||||
|
|
||||||
desktopItem = makeDesktopItem rec {
|
desktopItem = makeDesktopItem rec {
|
||||||
name = "Rambox";
|
name = "Rambox";
|
||||||
exec = "rambox";
|
exec = "rambox";
|
||||||
|
@ -30,31 +29,35 @@ in stdenv.mkDerivation rec {
|
||||||
"13xmljsdahffdzndg30qxh8mj7bgd9jwkxknrvlh3l6w35pbj085";
|
"13xmljsdahffdzndg30qxh8mj7bgd9jwkxknrvlh3l6w35pbj085";
|
||||||
};
|
};
|
||||||
|
|
||||||
phases = [ "unpackPhase" "installPhase" "postFixup" ];
|
# don't remove runtime deps
|
||||||
|
dontPatchELF = true;
|
||||||
|
|
||||||
deps = with xorg; [
|
deps = (with xorg; [
|
||||||
gtk2 atk glib pango gdk_pixbuf cairo freetype fontconfig dbus
|
libXi libXcursor libXdamage libXrandr libXcomposite libXext libXfixes
|
||||||
libXi libXcursor libXdamage libXrandr libXcomposite libXext libXfixes
|
libXrender libX11 libXtst libXScrnSaver
|
||||||
libXrender libX11 libXtst libXScrnSaver gnome2.GConf nss nspr alsaLib
|
]) ++ [
|
||||||
cups expat stdenv.cc.cc
|
gtk2 atk glib pango gdk_pixbuf cairo freetype fontconfig dbus
|
||||||
|
gnome2.GConf nss nspr alsaLib cups expat stdenv.cc.cc
|
||||||
udev libnotify
|
# runtime deps
|
||||||
|
] ++ [
|
||||||
|
udev libnotify
|
||||||
];
|
];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" rambox
|
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" rambox
|
||||||
patchelf --set-rpath "$out/share/rambox:${stdenv.lib.makeLibraryPath deps}" rambox
|
patchelf --set-rpath "$out/opt/rambox:${stdenv.lib.makeLibraryPath deps}" rambox
|
||||||
|
|
||||||
mkdir -p $out/bin $out/share/rambox
|
mkdir -p $out/bin $out/opt/rambox
|
||||||
cp -r * $out/share/rambox
|
cp -r * $out/opt/rambox
|
||||||
ln -s $out/share/rambox/rambox $out/bin
|
ln -s $out/opt/rambox/rambox $out/bin
|
||||||
|
|
||||||
|
# provide desktop item
|
||||||
mkdir -p $out/share/applications
|
mkdir -p $out/share/applications
|
||||||
ln -s ${desktopItem}/share/applications/* $out/share/applications
|
ln -s ${desktopItem}/share/applications/* $out/share/applications
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postFixup = ''
|
postFixup = ''
|
||||||
paxmark m $out/share/rambox/rambox
|
paxmark m $out/opt/rambox/rambox
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
|
|
@ -2,15 +2,15 @@
|
||||||
|
|
||||||
buildGoPackage rec {
|
buildGoPackage rec {
|
||||||
name = "ipfs-${version}";
|
name = "ipfs-${version}";
|
||||||
version = "0.4.8";
|
version = "0.4.6";
|
||||||
rev = "8e7484ed794d1aecb3e773e9003ae64c7b78bb87";
|
rev = "ed729423ce548785834cdcaa21aab11ebc3a1b1a";
|
||||||
|
|
||||||
goPackagePath = "github.com/ipfs/go-ipfs";
|
goPackagePath = "github.com/ipfs/go-ipfs";
|
||||||
|
|
||||||
extraSrcPaths = [
|
extraSrcPaths = [
|
||||||
(fetchgx {
|
(fetchgx {
|
||||||
inherit name src;
|
inherit name src;
|
||||||
sha256 = "1h4n74n65z4sw3fqz8nfcrwisbvvwwfq69909w3kgrjsxs7505s5";
|
sha256 = "1wwzbps3ry3vlrr0iqhvxd44x0wi99dcp5hlxvh79dc0g9r7myfk";
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ buildGoPackage rec {
|
||||||
owner = "ipfs";
|
owner = "ipfs";
|
||||||
repo = "go-ipfs";
|
repo = "go-ipfs";
|
||||||
inherit rev;
|
inherit rev;
|
||||||
sha256 = "15jcg0wbm7g82fsmhc1vxrsszbxcghls3rsyv35n1hv5k5r5d5nh";
|
sha256 = "1b262k1lhb1g68l8hghly4pdrxx1c6wbv6ij6dg399zdwqzczl13";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
|
|
@ -21,12 +21,12 @@ let
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "1.7";
|
version = "1.7.1";
|
||||||
name = "weechat-${version}";
|
name = "weechat-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://weechat.org/files/src/weechat-${version}.tar.bz2";
|
url = "http://weechat.org/files/src/weechat-${version}.tar.bz2";
|
||||||
sha256 = "1l34rgr83nf2h71mwzhv5c0x03msrwv3kzx3cwzczx72xrih12n7";
|
sha256 = "1020m1lsm8lg9n0dlxgp2wbn9b0r11g8r0namnzi2x6gvxn7iyf0";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "doc" ];
|
outputs = [ "out" "doc" ];
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
, cairo, gstreamer, gst-plugins-base, icu, libpng, jemalloc
|
, cairo, gstreamer, gst-plugins-base, icu, libpng, jemalloc
|
||||||
, autoconf213, which, m4
|
, autoconf213, which, m4
|
||||||
, writeScript, xidel, common-updater-scripts, coreutils, gnused, gnugrep, curl
|
, writeScript, xidel, common-updater-scripts, coreutils, gnused, gnugrep, curl
|
||||||
, enableGTK3 ? false, gtk3, wrapGAppsHook
|
, enableGTK3 ? false, gtk3, wrapGAppsHook, makeWrapper
|
||||||
, enableCalendar ? true
|
, enableCalendar ? true
|
||||||
, debugBuild ? false
|
, debugBuild ? false
|
||||||
, # If you want the resulting program to call itself "Thunderbird" instead
|
, # If you want the resulting program to call itself "Thunderbird" instead
|
||||||
|
@ -15,9 +15,12 @@
|
||||||
# Mozilla Foundation, see
|
# Mozilla Foundation, see
|
||||||
# http://www.mozilla.org/foundation/trademarks/.
|
# http://www.mozilla.org/foundation/trademarks/.
|
||||||
enableOfficialBranding ? false
|
enableOfficialBranding ? false
|
||||||
|
, makeDesktopItem
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
let
|
||||||
|
wrapperTool = if enableGTK3 then wrapGAppsHook else makeWrapper;
|
||||||
|
in stdenv.mkDerivation rec {
|
||||||
name = "thunderbird-${version}";
|
name = "thunderbird-${version}";
|
||||||
version = "52.0.1";
|
version = "52.0.1";
|
||||||
|
|
||||||
|
@ -46,8 +49,8 @@ stdenv.mkDerivation rec {
|
||||||
]
|
]
|
||||||
++ lib.optional enableGTK3 gtk3;
|
++ lib.optional enableGTK3 gtk3;
|
||||||
|
|
||||||
# from firefox + m4
|
# from firefox + m4 + wrapperTool
|
||||||
nativeBuildInputs = [ m4 autoconf213 which gnused pkgconfig perl python ] ++ lib.optional enableGTK3 wrapGAppsHook;
|
nativeBuildInputs = [ m4 autoconf213 which gnused pkgconfig perl python wrapperTool ];
|
||||||
|
|
||||||
configureFlags =
|
configureFlags =
|
||||||
[ # from firefox, but without sound libraries (alsa, libvpx, pulseaudio)
|
[ # from firefox, but without sound libraries (alsa, libvpx, pulseaudio)
|
||||||
|
@ -100,13 +103,61 @@ stdenv.mkDerivation rec {
|
||||||
paxmark m ../objdir/dist/bin/xpcshell
|
paxmark m ../objdir/dist/bin/xpcshell
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
dontWrapGApps = true; # we do it ourselves
|
||||||
postInstall =
|
postInstall =
|
||||||
''
|
''
|
||||||
# For grsecurity kernels
|
# For grsecurity kernels
|
||||||
paxmark m $out/lib/thunderbird-[0-9]*/thunderbird
|
paxmark m $out/lib/thunderbird-[0-9]*/thunderbird
|
||||||
|
|
||||||
# Needed to find Mozilla runtime
|
# TODO: Move to a dev output?
|
||||||
gappsWrapperArgs+=(--argv0 "$out/bin/.thunderbird-wrapped")
|
rm -rf $out/include $out/lib/thunderbird-devel-* $out/share/idl
|
||||||
|
|
||||||
|
# $binary is a symlink to $target.
|
||||||
|
# We wrap $target by replacing the $binary symlink.
|
||||||
|
local target="$out/lib/thunderbird-${version}/thunderbird"
|
||||||
|
local binary="$out/bin/thunderbird"
|
||||||
|
|
||||||
|
# Wrap correctly, this is needed to
|
||||||
|
# 1) find Mozilla runtime, because argv0 must be the real thing,
|
||||||
|
# or a symlink thereto. It cannot be the wrapper itself
|
||||||
|
# 2) detect itself as the default mailreader across builds
|
||||||
|
gappsWrapperArgs+=(
|
||||||
|
--argv0 "$target"
|
||||||
|
--set MOZ_APP_LAUNCHER thunderbird
|
||||||
|
)
|
||||||
|
${
|
||||||
|
# We wrap manually because wrapGAppsHook does not detect the symlink
|
||||||
|
# To mimic wrapGAppsHook, we run it with dontWrapGApps, so
|
||||||
|
# gappsWrapperArgs gets defined correctly
|
||||||
|
lib.optionalString enableGTK3 "wrapGAppsHook"
|
||||||
|
}
|
||||||
|
|
||||||
|
# "$binary" is a symlink, replace it by the wrapper
|
||||||
|
rm "$binary"
|
||||||
|
makeWrapper "$target" "$binary" "''${gappsWrapperArgs[@]}"
|
||||||
|
|
||||||
|
${ let desktopItem = makeDesktopItem {
|
||||||
|
name = "thunderbird";
|
||||||
|
exec = "thunderbird %U";
|
||||||
|
desktopName = "Thunderbird";
|
||||||
|
icon = "$out/lib/thunderbird-${version}/chrome/icons/default/default256.png";
|
||||||
|
genericName = "Main Reader";
|
||||||
|
categories = "Application;Network";
|
||||||
|
mimeType = stdenv.lib.concatStringsSep ";" [
|
||||||
|
# Email
|
||||||
|
"x-scheme-handler/mailto"
|
||||||
|
"message/rfc822"
|
||||||
|
# Newsgroup
|
||||||
|
"x-scheme-handler/news"
|
||||||
|
"x-scheme-handler/snews"
|
||||||
|
"x-scheme-handler/nntp"
|
||||||
|
# Feed
|
||||||
|
"x-scheme-handler/feed"
|
||||||
|
"application/rss+xml"
|
||||||
|
"application/x-extension-rss"
|
||||||
|
];
|
||||||
|
}; in desktopItem.buildCommand
|
||||||
|
}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postFixup =
|
postFixup =
|
||||||
|
|
34
pkgs/applications/office/mytetra/default.nix
Normal file
34
pkgs/applications/office/mytetra/default.nix
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
{ stdenv, fetchurl, qmakeHook, makeQtWrapper, qtsvg }:
|
||||||
|
|
||||||
|
let
|
||||||
|
version = "1.42.2";
|
||||||
|
in stdenv.mkDerivation rec {
|
||||||
|
name = "mytetra-${version}";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/xintrea/mytetra_dev/archive/v.${version}.tar.gz";
|
||||||
|
sha256 = "1ah44nf4ksxkh01a2zmgvvby4pwczhyq5vcp270rf6visp8v9804";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ qmakeHook makeQtWrapper qtsvg ];
|
||||||
|
|
||||||
|
hardeningDisable = [ "format" ];
|
||||||
|
|
||||||
|
preBuild = ''
|
||||||
|
substituteInPlace mytetra.pro \
|
||||||
|
--replace /usr/local/bin $out/bin \
|
||||||
|
--replace /usr/share $out/share
|
||||||
|
|
||||||
|
substituteInPlace src/views/mainWindow/MainWindow.cpp \
|
||||||
|
--replace ":/resource/pic/logo.svg" "$out/share/icons/hicolor/48x48/apps/mytetra.png"
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall = "wrapQtProgram $out/bin/mytetra";
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Smart manager for information collecting";
|
||||||
|
homepage = http://webhamster.ru/site/page/index/articles/projectcode/138;
|
||||||
|
license = licenses.gpl3;
|
||||||
|
maintainers = [ maintainers.gnidorah ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,24 +1,45 @@
|
||||||
{ stdenv, fetchurl, qtbase, qtsvg, qmakeHook, boost }:
|
{ stdenv, fetchpatch, fetchFromGitHub, makeQtWrapper, qmakeHook, pkgconfig
|
||||||
|
, qtbase, qtsvg, qtserialport, boost, libgit2
|
||||||
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "0.9.0b";
|
|
||||||
name = "fritzing-${version}";
|
name = "fritzing-${version}";
|
||||||
|
version = "0.9.3b";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchFromGitHub {
|
||||||
url = "http://fritzing.org/download/${version}/source-tarball/fritzing-${version}.source.tar_1.bz2";
|
owner = "fritzing";
|
||||||
sha256 = "181qnknq1j5x075icpw2qk0sc4wcj9f2hym533vs936is0wxp2gk";
|
repo = "fritzing-app";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "0hpyc550xfhr6gmnc85nq60w00rm0ljm0y744dp0z88ikl04f4s3";
|
||||||
};
|
};
|
||||||
|
|
||||||
unpackPhase = ''
|
parts = fetchFromGitHub {
|
||||||
tar xjf ${src}
|
owner = "fritzing";
|
||||||
'';
|
repo = "fritzing-parts";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "1d2v8k7p176j0lczx4vx9n9gbg3vw09n2c4b6w0wj5wqmifywhc1";
|
||||||
|
};
|
||||||
|
|
||||||
buildInputs = [ qtbase qtsvg boost qmakeHook ];
|
patches = [(fetchpatch {
|
||||||
|
name = "0001-Squashed-commit-of-the-following.patch";
|
||||||
|
url = "https://aur.archlinux.org/cgit/aur.git/plain/0001-Squashed-commit-of-the-following.patch?h=fritzing";
|
||||||
|
sha256 = "1cv6myidxhy28i8m8v13ghzkvx5978p9dcd8v7885y0l1h3108mf";
|
||||||
|
})];
|
||||||
|
|
||||||
|
buildInputs = [ qtbase qtsvg qtserialport boost libgit2 ];
|
||||||
|
|
||||||
|
nativeBuildInputs = [ qmakeHook makeQtWrapper pkgconfig ];
|
||||||
|
|
||||||
qmakeFlags = [ "phoenix.pro" ];
|
qmakeFlags = [ "phoenix.pro" ];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
cd fritzing-${version}.source
|
ln -s "$parts" parts
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
wrapQtProgram $out/bin/Fritzing
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
|
|
@ -9,10 +9,11 @@ let
|
||||||
else
|
else
|
||||||
throw "Unsupported architecture";
|
throw "Unsupported architecture";
|
||||||
|
|
||||||
|
version = (builtins.parseDrvName edk2.name).version;
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation (edk2.setup "OvmfPkg/OvmfPkg${targetArch}.dsc" {
|
stdenv.mkDerivation (edk2.setup "OvmfPkg/OvmfPkg${targetArch}.dsc" {
|
||||||
name = "OVMF-2014-12-10";
|
name = "OVMF-${version}";
|
||||||
|
|
||||||
# TODO: properly include openssl for secureBoot
|
# TODO: properly include openssl for secureBoot
|
||||||
buildInputs = [nasm iasl] ++ stdenv.lib.optionals (secureBoot == true) [ openssl ];
|
buildInputs = [nasm iasl] ++ stdenv.lib.optionals (secureBoot == true) [ openssl ];
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
|
|
||||||
with stdenv.lib;
|
with stdenv.lib;
|
||||||
let
|
let
|
||||||
version = "2.8.0";
|
version = "2.9.0";
|
||||||
audio = optionalString (hasSuffix "linux" stdenv.system) "alsa,"
|
audio = optionalString (hasSuffix "linux" stdenv.system) "alsa,"
|
||||||
+ optionalString pulseSupport "pa,"
|
+ optionalString pulseSupport "pa,"
|
||||||
+ optionalString sdlSupport "sdl,";
|
+ optionalString sdlSupport "sdl,";
|
||||||
|
@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://wiki.qemu.org/download/qemu-${version}.tar.bz2";
|
url = "http://wiki.qemu.org/download/qemu-${version}.tar.bz2";
|
||||||
sha256 = "0qjy3rcrn89n42y5iz60kgr0rrl29hpnj8mq2yvbc1wrcizmvzfs";
|
sha256 = "053c7ivp3li7cdagzkp2wdc5myybzjf826r6qfkcf0xvn4bv5gq0";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs =
|
buildInputs =
|
||||||
|
@ -54,94 +54,8 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
patches = let
|
patches = [ ./no-etc-install.patch ]
|
||||||
upstreamPatch = name: commit: sha256: fetchurl {
|
++ optional nixosTestRunner ./force-uid0-on-9p.patch;
|
||||||
name = "${name}.patch";
|
|
||||||
url = "http://git.qemu-project.org/?p=qemu.git;a=patch;h=${commit}";
|
|
||||||
inherit sha256;
|
|
||||||
};
|
|
||||||
in [
|
|
||||||
./no-etc-install.patch
|
|
||||||
|
|
||||||
# bugfixes
|
|
||||||
(fetchurl {
|
|
||||||
name = "qemu-vnc-do-not-disconnect-on-EAGAIN.patch";
|
|
||||||
url = "https://anonscm.debian.org/cgit/pkg-qemu/qemu.git/plain/debian/patches/vnc-do-not-disconnect-on-EAGAIN.patch?h=debian/qemu_2.8%2bdfsg-3";
|
|
||||||
sha256 = "1nqhfgfw1pzhid094pk204qy36r6n7w1yilsiwabgcsyxs5bymnh";
|
|
||||||
})
|
|
||||||
|
|
||||||
(upstreamPatch "qemu-fix-win7-xhci" "7da76e12cc5cc902dda4c168d8d608fd4e61cbc5"
|
|
||||||
"0m1ggbxziy7vqz9007ypzg23cni8cc4db36wlnhxz0kdpq70c6x0")
|
|
||||||
|
|
||||||
(upstreamPatch "qemu-xhci-free-completed-transfers" "f94d18d6c6df388fde196d3ab252f57e33843a8b"
|
|
||||||
"0lk19qss6ky7cqnvis54742cr2z0vl8c64chhch0kp6n83hray9x")
|
|
||||||
|
|
||||||
# security fixes from debian
|
|
||||||
(fetchurl {
|
|
||||||
name = "CVE-2016-9602.patch";
|
|
||||||
url = "https://anonscm.debian.org/cgit/pkg-qemu/qemu.git/plain/debian/patches/9pfs-symlink-attack-fixes-CVE-2016-9602.patch?h=debian/qemu_2.8%2bdfsg-3";
|
|
||||||
sha256 = "0f7m1k3hbw9v0dwqn53ds36s7s334vlidvbn0682s9r2sq0sjlkv";
|
|
||||||
})
|
|
||||||
|
|
||||||
(fetchurl {
|
|
||||||
name = "CVE-2017-2630.patch";
|
|
||||||
url = "https://anonscm.debian.org/cgit/pkg-qemu/qemu.git/plain/debian/patches/nbd_client-fix-drop_sync-CVE-2017-2630.patch?h=debian/qemu_2.8%2bdfsg-3";
|
|
||||||
sha256 = "1gdxaari53iwgj3gyczz30rhg8lj6xqycxym4snw9z5vmkyj1bbq";
|
|
||||||
})
|
|
||||||
|
|
||||||
(fetchurl {
|
|
||||||
name = "CVE-2017-6058.patch";
|
|
||||||
url = "https://anonscm.debian.org/cgit/pkg-qemu/qemu.git/plain/debian/patches/vmxnet3-fix-memory-corruption-on-vlan-header-stripping-CVE-2017-6058.patch?h=debian/qemu_2.8%2bdfsg-3";
|
|
||||||
sha256 = "0w8az2cr116mnijxjd4aprl8dvfdj76gm7ddajmngdslxiax601f";
|
|
||||||
})
|
|
||||||
|
|
||||||
# security fixes from upstream
|
|
||||||
(upstreamPatch "CVE-2016-7907" "81f17e0d435c3db3a3e67e0d32ebf9c98973211f"
|
|
||||||
"0dzghbm3jmnyw34kd40a6akrr1cpizd9hdzqmhlc2ljab7pr1rcb")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2016-10155" "eb7a20a3616085d46aa6b4b4224e15587ec67e6e"
|
|
||||||
"1xk00fyls0hdza11dyfrnzcn6gibmmcrwy7sxgp6iizp6wgzi3vw")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-2615" "62d4c6bd5263bb8413a06c80144fc678df6dfb64"
|
|
||||||
"0miph2x4d474issa44hmc542zxmkc7lsr4ncb7pwarq6j7v52l8h")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-2620" "92f2b88cea48c6aeba8de568a45f2ed958f3c298"
|
|
||||||
"1kz12qmvfccy7xilsrxahbs67jycv4zjfbijxivadvx9klxs1n58")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-5525" "12351a91da97b414eec8cdb09f1d9f41e535a401"
|
|
||||||
"190b4aqr35p4lb3rjarknfi1ip1c9zizliqp1dd6frx4364y5yp2")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-5526" "069eb7b2b8fc47c7cb52e5a4af23ea98d939e3da"
|
|
||||||
"05xgzd3zldk3x2vqpjag9z5ilhdkpkyh633fb5kvnz8scns6v86f")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-5579" "8409dc884a201bf74b30a9d232b6bbdd00cb7e2b"
|
|
||||||
"0lbcyhif1kdcy8my0bv8aqr2f421kmljcch3plrjzj9pgcm4sv83")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-5667" "42922105beb14c2fc58185ea022b9f72fb5465e9"
|
|
||||||
"049vq70is3fj9bf4ysfj3s44iz93qhyqn6xijck32w1x6yyzqyx4")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-5667-fix" "913a87885f589d263e682c2eb6637c6e14538061"
|
|
||||||
"0nm1k2r9n6r86dvjr16hxak2vcsinj7ijlqw5i6f4y5h2sh37wr5")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-5856" "765a707000e838c30b18d712fe6cb3dd8e0435f3"
|
|
||||||
"03pjkn8l8rp9ip5h5rm1dp0nrwd43nmgpwamz4z1vy3rli1z3yjw")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-5857" "5e8e3c4c75c199aa1017db816fca02be2a9f8798"
|
|
||||||
"1kz14rmxf049zl5m27apzpbvy8dk0g47n9gnwy0nm70g65rl1dh8")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-5898" "c7dfbf322595ded4e70b626bf83158a9f3807c6a"
|
|
||||||
"1y2j0qw04s8fl0cs8i619y08kj75lxn3c0y19g710fzpk3rq8dvn")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-5931" "a08aaff811fb194950f79711d2afe5a892ae03a4"
|
|
||||||
"0hlih9jhbb1mb174hvxs7pf7lgcs7s9g705ri9rliw7wrhqdpja5")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-5973" "f89b60f6e5fee3923bedf80e82b4e5efc1bb156b"
|
|
||||||
"06niyighjxb4p5z2as3mqfmrwrzn4sq47j7raipbq9gnda7x9sw6")
|
|
||||||
|
|
||||||
(upstreamPatch "CVE-2017-5987" "6e86d90352adf6cb08295255220295cf23c4286e"
|
|
||||||
"09yfxf93cisx8rhm0h48ib1ibwfs420k5pqpz8dnz33nci9567jm")
|
|
||||||
|
|
||||||
] ++ optional nixosTestRunner ./force-uid0-on-9p.patch;
|
|
||||||
|
|
||||||
hardeningDisable = [ "stackprotector" ];
|
hardeningDisable = [ "stackprotector" ];
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,10 @@
|
||||||
--- a/Makefile
|
--- a/Makefile
|
||||||
+++ b/Makefile
|
+++ b/Makefile
|
||||||
@@ -418,7 +418,7 @@
|
@@ -597,7 +597,7 @@
|
||||||
|
|
||||||
|
|
||||||
install: all $(if $(BUILD_DOCS),install-doc) \
|
-install: all $(if $(BUILD_DOCS),install-doc) install-datadir install-localstatedir
|
||||||
-install-datadir install-localstatedir
|
+install: all $(if $(BUILD_DOCS),install-doc) install-datadir
|
||||||
+install-datadir
|
|
||||||
ifneq ($(TOOLS),)
|
ifneq ($(TOOLS),)
|
||||||
$(call install-prog,$(TOOLS),$(DESTDIR)$(bindir))
|
$(call install-prog,$(subst qemu-ga,qemu-ga$(EXESUF),$(TOOLS)),$(DESTDIR)$(bindir))
|
||||||
endif
|
endif
|
||||||
|
|
37
pkgs/data/fonts/emacs-all-the-icons-fonts/default.nix
Normal file
37
pkgs/data/fonts/emacs-all-the-icons-fonts/default.nix
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
{ stdenv, fetchFromGitHub }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "emacs-all-the-icons-fonts-${version}";
|
||||||
|
version = "2.50";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "domtronn";
|
||||||
|
repo = "all-the-icons.el";
|
||||||
|
rev = "2.5.0";
|
||||||
|
sha256 = "125qw96rzbkv39skxk5511jrcx9hxm0fqcmny6213wzswgdn37z3";
|
||||||
|
};
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/share/fonts/all-the-icons
|
||||||
|
for font in $src/fonts/*.ttf; do cp $font $out/share/fonts/all-the-icons; done
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Icon fonts for emacs all-the-icons";
|
||||||
|
longDescription = ''
|
||||||
|
The emacs package all-the-icons provides icons to improve
|
||||||
|
presentation of information in emacs. This package provides
|
||||||
|
the fonts needed to make the package work properly.
|
||||||
|
'';
|
||||||
|
homepage = https://github.com/domtronn/all-the-icons.el;
|
||||||
|
|
||||||
|
/*
|
||||||
|
The fonts come under a mixture of licenses - the MIT license,
|
||||||
|
SIL OFL license, and Apache license v2.0. See the GitHub page
|
||||||
|
for further information.
|
||||||
|
*/
|
||||||
|
license = licenses.free;
|
||||||
|
platforms = platforms.all;
|
||||||
|
maintainers = with maintainers; [ rlupton20 ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,16 +1,21 @@
|
||||||
{ stdenv, fetchurl, ncurses, readline }:
|
{ stdenv, fetchurl, ncurses, readline, autoreconfHook }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "hunspell-1.3.3";
|
version = "1.6.1";
|
||||||
|
name = "hunspell-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/hunspell/${name}.tar.gz";
|
url = "https://github.com/hunspell/hunspell/archive/v${version}.tar.gz";
|
||||||
sha256 = "0v14ff9s37vkh45diaddndcrj0hmn67arh8xh8k79q9c1vgc1cm7";
|
sha256 = "0j9c20sj7bgd6f77193g1ihy8w905byk2gdhdc0r9dsh7irr7x9h";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "bin" "dev" "out" "man" ];
|
outputs = [ "bin" "dev" "out" "man" ];
|
||||||
|
|
||||||
buildInputs = [ ncurses readline ];
|
buildInputs = [ ncurses readline ];
|
||||||
|
nativeBuildInputs = [ autoreconfHook ];
|
||||||
|
|
||||||
|
autoreconfFlags = "-vfi";
|
||||||
|
|
||||||
configureFlags = [ "--with-ui" "--with-readline" ];
|
configureFlags = [ "--with-ui" "--with-readline" ];
|
||||||
|
|
||||||
hardeningDisable = [ "format" ];
|
hardeningDisable = [ "format" ];
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
{ stdenv, fetchFromGitHub, qmakeHook, qtbase, pkgconfig, gtk2 }:
|
{ stdenv, fetchFromGitHub, qmakeHook, qtbase, pkgconfig, gtk2 }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "qtstyleplugins-2016-12-01";
|
name = "qtstyleplugins-2017-03-11";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "qt";
|
owner = "qt";
|
||||||
repo = "qtstyleplugins";
|
repo = "qtstyleplugins";
|
||||||
rev = "7aa47640c202cc4a9c16aa7df98191236743c8ba";
|
rev = "335dbece103e2cbf6c7cf819ab6672c2956b17b3";
|
||||||
sha256 = "0pysgn5yhbh85rv7syvf2w9g1gj1z1nwspjri39dc95vj108lin5";
|
sha256 = "085wyn85nrmzr8nv5zv7fi2kqf8rp1gnd30h72s30j55xvhmxvmy";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ qmakeHook pkgconfig gtk2 ];
|
buildInputs = [ qmakeHook pkgconfig gtk2 ];
|
||||||
|
@ -23,6 +23,5 @@ stdenv.mkDerivation rec {
|
||||||
license = licenses.lgpl21;
|
license = licenses.lgpl21;
|
||||||
maintainers = [ maintainers.gnidorah ];
|
maintainers = [ maintainers.gnidorah ];
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux;
|
||||||
broken = builtins.compareVersions qtbase.version "5.7.0" > 0;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,7 @@ stdenv.mkDerivation {
|
||||||
buildInputs = [ qtwebkit hunspell ];
|
buildInputs = [ qtwebkit hunspell ];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
sed -i "s,-lhunspell,-lhunspell-1.3," src/spellcheck/spellcheck.pri
|
sed -i "s,-lhunspell,-lhunspell-1.6," src/spellcheck/spellcheck.pri
|
||||||
sed -i "s,\$\$\[QT_INSTALL_PLUGINS\],$out/lib/qt5/plugins," src/src.pro
|
sed -i "s,\$\$\[QT_INSTALL_PLUGINS\],$out/lib/qt5/plugins," src/src.pro
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@ Node.js packages
|
||||||
===============
|
===============
|
||||||
To add a package from [NPM](https://www.npmjs.com/) to nixpkgs:
|
To add a package from [NPM](https://www.npmjs.com/) to nixpkgs:
|
||||||
|
|
||||||
1. Install node2nix: `nix-env -f '<nixpkgs>' -iA node2nix`.
|
1. Install node2nix: `nix-env -f '<nixpkgs>' -iA nodePackages.node2nix`.
|
||||||
2. Modify `pkgs/development/node-packages/node-packages.json`, to add, update,
|
2. Modify `pkgs/development/node-packages/node-packages.json`, to add, update,
|
||||||
or remove package entries.
|
or remove package entries.
|
||||||
3. Run the script: `cd pkgs/development/node-packages && sh generate.sh`.
|
3. Run the script: `cd pkgs/development/node-packages && sh generate.sh`.
|
||||||
|
|
57
pkgs/development/python-modules/pyspread/default.nix
Normal file
57
pkgs/development/python-modules/pyspread/default.nix
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
{ buildPythonPackage
|
||||||
|
, fetchPypi
|
||||||
|
, isPy3k
|
||||||
|
, stdenv
|
||||||
|
, numpy
|
||||||
|
, wxPython
|
||||||
|
, matplotlib
|
||||||
|
, pycairo
|
||||||
|
, python-gnupg
|
||||||
|
, xlrd
|
||||||
|
, xlwt
|
||||||
|
, jedi
|
||||||
|
, pyenchant
|
||||||
|
, basemap
|
||||||
|
, pygtk
|
||||||
|
, makeDesktopItem
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
pname = "pyspread";
|
||||||
|
version = "1.1";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "0m1a4zvzrfrnc42j8mrbm7747w03nzyl9z02wjagccmlhi6nd9hx";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ numpy wxPython matplotlib pycairo python-gnupg xlrd xlwt jedi pyenchant basemap pygtk ];
|
||||||
|
# Could also (optionally) add pyrsvg and python bindings for libvlc
|
||||||
|
|
||||||
|
# Tests try to access X Display
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
disabled = isPy3k;
|
||||||
|
|
||||||
|
desktopItem = makeDesktopItem rec {
|
||||||
|
name = pname;
|
||||||
|
exec = name;
|
||||||
|
icon = name;
|
||||||
|
desktopName = "Pyspread";
|
||||||
|
genericName = "Spreadsheet";
|
||||||
|
comment = meta.description;
|
||||||
|
categories = "Development;Spreadsheet;";
|
||||||
|
};
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
mkdir -p $out/share/applications
|
||||||
|
cp $desktopItem/share/applications/* $out/share/applications
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Pyspread is a non-traditional spreadsheet application that is based on and written in the programming language Python";
|
||||||
|
homepage = https://manns.github.io/pyspread/;
|
||||||
|
license = licenses.gpl3;
|
||||||
|
};
|
||||||
|
}
|
|
@ -12,6 +12,8 @@
|
||||||
, isPy3k
|
, isPy3k
|
||||||
, isPyPy
|
, isPyPy
|
||||||
, python
|
, python
|
||||||
|
, cairo
|
||||||
|
, pango
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert wxGTK.unicode;
|
assert wxGTK.unicode;
|
||||||
|
@ -43,6 +45,15 @@ buildPythonPackage rec {
|
||||||
# this check is supposed to only return false on older systems running non-framework python
|
# this check is supposed to only return false on older systems running non-framework python
|
||||||
substituteInPlace src/osx_cocoa/_core_wrap.cpp \
|
substituteInPlace src/osx_cocoa/_core_wrap.cpp \
|
||||||
--replace "return wxPyTestDisplayAvailable();" "return true;"
|
--replace "return wxPyTestDisplayAvailable();" "return true;"
|
||||||
|
'' + lib.optionalString (!stdenv.isDarwin) ''
|
||||||
|
substituteInPlace wx/lib/wxcairo.py \
|
||||||
|
--replace 'cairoLib = None' 'cairoLib = ctypes.CDLL("${cairo}/lib/libcairo.so")'
|
||||||
|
substituteInPlace wx/lib/wxcairo.py \
|
||||||
|
--replace '_dlls = dict()' '_dlls = {k: ctypes.CDLL(v) for k, v in [
|
||||||
|
("gdk", "${wxGTK.gtk}/lib/libgtk-x11-2.0.so"),
|
||||||
|
("pangocairo", "${pango.out}/lib/libpangocairo-1.0.so"),
|
||||||
|
("appsvc", None)
|
||||||
|
]}'
|
||||||
'';
|
'';
|
||||||
|
|
||||||
NIX_LDFLAGS = lib.optionalString (!stdenv.isDarwin) "-lX11 -lgdk-x11-2.0";
|
NIX_LDFLAGS = lib.optionalString (!stdenv.isDarwin) "-lX11 -lgdk-x11-2.0";
|
||||||
|
|
|
@ -5,9 +5,9 @@ buildRubyGem rec {
|
||||||
|
|
||||||
name = "${gemName}-${version}";
|
name = "${gemName}-${version}";
|
||||||
gemName = "bundix";
|
gemName = "bundix";
|
||||||
version = "2.0.8";
|
version = "2.1.0";
|
||||||
|
|
||||||
sha256 = "0ikpf2g01izadjpdnc4k2rb9v4g11f1jk2y5alxc7n7rxjkwdc66";
|
sha256 = "5a073c59dfc7e2367c47e6513fc8914d27e11c08f82bc1103c4793dfb2837bef";
|
||||||
|
|
||||||
buildInputs = [bundler];
|
buildInputs = [bundler];
|
||||||
|
|
||||||
|
|
|
@ -1,16 +1,16 @@
|
||||||
{ lib, buildGoPackage, fetchFromGitLab, fetchurl, go-bindata }:
|
{ lib, buildGoPackage, fetchFromGitLab, fetchurl, go-bindata }:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "9.0.0";
|
version = "9.1.0";
|
||||||
# Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
|
# Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
|
||||||
docker_x86_64 = fetchurl {
|
docker_x86_64 = fetchurl {
|
||||||
url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-x86_64.tar.xz";
|
url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-x86_64.tar.xz";
|
||||||
sha256 = "1f170akb7j7imgr18m32fy6v3rk98inrjl5a4xymfpivwwqyv9p8";
|
sha256 = "1mdcw755fygnf30v0gr13mx20zjqmxg5w2kj3k2jgcsh3gyrvymr";
|
||||||
};
|
};
|
||||||
|
|
||||||
docker_arm = fetchurl {
|
docker_arm = fetchurl {
|
||||||
url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-arm.tar.xz";
|
url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-arm.tar.xz";
|
||||||
sha256 = "15mlix8j7bqjg5y07c439d7s197c16zxffknx42z1i3qxcz2mpa4";
|
sha256 = "1m5p6mlhy3xf0chrjlfpdyp24pv32b61s8iryh6a617i91vpzjg6";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
buildGoPackage rec {
|
buildGoPackage rec {
|
||||||
|
@ -29,7 +29,7 @@ buildGoPackage rec {
|
||||||
owner = "gitlab-org";
|
owner = "gitlab-org";
|
||||||
repo = "gitlab-ci-multi-runner";
|
repo = "gitlab-ci-multi-runner";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1csha30lcwm1mk6hqbh0j8bb25apyni23szw79l8xjhmiw2ch619";
|
sha256 = "0n8hcj2b1pb95x4bd7fb9ri43vgc4h2dj2v3iiziw2imqjyphfx4";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ go-bindata ];
|
buildInputs = [ go-bindata ];
|
||||||
|
|
|
@ -1,16 +1,16 @@
|
||||||
{ lib, buildGoPackage, fetchFromGitLab, fetchurl, go-bindata }:
|
{ lib, buildGoPackage, fetchFromGitLab, fetchurl, go-bindata }:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "1.11.1";
|
version = "1.11.2";
|
||||||
# Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
|
# Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
|
||||||
docker_x86_64 = fetchurl {
|
docker_x86_64 = fetchurl {
|
||||||
url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-x86_64.tar.xz";
|
url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-x86_64.tar.xz";
|
||||||
sha256 = "1fahwvwdli6glxsljrd030x15y18jwk72lg1xmrgms409r9y308m";
|
sha256 = "08lacd2p7915y7yjnwkj2k0b0x4qj9kc53p7qgvmq8kdi31xnh4z";
|
||||||
};
|
};
|
||||||
|
|
||||||
docker_arm = fetchurl {
|
docker_arm = fetchurl {
|
||||||
url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-arm.tar.xz";
|
url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-arm.tar.xz";
|
||||||
sha256 = "0nqda27qcb6r1p2xc2973g08fwb8cnmyc9rswy6776r8ypagn2zw";
|
sha256 = "0lzvx3jfy8493q8zkbs7kgm5a3jgsi3f2x25jwg4lx7agcwwsygw";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
buildGoPackage rec {
|
buildGoPackage rec {
|
||||||
|
@ -29,7 +29,7 @@ buildGoPackage rec {
|
||||||
owner = "gitlab-org";
|
owner = "gitlab-org";
|
||||||
repo = "gitlab-ci-multi-runner";
|
repo = "gitlab-ci-multi-runner";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0ix00p9f01fg8m6p3b1c20hqrcv7pivh6hq92pb9qyiyzmcfap47";
|
sha256 = "1sjvlb5981ykc8hr4kp1ibh9jw2wdjjp9zs2nqs9lpsav4nda5fr";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ go-bindata ];
|
buildInputs = [ go-bindata ];
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
- -llua5.1 \
|
- -llua5.1 \
|
||||||
- -lhunspell \
|
- -lhunspell \
|
||||||
+ -llua \
|
+ -llua \
|
||||||
+ -lhunspell-1.3 \
|
+ -lhunspell-1.6 \
|
||||||
-L/usr/local/lib/ \
|
-L/usr/local/lib/ \
|
||||||
-lyajl \
|
-lyajl \
|
||||||
-lGLU \
|
-lGLU \
|
||||||
|
|
|
@ -3,7 +3,6 @@ stdenv.mkDerivation rec {
|
||||||
name = "quakespasm-${version}";
|
name = "quakespasm-${version}";
|
||||||
majorVersion = "0.92";
|
majorVersion = "0.92";
|
||||||
version = "${majorVersion}.1";
|
version = "${majorVersion}.1";
|
||||||
platform = "amd64";
|
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/quakespasm/quakespasm-${version}.tgz";
|
url = "mirror://sourceforge/quakespasm/quakespasm-${version}.tgz";
|
||||||
|
@ -20,11 +19,9 @@ stdenv.mkDerivation rec {
|
||||||
mkdir -p "$out/bin"
|
mkdir -p "$out/bin"
|
||||||
substituteInPlace Makefile --replace "/usr/local/games" "$out/bin"
|
substituteInPlace Makefile --replace "/usr/local/games" "$out/bin"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
platforms = ["x86_64-linux"];
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "An engine for iD software's Quake";
|
description = "An engine for iD software's Quake";
|
||||||
homepage = "http://quakespasm.sourceforge.net/";
|
homepage = "http://quakespasm.sourceforge.net/";
|
||||||
|
@ -36,6 +33,8 @@ stdenv.mkDerivation rec {
|
||||||
works best for you. SDL is probably less buggy, but SDL2 has nicer features
|
works best for you. SDL is probably less buggy, but SDL2 has nicer features
|
||||||
and smoother mouse input - though no CD support.
|
and smoother mouse input - though no CD support.
|
||||||
'';
|
'';
|
||||||
platforms = platforms.linux;
|
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
maintainers = [ stdenv.lib.maintainers.m3tti ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,6 +31,7 @@ in rec {
|
||||||
};
|
};
|
||||||
|
|
||||||
unstable = fetchurl rec {
|
unstable = fetchurl rec {
|
||||||
|
# NOTE: Don't forget to change the SHA256 for staging as well.
|
||||||
version = "2.6";
|
version = "2.6";
|
||||||
url = "https://dl.winehq.org/wine/source/2.x/wine-${version}.tar.xz";
|
url = "https://dl.winehq.org/wine/source/2.x/wine-${version}.tar.xz";
|
||||||
sha256 = "1h5ajw50fax2pg9p4wch6824zxdd85g2gh9nkbllfxj3ixsn9zz6";
|
sha256 = "1h5ajw50fax2pg9p4wch6824zxdd85g2gh9nkbllfxj3ixsn9zz6";
|
||||||
|
@ -39,7 +40,7 @@ in rec {
|
||||||
|
|
||||||
staging = fetchFromGitHub rec {
|
staging = fetchFromGitHub rec {
|
||||||
inherit (unstable) version;
|
inherit (unstable) version;
|
||||||
sha256 = "1l0sjbsajr4m7w3ar2ljwr3ffmwyv57g85a068ard3v8fv4nil22";
|
sha256 = "1j1fsq7pb7rxi7ppagrk93gmg5wk3anr9js0civxiqd3h8d4lsz2";
|
||||||
owner = "wine-compholio";
|
owner = "wine-compholio";
|
||||||
repo = "wine-staging";
|
repo = "wine-staging";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -33,6 +33,7 @@
|
||||||
"github:bbchung/clighter8"
|
"github:bbchung/clighter8"
|
||||||
"github:benekastah/neomake"
|
"github:benekastah/neomake"
|
||||||
"github:bitc/vim-hdevtools"
|
"github:bitc/vim-hdevtools"
|
||||||
|
"github:bronson/vim-trailing-whitespace"
|
||||||
"github:christoomey/vim-sort-motion"
|
"github:christoomey/vim-sort-motion"
|
||||||
"github:christoomey/vim-tmux-navigator"
|
"github:christoomey/vim-tmux-navigator"
|
||||||
"github:ctjhoa/spacevim"
|
"github:ctjhoa/spacevim"
|
||||||
|
@ -40,6 +41,7 @@
|
||||||
"github:derekelkins/agda-vim"
|
"github:derekelkins/agda-vim"
|
||||||
"github:derekwyatt/vim-scala"
|
"github:derekwyatt/vim-scala"
|
||||||
"github:digitaltoad/vim-jade"
|
"github:digitaltoad/vim-jade"
|
||||||
|
"github:dleonard0/pony-vim-syntax"
|
||||||
"github:dracula/vim"
|
"github:dracula/vim"
|
||||||
"github:eagletmt/neco-ghc"
|
"github:eagletmt/neco-ghc"
|
||||||
"github:eikenb/acp"
|
"github:eikenb/acp"
|
||||||
|
|
|
@ -123,7 +123,7 @@ in
|
||||||
# to be adapted
|
# to be adapted
|
||||||
zfsStable = common {
|
zfsStable = common {
|
||||||
# comment/uncomment if breaking kernel versions are known
|
# comment/uncomment if breaking kernel versions are known
|
||||||
incompatibleKernelVersion = "4.10";
|
incompatibleKernelVersion = "4.11";
|
||||||
|
|
||||||
version = "0.6.5.9";
|
version = "0.6.5.9";
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ with lib;
|
||||||
|
|
||||||
buildGoPackage rec {
|
buildGoPackage rec {
|
||||||
name = "etcd-${version}";
|
name = "etcd-${version}";
|
||||||
version = "3.0.6"; # After updating check that nixos tests pass
|
version = "3.1.6"; # After updating check that nixos tests pass
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
|
|
||||||
goPackagePath = "github.com/coreos/etcd";
|
goPackagePath = "github.com/coreos/etcd";
|
||||||
|
@ -13,10 +13,16 @@ buildGoPackage rec {
|
||||||
inherit rev;
|
inherit rev;
|
||||||
owner = "coreos";
|
owner = "coreos";
|
||||||
repo = "etcd";
|
repo = "etcd";
|
||||||
sha256 = "163qji360y21nr1wnl16nbvvgdgqgbny4c3v3igp87q9p78sdf75";
|
sha256 = "1qgi6zxnijzr644w2da2gbn3gw2qwk6a3z3qmdln0r2rjnm70sx0";
|
||||||
};
|
};
|
||||||
|
|
||||||
goDeps = ./deps.nix;
|
subPackages = [
|
||||||
|
"cmd/etcd"
|
||||||
|
"cmd/etcdctl"
|
||||||
|
"cmd/tools/benchmark"
|
||||||
|
"cmd/tools/etcd-dump-db"
|
||||||
|
"cmd/tools/etcd-dump-logs"
|
||||||
|
];
|
||||||
|
|
||||||
buildInputs = [ libpcap ];
|
buildInputs = [ libpcap ];
|
||||||
|
|
||||||
|
|
|
@ -1,335 +0,0 @@
|
||||||
[
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/beorn7/perks";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/beorn7/perks";
|
|
||||||
rev = "4c0e84591b9aa9e6dcfdf3e020114cd81f89d5f9";
|
|
||||||
sha256 = "1hrybsql68xw57brzj805xx2mghydpdiysv3gbhr7f5wlxj2514y";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/boltdb/bolt";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/boltdb/bolt";
|
|
||||||
rev = "583e8937c61f1af6513608ccc75c97b6abdf4ff9";
|
|
||||||
sha256 = "0cp5v9iypg9ysiq40k3h3lg7aisxplnmxshha7nama6b170izyay";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/cloudfoundry-incubator/candiedyaml";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/cloudfoundry-incubator/candiedyaml";
|
|
||||||
rev = "99c3df83b51532e3615f851d8c2dbb638f5313bf";
|
|
||||||
sha256 = "106nibg7423642gbkg88c5x2jxfz6nmxbribhwb8cr1rn9vpjaxs";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/cockroachdb/cmux";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/cockroachdb/cmux";
|
|
||||||
rev = "b64f5908f4945f4b11ed4a0a9d3cc1e23350866d";
|
|
||||||
sha256 = "1by4f3x7j3r3z1sdx1v04r494hn6jaag7lc03prrgx455j8i0jlh";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/coreos/etcd";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/coreos/etcd.git";
|
|
||||||
rev = "9efa00d1030d4bf62eb8e5ec130023aeb1b8e2d0";
|
|
||||||
sha256 = "163qji360y21nr1wnl16nbvvgdgqgbny4c3v3igp87q9p78sdf75";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/coreos/go-semver";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/coreos/go-semver";
|
|
||||||
rev = "8ab6407b697782a06568d4b7f1db25550ec2e4c6";
|
|
||||||
sha256 = "1gghi5bnqj50hfxhqc1cxmynqmh2yk9ii7ab9gsm75y5cp94ymk0";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/coreos/go-systemd";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/coreos/go-systemd";
|
|
||||||
rev = "5c49e4850c879a0ddc061e8f4adcf307de8a8bc2";
|
|
||||||
sha256 = "1w16bnrgfjb5rwha7g8rdjhpgjf8bzmlzhrda5bfvc9ymj3qjibk";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/coreos/pkg";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/coreos/pkg";
|
|
||||||
rev = "3ac0863d7acf3bc44daf49afef8919af12f704ef";
|
|
||||||
sha256 = "0l5ans1ls2gknkrnhymgc0zbgg5nqjbjbqc51r611adcr0m6gg8l";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/ghodss/yaml";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/ghodss/yaml";
|
|
||||||
rev = "aa0c862057666179de291b67d9f093d12b5a8473";
|
|
||||||
sha256 = "0cbc78n8l7h1gdzhrvahplcvr4v7n8v23vkgskfp843rcx5h6isr";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/gogo/protobuf";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/gogo/protobuf";
|
|
||||||
rev = "f20a1444730c7d9949b880a0309e737d007def25";
|
|
||||||
sha256 = "12wa3r2cb2v1m65phbkh692ldlklk459z4x6avpc6im0zkr6r73c";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/golang/protobuf";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/golang/protobuf";
|
|
||||||
rev = "f592bd283e9ef86337a432eb50e592278c3d534d";
|
|
||||||
sha256 = "01gxhzn9m6jz6ihwxfycnx39zf5pmkan61l278cnynsb8mibdpvb";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/google/btree";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/google/btree";
|
|
||||||
rev = "7d79101e329e5a3adf994758c578dab82b90c017";
|
|
||||||
sha256 = "1c1hsy5s2pfawg3l9954jmqmy4yc2zp3f7i87m00km2yqgb8xpd0";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/grpc-ecosystem/grpc-gateway";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/grpc-ecosystem/grpc-gateway";
|
|
||||||
rev = "5e0e028ba0a015710eaebf6e47af18812c9f2767";
|
|
||||||
sha256 = "00s4wxzs6lz5al7y2hxi6r4bxhx5b0ajk5rwxrnb4a4mhlaii8pk";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/jonboulle/clockwork";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/jonboulle/clockwork";
|
|
||||||
rev = "e3653ace2d63753697e0e5b07b9393971c0bba9d";
|
|
||||||
sha256 = "1avzqhks12a8x2yzpvjsf3k0gv9cy7zx2z88hn0scacnxkphisvc";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/matttproud/golang_protobuf_extensions";
|
|
||||||
rev = "c12348ce28de40eed0136aa2b644d0ee0650e56c";
|
|
||||||
sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/prometheus/client_golang";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/prometheus/client_golang";
|
|
||||||
rev = "c5b7fccd204277076155f10851dad72b76a49317";
|
|
||||||
sha256 = "1xqny3147g12n4j03kxm8s9mvdbs3ln6i56c655mybrn9jjy48kd";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/prometheus/client_model";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/prometheus/client_model";
|
|
||||||
rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
|
|
||||||
sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/prometheus/common";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/prometheus/common";
|
|
||||||
rev = "ebdfc6da46522d58825777cf1f90490a5b1ef1d8";
|
|
||||||
sha256 = "0js62pj8600773wx6labpd772yyhz5ivim7dnl7b862wblbmc8mq";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/prometheus/procfs";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/prometheus/procfs";
|
|
||||||
rev = "abf152e5f3e97f2fafac028d2cc06c1feb87ffa5";
|
|
||||||
sha256 = "0cp8lznv1b4zhi3wnbjkfxwzhkqd3wbmiy6mwgjanip8l9l3ykws";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/spf13/cobra";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/spf13/cobra";
|
|
||||||
rev = "7c674d9e72017ed25f6d2b5e497a1368086b6a6f";
|
|
||||||
sha256 = "0an935r7lc11a744mvdrsy56rs2w0ah3gdclvr4gzd5iqr9ap3dr";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/spf13/pflag";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/spf13/pflag";
|
|
||||||
rev = "6454a84b6da0ea8b628d5d8a26759f62c6c161b4";
|
|
||||||
sha256 = "06rfi73jhkncn8gxy6klgmba5947k9gpwdswipdpz680yxczcwna";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/ugorji/go";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/ugorji/go";
|
|
||||||
rev = "4a1cb5252a6951f715a85d0e4be334c2a2dbf2a2";
|
|
||||||
sha256 = "0izpijk3piihl4fnqg8ncnp5ivbq41pg3xf7iagg4fbg5id4pxbx";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/xiang90/probing";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/xiang90/probing";
|
|
||||||
rev = "07dd2e8dfe18522e9c447ba95f2fe95262f63bb2";
|
|
||||||
sha256 = "0r8rq27yigz72mk8z7p61yjfan8id021dnp1v421ln9byzpvabn2";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "golang.org/x/crypto";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://go.googlesource.com/crypto";
|
|
||||||
rev = "88d0005bf4c3ec17306ecaca4281a8d8efd73e91";
|
|
||||||
sha256 = "1d3x0rwfd4cml06ka8gy74wxrw94m2z7qgz6ky0rgmxcr7p5iikz";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "golang.org/x/net";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://go.googlesource.com/net";
|
|
||||||
rev = "7394c112eae4dba7e96bfcfe738e6373d61772b4";
|
|
||||||
sha256 = "1p8wsxnbsp2lq6hbza2n0zgv4sgpxzzjjlrmcngkhxj47kp3hin7";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "google.golang.org/grpc";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/grpc/grpc-go";
|
|
||||||
rev = "0032a855ba5c8a3c8e0d71c2deef354b70af1584";
|
|
||||||
sha256 = "0qkynp65jwk6jk932k7kwxs5v6fzlfsb1fay71a00dwr36f44s67";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/urfave/cli";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/urfave/cli";
|
|
||||||
rev = "168c95418e66e019fe17b8f4f5c45aa62ff80e23";
|
|
||||||
sha256 = "1gdvvim2f1zigcmbpcgypgn7nvpnlr87grbg7lw13fbpy6fnlw2n";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/mattn/go-runewidth";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/mattn/go-runewidth";
|
|
||||||
rev = "d6bea18f789704b5f83375793155289da36a3c7f";
|
|
||||||
sha256 = "1hnigpn7rjbwd1ircxkyx9hvi0xmxr32b2jdy2jzw6b3jmcnz1fs";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/olekukonko/tablewriter";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/olekukonko/tablewriter";
|
|
||||||
rev = "daf2955e742cf123959884fdff4685aa79b63135";
|
|
||||||
sha256 = "1fvl251ms7qmzfbi853kdgghqkrmyy6n1605mfy50nhgvw03z203";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/dustin/go-humanize";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/dustin/go-humanize";
|
|
||||||
rev = "2fcb5204cdc65b4bec9fd0a87606bb0d0e3c54e8";
|
|
||||||
sha256 = "1m2qgn5vh5m66ggmclgikvwc05np2r7sxgpvlj2jip5d61x29j5k";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/bgentry/speakeasy";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/bgentry/speakeasy";
|
|
||||||
rev = "a1ccbf2c40dfc8ce514b5c5c6e6d1429ea6880da";
|
|
||||||
sha256 = "0xqpc1qhdcs5blp1mkrppfb1x0rcv4a445mj0yzdwshbzkw5di01";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/kr/pty";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/kr/pty";
|
|
||||||
rev = "ce7fa45920dc37a92de8377972e52bc55ffa8d57";
|
|
||||||
sha256 = "0mdlr2mmwjznw2id0l4200xjajq9dh1kxn3z7d3ksn0b5fwinzmk";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/golang/groupcache";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/golang/groupcache";
|
|
||||||
rev = "a6b377e3400b08991b80d6805d627f347f983866";
|
|
||||||
sha256 = "125a6zdaxj916yp2rlrkg8xw00vjf5ga9xwdg4clby8wj4fysma2";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "gopkg.in/cheggaaa/pb.v1";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://gopkg.in/cheggaaa/pb.v1";
|
|
||||||
rev = "9453b2db37f4d8bc63751daca63bbe7049eb5e74";
|
|
||||||
sha256 = "0py7dxvm3ydxcw260x7r7xbjww1vkil3rhyy3f9njmjydyb303rb";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/golang/glog";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/golang/glog";
|
|
||||||
rev = "23def4e6c14b4da8ac2ed8007337bc5eb5007998";
|
|
||||||
sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/spacejam/loghisto";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/spacejam/loghisto";
|
|
||||||
rev = "9d1d8c1fd2a4ac852bf2e312f2379f553345fda7";
|
|
||||||
sha256 = "0r31y4ci35pp11wqdyarimdq5a703byk3cf6d67adsa4nw0ysfm1";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
goPackagePath = "github.com/akrennmair/gopcap";
|
|
||||||
fetch = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://github.com/akrennmair/gopcap";
|
|
||||||
rev = "00e11033259acb75598ba416495bb708d864a010";
|
|
||||||
sha256 = "0xfw7x5a36w0g76imjvgk055360xg0nva42qhmflfvll7ldxq96a";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
]
|
|
|
@ -1,5 +1,35 @@
|
||||||
{ stdenv, fetchurl, perl }:
|
{ stdenv, buildEnv, fetchurl, perl, perlPackages, makeWrapper }:
|
||||||
|
|
||||||
|
# This package isn't extremely useful as it is, but is getting close.
|
||||||
|
# After running:
|
||||||
|
#
|
||||||
|
# nix-build . -A rt
|
||||||
|
#
|
||||||
|
# I created a config file named myconfig.pm with:
|
||||||
|
#
|
||||||
|
# use utf8;
|
||||||
|
# Set($rtname, '127.0.0.1');
|
||||||
|
# # These dirs need to be pre-created:
|
||||||
|
# Set($MasonSessionDir, '/home/grahamc/foo/sessiondir/');
|
||||||
|
# Set($MasonDataDir, '/home/grahamc/foo/localstate/');
|
||||||
|
# Set($WebPort, 8080);
|
||||||
|
#
|
||||||
|
# Set($DatabaseType, "SQLite");
|
||||||
|
# Set( $DatabaseName, '/home/grahamc/projects/foo/my.db' );
|
||||||
|
#
|
||||||
|
# 1;
|
||||||
|
#
|
||||||
|
# and ran
|
||||||
|
#
|
||||||
|
# RT_SITE_CONFIG=$(pwd)/myconfig.pm ./result/bin/rt-setup-database --action init
|
||||||
|
#
|
||||||
|
# Then:
|
||||||
|
#
|
||||||
|
# RT_SITE_CONFIG=$(pwd)/myconfig.pm ./result/bin/rt-server
|
||||||
|
#
|
||||||
|
# Make sure to check out result/etc/RT_Config.pm
|
||||||
|
#
|
||||||
|
# Good luck.
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "rt-${version}";
|
name = "rt-${version}";
|
||||||
|
|
||||||
|
@ -12,14 +42,58 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
patches = [ ./override-generated.patch ];
|
patches = [ ./override-generated.patch ];
|
||||||
|
|
||||||
buildInputs = [ perl ];
|
buildInputs = [
|
||||||
|
makeWrapper
|
||||||
|
perl
|
||||||
|
(buildEnv {
|
||||||
|
name = "rt-perl-deps";
|
||||||
|
paths = (with perlPackages; [
|
||||||
|
ApacheSession BusinessHours CGIEmulatePSGI CGIPSGI
|
||||||
|
CSSMinifierXP CSSSquish ConvertColor CryptEksblowfish
|
||||||
|
CryptSSLeay DBDSQLite DBDmysql DBIxSearchBuilder DataGUID
|
||||||
|
DataICal DataPagePageset DateExtract DateManip
|
||||||
|
DateTimeFormatNatural DevelGlobalDestruction EmailAddress
|
||||||
|
EmailAddressList FCGI FCGIProcManager FileShareDir FileWhich
|
||||||
|
GD GDGraph GnuPGInterface GraphViz HTMLFormatTextWithLinks
|
||||||
|
HTMLFormatTextWithLinksAndTables HTMLMason
|
||||||
|
HTMLMasonPSGIHandler HTMLQuoted HTMLRewriteAttributes
|
||||||
|
HTMLScrubber IPCRun IPCRun3 JSON JavaScriptMinifierXS LWP
|
||||||
|
LWPProtocolHttps LocaleMaketextFuzzy LocaleMaketextLexicon
|
||||||
|
LogDispatch MIMETools MIMETypes MailTools ModuleRefresh
|
||||||
|
ModuleVersionsReport MozillaCA NetCIDR NetIP PerlIOeol Plack
|
||||||
|
RegexpCommon RegexpCommonnetCIDR RegexpIPv6 RoleBasic
|
||||||
|
ScopeUpper Starlet SymbolGlobalName TermReadKey
|
||||||
|
TextPasswordPronounceable TextQuoted TextTemplate
|
||||||
|
TextWikiFormat TextWrapper TimeParseDate TreeSimple
|
||||||
|
UNIVERSALrequire XMLRSS
|
||||||
|
]);
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
dontBuild = true;
|
preConfigure = ''
|
||||||
|
configureFlags="$configureFlags --with-web-user=$UID"
|
||||||
|
configureFlags="$configureFlags --with-web-group=$(id -g)"
|
||||||
|
configureFlags="$configureFlags --with-rt-group=$(id -g)"
|
||||||
|
configureFlags="$configureFlags --with-bin-owner=$UID"
|
||||||
|
configureFlags="$configureFlags --with-libs-owner=$UID"
|
||||||
|
configureFlags="$configureFlags --with-libs-group=$(id -g)"
|
||||||
|
'';
|
||||||
|
configureFlags = [
|
||||||
|
"--enable-graphviz"
|
||||||
|
"--enable-gd"
|
||||||
|
"--enable-gpg"
|
||||||
|
"--with-db-type=SQLite"
|
||||||
|
];
|
||||||
|
|
||||||
installPhase = ''
|
buildPhase = ''
|
||||||
mkdir $out
|
make testdeps | grep -i missing | sort
|
||||||
cp -a {bin,docs,etc,lib,sbin,share} $out
|
'';
|
||||||
find $out -name '*.in' -exec rm '{}' \;
|
|
||||||
|
preFixup = ''
|
||||||
|
for i in $(find $out/bin -type f; find $out/sbin -type f); do
|
||||||
|
wrapProgram $i \
|
||||||
|
--prefix PERL5LIB ':' $PERL5LIB
|
||||||
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
|
|
@ -1,33 +1,22 @@
|
||||||
{ stdenv, fetchurl, groff }:
|
{ stdenv, fetchurl }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "mksh-${version}";
|
name = "mksh-${version}";
|
||||||
version = "52c";
|
version = "55";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
urls = [
|
urls = [
|
||||||
"http://www.mirbsd.org/MirOS/dist/mir/mksh/mksh-R${version}.tgz"
|
"http://www.mirbsd.org/MirOS/dist/mir/mksh/mksh-R${version}.tgz"
|
||||||
"http://pub.allbsd.org/MirOS/dist/mir/mksh/mksh-R${version}.tgz"
|
"http://pub.allbsd.org/MirOS/dist/mir/mksh/mksh-R${version}.tgz"
|
||||||
];
|
];
|
||||||
sha256 = "19ivsic15903hv3ipzk0kvkaxardw7b99s8l5iw3y415lz71ld66";
|
sha256 = "0mssqd2wp3cs9x01v6g66iy3ymdxagbyw2c0v597vnc1l6s2rm6f";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ groff ];
|
buildPhase = ''sh ./Build.sh -r -c lto'';
|
||||||
|
|
||||||
hardeningDisable = [ "format" ];
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
mkdir build-dir/
|
|
||||||
cp mksh.1 dot.mkshrc build-dir/
|
|
||||||
cd build-dir/
|
|
||||||
sh ../Build.sh -c lto
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/bin $out/share/man/man1 $out/share/mksh $out/bin
|
|
||||||
install -D -m 755 mksh $out/bin/mksh
|
install -D -m 755 mksh $out/bin/mksh
|
||||||
install -D -m 644 mksh.1 $out/share/man/man1/mksh.1
|
install -D -m 644 mksh.1 $out/share/man/man1/mksh.1
|
||||||
install -D -m 644 mksh.cat1 $out/share/mksh/mksh.cat1
|
|
||||||
install -D -m 644 dot.mkshrc $out/share/mksh/mkshrc
|
install -D -m 644 dot.mkshrc $out/share/mksh/mkshrc
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -41,8 +30,8 @@ stdenv.mkDerivation rec {
|
||||||
systems.
|
systems.
|
||||||
'';
|
'';
|
||||||
homepage = "https://www.mirbsd.org/mksh.htm";
|
homepage = "https://www.mirbsd.org/mksh.htm";
|
||||||
license = licenses.free;
|
license = licenses.bsd3;
|
||||||
maintainers = with maintainers; [ AndersonTorres nckx ];
|
maintainers = with maintainers; [ AndersonTorres nckx joachifm ];
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -41,6 +41,35 @@
|
||||||
# other words, this does a foldr not foldl.
|
# other words, this does a foldr not foldl.
|
||||||
stageFuns: let
|
stageFuns: let
|
||||||
|
|
||||||
|
/* "dfold" a ternary function `op' between successive elements of `list' as if
|
||||||
|
it was a doubly-linked list with `lnul' and `rnul` base cases at either
|
||||||
|
end. In precise terms, `fold op lnul rnul [x_0 x_1 x_2 ... x_n-1]` is the
|
||||||
|
same as
|
||||||
|
|
||||||
|
let
|
||||||
|
f_-1 = lnul;
|
||||||
|
f_0 = op f_-1 x_0 f_1;
|
||||||
|
f_1 = op f_0 x_1 f_2;
|
||||||
|
f_2 = op f_1 x_2 f_3;
|
||||||
|
...
|
||||||
|
f_n = op f_n-1 x_n f_n+1;
|
||||||
|
f_n+1 = rnul;
|
||||||
|
in
|
||||||
|
f_0
|
||||||
|
*/
|
||||||
|
dfold = op: lnul: rnul: list:
|
||||||
|
let
|
||||||
|
len = builtins.length list;
|
||||||
|
go = pred: n:
|
||||||
|
if n == len
|
||||||
|
then rnul
|
||||||
|
else let
|
||||||
|
# Note the cycle -- call-by-need ensures finite fold.
|
||||||
|
cur = op pred (builtins.elemAt list n) succ;
|
||||||
|
succ = go cur (n + 1);
|
||||||
|
in cur;
|
||||||
|
in go lnul 0;
|
||||||
|
|
||||||
# Take the list and disallow custom overrides in all but the final stage,
|
# Take the list and disallow custom overrides in all but the final stage,
|
||||||
# and allow it in the final flag. Only defaults this boolean field if it
|
# and allow it in the final flag. Only defaults this boolean field if it
|
||||||
# isn't already set.
|
# isn't already set.
|
||||||
|
@ -55,19 +84,21 @@ stageFuns: let
|
||||||
|
|
||||||
# Adds the stdenv to the arguments, and sticks in it the previous stage for
|
# Adds the stdenv to the arguments, and sticks in it the previous stage for
|
||||||
# debugging purposes.
|
# debugging purposes.
|
||||||
folder = stageFun: finalSoFar: let
|
folder = nextStage: stageFun: prevStage: let
|
||||||
args = stageFun finalSoFar;
|
args = stageFun prevStage;
|
||||||
args' = args // {
|
args' = args // {
|
||||||
stdenv = args.stdenv // {
|
stdenv = args.stdenv // {
|
||||||
# For debugging
|
# For debugging
|
||||||
__bootPackages = finalSoFar;
|
__bootPackages = prevStage;
|
||||||
|
__hatPackages = nextStage;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
if args.__raw or false
|
if args.__raw or false
|
||||||
then args'
|
then args'
|
||||||
else allPackages ((builtins.removeAttrs args' ["selfBuild"]) // {
|
else allPackages ((builtins.removeAttrs args' ["selfBuild"]) // {
|
||||||
buildPackages = if args.selfBuild or true then null else finalSoFar;
|
buildPackages = if args.selfBuild or true then null else prevStage;
|
||||||
|
__targetPackages = if args.selfBuild or true then null else nextStage;
|
||||||
});
|
});
|
||||||
|
|
||||||
in lib.lists.fold folder {} withAllowCustomOverrides
|
in dfold folder {} {} withAllowCustomOverrides
|
||||||
|
|
|
@ -4,7 +4,7 @@ let
|
||||||
pythonPackages = python3Packages;
|
pythonPackages = python3Packages;
|
||||||
in pythonPackages.buildPythonApplication rec {
|
in pythonPackages.buildPythonApplication rec {
|
||||||
name = "asciinema-${version}";
|
name = "asciinema-${version}";
|
||||||
version = "1.3.0";
|
version = "1.4.0";
|
||||||
|
|
||||||
buildInputs = with pythonPackages; [ nose ];
|
buildInputs = with pythonPackages; [ nose ];
|
||||||
propagatedBuildInputs = with pythonPackages; [ requests2 ];
|
propagatedBuildInputs = with pythonPackages; [ requests2 ];
|
||||||
|
@ -13,9 +13,14 @@ in pythonPackages.buildPythonApplication rec {
|
||||||
owner = "asciinema";
|
owner = "asciinema";
|
||||||
repo = "asciinema";
|
repo = "asciinema";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1hx7xipyy9w72iwlawldlif9qk3f7b8jx8c1wcx114pqbjz5d347";
|
sha256 = "1m2gjqxb5gqyz19lvp7jmwp7cxjc6nb0b2rrlsg3z2bl6vmi1xn2";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patchPhase = ''
|
||||||
|
# disable one test which is failing with -> OSError: out of pty devices
|
||||||
|
rm tests/pty_recorder_test.py
|
||||||
|
'';
|
||||||
|
|
||||||
checkPhase = ''
|
checkPhase = ''
|
||||||
nosetests
|
nosetests
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -1,19 +1,19 @@
|
||||||
{ stdenv, fetchurl, udev, intltool, pkgconfig, glib, xmlto
|
{ stdenv, fetchurl, udev, intltool, pkgconfig, glib, xmlto, wrapGAppsHook
|
||||||
, makeWrapper, gtk3, docbook_xml_dtd_412, docbook_xsl
|
, makeWrapper, gtk3, docbook_xml_dtd_412, docbook_xsl
|
||||||
, libxml2, desktop_file_utils, libusb1, cups, gdk_pixbuf, pango, atk, libnotify
|
, libxml2, desktop_file_utils, libusb1, cups, gdk_pixbuf, pango, atk, libnotify
|
||||||
|
, gobjectIntrospection, libgnome_keyring3
|
||||||
, cups-filters
|
, cups-filters
|
||||||
, pythonPackages
|
, pythonPackages
|
||||||
, withGUI ? true
|
, withGUI ? true
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let majorVersion = "1.5";
|
stdenv.mkDerivation rec {
|
||||||
|
name = "system-config-printer-${version}";
|
||||||
in stdenv.mkDerivation rec {
|
version = "1.5.9";
|
||||||
name = "system-config-printer-${majorVersion}.7";
|
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://cyberelk.net/tim/data/system-config-printer/${majorVersion}/${name}.tar.xz";
|
url = "https://github.com/zdohnal/system-config-printer/releases/download/v${version}/${name}.tar.gz";
|
||||||
sha256 = "1vxczk22f58nbikvj47s2x1gzh6q4mbgwnf091p00h3b6nxppdgn";
|
sha256 = "03bwlpsiqpxzcwd78a7rmwiww4jnqd7kl7il4kx78l1r57lasd2r";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./detect_serverbindir.patch ];
|
patches = [ ./detect_serverbindir.patch ];
|
||||||
|
@ -22,8 +22,12 @@ in stdenv.mkDerivation rec {
|
||||||
[ intltool pkgconfig glib udev libusb1 cups xmlto
|
[ intltool pkgconfig glib udev libusb1 cups xmlto
|
||||||
libxml2 docbook_xml_dtd_412 docbook_xsl desktop_file_utils
|
libxml2 docbook_xml_dtd_412 docbook_xsl desktop_file_utils
|
||||||
pythonPackages.python pythonPackages.wrapPython
|
pythonPackages.python pythonPackages.wrapPython
|
||||||
|
libnotify gobjectIntrospection gdk_pixbuf pango atk
|
||||||
|
libgnome_keyring3
|
||||||
];
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [ wrapGAppsHook ];
|
||||||
|
|
||||||
pythonPath = with pythonPackages;
|
pythonPath = with pythonPackages;
|
||||||
[ pycups pycurl dbus-python pygobject3 requests2 pycairo pythonPackages.pycurl ];
|
[ pycups pycurl dbus-python pygobject3 requests2 pycairo pythonPackages.pycurl ];
|
||||||
|
|
||||||
|
@ -33,36 +37,22 @@ in stdenv.mkDerivation rec {
|
||||||
"--with-systemdsystemunitdir=$(out)/etc/systemd/system"
|
"--with-systemdsystemunitdir=$(out)/etc/systemd/system"
|
||||||
];
|
];
|
||||||
|
|
||||||
stripDebugList = "bin lib etc/udev";
|
stripDebugList = [ "bin" "lib" "etc/udev" ];
|
||||||
|
|
||||||
postInstall =
|
postInstall =
|
||||||
let
|
|
||||||
giTypelibPath = stdenv.lib.makeSearchPath "lib/girepository-1.0" [ gdk_pixbuf.out gtk3.out pango.out atk.out libnotify.out ];
|
|
||||||
in
|
|
||||||
''
|
''
|
||||||
export makeWrapperArgs="--set prefix $out \
|
buildPythonPath "$out $pythonPath"
|
||||||
--set GI_TYPELIB_PATH ${giTypelibPath} \
|
gappsWrapperArgs+=(
|
||||||
--set CUPS_DATADIR ${cups-filters}/share/cups"
|
--prefix PATH "$program_PATH"
|
||||||
wrapPythonPrograms
|
--set CUPS_DATADIR "${cups-filters}/share/cups"
|
||||||
|
|
||||||
# The program imports itself, so we need to move shell wrappers to a proper place.
|
|
||||||
fixupWrapper() {
|
|
||||||
mv "$out/share/system-config-printer/$2.py" \
|
|
||||||
"$out/bin/$1"
|
|
||||||
sed -i "s/.$2.py-wrapped/$2.py/g" "$out/bin/$1"
|
|
||||||
mv "$out/share/system-config-printer/.$2.py-wrapped" \
|
|
||||||
"$out/share/system-config-printer/$2.py"
|
|
||||||
}
|
|
||||||
fixupWrapper scp-dbus-service scp-dbus-service
|
|
||||||
fixupWrapper system-config-printer system-config-printer
|
|
||||||
fixupWrapper system-config-printer-applet applet
|
|
||||||
# This __init__.py is both executed and imported.
|
|
||||||
( cd $out/share/system-config-printer/troubleshoot
|
|
||||||
mv .__init__.py-wrapped __init__.py
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
find $out/share/system-config-printer -name \*.py -type f -perm -0100 -print0 | while read -d "" f; do
|
||||||
|
patchPythonScript "$f"
|
||||||
|
done
|
||||||
|
|
||||||
# The below line will be unneeded when the next upstream release arrives.
|
# The below line will be unneeded when the next upstream release arrives.
|
||||||
sed -i -e "s|/usr/bin|$out/bin|" "$out/share/dbus-1/services/org.fedoraproject.Config.Printing.service"
|
sed -i -e "s|/usr/local/bin|$out/bin|" "$out/share/dbus-1/services/org.fedoraproject.Config.Printing.service"
|
||||||
|
|
||||||
# Manually expand literal "$(out)", which have failed to expand
|
# Manually expand literal "$(out)", which have failed to expand
|
||||||
sed -e "s|ExecStart=\$(out)|ExecStart=$out|" \
|
sed -e "s|ExecStart=\$(out)|ExecStart=$out|" \
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
{ stdenv, fetchurl
|
{ stdenv, fetchurl
|
||||||
|
|
||||||
|
# Build runit-init as a static binary
|
||||||
, static ? false
|
, static ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
@ -19,7 +21,9 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
buildInputs = stdenv.lib.optionals static [ stdenv.cc.libc stdenv.cc.libc.static ];
|
buildInputs = stdenv.lib.optionals static [ stdenv.cc.libc stdenv.cc.libc.static ];
|
||||||
|
|
||||||
postPatch = stdenv.lib.optionalString (!static) ''
|
postPatch = ''
|
||||||
|
sed -i "s,\(#define RUNIT\) .*,\1 \"$out/bin/runit\"," src/runit.h
|
||||||
|
'' + stdenv.lib.optionalString (!static) ''
|
||||||
sed -i 's,-static,,g' src/Makefile
|
sed -i 's,-static,,g' src/Makefile
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,7 @@ let
|
||||||
(fetchpatch {
|
(fetchpatch {
|
||||||
name = "git-mergetool.diff"; # see https://gitlab.com/tfischer/kdiff3/merge_requests/2
|
name = "git-mergetool.diff"; # see https://gitlab.com/tfischer/kdiff3/merge_requests/2
|
||||||
url = "https://gitlab.com/vcunat/kdiff3/commit/6106126216.patch";
|
url = "https://gitlab.com/vcunat/kdiff3/commit/6106126216.patch";
|
||||||
sha256 = "0v638rk05wz51qcqnc6blcp2v74f04wn8ifgzw7qi5vr0yfh775r";
|
sha256 = "16xqc24y8bg8gzkdbwapiwi68rzqnkpz4hgn586mi01ngig2fd7y";
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
patchFlags = "-p 2";
|
patchFlags = "-p 2";
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
{ stdenv, fetchurl }:
|
{ stdenv, fetchurl }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "patchutils-0.3.4";
|
name = "patchutils-0.3.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://cyberelk.net/tim/data/patchutils/stable/${name}.tar.xz";
|
url = "http://cyberelk.net/tim/data/patchutils/stable/${name}.tar.xz";
|
||||||
sha256 = "0xp8mcfyi5nmb5a2zi5ibmyshxkb1zv1dgmnyn413m7ahgdx8mfg";
|
sha256 = "0g5df00cj4nczrmr4k791l7la0sq2wnf8rn981fsrz1f3d2yix4i";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [ ./drop-comments.patch ]; # we would get into a cycle when using fetchpatch on this one
|
||||||
|
|
||||||
hardeningDisable = [ "format" ];
|
hardeningDisable = [ "format" ];
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
|
84
pkgs/tools/text/patchutils/drop-comments.patch
Normal file
84
pkgs/tools/text/patchutils/drop-comments.patch
Normal file
|
@ -0,0 +1,84 @@
|
||||||
|
From 58987954647f51dc42fb13b7759923c6170dd905 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Tim Waugh <twaugh@redhat.com>
|
||||||
|
Date: Fri, 9 May 2014 16:23:27 +0100
|
||||||
|
Subject: Make --clean drop comments after '@@' lines as well (trac #29).
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index 99ad2a3..f3c6dbc 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -198,6 +198,7 @@ TESTS = tests/newline1/run-test \
|
||||||
|
tests/convert1/run-test \
|
||||||
|
tests/convert2/run-test \
|
||||||
|
tests/clean1/run-test \
|
||||||
|
+ tests/clean2/run-test \
|
||||||
|
tests/stdin/run-test
|
||||||
|
|
||||||
|
# These ones don't work yet.
|
||||||
|
diff --git a/src/filterdiff.c b/src/filterdiff.c
|
||||||
|
index 383e72b..6ca2316 100644
|
||||||
|
--- a/src/filterdiff.c
|
||||||
|
+++ b/src/filterdiff.c
|
||||||
|
@@ -2,7 +2,7 @@
|
||||||
|
* filterdiff - extract (or exclude) a diff from a diff file
|
||||||
|
* lsdiff - show which files are modified by a patch
|
||||||
|
* grepdiff - show files modified by a patch containing a regexp
|
||||||
|
- * Copyright (C) 2001, 2002, 2003, 2004, 2008, 2009, 2011 Tim Waugh <twaugh@redhat.com>
|
||||||
|
+ * Copyright (C) 2001, 2002, 2003, 2004, 2008, 2009, 2011, 2013, 2014 Tim Waugh <twaugh@redhat.com>
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
@@ -408,7 +408,8 @@ do_unified (FILE *f, char *header[2], int match, char **line,
|
||||||
|
" Hunk #%lu, %s",
|
||||||
|
hunknum, bestname);
|
||||||
|
|
||||||
|
- fputs (trailing, output_to);
|
||||||
|
+ fputs (clean_comments ? "\n" : trailing,
|
||||||
|
+ output_to);
|
||||||
|
break;
|
||||||
|
case Before:
|
||||||
|
// Note the initial line number
|
||||||
|
diff --git a/tests/clean2/run-test b/tests/clean2/run-test
|
||||||
|
new file mode 100755
|
||||||
|
index 0000000..42320df
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/clean2/run-test
|
||||||
|
@@ -0,0 +1,34 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+
|
||||||
|
+# This is a filterdiff(1) testcase.
|
||||||
|
+# Test: Make sure --clean removes hunk-level comments.
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+. ${top_srcdir-.}/tests/common.sh
|
||||||
|
+
|
||||||
|
+cat << EOF > diff
|
||||||
|
+non-diff line
|
||||||
|
+--- a/file1
|
||||||
|
++++ b/file1
|
||||||
|
+@@ -0,0 +1 @@ this is a hunk-level comment
|
||||||
|
++a
|
||||||
|
+EOF
|
||||||
|
+
|
||||||
|
+${FILTERDIFF} --clean diff 2>errors >filtered || exit 1
|
||||||
|
+[ -s errors ] && exit 1
|
||||||
|
+
|
||||||
|
+cat << EOF | cmp - filtered || exit 1
|
||||||
|
+--- a/file1
|
||||||
|
++++ b/file1
|
||||||
|
+@@ -0,0 +1 @@
|
||||||
|
++a
|
||||||
|
+EOF
|
||||||
|
+
|
||||||
|
+${FILTERDIFF} --clean -x file1 diff 2>errors >filtered || exit 1
|
||||||
|
+[ -s errors ] && exit 1
|
||||||
|
+cat << EOF | cmp - filtered || exit 1
|
||||||
|
+--- a/file1
|
||||||
|
++++ b/file1
|
||||||
|
+@@ -0,0 +1 @@
|
||||||
|
++a
|
||||||
|
+EOF
|
||||||
|
--
|
||||||
|
cgit v0.10.1
|
||||||
|
|
|
@ -4,16 +4,16 @@ with rustPlatform;
|
||||||
|
|
||||||
buildRustPackage rec {
|
buildRustPackage rec {
|
||||||
name = "ripgrep-${version}";
|
name = "ripgrep-${version}";
|
||||||
version = "0.5.0";
|
version = "0.5.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "BurntSushi";
|
owner = "BurntSushi";
|
||||||
repo = "ripgrep";
|
repo = "ripgrep";
|
||||||
rev = "${version}";
|
rev = "${version}";
|
||||||
sha256 = "13mg624867hqxp9pzpq1gn9kqkvbaqcphdjia3bz5wvff1cbxkfy";
|
sha256 = "1fbvc419gh1rix8v3bh9a63r993kvfizp49p5ps6y22wggpy0k77";
|
||||||
};
|
};
|
||||||
|
|
||||||
depsSha256 = "0glw8xk77w2h1xg6c451fg8cmwx3vz7dyzdrbf0i8d84yq8sh0i1";
|
depsSha256 = "0vyrcgcmlf3lbp15nip2cm8xv4n6qldfbl0iwy3jb69i2mazi6nm";
|
||||||
|
|
||||||
preFixup = ''
|
preFixup = ''
|
||||||
mkdir -p "$out/man/man1"
|
mkdir -p "$out/man/man1"
|
||||||
|
|
|
@ -3063,6 +3063,8 @@ with pkgs;
|
||||||
|
|
||||||
mysqltuner = callPackage ../tools/misc/mysqltuner { };
|
mysqltuner = callPackage ../tools/misc/mysqltuner { };
|
||||||
|
|
||||||
|
mytetra = libsForQt5.callPackage ../applications/office/mytetra { };
|
||||||
|
|
||||||
nabi = callPackage ../tools/inputmethods/nabi { };
|
nabi = callPackage ../tools/inputmethods/nabi { };
|
||||||
|
|
||||||
namazu = callPackage ../tools/text/namazu { };
|
namazu = callPackage ../tools/text/namazu { };
|
||||||
|
@ -12481,6 +12483,8 @@ with pkgs;
|
||||||
|
|
||||||
faba-mono-icons = callPackage ../data/icons/faba-mono-icons { };
|
faba-mono-icons = callPackage ../data/icons/faba-mono-icons { };
|
||||||
|
|
||||||
|
emacs-all-the-icons-fonts = callPackage ../data/fonts/emacs-all-the-icons-fonts { };
|
||||||
|
|
||||||
emojione = callPackage ../data/fonts/emojione {
|
emojione = callPackage ../data/fonts/emojione {
|
||||||
inherit (nodePackages) svgo;
|
inherit (nodePackages) svgo;
|
||||||
inherit (pythonPackages) scfbuild;
|
inherit (pythonPackages) scfbuild;
|
||||||
|
|
|
@ -734,6 +734,19 @@ let self = _self // overrides; _self = with self; {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
BusinessHours = buildPerlPackage rec {
|
||||||
|
name = "Business-Hours-0.12";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://cpan.metacpan.org/authors/id/R/RU/RUZ/Business-Hours-0.12.tar.gz";
|
||||||
|
sha256 = "15c5g278m1x121blspf4bymxp89vysizr3z6s1g3sbpfdkrn4gyv";
|
||||||
|
};
|
||||||
|
buildInputs = [ TestPod TestPodCoverage ];
|
||||||
|
propagatedBuildInputs = [ SetIntSpan TimeLocal ];
|
||||||
|
meta = {
|
||||||
|
description = "Calculate business hours in a time period";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
BusinessISBN = buildPerlPackage rec {
|
BusinessISBN = buildPerlPackage rec {
|
||||||
name = "Business-ISBN-2.09";
|
name = "Business-ISBN-2.09";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
@ -2777,6 +2790,18 @@ let self = _self // overrides; _self = with self; {
|
||||||
buildInputs = [ Clone ];
|
buildInputs = [ Clone ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
CSSMinifierXP = buildPerlPackage rec {
|
||||||
|
name = "CSS-Minifier-XS-0.09";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://cpan.metacpan.org/authors/id/G/GT/GTERMARS/CSS-Minifier-XS-0.09.tar.gz";
|
||||||
|
sha256 = "1myswrmh0sqp5xjpp03x45z8arfmgkjx0srl3r6kjsyzl1zrk9l8";
|
||||||
|
};
|
||||||
|
meta = {
|
||||||
|
description = "XS based CSS minifier";
|
||||||
|
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
CSSSquish = buildPerlPackage {
|
CSSSquish = buildPerlPackage {
|
||||||
name = "CSS-Squish-0.10";
|
name = "CSS-Squish-0.10";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
@ -2997,6 +3022,20 @@ let self = _self // overrides; _self = with self; {
|
||||||
propagatedBuildInputs = [TestException ClassAccessorChained];
|
propagatedBuildInputs = [TestException ClassAccessorChained];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
DataPagePageset = buildPerlPackage rec {
|
||||||
|
name = "Data-Page-Pageset-1.02";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://cpan.metacpan.org/authors/id/C/CH/CHUNZI/Data-Page-Pageset-1.02.tar.gz";
|
||||||
|
sha256 = "142isi8la383dbjxj7lfgcbmmrpzwckcc4wma6rdl8ryajsipb6f";
|
||||||
|
};
|
||||||
|
buildInputs = [ TestPod TestPodCoverage ];
|
||||||
|
propagatedBuildInputs = [ DataPage ];
|
||||||
|
meta = {
|
||||||
|
description = "change long page list to be shorter and well navigate";
|
||||||
|
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
DataPassword = buildPerlPackage {
|
DataPassword = buildPerlPackage {
|
||||||
name = "Data-Password-1.12";
|
name = "Data-Password-1.12";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
@ -5694,6 +5733,20 @@ let self = _self // overrides; _self = with self; {
|
||||||
makeMakerFlags = "--lib_png_path=${pkgs.libpng.out} --lib_jpeg_path=${pkgs.libjpeg.out} --lib_zlib_path=${pkgs.zlib.out} --lib_ft_path=${pkgs.freetype.out} --lib_fontconfig_path=${pkgs.fontconfig.lib} --lib_xpm_path=${pkgs.xorg.libXpm.out}";
|
makeMakerFlags = "--lib_png_path=${pkgs.libpng.out} --lib_jpeg_path=${pkgs.libjpeg.out} --lib_zlib_path=${pkgs.zlib.out} --lib_ft_path=${pkgs.freetype.out} --lib_fontconfig_path=${pkgs.fontconfig.lib} --lib_xpm_path=${pkgs.xorg.libXpm.out}";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
GDGraph = buildPerlPackage rec {
|
||||||
|
name = "GDGraph-1.54";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://cpan.metacpan.org/authors/id/R/RU/RUZ/GDGraph-1.54.tar.gz";
|
||||||
|
sha256 = "0kzsdc07ycxjainmz0dnsclb15w2j1y7g8b5mcb7vhannq85qvxr";
|
||||||
|
};
|
||||||
|
propagatedBuildInputs = [ GD GDText ];
|
||||||
|
buildInputs = [ TestException CaptureTiny ];
|
||||||
|
meta = {
|
||||||
|
description = "Graph Plotting Module for Perl 5";
|
||||||
|
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
GDSecurityImage = buildPerlPackage {
|
GDSecurityImage = buildPerlPackage {
|
||||||
name = "GD-SecurityImage-1.72";
|
name = "GD-SecurityImage-1.72";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
@ -5707,6 +5760,18 @@ let self = _self // overrides; _self = with self; {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
GDText = buildPerlPackage rec {
|
||||||
|
name = "GDTextUtil-0.86";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://cpan.metacpan.org/authors/id/M/MV/MVERB/GDTextUtil-0.86.tar.gz";
|
||||||
|
sha256 = "1g0nc7fz4d672ag7brlrrcz7ibm98x49qs75bq9z957ybkwcnvl8";
|
||||||
|
};
|
||||||
|
propagatedBuildInputs = [ GD ];
|
||||||
|
meta = {
|
||||||
|
description = "Text utilities for use with GD";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
GeoIP = buildPerlPackage rec {
|
GeoIP = buildPerlPackage rec {
|
||||||
name = "Geo-IP-1.45";
|
name = "Geo-IP-1.45";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
@ -6832,7 +6897,7 @@ let self = _self // overrides; _self = with self; {
|
||||||
sha256 = "74d22c44b5ad2e7190e2786e8a17d74bbf4cef89b4d1157ba33598b5a2720dad";
|
sha256 = "74d22c44b5ad2e7190e2786e8a17d74bbf4cef89b4d1157ba33598b5a2720dad";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
IOPager = buildPerlPackage {
|
IOPager = buildPerlPackage {
|
||||||
name = "IO-Pager-0.06";
|
name = "IO-Pager-0.06";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
@ -7136,6 +7201,20 @@ let self = _self // overrides; _self = with self; {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
JavaScriptMinifierXS = buildPerlPackage rec {
|
||||||
|
name = "JavaScript-Minifier-XS-0.11";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://cpan.metacpan.org/authors/id/G/GT/GTERMARS/JavaScript-Minifier-XS-0.11.tar.gz";
|
||||||
|
sha256 = "1vlyhckpjbrg2v4dy9szsxxl0q44n0y1xl763mg2y2ym9g5144hm";
|
||||||
|
};
|
||||||
|
propagatedBuildInputs = [ ];
|
||||||
|
meta = {
|
||||||
|
description = "XS based JavaScript minifier";
|
||||||
|
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
JSON = buildPerlPackage {
|
JSON = buildPerlPackage {
|
||||||
name = "JSON-2.90";
|
name = "JSON-2.90";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
@ -8225,6 +8304,29 @@ let self = _self // overrides; _self = with self; {
|
||||||
buildInputs = [ ProcWaitStat ];
|
buildInputs = [ ProcWaitStat ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
MIMETools = buildPerlPackage rec {
|
||||||
|
name = "MIME-tools-5.509";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://cpan.metacpan.org/authors/id/D/DS/DSKOLL/MIME-tools-5.509.tar.gz";
|
||||||
|
sha256 = "0wv9rzx5j1wjm01c3dg48qk9wlbm6iyf91j536idk09xj869ymv4";
|
||||||
|
};
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
MailTools
|
||||||
|
FilePath
|
||||||
|
FileTemp
|
||||||
|
MIMEBase64
|
||||||
|
];
|
||||||
|
buildInputs = [
|
||||||
|
TestDeep
|
||||||
|
TestPod
|
||||||
|
TestPodCoverage
|
||||||
|
];
|
||||||
|
meta = {
|
||||||
|
description = "class for parsed-and-decoded MIME message";
|
||||||
|
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
MIMELite = buildPerlPackage rec {
|
MIMELite = buildPerlPackage rec {
|
||||||
name = "MIME-Lite-3.030";
|
name = "MIME-Lite-3.030";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
@ -11468,6 +11570,18 @@ let self = _self // overrides; _self = with self; {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
SetIntSpan = buildPerlPackage rec {
|
||||||
|
name = "Set-IntSpan-1.19";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://cpan.metacpan.org/authors/id/S/SW/SWMCD/Set-IntSpan-1.19.tar.gz";
|
||||||
|
sha256 = "1l6znd40ylzvfwl02rlqzvakv602rmvwgm2xd768fpgc2fdm9dqi";
|
||||||
|
};
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Manages sets of integers";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
SetObject = buildPerlPackage {
|
SetObject = buildPerlPackage {
|
||||||
name = "Set-Object-1.34";
|
name = "Set-Object-1.34";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
@ -12319,7 +12433,7 @@ let self = _self // overrides; _self = with self; {
|
||||||
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
TaskFreecellSolverTesting = buildPerlModule rec {
|
TaskFreecellSolverTesting = buildPerlModule rec {
|
||||||
name = "Task-FreecellSolver-Testing-v0.0.10";
|
name = "Task-FreecellSolver-Testing-v0.0.10";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
@ -13541,7 +13655,7 @@ let self = _self // overrides; _self = with self; {
|
||||||
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
TestTrailingSpace = buildPerlPackage rec {
|
TestTrailingSpace = buildPerlPackage rec {
|
||||||
name = "Test-TrailingSpace-0.0301";
|
name = "Test-TrailingSpace-0.0301";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
|
|
|
@ -20558,6 +20558,8 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
pyspread = callPackage ../development/python-modules/pyspread { };
|
||||||
|
|
||||||
pyx = buildPythonPackage rec {
|
pyx = buildPythonPackage rec {
|
||||||
name = "pyx-${version}";
|
name = "pyx-${version}";
|
||||||
version = "0.14.1";
|
version = "0.14.1";
|
||||||
|
|
|
@ -64,7 +64,11 @@ let
|
||||||
|
|
||||||
splicedPackages =
|
splicedPackages =
|
||||||
if actuallySplice
|
if actuallySplice
|
||||||
then splicer defaultBuildScope defaultRunScope
|
then splicer defaultBuildScope defaultRunScope // {
|
||||||
|
# These should never be spliced under any circumstances
|
||||||
|
inherit (pkgs) pkgs buildPackages __targetPackages
|
||||||
|
buildPlatform targetPlatform hostPlatform;
|
||||||
|
}
|
||||||
else pkgs // pkgs.xorg;
|
else pkgs // pkgs.xorg;
|
||||||
|
|
||||||
in
|
in
|
||||||
|
|
|
@ -46,9 +46,18 @@
|
||||||
##
|
##
|
||||||
|
|
||||||
, # The package set used at build-time. If null, `buildPackages` will
|
, # The package set used at build-time. If null, `buildPackages` will
|
||||||
# be defined internally as the produced package set as itself.
|
# be defined internally as the final produced package set itself. This allows
|
||||||
|
# us to avoid expensive splicing.
|
||||||
buildPackages
|
buildPackages
|
||||||
|
|
||||||
|
, # The package set used in the next stage. If null, `__targetPackages` will be
|
||||||
|
# defined internally as the final produced package set itself, just like with
|
||||||
|
# `buildPackages` and for the same reasons.
|
||||||
|
#
|
||||||
|
# THIS IS A HACK for compilers that don't think critically about cross-
|
||||||
|
# compilation. Please do *not* use unless you really know what you are doing.
|
||||||
|
__targetPackages
|
||||||
|
|
||||||
, # The standard environment to use for building packages.
|
, # The standard environment to use for building packages.
|
||||||
stdenv
|
stdenv
|
||||||
|
|
||||||
|
@ -87,6 +96,8 @@ let
|
||||||
stdenvBootstappingAndPlatforms = self: super: {
|
stdenvBootstappingAndPlatforms = self: super: {
|
||||||
buildPackages = (if buildPackages == null then self else buildPackages)
|
buildPackages = (if buildPackages == null then self else buildPackages)
|
||||||
// { recurseForDerivations = false; };
|
// { recurseForDerivations = false; };
|
||||||
|
__targetPackages = (if __targetPackages == null then self else __targetPackages)
|
||||||
|
// { recurseForDerivations = false; };
|
||||||
inherit stdenv
|
inherit stdenv
|
||||||
buildPlatform hostPlatform targetPlatform;
|
buildPlatform hostPlatform targetPlatform;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue