From e83ec9612cf3dd7ecb4348c5b186cd0626a6d801 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Isma=C3=ABl=20Bouya?= Date: Sat, 25 May 2019 14:12:07 +0200 Subject: [PATCH] Upgrade pgloader and remove noChroot need --- nixops/scripts/setup | 8 ++++++-- pkgs/default.nix | 2 +- pkgs/pgloader/default.nix | 39 ++++++++++++++++++++++++++++--------- pkgs/pgloader/pgloader.json | 15 -------------- 4 files changed, 37 insertions(+), 27 deletions(-) delete mode 100644 pkgs/pgloader/pgloader.json diff --git a/nixops/scripts/setup b/nixops/scripts/setup index dce8332..793b7c3 100755 --- a/nixops/scripts/setup +++ b/nixops/scripts/setup @@ -82,15 +82,19 @@ done if nix show-config --json | jq -e '.sandbox.value == "true"' >/dev/null; then cat <<-EOF - There are some impure derivations in the repo currently (grep __noChroot), please put + There used to be some impure derivations (grep __noChroot), you may need sandbox = "relaxed" in /etc/nix/nix.conf you may also want to add keep-outputs = true keep-derivations = true to prevent garbage collector from deleting build dependencies (they take a lot of time to build) + and + allow-import-from-derivation = false + as an attempt to avoid having build-time derivations (doesn’t work for all packages) + press key to continue EOF - exit 1 + read y fi DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" diff --git a/pkgs/default.nix b/pkgs/default.nix index 297f524..c91f672 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -19,7 +19,7 @@ rec { notmuch-python3 = callPackage ../pkgs/notmuch/notmuch-python { pythonPackages = python3Packages; }; notmuch-vim = callPackage ../pkgs/notmuch/notmuch-vim {}; pg_activity = callPackage ../pkgs/pg_activity { inherit mylibs; }; - pgloader = callPackage ../pkgs/pgloader { inherit mylibs; }; + pgloader = callPackage ../pkgs/pgloader {}; telegram-cli = callPackage ../pkgs/telegram-cli { inherit mylibs; }; telegram-history-dump = callPackage ../pkgs/telegram-history-dump { inherit mylibs; }; telegramircd = callPackage ../pkgs/telegramircd { inherit mylibs; telethon = callPackage ../pkgs/telethon_sync {}; }; diff --git a/pkgs/pgloader/default.nix b/pkgs/pgloader/default.nix index 9f1be67..6093ada 100644 --- a/pkgs/pgloader/default.nix +++ b/pkgs/pgloader/default.nix @@ -1,19 +1,40 @@ -{ stdenv, mylibs, sbcl, cacert, sqlite, freetds, libzip, curl, git, openssl, makeWrapper }: -stdenv.mkDerivation (mylibs.fetchedGithub ./pgloader.json // { - # was removed from quicklisp packages cd7bfa6f48295f361c691a7520fb122938bd2a68, - # but needs curl to build everything otherwise - __noChroot = true; - buildInputs = [ sbcl cacert sqlite freetds libzip curl git openssl makeWrapper ]; +# https://github.com/NixOS/nixpkgs/pull/61702 +{ stdenv, fetchurl, makeWrapper, sbcl, sqlite, freetds, libzip, curl, git, cacert, openssl }: +stdenv.mkDerivation rec { + pname = "pgloader"; + version = "3.6.1"; + name = "${pname}-${version}"; + + src = fetchurl { + url = "https://github.com/dimitri/pgloader/releases/download/v3.6.1/pgloader-bundle-3.6.1.tgz"; + sha256 = "1sm8xmq30d1biin5br0y3vrv4fydbrzfqglz1hnvrkdyxrg7d6f9"; + }; + + nativeBuildInputs = [ git makeWrapper ]; + buildInputs = [ sbcl cacert sqlite freetds libzip curl openssl ]; + LD_LIBRARY_PATH = stdenv.lib.makeLibraryPath [ sqlite libzip curl git openssl freetds ]; + buildPhase = '' export PATH=$PATH:$out/bin export HOME=$TMPDIR + make pgloader ''; + dontStrip = true; enableParallelBuilding = false; + installPhase = '' - install -Dm755 build/bin/pgloader "$out/bin/pgloader" - wrapProgram $out/bin/pgloader --prefix LD_LIBRARY_PATH : "$LD_LIBRARY_PATH" + install -Dm755 bin/pgloader "$out/bin/pgloader" + wrapProgram $out/bin/pgloader --prefix LD_LIBRARY_PATH : "${LD_LIBRARY_PATH}" ''; -}) + + meta = with stdenv.lib; { + homepage = https://pgloader.io/; + description = "pgloader loads data into PostgreSQL and allows you to implement Continuous Migration from your current database to PostgreSQL"; + maintainers = with maintainers; [ mguentner ]; + license = licenses.postgresql; + platforms = platforms.all; + }; +} diff --git a/pkgs/pgloader/pgloader.json b/pkgs/pgloader/pgloader.json deleted file mode 100644 index dfe310b..0000000 --- a/pkgs/pgloader/pgloader.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "tag": "v3.5.2", - "meta": { - "name": "pgloader", - "url": "https://github.com/dimitri/pgloader", - "branch": "refs/tags/v3.5.2" - }, - "github": { - "owner": "dimitri", - "repo": "pgloader", - "rev": "63af7e7373975391446dcae151f5c61564849025", - "sha256": "1rd0k1x7ml6b6x526brachm13v51vx5ikpg64c8k8j29cskq2vqa", - "fetchSubmodules": true - } -} -- 2.41.0