Merge branch 'master' into staging
This commit is contained in:
commit
5621b77a33
doc/languages-frameworks
lib
nixos
doc/manual/release-notes
maintainers/scripts/ec2
modules
pkgs
applications
altcoins
audio/x42-plugins
editors
graphics
kde
misc
networking
browsers/falkon
cluster/habitat
dropbox
dyndns/cfdyndns
ftp/filezilla
ipget
irc/irssi
msmtp
remote/citrix-receiver
sniffers/wireshark
office/libreoffice
science/logic/coq
version-management
virtualization/open-vm-tools
window-managers
build-support/rust
development
compilers
clasp
rust
beta.nixbootstrap.nixcargo.nixdefault.nixnightly.nixnightlyBin.nix
patches
0001-Disable-fragile-tests-libstd-net-tcp-on-Darwin-Linux.patchdisable-lockfile-check-beta.patchdisable-lockfile-check-nightly.patch
print-hashes.shrustc.nixsouffle
coq-modules
haskell-modules
configuration-common.nixconfiguration-ghcjs.nixconfiguration-hackage2nix.yamlhackage-packages.nixmake-package-set.nix
libraries
SDL_image
aspell
botan
ffmpeg-full
ffmpeg
libfilezilla
libvirt
libx86
opencv
webkitgtk
misc/loc
node-packages
tools
ammonite
analysis/massif-visualizer
clog-cli
continuous-integration/jenkins
git-series
misc/tokei
ocaml/merlin
rq
|
@ -9,16 +9,15 @@ date: 2017-03-05
|
|||
To install the rust compiler and cargo put
|
||||
|
||||
```
|
||||
rustStable.rustc
|
||||
rustStable.cargo
|
||||
rust
|
||||
```
|
||||
|
||||
into the `environment.systemPackages` or bring them into scope with
|
||||
`nix-shell -p rustStable.rustc -p rustStable.cargo`.
|
||||
into the `environment.systemPackages` or bring them into
|
||||
scope with `nix-shell -p rust`.
|
||||
|
||||
There are also `rustBeta` and `rustNightly` package sets available.
|
||||
These are not updated very regularly. For daily builds use either rustup from
|
||||
nixpkgs or use the [Rust nightlies overlay](#using-the-rust-nightlies-overlay).
|
||||
For daily builds (beta and nightly) use either rustup from
|
||||
nixpkgs or use the [Rust nightlies
|
||||
overlay](#using-the-rust-nightlies-overlay).
|
||||
|
||||
## Packaging Rust applications
|
||||
|
||||
|
@ -38,7 +37,7 @@ buildRustPackage rec {
|
|||
sha256 = "0y5d1n6hkw85jb3rblcxqas2fp82h3nghssa4xqrhqnz25l799pj";
|
||||
};
|
||||
|
||||
depsSha256 = "0q68qyl2h6i0qsz82z840myxlnjay8p1w5z7hfyr8fqp7wgwa9cx";
|
||||
cargoSha256 = "0q68qyl2h6i0qsz82z840myxlnjay8p1w5z7hfyr8fqp7wgwa9cx";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A utility that combines the usability of The Silver Searcher with the raw speed of grep";
|
||||
|
@ -50,7 +49,7 @@ buildRustPackage rec {
|
|||
}
|
||||
```
|
||||
|
||||
`buildRustPackage` requires a `depsSha256` attribute which is computed over
|
||||
`buildRustPackage` requires a `cargoSha256` attribute which is computed over
|
||||
all crate sources of this package. Currently it is obtained by inserting a
|
||||
fake checksum into the expression and building the package once. The correct
|
||||
checksum can be then take from the failed build.
|
||||
|
@ -76,11 +75,11 @@ in the `~/.config/nixpkgs/overlays` directory.
|
|||
|
||||
The latest version can be installed with the following command:
|
||||
|
||||
$ nix-env -Ai nixos.rustChannels.stable.rust
|
||||
$ nix-env -Ai nixos.latest.rustChannels.stable.rust
|
||||
|
||||
Or using the attribute with nix-shell:
|
||||
|
||||
$ nix-shell -p nixos.rustChannels.stable.rust
|
||||
$ nix-shell -p nixos.latest.rustChannels.stable.rust
|
||||
|
||||
To install the beta or nightly channel, "stable" should be substituted by
|
||||
"nightly" or "beta", or
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
ak = "Alexander Kjeldaas <ak@formalprivacy.com>";
|
||||
akaWolf = "Artjom Vejsel <akawolf0@gmail.com>";
|
||||
akc = "Anders Claesson <akc@akc.is>";
|
||||
alexvorobiev = "Alex Vorobiev <alexander.vorobiev@gmail.com";
|
||||
algorith = "Dries Van Daele <dries_van_daele@telenet.be>";
|
||||
alibabzo = "Alistair Bill <alistair.bill@gmail.com>";
|
||||
all = "Nix Committers <nix-commits@lists.science.uu.nl>";
|
||||
|
|
|
@ -55,7 +55,13 @@ following incompatible changes:</para>
|
|||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para></para>
|
||||
<para>
|
||||
Dollar signs in options under <option>services.postfix</option> are
|
||||
passed verbatim to Postfix, which will interpret them as the beginning of
|
||||
a parameter expression. This was already true for string-valued options
|
||||
in the previous release, but not for list-valued options. If you need to
|
||||
pass literal dollar signs through Postfix, double them.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
|
|
|
@ -9,6 +9,12 @@ in {
|
|||
imports = [ ../../../modules/virtualisation/amazon-image.nix ];
|
||||
|
||||
options.amazonImage = {
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
description = "The name of the generated derivation";
|
||||
default = "nixos-disk-image";
|
||||
};
|
||||
|
||||
contents = mkOption {
|
||||
example = literalExample ''
|
||||
[ { source = pkgs.memtest86 + "/memtest.bin";
|
||||
|
@ -38,7 +44,7 @@ in {
|
|||
|
||||
config.system.build.amazonImage = import ../../../lib/make-disk-image.nix {
|
||||
inherit lib config;
|
||||
inherit (cfg) contents format;
|
||||
inherit (cfg) contents format name;
|
||||
pkgs = import ../../../.. { inherit (pkgs) system; }; # ensure we use the regular qemu-kvm package
|
||||
partitioned = config.ec2.hvm;
|
||||
diskSize = cfg.sizeMB;
|
||||
|
|
|
@ -112,6 +112,9 @@ with lib;
|
|||
|
||||
(mkAliasOptionModule [ "environment" "checkConfigurationOptions" ] [ "_module" "check" ])
|
||||
|
||||
# opendkim
|
||||
(mkRenamedOptionModule [ "services" "opendkim" "keyFile" ] [ "services" "opendkim" "keyPath" ])
|
||||
|
||||
# XBMC
|
||||
(mkRenamedOptionModule [ "services" "xserver" "windowManager" "xbmc" ] [ "services" "xserver" "desktopManager" "kodi" ])
|
||||
(mkRenamedOptionModule [ "services" "xserver" "desktopManager" "xbmc" ] [ "services" "xserver" "desktopManager" "kodi" ])
|
||||
|
|
|
@ -8,10 +8,12 @@ let
|
|||
|
||||
defaultSock = "local:/run/opendkim/opendkim.sock";
|
||||
|
||||
keyFile = "${cfg.keyPath}/${cfg.selector}.private";
|
||||
|
||||
args = [ "-f" "-l"
|
||||
"-p" cfg.socket
|
||||
"-d" cfg.domains
|
||||
"-k" cfg.keyFile
|
||||
"-k" keyFile
|
||||
"-s" cfg.selector
|
||||
] ++ optionals (cfg.configFile != null) [ "-x" cfg.configFile ];
|
||||
|
||||
|
@ -57,9 +59,13 @@ in {
|
|||
'';
|
||||
};
|
||||
|
||||
keyFile = mkOption {
|
||||
keyPath = mkOption {
|
||||
type = types.path;
|
||||
description = "Secret key file used for signing messages.";
|
||||
description = ''
|
||||
The path that opendkim should put its generated private keys into.
|
||||
The DNS settings will be found in this directory with the name selector.txt.
|
||||
'';
|
||||
default = "/var/lib/opendkim/keys";
|
||||
};
|
||||
|
||||
selector = mkOption {
|
||||
|
@ -100,11 +106,25 @@ in {
|
|||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
preStart = ''
|
||||
mkdir -p "${cfg.keyPath}"
|
||||
cd "${cfg.keyPath}"
|
||||
if ! test -f ${cfg.selector}.private; then
|
||||
${pkgs.opendkim}/bin/opendkim-genkey -s ${cfg.selector} -d all-domains-generic-key
|
||||
echo "Generated OpenDKIM key! Please update your DNS settings:\n"
|
||||
echo "-------------------------------------------------------------"
|
||||
cat ${cfg.selector}.txt
|
||||
echo "-------------------------------------------------------------"
|
||||
fi
|
||||
chown ${cfg.user}:${cfg.group} ${cfg.selector}.private
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.opendkim}/bin/opendkim ${escapeShellArgs args}";
|
||||
User = cfg.user;
|
||||
Group = cfg.group;
|
||||
RuntimeDirectory = optional (cfg.socket == defaultSock) "opendkim";
|
||||
PermissionsStartOnly = true;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ let
|
|||
|
||||
mainCf = let
|
||||
escape = replaceStrings ["$"] ["$$"];
|
||||
mkList = items: "\n " + concatMapStringsSep "\n " escape items;
|
||||
mkList = items: "\n " + concatStringsSep "\n " items;
|
||||
mkVal = value:
|
||||
if isList value then mkList value
|
||||
else " " + (if value == true then "yes"
|
||||
|
|
|
@ -142,7 +142,7 @@ in
|
|||
${pkg}/apache-tomcat/conf/server.xml.dist > ${cfg.home}/server.xml
|
||||
'';
|
||||
|
||||
script = "${pkg}/start_crowd.sh";
|
||||
script = "${pkg}/start_crowd.sh -fg";
|
||||
|
||||
serviceConfig = {
|
||||
User = cfg.user;
|
||||
|
|
|
@ -13,7 +13,7 @@ buildRustPackage rec {
|
|||
sha256 = "1rg7ydvnhlg8w6blilm3cv6v4q51x1hgrbkln2ikhpdq0vakp5fd";
|
||||
};
|
||||
|
||||
depsSha256 = "1n4rxipna307r4xppb2iaads7kpa3yjv99fimvpn8l0f999ir2rz";
|
||||
cargoSha256 = "0i9617qwc6d4jvlbydwk03rcsnyvxzpbn2ms10ds4r6x7jy2a4sy";
|
||||
|
||||
cargoBuildFlags = ["--features cli"];
|
||||
|
||||
|
|
|
@ -13,12 +13,13 @@ buildRustPackage rec {
|
|||
sha256 = "1w651g4p2mc4ljp20l8lwvfx3l3fzyp6gf2izr85vyb1wjbaccqn";
|
||||
};
|
||||
|
||||
depsSha256 = "14x8pbjgkz0g724lnvd9mi2alqd6fipjljw6xsraf9gqwijn1knq";
|
||||
cargoSha256 = "14x8pbjgkz0g724lnvd9mi2alqd6fipjljw6xsraf9gqwijn1kn0";
|
||||
|
||||
meta = {
|
||||
description = "Directly run Ethereum bytecode";
|
||||
homepage = https://github.com/dapphub/ethrun/;
|
||||
maintainers = [stdenv.lib.maintainers.dbrock];
|
||||
broken = true; # mark temporary as broken
|
||||
inherit version;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
|
|||
sha256 = "02l1f46frpvw1r6k1wfh77mrsnmsdvifqx0vnscxz4xgb9ia9d1c";
|
||||
};
|
||||
|
||||
depsSha256 = "02qx8zdhmj7rmhqqq5q9428x9mlrjxxcnn4yhnygz9gfgvada2hx";
|
||||
cargoSha256 = "1b0kal53ggcr59hbrsdj8fifjycahrmzwq677n9h3fywv4r237m6";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/lib
|
||||
|
|
|
@ -12,7 +12,15 @@ stdenv.mkDerivation rec {
|
|||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ mesa_glu ftgl freefont_ttf libjack2 libltc libsndfile libsamplerate lv2 gtk2 cairo pango fftwFloat zita-convolver];
|
||||
buildInputs = [ mesa_glu ftgl freefont_ttf libjack2 libltc libsndfile libsamplerate lv2 gtk2 cairo pango fftwFloat zita-convolver ];
|
||||
|
||||
# Don't remove this. The default fails with 'do not know how to unpack source archive'
|
||||
# every now and then on Hydra. No idea why.
|
||||
unpackPhase = ''
|
||||
tar xf $src
|
||||
sourceRoot=$(echo x42-plugins-*)
|
||||
chmod -R u+w $sourceRoot
|
||||
'';
|
||||
|
||||
makeFlags = [ "PREFIX=$(out)" "FONTFILE=${freefont_ttf}/share/fonts/truetype/FreeSansBold.ttf" ];
|
||||
|
||||
|
|
|
@ -78,7 +78,7 @@ let
|
|||
});
|
||||
|
||||
buildGogland = { name, version, src, license, description, wmClass, update-channel }:
|
||||
(mkJetBrainsProduct {
|
||||
lib.overrideDerivation (mkJetBrainsProduct {
|
||||
inherit name version src wmClass jdk;
|
||||
product = "Gogland";
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -93,6 +93,13 @@ let
|
|||
maintainers = [ maintainers.miltador ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}) (attrs: {
|
||||
postFixup = (attrs.postFixup or "") + ''
|
||||
interp="$(cat $NIX_CC/nix-support/dynamic-linker)"
|
||||
patchelf --set-interpreter $interp $out/gogland*/plugins/intellij-go-plugin/lib/dlv/linux/dlv
|
||||
|
||||
chmod +x $out/gogland*/plugins/intellij-go-plugin/lib/dlv/linux/dlv
|
||||
'';
|
||||
});
|
||||
|
||||
buildIdea = { name, version, src, license, description, wmClass, update-channel }:
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
{ stdenv, fetchgit, pkgconfig, which, qtbase, qtsvg, qttools, qtwebkit }:
|
||||
{ stdenv, fetchgit, pkgconfig, which, qtbase, qtsvg, qttools, qtwebkit}:
|
||||
|
||||
let
|
||||
version = "0.53.0";
|
||||
version = "1.2.0";
|
||||
in stdenv.mkDerivation {
|
||||
name = "notepadqq-${version}";
|
||||
src = fetchgit {
|
||||
url = "https://github.com/notepadqq/notepadqq.git";
|
||||
rev = "3b0751277fb268ec72b466b37d0f0977c536bc1b";
|
||||
sha256 = "0hw94mn2xg2r58afvz1xg990jinv9aa33942zgwq54qwj61r93hi";
|
||||
rev = "ab074d30e02d49e0fe6957c1523e7fed239aff7d";
|
||||
sha256 = "0j8vqsdw314qpk5lrgccm9n7gbyr14ac3s65sl1qn87pxhrz1hpg";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -14,8 +14,8 @@ let
|
|||
else throw "ImageMagick is not supported on this platform.";
|
||||
|
||||
cfg = {
|
||||
version = "7.0.7-4";
|
||||
sha256 = "074w4jm5s98b8dxwjl8lljvdhmm3mbg1ikgjy1mw3c1sb08z3nc8";
|
||||
version = "7.0.7-8";
|
||||
sha256 = "0h2jbaxrxrmdcr5crf1d93sc60v4zfqrrl3w79md6h11wf57ksbp";
|
||||
patches = [];
|
||||
};
|
||||
in
|
||||
|
|
|
@ -14,8 +14,8 @@ let
|
|||
else throw "ImageMagick is not supported on this platform.";
|
||||
|
||||
cfg = {
|
||||
version = "6.9.9-15";
|
||||
sha256 = "0bxgdc1qiyvag6a2iiqcbwp4ak0m1mzi9qhs51fbrvv6syy12m6c";
|
||||
version = "6.9.9-20";
|
||||
sha256 = "1pz8clmhnq26vdsp1j21czq3nfbvrmfdz30k7na7w4vh7wqxsrx1";
|
||||
patches = [];
|
||||
}
|
||||
# Freeze version on mingw so we don't need to port the patch too often.
|
||||
|
|
|
@ -1,36 +1,49 @@
|
|||
{ lib, stdenv, fetchurl, qtbase, qmake, makeWrapper }:
|
||||
{ lib, stdenv, fetchgit, qtbase, qmake, makeWrapper, qtscript, gcc, flex, bison, qtdeclarative, gnutar }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "awesomebump-4.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = https://github.com/kmkolasinski/AwesomeBump/archive/Linuxv4.0.tar.gz;
|
||||
sha256 = "1rp4m4y2ld49hibzwqwy214cbiin80i882d9l0y1znknkdcclxf2";
|
||||
let
|
||||
version = "5.1";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/kmkolasinski/AwesomeBump.git";
|
||||
rev = "Winx32v${version}";
|
||||
sha256 = "1c8b9jki0v8kzkvsvyv7q1w3s7j40br6ph15hh2xi0a1mpwckq56";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
setSourceRoot = "sourceRoot=$(echo */Sources)";
|
||||
|
||||
nativeBuildInputs = [ makeWrapper qmake ];
|
||||
buildInputs = [ qtbase ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
installPhase =
|
||||
''
|
||||
d=$out/libexec/AwesomeBump
|
||||
mkdir -p $d $out/bin
|
||||
cp AwesomeBump $d/
|
||||
cp -prd ../Bin/Configs ../Bin/Core $d/
|
||||
|
||||
# AwesomeBump expects to find Core and Configs in its current
|
||||
# directory.
|
||||
makeWrapper $d/AwesomeBump $out/bin/AwesomeBump \
|
||||
--run "cd $d"
|
||||
qtnproperty = stdenv.mkDerivation {
|
||||
name = "qtnproperty";
|
||||
inherit src;
|
||||
sourceRoot = "AwesomeBump/Sources/utils/QtnProperty";
|
||||
buildInputs = [ qtscript qtbase qtdeclarative ];
|
||||
nativeBuildInputs = [ qmake flex bison ];
|
||||
postInstall = ''
|
||||
install -D bin-linux/QtnPEG $out/bin/QtnPEG
|
||||
'';
|
||||
};
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "awesomebump-${version}";
|
||||
|
||||
# RPATH in /tmp hack
|
||||
preFixup = ''
|
||||
rm -r $NIX_BUILD_TOP/__nix_qt5__
|
||||
inherit src;
|
||||
|
||||
buildInputs = [ qtbase qtscript qtdeclarative ];
|
||||
|
||||
nativeBuildInputs = [ qmake makeWrapper ];
|
||||
|
||||
preBuild = ''
|
||||
ln -sf ${qtnproperty}/bin/QtnPEG Sources/utils/QtnProperty/bin-linux/QtnPEG
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
d=$out/libexec/AwesomeBump
|
||||
|
||||
mkdir -p $d
|
||||
cp -vr workdir/`cat workdir/current`/bin/AwesomeBump $d/
|
||||
cp -prd Bin/Configs Bin/Core $d/
|
||||
|
||||
# AwesomeBump expects to find Core and Configs in its current directory.
|
||||
makeWrapper $d/AwesomeBump $out/bin/AwesomeBump \
|
||||
--run "cd $d"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
|
|
|
@ -6,12 +6,12 @@
|
|||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "gthumb";
|
||||
version = "${major}.1";
|
||||
version = "${major}.3";
|
||||
major = "3.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${major}/${name}.tar.xz";
|
||||
sha256 = "1hxnjskrq57d5ycn2fyif7363n1bav931pkjvq1fr2r4yrj0d202";
|
||||
sha256 = "0hka1b3l8mf94zsk7jff87wsb8bz4pj5pixjrs0w2j8jbsa9sggk";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
|
||||
|
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "${major}.${minor}";
|
||||
major = "0.26";
|
||||
minor = "2";
|
||||
major = "0.27";
|
||||
minor = "0";
|
||||
name = "shotwell-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/shotwell/${major}/${name}.tar.xz";
|
||||
sha256 = "0frjqa6nmh025clwnb74z2rzbdq65wjcp2lf9csgcbkpahyjhrag";
|
||||
sha256 = "03vwp314kckr67p7shrysqpr95hc3326lk3bv40g11i9clsik1a2";
|
||||
};
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/glib-2.0 -I${glib.out}/lib/glib-2.0/include";
|
||||
|
|
|
@ -124,6 +124,7 @@ let
|
|||
korganizer = callPackage ./korganizer.nix {};
|
||||
kpimtextedit = callPackage ./kpimtextedit.nix {};
|
||||
kqtquickcharts = callPackage ./kqtquickcharts.nix {};
|
||||
krdc = callPackage ./krdc.nix {};
|
||||
krfb = callPackage ./krfb.nix {};
|
||||
ktnef = callPackage ./ktnef.nix {};
|
||||
kwalletmanager = callPackage ./kwalletmanager.nix {};
|
||||
|
@ -142,6 +143,7 @@ let
|
|||
marble = callPackage ./marble.nix {};
|
||||
mbox-importer = callPackage ./mbox-importer.nix {};
|
||||
messagelib = callPackage ./messagelib.nix {};
|
||||
minuet = callPackage ./minuet.nix {};
|
||||
okteta = callPackage ./okteta.nix {};
|
||||
okular = callPackage ./okular.nix {};
|
||||
pimcommon = callPackage ./pimcommon.nix {};
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
{
|
||||
mkDerivation, lib,
|
||||
extra-cmake-modules, kdoctools, makeWrapper,
|
||||
kcmutils, kcompletion, kconfig, kdnssd, knotifyconfig, kwallet, kwidgetsaddons,
|
||||
libvncserver, freerdp
|
||||
}:
|
||||
|
||||
mkDerivation {
|
||||
name = "krdc";
|
||||
nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper ];
|
||||
buildInputs = [
|
||||
kcmutils kcompletion kconfig kdnssd knotifyconfig kwallet kwidgetsaddons
|
||||
freerdp libvncserver
|
||||
];
|
||||
postFixup = ''
|
||||
wrapProgram $out/bin/krdc \
|
||||
--prefix PATH : ${lib.makeBinPath [ freerdp ]}
|
||||
'';
|
||||
meta = with lib; {
|
||||
homepage = http://www.kde.org;
|
||||
license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ];
|
||||
maintainers = with maintainers; [ peterhoeg ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
{ mkDerivation
|
||||
, lib, extra-cmake-modules
|
||||
, drumstick, fluidsynth
|
||||
, kcoreaddons, kcrash, kdoctools
|
||||
, qtquickcontrols2, qtsvg, qttools
|
||||
}:
|
||||
|
||||
mkDerivation {
|
||||
name = "minuet";
|
||||
meta = with lib; {
|
||||
license = with licenses; [ lgpl21 gpl3 ];
|
||||
maintainers = with maintainers; [ peterhoeg ];
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
drumstick fluidsynth
|
||||
kcoreaddons kcrash
|
||||
qtquickcontrols2 qtsvg qttools
|
||||
];
|
||||
enableParallelBuilding = true;
|
||||
}
|
|
@ -38,7 +38,7 @@ buildRustPackage rec {
|
|||
sha256 = "0h37x12r33xwz9vf1n8y24c0ph5w17lhkpfi5q6lbpgidvbs6fyx";
|
||||
};
|
||||
|
||||
depsSha256 = "05gkl2zg546i2pm0gx11s56f7dk72qpm39kml1d2myj81s0vyb5z";
|
||||
cargoSha256 = "0w3j92kd27pny37pfvlv6qsnbb1lgphmfbhvvng0z96r2b1wjviz";
|
||||
|
||||
buildInputs = [
|
||||
cmake
|
||||
|
@ -69,6 +69,7 @@ buildRustPackage rec {
|
|||
dontPatchELF = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
broken = true;
|
||||
description = "GPU-accelerated terminal emulator";
|
||||
homepage = https://github.com/jwilm/alacritty;
|
||||
license = with licenses; [ asl20 ];
|
||||
|
|
|
@ -5,12 +5,12 @@
|
|||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "3.9.0";
|
||||
version = "3.10.0";
|
||||
name = "calibre-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.calibre-ebook.com/${version}/${name}.tar.xz";
|
||||
sha256 = "0zsf1czw8bz41nk9f55vxwncf0chxdflyhjj2khw9da67ph6yknx";
|
||||
sha256 = "01vb5xjis9ldva7rg1f720lwys5frkj00z8x7cajqwxliilhvais";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -7,13 +7,13 @@ with stdenv.lib;
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "keepassx-community-${version}";
|
||||
version = "2.2.1";
|
||||
version = "2.2.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "keepassxreboot";
|
||||
repo = "keepassxc";
|
||||
rev = "${version}";
|
||||
sha256 = "1g9qz81i7rsfywl03bwl3cg7q91vp24519b91y5liiyrqrq0zx94";
|
||||
sha256 = "01pqpa3vzk2q1vrj2lqayr7a3nzpnj176yhnqbrwlm3s9rga4wzn";
|
||||
};
|
||||
|
||||
cmakeFlags = [
|
||||
|
|
|
@ -1,12 +1,14 @@
|
|||
{ stdenv, fetchgit }:
|
||||
{ stdenv, fetchFromGitHub }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "makeself-2.2.0";
|
||||
version = "2.3.1";
|
||||
name = "makeself-${version}";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/megastep/makeself.git";
|
||||
rev = "b836b9281ae99abe1865608b065551da56c80719";
|
||||
sha256 = "f7c97f0f8ad8128f2f1b54383319f2cc44cbb05b60ced222784debdf326f23ad";
|
||||
src = fetchFromGitHub {
|
||||
owner = "megastep";
|
||||
repo = "makeself";
|
||||
rev = "release-${version}";
|
||||
sha256 = "01r7vb9vyb99s3g5cw0c04s1ahcingynk3ki17wknlk2asjrbc4p";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
|
|
|
@ -31,7 +31,8 @@ stdenv.mkDerivation rec {
|
|||
|
||||
nativeBuildInputs = [ cmake extra-cmake-modules pkgconfig qmake qttools ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
# on 2.1.2: RCC: Error in 'autoscroll.qrc': Cannot find file 'locale/ar_SA.qm'
|
||||
enableParallelBuilding = false;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "QtWebEngine based cross-platform web browser";
|
||||
|
|
|
@ -14,7 +14,7 @@ buildRustPackage rec {
|
|||
sha256 = "0pqrm85pd9hqn5fwqjbyyrrfh4k7q9mi9qy9hm8yigk5l8mw44y1";
|
||||
};
|
||||
|
||||
depsSha256 = "1ahfm5agvabqqqgjsyjb95xxbc7mng1mdyclcakwp1m1qdkxx9py";
|
||||
cargoSha256 = "1ahfm5agvabqqqgjsyjb95xxbc7mng1mdyclcakwp1m1qdkxx9p0";
|
||||
|
||||
buildInputs = [ libsodium libarchive openssl ];
|
||||
|
||||
|
@ -35,5 +35,6 @@ buildRustPackage rec {
|
|||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.rushmorem ];
|
||||
platforms = [ "x86_64-linux" "x86_64-darwin" ];
|
||||
broken = true; # mark temporary as broken due git dependencies
|
||||
};
|
||||
}
|
||||
|
|
|
@ -24,10 +24,10 @@
|
|||
let
|
||||
# NOTE: When updating, please also update in current stable,
|
||||
# as older versions stop working
|
||||
version = "36.4.22";
|
||||
version = "37.4.29";
|
||||
sha256 = {
|
||||
"x86_64-linux" = "0hhnigwxqmr00zmlysc1y1k4bzrdrcabcnw44bniarwa2l4fw0v0";
|
||||
"i686-linux" = "15l7m33b0qlz8m6h7kh1fkxs37dq8jqy04b3qf693ns7wb5l0sqm";
|
||||
"x86_64-linux" = "0ymy8gb57bjq2mq35n52q2viww6am7wy0vskyvypliicggga8iaj";
|
||||
"i686-linux" = "0a7zir6x7z3ad71fj1iljc2l6x09f4wi40jfaiinf8ykx85cldw6";
|
||||
}."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
|
||||
|
||||
arch = {
|
||||
|
|
|
@ -12,7 +12,7 @@ buildRustPackage rec {
|
|||
sha256 = "1mcdjykrgh0jq6k6y664lai8sbgzk6j7k0r944f43vg63d1jql5b";
|
||||
};
|
||||
|
||||
depsSha256 = "0whs3fgmpb6g1mjajs3qs9g613x5dal4x6ghzzkpl73a9pgydkpn";
|
||||
cargoSha256 = "0k9d6pxsb4gvkqs00g71c1nnz773iccg4vajgn33qdym6m6qsjwy";
|
||||
|
||||
buildInputs = [ makeWrapper openssl ];
|
||||
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
{ stdenv, fetchurl, dbus, gnutls, wxGTK30, libidn, tinyxml, gettext
|
||||
, pkgconfig, xdg_utils, gtk2, sqlite, pugixml, libfilezilla, nettle }:
|
||||
|
||||
let version = "3.27.1"; in
|
||||
let version = "3.28.0"; in
|
||||
stdenv.mkDerivation {
|
||||
name = "filezilla-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/project/filezilla/FileZilla_Client/${version}/FileZilla_${version}_src.tar.bz2";
|
||||
sha256 = "14lsplbp9fy7lk6cpwi3aj6jskz4j82h67x0fik82z1bns0zm2a3";
|
||||
sha256 = "1dxzmpqrb3a29ln9vx10n438w5i649729vy911sm92bwn2p235p4";
|
||||
};
|
||||
|
||||
configureFlags = [
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
{ stdenv, buildGoPackage, fetchFromGitHub, fetchgx }:
|
||||
|
||||
buildGoPackage rec {
|
||||
name = "ipget-${version}";
|
||||
version = "0.2.5";
|
||||
rev = "v${version}";
|
||||
|
||||
goPackagePath = "github.com/ipfs/ipget";
|
||||
|
||||
extraSrcPaths = [
|
||||
(fetchgx {
|
||||
inherit name src;
|
||||
sha256 = "1d4w8zl5mcppn3d4bl7qdkiqlf8gi3z2a62nygx17bqpa3da8cf3";
|
||||
})
|
||||
];
|
||||
|
||||
goDeps = ../../../tools/package-management/gx/deps.nix;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ipfs";
|
||||
repo = "ipget";
|
||||
inherit rev;
|
||||
sha256 = "0a8yxqhl469ipiznrgkp3yi1xz3xzcbpx60wabqppq8hccrdiybk";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Retrieve files over IPFS and save them locally";
|
||||
homepage = https://ipfs.io/;
|
||||
license = licenses.mit;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
|
@ -1,12 +1,12 @@
|
|||
{ stdenv, fetchurl, pkgconfig, ncurses, glib, openssl, perl, libintlOrEmpty }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.0.4";
|
||||
version = "1.0.5";
|
||||
name = "irssi-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/irssi/irssi/releases/download/${version}/${name}.tar.gz";
|
||||
sha256 = "1a7f9g3hlccqlf9xj1csbxw4wgl6jfywg2xvkir6ww5viagkbzs8";
|
||||
sha256 = "1lasb8flic4qc1sd3pvfg9aig5skcxlyx6iy9bk73147r8vzaq75";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
{ stdenv, lib, fetchurl, autoreconfHook, pkgconfig
|
||||
, openssl, netcat-gnu, gnutls, gsasl, libidn, Security
|
||||
, withKeyring ? true, libsecret ? null
|
||||
, systemd ? null }:
|
||||
|
||||
let
|
||||
|
@ -20,7 +21,9 @@ in stdenv.mkDerivation rec {
|
|||
];
|
||||
|
||||
buildInputs = [ openssl gnutls gsasl libidn ]
|
||||
++ stdenv.lib.optional stdenv.isDarwin Security;
|
||||
++ stdenv.lib.optional stdenv.isDarwin Security
|
||||
++ stdenv.lib.optional withKeyring libsecret;
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||
|
||||
configureFlags =
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
, requireFile
|
||||
, makeWrapper
|
||||
, libredirect
|
||||
|
@ -22,154 +23,198 @@
|
|||
, alsaLib
|
||||
, libidn
|
||||
, zlib
|
||||
, version ? null
|
||||
}:
|
||||
|
||||
let versionRec = { major = "13"; minor = "7"; patch = "0"; };
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "citrix-receiver-${version}";
|
||||
version = with versionRec; "${major}.${minor}.${patch}";
|
||||
homepage = https://www.citrix.com/downloads/citrix-receiver/linux/receiver-for-linux-latest.html;
|
||||
let
|
||||
versionInfo = {
|
||||
"13.4.0" = rec {
|
||||
major = "13";
|
||||
minor = "4";
|
||||
patch = "0";
|
||||
x64hash = "133brs0sq6d0mgr19rc6ig1n9ahm3ryi23v5nrgqfh0hgxqcrrjb";
|
||||
x86hash = "0r7jfl5yqv1s2npy8l9gsn0gbb82f6raa092ppkc8xy5pni5sh7l";
|
||||
x64suffix = "10109380";
|
||||
x86suffix = x64suffix;
|
||||
homepage = https://www.citrix.com/downloads/citrix-receiver/legacy-receiver-for-linux/receiver-for-linux-latest-13-4.html;
|
||||
};
|
||||
|
||||
prefixWithBitness = if stdenv.is64bit then "linuxx64" else "linuxx86";
|
||||
"13.5.0" = rec {
|
||||
major = "13";
|
||||
minor = "5";
|
||||
patch = "0";
|
||||
x64hash = "1r24mhkpcc0z95n597p07fz92pd1b8qqzp2z6w07rmb9wb8mpd4x";
|
||||
x86hash = "0pwxshlryzhkl86cj9ryybm54alhzjx0gpp67fnvdn5r64wy1nd1";
|
||||
x64suffix = "10185126";
|
||||
x86suffix = x64suffix;
|
||||
homepage = https://www.citrix.com/downloads/citrix-receiver/legacy-receiver-for-linux/receiver-for-linux-latest-13-5.html;
|
||||
};
|
||||
|
||||
src = with versionRec; requireFile rec {
|
||||
name =
|
||||
if stdenv.is64bit
|
||||
then "${prefixWithBitness}-${version}.10276927.tar.gz"
|
||||
else "${prefixWithBitness}-${version}.10276925.tar.gz";
|
||||
sha256 =
|
||||
if stdenv.is64bit
|
||||
then "18fb374b9fb8e249b79178500dddca7a1f275411c6537e7695da5dcf19c5ba91"
|
||||
else "4c68723b0327cf6f12da824056fce2b7853c38e6163a48c9d222b93dd8da75b6";
|
||||
message = ''
|
||||
In order to use Citrix Receiver, you need to comply with the Citrix EULA and download
|
||||
the ${if stdenv.is64bit then "64-bit" else "32-bit"} binaries, .tar.gz from:
|
||||
"13.6.0" = rec {
|
||||
major = "13";
|
||||
minor = "6";
|
||||
patch = "0";
|
||||
x64hash = "6e423be41d5bb8186bcca3fbb4ede54dc3f00b8d2aeb216ae4aabffef9310d34";
|
||||
x86hash = "0ba3eba208b37844904d540b3011075ed5cecf429a0ab6c6cd52f2d0fd841ad2";
|
||||
x64suffix = "10243651";
|
||||
x86suffix = x64suffix;
|
||||
homepage = https://www.citrix.com/downloads/citrix-receiver/legacy-receiver-for-linux/receiver-for-linux-136.html;
|
||||
};
|
||||
|
||||
${homepage}
|
||||
|
||||
(if you do not find version ${version} there, try at
|
||||
https://www.citrix.com/downloads/citrix-receiver/legacy-receiver-for-linux/receiver-for-linux-latest-${major}-${minor}.html
|
||||
or at https://www.citrix.com/downloads/citrix-receiver/ under "Earlier Versions of Receiver for Linux")
|
||||
|
||||
Once you have downloaded the file, please use the following command and re-run the
|
||||
installation:
|
||||
|
||||
nix-prefetch-url file://\$PWD/${name}
|
||||
'';
|
||||
"13.7.0" = {
|
||||
major = "13";
|
||||
minor = "7";
|
||||
patch = "0";
|
||||
x64hash = "18fb374b9fb8e249b79178500dddca7a1f275411c6537e7695da5dcf19c5ba91";
|
||||
x86hash = "4c68723b0327cf6f12da824056fce2b7853c38e6163a48c9d222b93dd8da75b6";
|
||||
homepage = https://www.citrix.com/downloads/citrix-receiver/linux/receiver-for-linux-latest.html; # Fix when updating version
|
||||
x64suffix = "10276927";
|
||||
x86suffix = "10276925";
|
||||
};
|
||||
};
|
||||
|
||||
phases = [ "unpackPhase" "installPhase" ];
|
||||
citrixReceiverForVersion = { major, minor, patch, x86hash, x64hash, x86suffix, x64suffix, homepage }:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "citrix-receiver-${version}";
|
||||
version = "${major}.${minor}.${patch}";
|
||||
inherit homepage;
|
||||
|
||||
sourceRoot = ".";
|
||||
prefixWithBitness = if stdenv.is64bit then "linuxx64" else "linuxx86";
|
||||
|
||||
buildInputs = [
|
||||
makeWrapper
|
||||
busybox
|
||||
file
|
||||
gtk2
|
||||
gdk_pixbuf
|
||||
];
|
||||
src = requireFile rec {
|
||||
name = if stdenv.is64bit then "${prefixWithBitness}-${version}.${x64suffix}.tar.gz" else "${prefixWithBitness}-${version}.${x86suffix}.tar.gz";
|
||||
sha256 = if stdenv.is64bit then x64hash else x86hash;
|
||||
message = ''
|
||||
In order to use Citrix Receiver, you need to comply with the Citrix EULA and download
|
||||
the ${if stdenv.is64bit then "64-bit" else "32-bit"} binaries, .tar.gz from:
|
||||
|
||||
libPath = stdenv.lib.makeLibraryPath [
|
||||
glib
|
||||
gtk2
|
||||
atk
|
||||
gdk_pixbuf
|
||||
cairo
|
||||
pango
|
||||
gnome3.dconf
|
||||
xlibs.libX11
|
||||
xlibs.libXext
|
||||
xlibs.libXrender
|
||||
xlibs.libXinerama
|
||||
xlibs.libXfixes
|
||||
libpng12
|
||||
libidn
|
||||
zlib
|
||||
gtk_engines
|
||||
freetype
|
||||
fontconfig
|
||||
alsaLib
|
||||
stdenv.cc.cc # Fixes: Can not load [..]/opt/citrix-icaclient/lib/ctxh264_fb.so:(null)
|
||||
];
|
||||
${homepage}
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "wfica";
|
||||
desktopName = "Citrix Receiver";
|
||||
genericName = "Citrix Receiver";
|
||||
exec = "wfica";
|
||||
icon = "wfica";
|
||||
comment = "Connect to remote Citrix server";
|
||||
categories = "GTK;GNOME;X-GNOME-NetworkSettings;Network;";
|
||||
mimeType = "application/x-ica";
|
||||
};
|
||||
(if you do not find version ${version} there, try at
|
||||
https://www.citrix.com/downloads/citrix-receiver/legacy-receiver-for-linux/
|
||||
or at https://www.citrix.com/downloads/citrix-receiver/ under "Earlier Versions of Receiver for Linux")
|
||||
|
||||
installPhase = ''
|
||||
export ICAInstDir="$out/opt/citrix-icaclient"
|
||||
Once you have downloaded the file, please use the following command and re-run the
|
||||
installation:
|
||||
|
||||
sed -i \
|
||||
-e 's,^main_install_menu$,install_ICA_client,g' \
|
||||
-e 's,^integrate_ICA_client(),alias integrate_ICA_client=true\nintegrate_ICA_client_old(),g' \
|
||||
-e 's,^ANSWER=""$,ANSWER="$INSTALLER_YES",' \
|
||||
-e 's,/bin/true,true,g' \
|
||||
./${prefixWithBitness}/hinst
|
||||
nix-prefetch-url file://\$PWD/${name}
|
||||
'';
|
||||
};
|
||||
|
||||
# Run the installer...
|
||||
./${prefixWithBitness}/hinst CDROM "`pwd`"
|
||||
phases = [ "unpackPhase" "installPhase" ];
|
||||
|
||||
echo "Deleting broken links..."
|
||||
for link in `find $ICAInstDir -type l `
|
||||
do
|
||||
[ -f "$link" ] || rm -v "$link"
|
||||
done
|
||||
sourceRoot = ".";
|
||||
|
||||
echo "Expanding certificates..."
|
||||
# As explained in https://wiki.archlinux.org/index.php/Citrix#Security_Certificates
|
||||
pushd "$ICAInstDir/keystore/cacerts"
|
||||
awk 'BEGIN {c=0;} /BEGIN CERT/{c++} { print > "cert." c ".pem"}' < ${cacert}/etc/ssl/certs/ca-bundle.crt
|
||||
popd
|
||||
buildInputs = [
|
||||
makeWrapper
|
||||
busybox
|
||||
file
|
||||
gtk2
|
||||
gdk_pixbuf
|
||||
];
|
||||
|
||||
echo "Patching executables..."
|
||||
find $ICAInstDir -type f -exec file {} \; |
|
||||
grep 'ELF.*executable' |
|
||||
cut -f 1 -d : |
|
||||
while read f
|
||||
do
|
||||
echo "Patching ELF intrepreter and rpath for $f"
|
||||
chmod u+w "$f"
|
||||
patchelf \
|
||||
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
|
||||
--set-rpath "$ICAInstDir:$libPath" "$f"
|
||||
done
|
||||
libPath = stdenv.lib.makeLibraryPath [
|
||||
glib
|
||||
gtk2
|
||||
atk
|
||||
gdk_pixbuf
|
||||
cairo
|
||||
pango
|
||||
gnome3.dconf
|
||||
xlibs.libX11
|
||||
xlibs.libXext
|
||||
xlibs.libXrender
|
||||
xlibs.libXinerama
|
||||
xlibs.libXfixes
|
||||
libpng12
|
||||
libidn
|
||||
zlib
|
||||
gtk_engines
|
||||
freetype
|
||||
fontconfig
|
||||
alsaLib
|
||||
stdenv.cc.cc # Fixes: Can not load [..]/opt/citrix-icaclient/lib/ctxh264_fb.so:(null)
|
||||
];
|
||||
|
||||
echo "Wrapping wfica..."
|
||||
mkdir "$out/bin"
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "wfica";
|
||||
desktopName = "Citrix Receiver";
|
||||
genericName = "Citrix Receiver";
|
||||
exec = "wfica";
|
||||
icon = "wfica";
|
||||
comment = "Connect to remote Citrix server";
|
||||
categories = "GTK;GNOME;X-GNOME-NetworkSettings;Network;";
|
||||
mimeType = "application/x-ica";
|
||||
};
|
||||
|
||||
makeWrapper "$ICAInstDir/wfica" "$out/bin/wfica" \
|
||||
--add-flags "-icaroot $ICAInstDir" \
|
||||
--set ICAROOT "$ICAInstDir" \
|
||||
--set GTK_PATH "${gtk2.out}/lib/gtk-2.0:${gnome3.gnome_themes_standard}/lib/gtk-2.0" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
|
||||
--set LD_LIBRARY_PATH "$libPath" \
|
||||
--set NIX_REDIRECTS "/usr/share/zoneinfo=${tzdata}/share/zoneinfo:/etc/zoneinfo=${tzdata}/share/zoneinfo:/etc/timezone=$ICAInstDir/timezone"
|
||||
installPhase = ''
|
||||
export ICAInstDir="$out/opt/citrix-icaclient"
|
||||
|
||||
echo "We arbitrarily set the timezone to UTC. No known consequences at this point."
|
||||
echo UTC > "$ICAInstDir/timezone"
|
||||
sed -i \
|
||||
-e 's,^main_install_menu$,install_ICA_client,g' \
|
||||
-e 's,^integrate_ICA_client(),alias integrate_ICA_client=true\nintegrate_ICA_client_old(),g' \
|
||||
-e 's,^ANSWER=""$,ANSWER="$INSTALLER_YES",' \
|
||||
-e 's,/bin/true,true,g' \
|
||||
./${prefixWithBitness}/hinst
|
||||
|
||||
echo "Installing desktop item..."
|
||||
mkdir -p $out/share/applications
|
||||
cp ${desktopItem}/share/applications/* $out/share/applications
|
||||
# Run the installer...
|
||||
./${prefixWithBitness}/hinst CDROM "`pwd`"
|
||||
|
||||
# We introduce a dependency on the source file so that it need not be redownloaded everytime
|
||||
echo $src >> "$out/share/nix_dependencies.pin"
|
||||
'';
|
||||
echo "Deleting broken links..."
|
||||
for link in `find $ICAInstDir -type l `
|
||||
do
|
||||
[ -f "$link" ] || rm -v "$link"
|
||||
done
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
homepage = homepage;
|
||||
description = "Citrix Receiver";
|
||||
maintainers = with maintainers; [ obadz a1russell ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
echo "Expanding certificates..."
|
||||
# As explained in https://wiki.archlinux.org/index.php/Citrix#Security_Certificates
|
||||
pushd "$ICAInstDir/keystore/cacerts"
|
||||
awk 'BEGIN {c=0;} /BEGIN CERT/{c++} { print > "cert." c ".pem"}' < ${cacert}/etc/ssl/certs/ca-bundle.crt
|
||||
popd
|
||||
|
||||
echo "Patching executables..."
|
||||
find $ICAInstDir -type f -exec file {} \; |
|
||||
grep 'ELF.*executable' |
|
||||
cut -f 1 -d : |
|
||||
while read f
|
||||
do
|
||||
echo "Patching ELF intrepreter and rpath for $f"
|
||||
chmod u+w "$f"
|
||||
patchelf \
|
||||
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
|
||||
--set-rpath "$ICAInstDir:$libPath" "$f"
|
||||
done
|
||||
|
||||
echo "Wrapping wfica..."
|
||||
mkdir "$out/bin"
|
||||
|
||||
makeWrapper "$ICAInstDir/wfica" "$out/bin/wfica" \
|
||||
--add-flags "-icaroot $ICAInstDir" \
|
||||
--set ICAROOT "$ICAInstDir" \
|
||||
--set GTK_PATH "${gtk2.out}/lib/gtk-2.0:${gnome3.gnome_themes_standard}/lib/gtk-2.0" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
|
||||
--set LD_LIBRARY_PATH "$libPath" \
|
||||
--set NIX_REDIRECTS "/usr/share/zoneinfo=${tzdata}/share/zoneinfo:/etc/zoneinfo=${tzdata}/share/zoneinfo:/etc/timezone=$ICAInstDir/timezone"
|
||||
|
||||
echo "We arbitrarily set the timezone to UTC. No known consequences at this point."
|
||||
echo UTC > "$ICAInstDir/timezone"
|
||||
|
||||
echo "Installing desktop item..."
|
||||
mkdir -p $out/share/applications
|
||||
cp ${desktopItem}/share/applications/* $out/share/applications
|
||||
|
||||
# We introduce a dependency on the source file so that it need not be redownloaded everytime
|
||||
echo $src >> "$out/share/nix_dependencies.pin"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
inherit homepage;
|
||||
description = "Citrix Receiver";
|
||||
maintainers = with maintainers; [ obadz a1russell ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
};
|
||||
|
||||
in citrixReceiverForVersion (lib.getAttr version versionInfo)
|
||||
|
|
|
@ -12,7 +12,7 @@ assert withQt -> !withGtk && qt5 != null;
|
|||
with stdenv.lib;
|
||||
|
||||
let
|
||||
version = "2.4.1";
|
||||
version = "2.4.2";
|
||||
variant = if withGtk then "gtk" else if withQt then "qt" else "cli";
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
|
@ -20,7 +20,7 @@ in stdenv.mkDerivation {
|
|||
|
||||
src = fetchurl {
|
||||
url = "http://www.wireshark.org/download/src/all-versions/wireshark-${version}.tar.xz";
|
||||
sha256 = "1k8zj44pkb2ny2x46f100y7cxddm1kh0zh7f6qggm78gn7wvrp82";
|
||||
sha256 = "0zglapd3sz08p2z9x8a5va3jnz17b3n5a1bskf7f2dgx6m3v5b6i";
|
||||
};
|
||||
|
||||
cmakeFlags = optional withGtk "-DBUILD_wireshark_gtk=TRUE";
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
, librevenge, libe-book, libmwaw, glm, glew, gst_all_1
|
||||
, gdb, commonsLogging, librdf_rasqal, makeWrapper, gsettings_desktop_schemas
|
||||
, defaultIconTheme, glib, ncurses, xmlsec, epoxy, gpgme
|
||||
, langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" "sl" "pl" "hu" ]
|
||||
, langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" "sl" "pl" "hu" "it" ]
|
||||
, withHelp ? true
|
||||
, kdeIntegration ? false
|
||||
}:
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
, librevenge, libe-book, libmwaw, glm, glew, gst_all_1
|
||||
, gdb, commonsLogging, librdf_rasqal, makeWrapper, gsettings_desktop_schemas
|
||||
, defaultIconTheme, glib, ncurses
|
||||
, langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" "sl" "pl" "hu" ]
|
||||
, langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" "sl" "pl" "hu" "it" ]
|
||||
, withHelp ? true
|
||||
, kdeIntegration ? false
|
||||
}:
|
||||
|
@ -63,7 +63,7 @@ in stdenv.mkDerivation rec {
|
|||
# It also seems not to mention libdl explicitly in some places.
|
||||
NIX_LDFLAGS = "-lcups -ldl";
|
||||
|
||||
# For some reason librdf_redland sometimes refers to rasqal.h instead
|
||||
# For some reason librdf_redland sometimes refers to rasqal.h instead
|
||||
# of rasqal/rasqal.h
|
||||
NIX_CFLAGS_COMPILE="-I${librdf_rasqal}/include/rasqal";
|
||||
|
||||
|
|
|
@ -20,6 +20,7 @@ let
|
|||
"8.6" = "148mb48zpdax56c0blfi7v67lx014lnmrvxxasi28hsibyz2lvg4";
|
||||
"8.6.1" = "0llrxcxwy5j87vbbjnisw42rfw1n1pm5602ssx64xaxx3k176g6l";
|
||||
"8.7+beta2" = "1r274m44z774xigvj43g211ms9z9bwgyp1g43rvq4fswb3gzxc4b";
|
||||
"8.7.0" = "1h18b7xpnx3ix9vsi5fx4zdcbxy7bhra7gd5c5yzxmk53cgf1p9m";
|
||||
}."${version}";
|
||||
coq-version = builtins.substring 0 3 version;
|
||||
camlp5 = ocamlPackages.camlp5_strict;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchFromGitHub, openssl, gnupg1compat, makeWrapper }:
|
||||
{ fetchFromGitHub, git, gnupg1compat, makeWrapper, openssl, stdenv }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
|
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
installPhase = ''
|
||||
make install PREFIX=$out
|
||||
wrapProgram $out/bin/* --prefix PATH : ${gnupg1compat}/bin
|
||||
wrapProgram $out/bin/* --prefix PATH : $out/bin:${git}/bin:${gnupg1compat}/bin
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -23,7 +23,7 @@ buildRustPackage rec {
|
|||
sha256 = "1sx6sc2dj3l61gbiqz8vfyhw5w4xjdyfzn1ixz0y8ipm579yc7a2";
|
||||
};
|
||||
|
||||
depsSha256 = "1z2n3z5wkh5z5vc976yscq77fgjszwzwlrp7g17hmsbhzx6x170h";
|
||||
cargoSha256 = "08zbvjwjdpv2sbj6mh73py82inhs18jvmh8m9k4l94fcz6ykgqwr";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
}:
|
||||
|
||||
let
|
||||
version = "2.14.2";
|
||||
version = "2.14.3";
|
||||
svn = subversionClient.override { perlBindings = true; };
|
||||
in
|
||||
|
||||
|
@ -22,7 +22,7 @@ stdenv.mkDerivation {
|
|||
|
||||
src = fetchurl {
|
||||
url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
|
||||
sha256 = "18f70gfzwqd210806hmf94blcd7yv5h9ka6xqkpd2jhijqwp5sah";
|
||||
sha256 = "078m0za5gyzcah5iaxdwx663yvdp8byvjc8rpzjzcrr4sl6rcc2k";
|
||||
};
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
|
|
@ -18,7 +18,7 @@ buildRustPackage rec {
|
|||
|
||||
doCheck = false;
|
||||
|
||||
depsSha256 = "1qzzpnkyw1bn5fnj06c80f7985v1q0rqcphrrrkpbi33lg5mzgbv";
|
||||
cargoSha256 = "0r69vghjd6b30v0qjsipyv56n92iwvyxmllrnwjzjf5pzhhjl7sy";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A distributed version control system";
|
||||
|
|
|
@ -36,6 +36,9 @@ stdenv.mkDerivation rec {
|
|||
|
||||
# Avoid a glibc >= 2.25 deprecation warning that gets fatal via -Werror.
|
||||
sed 1i'#include <sys/sysmacros.h>' -i lib/wiper/wiperPosix.c
|
||||
|
||||
# Make reboot work, shutdown is not in /sbin on NixOS
|
||||
sed -i 's,/sbin/shutdown,shutdown,' lib/system/systemLinux.c
|
||||
'';
|
||||
|
||||
configureFlags = [ "--without-kernel-modules" "--without-xmlsecurity" ]
|
||||
|
|
|
@ -14,13 +14,14 @@ buildRustPackage rec {
|
|||
sha256 = "10s01x54kwjm2c85v57i6g3pvj5w3wpkjblj036mmd865fla1brb";
|
||||
};
|
||||
|
||||
depsSha256 = "1k5xbw2zhm5z650mxdbxixr90im53wlpjdvq2pbnx2snqm84idlc";
|
||||
cargoSha256 = "06qivlybmmc49ksv4232sm1r4hp923xsq4c2ksa4i2azdzc1csdc";
|
||||
|
||||
buildInputs = [ wlc dbus_libs dbus_glib cairo libxkbcommon ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
broken = true;
|
||||
description = "Customizable Wayland compositor (window manager)";
|
||||
longDescription = ''
|
||||
Way Cooler is a customizable tiling window manager written in Rust
|
||||
|
|
|
@ -9,7 +9,7 @@ rustPlatform.buildRustPackage rec {
|
|||
sha256 = "1r74nhcwiy2rmifzjhdal3jcqz4jz48nfvhdyw4gasa6nxp3msdl";
|
||||
};
|
||||
|
||||
depsSha256 = "0z7h8ybh2db3xl8qxbzby5lncdaijixzmbn1j8a45lbky1xiix71";
|
||||
cargoSha256 = "0z92ml84b5652zgwzn08a8vvxksaa54jql66sfpdz1mvjwhgdmvn";
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ libXinerama libX11 ];
|
||||
|
@ -31,6 +31,7 @@ rustPlatform.buildRustPackage rec {
|
|||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
broken = true;
|
||||
description = "A tiling window manager in Rust";
|
||||
homepage = https://github.com/Kintaro/wtftw;
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
{ fetchurl, stdenv }:
|
||||
let
|
||||
inherit (stdenv) system;
|
||||
|
||||
version = "0.1.12";
|
||||
|
||||
hashes = {
|
||||
x86_64-linux = "1hxlavcxy374yypfamlkygjg662lhll8j434qcvdawkvlidg5ii5";
|
||||
x86_64-darwin = "1jkvhh710gwjnnjx59kaplx2ncfvkx9agfa76rr94sbjqq4igddm";
|
||||
};
|
||||
hash = hashes. ${system} or (throw "missing bootstrap hash for platform ${system}");
|
||||
|
||||
platforms = {
|
||||
x86_64-linux = "x86_64-unknown-linux-musl";
|
||||
x86_64-darwin = "x86_64-apple-darwin";
|
||||
};
|
||||
platform = platforms . ${system};
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
name = "cargo-vendor-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/alexcrichton/cargo-vendor/releases/download/${version}/cargo-vendor-${version}-${platform}.tar.gz";
|
||||
sha256 = hash;
|
||||
};
|
||||
|
||||
phases = "unpackPhase installPhase";
|
||||
|
||||
installPhase = ''
|
||||
install -Dm755 cargo-vendor $out/bin/cargo-vendor
|
||||
'';
|
||||
}
|
|
@ -1,10 +1,14 @@
|
|||
{ stdenv, callPackage, path, cacert, git, rust, rustRegistry }:
|
||||
|
||||
{ fetchurl, stdenv, path, cacert, git, rust }:
|
||||
let
|
||||
rustRegistry' = rustRegistry;
|
||||
cargoVendor = import ./cargo-vendor.nix {
|
||||
inherit fetchurl stdenv;
|
||||
};
|
||||
|
||||
fetchcargo = import ./fetchcargo.nix {
|
||||
inherit stdenv cacert git rust cargoVendor;
|
||||
};
|
||||
in
|
||||
{ name, depsSha256
|
||||
, rustRegistry ? rustRegistry'
|
||||
{ name, cargoSha256
|
||||
, src ? null
|
||||
, srcs ? null
|
||||
, sourceRoot ? null
|
||||
|
@ -18,17 +22,13 @@ in
|
|||
let
|
||||
lib = stdenv.lib;
|
||||
|
||||
fetchDeps = import ./fetchcargo.nix {
|
||||
inherit stdenv cacert git rust rustRegistry;
|
||||
};
|
||||
|
||||
cargoDeps = fetchDeps {
|
||||
cargoDeps = fetchcargo {
|
||||
inherit name src srcs sourceRoot cargoUpdateHook;
|
||||
sha256 = depsSha256;
|
||||
sha256 = cargoSha256;
|
||||
};
|
||||
|
||||
in stdenv.mkDerivation (args // {
|
||||
inherit cargoDeps rustRegistry;
|
||||
inherit cargoDeps;
|
||||
|
||||
patchRegistryDeps = ./patch-registry-deps;
|
||||
|
||||
|
@ -43,71 +43,24 @@ in stdenv.mkDerivation (args // {
|
|||
postUnpack = ''
|
||||
eval "$cargoDepsHook"
|
||||
|
||||
echo "Using cargo deps from $cargoDeps"
|
||||
mkdir .cargo
|
||||
cat >.cargo/config <<-EOF
|
||||
[source.crates-io]
|
||||
registry = 'https://github.com/rust-lang/crates.io-index'
|
||||
replace-with = 'vendored-sources'
|
||||
|
||||
cp -a "$cargoDeps" deps
|
||||
chmod +w deps -R
|
||||
|
||||
# It's OK to use /dev/null as the URL because by the time we do this, cargo
|
||||
# won't attempt to update the registry anymore, so the URL is more or less
|
||||
# irrelevant
|
||||
|
||||
cat <<EOF > deps/config
|
||||
[registry]
|
||||
index = "file:///dev/null"
|
||||
[source.vendored-sources]
|
||||
directory = '$cargoDeps'
|
||||
EOF
|
||||
|
||||
export CARGO_HOME="$(realpath deps)"
|
||||
export RUST_LOG=${logLevel}
|
||||
export SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
|
||||
|
||||
# Let's find out which $indexHash cargo uses for file:///dev/null
|
||||
(cd $sourceRoot && cargo fetch &>/dev/null) || true
|
||||
cd deps
|
||||
indexHash="$(basename $(echo registry/index/*))"
|
||||
|
||||
echo "Using indexHash '$indexHash'"
|
||||
|
||||
rm -rf -- "registry/cache/$indexHash" \
|
||||
"registry/index/$indexHash"
|
||||
|
||||
mv registry/cache/HASH "registry/cache/$indexHash"
|
||||
|
||||
echo "Using rust registry from $rustRegistry"
|
||||
ln -s "$rustRegistry" "registry/index/$indexHash"
|
||||
|
||||
# Retrieved the Cargo.lock file which we saved during the fetch
|
||||
cd ..
|
||||
mv deps/Cargo.lock $sourceRoot/
|
||||
|
||||
(
|
||||
cd $sourceRoot
|
||||
|
||||
cargo fetch
|
||||
cargo clean
|
||||
)
|
||||
'' + (args.postUnpack or "");
|
||||
|
||||
prePatch = ''
|
||||
# Patch registry dependencies, using the scripts in $patchRegistryDeps
|
||||
(
|
||||
set -euo pipefail
|
||||
|
||||
cd $NIX_BUILD_TOP/deps/registry/src/*
|
||||
|
||||
for script in $patchRegistryDeps/*; do
|
||||
# Run in a subshell so that directory changes and shell options don't
|
||||
# affect any following commands
|
||||
|
||||
( . $script)
|
||||
done
|
||||
)
|
||||
'' + (args.prePatch or "");
|
||||
|
||||
buildPhase = with builtins; args.buildPhase or ''
|
||||
runHook preBuild
|
||||
echo "Running cargo build --release ${concatStringsSep " " cargoBuildFlags}"
|
||||
cargo build --release ${concatStringsSep " " cargoBuildFlags}
|
||||
cargo build --release --frozen ${concatStringsSep " " cargoBuildFlags}
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
|
@ -126,4 +79,6 @@ in stdenv.mkDerivation (args // {
|
|||
find target/release -maxdepth 1 -executable -exec cp "{}" $out/bin \;
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru = { inherit cargoDeps; };
|
||||
})
|
||||
|
|
|
@ -1,209 +0,0 @@
|
|||
# copied from libgit2 source code 'repo-template.h'
|
||||
makeGitTemplate() {
|
||||
local target="$1"
|
||||
mkdir -p -m777 "$target/info" "$target/pack" "$target/objects" "$target/refs"
|
||||
mkdir -p -m777 "$target/refs/heads" "$target/refs/tags" "$target/objects/info" "$target/objects/pack"
|
||||
cat <<'EOF' > "$target/description"
|
||||
Unnamed repository; edit this file 'description' to name the repository.
|
||||
EOF
|
||||
chmod 666 "$target/description"
|
||||
cat <<'EOF' > "$target/info/exclude"
|
||||
# File patterns to ignore; see `git help ignore` for more information.
|
||||
# Lines that start with '#' are comments.
|
||||
EOF
|
||||
}
|
||||
|
||||
fetchCargoDeps() {
|
||||
src=$(realpath $1)
|
||||
out=$(realpath $2)
|
||||
|
||||
echo "Fetching $src to $out"
|
||||
|
||||
mkdir $out
|
||||
|
||||
# Configure git template dir to make libgit2 more deterministic
|
||||
#
|
||||
# Without a template dir, libgit2 defaults to /usr/share/git-core/templates,
|
||||
# which can vary between systems if sandboxed builds aren't used.
|
||||
#
|
||||
# Note: we explictly set --tmpdir for mktemp here to make it more friendly
|
||||
# for nix-shell users, where $TMPDIR is not necessarily set to NIX_BUILD_TOP
|
||||
echo "Setting up git templatedir"
|
||||
export GIT_TEMPLATE_DIR="$(mktemp -d --tmpdir=$NIX_BUILD_TOP git-template.XXX)"
|
||||
makeGitTemplate "$GIT_TEMPLATE_DIR"
|
||||
export XDG_CONFIG_HOME="$(mktemp -d --tmpdir=$NIX_BUILD_TOP home.XXX)"
|
||||
mkdir -p $XDG_CONFIG_HOME/git
|
||||
cat <<EOF > $XDG_CONFIG_HOME/git/config
|
||||
[init]
|
||||
templatedir = $GIT_TEMPLATE_DIR
|
||||
EOF
|
||||
|
||||
# Configure cargo to fetch from a local copy of the crates.io registry
|
||||
|
||||
echo "Using rust registry from $rustRegistry"
|
||||
|
||||
cat <<EOF > $out/config
|
||||
[registry]
|
||||
index = "file://$rustRegistry"
|
||||
EOF
|
||||
|
||||
export CARGO_HOME=$out
|
||||
cd $src
|
||||
|
||||
if [[ ! -f Cargo.lock ]]; then
|
||||
echo
|
||||
echo "ERROR: The Cargo.lock file doesn't exist"
|
||||
echo
|
||||
echo "Cargo.lock is needed to make sure that depsSha256 doesn't change"
|
||||
echo "when the registry is updated."
|
||||
echo
|
||||
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# We need to do the following string replacement so that 'cargo fetch'
|
||||
# doesn't ignore the versions specified in Cargo.lock
|
||||
substituteInPlace Cargo.lock \
|
||||
--replace "registry+https://github.com/rust-lang/crates.io-index" \
|
||||
"registry+file://$rustRegistry"
|
||||
|
||||
# Do any possible 'cargo update -p <pkgName> --precise <version>' ad-hoc updates
|
||||
eval "$cargoUpdateHook"
|
||||
|
||||
# Do the fetch
|
||||
cargo fetch --verbose
|
||||
|
||||
# Now that we have fetched everything, let's make the output deterministic
|
||||
|
||||
# Cargo uses the following directory structure for fetched data, where
|
||||
# $indexHash is a hash of the registry index URL:
|
||||
#
|
||||
#
|
||||
# /config:
|
||||
#
|
||||
# Cargo config file. We'll delete this because it's not deterministic,
|
||||
# and instead recreate it just before running 'cargo build'.
|
||||
#
|
||||
# /registry/cache/$indexHash/:
|
||||
#
|
||||
# This is where tarballs of registry package dependencies are kept
|
||||
# We'll need to keep this, but make sure $indexHash is a fixed name.
|
||||
#
|
||||
# /registry/index/$indexHash/:
|
||||
#
|
||||
# A copy of the registry index is kept here. We can delete this, and
|
||||
# instead, just before running 'cargo build', we'll symlink this
|
||||
# directory to our static copy of the registry in the Nix store.
|
||||
#
|
||||
# /registry/src/$indexHash/{pkgName-pkgVersion}/:
|
||||
#
|
||||
# Here cargo keeps extracted sources of the cached tarballs.
|
||||
# We'll just delete this because cargo will re-populate them from the
|
||||
# tarballs.
|
||||
#
|
||||
# /git/db/{domain-hash}/:
|
||||
#
|
||||
# Here cargo keeps the `.git` directories of git dependencies.
|
||||
# We'll need to keep these, but make them deterministic.
|
||||
#
|
||||
# /git/checkouts/{domain-hash}/{branchName}/:
|
||||
#
|
||||
# Here cargo keeps checked-out sources of the git dependencies.
|
||||
# We can delete this, because cargo will re-populate them from the above
|
||||
# `.git` directories.
|
||||
#
|
||||
# Let's start
|
||||
|
||||
# Remove cargo config file, which points to the ever-changing registry
|
||||
rm $out/config
|
||||
|
||||
# Save the Cargo.lock file into the output, so that we don't have to do another
|
||||
# 'cargo update' during the build (which would try to access the network) for
|
||||
# any ad-hoc package updates (through $cargoUpdateHook).
|
||||
#
|
||||
# We need to replace the rustRegistry URL with something deterministic.
|
||||
# Since the URL won't actually be accessed anymore, it's fine to use /dev/null.
|
||||
|
||||
substituteInPlace Cargo.lock \
|
||||
--replace "registry+file://$rustRegistry" \
|
||||
"registry+file:///dev/null"
|
||||
mv Cargo.lock $out/
|
||||
|
||||
|
||||
# Let's replace $indexHash with something more deterministic
|
||||
mv $out/registry/cache/* $out/registry/cache/HASH
|
||||
|
||||
# The registry index changes all the time, so it's not deterministic
|
||||
# We'll symlink it before running 'cargo build'
|
||||
rm -rf $out/registry/index/*
|
||||
|
||||
# Make git DBs deterministic
|
||||
# TODO: test with git submodules
|
||||
[[ ! -d $out/git/checkouts ]] || (cd $out/git/checkouts && for name in *; do
|
||||
revs=""
|
||||
cd "$out/git/checkouts/$name"
|
||||
while read dir; do
|
||||
# extract substring: [dir = "./xxx/yyy/.git"] => [branch = "xxx/yyy"]
|
||||
branch="${dir:2:$((${#dir}-7))}"
|
||||
|
||||
cd "$out/git/checkouts/$name/$branch"
|
||||
rev="$(git rev-parse HEAD)"
|
||||
revs="$rev $revs"
|
||||
done < <(find . -type d -name .git -print)
|
||||
|
||||
echo "List of revs to keep for git db $name: $revs"
|
||||
|
||||
(
|
||||
# The following code was adapted from nix-prefetch-git
|
||||
|
||||
cd "$out/git/db/$name"
|
||||
|
||||
export GIT_DIR=.
|
||||
|
||||
# Remove all remote branches
|
||||
git branch -r | while read branch; do
|
||||
git branch -rD "$branch" >&2
|
||||
done
|
||||
|
||||
# Remove all tags
|
||||
git tag | while read tag; do
|
||||
git tag -d "$tag" >&2
|
||||
done
|
||||
|
||||
# Remove all local branches
|
||||
branchrefs=()
|
||||
eval "$(git for-each-ref --shell --format='branchrefs+=(%(refname))' refs/heads/)"
|
||||
|
||||
for branchref in "${branchrefs[@]}"; do
|
||||
git update-ref -d "$branchref" >&2
|
||||
done
|
||||
|
||||
# Create ad-hoc branches for the revs we need
|
||||
echo "$revs" | while read -d " " rev; do
|
||||
echo "Creating git branch b_$rev $rev"
|
||||
git branch b_$rev $rev
|
||||
done
|
||||
|
||||
# Remove files that have timestamps or otherwise have non-deterministic
|
||||
# properties.
|
||||
rm -rf logs/ hooks/ index FETCH_HEAD ORIG_HEAD refs/remotes/origin/HEAD config
|
||||
|
||||
# Do a full repack. Must run single-threaded, or else we lose determinism.
|
||||
git config pack.threads 1
|
||||
git repack -A -d -f
|
||||
rm -f config
|
||||
|
||||
# Garbage collect unreferenced objects.
|
||||
git gc --prune=all
|
||||
)
|
||||
done)
|
||||
|
||||
# Remove unneeded outputs
|
||||
[[ ! -d $out/registry/src ]] || rm -rf $out/registry/src
|
||||
[[ ! -d $out/git/checkouts ]] || rm -rf $out/git/checkouts
|
||||
|
||||
# XXX: provide some debugging output to see find out why we are seeing
|
||||
# sporadic hash mismatches
|
||||
find $out ! -type f
|
||||
find $out -type f -exec sha256sum {} +
|
||||
}
|
|
@ -1,19 +1,30 @@
|
|||
{ stdenv, cacert, git, rust, rustRegistry }:
|
||||
{ stdenv, cacert, git, rust, cargoVendor }:
|
||||
{ name ? "cargo-deps", src, srcs, sourceRoot, sha256, cargoUpdateHook ? "" }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "${name}-fetch";
|
||||
buildInputs = [ rust.cargo rust.rustc git ];
|
||||
inherit src srcs sourceRoot rustRegistry cargoUpdateHook;
|
||||
name = "${name}-vendor";
|
||||
buildInputs = [ cacert cargoVendor git rust.cargo ];
|
||||
inherit src srcs sourceRoot;
|
||||
|
||||
phases = "unpackPhase installPhase";
|
||||
|
||||
installPhase = ''
|
||||
source ${./fetch-cargo-deps}
|
||||
if [[ ! -f Cargo.lock ]]; then
|
||||
echo
|
||||
echo "ERROR: The Cargo.lock file doesn't exist"
|
||||
echo
|
||||
echo "Cargo.lock is needed to make sure that cargoSha256 doesn't change"
|
||||
echo "when the registry is updated."
|
||||
echo
|
||||
|
||||
exit 1
|
||||
fi
|
||||
|
||||
export SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
|
||||
export CARGO_HOME=$(mktemp -d cargo-home.XXX)
|
||||
|
||||
fetchCargoDeps . "$out"
|
||||
cargo vendor
|
||||
|
||||
cp -ar vendor $out
|
||||
'';
|
||||
|
||||
outputHashAlgo = "sha256";
|
||||
|
|
|
@ -0,0 +1,74 @@
|
|||
{stdenv, fetchFromGitHub
|
||||
, llvmPackages
|
||||
, cmake, boehmgc, gmp, zlib, ncurses, boost
|
||||
, waf, python, git, sbcl
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "clasp";
|
||||
version = "0.4.99.20170801";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "drmeister";
|
||||
repo = "clasp";
|
||||
rev = "525ce1cffff39311e3e7df6d0b71fa267779bdf5";
|
||||
sha256 = "1jqya04wybgxnski341p5sycy2gysxad0s5q8d59z0f6ckj3v8k1";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake python git sbcl ];
|
||||
|
||||
buildInputs = with llvmPackages; (
|
||||
builtins.map (x: stdenv.lib.overrideDerivation x
|
||||
(x: {NIX_CFLAGS_COMPILE= (x.NIX_CFLAGS_COMPILE or "") + " -frtti"; }))
|
||||
[ llvm clang clang-unwrapped clang ]) ++
|
||||
[
|
||||
gmp zlib ncurses
|
||||
boost boehmgc
|
||||
(boost.override {enableStatic = true; enableShared = false;})
|
||||
(stdenv.lib.overrideDerivation boehmgc
|
||||
(x: {configureFlags = (x.configureFlags or []) ++ ["--enable-static"];}))
|
||||
];
|
||||
|
||||
NIX_CFLAGS_COMPILE = " -frtti ";
|
||||
|
||||
configurePhase = ''
|
||||
runHook preConfigure
|
||||
|
||||
export CXX=clang++
|
||||
export CC=clang
|
||||
|
||||
echo "
|
||||
INSTALL_PATH_PREFIX = '$out'
|
||||
" | sed -e 's/^ *//' > wscript.config
|
||||
|
||||
python ./waf configure update_submodules
|
||||
|
||||
runHook postConfigure
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
python ./waf build_cboehm
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
python ./waf install_cboehm
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = {
|
||||
inherit version;
|
||||
description = ''A Common Lisp implementation based on LLVM with C++ integration'';
|
||||
license = stdenv.lib.licenses.lgpl21Plus ;
|
||||
maintainers = [stdenv.lib.maintainers.raskin];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
homepage = "https://github.com/drmeister/clasp";
|
||||
};
|
||||
}
|
|
@ -1,40 +0,0 @@
|
|||
{ stdenv, callPackage, recurseIntoAttrs, makeRustPlatform, llvm, fetchurl
|
||||
, targets ? []
|
||||
, targetToolchains ? []
|
||||
, targetPatches ? []
|
||||
}:
|
||||
|
||||
let
|
||||
rustPlatform = recurseIntoAttrs (makeRustPlatform (callPackage ./bootstrap.nix {}));
|
||||
in
|
||||
rec {
|
||||
rustc = callPackage ./rustc.nix {
|
||||
inherit llvm targets targetPatches targetToolchains rustPlatform;
|
||||
|
||||
version = "beta-2017-05-27";
|
||||
|
||||
configureFlags = [ "--release-channel=beta" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://static.rust-lang.org/dist/2017-05-27/rustc-beta-src.tar.gz";
|
||||
sha256 = "9f3f92efef7fb2b4bf38e57e4ff1f416dc221880b90841c4bdaee350801c0b57";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./patches/darwin-disable-fragile-tcp-tests.patch
|
||||
] ++ stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch;
|
||||
|
||||
doCheck = false;
|
||||
broken = true;
|
||||
};
|
||||
|
||||
cargo = callPackage ./cargo.nix rec {
|
||||
version = "0.18.0";
|
||||
srcRev = "fe7b0cdcf5ca7aab81630706ce40b70f6aa2e666";
|
||||
srcSha = "164iywv1l3v87b0pznf5kkzxigd6w19myv9d7ka4c65zgrk9n9px";
|
||||
depsSha256 = "1mrgd8ib48vxxbhkvsqqq4p19sc6b74x3cd8p6lhhlm6plrajrvm";
|
||||
|
||||
inherit rustc; # the rustc that will be wrapped by cargo
|
||||
inherit rustPlatform; # used to build cargo
|
||||
};
|
||||
}
|
|
@ -1,6 +1,18 @@
|
|||
{ stdenv, fetchurl, makeWrapper, cacert, zlib, curl }:
|
||||
|
||||
let
|
||||
# Note: the version MUST be one version prior to the version we're
|
||||
# building
|
||||
version = "1.19.0";
|
||||
|
||||
# fetch hashes by running `print-hashes.sh 1.19.0`
|
||||
hashes = {
|
||||
i686-unknown-linux-gnu = "657b78f3c1a1b4412e12f7278e20cc318022fa276a58f0d38a0d15b515e39713";
|
||||
x86_64-unknown-linux-gnu = "30ff67884464d32f6bbbde4387e7557db98868e87fb2afbb77c9b7716e3bff09";
|
||||
i686-apple-darwin = "bdfd2189245dc5764c9f26bdba1429c2bf9d57477d8e6e3f0ba42ea0dc63edeb";
|
||||
x86_64-apple-darwin = "5c668fb60a3ba3e97dc2cb8967fc4bb9422b629155284dcb89f94d116bb17820";
|
||||
};
|
||||
|
||||
platform =
|
||||
if stdenv.system == "i686-linux"
|
||||
then "i686-unknown-linux-gnu"
|
||||
|
@ -12,27 +24,11 @@ let
|
|||
then "x86_64-apple-darwin"
|
||||
else throw "missing bootstrap url for platform ${stdenv.system}";
|
||||
|
||||
# fetch hashes by patching print-hashes.sh to not use the "$DATE" variable
|
||||
# then running `print-hashes.sh 1.16.0`
|
||||
bootstrapHash =
|
||||
if stdenv.system == "i686-linux"
|
||||
then "b5859161ebb182d3b75fa14a5741e5de87b088146fb0ef4a30f3b2439c6179c5"
|
||||
else if stdenv.system == "x86_64-linux"
|
||||
then "48621912c242753ba37cad5145df375eeba41c81079df46f93ffb4896542e8fd"
|
||||
else if stdenv.system == "i686-darwin"
|
||||
then "26356b14164354725bd0351e8084f9b164abab134fb05cddb7758af35aad2065"
|
||||
else if stdenv.system == "x86_64-darwin"
|
||||
then "2d08259ee038d3a2c77a93f1a31fc59e7a1d6d1bbfcba3dba3c8213b2e5d1926"
|
||||
else throw "missing bootstrap hash for platform ${stdenv.system}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://static.rust-lang.org/dist/rust-${version}-${platform}.tar.gz";
|
||||
sha256 = bootstrapHash;
|
||||
sha256 = hashes."${platform}";
|
||||
};
|
||||
|
||||
# Note: the version MUST be one version prior to the version we're
|
||||
# building
|
||||
version = "1.16.0";
|
||||
in import ./binaryBuild.nix
|
||||
{ inherit stdenv fetchurl makeWrapper cacert zlib curl;
|
||||
buildRustPackage = null;
|
||||
|
|
|
@ -1,26 +1,30 @@
|
|||
{ stdenv, fetchgit, file, curl, pkgconfig, python, openssl, cmake, zlib
|
||||
, makeWrapper, libiconv, cacert, rustPlatform, rustc, libgit2
|
||||
, version, srcRev, srcSha, depsSha256
|
||||
{ stdenv, fetchFromGitHub, file, curl, pkgconfig, python, openssl, cmake, zlib
|
||||
, makeWrapper, libiconv, cacert, rustPlatform, rustc, libgit2, darwin
|
||||
, version, srcSha, cargoSha256
|
||||
, patches ? []}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
name = "cargo-${version}";
|
||||
inherit version;
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/rust-lang/cargo";
|
||||
rev = srcRev;
|
||||
src = fetchFromGitHub {
|
||||
owner = "rust-lang";
|
||||
repo = "cargo";
|
||||
rev = version;
|
||||
sha256 = srcSha;
|
||||
};
|
||||
|
||||
inherit depsSha256;
|
||||
inherit cargoSha256;
|
||||
inherit patches;
|
||||
|
||||
passthru.rustc = rustc;
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ file curl python openssl cmake zlib makeWrapper libgit2 ]
|
||||
++ stdenv.lib.optionals stdenv.isDarwin [ libiconv ];
|
||||
# FIXME: Use impure version of CoreFoundation because of missing symbols.
|
||||
# CFURLSetResourcePropertyForKey is defined in the headers but there's no
|
||||
# corresponding implementation in the sources from opensource.apple.com.
|
||||
++ stdenv.lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.CoreFoundation libiconv ];
|
||||
|
||||
LIBGIT2_SYS_USE_PKG_CONFIG=1;
|
||||
|
||||
|
@ -52,6 +56,6 @@ rustPlatform.buildRustPackage rec {
|
|||
description = "Downloads your Rust project's dependencies and builds your project";
|
||||
maintainers = with maintainers; [ wizeman retrry ];
|
||||
license = [ licenses.mit licenses.asl20 ];
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
platforms = [ "x86_64-linux" "x86_64-darwin" ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -6,30 +6,31 @@
|
|||
|
||||
let
|
||||
rustPlatform = recurseIntoAttrs (makeRustPlatform (callPackage ./bootstrap.nix {}));
|
||||
version = "1.17.0";
|
||||
version = "1.20.0";
|
||||
in
|
||||
rec {
|
||||
rustc = callPackage ./rustc.nix {
|
||||
inherit llvm targets targetPatches targetToolchains rustPlatform version;
|
||||
|
||||
forceBundledLLVM = true;
|
||||
|
||||
configureFlags = [ "--release-channel=stable" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://static.rust-lang.org/dist/rustc-${version}-src.tar.gz";
|
||||
sha256 = "4baba3895b75f2492df6ce5a28a916307ecd1c088dc1fd02dbfa8a8e86174f87";
|
||||
sha256 = "0542y4rnzlsrricai130mqyxl8r6rd991frb4qsnwb27yigqg91a";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./patches/darwin-disable-fragile-tcp-tests.patch
|
||||
./patches/0001-Disable-fragile-tests-libstd-net-tcp-on-Darwin-Linux.patch
|
||||
] ++ stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch;
|
||||
|
||||
};
|
||||
|
||||
cargo = callPackage ./cargo.nix rec {
|
||||
version = "0.18.0";
|
||||
srcRev = "fe7b0cdcf5ca7aab81630706ce40b70f6aa2e666";
|
||||
srcSha = "164iywv1l3v87b0pznf5kkzxigd6w19myv9d7ka4c65zgrk9n9px";
|
||||
depsSha256 = "1mrgd8ib48vxxbhkvsqqq4p19sc6b74x3cd8p6lhhlm6plrajrvm";
|
||||
version = "0.22.0";
|
||||
srcSha = "0x9pm73hkkd1hq4qrmz8iv91djgpdsxzwll7jari0h77vpwajmw4";
|
||||
cargoSha256 = "0xd0rb8gcqy6xngsx9l30jg3fqrcwccgv904ksqs9c4d44hga0gd";
|
||||
|
||||
inherit rustc; # the rustc that will be wrapped by cargo
|
||||
inherit rustPlatform; # used to build cargo
|
||||
|
|
|
@ -1,37 +0,0 @@
|
|||
{ stdenv, callPackage, rustPlatform, llvm, fetchurl
|
||||
, targets ? []
|
||||
, targetToolchains ? []
|
||||
, targetPatches ? []
|
||||
}:
|
||||
|
||||
rec {
|
||||
rustc = callPackage ./rustc.nix {
|
||||
inherit llvm targets targetPatches targetToolchains rustPlatform;
|
||||
|
||||
version = "nightly-2017-05-30";
|
||||
|
||||
configureFlags = [ "--release-channel=nightly" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://static.rust-lang.org/dist/2017-05-30/rustc-nightly-src.tar.gz";
|
||||
sha256 = "90ce76db56a93f1b4532f2e62bbf12c243c4d156662b0d80c25319211ee7d0e0";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./patches/darwin-disable-fragile-tcp-tests.patch
|
||||
] ++ stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch;
|
||||
|
||||
doCheck = false;
|
||||
broken = true;
|
||||
};
|
||||
|
||||
cargo = callPackage ./cargo.nix rec {
|
||||
version = "0.18.0";
|
||||
srcRev = "fe7b0cdcf5ca7aab81630706ce40b70f6aa2e666";
|
||||
srcSha = "164iywv1l3v87b0pznf5kkzxigd6w19myv9d7ka4c65zgrk9n9px";
|
||||
depsSha256 = "1mrgd8ib48vxxbhkvsqqq4p19sc6b74x3cd8p6lhhlm6plrajrvm";
|
||||
|
||||
inherit rustc; # the rustc that will be wrapped by cargo
|
||||
inherit rustPlatform; # used to build cargo
|
||||
};
|
||||
}
|
|
@ -1,23 +0,0 @@
|
|||
{ stdenv, fetchurl, makeWrapper, cacert, zlib, buildRustPackage, curl }:
|
||||
|
||||
let
|
||||
platform = if stdenv.system == "x86_64-linux"
|
||||
then "x86_64-unknown-linux-gnu"
|
||||
else throw "missing bootstrap url for platform ${stdenv.system}";
|
||||
|
||||
bootstrapHash =
|
||||
if stdenv.system == "x86_64-linux"
|
||||
then "0svlm4bxsdhdn4jsv46f278kid23a9w978q2137qrba4xnyb06kf"
|
||||
else throw "missing bootstrap hash for platform ${stdenv.system}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://static.rust-lang.org/dist/${version}/rust-nightly-${platform}.tar.gz";
|
||||
sha256 = bootstrapHash;
|
||||
};
|
||||
|
||||
version = "2017-06-26";
|
||||
in import ./binaryBuild.nix
|
||||
{ inherit stdenv fetchurl makeWrapper cacert zlib buildRustPackage curl;
|
||||
inherit version src platform;
|
||||
versionType = "nightly";
|
||||
}
|
|
@ -1,17 +1,18 @@
|
|||
From 1d8a91d5b09cb762fe890d04bfb61b9eefd0624a Mon Sep 17 00:00:00 2001
|
||||
From: Moritz Ulrich <moritz@tarn-vedra.de>
|
||||
Date: Sun, 8 Jan 2017 10:28:17 +0100
|
||||
Subject: [PATCH] Disable libstd::net::tcp::{ttl, timeouts} on Darwin
|
||||
From 26d3b70abec1adf773522643b31ce9c03439916a Mon Sep 17 00:00:00 2001
|
||||
From: Joerg Thalheim <joerg@thalheim.io>
|
||||
Date: Tue, 10 Oct 2017 00:40:20 +0100
|
||||
Subject: [PATCH] Disable fragile tests libstd::net::tcp on Darwin/Linux
|
||||
|
||||
Signed-off-by: Joerg Thalheim <joerg@thalheim.io>
|
||||
---
|
||||
src/libstd/net/tcp.rs | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
src/libstd/net/tcp.rs | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/libstd/net/tcp.rs b/src/libstd/net/tcp.rs
|
||||
index 0e7c5b0671..d42fd26267 100644
|
||||
index 8d1e7882e5..2c223fb315 100644
|
||||
--- a/src/libstd/net/tcp.rs
|
||||
+++ b/src/libstd/net/tcp.rs
|
||||
@@ -551,6 +551,7 @@ mod tests {
|
||||
@@ -949,6 +949,7 @@ mod tests {
|
||||
})
|
||||
}
|
||||
|
||||
|
@ -19,7 +20,7 @@ index 0e7c5b0671..d42fd26267 100644
|
|||
#[test]
|
||||
fn write_close() {
|
||||
each_ip(&mut |addr| {
|
||||
@@ -1022,7 +1023,10 @@ mod tests {
|
||||
@@ -1421,7 +1422,10 @@ mod tests {
|
||||
|
||||
// FIXME: re-enabled bitrig/openbsd tests once their socket timeout code
|
||||
// no longer has rounding errors.
|
||||
|
@ -31,7 +32,7 @@ index 0e7c5b0671..d42fd26267 100644
|
|||
#[test]
|
||||
fn timeouts() {
|
||||
let addr = next_test_ip4();
|
||||
@@ -1101,6 +1105,7 @@ mod tests {
|
||||
@@ -1500,6 +1504,7 @@ mod tests {
|
||||
assert_eq!(false, t!(stream.nodelay()));
|
||||
}
|
||||
|
||||
|
@ -39,6 +40,14 @@ index 0e7c5b0671..d42fd26267 100644
|
|||
#[test]
|
||||
fn ttl() {
|
||||
let ttl = 100;
|
||||
@@ -1568,6 +1573,7 @@ mod tests {
|
||||
})
|
||||
}
|
||||
|
||||
+ #[cfg_attr(target_os = "linux", ignore)]
|
||||
#[test]
|
||||
fn connect_timeout_unroutable() {
|
||||
// this IP is unroutable, so connections should always time out,
|
||||
--
|
||||
2.11.0
|
||||
2.14.2
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
From 5702d7cdb2bed7ac3af3c01087b181da35f6e108 Mon Sep 17 00:00:00 2001
|
||||
From: joachim schiele <js@lastlog.de>
|
||||
Date: Thu, 24 Nov 2016 22:25:48 +0100
|
||||
Subject: [PATCH 2/2] asdf
|
||||
|
||||
---
|
||||
src/tools/tidy/src/main.rs | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/tools/tidy/src/main.rs b/src/tools/tidy/src/main.rs
|
||||
index cabaee5..685df94 100644
|
||||
--- a/src/tools/tidy/src/main.rs
|
||||
+++ b/src/tools/tidy/src/main.rs
|
||||
@@ -48,7 +48,7 @@ fn main() {
|
||||
errors::check(&path, &mut bad);
|
||||
cargo::check(&path, &mut bad);
|
||||
features::check(&path, &mut bad);
|
||||
- cargo_lock::check(&path, &mut bad);
|
||||
+ //cargo_lock::check(&path, &mut bad);
|
||||
pal::check(&path, &mut bad);
|
||||
|
||||
if bad {
|
||||
--
|
||||
2.10.0
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
From ac204f8be95cdb2350a1dd893641e38528aaf01d Mon Sep 17 00:00:00 2001
|
||||
From: joachim schiele <js@lastlog.de>
|
||||
Date: Fri, 25 Nov 2016 02:17:02 +0100
|
||||
Subject: [PATCH] asdf
|
||||
|
||||
---
|
||||
src/tools/tidy/src/main.rs | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/tools/tidy/src/main.rs b/src/tools/tidy/src/main.rs
|
||||
index cb11fe2..c9b7d2a 100644
|
||||
--- a/src/tools/tidy/src/main.rs
|
||||
+++ b/src/tools/tidy/src/main.rs
|
||||
@@ -45,7 +45,7 @@ fn main() {
|
||||
bins::check(&path, &mut bad);
|
||||
style::check(&path, &mut bad);
|
||||
errors::check(&path, &mut bad);
|
||||
- cargo::check(&path, &mut bad);
|
||||
+ //cargo::check(&path, &mut bad);
|
||||
features::check(&path, &mut bad);
|
||||
pal::check(&path, &mut bad);
|
||||
|
||||
--
|
||||
2.10.0
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# All rust-related downloads can be found at
|
||||
# https://static.rust-lang.org/dist/index.html. To find the date on
|
||||
|
@ -6,25 +7,30 @@
|
|||
# file, e.g.
|
||||
# https://static.rust-lang.org/dist/channel-rust-beta-date.txt
|
||||
|
||||
PLATFORMS="i686-unknown-linux-gnu x86_64-unknown-linux-gnu i686-apple-darwin x86_64-apple-darwin"
|
||||
BASEURL="https://static.rust-lang.org/dist"
|
||||
DATE=$1
|
||||
VERSION=$2
|
||||
PLATFORMS=(
|
||||
i686-unknown-linux-gnu
|
||||
x86_64-unknown-linux-gnu
|
||||
i686-apple-darwin
|
||||
x86_64-apple-darwin
|
||||
)
|
||||
BASEURL=https://static.rust-lang.org/dist
|
||||
VERSION=${1:-}
|
||||
DATE=${2:-}
|
||||
|
||||
if [[ -z $DATE ]]
|
||||
then
|
||||
echo "No date supplied"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
if [[ -z $VERSION ]]
|
||||
if [[ -z $VERSION ]]
|
||||
then
|
||||
echo "No version supplied"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
for PLATFORM in $PLATFORMS
|
||||
if [[ -n $DATE ]]
|
||||
then
|
||||
BASEURL=$BASEURL/$DATE
|
||||
fi
|
||||
|
||||
for PLATFORM in "${PLATFORMS[@]}"
|
||||
do
|
||||
URL="$BASEURL/$DATE/rust-$VERSION-$PLATFORM.tar.gz.sha256"
|
||||
curl $URL
|
||||
URL="$BASEURL/rust-$VERSION-$PLATFORM.tar.gz.sha256"
|
||||
SHA256=$(curl -sSfL $URL | cut -d ' ' -f 1)
|
||||
echo "$PLATFORM = \"$SHA256\";"
|
||||
done
|
||||
|
|
|
@ -48,15 +48,18 @@ stdenv.mkDerivation {
|
|||
configureFlags = configureFlags
|
||||
++ [ "--enable-local-rust" "--local-rust-root=${rustPlatform.rust.rustc}" "--enable-rpath" ]
|
||||
++ [ "--enable-vendor" "--disable-locked-deps" ]
|
||||
++ [ "--enable-llvm-link-shared" ]
|
||||
# ++ [ "--jemalloc-root=${jemalloc}/lib"
|
||||
++ [ "--default-linker=${stdenv.cc}/bin/cc" "--default-ar=${binutils.out}/bin/ar" ]
|
||||
++ optional (!forceBundledLLVM) [ "--enable-llvm-link-shared" ]
|
||||
++ optional (stdenv.cc.cc ? isClang) "--enable-clang"
|
||||
++ optional (targets != []) "--target=${target}"
|
||||
++ optional (!forceBundledLLVM) "--llvm-root=${llvmShared}";
|
||||
|
||||
patches = patches ++ targetPatches;
|
||||
|
||||
# the rust build system complains that nix alters the checksums
|
||||
dontFixLibtool = true;
|
||||
|
||||
passthru.target = target;
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -29,7 +29,8 @@ stdenv.mkDerivation rec {
|
|||
|
||||
preConfigure = "./bootstrap";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
# in 1.0.0: parser.hh:40:0: error: unterminated #ifndef
|
||||
enableParallelBuilding = false;
|
||||
|
||||
# See https://github.com/souffle-lang/souffle/issues/176
|
||||
hardeningDisable = [ "fortify" ];
|
||||
|
|
|
@ -19,6 +19,12 @@ let param =
|
|||
rev = "366ee3f8e599b5cab438a63a09713f44ac544c5a";
|
||||
sha256 = "06kwnrfndnr6w8bmaa2s0i0rkqyv081zj55z3vcyn0wr6x6mlsz9";
|
||||
};
|
||||
|
||||
"8.7" = {
|
||||
version = "20170616";
|
||||
rev = "366ee3f8e599b5cab438a63a09713f44ac544c5a";
|
||||
sha256 = "06kwnrfndnr6w8bmaa2s0i0rkqyv081zj55z3vcyn0wr6x6mlsz9";
|
||||
};
|
||||
}."${coq.coq-version}"
|
||||
; in
|
||||
|
||||
|
|
|
@ -5,6 +5,7 @@ let param =
|
|||
"8.4" = { version = "0.9.0"; sha256 = "1n3bk003vvbghbrxkhal6drnc0l65jv9y77wd56is3jw9xgiif0w"; };
|
||||
"8.5" = { version = "0.9.4"; sha256 = "1y66pamgsdxlq2w1338lj626ln70cwj7k53hxcp933g8fdsa4hp0"; };
|
||||
"8.6" = { version = "0.9.5"; sha256 = "1b4cvz3llxin130g13calw5n1zmvi6wdd5yb8a41q7yyn2hd3msg"; };
|
||||
"8.7" = { version = "0.9.5"; sha256 = "1b4cvz3llxin130g13calw5n1zmvi6wdd5yb8a41q7yyn2hd3msg"; };
|
||||
}."${coq.coq-version}";
|
||||
in
|
||||
|
||||
|
|
|
@ -16,6 +16,7 @@ let param =
|
|||
"8.4" = v2_1_1;
|
||||
"8.5" = v3_0_1;
|
||||
"8.6" = v3_0_1;
|
||||
"8.7" = v3_0_1;
|
||||
}."${coq.coq-version}"; in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
|
|
|
@ -1,6 +1,11 @@
|
|||
{ stdenv, fetchFromGitHub, autoreconfHook, coq, ocamlPackages }:
|
||||
|
||||
let param = {
|
||||
"8.7" = {
|
||||
version = "0.6.1";
|
||||
rev = "c3b87af6bfa338e18b83f014ebd0e56e1f611663";
|
||||
sha256 = "1jaafkwsb5450378nprjsds1illgdaq60gryi8kspw0i25ykz2c9";
|
||||
};
|
||||
"8.6" = {
|
||||
version = "0.6.1";
|
||||
rev = "c3b87af6bfa338e18b83f014ebd0e56e1f611663";
|
||||
|
|
|
@ -30,6 +30,7 @@ stdenv.mkDerivation rec {
|
|||
description = "A library for the Coq proof assistant for synthesizing efficient correct-by-construction programs from declarative specifications";
|
||||
maintainers = with maintainers; [ jwiegley ];
|
||||
platforms = coq.meta.platforms;
|
||||
broken = stdenv.lib.versionAtLeast coq.coq-version "8.6";
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -98,7 +98,7 @@ self: super: {
|
|||
name = "git-annex-${drv.version}-src";
|
||||
url = "git://git-annex.branchable.com/";
|
||||
rev = "refs/tags/" + drv.version;
|
||||
sha256 = "0ky3avbda1avccalkh7ifjnll37cjjmdyypw9m1glsrzgzmr5lbr";
|
||||
sha256 = "1143qcsljp66v0xvq2a2nqji24890rnmxcmwnxw8xj818gqk0p3m";
|
||||
};
|
||||
})).override {
|
||||
dbus = if pkgs.stdenv.isLinux then self.dbus else null;
|
||||
|
@ -892,7 +892,7 @@ self: super: {
|
|||
tailfile-hinotify = dontCheck super.tailfile-hinotify;
|
||||
|
||||
# build liquidhaskell with the proper (new) aeson version
|
||||
liquidhaskell = super.liquidhaskell.override { aeson = dontCheck self.aeson_1_2_2_0; };
|
||||
liquidhaskell = super.liquidhaskell.override { aeson = dontCheck self.aeson_1_2_3_0; };
|
||||
|
||||
# Test suite fails: https://github.com/lymar/hastache/issues/46.
|
||||
# Don't install internal mkReadme tool.
|
||||
|
@ -968,9 +968,12 @@ self: super: {
|
|||
|
||||
# Depends on broken fluid.
|
||||
fluid-idl-http-client = markBroken super.fluid-idl-http-client;
|
||||
fluid-idl-scotty = markBroken super.fluid-idl-scotty;
|
||||
|
||||
# depends on amqp >= 0.17
|
||||
amqp-utils = super.amqp-utils.override {
|
||||
amqp = dontCheck super.amqp_0_18_1;
|
||||
};
|
||||
amqp-utils = super.amqp-utils.override { amqp = dontCheck super.amqp_0_18_1; };
|
||||
|
||||
# Build with gi overloading feature disabled.
|
||||
ltk = super.ltk.overrideScope (self: super: { haskell-gi-overloading = self.haskell-gi-overloading_0_0; });
|
||||
|
||||
}
|
||||
|
|
|
@ -68,6 +68,9 @@ self: super:
|
|||
|
||||
## OTHER PACKAGES
|
||||
|
||||
# haddock throws the error: No input file(s).
|
||||
fail = dontHaddock super.fail;
|
||||
|
||||
cereal = addBuildDepend super.cereal [ self.fail ];
|
||||
|
||||
entropy = overrideCabal super.entropy (old: {
|
||||
|
|
|
@ -37,7 +37,7 @@ core-packages:
|
|||
- ghcjs-base-0
|
||||
|
||||
default-package-overrides:
|
||||
# LTS Haskell 9.9
|
||||
# LTS Haskell 9.10
|
||||
- abstract-deque ==0.3
|
||||
- abstract-deque-tests ==0.3
|
||||
- abstract-par ==0.3.3
|
||||
|
@ -801,7 +801,7 @@ default-package-overrides:
|
|||
- gitson ==0.5.2
|
||||
- gi-webkit ==3.0.14
|
||||
- gl ==0.8.0
|
||||
- glabrous ==0.3.2
|
||||
- glabrous ==0.3.3
|
||||
- glaze ==0.3.0.1
|
||||
- glazier ==0.11.0.1
|
||||
- glazier-pipes ==0.1.5.1
|
||||
|
@ -998,7 +998,7 @@ default-package-overrides:
|
|||
- hasmin ==0.3.3
|
||||
- hasql ==0.19.18.2
|
||||
- hasql-migration ==0.1.3
|
||||
- hasql-pool ==0.4.1
|
||||
- hasql-pool ==0.4.2.1
|
||||
- hasql-transaction ==0.5.1
|
||||
- hastache ==0.6.1
|
||||
- hasty-hamiltonian ==1.3.0
|
||||
|
@ -1024,7 +1024,7 @@ default-package-overrides:
|
|||
- hebrew-time ==0.1.1
|
||||
- hedgehog ==0.5
|
||||
- hedgehog-quickcheck ==0.1
|
||||
- hedis ==0.9.9
|
||||
- hedis ==0.9.10
|
||||
- here ==1.2.11
|
||||
- heredoc ==0.2.0.0
|
||||
- heterocephalus ==1.0.5.0
|
||||
|
@ -1248,7 +1248,7 @@ default-package-overrides:
|
|||
- ix-shapable ==0.1.0
|
||||
- jack ==0.7.1.1
|
||||
- jailbreak-cabal ==1.3.2
|
||||
- javascript-extras ==0.3.1.0
|
||||
- javascript-extras ==0.3.2.0
|
||||
- jmacro ==0.6.14
|
||||
- jmacro-rpc ==0.3.2
|
||||
- jmacro-rpc-happstack ==0.3.2
|
||||
|
@ -1271,7 +1271,7 @@ default-package-overrides:
|
|||
- jwt ==0.7.2
|
||||
- kan-extensions ==5.0.2
|
||||
- kansas-comet ==0.4
|
||||
- katip ==0.5.0.3
|
||||
- katip ==0.5.1.0
|
||||
- kawhi ==0.3.0
|
||||
- kdt ==0.2.4
|
||||
- keter ==1.4.3.2
|
||||
|
@ -1490,7 +1490,7 @@ default-package-overrides:
|
|||
- mysql ==0.1.4
|
||||
- mysql-haskell ==0.8.0.0
|
||||
- mysql-haskell-openssl ==0.8.0.0
|
||||
- mysql-simple ==0.4.3
|
||||
- mysql-simple ==0.4.4
|
||||
- nagios-check ==0.3.2
|
||||
- names-th ==0.2.0.3
|
||||
- nano-erl ==0.1.0.1
|
||||
|
@ -1638,7 +1638,7 @@ default-package-overrides:
|
|||
- persistent-redis ==2.5.2
|
||||
- persistent-refs ==0.4
|
||||
- persistent-sqlite ==2.6.2
|
||||
- persistent-template ==2.5.2
|
||||
- persistent-template ==2.5.3
|
||||
- pgp-wordlist ==0.1.0.2
|
||||
- pg-transact ==0.1.0.1
|
||||
- phantom-state ==0.2.1.2
|
||||
|
@ -1649,13 +1649,13 @@ default-package-overrides:
|
|||
- pinboard ==0.9.12.5
|
||||
- pinch ==0.3.2.0
|
||||
- pinchot ==0.24.0.0
|
||||
- pipes ==4.3.5
|
||||
- pipes ==4.3.6
|
||||
- pipes-attoparsec ==0.5.1.5
|
||||
- pipes-bytestring ==2.1.6
|
||||
- pipes-cacophony ==0.5.0
|
||||
- pipes-category ==0.2.0.1
|
||||
- pipes-concurrency ==2.0.8
|
||||
- pipes-extras ==1.0.11
|
||||
- pipes-extras ==1.0.12
|
||||
- pipes-fluid ==0.5.0.3
|
||||
- pipes-group ==1.0.8
|
||||
- pipes-misc ==0.3.0.0
|
||||
|
@ -1716,7 +1716,7 @@ default-package-overrides:
|
|||
- prettyprinter-compat-ansi-wl-pprint ==1.0.1
|
||||
- prettyprinter-compat-wl-pprint ==1.0.0.1
|
||||
- pretty-show ==1.6.13
|
||||
- pretty-simple ==2.0.0.0
|
||||
- pretty-simple ==2.0.1.0
|
||||
- pretty-types ==0.2.3.1
|
||||
- primes ==0.2.1.0
|
||||
- primitive ==0.6.2.0
|
||||
|
@ -1752,7 +1752,7 @@ default-package-overrides:
|
|||
- publicsuffix ==0.20170508
|
||||
- pure-io ==0.2.1
|
||||
- pureMD5 ==2.1.3
|
||||
- purescript-bridge ==0.11.0.0
|
||||
- purescript-bridge ==0.11.1.0
|
||||
- pusher-http-haskell ==1.2.0.1
|
||||
- pwstore-fast ==2.4.4
|
||||
- QuasiText ==0.1.2.6
|
||||
|
@ -2096,7 +2096,7 @@ default-package-overrides:
|
|||
- tar ==0.5.0.3
|
||||
- tar-conduit ==0.1.1
|
||||
- tardis ==0.4.1.0
|
||||
- tasty ==0.11.2.5
|
||||
- tasty ==0.11.3
|
||||
- tasty-ant-xml ==1.1.0
|
||||
- tasty-auto ==0.2.0.0
|
||||
- tasty-dejafu ==0.6.0.0
|
||||
|
@ -2283,7 +2283,7 @@ default-package-overrides:
|
|||
- unix-bytestring ==0.3.7.3
|
||||
- unix-compat ==0.4.3.1
|
||||
- unix-time ==0.3.7
|
||||
- unliftio ==0.1.0.0
|
||||
- unliftio ==0.1.1.0
|
||||
- unliftio-core ==0.1.0.0
|
||||
- unlit ==0.4.0.0
|
||||
- unordered-containers ==0.2.8.0
|
||||
|
@ -2325,7 +2325,7 @@ default-package-overrides:
|
|||
- verbosity ==0.2.3.0
|
||||
- versions ==3.1.1
|
||||
- vhd ==0.2.2
|
||||
- ViennaRNAParser ==1.3.2
|
||||
- ViennaRNAParser ==1.3.3
|
||||
- viewprof ==0.0.0.10
|
||||
- vinyl ==0.5.3
|
||||
- vinyl-utils ==0.3.0.0
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -144,7 +144,22 @@ in package-set { inherit pkgs stdenv callPackage; } self // {
|
|||
callHackage = name: version: self.callPackage (self.hackage2nix name version);
|
||||
|
||||
# Creates a Haskell package from a source package by calling cabal2nix on the source.
|
||||
callCabal2nix = name: src: self.callPackage (self.haskellSrc2nix { inherit src name; });
|
||||
callCabal2nix = name: src: args: if builtins.typeOf src != "path"
|
||||
then self.callPackage (haskellSrc2nix { inherit name src; }) args
|
||||
else
|
||||
# When `src` is a Nix path literal, only use `cabal2nix` on
|
||||
# the cabal file, so that the "import-from-derivation" is only
|
||||
# recomputed when the cabal file changes, and so your source
|
||||
# code isn't duplicated into the nix store on every change.
|
||||
# This can only be done when `src` is a Nix path literal
|
||||
# because that is the only kind of source that
|
||||
# `builtins.filterSource` works on. But this filtering isn't
|
||||
# usually important on other kinds of sources, like
|
||||
# `fetchFromGitHub`.
|
||||
overrideCabal (self.callPackage (haskellSrc2nix {
|
||||
inherit name;
|
||||
src = builtins.filterSource (path: type: pkgs.lib.hasSuffix ".cabal" path) src;
|
||||
}) args) (_: { inherit src; });
|
||||
|
||||
# : Map Name (Either Path VersionNumber) -> HaskellPackageOverrideSet
|
||||
# Given a set whose values are either paths or version strings, produces
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, SDL, libpng, libjpeg, libtiff, libungif, libXpm }:
|
||||
{ stdenv, fetchurl, fetchpatch, SDL, libpng, libjpeg, libtiff, libungif, libXpm }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "SDL_image-${version}";
|
||||
|
@ -9,6 +9,14 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "16an9slbb8ci7d89wakkmyfvp7c0cval8xw4hkg0842nhhlp540b";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "CVE-2017-2887";
|
||||
url = "https://hg.libsdl.org/SDL_image/raw-diff/318484db0705/IMG_xcf.c";
|
||||
sha256 = "140dyszz9hkpgwjdiwp1b7jdd8f8l5d862xdaf3ml4cimga1h5kv";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ SDL libpng libjpeg libtiff libungif libXpm ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -1,5 +1,9 @@
|
|||
# Create a derivation that contains aspell and selected dictionaries.
|
||||
# Composition is done using `pkgs.buildEnv`.
|
||||
# Beware of that `ASPELL_CONF` used by this derivation is not always
|
||||
# respected by libaspell (#28815) and in some cases, when used as
|
||||
# dependency by another derivation, the passed dictionaries will be
|
||||
# missing. However, invoking aspell directly should be fine.
|
||||
|
||||
{ aspell
|
||||
, aspellDicts
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
diff --git a/common/info.cpp b/common/info.cpp
|
||||
index 8291cc7..6216326 100644
|
||||
--- a/common/info.cpp
|
||||
+++ b/common/info.cpp
|
||||
@@ -36,6 +36,7 @@
|
||||
#include "strtonum.hpp"
|
||||
#include "lock.hpp"
|
||||
#include "string_map.hpp"
|
||||
+#include "file_util.hpp"
|
||||
|
||||
#include "gettext.h"
|
||||
|
||||
@@ -495,6 +496,25 @@ namespace acommon {
|
||||
lst.clear();
|
||||
lst.add(config->retrieve("data-dir"));
|
||||
lst.add(config->retrieve("dict-dir"));
|
||||
+ if (config->lookup("data-dir") == NULL && config->lookup("dict-dir") == NULL) {
|
||||
+ const char* cprofiles = getenv("NIX_PROFILES");
|
||||
+ if (cprofiles != NULL) {
|
||||
+ char* profiles = strdup(cprofiles);
|
||||
+ char* profile = profiles;
|
||||
+ char* end = profile;
|
||||
+ while (*end != '\0') {
|
||||
+ if (*end == ' ') {
|
||||
+ *end = '\0';
|
||||
+ lst.add(add_possible_dir(profile, "lib/aspell"));
|
||||
+ profile = ++end;
|
||||
+ } else {
|
||||
+ ++end;
|
||||
+ }
|
||||
+ }
|
||||
+ lst.add(add_possible_dir(profile, "lib/aspell"));
|
||||
+ free(profiles);
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
|
||||
DictExt::DictExt(ModuleInfo * m, const char * e)
|
|
@ -1,4 +1,5 @@
|
|||
{stdenv, fetchurl, perl}:
|
||||
{stdenv, fetchurl, perl
|
||||
, searchNixProfiles ? true}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "aspell-0.60.6.1";
|
||||
|
@ -10,6 +11,8 @@ stdenv.mkDerivation rec {
|
|||
|
||||
patchPhase = ''
|
||||
patch interfaces/cc/aspell.h < ${./clang.patch}
|
||||
'' + stdenv.lib.optionalString searchNixProfiles ''
|
||||
patch -p1 < ${./data-dirs-from-nix-profiles.patch}
|
||||
'';
|
||||
|
||||
buildInputs = [ perl ];
|
||||
|
@ -23,28 +26,6 @@ stdenv.mkDerivation rec {
|
|||
);
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
local prog="$out/bin/aspell"
|
||||
local hidden="$out/bin/.aspell-wrapped"
|
||||
mv "$prog" "$hidden"
|
||||
cat > "$prog" <<END
|
||||
#! $SHELL -e
|
||||
if [ -z "\$ASPELL_CONF" ]; then
|
||||
for p in \$NIX_PROFILES; do
|
||||
if [ -d "\$p/lib/aspell" ]; then
|
||||
ASPELL_CONF="data-dir \$p/lib/aspell"
|
||||
fi
|
||||
done
|
||||
if [ -z "\$ASPELL_CONF" ] && [ -d "\$HOME/.nix-profile/lib/aspell" ]; then
|
||||
ASPELL_CONF="data-dir \$HOME/.nix-profile/lib/aspell"
|
||||
fi
|
||||
export ASPELL_CONF
|
||||
fi
|
||||
exec "$hidden" "\$@"
|
||||
END
|
||||
chmod +x "$prog"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Spell checker for many languages";
|
||||
homepage = http://aspell.net/;
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{ callPackage, ... } @ args:
|
||||
|
||||
callPackage ./generic.nix (args // {
|
||||
baseVersion = "2.0";
|
||||
revision = "1";
|
||||
sha256 = "02sf6qghgs1lmprx715dnyll1rmqcjb9q6s50n20li8idlqysf51";
|
||||
baseVersion = "2.3";
|
||||
revision = "0";
|
||||
sha256 = "0z6lwv28hxnfkhd4s03cb4cdm1621bsswc2h88z4qslqwpz71y9r";
|
||||
postPatch = ''
|
||||
sed -e 's@lang_flags "@&--std=c++11 @' -i src/build-data/cc/{gcc,clang}.txt
|
||||
'';
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
callPackage ./generic.nix (args // {
|
||||
baseVersion = "1.10";
|
||||
revision = "15";
|
||||
sha256 = "1zkhmggzxjla2iwaiyrx5161yxckrzszmy9yghjlpnhg8zyqzk60";
|
||||
revision = "17";
|
||||
sha256 = "04rnha712dd3sdb2q7k2yw45sf405jyigk7yrjfr6bwd9fvgyiv8";
|
||||
extraConfigureFlags = "--with-gnump";
|
||||
postPatch = ''
|
||||
sed -e 's@lang_flags "@&--std=c++11 @' -i src/build-data/cc/{gcc,clang}.txt
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
{ callPackage, ... } @ args:
|
||||
|
||||
callPackage ./generic.nix (args // {
|
||||
baseVersion = "1.11";
|
||||
revision = "34";
|
||||
sha256 = "05hzffp0dxac7414a84z0fgv980cnfx55ch2y4vpg5nvin7m9bar";
|
||||
openssl = null;
|
||||
postPatch = "sed '1i#include <cmath>' -i src/tests/test_bigint.cpp";
|
||||
})
|
|
@ -1,10 +0,0 @@
|
|||
url http://botan.randombit.net/download.html
|
||||
version_link 'Botan-[0-9]+[.][0-9]+([.][0-9]+)?[.](tgz|tbz|tbz2|tar[.]bz2)$'
|
||||
ensure_version
|
||||
attribute_name botanUnstable
|
||||
do_overwrite(){
|
||||
ensure_hash
|
||||
set_var_value sha256 $CURRENT_HASH
|
||||
set_var_value baseVersion ${CURRENT_VERSION%.*}
|
||||
set_var_value revision ${CURRENT_VERSION##*.}
|
||||
}
|
|
@ -231,11 +231,11 @@ assert nvenc -> nvidia-video-sdk != null && nonfreeLicensing;
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ffmpeg-full-${version}";
|
||||
version = "3.3.4";
|
||||
version = "3.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.xz";
|
||||
sha256 = "0mx9dvad3lkyhvsrblf280x2bz6dxajya1ylnspbdzldj0dpxfcq";
|
||||
sha256 = "1vzvpx8ixy8m44f8qwp833hv253hpghybgzbc4n8b3div3j0dvmf";
|
||||
};
|
||||
|
||||
patchPhase = ''patchShebangs .
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
callPackage ./generic.nix (args // rec {
|
||||
version = "${branch}";
|
||||
branch = "3.3.4";
|
||||
sha256 = "0zmczggi95fbsq9nz33mpln1y3p1gqniqc4x5smp871idhkykxay";
|
||||
branch = "3.4";
|
||||
sha256 = "0pn8g3ab937ahslqd41crk0g4j4fh7kwimsrlfc0rl0pc3z132ax";
|
||||
darwinFrameworks = [ Cocoa CoreMedia ];
|
||||
})
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libfilezilla-${version}";
|
||||
version = "0.10.1";
|
||||
version = "0.11.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.filezilla-project.org/libfilezilla/${name}.tar.bz2";
|
||||
sha256 = "1yi9db0hpxh3giyjhkbz7ajmf95qw27xdvh3xvw208zri5k575x0";
|
||||
sha256 = "1l4yhw269dyarqb2spqhycxzzyfn8pj4qh9vfycdw1c93hj6fx6c";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -12,11 +12,11 @@ with stdenv.lib;
|
|||
# if you update, also bump pythonPackages.libvirt or it will break
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libvirt-${version}";
|
||||
version = "3.6.0";
|
||||
version = "3.8.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://libvirt.org/sources/${name}.tar.xz";
|
||||
sha256 = "0gcyql5dp6j370kvik9hjhxirrg89m7l1q52yq0g75h7jpv9fb1s";
|
||||
sha256 = "1y83z4jb2by6ara0nw4sivh7svqcrw97yfhqwdscxl4y10saisvk";
|
||||
};
|
||||
|
||||
patches = [ ./build-on-bsd.patch ];
|
||||
|
|
|
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
|
|||
# http://www.mail-archive.com/suspend-devel@lists.sourceforge.net/msg02355.html
|
||||
makeFlags = [
|
||||
"DESTDIR=$(out)"
|
||||
] ++ stdenv.lib.optional (stdenv.isx86_64 || stdenv.isArm) "BACKEND=x86emu";
|
||||
] ++ stdenv.lib.optional (!stdenv.isi686) "BACKEND=x86emu";
|
||||
|
||||
preBuild = ''
|
||||
sed -i lrmi.c -e 's@defined(__i386__)@(defined(__i386__) || defined(__x86_64__))@'
|
||||
|
@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
description = "Real-mode x86 code emulator";
|
||||
maintainers = with maintainers; [ raskin ];
|
||||
platforms = with platforms; linux ++ freebsd ++ netbsd;
|
||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
{ lib, stdenv, fetchurl, fetchpatch, fetchFromGitHub, cmake, pkgconfig, unzip, zlib
|
||||
{ lib, stdenv
|
||||
, fetchurl, fetchFromGitHub
|
||||
, cmake, pkgconfig, unzip, zlib, pcre, hdf5, protobuf
|
||||
, config
|
||||
|
||||
, enableJPEG ? true, libjpeg
|
||||
, enablePNG ? true, libpng
|
||||
|
@ -6,93 +9,129 @@
|
|||
, enableWebP ? true, libwebp
|
||||
, enableEXR ? (!stdenv.isDarwin), openexr, ilmbase
|
||||
, enableJPEG2K ? true, jasper
|
||||
, enableEigen ? true, eigen
|
||||
, enableOpenblas ? true, openblas
|
||||
|
||||
, enableCuda ? (config.cudaSupport or false), cudatoolkit
|
||||
|
||||
, enableIpp ? false
|
||||
, enableContrib ? false, protobuf
|
||||
, enableContrib ? false #, caffe, glog, boost, google-gflags
|
||||
, enablePython ? false, pythonPackages
|
||||
, enableGtk2 ? false, gtk2
|
||||
, enableGtk3 ? false, gtk3
|
||||
, enableFfmpeg ? false, ffmpeg
|
||||
, enableGStreamer ? false, gst_all_1
|
||||
, enableEigen ? true, eigen
|
||||
, enableOpenblas ? true, openblas
|
||||
, enableCuda ? false, cudatoolkit
|
||||
, enableTesseract ? false, tesseract, leptonica
|
||||
, enableDocs ? false, doxygen, graphviz-nox
|
||||
|
||||
, AVFoundation, Cocoa, QTKit
|
||||
}:
|
||||
|
||||
let
|
||||
version = "3.2.0";
|
||||
version = "3.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "opencv";
|
||||
repo = "opencv";
|
||||
rev = version;
|
||||
sha256 = "0f59g0dvhp5xg1xa3r4lp351a7x0k03i77ylgcf69ns3y47qd16p";
|
||||
sha256 = "0266kg337wij9rz602z5088jn2fq56aqpxxflf0fbh28kygchvk4";
|
||||
};
|
||||
|
||||
contribSrc = fetchFromGitHub {
|
||||
owner = "opencv";
|
||||
repo = "opencv_contrib";
|
||||
rev = version;
|
||||
sha256 = "1lynpbxz1jay3ya5y45zac5v8c6ifgk4ssn8d1chfdk3spi691jj";
|
||||
};
|
||||
|
||||
# This fixes the build on macOS.
|
||||
# See: https://github.com/opencv/opencv_contrib/pull/926
|
||||
contribOSXFix = fetchpatch {
|
||||
url = "https://github.com/opencv/opencv_contrib/commit/abf44fcccfe2f281b7442dac243e37b7f436d961.patch";
|
||||
sha256 = "11dsq8dwh1k6f7zglbc26xwsjw184ggf2531mhf7v77kd72k19fm";
|
||||
sha256 = "0qxdvzdszzlpsya1pn4d2r9z4j98isxrgk15a2wwa3dqjmgv880d";
|
||||
};
|
||||
|
||||
# Contrib must be built in order to enable Tesseract support:
|
||||
buildContrib = enableContrib || enableTesseract;
|
||||
|
||||
vggFiles = fetchFromGitHub {
|
||||
owner = "opencv";
|
||||
repo = "opencv_3rdparty";
|
||||
rev = "fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d";
|
||||
sha256 = "0r9fam8dplyqqsd3qgpnnfgf9l7lj44di19rxwbm8mxiw0rlcdvy";
|
||||
# See opencv/3rdparty/ippicv/ippicv.cmake
|
||||
ippicv = {
|
||||
src = fetchFromGitHub {
|
||||
owner = "opencv";
|
||||
repo = "opencv_3rdparty";
|
||||
rev = "a62e20676a60ee0ad6581e217fe7e4bada3b95db";
|
||||
sha256 = "04idycc479l7fidj6r107sv65iszndswm287ms3nh896jbpbaxbv";
|
||||
} + "/ippicv";
|
||||
files = let name = platform : "ippicv_2017u2_${platform}_20170418.tgz"; in
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
{ ${name "lnx_intel64"} = "87cbdeb627415d8e4bc811156289fa3a"; }
|
||||
else if stdenv.system == "i686-linux" then
|
||||
{ ${name "lnx_ia32"} = "f2cece00d802d4dea86df52ed095257e"; }
|
||||
else if stdenv.system == "x86_64-darwin" then
|
||||
{ ${name "mac_intel64"} = "0c25953c99dbb499ff502485a9356d8d"; }
|
||||
else
|
||||
throw "ICV is not available for this platform (or not yet supported by this package)";
|
||||
dst = ".cache/ippicv";
|
||||
};
|
||||
|
||||
bootdescFiles = fetchFromGitHub {
|
||||
owner = "opencv";
|
||||
repo = "opencv_3rdparty";
|
||||
rev = "34e4206aef44d50e6bbcd0ab06354b52e7466d26";
|
||||
sha256 = "13yig1xhvgghvxspxmdidss5lqiikpjr0ddm83jsi0k85j92sn62";
|
||||
# See opencv_contrib/modules/xfeatures2d/cmake/download_vgg.cmake
|
||||
vgg = {
|
||||
src = fetchFromGitHub {
|
||||
owner = "opencv";
|
||||
repo = "opencv_3rdparty";
|
||||
rev = "fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d";
|
||||
sha256 = "0r9fam8dplyqqsd3qgpnnfgf9l7lj44di19rxwbm8mxiw0rlcdvy";
|
||||
};
|
||||
files = {
|
||||
"vgg_generated_48.i" = "e8d0dcd54d1bcfdc29203d011a797179";
|
||||
"vgg_generated_64.i" = "7126a5d9a8884ebca5aea5d63d677225";
|
||||
"vgg_generated_80.i" = "7cd47228edec52b6d82f46511af325c5";
|
||||
"vgg_generated_120.i" = "151805e03568c9f490a5e3a872777b75";
|
||||
};
|
||||
dst = ".cache/xfeatures2d/vgg";
|
||||
};
|
||||
|
||||
# See opencv_contrib/modules/xfeatures2d/cmake/download_boostdesc.cmake
|
||||
boostdesc = {
|
||||
src = fetchFromGitHub {
|
||||
owner = "opencv";
|
||||
repo = "opencv_3rdparty";
|
||||
rev = "34e4206aef44d50e6bbcd0ab06354b52e7466d26";
|
||||
sha256 = "13yig1xhvgghvxspxmdidss5lqiikpjr0ddm83jsi0k85j92sn62";
|
||||
};
|
||||
files = {
|
||||
"boostdesc_bgm.i" = "0ea90e7a8f3f7876d450e4149c97c74f";
|
||||
"boostdesc_bgm_bi.i" = "232c966b13651bd0e46a1497b0852191";
|
||||
"boostdesc_bgm_hd.i" = "324426a24fa56ad9c5b8e3e0b3e5303e";
|
||||
"boostdesc_binboost_064.i" = "202e1b3e9fec871b04da31f7f016679f";
|
||||
"boostdesc_binboost_128.i" = "98ea99d399965c03d555cef3ea502a0b";
|
||||
"boostdesc_binboost_256.i" = "e6dcfa9f647779eb1ce446a8d759b6ea";
|
||||
"boostdesc_lbgm.i" = "0ae0675534aa318d9668f2a179c2a052";
|
||||
};
|
||||
dst = ".cache/xfeatures2d/boostdesc";
|
||||
};
|
||||
|
||||
installExtraFiles = extra : with lib; ''
|
||||
mkdir -p "${extra.dst}"
|
||||
'' + concatStrings (mapAttrsToList (name : md5 : ''
|
||||
ln -s "${extra.src}/${name}" "${extra.dst}/${md5}-${name}"
|
||||
'') extra.files);
|
||||
|
||||
# See opencv_contrib/modules/dnn_modern/CMakeLists.txt
|
||||
tinyDnn = rec {
|
||||
src = fetchurl {
|
||||
url = "https://github.com/tiny-dnn/tiny-dnn/archive/${name}";
|
||||
sha256 = "12x1b984cn0psn6kz1fy75zljgzqvkdyjy8i292adfnyqpl1rip2";
|
||||
};
|
||||
name = "v1.0.0a3.tar.gz";
|
||||
md5 = "adb1c512e09ca2c7a6faef36f9c53e59";
|
||||
dst = ".cache/tiny_dnn";
|
||||
};
|
||||
|
||||
opencvFlag = name: enabled: "-DWITH_${name}=${if enabled then "ON" else "OFF"}";
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "opencv-${version}";
|
||||
inherit version src;
|
||||
|
||||
postUnpack =
|
||||
(lib.optionalString buildContrib ''
|
||||
cp --no-preserve=mode -r "${contribSrc}/modules" "$NIX_BUILD_TOP/opencv_contrib"
|
||||
|
||||
# This fixes the build on macOS.
|
||||
patch -d "$NIX_BUILD_TOP/opencv_contrib" -p2 < "${contribOSXFix}"
|
||||
|
||||
for name in vgg_generated_48.i \
|
||||
vgg_generated_64.i \
|
||||
vgg_generated_80.i \
|
||||
vgg_generated_120.i; do
|
||||
ln -s "${vggFiles}/$name" "$NIX_BUILD_TOP/opencv_contrib/xfeatures2d/src/$name"
|
||||
done
|
||||
|
||||
for name in boostdesc_bgm.i \
|
||||
boostdesc_bgm_bi.i \
|
||||
boostdesc_bgm_hd.i \
|
||||
boostdesc_binboost_064.i \
|
||||
boostdesc_binboost_128.i \
|
||||
boostdesc_binboost_256.i \
|
||||
boostdesc_lbgm.i; do
|
||||
ln -s "${bootdescFiles}/$name" "$NIX_BUILD_TOP/opencv_contrib/xfeatures2d/src/$name"
|
||||
done
|
||||
'');
|
||||
postUnpack = lib.optionalString buildContrib ''
|
||||
cp --no-preserve=mode -r "${contribSrc}/modules" "$NIX_BUILD_TOP/opencv_contrib"
|
||||
'';
|
||||
|
||||
# This prevents cmake from using libraries in impure paths (which
|
||||
# causes build failure on non NixOS)
|
||||
|
@ -105,29 +144,19 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
preConfigure =
|
||||
(let version = "20151201";
|
||||
md5 = "808b791a6eac9ed78d32a7666804320e";
|
||||
sha256 = "1nph0w0pdcxwhdb5lxkb8whpwd9ylvwl97hn0k425amg80z86cs3";
|
||||
rev = "81a676001ca8075ada498583e4166079e5744668";
|
||||
platform = if stdenv.system == "x86_64-linux" || stdenv.system == "i686-linux" then "linux"
|
||||
else throw "ICV is not available for this platform (or not yet supported by this package)";
|
||||
name = "ippicv_${platform}_${version}.tgz";
|
||||
ippicv = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/opencv/opencv_3rdparty/${rev}/ippicv/${name}";
|
||||
inherit sha256;
|
||||
};
|
||||
dir = "3rdparty/ippicv/downloads/${platform}-${md5}";
|
||||
in lib.optionalString enableIpp ''
|
||||
mkdir -p "${dir}"
|
||||
ln -s "${ippicv}" "${dir}/${name}"
|
||||
''
|
||||
) +
|
||||
(lib.optionalString buildContrib ''
|
||||
installExtraFiles ippicv + (
|
||||
lib.optionalString buildContrib ''
|
||||
cmakeFlagsArray+=("-DOPENCV_EXTRA_MODULES_PATH=$NIX_BUILD_TOP/opencv_contrib")
|
||||
|
||||
${installExtraFiles vgg}
|
||||
${installExtraFiles boostdesc}
|
||||
|
||||
mkdir -p "${tinyDnn.dst}"
|
||||
ln -s "${tinyDnn.src}" "${tinyDnn.dst}/${tinyDnn.md5}-${tinyDnn.name}"
|
||||
'');
|
||||
|
||||
buildInputs =
|
||||
[ zlib ]
|
||||
[ zlib pcre hdf5 protobuf ]
|
||||
++ lib.optional enablePython pythonPackages.python
|
||||
++ lib.optional enableGtk2 gtk2
|
||||
++ lib.optional enableGtk3 gtk3
|
||||
|
@ -146,8 +175,13 @@ stdenv.mkDerivation rec {
|
|||
# tesseract & leptonica.
|
||||
++ lib.optionals enableTesseract [ tesseract leptonica ]
|
||||
++ lib.optional enableCuda cudatoolkit
|
||||
++ lib.optional buildContrib protobuf
|
||||
++ lib.optionals stdenv.isDarwin [ AVFoundation Cocoa QTKit ];
|
||||
|
||||
# These are only needed for the currently disabled
|
||||
# cnn_3dobj and dnn_modern modules
|
||||
# ++ lib.optionals buildContrib [ caffe glog boost google-gflags ]
|
||||
|
||||
++ lib.optionals stdenv.isDarwin [ AVFoundation Cocoa QTKit ]
|
||||
++ lib.optionals enableDocs [ doxygen graphviz-nox ];
|
||||
|
||||
propagatedBuildInputs = lib.optional enablePython pythonPackages.numpy;
|
||||
|
||||
|
@ -156,7 +190,10 @@ stdenv.mkDerivation rec {
|
|||
NIX_CFLAGS_COMPILE = lib.optional enableEXR "-I${ilmbase.dev}/include/OpenEXR";
|
||||
|
||||
cmakeFlags = [
|
||||
"-DWITH_IPP=${if enableIpp then "ON" else "OFF"} -DWITH_OPENMP=ON"
|
||||
"-DBUILD_PROTOBUF=OFF"
|
||||
"-DPROTOBUF_UPDATE_FILES=ON"
|
||||
"-DWITH_OPENMP=ON"
|
||||
(opencvFlag "IPP" enableIpp)
|
||||
(opencvFlag "TIFF" enableTIFF)
|
||||
(opencvFlag "JASPER" enableJPEG2K)
|
||||
(opencvFlag "WEBP" enableWebP)
|
||||
|
@ -168,11 +205,24 @@ stdenv.mkDerivation rec {
|
|||
] ++ lib.optionals enableCuda [
|
||||
"-DCUDA_FAST_MATH=ON"
|
||||
"-DCUDA_HOST_COMPILER=${cudatoolkit.cc}/bin/gcc"
|
||||
] ++ lib.optional buildContrib "-DBUILD_PROTOBUF=off"
|
||||
] ++ lib.optionals buildContrib [
|
||||
# the cnn_3dobj module fails to build
|
||||
"-DBUILD_opencv_cnn_3dobj=OFF"
|
||||
|
||||
# the dnn_modern module causes:
|
||||
# https://github.com/opencv/opencv_contrib/issues/823
|
||||
#
|
||||
# On OS X its dependency tiny-dnn-1.0.0a3 also fails to build.
|
||||
"-DBUILD_opencv_dnn_modern=OFF"
|
||||
]
|
||||
++ lib.optionals stdenv.isDarwin ["-DWITH_OPENCL=OFF" "-DWITH_LAPACK=OFF"];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
postBuild = lib.optionalString enableDocs ''
|
||||
make doxygen
|
||||
'';
|
||||
|
||||
hardeningDisable = [ "bindnow" "relro" ];
|
||||
|
||||
passthru = lib.optionalAttrs enablePython { pythonPath = []; };
|
||||
|
@ -181,7 +231,7 @@ stdenv.mkDerivation rec {
|
|||
description = "Open Computer Vision Library with more than 500 algorithms";
|
||||
homepage = http://opencv.org/;
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
maintainers = with stdenv.lib.maintainers; [viric mdaiter];
|
||||
maintainers = with stdenv.lib.maintainers; [viric mdaiter basvandijk];
|
||||
platforms = with stdenv.lib.platforms; linux ++ darwin;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,108 +0,0 @@
|
|||
{ stdenv, fetchurl, perl, python2, ruby, bison, gperf, cmake
|
||||
, pkgconfig, gettext, gobjectIntrospection, libnotify, gnutls
|
||||
, gtk2, gtk3, wayland, libwebp, enchant, xlibs, libxkbcommon, epoxy, at_spi2_core
|
||||
, libxml2, libsoup, libsecret, libxslt, harfbuzz, libpthreadstubs, pcre, nettle, libtasn1, p11_kit
|
||||
, libidn, libedit, readline, mesa, libintlOrEmpty
|
||||
, enableGeoLocation ? true, geoclue2, sqlite
|
||||
, gst-plugins-base, gst-plugins-bad
|
||||
}:
|
||||
|
||||
assert enableGeoLocation -> geoclue2 != null;
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "webkitgtk-${version}";
|
||||
version = "2.17.91";
|
||||
|
||||
meta = {
|
||||
description = "Web content rendering engine, GTK+ port";
|
||||
homepage = http://webkitgtk.org/;
|
||||
license = licenses.bsd2;
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
hydraPlatforms = [];
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
|
||||
postConfigure = optionalString stdenv.isDarwin ''
|
||||
substituteInPlace Source/WebKit2/CMakeFiles/WebKit2.dir/link.txt \
|
||||
--replace "../../lib/libWTFGTK.a" ""
|
||||
substituteInPlace Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/link.txt \
|
||||
--replace "../../lib/libbmalloc.a" ""
|
||||
sed -i "s|[\./]*\.\./lib/lib[^\.]*\.a||g" \
|
||||
Source/JavaScriptCore/CMakeFiles/LLIntOffsetsExtractor.dir/link.txt \
|
||||
Source/JavaScriptCore/shell/CMakeFiles/jsc.dir/link.txt \
|
||||
Source/JavaScriptCore/shell/CMakeFiles/testb3.dir/link.txt \
|
||||
Source/WebKit2/CMakeFiles/DatabaseProcess.dir/link.txt \
|
||||
Source/WebKit2/CMakeFiles/NetworkProcess.dir/link.txt \
|
||||
Source/WebKit2/CMakeFiles/webkit2gtkinjectedbundle.dir/link.txt \
|
||||
Source/WebKit2/CMakeFiles/WebProcess.dir/link.txt
|
||||
substituteInPlace Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/link.txt \
|
||||
--replace "../../lib/libWTFGTK.a" "-Wl,-all_load ../../lib/libWTFGTK.a"
|
||||
'';
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://webkitgtk.org/releases/${name}.tar.xz";
|
||||
sha256 = "0f158gqb2lvv3v5z6s7gjgwms69fgsjkd8whfks8cq6cybiy9y37";
|
||||
};
|
||||
|
||||
# see if we can clean this up....
|
||||
|
||||
patches = [
|
||||
./finding-harfbuzz-icu.patch
|
||||
./gstreamergl-2.17.patch
|
||||
] ++ optionals stdenv.isDarwin [
|
||||
./PR-152650-2.patch
|
||||
./PR-153138.patch
|
||||
./PR-157554.patch
|
||||
./PR-157574.patch
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DPORT=GTK"
|
||||
"-DUSE_LIBHYPHEN=0"
|
||||
]
|
||||
++ optional stdenv.isLinux "-DENABLE_GLES2=ON"
|
||||
++ optionals stdenv.isDarwin [
|
||||
"-DUSE_SYSTEM_MALLOC=ON"
|
||||
"-DUSE_ACCELERATE=0"
|
||||
"-DENABLE_INTROSPECTION=ON"
|
||||
"-DENABLE_MINIBROWSER=OFF"
|
||||
"-DENABLE_PLUGIN_PROCESS_GTK2=OFF"
|
||||
"-DENABLE_MINIBROWSER=OFF"
|
||||
"-DENABLE_VIDEO=ON"
|
||||
"-DENABLE_QUARTZ_TARGET=ON"
|
||||
"-DENABLE_X11_TARGET=OFF"
|
||||
"-DENABLE_OPENGL=OFF"
|
||||
"-DENABLE_WEB_AUDIO=OFF"
|
||||
"-DENABLE_WEBGL=OFF"
|
||||
"-DENABLE_GRAPHICS_CONTEXT_3D=OFF"
|
||||
"-DENABLE_GTKDOC=OFF"
|
||||
];
|
||||
|
||||
# XXX: WebKit2 missing include path for gst-plugins-base.
|
||||
# Filled: https://bugs.webkit.org/show_bug.cgi?id=148894
|
||||
NIX_CFLAGS_COMPILE = "-I${gst-plugins-base.dev}/include/gstreamer-1.0 -I${gst-plugins-bad}/include/gstreamer-1.0"
|
||||
+ (optionalString stdenv.isDarwin " -lintl");
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake perl python2 ruby bison gperf sqlite
|
||||
pkgconfig gettext gobjectIntrospection
|
||||
];
|
||||
|
||||
buildInputs = libintlOrEmpty ++ [
|
||||
gtk2 libwebp enchant libnotify gnutls pcre nettle libidn
|
||||
libxml2 libsecret libxslt harfbuzz libpthreadstubs libtasn1 p11_kit
|
||||
gst-plugins-base gst-plugins-bad libxkbcommon epoxy at_spi2_core
|
||||
] ++ optional enableGeoLocation geoclue2
|
||||
++ (with xlibs; [ libXdmcp libXt libXtst ])
|
||||
++ optionals stdenv.isDarwin [ libedit readline mesa ]
|
||||
++ optional stdenv.isLinux wayland;
|
||||
|
||||
propagatedBuildInputs = [
|
||||
libsoup gtk3
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
}
|
|
@ -3,17 +3,17 @@
|
|||
with rustPlatform;
|
||||
|
||||
buildRustPackage rec {
|
||||
version = "0.3.4";
|
||||
version = "2017-06-23";
|
||||
name = "loc-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cgag";
|
||||
repo = "loc";
|
||||
rev = "9f3590f6299a1be3560f00de7f4f8bef61a02642";
|
||||
sha256 = "0dga8prwnnmsa616jh64wzic957ff0491xghm0bjlns35ajc8lif";
|
||||
rev = "bbea575f56879ef614d57a42a6b79fd45b9a8b38";
|
||||
sha256 = "0agyhi55rh248fmlsip4fi1iw4xv3433q7bcb2lpjfnjpzxxlvfn";
|
||||
};
|
||||
|
||||
depsSha256 = "1xcfhbnz208dk7xb748v8kv28zbhyr7wqg9gsgbiw3lnvc2a3nn6";
|
||||
cargoSha256 = "0f3i8av9g19r2nhr9m8ca8s23kq294c5kqyvx155l6p76r7a9kvb";
|
||||
|
||||
meta = {
|
||||
homepage = http://github.com/cgag/loc;
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -82,6 +82,7 @@
|
|||
, "ungit"
|
||||
, "webdrvr"
|
||||
, "webpack"
|
||||
, "web-ext"
|
||||
, "wring"
|
||||
, "yarn"
|
||||
, "yo"
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -5,12 +5,12 @@
|
|||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ammonite-${version}";
|
||||
version = "1.0.2";
|
||||
version = "1.0.3";
|
||||
scalaVersion = "2.12";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/lihaoyi/Ammonite/releases/download/${version}/${scalaVersion}-${version}";
|
||||
sha256 = "11xn84q947qrf0p2p37pyx9nphl6542jbdan3mjcmdi4p29qgds8";
|
||||
sha256 = "0pa60fy5skx781hwspaskisv8zx0sfddkvprgmwkhfdpz892srwm";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ jre ] ;
|
||||
|
|
|
@ -1,22 +1,30 @@
|
|||
{ stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
|
||||
, kdelibs4, kgraphviewer }:
|
||||
{
|
||||
mkDerivation, lib, fetchurl,
|
||||
extra-cmake-modules, shared_mime_info,
|
||||
qtsvg, qtxmlpatterns, karchive, kconfig, kcoreaddons, kparts, kio, ki18n,
|
||||
kdiagram, kgraphviewer
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
mkDerivation rec {
|
||||
name = "massif-visualizer-${version}";
|
||||
version = "0.4.0";
|
||||
version = "0.7.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kde/stable/massif-visualizer/${version}/src/${name}.tar.xz";
|
||||
sha256 = "0yawzp5lw7ryjcpqkhz70q4hc5hwq5imq5lgqnwgss057zcln7z8";
|
||||
sha256 = "0v8z6r9gngzckvqyxjm9kp7hilwfqibyk2f9vag9l98ar0iwr97q";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
|
||||
buildInputs = [ kdelibs4 kgraphviewer ];
|
||||
nativeBuildInputs = [ extra-cmake-modules shared_mime_info ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
buildInputs = [
|
||||
qtsvg qtxmlpatterns karchive kconfig kcoreaddons kparts kio ki18n
|
||||
kdiagram kgraphviewer
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Tool that visualizes massif data generated by valgrind";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.lethalman ];
|
||||
maintainers = with maintainers; [ lethalman zraexy ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@ buildRustPackage rec {
|
|||
sha256 = "1wxglc4n1dar5qphhj5pab7ps34cjr7jy611fwn72lz0f6c7jp3z";
|
||||
};
|
||||
|
||||
depsSha256 = "0gkg3bxx7nxsvff33n7pif731djfvlzk0msia27h0wq0mazq7kw3";
|
||||
cargoSha256 = "1pi8fh6vz6m5hr38wm0v0hxp1yxm1ma8yzish3b78zkv8f90kmv0";
|
||||
|
||||
meta = {
|
||||
description = "Generate changelogs from local git metadata";
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "jenkins-${version}";
|
||||
version = "2.85";
|
||||
version = "2.86";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://mirrors.jenkins-ci.org/war/${version}/jenkins.war";
|
||||
sha256 = "0z8rv6fxsvnw71f8s711n9s60r8jd43bigy9rqz5805k3xa68whr";
|
||||
sha256 = "198fcj2wkz8qxawk3mq29kwl51pxlbd7ivndcpvdvg42g0caqyi0";
|
||||
};
|
||||
|
||||
buildCommand = ''
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchFromGitHub, rustPlatform, openssl, cmake, perl, pkgconfig, zlib }:
|
||||
{ stdenv, fetchFromGitHub, fetchpatch, rustPlatform, openssl, cmake, perl, pkgconfig, zlib }:
|
||||
|
||||
with rustPlatform;
|
||||
|
||||
|
@ -13,14 +13,24 @@ buildRustPackage rec {
|
|||
sha256 = "07mgq5h6r1gf3jflbv2khcz32bdazw7z1s8xcsafdarnm13ps014";
|
||||
};
|
||||
|
||||
depsSha256 = "1xypk9ck7znca0nqm61m5ngpz6q7c0wydlpwxq4mnkd1np27xn53";
|
||||
cargoSha256 = "06w864f73kijq24xzljfaf47d97aqyg4md3crzbq8hns157m3sv2";
|
||||
|
||||
cargoDepsHook = ''
|
||||
(
|
||||
cd ${name}-src
|
||||
# see https://github.com/git-series/git-series/pull/56
|
||||
patch -p1 < ${fetchpatch {
|
||||
url = "https://github.com/Mic92/git-series/commit/3aa30a47d74ebf90b444dccdf8c153f07f119483.patch";
|
||||
sha256 = "06v8br9skvy75kcw2zgbswxyk82sqzc8smkbqpzmivxlc2i9rnh0";
|
||||
}}
|
||||
)
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig perl ];
|
||||
buildInputs = [ openssl zlib ];
|
||||
|
||||
postBuild = ''
|
||||
mkdir -p "$out/man/man1"
|
||||
cp "$src/git-series.1" "$out/man/man1"
|
||||
install -D "$src/git-series.1" "$out/man/man1/git-series.1"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec {
|
|||
sha256 = "1bzs3mr6f9bna39b9ddwwq0raas07nbn106mnq3widxg59i0gxhd";
|
||||
};
|
||||
|
||||
depsSha256 = "1cz93mrpxmyrza0ipdyg2a6mynl66plpsb446wxnmmy7y7zd6xbf";
|
||||
cargoSha256 = "0y0rkxhkv31v5sa0425dwskd80i6srwbqhqkrw1g1kbmbs9y0vxz";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
|
@ -19,6 +19,7 @@ rustPlatform.buildRustPackage rec {
|
|||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
broken = true;
|
||||
description = "Count code, quickly";
|
||||
homepage = https://github.com/Aaronepower/tokei;
|
||||
license = licenses.mit;
|
||||
|
|
|
@ -25,7 +25,7 @@ stdenv.mkDerivation {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
description = "An editor-independent tool to ease the development of programs in OCaml";
|
||||
homepage = http://the-lambda-church.github.io/merlin/;
|
||||
homepage = "https://github.com/ocaml/merlin";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
};
|
||||
|
|
|
@ -13,7 +13,7 @@ buildRustPackage rec {
|
|||
sha256 = "066f6sdy0vrp113wlg18q9p0clyrg9iqbj17ly0yn8dxr5iar002";
|
||||
};
|
||||
|
||||
depsSha256 = "138h0q2a2gghfjpwfi11zw4rkipvmglb7srqz56ibbw2xliid2wl";
|
||||
cargoSha256 = "0c4awm1d87b396d3g3mp1md5p92i5a64a9jdawpr8mwjd0bly05m";
|
||||
|
||||
buildInputs = [ llvmPackages.clang-unwrapped v8 ];
|
||||
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue