From fbd038eca24703d8c5cc3ce28adda3e71c5fabf4 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Sun, 2 Jan 2022 14:11:21 +0100 Subject: [PATCH 01/40] nixos/lib: init (experimental) --- flake.nix | 3 +++ nixos/lib/default.nix | 47 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 nixos/lib/default.nix diff --git a/flake.nix b/flake.nix index 1e20fcd40ebe..3275370017db 100644 --- a/flake.nix +++ b/flake.nix @@ -18,6 +18,9 @@ in { lib = lib.extend (final: prev: { + + nixos = import ./nixos/lib { lib = final; }; + nixosSystem = { modules, ... } @ args: import ./nixos/lib/eval-config.nix (args // { modules = diff --git a/nixos/lib/default.nix b/nixos/lib/default.nix new file mode 100644 index 000000000000..6479b7144907 --- /dev/null +++ b/nixos/lib/default.nix @@ -0,0 +1,47 @@ +let + # The warning is in a top-level let binding so it is only printed once. + experimentalWarning = warn "lib.nixos.evalModules is experimental and subject to change. See nixos/lib/default.nix" null; + inherit (nonExtendedLib) warn; + nonExtendedLib = import ../../lib; +in +{ lib ? nonExtendedLib, ... }: +let + + /* + Invoke NixOS. Unlike traditional NixOS, this does not include all modules. + Any such modules have to be explicitly added via the `modules` parameter, + or imported using `imports` in a module. + + A minimal module list improves NixOS evaluation performance and allows + modules to be independently usable, supporting new use cases. + + Parameters: + + modules: A list of modules that constitute the configuration. + + specialArgs: An attribute set of module arguments. Unlike + `config._module.args`, these are available for use in + `imports`. + `config._module.args` should be preferred when possible. + + Return: + + An attribute set containing `config.system.build.toplevel` among other + attributes. See `lib.evalModules` in the Nixpkgs library. + + */ + evalModules = { + prefix ? [], + modules ? [], + specialArgs ? {}, + }: lib.evalModules { + inherit prefix modules; + specialArgs = { + modulesPath = builtins.toString ../modules; + } // specialArgs; + }; + +in +{ + evalModules = builtins.seq experimentalWarning evalModules; +} From be3967e351b6e1b010e95ec16217ed2db33da0c5 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Fri, 3 Dec 2021 12:04:36 +0000 Subject: [PATCH 02/40] nixos/nixpkgs.nix: Make independent (cherry picked from commit 62e7f0eda1c5acf0beb13a00a23f577912a6b8eb) --- nixos/modules/misc/nixpkgs.nix | 5 +++++ nixos/modules/misc/nixpkgs/test.nix | 8 ++++++++ nixos/tests/all-tests.nix | 4 ++++ 3 files changed, 17 insertions(+) create mode 100644 nixos/modules/misc/nixpkgs/test.nix diff --git a/nixos/modules/misc/nixpkgs.nix b/nixos/modules/misc/nixpkgs.nix index 2e0c8e4cf2c4..69967c8a7601 100644 --- a/nixos/modules/misc/nixpkgs.nix +++ b/nixos/modules/misc/nixpkgs.nix @@ -64,6 +64,11 @@ let in { + imports = [ + ./assertions.nix + ./meta.nix + ]; + options.nixpkgs = { pkgs = mkOption { diff --git a/nixos/modules/misc/nixpkgs/test.nix b/nixos/modules/misc/nixpkgs/test.nix new file mode 100644 index 000000000000..ec5fab9fb4a5 --- /dev/null +++ b/nixos/modules/misc/nixpkgs/test.nix @@ -0,0 +1,8 @@ +{ evalMinimalConfig, pkgs, lib, stdenv }: +lib.recurseIntoAttrs { + invokeNixpkgsSimple = + (evalMinimalConfig ({ config, modulesPath, ... }: { + imports = [ (modulesPath + "/misc/nixpkgs.nix") ]; + nixpkgs.system = stdenv.hostPlatform.system; + }))._module.args.pkgs.hello; +} diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 4f62980e8e91..d7971f6c2eb7 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -19,6 +19,9 @@ let handleTestOn = systems: path: args: if elem system systems then handleTest path args else {}; + + nixosLib = import ../lib {}; + evalMinimalConfig = module: nixosLib.evalModules { modules = [ module ]; }; in { _3proxy = handleTest ./3proxy.nix {}; @@ -327,6 +330,7 @@ in nix-serve-ssh = handleTest ./nix-serve-ssh.nix {}; nixops = handleTest ./nixops/default.nix {}; nixos-generate-config = handleTest ./nixos-generate-config.nix {}; + nixpkgs = pkgs.callPackage ../modules/misc/nixpkgs/test.nix { inherit evalMinimalConfig; }; node-red = handleTest ./node-red.nix {}; nomad = handleTest ./nomad.nix {}; novacomd = handleTestOn ["x86_64-linux"] ./novacomd.nix {}; From e31e096b667f671aea424681f2b4a65e385efe50 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Tue, 4 Jan 2022 21:54:35 +0100 Subject: [PATCH 03/40] nixos/lib: Move evalModules into its own file --- nixos/lib/default.nix | 52 ++++++------------------------- nixos/lib/eval-config-minimal.nix | 47 ++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+), 43 deletions(-) create mode 100644 nixos/lib/eval-config-minimal.nix diff --git a/nixos/lib/default.nix b/nixos/lib/default.nix index 6479b7144907..41ae2d863e05 100644 --- a/nixos/lib/default.nix +++ b/nixos/lib/default.nix @@ -1,47 +1,13 @@ +{ lib ? import ../../lib, ... }: let - # The warning is in a top-level let binding so it is only printed once. - experimentalWarning = warn "lib.nixos.evalModules is experimental and subject to change. See nixos/lib/default.nix" null; - inherit (nonExtendedLib) warn; - nonExtendedLib = import ../../lib; -in -{ lib ? nonExtendedLib, ... }: -let - - /* - Invoke NixOS. Unlike traditional NixOS, this does not include all modules. - Any such modules have to be explicitly added via the `modules` parameter, - or imported using `imports` in a module. - - A minimal module list improves NixOS evaluation performance and allows - modules to be independently usable, supporting new use cases. - - Parameters: - - modules: A list of modules that constitute the configuration. - - specialArgs: An attribute set of module arguments. Unlike - `config._module.args`, these are available for use in - `imports`. - `config._module.args` should be preferred when possible. - - Return: - - An attribute set containing `config.system.build.toplevel` among other - attributes. See `lib.evalModules` in the Nixpkgs library. - - */ - evalModules = { - prefix ? [], - modules ? [], - specialArgs ? {}, - }: lib.evalModules { - inherit prefix modules; - specialArgs = { - modulesPath = builtins.toString ../modules; - } // specialArgs; - }; - + eval-config-minimal = import ./eval-config-minimal.nix { inherit lib; }; in +/* + This attribute set appears as lib.nixos in the flake, or can be imported + using a binding like `nixosLib = import (nixpkgs + "/nixos/lib") { }`. +*/ { - evalModules = builtins.seq experimentalWarning evalModules; + inherit (eval-config-minimal) + evalModules + ; } diff --git a/nixos/lib/eval-config-minimal.nix b/nixos/lib/eval-config-minimal.nix new file mode 100644 index 000000000000..6479b7144907 --- /dev/null +++ b/nixos/lib/eval-config-minimal.nix @@ -0,0 +1,47 @@ +let + # The warning is in a top-level let binding so it is only printed once. + experimentalWarning = warn "lib.nixos.evalModules is experimental and subject to change. See nixos/lib/default.nix" null; + inherit (nonExtendedLib) warn; + nonExtendedLib = import ../../lib; +in +{ lib ? nonExtendedLib, ... }: +let + + /* + Invoke NixOS. Unlike traditional NixOS, this does not include all modules. + Any such modules have to be explicitly added via the `modules` parameter, + or imported using `imports` in a module. + + A minimal module list improves NixOS evaluation performance and allows + modules to be independently usable, supporting new use cases. + + Parameters: + + modules: A list of modules that constitute the configuration. + + specialArgs: An attribute set of module arguments. Unlike + `config._module.args`, these are available for use in + `imports`. + `config._module.args` should be preferred when possible. + + Return: + + An attribute set containing `config.system.build.toplevel` among other + attributes. See `lib.evalModules` in the Nixpkgs library. + + */ + evalModules = { + prefix ? [], + modules ? [], + specialArgs ? {}, + }: lib.evalModules { + inherit prefix modules; + specialArgs = { + modulesPath = builtins.toString ../modules; + } // specialArgs; + }; + +in +{ + evalModules = builtins.seq experimentalWarning evalModules; +} From 25caf736d5c16fa0c026c26ff4e7b7779fcbb7ae Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Tue, 4 Jan 2022 22:00:00 +0100 Subject: [PATCH 04/40] nixos/eval-config: Layer on top of nixos/eval-config-minimal --- nixos/lib/eval-config-minimal.nix | 4 ++-- nixos/lib/eval-config.nix | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/nixos/lib/eval-config-minimal.nix b/nixos/lib/eval-config-minimal.nix index 6479b7144907..a0fcf2389779 100644 --- a/nixos/lib/eval-config-minimal.nix +++ b/nixos/lib/eval-config-minimal.nix @@ -4,7 +4,7 @@ let inherit (nonExtendedLib) warn; nonExtendedLib = import ../../lib; in -{ lib ? nonExtendedLib, ... }: +{ lib ? nonExtendedLib, bypassEvalModulesWarning ? false, ... }: let /* @@ -43,5 +43,5 @@ let in { - evalModules = builtins.seq experimentalWarning evalModules; + evalModules = builtins.seq (if bypassEvalModulesWarning then null else experimentalWarning) evalModules; } diff --git a/nixos/lib/eval-config.nix b/nixos/lib/eval-config.nix index 62d09b8173bd..8ea82b30f16d 100644 --- a/nixos/lib/eval-config.nix +++ b/nixos/lib/eval-config.nix @@ -33,6 +33,8 @@ let pkgs_ = pkgs; in let + evalModulesMinimal = (import ./eval-config-minimal.nix { inherit lib; bypassEvalModulesWarning = true; }).evalModules; + pkgsModule = rec { _file = ./eval-config.nix; key = _file; @@ -70,11 +72,9 @@ let }; allUserModules = modules ++ legacyModules; - noUserModules = lib.evalModules ({ - inherit prefix; + noUserModules = evalModulesMinimal ({ + inherit prefix specialArgs; modules = baseModules ++ extraModules ++ [ pkgsModule modulesModule ]; - specialArgs = - { modulesPath = builtins.toString ../modules; } // specialArgs; }); # Extra arguments that are useful for constructing a similar configuration. From d3f956aba324a18bfafde59138929b320a9b4a2b Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Fri, 7 Jan 2022 01:09:46 +0100 Subject: [PATCH 05/40] nixos/lib: Add featureFlags, use it for minimal modules --- nixos/lib/default.nix | 24 ++++++++++++++++++++++-- nixos/lib/eval-config-minimal.nix | 13 +++++-------- nixos/tests/all-tests.nix | 6 +++++- 3 files changed, 32 insertions(+), 11 deletions(-) diff --git a/nixos/lib/default.nix b/nixos/lib/default.nix index 41ae2d863e05..2b3056e01457 100644 --- a/nixos/lib/default.nix +++ b/nixos/lib/default.nix @@ -1,5 +1,25 @@ -{ lib ? import ../../lib, ... }: let + # The warning is in a top-level let binding so it is only printed once. + minimalModulesWarning = warn "lib.nixos.evalModules is experimental and subject to change. See nixos/lib/default.nix" null; + inherit (nonExtendedLib) warn; + nonExtendedLib = import ../../lib; +in +{ # Optional. Allows an extended `lib` to be used instead of the regular Nixpkgs lib. + lib ? nonExtendedLib, + + # Feature flags allow you to opt in to unfinished code. These may change some + # behavior or disable warnings. + featureFlags ? {}, + + # This file itself is rather new, so we accept unknown parameters to be forward + # compatible. This is generally not recommended, because typos go undetected. + ... +}: +let + seqIf = cond: if cond then builtins.seq else a: b: b; + # If cond, force `a` before returning any attr + seqAttrsIf = cond: a: lib.mapAttrs (_: v: seqIf cond a v); + eval-config-minimal = import ./eval-config-minimal.nix { inherit lib; }; in /* @@ -7,7 +27,7 @@ in using a binding like `nixosLib = import (nixpkgs + "/nixos/lib") { }`. */ { - inherit (eval-config-minimal) + inherit (seqAttrsIf (!featureFlags?minimalModules) minimalModulesWarning eval-config-minimal) evalModules ; } diff --git a/nixos/lib/eval-config-minimal.nix b/nixos/lib/eval-config-minimal.nix index a0fcf2389779..ed26e623b2f1 100644 --- a/nixos/lib/eval-config-minimal.nix +++ b/nixos/lib/eval-config-minimal.nix @@ -1,10 +1,7 @@ -let - # The warning is in a top-level let binding so it is only printed once. - experimentalWarning = warn "lib.nixos.evalModules is experimental and subject to change. See nixos/lib/default.nix" null; - inherit (nonExtendedLib) warn; - nonExtendedLib = import ../../lib; -in -{ lib ? nonExtendedLib, bypassEvalModulesWarning ? false, ... }: + +# DO NOT IMPORT. Use nixpkgsFlake.lib.nixos, or import (nixpkgs + "/nixos/lib") +{ lib }: # read -^ + let /* @@ -43,5 +40,5 @@ let in { - evalModules = builtins.seq (if bypassEvalModulesWarning then null else experimentalWarning) evalModules; + inherit evalModules; } diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index d7971f6c2eb7..0dee1a0e8b05 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -20,7 +20,11 @@ let if elem system systems then handleTest path args else {}; - nixosLib = import ../lib {}; + nixosLib = import ../lib { + # Experimental features need testing too, but there's no point in warning + # about it, so we enable the feature flag. + featureFlags.minimalModules = {}; + }; evalMinimalConfig = module: nixosLib.evalModules { modules = [ module ]; }; in { From 3168017b90440220c69d4ba8f39f469024b4cafe Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Fri, 7 Jan 2022 01:34:30 +0100 Subject: [PATCH 06/40] nixos/lib: Clarify that nixos.evalModules impl is NOT experimental --- nixos/lib/eval-config-minimal.nix | 7 ++++++- nixos/lib/eval-config.nix | 6 +++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/nixos/lib/eval-config-minimal.nix b/nixos/lib/eval-config-minimal.nix index ed26e623b2f1..d45b9ffd4261 100644 --- a/nixos/lib/eval-config-minimal.nix +++ b/nixos/lib/eval-config-minimal.nix @@ -31,7 +31,12 @@ let prefix ? [], modules ? [], specialArgs ? {}, - }: lib.evalModules { + }: + # NOTE: Regular NixOS currently does use this function! Don't break it! + # Ideally we don't diverge, unless we learn that we should. + # In other words, only the public interface of nixos.evalModules + # is experimental. + lib.evalModules { inherit prefix modules; specialArgs = { modulesPath = builtins.toString ../modules; diff --git a/nixos/lib/eval-config.nix b/nixos/lib/eval-config.nix index 8ea82b30f16d..850322b8251b 100644 --- a/nixos/lib/eval-config.nix +++ b/nixos/lib/eval-config.nix @@ -33,7 +33,11 @@ let pkgs_ = pkgs; in let - evalModulesMinimal = (import ./eval-config-minimal.nix { inherit lib; bypassEvalModulesWarning = true; }).evalModules; + evalModulesMinimal = (import ./default.nix { + inherit lib; + # Implicit use of feature is noted in implementation. + featureFlags.minimalModules = { }; + }).evalModules; pkgsModule = rec { _file = ./eval-config.nix; From f7f1f47f9f1b57c4c9a43576ea8770ab2fac3dc5 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Sat, 15 Jan 2022 12:46:07 -0700 Subject: [PATCH 07/40] pdfstudioviewer: init at 2021.1.2 --- .../misc/pdfstudioviewer/default.nix | 91 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 93 insertions(+) create mode 100644 pkgs/applications/misc/pdfstudioviewer/default.nix diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix new file mode 100644 index 000000000000..c713a11e9a61 --- /dev/null +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -0,0 +1,91 @@ +{ stdenv, + lib, + makeWrapper, + fetchurl, + dpkg, + makeDesktopItem, + copyDesktopItems, + autoPatchelfHook, + gst_all_1, + sane-backends, + xorg, + gnome2, + alsa-lib, + libgccjit, + jdk11 + }: + +let + year = "2021"; + major = "1"; + minor = "2"; +in stdenv.mkDerivation rec { + pname = "pdfstudioviewer"; + version = "${year}.${major}.${minor}"; + autoPatchelfIgnoreMissingDeps = true; + + src = fetchurl { + url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${year}_${major}_${minor}_linux64.deb"; + sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6"; + }; + + nativeBuildInputs = [ + gst_all_1.gst-libav + sane-backends + xorg.libXxf86vm + xorg.libXtst + gnome2.libgtkhtml + alsa-lib + libgccjit + autoPatchelfHook + makeWrapper + dpkg + copyDesktopItems + jdk11 # only for unpacking .jar.pack files + ]; + + desktopItems = [(makeDesktopItem { + name = "${pname}${year}"; + desktopName = "PDF Studio"; + genericName = "View and edit PDF files"; + exec = "${pname} %f"; + icon = "${pname}${year}"; + comment = "Views and edits PDF files"; + mimeType = "application/pdf"; + categories = "Office"; + type = "Application"; + terminal = false; + })]; + + unpackPhase = "dpkg-deb -x $src ."; + dontConfigure = true; + dontBuild = true; + + installPhase = '' + runHook preInstall + + mkdir -p $out/bin + mkdir -p $out/share + mkdir -p $out/share/applications + mkdir -p $out/share/pixmaps + cp -r opt/${pname}${year} $out/share/ + ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/ + makeWrapper $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} + + #Unpack jar files. Otherwise pdfstudio does this and fails due to read-only FS. + for pfile in $out/share/${pname}${year}/jre/lib/{,ext/}*.jar.pack; do + jar_file=`echo "$pfile" | awk '{ print substr($0,1,length($0)-5) }'` + unpack200 -r "$pfile" "$jar_file" + done + + runHook postInstall + ''; + + meta = with lib; { + homepage = "https://www.qoppa.com/pdfstudio/"; + description = "An easy to use, full-featured PDF editing software"; + license = licenses.unfree; + platforms = platforms.linux; + maintainers = [ maintainers.pwoelfel ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f6cb53114a47..8b148f470256 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -24211,6 +24211,8 @@ with pkgs; pdfstudio = callPackage ../applications/misc/pdfstudio { }; + pdfstudioviewer = callPackage ../applications/misc/pdfstudioviewer { }; + aeolus = callPackage ../applications/audio/aeolus { }; aewan = callPackage ../applications/editors/aewan { }; From d5cc6c22ad1a905bae720f6d984c01bac23d5556 Mon Sep 17 00:00:00 2001 From: Dmytro Kostiuchenko Date: Sun, 16 Jan 2022 23:52:30 +0200 Subject: [PATCH 08/40] asciidoctor-with-extensions: enable html5s backend (#104831) --- .../typesetting/asciidoctor-with-extensions/Gemfile | 9 +++++---- .../asciidoctor-with-extensions/Gemfile.lock | 4 ++++ .../asciidoctor-with-extensions/gemset.nix | 11 +++++++++++ 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile b/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile index feb1437d6d40..3675775e1688 100644 --- a/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile +++ b/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile @@ -1,10 +1,11 @@ source 'https://rubygems.org' gem 'asciidoctor' -gem 'asciidoctor-diagram' -gem 'asciidoctor-pdf' -gem 'asciidoctor-epub3' -gem 'asciidoctor-mathematical' gem 'asciidoctor-bibtex' +gem 'asciidoctor-diagram' +gem 'asciidoctor-epub3' +gem 'asciidoctor-html5s' +gem 'asciidoctor-mathematical' +gem 'asciidoctor-pdf' gem 'asciidoctor-revealjs' gem 'coderay' gem 'pygments.rb' diff --git a/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile.lock b/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile.lock index 14829ed7b0a6..eba0e0d1f9fe 100644 --- a/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile.lock +++ b/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile.lock @@ -23,6 +23,9 @@ GEM asciidoctor (>= 1.5.6, < 3.0.0) gepub (~> 1.0.0) mime-types (~> 3.0) + asciidoctor-html5s (0.5.1) + asciidoctor (>= 1.5.7, < 3.0) + thread_safe (~> 0.3.4) asciidoctor-mathematical (0.3.5) asciidoctor (~> 2.0) asciimath (~> 2.0) @@ -120,6 +123,7 @@ DEPENDENCIES asciidoctor-bibtex asciidoctor-diagram asciidoctor-epub3 + asciidoctor-html5s asciidoctor-mathematical asciidoctor-pdf asciidoctor-revealjs diff --git a/pkgs/tools/typesetting/asciidoctor-with-extensions/gemset.nix b/pkgs/tools/typesetting/asciidoctor-with-extensions/gemset.nix index 6bd49e099623..72421655f695 100644 --- a/pkgs/tools/typesetting/asciidoctor-with-extensions/gemset.nix +++ b/pkgs/tools/typesetting/asciidoctor-with-extensions/gemset.nix @@ -93,6 +93,17 @@ }; version = "1.5.1"; }; + asciidoctor-html5s = { + dependencies = ["asciidoctor" "thread_safe"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1zfbfcqyrsk8bnd526ang3b4j3m5pbns7x3fdxarrm8vv1qplss1"; + type = "gem"; + }; + version = "0.5.1"; + }; asciidoctor-mathematical = { dependencies = ["asciidoctor" "asciimath" "mathematical"]; groups = ["default"]; From e14cabc709aa762a06dfbe4dbe922481ba8f7832 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 00:49:45 -0700 Subject: [PATCH 09/40] Update pkgs/applications/misc/pdfstudioviewer/default.nix Co-authored-by: Ivv <41924494+IvarWithoutBones@users.noreply.github.com> --- pkgs/applications/misc/pdfstudioviewer/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index c713a11e9a61..f9f464f8bc91 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -21,7 +21,7 @@ let minor = "2"; in stdenv.mkDerivation rec { pname = "pdfstudioviewer"; - version = "${year}.${major}.${minor}"; + version = "${year}.1.2"; autoPatchelfIgnoreMissingDeps = true; src = fetchurl { From 6114ed4314a6fe1965b2619bd06bbee7ba021215 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 00:50:06 -0700 Subject: [PATCH 10/40] Update pkgs/applications/misc/pdfstudioviewer/default.nix Co-authored-by: Ivv <41924494+IvarWithoutBones@users.noreply.github.com> --- pkgs/applications/misc/pdfstudioviewer/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index f9f464f8bc91..d59685c0b403 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -25,7 +25,7 @@ in stdenv.mkDerivation rec { autoPatchelfIgnoreMissingDeps = true; src = fetchurl { - url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${year}_${major}_${minor}_linux64.deb"; + url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${builtins.replaceStrings ["."] ["_"] version}_linux64.deb"; sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6"; }; From 05ad6b0a111a702cd044928057bd4b02ddecbc9d Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 00:50:18 -0700 Subject: [PATCH 11/40] Update pkgs/applications/misc/pdfstudioviewer/default.nix Co-authored-by: Ivv <41924494+IvarWithoutBones@users.noreply.github.com> --- pkgs/applications/misc/pdfstudioviewer/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index d59685c0b403..c4dd518955e4 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -17,8 +17,6 @@ let year = "2021"; - major = "1"; - minor = "2"; in stdenv.mkDerivation rec { pname = "pdfstudioviewer"; version = "${year}.1.2"; From 9ae0c9a972cdb79f1ce0a4916ed589f2e477ac84 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 21:11:32 -0700 Subject: [PATCH 12/40] Implemented reviewer suggestions --- .../misc/pdfstudioviewer/default.nix | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index c4dd518955e4..16549642dbec 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -43,16 +43,16 @@ in stdenv.mkDerivation rec { ]; desktopItems = [(makeDesktopItem { - name = "${pname}${year}"; - desktopName = "PDF Studio"; - genericName = "View and edit PDF files"; - exec = "${pname} %f"; - icon = "${pname}${year}"; - comment = "Views and edits PDF files"; - mimeType = "application/pdf"; - categories = "Office"; - type = "Application"; - terminal = false; + name = "${pname}${year}"; + desktopName = "PDF Studio"; + genericName = "View and edit PDF files"; + exec = "${pname} %f"; + icon = "${pname}${year}"; + comment = "Views and edits PDF files"; + mimeType = "application/pdf"; + categories = "Office"; + type = "Application"; + terminal = false; })]; unpackPhase = "dpkg-deb -x $src ."; @@ -68,7 +68,8 @@ in stdenv.mkDerivation rec { mkdir -p $out/share/pixmaps cp -r opt/${pname}${year} $out/share/ ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/ - makeWrapper $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} + ln -s $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} + # makeWrapper $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} #Unpack jar files. Otherwise pdfstudio does this and fails due to read-only FS. for pfile in $out/share/${pname}${year}/jre/lib/{,ext/}*.jar.pack; do From cbee72024c30f9153f6e8db2c33d8f700d8b4722 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 21:16:17 -0700 Subject: [PATCH 13/40] file formatting --- .../misc/pdfstudioviewer/default.nix | 61 ++++++++++--------- 1 file changed, 32 insertions(+), 29 deletions(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index 16549642dbec..87f99e7dc4f3 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -1,23 +1,24 @@ -{ stdenv, - lib, - makeWrapper, - fetchurl, - dpkg, - makeDesktopItem, - copyDesktopItems, - autoPatchelfHook, - gst_all_1, - sane-backends, - xorg, - gnome2, - alsa-lib, - libgccjit, - jdk11 - }: +{ stdenv +, lib +, makeWrapper +, fetchurl +, dpkg +, makeDesktopItem +, copyDesktopItems +, autoPatchelfHook +, gst_all_1 +, sane-backends +, xorg +, gnome2 +, alsa-lib +, libgccjit +, jdk11 +}: let year = "2021"; -in stdenv.mkDerivation rec { +in +stdenv.mkDerivation rec { pname = "pdfstudioviewer"; version = "${year}.1.2"; autoPatchelfIgnoreMissingDeps = true; @@ -42,18 +43,20 @@ in stdenv.mkDerivation rec { jdk11 # only for unpacking .jar.pack files ]; - desktopItems = [(makeDesktopItem { - name = "${pname}${year}"; - desktopName = "PDF Studio"; - genericName = "View and edit PDF files"; - exec = "${pname} %f"; - icon = "${pname}${year}"; - comment = "Views and edits PDF files"; - mimeType = "application/pdf"; - categories = "Office"; - type = "Application"; - terminal = false; - })]; + desktopItems = [ + (makeDesktopItem { + name = "${pname}${year}"; + desktopName = "PDF Studio"; + genericName = "View and edit PDF files"; + exec = "${pname} %f"; + icon = "${pname}${year}"; + comment = "Views and edits PDF files"; + mimeType = "application/pdf"; + categories = "Office"; + type = "Application"; + terminal = false; + }) + ]; unpackPhase = "dpkg-deb -x $src ."; dontConfigure = true; From 61d6c0e234050451deb96e6ad441d3fe3b2dbc50 Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Tue, 18 Jan 2022 21:22:37 -0700 Subject: [PATCH 14/40] Update pkgs/applications/misc/pdfstudioviewer/default.nix Co-authored-by: Nikolay Korotkiy --- pkgs/applications/misc/pdfstudioviewer/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index 87f99e7dc4f3..8915ccc7fff3 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -67,7 +67,6 @@ stdenv.mkDerivation rec { mkdir -p $out/bin mkdir -p $out/share - mkdir -p $out/share/applications mkdir -p $out/share/pixmaps cp -r opt/${pname}${year} $out/share/ ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/ From 77528a24f84ee4b363d72a84b08e4a225b7d4e2c Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Wed, 19 Jan 2022 11:16:49 +0100 Subject: [PATCH 15/40] ucx: 1.11.2 -> 1.12.0 --- pkgs/development/libraries/ucx/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/ucx/default.nix b/pkgs/development/libraries/ucx/default.nix index 06c0ada16feb..76118edfcb3b 100644 --- a/pkgs/development/libraries/ucx/default.nix +++ b/pkgs/development/libraries/ucx/default.nix @@ -13,13 +13,13 @@ let in stdenv.mkDerivation rec { pname = "ucx"; - version = "1.11.2"; + version = "1.12.0"; src = fetchFromGitHub { owner = "openucx"; repo = "ucx"; rev = "v${version}"; - sha256 = "0a4rbgr3hn3h42krb7lasfidhqcavacbpp1pv66l4lvfc0gkwi2i"; + sha256 = "0jwza9ivfnhkfwg4c58pxalkga5scz803k631xw4hcliy62gk53w"; }; nativeBuildInputs = [ autoreconfHook doxygen ]; From cd873d3b547253e5a1508a63aefd6552bd7c2657 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 19 Jan 2022 17:02:48 +0100 Subject: [PATCH 16/40] amass: 3.15.2 -> 3.16.0 --- pkgs/tools/networking/amass/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/networking/amass/default.nix b/pkgs/tools/networking/amass/default.nix index c15633a4f5d4..7b8e6e07dcc9 100644 --- a/pkgs/tools/networking/amass/default.nix +++ b/pkgs/tools/networking/amass/default.nix @@ -5,16 +5,16 @@ buildGoModule rec { pname = "amass"; - version = "3.15.2"; + version = "3.16.0"; src = fetchFromGitHub { owner = "OWASP"; repo = "Amass"; rev = "v${version}"; - sha256 = "sha256-0zTnknpjTvUEai06JsRfQASclxpvaJnEfYK7biZeqU0="; + sha256 = "sha256-V3FqiAvHnd3q3yhrhDaeka22R+mBqFdPjGqY4FGCx9M="; }; - vendorSha256 = "sha256-Lh/VN+IBXpT8e7ok5Qjfk5tgXEUVwKMHYcp9WrChN3A="; + vendorSha256 = "sha256-0hor9Sldl8HhlKfYhWhb79wnZSMn5/Hg0Ux937qQkT4="; outputs = [ "out" "wordlists" ]; From b839b657502705c9a1d60f89855e2b5396fe12ec Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 19 Jan 2022 16:57:00 +0000 Subject: [PATCH 17/40] python310Packages.deep-translator: 1.6.0 -> 1.6.1 --- pkgs/development/python-modules/deep-translator/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/deep-translator/default.nix b/pkgs/development/python-modules/deep-translator/default.nix index ae7bf52e1fe7..cdc18f159fb9 100644 --- a/pkgs/development/python-modules/deep-translator/default.nix +++ b/pkgs/development/python-modules/deep-translator/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "deep-translator"; - version = "1.6.0"; + version = "1.6.1"; src = fetchPypi { inherit pname version; - sha256 = "sha256-B/SnLSaCRVhQvSU2hmdKPswM2N73nHAzQfVNBMgCofI="; + sha256 = "2611c54209b234730f3e5e6481cb875e120e49d9ec1a27a1fa89850150485975"; }; propagatedBuildInputs = [ From 993985922bb93eea8207d756797b1db8c1efeaae Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 20 Jan 2022 04:41:43 +0000 Subject: [PATCH 18/40] python310Packages.pa-ringbuffer: 0.1.3 -> 0.1.4 --- pkgs/development/python-modules/pa-ringbuffer/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pa-ringbuffer/default.nix b/pkgs/development/python-modules/pa-ringbuffer/default.nix index 466d3937a1fb..066c4a47ae4e 100644 --- a/pkgs/development/python-modules/pa-ringbuffer/default.nix +++ b/pkgs/development/python-modules/pa-ringbuffer/default.nix @@ -2,13 +2,13 @@ buildPythonPackage rec { pname = "pa-ringbuffer"; - version = "0.1.3"; + version = "0.1.4"; src = fetchFromGitHub { owner = "spatialaudio"; repo = "python-pa-ringbuffer"; rev = version; - sha256 = "0afpydy1l20hd1xncjppjhqa2c8dj5h9nlv4z8m55cs9hc9h1mxv"; + sha256 = "1d4k6z13mc1f88m6wbhfx8hillb7q78n33ws5bmyblsdkv1gx607"; }; meta = { From debab5c551edf6991912805f8ed6d75a8cdbff74 Mon Sep 17 00:00:00 2001 From: "\"Ivan Petkov\"" <"ivanppetkov@gmail.com"> Date: Wed, 19 Jan 2022 20:35:50 -0800 Subject: [PATCH 19/40] vimPlugins.dressing-nvim: init at 2022-01-18 --- pkgs/misc/vim-plugins/generated.nix | 12 ++++++++++++ pkgs/misc/vim-plugins/vim-plugin-names | 1 + 2 files changed, 13 insertions(+) diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix index 5807f7756cef..ca62f458bb6d 100644 --- a/pkgs/misc/vim-plugins/generated.nix +++ b/pkgs/misc/vim-plugins/generated.nix @@ -1710,6 +1710,18 @@ final: prev: meta.homepage = "https://github.com/dracula/vim/"; }; + dressing-nvim = buildVimPluginFrom2Nix { + pname = "dressing.nvim"; + version = "2022-01-18"; + src = fetchFromGitHub { + owner = "stevearc"; + repo = "dressing.nvim"; + rev = "3f23266f0c623415ab8051c6e05c35e0981025b5"; + sha256 = "0khdg2wn204f0rrh5m26iaymf4ic73lk5h5z0zkc1ahdhfy3alsv"; + }; + meta.homepage = "https://github.com/stevearc/dressing.nvim/"; + }; + echodoc-vim = buildVimPluginFrom2Nix { pname = "echodoc.vim"; version = "2021-11-26"; diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names index fb55aff7812a..ecca651f7c29 100644 --- a/pkgs/misc/vim-plugins/vim-plugin-names +++ b/pkgs/misc/vim-plugins/vim-plugin-names @@ -754,6 +754,7 @@ steelsojka/pears.nvim stefandtw/quickfix-reflector.vim stephpy/vim-yaml stevearc/aerial.nvim +stevearc/dressing.nvim stsewd/fzf-checkout.vim sudormrfbin/cheatsheet.nvim sunaku/vim-dasht From 358ff989767672c8bb4ecc4dd71a699f798d09d7 Mon Sep 17 00:00:00 2001 From: Dmytro Kostiuchenko Date: Thu, 20 Jan 2022 07:02:38 +0200 Subject: [PATCH 20/40] Enable asciidoctor-rouge extension --- .../typesetting/asciidoctor-with-extensions/Gemfile | 1 + .../asciidoctor-with-extensions/Gemfile.lock | 4 ++++ .../asciidoctor-with-extensions/gemset.nix | 11 +++++++++++ 3 files changed, 16 insertions(+) diff --git a/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile b/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile index 3675775e1688..9e65ac43afa1 100644 --- a/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile +++ b/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile @@ -7,6 +7,7 @@ gem 'asciidoctor-html5s' gem 'asciidoctor-mathematical' gem 'asciidoctor-pdf' gem 'asciidoctor-revealjs' +gem 'asciidoctor-rouge' gem 'coderay' gem 'pygments.rb' gem 'rouge' diff --git a/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile.lock b/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile.lock index eba0e0d1f9fe..98418e183d45 100644 --- a/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile.lock +++ b/pkgs/tools/typesetting/asciidoctor-with-extensions/Gemfile.lock @@ -44,6 +44,9 @@ GEM asciidoctor (>= 2.0.0, < 3.0.0) concurrent-ruby (~> 1.0) thread_safe (~> 0.3.5) + asciidoctor-rouge (0.4.0) + asciidoctor (>= 1.5.6, < 2.1) + rouge (>= 2.2, < 4) asciimath (2.0.3) bibtex-ruby (5.1.6) latex-decode (~> 0.0) @@ -127,6 +130,7 @@ DEPENDENCIES asciidoctor-mathematical asciidoctor-pdf asciidoctor-revealjs + asciidoctor-rouge coderay pygments.rb rouge diff --git a/pkgs/tools/typesetting/asciidoctor-with-extensions/gemset.nix b/pkgs/tools/typesetting/asciidoctor-with-extensions/gemset.nix index 72421655f695..e88f9701d0d3 100644 --- a/pkgs/tools/typesetting/asciidoctor-with-extensions/gemset.nix +++ b/pkgs/tools/typesetting/asciidoctor-with-extensions/gemset.nix @@ -137,6 +137,17 @@ }; version = "4.1.0"; }; + asciidoctor-rouge = { + dependencies = ["asciidoctor" "rouge"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "197sbzs9km58pgfqdnnglhqr7anhb0m330cv1vxfc3s2qz106zjz"; + type = "gem"; + }; + version = "0.4.0"; + }; asciimath = { groups = ["default"]; platforms = []; From 27fda8f14d8c3d2e4bd4c611dc3a552e1c4cfacb Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Wed, 19 Jan 2022 23:08:24 -0700 Subject: [PATCH 21/40] fixed buildInputs --- .../misc/pdfstudioviewer/default.nix | 45 ++++++------------- 1 file changed, 14 insertions(+), 31 deletions(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index 8915ccc7fff3..fc588c5411a1 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -1,46 +1,29 @@ -{ stdenv -, lib -, makeWrapper -, fetchurl -, dpkg -, makeDesktopItem -, copyDesktopItems -, autoPatchelfHook -, gst_all_1 -, sane-backends -, xorg -, gnome2 -, alsa-lib -, libgccjit -, jdk11 -}: +{ stdenv, lib, fetchurl, dpkg, makeDesktopItem, copyDesktopItems +, autoPatchelfHook, makeWrapper, sane-backends, xorg, jdk11, gtk2, gtk3 }: -let - year = "2021"; -in -stdenv.mkDerivation rec { +let year = "2021"; +in stdenv.mkDerivation rec { pname = "pdfstudioviewer"; version = "${year}.1.2"; autoPatchelfIgnoreMissingDeps = true; + strictDeps = true; src = fetchurl { - url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${builtins.replaceStrings ["."] ["_"] version}_linux64.deb"; + url = "https://download.qoppa.com/${pname}/v${year}/PDFStudioViewer_v${ + builtins.replaceStrings [ "." ] [ "_" ] version + }_linux64.deb"; sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6"; }; + buildInputs = + [ xorg.libXrandr xorg.libXtst sane-backends xorg.libXxf86vm gtk2 gtk3 ]; + nativeBuildInputs = [ - gst_all_1.gst-libav - sane-backends - xorg.libXxf86vm - xorg.libXtst - gnome2.libgtkhtml - alsa-lib - libgccjit autoPatchelfHook - makeWrapper dpkg copyDesktopItems - jdk11 # only for unpacking .jar.pack files + jdk11 # for unpacking .jar.pack files + makeWrapper ]; desktopItems = [ @@ -71,7 +54,6 @@ stdenv.mkDerivation rec { cp -r opt/${pname}${year} $out/share/ ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/ ln -s $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} - # makeWrapper $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} #Unpack jar files. Otherwise pdfstudio does this and fails due to read-only FS. for pfile in $out/share/${pname}${year}/jre/lib/{,ext/}*.jar.pack; do @@ -87,6 +69,7 @@ stdenv.mkDerivation rec { description = "An easy to use, full-featured PDF editing software"; license = licenses.unfree; platforms = platforms.linux; + mainprogram = pname; maintainers = [ maintainers.pwoelfel ]; }; } From c625aff4d1a8257a10dbaf656adaa0723658d97c Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Wed, 19 Jan 2022 23:32:08 -0700 Subject: [PATCH 22/40] mainprogram -> mainProgram --- pkgs/applications/misc/pdfstudioviewer/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index fc588c5411a1..ad570dbca48e 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -69,7 +69,7 @@ in stdenv.mkDerivation rec { description = "An easy to use, full-featured PDF editing software"; license = licenses.unfree; platforms = platforms.linux; - mainprogram = pname; + mainProgram = pname; maintainers = [ maintainers.pwoelfel ]; }; } From a5b5ef0d37b9db663f6e845d93d15fe8e05e78bd Mon Sep 17 00:00:00 2001 From: Philipp Woelfel Date: Thu, 20 Jan 2022 00:18:43 -0700 Subject: [PATCH 23/40] Use jdk11 instead of packaged java to fix printing --- .../misc/pdfstudioviewer/default.nix | 34 +++++++++++-------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/pkgs/applications/misc/pdfstudioviewer/default.nix b/pkgs/applications/misc/pdfstudioviewer/default.nix index ad570dbca48e..9dc01108e657 100644 --- a/pkgs/applications/misc/pdfstudioviewer/default.nix +++ b/pkgs/applications/misc/pdfstudioviewer/default.nix @@ -1,11 +1,19 @@ -{ stdenv, lib, fetchurl, dpkg, makeDesktopItem, copyDesktopItems -, autoPatchelfHook, makeWrapper, sane-backends, xorg, jdk11, gtk2, gtk3 }: +{ stdenv +, lib +, fetchurl +, dpkg +, makeDesktopItem +, copyDesktopItems +, autoPatchelfHook +, sane-backends +, jdk11 +}: let year = "2021"; in stdenv.mkDerivation rec { pname = "pdfstudioviewer"; version = "${year}.1.2"; - autoPatchelfIgnoreMissingDeps = true; + autoPatchelfIgnoreMissingDeps = false; strictDeps = true; src = fetchurl { @@ -15,15 +23,15 @@ in stdenv.mkDerivation rec { sha256 = "128k3fm8m8zdykx4s30g5m2zl7cgmvs4qinf1w525zh84v56agz6"; }; - buildInputs = - [ xorg.libXrandr xorg.libXtst sane-backends xorg.libXxf86vm gtk2 gtk3 ]; + buildInputs = [ + sane-backends + jdk11 + ]; nativeBuildInputs = [ autoPatchelfHook dpkg copyDesktopItems - jdk11 # for unpacking .jar.pack files - makeWrapper ]; desktopItems = [ @@ -42,9 +50,12 @@ in stdenv.mkDerivation rec { ]; unpackPhase = "dpkg-deb -x $src ."; - dontConfigure = true; dontBuild = true; + postPatch = '' + substituteInPlace opt/${pname}${year}/${pname}${year} --replace "# INSTALL4J_JAVA_HOME_OVERRIDE=" "INSTALL4J_JAVA_HOME_OVERRIDE=${jdk11.out}" + ''; + installPhase = '' runHook preInstall @@ -52,15 +63,10 @@ in stdenv.mkDerivation rec { mkdir -p $out/share mkdir -p $out/share/pixmaps cp -r opt/${pname}${year} $out/share/ + rm -rf $out/share/${pname}${year}/jre ln -s $out/share/${pname}${year}/.install4j/${pname}${year}.png $out/share/pixmaps/ ln -s $out/share/${pname}${year}/${pname}${year} $out/bin/${pname} - #Unpack jar files. Otherwise pdfstudio does this and fails due to read-only FS. - for pfile in $out/share/${pname}${year}/jre/lib/{,ext/}*.jar.pack; do - jar_file=`echo "$pfile" | awk '{ print substr($0,1,length($0)-5) }'` - unpack200 -r "$pfile" "$jar_file" - done - runHook postInstall ''; From 19f8d8b693610ef6e62427ea51e7e772769b0f3b Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 20 Jan 2022 09:30:41 +0100 Subject: [PATCH 24/40] metasploit: 6.1.24 -> 6.1.25 --- pkgs/tools/security/metasploit/Gemfile | 2 +- pkgs/tools/security/metasploit/Gemfile.lock | 45 ++++++------ pkgs/tools/security/metasploit/default.nix | 4 +- pkgs/tools/security/metasploit/gemset.nix | 78 +++++++++++++-------- 4 files changed, 76 insertions(+), 53 deletions(-) diff --git a/pkgs/tools/security/metasploit/Gemfile b/pkgs/tools/security/metasploit/Gemfile index 22b2cb70e0ed..4e770c3ead14 100644 --- a/pkgs/tools/security/metasploit/Gemfile +++ b/pkgs/tools/security/metasploit/Gemfile @@ -1,4 +1,4 @@ # frozen_string_literal: true source "https://rubygems.org" -gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.1.24" +gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.1.25" diff --git a/pkgs/tools/security/metasploit/Gemfile.lock b/pkgs/tools/security/metasploit/Gemfile.lock index 38c9bda14349..d7be1df5a86e 100644 --- a/pkgs/tools/security/metasploit/Gemfile.lock +++ b/pkgs/tools/security/metasploit/Gemfile.lock @@ -1,9 +1,9 @@ GIT remote: https://github.com/rapid7/metasploit-framework - revision: 0991344df7a2b343b99e83507bf217137f11801d - ref: refs/tags/6.1.24 + revision: 4a1ba0f9095d5c6e954ba58bc71d02feefc411a5 + ref: refs/tags/6.1.25 specs: - metasploit-framework (6.1.24) + metasploit-framework (6.1.25) actionpack (~> 6.0) activerecord (~> 6.0) activesupport (~> 6.0) @@ -19,12 +19,11 @@ GIT em-http-request eventmachine faker - faraday (= 1.8.0) + faraday faye-websocket filesize hrr_rb_ssh-ed25519 http-cookie - io-console (= 0.5.9) irb jsobfu json @@ -129,13 +128,13 @@ GEM arel-helpers (2.14.0) activerecord (>= 3.1.0, < 8) aws-eventstream (1.2.0) - aws-partitions (1.547.0) - aws-sdk-core (3.125.2) + aws-partitions (1.549.0) + aws-sdk-core (3.125.5) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.525.0) aws-sigv4 (~> 1.1) jmespath (~> 1.0) - aws-sdk-ec2 (1.291.0) + aws-sdk-ec2 (1.294.0) aws-sdk-core (~> 3, >= 3.125.0) aws-sigv4 (~> 1.1) aws-sdk-iam (1.65.0) @@ -153,17 +152,17 @@ GEM bcrypt (3.1.16) bcrypt_pbkdf (1.1.0) bindata (2.4.10) - bson (4.13.0) + bson (4.14.0) builder (3.2.4) concurrent-ruby (1.0.5) cookiejar (0.3.3) crass (1.0.6) daemons (1.4.1) - dnsruby (1.61.7) + dnsruby (1.61.9) simpleidn (~> 0.1) domain_name (0.5.20190701) unf (>= 0.0.5, < 1.0.0) - ed25519 (1.2.4) + ed25519 (1.3.0) em-http-request (1.1.7) addressable (>= 2.3.4) cookiejar (!= 0.3.1) @@ -176,25 +175,29 @@ GEM eventmachine (1.2.7) faker (2.19.0) i18n (>= 1.6, < 2) - faraday (1.8.0) + faraday (1.9.3) faraday-em_http (~> 1.0) faraday-em_synchrony (~> 1.0) faraday-excon (~> 1.1) - faraday-httpclient (~> 1.0.1) + faraday-httpclient (~> 1.0) + faraday-multipart (~> 1.0) faraday-net_http (~> 1.0) - faraday-net_http_persistent (~> 1.1) + faraday-net_http_persistent (~> 1.0) faraday-patron (~> 1.0) faraday-rack (~> 1.0) - multipart-post (>= 1.2, < 3) + faraday-retry (~> 1.0) ruby2_keywords (>= 0.0.4) faraday-em_http (1.0.0) faraday-em_synchrony (1.0.0) faraday-excon (1.1.0) faraday-httpclient (1.0.1) + faraday-multipart (1.0.3) + multipart-post (>= 1.2, < 3) faraday-net_http (1.0.1) faraday-net_http_persistent (1.2.0) faraday-patron (1.0.0) faraday-rack (1.0.0) + faraday-retry (1.0.3) faye-websocket (0.11.1) eventmachine (>= 0.12.0) websocket-driver (>= 0.5.1) @@ -215,7 +218,7 @@ GEM httpclient (2.8.3) i18n (1.8.11) concurrent-ruby (~> 1.0) - io-console (0.5.9) + io-console (0.5.11) irb (1.3.6) reline (>= 0.2.5) jmespath (1.5.0) @@ -264,7 +267,7 @@ GEM mini_portile2 (2.7.1) minitest (5.15.0) mqtt (0.5.0) - msgpack (1.4.2) + msgpack (1.4.3) multi_json (1.15.0) multipart-post (2.1.1) mustermann (1.1.1) @@ -275,11 +278,11 @@ GEM network_interface (0.0.2) nexpose (7.3.0) nio4r (2.5.8) - nokogiri (1.13.0) + nokogiri (1.13.1) mini_portile2 (~> 2.7.0) racc (~> 1.4) nori (2.6.0) - octokit (4.21.0) + octokit (4.22.0) faraday (>= 0.9) sawyer (~> 0.8.0, >= 0.5.3) openssl-ccm (1.2.2) @@ -373,7 +376,7 @@ GEM rex-text rexml (3.2.5) rkelly-remix (0.0.7) - ruby-macho (2.5.1) + ruby-macho (3.0.0) ruby-rc4 (0.1.5) ruby2_keywords (0.0.5) ruby_smb (3.0.0) @@ -419,7 +422,7 @@ GEM websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) win32api (0.1.0) - windows_error (0.1.2) + windows_error (0.1.3) winrm (2.3.6) builder (>= 2.1.2) erubi (~> 1.8) diff --git a/pkgs/tools/security/metasploit/default.nix b/pkgs/tools/security/metasploit/default.nix index 727518fe81df..d9a508640ca9 100644 --- a/pkgs/tools/security/metasploit/default.nix +++ b/pkgs/tools/security/metasploit/default.nix @@ -15,13 +15,13 @@ let }; in stdenv.mkDerivation rec { pname = "metasploit-framework"; - version = "6.1.24"; + version = "6.1.25"; src = fetchFromGitHub { owner = "rapid7"; repo = "metasploit-framework"; rev = version; - sha256 = "sha256-eCnudckLCiE6L2EC/IHqbXdOrGBkSmWZHyHFvvFUqQ4="; + sha256 = "sha256-lfTueN3s7wsyQRrulsx7TKVMhOu6//4Z6DDjR/Lm6Vw="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/tools/security/metasploit/gemset.nix b/pkgs/tools/security/metasploit/gemset.nix index a9bcf2c227f4..56bc01387144 100644 --- a/pkgs/tools/security/metasploit/gemset.nix +++ b/pkgs/tools/security/metasploit/gemset.nix @@ -104,30 +104,30 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1fi4irlxam3bmvafm6iiqj0vlzqg10vc4bzznl4c5w6zmg0lzp6b"; + sha256 = "02d86hv5jfs27hszd9d92q31dz3wl3s1racimkhb7nx8xg0l9ldj"; type = "gem"; }; - version = "1.547.0"; + version = "1.549.0"; }; aws-sdk-core = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1jp8nz18r9skri118haqy0slqmr5bwjw7xvrghcmj9lx409f0m6p"; + sha256 = "1i6835n7d2ss3k3ljwbw8by0fagymk0122ill3i9ipghz21xpqld"; type = "gem"; }; - version = "3.125.2"; + version = "3.125.5"; }; aws-sdk-ec2 = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1awg6wdq5nqlxq5zqj2h06898d9b24ci3jnczpss9pqgis4g0w0n"; + sha256 = "0rzbd111n7pgzpgjabcxi2mpnkxf3fcxkvy4rqidyf80m4633gwy"; type = "gem"; }; - version = "1.291.0"; + version = "1.294.0"; }; aws-sdk-iam = { groups = ["default"]; @@ -204,10 +204,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0ir2fml3d6gjzqhiqpxl8rqmgrp5lqrx8xdwz9cmcnxhfzmqgxbp"; + sha256 = "0vfwqzd89542xm8sc1ni6jvjy6wgycnri67q7agxnc5jmwawmcgf"; type = "gem"; }; - version = "4.13.0"; + version = "4.14.0"; }; builder = { groups = ["default"]; @@ -264,10 +264,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1pbhj4xmj4262in6c1nwl5ssw0qypg8ysjrrkwn2akkzbxzy9rfq"; + sha256 = "0v8jfxamsdvs8rdl28ylcp5xphb03kmf5f1aqrnr2020ras618kc"; type = "gem"; }; - version = "1.61.7"; + version = "1.61.9"; }; domain_name = { groups = ["default"]; @@ -284,10 +284,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1f5kr8za7hvla38fc0n9jiv55iq62k5bzclsa5kdb14l3r4w6qnw"; + sha256 = "0zb2dr2ihb1qiknn5iaj1ha1w9p7lj9yq5waasndlfadz225ajji"; type = "gem"; }; - version = "1.2.4"; + version = "1.3.0"; }; em-http-request = { groups = ["default"]; @@ -344,10 +344,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0afhlqgby2cizcwgh7h2sq5f77q01axjbdl25bsvfwsry9n7gyyi"; + sha256 = "0y32gj994ll3zlcqjmwp78r7s03iiwayij6fz2pjpkfywgvp71s6"; type = "gem"; }; - version = "1.8.0"; + version = "1.9.3"; }; faraday-em_http = { groups = ["default"]; @@ -389,6 +389,16 @@ }; version = "1.0.1"; }; + faraday-multipart = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "03qfi9020ynf7hkdiaq01sd2mllvw7fg4qiin3pk028b4wv23j3j"; + type = "gem"; + }; + version = "1.0.3"; + }; faraday-net_http = { groups = ["default"]; platforms = []; @@ -429,6 +439,16 @@ }; version = "1.0.0"; }; + faraday-retry = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "153i967yrwnswqgvnnajgwp981k9p50ys1h80yz3q94rygs59ldd"; + type = "gem"; + }; + version = "1.0.3"; + }; faye-websocket = { groups = ["default"]; platforms = []; @@ -554,10 +574,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0pmafwxh8z1apnk7bb1ibnbhfrgb1jgilxm4j8d0fcqlc2ggmbja"; + sha256 = "0r9kxrf9jccrr329pa3s37rf16vy426cbqmfwxkav1fidwvih93y"; type = "gem"; }; - version = "0.5.9"; + version = "0.5.11"; }; irb = { groups = ["default"]; @@ -664,12 +684,12 @@ platforms = []; source = { fetchSubmodules = false; - rev = "0991344df7a2b343b99e83507bf217137f11801d"; - sha256 = "03m9akqvxi913ycnajk4c2n4wxvdxa0zq0k15wx222hbr5sywabq"; + rev = "4a1ba0f9095d5c6e954ba58bc71d02feefc411a5"; + sha256 = "0p79wvr4gqrhx0czxzxsxf24r9acgg69dvhs84r0pvzcvmwfxx4m"; type = "git"; url = "https://github.com/rapid7/metasploit-framework"; }; - version = "6.1.24"; + version = "6.1.25"; }; metasploit-model = { groups = ["default"]; @@ -756,10 +776,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "06iajjyhx0rvpn4yr3h1hc4w4w3k59bdmfhxnjzzh76wsrdxxrc6"; + sha256 = "14kg9wdfls7s63lds9blrd77n8mx780bzyh05dj8kn0aimw3l9dx"; type = "gem"; }; - version = "1.4.2"; + version = "1.4.3"; }; multi_json = { groups = ["default"]; @@ -857,10 +877,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1cvx23d8z1nf5nsr5cv55m5dhr3f1bnvgdfqqfnjvhcd8cfnkgcd"; + sha256 = "1zqzawia52cdcmi55lp7v8jmiqyw7pcpwsksqlnirwfm3f7bnf11"; type = "gem"; }; - version = "1.13.0"; + version = "1.13.1"; }; nori = { groups = ["default"]; @@ -877,10 +897,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0ak64rb48d8z98nw6q70r6i0i3ivv61iqla40ss5l79491qfnn27"; + sha256 = "1nmdd7klyinvrrv2mggwwmc99ykaq7i379j00i37hvvaqx4giifj"; type = "gem"; }; - version = "4.21.0"; + version = "4.22.0"; }; openssl-ccm = { groups = ["default"]; @@ -1307,10 +1327,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1jgmhj4srl7cck1ipbjys6q4klcs473gq90bm59baw4j1wpfaxch"; + sha256 = "0sg0kzqrldx9mlpvymif3dcgz8j8q1nc8jaszrd03nfh5bvp3fd5"; type = "gem"; }; - version = "2.5.1"; + version = "3.0.0"; }; ruby-rc4 = { groups = ["default"]; @@ -1567,10 +1587,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0kbcv9j5sc7pvjzf1dkp6h69i6lmj205zyy2arxcfgqg11bsz2kp"; + sha256 = "1dy35rfdmj6pfhdicix1kcgpj5y7844a43i6bnklngn7b1wmy3av"; type = "gem"; }; - version = "0.1.2"; + version = "0.1.3"; }; winrm = { groups = ["default"]; From c6b4d6fa430398fa606e8c579c52a232da95189c Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 20 Jan 2022 08:57:37 +0000 Subject: [PATCH 25/40] spotify-qt: 3.7 -> 3.8 --- pkgs/applications/audio/spotify-qt/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/spotify-qt/default.nix b/pkgs/applications/audio/spotify-qt/default.nix index 70acbd4c31a2..45ff1bebc79e 100644 --- a/pkgs/applications/audio/spotify-qt/default.nix +++ b/pkgs/applications/audio/spotify-qt/default.nix @@ -9,13 +9,13 @@ mkDerivation rec { pname = "spotify-qt"; - version = "3.7"; + version = "3.8"; src = fetchFromGitHub { owner = "kraxarn"; repo = pname; rev = "v${version}"; - sha256 = "sha256-oRrgZtSDebbUVPc+hxE9GJ2n1AmGvZt/2aWrBMmRtNA="; + sha256 = "sha256-Rgtw+nrM8YUBHPIIe9zVhLij/ep07piPf/2MSmTVQKk="; }; buildInputs = [ libxcb qtbase qtsvg ]; From 5c53a84b938a9a732c28b829200fb1b779c3bb27 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 20 Jan 2022 09:48:52 +0000 Subject: [PATCH 26/40] python310Packages.pyswitchbot: 0.13.0 -> 0.13.2 --- pkgs/development/python-modules/pyswitchbot/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyswitchbot/default.nix b/pkgs/development/python-modules/pyswitchbot/default.nix index a51f15f5eeb7..96037d512838 100644 --- a/pkgs/development/python-modules/pyswitchbot/default.nix +++ b/pkgs/development/python-modules/pyswitchbot/default.nix @@ -6,14 +6,14 @@ buildPythonPackage rec { pname = "pyswitchbot"; - version = "0.13.0"; + version = "0.13.2"; format = "setuptools"; src = fetchFromGitHub { owner = "Danielhiversen"; repo = "pySwitchbot"; rev = version; - sha256 = "sha256-dx3OMzWJohOYCg7TnrqL4FLZoC+Q1dyJyUAdreDyfl0="; + sha256 = "0pdmssd5dr364p3lrkxqryjc0rbaw6xp724zwqf3i87qs6ljs928"; }; propagatedBuildInputs = [ From dbd1ad66dadd2289e3e462574f82e46354b8a102 Mon Sep 17 00:00:00 2001 From: Phillip Cloud <417981+cpcloud@users.noreply.github.com> Date: Thu, 20 Jan 2022 05:27:54 -0500 Subject: [PATCH 27/40] amazon-ecr-credential-helper: 0.5.0 -> 0.6.0 --- pkgs/tools/admin/amazon-ecr-credential-helper/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/admin/amazon-ecr-credential-helper/default.nix b/pkgs/tools/admin/amazon-ecr-credential-helper/default.nix index e661af0f949f..b70ddb76fc1f 100644 --- a/pkgs/tools/admin/amazon-ecr-credential-helper/default.nix +++ b/pkgs/tools/admin/amazon-ecr-credential-helper/default.nix @@ -2,7 +2,7 @@ buildGoPackage rec { pname = "amazon-ecr-credential-helper"; - version = "0.5.0"; + version = "0.6.0"; goPackagePath = "github.com/awslabs/amazon-ecr-credential-helper"; @@ -10,13 +10,13 @@ buildGoPackage rec { owner = "awslabs"; repo = "amazon-ecr-credential-helper"; rev = "v${version}"; - sha256 = "sha256-GmGse+N7QeG2sAjCumGkUAWu/KfhnMltzeh+s8o+tiw="; + sha256 = "sha256-lkc8plWWmth8SjeWBCf1HTnCfg09QNIsN3xPePqnv6Y="; }; meta = with lib; { description = "The Amazon ECR Docker Credential Helper is a credential helper for the Docker daemon that makes it easier to use Amazon Elastic Container Registry"; homepage = "https://github.com/awslabs/amazon-ecr-credential-helper"; - license = licenses.asl20 ; + license = licenses.asl20; maintainers = with maintainers; [ kalbasit ]; platforms = platforms.linux ++ platforms.darwin; }; From 84127a719f1f1f73fbe632a288090002a47adc37 Mon Sep 17 00:00:00 2001 From: Fernando Ayats Date: Thu, 20 Jan 2022 11:54:49 +0100 Subject: [PATCH 28/40] caffeine-ng: 3.4.2 -> 3.5.1 --- pkgs/tools/X11/caffeine-ng/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/X11/caffeine-ng/default.nix b/pkgs/tools/X11/caffeine-ng/default.nix index cadfa2c99973..36d43ea75d4d 100644 --- a/pkgs/tools/X11/caffeine-ng/default.nix +++ b/pkgs/tools/X11/caffeine-ng/default.nix @@ -4,11 +4,11 @@ python3Packages.buildPythonApplication rec { pname = "caffeine-ng"; - version = "3.4.2"; + version = "3.5.1"; src = python3Packages.fetchPypi{ inherit pname version; - sha256="05k8smjlfjcccgmp8qi04l7106k46fs4p8fl5bdqqjwv6pwl7y4w"; + sha256="0akzldqvxnqngpj1s6y2phgj7ch8wfm02j6z2drqvsbvaadw0jbm"; }; nativeBuildInputs = [ wrapGAppsHook glib ]; @@ -18,7 +18,7 @@ python3Packages.buildPythonApplication rec { ]; pythonPath = with python3Packages; [ dbus-python docopt ewmh pygobject3 pyxdg - setproctitle + setproctitle pulsectl ]; doCheck = false; # There are no tests. From 50d2e17071f840d809a02ffebadd7088d6e6b019 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 20 Jan 2022 13:32:30 +0000 Subject: [PATCH 29/40] rabbitmq-server: 3.9.8 -> 3.9.13 --- pkgs/servers/amqp/rabbitmq-server/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/amqp/rabbitmq-server/default.nix b/pkgs/servers/amqp/rabbitmq-server/default.nix index a5b36ad5c4ac..7203ac704c70 100644 --- a/pkgs/servers/amqp/rabbitmq-server/default.nix +++ b/pkgs/servers/amqp/rabbitmq-server/default.nix @@ -27,12 +27,12 @@ stdenv.mkDerivation rec { pname = "rabbitmq-server"; - version = "3.9.8"; + version = "3.9.13"; # when updating, consider bumping elixir version in all-packages.nix src = fetchurl { url = "https://github.com/rabbitmq/rabbitmq-server/releases/download/v${version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-l77pOFNzw83Qj+MbnwGiClA7HIGvAtI0N/9k12GV7lU="; + sha256 = "sha256-DndZ74m+CFyrukxKyOpfoRCb86RID2XL7x0eUZifcno="; }; nativeBuildInputs = [ unzip xmlto docbook_xml_dtd_45 docbook_xsl zip rsync ]; From 84930221fc769078feac517a4c0a986083553ac9 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 20 Jan 2022 10:58:09 +0000 Subject: [PATCH 30/40] sherpa: 2.2.11 -> 2.2.12 --- pkgs/applications/science/physics/sherpa/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/science/physics/sherpa/default.nix b/pkgs/applications/science/physics/sherpa/default.nix index dd726c96606e..29c72b7f11c0 100644 --- a/pkgs/applications/science/physics/sherpa/default.nix +++ b/pkgs/applications/science/physics/sherpa/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "sherpa"; - version = "2.2.11"; + version = "2.2.12"; src = fetchurl { url = "https://www.hepforge.org/archive/sherpa/SHERPA-MC-${version}.tar.gz"; - sha256 = "sha256-DrA/h/f/MjGylKxAtVMq6OLvEdb6yB7pRt8UJXNmwi0="; + sha256 = "sha256-UpRkd1yoKLncllEQUm80DedDtgA8Hm+Kvi/BRVCu0AE="; }; postPatch = lib.optionalString (stdenv.hostPlatform.libc == "glibc") '' From cfa0fa97320d24a5d58f4e6d69c47c38661ab843 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 20 Jan 2022 14:36:16 +0100 Subject: [PATCH 31/40] python3Packages.shodan: 1.26.0 -> 1.26.1 --- pkgs/development/python-modules/shodan/default.nix | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/shodan/default.nix b/pkgs/development/python-modules/shodan/default.nix index 8b378e844e43..772b38be30f2 100644 --- a/pkgs/development/python-modules/shodan/default.nix +++ b/pkgs/development/python-modules/shodan/default.nix @@ -5,16 +5,20 @@ , colorama , requests , setuptools +, pythonOlder , XlsxWriter }: buildPythonPackage rec { pname = "shodan"; - version = "1.26.0"; + version = "1.26.1"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "4f2ee19bdcad41a5f4618c8e7e1759f62c337cc2214416b53ad3d0c04a1146bc"; + sha256 = "sha256-8oJ7QNaRiYjvn18W3LihM4OqrhooRYmPcBLqyJBru4c="; }; propagatedBuildInputs = [ @@ -27,7 +31,10 @@ buildPythonPackage rec { # The tests require a shodan api key, so skip them. doCheck = false; - pythonImportsCheck = [ "shodan" ]; + + pythonImportsCheck = [ + "shodan" + ]; meta = with lib; { description = "Python library and command-line utility for Shodan"; From 8072fdf5ca1f31546f5dbf3a1888eeba8ca4ae28 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 20 Jan 2022 10:56:26 +0000 Subject: [PATCH 32/40] python310Packages.python-telegram-bot: 13.9 -> 13.10 --- .../python-modules/python-telegram-bot/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/python-telegram-bot/default.nix b/pkgs/development/python-modules/python-telegram-bot/default.nix index 2bff91864c85..939c4404d836 100644 --- a/pkgs/development/python-modules/python-telegram-bot/default.nix +++ b/pkgs/development/python-modules/python-telegram-bot/default.nix @@ -13,14 +13,14 @@ buildPythonPackage rec { pname = "python-telegram-bot"; - version = "13.9"; + version = "13.10"; format = "setuptools"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "512d7a84f4bf4e59b7acaf87a38e29c60f65a2717ebf6455b4d66fd058326b1b"; + sha256 = "d2c555431821f4ace0c1b7ce12af41999f01b793b275dee131f1034d08c01e3e"; }; propagatedBuildInputs = [ From 80475b46f52a1e28a70b1866c2a8edb071208ac8 Mon Sep 17 00:00:00 2001 From: Jonas Heinrich Date: Thu, 20 Jan 2022 14:45:35 +0100 Subject: [PATCH 33/40] nixos/invoiceplane: init module and package at 1.5.11 (#146909) --- .../from_md/release-notes/rl-2205.section.xml | 8 + .../manual/release-notes/rl-2205.section.md | 2 + nixos/modules/module-list.nix | 1 + .../services/web-apps/invoiceplane.nix | 305 ++++++++++++++++++ nixos/tests/all-tests.nix | 1 + nixos/tests/invoiceplane.nix | 82 +++++ .../servers/web-apps/invoiceplane/default.nix | 32 ++ pkgs/top-level/all-packages.nix | 2 + 8 files changed, 433 insertions(+) create mode 100644 nixos/modules/services/web-apps/invoiceplane.nix create mode 100644 nixos/tests/invoiceplane.nix create mode 100644 pkgs/servers/web-apps/invoiceplane/default.nix diff --git a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml index ce45b0d79775..2875ea683f8f 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml @@ -108,6 +108,14 @@ services.powerdns-admin. + + + InvoicePlane, + web application for managing and creating invoices. Available + at + services.invoiceplane. + + maddy, a diff --git a/nixos/doc/manual/release-notes/rl-2205.section.md b/nixos/doc/manual/release-notes/rl-2205.section.md index 25b3ada2c563..a59513adfc92 100644 --- a/nixos/doc/manual/release-notes/rl-2205.section.md +++ b/nixos/doc/manual/release-notes/rl-2205.section.md @@ -35,6 +35,8 @@ In addition to numerous new and upgraded packages, this release has the followin - [PowerDNS-Admin](https://github.com/ngoduykhanh/PowerDNS-Admin), a web interface for the PowerDNS server. Available at [services.powerdns-admin](options.html#opt-services.powerdns-admin.enable). +- [InvoicePlane](https://invoiceplane.com), web application for managing and creating invoices. Available at [services.invoiceplane](options.html#opt-services.invoiceplane.enable). + - [maddy](https://maddy.email), a composable all-in-one mail server. Available as [services.maddy](options.html#opt-services.maddy.enable). - [mtr-exporter](https://github.com/mgumz/mtr-exporter), a Prometheus exporter for mtr metrics. Available as [services.mtr-exporter](options.html#opt-services.mtr-exporter.enable). diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index fdf93f2e17c5..4b2cb803e20e 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -1022,6 +1022,7 @@ ./services/web-apps/keycloak.nix ./services/web-apps/lemmy.nix ./services/web-apps/invidious.nix + ./services/web-apps/invoiceplane.nix ./services/web-apps/limesurvey.nix ./services/web-apps/mastodon.nix ./services/web-apps/mattermost.nix diff --git a/nixos/modules/services/web-apps/invoiceplane.nix b/nixos/modules/services/web-apps/invoiceplane.nix new file mode 100644 index 000000000000..095eec36dec3 --- /dev/null +++ b/nixos/modules/services/web-apps/invoiceplane.nix @@ -0,0 +1,305 @@ +{ config, pkgs, lib, ... }: + +with lib; + +let + cfg = config.services.invoiceplane; + eachSite = cfg.sites; + user = "invoiceplane"; + webserver = config.services.${cfg.webserver}; + + invoiceplane-config = hostName: cfg: pkgs.writeText "ipconfig.php" '' + IP_URL=http://${hostName} + ENABLE_DEBUG=false + DISABLE_SETUP=false + REMOVE_INDEXPHP=false + DB_HOSTNAME=${cfg.database.host} + DB_USERNAME=${cfg.database.user} + # NOTE: file_get_contents adds newline at the end of returned string + DB_PASSWORD=${if cfg.database.passwordFile == null then "" else "trim(file_get_contents('${cfg.database.passwordFile}'), \"\\r\\n\")"} + DB_DATABASE=${cfg.database.name} + DB_PORT=${toString cfg.database.port} + SESS_EXPIRATION=864000 + ENABLE_INVOICE_DELETION=false + DISABLE_READ_ONLY=false + ENCRYPTION_KEY= + ENCRYPTION_CIPHER=AES-256 + SETUP_COMPLETED=false + ''; + + extraConfig = hostName: cfg: pkgs.writeText "extraConfig.php" '' + ${toString cfg.extraConfig} + ''; + + pkg = hostName: cfg: pkgs.stdenv.mkDerivation rec { + pname = "invoiceplane-${hostName}"; + version = src.version; + src = pkgs.invoiceplane; + + patchPhase = '' + # Patch index.php file to load additional config file + substituteInPlace index.php \ + --replace "require('vendor/autoload.php');" "require('vendor/autoload.php'); \$dotenv = new \Dotenv\Dotenv(__DIR__, 'extraConfig.php'); \$dotenv->load();"; + ''; + + installPhase = '' + mkdir -p $out + cp -r * $out/ + + # symlink uploads and log directories + rm -r $out/uploads $out/application/logs $out/vendor/mpdf/mpdf/tmp + ln -sf ${cfg.stateDir}/uploads $out/ + ln -sf ${cfg.stateDir}/logs $out/application/ + ln -sf ${cfg.stateDir}/tmp $out/vendor/mpdf/mpdf/ + + # symlink the InvoicePlane config + ln -s ${cfg.stateDir}/ipconfig.php $out/ipconfig.php + + # symlink the extraConfig file + ln -s ${extraConfig hostName cfg} $out/extraConfig.php + + # symlink additional templates + ${concatMapStringsSep "\n" (template: "cp -r ${template}/. $out/application/views/invoice_templates/pdf/") cfg.invoiceTemplates} + ''; + }; + + siteOpts = { lib, name, ... }: + { + options = { + + enable = mkEnableOption "InvoicePlane web application"; + + stateDir = mkOption { + type = types.path; + default = "/var/lib/invoiceplane/${name}"; + description = '' + This directory is used for uploads of attachements and cache. + The directory passed here is automatically created and permissions + adjusted as required. + ''; + }; + + database = { + host = mkOption { + type = types.str; + default = "localhost"; + description = "Database host address."; + }; + + port = mkOption { + type = types.port; + default = 3306; + description = "Database host port."; + }; + + name = mkOption { + type = types.str; + default = "invoiceplane"; + description = "Database name."; + }; + + user = mkOption { + type = types.str; + default = "invoiceplane"; + description = "Database user."; + }; + + passwordFile = mkOption { + type = types.nullOr types.path; + default = null; + example = "/run/keys/invoiceplane-dbpassword"; + description = '' + A file containing the password corresponding to + . + ''; + }; + + createLocally = mkOption { + type = types.bool; + default = true; + description = "Create the database and database user locally."; + }; + }; + + invoiceTemplates = mkOption { + type = types.listOf types.path; + default = []; + description = '' + List of path(s) to respective template(s) which are copied from the 'invoice_templates/pdf' directory. + These templates need to be packaged before use, see example. + ''; + example = literalExpression '' + let + # Let's package an example template + template-vtdirektmarketing = pkgs.stdenv.mkDerivation { + name = "vtdirektmarketing"; + # Download the template from a public repository + src = pkgs.fetchgit { + url = "https://git.project-insanity.org/onny/invoiceplane-vtdirektmarketing.git"; + sha256 = "1hh0q7wzsh8v8x03i82p6qrgbxr4v5fb05xylyrpp975l8axyg2z"; + }; + sourceRoot = "."; + # Installing simply means copying template php file to the output directory + installPhase = "" + mkdir -p $out + cp invoiceplane-vtdirektmarketing/vtdirektmarketing.php $out/ + ""; + }; + # And then pass this package to the template list like this: + in [ template-vtdirektmarketing ] + ''; + }; + + poolConfig = mkOption { + type = with types; attrsOf (oneOf [ str int bool ]); + default = { + "pm" = "dynamic"; + "pm.max_children" = 32; + "pm.start_servers" = 2; + "pm.min_spare_servers" = 2; + "pm.max_spare_servers" = 4; + "pm.max_requests" = 500; + }; + description = '' + Options for the InvoicePlane PHP pool. See the documentation on php-fpm.conf + for details on configuration directives. + ''; + }; + + extraConfig = mkOption { + type = types.nullOr types.lines; + default = null; + example = '' + SETUP_COMPLETED=true + DISABLE_SETUP=true + IP_URL=https://invoice.example.com + ''; + description = '' + InvoicePlane configuration. Refer to + + for details on supported values. + ''; + }; + + }; + + }; +in +{ + # interface + options = { + services.invoiceplane = mkOption { + type = types.submodule { + + options.sites = mkOption { + type = types.attrsOf (types.submodule siteOpts); + default = {}; + description = "Specification of one or more WordPress sites to serve"; + }; + + options.webserver = mkOption { + type = types.enum [ "caddy" ]; + default = "caddy"; + description = '' + Which webserver to use for virtual host management. Currently only + caddy is supported. + ''; + }; + }; + default = {}; + description = "InvoicePlane configuration."; + }; + + }; + + # implementation + config = mkIf (eachSite != {}) (mkMerge [{ + + assertions = flatten (mapAttrsToList (hostName: cfg: + [{ assertion = cfg.database.createLocally -> cfg.database.user == user; + message = ''services.invoiceplane.sites."${hostName}".database.user must be ${user} if the database is to be automatically provisioned''; + } + { assertion = cfg.database.createLocally -> cfg.database.passwordFile == null; + message = ''services.invoiceplane.sites."${hostName}".database.passwordFile cannot be specified if services.invoiceplane.sites."${hostName}".database.createLocally is set to true.''; + }] + ) eachSite); + + services.mysql = mkIf (any (v: v.database.createLocally) (attrValues eachSite)) { + enable = true; + package = mkDefault pkgs.mariadb; + ensureDatabases = mapAttrsToList (hostName: cfg: cfg.database.name) eachSite; + ensureUsers = mapAttrsToList (hostName: cfg: + { name = cfg.database.user; + ensurePermissions = { "${cfg.database.name}.*" = "ALL PRIVILEGES"; }; + } + ) eachSite; + }; + + services.phpfpm = { + phpPackage = pkgs.php74; + pools = mapAttrs' (hostName: cfg: ( + nameValuePair "invoiceplane-${hostName}" { + inherit user; + group = webserver.group; + settings = { + "listen.owner" = webserver.user; + "listen.group" = webserver.group; + } // cfg.poolConfig; + } + )) eachSite; + }; + + } + + { + systemd.tmpfiles.rules = flatten (mapAttrsToList (hostName: cfg: [ + "d ${cfg.stateDir} 0750 ${user} ${webserver.group} - -" + "f ${cfg.stateDir}/ipconfig.php 0750 ${user} ${webserver.group} - -" + "d ${cfg.stateDir}/logs 0750 ${user} ${webserver.group} - -" + "d ${cfg.stateDir}/uploads 0750 ${user} ${webserver.group} - -" + "d ${cfg.stateDir}/uploads/archive 0750 ${user} ${webserver.group} - -" + "d ${cfg.stateDir}/uploads/customer_files 0750 ${user} ${webserver.group} - -" + "d ${cfg.stateDir}/uploads/temp 0750 ${user} ${webserver.group} - -" + "d ${cfg.stateDir}/uploads/temp/mpdf 0750 ${user} ${webserver.group} - -" + "d ${cfg.stateDir}/tmp 0750 ${user} ${webserver.group} - -" + ]) eachSite); + + systemd.services.invoiceplane-config = { + serviceConfig.Type = "oneshot"; + script = concatStrings (mapAttrsToList (hostName: cfg: + '' + mkdir -p ${cfg.stateDir}/logs \ + ${cfg.stateDir}/uploads + if ! grep -q IP_URL "${cfg.stateDir}/ipconfig.php"; then + cp "${invoiceplane-config hostName cfg}" "${cfg.stateDir}/ipconfig.php" + fi + '') eachSite); + wantedBy = [ "multi-user.target" ]; + }; + + users.users.${user} = { + group = webserver.group; + isSystemUser = true; + }; + } + + (mkIf (cfg.webserver == "caddy") { + services.caddy = { + enable = true; + virtualHosts = mapAttrs' (hostName: cfg: ( + nameValuePair "http://${hostName}" { + extraConfig = '' + root * ${pkg hostName cfg} + file_server + + php_fastcgi unix/${config.services.phpfpm.pools."invoiceplane-${hostName}".socket} + ''; + } + )) eachSite; + }; + }) + + + ]); +} + diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 6e66e9cbe96d..940ae11ddd1f 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -215,6 +215,7 @@ in initrd-secrets = handleTest ./initrd-secrets.nix {}; inspircd = handleTest ./inspircd.nix {}; installer = handleTest ./installer.nix {}; + invoiceplane = handleTest ./invoiceplane.nix {}; iodine = handleTest ./iodine.nix {}; ipfs = handleTest ./ipfs.nix {}; ipv6 = handleTest ./ipv6.nix {}; diff --git a/nixos/tests/invoiceplane.nix b/nixos/tests/invoiceplane.nix new file mode 100644 index 000000000000..4e63f8ac21c9 --- /dev/null +++ b/nixos/tests/invoiceplane.nix @@ -0,0 +1,82 @@ +import ./make-test-python.nix ({ pkgs, ... }: + +{ + name = "invoiceplane"; + meta = with pkgs.lib.maintainers; { + maintainers = [ + onny + ]; + }; + + nodes = { + invoiceplane_caddy = { ... }: { + services.invoiceplane.webserver = "caddy"; + services.invoiceplane.sites = { + "site1.local" = { + #database.name = "invoiceplane1"; + database.createLocally = true; + enable = true; + }; + "site2.local" = { + #database.name = "invoiceplane2"; + database.createLocally = true; + enable = true; + }; + }; + + networking.firewall.allowedTCPPorts = [ 80 ]; + networking.hosts."127.0.0.1" = [ "site1.local" "site2.local" ]; + }; + }; + + testScript = '' + start_all() + + invoiceplane_caddy.wait_for_unit("caddy") + invoiceplane_caddy.wait_for_open_port(80) + invoiceplane_caddy.wait_for_open_port(3306) + + site_names = ["site1.local", "site2.local"] + + for site_name in site_names: + machine.wait_for_unit(f"phpfpm-invoiceplane-{site_name}") + + with subtest("Website returns welcome screen"): + assert "Please install InvoicePlane" in machine.succeed(f"curl -L {site_name}") + + with subtest("Finish InvoicePlane setup"): + machine.succeed( + f"curl -sSfL --cookie-jar cjar {site_name}/index.php/setup/language" + ) + csrf_token = machine.succeed( + "grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'" + ) + machine.succeed( + f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&ip_lang=english&btn_continue=Continue' {site_name}/index.php/setup/language" + ) + csrf_token = machine.succeed( + "grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'" + ) + machine.succeed( + f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/index.php/setup/prerequisites" + ) + csrf_token = machine.succeed( + "grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'" + ) + machine.succeed( + f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/index.php/setup/configure_database" + ) + csrf_token = machine.succeed( + "grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'" + ) + machine.succeed( + f"curl -sSfl --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/index.php/setup/install_tables" + ) + csrf_token = machine.succeed( + "grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'" + ) + machine.succeed( + f"curl -sSfl --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/index.php/setup/upgrade_tables" + ) + ''; +}) diff --git a/pkgs/servers/web-apps/invoiceplane/default.nix b/pkgs/servers/web-apps/invoiceplane/default.nix new file mode 100644 index 000000000000..6c9ffd44b9d7 --- /dev/null +++ b/pkgs/servers/web-apps/invoiceplane/default.nix @@ -0,0 +1,32 @@ +{ lib, stdenv, fetchurl, writeText, unzip, nixosTests }: + +stdenv.mkDerivation rec { + pname = "invoiceplane"; + version = "1.5.11"; + + src = fetchurl { + url = "https://github.com/InvoicePlane/InvoicePlane/releases/download/v${version}/v${version}.zip"; + sha256 = "137g0xps4kb3j7f5gz84ql18iggbya6d9dnrfp05g2qcbbp8kqad"; + }; + + nativeBuildInputs = [ unzip ]; + + sourceRoot = "."; + + installPhase = '' + mkdir -p $out/ + cp -r . $out/ + ''; + + passthru.tests = { + inherit (nixosTests) invoiceplane; + }; + + meta = with lib; { + description = "Self-hosted open source application for managing your invoices, clients and payments"; + license = licenses.mit; + homepage = "https://www.invoiceplane.com"; + platforms = platforms.all; + maintainers = with maintainers; [ onny ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index de4423285068..0244986ffb5c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3240,6 +3240,8 @@ with pkgs; interlock = callPackage ../servers/interlock {}; + invoiceplane = callPackage ../servers/web-apps/invoiceplane { }; + iotools = callPackage ../tools/misc/iotools { }; jellyfin = callPackage ../servers/jellyfin { }; From bb6bc8b315e7c941f30a64d7e58682ec235f9bb4 Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Thu, 20 Jan 2022 15:47:46 +0100 Subject: [PATCH 34/40] molden: fix download URL --- pkgs/applications/science/chemistry/molden/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/science/chemistry/molden/default.nix b/pkgs/applications/science/chemistry/molden/default.nix index 9595639d381e..03f7c6c2b40f 100644 --- a/pkgs/applications/science/chemistry/molden/default.nix +++ b/pkgs/applications/science/chemistry/molden/default.nix @@ -5,7 +5,7 @@ stdenv.mkDerivation rec { pname = "molden"; src = fetchurl { - url = "ftp://ftp.cmbi.umcn.nl/pub/molgraph/molden/molden${version}.tar.gz"; + url = "https://ftp.science.ru.nl/Molden//molden${version}.tar.gz"; sha256 = "02qi16pz2wffn3cc47dpjqhfafzwfmb79waw4nnhfyir8a4h3cq1"; }; From b4797eaffc45f360849067549c709295f0c0c1d2 Mon Sep 17 00:00:00 2001 From: dmayle Date: Thu, 20 Jan 2022 08:55:47 -0800 Subject: [PATCH 35/40] canon-cups-ufr2: 3.70 -> 5.40 (#155685) --- pkgs/misc/cups/drivers/canon/default.nix | 276 +++++++++-------------- pkgs/misc/cups/drivers/canon/preload.c | 81 ------- 2 files changed, 106 insertions(+), 251 deletions(-) delete mode 100644 pkgs/misc/cups/drivers/canon/preload.c diff --git a/pkgs/misc/cups/drivers/canon/default.nix b/pkgs/misc/cups/drivers/canon/default.nix index 93bc1f79e250..8b8fe78a19eb 100644 --- a/pkgs/misc/cups/drivers/canon/default.nix +++ b/pkgs/misc/cups/drivers/canon/default.nix @@ -4,9 +4,15 @@ , unzip , autoconf , automake -, libtool +, libtool_1_5 , makeWrapper , cups +, jbigkit +, glib +, gtk3 +, pkg-config +, gnome2 +, libxml2 , ghostscript , pkgsi686Linux , zlib @@ -15,16 +21,14 @@ let i686_NIX_GCC = pkgsi686Linux.callPackage ({ gcc }: gcc) { }; - i686_libxml2 = pkgsi686Linux.callPackage ({ libxml2 }: libxml2) { }; - commonVer = "4.10"; - version = "3.70"; - dl = "4/0100010264/01"; + version = "5.40"; + dl = "6/0100009236/10"; versionNoDots = builtins.replaceStrings [ "." ] [ "" ] version; src_canon = fetchurl { - url = "http://gdlp01.c-wss.com/gds/${dl}/linux-UFRII-drv-v${versionNoDots}-uken-07.tar.gz"; - sha256 = "01nxpg3h1c64p5skxv904fg5c4sblmif486vkij2v62wwn6l65pz"; + url = "http://gdlp01.c-wss.com/gds/${dl}/linux-UFRII-drv-v${versionNoDots}-usen-20.tar.gz"; + sha256 = "sha256:069z6ijmql62mcdyxnzc9mf0dxa6z1107cd0ab4i1adk8kr3d75k"; }; in @@ -36,190 +40,122 @@ stdenv.mkDerivation { src = src_canon; postUnpack = '' - (cd $sourceRoot; tar -xzf Sources/cndrvcups-common-${commonVer}-1.tar.gz) - (cd $sourceRoot; tar -xzf Sources/cndrvcups-lb-${version}-1.tar.gz) + (cd $sourceRoot; tar -xzf Sources/cnrdrvcups-lb-${version}-1.tar.gz) + (cd $sourceRoot; sed -ie "s@_prefix=/usr@_prefix=$out@" cnrdrvcups-common-${version}/allgen.sh) + (cd $sourceRoot; sed -ie "s@_libdir=/usr/lib@_libdir=$out/lib@" cnrdrvcups-common-${version}/allgen.sh) + (cd $sourceRoot; sed -ie "s@_bindir=/usr/bin@_libdir=$out/bin@" cnrdrvcups-common-${version}/allgen.sh) + (cd $sourceRoot; sed -ie "s@etc/cngplp@$out/etc/cngplp@" cnrdrvcups-common-${version}/cngplp/Makefile.am) + (cd $sourceRoot; sed -ie "s@usr/share/cngplp@$out/usr/share/cngplp@" cnrdrvcups-common-${version}/cngplp/src/Makefile.am) + (cd $sourceRoot; patchShebangs cnrdrvcups-common-${version}) + + (cd $sourceRoot; sed -ie "s@_prefix=/usr@_prefix=$out@" cnrdrvcups-lb-${version}/allgen.sh) + (cd $sourceRoot; sed -ie "s@_libdir=/usr/lib@_libdir=$out/lib@" cnrdrvcups-lb-${version}/allgen.sh) + (cd $sourceRoot; sed -ie "s@_bindir=/usr/bin@_libdir=$out/bin@" cnrdrvcups-lb-${version}/allgen.sh) + (cd $sourceRoot; sed -ie '/^cd \.\.\/cngplp/,/^cd files/{/^cd files/!{d}}' cnrdrvcups-lb-${version}/allgen.sh) + (cd $sourceRoot; sed -ie "s@cd \.\./pdftocpca@cd pdftocpca@" cnrdrvcups-lb-${version}/allgen.sh) + (cd $sourceRoot; sed -i "/CNGPLPDIR/d" cnrdrvcups-lb-${version}/Makefile) + (cd $sourceRoot; patchShebangs cnrdrvcups-lb-${version}) ''; - nativeBuildInputs = [ makeWrapper unzip autoconf automake libtool ]; + nativeBuildInputs = [ makeWrapper unzip autoconf automake libtool_1_5 ]; - buildInputs = [ cups zlib ]; + buildInputs = [ cups zlib jbigkit glib gtk3 pkg-config gnome2.libglade libxml2 ]; installPhase = '' runHook preInstall - ## - ## cndrvcups-common buildPhase - ## - ( cd cndrvcups-common-${commonVer}/buftool - autoreconf -fi - ./autogen.sh --prefix=$out --enable-progpath=$out/bin --libdir=$out/lib --disable-shared --enable-static - make - ) - - ( cd cndrvcups-common-${commonVer}/backend - ./autogen.sh --prefix=$out --libdir=$out/lib - make - ) - - ( cd cndrvcups-common-${commonVer}/c3plmod_ipc - make - ) - - ## - ## cndrvcups-common installPhase - ## - - ( cd cndrvcups-common-${commonVer}/buftool + ( + cd cnrdrvcups-common-${version} + ./allgen.sh make install ) - - ( cd cndrvcups-common-${commonVer}/backend - make install - ) - - ( cd cndrvcups-common-${commonVer}/c3plmod_ipc - make install DESTDIR=$out/lib - ) - - ( cd cndrvcups-common-${commonVer}/libs - chmod 755 * - mkdir -p $out/lib32 - mkdir -p $out/bin - cp libcaiowrap.so.1.0.0 $out/lib32 - cp libcaiousb.so.1.0.0 $out/lib32 - cp libc3pl.so.0.0.1 $out/lib32 - cp libcaepcm.so.1.0 $out/lib32 - cp libColorGear.so.0.0.0 $out/lib32 - cp libColorGearC.so.1.0.0 $out/lib32 - cp libcanon_slim.so.1.0.0 $out/lib32 - cp c3pldrv $out/bin - ) - - (cd cndrvcups-common-${commonVer}/Rule + ( + cd cnrdrvcups-common-${version}/Rule mkdir -p $out/share/usb - chmod 644 *.usb-quirks $out/share/usb + install -m 644 *.usb-quirks $out/share/usb ) - - (cd cndrvcups-common-${commonVer}/data - chmod 644 *.ICC - mkdir -p $out/share/caepcm - cp *.ICC $out/share/caepcm - cp *.icc $out/share/caepcm - cp *.PRF $out/share/caepcm - ) - - (cd $out/lib32 - ln -sf libc3pl.so.0.0.1 libc3pl.so.0 - ln -sf libc3pl.so.0.0.1 libc3pl.so - ln -sf libcaepcm.so.1.0 libcaepcm.so.1 - ln -sf libcaepcm.so.1.0 libcaepcm.so - ln -sf libcaiowrap.so.1.0.0 libcaiowrap.so.1 - ln -sf libcaiowrap.so.1.0.0 libcaiowrap.so - ln -sf libcaiousb.so.1.0.0 libcaiousb.so.1 - ln -sf libcaiousb.so.1.0.0 libcaiousb.so - ln -sf libcanon_slim.so.1.0.0 libcanon_slim.so.1 - ln -sf libcanon_slim.so.1.0.0 libcanon_slim.so - ln -sf libColorGear.so.0.0.0 libColorGear.so.0 - ln -sf libColorGear.so.0.0.0 libColorGear.so - ln -sf libColorGearC.so.1.0.0 libColorGearC.so.1 - ln -sf libColorGearC.so.1.0.0 libColorGearC.so - ) - - (cd $out/lib - ln -sf libcanonc3pl.so.1.0.0 libcanonc3pl.so - ln -sf libcanonc3pl.so.1.0.0 libcanonc3pl.so.1 - ) - - patchelf --set-rpath "$(cat ${i686_NIX_GCC}/nix-support/orig-cc)/lib" $out/lib32/libColorGear.so.0.0.0 - patchelf --set-rpath "$(cat ${i686_NIX_GCC}/nix-support/orig-cc)/lib" $out/lib32/libColorGearC.so.1.0.0 - - patchelf --interpreter "$(cat ${i686_NIX_GCC}/nix-support/dynamic-linker)" --set-rpath "$out/lib32" $out/bin/c3pldrv - - # c3pldrv is programmed with fixed paths that point to "/usr/{bin,lib.share}/..." - # preload32 wrappes all necessary function calls to redirect the fixed paths - # into $out. - mkdir -p $out/libexec - preload32=$out/libexec/libpreload32.so - ${i686_NIX_GCC}/bin/gcc -shared ${./preload.c} -o $preload32 -ldl -DOUT=\"$out\" -fPIC - wrapProgram "$out/bin/c3pldrv" \ - --set PRELOAD_DEBUG 1 \ - --set LD_PRELOAD $preload32 \ - --prefix LD_LIBRARY_PATH : "$out/lib32" - - - - ## - ## cndrvcups-lb buildPhase - ## - - ( cd cndrvcups-lb-${version}/buftool - ./autogen.sh --prefix=$out --libdir=$out/lib --enable-progpath=$out/bin --enable-static - make - ) - - ( cd cndrvcups-lb-${version}/pstoufr2cpca - ./autogen.sh --prefix=$out --libdir=$out/lib - make - ) - - ## - ## cndrvcups-lb installPhase - ## - - ( cd cndrvcups-lb-${version}/pstoufr2cpca + ( + cd cnrdrvcups-lb-${version} + ./allgen.sh make install ) - - ( cd cndrvcups-lb-${version}/libs - chmod 755 * + ( + cd lib mkdir -p $out/lib32 - mkdir -p $out/bin - cp libcanonufr2.la $out/lib32 - cp libcanonufr2.so.1.0.0 $out/lib32 - cp libufr2filter.so.1.0.0 $out/lib32 - cp libEnoJBIG.so.1.0.0 $out/lib32 - cp libEnoJPEG.so.1.0.0 $out/lib32 - cp libcaiocnpkbidi.so.1.0.0 $out/lib32 - cp libcnlbcm.so.1.0 $out/lib32 + install -m 755 libs32/intel/libColorGearCufr2.so.2.0.0 $out/lib32 + install -m 755 libs32/intel/libcaepcmufr2.so.1.0 $out/lib32 + install -m 755 libs32/intel/libcaiocnpkbidir.so.1.0.0 $out/lib32 + install -m 755 libs32/intel/libcaiousb.so.1.0.0 $out/lib32 + install -m 755 libs32/intel/libcaiowrapufr2.so.1.0.0 $out/lib32 + install -m 755 libs32/intel/libcanon_slimufr2.so.1.0.0 $out/lib32 + install -m 755 libs32/intel/libcanonufr2r.so.1.0.0 $out/lib32 + install -m 755 libs32/intel/libcnaccm.so.1.0 $out/lib32 + install -m 755 libs32/intel/libcnlbcmr.so.1.0 $out/lib32 + install -m 755 libs32/intel/libcnncapcmr.so.1.0 $out/lib32 + install -m 755 libs32/intel/libufr2filterr.so.1.0.0 $out/lib32 - cp cnpkmoduleufr2 $out/bin #maybe needs setuid 4755 - cp cnpkbidi $out/bin - ) + mkdir -p $out/lib + install -m 755 libs64/intel/libColorGearCufr2.so.2.0.0 $out/lib + install -m 755 libs64/intel/libcaepcmufr2.so.1.0 $out/lib + install -m 755 libs64/intel/libcaiocnpkbidir.so.1.0.0 $out/lib + install -m 755 libs64/intel/libcaiousb.so.1.0.0 $out/lib + install -m 755 libs64/intel/libcaiowrapufr2.so.1.0.0 $out/lib + install -m 755 libs64/intel/libcanon_slimufr2.so.1.0.0 $out/lib + install -m 755 libs64/intel/libcanonufr2r.so.1.0.0 $out/lib + install -m 755 libs64/intel/libcnaccm.so.1.0 $out/lib + install -m 755 libs64/intel/libcnlbcmr.so.1.0 $out/lib + install -m 755 libs64/intel/libcnncapcmr.so.1.0 $out/lib + install -m 755 libs64/intel/libufr2filterr.so.1.0.0 $out/lib - ( cd $out/lib32 - ln -sf libcanonufr2.so.1.0.0 libcanonufr2.so - ln -sf libcanonufr2.so.1.0.0 libcanonufr2.so.1 - ln -sf libufr2filter.so.1.0.0 libufr2filter.so - ln -sf libufr2filter.so.1.0.0 libufr2filter.so.1 - ln -sf libEnoJBIG.so.1.0.0 libEnoJBIG.so - ln -sf libEnoJBIG.so.1.0.0 libEnoJBIG.so.1 - ln -sf libEnoJPEG.so.1.0.0 libEnoJPEG.so - ln -sf libEnoJPEG.so.1.0.0 libEnoJPEG.so.1 - ln -sf libcaiocnpkbidi.so.1.0.0 libcaiocnpkbidi.so - ln -sf libcaiocnpkbidi.so.1.0.0 libcaiocnpkbidi.so.1 - ln -sf libcnlbcm.so.1.0 libcnlbcm.so.1 - ln -sf libcnlbcm.so.1.0 libcnlbcm.so - ) + install -m 755 libs64/intel/cnpdfdrv $out/bin + install -m 755 libs64/intel/cnpkbidir $out/bin + install -m 755 libs64/intel/cnpkmoduleufr2r $out/bin + install -m 755 libs64/intel/cnrsdrvufr2 $out/bin + install -m 755 libs64/intel/cnsetuputil2 $out/bin + + mkdir -p $out/share/cnpkbidir + install -m 644 libs64/intel/cnpkbidir_info* $out/share/cnpkbidir - ( cd cndrvcups-lb-${version} - chmod 644 data/CnLB* - chmod 644 libs/cnpkbidi_info* - chmod 644 libs/ThLB* - mkdir -p $out/share/caepcm - mkdir -p $out/share/cnpkbidi mkdir -p $out/share/ufr2filter - cp data/CnLB* $out/share/caepcm - cp libs/cnpkbidi_info* $out/share/cnpkbidi - cp libs/ThLB* $out/share/ufr2filter + install -m 644 libs64/intel/ThLB* $out/share/ufr2filter + ) + + ( + cd $out/lib32 + ln -sf libcaepcmufr2.so.1.0 libcaepcmufr2.so + ln -sf libcaiowrapufr2.so.1.0.0 libcaiowrapufr2.so + ln -sf libcaiowrapufr2.so.1.0.0 libcaiowrapufr2.so.1 + ln -sf libcanon_slimufr2.so.1.0.0 libcanon_slimufr2.so + ln -sf libcanon_slimufr2.so.1.0.0 libcanon_slimufr2.so.1 + ln -sf libufr2filterr.so.1.0.0 libufr2filterr.so + ln -sf libufr2filterr.so.1.0.0 libufr2filterr.so.1 + ) + + ( + cd $out/lib + ln -sf libcaepcmufr2.so.1.0 libcaepcmufr2.so + ln -sf libcaiowrapufr2.so.1.0.0 libcaiowrapufr2.so + ln -sf libcaiowrapufr2.so.1.0.0 libcaiowrapufr2.so.1 + ln -sf libcanon_slimufr2.so.1.0.0 libcanon_slimufr2.so + ln -sf libcanon_slimufr2.so.1.0.0 libcanon_slimufr2.so.1 + ln -sf libufr2filterr.so.1.0.0 libufr2filterr.so + ln -sf libufr2filterr.so.1.0.0 libufr2filterr.so.1 + ) + + # Perhaps patch the lib64 version as well??? + patchelf --set-rpath "$(cat ${i686_NIX_GCC}/nix-support/orig-cc)/lib" $out/lib32/libColorGearCufr2.so.2.0.0 + + ( + cd lib/data/ufr2 + mkdir -p $out/share/caepcm + install -m 644 *.ICC $out/share/caepcm + install -m 644 *.icc $out/share/caepcm + install -m 644 *.PRF $out/share/caepcm + install -m 644 CnLB* $out/share/caepcm ) mkdir -p $out/share/cups/model - install -c -m 644 cndrvcups-lb-${version}/ppd/CN*.ppd $out/share/cups/model/ - - patchelf --set-rpath "$out/lib32:${i686_libxml2.out}/lib" $out/lib32/libcanonufr2.so.1.0.0 - - patchelf --interpreter "$(cat ${i686_NIX_GCC}/nix-support/dynamic-linker)" --set-rpath "$out/lib32" $out/bin/cnpkmoduleufr2 - patchelf --interpreter "$(cat ${i686_NIX_GCC}/nix-support/dynamic-linker)" --set-rpath "$out/lib32:${i686_libxml2.out}/lib" $out/bin/cnpkbidi + install -m 644 cnrdrvcups-lb-${version}/ppd/*.ppd $out/share/cups/model/ makeWrapper "${ghostscript}/bin/gs" "$out/bin/gs" \ --prefix LD_LIBRARY_PATH ":" "$out/lib" \ diff --git a/pkgs/misc/cups/drivers/canon/preload.c b/pkgs/misc/cups/drivers/canon/preload.c deleted file mode 100644 index f3a30063a6e3..000000000000 --- a/pkgs/misc/cups/drivers/canon/preload.c +++ /dev/null @@ -1,81 +0,0 @@ -/* - * LD_PRELOAD trick to make c3pldrv handle the absolute path to /usr/{bin,lib,share)}. - * As c3pldrv is a 32 bit executable, /lib will be rewritten to /lib32. - * - * Usage: - * gcc -shared -fPIC -DOUT="$out" preload.c -o preload.so -ldl - * LD_PRELOAD=$PWD/preload.so ./c3pldrv - */ - -#define _GNU_SOURCE -#include -#include -#include -#include -#include -#include -#include - -#ifndef OUT -#error Missing OUT define - path to the installation directory. -#endif - -typedef void *(*dlopen_func_t)(const char *filename, int flag); -typedef int (*open_func_t)(const char *pathname, int flags, ...); -typedef int (*execv_func_t)(const char *path, char *const argv[]); - - -void *dlopen(const char *filename, int flag) -{ - dlopen_func_t orig_dlopen; - const char *new_filename; - char buffer[PATH_MAX]; - - orig_dlopen = (dlopen_func_t)dlsym(RTLD_NEXT, "dlopen"); - - new_filename = filename; - if (strncmp("/usr/lib", filename, 8) == 0) { - snprintf(buffer, PATH_MAX, OUT "/lib32%s", filename+8); - buffer[PATH_MAX-1] = '\0'; - new_filename = buffer; - } - - return orig_dlopen(new_filename, flag); -} - -int open(const char *pathname, int flags, ...) -{ - open_func_t orig_open; - const char *new_pathname; - char buffer[PATH_MAX]; - - orig_open = (open_func_t)dlsym(RTLD_NEXT, "open"); - - new_pathname = pathname; - if (strncmp("/usr/share", pathname, 10) == 0) { - snprintf(buffer, PATH_MAX, OUT "%s", pathname+4); - buffer[PATH_MAX-1] = '\0'; - new_pathname = buffer; - } - - return orig_open(new_pathname, flags); -} - -int execv(const char *path, char *const argv[]) -{ - execv_func_t orig_execv; - const char *new_path; - char buffer[PATH_MAX]; - - orig_execv = (execv_func_t)dlsym(RTLD_NEXT, "execv"); - - new_path = path; - if (strncmp("/usr/bin", path, 8) == 0) { - snprintf(buffer, PATH_MAX, OUT "%s", path+4); - buffer[PATH_MAX-1] = '\0'; - new_path = buffer; - } - - return orig_execv(new_path, argv); -} - From c9c8103e6338f4545f1c8bcbe76a47b40956f72a Mon Sep 17 00:00:00 2001 From: Kyle Sferrazza Date: Thu, 20 Jan 2022 11:59:32 -0500 Subject: [PATCH 36/40] maintainers: update my email address --- maintainers/maintainer-list.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index bdb2a2c8bb63..b85bbc046c37 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -6604,7 +6604,7 @@ }; kylesferrazza = { name = "Kyle Sferrazza"; - email = "kyle.sferrazza@gmail.com"; + email = "nixpkgs@kylesferrazza.com"; github = "kylesferrazza"; githubId = 6677292; From 86ece896588cec5e21b76e856df35b53fbe370ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Zimmermann?= Date: Thu, 20 Jan 2022 14:17:34 +0100 Subject: [PATCH 37/40] ocamlPackages.lablgtk3: fix version reporting --- pkgs/development/ocaml-modules/lablgtk3/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/development/ocaml-modules/lablgtk3/default.nix b/pkgs/development/ocaml-modules/lablgtk3/default.nix index 29bc928e6220..81fb51d1f1e2 100644 --- a/pkgs/development/ocaml-modules/lablgtk3/default.nix +++ b/pkgs/development/ocaml-modules/lablgtk3/default.nix @@ -1,4 +1,4 @@ -{ lib, fetchFromGitHub, pkg-config, buildDunePackage, dune-configurator, gtk3, cairo2 }: +{ lib, fetchFromGitHub, fetchpatch, pkg-config, buildDunePackage, dune-configurator, gtk3, cairo2 }: buildDunePackage rec { version = "3.1.2"; @@ -15,6 +15,11 @@ buildDunePackage rec { sha256 = "sha256:0b17w9qb1f02h3313cm62mrqlhwxficppzm72n7sf8mmwrylxbm7"; }; + patches = [ (fetchpatch { + name = "dune-project.patch"; + url = "https://raw.githubusercontent.com/ocaml/opam-repository/10a48cb9fab88f67f6cb70280e0fec035c32d41c/packages/lablgtk3/lablgtk3.3.1.2/files/dune-project.patch"; + sha256 = "03jf5hclqdq7iq84djaqcnfnnnd7z3hb48rr8n1gyxzjyx86b3fh"; + }) ]; nativeBuildInputs = [ pkg-config ]; buildInputs = [ dune-configurator ]; propagatedBuildInputs = [ gtk3 cairo2 ]; From 4a7fa6456d7a7147f9314aaca4203ce6b1e2977f Mon Sep 17 00:00:00 2001 From: taku0 Date: Sat, 15 Jan 2022 16:03:21 +0900 Subject: [PATCH 38/40] openssl_1_1: fix build on Darwin See https://github.com/NixOS/nixpkgs/pull/150733/files#r785279118 --- pkgs/development/libraries/openssl/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index ceca7fa636f1..96b91dc7b605 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -192,7 +192,7 @@ in { extraMeta.knownVulnerabilities = [ "Support for OpenSSL 1.0.2 ended with 2019." ]; }; - openssl_1_1 = common { + openssl_1_1 = common rec { version = "1.1.1m"; sha256 = "sha256-+JGZvosjykX8fLnx2NPuZzEjGChq0DD1MWrKZGLbbJY="; patches = [ From 7ab79bff9f100aa73c82def7bfdd3d8aa4771cde Mon Sep 17 00:00:00 2001 From: taku0 Date: Sat, 15 Jan 2022 16:06:53 +0900 Subject: [PATCH 39/40] openssl: remove `with lib` See https://github.com/NixOS/nixpkgs/pull/150733/files#r785279764 --- pkgs/development/libraries/openssl/default.nix | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index 96b91dc7b605..bbf5bd9aa16d 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -19,8 +19,6 @@ assert ( # cgit) that are needed here should be included directly in Nixpkgs as # files. -with lib; - let common = { version, sha256, patches ? [], withDocs ? false, extraMeta ? {} }: stdenv.mkDerivation rec { @@ -36,7 +34,7 @@ let postPatch = '' patchShebangs Configure - '' + optionalString (versionOlder version "1.1.0") '' + '' + lib.optionalString (lib.versionOlder version "1.1.0") '' patchShebangs test/* for a in test/t* ; do substituteInPlace "$a" \ @@ -44,15 +42,15 @@ let done '' # config is a configure script which is not installed. - + optionalString (versionAtLeast version "1.1.1") '' + + lib.optionalString (lib.versionAtLeast version "1.1.1") '' substituteInPlace config --replace '/usr/bin/env' '${buildPackages.coreutils}/bin/env' - '' + optionalString (versionAtLeast version "1.1.0" && stdenv.hostPlatform.isMusl) '' + '' + lib.optionalString (lib.versionAtLeast version "1.1.0" && stdenv.hostPlatform.isMusl) '' substituteInPlace crypto/async/arch/async_posix.h \ --replace '!defined(__ANDROID__) && !defined(__OpenBSD__)' \ '!defined(__ANDROID__) && !defined(__OpenBSD__) && 0' ''; - outputs = [ "bin" "dev" "out" "man" ] ++ optional withDocs "doc"; + outputs = [ "bin" "dev" "out" "man" ] ++ lib.optional withDocs "doc"; setOutputFlags = false; separateDebugInfo = !stdenv.hostPlatform.isDarwin && @@ -86,7 +84,7 @@ let else if stdenv.hostPlatform.isBSD then "./Configure BSD-generic${toString stdenv.hostPlatform.parsed.cpu.bits}" else if stdenv.hostPlatform.isMinGW - then "./Configure mingw${optionalString + then "./Configure mingw${lib.optionalString (stdenv.hostPlatform.parsed.cpu.bits != 32) (toString stdenv.hostPlatform.parsed.cpu.bits)}" else if stdenv.hostPlatform.isLinux @@ -108,12 +106,12 @@ let "-DUSE_CRYPTODEV_DIGESTS" ] ++ lib.optional enableSSL2 "enable-ssl2" ++ lib.optional enableSSL3 "enable-ssl3" - ++ lib.optional (versionAtLeast version "3.0.0") "enable-ktls" - ++ lib.optional (versionAtLeast version "1.1.0" && stdenv.hostPlatform.isAarch64) "no-afalgeng" + ++ lib.optional (lib.versionAtLeast version "3.0.0") "enable-ktls" + ++ lib.optional (lib.versionAtLeast version "1.1.0" && stdenv.hostPlatform.isAarch64) "no-afalgeng" # OpenSSL needs a specific `no-shared` configure flag. # See https://wiki.openssl.org/index.php/Compilation_and_Installation#Configure_Options # for a comprehensive list of configuration options. - ++ lib.optional (versionAtLeast version "1.1.0" && static) "no-shared"; + ++ lib.optional (lib.versionAtLeast version "1.1.0" && static) "no-shared"; makeFlags = [ "MANDIR=$(man)/share/man" From 03affacc87679e2dee187598de246e5e62f479fe Mon Sep 17 00:00:00 2001 From: Kyle Sferrazza Date: Thu, 20 Jan 2022 12:55:02 -0500 Subject: [PATCH 40/40] canon-cups-ufr2: remove myself as maintainer I no longer have a Canon printer so can't reliably maintain this package --- pkgs/misc/cups/drivers/canon/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/misc/cups/drivers/canon/default.nix b/pkgs/misc/cups/drivers/canon/default.nix index 8b8fe78a19eb..6a9fc808004e 100644 --- a/pkgs/misc/cups/drivers/canon/default.nix +++ b/pkgs/misc/cups/drivers/canon/default.nix @@ -169,7 +169,7 @@ stdenv.mkDerivation { homepage = "http://www.canon.com/"; license = licenses.unfree; maintainers = with maintainers; [ - kylesferrazza + # please consider maintaining if you are updating this package ]; }; }