Merge branch 'master' into staging-next

This commit is contained in:
Jan Tojnar 2020-04-29 08:35:23 +02:00
commit f14021febf
No known key found for this signature in database
GPG key ID: 7FAB2A15F7A607A4
184 changed files with 1342 additions and 2082 deletions

View file

@ -1,4 +1,13 @@
<!-- Nixpkgs has a lot of new incoming Pull Requests, but not enough people to review this constant stream. Even if you aren't a committer, we would appreciate reviews of other PRs, especially simple ones like package updates. Just testing the relevant package/service and leaving a comment saying what you tested, how you tested it and whether it worked would be great. List of open PRs: <https://github.com/NixOS/nixpkgs/pulls>, for more about reviewing contributions: <https://hydra.nixos.org/job/nixpkgs/trunk/manual/latest/download/1/nixpkgs/manual.html#chap-reviewing-contributions>. Reviewing isn't mandatory, but it would help out a lot and reduce the average time-to-merge for all of us. Thanks a lot if you do! -->
<!--
To help with the large amounts of pull requests, we would appreciate your
reviews of other pull requests, especially simple package updates. Just leave a
comment describing what you have tested in the relevant package/service.
Reviewing helps to reduce the average time-to-merge for everyone.
Thanks a lot if you do!
List of open PRs: https://github.com/NixOS/nixpkgs/pulls
Reviewing guidelines: https://hydra.nixos.org/job/nixpkgs/trunk/manual/latest/download/1/nixpkgs/manual.html#chap-reviewing-contributions
-->
###### Motivation for this change

View file

@ -1,10 +1,11 @@
# to run these tests:
# nix-build nixpkgs/lib/tests/maintainers.nix
# If nothing is output, all tests passed
{ pkgs ? import ../.. {} }:
# to run these tests (and the others)
# nix-build nixpkgs/lib/tests/release.nix
{ # The pkgs used for dependencies for the testing itself
pkgs
, lib
}:
let
inherit (pkgs) lib;
inherit (lib) types;
maintainerModule = { config, ... }: {

View file

@ -1,8 +1,17 @@
{ pkgs ? import ../.. {} }:
{ # The pkgs used for dependencies for the testing itself
# Don't test properties of pkgs.lib, but rather the lib in the parent directory
pkgs ? import ../.. {} // { lib = throw "pkgs.lib accessed, but the lib tests should use nixpkgs' lib path directly!"; }
}:
pkgs.runCommandNoCC "nixpkgs-lib-tests" {
buildInputs = [ pkgs.nix (import ./check-eval.nix) (import ./maintainers.nix { inherit pkgs; }) ];
NIX_PATH = "nixpkgs=${toString pkgs.path}";
buildInputs = [
pkgs.nix
(import ./check-eval.nix)
(import ./maintainers.nix {
inherit pkgs;
lib = import ../.;
})
];
} ''
datadir="${pkgs.nix}/share"
export TEST_ROOT=$(pwd)/test-tmp

View file

@ -17,6 +17,18 @@
{ lib }:
with lib.maintainers; {
acme = {
members = [
aanderse
andrew-d
arianvp
emily
flokli
m1cr0man
];
scope = "Maintain ACME-related packages and modules.";
};
freedesktop = {
members = [ jtojnar worldofpeace ];
scope = "Maintain Freedesktop.org packages for graphical desktop.";

View file

@ -26,6 +26,11 @@
<listitem>
<para>GNOME desktop environment was upgraded to 3.36, see its <link xlink:href="https://help.gnome.org/misc/release-notes/3.36/">release notes</link>.</para>
</listitem>
<listitem>
<para>
We now distribute a GNOME ISO.
</para>
</listitem>
<listitem>
<para>
PHP now defaults to PHP 7.4, updated from 7.3.

View file

@ -10,35 +10,36 @@ let
canLoadExternalModules = config.services.nscd.enable;
myhostname = canLoadExternalModules;
mymachines = canLoadExternalModules;
# XXX Move these to their respective modules
nssmdns = canLoadExternalModules && config.services.avahi.nssmdns;
nsswins = canLoadExternalModules && config.services.samba.nsswins;
ldap = canLoadExternalModules && (config.users.ldap.enable && config.users.ldap.nsswitch);
sssd = canLoadExternalModules && config.services.sssd.enable;
resolved = canLoadExternalModules && config.services.resolved.enable;
googleOsLogin = canLoadExternalModules && config.security.googleOsLogin.enable;
hostArray = [ "files" ]
++ optional mymachines "mymachines"
++ optional nssmdns "mdns_minimal [NOTFOUND=return]"
++ optional nsswins "wins"
++ optional resolved "resolve [!UNAVAIL=return]"
++ [ "dns" ]
++ optional nssmdns "mdns"
++ optional myhostname "myhostname";
hostArray = mkMerge [
(mkBefore [ "files" ])
(mkIf mymachines [ "mymachines" ])
(mkIf nssmdns [ "mdns_minimal [NOTFOUND=return]" ])
(mkIf nsswins [ "wins" ])
(mkIf resolved [ "resolve [!UNAVAIL=return]" ])
(mkAfter [ "dns" ])
(mkIf nssmdns (mkOrder 1501 [ "mdns" ])) # 1501 to ensure it's after dns
(mkIf myhostname (mkOrder 1600 [ "myhostname" ])) # 1600 to ensure it's always the last
];
passwdArray = [ "files" ]
++ optional sssd "sss"
++ optional ldap "ldap"
++ optional mymachines "mymachines"
++ optional googleOsLogin "cache_oslogin oslogin"
++ [ "systemd" ];
passwdArray = mkMerge [
(mkBefore [ "files" ])
(mkIf ldap [ "ldap" ])
(mkIf mymachines [ "mymachines" ])
(mkIf googleOsLogin [ "cache_oslogin oslogin" ])
(mkIf canLoadExternalModules (mkAfter [ "systemd" ]))
];
shadowArray = [ "files" ]
++ optional sssd "sss"
++ optional ldap "ldap";
servicesArray = [ "files" ]
++ optional sssd "sss";
shadowArray = mkMerge [
(mkBefore [ "files" ])
(mkIf ldap [ "ldap" ])
];
in {
options = {
@ -61,17 +62,73 @@ in {
};
};
system.nssHosts = mkOption {
type = types.listOf types.str;
default = [];
example = [ "mdns" ];
description = ''
List of host entries to configure in <filename>/etc/nsswitch.conf</filename>.
'';
};
system.nssDatabases = {
passwd = mkOption {
type = types.listOf types.str;
description = ''
List of passwd entries to configure in <filename>/etc/nsswitch.conf</filename>.
Note that "files" is always prepended while "systemd" is appended if nscd is enabled.
This option only takes effect if nscd is enabled.
'';
default = [];
};
group = mkOption {
type = types.listOf types.str;
description = ''
List of group entries to configure in <filename>/etc/nsswitch.conf</filename>.
Note that "files" is always prepended while "systemd" is appended if nscd is enabled.
This option only takes effect if nscd is enabled.
'';
default = [];
};
shadow = mkOption {
type = types.listOf types.str;
description = ''
List of shadow entries to configure in <filename>/etc/nsswitch.conf</filename>.
Note that "files" is always prepended.
This option only takes effect if nscd is enabled.
'';
default = [];
};
hosts = mkOption {
type = types.listOf types.str;
description = ''
List of hosts entries to configure in <filename>/etc/nsswitch.conf</filename>.
Note that "files" is always prepended, and "dns" and "myhostname" are always appended.
This option only takes effect if nscd is enabled.
'';
default = [];
};
services = mkOption {
type = types.listOf types.str;
description = ''
List of services entries to configure in <filename>/etc/nsswitch.conf</filename>.
Note that "files" is always prepended.
This option only takes effect if nscd is enabled.
'';
default = [];
};
};
};
imports = [
(mkRenamedOptionModule [ "system" "nssHosts" ] [ "system" "nssDatabases" "hosts" ])
];
config = {
assertions = [
{
@ -87,23 +144,28 @@ in {
];
# Name Service Switch configuration file. Required by the C
# library. !!! Factor out the mdns stuff. The avahi module
# should define an option used by this module.
# library.
environment.etc."nsswitch.conf".text = ''
passwd: ${concatStringsSep " " passwdArray}
group: ${concatStringsSep " " passwdArray}
shadow: ${concatStringsSep " " shadowArray}
passwd: ${concatStringsSep " " config.system.nssDatabases.passwd}
group: ${concatStringsSep " " config.system.nssDatabases.group}
shadow: ${concatStringsSep " " config.system.nssDatabases.shadow}
hosts: ${concatStringsSep " " config.system.nssHosts}
hosts: ${concatStringsSep " " config.system.nssDatabases.hosts}
networks: files
ethers: files
services: ${concatStringsSep " " servicesArray}
services: ${concatStringsSep " " config.system.nssDatabases.services}
protocols: files
rpc: files
'';
system.nssHosts = hostArray;
system.nssDatabases = {
passwd = passwdArray;
group = passwdArray;
shadow = shadowArray;
hosts = hostArray;
services = mkBefore [ "files" ];
};
# Systemd provides nss-myhostname to ensure that our hostname
# always resolves to a valid IP address. It returns all locally

View file

@ -196,7 +196,6 @@
./security/pam_usb.nix
./security/pam_mount.nix
./security/polkit.nix
./security/prey.nix
./security/rngd.nix
./security/rtkit.nix
./security/wrappers/default.nix

View file

@ -178,6 +178,10 @@ in
set -l post (string join0 $fish_complete_path | string match --regex "[^\x00]*generated_completions.*" | string split0 | string match -er ".")
set fish_complete_path $prev "/etc/fish/generated_completions" $post
end
# prevent fish from generating completions on first run
if not test -d $__fish_user_data_dir/generated_completions
${pkgs.coreutils}/bin/mkdir $__fish_user_data_dir/generated_completions
end
'';
environment.etc."fish/generated_completions".source =

View file

@ -49,6 +49,10 @@ with lib;
simply add the brightnessctl package to environment.systemPackages.
'')
(mkRemovedOptionModule ["services" "prey" ] ''
prey-bash-client is deprecated upstream
'')
# Do NOT add any option renames here, see top of the file
];
}

View file

@ -458,7 +458,7 @@ in
];
meta = {
maintainers = with lib.maintainers; [ abbradar fpletz globin m1cr0man ];
maintainers = lib.teams.acme.members;
doc = ./acme.xml;
};
}

View file

@ -219,6 +219,14 @@ let
'';
};
nodelay = mkOption {
default = false;
type = types.bool;
description = ''
Wheather the delay after typing a wrong password should be disabled.
'';
};
requireWheel = mkOption {
default = false;
type = types.bool;
@ -366,7 +374,7 @@ let
|| cfg.enableGnomeKeyring
|| cfg.googleAuthenticator.enable
|| cfg.duoSecurity.enable)) ''
auth required pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} likeauth
auth required pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} ${optionalString cfg.nodelay "nodelay"} likeauth
${optionalString config.security.pam.enableEcryptfs
"auth optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so unwrap"}
${optionalString cfg.pamMount
@ -382,7 +390,7 @@ let
"auth required ${pkgs.duo-unix}/lib/security/pam_duo.so"}
'') + ''
${optionalString cfg.unixAuth
"auth sufficient pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} likeauth try_first_pass"}
"auth sufficient pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} ${optionalString cfg.nodelay "nodelay"} likeauth try_first_pass"}
${optionalString cfg.otpwAuth
"auth sufficient ${pkgs.otpw}/lib/security/pam_otpw.so"}
${optionalString use_ldap

View file

@ -1,51 +0,0 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.prey;
myPrey = pkgs.prey-bash-client.override {
apiKey = cfg.apiKey;
deviceKey = cfg.deviceKey;
};
in {
options = {
services.prey = {
enable = mkOption {
default = false;
type = types.bool;
description = ''
Enables the <link xlink:href="http://preyproject.com/" />
shell client. Be sure to specify both API and device keys.
Once enabled, a <command>cron</command> job will run every 15
minutes to report status information.
'';
};
deviceKey = mkOption {
type = types.str;
description = ''
<literal>Device key</literal> obtained by visiting
<link xlink:href="https://panel.preyproject.com/devices" />
and clicking on your device.
'';
};
apiKey = mkOption {
type = types.str;
description = ''
<literal>API key</literal> obtained from
<link xlink:href="https://panel.preyproject.com/profile" />.
'';
};
};
};
config = mkIf cfg.enable {
environment.systemPackages = [ myPrey ];
services.cron.systemCronJobs = [ "*/15 * * * * root ${myPrey}/prey.sh" ];
};
}

View file

@ -180,7 +180,7 @@ let
${optionalString (cfg.smtp.passwordFile != null) ''password: "@smtpPassword@",''}
domain: "${cfg.smtp.domain}",
${optionalString (cfg.smtp.authentication != null) "authentication: :${cfg.smtp.authentication},"}
enable_starttls_auto: ${toString cfg.smtp.enableStartTLSAuto},
enable_starttls_auto: ${boolToString cfg.smtp.enableStartTLSAuto},
ca_file: "/etc/ssl/certs/ca-certificates.crt",
openssl_verify_mode: '${cfg.smtp.opensslVerifyMode}'
}

View file

@ -82,6 +82,7 @@ in {
]);
ProtectHome = "tmpfs";
WorkingDirectory = libDir;
SyslogIdentifier = "pykms";
Restart = "on-failure";
MemoryLimit = cfg.memoryLimit;
};

View file

@ -75,6 +75,11 @@ in {
};
system.nssModules = optional cfg.enable pkgs.sssd;
system.nssDatabases = {
passwd = [ "sss" ];
shadow = [ "sss" ];
services = [ "sss" ];
};
services.dbus.packages = [ pkgs.sssd ];
})

View file

