Merge branch 'master' into haskell-updates

This commit is contained in:
Malte Brandy 2021-08-10 22:01:47 +02:00
commit d86710ad1f
No known key found for this signature in database
GPG key ID: 226A2D41EF5378C9
123 changed files with 3919 additions and 1587 deletions

View file

@ -1,7 +1,7 @@
# How to contribute
Note: contributing implies licensing those contributions
under the terms of [COPYING](../COPYING), which is an MIT-like license.
under the terms of [COPYING](COPYING), which is an MIT-like license.
## Opening issues

View file

@ -9668,6 +9668,12 @@
githubId = 1567527;
name = "Sebastian Hyberts";
};
sebtm = {
email = "mail@sebastian-sellmeier.de";
github = "sebtm";
githubId = 17243347;
name = "Sebastian Sellmeier";
};
sellout = {
email = "greg@technomadic.org";
github = "sellout";

View file

@ -6,7 +6,10 @@ set -euf -o pipefail
(
cd pkgs/development/ruby-modules/with-packages
rm -f gemset.nix Gemfile.lock
bundle lock
# Since bundler 2+, the lock command generates a platform-dependent
# Gemfile.lock, hence causing to bundix to generate a gemset tied to the
# platform from where it was executed.
BUNDLE_FORCE_RUBY_PLATFORM=1 bundle lock
bundix
mv gemset.nix ../../../top-level/ruby-packages.nix
rm -f Gemfile.lock

View file

@ -164,6 +164,13 @@
<link linkend="opt-services.influxdb2.enable">services.influxdb2</link>.
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://posativ.org/isso/">isso</link>, a
commenting server similar to Disqus. Available as
<link linkend="opt-services.isso.enable">isso</link>
</para>
</listitem>
</itemizedlist>
</section>
<section xml:id="sec-release-21.11-incompatibilities">

View file

@ -50,6 +50,9 @@ pt-services.clipcat.enable).
- [influxdb2](https://github.com/influxdata/influxdb), a Scalable datastore for metrics, events, and real-time analytics. Available as [services.influxdb2](#opt-services.influxdb2.enable).
- [isso](https://posativ.org/isso/), a commenting server similar to Disqus.
Available as [isso](#opt-services.isso.enable)
## Backward Incompatibilities {#sec-release-21.11-incompatibilities}
- The `staticjinja` package has been upgraded from 1.0.4 to 3.0.1

View file

@ -960,6 +960,7 @@
./services/web-apps/icingaweb2/icingaweb2.nix
./services/web-apps/icingaweb2/module-monitoring.nix
./services/web-apps/ihatemoney
./services/web-apps/isso.nix
./services/web-apps/jirafeau.nix
./services/web-apps/jitsi-meet.nix
./services/web-apps/keycloak.nix

View file

@ -0,0 +1,69 @@
{ config, lib, pkgs, ... }:
let
inherit (lib) mkEnableOption mkIf mkOption types literalExample;
cfg = config.services.isso;
settingsFormat = pkgs.formats.ini { };
configFile = settingsFormat.generate "isso.conf" cfg.settings;
in {
options = {
services.isso = {
enable = mkEnableOption ''
A commenting server similar to Disqus.
Note: The application's author suppose to run isso behind a reverse proxy.
The embedded solution offered by NixOS is also only suitable for small installations
below 20 requests per second.
'';
settings = mkOption {
description = ''
Configuration for <package>isso</package>.
See <link xlink:href="https://posativ.org/isso/docs/configuration/server/">Isso Server Configuration</link>
for supported values.
'';
type = types.submodule {
freeformType = settingsFormat.type;
};
example = literalExample ''
{
general = {
host = "http://localhost";
};
}
'';
};
};
};
config = mkIf cfg.enable {
services.isso.settings.general.dbpath = lib.mkDefault "/var/lib/isso/comments.db";
systemd.services.isso = {
description = "isso, a commenting server similar to Disqus";
wantedBy = [ "multi-user.target" ];
serviceConfig = {
User = "isso";
Group = "isso";
DynamicUser = true;
StateDirectory = "isso";
ExecStart = ''
${pkgs.isso}/bin/isso -c ${configFile}
'';
Restart = "on-failure";
RestartSec = 1;
};
};
};
}

View file

@ -127,6 +127,7 @@ in
fcitx = handleTest ./fcitx {};
ferm = handleTest ./ferm.nix {};
firefox = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox; };
firefox-esr = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr; }; # used in `tested` job
firefox-esr-78 = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr-78; };
firefox-esr-91 = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr-91; };
firejail = handleTest ./firejail.nix {};

30
nixos/tests/isso.nix Normal file
View file

@ -0,0 +1,30 @@
import ./make-test-python.nix ({ pkgs, ... }: {
name = "isso";
meta = with pkgs.lib.maintainers; {
maintainers = [ asbachb ];
};
machine = { config, pkgs, ... }: {
services.isso = {
enable = true;
settings = {
general = {
dbpath = "/var/lib/isso/comments.db";
host = "http://localhost";
};
};
};
};
testScript = let
port = 8080;
in
''
machine.wait_for_unit("isso.service")
machine.wait_for_open_port("${toString port}")
machine.succeed("curl --fail http://localhost:${toString port}/?uri")
machine.succeed("curl --fail http://localhost:${toString port}/js/embed.min.js")
'';
})

View file

