jiebi/CodeConvo huggingface dataset:
++ lib.optional (!cgiSupport) "--disable-cgi" ++ lib.optional (!cliSupport) "--disable-cli" ++ lib.optional fpmSupport    "--enable-fpm" <del> ++ lib.optional pearSupport [ "--with-pear=$(out)/lib/php/pear" "--enable-xml" "--with-libxml" ] </del> <ins> ++ lib.optional pearSupport [ "--with-pear" "--enable-xml" "--with-libxml" ] </ins> ++ lib.optionals (pearSupport && (lib.versionOlder version "7.4")) [ "--enable-libxml" "--with-libxml-dir=${libxml2.dev}"
src = fetchurl { url = "mirror://sourceforge/project/ncompress/${name}.tar.gz"; <del> sha256 = "1y44ixc1w2vfvj1lm4dkcljlwv882ynrvm5i6l0lg1gf883j246l"; </del> <ins> sha256 = "0yjiwv1hwb253x3m6r1dq2k7m5c9nz0ib2j7fnm3hark7y6s42xh"; </ins> }; meta = {
patchShebangs src/data-to-c.pl ''; <ins> preFixup = '' # https://github.com/NixOS/nixpkgs/issues/101881 gappsWrapperArgs+=( --prefix XDG_DATA_DIRS : "${gnome.caribou}/share" ) # https://github.com/NixOS/nixpkgs/issues/129946 buildPythonPath "${python3.pkgs.xapp}" patchPythonScript $out/share/cinnamon/cinnamon-desktop-editor/cinnamon-desktop-editor.py ''; </ins> passthru = { providedSessions = [ "cinnamon" "cinnamon2d" ]; };
{ stdenv, fetchurl, pkgconfig, yasm <del> , freetype, fribidi </del> <ins> , freetype, fribidi, harfbuzz </ins> , encaSupport ? true, enca ? null # enca support , fontconfigSupport ? true, fontconfig ? null # fontconfig support <del> , harfbuzzSupport ? true, harfbuzz ? null # harfbuzz support </del> , rasterizerSupport ? false # Internal rasterizer , largeTilesSupport ? false # Use larger tiles in the rasterizer , libiconv
with stdenv.lib; stdenv.mkDerivation rec { pname = "libass"; <del> version = "0.14.0"; </del> <ins> version = "0.15.0"; </ins> src = fetchurl { url = "https://github.com/libass/libass/releases/download/${version}/${pname}-${version}.tar.xz"; <del> sha256 = "18iqznl4mabhj9ywfsz4kwvbsplcv1jjxq50nxssvbj8my1267w8"; </del> <ins> sha256 = "0cz8v6kh3f2j5rdjrra2z0h715fa16vjm7kambvqx9hak86262cz"; </ins> }; configureFlags = [ (mkFlag encaSupport "enca") (mkFlag fontconfigSupport "fontconfig") <del> (mkFlag harfbuzzSupport "harfbuzz") </del> (mkFlag rasterizerSupport "rasterizer") (mkFlag largeTilesSupport "large-tiles") ]; nativeBuildInputs = [ pkgconfig yasm ]; <del> buildInputs = [ freetype fribidi ] </del> <ins> buildInputs = [ freetype fribidi harfbuzz ] </ins> ++ optional encaSupport enca ++ optional fontconfigSupport fontconfig <del> ++ optional harfbuzzSupport harfbuzz </del> ++ optional stdenv.isDarwin libiconv; meta = {
<del> diff -ru3 SDL2-2.0.4/sdl2-config.cmake.in SDL2-2.0.4-new/sdl2-config.cmake.in --- SDL2-2.0.4/sdl2-config.cmake.in	2016-01-02 22:56:31.000000000 +0300 +++ SDL2-2.0.4-new/sdl2-config.cmake.in	2016-08-22 05:26:42.420397323 +0300 @@ -6,5 +6,6 @@ </del> <ins> diff -ru3 SDL2-2.0.12/sdl2-config.cmake.in SDL2-2.0.12-new/sdl2-config.cmake.in --- SDL2-2.0.12/sdl2-config.cmake.in	2020-03-11 02:36:18.000000000 +0100 +++ SDL2-2.0.12-new/sdl2-config.cmake.in	2020-11-11 11:59:05.178703826 +0100 @@ -6,7 +6,8 @@ </ins> set(SDL2_PREFIX "@prefix@") set(SDL2_EXEC_PREFIX "@prefix@") set(SDL2_LIBDIR "@libdir@")
+set(SDL2_INCLUDE_DIRS "@includedir@/SDL2" $ENV{SDL2_PATH}) +separate_arguments(SDL2_INCLUDE_DIRS) set(SDL2_LIBRARIES "-L${SDL2_LIBDIR} @SDL_RLD_FLAGS@ @SDL_LIBS@") <del> diff -ru3 SDL2-2.0.4/sdl2-config.in SDL2-2.0.4-new/sdl2-config.in --- SDL2-2.0.4/sdl2-config.in	2016-01-02 22:56:31.000000000 +0300 +++ SDL2-2.0.4-new/sdl2-config.in	2016-08-22 05:32:02.256397839 +0300 </del> <ins> string(STRIP "${SDL2_LIBRARIES}" SDL2_LIBRARIES) @@ -20,14 +21,14 @@ add_library(SDL2::SDL2 SHARED IMPORTED) set_target_properties(SDL2::SDL2 PROPERTIES -    INTERFACE_INCLUDE_DIRECTORIES "@includedir@/SDL2" +    INTERFACE_INCLUDE_DIRECTORIES "${SDL2_INCLUDE_DIRS}" IMPORTED_LINK_INTERFACE_LANGUAGES "C" IMPORTED_LOCATION "@libdir@/libSDL2.so" INTERFACE_LINK_LIBRARIES "${SDL2_EXTRA_LINK_FLAGS}") add_library(SDL2::SDL2-static STATIC IMPORTED) set_target_properties(SDL2::SDL2-static PROPERTIES -    INTERFACE_INCLUDE_DIRECTORIES "@includedir@/SDL2" +    INTERFACE_INCLUDE_DIRECTORIES "${SDL2_INCLUDE_DIRS}" IMPORTED_LINK_INTERFACE_LANGUAGES "C" IMPORTED_LOCATION "@libdir@/libSDL2.a" INTERFACE_LINK_LIBRARIES "${SDL2_EXTRA_LINK_FLAGS_STATIC}") Només a SDL2-2.0.12-new/: sdl2-config.cmake.in.orig diff -ru3 SDL2-2.0.12/sdl2-config.in SDL2-2.0.12-new/sdl2-config.in --- SDL2-2.0.12/sdl2-config.in	2020-03-11 02:36:18.000000000 +0100 +++ SDL2-2.0.12-new/sdl2-config.in	2020-11-11 11:56:26.432955479 +0100 </ins> @@ -42,7 +42,11 @@ echo @SDL_VERSION@ ;;
in rustPlatform.buildRustPackage rec { pname = "alacritty"; <del> version = "0.5.0"; </del> <ins> # 0.5.0 is not compatible with gnome 3.38 version = "0.6.0-rc1"; </ins> src = fetchFromGitHub { owner = "alacritty"; repo = pname; rev = "v${version}"; <del> sha256 = "1948j57xhqvc5y876s929x9rhd6j0xnw5c91g1zqw2rfncn602g2"; </del> <ins> sha256 = "RuIJvB0J/BQFqemOkEUiqS1uz0gMS49Dd8UQt0nbrQ0="; </ins> }; <del> cargoSha256 = "17lyzcj07f0vyki3091vgjd0w8ki11sw5m8gb3bxdph1dl04rria"; </del> <ins> cargoSha256 = "+3iZywLvy+8C7j6g9bqij2DSLjBoE2u1GXgfV04cWRY="; </ins> nativeBuildInputs = [ cmake
example = "/run/keys/ssmtp-authpass"; description = '' Path to a file that contains the password used for SMTP auth. The file <del> should not contain a trailing newline, if the password does not contain one. </del> <ins> should not contain a trailing newline, if the password does not contain one (e.g. use <command>echo -n "password" > file</command>). </ins> This file should be readable by the users that need to execute ssmtp. ''; };
stdenv.mkDerivation rec { name = "nmap${optionalString graphicalSupport "-graphical"}-${version}"; <del> version = "7.90"; </del> <ins> version = "7.80"; </ins> src = fetchurl { url = "https://nmap.org/dist/nmap-${version}.tar.bz2"; <del> sha256 = "1s20i84m9bci70lrl0p2j7h3kpbi9snmvyhc3lzc9s3mh92w6msm"; </del> <ins> sha256 = "1aizfys6l9f9grm82bk878w56mg0zpkfns3spzj157h98875mypw"; </ins> }; patches = [ ./zenmap.patch ]
<para> This chapter describes tools for creating various types of images. </para> <del> <xi:include href="images/appimagetools.xml" /> </del> <ins> <xi:include href="images/appimagetools.section.xml" /> </ins> <xi:include href="images/dockertools.section.xml" /> <xi:include href="images/ocitools.section.xml" /> <del> <xi:include href="images/snaptools.xml" /> </del> <ins> <xi:include href="images/snaptools.section.xml" /> </ins> </chapter>
<ins> # pkgs.appimageTools {#sec-pkgs-appimageTools} `pkgs.appimageTools` is a set of functions for extracting and wrapping [AppImage](https://appimage.org/) files. They are meant to be used if traditional packaging from source is infeasible, or it would take too long. To quickly run an AppImage file, `pkgs.appimage-run` can be used as well. ::: warning The `appimageTools` API is unstable and may be subject to backwards-incompatible changes in the future. ::: ## AppImage formats {#ssec-pkgs-appimageTools-formats} There are different formats for AppImages, see [the specification](https://github.com/AppImage/AppImageSpec/blob/74ad9ca2f94bf864a4a0dac1f369dd4f00bd1c28/draft.md#image-format) for details. - Type 1 images are ISO 9660 files that are also ELF executables. - Type 2 images are ELF executables with an appended filesystem. They can be told apart with `file -k`: ```ShellSession $ file -k type1.AppImage type1.AppImage: ELF 64-bit LSB executable, x86-64, version 1 (SYSV) ISO 9660 CD-ROM filesystem data 'AppImage' (Lepton 3.x), scale 0-0, spot sensor temperature 0.000000, unit celsius, color scheme 0, calibration: offset 0.000000, slope 0.000000, dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.18, BuildID[sha1]=d629f6099d2344ad82818172add1d38c5e11bc6d, stripped012- data $ file -k type2.AppImage type2.AppImage: ELF 64-bit LSB executable, x86-64, version 1 (SYSV) (Lepton 3.x), scale 232-60668, spot sensor temperature -4.187500, color scheme 15, show scale bar, calibration: offset -0.000000, slope 0.000000 (Lepton 2.x), scale 4111-45000, spot sensor temperature 412442.250000, color scheme 3, minimum point enabled, calibration: offset -75402534979642766821519867692934234112.000000, slope 5815371847733706829839455140374904832.000000, dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.18, BuildID[sha1]=79dcc4e55a61c293c5e19edbd8d65b202842579f, stripped012- data ``` Note how the type 1 AppImage is described as an `ISO 9660 CD-ROM filesystem`, and the type 2 AppImage is not. ## Wrapping {#ssec-pkgs-appimageTools-wrapping} Depending on the type of AppImage you're wrapping, you'll have to use `wrapType1` or `wrapType2`. ```nix appimageTools.wrapType2 { # or wrapType1 name = "patchwork"; src = fetchurl { url = "https://github.com/ssbc/patchwork/releases/download/v3.11.4/Patchwork-3.11.4-linux-x86_64.AppImage"; sha256 = "1blsprpkvm0ws9b96gb36f0rbf8f5jgmw4x6dsb1kswr4ysf591s"; }; extraPkgs = pkgs: with pkgs; [ ]; } ``` - `name` specifies the name of the resulting image. - `src` specifies the AppImage file to extract. - `extraPkgs` allows you to pass a function to include additional packages inside the FHS environment your AppImage is going to run in. There are a few ways to learn which dependencies an application needs: - Looking through the extracted AppImage files, reading its scripts and running `patchelf` and `ldd` on its executables. This can also be done in `appimage-run`, by setting `APPIMAGE_DEBUG_EXEC=bash`. - Running `strace -vfefile` on the wrapped executable, looking for libraries that can't be found. </ins>
<del> let inherit (import <nixpkgs> { }) snapTools firefox; in snapTools.makeSnap { meta = { name = "nix-example-firefox"; summary = firefox.meta.description; architectures = [ "amd64" ]; apps.nix-example-firefox = { command = "${firefox}/bin/firefox"; plugs = [ "pulseaudio" "camera" "browser-support" "avahi-observe" "cups-control" "desktop" "desktop-legacy" "gsettings" "home" "network" "mount-observe" "removable-media" "x11" ]; }; confinement = "strict"; }; } </del>
<ins> # pkgs.snapTools {#sec-pkgs-snapTools} `pkgs.snapTools` is a set of functions for creating Snapcraft images. Snap and Snapcraft is not used to perform these operations. ## The makeSnap Function {#ssec-pkgs-snapTools-makeSnap-signature} `makeSnap` takes a single named argument, `meta`. This argument mirrors [the upstream `snap.yaml` format](https://docs.snapcraft.io/snap-format) exactly. The `base` should not be specified, as `makeSnap` will force set it. Currently, `makeSnap` does not support creating GUI stubs. ## Build a Hello World Snap {#ssec-pkgs-snapTools-build-a-snap-hello} The following expression packages GNU Hello as a Snapcraft snap. ```{#ex-snapTools-buildSnap-hello .nix} let inherit (import <nixpkgs> { }) snapTools hello; in snapTools.makeSnap { meta = { name = "hello"; summary = hello.meta.description; description = hello.meta.longDescription; architectures = [ "amd64" ]; confinement = "strict"; apps.hello.command = "${hello}/bin/hello"; }; } ``` `nix-build` this expression and install it with `snap install ./result --dangerous`. `hello` will now be the Snapcraft version of the package. ## Build a Graphical Snap {#ssec-pkgs-snapTools-build-a-snap-firefox} Graphical programs require many more integrations with the host. This example uses Firefox as an example, because it is one of the most complicated programs we could package. ```{#ex-snapTools-buildSnap-firefox .nix} let inherit (import <nixpkgs> { }) snapTools firefox; in snapTools.makeSnap { meta = { name = "nix-example-firefox"; summary = firefox.meta.description; architectures = [ "amd64" ]; apps.nix-example-firefox = { command = "${firefox}/bin/firefox"; plugs = [ "pulseaudio" "camera" "browser-support" "avahi-observe" "cups-control" "desktop" "desktop-legacy" "gsettings" "home" "network" "mount-observe" "removable-media" "x11" ]; }; confinement = "strict"; }; } ``` `nix-build` this expression and install it with `snap install ./result --dangerous`. `nix-example-firefox` will now be the Snapcraft version of the Firefox package. The specific meaning behind plugs can be looked up in the [Snapcraft interface documentation](https://docs.snapcraft.io/supported-interfaces). </ins>
<del> <section xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude" xml:id="sec-pkgs-snapTools"> <title>pkgs.snapTools</title> <para> <varname>pkgs.snapTools</varname> is a set of functions for creating Snapcraft images. Snap and Snapcraft is not used to perform these operations. </para> <section xml:id="ssec-pkgs-snapTools-makeSnap-signature"> <title>The makeSnap Function</title> <para> <function>makeSnap</function> takes a single named argument, <parameter>meta</parameter>. This argument mirrors <link xlink:href="https://docs.snapcraft.io/snap-format">the upstream <filename>snap.yaml</filename> format</link> exactly. </para> <para> The <parameter>base</parameter> should not be specified, as <function>makeSnap</function> will force set it. </para> <para> Currently, <function>makeSnap</function> does not support creating GUI stubs. </para> </section> <section xml:id="ssec-pkgs-snapTools-build-a-snap-hello"> <title>Build a Hello World Snap</title> <example xml:id="ex-snapTools-buildSnap-hello"> <title>Making a Hello World Snap</title> <para> The following expression packages GNU Hello as a Snapcraft snap. </para> <programlisting><xi:include href="./snap/example-hello.nix" parse="text" /></programlisting> <para> <command>nix-build</command> this expression and install it with <command>snap install ./result --dangerous</command>. <command>hello</command> will now be the Snapcraft version of the package. </para> </example> </section> <section xml:id="ssec-pkgs-snapTools-build-a-snap-firefox"> <title>Build a Hello World Snap</title> <example xml:id="ex-snapTools-buildSnap-firefox"> <title>Making a Graphical Snap</title> <para> Graphical programs require many more integrations with the host. This example uses Firefox as an example, because it is one of the most complicated programs we could package. </para> <programlisting><xi:include href="./snap/example-firefox.nix" parse="text" /></programlisting> <para> <command>nix-build</command> this expression and install it with <command>snap install ./result --dangerous</command>. <command>nix-example-firefox</command> will now be the Snapcraft version of the Firefox package. </para> <para> The specific meaning behind plugs can be looked up in the <link xlink:href="https://docs.snapcraft.io/supported-interfaces">Snapcraft interface documentation</link>. </para> </example> </section> </section> </del>
# Somehow this does not get set automatically cmakeFlags = [ "-DSDL2MAIN_LIBRARY=${SDL2}/lib/libSDL2.so" ]; <ins> postInstall = '' install -Dm644 $src/resources/milkytracker.desktop $out/share/applications/milkytracker.desktop install -Dm644 $src/resources/pictures/carton.png $out/share/pixmaps/milkytracker.png install -Dm644 $src/resources/milkytracker.appdata $out/share/appdata/milkytracker.appdata.xml ''; </ins> meta = with stdenv.lib; { description = "Music tracker application, similar to Fasttracker II"; homepage = "http://milkytracker.org";
<del> { stdenv, lib, buildPackages, buildGoPackage, fetchFromGitHub, installShellFiles }: </del> <ins> { stdenv, lib, buildPackages, buildGoModule, fetchFromGitHub, installShellFiles }: let isCrossBuild = stdenv.hostPlatform != stdenv.buildPlatform; </ins> <del> let isCrossBuild = stdenv.hostPlatform != stdenv.buildPlatform; in buildGoPackage rec { </del> <ins> in buildGoModule rec { </ins> pname = "stern"; <del> version = "1.11.0"; goPackagePath = "github.com/wercker/stern"; </del> <ins> version = "1.13.1"; </ins> src = fetchFromGitHub { <del> owner = "wercker"; </del> <ins> owner = "stern"; </ins> repo = "stern"; <del> rev = version; sha256 = "0xndlq0ks8flzx6rdd4lnkxpkbvdy9sj1jwys5yj7p989ls8by3n"; </del> <ins> rev = "v${version}"; sha256 = "0fj6a52wb0jv5bz2j2wq3ljnlxnsj9bg3kbzgkz0vh0b63zyn782"; </ins> }; <del> deleteVendor = true; goDeps = ./deps.nix; </del> <ins> vendorSha256 = "14nrdaaby74bjbk777hr82p0ybzk3spc59lbrjn9z0q3hc0p4vaf"; </ins> nativeBuildInputs = [ installShellFiles ]; <ins> buildFlagsArray = [ "-ldflags=-s -w -X github.com/stern/stern/cmd.version=${version}" ]; </ins> postInstall = <del> let stern = if isCrossBuild then buildPackages.stern else "$out"; in </del> <ins> let stern = if isCrossBuild then buildPackages.stern else "$out"; in </ins> '' for shell in bash zsh; do ${stern}/bin/stern --completion $shell > stern.$shell
''; meta = with lib; { <del> description      = "Multi pod and container log tailing for Kubernetes"; homepage         = "https://github.com/wercker/stern"; license          = licenses.asl20; maintainers      = with maintainers; [ mbode ]; platforms        = platforms.unix; </del> <ins> description = "Multi pod and container log tailing for Kubernetes"; homepage = "https://github.com/stern/stern"; license = licenses.asl20; maintainers = with maintainers; [ mbode preisschild ]; platforms = platforms.unix; </ins> }; }
sha256 = "089r6i40lxcwzp60553b18f130asspnzqldlpii53smz52kvpirx"; }; <del> patches = [ ./glibc-fix.patch ]; </del> <ins> patches = [ # fix compilation error due to missing include ./glibc-fix.patch # restrict GDK backends to only X11 ./x11-only.patch ]; </ins> configureFlags = [ "--with-bash-path=${pkgs.bash}/bin/bash"
<ins> --- a/src/main.c	2021-02-09 13:54:32.847364236 +0100 +++ b/src/main.c	2021-02-09 10:41:51.541203271 +0100 @@ -1350,6 +1351,7 @@ vfs_file_monitor_clean(); return 1; } +            gdk_set_allowed_backends("x11"); gtk_init (&argc, &argv); int ret = custom_dialog_init( argc, argv ); if ( ret != 0 ) </ins>
# indeed GHC will refuse to compile with a binutils suffering from it. See # this comment for more information: # https://gitlab.haskell.org/ghc/ghc/issues/4210#note_78333 <del> lib.optional stdenv.targetPlatform.isAarch32 ./R_ARM_COPY.patch; </del> <ins> lib.optional (stdenv.targetPlatform.isAarch32 && stdenv.hostPlatform.system != stdenv.targetPlatform.system) ./R_ARM_COPY.patch; </ins> outputs = [ "out" "info" "man" ];
# - https://github.com/NixOS/nixpkgs/issues/108772 # - https://github.com/NixOS/nixpkgs/pull/117555 print(machine.succeed("su - alice -c 'file ~/.config/Signal/sql/db.sqlite'")) <del> # TODO: The DB should be encrypted and the following should be machine.fail # instead of machine.succeed but the DB is currently unencrypted and we # want to notice if this isn't the case anymore as the transition to a # encrypted DB can cause data loss!: </del> machine.succeed( <del> "su - alice -c 'file ~/.config/Signal/sql/db.sqlite' | grep -i sqlite" </del> <ins> "su - alice -c 'file ~/.config/Signal/sql/db.sqlite' | grep 'db.sqlite: data'" ) machine.fail( "su - alice -c 'file ~/.config/Signal/sql/db.sqlite' | grep -e SQLite -e database" </ins> ) ''; })
<ins> #!@PYTHON@ import json import os import re import shlex import sqlite3 import subprocess import sys DB_PATH = os.path.join(os.environ['HOME'], '.config/Signal/sql/db.sqlite') DB_COPY = os.path.join(os.environ['HOME'], '.config/Signal/sql/db.tmp') CONFIG_PATH = os.path.join(os.environ['HOME'], '.config/Signal/config.json') def zenity_askyesno(title, text): args = [ '@ZENITY@', '--question', '--title', shlex.quote(title), '--text', shlex.quote(text) ] return subprocess.run(args).returncode == 0 def start_signal(): os.execvp('@SIGNAL-DESKTOP@', ['@SIGNAL-DESKTOP@'] + sys.argv[1:]) def copy_pragma(name): result = subprocess.run([ '@SQLCIPHER@', DB_PATH, f"PRAGMA {name};" ], check=True, capture_output=True).stdout result = re.search(r'[0-9]+', result.decode()).group(0) subprocess.run([ '@SQLCIPHER@', DB_COPY, f"PRAGMA key = "x'{key}'"; PRAGMA {name} = {result};" ], check=True, capture_output=True) try: # Test if DB is encrypted: con = sqlite3.connect(f'file:{DB_PATH}?mode=ro', uri=True) cursor = con.cursor() cursor.execute("SELECT name FROM sqlite_master WHERE type='table';") con.close() except: # DB is encrypted, everything ok: start_signal() # DB is unencrypted! answer = zenity_askyesno( "Error: Signal-Desktop database is not encrypted", "Should we try to fix this automatically?" + "You likely want to backup ~/.config/Signal/ first." ) if not answer: answer = zenity_askyesno( "Launch Signal-Desktop", "DB is unencrypted, should we still launch Signal-Desktop?" + "Warning: This could result in data loss!" ) if not answer: print('Aborted') sys.exit(0) start_signal() # Re-encrypt the DB: with open(CONFIG_PATH) as json_file: key = json.load(json_file)['key'] result = subprocess.run([ '@SQLCIPHER@', DB_PATH, f" ATTACH DATABASE '{DB_COPY}' AS signal_db KEY "x'{key}'";" + " SELECT sqlcipher_export('signal_db');" + " DETACH DATABASE signal_db;" ]).returncode if result != 0: print('DB encryption failed') sys.exit(1) # Need to copy user_version and schema_version manually: copy_pragma('user_version') copy_pragma('schema_version') os.rename(DB_COPY, DB_PATH) start_signal() </ins>
# Symlink to bin mkdir -p $out/bin <del> ln -s $out/lib/Signal/signal-desktop $out/bin/signal-desktop </del> <ins> ln -s $out/lib/Signal/signal-desktop $out/bin/signal-desktop-unwrapped </ins> runHook postInstall ''; <ins> # Required for $SQLCIPHER_LIB which contains "/build/" inside the path: noAuditTmpdir = true; </ins> preFixup = '' <ins> export SQLCIPHER_LIB="$out/lib/Signal/resources/app.asar.unpacked/node_modules/better-sqlite3/build/Release/better_sqlite3.node" test -x "$SQLCIPHER_LIB" # To ensure the location hasn't changed </ins> gappsWrapperArgs+=( --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc ] }" <ins> --prefix LD_PRELOAD : "$SQLCIPHER_LIB" </ins> ${customLanguageWrapperArgs} )
patchelf --add-needed ${libpulseaudio}/lib/libpulse.so $out/lib/Signal/resources/app.asar.unpacked/node_modules/ringrtc/build/linux/libringrtc.node ''; <ins> postFixup = '' # This hack is temporarily required to avoid data-loss for users: cp ${./db-reencryption-wrapper.py} $out/bin/signal-desktop substituteInPlace $out/bin/signal-desktop  --replace '@PYTHON@' '${python3}/bin/python3'  --replace '@ZENITY@' '${gnome.zenity}/bin/zenity'  --replace '@SQLCIPHER@' '${sqlcipher}/bin/sqlcipher'  --replace '@SIGNAL-DESKTOP@' "$out/bin/signal-desktop-unwrapped" ''; </ins> # Tests if the application launches and waits for "Link your phone to Signal Desktop": passthru.tests.application-launch = nixosTests.signal-desktop;
<itemizedlist> <listitem> <para> <ins> <literal>stdenv.lib</literal> has been deprecated and will break eval in 21.11.  Please use <literal>pkgs.lib</literal> instead. See <link xlink:href="https://github.com/NixOS/nixpkgs/issues/108938">#108938</link> for details. </para> </listitem> <listitem> <para> </ins> The Mailman NixOS module (<literal>services.mailman</literal>) has a new option <xref linkend="opt-services.mailman.enablePostfix" />, defaulting to true, that controls integration with Postfix.
}; patchPhase = "patchShebangs ."; <del> preBuild = stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' </del> <ins> preBuild = lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' </ins> make CC=${buildPackages.stdenv.cc}/bin/cc find_sizes mv find_sizes find_sizes_build make clean substituteInPlace Makefile --replace "./find_sizes" "./find_sizes_build" <del> substituteInPlace Makefile --replace "ar cr" "${stdenv.lib.getBin stdenv.cc.bintools.bintools}/bin/${stdenv.cc.targetPrefix}ar cr" substituteInPlace Makefile --replace "ranlib" "${stdenv.lib.getBin stdenv.cc.bintools.bintools}/bin/${stdenv.cc.targetPrefix}ranlib" substituteInPlace Makefile --replace "STRIP=strip" "STRIP=${stdenv.lib.getBin stdenv.cc.bintools.bintools}/bin/${stdenv.cc.targetPrefix}strip" </del> <ins> substituteInPlace Makefile --replace "ar cr" "${lib.getBin stdenv.cc.bintools.bintools}/bin/${stdenv.cc.targetPrefix}ar cr" substituteInPlace Makefile --replace "ranlib" "${lib.getBin stdenv.cc.bintools.bintools}/bin/${stdenv.cc.targetPrefix}ranlib" substituteInPlace Makefile --replace "STRIP=strip" "STRIP=${lib.getBin stdenv.cc.bintools.bintools}/bin/${stdenv.cc.targetPrefix}strip" </ins> ''; nativeBuildInputs = [ perl zlib ]; #  buildInputs = [ zlib ];