@ -153,6 +153,16 @@ in
'';
};
allowFrom = mkOption {
type = types.listOf types.str;
default = [ "localhost" ];
example = [ "all" ];
apply = concatMapStringsSep "\n" (x: "Allow ${x}");
description = ''
From which hosts to allow unconditional access.
'';
};
bindirCmds = mkOption {
type = types.lines;
internal = true;
@ -403,19 +413,19 @@ in
<Location />
Order allow,deny
Allow localhost
${cfg.allowFrom}
</Location>
<Location /admin>
Order allow,deny
Allow localhost
${cfg.allowFrom}
</Location>
<Location /admin/conf>
AuthType Basic
Require user @SYSTEM
Order allow,deny
Allow localhost
${cfg.allowFrom}
</Location>
<Policy default>

View file

@ -1,7 +1,7 @@
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xml:id="chap-pantheon">
<title>Pantheon Destkop</title>
<title>Pantheon Desktop</title>
<para>
Pantheon is the desktop environment created for the elementary OS distribution. It is written from scratch in Vala, utilizing GNOME technologies with GTK 3 and Granite.
</para>

View file

@ -499,7 +499,7 @@ in
# FIXME: Consolidate this one day.
virtualisation.qemu.options = mkMerge [
(mkIf (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) [
"-vga std" "-usb" "-device usb-tablet,bus=usb-bus.0"
"-usb" "-device usb-tablet,bus=usb-bus.0"
])
(mkIf (pkgs.stdenv.isAarch32 || pkgs.stdenv.isAarch64) [
"-device virtio-gpu-pci" "-device usb-ehci,id=usb0" "-device usb-kbd" "-device usb-tablet"

View file

@ -50,6 +50,7 @@ in rec {
(onFullSupported "nixos.dummy")
(onAllSupported "nixos.iso_minimal")
(onSystems ["x86_64-linux"] "nixos.iso_plasma5")
(onSystems ["x86_64-linux"] "nixos.iso_gnome")
(onFullSupported "nixos.manual")
(onSystems ["x86_64-linux"] "nixos.ova")
(onSystems ["aarch64-linux"] "nixos.sd_image")

View file

@ -155,6 +155,12 @@ in rec {
inherit system;
});
iso_gnome = forMatchingSystems [ "x86_64-linux" ] (system: makeIso {
module = ./modules/installer/cd-dvd/installation-cd-graphical-gnome.nix;
type = "gnome";
inherit system;
});
# A variant with a more recent (but possibly less stable) kernel
# that might support more hardware.
iso_minimal_new_kernel = forMatchingSystems [ "x86_64-linux" "aarch64-linux" ] (system: makeIso {

View file

@ -12,8 +12,9 @@ let
fi
'';
in import ./make-test-python.nix {
in import ./make-test-python.nix ({ lib, ... }: {
name = "acme";
meta.maintainers = lib.teams.acme.members;
nodes = rec {
acme = { nodes, lib, ... }: {
@ -207,4 +208,4 @@ in import ./make-test-python.nix {
"curl --cacert /tmp/ca.crt https://c.example.test/ | grep -qF 'hello world'"
)
'';
}
})

View file

@ -99,6 +99,11 @@ in stdenv.mkDerivation rec {
)
'';
# Meson is no longer able to pick up Boost automatically.
# https://github.com/NixOS/nixpkgs/issues/86131
BOOST_INCLUDEDIR = "${stdenv.lib.getDev boost}/include";
BOOST_LIBRARYDIR = "${stdenv.lib.getLib boost}/lib";
meta = with stdenv.lib; {
description = "Limiter, compressor, reverberation, equalizer and auto volume effects for Pulseaudio applications";
homepage = "https://github.com/wwmm/pulseeffects";

View file

@ -2,16 +2,18 @@
buildGoModule rec {
pname = "lnd";
version = "0.9.0-beta";
version = "0.9.2-beta";
src = fetchFromGitHub {
owner = "lightningnetwork";
repo = "lnd";
rev = "v${version}";
sha256 = "1hq105s9ykp6nsn4iicjnl3mwspqkbfsswkx7sgzv3jggg08fkq9";
sha256 = "0gm33z89fiqv231ks2mkpsblskcsijipq8fcmip6m6jy8g06b1gb";
};
modSha256 = "1pvcvpiz6ck8xkgpypchrq9kgkik0jxd7f3jhihbgldsh4zaqiaq";
modSha256 = "1khxplvyaqgaddrx1nna1fw0nb1xz9bmqpxpfifif4f5nmx90gbr";
subPackages = ["cmd/lncli" "cmd/lnd"];
meta = with lib; {
description = "Lightning Network Daemon";

View file

@ -5,7 +5,7 @@
, qtquickcontrols, qtquickcontrols2
, monero, unbound, readline, boost, libunwind
, libsodium, pcsclite, zeromq, cppzmq
, hidapi, libusb, protobuf, randomx
, hidapi, libusb-compat-0_1, protobuf, randomx
}:
with stdenv.lib;
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
qtxmlpatterns
monero unbound readline
boost libunwind libsodium pcsclite zeromq
cppzmq hidapi libusb protobuf randomx
cppzmq hidapi libusb-compat-0_1 protobuf randomx
];
NIX_CFLAGS_COMPILE = [ "-Wno-error=format-security" ];

View file

@ -2,7 +2,7 @@
, cmake, pkgconfig
, boost, miniupnpc, openssl, unbound, cppzmq
, zeromq, pcsclite, readline, libsodium, hidapi
, pythonProtobuf, randomx, rapidjson, libusb
, pythonProtobuf, randomx, rapidjson, libusb-compat-0_1
, CoreData, IOKit, PCSC
}:
@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
boost miniupnpc openssl unbound
cppzmq zeromq pcsclite readline
libsodium hidapi randomx rapidjson
pythonProtobuf libusb
pythonProtobuf libusb-compat-0_1
] ++ stdenv.lib.optionals stdenv.isDarwin [ IOKit CoreData PCSC ];
cmakeFlags = [

View file

@ -1,22 +0,0 @@
{ fetchurl, melpaBuild }:
melpaBuild {
pname = "filesets-plus";
version = "20170222.55";
src = fetchurl {
url = "https://www.emacswiki.org/emacs/download/filesets%2b.el";
sha256 = "0iajkgh0n3pbrwwxx9rmrrwz8dw2m7jsp4mggnhq7zsb20ighs00";
name = "filesets+.el";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/filesets-plus+";
sha256 = "1wn99cb53ykds87lg9mrlfpalrmjj177nwskrnp9wglyqs65lk4g";
name = "filesets-plus";
};
meta = {
homepage = "https://melpa.org/#/filesets+";
};
}

View file

@ -1,23 +0,0 @@
{ fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "header2";
version = "20170223.1949";
src = fetchurl {
url = "https://www.emacswiki.org/emacs/download/header2.el";
sha256 = "0cv74cfihr13jrgyqbj4x0na659djfyrhflxni6jdbgbysi4zf6k";
name = "header2.el";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/header2";
sha256 = "1dg25krx3wxma2l5vb2ji7rpfp17qbrl62jyjpa52cjfsvyp6v06";
name = "header2";
};
meta = {
homepage = "https://melpa.org/#/header2";
license = lib.licenses.gpl3;
};
}

View file

@ -1,23 +0,0 @@
{ fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "hexrgb";
version = "20170304.1017";
src = fetchurl {
url = "https://www.emacswiki.org/emacs/download/hexrgb.el";
sha256 = "1aj1fsc3wr8174xs45j2wc2mm6f8v6zs40xn0r4qisdw0plmsbsy";
name = "hexrgb.el";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/hexrgb";
sha256 = "0mzqslrrf7sc262syj3ja7b7rnbg80dwf2p9bzxdrzx6b8vvsx06";
name = "hexrgb";
};
meta = {
homepage = "https://melpa.org/#/hexrgb";
license = lib.licenses.gpl2Plus;
};
}

View file

@ -1,43 +0,0 @@
{ stdenv, fetchurl, emacs }:
let
modules = [
{ name = "icicles.el"; sha256 = "1744n5g2kmv3r261ipa0fhrgnapl0chxz57bbbls3bp30cnnfrs7"; }
{ name = "icicles-chg.el"; sha256 = "058sxa8wh3vqr3zy677q6m2lfx4n477rnb8921s1p6wgs55v7dp4"; }
{ name = "icicles-cmd1.el"; sha256 = "064hyy8nxvlg298s5qnmk7aczbasfpddhx57jxaldyyzkca3n2h5"; }
{ name = "icicles-cmd2.el"; sha256 = "0a77fx0pxyfrg9nxvqvzz247v6cljjfz9dnfs7lc8qgdvksxs261"; }
{ name = "icicles-doc1.el"; sha256 = "04j5qvj7pqnjh8h2y2sdgi7x55czdp9xn7yysr3bzcmr1rq5p4bz"; }
{ name = "icicles-doc2.el"; sha256 = "1k8vfhi3fa4bzsxr074bw5q6srvq6z6hi61rzlxdw7pah6qf7hcz"; }
{ name = "icicles-face.el"; sha256 = "1pvygqzmh6ag0zhfjn1vhdvlhxybwxzj22ah2pc0ls80dlywhi4l"; }
{ name = "icicles-fn.el"; sha256 = "02vwa9dx9393d7kxrf443r1lj7y9ihkh25cmd418pwfgmw2yd5s7"; }
{ name = "icicles-mac.el"; sha256 = "13nxgg9k5w39lga90jwn1c7v756dqlfln2qh312vfaxfjfijfv9r"; }
{ name = "icicles-mcmd.el"; sha256 = "17d4zlf3r09wmarwyc1cbjv0pyklg4cdhwh3h643d4v8mhs5hnil"; }
{ name = "icicles-mode.el"; sha256 = "1xfv8nryf5y2gygg02naawzm5qhrkba3h84g43518r1xc6rgbpp6"; }
{ name = "icicles-opt.el"; sha256 = "154mgcd1ksnmlyb4ijy2njqq75i8cj4k47phplxsi648pzqnda77"; }
{ name = "icicles-var.el"; sha256 = "0f94299q1z0va4v1s5ijpksaqlaz88ay1qbmlzq0i2wnxnsliys8"; }
];
forAll = f: map f modules;
in
stdenv.mkDerivation rec {
version = "2019-02-22";
pname = "icicles";
srcs = forAll ({name, sha256}: fetchurl { url = "https://www.emacswiki.org/emacs/download/${name}"; inherit sha256; });
buildInputs = [ emacs ];
unpackPhase = "for m in $srcs; do cp $m $(echo $m | cut -d- -f2-); done";
buildPhase = "emacs --batch -L . -f batch-byte-compile *.el";
installPhase = "mkdir -p $out/share/emacs/site-lisp/emacswiki/${pname}-${version}/; cp *.el *.elc $out/share/emacs/site-lisp/emacswiki/${pname}-${version}/";
meta = {
homepage = "https://www.emacswiki.org/emacs/Icicles";
description = "Enhance Emacs minibuffer input with cycling and powerful completion";
license = stdenv.lib.licenses.gpl2Plus;
platforms = emacs.meta.platforms;
maintainers = with stdenv.lib.maintainers; [ scolobb ];
};
}

View file

@ -1,23 +0,0 @@
{ fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "lib-requires";
version = "20170307.757";
src = fetchurl {
url = "https://www.emacswiki.org/emacs/download/lib-requires.el";
sha256 = "04lrkdjrhsgg7vgvw1mkr9a5m9xlyvjvnj2aj6w453bgmnp1mbvv";
name = "lib-requires.el";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/lib-requires";
sha256 = "1g22jh56z8rnq0h80wj10gs38yig1rk9xmk3kmhmm5mm6b14iwdx";
name = "lib-requires";
};
meta = {
homepage = "https://melpa.org/#/lib-requires";
license = lib.licenses.gpl2Plus;
};
}

View file

@ -61,8 +61,9 @@ in {
pname = builtins.replaceStrings [ "@" ] [ "at" ] ename;
broken = ! isNull error;
in
lib.nameValuePair ename (if hasSource then (
self.callPackage ({ melpaBuild, fetchurl, ... }@pkgargs:
if hasSource then
lib.nameValuePair ename (
self.callPackage ({ melpaBuild, fetchurl, ... }@pkgargs:
melpaBuild {
inherit pname;
ename = ename;
@ -85,6 +86,8 @@ in {
};
}
) {}
) else null);
)
else
null;
}

View file

@ -68,8 +68,6 @@
ess-R-object-popup =
callPackage ./ess-R-object-popup { };
filesets-plus = callPackage ./filesets-plus { };
font-lock-plus = callPackage ./font-lock-plus { };
ghc-mod = melpaBuild {
@ -109,17 +107,8 @@
};
};
hexrgb = callPackage ./hexrgb { };
header2 = callPackage ./header2 { };
helm-words = callPackage ./helm-words { };
icicles = callPackage ./icicles { };
lib-requires =
callPackage ./lib-requires { };
org-mac-link =
callPackage ./org-mac-link { };
@ -134,12 +123,8 @@
sv-kalender = callPackage ./sv-kalender { };
thingatpt-plus = callPackage ./thingatpt-plus { };
tramp = callPackage ./tramp { };
yaoddmuse = callPackage ./yaoddmuse { };
zeitgeist = callPackage ./zeitgeist { };
# From old emacsPackages (pre emacsPackagesNg)

View file

@ -42,7 +42,9 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
}: let
inherit (import ./libgenerated.nix lib self) melpaDerivation;
super = lib.listToAttrs (map (melpaDerivation variant) (lib.importJSON archiveJson));
super = lib.listToAttrs (builtins.filter (s: s != null)
(map (melpaDerivation variant)
(lib.importJSON archiveJson)));
overrides = rec {
shared = rec {
@ -339,10 +341,6 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
# Map legacy renames from emacs2nix since code generation was ported to emacs lisp
_0blayout = super."0blayout";
_0xc = super."0xc";
_2048-game = super."2048-game";
_4clojure = super."4clojure";
at = super."@";
desktop-plus = super."desktop+";
ghub-plus = super."ghub+";
git-gutter-plus = super."git-gutter+";
@ -353,10 +351,6 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
markdown-mode-plus = super."markdown-mode+";
package-plus = super."package+";
rect-plus = super."rect+";
term-plus = super."term+";
term-plus-key-intercept = super."term+key-intercept";
term-plus-mux = super."term+mux";
xml-plus = super."xml+";
};
stable = shared // {
@ -559,6 +553,16 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
# Legacy alias
emacs-libvterm = unstable.vterm;
# Map legacy renames from emacs2nix since code generation was ported to emacs lisp
_0xc = super."0xc";
_2048-game = super."2048-game";
_4clojure = super."4clojure";
at = super."@";
term-plus = super."term+";
term-plus-key-intercept = super."term+key-intercept";
term-plus-mux = super."term+mux";
xml-plus = super."xml+";
w3m = super.w3m.override (args: {
melpaBuild = drv: args.melpaBuild (drv // {
prePatch =

View file

@ -1,23 +0,0 @@
{ fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "thingatpt-plus";
version = "20170307.1539";
src = fetchurl {
url = "https://www.emacswiki.org/emacs/download/thingatpt+.el";
sha256 = "1k9y354315gvhbdk0m9xpjx24w1bwrnzlnfiils8xgdwnw4py99a";
name = "thingatpt+.el";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/thingatpt+";
sha256 = "0w031lzjl5phvzsmbbxn2fpziwkmdyxsn08h6b9lxbss1prhx7aa";
name = "thingatpt-plus";
};
meta = {
homepage = "https://melpa.org/#/thingatpt+";
license = lib.licenses.gpl2Plus;
};
}

View file

@ -1,30 +0,0 @@
{stdenv, fetchurl, emacs}:
stdenv.mkDerivation {
name = "yaoddmuse-0.1.2";
src = fetchurl {
url = "http://emacswiki.org/emacs/download/yaoddmuse.el";
sha256 = "0vlllq3xmnlni0ws226pqxj68nshclbl5rgqv6y11i3yvzgiazr6";
};
phases = [ "buildPhase" "installPhase"];
buildInputs = [ emacs ];
buildPhase = ''
cp $src yaoddmuse.el
emacs --batch -f batch-byte-compile yaoddmuse.el
'';
installPhase = ''
install -d $out/share/emacs/site-lisp
install yaoddmuse.el $out/share/emacs/site-lisp
'';
meta = {
description = "Comprehensive Emacs integration with Oddmuse wikis";
homepage = "http://emacswiki.org/emacs/Yaoddmuse";
platforms = stdenv.lib.platforms.all;
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, callPackage, patchelf, makeWrapper, coreutils, libusb }:
{ stdenv, fetchurl, callPackage, patchelf, makeWrapper, coreutils, libusb-compat-0_1 }:
let
myPatchElf = file: with stdenv.lib; ''
@ -30,13 +30,13 @@ in stdenv.mkDerivation rec {
'';
nativeBuildInputs = [ makeWrapper patchelf coreutils udevRules ];
buildInputs = [ libusb ];
buildInputs = [ libusb-compat-0_1 ];
dontBuild = true;
patchPhase = ''
${myPatchElf "opt/brother/scanner/brscan4/brsaneconfig4"}
RPATH=${libusb.out}/lib
RPATH=${libusb-compat-0_1.out}/lib
for a in usr/lib64/sane/*.so*; do
if ! test -L $a; then
patchelf --set-rpath $RPATH $a

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, sane-backends, libX11, gtk2, pkgconfig, libusb ? null }:
{ stdenv, fetchurl, sane-backends, libX11, gtk2, pkgconfig, libusb-compat-0_1 ? null }:
stdenv.mkDerivation rec {
pname = "sane-frontends";
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
'';
buildInputs = [ sane-backends libX11 gtk2 ]
++ stdenv.lib.optional (libusb != null) libusb;
++ stdenv.lib.optional (libusb-compat-0_1 != null) libusb-compat-0_1;
nativeBuildInputs = [ pkgconfig ];
enableParallelBuilding = true;

View file

@ -1,5 +1,5 @@
{ stdenv, fetchurl, sane-backends, sane-frontends, libX11, gtk2, pkgconfig, libpng
, libusb ? null
, libusb-compat-0_1 ? null
, gimpSupport ? false, gimp ? null
}:
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig ];
buildInputs = [libpng sane-backends sane-frontends libX11 gtk2 ]
++ (if libusb != null then [libusb] else [])
++ (if libusb-compat-0_1 != null then [libusb-compat-0_1] else [])
++ stdenv.lib.optional gimpSupport gimp;
meta = {

View file

@ -14,6 +14,16 @@ mkDerivation {
maintainers = [ lib.maintainers.ttuegel ];
};
# InitialPreference values are too high and end up making kate &
# kwrite defaults for anything considered text/plain. Resetting to
# 1, which is the default.
postPatch = ''
substituteInPlace kate/data/org.kde.kate.desktop \
--replace InitialPreference=9 InitialPreference=1
substituteInPlace kwrite/data/org.kde.kwrite.desktop \
--replace InitialPreference=8 InitialPreference=1
'';
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [
libgit2

View file

@ -12,9 +12,17 @@ mkDerivation {
kdelibs4support kcmutils khtml kdesu
qtwebkit qtwebengine qtx11extras qtscript qtwayland
];
# InitialPreference values are too high and any text/html ends up
# opening konqueror, even if firefox or chromium are also available.
# Resetting to 1, which is the default.
postPatch = ''
substituteInPlace kfmclient_html.desktop \
--replace InitialPreference=9 InitialPreference=1
'';
meta = {
license = with lib.licenses; [ gpl2 ];
maintainers = with lib.maintainers; [ ];
};
}

View file

@ -18,6 +18,15 @@ mkDerivation {
kwindowsystem libkexiv2 libspectre libzip phonon poppler qca-qt5
qtdeclarative qtsvg threadweaver kcrash
] ++ lib.optional (!stdenv.isAarch64) chmlib;
# InitialPreference values are too high and end up making okular
# default for anything considered text/plain. Resetting to 1, which
# is the default.
postPatch = ''
substituteInPlace generators/txt/okularApplication_txt.desktop \
--replace InitialPreference=3 InitialPreference=1
'';
meta = with lib; {
homepage = "http://www.kde.org";
license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ];

View file

@ -7,7 +7,7 @@
stdenv.mkDerivation rec {
pname = "dbeaver-ce";
version = "7.0.2";
version = "7.0.3";
desktopItem = makeDesktopItem {
name = "dbeaver";
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
sha256 = "0p75kvs9ng5i5x5cpdqxlf18y3k83pqsvrkab0i1azk3x4lfkzmd";
sha256 = "189rsavmaa7480r61qhpzagia3c8jr3dfcl01ks3nfyq53j08hml";
};
installPhase = ''

View file

@ -7,7 +7,7 @@
, libtool
, qrencode
, udev
, libusb
, libusb-compat-0_1
, makeWrapper
, pkgconfig
, qtbase
@ -70,7 +70,7 @@ in stdenv.mkDerivation rec {
libevent
libtool
udev
libusb
libusb-compat-0_1
qrencode
qtbase

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, garmintools, libgcrypt, libusb, pkgconfig, tinyxml, zlib }:
{ stdenv, fetchurl, garmintools, libgcrypt, libusb-compat-0_1, pkgconfig, tinyxml, zlib }:
stdenv.mkDerivation {
name = "garmin-plugin-0.3.26";
src = fetchurl {
@ -7,7 +7,7 @@ stdenv.mkDerivation {
};
sourceRoot = "GarminPlugin-0.3.26/src";
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ garmintools libusb libgcrypt tinyxml zlib ];
buildInputs = [ garmintools libusb-compat-0_1 libgcrypt tinyxml zlib ];
configureFlags = [
"--with-libgcrypt-prefix=${libgcrypt.dev}"
"--with-garmintools-incdir=${garmintools}/include"

View file

@ -1,6 +1,6 @@
{ stdenv, fetchFromGitHub, mkDerivation
, qtbase, qtsvg, qtserialport, qtwebengine, qtmultimedia, qttools
, qtconnectivity, qtcharts, libusb
, qtconnectivity, qtcharts, libusb-compat-0_1
, yacc, flex, zlib, qmake, makeDesktopItem, makeWrapper
}:
@ -27,7 +27,7 @@ in mkDerivation rec {
buildInputs = [
qtbase qtsvg qtserialport qtwebengine qtmultimedia qttools zlib
qtconnectivity qtcharts libusb
qtconnectivity qtcharts libusb-compat-0_1
];
nativeBuildInputs = [ flex makeWrapper qmake yacc ];
@ -39,9 +39,9 @@ in mkDerivation rec {
cp src/gcconfig.pri.in src/gcconfig.pri
cp qwt/qwtconfig.pri.in qwt/qwtconfig.pri
echo 'QMAKE_LRELEASE = ${qttools.dev}/bin/lrelease' >> src/gcconfig.pri
echo 'LIBUSB_INSTALL = ${libusb}' >> src/gcconfig.pri
echo 'LIBUSB_INCLUDE = ${libusb.dev}/include' >> src/gcconfig.pri
echo 'LIBUSB_LIBS = -L${libusb}/lib -lusb' >> src/gcconfig.pri
echo 'LIBUSB_INSTALL = ${libusb-compat-0_1}' >> src/gcconfig.pri
echo 'LIBUSB_INCLUDE = ${libusb-compat-0_1.dev}/include' >> src/gcconfig.pri
echo 'LIBUSB_LIBS = -L${libusb-compat-0_1}/lib -lusb' >> src/gcconfig.pri
sed -i -e '21,23d' qwt/qwtconfig.pri # Removed forced installation to /usr/local
# Use qtwebengine instead of qtwebkit

View file

@ -92,7 +92,7 @@ in buildFHSUserEnv {
multiPkgs = pkgs: with pkgs; [
# Common
libsndfile libtheora libogg libvorbis libopus libGLU libpcap libpulseaudio
libao libusb libevdev udev libgcrypt libxml2 libusb libpng libmpeg2 libv4l
libao libevdev udev libgcrypt libxml2 libusb-compat-0_1 libpng libmpeg2 libv4l
libjpeg libxkbcommon libass libcdio libjack2 libsamplerate libzip libmad libaio
libcap libtiff libva libgphoto2 libxslt libsndfile giflib zlib glib
alsaLib zziplib bash dbus keyutils zip cabextract freetype unzip coreutils

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, neon, libusb, openssl, udev, avahi, freeipmi
{ stdenv, fetchurl, pkgconfig, neon, libusb-compat-0_1, openssl, udev, avahi, freeipmi
, libtool, makeWrapper, autoreconfHook, fetchpatch
}:
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
})
];
buildInputs = [ neon libusb openssl udev avahi freeipmi ];
buildInputs = [ neon libusb-compat-0_1 openssl udev avahi freeipmi ];
nativeBuildInputs = [ autoreconfHook libtool pkgconfig makeWrapper ];
@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
postInstall = ''
wrapProgram $out/bin/nut-scanner --prefix LD_LIBRARY_PATH : \
"$out/lib:${neon}/lib:${libusb.out}/lib:${avahi}/lib:${freeipmi}/lib"
"$out/lib:${neon}/lib:${libusb-compat-0_1.out}/lib:${avahi}/lib:${freeipmi}/lib"
'';
meta = with stdenv.lib; {

View file

@ -13,13 +13,13 @@ let
in buildGoPackage rec {
name = "perkeep-${version}";
version = "unstable-2019-07-29";
version = "unstable-2020-03-23";
src = fetchFromGitHub {
owner = "perkeep";
repo = "perkeep";
rev = "c9f78d02adf9740f3b8d403a1418554293cc9f41";
sha256 = "11rin94pjzg0kvizrq9ss42fjw7wfwx3g1pk8zdlhyfkiwwh2rmg";
rev = "c2e31370ddefd86b6112a5d891100ea3382a4254";
sha256 = "0jf02k20ms7h60wglcq6dj3vqi9rlfww7db5iplgwznbij70c1i4";
};
goPackagePath = "perkeep.org";

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, cmake, libusb }:
{ stdenv, fetchurl, cmake, libusb-compat-0_1 }:
stdenv.mkDerivation rec {
pname = "garmindev";
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ];
buildInputs = [ libusb ];
buildInputs = [ libusb-compat-0_1 ];
enableParallelBuilding = true;

View file

@ -1,5 +1,5 @@
{ stdenv, mkDerivation, fetchFromGitHub, qmake, pkgconfig, udev
, qtmultimedia, qtscript, alsaLib, ola, libftdi1, libusb
, qtmultimedia, qtscript, alsaLib, ola, libftdi1, libusb-compat-0_1
, libsndfile, libmad
}:
@ -16,7 +16,7 @@ mkDerivation rec {
nativeBuildInputs = [ qmake pkgconfig ];
buildInputs = [
udev qtmultimedia qtscript alsaLib ola libftdi1 libusb libsndfile libmad
udev qtmultimedia qtscript alsaLib ola libftdi1 libusb-compat-0_1 libsndfile libmad
];
qmakeFlags = [ "INSTALLROOT=$(out)" ];

View file

@ -1,5 +1,5 @@
{ stdenv, fetchurl, fetchFromGitHub, autoreconfHook, cmake, wrapQtAppsHook, pkgconfig, qmake
, curl, grantlee, libgit2, libusb, libssh2, libxml2, libxslt, libzip, zlib
, curl, grantlee, libgit2, libusb-compat-0_1, libssh2, libxml2, libxslt, libzip, zlib
, qtbase, qtconnectivity, qtlocation, qtsvg, qttools, qtwebkit, libXcomposite
}:
@ -83,7 +83,7 @@ in stdenv.mkDerivation {
buildInputs = [
libdc googlemaps
curl grantlee libgit2 libssh2 libusb libxml2 libxslt libzip
curl grantlee libgit2 libssh2 libusb-compat-0_1 libxml2 libxslt libzip
qtbase qtconnectivity qtsvg qttools qtwebkit
];

View file

@ -7,16 +7,16 @@
buildGoModule rec {
pname = "wtf";
version = "0.28.0";
version = "0.29.0";
src = fetchFromGitHub {
owner = "wtfutil";
repo = pname;
rev = "v${version}";
sha256 = "0pybj2h844x9vncwdcaymihyd1mwdnxxpnzpq0p29ra0cwmsxcgr";
sha256 = "0v6yafpz3sycq6yb7w4dyxqclszvdgwbyhqs5ii8ckynqcf6ifn7";
};
modSha256 = "00xvhajag25kfkizi2spv4ady3h06as43rnbjzfbv7z1mln844y4";
modSha256 = "0csxc5q7i2iq8z71ysfan2kwf4mghi89i5zja5g1a4cvmcabiq1g";
buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];

View file

@ -1,25 +1,28 @@
{ stdenv, fetchFromGitHub, makeDesktopItem
{ stdenv, lib, fetchgit, makeDesktopItem
, pkgconfig, autoconf213, alsaLib, bzip2, cairo
, dbus, dbus-glib, ffmpeg, file, fontconfig, freetype
, gnome2, gnum4, gtk2, hunspell, libevent, libjpeg
, libnotify, libstartup_notification, makeWrapper
, libGLU, libGL, perl, python, libpulseaudio
, libGLU, libGL, perl, python2, libpulseaudio
, unzip, xorg, wget, which, yasm, zip, zlib
, withGTK3 ? false, gtk3
}:
let
libPath = stdenv.lib.makeLibraryPath [ ffmpeg ];
libPath = lib.makeLibraryPath [ ffmpeg ];
gtkVersion = if withGTK3 then "3" else "2";
in stdenv.mkDerivation rec {
pname = "palemoon";
version = "28.8.4";
version = "28.9.1";
src = fetchFromGitHub {
owner = "MoonchildProductions";
repo = "UXP";
rev = "PM${version}_Release";
sha256 = "1k2j4rlgjwkns3a592pbiwwhrpja3fachvzby1his3d1mhdvyc6f";
src = fetchgit {
url = "https://github.com/MoonchildProductions/Pale-Moon.git";
rev = "${version}_Release";
sha256 = "1772by9r9l1l0wmj4hs89r3zyckcbrq1krb09bn3pxvjjywzvkfl";
fetchSubmodules = true;
};
desktopItem = makeDesktopItem {
@ -29,7 +32,7 @@ in stdenv.mkDerivation rec {
desktopName = "Pale Moon";
genericName = "Web Browser";
categories = "Application;Network;WebBrowser;";
mimeType = stdenv.lib.concatStringsSep ";" [
mimeType = lib.concatStringsSep ";" [
"text/html"
"text/xml"
"application/xhtml+xml"
@ -40,60 +43,75 @@ in stdenv.mkDerivation rec {
];
};
nativeBuildInputs = [
file gnum4 makeWrapper perl pkgconfig python2 wget which
];
buildInputs = [
alsaLib bzip2 cairo dbus dbus-glib ffmpeg file fontconfig freetype
gnome2.GConf gnum4 gtk2 hunspell libevent libjpeg libnotify
libstartup_notification makeWrapper libGLU libGL perl
pkgconfig python libpulseaudio unzip wget which yasm zip zlib
] ++ (with xorg; [
alsaLib bzip2 cairo dbus dbus-glib ffmpeg fontconfig freetype
gnome2.GConf gtk2 hunspell libevent libjpeg libnotify
libstartup_notification libGLU libGL
libpulseaudio unzip yasm zip zlib
]
++ (with xorg; [
libX11 libXext libXft libXi libXrender libXScrnSaver
libXt pixman xorgproto
]);
])
++ lib.optional withGTK3 gtk3;
enableParallelBuilding = true;
configurePhase = ''
export MOZBUILD_STATE_PATH=$(pwd)/mozbuild
export MOZCONFIG=$(pwd)/mozconfig
export MOZ_NOSPAM=1
export builddir=$(pwd)/pmbuild
echo > $MOZCONFIG "
mk_add_options AUTOCLOBBER=1
mk_add_options MOZ_OBJDIR=$builddir
# Keep this similar to the official .mozconfig file,
# only minor changes for portability are permitted with branding.
# https://developer.palemoon.org/build/linux/
echo > $MOZCONFIG '
# Clear this if not a 64bit build
_BUILD_64=${lib.optionalString stdenv.hostPlatform.is64bit "1"}
# Set GTK Version to 2 or 3
_GTK_VERSION=${gtkVersion}
# Standard build options for Pale Moon
ac_add_options --enable-application=palemoon
ac_add_options --enable-optimize="-O2 -w"
ac_add_options --enable-default-toolkit=cairo-gtk$_GTK_VERSION
ac_add_options --enable-jemalloc
ac_add_options --enable-strip
ac_add_options --enable-devtools
ac_add_options --enable-optimize='-O2'
ac_add_options --disable-eme
ac_add_options --disable-webrtc
ac_add_options --disable-gamepad
ac_add_options --disable-tests
ac_add_options --disable-debug
ac_add_options --disable-necko-wifi
ac_add_options --disable-updater
ac_add_options --with-pthreads
# Please see https://www.palemoon.org/redist.shtml for restrictions when using the official branding.
ac_add_options --enable-official-branding
export MOZILLA_OFFICIAL=1
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --enable-jemalloc
ac_add_options --enable-strip
ac_add_options --with-pthreads
ac_add_options --x-libraries=${lib.makeLibraryPath [ xorg.libX11 ]}
ac_add_options --disable-tests
ac_add_options --disable-eme
ac_add_options --disable-parental-controls
ac_add_options --disable-accessibility
ac_add_options --disable-webrtc
ac_add_options --disable-gamepad
ac_add_options --disable-necko-wifi
ac_add_options --disable-updater
export MOZ_PKG_SPECIAL=gtk$_GTK_VERSION
ac_add_options --x-libraries=${xorg.libX11.out}/lib
#
# NixOS-specific adjustments
#
ac_add_options --prefix=$out
mk_add_options MOZ_MAKE_FLAGS='-j$NIX_BUILD_CORES'
mk_add_options MOZ_MAKE_FLAGS="-j$NIX_BUILD_CORES"
mk_add_options AUTOCONF=${autoconf213}/bin/autoconf
"
'
'';
buildPhase = ''
$src/mach build
'';
buildPhase = "$src/mach build";
installPhase = ''
$src/mach install
@ -104,7 +122,7 @@ in stdenv.mkDerivation rec {
for n in 16 22 24 32 48 256; do
size=$n"x"$n
mkdir -p $out/share/icons/hicolor/$size/apps
cp $src/application/palemoon/branding/official/default$n.png \
cp $src/palemoon/branding/official/default$n.png \
$out/share/icons/hicolor/$size/apps/palemoon.png
done
@ -112,7 +130,7 @@ in stdenv.mkDerivation rec {
--prefix LD_LIBRARY_PATH : "${libPath}"
'';
meta = with stdenv.lib; {
meta = with lib; {
description = "An Open Source, Goanna-based web browser focusing on efficiency and customization";
longDescription = ''
Pale Moon is an Open Source, Goanna-based web browser focusing on

View file

@ -2,7 +2,7 @@
buildGoPackage rec {
pname = "nomad";
version = "0.11.0";
version = "0.11.1";
rev = "v${version}";
goPackagePath = "github.com/hashicorp/nomad";
@ -12,7 +12,7 @@ buildGoPackage rec {
owner = "hashicorp";
repo = pname;
inherit rev;
sha256 = "0jg7h52wlgd2aslx13fs97j3b8g5xfgil3p2jsc4j95l7lmqn7bv";
sha256 = "1pcn1bk7sqhhsrm3izqljwyrwdz6bdlplrajvjzka39l3k6f9hgc";
};
# ui:

View file

@ -1,5 +1,5 @@
{ stdenv, lib, fetchFromGitHub, buildGoPackage, which, go-bindata, rsync, utillinux
, coreutils, kerberos, clang, installShellFiles
, coreutils, kerberos, ncurses, clang, installShellFiles
, components ? [
"cmd/oc"
"cmd/openshift"
@ -9,12 +9,12 @@
with lib;
let
version = "3.11.0";
version = "4.1.0";
ver = stdenv.lib.elemAt (stdenv.lib.splitVersion version);
versionMajor = ver 0;
versionMinor = ver 1;
versionPatch = ver 2;
gitCommit = "0cbc58b";
gitCommit = "b4261e0";
# version is in vendor/k8s.io/kubernetes/pkg/version/base.go
k8sversion = "v1.11.1";
k8sgitcommit = "b1b2997";
@ -28,29 +28,17 @@ in buildGoPackage rec {
owner = "openshift";
repo = "origin";
rev = "v${version}";
sha256 = "06q4v2a1mm6c659ab0rzkqz6b66vx4avqfg0s9xckwhq420lzgka";
sha256 = "16bc6ljm418kxz92gz8ldm82491mvlqamrvigyr6ff72rf7ml7ba";
};
goPackagePath = "github.com/openshift/origin";
buildInputs = [ kerberos ];
buildInputs = [ kerberos ncurses ];
nativeBuildInputs = [ which rsync go-bindata clang installShellFiles ];
patchPhase = ''
patchShebangs ./hack
substituteInPlace pkg/oc/clusterup/docker/host/host.go \
--replace 'nsenter --mount=/rootfs/proc/1/ns/mnt findmnt' \
'nsenter --mount=/rootfs/proc/1/ns/mnt ${utillinux}/bin/findmnt'
substituteInPlace pkg/oc/clusterup/docker/host/host.go \
--replace 'nsenter --mount=/rootfs/proc/1/ns/mnt mount' \
'nsenter --mount=/rootfs/proc/1/ns/mnt ${utillinux}/bin/mount'
substituteInPlace pkg/oc/clusterup/docker/host/host.go \
--replace 'nsenter --mount=/rootfs/proc/1/ns/mnt mkdir' \
'nsenter --mount=/rootfs/proc/1/ns/mnt ${coreutils}/bin/mkdir'
'';
buildPhase = ''
@ -58,6 +46,7 @@ in buildGoPackage rec {
# Openshift build require this variables to be set
# unless there is a .git folder which is not the case with fetchFromGitHub
echo "OS_GIT_VERSION=v${version}" >> os-version-defs
echo "OS_GIT_TREE_STATE=clean" >> os-version-defs
echo "OS_GIT_MAJOR=${versionMajor}" >> os-version-defs
echo "OS_GIT_MINOR=${versionMinor}" >> os-version-defs
echo "OS_GIT_PATCH=${versionPatch}" >> os-version-defs

View file

@ -1,45 +0,0 @@
{ stdenv, buildGoPackage, fetchgit, makeWrapper, pkgconfig, qtbase, qtdeclarative, qtwebengine }:
buildGoPackage rec {
pname = "gopherclient";
version = "2016-10-02";
rev = "91c41b5542d08001636708e2a5054521a6004702";
goPackagePath = "github.com/prologic/gopherclient";
src = fetchgit {
inherit rev;
url = "https://github.com/prologic/gopherclient";
sha256 = "0b1gvxhv4zg930hvric9mmbfp0lnww0sqlkkfbzfkif3wz9ni5y9";
};
nativeBuildInputs = [ makeWrapper pkgconfig ];
buildInputs = [ qtbase qtdeclarative qtwebengine ];
preBuild = ''
# Generate gopherclient resources with genqrc.
ln -s ${goPackagePath}/vendor/gopkg.in go/src/
GOBIN="$(pwd)" go install -v gopkg.in/qml.v1/cmd/genqrc
PATH="$(pwd):$PATH" go generate ${goPackagePath}
'';
NIX_CFLAGS_COMPILE = [
# go-qml needs private Qt headers.
"-I${qtbase.dev}/include/QtCore/${qtbase.version}"
];
postInstall = ''
# https://github.com/prologic/gopherclient/#usage
wrapProgram $bin/bin/gopherclient --prefix GODEBUG , cgocheck=0
'';
meta = with stdenv.lib; {
homepage = "https://github.com/prologic/gopherclient";
description = "Gopher Qt GUI client";
license = licenses.mit;
maintainers = with maintainers; [ orivej ];
platforms = platforms.linux;
broken = true;
};
}

View file

@ -1,46 +1,47 @@
{ mkDerivation, stdenv, lib, fetchFromGitHub, cmake
, qtbase, qtquickcontrols, qtkeychain, qtmultimedia, qttools
, libqmatrixclient_0_5
, libsecret
, qtbase, qtquickcontrols, qtquickcontrols2, qtkeychain, qtmultimedia, qttools
, libquotient, libsecret
}:
let
generic = version: sha256: prefix: library: mkDerivation {
pname = "quaternion";
inherit version;
mkDerivation rec {
pname = "quaternion";
version = "0.0.9.4e";
src = fetchFromGitHub {
owner = "QMatrixClient";
repo = "Quaternion";
rev = "${prefix}${version}";
inherit sha256;
};
buildInputs = [ qtbase qtmultimedia qtquickcontrols qtkeychain library libsecret ];
nativeBuildInputs = [ cmake qttools ];
postInstall = if stdenv.isDarwin then ''
mkdir -p $out/Applications
mv $out/bin/quaternion.app $out/Applications
rmdir $out/bin || :
'' else ''
substituteInPlace $out/share/applications/quaternion.desktop \
--replace 'Exec=quaternion' "Exec=$out/bin/quaternion"
'';
meta = with lib; {
description = "Cross-platform desktop IM client for the Matrix protocol";
homepage = "https://matrix.org/docs/projects/client/quaternion.html";
license = licenses.gpl3;
maintainers = with maintainers; [ peterhoeg ];
inherit (qtbase.meta) platforms;
inherit version;
};
src = fetchFromGitHub {
owner = "QMatrixClient";
repo = "Quaternion";
rev = "${version}";
sha256 = "sha256-2yEiILiitRPj2hCodUDM8UNVq8crb9nyX21ebuh5EEM=";
};
in rec {
quaternion = generic "0.0.9.4c" "12mkwiqqbi4774kwl7gha72jyf0jf547acy6rw8ry249zl4lja54" "" libqmatrixclient_0_5;
buildInputs = [
qtbase
qtmultimedia
qtquickcontrols
qtquickcontrols2
qtkeychain
libquotient
libsecret
];
quaternion-git = quaternion;
nativeBuildInputs = [ cmake qttools ];
postInstall = if stdenv.isDarwin then ''
mkdir -p $out/Applications
mv $out/bin/quaternion.app $out/Applications
rmdir $out/bin || :
'' else ''
substituteInPlace $out/share/applications/com.github.quaternion.desktop \
--replace 'Exec=quaternion' "Exec=$out/bin/quaternion"
'';
meta = with lib; {
description =
"Cross-platform desktop IM client for the Matrix protocol";
homepage = "https://matrix.org/docs/projects/client/quaternion.html";
license = licenses.gpl3;
maintainers = with maintainers; [ peterhoeg ];
inherit (qtbase.meta) platforms;
inherit version;
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl, autoPatchelfHook, dpkg, wrapGAppsHook
{ stdenv, lib, fetchurl, autoPatchelfHook, dpkg, wrapGAppsHook, nixosTests
, gnome2, gtk3, atk, at-spi2-atk, cairo, pango, gdk-pixbuf, glib, freetype, fontconfig
, dbus, libX11, xorg, libXi, libXcursor, libXdamage, libXrandr, libXcomposite
, libXext, libXfixes, libXrender, libXtst, libXScrnSaver, nss, nspr, alsaLib
@ -23,7 +23,7 @@ let
else "");
in stdenv.mkDerivation rec {
pname = "signal-desktop";
version = "1.33.3"; # Please backport all updates to the stable channel.
version = "1.33.4"; # Please backport all updates to the stable channel.
# All releases have a limited lifetime and "expire" 90 days after the release.
# When releases "expire" the application becomes unusable until an update is
# applied. The expiration date for the current release can be extracted with:
@ -33,7 +33,7 @@ in stdenv.mkDerivation rec {
src = fetchurl {
url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
sha256 = "1brw1hidmrznb55cb794yvgzin7sf3cxnffivmag4vf2a2vcvf4y";
sha256 = "0mcxia2zaflaazfdl1ngpab0dyhwwzbhad7brc6kwhjxydbnmwcd";
};
nativeBuildInputs = [
@ -121,6 +121,9 @@ in stdenv.mkDerivation rec {
autoPatchelf --no-recurse -- $out/lib/Signal/
'';
# Tests if the application launches and waits for "Link your phone to Signal Desktop":
passthru.tests.application-launch = nixosTests.signal-desktop;
meta = {
description = "Private, simple, and secure messenger";
longDescription = ''

View file

@ -15,11 +15,11 @@ assert pulseaudioSupport -> libpulseaudio != null;
let
inherit (stdenv.lib) concatStringsSep makeBinPath optional;
version = "3.5.385850.0413";
version = "5.0.398100.0427";
srcs = {
x86_64-linux = fetchurl {
url = "https://zoom.us/client/${version}/zoom_x86_64.tar.xz";
sha256 = "049kxgkyaxknxpk0hf1a7bxn0c08dk250z3q2ba9pc1xkrn5kdnw";
sha256 = "0b9jdicr783wagp2j79106bbk68974j3v8zg8nvky5fydl6ngjvi";
};
};

View file

@ -1,21 +1,21 @@
{stdenv, fetchFromGitHub, openssl, libX11, libgssglue, pkgconfig, autoreconfHook
{stdenv, fetchFromGitHub, openssl, libX11, krb5, libXcursor, libtasn1, nettle, gnutls, pkgconfig, autoreconfHook
, enableCredssp ? (!stdenv.isDarwin)
} :
stdenv.mkDerivation (rec {
pname = "rdesktop";
version = "1.8.6";
version = "1.9.0";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "02sbhnqbasa54c75c86qw9w9h9sxxbnldj7bjv2gvn18lmq5rm20";
sha256 = "1s6k1jwd28y38ymk3lfv76ch4arpfwrbdhpkbnwwy3fc4617gb78";
};
nativeBuildInputs = [pkgconfig autoreconfHook];
buildInputs = [openssl libX11]
++ stdenv.lib.optional enableCredssp libgssglue;
buildInputs = [openssl libX11 libXcursor libtasn1 nettle gnutls]
++ stdenv.lib.optional enableCredssp krb5;
configureFlags = [
"--with-ipv6"

View file

@ -1,4 +1,4 @@
{ stdenv, pythonPackages, fetchpatch }:
{ stdenv, pythonPackages, fetchpatch, installShellFiles }:
with pythonPackages;
@ -14,15 +14,21 @@ buildPythonApplication rec {
checkPhase = ''
pytest -vs tests
'';
'';
postInstall = ''
installShellCompletion --bash --name watson watson.completion
installShellCompletion --zsh --name _watson watson.zsh-completion
'';
checkInputs = [ py pytest pytest-datafiles mock pytest-mock pytestrunner ];
propagatedBuildInputs = [ requests click arrow ];
nativeBuildInputs = [ installShellFiles ];
meta = with stdenv.lib; {
homepage = "https://tailordev.github.io/Watson/";
description = "A wonderful CLI to track your time!";
license = licenses.mit;
maintainers = with maintainers; [ mguentner nathyong ] ;
maintainers = with maintainers; [ mguentner nathyong ];
};
}

View file

@ -13,7 +13,7 @@ libav,
libiio,
libopus,
libpulseaudio,
libusb,
libusb-compat-0_1,
limesuite,
mkDerivation,
ocl-icd,
@ -51,7 +51,7 @@ in mkDerivation rec {
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [
glew opencv3 libusb boost libopus limesuite libav libiio libpulseaudio
glew opencv3 libusb-compat-0_1 boost libopus limesuite libav libiio libpulseaudio
qtbase qtwebsockets qtmultimedia rtl-sdr airspy hackrf
fftwFloat codec2' cm256cc serialdv
];

View file

@ -1,6 +1,6 @@
{ stdenv, lib, lndir, makeWrapper
, fetchFromGitHub, cmake
, libusb, pkgconfig
, libusb-compat-0_1, pkgconfig
, usePython ? false
, python, ncurses, swig2
, extraPackages ? []
@ -25,7 +25,7 @@ in stdenv.mkDerivation {
};
nativeBuildInputs = [ cmake makeWrapper pkgconfig ];
buildInputs = [ libusb ncurses ]
buildInputs = [ libusb-compat-0_1 ncurses ]
++ lib.optionals usePython [ python swig2 ];
propagatedBuildInputs = lib.optional usePython python.pkgs.numpy;

View file

@ -1,6 +1,6 @@
{ mkDerivation, lib, fetchFromGitHub, cmake, pkgconfig
, qtbase, qtcharts, qtmultimedia, qtquickcontrols, qtquickcontrols2
, faad2, rtl-sdr, soapysdr-with-plugins, libusb, fftwSinglePrec, lame, mpg123 }:
, faad2, rtl-sdr, soapysdr-with-plugins, libusb-compat-0_1, fftwSinglePrec, lame, mpg123 }:
let
version = "2.1";
@ -23,7 +23,7 @@ in mkDerivation {
faad2
fftwSinglePrec
lame
libusb
libusb-compat-0_1
mpg123
qtbase
qtcharts

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "fasttext";
version = "0.9.1";
version = "0.9.2";
src = fetchFromGitHub {
owner = "facebookresearch";
repo = "fastText";
rev = "v${version}";
sha256 = "1cbzz98qn8aypp4r5kwwwc9wiq5bwzv51kcsb15xjfs9lz8h3rii";
sha256 = "07cz2ghfq6amcljaxpdr5chbd64ph513y8zqmibfx2xwfp74xkhn";
};
nativeBuildInputs = [ cmake ];

View file

@ -4,7 +4,7 @@
, SDL2
, libGL
, libarchive
, libusb
, libusb-compat-0_1
, qtbase
, qmake
, git
@ -33,7 +33,7 @@ mkDerivation rec {
SDL2
libGL
libarchive
libusb
libusb-compat-0_1
qtbase
libpng_apng
];

View file

@ -10,7 +10,7 @@
}:
let
majMin = stdenv.lib.versions.majorMinor version;
version = "7.5.1";
version = "7.6.9";
fahclient = stdenv.mkDerivation rec {
inherit version;
@ -18,7 +18,7 @@ let
src = fetchurl {
url = "https://download.foldingathome.org/releases/public/release/fahclient/debian-stable-64bit/v${majMin}/fahclient_${version}_amd64.deb";
hash = "sha256-7+RwYdMoZnJZwYFbmLxsN9ozk2P7jpOGZz9qlvTTfSY=";
sha256 = "1v4yijjjdq9qx1fp60flp9ya6ywl9qdsgkzwmzjzp8sd5gfvhyr6";
};
nativeBuildInputs = [

View file

@ -8,7 +8,7 @@
}:
let
majMin = stdenv.lib.versions.majorMinor version;
version = "7.5.1";
version = "7.6.9";
python = python2.withPackages
(
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://download.foldingathome.org/releases/public/release/fahcontrol/debian-stable-64bit/v${majMin}/fahcontrol_${version}-1_all.deb";
hash = "sha256-ydN4I6vmZpI9kD+/TXxgWc+AQqIIlUvABEycWmY1tNg=";
sha256 = "1fh7ybbp3qlqzh18c4gva3aaymv7d31mqchrv235a1axldha1s9s";
};
nativeBuildInputs = [

View file

@ -11,7 +11,7 @@
}:
let
majMin = stdenv.lib.versions.majorMinor version;
version = "7.5.1";
version = "7.6.9";
in
stdenv.mkDerivation rec {
inherit version;
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://download.foldingathome.org/releases/public/release/fahviewer/debian-stable-64bit/v${majMin}/fahviewer_${version}_amd64.deb";
hash = "sha256-yH0zGjX8aNBEJ5lq7wWydcpp2rO+9Ah++q9eJ+ldeyk=";
sha256 = "04wr86g11wpmsczzwzak4gvalcihb47rn3zp6qriawhxyac9nf93";
};
nativeBuildInputs = [

View file

@ -1,7 +1,7 @@
{ stdenv, fetchurl, cmake, pkgconfig, boost, protobuf, freeimage
, boost-build, boost_process
, xorg_sys_opengl, tbb, ogre, tinyxml-2
, libtar, glxinfo, libusb, libxslt, ignition
, libtar, glxinfo, libusb-compat-0_1, libxslt, ignition
, pythonPackages, utillinux
# these deps are hidden; cmake doesn't catch them
@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
tinyxml-2
libtar
glxinfo
libusb
libusb-compat-0_1
libxslt
ignition.math2
sdformat

View file

@ -25,7 +25,7 @@
, rtmpSupport ? true, rtmpdump ? null
, sambaSupport ? true, samba ? null
, udevSupport ? true, udev ? null
, usbSupport ? false, libusb ? null
, usbSupport ? false, libusb-compat-0_1 ? null
, vdpauSupport ? true, libvdpau ? null
, useWayland ? false, wayland ? null, wayland-protocols ? null
, waylandpp ? null, libxkbcommon ? null
@ -39,7 +39,7 @@ assert pulseSupport -> libpulseaudio != null;
assert rtmpSupport -> rtmpdump != null;
assert sambaSupport -> samba != null;
assert udevSupport -> udev != null;
assert usbSupport -> libusb != null && ! udevSupport; # libusb won't be used if udev is avaliable
assert usbSupport -> libusb-compat-0_1 != null && ! udevSupport; # libusb-compat-0_1 won't be used if udev is avaliable
assert vdpauSupport -> libvdpau != null;
assert useWayland -> wayland != null && wayland-protocols != null && waylandpp != null && libxkbcommon != null;
@ -189,7 +189,7 @@ in stdenv.mkDerivation {
++ lib.optional rtmpSupport rtmpdump
++ lib.optional sambaSupport samba
++ lib.optional udevSupport udev
++ lib.optional usbSupport libusb
++ lib.optional usbSupport libusb-compat-0_1
++ lib.optional vdpauSupport libvdpau
++ lib.optionals useWayland [
wayland

View file

@ -1,6 +1,26 @@
{ mkDerivation, stdenv, fetchurl, qt5, ffmpeg, guvcview, cmake, ninja, libxml2
, gettext, pkgconfig, libgphoto2, gphoto2, v4l-utils, libv4l, pcre
, qwt, extra-cmake-modules }:
{ stdenv
, mkDerivation
, fetchurl
, qtbase
, qtmultimedia
, qtquickcontrols
, qtimageformats
, qtxmlpatterns
, ffmpeg
, guvcview
, cmake
, ninja
, libxml2
, gettext
, pkgconfig
, libgphoto2
, gphoto2
, v4l-utils
, libv4l
, pcre
, qwt
, extra-cmake-modules
}:
mkDerivation rec {
pname = "qstopmotion";
@ -11,11 +31,31 @@ mkDerivation rec {
sha256 = "03r6jxyq0bak2vsy2b78nk27m7fm96hnl8cx11l3l17704j4iglh";
};
buildInputs = with qt5; [ v4l-utils libv4l pcre qtbase qtmultimedia ffmpeg guvcview
qwt qtquickcontrols qtimageformats qtxmlpatterns ];
buildInputs = [
qtbase
qtmultimedia
qtquickcontrols
qtimageformats
qtxmlpatterns
v4l-utils
libv4l
pcre
ffmpeg
guvcview
qwt
];
nativeBuildInputs = [ pkgconfig cmake extra-cmake-modules ninja
gettext libgphoto2 gphoto2 libxml2 libv4l ];
nativeBuildInputs = [
pkgconfig
cmake
extra-cmake-modules
ninja
gettext
libgphoto2
gphoto2
libxml2
libv4l
];
patchPhase = ''
substituteInPlace CMakeLists.txt \
@ -36,6 +76,7 @@ mkDerivation rec {
license = stdenv.lib.licenses.gpl2Plus;
maintainers = [ maintainers.leenaars ];
broken = stdenv.isAarch64;
platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux;
};
}

View file

@ -16,11 +16,9 @@
, which
}:
let
buildTags = "apparmor seccomp selinux containers_image_ostree_stub";
in buildGoPackage rec {
buildGoPackage rec {
project = "cri-o";
version = "1.17.3";
version = "1.18.0";
name = "${project}-${version}${flavor}";
goPackagePath = "github.com/${project}/${project}";
@ -29,7 +27,7 @@ in buildGoPackage rec {
owner = "cri-o";
repo = "cri-o";
rev = "v${version}";
sha256 = "1cy2lqasfn5n20vlm3ckb6myci8ya6qv08dw8fq7z4ycnm39r1a6";
sha256 = "142flmv54pj48rjqkd26fbxrcbx2cv6pdmrc33jgyvn6r99zliah";
};
outputs = [ "bin" "out" ];
@ -38,13 +36,11 @@ in buildGoPackage rec {
libseccomp libselinux lvm2 ]
++ stdenv.lib.optionals (glibc != null) [ glibc glibc.static ];
BUILDTAGS = "apparmor seccomp selinux containers_image_ostree_stub";
buildPhase = ''
pushd go/src/${goPackagePath}
make BUILDTAGS='${buildTags}' \
bin/crio \
bin/crio-status \
bin/pinns
make binaries BUILDTAGS="$BUILDTAGS"
'';
installPhase = ''
install -Dm755 bin/crio $bin/bin/crio${flavor}

View file

@ -14,13 +14,13 @@
buildGoPackage rec {
pname = "podman";
version = "1.9.0";
version = "1.9.1";
src = fetchFromGitHub {
owner = "containers";
repo = "libpod";
rev = "v${version}";
sha256 = "19y48lpf7pvw5f5pzpknn92rq9xwbrpvi8mj7mc4dby6skqadrk4";
sha256 = "0dr5vd52fnjwx3zn2nj2nlvkbvh5bg579nf3qw8swrn8i1jwxd6j";
};
goPackagePath = "github.com/containers/libpod";

View file

@ -3,6 +3,9 @@
, libpng, glib, lvm2, libXrandr, libXinerama, libopus, qtbase, qtx11extras
, qttools, qtsvg, qtwayland, pkgconfig, which, docbook_xsl, docbook_xml_dtd_43
, alsaLib, curl, libvpx, nettools, dbus, substituteAll, fetchpatch
# If open-watcom-bin is not passed, VirtualBox will fall back to use
# the shipped alternative sources (assembly).
, open-watcom-bin ? null
, makeself, perl
, javaBindings ? true, jdk ? null # Almost doesn't affect closure size
, pythonBindings ? false, python3 ? null
@ -148,6 +151,7 @@ in stdenv.mkDerivation {
${optionalString (!pulseSupport) "--disable-pulse"} \
${optionalString (!enableHardening) "--disable-hardening"} \
${optionalString (!enable32bitGuests) "--disable-vmmraw"} \
${optionalString (open-watcom-bin != null) "--with-ow-dir=${open-watcom-bin}"} \
--disable-kmods
sed -e 's@PKG_CONFIG_PATH=.*@PKG_CONFIG_PATH=${libIDL}/lib/pkgconfig:${glib.dev}/lib/pkgconfig ${libIDL}/bin/libIDL-config-2@' \
-i AutoConfig.kmk

View file

@ -1,4 +1,4 @@
{ stdenv, makeWrapper, nix, skopeo }:
{ stdenv, makeWrapper, nix, skopeo, jq }:
with stdenv.lib;
@ -12,7 +12,7 @@ stdenv.mkDerivation {
installPhase = ''
install -vD ${./nix-prefetch-docker} $out/bin/$name;
wrapProgram $out/bin/$name \
--prefix PATH : ${makeBinPath [ nix skopeo ]} \
--prefix PATH : ${makeBinPath [ nix skopeo jq ]} \
--set HOME /homeless-shelter
'';

View file

@ -26,13 +26,13 @@
stdenv.mkDerivation rec {
pname = "gala";
version = "3.3.0";
version = "3.3.1";
src = fetchFromGitHub {
owner = "elementary";
repo = pname;
rev = version;
sha256 = "02g6x190lylng8d07pwx2bqcc71rq48f0dxh30mgndfii6k21qgs";
sha256 = "03cq9ihgjasnv1n4v3dn1m3ypzj26k2ybd5b1a7yrbprb35zbrs4";
};
passthru = {

View file

@ -1,5 +1,5 @@
{ stdenv, lib, fetchFromGitHub, fetchurl, jdk, ant
, libusb, libusb1, unzip, zlib, ncurses, readline
, libusb-compat-0_1, libusb1, unzip, zlib, ncurses, readline
, withGui ? false, gtk2 ? null, withTeensyduino ? false
/* Packages needed for Teensyduino */
, upx, fontconfig, xorg, gcc
@ -42,7 +42,7 @@ let
glib
gtk2
libpng12
libusb
libusb-compat-0_1
pango
udev
xorg.libSM
@ -96,7 +96,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [ jdk ant libusb libusb1 unzip zlib ncurses5 readline
buildInputs = [ jdk ant libusb-compat-0_1 libusb1 unzip zlib ncurses5 readline
] ++ stdenv.lib.optionals withTeensyduino [ upx ];
downloadSrcList = builtins.attrValues externalDownloads;
downloadDstList = builtins.attrNames externalDownloads;
@ -129,7 +129,7 @@ stdenv.mkDerivation rec {
javaPath = lib.makeBinPath [jdk];
# Everything else will be patched into rpath
rpath = (lib.makeLibraryPath [zlib libusb libusb1 readline ncurses5 stdenv.cc.cc]);
rpath = (lib.makeLibraryPath [zlib libusb-compat-0_1 libusb1 readline ncurses5 stdenv.cc.cc]);
installPhase = ''
mkdir -p $out/share/arduino

View file

@ -13,10 +13,14 @@ assert builtins.elem type [ "aspnetcore" "netcore" "sdk"];
, curl
}:
let pname = if type == "aspnetcore" then "aspnetcore-runtime" else if type == "netcore" then "dotnet-runtime" else "dotnet-sdk";
suffix = {
x86_64-linux = "x64";
aarch64-linux = "arm64";
}."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
urls = {
aspnetcore = "https://dotnetcli.azureedge.net/dotnet/aspnetcore/Runtime/${version}/${pname}-${version}-linux-x64.tar.gz";
netcore = "https://dotnetcli.azureedge.net/dotnet/Runtime/${version}/${pname}-${version}-linux-x64.tar.gz";
sdk = "https://dotnetcli.azureedge.net/dotnet/Sdk/${version}/${pname}-${version}-linux-x64.tar.gz";
aspnetcore = "https://dotnetcli.azureedge.net/dotnet/aspnetcore/Runtime/${version}/${pname}-${version}-linux-${suffix}.tar.gz";
netcore = "https://dotnetcli.azureedge.net/dotnet/Runtime/${version}/${pname}-${version}-linux-${suffix}.tar.gz";
sdk = "https://dotnetcli.azureedge.net/dotnet/Sdk/${version}/${pname}-${version}-linux-${suffix}.tar.gz";
};
descriptions = {
aspnetcore = "ASP .NET Core runtime ${version}";
@ -30,7 +34,7 @@ in stdenv.mkDerivation rec {
src = fetchurl {
url = builtins.getAttr type urls;
inherit sha512;
sha512 = sha512."${stdenv.hostPlatform.system}" or (throw "Missing hash for host system: ${stdenv.hostPlatform.system}");
};
sourceRoot = ".";
@ -61,7 +65,7 @@ in stdenv.mkDerivation rec {
meta = with stdenv.lib; {
homepage = "https://dotnet.github.io/";
description = builtins.getAttr type descriptions;
platforms = [ "x86_64-linux" ];
platforms = [ "x86_64-linux" "aarch64-linux" ];
maintainers = with maintainers; [ kuznero ];
license = licenses.mit;
};

View file

@ -5,27 +5,37 @@ dotnetCombined = with dotnetCorePackages; combinePackages [ sdk_3_1 sdk_2_2 sdk_
{ callPackage }:
let
buildDotnet = attrs: callPackage (import ./buildDotnet.nix attrs) {};
buildAspNetCore = attrs: buildDotnet (attrs // { type = "aspnetcore"; } );
buildNetCore = attrs: buildDotnet (attrs // { type = "netcore"; } );
buildNetCoreSdk = attrs: buildDotnet (attrs // { type = "sdk"; } );
in rec {
buildAspNetCore = attrs: buildDotnet (attrs // { type = "aspnetcore"; });
buildNetCore = attrs: buildDotnet (attrs // { type = "netcore"; });
buildNetCoreSdk = attrs: buildDotnet (attrs // { type = "sdk"; });
in
rec {
combinePackages = attrs: callPackage (import ./combinePackages.nix attrs) {};
# v2.1.15 (LTS)
aspnetcore_2_1 = buildAspNetCore {
version = "2.1.16";
sha512 = "0awdzi8dysbg8xcy4l8wx2sb8gaaklphmwv61qxh7dj6ih4nla34l02xdax1l8nw41znnnqzsa77avglnrz36pckm9mc52m7wc7877h";
sha512 = {
x86_64-linux = "0awdzi8dysbg8xcy4l8wx2sb8gaaklphmwv61qxh7dj6ih4nla34l02xdax1l8nw41znnnqzsa77avglnrz36pckm9mc52m7wc7877h";
aarch64-linux = null; # no aarch64 version of this package is available
};
};
netcore_2_1 = buildNetCore {
version = "2.1.16";
sha512 = "07vvmza32hsblpw4zpcksm2gicy4agh0d1fwradqj16y6xbh3frdp87mqgbj5m54mmyfp5bc8c46v1w6dfm1w3y80v2y46aynild45l";
sha512 = {
x86_64-linux = "07vvmza32hsblpw4zpcksm2gicy4agh0d1fwradqj16y6xbh3frdp87mqgbj5m54mmyfp5bc8c46v1w6dfm1w3y80v2y46aynild45l";
aarch64-linux = "27ab982vz9rn2vzpq68dqfzhryfixq3s0apx7vi0cwiray3scgfmf45fm7qj63k9mvaqnk5g69i339109yasw3q5vpvpyjc1ykbi710";
};
};
sdk_2_1 = buildNetCoreSdk {
version = "2.1.804";
sha512 = "1kbzxcdgyvs94kkm6ikr1j0p0k3zq30d10sl69ig0rgbqbqm4rpqi6dq94jjbw7q3jlwz83vgq3549q38d2s9kalmzv9lmddn2kkc42";
sha512 = {
x86_64-linux = "1kbzxcdgyvs94kkm6ikr1j0p0k3zq30d10sl69ig0rgbqbqm4rpqi6dq94jjbw7q3jlwz83vgq3549q38d2s9kalmzv9lmddn2kkc42";
aarch64-linux = "2d97xvhxnkdgghqlichkwdxxh641dzkd9hq5xgffgvbqv1qsh31k9yib2q1nsarpnbx0d758bdn2jm2wvsj7nx0gpxlb3nab0b3hc2g";
};
};
# v2.2
@ -36,33 +46,51 @@ in rec {
aspnetcore_3_0 = buildAspNetCore {
version = "3.0.3";
sha512 = "342v6kxxbxky09d1c392vvr9rm30lf75wccka1bk2h4advlcga5nlgv93g7vrq48bsyxfi5gc36r3b0dlwl1g409g5mlk1042n6d0yq";
sha512 = {
x86_64-linux = "342v6kxxbxky09d1c392vvr9rm30lf75wccka1bk2h4advlcga5nlgv93g7vrq48bsyxfi5gc36r3b0dlwl1g409g5mlk1042n6d0yq";
aarch64-linux = "2xkg4q88q5jw6jdz6cxj8vsjr475nd0fcvifkv1shdm2j9dsjy233hwpxbr140m5n5ggyh6z99238z9j4kp2az977y8y8irz8m8ppvf";
};
};
netcore_3_0 = buildNetCore {
version = "3.0.3";
sha512 = "32ykpcw2xx708r2lxcwcbxnmy4sk159rlfjfvkw990qh7n79pm3lm2qwa3zhqcslznmpg18kwxz8qb5fgsa0h49g843xx4kyai0n7rx";
sha512 = {
x86_64-linux = "32ykpcw2xx708r2lxcwcbxnmy4sk159rlfjfvkw990qh7n79pm3lm2qwa3zhqcslznmpg18kwxz8qb5fgsa0h49g843xx4kyai0n7rx";
aarch64-linux = "1lp8din7d5jv5fkyq1a7m01i1xg9jwpiljvam1kcyzsnwzvi0cb4ji336cfx4lqrn95gvc75gkzi6q8b4fz0h21gvk6z6kmlcr63nyg";
};
};
sdk_3_0 = buildNetCoreSdk {
version = "3.0.103";
sha512 = "2diiplgxs92fkb6ym68b02d79z4qn63x5qlky5lvr757c1zkh0vfpk3khawdg94kdn4qkn6dmyqr0msxqgmiqyhp63cadzqq4vx7b12";
sha512 = {
x86_64-linux = "2diiplgxs92fkb6ym68b02d79z4qn63x5qlky5lvr757c1zkh0vfpk3khawdg94kdn4qkn6dmyqr0msxqgmiqyhp63cadzqq4vx7b12";
aarch64-linux = "32843q2lj7dgciq62g9v1q31vwfjyv5vaxrz712d942mcg5lyzjygwri106bv4naq3a22131ldzwnsifbdn2vq1iz60raqdb7ss9vnf";
};
};
# v3.1.1 (LTS)
aspnetcore_3_1 = buildAspNetCore {
version = "3.1.2";
sha512 = "27708bk5liz8r39p4dzs41clgq298d49g8ipzdj56pz613vkfyv7bp91666ydz36aazm265j2g9ji3sk1f9kbgv6024zwrly5w9vqrm";
sha512 = {
x86_64-linux = "27708bk5liz8r39p4dzs41clgq298d49g8ipzdj56pz613vkfyv7bp91666ydz36aazm265j2g9ji3sk1f9kbgv6024zwrly5w9vqrm";
aarch64-linux = "2sm5yf376w5dm0za3gbcj251kc909fmlasmlyn70zhqp2jiii075vcqh40racjlwlhsfydx32cw7kgnv238lad5mw5jxy143zql5xl3";
};
};
netcore_3_1 = buildNetCore {
version = "3.1.2";
sha512 = "3zwg1anrcni9kagmjxn485bpjvb146hkm7irmikq3v879gjhd2fgpscg226ds83l4pxll3r7lwris6ij952xmy8lsqraapd9111ba14";
sha512 = {
x86_64-linux = "3zwg1anrcni9kagmjxn485bpjvb146hkm7irmikq3v879gjhd2fgpscg226ds83l4pxll3r7lwris6ij952xmy8lsqraapd9111ba14";
aarch64-linux = "3hf61d5adlfffy51627ypp36qc5r55g9xwgfxqd0c7vj9bqmpiph673bvqqpr189df9shxr21p94cwrc5n36z72a37vw4ic8ks2yayx";
};
};
sdk_3_1 = buildNetCoreSdk {
version = "3.1.102";
sha512 = "0lmz8ac5j0i4zcq4904kr6qibvyjcm2ckfg27kqyqfii00qmm80xb5sk3i7f06xqkbgkrqkbg9rsldk75akw6m5dxg932j602bxrb4w";
sha512 = {
x86_64-linux = "0lmz8ac5j0i4zcq4904kr6qibvyjcm2ckfg27kqyqfii00qmm80xb5sk3i7f06xqkbgkrqkbg9rsldk75akw6m5dxg932j602bxrb4w";
aarch64-linux = "34k6cm69gxm7vcd9m6bp47sdx96j32z6lfhb2vjcdznc6xgs2wy8zcang3b1mjm5919dq7v6iysm6ffcpgjhhphy7prlnaqa69q5mks";
};
};
}

View file

@ -1,247 +0,0 @@
{ stdenv, fetchurl, tzdata, iana-etc, runCommand
, perl, which, pkgconfig, patch, procps, pcre, cacert, Security, Foundation
, mailcap, runtimeShell
, buildPackages, pkgsTargetTarget
}:
let
inherit (stdenv.lib) optionals optionalString;
goBootstrap = runCommand "go-bootstrap" {} ''
mkdir $out
cp -rf ${buildPackages.go_bootstrap}/* $out/
chmod -R u+w $out
find $out -name "*.c" -delete
cp -rf $out/bin/* $out/share/go/bin/
'';
goarch = platform: {
i686 = "386";
x86_64 = "amd64";
aarch64 = "arm64";
arm = "arm";
armv5tel = "arm";
armv6l = "arm";
armv7l = "arm";
}.${platform.parsed.cpu.name} or (throw "Unsupported system");
in
stdenv.mkDerivation rec {
pname = "go";
version = "1.12.17";
src = fetchurl {
url = "https://dl.google.com/go/go${version}.src.tar.gz";
sha256 = "09cbl90maxry713wd18jdqrms3ivbvcm472csnxc78rsqhc851yy";
};
# perl is used for testing go vet
nativeBuildInputs = [ perl which pkgconfig patch procps ];
buildInputs = [ cacert pcre ]
++ optionals stdenv.isLinux [ stdenv.cc.libc.out ]
++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ];
hardeningDisable = [ "all" ];
prePatch = ''
patchShebangs ./ # replace /bin/bash
# This source produces shell script at run time,
# and thus it is not corrected by patchShebangs.
substituteInPlace misc/cgo/testcarchive/carchive_test.go \
--replace '#!/usr/bin/env bash' '#!${runtimeShell}'
# Patch the mimetype database location which is missing on NixOS.
substituteInPlace src/mime/type_unix.go \
--replace '/etc/mime.types' '${mailcap}/etc/mime.types'
# Disabling the 'os/http/net' tests (they want files not available in
# chroot builds)
rm src/net/{listen,parse}_test.go
rm src/syscall/exec_linux_test.go
# !!! substituteInPlace does not seems to be effective.
# The os test wants to read files in an existing path. Just don't let it be /usr/bin.
sed -i 's,/usr/bin,'"`pwd`", src/os/os_test.go
sed -i 's,/bin/pwd,'"`type -P pwd`", src/os/os_test.go
# Disable the unix socket test
sed -i '/TestShutdownUnix/areturn' src/net/net_test.go
# Disable the hostname test
sed -i '/TestHostname/areturn' src/os/os_test.go
# ParseInLocation fails the test
sed -i '/TestParseInSydney/areturn' src/time/format_test.go
# Remove the api check as it never worked
sed -i '/src\/cmd\/api\/run.go/ireturn nil' src/cmd/dist/test.go
# Remove the coverage test as we have removed this utility
sed -i '/TestCoverageWithCgo/areturn' src/cmd/go/go_test.go
# Remove the timezone naming test
sed -i '/TestLoadFixed/areturn' src/time/time_test.go
# Remove disable setgid test
sed -i '/TestRespectSetgidDir/areturn' src/cmd/go/internal/work/build_test.go
# Remove cert tests that conflict with NixOS's cert resolution
sed -i '/TestEnvVars/areturn' src/crypto/x509/root_unix_test.go
# TestWritevError hangs sometimes
sed -i '/TestWritevError/areturn' src/net/writev_test.go
# TestVariousDeadlines fails sometimes
sed -i '/TestVariousDeadlines/areturn' src/net/timeout_test.go
sed -i 's,/etc/protocols,${iana-etc}/etc/protocols,' src/net/lookup_unix.go
sed -i 's,/etc/services,${iana-etc}/etc/services,' src/net/port_unix.go
# Disable cgo lookup tests not works, they depend on resolver
rm src/net/cgo_unix_test.go
# Disable TestGcSys because it's flakey in our tests, but the failure is not
# reproducible by multiple people in other environments.
# See https://github.com/NixOS/nixpkgs/issues/68361#issuecomment-537849272 and following
# NOTE: Try re-enabling for releases newer than 1.12.9
sed -i '/TestGcSys/areturn' src/runtime/gc_test.go
'' + optionalString stdenv.isLinux ''
sed -i 's,/usr/share/zoneinfo/,${tzdata}/share/zoneinfo/,' src/time/zoneinfo_unix.go
'' + optionalString stdenv.isAarch32 ''
echo '#!${runtimeShell}' > misc/cgo/testplugin/test.bash
'' + optionalString stdenv.isDarwin ''
substituteInPlace src/race.bash --replace \
"sysctl machdep.cpu.extfeatures | grep -qv EM64T" true
sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go
sed -i 's,"/etc","'"$TMPDIR"'",' src/os/os_test.go
sed -i 's,/_go_os_test,'"$TMPDIR"'/_go_os_test,' src/os/path_test.go
sed -i '/TestChdirAndGetwd/areturn' src/os/os_test.go
sed -i '/TestCredentialNoSetGroups/areturn' src/os/exec/exec_posix_test.go
sed -i '/TestRead0/areturn' src/os/os_test.go
sed -i '/TestSystemRoots/areturn' src/crypto/x509/root_darwin_test.go
sed -i '/TestGoInstallRebuildsStalePackagesInOtherGOPATH/areturn' src/cmd/go/go_test.go
sed -i '/TestBuildDashIInstallsDependencies/areturn' src/cmd/go/go_test.go
sed -i '/TestDisasmExtld/areturn' src/cmd/objdump/objdump_test.go
sed -i 's/unrecognized/unknown/' src/cmd/link/internal/ld/lib.go
# TestCurrent fails because Current is not implemented on Darwin
sed -i 's/TestCurrent/testCurrent/g' src/os/user/user_test.go
sed -i 's/TestLookup/testLookup/g' src/os/user/user_test.go
touch $TMPDIR/group $TMPDIR/hosts $TMPDIR/passwd
'';
patches = [
./remove-tools-1.11.patch
./ssl-cert-file-1.12.1.patch
./remove-test-pie.patch
./creds-test.patch
./go-1.9-skip-flaky-19608.patch
./go-1.9-skip-flaky-20072.patch
./skip-external-network-tests.patch
./skip-nohup-tests.patch
] ++ [
# breaks under load: https://github.com/golang/go/issues/25628
(if stdenv.isAarch32
then ./skip-test-extra-files-on-aarch32.patch
else ./skip-test-extra-files-on-386.patch)
];
postPatch = ''
find . -name '*.orig' -exec rm {} ';'
'';
GOOS = stdenv.targetPlatform.parsed.kernel.name;
GOARCH = goarch stdenv.targetPlatform;
# GOHOSTOS/GOHOSTARCH must match the building system, not the host system.
# Go will nevertheless build a for host system that we will copy over in
# the install phase.
GOHOSTOS = stdenv.buildPlatform.parsed.kernel.name;
GOHOSTARCH = goarch stdenv.buildPlatform;
# {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those
# to be different from CC/CXX
CC_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
"${pkgsTargetTarget.stdenv.cc}/bin/${pkgsTargetTarget.stdenv.cc.targetPrefix}cc"
else
null;
CXX_FOR_TARGET = if (stdenv.buildPlatform != stdenv.targetPlatform) then
"${pkgsTargetTarget.stdenv.cc}/bin/${pkgsTargetTarget.stdenv.cc.targetPrefix}c++"
else
null;
GOARM = toString (stdenv.lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);
GO386 = 387; # from Arch: don't assume sse2 on i686
CGO_ENABLED = 1;
# Hopefully avoids test timeouts on Hydra
GO_TEST_TIMEOUT_SCALE = 3;
# Indicate that we are running on build infrastructure
# Some tests assume things like home directories and users exists
GO_BUILDER_NAME = "nix";
GOROOT_BOOTSTRAP="${goBootstrap}/share/go";
postConfigure = ''
export GOCACHE=$TMPDIR/go-cache
# this is compiled into the binary
export GOROOT_FINAL=$out/share/go
export PATH=$(pwd)/bin:$PATH
# Independent from host/target, CC should produce code for the building system.
export CC=${buildPackages.stdenv.cc}/bin/cc
ulimit -a
'';
postBuild = ''
(cd src && ./make.bash)
'';
doCheck = stdenv.hostPlatform == stdenv.targetPlatform && !stdenv.isDarwin;
checkPhase = ''
runHook preCheck
(cd src && HOME=$TMPDIR GOCACHE=$TMPDIR/go-cache ./run.bash --no-rebuild)
runHook postCheck
'';
preInstall = ''
rm -r pkg/{bootstrap,obj}
# Contains the wrong perl shebang when cross compiling,
# since it is not used for anything we can deleted as well.
rm src/regexp/syntax/make_perl_groups.pl
'' + (if (stdenv.buildPlatform != stdenv.hostPlatform) then ''
mv bin/*_*/* bin
rmdir bin/*_*
${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH}
''}
'' else if (stdenv.hostPlatform != stdenv.targetPlatform) then ''
rm -rf bin/*_*
${optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH}
''}
'' else "");
installPhase = ''
runHook preInstall
mkdir -p $GOROOT_FINAL
cp -a bin pkg src lib misc api doc $GOROOT_FINAL
ln -s $GOROOT_FINAL/bin $out/bin
runHook postInstall
'';
setupHook = ./setup-hook.sh;
disallowedReferences = [ goBootstrap ];
meta = with stdenv.lib; {
branch = "1.12";
homepage = "http://golang.org/";
description = "The Go Programming language";
license = licenses.bsd3;
maintainers = with maintainers; [ cstrahan orivej mic92 rvolosatovs Frostman ];
platforms = platforms.linux ++ platforms.darwin;
};
}

View file

@ -1,24 +0,0 @@
--- source.org/src/cmd/dist/test.go 2018-02-22 10:40:40.089632339 +0000
+++ source/src/cmd/dist/test.go 2018-02-22 10:56:53.075193788 +0000
@@ -526,21 +526,6 @@
})
}
- // Test internal linking of PIE binaries where it is supported.
- if goos == "linux" && goarch == "amd64" && !isAlpineLinux() {
- // Issue 18243: We don't have a way to set the default
- // dynamic linker used in internal linking mode. So
- // this test is skipped on Alpine.
- t.tests = append(t.tests, distTest{
- name: "pie_internal",
- heading: "internal linking of -buildmode=pie",
- fn: func(dt *distTest) error {
- t.addCmd(dt, "src", t.goTest(), "reflect", "-buildmode=pie", "-ldflags=-linkmode=internal", t.timeout(60))
- return nil
- },
- })
- }
-
// sync tests
t.tests = append(t.tests, distTest{
name: "sync_cpu",

View file

@ -1,59 +0,0 @@
diff -Naur a/src/crypto/x509/root_cgo_darwin.go b/src/crypto/x509/root_cgo_darwin.go
--- a/src/crypto/x509/root_cgo_darwin.go 2019-03-15 11:33:55.920232337 -0700
+++ b/src/crypto/x509/root_cgo_darwin.go 2019-03-15 11:34:53.323180897 -0700
@@ -270,11 +270,20 @@
import "C"
import (
"errors"
+ "io/ioutil"
+ "os"
"unsafe"
)
func loadSystemRoots() (*CertPool, error) {
roots := NewCertPool()
+ if file := os.Getenv("NIX_SSL_CERT_FILE"); file != "" {
+ data, err := ioutil.ReadFile(file)
+ if err == nil {
+ roots.AppendCertsFromPEM(data)
+ return roots, nil
+ }
+ }
var data C.CFDataRef = 0
var untrustedData C.CFDataRef = 0
diff -Naur a/src/crypto/x509/root_darwin.go b/src/crypto/x509/root_darwin.go
--- a/src/crypto/x509/root_darwin.go 2019-03-15 11:33:55.920232337 -0700
+++ b/src/crypto/x509/root_darwin.go 2019-03-15 11:36:21.205123541 -0700
@@ -92,6 +92,14 @@
verifyCh = make(chan rootCandidate)
)
+ if file := os.Getenv("NIX_SSL_CERT_FILE"); file != "" {
+ data, err := ioutil.ReadFile(file)
+ if err == nil {
+ roots.AppendCertsFromPEM(data)
+ return roots, nil
+ }
+ }
+
// Using 4 goroutines to pipe into verify-cert seems to be
// about the best we can do. The verify-cert binary seems to
// just RPC to another server with coarse locking anyway, so
diff -Naur a/src/crypto/x509/root_unix.go b/src/crypto/x509/root_unix.go
--- a/src/crypto/x509/root_unix.go 2019-03-15 11:33:55.920232337 -0700
+++ b/src/crypto/x509/root_unix.go 2019-03-15 11:37:15.737326340 -0700
@@ -38,6 +38,13 @@
func loadSystemRoots() (*CertPool, error) {
roots := NewCertPool()
+ if file := os.Getenv("NIX_SSL_CERT_FILE"); file != "" {
+ data, err := ioutil.ReadFile(file)
+ if err == nil {
+ roots.AppendCertsFromPEM(data)
+ return roots, nil
+ }
+ }
files := certFiles
if f := os.Getenv(certFileEnv); f != "" {

View file

@ -0,0 +1,67 @@
{ stdenvNoCC, fetchurl, qemu, expect, writeScript, ncurses }:
let
# We execute the installer in qemu-user, because otherwise the
# installer fails to open itself due to a failed stat() call. This
# seems like an incompatibility of new Linux kernels to run this
# ancient binary.
performInstall = writeScript "perform-ow-install" ''
#!${expect}/bin/expect -f
spawn env TERMINFO=${ncurses}/share/terminfo TERM=vt100 ${qemu}/bin/qemu-i386 [lindex $argv 0]
# Wait for button saying "I agree" with escape sequences.
expect "gree"
# Navigate to "I Agree!" and hit enter.
send "\t\t\n"
expect "Install Open Watcom"
# Where do we want to install to.
send "$env(out)\n"
expect "will be installed"
# Select Full Installation, Next
send "fn"
expect "Setup will now copy"
# Next
send "n"
expect "completed successfully"
send "\n"
'';
in
stdenvNoCC.mkDerivation rec {
pname = "open-watcom-bin";
version = "1.9";
src = fetchurl {
url = "http://ftp.openwatcom.org/install/open-watcom-c-linux-${version}";
sha256 = "1wzkvc6ija0cjj5mcyjng5b7hnnc5axidz030c0jh05pgvi4nj7p";
};
dontUnpack = true;
dontBuild = true;
dontConfigure = true;
installPhase = ''
cp ${src} install-bin
chmod +x install-bin
${performInstall} install-bin
'';
meta = with stdenvNoCC.lib; {
description = "A C/C++ Compiler (binary distribution)";
homepage = "http://www.openwatcom.org/";
license = licenses.watcom;
platforms = [ "x86_64-linux" "i686-linux" ];
maintainers = [ maintainers.blitz ];
};
}

View file

@ -4,18 +4,18 @@
stdenv.mkDerivation rec {
pname = "unison-code-manager";
milestone_id = "M1j";
milestone_id = "M1l";
version = "1.0.${milestone_id}-alpha";
src = if (stdenv.isDarwin) then
fetchurl {
url = "https://github.com/unisonweb/unison/releases/download/release/${milestone_id}/unison-osx.tar.gz";
sha256 = "1pvdjmasgl22inbr8nlizsg8s5zagn8bzwhaxqmwafkpsskz0hsg";
sha256 = "0qbxakrp3p3k3k8a1m2g24ivs3c8j5rj7ij84i7k548505rva9qr";
}
else
fetchurl {
url = "https://github.com/unisonweb/unison/releases/download/release/${milestone_id}/unison-linux64.tar.gz";
sha256 = "1xpblx405cp3mv0vrhcqwjlxvrhgmc77mxbvcy93srxja3qai1af";
sha256 = "152yzv7j4nyp228ngzbhki9fid1xdqrjvl1rwxc05wq30jwwqx0x";
};
# The tarball is just the prebuilt binary, in the archive root.

View file

@ -1,10 +1,10 @@
{ stdenv, fetchurl, which, coq, flocq }:
stdenv.mkDerivation {
name = "coq${coq.coq-version}-gappalib-1.4.1";
name = "coq${coq.coq-version}-gappalib-1.4.3";
src = fetchurl {
url = "https://gforge.inria.fr/frs/download.php/file/37917/gappalib-coq-1.4.1.tar.gz";
sha256 = "0d3f23a871haglg8hq1jgxz3y5nryiwy12b5xfnfjn279jfqqjw4";
url = "https://gforge.inria.fr/frs/download.php/file/38302/gappalib-coq-1.4.3.tar.gz";
sha256 = "108k9dks04wbcqz38pf0zz11hz5imbzimpnkgjrk5gp1hifih370";
};
nativeBuildInputs = [ which ];
@ -24,7 +24,7 @@ stdenv.mkDerivation {
};
passthru = {
compatibleCoqVersions = stdenv.lib.flip builtins.elem [ "8.7" "8.8" "8.9" ];
compatibleCoqVersions = stdenv.lib.flip builtins.elem [ "8.8" "8.9" "8.10" "8.11" ];
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, unzip, version ? "2.7.1" }:
{ stdenv, fetchurl, unzip, version ? "2.7.2" }:
let
@ -24,29 +24,29 @@ let
url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${aarch64}-release.zip";
sha256 = "1p5bn04gr91chcszgmw5ng8mlzgwsrdr2v7k7ppwr1slkx97fsrh";
};
"2.7.1-x86_64-linux" = fetchurl {
"2.7.2-x86_64-linux" = fetchurl {
url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${x86_64}-release.zip";
sha256 = "1zjd9hxxg1dsyzkzgqjvl933kprf8h143z5qi4mj1iczxv7zp27a";
sha256 = "0vvsgda1smqdjn35yiq9pxx8f5haxb4hqnspcsfs6sn5c36k854v";
};
"2.7.1-i686-linux" = fetchurl {
"2.7.2-i686-linux" = fetchurl {
url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${i686}-release.zip";
sha256 = "0cggr1jbhzahmazlhba0vw2chz9zxd98jgk6zxvxdnw5hvkx8si1";
sha256 = "0dj01d2wwrp3cc5x73vs6fzhs6db60gkbjlrw3w9j04wcx69i38m";
};
"2.7.1-aarch64-linux" = fetchurl {
"2.7.2-aarch64-linux" = fetchurl {
url = "${base}/${stable_version}/release/${version}/sdk/dartsdk-linux-${aarch64}-release.zip";
sha256 = "0m4qlc3zy87habr61npykvpclggn5k4hadl59v2b0ymvxa4h5zfh";
sha256 = "1p66fkdh1kv0ypmadmg67c3y3li3aaf1lahqh2g6r6qrzbh5da2p";
};
"2.8.0-dev.10.0-x86_64-linux" = fetchurl {
"2.9.0-4.0.dev-x86_64-linux" = fetchurl {
url = "${base}/${dev_version}/release/${version}/sdk/dartsdk-linux-${x86_64}-release.zip";
sha256 = "17x0q94zampm99dd2sn6q1644lfwcl0ig2rdlmfzd9i4llj2ddbl";
sha256 = "16d9842fb3qbc0hy0zmimav9zndfkq96glgykj20xssc88qpjk2r";
};
"2.8.0-dev.10.0-i686-linux" = fetchurl {
"2.9.0-4.0.dev-i686-linux" = fetchurl {
url = "${base}/${dev_version}/release/${version}/sdk/dartsdk-linux-${i686}-release.zip";
sha256 = "0hmkg4jrffzh8x2mxn8nbf7dl7k0v2vacbmxgpsl382vw9wwj96j";
sha256 = "105wgyxmi491c7qw0z3zhn4lv52h80ngyz4ch9dyj0sq8nndz2rc";
};
"2.8.0-dev.10.0-aarch64-linux" = fetchurl {
"2.9.0-4.0.dev-aarch64-linux" = fetchurl {
url = "${base}/${dev_version}/release/${version}/sdk/dartsdk-linux-${aarch64}-release.zip";
sha256 = "185ipcmr9h76g44kzlj5pyj99cljlap82rhd1c2larfklyj5ryvv";
sha256 = "1x6mlmc4hccmx42k7srhma18faxpxvghjwqahna80508rdpljwgc";
};
};

View file

@ -1,11 +1,11 @@
{ stdenv, fetchurl, libusb }:
{ stdenv, fetchurl, libusb-compat-0_1 }:
stdenv.mkDerivation {
name = "garmintools-0.10";
src = fetchurl {
url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/garmintools/garmintools-0.10.tar.gz";
sha256 = "1vjc8h0z4kx2h52yc3chxn3wh1krn234fg12sggbia9zjrzhpmgz";
};
buildInputs = [ libusb ];
buildInputs = [ libusb-compat-0_1 ];
meta = {
description = "Provides the ability to communicate with the Garmin Forerunner 305 via the USB interface";
homepage = "https://code.google.com/archive/p/garmintools/"; # community clone at https://github.com/ianmartin/garmintools

View file

@ -1,4 +1,4 @@
{stdenv, fetchurl, perl, python2, swig, gd, libxml2, tcl, libusb, pkgconfig,
{stdenv, fetchurl, perl, python2, swig, gd, libxml2, tcl, libusb-compat-0_1, pkgconfig,
boost, libtool, perlPackages }:
stdenv.mkDerivation rec {
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [ perl perlPackages.ExtUtilsMakeMaker python2 swig gd libxml2
tcl libusb pkgconfig boost libtool ];
tcl libusb-compat-0_1 pkgconfig boost libtool ];
configureFlags = [ "--with-perl-binding" "--with-python-binding"
"--with-tcl-binding" "--with-rigmatrix" ];

View file

@ -1,224 +0,0 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8217cba..a6c1d70 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -32,7 +32,7 @@ else(APPLE)
endif(${BUILD_FOR_ARM})
endif(APPLE)
-set(CMAKE_CXX_FLAGS "--std=c++0x -Wall -Wextra -Werror -Wno-unknown-warning-option -Wno-unused-parameter -Wno-null-dereference -Wno-unused-local-typedefs -DGTEST_USE_OWN_TR1_TUPLE=1 ${BUILD_PIC_COMPILER_FLAGS}")
+set(CMAKE_CXX_FLAGS "--std=c++11 -DGTEST_USE_OWN_TR1_TUPLE=1 ${BUILD_PIC_COMPILER_FLAGS}")
set(TEST_BINARY "kinetic_client_test")
set(TEST_BINARY_PATH ${kinetic_cpp_client_BINARY_DIR}/${TEST_BINARY})
@@ -50,103 +50,16 @@ set(GENERATED_SOURCES_PATH ${kinetic_cpp_client_SOURCE_DIR}/src/main/generated)
set(PREFIX "${CMAKE_BINARY_DIR}/vendor")
set(EXTERNAL_PREFIX "${kinetic_cpp_client_BINARY_DIR}/vendor")
-include(ExternalProject)
-
-set(KINETIC_PROTO_VERSION "3.0.0")
-set(KINETIC_PROTO_MD5 "85ca027b870811a297c1f6d792498934")
-
-ExternalProject_add(
- kinetic-proto
- PREFIX ${PREFIX}
- DOWNLOAD_COMMAND curl -L https://github.com/Seagate/kinetic-protocol/archive/${KINETIC_PROTO_VERSION}.tar.gz -o kinetic-proto.tar.gz && openssl md5 kinetic-proto.tar.gz | grep -q ${KINETIC_PROTO_MD5} && rm -rf kinetic-proto && mkdir -p kinetic-proto && tar -xz --strip-components 1 -C kinetic-proto -f kinetic-proto.tar.gz
- BUILD_IN_SOURCE 1
- CONFIGURE_COMMAND ""
- BUILD_COMMAND ""
- INSTALL_COMMAND ""
-)
-
-ExternalProject_add(
- gflags
- PREFIX ${EXTERNAL_PREFIX}
- URL "${kinetic_cpp_client_SOURCE_DIR}/tarballs/gflags-2.0-no-svn-files.tar.gz"
- URL_MD5 "9084829124e02a7e6be0f0f824523423"
- CONFIGURE_COMMAND ../gflags/configure --prefix=${EXTERNAL_PREFIX} --enable-static ${CONFIG_HOST_FLAG} ${CHILD_MAKE_FLAGS} ${PIC_MAKE_FLAGS}
-)
-
-ExternalProject_add(
- glog
- PREFIX ${EXTERNAL_PREFIX}
- URL "${kinetic_cpp_client_SOURCE_DIR}/tarballs/glog-0.3.3.tar.gz"
- URL_MD5 "a6fd2c22f8996846e34c763422717c18"
- PATCH_COMMAND sh ${kinetic_cpp_client_SOURCE_DIR}/patches/apply-glog-patches.sh ${kinetic_cpp_client_SOURCE_DIR}
- CONFIGURE_COMMAND ../glog/configure --prefix=${EXTERNAL_PREFIX} --with-gflags=${EXTERNAL_PREFIX} --enable-static ${CONFIG_HOST_FLAG} ${CHILD_MAKE_FLAGS} ${PIC_MAKE_FLAGS}
- DEPENDS gflags
-)
-
-ExternalProject_add(
- gtest
- PREFIX ${EXTERNAL_PREFIX}
- URL "${kinetic_cpp_client_SOURCE_DIR}/tarballs/gtest-1.6.0.zip"
- URL_MD5 "4577b49f2973c90bf9ba69aa8166b786"
- BUILD_IN_SOURCE 1
- CONFIGURE_COMMAND ""
- BUILD_COMMAND ${CMAKE_CXX_COMPILER} -DGTEST_USE_OWN_TR1_TUPLE=1 -I../gtest -I../gtest/include -c ../gtest/src/gtest-all.cc && ar -rv libgtest.a gtest-all.o && ranlib libgtest.a
- INSTALL_COMMAND ""
-)
-
-ExternalProject_add(
- gmock
- PREFIX ${EXTERNAL_PREFIX}
- URL "${kinetic_cpp_client_SOURCE_DIR}/tarballs/gmock-1.6.0.zip"
- URL_MD5 "f547f47321ca88d3965ca2efdcc2a3c1"
- BUILD_IN_SOURCE 1
- CONFIGURE_COMMAND ""
- BUILD_COMMAND ${CMAKE_CXX_COMPILER} -DGTEST_USE_OWN_TR1_TUPLE=1 -I../gmock -I../gmock/include -I../gtest -I../gtest/include -c ../gmock/src/gmock-all.cc && ar -rv libgmock.a gmock-all.o && ranlib libgmock.a
- INSTALL_COMMAND ""
- DEPENDS gtest
-)
-
-ExternalProject_add(
- openssl
- PREFIX ${EXTERNAL_PREFIX}
- URL "${kinetic_cpp_client_SOURCE_DIR}/tarballs/openssl-1.0.1g.tar.gz"
- URL_MD5 "de62b43dfcd858e66a74bee1c834e959"
- BUILD_IN_SOURCE 1
- CONFIGURE_COMMAND ${OPENSSL_CONFIGURE_COMMAND} --prefix=${EXTERNAL_PREFIX} ${BUILD_PIC_COMPILER_FLAG}
- BUILD_COMMAND touch apps/openssl && touch openssl.pc && make ${CHILD_MAKE_FLAGS} build_libs libssl.pc libcrypto.pc
- INSTALL_COMMAND make install_sw
-)
-
-# The protobuf build requires the existence of a protoc binary that can be
-# executed on the host machine. To handle cross compilation, we always build
-# protobuf once for the host so that we have a suitable copy of protoc.
-ExternalProject_add(
- protoc
- PREFIX ${EXTERNAL_PREFIX}/host
- URL "${kinetic_cpp_client_SOURCE_DIR}/tarballs/protobuf-2.5.0.tar.bz2"
- URL_MD5 "a72001a9067a4c2c4e0e836d0f92ece4"
- CONFIGURE_COMMAND ../protoc/configure --prefix=${EXTERNAL_PREFIX}/host --enable-static
-)
-
# Protobuf code generation rules
-set(PROTOC_PATH "${PREFIX}/host/bin/protoc")
-set(PROTO_DIR "${CMAKE_BINARY_DIR}/vendor/src/kinetic-proto")
+set(PROTOC_PATH "protoc")
+set(PROTO_DIR "${CMAKE_BINARY_DIR}/kinetic-proto")
set(PROTO_ORIG_PATH "${PROTO_DIR}/kinetic.proto")
set(PROTO_MODIFIED_PATH "${PROTO_DIR}/kinetic_client.proto")
-ExternalProject_add(
- protobuf
- PREFIX ${EXTERNAL_PREFIX}
- URL "${kinetic_cpp_client_SOURCE_DIR}/tarballs/protobuf-2.5.0.tar.bz2"
- URL_MD5 "a72001a9067a4c2c4e0e836d0f92ece4"
- CONFIGURE_COMMAND ../protobuf/configure --prefix=${EXTERNAL_PREFIX} --enable-static --with-protoc=${PROTOC_PATH} ${CONFIG_HOST_FLAG} ${CHILD_MAKE_FLAGS} ${PIC_MAKE_FLAGS}
- DEPENDS protoc
-)
add_custom_command(
COMMENT "Compiling protobuf"
OUTPUT ${GENERATED_SOURCES_PATH}/kinetic_client.pb.h ${GENERATED_SOURCES_PATH}/kinetic_client.pb.cc
COMMAND mkdir -p ${GENERATED_SOURCES_PATH} && sed 's/com\\.seagate\\.kinetic\\.proto/com.seagate.kinetic.client.proto/' ${PROTO_ORIG_PATH} > ${PROTO_MODIFIED_PATH} && ${PROTOC_PATH} -I=${PROTO_DIR} --cpp_out=${GENERATED_SOURCES_PATH} ${PROTO_MODIFIED_PATH}
- DEPENDS kinetic-proto protoc protobuf
)
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${GENERATED_SOURCES_PATH})
@@ -157,21 +70,10 @@ include_directories(
src/test/mock
src/test
-
- ${EXTERNAL_PREFIX}/include
- ${EXTERNAL_PREFIX}/src/gmock/include
- ${EXTERNAL_PREFIX}/src/gtest/include
)
set(LIBRARY_DEPENDENCIES
kinetic_client
- ${CMAKE_BINARY_DIR}/vendor/lib/libglog.a
- ${CMAKE_BINARY_DIR}/vendor/lib/libgflags.a
- ${CMAKE_BINARY_DIR}/vendor/lib/libssl.a
- ${CMAKE_BINARY_DIR}/vendor/lib/libcrypto.a
- ${CMAKE_BINARY_DIR}/vendor/lib/libprotobuf.a
- ${CMAKE_BINARY_DIR}/vendor/src/gtest/libgtest.a
- ${CMAKE_BINARY_DIR}/vendor/src/gmock/libgmock.a
${CMAKE_THREAD_LIBS_INIT}
dl
)
@@ -180,12 +82,68 @@ set(LIBRARY_DEPENDENCIES
# Otherwise glog uses the standard glibc unwinder and there is no dependency.
find_library(LIBUNWIND "unwind")
if(LIBUNWIND)
- set(LIBRARY_DEPENDENCIES
- ${LIBRARY_DEPENDENCIES}
+ set(LIBRARY_DEPENDENCIES
+ ${LIBRARY_DEPENDENCIES}
${LIBUNWIND}
)
endif()
+find_library(LIBSSL "ssl")
+if(LIBSSL)
+ set(LIBRARY_DEPENDENCIES
+ ${LIBRARY_DEPENDENCIES}
+ ${LIBSSL}
+ )
+endif()
+
+find_library(LIBCRYPTO "crypto")
+if(LIBCRYPTO)
+ set(LIBRARY_DEPENDENCIES
+ ${LIBRARY_DEPENDENCIES}
+ ${LIBCRYPTO}
+ )
+endif()
+
+find_library(LIBPROTOBUF "protobuf")
+if(LIBPROTOBUF)
+ set(LIBRARY_DEPENDENCIES
+ ${LIBRARY_DEPENDENCIES}
+ ${LIBPROTOBUF}
+ )
+endif()
+
+find_library(LIBGLOG "glog")
+if(LIBGLOG)
+ set(LIBRARY_DEPENDENCIES
+ ${LIBRARY_DEPENDENCIES}
+ ${LIBGLOG}
+ )
+endif()
+
+find_library(LIBGFLAGS "gflags")
+if(LIBGFLAGS)
+ set(LIBRARY_DEPENDENCIES
+ ${LIBRARY_DEPENDENCIES}
+ ${LIBGFLAGS}
+ )
+endif()
+
+find_library(LIBGMOCK "gmock")
+if(LIBGMOCK)
+ set(LIBRARY_DEPENDENCIES
+ ${LIBRARY_DEPENDENCIES}
+ ${LIBGMOCK}
+ )
+endif()
+
+find_library(LIBGTEST "gtest")
+if(LIBGTEST)
+ set(LIBRARY_DEPENDENCIES
+ ${LIBRARY_DEPENDENCIES}
+ ${LIBGTEST}
+ )
+endif()
+
add_library(kinetic_client
src/main/generated/kinetic_client.pb.cc
src/main/hmac_provider.cc
diff --git a/src/test/kinetic_cpp_client_test.cc b/src/test/kinetic_cpp_client_test.cc
index 2079fab..c5004a2 100644
--- a/src/test/kinetic_cpp_client_test.cc
+++ b/src/test/kinetic_cpp_client_test.cc
@@ -22,6 +22,7 @@
#include <iostream>
+#include "gflags/gflags.h"
#include "gtest/gtest.h"
#include "glog/logging.h"

View file

@ -1,58 +0,0 @@
{ stdenv, fetchgit, fetchurl, cmake, protobuf, libunwind, openssl, glog
, gflags, gmock, gtest
}:
let
protoTar = fetchurl {
url = "https://github.com/Seagate/kinetic-protocol/archive/3.0.0.tar.gz";
sha256 = "0406pp0sdf0rg6s5g18r2d8si2rin7p6qbzp7c6pma5hyzsygz48";
};
in
stdenv.mkDerivation {
name = "kinetic-cpp-client-2015-04-14";
src = fetchgit {
url = "git://github.com/Seagate/kinetic-cpp-client.git";
rev = "015085a5c89db0398f80923053f36b9e0611e107";
sha256 = "0gm34sl6lyidnxgg1lrhkxkxqj8z1y2cqn7zhzz2f1k50pigi5da";
};
patches = [ ./build-fix.patch ];
postPatch = ''
mkdir -p build/kinetic-proto
tar -x --strip-components 1 -C build/kinetic-proto -f ${protoTar}
'';
nativeBuildInputs = [ cmake protobuf ];
buildInputs = [ libunwind glog gflags gmock gtest ];
# The headers and library include from these and there is no provided pc file
propagatedBuildInputs = [ protobuf openssl ];
cmakeFlags = [
"-DBUILD_SHARED_LIBS=true"
];
preCheck = ''
# The checks cannot find libkinetic_client.so otherwise
export LD_LIBRARY_PATH="$(pwd)"
'';
installPhase = ''
# There is no included install script so do our best
mkdir -p $out/lib
cp libkinetic_client.so $out/lib
cp -r ../include $out
cp ../src/main/generated/kinetic_client.pb.h $out/include
'';
doCheck = true;
meta = with stdenv.lib; {
homepage = "https://github.com/Seagate/kinetic-cpp-client";
description = "Code for producing C and C++ kinetic clients";
license = licenses.lgpl21;
platforms = platforms.unix;
};
}

View file

@ -1,4 +1,4 @@
{stdenv, fetchurl, libusb}:
{stdenv, fetchurl, libusb-compat-0_1}:
with stdenv; mkDerivation rec {
name = "libftdi-0.20";
@ -8,9 +8,9 @@ with stdenv; mkDerivation rec {
sha256 = "13l39f6k6gff30hsgh0wa2z422g9pyl91rh8a8zz6f34k2sxaxii";
};
buildInputs = [ libusb ];
buildInputs = [ libusb-compat-0_1 ];
propagatedBuildInputs = [ libusb ];
propagatedBuildInputs = [ libusb-compat-0_1 ];
# Hack to avoid TMPDIR in RPATHs.
preFixup = ''rm -rf "$(pwd)" '';

View file

@ -1,22 +1,24 @@
{ stdenv
, fetchFromGitHub
, autoreconfHook
, meson
, ninja
, pkgconfig
}:
stdenv.mkDerivation rec {
version = "0.1.0";
version = "0.1.2";
pname = "libmicrodns";
src = fetchFromGitHub {
owner = "videolabs";
repo = pname;
rev = version;
sha256 = "1pmf461zn35spbpbls1ih68ki7f8g8xjwhzr2csy63nnyq2k9jji";
sha256 = "1yb0j0acidp494d28wqhzhrfski2qjb2a5mp5bq5qrpcg38zyz6i";
};
nativeBuildInputs = [
autoreconfHook
meson
ninja
pkgconfig
];

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, libusb, readline }:
{ stdenv, fetchurl, libusb-compat-0_1, readline }:
stdenv.mkDerivation {
pname = "libnfc";
@ -9,7 +9,7 @@ stdenv.mkDerivation {
sha256 = "0wj0iwwcpmpalyk61aa7yc6i4p9hgdajkrgnlswgk0vnwbc78pll";
};
buildInputs = [ libusb readline ];
buildInputs = [ libusb-compat-0_1 readline ];
meta = with stdenv.lib; {
description = "Open source library libnfc for Near Field Communication";

View file

@ -1,38 +0,0 @@
{ stdenv, fetchFromGitHub, cmake
, qtbase, qtmultimedia }:
let
generic = version: sha256: prefix: stdenv.mkDerivation {
pname = "libqmatrixclient";
inherit version;
src = fetchFromGitHub {
owner = "QMatrixClient";
repo = "libqmatrixclient";
rev = "${prefix}${version}";
inherit sha256;
};
postPatch = ''
sed -i -e '/example/Id' CMakeLists.txt
'';
buildInputs = [ qtbase qtmultimedia ];
nativeBuildInputs = [ cmake ];
meta = with stdenv.lib; {
description= "A Qt5 library to write cross-platfrom clients for Matrix";
homepage = "https://matrix.org/docs/projects/sdk/libqmatrixclient.html";
license = licenses.lgpl21;
platforms = with platforms; linux ++ darwin;
maintainers = with maintainers; [ peterhoeg ];
};
};
in rec {
libqmatrixclient_0_4 = generic "0.4.2.1" "056hvp2m74wx72yd8vai18siddj9l8bhrvrkc4ia4cwjsqw02kid" "v";
libqmatrixclient_0_5 = generic "0.5.2" "1bhlqfs7251fss4icx794ka614npr6zyrpp4qwc4q5408ykfm7lr" "";
libqmatrixclient = libqmatrixclient_0_4;
}

View file

@ -0,0 +1,24 @@
{ mkDerivation, lib, fetchFromGitHub, cmake, qtbase, qtmultimedia }:
mkDerivation rec {
pname = "libquotient";
version = "0.5.3.2";
src = fetchFromGitHub {
owner = "quotient-im";
repo = "libQuotient";
rev = version;
sha256 = "0gkwr3yw6k2m0j8cc085b5p2q788rf5nhp1p5hc5d55pc7mci2qs";
};
buildInputs = [ qtbase qtmultimedia ];
nativeBuildInputs = [ cmake ];
meta = with lib; {
description = "A Qt5 library to write cross-platfrom clients for Matrix";
homepage = "https://matrix.org/docs/projects/sdk/quotient";
maintainers = with maintainers; [ colemickens ];
license = licenses.lgpl21;
};
}

View file

@ -1,5 +1,5 @@
{ stdenv, fetchurl, fetchpatch, autoreconfHook, pkgconfig, help2man, python3,
alsaLib, xlibsWrapper, libxslt, systemd, libusb, libftdi1 }:
alsaLib, xlibsWrapper, libxslt, systemd, libusb-compat-0_1, libftdi1 }:
stdenv.mkDerivation rec {
name = "lirc-0.10.1";
@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ autoreconfHook pkgconfig help2man
(python3.withPackages (p: with p; [ pyyaml setuptools ])) ];
buildInputs = [ alsaLib xlibsWrapper libxslt systemd libusb libftdi1 ];
buildInputs = [ alsaLib xlibsWrapper libxslt systemd libusb-compat-0_1 libftdi1 ];
configureFlags = [
"--sysconfdir=/etc"

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, pcsclite, libusb
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, pcsclite, libusb-compat-0_1
, doxygen, libxslt
}:
@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
];
nativeBuildInputs = [ autoreconfHook pkgconfig ];
buildInputs = [ pcsclite libusb doxygen libxslt ];
buildInputs = [ pcsclite libusb-compat-0_1 doxygen libxslt ];
preInstall = ''
mkdir -p $out/etc

View file

@ -1,22 +1,46 @@
{ buildGoModule
, fetchFromGitHub
, lib
, stdenv
, symlinkJoin
}:
buildGoModule rec {
pname = "packr";
version = "2.7.1";
let p2 = buildGoModule rec {
pname = "packr2";
version = "2.8.0";
src = fetchFromGitHub {
owner = "gobuffalo";
repo = pname;
repo = "packr";
rev = "v${version}";
sha256 = "0m5kl2fq8gf1v4vllgag2xl8fd382sdgqrcdb8f5alsnrdn08kb9";
sha256 = "1x78yq2yg0r82h7a67078llni85gk9nbd2ismlbqgppap7fcpyai";
}+"/v2";
subPackages = [ "packr2" ];
modSha256 = "1xxqyn78074jna0iri7sks6b2l4sdnn5sg57n09vrrf6kh39h2y9";
meta = with stdenv.lib; {
description = "The simple and easy way to embed static files into Go binaries";
homepage = "https://github.com/gobuffalo/packr";
license = licenses.mit;
maintainers = with maintainers; [ mmahut ];
};
};
p1 = buildGoModule rec {
pname = "packr1";
version = "2.8.0";
src = fetchFromGitHub {
owner = "gobuffalo";
repo = "packr";
rev = "v${version}";
sha256 = "1x78yq2yg0r82h7a67078llni85gk9nbd2ismlbqgppap7fcpyai";
};
subPackages = [ "packr" "v2/packr2" ];
subPackages = [ "packr" ];
modSha256 = "0afhkvivma16bi8rz3kwcsz9mhmcn4zm6rrymxkvazx6b844hcdv";
modSha256 = "045qfdi82yhpghjd0cimxhas4nkj7g30n9qyvkrl9ck01sahx76f";
meta = with lib; {
description = "The simple and easy way to embed static files into Go binaries";
@ -24,4 +48,9 @@ buildGoModule rec {
license = licenses.mit;
maintainers = with maintainers; [ mmahut ];
};
};
in
symlinkJoin{
name = "packr";
paths = [p1 p2];
}

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