@ -13,6 +13,7 @@
, tor
, psmisc
}:
let
bisq-launcher = writeScript "bisq-launcher" ''
#! ${bash}/bin/bash
@ -46,15 +47,16 @@ let
'';
in
stdenv.mkDerivation rec {
version = "1.7.0";
pname = "bisq-desktop";
nativeBuildInputs = [ makeWrapper copyDesktopItems dpkg ];
version = "1.7.0";
src = fetchurl {
url = "https://github.com/bisq-network/bisq/releases/download/v${version}/Bisq-64bit-${version}.deb";
sha256 = "0crry5k7crmrqn14wxiyrnhk09ac8a9ksqrwwky7jsnyah0bx5k4";
};
nativeBuildInputs = [ makeWrapper copyDesktopItems dpkg ];
desktopItems = [
(makeDesktopItem {
name = "Bisq";
@ -71,6 +73,8 @@ stdenv.mkDerivation rec {
'';
installPhase = ''
runHook preInstall
mkdir -p $out/lib $out/bin
cp opt/bisq/lib/app/desktop-${version}-all.jar $out/lib
@ -80,13 +84,13 @@ stdenv.mkDerivation rec {
makeWrapper ${bisq-launcher} $out/bin/bisq-desktop \
--prefix PATH : $out/bin
copyDesktopItems
for n in 16 24 32 48 64 96 128 256; do
size=$n"x"$n
${imagemagick}/bin/convert opt/bisq/lib/Bisq.png -resize $size bisq.png
install -Dm644 -t $out/share/icons/hicolor/$size/apps bisq.png
done;
runHook postInstall
'';
meta = with lib; {

View file

@ -7,13 +7,13 @@ with lib;
stdenv.mkDerivation rec {
name = "bitcoin" + (toString (optional (!withGui) "d")) + "-unlimited-" + version;
version = "1.9.1.1";
version = "1.9.2.0";
src = fetchFromGitHub {
owner = "bitcoinunlimited";
repo = "bitcoinunlimited";
rev = "BCHunlimited${version}";
sha256 = "sha256-K15SI1F/xI4SkX4a41QHLn89YaHCgrlv+wcbkpwGKhI=";
sha256 = "sha256-qUf/GWZHpI57ATTlvRhjDtAjRa8a4uvUb0G9Xcf0j7w=";
};
nativeBuildInputs = [ pkg-config autoreconfHook python3 ]

View file

@ -20,11 +20,11 @@ let
in
stdenv.mkDerivation rec {
pname = "clightning";
version = "0.10.0";
version = "0.10.1";
src = fetchurl {
url = "https://github.com/ElementsProject/lightning/releases/download/v${version}/clightning-v${version}.zip";
sha256 = "5154e67780dddbf12f64c4b1994c3ee3834236f05b6462adf25e8a5f3fa407ea";
sha256 = "9271e9e89d60332b66afedbf8d6eab2a4a488782ab400ee1f60667d73c5a9a96";
};
nativeBuildInputs = [ autogen autoconf automake gettext libtool pkg-config py3 unzip which ];

View file

@ -2,12 +2,12 @@
let
pname = "ledger-live-desktop";
version = "2.31.1";
version = "2.32.2";
name = "${pname}-${version}";
src = fetchurl {
url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
sha256 = "0cxf4i58l0kg9c13j7mf0w5ijrkkf9z1375vn6xghd0r8g5hvws5";
sha256 = "14agkl6xf0f9s5qldla6p6kzl8zlx61q5m8qy63lq215hrzh9d50";
};
appimageContents = appimageTools.extractType2 {

View file

@ -1,31 +1,46 @@
{ boost, cmake, fetchFromGitHub, ffmpeg, qtbase, qtx11extras,
qttools, qtxmlpatterns, qtsvg, gdal, gfortran, libXt, makeWrapper,
mkDerivation, ninja, mpi, python3, lib, tbb, libGLU, libGL }:
{ lib, stdenv, fetchFromGitLab, fetchurl
, boost, cmake, ffmpeg, qtbase, qtx11extras
, qttools, qtxmlpatterns, qtsvg, gdal, gfortran, libXt, makeWrapper
, mkDerivation, ninja, mpi, python3, tbb, libGLU, libGL
, withDocs ? true
}:
mkDerivation rec {
let
version = "5.9.1";
docFiles = [
(fetchurl {
url = "https://www.paraview.org/paraview-downloads/download.php?submit=Download&version=v${lib.versions.majorMinor version}&type=data&os=Sources&downloadFile=ParaViewTutorial-${version}.pdf";
name = "Tutorial.pdf";
sha256 = "1knpirjbz3rv8p8n03p39vv8vi5imvxakjsssqgly09g0cnsikkw";
})
(fetchurl {
url = "https://www.paraview.org/paraview-downloads/download.php?submit=Download&version=v${lib.versions.majorMinor version}&type=data&os=Sources&downloadFile=ParaViewGettingStarted-${version}.pdf";
name = "GettingStarted.pdf";
sha256 = "14xhlvg7s7d5amqf4qfyamx2a6b66zf4cmlfm3s7iw3jq01x1lx6";
})
(fetchurl {
url = "https://www.paraview.org/paraview-downloads/download.php?submit=Download&version=v${lib.versions.majorMinor version}&type=data&os=Sources&downloadFile=ParaViewCatalystGuide-${version}.pdf";
name = "CatalystGuide.pdf";
sha256 = "133vcfrbg2nh15igl51ns6gnfn1is20vq6j0rg37wha697pmcr4a";
})
];
in mkDerivation rec {
pname = "paraview";
version = "5.8.0";
inherit version;
src = fetchFromGitHub {
owner = "Kitware";
repo = "ParaView";
src = fetchFromGitLab {
domain = "gitlab.kitware.com";
owner = "paraview";
repo = "paraview";
rev = "v${version}";
sha256 = "1mka6wwg9mbkqi3phs29mvxq6qbc44sspbm4awwamqhilh4grhrj";
sha256 = "0pzic95br0vr785jnpxqmfxcljw3wk7bhm2xy0jfmwm1dh2b7xac";
fetchSubmodules = true;
};
# Avoid error: format not a string literal and
# no format arguments [-Werror=format-security]
preConfigure = ''
substituteInPlace VTK/Common/Core/vtkLogger.h \
--replace 'vtkLogScopeF(verbosity_name, __func__)' 'vtkLogScopeF(verbosity_name, "%s", __func__)'
substituteInPlace VTK/Common/Core/vtkLogger.h \
--replace 'vtkVLogScopeF(level, __func__)' 'vtkVLogScopeF(level, "%s", __func__)'
'';
# Find the Qt platform plugin "minimal"
patchPhase = ''
preConfigure = ''
export QT_PLUGIN_PATH=${qtbase.bin}/${qtbase.qtPluginPrefix}
'';
@ -63,7 +78,8 @@ mkDerivation rec {
];
buildInputs = [
libGLU libGL
libGLU
libGL
libXt
mpi
tbb
@ -77,6 +93,14 @@ mkDerivation rec {
qtsvg
];
postInstall = let docDir = "$out/share/paraview-${lib.versions.majorMinor version}/doc"; in
lib.optionalString withDocs ''
mkdir -p ${docDir};
for docFile in ${lib.concatStringsSep " " docFiles}; do
cp $docFile ${docDir}/$(stripHash $docFile);
done;
'';
propagatedBuildInputs = [
(python3.withPackages (ps: with ps; [ numpy matplotlib mpi4py ]))
];
@ -84,7 +108,7 @@ mkDerivation rec {
meta = with lib; {
homepage = "https://www.paraview.org/";
description = "3D Data analysis and visualization application";
license = licenses.free;
license = licenses.bsd3;
maintainers = with maintainers; [ guibert ];
platforms = platforms.linux;
};

View file

@ -5,13 +5,13 @@
buildGoModule rec {
pname = "dasel";
version = "1.16.1";
version = "1.17.0";
src = fetchFromGitHub {
owner = "TomWright";
repo = pname;
rev = "v${version}";
sha256 = "sha256-BrtTBy/Tb4xfs7UHk1acRzKZWNZJqhufHG1ItcM8TPs=";
sha256 = "sha256-VZsYwsYec6Q9T8xkb60F0CvPVFd2WJgyOfegm5GuN8c=";
};
vendorSha256 = "sha256-BdX4DO77mIf/+aBdkNVFUzClsIml1UMcgvikDbbdgcY=";

View file

@ -1,22 +1,19 @@
{ lib, stdenv, fetchurl, openssl }:
let
version = "6.4.20";
in
stdenv.mkDerivation {
stdenv.mkDerivation rec {
pname = "fetchmail";
inherit version;
version = "6.4.21";
src = fetchurl {
url = "mirror://sourceforge/fetchmail/fetchmail-${version}.tar.xz";
sha256 = "0xk171sbxcwjh1ibpipryw5sv4sy7jjfvhn5n373j04g5sp428f8";
sha256 = "sha256-akWcHK/XodqlzRNxQNpgwYyEtWmc2OckmnnDM0LJnR0=";
};
buildInputs = [ openssl ];
configureFlags = [ "--with-ssl=${openssl.dev}" ];
meta = {
meta = with lib; {
homepage = "https://www.fetchmail.info/";
description = "A full-featured remote-mail retrieval and forwarding utility";
longDescription = ''
@ -27,9 +24,8 @@ stdenv.mkDerivation {
all flavors of IMAP, ETRN, and ODMR. It can even support IPv6 and
IPSEC.
'';
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.peti ];
license = lib.licenses.gpl2Plus;
platforms = platforms.unix;
maintainers = [ maintainers.peti ];
license = licenses.gpl2Plus;
};
}

View file

@ -50,11 +50,11 @@
stdenv.mkDerivation rec {
pname = "yandex-browser";
version = "21.5.3.753-1";
version = "21.6.2.817-1";
src = fetchurl {
url = "http://repo.yandex.ru/yandex-browser/deb/pool/main/y/${pname}-beta/${pname}-beta_${version}_amd64.deb";
sha256 = "sha256-sI2p/fCaruUJ3qPMyy+12Bh5I1SH8m7sYX5yDex2rwg=";
sha256 = "sha256-xeZkQzVPPNABxa3/YBLoZl1obbFdzxdqIgLyoA4PN8U=";
};
nativeBuildInputs = [

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "starboard-octant-plugin";
version = "0.10.3";
version = "0.11.0";
src = fetchFromGitHub {
owner = "aquasecurity";
repo = pname;
rev = "v${version}";
sha256 = "sha256-9vl068ZTw6Czf+cWQ0k1lU0pqh7P0YZgLguHkk3M918=";
sha256 = "sha256-XHc/1rqTEVOjCm0kFniUmmjVeRsr9Npt0OpQ6Oy7Rxo=";
};
vendorSha256 = "sha256-HOvZPDVKZEoL91yyaJRuKThHirY77xlKOtLKARthxn8=";
vendorSha256 = "sha256-EM0lPwwWJuLD+aqZWshz1ILaeEtUU4wJ0Puwv1Ikgf4=";
preBuild = ''
buildFlagsArray+=("-ldflags" "-s -w")

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "terraform-provider-cloudfoundry";
version = "0.12.6";
version = "0.14.2";
src = fetchFromGitHub {
owner = "cloudfoundry-community";
repo = pname;
rev = "v${version}";
sha256 = "0n5ybpzk6zkrnd9vpmbjlkm8fdp7nbfr046wih0jk72pmiyrcygi";
sha256 = "12mx87dip6vn10zvkf4rgrd27k708lnl149j9xj7bmb8v9m1082v";
};
vendorSha256 = "01lfsd9aw9w3kr1a2a5b7ac6d8jaij83lhxl4y4qsnjlqk86fbxq";
vendorSha256 = "0kydjnwzj0fylizvk1vg42zyiy17qhz40z3iwa1r5bb20qkrlz93";
# needs a running cloudfoundry
doCheck = false;

View file

@ -3,6 +3,7 @@
, buildGoPackage
, fetchFromGitHub
, callPackage
, config
}:
let
list = lib.importJSON ./providers.json;
@ -50,12 +51,13 @@ let
cloudfoundry = callPackage ./cloudfoundry {};
gandi = callPackage ./gandi {};
hcloud = callPackage ./hcloud {};
kubernetes-alpha = throw "This has been merged as beta into the kubernetes provider. See https://www.hashicorp.com/blog/beta-support-for-crds-in-the-terraform-provider-for-kubernetes for details";
libvirt = callPackage ./libvirt {};
linuxbox = callPackage ./linuxbox {};
lxd = callPackage ./lxd {};
vpsadmin = callPackage ./vpsadmin {};
vercel = callPackage ./vercel {};
};
} // (lib.optionalAttrs (config.allowAliases or false) {
kubernetes-alpha = throw "This has been merged as beta into the kubernetes provider. See https://www.hashicorp.com/blog/beta-support-for-crds-in-the-terraform-provider-for-kubernetes for details";
});
in
automated-providers // special-providers

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "catgirl";
version = "1.8";
version = "1.9";
src = fetchurl {
url = "https://git.causal.agency/catgirl/snapshot/${pname}-${version}.tar.gz";
sha256 = "0svpd2nqsr55ac98vczyhihs6pvgw7chspf6bdlwl98gch39dxif";
sha256 = "182l7yryqm1ffxqgz3i4lcnzwzpbpm2qvadddmj0xc8dh8513s0w";
};
nativeBuildInputs = [ ctags pkg-config ];

View file

@ -7,6 +7,7 @@
python3Packages.buildPythonApplication rec {
pname = "zerobin";
version = "1.0.5";
src = fetchFromGitHub {
owner = "Tygs";
repo = "0bin";
@ -21,6 +22,7 @@ python3Packages.buildPythonApplication rec {
python3Packages.pyscss
nodePackages.uglify-js
];
propagatedBuildInputs = with python3Packages; [
appdirs
beaker
@ -30,16 +32,19 @@ python3Packages.buildPythonApplication rec {
lockfile
paste
];
prePatch = ''
# replace /bin/bash in compress.sh
patchShebangs .
# relax version constraints of some dependencies
substituteInPlace setup.cfg \
--replace "clize==4.1.1" "clize" \
--replace "bleach==3.1.5" "bleach>=3.1.5,<4" \
--replace "bottle==0.12.18" "bottle>=0.12.18,<1" \
--replace "Paste==3.4.3" "Paste>=3.4.3,<4"
'';
buildPhase = ''
runHook preBuild
doit build
@ -51,6 +56,8 @@ python3Packages.buildPythonApplication rec {
# See https://github.com/NixOS/nixpkgs/pull/98734#discussion_r495823510
doCheck = false;
pythonImportsCheck = [ "zerobin" ];
meta = with lib; {
description = "A client side encrypted pastebin";
homepage = "https://0bin.net/";

View file

@ -17,14 +17,14 @@ let
};
in
stdenv.mkDerivation rec {
version = "14.31.46";
version = "14.31.49";
pname = "jmol";
src = let
baseVersion = "${lib.versions.major version}.${lib.versions.minor version}";
in fetchurl {
url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz";
sha256 = "sha256-U8k8xQws0vIJ3ZICzZXxSbtl7boCzRqG9mFSTXvmCvg=";
sha256 = "sha256-P+bzimBVammX5LxE6Yd6CmvmBeG8WdyA1T9bHXd+ifI=";
};
patchPhase = ''

View file

@ -1,37 +1,39 @@
{lib, stdenv, fetchurl, makeWrapper, jre, gcc, valgrind}:
{ lib, stdenv, fetchurl, makeWrapper, jre, gcc, valgrind }:
# gcc and valgrind are not strict dependencies, they could be made
# optional. They are here because plm can only help you learn C if you
# have them installed.
stdenv.mkDerivation rec {
major = "2";
minor = "5";
version = "${major}-${minor}";
pname = "plm";
version = "2.9.3";
src = fetchurl {
url = "http://webloria.loria.fr/~quinson/Teaching/PLM/plm-${major}_${minor}.jar";
sha256 = "0m17cxa3nxi2cbswqvlfzp0mlfi3wrkw8ry2xhkxy6aqzm2mlgcc";
url = "https://github.com/BuggleInc/PLM/releases/download/v${version}/plm-${version}.jar";
sha256 = "0i9ghx9pm3kpn9x9n1hl10zdr36v5mv3drx8lvhsqwhlsvz42p5i";
name = "${pname}-${version}.jar";
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ jre gcc valgrind ];
phases = [ "installPhase" ];
dontUnpack = true;
installPhase = ''
runHook preInstall
mkdir -p "$prefix/bin"
makeWrapper ${jre}/bin/java $out/bin/plm \
--add-flags "-jar $src" \
--prefix PATH : "$PATH"
runHook postInstall
'';
meta = with lib; {
description = "Free cross-platform programming exerciser";
homepage = "http://people.irisa.fr/Martin.Quinson/Teaching/PLM/";
license = licenses.gpl3;
maintainers = [ ];
platforms = lib.platforms.all;
broken = true;
};
}

View file

@ -16,12 +16,12 @@ with lib;
buildGoPackage rec {
pname = "gitea";
version = "1.14.5";
version = "1.14.6";
# not fetching directly from the git repo, because that lacks several vendor files for the web UI
src = fetchurl {
url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
sha256 = "sha256-8nwLVpe/5IjXJqO179lN80B/3WGUL3LKM8OWdh/bYOE=";
sha256 = "sha256-IIoOJlafMD6Kg8Zde3LcoK97PKLmqOUMQN3nmIgqe1o=";
};
unpackPhase = ''

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "obs-multi-rtmp";
version = "0.2.6";
version = "0.2.6.1";
src = fetchFromGitHub {
owner = "sorayuki";
repo = "obs-multi-rtmp";
rev = version;
sha256 = "sha256-SMcVL54HwFIc7/wejEol2XiZhlZCMVCwHHtIKJ/CoYY=";
sha256 = "sha256-ZcvmiE9gbDUHAO36QAIaUdjV14ZfPabD9CW7Ogeqdro=";
};
nativeBuildInputs = [ cmake ];

View file

@ -1,4 +1,4 @@
{ stdenv, lib, edk2, util-linux, nasm, iasl
{ stdenv, lib, edk2, util-linux, nasm, acpica-tools
, csmSupport ? false, seabios ? null
, secureBoot ? false
, httpSupport ? false
@ -25,7 +25,7 @@ edk2.mkDerivation projectDscPath {
outputs = [ "out" "fd" ];
buildInputs = [ util-linux nasm iasl ];
buildInputs = [ util-linux nasm acpica-tools ];
hardeningDisable = [ "format" "stackprotector" "pic" "fortify" ];

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, iasl, python3 }:
{ lib, stdenv, fetchurl, acpica-tools, python3 }:
stdenv.mkDerivation rec {
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ python3 ];
buildInputs = [ iasl ];
buildInputs = [ acpica-tools ];
strictDeps = true;
@ -47,4 +47,3 @@ stdenv.mkDerivation rec {
platforms = [ "i686-linux" "x86_64-linux" ];
};
}

View file

@ -1,4 +1,4 @@
{ config, stdenv, fetchurl, lib, iasl, dev86, pam, libxslt, libxml2, wrapQtAppsHook
{ config, stdenv, fetchurl, lib, acpica-tools, dev86, pam, libxslt, libxml2, wrapQtAppsHook
, libX11, xorgproto, libXext, libXcursor, libXmu, libIDL, SDL, libcap, libGL
, libpng, glib, lvm2, libXrandr, libXinerama, libopus, qtbase, qtx11extras
, qttools, qtsvg, qtwayland, pkg-config, which, docbook_xsl, docbook_xml_dtd_43
@ -24,16 +24,6 @@ let
# Use maintainers/scripts/update.nix to update the version and all related hashes or
# change the hashes in extpack.nix and guest-additions/default.nix as well manually.
version = "6.1.26";
iasl' = iasl.overrideAttrs (old: rec {
inherit (old) pname;
version = "20190108";
src = fetchurl {
url = "https://acpica.org/sites/acpica/files/acpica-unix-${version}.tar.gz";
sha256 = "0bqhr3ndchvfhxb31147z8gd81dysyz5dwkvmp56832d0js2564q";
};
NIX_CFLAGS_COMPILE = old.NIX_CFLAGS_COMPILE + " -Wno-error=stringop-truncation";
});
in stdenv.mkDerivation {
pname = "virtualbox";
inherit version;
@ -52,7 +42,7 @@ in stdenv.mkDerivation {
dontWrapQtApps = true;
buildInputs =
[ iasl' dev86 libxslt libxml2 xorgproto libX11 libXext libXcursor libIDL
[ acpica-tools dev86 libxslt libxml2 xorgproto libX11 libXext libXcursor libIDL
libcap glib lvm2 alsa-lib curl libvpx pam makeself perl
libXmu libpng libopus python ]
++ optional javaBindings jdk

View file

@ -3,7 +3,7 @@ config:
# Xen
, bison, bzip2, checkpolicy, dev86, figlet, flex, gettext, glib
, iasl, libaio, libiconv, libuuid, ncurses, openssl, perl
, acpica-tools, libaio, libiconv, libuuid, ncurses, openssl, perl
, python2Packages
# python2Packages.python
, xz, yajl, zlib
@ -71,7 +71,7 @@ stdenv.mkDerivation (rec {
cmake which
# Xen
bison bzip2 checkpolicy dev86 figlet flex gettext glib iasl libaio
bison bzip2 checkpolicy dev86 figlet flex gettext glib acpica-tools libaio
libiconv libuuid ncurses openssl perl python2Packages.python xz yajl zlib
# oxenstored

File diff suppressed because it is too large Load diff

View file

@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "marwaita";
version = "10.0";
version = "10.2";
src = fetchFromGitHub {
owner = "darkomarko42";
repo = pname;
rev = version;
sha256 = "19xy6p3v4jqpw448ywmx1i6mbjpy06qa1rdwkdpxdlhf45fbdacr";
sha256 = "09xh7yhnc7szk171n0qgr52xr7sw9qq4cb7qwrkhf0184idf0pik";
};
buildInputs = [

View file

@ -1,19 +1,33 @@
{ lib, stdenv, fetchFromGitHub, gtk_engines, gtk-engine-murrine }:
{ lib
, stdenv
, fetchFromGitHub
, gnome-shell
, gtk-engine-murrine
, gtk_engines
}:
stdenv.mkDerivation rec {
pname = "vimix-gtk-themes";
version = "2021-04-25";
version = "2021-08-09";
src = fetchFromGitHub {
owner = "vinceliuice";
repo = pname;
rev = version;
sha256 = "0ak763vs27h5z2pgcqpz1g1hypn5gl0p0ylffawc9zdi1wp2mpxb";
sha256 = "0j6sq7z4zqc9q4hqcq4y9vh4qpgl0v1i353l6rcd6bh1r594rwjm";
};
buildInputs = [ gtk_engines ];
nativeBuildInputs = [
gnome-shell # needed to determine the gnome-shell version
];
propagatedUserEnvPkgs = [ gtk-engine-murrine ];
buildInputs = [
gtk_engines
];
propagatedUserEnvPkgs = [
gtk-engine-murrine
];
installPhase = ''
runHook preInstall

View file

@ -1,15 +1,15 @@
{ lib, fetchurl, file, which, intltool, gobject-introspection,
findutils, xdg-utils, dconf, gtk3, python3Packages,
findutils, xdg-utils, dconf, gtk3, python3Packages, xfconf,
wrapGAppsHook
}:
python3Packages.buildPythonApplication rec {
pname = "catfish";
version = "1.4.13";
version = "4.16.2";
src = fetchurl {
url = "https://archive.xfce.org/src/apps/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
sha256 = "sha256-WMDqBuXyhgGSlVRfv9HbyiOup0xiV2K7tMiab0hK6Dk=";
sha256 = "sha256-shouFRlD8LGU04sX/qrzghh5R+0SoCw9ZJKvt0gBKms=";
};
nativeBuildInputs = [
@ -36,6 +36,7 @@ python3Packages.buildPythonApplication rec {
python3Packages.pexpect
xdg-utils
findutils
xfconf
];
# Explicitly set the prefix dir in "setup.py" because setuptools is

View file

@ -3,10 +3,10 @@
mkXfceDerivation {
category = "apps";
pname = "mousepad";
version = "0.5.5";
version = "0.5.6";
odd-unstable = false;
sha256 = "sha256-ViiibikQ90S47stb3egXwK5JbcMYYiJAsKukMVYvKLE=";
sha256 = "sha256-cdM2NHUnN2FITITb4077Je5Z8xwZAJfjmwXfV+WE6jk=";
nativeBuildInputs = [ gobject-introspection ];

View file

@ -8,11 +8,11 @@ in
stdenv.mkDerivation rec {
pname = "xfce4-sensors-plugin";
version = "1.3.95";
version = "1.4.1";
src = fetchurl {
url = "mirror://xfce/src/${category}/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
sha256 = "sha256-g8ZK5GGN1ZKXHPoLwoWptHr4AaPthWg1zbKkxTPHhGw=";
sha256 = "sha256-N9DcVp5zXkgqGFRcJOsc4CKdaRDjpNTB3uBoCZkjS+I=";
};
nativeBuildInputs = [

View file

@ -7,15 +7,13 @@
, useBoehmgc ? true, boehmgc
}:
assert useBoehmgc -> boehmgc != null;
let
s = # Generated upstream information
rec {
baseName="ecl";
version="16.1.2";
name="${baseName}-${version}";
url="https://common-lisp.net/project/ecl/static/files/release/ecl-16.1.2.tgz";
url="https://common-lisp.net/project/ecl/static/files/release/ecl-${version}.tgz";
sha256="16ab8qs3awvdxy8xs8jy82v8r04x4wr70l9l2j45vgag18d2nj1d";
};
buildInputs = [
@ -42,10 +40,7 @@ stdenv.mkDerivation {
"--with-gmp-libdir=${lib.getLib gmp}/lib"
# -incdir, -libdir doesn't seem to be supported for libffi
"--with-libffi-prefix=${lib.getDev libffi}"
]
++
(lib.optional (! noUnicode)
"--enable-unicode")
] ++ lib.optional (! noUnicode) "--enable-unicode"
;
patches = [
@ -91,11 +86,11 @@ stdenv.mkDerivation {
--prefix NIX_LDFLAGS_BEFORE_${gcc.bintools.suffixSalt} ' ' "-L${lib.getLib libffi}/lib"
'';
meta = {
meta = with lib; {
inherit (s) version;
description = "Lisp implementation aiming to be small, fast and easy to embed";
license = lib.licenses.mit ;
maintainers = [lib.maintainers.raskin];
platforms = lib.platforms.unix;
license = licenses.mit ;
maintainers = [ maintainers.raskin ];
platforms = platforms.unix;
};
}

View file

@ -5,7 +5,6 @@
fetchpatch,
libuuid,
python3,
iasl,
bc,
clang_9,
llvmPackages_9,

View file

@ -1,33 +0,0 @@
{lib, stdenv, fetchurl, bison, flex}:
stdenv.mkDerivation rec {
pname = "iasl";
version = "20210730";
src = fetchurl {
url = "https://acpica.org/sites/acpica/files/acpica-unix-${version}.tar.gz";
sha256 = "1pmm977nyl3bs71ipzcl4dh30qm8x9wm2p2ml0m62rl62kai832a";
};
NIX_CFLAGS_COMPILE = "-O3";
buildFlags = [ "iasl" ];
nativeBuildInputs = [ bison flex ];
installPhase =
''
runHook preInstall
install -Dm755 generate/unix/bin*/iasl -t $out/bin
runHook postInstall
'';
meta = {
description = "Intel ACPI Compiler";
homepage = "http://www.acpica.org/";
license = lib.licenses.iasl;
platforms = lib.platforms.unix;
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, lib, fetchFromGitHub, jre, coursier }:
{ stdenv, lib, fetchFromGitHub, coursier }:
stdenv.mkDerivation rec {
pname = "scala-runners";

View file

@ -23,6 +23,12 @@ stdenv.mkDerivation rec {
configureFlags = map (f: "--disable-${f}-port") excludedPorts;
preConfigure = ''
if test -n "''${dontStrip-}"; then
export STRIP=none
fi
'';
meta = {
description = "Small Device C Compiler";
longDescription = ''

View file

@ -8,14 +8,21 @@ stdenv.mkDerivation rec {
sha256 = "02hc5x9vkgng1v9bzvza9985ifrjd7fjr7nlpvazp4mv6dr89k47";
};
patches = [
# Add fallback for missing SIMD functions on ARM
# Source https://github.com/Homebrew/homebrew-core/blob/cad412c7fb4b64925f821fcc9ac5f16a2c40f32d/Formula/aften.rb
./simd-fallback.patch
];
nativeBuildInputs = [ cmake ];
cmakeFlags = [ "-DSHARED=ON" ];
meta = {
meta = with lib; {
description = "An audio encoder which generates compressed audio streams based on ATSC A/52 specification";
homepage = "http://aften.sourceforge.net/";
license = lib.licenses.lgpl2;
platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
license = licenses.lgpl21Only;
platforms = platforms.unix;
maintainers = with maintainers; [ angustrau ];
};
}

View file

@ -0,0 +1,25 @@
From dca9c03930d669233258c114e914a01f7c0aeb05 Mon Sep 17 00:00:00 2001
From: jbr79 <jbr79@ef0d8562-5c19-0410-972e-841db63a069c>
Date: Wed, 24 Sep 2008 22:02:59 +0000
Subject: [PATCH] add fallback function for apply_simd_restrictions() on
non-x86/ppc
git-svn-id: https://aften.svn.sourceforge.net/svnroot/aften@766 ef0d8562-5c19-0410-972e-841db63a069c
---
libaften/cpu_caps.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/libaften/cpu_caps.h b/libaften/cpu_caps.h
index b7c6159..4db11f7 100644
--- a/libaften/cpu_caps.h
+++ b/libaften/cpu_caps.h
@@ -26,6 +26,7 @@
#include "ppc_cpu_caps.h"
#else
static inline void cpu_caps_detect(void){}
+static inline void apply_simd_restrictions(AftenSimdInstructions *simd_instructions){}
#endif
#endif /* CPU_CAPS_H */
--
2.24.3 (Apple Git-128)

View file

@ -30,13 +30,13 @@ let
];
in stdenv.mkDerivation rec {
pname = "gjs";
version = "1.68.1";
version = "1.68.2";
outputs = [ "out" "dev" "installedTests" ];
src = fetchurl {
url = "mirror://gnome/sources/gjs/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0w2cbfpmc6alz7z8ycchhlkn586av5y8zk2xmgwzq10i0k13xyig";
sha256 = "sha256-cP8CraaC8TAzjsXMTFEQPcDlyrjVN+t2sYHsUSpl7jA=";
};
patches = [
@ -126,6 +126,7 @@ in stdenv.mkDerivation rec {
updateScript = gnome.updateScript {
packageName = "gjs";
versionPolicy = "odd-unstable";
};
};

View file

@ -1,6 +1,9 @@
{ lib, stdenv, fetchurl
, CoreServices ? null
, buildPackages }:
{ lib
, stdenv
, fetchurl
, CoreServices
, buildPackages
}:
stdenv.mkDerivation rec {
pname = "nspr";
@ -37,13 +40,14 @@ stdenv.mkDerivation rec {
moveToOutput share "$dev" # just aclocal
'';
buildInputs = [] ++ lib.optionals stdenv.isDarwin [ CoreServices ];
buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
enableParallelBuilding = true;
meta = with lib; {
homepage = "http://www.mozilla.org/projects/nspr/";
homepage = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Reference/NSPR_functions";
description = "Netscape Portable Runtime, a platform-neutral API for system-level and libc-like functions";
maintainers = with maintainers; [ ];
platforms = platforms.all;
license = licenses.mpl20;
};

View file

@ -1,4 +1,14 @@
{ lib, stdenv, fetchurl, nspr, perl, zlib, sqlite, darwin, fixDarwinDylibNames, buildPackages, ninja
{ lib
, stdenv
, fetchurl
, nspr
, perl
, zlib
, sqlite
, darwin
, fixDarwinDylibNames
, buildPackages
, ninja
, # allow FIPS mode. Note that this makes the output non-reproducible.
# https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_Tech_Notes/nss_tech_note6
enableFIPS ? false
@ -9,7 +19,8 @@ let
url = "http://dev.gentoo.org/~polynomial-c/mozilla/nss-3.15.4-pem-support-20140109.patch.xz";
sha256 = "10ibz6y0hknac15zr6dw4gv9nb5r5z9ym6gq18j3xqx7v7n3vpdw";
};
in stdenv.mkDerivation rec {
in
stdenv.mkDerivation rec {
pname = "nss";
version = "3.53.1";
@ -44,55 +55,58 @@ in stdenv.mkDerivation rec {
substituteInPlace nss/coreconf/config.gypi --replace "/usr/bin/grep" "${buildPackages.coreutils}/bin/env grep"
'';
patches =
[
# Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch
./85_security_load.patch
./ckpem.patch
./fix-cross-compilation.patch
];
patches = [
# Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch
./85_security_load.patch
./ckpem.patch
./fix-cross-compilation.patch
];
patchFlags = [ "-p0" ];
postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
substituteInPlace nss/coreconf/Darwin.mk --replace '@executable_path/$(notdir $@)' "$out/lib/\$(notdir \$@)"
substituteInPlace nss/coreconf/config.gypi --replace "'DYLIB_INSTALL_NAME_BASE': '@executable_path'" "'DYLIB_INSTALL_NAME_BASE': '$out/lib'"
'';
substituteInPlace nss/coreconf/Darwin.mk --replace '@executable_path/$(notdir $@)' "$out/lib/\$(notdir \$@)"
substituteInPlace nss/coreconf/config.gypi --replace "'DYLIB_INSTALL_NAME_BASE': '@executable_path'" "'DYLIB_INSTALL_NAME_BASE': '$out/lib'"
'';
outputs = [ "out" "dev" "tools" ];
preConfigure = "cd nss";
buildPhase = let
getArch = platform: if platform.isx86_64 then "x64"
else if platform.isx86_32 then "ia32"
else if platform.isAarch32 then "arm"
else if platform.isAarch64 then "arm64"
else if platform.isPower && platform.is64bit then (
buildPhase =
let
getArch = platform:
if platform.isx86_64 then "x64"
else if platform.isx86_32 then "ia32"
else if platform.isAarch32 then "arm"
else if platform.isAarch64 then "arm64"
else if platform.isPower && platform.is64bit then
(
if platform.isLittleEndian then "ppc64le" else "ppc64"
)
else platform.parsed.cpu.name;
# yes, this is correct. nixpkgs uses "host" for the platform the binary will run on whereas nss uses "host" for the platform that the build is running on
target = getArch stdenv.hostPlatform;
host = getArch stdenv.buildPlatform;
in ''
runHook preBuild
else platform.parsed.cpu.name;
# yes, this is correct. nixpkgs uses "host" for the platform the binary will run on whereas nss uses "host" for the platform that the build is running on
target = getArch stdenv.hostPlatform;
host = getArch stdenv.buildPlatform;
in
''
runHook preBuild
sed -i 's|nss_dist_dir="$dist_dir"|nss_dist_dir="'$out'"|;s|nss_dist_obj_dir="$obj_dir"|nss_dist_obj_dir="'$out'"|' build.sh
./build.sh -v --opt \
--with-nspr=${nspr.dev}/include:${nspr.out}/lib \
--system-sqlite \
--enable-legacy-db \
--target ${target} \
-Dhost_arch=${host} \
-Duse_system_zlib=1 \
--enable-libpkix \
${lib.optionalString enableFIPS "--enable-fips"} \
${lib.optionalString stdenv.isDarwin "--clang"} \
${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "--disable-tests"}
sed -i 's|nss_dist_dir="$dist_dir"|nss_dist_dir="'$out'"|;s|nss_dist_obj_dir="$obj_dir"|nss_dist_obj_dir="'$out'"|' build.sh
./build.sh -v --opt \
--with-nspr=${nspr.dev}/include:${nspr.out}/lib \
--system-sqlite \
--enable-legacy-db \
--target ${target} \
-Dhost_arch=${host} \
-Duse_system_zlib=1 \
--enable-libpkix \
${lib.optionalString enableFIPS "--enable-fips"} \
${lib.optionalString stdenv.isDarwin "--clang"} \
${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "--disable-tests"}
runHook postBuild
'';
runHook postBuild
'';
NIX_CFLAGS_COMPILE = "-Wno-error -DNIX_NSS_LIBDIR=\"${placeholder "out"}/lib/\"";
@ -130,36 +144,38 @@ in stdenv.mkDerivation rec {
chmod 0755 $out/bin/nss-config
'';
postFixup = let
isCross = stdenv.hostPlatform != stdenv.buildPlatform;
nss = if isCross then buildPackages.nss.tools else "$out";
in
(lib.optionalString enableFIPS (''
for libname in freebl3 nssdbm3 softokn3
do '' +
postFixup =
let
isCross = stdenv.hostPlatform != stdenv.buildPlatform;
nss = if isCross then buildPackages.nss.tools else "$out";
in
(lib.optionalString enableFIPS (''
for libname in freebl3 nssdbm3 softokn3
do '' +
(if stdenv.isDarwin
then ''
libfile="$out/lib/lib$libname.dylib"
DYLD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
'' else ''
libfile="$out/lib/lib$libname.so"
LD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
'') + ''
${nss}/bin/shlibsign -v -i "$libfile"
done
'')) +
''
moveToOutput bin "$tools"
moveToOutput bin/nss-config "$dev"
moveToOutput lib/libcrmf.a "$dev" # needed by firefox, for example
rm -f "$out"/lib/*.a
then ''
libfile="$out/lib/lib$libname.dylib"
DYLD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
'' else ''
libfile="$out/lib/lib$libname.so"
LD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
'') + ''
${nss}/bin/shlibsign -v -i "$libfile"
done
'')) +
''
moveToOutput bin "$tools"
moveToOutput bin/nss-config "$dev"
moveToOutput lib/libcrmf.a "$dev" # needed by firefox, for example
rm -f "$out"/lib/*.a
runHook postInstall
'';
runHook postInstall
'';
meta = with lib; {
homepage = "https://developer.mozilla.org/en-US/docs/NSS";
homepage = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS";
description = "A set of libraries for development of security-enabled client and server applications";
maintainers = with maintainers; [ ];
license = licenses.mpl20;
platforms = platforms.all;
};

View file

@ -1,7 +1,16 @@
{ lib, stdenv, fetchurl, nspr, perl, zlib
, sqlite, ninja
, darwin, fixDarwinDylibNames, buildPackages
, useP11kit ? true, p11-kit
{ lib
, stdenv
, fetchurl
, nspr
, perl
, zlib
, sqlite
, ninja
, darwin
, fixDarwinDylibNames
, buildPackages
, useP11kit ? true
, p11-kit
, # allow FIPS mode. Note that this makes the output non-reproducible.
# https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_Tech_Notes/nss_tech_note6
enableFIPS ? false
@ -19,14 +28,14 @@ let
# an update is required do the required changes to the expression.
# Example: nix-shell ./maintainers/scripts/update.nix --argstr package cacert
version = "3.68";
underscoreVersion = builtins.replaceStrings ["."] ["_"] version;
in stdenv.mkDerivation rec {
in
stdenv.mkDerivation rec {
pname = "nss";
inherit version;
src = fetchurl {
url = "mirror://mozilla/security/nss/releases/NSS_${underscoreVersion}_RTM/src/${pname}-${version}.tar.gz";
url = "mirror://mozilla/security/nss/releases/NSS_${lib.replaceStrings [ "." ] [ "_" ] version}_RTM/src/${pname}-${version}.tar.gz";
sha256 = "0nvj7h2brcw21p1z99nrsxka056d0r1yy9nqqg0lw0w3mhnb60n4";
};
@ -56,55 +65,58 @@ in stdenv.mkDerivation rec {
substituteInPlace nss/coreconf/config.gypi --replace "/usr/bin/grep" "${buildPackages.coreutils}/bin/env grep"
'';
patches =
[
# Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch
./85_security_load.patch
./ckpem.patch
./fix-cross-compilation.patch
];
patches = [
# Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch
./85_security_load.patch
./ckpem.patch
./fix-cross-compilation.patch
];
patchFlags = [ "-p0" ];
postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
substituteInPlace nss/coreconf/Darwin.mk --replace '@executable_path/$(notdir $@)' "$out/lib/\$(notdir \$@)"
substituteInPlace nss/coreconf/config.gypi --replace "'DYLIB_INSTALL_NAME_BASE': '@executable_path'" "'DYLIB_INSTALL_NAME_BASE': '$out/lib'"
'';
substituteInPlace nss/coreconf/Darwin.mk --replace '@executable_path/$(notdir $@)' "$out/lib/\$(notdir \$@)"
substituteInPlace nss/coreconf/config.gypi --replace "'DYLIB_INSTALL_NAME_BASE': '@executable_path'" "'DYLIB_INSTALL_NAME_BASE': '$out/lib'"
'';
outputs = [ "out" "dev" "tools" ];
preConfigure = "cd nss";
buildPhase = let
getArch = platform: if platform.isx86_64 then "x64"
else if platform.isx86_32 then "ia32"
else if platform.isAarch32 then "arm"
else if platform.isAarch64 then "arm64"
else if platform.isPower && platform.is64bit then (
buildPhase =
let
getArch = platform:
if platform.isx86_64 then "x64"
else if platform.isx86_32 then "ia32"
else if platform.isAarch32 then "arm"
else if platform.isAarch64 then "arm64"
else if platform.isPower && platform.is64bit then
(
if platform.isLittleEndian then "ppc64le" else "ppc64"
)
else platform.parsed.cpu.name;
# yes, this is correct. nixpkgs uses "host" for the platform the binary will run on whereas nss uses "host" for the platform that the build is running on
target = getArch stdenv.hostPlatform;
host = getArch stdenv.buildPlatform;
in ''
runHook preBuild
else platform.parsed.cpu.name;
# yes, this is correct. nixpkgs uses "host" for the platform the binary will run on whereas nss uses "host" for the platform that the build is running on
target = getArch stdenv.hostPlatform;
host = getArch stdenv.buildPlatform;
in
''
runHook preBuild
sed -i 's|nss_dist_dir="$dist_dir"|nss_dist_dir="'$out'"|;s|nss_dist_obj_dir="$obj_dir"|nss_dist_obj_dir="'$out'"|' build.sh
./build.sh -v --opt \
--with-nspr=${nspr.dev}/include:${nspr.out}/lib \
--system-sqlite \
--enable-legacy-db \
--target ${target} \
-Dhost_arch=${host} \
-Duse_system_zlib=1 \
--enable-libpkix \
${lib.optionalString enableFIPS "--enable-fips"} \
${lib.optionalString stdenv.isDarwin "--clang"} \
${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "--disable-tests"}
sed -i 's|nss_dist_dir="$dist_dir"|nss_dist_dir="'$out'"|;s|nss_dist_obj_dir="$obj_dir"|nss_dist_obj_dir="'$out'"|' build.sh
./build.sh -v --opt \
--with-nspr=${nspr.dev}/include:${nspr.out}/lib \
--system-sqlite \
--enable-legacy-db \
--target ${target} \
-Dhost_arch=${host} \
-Duse_system_zlib=1 \
--enable-libpkix \
${lib.optionalString enableFIPS "--enable-fips"} \
${lib.optionalString stdenv.isDarwin "--clang"} \
${lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "--disable-tests"}
runHook postBuild
'';
runHook postBuild
'';
NIX_CFLAGS_COMPILE = "-Wno-error -DNIX_NSS_LIBDIR=\"${placeholder "out"}/lib/\" " + lib.optionalString stdenv.hostPlatform.is64bit "-DNSS_USE_64=1";
@ -147,36 +159,38 @@ in stdenv.mkDerivation rec {
ln -sf ${p11-kit}/lib/pkcs11/p11-kit-trust.so $out/lib/libnssckbi.so
'';
postFixup = let
isCross = stdenv.hostPlatform != stdenv.buildPlatform;
nss = if isCross then buildPackages.nss.tools else "$out";
in
(lib.optionalString enableFIPS (''
for libname in freebl3 nssdbm3 softokn3
do '' +
postFixup =
let
isCross = stdenv.hostPlatform != stdenv.buildPlatform;
nss = if isCross then buildPackages.nss.tools else "$out";
in
(lib.optionalString enableFIPS (''
for libname in freebl3 nssdbm3 softokn3
do '' +
(if stdenv.isDarwin
then ''
libfile="$out/lib/lib$libname.dylib"
DYLD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
'' else ''
libfile="$out/lib/lib$libname.so"
LD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
'') + ''
${nss}/bin/shlibsign -v -i "$libfile"
done
'')) +
''
moveToOutput bin "$tools"
moveToOutput bin/nss-config "$dev"
moveToOutput lib/libcrmf.a "$dev" # needed by firefox, for example
rm -f "$out"/lib/*.a
then ''
libfile="$out/lib/lib$libname.dylib"
DYLD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
'' else ''
libfile="$out/lib/lib$libname.so"
LD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \
'') + ''
${nss}/bin/shlibsign -v -i "$libfile"
done
'')) +
''
moveToOutput bin "$tools"
moveToOutput bin/nss-config "$dev"
moveToOutput lib/libcrmf.a "$dev" # needed by firefox, for example
rm -f "$out"/lib/*.a
runHook postInstall
'';
runHook postInstall
'';
meta = with lib; {
homepage = "https://developer.mozilla.org/en-US/docs/NSS";
homepage = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS";
description = "A set of libraries for development of security-enabled client and server applications";
maintainers = with maintainers; [ ];
license = licenses.mpl20;
platforms = platforms.all;
};

View file

@ -1,10 +1,11 @@
{ lib, stdenv, fetchurl, cmake, pkg-config }:
stdenv.mkDerivation rec {
name = "nss_wrapper-1.1.11";
pname = "nss_wrapper";
version = "1.1.11";
src = fetchurl {
url = "mirror://samba/cwrap/${name}.tar.gz";
url = "mirror://samba/cwrap/nss_wrapper-${version}.tar.gz";
sha256 = "1q5l6w69yc71ly8gcbnkrcbnq6b64cbiiv99m0z5vn5lgwp36igv";
};

View file

@ -3,19 +3,10 @@
, debug ? false
}:
with lib;
stdenv.mkDerivation rec {
pname = "phonon-backend-vlc";
version = "0.11.2";
meta = with lib; {
homepage = "https://phonon.kde.org/";
description = "GStreamer backend for Phonon";
platforms = platforms.linux;
license = with licenses; [ bsd3 lgpl2Plus ];
};
src = fetchurl {
url = "mirror://kde/stable/phonon/${pname}/${version}/${pname}-${version}.tar.xz";
sha256 = "sha256-xsM7/GjRN/DlegKeS3mMu5D1Svb3Ma9JZ3hXeRzNU6U=";
@ -40,4 +31,11 @@ stdenv.mkDerivation rec {
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=${if debug then "Debug" else "Release"}"
];
meta = with lib; {
homepage = "https://phonon.kde.org/";
description = "GStreamer backend for Phonon";
platforms = platforms.linux;
license = with licenses; [ bsd3 lgpl2Plus ];
};
}

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, unzip, cmake, /*jdk,*/ alsa-lib }:
{ lib, stdenv, fetchurl, unzip, cmake, /*jdk,*/ alsa-lib, Carbon, CoreAudio, CoreFoundation, CoreMIDI, CoreServices }:
stdenv.mkDerivation rec {
pname = "portmidi";
@ -20,14 +20,31 @@ stdenv.mkDerivation rec {
"-DCMAKE_ARCHIVE_OUTPUT_DIRECTORY=Release"
"-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=Release"
"-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=Release"
] ++ lib.optionals stdenv.isDarwin [
"-DCMAKE_OSX_ARCHITECTURES=${if stdenv.isAarch64 then "arm64" else "x86_64"}"
"-DCOREAUDIO_LIB=${CoreAudio}"
"-DCOREFOUNDATION_LIB=${CoreFoundation}"
"-DCOREMIDI_LIB=${CoreMIDI}"
"-DCORESERVICES_LIB=${CoreServices}"
];
# XXX: This is to deactivate Java support.
patches = lib.singleton (fetchurl {
url = "https://raw.github.com/Rogentos/argent-gentoo/master/media-libs/"
+ "portmidi/files/portmidi-217-cmake-libdir-java-opts.patch";
sha256 = "1jbjwan61iqq9fqfpq2a4fd30k3clg7a6j0gfgsw87r8c76kqf6h";
});
NIX_LDFLAGS = lib.optionalString stdenv.isDarwin [
"-framework CoreAudio"
"-framework CoreFoundation"
"-framework CoreMIDI"
"-framework CoreServices"
];
patches = [
# XXX: This is to deactivate Java support.
(fetchurl {
url = "https://raw.github.com/Rogentos/argent-gentoo/master/media-libs/portmidi/files/portmidi-217-cmake-libdir-java-opts.patch";
sha256 = "1jbjwan61iqq9fqfpq2a4fd30k3clg7a6j0gfgsw87r8c76kqf6h";
})
] ++ lib.optionals stdenv.isDarwin [
# Remove hardcoded variables so we can set them properly
./remove-darwin-variables.diff
];
postPatch = ''
sed -i -e 's|/usr/local/|'"$out"'|' -e 's|/usr/share/|'"$out"'/share/|' \
@ -40,19 +57,24 @@ stdenv.mkDerivation rec {
pm_java/CMakeLists.txt
'';
postInstall = ''
ln -s libportmidi.so "$out/lib/libporttime.so"
postInstall = let ext = stdenv.hostPlatform.extensions.sharedLibrary; in ''
ln -s libportmidi.${ext} "$out/lib/libporttime.${ext}"
'';
nativeBuildInputs = [ unzip cmake ];
buildInputs = [ alsa-lib ];
buildInputs = lib.optionals stdenv.isLinux [
alsa-lib
] ++ lib.optionals stdenv.isDarwin [
Carbon CoreAudio CoreFoundation CoreMIDI CoreServices
];
hardeningDisable = [ "format" ];
meta = {
meta = with lib; {
homepage = "http://portmedia.sourceforge.net/portmidi/";
description = "Platform independent library for MIDI I/O";
license = lib.licenses.mit;
platforms = lib.platforms.linux;
license = licenses.mit;
maintainers = with maintainers; [ angustrau ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,52 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4919b78..758eccb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -36,8 +36,6 @@ set(CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "Unused")
set(CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "Unused")
set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "Unused")
-set(CMAKE_OSX_ARCHITECTURES i386 ppc x86_64 CACHE STRING "change to needed architecture for a smaller library" FORCE)
-
PROJECT(portmidi)
if(UNIX)
diff --git a/pm_common/CMakeLists.txt b/pm_common/CMakeLists.txt
index e171047..aafa09c 100644
--- a/pm_common/CMakeLists.txt
+++ b/pm_common/CMakeLists.txt
@@ -22,7 +22,7 @@ else(APPLE OR WIN32)
endif(APPLE OR WIN32)
if(APPLE)
- set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.5.sdk CACHE
+ set(CMAKE_OSX_SYSROOT / CACHE
PATH "-isysroot parameter for compiler" FORCE)
set(CMAKE_C_FLAGS "-mmacosx-version-min=10.5" CACHE
STRING "needed in conjunction with CMAKE_OSX_SYSROOT" FORCE)
@@ -54,10 +54,6 @@ if(UNIX)
include_directories(${CMAKE_OSX_SYSROOT}/Developer/Headers/FlatCarbon)
set(FRAMEWORK_PATH ${CMAKE_OSX_SYSROOT}/System/Library/Frameworks)
- set(COREAUDIO_LIB "${FRAMEWORK_PATH}/CoreAudio.framework")
- set(COREFOUNDATION_LIB "${FRAMEWORK_PATH}/CoreFoundation.framework")
- set(COREMIDI_LIB "${FRAMEWORK_PATH}/CoreMIDI.framework")
- set(CORESERVICES_LIB "${FRAMEWORK_PATH}/CoreServices.framework")
set(PM_NEEDED_LIBS ${COREAUDIO_LIB} ${COREFOUNDATION_LIB}
${COREMIDI_LIB} ${CORESERVICES_LIB}
CACHE INTERNAL "")
diff --git a/pm_dylib/CMakeLists.txt b/pm_dylib/CMakeLists.txt
index f693dd6..1dc5cd6 100644
--- a/pm_dylib/CMakeLists.txt
+++ b/pm_dylib/CMakeLists.txt
@@ -49,10 +49,6 @@ if(UNIX)
include_directories(${CMAKE_OSX_SYSROOT}/Developer/Headers/FlatCarbon)
set(FRAMEWORK_PATH ${CMAKE_OSX_SYSROOT}/System/Library/Frameworks)
- set(COREAUDIO_LIB "${FRAMEWORK_PATH}/CoreAudio.framework")
- set(COREFOUNDATION_LIB "${FRAMEWORK_PATH}/CoreFoundation.framework")
- set(COREMIDI_LIB "${FRAMEWORK_PATH}/CoreMIDI.framework")
- set(CORESERVICES_LIB "${FRAMEWORK_PATH}/CoreServices.framework")
set(PM_NEEDED_LIBS ${COREAUDIO_LIB} ${COREFOUNDATION_LIB}
${COREMIDI_LIB} ${CORESERVICES_LIB}
CACHE INTERNAL "")

View file

@ -1,27 +1,50 @@
{ lib, stdenv, fetchurl, pkg-config, libusb1 }:
{ lib
, stdenv
, cmake
, fetchFromGitLab
, pkg-config
, meson
, ninja
, glib
, libusb1
}:
stdenv.mkDerivation rec {
pname = "usbredir";
version = "0.8.0";
version = "0.10.0";
src = fetchurl {
url = "https://spice-space.org/download/usbredir/${pname}-${version}.tar.bz2";
sha256 = "002yik1x7kn0427xahvnhjby2np14a6xqw7c3dx530n9h5d9rg47";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "spice";
repo = "usbredir";
rev = "${pname}-${version}";
sha256 = "1dz8jms9l6gg2hw0k6p1p1lnchc9mcgmskgvm5gbdvw3j7wrhdbz";
};
NIX_CFLAGS_COMPILE = "-Wno-error";
nativeBuildInputs = [
glib
meson
ninja
pkg-config
];
nativeBuildInputs = [ pkg-config ];
propagatedBuildInputs = [ libusb1 ];
propagatedBuildInputs = [
libusb1
];
mesonFlags = [
"-Dgit_werror=disabled"
"-Dtools=enabled"
"-Dfuzzing=disabled"
];
outputs = [ "out" "dev" ];
meta = with lib; {
description = "USB traffic redirection protocol";
homepage = "https://www.spice-space.org/usbredir.html";
license = licenses.lgpl21;
maintainers = [ maintainers.offline ];
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ offline ];
platforms = platforms.linux;
};
}

View file

@ -36,7 +36,7 @@
, libidn
, libedit
, readline
, sdk
, apple_sdk
, libGL
, libGLU
, mesa
@ -167,13 +167,15 @@ stdenv.mkDerivation rec {
]) ++ lib.optionals stdenv.isDarwin [
libedit
readline
] ++ lib.optional (stdenv.isDarwin && !stdenv.isAarch64) (
# Pull a header that contains a definition of proc_pid_rusage().
# (We pick just that one because using the other headers from `sdk` is not
# compatible with our C++ standard library)
(runCommandNoCC "${pname}_headers" {} ''
install -Dm444 "${lib.getDev sdk}"/include/libproc.h "$out"/include/libproc.h
'')
] ++ lib.optionals stdenv.isLinux [
# compatible with our C++ standard library. This header is already in
# the standard library on aarch64)
runCommandNoCC "${pname}_headers" {} ''
install -Dm444 "${lib.getDev apple_sdk.sdk}"/include/libproc.h "$out"/include/libproc.h
''
) ++ lib.optionals stdenv.isLinux [
bubblewrap
libseccomp
systemd

View file

@ -1,9 +1,13 @@
{ lib, stdenv
{ lib
, stdenv
, fetchFromGitHub
, autoreconfHook
, wxGTK
, sqlite
, darwin
, Cocoa
, setfile
, rez
, derez
}:
stdenv.mkDerivation rec {
@ -20,13 +24,13 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ wxGTK sqlite ]
++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Cocoa darwin.stubs.setfile darwin.stubs.rez darwin.stubs.derez ];
++ lib.optionals stdenv.isDarwin [ Cocoa setfile rez derez ];
meta = with lib; {
homepage = "https://utelle.github.io/wxsqlite3/";
description = "A C++ wrapper around the public domain SQLite 3.x for wxWidgets";
platforms = platforms.unix;
maintainers = with maintainers; [ vrthra ];
license = [ licenses.lgpl3Plus licenses.gpl3Plus ];
license = with licenses; [ lgpl3Plus gpl3Plus ];
};
}

View file

@ -104,6 +104,7 @@
, "fx"
, "ganache-cli"
, "gatsby-cli"
, "generator-code"
, "get-graphql-schema"
, "git-run"
, "git-ssb"

File diff suppressed because it is too large Load diff

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "arcam-fmj";
version = "0.7.0";
version = "0.10.0";
disabled = pythonOlder "3.8";
@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "elupus";
repo = "arcam_fmj";
rev = version;
sha256 = "0y4wvvbcsizjd9qz6iw4gjhq5qf0qcqs27hpx1cd90vhy6rclxm0";
sha256 = "sha256-pPPBeOwB2HgyxxMnR5yU3ZwDaJVP0v7/fkeDkeGGhPM=";
};
propagatedBuildInputs = [

View file

@ -16,12 +16,12 @@
buildPythonPackage rec {
pname = "b2sdk";
version = "1.9.0";
version = "1.12.0";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "ff9c27c89f53583fd83c711d0a642d9b3bdbb8682c2e8e2315674b517cb441ec";
sha256 = "sha256-PsImSuK0IVY9EwpLKlP5ZFS6A7j2iJOtUg/GUcQTJR0=";
};
nativeBuildInputs = [
@ -54,6 +54,7 @@ buildPythonPackage rec {
# Test requires an API key
"test_raw_api"
"test_files_headers"
"test_large_file"
];
pythonImportsCheck = [ "b2sdk" ];

View file

@ -12,14 +12,14 @@
buildPythonPackage rec {
pname = "clevercsv";
version = "0.6.8";
version = "0.7.0";
format = "setuptools";
src = fetchFromGitHub {
owner = "alan-turing-institute";
repo = "CleverCSV";
rev = "v${version}";
sha256 = "0jpgyh65zqr76sz2s63zsjyb49dpg2xdmf72jvpicw923bdzhqvp";
sha256 = "09ccgydnrfdgxjz6ph829l9q62jkzqrak0k6yjik2rvs33jn0dhc";
};
propagatedBuildInputs = [

View file

@ -15,18 +15,13 @@
buildPythonPackage rec {
pname = "clize";
version = "4.1.1";
version = "4.2.0";
src = fetchPypi {
inherit pname version;
sha256 = "f54dedcf6fea90a3e75c30cb65e0ab1e832760121f393b8d68edd711dbaf7187";
sha256 = "06p47i6hri006v7xbx7myj02as1a6f34rv88wfa9rb067p13nmyz";
};
# Remove overly restrictive version constraints
postPatch = ''
substituteInPlace setup.py --replace "attrs>=19.1.0,<20" "attrs"
'';
checkInputs = [
pytestCheckHook
python-dateutil
@ -49,5 +44,6 @@ buildPythonPackage rec {
description = "Command-line argument parsing for Python";
homepage = "https://github.com/epsy/clize";
license = licenses.mit;
maintainers = with maintainers; [ ];
};
}

View file

@ -2,14 +2,14 @@
buildPythonPackage rec {
pname = "CoAPthon3";
version = "1.0.1";
version = "1.0.2";
disabled = isPy27;
src = fetchFromGitHub {
owner = "Tanganelli";
repo = pname;
rev = version;
sha256 = "1im35i5i72y1p9qj8ixkwq7q6ksbrmi42giqiyfgjp1ym38snl69";
sha256 = "sha256-9QApoPUu3XFZY/lgjAsf5r2StFiRtUd1UXWDrzYUh6w=";
};
propagatedBuildInputs = [ cachetools ];

View file

@ -1,17 +1,23 @@
{ lib, buildPythonPackage, fetchPypi, pytestCheckHook }:
{ lib
, buildPythonPackage
, fetchPypi
, pytestCheckHook
}:
buildPythonPackage rec {
version = "2.0.1";
version = "2.0.2";
pname = "dbutils";
src = fetchPypi {
inherit version;
pname = "DBUtils";
sha256 = "sha256-Vw590TbBMRb+74vKGGCeP2a4ZoqcPV8hCdh0TERE2GE=";
sha256 = "1cc8zyd4lapzf9ny6c2jf1vysphlhr19m8miyvw5spbyq4pxpnsf";
};
checkInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "dbutils" ];
meta = with lib; {
description = "Database connections for multi-threaded environments";
homepage = "https://webwareforpython.github.io/DBUtils/";

View file

@ -12,12 +12,12 @@
buildPythonPackage rec {
pname = "deemix";
version = "3.4.1";
version = "3.4.2";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-FGzMFJOoKQPNq4tGI1KsMO+i9iBZhoz5Z67BFLEuv48=";
sha256 = "sha256-kGE3JLMaDSQsz/b+vgQ5GGTp+itiqMymamaNO0NM2L0=";
};
propagatedBuildInputs = [

View file

@ -7,12 +7,12 @@
buildPythonPackage rec {
pname = "deezer-py";
version = "1.1.1";
version = "1.1.2";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-EAiGMSLrRsF03FMLkizy3Fm+nAldSTxe9KdXFFep0iQ=";
sha256 = "sha256-xkPbKFGULq5On13xuuV0Bqb5ATTXonH6mCPf3mwwv8A=";
};
propagatedBuildInputs = [ requests ];

View file

@ -15,13 +15,13 @@
buildPythonPackage rec {
pname = "hass-nabucasa";
version = "0.44.0";
version = "0.45.1";
src = fetchFromGitHub {
owner = "nabucasa";
repo = pname;
rev = version;
sha256 = "sha256-cfKuqkIgmbo7/kUIpJFbckyQ0uDrxXmdsI7qORX0PWc=";
sha256 = "sha256-ZDPlYoLAQLXiV+LUMdu/8v3TrG5/Zz4+r4PtThrLAas=";
};
propagatedBuildInputs = [

View file

@ -6,14 +6,14 @@
buildPythonPackage rec {
pname = "hstspreload";
version = "2021.7.5";
version = "2021.8.1";
disabled = isPy27;
src = fetchFromGitHub {
owner = "sethmlarson";
repo = pname;
rev = version;
sha256 = "sha256-/89K41MrTdF68+BVkfnv+0d+6rBHdRGKpN2Psfr2Wog=";
sha256 = "0si22p461qydh874gkidiar89hrfx7lm7r7g6d1qi7lz8wlwcplv";
};
# tests require network connection

View file

@ -2,17 +2,16 @@
, aiohttp
, async-timeout
, buildPythonPackage
, fetchpatch
, fetchPypi
}:
buildPythonPackage rec {
pname = "mutesync";
version = "0.0.1";
version = "0.0.2";
src = fetchPypi {
inherit pname version;
sha256 = "05r8maq59glwgysg98y1vrysfb1mkh9jpbag3ixl13n8jw8clp85";
sha256 = "1lz3q3q9lw8qxxb8jyrak77v6hkxwi39akyx96j8hd5jjaq2k5qc";
};
propagatedBuildInputs = [
@ -20,17 +19,9 @@ buildPythonPackage rec {
async-timeout
];
patches = [
# Don't parse requirements.txt, https://github.com/currentoor/pymutesync/pull/1
(fetchpatch {
name = "add-requirements.patch";
url = "https://github.com/currentoor/pymutesync/commit/d66910fc83b1ae3060cdb3fe22a6f91fb70a67f0.patch";
sha256 = "0axhgriyyv31b1r1yidxcrv0nyrqbb63xw5qrmv2iy2h0v96ijsk";
})
];
# Project has not published tests yet
doCheck = false;
pythonImportsCheck = [ "mutesync" ];
meta = with lib; {

View file

@ -1,6 +1,15 @@
{ buildPythonPackage, fetchPypi, flask, isPy27, lib, nixosTests
, prometheus_client, py-air-control, pytestCheckHook, pytest-cov, pytest-runner
, setuptools-scm }:
{ lib
, buildPythonPackage
, click
, fetchPypi
, flask
, isPy27
, nixosTests
, prometheus_client
, py-air-control
, pytestCheckHook
, setuptools-scm
}:
buildPythonPackage rec {
pname = "py-air-control-exporter";
@ -12,14 +21,40 @@ buildPythonPackage rec {
sha256 = "ece2e446273542e5c0352c9d6e80d8279132c6ada3649c59e87a711448801a3b";
};
nativeBuildInputs = [ setuptools-scm ];
checkInputs = [ pytestCheckHook pytest-cov pytest-runner ];
propagatedBuildInputs = [ flask prometheus_client py-air-control ];
nativeBuildInputs = [
setuptools-scm
];
propagatedBuildInputs = [
click
flask
prometheus_client
py-air-control
];
checkInputs = [
pytestCheckHook
];
postPatch = ''
substituteInPlace setup.py \
--replace "pytest-runner" ""
substituteInPlace setup.cfg \
--replace "--cov=py_air_control_exporter" ""
'';
disabledTests = [
# Tests are outdated
"test_help"
"test_unknown_protocol"
];
pythonImportsCheck = [ "py_air_control_exporter" ];
passthru.tests = { inherit (nixosTests.prometheus-exporters) py-air-control; };
meta = with lib; {
description = "Exports Air Quality Metrics to Prometheus.";
description = "Exports Air Quality Metrics to Prometheus";
homepage = "https://github.com/urbas/py-air-control-exporter";
license = licenses.mit;
maintainers = with maintainers; [ urbas ];

View file

@ -1,28 +1,53 @@
{ lib, buildPythonPackage, fetchPypi, mupdf, swig }:
{ lib
, buildPythonPackage
, fetchPypi
, fetchpatch
, mupdf
, swig
, freetype
, harfbuzz
, openjpeg
, jbig2dec
, libjpeg_turbo
, gumbo
}:
buildPythonPackage rec {
pname = "pymupdf";
version = "1.18.0";
version = "1.18.16";
src = fetchPypi {
pname = "PyMuPDF";
inherit version;
sha256 = "64ce58f92d9edd2631e447175fa13b4024ac3b6dce6e718e0b003c41de6f7952";
sha256 = "b21e39098fbbe0fdf269fdb2d1dd25a3847bbf22785ee8903d3a5637c2d0b9d7";
};
patchPhase = ''
patchFlags = [ "--binary" "--ignore-whitespace" ];
patches = [
# Add NIX environment support.
# Should be removed next pyMuPDF release.
(fetchpatch {
url = "https://github.com/pymupdf/PyMuPDF/commit/d9b2d42019e5705a1c6621ea0cdfa26da1ce9ad5.patch";
sha256 = "fc3f6ad88c8f3933ed9ab9d4db9ebec8bc30ed5113f6ca9d72080b56dfa52ad6";
})
];
postPatch = ''
substituteInPlace setup.py \
--replace '/usr/include/mupdf' ${mupdf.dev}/include/mupdf
'';
'';
nativeBuildInputs = [ swig ];
buildInputs = [ mupdf ];
buildInputs = [ mupdf freetype harfbuzz openjpeg jbig2dec libjpeg_turbo gumbo ];
doCheck = false;
pythonImportsCheck = [ "fitz" ];
meta = with lib; {
description = "Python bindings for MuPDF's rendering library.";
homepage = "https://github.com/pymupdf/PyMuPDF";
maintainers = with maintainers; [ teto ];
license = licenses.agpl3;
license = licenses.agpl3Only;
platforms = platforms.linux;
};
}

View file

@ -21,12 +21,14 @@
, deepdiff
, pytestCheckHook
, pytest-cov
, pythonOlder
, websocket-client
}:
buildPythonPackage rec {
pname = "runway-python";
version = "0.6.1";
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "runwayml";
@ -70,6 +72,8 @@ buildPythonPackage rec {
"test_file_deserialization_remote"
"test_file_deserialization_absolute_directory"
"test_file_deserialization_remote_directory"
# Fails with a decoding error at the moment
"test_inference_async"
] ++ lib.optionals (pythonAtLeast "3.9") [
# AttributeError: module 'base64' has no attribute 'decodestring
# https://github.com/runwayml/model-sdk/issues/99

View file

@ -113,6 +113,10 @@ buildPythonPackage rec {
"test_custom_loop_asyncio"
"test_custom_loop_asyncio_deferred_signal"
"FileFeedStoragePreFeedOptionsTest" # https://github.com/scrapy/scrapy/issues/5157
# Fails with AssertionError
"test_peek_fifo"
"test_peek_one_element"
"test_peek_lifo"
] ++ lib.optionals stdenv.isDarwin [
"test_xmliter_encoding"
"test_download"

View file

@ -13,12 +13,12 @@
buildPythonPackage rec {
pname = "sopel";
version = "7.1.0";
version = "7.1.2";
disabled = isPyPy;
src = fetchPypi {
inherit pname version;
sha256 = "74057d4c86cff744b1f1062f3a9c4ae99eb4f1b17048ceb083293d5f4c7e989b";
sha256 = "sha256-8RhIw3Qt0BclH1Ws16JNuFfwiRxJ14lM6MBUK9OvNKA=";
};
propagatedBuildInputs = [
@ -36,7 +36,8 @@ buildPythonPackage rec {
# remove once https://github.com/sopel-irc/sopel/pull/1653 lands
postPatch = ''
substituteInPlace requirements.txt \
--replace "praw>=4.0.0,<6.0.0" "praw"
--replace "praw>=4.0.0,<6.0.0" "praw" \
--replace "sqlalchemy<1.4" "sqlalchemy"
'';
checkInputs = [ pytestCheckHook ];

View file

@ -1,25 +1,44 @@
{ lib, buildPythonPackage, fetchPypi, fetchpatch, isPy27
, mock, pytest, sybil, zope_component, twisted }:
{ lib
, buildPythonPackage
, fetchpatch
, fetchPypi
, isPy27
, mock
, pytestCheckHook
, sybil
, twisted
, zope_component
}:
buildPythonPackage rec {
pname = "testfixtures";
version = "6.17.1";
version = "6.18.0";
src = fetchPypi {
inherit pname version;
sha256 = "5ec3a0dd6f71cc4c304fbc024a10cc293d3e0b852c868014b9f233203e149bda";
sha256 = "sha256-1L0cT5DqyQpz4b3FnDHQOUPyGNaH88WgnkhHiEGor18=";
};
checkInputs = [ pytest mock sybil zope_component twisted ];
checkInputs = [
pytestCheckHook
mock
sybil
zope_component
twisted
];
doCheck = !isPy27;
checkPhase = ''
# django is too much hasle to setup at the moment
pytest -W ignore::DeprecationWarning \
--ignore=testfixtures/tests/test_django \
-k 'not (log_then_patch or our_wrap_dealing_with_mock_patch or patch_with_dict)' \
testfixtures/tests
'';
disabledTestPaths = [
# Django is too much hasle to setup at the moment
"testfixtures/tests/test_django"
];
pytestFlagsArray = [
"testfixtures/tests"
];
pythonImportsCheck = [ "testfixtures" ];
meta = with lib; {
homepage = "https://github.com/Simplistix/testfixtures";

View file

@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "zeroconf";
version = "0.33.4";
version = "0.34.3";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "jstasiak";
repo = "python-zeroconf";
rev = version;
sha256 = "sha256-ld8Mo465fJTVNSv6YvKcsPafiIij4PEmeycWB3M3ewU=";
sha256 = "sha256-HJSqQl7dd8sN490lqGHWg6QiJblGKKlVMn7UJDQb7ZA=";
};
propagatedBuildInputs = [

View file

@ -55,6 +55,7 @@ source 'https://rubygems.org' do
gem 'fog-dnsimple'
gem 'gdk_pixbuf2'
gem 'gio2'
gem 'github-pages'
gem 'gitlab-markup'
gem 'glib2'
# gem 'gobject-introspection' fails on require

View file

@ -5,13 +5,13 @@
buildGoPackage rec {
pname = "tfsec";
version = "0.56.0";
version = "0.57.1";
src = fetchFromGitHub {
owner = "aquasecurity";
repo = pname;
rev = "v${version}";
sha256 = "0kv9g11jgbrbb50qhlfznw9i473gw8vadrrlkvki6y3cfcavghkv";
sha256 = "0g3yq2y9z7vnaznmdmdb98djsv8nbai8jvbhfs2g12q55dlm3vf3";
};
goPackagePath = "github.com/aquasecurity/tfsec";

View file

@ -12,12 +12,12 @@ let
in
python3Packages.buildPythonApplication rec {
pname = "backblaze-b2";
version = "2.5.0";
version = "3.0.1";
src = python3Packages.fetchPypi {
inherit version;
pname = "b2";
sha256 = "0sh9k9fnj73ydqnk056m01xkilpxh7f4597cnczqhy21lxzr3d45";
sha256 = "sha256-Zr+5J6MCjfth+5fOSfHXpT/CAgD754ZpS1b1NqeGid8=";
};
postPatch = ''

View file

@ -95,33 +95,33 @@ rec {
headers = "01x6a0r2jawjpl09ixgzap3g0z6znj34hsnnhzanavkbds0ri4k6";
};
electron_11 = mkElectron "11.4.10" {
x86_64-linux = "bad6af91183bcb27428a258fba3fab24ef3e8435402d6cb2d500fe215b8c920c";
x86_64-darwin = "aaa11e61697ec2eec99950082a68eef32bc1231e51ac77cde6d96a12837f5b73";
i686-linux = "8e956bad6a6c5f85fe5a53304ffe878191c670ffbc13176fbe01911ba7d6da0f";
armv7l-linux = "c9e3873316416426151fbff9a190526e40a3e311d0f348ee6965a8c7948cb9c1";
aarch64-linux = "4ee0dab2af08f0d8f0d141a165744c949b068a8a6537ef5ff7973b63266c2abf";
aarch64-darwin = "53f96ba6099617c219ca75bde1682abb9e961927e5a3645b38dee11b95517659";
headers = "0c7qms8vbirblg6z86s19p5l472p3h8lw1rj7ckgnwna4b68vn33";
electron_11 = mkElectron "11.4.11" {
x86_64-linux = "8c9525bffa3479e3a2de88f65348585948e4d03ecfc35b71641dc3833d9b639f";
x86_64-darwin = "48b89a46c6d4d117bcac6a45fbe0690adfd2b7f1f3602976d8e0859f16324bff";
i686-linux = "33eff09dfc655da756b247580b790060c93f306c4a8f33a457e8df1fd4f196c3";
armv7l-linux = "58251a2b9fc5ac68ad7e5fd8a1ab07b6e4cd675e8476e6f177388310b1831a3c";
aarch64-linux = "edd622f99cd628a90d46fe62cdf8ca473b8125680d4b46a82dfd6dfee6f71088";
aarch64-darwin = "03e6023e80b7d1b3e8df23dc69db53b4cc32c0663899f920f9bed8be504d7076";
headers = "1rar3c4qx3rylxjqryfr16bcqph8ivs0qgzmiqglyc9avgz9bn9z";
};
electron_12 = mkElectron "12.0.15" {
x86_64-linux = "0ba1803ba64f2c155dcfc5452a4b7c034390aaea6197395b6195693b5d0bf605";
x86_64-darwin = "7da73a8e3eb82a035f0d720709dbbb44cac0166d52ad4858fca9f3d96e6a32ed";
i686-linux = "597f5710e6e55e4fb75c769af6e3c7db1924f6795f417e3ff6b37c4da2ae39fc";
armv7l-linux = "01138b036812e5461a5871c2f8912baf0adf316df6597eb5c4fd3df8d41fb95e";
aarch64-linux = "fe24cf90e3768cafa9939a0107261a97b4f132f9dec24bf0d1d15b591cdad2d6";
aarch64-darwin = "c48323f1fd6cd4ebc67a248a83bd7c460a640bf32613d4fecf6be705f3d6803c";
headers = "1gbnjgf1pfbca2czn8j74rafiwmgc64nxi6drzm1b7qy2f6lxrl0";
electron_12 = mkElectron "12.0.16" {
x86_64-linux = "ba20154a752d93f15264619c05c4a08ce6a00fbe13e1f5655b0cca2d4053014c";
x86_64-darwin = "0279c9907f4c87861259e686463e910eac214ca4f3da6a4608974b4030347689";
i686-linux = "bacfb2135395bbc31de479f81e8392e5619337684e71f8973d4c04dab75a2569";
armv7l-linux = "b3ce3e60f5cb9135fa8cb8859f62194ab1ba1d792c6ee7c451877a96bd13d47c";
aarch64-linux = "d3ab4f93d32d8fe9674d807c4b216e141b75ee116f73458cc496c57032ebe66f";
aarch64-darwin = "d7f390dca9f6af1eb647b65217f470b89a2dc3b2360351e016e283db8f2ce7d8";
headers = "0b66a7nbi1mybqy0j8x6hnp9k0jzvr6lpp4zsazhbfpk47px116y";
};
electron_13 = mkElectron "13.1.7" {
x86_64-linux = "0bb38a5e45609a8c46dd6173447a45477651f3c2ea58f724807d79c8e4a8876e";
x86_64-darwin = "be8d05a7f853b9e7020c095c3d8075269832ccf821ca9785135884e6bc893df8";
i686-linux = "2a1c84ca8fd2a5b10b918bda11c5e546f4b77f85484a32af24ed44d6f877587d";
armv7l-linux = "3d4ed4cbd2ea9dd01d5ad09ed5b408762c69b5827be6fdae2e19681f2a159509";
aarch64-linux = "68e174bee2a686926ec2da193831aefc16ff8ec43b46e423044918e6d25d5925";
aarch64-darwin = "95489cc66c5638d95cde80189a5ae3477ce09c6cfa4c421b1e8bceea94f4dfba";
headers = "0zsnkgixch0c6ihg4drdx9a7gsl35wwfsphgiz80mhbw84slvq0n";
electron_13 = mkElectron "13.1.8" {
x86_64-linux = "a4630aadd7e510e46ffe30632a69183b240bc19db226c83fab43e998d080e0ef";
x86_64-darwin = "05c58efb89c69da53c8a512c2bd1ecb5996d996de16af3a2ed937e1f3bf126bb";
i686-linux = "59e6d0d13640ee674a0b1ba96d51704eba8be1220fadf922832f6f52a72e12ec";
armv7l-linux = "2b62f9874b4553782e8e5c7d7b667271fe4a5916adb2074a3b56ab9076076617";
aarch64-linux = "2071c389cff1196e3ce1be4f5b486372003335bc132a2dbf4dc3b983dd26ee52";
aarch64-darwin = "c870b31e30611a4d38557d6992bf5afe8d80f75548a427381aaf37d1d46af524";
headers = "1q5gbsxrvf2mqfm91llkzcdlqg8lkpgxqxmzfmrm7na1r01lb4hr";
};
}

View file

@ -0,0 +1,35 @@
{ lib, stdenv, fetchFromGitHub, rustPlatform, installShellFiles, Security }:
rustPlatform.buildRustPackage rec {
pname = "fnm";
version = "1.26.0";
src = fetchFromGitHub {
owner = "Schniz";
repo = pname;
rev = "v${version}";
sha256 = "sha256-wKtgMUt7QquT6mS3AI+XrZqbJOZxj6jlJi+7uC9w7xU=";
};
nativeBuildInputs = [ installShellFiles ];
buildInputs = lib.optionals stdenv.isDarwin [ Security ];
cargoSha256 = "sha256-TMhhCVVFTanKdbDp7L3ZaiNohWo5a/jFbQjdRiBlCkk=";
doCheck = false;
postInstall = ''
installShellCompletion --cmd fnm \
--bash <($out/bin/fnm completions --shell bash) \
--fish <($out/bin/fnm completions --shell fish) \
--zsh <($out/bin/fnm completions --shell zsh)
'';
meta = with lib; {
description = "Fast and simple Node.js version manager";
homepage = "https://github.com/Schniz/fnm";
license = licenses.gpl3Only;
maintainers = with maintainers; [ kidonng ];
};
}

View file

@ -0,0 +1,96 @@
{ lib, stdenv, fetchFromGitHub
, jdk, maven
, runtimeShell, makeWrapper
}:
let
platform =
if stdenv.isLinux then "linux"
else if stdenv.isDarwin then "mac"
else if stdenv.isWindows then "windows"
else throw "unsupported platform";
in
stdenv.mkDerivation rec {
pname = "java-language-server";
version = "0.2.38";
src = fetchFromGitHub {
owner = "georgewfraser";
repo = pname;
# commit hash is used as owner sometimes forgets to set tags. See https://github.com/georgewfraser/java-language-server/issues/104
rev = "1dfdc54d1f1e57646a0ec9c0b3f4a4f094bd9f17";
sha256 = "sha256-zkbl/SLg09XK2ZhJNzWEtvFCQBRQ62273M/2+4HV1Lk=";
};
fetchedMavenDeps = stdenv.mkDerivation {
name = "java-language-server-${version}-maven-deps";
inherit src;
buildInputs = [ maven ];
buildPhase = ''
runHook preBuild
mvn package -Dmaven.repo.local=$out -DskipTests
runHook postBuild
'';
installPhase = ''
runHook preInstall
find $out -type f \
-name \*.lastUpdated -or \
-name resolver-status.properties -or \
-name _remote.repositories \
-delete
runHook postInstall
'';
dontFixup = true;
dontConfigure = true;
outputHashAlgo = "sha256";
outputHashMode = "recursive";
outputHash = "sha256-YkcQKmm8oeEH7uyUzV/qGoe4LiI6o5wZ7o69qrO3oCA=";
};
nativeBuildInputs = [ maven jdk makeWrapper ];
dontConfigure = true;
buildPhase = ''
runHook preBuild
jlink \
${lib.optionalString (!stdenv.isDarwin) "--module-path './jdks/${platform}/jdk-13/jmods'"} \
--add-modules java.base,java.compiler,java.logging,java.sql,java.xml,jdk.compiler,jdk.jdi,jdk.unsupported,jdk.zipfs \
--output dist/${platform} \
--no-header-files \
--no-man-pages \
--compress 2
mvn package --offline -Dmaven.repo.local=${fetchedMavenDeps} -DskipTests
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/share/java/java-language-server
cp -r dist/classpath dist/*${platform}* $out/share/java/java-language-server
# a link is not used as lang_server_${platform}.sh makes use of "dirname $0" to access other files
makeWrapper $out/share/java/java-language-server/lang_server_${platform}.sh $out/bin/java-language-server
runHook postInstall
'';
meta = with lib; {
description = "A Java language server based on v3.0 of the protocol and implemented using the Java compiler API";
homepage = "https://github.com/georgewfraser/java-language-server";
license = licenses.mit;
maintainers = with maintainers; [ hqurve ];
platforms = platforms.all;
};
}

View file

@ -2,15 +2,15 @@
buildGoModule rec {
pname = "terraform-ls";
version = "0.20.0";
version = "0.20.1";
src = fetchFromGitHub {
owner = "hashicorp";
repo = pname;
rev = "v${version}";
sha256 = "sha256-G1i5SS1BY+h8qPPjrZ9HCnKX3o2VkwvpeHPNxW6rnuI=";
sha256 = "sha256-KEuqE09EvI00e2YwPaExuM9ji5Z7YDTOF+4jw6SvtKo=";
};
vendorSha256 = "sha256-nRElOa9IQ31Wh01wTFM6pazDYFnmR06vkU4CI8Gx4Vw=";
vendorSha256 = "sha256-hPa1xaYqKs++Ifw732bfs2VHW7DFRggO/faJgX4M2F4=";
ldflags = [ "-s" "-w" "-X main.version=v${version}" "-X main.prerelease=" ];

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "operator-sdk";
version = "1.5.0";
version = "1.10.0";
src = fetchFromGitHub {
owner = "operator-framework";
repo = pname;
rev = "v${version}";
sha256 = "sha256-95fTfUKoknGBIoc/ALd5w9X89Tl9DBxapl9EgWENsa0=";
sha256 = "1qvwk2gyawa3ihi5zqynrimxf426x22kplr3gdb91m9bx9dwqs3v";
};
vendorSha256 = "sha256-Sp0ml5tnsbnuyk3NkA80dmFj6IOiL/NeYYbEbr7EPRY=";
vendorSha256 = "1chfiqxljpq6rad4fnqf3dcri63qr9vb765kphw98ly4s0mwm1aj";
doCheck = false;

View file

@ -7,14 +7,14 @@
rustPlatform.buildRustPackage rec {
pname = "rust-analyzer-unwrapped";
version = "2021-08-02";
cargoSha256 = "10mdkqf6fqbzx49gwc283ms56yvrcdlvyk4y98jf33b8g5jmr8j5";
version = "2021-08-09";
cargoSha256 = "sha256-r01riAztIlwxRjvqQXofmqv5875nqQ0Qb9KALvKy4u8=";
src = fetchFromGitHub {
owner = "rust-analyzer";
repo = "rust-analyzer";
rev = version;
sha256 = "1nh1naaqc6f40raz31a0vwypaxm5drzdl2bwjfqx2gydy6051gcl";
sha256 = "sha256-l9F/cznYHxBdnb3NerIXzOMrzRnxdka0vExzUtKkBfw=";
};
buildAndTestSubdir = "crates/rust-analyzer";

View file

@ -1,5 +1,5 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl jq nix-prefetch
#!nix-shell -i bash -p curl jq nix-prefetch libarchive
set -euo pipefail
cd "$(dirname "$0")"
owner=rust-analyzer
@ -46,19 +46,31 @@ sed "s#cargoSha256 = \".*\"#cargoSha256 = \"$cargo_sha256\"#" \
# Update vscode extension
extension_ver=$(curl "https://github.com/rust-analyzer/rust-analyzer/releases/download/$ver/rust-analyzer.vsix" -L |
bsdtar -xf - --to-stdout extension/package.json | # Use bsdtar to extract vsix(zip).
jq --raw-output '.version')
echo "Extension version: $extension_ver"
build_deps="../../../../misc/vscode-extensions/rust-analyzer/build-deps"
# We need devDependencies to build vsix.
jq '{ name, version, dependencies: (.dependencies + .devDependencies) }' "$node_src/package.json" \
jq '{ name, version: $ver, dependencies: (.dependencies + .devDependencies) }' "$node_src/package.json" \
--arg ver "$extension_ver" \
>"$build_deps/package.json.new"
# FIXME: rollup@2.55.0 breaks the build: https://github.com/rollup/rollup/issues/4195
sed 's/"rollup": ".*"/"rollup": "=2.51.1"/' --in-place "$build_deps/package.json.new"
if cmp --quiet "$build_deps"/package.json{.new,}; then
echo "package.json not changed, skip updating nodePackages"
rm "$build_deps"/package.json.new
old_deps="$(jq '.dependencies' "$build_deps"/package.json)"
new_deps="$(jq '.dependencies' "$build_deps"/package.json.new)"
if [[ "$old_deps" == "$new_deps" ]]; then
echo "package.json dependencies not changed, do simple version change"
sed -E '/^ "rust-analyzer-build-deps/,+3 s/version = ".*"/version = "'"$extension_ver"'"/' \
--in-place ../../../node-packages/node-packages.nix
mv "$build_deps"/package.json{.new,}
else
echo "package.json changed, updating nodePackages"
echo "package.json dependencies changed, updating nodePackages"
mv "$build_deps"/package.json{.new,}
pushd "../../../node-packages"

View file

@ -4,7 +4,6 @@ assert zeroad-unwrapped.version == zeroad-data.version;
buildEnv {
name = "zeroad-${zeroad-unwrapped.version}";
inherit (zeroad-unwrapped) meta;
nativeBuildInputs = [ makeWrapper ];
@ -18,4 +17,8 @@ buildEnv {
--set ZEROAD_ROOTDIR "$out/share/0ad"
done
'';
meta = zeroad-unwrapped.meta // {
hydraPlatforms = [];
};
}

View file

@ -1,14 +1,5 @@
{stdenv, lib, fetchurl, makeDesktopItem, copyDesktopItems, cmake, pkg-config, zlib, bzip2, libjpeg, SDL, SDL_mixer, gtk2}:
{ stdenv, lib, fetchurl, makeDesktopItem, copyDesktopItems, cmake, pkg-config, zlib, bzip2, libjpeg, SDL, SDL_mixer, gtk2 }:
let
desktopItem = makeDesktopItem {
name = "ecwolf";
exec = "ecwolf";
comment = "Enhanced Wolfenstein 3D port";
desktopName = "Wolfenstein 3D";
categories = "Game;";
};
in
stdenv.mkDerivation rec {
pname = "ecwolf";
version = "1.3.3";
@ -18,10 +9,18 @@ stdenv.mkDerivation rec {
sha256 = "1sbdv672dz47la5a5qwmdi1v258k9kc5dkx7cdj2b6gk8nbm2srl";
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ zlib bzip2 libjpeg SDL SDL_mixer gtk2 copyDesktopItems ];
nativeBuildInputs = [ cmake copyDesktopItems pkg-config ];
buildInputs = [ zlib bzip2 libjpeg SDL SDL_mixer gtk2 ];
desktopItems = [ desktopItem ];
desktopItems = [
(makeDesktopItem {
name = "ecwolf";
exec = "ecwolf";
comment = "Enhanced Wolfenstein 3D port";
desktopName = "Wolfenstein 3D";
categories = "Game;";
})
];
# Change the location where the ecwolf executable looks for the ecwolf.pk3
# file.
@ -35,7 +34,7 @@ stdenv.mkDerivation rec {
sed -i -e "s|ecwolf.pk3|$out/share/ecwolf/ecwolf.pk3|" src/version.h
''
# Disable app bundle creation on Darwin. It fails, and it is not needed to run it from the Nix store
+ lib.optionalString (stdenv.isDarwin) ''
+ lib.optionalString stdenv.isDarwin ''
sed -i -e "s|include(\''${CMAKE_CURRENT_SOURCE_DIR}/macosx/install.txt)||" src/CMakeLists.txt
'';

View file

@ -1,39 +1,50 @@
{
lib, stdenv, makeWrapper, fetchFromGitHub,
imagemagick, i3lock-color, xdpyinfo, xrandr, bc, feh, procps, xrdb
{ fetchFromGitHub
, lib
, makeWrapper
, stdenv
# Dependencies (@see https://github.com/pavanjadhaw/betterlockscreen/blob/master/shell.nix)
, bc
, coreutils
, i3lock-color
, gawk
, gnugrep
, gnused
, imagemagick
, procps
, xdpyinfo
, xrandr
, xset
}:
stdenv.mkDerivation rec {
pname = "betterlockscreen";
version = "3.2.0";
version = "4.0.0";
src = fetchFromGitHub {
owner = "pavanjadhaw";
repo = "betterlockscreen";
rev = version;
sha256 = "sha256-UOMCTHtw1C+MiJL6AQ+8gqmmbqrs1QTzEi1Ar03PyMs=";
rev = "v${version}";
sha256 = "1ha1yddrcmbsdljdg3gn7i42csbw8h3zgf4i3mcsmbz8nsvc2wdc";
};
nativeBuildInputs = [ makeWrapper ];
patches = [ ./replace-i3lock.patch ];
installPhase = ''
runHook preInstall
installPhase =
let
PATH =
lib.makeBinPath
[imagemagick i3lock-color xdpyinfo xrandr bc feh procps xrdb];
in ''
mkdir -p $out/bin
cp betterlockscreen $out/bin/betterlockscreen
wrapProgram "$out/bin/betterlockscreen" --prefix PATH : "$out/bin:${PATH}"
'';
mkdir -p $out/bin
cp betterlockscreen $out/bin/betterlockscreen
wrapProgram "$out/bin/betterlockscreen" --prefix PATH : "$out/bin:${lib.makeBinPath [ bc coreutils i3lock-color gawk gnugrep gnused imagemagick procps xdpyinfo xrandr xset ]}"
runHook postInstall
'';
meta = with lib; {
description = "A simple minimal lock screen which allows you to cache images with different filters and lockscreen with blazing speed";
description = "Fast and sweet looking lockscreen for linux systems with effects!";
homepage = "https://github.com/pavanjadhaw/betterlockscreen";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ eyjhb ];
maintainers = with maintainers; [ eyjhb sebtm ];
};
}

View file

@ -1,14 +0,0 @@
diff --git a/betterlockscreen b/betterlockscreen
index 6dd06e0..746d820 100755
--- a/betterlockscreen
+++ b/betterlockscreen
@@ -87,7 +87,7 @@ prelock() {
lock() {
#$1 image path
- i3lock \
+ i3lock-color \
-c 00000000 \
-t -i "$1" \
--timepos='x+110:h-70' \

View file

@ -38,8 +38,8 @@ in ((vscode-utils.override { stdenv = gccStdenv; }).buildVscodeMarketplaceExtens
mktplcRef = {
name = "vsliveshare";
publisher = "ms-vsliveshare";
version = "1.0.4498";
sha256 = "01gg9jqkq9z05ckw0mnqfr769359j6h3z8ay6r17jj6m4mhy2m5g";
version = "1.0.4673";
sha256 = "1ys3lilc2r3n250s6pfvadrabnvqpzy74awjmvw79jrbvvk1iw1z";
};
}).overrideAttrs({ nativeBuildInputs ? [], buildInputs ? [], ... }: {
nativeBuildInputs = nativeBuildInputs ++ [

View file

@ -1,6 +1,6 @@
{
"name": "rust-analyzer",
"version": "0.4.0-dev",
"version": "0.2.702",
"dependencies": {
"https-proxy-agent": "^5.0.0",
"node-fetch": "^2.6.1",

View file

@ -12,9 +12,6 @@ let
pname = "rust-analyzer";
publisher = "matklad";
# Follow the unstable version of rust-analyzer, since the extension is not stable yet.
inherit (rust-analyzer) version;
build-deps = nodePackages."rust-analyzer-build-deps-../../misc/vscode-extensions/rust-analyzer/build-deps";
# FIXME: Making a new derivation to link `node_modules` and run `npm run package`
# will cause a build failure.
@ -22,13 +19,27 @@ let
src = "${rust-analyzer.src}/editors/code";
outputs = [ "vsix" "out" ];
releaseTag = rust-analyzer.version;
nativeBuildInputs = [ jq moreutils ];
# Follows https://github.com/rust-analyzer/rust-analyzer/blob/41949748a6123fd6061eb984a47f4fe780525e63/xtask/src/dist.rs#L39-L65
postInstall = ''
npm run package
mkdir $vsix
cp ${pname}.vsix $vsix/${pname}.zip
jq '
.version = $ENV.version |
.releaseTag = $ENV.releaseTag |
.enableProposedApi = false |
walk(del(.["$generated-start"]?) | del(.["$generated-end"]?))
' package.json | sponge package.json
mkdir -p $vsix
npx vsce package -o $vsix/${pname}.zip
'';
};
# Use the plugin version as in vscode marketplace, updated by update script.
inherit (vsix) version;
in
vscode-utils.buildVscodeExtension {
inherit version vsix;

View file

@ -1,5 +1,5 @@
{ lib, stdenv, fetchzip, autoreconfHook, pkg-config, glib, pcre
, json_c, flex, bison, dtc, pciutils, dmidecode, iasl, libbsd }:
, json_c, flex, bison, dtc, pciutils, dmidecode, acpica-tools, libbsd }:
stdenv.mkDerivation rec {
pname = "fwts";
@ -12,13 +12,13 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ glib pcre json_c flex bison dtc pciutils dmidecode iasl libbsd ];
buildInputs = [ glib pcre json_c flex bison dtc pciutils dmidecode acpica-tools libbsd ];
postPatch = ''
substituteInPlace src/lib/include/fwts_binpaths.h \
--replace "/usr/bin/lspci" "${pciutils}/bin/lspci" \
--replace "/usr/sbin/dmidecode" "${dmidecode}/bin/dmidecode" \
--replace "/usr/bin/iasl" "${iasl}/bin/iasl"
--replace "/usr/bin/iasl" "${acpica-tools}/bin/iasl"
'';
enableParallelBuilding = true;

View file

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
pname = "knot-dns";
version = "3.1.0";
version = "3.1.1";
src = fetchurl {
url = "https://secure.nic.cz/files/knot-dns/knot-${version}.tar.xz";
sha256 = "54323712e3cbc3d4c70a15777818fd2ff0de30cebb6c22e2946372b15b2653ed";
sha256 = "75bfb1acaca774ed3dd781dc74780298dc0fd51b54e4b61015e7487d6cd2067c";
};
outputs = [ "bin" "out" "dev" ];
@ -27,12 +27,6 @@ stdenv.mkDerivation rec {
./runtime-deps.patch
];
# Disable knotd journal tests on platforms that don't use 4k sysconf(_SC_PAGESIZE).
# The journal most likely works fine, but some of the tests currently don't.
postPatch = lib.optionalString (doCheck && stdenv.isDarwin && stdenv.isAarch64) ''
sed '/^\tknot\/test_journal\>/d' -i tests/Makefile.am
'';
nativeBuildInputs = [ pkg-config autoreconfHook ];
buildInputs = [
gnutls liburcu libidn2 libunistring

View file

@ -1,40 +1,71 @@
{ stdenv, lib ,fetchurl, scons, pkg-config, dbus, ncurses
, libusb1, docbook_xml_dtd_412, docbook_xsl, bc
{ stdenv
, lib
, fetchurl
# nativeBuildInputs
, scons
, pkg-config
# buildInputs
, dbus
, libusb1
, ncurses
, pps-tools
, python3Packages
# optional deps for GUI packages
, guiSupport ? true
, dbus-glib ? null, libX11 ? null, libXt ? null, libXpm ? null, libXaw ? null, libXext ? null
, gobject-introspection ? null, pango ? null, gdk-pixbuf ? null, atk ? null, wrapGAppsHook ? null
, dbus-glib
, libX11
, libXt
, libXpm
, libXaw
, libXext
, gobject-introspection
, pango
, gdk-pixbuf
, atk
, wrapGAppsHook
, libxslt, xmlto, gpsdUser ? "gpsd", gpsdGroup ? "dialout"
, pps-tools
, python3Packages
, gpsdUser ? "gpsd", gpsdGroup ? "dialout"
}:
stdenv.mkDerivation rec {
pname = "gpsd";
version = "3.22";
version = "3.23";
src = fetchurl {
url = "mirror://savannah/${pname}/${pname}-${version}.tar.gz";
sha256 = "18rplv1cd76ndb2wc91jarjmfm2nk508pykv1hir79bqbwmdygvq";
sha256 = "sha256-UiwjYqfrLXrDfqoVBPEq3tHDc0eah7oGzGeVl0tWe7w=";
};
# TODO: render & install HTML documentation using asciidoctor
nativeBuildInputs = [
scons pkg-config docbook_xml_dtd_412 docbook_xsl xmlto bc
python3Packages.python
pkg-config
python3Packages.wrapPython
]
++ lib.optionals guiSupport [ wrapGAppsHook gobject-introspection ];
scons
] ++ lib.optionals guiSupport [
gobject-introspection
wrapGAppsHook
];
buildInputs = [
python3Packages.python dbus ncurses
libxslt libusb1 pps-tools
]
++ lib.optionals guiSupport [
dbus-glib libX11 libXt libXpm libXaw libXext
gobject-introspection pango gdk-pixbuf atk
dbus
libusb1
ncurses
pps-tools
python3Packages.python
] ++ lib.optionals guiSupport [
atk
dbus-glib
gdk-pixbuf
gobject-introspection
libX11
libXaw
libXext
libXpm
libXt
pango
];
pythonPath = lib.optionals guiSupport [
@ -46,8 +77,6 @@ stdenv.mkDerivation rec {
./sconstruct-env-fixes.patch
];
# - leapfetch=no disables going online at build time to fetch leap-seconds
# info. See <gpsd-src>/build.txt for more info.
preBuild = ''
patchShebangs .
sed -e "s|systemd_dir = .*|systemd_dir = '$out/lib/systemd/system'|" -i SConscript
@ -57,6 +86,8 @@ stdenv.mkDerivation rec {
sconsFlags+=" python_libdir=$out/lib/${python3Packages.python.libPrefix}/site-packages"
'';
# - leapfetch=no disables going online at build time to fetch leap-seconds
# info. See <gpsd-src>/build.txt for more info.
sconsFlags = [
"leapfetch=no"
"gpsd_user=${gpsdUser}"
@ -73,6 +104,7 @@ stdenv.mkDerivation rec {
preInstall = ''
mkdir -p "$out/lib/udev/rules.d"
'';
installTargets = [ "install" "udev-install" ];
# remove binaries for x-less install because xgps sconsflag is partially broken
@ -103,7 +135,7 @@ stdenv.mkDerivation rec {
'';
homepage = "https://gpsd.gitlab.io/gpsd/index.html";
changelog = "https://gitlab.com/gpsd/gpsd/-/blob/release-${version}/NEWS";
license = licenses.bsd3;
license = licenses.bsd2;
platforms = platforms.linux;
maintainers = with maintainers; [ bjornfor rasendubi ];
};

View file

@ -2,7 +2,7 @@
# Do not edit!
{
version = "2021.8.4";
version = "2021.8.5";
components = {
"abode" = ps: with ps; [ abodepy ];
"accuweather" = ps: with ps; [ accuweather ];

View file

@ -138,7 +138,7 @@ let
extraBuildInputs = extraPackages py.pkgs;
# Don't forget to run parse-requirements.py after updating
hassVersion = "2021.8.4";
hassVersion = "2021.8.5";
in with py.pkgs; buildPythonApplication rec {
pname = "homeassistant";
@ -155,7 +155,7 @@ in with py.pkgs; buildPythonApplication rec {
owner = "home-assistant";
repo = "core";
rev = version;
sha256 = "0xnw6a1wfk0br0lyplhbp64fqbywa3ld3ggj0czyi1c0n8pqx7cq";
sha256 = "0alyr87vm0szljw1lgdsv7085rl0m9r16nwdprwskhcjlwllk1bh";
};
# leave this in, so users don't have to constantly update their downstream patch handling

View file

@ -4,11 +4,11 @@ buildPythonPackage rec {
# the frontend version corresponding to a specific home-assistant version can be found here
# https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
pname = "home-assistant-frontend";
version = "20210804.0";
version = "20210809.0";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-0VCukSHI4PXAecxHc1DJSQ1GrErenNb0K4OhSIgkQbs=";
sha256 = "sha256-5NWNDhQ7XKK9/tC+SbpwOm2MSA2VGHLcE1ggyl6vPkc=";
};
# there is nothing to strip in this package

View file

@ -1,11 +1,23 @@
{ lib, python3Packages, fetchFromGitHub }:
{ pkgs, nodejs, lib, python3Packages, fetchFromGitHub }:
let
nodeEnv = import ./node-env.nix {
inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
inherit pkgs nodejs;
libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
};
nodePackages = import ./node-packages.nix {
inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit;
inherit nodeEnv;
};
nodeDependencies = (nodePackages.shell.override (old: {
})).nodeDependencies;
in
with python3Packages; buildPythonApplication rec {
pname = "isso";
version = "0.12.5";
# no tests on PyPI
src = fetchFromGitHub {
owner = "posativ";
repo = pname;
@ -25,8 +37,16 @@ with python3Packages; buildPythonApplication rec {
nativeBuildInputs = [
cffi
nodejs
];
preBuild = ''
ln -s ${nodeDependencies}/lib/node_modules ./node_modules
export PATH="${nodeDependencies}/bin:$PATH"
make js
'';
checkInputs = [ nose ];
checkPhase = ''
@ -40,4 +60,3 @@ with python3Packages; buildPythonApplication rec {
maintainers = with maintainers; [ fgaz ];
};
}

View file

@ -0,0 +1,573 @@
# This file originates from node2nix
{lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile}:
let
# Workaround to cope with utillinux in Nixpkgs 20.09 and util-linux in Nixpkgs master
utillinux = if pkgs ? utillinux then pkgs.utillinux else pkgs.util-linux;
python = if nodejs ? python then nodejs.python else python2;
# Create a tar wrapper that filters all the 'Ignoring unknown extended header keyword' noise
tarWrapper = runCommand "tarWrapper" {} ''
mkdir -p $out/bin
cat > $out/bin/tar <<EOF
#! ${stdenv.shell} -e
$(type -p tar) "\$@" --warning=no-unknown-keyword --delay-directory-restore
EOF
chmod +x $out/bin/tar
'';
# Function that generates a TGZ file from a NPM project
buildNodeSourceDist =
{ name, version, src, ... }:
stdenv.mkDerivation {
name = "node-tarball-${name}-${version}";
inherit src;
buildInputs = [ nodejs ];
buildPhase = ''
export HOME=$TMPDIR
tgzFile=$(npm pack | tail -n 1) # Hooks to the pack command will add output (https://docs.npmjs.com/misc/scripts)
'';
installPhase = ''
mkdir -p $out/tarballs
mv $tgzFile $out/tarballs
mkdir -p $out/nix-support
echo "file source-dist $out/tarballs/$tgzFile" >> $out/nix-support/hydra-build-products
'';
};
includeDependencies = {dependencies}:
lib.optionalString (dependencies != [])
(lib.concatMapStrings (dependency:
''
# Bundle the dependencies of the package
mkdir -p node_modules
cd node_modules
# Only include dependencies if they don't exist. They may also be bundled in the package.
if [ ! -e "${dependency.name}" ]
then
${composePackage dependency}
fi
cd ..
''
) dependencies);
# Recursively composes the dependencies of a package
composePackage = { name, packageName, src, dependencies ? [], ... }@args:
builtins.addErrorContext "while evaluating node package '${packageName}'" ''
DIR=$(pwd)
cd $TMPDIR
unpackFile ${src}
# Make the base dir in which the target dependency resides first
mkdir -p "$(dirname "$DIR/${packageName}")"
if [ -f "${src}" ]
then
# Figure out what directory has been unpacked
packageDir="$(find . -maxdepth 1 -type d | tail -1)"
# Restore write permissions to make building work
find "$packageDir" -type d -exec chmod u+x {} \;
chmod -R u+w "$packageDir"
# Move the extracted tarball into the output folder
mv "$packageDir" "$DIR/${packageName}"
elif [ -d "${src}" ]
then
# Get a stripped name (without hash) of the source directory.
# On old nixpkgs it's already set internally.
if [ -z "$strippedName" ]
then
strippedName="$(stripHash ${src})"
fi
# Restore write permissions to make building work
chmod -R u+w "$strippedName"
# Move the extracted directory into the output folder
mv "$strippedName" "$DIR/${packageName}"
fi
# Unset the stripped name to not confuse the next unpack step
unset strippedName
# Include the dependencies of the package
cd "$DIR/${packageName}"
${includeDependencies { inherit dependencies; }}
cd ..
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
'';
pinpointDependencies = {dependencies, production}:
let
pinpointDependenciesFromPackageJSON = writeTextFile {
name = "pinpointDependencies.js";
text = ''
var fs = require('fs');
var path = require('path');
function resolveDependencyVersion(location, name) {
if(location == process.env['NIX_STORE']) {
return null;
} else {
var dependencyPackageJSON = path.join(location, "node_modules", name, "package.json");
if(fs.existsSync(dependencyPackageJSON)) {
var dependencyPackageObj = JSON.parse(fs.readFileSync(dependencyPackageJSON));
if(dependencyPackageObj.name == name) {
return dependencyPackageObj.version;
}
} else {
return resolveDependencyVersion(path.resolve(location, ".."), name);
}
}
}
function replaceDependencies(dependencies) {
if(typeof dependencies == "object" && dependencies !== null) {
for(var dependency in dependencies) {
var resolvedVersion = resolveDependencyVersion(process.cwd(), dependency);
if(resolvedVersion === null) {
process.stderr.write("WARNING: cannot pinpoint dependency: "+dependency+", context: "+process.cwd()+"\n");
} else {
dependencies[dependency] = resolvedVersion;
}
}
}
}
/* Read the package.json configuration */
var packageObj = JSON.parse(fs.readFileSync('./package.json'));
/* Pinpoint all dependencies */
replaceDependencies(packageObj.dependencies);
if(process.argv[2] == "development") {
replaceDependencies(packageObj.devDependencies);
}
replaceDependencies(packageObj.optionalDependencies);
/* Write the fixed package.json file */
fs.writeFileSync("package.json", JSON.stringify(packageObj, null, 2));
'';
};
in
''
node ${pinpointDependenciesFromPackageJSON} ${if production then "production" else "development"}
${lib.optionalString (dependencies != [])
''
if [ -d node_modules ]
then
cd node_modules
${lib.concatMapStrings (dependency: pinpointDependenciesOfPackage dependency) dependencies}
cd ..
fi
''}
'';
# Recursively traverses all dependencies of a package and pinpoints all
# dependencies in the package.json file to the versions that are actually
# being used.
pinpointDependenciesOfPackage = { packageName, dependencies ? [], production ? true, ... }@args:
''
if [ -d "${packageName}" ]
then
cd "${packageName}"
${pinpointDependencies { inherit dependencies production; }}
cd ..
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
fi
'';
# Extract the Node.js source code which is used to compile packages with
# native bindings
nodeSources = runCommand "node-sources" {} ''
tar --no-same-owner --no-same-permissions -xf ${nodejs.src}
mv node-* $out
'';
# Script that adds _integrity fields to all package.json files to prevent NPM from consulting the cache (that is empty)
addIntegrityFieldsScript = writeTextFile {
name = "addintegrityfields.js";
text = ''
var fs = require('fs');
var path = require('path');
function augmentDependencies(baseDir, dependencies) {
for(var dependencyName in dependencies) {
var dependency = dependencies[dependencyName];
// Open package.json and augment metadata fields
var packageJSONDir = path.join(baseDir, "node_modules", dependencyName);
var packageJSONPath = path.join(packageJSONDir, "package.json");
if(fs.existsSync(packageJSONPath)) { // Only augment packages that exist. Sometimes we may have production installs in which development dependencies can be ignored
console.log("Adding metadata fields to: "+packageJSONPath);
var packageObj = JSON.parse(fs.readFileSync(packageJSONPath));
if(dependency.integrity) {
packageObj["_integrity"] = dependency.integrity;
} else {
packageObj["_integrity"] = "sha1-000000000000000000000000000="; // When no _integrity string has been provided (e.g. by Git dependencies), add a dummy one. It does not seem to harm and it bypasses downloads.
}
if(dependency.resolved) {
packageObj["_resolved"] = dependency.resolved; // Adopt the resolved property if one has been provided
} else {
packageObj["_resolved"] = dependency.version; // Set the resolved version to the version identifier. This prevents NPM from cloning Git repositories.
}
if(dependency.from !== undefined) { // Adopt from property if one has been provided
packageObj["_from"] = dependency.from;
}
fs.writeFileSync(packageJSONPath, JSON.stringify(packageObj, null, 2));
}
// Augment transitive dependencies
if(dependency.dependencies !== undefined) {
augmentDependencies(packageJSONDir, dependency.dependencies);
}
}
}
if(fs.existsSync("./package-lock.json")) {
var packageLock = JSON.parse(fs.readFileSync("./package-lock.json"));
if(![1, 2].includes(packageLock.lockfileVersion)) {
process.stderr.write("Sorry, I only understand lock file versions 1 and 2!\n");
process.exit(1);
}
if(packageLock.dependencies !== undefined) {
augmentDependencies(".", packageLock.dependencies);
}
}
'';
};
# Reconstructs a package-lock file from the node_modules/ folder structure and package.json files with dummy sha1 hashes
reconstructPackageLock = writeTextFile {
name = "addintegrityfields.js";
text = ''
var fs = require('fs');
var path = require('path');
var packageObj = JSON.parse(fs.readFileSync("package.json"));
var lockObj = {
name: packageObj.name,
version: packageObj.version,
lockfileVersion: 1,
requires: true,
dependencies: {}
};
function augmentPackageJSON(filePath, dependencies) {
var packageJSON = path.join(filePath, "package.json");
if(fs.existsSync(packageJSON)) {
var packageObj = JSON.parse(fs.readFileSync(packageJSON));
dependencies[packageObj.name] = {
version: packageObj.version,
integrity: "sha1-000000000000000000000000000=",
dependencies: {}
};
processDependencies(path.join(filePath, "node_modules"), dependencies[packageObj.name].dependencies);
}
}
function processDependencies(dir, dependencies) {
if(fs.existsSync(dir)) {
var files = fs.readdirSync(dir);
files.forEach(function(entry) {
var filePath = path.join(dir, entry);
var stats = fs.statSync(filePath);
if(stats.isDirectory()) {
if(entry.substr(0, 1) == "@") {
// When we encounter a namespace folder, augment all packages belonging to the scope
var pkgFiles = fs.readdirSync(filePath);
pkgFiles.forEach(function(entry) {
if(stats.isDirectory()) {
var pkgFilePath = path.join(filePath, entry);
augmentPackageJSON(pkgFilePath, dependencies);
}
});
} else {
augmentPackageJSON(filePath, dependencies);
}
}
});
}
}
processDependencies("node_modules", lockObj.dependencies);
fs.writeFileSync("package-lock.json", JSON.stringify(lockObj, null, 2));
'';
};
prepareAndInvokeNPM = {packageName, bypassCache, reconstructLock, npmFlags, production}:
let
forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com";
in
''
# Pinpoint the versions of all dependencies to the ones that are actually being used
echo "pinpointing versions of dependencies..."
source $pinpointDependenciesScriptPath
# Patch the shebangs of the bundled modules to prevent them from
# calling executables outside the Nix store as much as possible
patchShebangs .
# Deploy the Node.js package by running npm install. Since the
# dependencies have been provided already by ourselves, it should not
# attempt to install them again, which is good, because we want to make
# it Nix's responsibility. If it needs to install any dependencies
# anyway (e.g. because the dependency parameters are
# incomplete/incorrect), it fails.
#
# The other responsibilities of NPM are kept -- version checks, build
# steps, postprocessing etc.
export HOME=$TMPDIR
cd "${packageName}"
runHook preRebuild
${lib.optionalString bypassCache ''
${lib.optionalString reconstructLock ''
if [ -f package-lock.json ]
then
echo "WARNING: Reconstruct lock option enabled, but a lock file already exists!"
echo "This will most likely result in version mismatches! We will remove the lock file and regenerate it!"
rm package-lock.json
else
echo "No package-lock.json file found, reconstructing..."
fi
node ${reconstructPackageLock}
''}
node ${addIntegrityFieldsScript}
''}
npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} rebuild
if [ "''${dontNpmInstall-}" != "1" ]
then
# NPM tries to download packages even when they already exist if npm-shrinkwrap is used.
rm -f npm-shrinkwrap.json
npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} install
fi
'';
# Builds and composes an NPM package including all its dependencies
buildNodePackage =
{ name
, packageName
, version
, dependencies ? []
, buildInputs ? []
, production ? true
, npmFlags ? ""
, dontNpmInstall ? false
, bypassCache ? false
, reconstructLock ? false
, preRebuild ? ""
, dontStrip ? true
, unpackPhase ? "true"
, buildPhase ? "true"
, meta ? {}
, ... }@args:
let
extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" "meta" ];
in
stdenv.mkDerivation ({
name = "${name}-${version}";
buildInputs = [ tarWrapper python nodejs ]
++ lib.optional (stdenv.isLinux) utillinux
++ lib.optional (stdenv.isDarwin) libtool
++ buildInputs;
inherit nodejs;
inherit dontStrip; # Stripping may fail a build for some package deployments
inherit dontNpmInstall preRebuild unpackPhase buildPhase;
compositionScript = composePackage args;
pinpointDependenciesScript = pinpointDependenciesOfPackage args;
passAsFile = [ "compositionScript" "pinpointDependenciesScript" ];
installPhase = ''
# Create and enter a root node_modules/ folder
mkdir -p $out/lib/node_modules
cd $out/lib/node_modules
# Compose the package and all its dependencies
source $compositionScriptPath
${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
# Create symlink to the deployed executable folder, if applicable
if [ -d "$out/lib/node_modules/.bin" ]
then
ln -s $out/lib/node_modules/.bin $out/bin
fi
# Create symlinks to the deployed manual page folders, if applicable
if [ -d "$out/lib/node_modules/${packageName}/man" ]
then
mkdir -p $out/share
for dir in "$out/lib/node_modules/${packageName}/man/"*
do
mkdir -p $out/share/man/$(basename "$dir")
for page in "$dir"/*
do
ln -s $page $out/share/man/$(basename "$dir")
done
done
fi
# Run post install hook, if provided
runHook postInstall
'';
meta = {
# default to Node.js' platforms
platforms = nodejs.meta.platforms;
} // meta;
} // extraArgs);
# Builds a node environment (a node_modules folder and a set of binaries)
buildNodeDependencies =
{ name
, packageName
, version
, src
, dependencies ? []
, buildInputs ? []
, production ? true
, npmFlags ? ""
, dontNpmInstall ? false
, bypassCache ? false
, reconstructLock ? false
, dontStrip ? true
, unpackPhase ? "true"
, buildPhase ? "true"
, ... }@args:
let
extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" ];
in
stdenv.mkDerivation ({
name = "node-dependencies-${name}-${version}";
buildInputs = [ tarWrapper python nodejs ]
++ lib.optional (stdenv.isLinux) utillinux
++ lib.optional (stdenv.isDarwin) libtool
++ buildInputs;
inherit dontStrip; # Stripping may fail a build for some package deployments
inherit dontNpmInstall unpackPhase buildPhase;
includeScript = includeDependencies { inherit dependencies; };
pinpointDependenciesScript = pinpointDependenciesOfPackage args;
passAsFile = [ "includeScript" "pinpointDependenciesScript" ];
installPhase = ''
mkdir -p $out/${packageName}
cd $out/${packageName}
source $includeScriptPath
# Create fake package.json to make the npm commands work properly
cp ${src}/package.json .
chmod 644 package.json
${lib.optionalString bypassCache ''
if [ -f ${src}/package-lock.json ]
then
cp ${src}/package-lock.json .
fi
''}
# Go to the parent folder to make sure that all packages are pinpointed
cd ..
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
# Expose the executables that were installed
cd ..
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
mv ${packageName} lib
ln -s $out/lib/node_modules/.bin $out/bin
'';
} // extraArgs);
# Builds a development shell
buildNodeShell =
{ name
, packageName
, version
, src
, dependencies ? []
, buildInputs ? []
, production ? true
, npmFlags ? ""
, dontNpmInstall ? false
, bypassCache ? false
, reconstructLock ? false
, dontStrip ? true
, unpackPhase ? "true"
, buildPhase ? "true"
, ... }@args:
let
nodeDependencies = buildNodeDependencies args;
in
stdenv.mkDerivation {
name = "node-shell-${name}-${version}";
buildInputs = [ python nodejs ] ++ lib.optional (stdenv.isLinux) utillinux ++ buildInputs;
buildCommand = ''
mkdir -p $out/bin
cat > $out/bin/shell <<EOF
#! ${stdenv.shell} -e
$shellHook
exec ${stdenv.shell}
EOF
chmod +x $out/bin/shell
'';
# Provide the dependencies in a development shell through the NODE_PATH environment variable
inherit nodeDependencies;
shellHook = lib.optionalString (dependencies != []) ''
export NODE_PATH=${nodeDependencies}/lib/node_modules
export PATH="${nodeDependencies}/bin:$PATH"
'';
};
in
{
buildNodeSourceDist = lib.makeOverridable buildNodeSourceDist;
buildNodePackage = lib.makeOverridable buildNodePackage;
buildNodeDependencies = lib.makeOverridable buildNodeDependencies;
buildNodeShell = lib.makeOverridable buildNodeShell;
}

558
pkgs/servers/isso/node-packages.nix generated Normal file
View file

@ -0,0 +1,558 @@
# This file has been generated by node2nix 1.9.0. Do not edit!
{nodeEnv, fetchurl, fetchgit, nix-gitignore, stdenv, lib, globalBuildInputs ? []}:
let
sources = {
"acorn-1.2.2" = {
name = "acorn";
packageName = "acorn";
version = "1.2.2";
src = fetchurl {
url = "https://registry.npmjs.org/acorn/-/acorn-1.2.2.tgz";
sha1 = "c8ce27de0acc76d896d2b1fad3df588d9e82f014";
};
};
"acorn-2.7.0" = {
name = "acorn";
packageName = "acorn";
version = "2.7.0";
src = fetchurl {
url = "https://registry.npmjs.org/acorn/-/acorn-2.7.0.tgz";
sha1 = "ab6e7d9d886aaca8b085bc3312b79a198433f0e7";
};
};
"acorn-globals-1.0.9" = {
name = "acorn-globals";
packageName = "acorn-globals";
version = "1.0.9";
src = fetchurl {
url = "https://registry.npmjs.org/acorn-globals/-/acorn-globals-1.0.9.tgz";
sha1 = "55bb5e98691507b74579d0513413217c380c54cf";
};
};
"align-text-0.1.4" = {
name = "align-text";
packageName = "align-text";
version = "0.1.4";
src = fetchurl {
url = "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz";
sha1 = "0cd90a561093f35d0a99256c22b7069433fad117";
};
};
"almond-0.3.3" = {
name = "almond";
packageName = "almond";
version = "0.3.3";
src = fetchurl {
url = "https://registry.npmjs.org/almond/-/almond-0.3.3.tgz";
sha1 = "a0e7c95ac7624d6417b4494b1e68bff693168a20";
};
};
"amdefine-1.0.1" = {
name = "amdefine";
packageName = "amdefine";
version = "1.0.1";
src = fetchurl {
url = "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz";
sha1 = "4a5282ac164729e93619bcfd3ad151f817ce91f5";
};
};
"asap-1.0.0" = {
name = "asap";
packageName = "asap";
version = "1.0.0";
src = fetchurl {
url = "https://registry.npmjs.org/asap/-/asap-1.0.0.tgz";
sha1 = "b2a45da5fdfa20b0496fc3768cc27c12fa916a7d";
};
};
"camelcase-1.2.1" = {
name = "camelcase";
packageName = "camelcase";
version = "1.2.1";
src = fetchurl {
url = "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz";
sha1 = "9bb5304d2e0b56698b2c758b08a3eaa9daa58a39";
};
};
"center-align-0.1.3" = {
name = "center-align";
packageName = "center-align";
version = "0.1.3";
src = fetchurl {
url = "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz";
sha1 = "aa0d32629b6ee972200411cbd4461c907bc2b7ad";
};
};
"character-parser-1.2.1" = {
name = "character-parser";
packageName = "character-parser";
version = "1.2.1";
src = fetchurl {
url = "https://registry.npmjs.org/character-parser/-/character-parser-1.2.1.tgz";
sha1 = "c0dde4ab182713b919b970959a123ecc1a30fcd6";
};
};
"clean-css-3.4.28" = {
name = "clean-css";
packageName = "clean-css";
version = "3.4.28";
src = fetchurl {
url = "https://registry.npmjs.org/clean-css/-/clean-css-3.4.28.tgz";
sha1 = "bf1945e82fc808f55695e6ddeaec01400efd03ff";
};
};
"cliui-2.1.0" = {
name = "cliui";
packageName = "cliui";
version = "2.1.0";
src = fetchurl {
url = "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz";
sha1 = "4b475760ff80264c762c3a1719032e91c7fea0d1";
};
};
"commander-2.6.0" = {
name = "commander";
packageName = "commander";
version = "2.6.0";
src = fetchurl {
url = "https://registry.npmjs.org/commander/-/commander-2.6.0.tgz";
sha1 = "9df7e52fb2a0cb0fb89058ee80c3104225f37e1d";
};
};
"commander-2.8.1" = {
name = "commander";
packageName = "commander";
version = "2.8.1";
src = fetchurl {
url = "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz";
sha1 = "06be367febfda0c330aa1e2a072d3dc9762425d4";
};
};
"constantinople-3.0.2" = {
name = "constantinople";
packageName = "constantinople";
version = "3.0.2";
src = fetchurl {
url = "https://registry.npmjs.org/constantinople/-/constantinople-3.0.2.tgz";
sha1 = "4b945d9937907bcd98ee575122c3817516544141";
};
};
"css-1.0.8" = {
name = "css";
packageName = "css";
version = "1.0.8";
src = fetchurl {
url = "https://registry.npmjs.org/css/-/css-1.0.8.tgz";
sha1 = "9386811ca82bccc9ee7fb5a732b1e2a317c8a3e7";
};
};
"css-parse-1.0.4" = {
name = "css-parse";
packageName = "css-parse";
version = "1.0.4";
src = fetchurl {
url = "https://registry.npmjs.org/css-parse/-/css-parse-1.0.4.tgz";
sha1 = "38b0503fbf9da9f54e9c1dbda60e145c77117bdd";
};
};
"css-stringify-1.0.5" = {
name = "css-stringify";
packageName = "css-stringify";
version = "1.0.5";
src = fetchurl {
url = "https://registry.npmjs.org/css-stringify/-/css-stringify-1.0.5.tgz";
sha1 = "b0d042946db2953bb9d292900a6cb5f6d0122031";
};
};
"decamelize-1.2.0" = {
name = "decamelize";
packageName = "decamelize";
version = "1.2.0";
src = fetchurl {
url = "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz";
sha1 = "f6534d15148269b20352e7bee26f501f9a191290";
};
};
"graceful-readlink-1.0.1" = {
name = "graceful-readlink";
packageName = "graceful-readlink";
version = "1.0.1";
src = fetchurl {
url = "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz";
sha1 = "4cafad76bc62f02fa039b2f94e9a3dd3a391a725";
};
};
"is-buffer-1.1.6" = {
name = "is-buffer";
packageName = "is-buffer";
version = "1.1.6";
src = fetchurl {
url = "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz";
sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==";
};
};
"is-promise-1.0.1" = {
name = "is-promise";
packageName = "is-promise";
version = "1.0.1";
src = fetchurl {
url = "https://registry.npmjs.org/is-promise/-/is-promise-1.0.1.tgz";
sha1 = "31573761c057e33c2e91aab9e96da08cefbe76e5";
};
};
"is-promise-2.2.2" = {
name = "is-promise";
packageName = "is-promise";
version = "2.2.2";
src = fetchurl {
url = "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz";
sha512 = "+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==";
};
};
"jade-1.11.0" = {
name = "jade";
packageName = "jade";
version = "1.11.0";
src = fetchurl {
url = "https://registry.npmjs.org/jade/-/jade-1.11.0.tgz";
sha1 = "9c80e538c12d3fb95c8d9bb9559fa0cc040405fd";
};
};
"jstransformer-0.0.2" = {
name = "jstransformer";
packageName = "jstransformer";
version = "0.0.2";
src = fetchurl {
url = "https://registry.npmjs.org/jstransformer/-/jstransformer-0.0.2.tgz";
sha1 = "7aae29a903d196cfa0973d885d3e47947ecd76ab";
};
};
"kind-of-3.2.2" = {
name = "kind-of";
packageName = "kind-of";
version = "3.2.2";
src = fetchurl {
url = "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz";
sha1 = "31ea21a734bab9bbb0f32466d893aea51e4a3c64";
};
};
"lazy-cache-1.0.4" = {
name = "lazy-cache";
packageName = "lazy-cache";
version = "1.0.4";
src = fetchurl {
url = "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz";
sha1 = "a1d78fc3a50474cb80845d3b3b6e1da49a446e8e";
};
};
"longest-1.0.1" = {
name = "longest";
packageName = "longest";
version = "1.0.1";
src = fetchurl {
url = "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz";
sha1 = "30a0b2da38f73770e8294a0d22e6625ed77d0097";
};
};
"minimist-1.2.5" = {
name = "minimist";
packageName = "minimist";
version = "1.2.5";
src = fetchurl {
url = "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz";
sha512 = "FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==";
};
};
"mkdirp-0.5.5" = {
name = "mkdirp";
packageName = "mkdirp";
version = "0.5.5";
src = fetchurl {
url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz";
sha512 = "NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==";
};
};
"optimist-0.3.7" = {
name = "optimist";
packageName = "optimist";
version = "0.3.7";
src = fetchurl {
url = "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz";
sha1 = "c90941ad59e4273328923074d2cf2e7cbc6ec0d9";
};
};
"promise-2.0.0" = {
name = "promise";
packageName = "promise";
version = "2.0.0";
src = fetchurl {
url = "https://registry.npmjs.org/promise/-/promise-2.0.0.tgz";
sha1 = "46648aa9d605af5d2e70c3024bf59436da02b80e";
};
};
"promise-6.1.0" = {
name = "promise";
packageName = "promise";
version = "6.1.0";
src = fetchurl {
url = "https://registry.npmjs.org/promise/-/promise-6.1.0.tgz";
sha1 = "2ce729f6b94b45c26891ad0602c5c90e04c6eef6";
};
};
"repeat-string-1.6.1" = {
name = "repeat-string";
packageName = "repeat-string";
version = "1.6.1";
src = fetchurl {
url = "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz";
sha1 = "8dcae470e1c88abc2d600fff4a776286da75e637";
};
};
"requirejs-2.3.6" = {
name = "requirejs";
packageName = "requirejs";
version = "2.3.6";
src = fetchurl {
url = "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz";
sha512 = "ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg==";
};
};
"requirejs-text-2.0.16" = {
name = "requirejs-text";
packageName = "requirejs-text";
version = "2.0.16";
src = fetchurl {
url = "https://registry.npmjs.org/requirejs-text/-/requirejs-text-2.0.16.tgz";
sha512 = "XrzjeTb1pwzIWmkz8qnUiM20gENgiwB+66IciNuziwlaPAJsYQsQPSYyQ1kD4tGKGZxTisIfDbOHk02DpI/76Q==";
};
};
"right-align-0.1.3" = {
name = "right-align";
packageName = "right-align";
version = "0.1.3";
src = fetchurl {
url = "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz";
sha1 = "61339b722fe6a3515689210d24e14c96148613ef";
};
};
"source-map-0.1.43" = {
name = "source-map";
packageName = "source-map";
version = "0.1.43";
src = fetchurl {
url = "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz";
sha1 = "c24bc146ca517c1471f5dacbe2571b2b7f9e3346";
};
};
"source-map-0.4.4" = {
name = "source-map";
packageName = "source-map";
version = "0.4.4";
src = fetchurl {
url = "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz";
sha1 = "eba4f5da9c0dc999de68032d8b4f76173652036b";
};
};
"source-map-0.5.7" = {
name = "source-map";
packageName = "source-map";
version = "0.5.7";
src = fetchurl {
url = "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz";
sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc";
};
};
"transformers-2.1.0" = {
name = "transformers";
packageName = "transformers";
version = "2.1.0";
src = fetchurl {
url = "https://registry.npmjs.org/transformers/-/transformers-2.1.0.tgz";
sha1 = "5d23cb35561dd85dc67fb8482309b47d53cce9a7";
};
};
"uglify-js-2.2.5" = {
name = "uglify-js";
packageName = "uglify-js";
version = "2.2.5";
src = fetchurl {
url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz";
sha1 = "a6e02a70d839792b9780488b7b8b184c095c99c7";
};
};
"uglify-js-2.8.29" = {
name = "uglify-js";
packageName = "uglify-js";
version = "2.8.29";
src = fetchurl {
url = "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz";
sha1 = "29c5733148057bb4e1f75df35b7a9cb72e6a59dd";
};
};
"uglify-to-browserify-1.0.2" = {
name = "uglify-to-browserify";
packageName = "uglify-to-browserify";
version = "1.0.2";
src = fetchurl {
url = "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz";
sha1 = "6e0924d6bda6b5afe349e39a6d632850a0f882b7";
};
};
"void-elements-2.0.1" = {
name = "void-elements";
packageName = "void-elements";
version = "2.0.1";
src = fetchurl {
url = "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz";
sha1 = "c066afb582bb1cb4128d60ea92392e94d5e9dbec";
};
};
"window-size-0.1.0" = {
name = "window-size";
packageName = "window-size";
version = "0.1.0";
src = fetchurl {
url = "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz";
sha1 = "5438cd2ea93b202efa3a19fe8887aee7c94f9c9d";
};
};
"with-4.0.3" = {
name = "with";
packageName = "with";
version = "4.0.3";
src = fetchurl {
url = "https://registry.npmjs.org/with/-/with-4.0.3.tgz";
sha1 = "eefd154e9e79d2c8d3417b647a8f14d9fecce14e";
};
};
"wordwrap-0.0.2" = {
name = "wordwrap";
packageName = "wordwrap";
version = "0.0.2";
src = fetchurl {
url = "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz";
sha1 = "b79669bb42ecb409f83d583cad52ca17eaa1643f";
};
};
"wordwrap-0.0.3" = {
name = "wordwrap";
packageName = "wordwrap";
version = "0.0.3";
src = fetchurl {
url = "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz";
sha1 = "a3d5da6cd5c0bc0008d37234bbaf1bed63059107";
};
};
"yargs-3.10.0" = {
name = "yargs";
packageName = "yargs";
version = "3.10.0";
src = fetchurl {
url = "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz";
sha1 = "f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1";
};
};
};
args = {
name = "isso";
packageName = "isso";
version = "latest";
src = ./.;
dependencies = [
sources."acorn-2.7.0"
sources."acorn-globals-1.0.9"
sources."align-text-0.1.4"
sources."almond-0.3.3"
sources."amdefine-1.0.1"
sources."asap-1.0.0"
sources."camelcase-1.2.1"
sources."center-align-0.1.3"
sources."character-parser-1.2.1"
(sources."clean-css-3.4.28" // {
dependencies = [
sources."commander-2.8.1"
];
})
(sources."cliui-2.1.0" // {
dependencies = [
sources."wordwrap-0.0.2"
];
})
sources."commander-2.6.0"
sources."constantinople-3.0.2"
sources."css-1.0.8"
sources."css-parse-1.0.4"
sources."css-stringify-1.0.5"
sources."decamelize-1.2.0"
sources."graceful-readlink-1.0.1"
sources."is-buffer-1.1.6"
sources."is-promise-2.2.2"
sources."jade-1.11.0"
sources."jstransformer-0.0.2"
sources."kind-of-3.2.2"
sources."lazy-cache-1.0.4"
sources."longest-1.0.1"
sources."minimist-1.2.5"
sources."mkdirp-0.5.5"
sources."optimist-0.3.7"
sources."promise-6.1.0"
sources."repeat-string-1.6.1"
sources."requirejs-2.3.6"
sources."requirejs-text-2.0.16"
sources."right-align-0.1.3"
sources."source-map-0.4.4"
(sources."transformers-2.1.0" // {
dependencies = [
sources."is-promise-1.0.1"
sources."promise-2.0.0"
sources."source-map-0.1.43"
sources."uglify-js-2.2.5"
];
})
(sources."uglify-js-2.8.29" // {
dependencies = [
sources."source-map-0.5.7"
];
})
sources."uglify-to-browserify-1.0.2"
sources."void-elements-2.0.1"
sources."window-size-0.1.0"
(sources."with-4.0.3" // {
dependencies = [
sources."acorn-1.2.2"
];
})
sources."wordwrap-0.0.3"
sources."yargs-3.10.0"
];
buildInputs = globalBuildInputs;
meta = {
description = "lightweight Disquis alternative";
license = "MIT";
};
production = false;
bypassCache = true;
reconstructLock = true;
};
in
{
args = args;
sources = sources;
tarball = nodeEnv.buildNodeSourceDist args;
package = nodeEnv.buildNodePackage args;
shell = nodeEnv.buildNodeShell args;
nodeDependencies = nodeEnv.buildNodeDependencies (lib.overrideExisting args {
src = stdenv.mkDerivation {
name = args.name + "-package-json";
src = nix-gitignore.gitignoreSourcePure [
"*"
"!package.json"
"!package-lock.json"
] args.src;
dontBuild = true;
installPhase = "mkdir -p $out; cp -r ./* $out;";
};
});
}

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