From 816fd1b9b03630eada3e0580712930f6bc656b91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gutyina=20Gerg=C5=91?= Date: Mon, 8 Jan 2024 12:33:53 +0100 Subject: [PATCH 01/19] hck: add meta.mainProgram --- pkgs/tools/text/hck/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/text/hck/default.nix b/pkgs/tools/text/hck/default.nix index 0467894b116a..782d746398a1 100644 --- a/pkgs/tools/text/hck/default.nix +++ b/pkgs/tools/text/hck/default.nix @@ -12,10 +12,10 @@ rustPlatform.buildRustPackage rec { owner = "sstadick"; repo = pname; rev = "v${version}"; - sha256 = "sha256-KPpvai7+El2JA97EXDCstZ66FeyVCe7w+ERDDNRZ/h8="; + hash = "sha256-KPpvai7+El2JA97EXDCstZ66FeyVCe7w+ERDDNRZ/h8="; }; - cargoSha256 = "sha256-TpwUO0BL8kambnxAUE9+l6YYkNL1WzmkTYn1YxjufdY="; + cargoHash = "sha256-TpwUO0BL8kambnxAUE9+l6YYkNL1WzmkTYn1YxjufdY="; nativeBuildInputs = [ cmake ]; @@ -25,5 +25,6 @@ rustPlatform.buildRustPackage rec { changelog = "https://github.com/sstadick/hck/blob/v${version}/CHANGELOG.md"; license = with licenses; [ mit /* or */ unlicense ]; maintainers = with maintainers; [ figsoda ]; + mainProgram = "hck"; }; } From 834ad25a8f41ba8da6475c159d6d58ba62b2b2f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gutyina=20Gerg=C5=91?= Date: Mon, 8 Jan 2024 12:48:39 +0100 Subject: [PATCH 02/19] lf: add meta.mainProgram --- pkgs/applications/file-managers/lf/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/applications/file-managers/lf/default.nix b/pkgs/applications/file-managers/lf/default.nix index 9caf29a5a9a4..1f2b8b908928 100644 --- a/pkgs/applications/file-managers/lf/default.nix +++ b/pkgs/applications/file-managers/lf/default.nix @@ -44,5 +44,6 @@ buildGoModule rec { changelog = "https://github.com/gokcehan/lf/releases/tag/r${version}"; license = licenses.mit; maintainers = with maintainers; [ dotlambda ]; + mainProgram = "lf"; }; } From 250ed20d7213fc059ed9fb7eed6179c31627d47b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gutyina=20Gerg=C5=91?= Date: Mon, 8 Jan 2024 12:53:28 +0100 Subject: [PATCH 03/19] xdragon: add meta.mainProgram --- pkgs/tools/X11/xdragon/default.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/X11/xdragon/default.nix b/pkgs/tools/X11/xdragon/default.nix index 7061a8f0a1cf..9f12a78e2936 100644 --- a/pkgs/tools/X11/xdragon/default.nix +++ b/pkgs/tools/X11/xdragon/default.nix @@ -1,14 +1,14 @@ { lib, stdenv, fetchFromGitHub, pkg-config, gtk3 }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "xdragon"; version = "1.2.0"; src = fetchFromGitHub { owner = "mwh"; repo = "dragon"; - rev = "v${version}"; - sha256 = "sha256-wqG6idlVvdN+sPwYgWu3UL0la5ssvymZibiak3KeV7M="; + rev = "v${finalAttrs.version}"; + hash = "sha256-wqG6idlVvdN+sPwYgWu3UL0la5ssvymZibiak3KeV7M="; }; nativeBuildInputs = [ pkg-config ]; @@ -24,5 +24,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/mwh/dragon"; license = licenses.gpl3; maintainers = with maintainers; [ das_j ]; + mainProgram = "xdragon"; }; -} +}) From 75c78d07154aba53b8da2ca6bbb63c83e079b1bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gutyina=20Gerg=C5=91?= Date: Mon, 8 Jan 2024 14:20:17 +0100 Subject: [PATCH 04/19] xfce4-terminal: add meta.mainProgram --- pkgs/desktops/xfce/applications/xfce4-terminal/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix b/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix index 3a685614f0c6..116278c869fc 100644 --- a/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix +++ b/pkgs/desktops/xfce/applications/xfce4-terminal/default.nix @@ -44,5 +44,6 @@ mkXfceDerivation { meta = with lib; { description = "A modern terminal emulator"; maintainers = with maintainers; [ ] ++ teams.xfce.members; + mainProgram = "xfce4-terminal"; }; } From 01317be8d084b958528d2a5d0944c7a70b674a05 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Fri, 1 Mar 2024 10:49:16 +0100 Subject: [PATCH 05/19] maintainers: add osnyx & ma27 to team flyingcircus --- maintainers/maintainer-list.nix | 6 ++++++ maintainers/team-list.nix | 2 ++ 2 files changed, 8 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index b27cf6166f6a..087dbc62a8ad 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -14479,6 +14479,12 @@ githubId = 111265; name = "Ozan Sener"; }; + osnyx = { + email = "os@flyingcircus.io"; + github = "osnyx"; + githubId = 104593071; + name = "Oliver Schmidt"; + }; ostrolucky = { email = "gabriel.ostrolucky@gmail.com"; github = "ostrolucky"; diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix index d43d6e975a81..18c1a25a54a8 100644 --- a/maintainers/team-list.nix +++ b/maintainers/team-list.nix @@ -302,6 +302,8 @@ with lib.maintainers; { dpausp frlan leona + osnyx + ma27 ]; scope = "Team for Flying Circus employees who collectively maintain packages."; shortName = "Flying Circus employees"; From a36afbdd06cba206287c4d985650ad91d391c68e Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Sat, 9 Mar 2024 16:53:01 +0100 Subject: [PATCH 06/19] ruff: 0.3.1 -> 0.3.2 Diff: https://github.com/astral-sh/ruff/compare/refs/tags/v0.3.1...v0.3.2 Changelog: https://github.com/astral-sh/ruff/releases/tag/v0.3.2 --- pkgs/development/tools/ruff/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/ruff/default.nix b/pkgs/development/tools/ruff/default.nix index 81cffa4c721d..25ef6c14921d 100644 --- a/pkgs/development/tools/ruff/default.nix +++ b/pkgs/development/tools/ruff/default.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage rec { pname = "ruff"; - version = "0.3.1"; + version = "0.3.2"; src = fetchFromGitHub { owner = "astral-sh"; repo = "ruff"; rev = "refs/tags/v${version}"; - hash = "sha256-MuvVpMBEQSOz6vSEhw7fmvAwgUu/7hrbtP8/MsIL57c="; + hash = "sha256-2Pt2HuDB9JLD9E1q0JH7jyVoc0II5uVL1l8pAod+9V4="; }; - cargoHash = "sha256-zC4rXgqT0nw22adtoe51wN8XVbr6drXvqWqyJeqSGYc="; + cargoHash = "sha256-njHpqWXFNdwenV58+VGznnqbaNK1GoGtHSTfKU2MRbs="; nativeBuildInputs = [ installShellFiles From 8d0e5a3402aabe9a749913d9028b54bad4da32ab Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Fri, 1 Mar 2024 10:58:36 +0100 Subject: [PATCH 07/19] postgresqlPackages.anonymizer: init at 1.3.1 --- nixos/tests/all-tests.nix | 1 + nixos/tests/pg_anonymizer.nix | 54 +++++++++++++++++++ .../servers/sql/postgresql/ext/anonymizer.nix | 34 ++++++++++++ pkgs/servers/sql/postgresql/packages.nix | 2 + 4 files changed, 91 insertions(+) create mode 100644 nixos/tests/pg_anonymizer.nix create mode 100644 pkgs/servers/sql/postgresql/ext/anonymizer.nix diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index a5991abbfc88..9c0f67a9b10e 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -679,6 +679,7 @@ in { peering-manager = handleTest ./web-apps/peering-manager.nix {}; peertube = handleTestOn ["x86_64-linux"] ./web-apps/peertube.nix {}; peroxide = handleTest ./peroxide.nix {}; + pg_anonymizer = handleTest ./pg_anonymizer.nix {}; pgadmin4 = handleTest ./pgadmin4.nix {}; pgbouncer = handleTest ./pgbouncer.nix {}; pgjwt = handleTest ./pgjwt.nix {}; diff --git a/nixos/tests/pg_anonymizer.nix b/nixos/tests/pg_anonymizer.nix new file mode 100644 index 000000000000..601526272d71 --- /dev/null +++ b/nixos/tests/pg_anonymizer.nix @@ -0,0 +1,54 @@ +import ./make-test-python.nix ({ pkgs, lib, ... }: { + name = "pg_anonymizer"; + meta.maintainers = lib.teams.flyingcircus.members; + + nodes.machine = { + services.postgresql = { + enable = true; + extraPlugins = ps: [ ps.anonymizer ]; + settings.shared_preload_libraries = "anon"; + }; + }; + + testScript = '' + start_all() + machine.wait_for_unit("multi-user.target") + machine.wait_for_unit("postgresql.service") + + with subtest("Setup"): + machine.succeed("sudo -u postgres psql --command 'create database demo'") + machine.succeed( + "sudo -u postgres psql -d demo -f ${pkgs.writeText "init.sql" '' + create extension anon cascade; + select anon.init(); + create table player(id serial, name text, points int); + insert into player(id,name,points) values (1,'Foo', 23); + insert into player(id,name,points) values (2,'Bar',42); + security label for anon on column player.name is 'MASKED WITH FUNCTION anon.fake_last_name();'; + security label for anon on column player.points is 'MASKED WITH VALUE NULL'; + ''}" + ) + + def get_player_table_contents(): + return [ + x.split(',') for x in machine.succeed("sudo -u postgres psql -d demo --csv --command 'select * from player'").splitlines()[1:] + ] + + def check_anonymized_row(row, id, original_name): + assert row[0] == id, f"Expected first row to have ID {id}, but got {row[0]}" + assert row[1] != original_name, f"Expected first row to have a name other than {original_name}" + assert not bool(row[2]), "Expected points to be NULL in first row" + + with subtest("Check initial state"): + output = get_player_table_contents() + assert output[0] == ['1','Foo','23'], f"Expected first row from player table to be 1,Foo,23; got {output[0]}" + assert output[1] == ['2','Bar','42'], f"Expected first row from player table to be 2,Bar,42; got {output[1]}" + + with subtest("Anonymize"): + machine.succeed("sudo -u postgres psql -d demo --command 'select anon.anonymize_database();'") + output = get_player_table_contents() + + check_anonymized_row(output[0], '1', 'Foo') + check_anonymized_row(output[1], '2', 'Bar') + ''; +}) diff --git a/pkgs/servers/sql/postgresql/ext/anonymizer.nix b/pkgs/servers/sql/postgresql/ext/anonymizer.nix new file mode 100644 index 000000000000..0a90780df71e --- /dev/null +++ b/pkgs/servers/sql/postgresql/ext/anonymizer.nix @@ -0,0 +1,34 @@ +{ lib, stdenv, fetchFromGitLab, postgresql, nixosTests, ... }: + +stdenv.mkDerivation (finalAttrs: { + pname = "postgresql_anonymizer"; + version = "1.3.1"; + + src = fetchFromGitLab { + owner = "dalibo"; + repo = "postgresql_anonymizer"; + rev = finalAttrs.version; + hash = "sha256-Z5Oz/cIYDxFUZwQijRk4xAOUdOK0LWR+px8WOcs+Rs0="; + }; + + buildInputs = [ postgresql ]; + nativeBuildInputs = [ postgresql ] ++ lib.optional postgresql.jitSupport postgresql.llvm; + + strictDeps = true; + + makeFlags = [ + "BINDIR=${placeholder "out"}/bin" + "datadir=${placeholder "out"}/share/postgresql" + "pkglibdir=${placeholder "out"}/lib" + "DESTDIR=" + ]; + + passthru.tests = { inherit (nixosTests) pg_anonymizer; }; + + meta = with lib; { + description = "postgresql_anonymizer is an extension to mask or replace personally identifiable information (PII) or commercially sensitive data from a PostgreSQL database."; + homepage = "https://postgresql-anonymizer.readthedocs.io/en/stable/"; + maintainers = teams.flyingcircus.members; + license = licenses.postgresql; + }; +}) diff --git a/pkgs/servers/sql/postgresql/packages.nix b/pkgs/servers/sql/postgresql/packages.nix index 3b1c855e0de9..3252a59954c0 100644 --- a/pkgs/servers/sql/postgresql/packages.nix +++ b/pkgs/servers/sql/postgresql/packages.nix @@ -2,6 +2,8 @@ self: super: { age = super.callPackage ./ext/age.nix { }; + anonymizer = super.callPackage ./ext/anonymizer.nix { }; + apache_datasketches = super.callPackage ./ext/apache_datasketches.nix { }; citus = super.callPackage ./ext/citus.nix { }; From fd1728a83092952500d40ddf3d4f74ed7af51eb6 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 12 Mar 2024 09:45:22 +0000 Subject: [PATCH 08/19] erg: 0.6.30 -> 0.6.32 --- pkgs/development/compilers/erg/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/erg/default.nix b/pkgs/development/compilers/erg/default.nix index ab5458855423..c2ecc635e05c 100644 --- a/pkgs/development/compilers/erg/default.nix +++ b/pkgs/development/compilers/erg/default.nix @@ -9,16 +9,16 @@ rustPlatform.buildRustPackage rec { pname = "erg"; - version = "0.6.30"; + version = "0.6.32"; src = fetchFromGitHub { owner = "erg-lang"; repo = "erg"; rev = "v${version}"; - hash = "sha256-lStTLDXgdaaqyzdzU1V2JnKX8jt27Z1A23fkuZU8dt0="; + hash = "sha256-l+I6ue824dvZ1AmSS/y+Sh43OstJ5c+8xIXvoVpMFws="; }; - cargoHash = "sha256-MsDan3wL9RhH0uhAuq0Lg8IRBXR8a3ooEBx6n2CMAVk="; + cargoHash = "sha256-SRltpqTviC+Dq9pPBuLjctOXOKTYw+zVlvA9wi0iFWg="; nativeBuildInputs = [ makeWrapper From dbb5cb859eac0e23d212439bb1ed791b8c53cf7c Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Wed, 13 Mar 2024 04:20:00 +0000 Subject: [PATCH 09/19] spotifyd: 0.3.5 -> 0.3.5-unstable-2024-02-18 Diff: https://github.com/Spotifyd/spotifyd/compare/v0.3.5...ff2f7a06e54bf05afd57a0243dc9f67abc15f040 Changelog: https://github.com/Spotifyd/spotifyd/blob/ff2f7a06e54bf05afd57a0243dc9f67abc15f040/CHANGELOG.md --- pkgs/applications/audio/spotifyd/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/audio/spotifyd/default.nix b/pkgs/applications/audio/spotifyd/default.nix index 0e41bedb2650..6de9493ab8e8 100644 --- a/pkgs/applications/audio/spotifyd/default.nix +++ b/pkgs/applications/audio/spotifyd/default.nix @@ -9,16 +9,16 @@ rustPackages.rustPlatform.buildRustPackage rec { pname = "spotifyd"; - version = "0.3.5"; + version = "0.3.5-unstable-2024-02-18"; src = fetchFromGitHub { owner = "Spotifyd"; repo = "spotifyd"; - rev = "v${version}"; - hash = "sha256-+P85FWJIsfAv8/DnQFxfoWvNY8NpbZ2xUidfwN8tiA8="; + rev = "ff2f7a06e54bf05afd57a0243dc9f67abc15f040"; + hash = "sha256-nebAd4a+ht+blRP52OF830/Dm15ZPwRL4IPWmmT9ViM="; }; - cargoHash = "sha256-j+2yEtn3D+vNRcY4+NnqSX4xRQIE5Sq7bentxTh6kMI="; + cargoHash = "sha256-6BRIMTrWTwvX3yIGEYEvigMT+n4EtaruMdrej2Dd49w="; nativeBuildInputs = [ pkg-config ]; @@ -40,7 +40,7 @@ rustPackages.rustPlatform.buildRustPackage rec { meta = with lib; { description = "An open source Spotify client running as a UNIX daemon"; homepage = "https://spotifyd.rs/"; - changelog = "https://github.com/Spotifyd/spotifyd/raw/v${version}/CHANGELOG.md"; + changelog = "https://github.com/Spotifyd/spotifyd/blob/${src.rev}/CHANGELOG.md"; license = licenses.gpl3Plus; maintainers = with maintainers; [ anderslundstedt Br1ght0ne marsam ]; platforms = platforms.unix; From 0cdaede1444c143b411ebcb203b1a7d2f97a3949 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Wed, 13 Mar 2024 14:36:20 +0100 Subject: [PATCH 10/19] pg-dump-anon: init at 1.3.1 This is a Go program inside the sources of `postgresql_anonymizer` that allows to perform database dumps, but with anonymized data. I figured that it's a little awkward to have a client program to be part of the extension package. So I decided to create a second package called `pg-dump-anon`. Since it's one repository, both share `version` & `src`. Also extended the VM test to make sure we're getting properly anonymized data when dumping with `pg_dump_anon`. --- nixos/tests/pg_anonymizer.nix | 54 ++++++++++++++++--- pkgs/by-name/pg/pg-dump-anon/package.nix | 32 +++++++++++ .../servers/sql/postgresql/ext/anonymizer.nix | 24 ++++----- 3 files changed, 90 insertions(+), 20 deletions(-) create mode 100644 pkgs/by-name/pg/pg-dump-anon/package.nix diff --git a/nixos/tests/pg_anonymizer.nix b/nixos/tests/pg_anonymizer.nix index 601526272d71..2960108e37c3 100644 --- a/nixos/tests/pg_anonymizer.nix +++ b/nixos/tests/pg_anonymizer.nix @@ -2,7 +2,8 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: { name = "pg_anonymizer"; meta.maintainers = lib.teams.flyingcircus.members; - nodes.machine = { + nodes.machine = { pkgs, ... }: { + environment.systemPackages = [ pkgs.pg-dump-anon ]; services.postgresql = { enable = true; extraPlugins = ps: [ ps.anonymizer ]; @@ -39,16 +40,55 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: { assert row[1] != original_name, f"Expected first row to have a name other than {original_name}" assert not bool(row[2]), "Expected points to be NULL in first row" - with subtest("Check initial state"): - output = get_player_table_contents() + def find_xsv_in_dump(dump, sep=','): + """ + Expecting to find a CSV (for pg_dump_anon) or TSV (for pg_dump) structure, looking like + + COPY public.player ... + 1,Shields, + 2,Salazar, + \. + + in the given dump (the commas are tabs in case of pg_dump). + Extract the CSV lines and split by `sep`. + """ + + try: + from itertools import dropwhile, takewhile + return [x.split(sep) for x in list(takewhile( + lambda x: x != "\\.", + dropwhile( + lambda x: not x.startswith("COPY public.player"), + dump.splitlines() + ) + ))[1:]] + except: + print(f"Dump to process: {dump}") + raise + + def check_original_data(output): assert output[0] == ['1','Foo','23'], f"Expected first row from player table to be 1,Foo,23; got {output[0]}" assert output[1] == ['2','Bar','42'], f"Expected first row from player table to be 2,Bar,42; got {output[1]}" - with subtest("Anonymize"): - machine.succeed("sudo -u postgres psql -d demo --command 'select anon.anonymize_database();'") - output = get_player_table_contents() - + def check_anonymized_rows(output): check_anonymized_row(output[0], '1', 'Foo') check_anonymized_row(output[1], '2', 'Bar') + + with subtest("Check initial state"): + check_original_data(get_player_table_contents()) + + with subtest("Anonymous dumps"): + check_original_data(find_xsv_in_dump( + machine.succeed("sudo -u postgres pg_dump demo"), + sep='\t' + )) + check_anonymized_rows(find_xsv_in_dump( + machine.succeed("sudo -u postgres pg_dump_anon -U postgres -h /run/postgresql -d demo"), + sep=',' + )) + + with subtest("Anonymize"): + machine.succeed("sudo -u postgres psql -d demo --command 'select anon.anonymize_database();'") + check_anonymized_rows(get_player_table_contents()) ''; }) diff --git a/pkgs/by-name/pg/pg-dump-anon/package.nix b/pkgs/by-name/pg/pg-dump-anon/package.nix new file mode 100644 index 000000000000..fedcf9f40b6a --- /dev/null +++ b/pkgs/by-name/pg/pg-dump-anon/package.nix @@ -0,0 +1,32 @@ +{ lib, fetchFromGitLab, buildGoModule, nixosTests, postgresql, makeWrapper }: + +buildGoModule rec { + pname = "pg-dump-anon"; + version = "1.3.1"; + src = fetchFromGitLab { + owner = "dalibo"; + repo = "postgresql_anonymizer"; + rev = version; + hash = "sha256-Z5Oz/cIYDxFUZwQijRk4xAOUdOK0LWR+px8WOcs+Rs0="; + }; + + sourceRoot = "${src.name}/pg_dump_anon"; + + vendorHash = "sha256-CwU1zoIayxvfnGL9kPdummPJiV+ECfSz4+q6gZGb8pw="; + + passthru.tests = { inherit (nixosTests) pg_anonymizer; }; + + nativeBuildInputs = [ makeWrapper ]; + postInstall = '' + wrapProgram $out/bin/pg_dump_anon \ + --prefix PATH : ${lib.makeBinPath [ postgresql ]} + ''; + + meta = with lib; { + description = "Export databases with data being anonymized with the anonymizer extension"; + homepage = "https://postgresql-anonymizer.readthedocs.io/en/stable/"; + maintainers = teams.flyingcircus.members; + license = licenses.postgresql; + mainProgram = "pg_dump_anon"; + }; +} diff --git a/pkgs/servers/sql/postgresql/ext/anonymizer.nix b/pkgs/servers/sql/postgresql/ext/anonymizer.nix index 0a90780df71e..f7e65b06a9fa 100644 --- a/pkgs/servers/sql/postgresql/ext/anonymizer.nix +++ b/pkgs/servers/sql/postgresql/ext/anonymizer.nix @@ -1,15 +1,9 @@ -{ lib, stdenv, fetchFromGitLab, postgresql, nixosTests, ... }: +{ lib, stdenv, pg-dump-anon, postgresql, runtimeShell }: stdenv.mkDerivation (finalAttrs: { pname = "postgresql_anonymizer"; - version = "1.3.1"; - src = fetchFromGitLab { - owner = "dalibo"; - repo = "postgresql_anonymizer"; - rev = finalAttrs.version; - hash = "sha256-Z5Oz/cIYDxFUZwQijRk4xAOUdOK0LWR+px8WOcs+Rs0="; - }; + inherit (pg-dump-anon) version src passthru; buildInputs = [ postgresql ]; nativeBuildInputs = [ postgresql ] ++ lib.optional postgresql.jitSupport postgresql.llvm; @@ -23,12 +17,16 @@ stdenv.mkDerivation (finalAttrs: { "DESTDIR=" ]; - passthru.tests = { inherit (nixosTests) pg_anonymizer; }; + postInstall = '' + cat >$out/bin/pg_dump_anon.sh <<'EOF' + #!${runtimeShell} + echo "This script is deprecated by upstream. To use the new script," + echo "please install pkgs.pg-dump-anon." + exit 1 + EOF + ''; - meta = with lib; { + meta = pg-dump-anon.meta // { description = "postgresql_anonymizer is an extension to mask or replace personally identifiable information (PII) or commercially sensitive data from a PostgreSQL database."; - homepage = "https://postgresql-anonymizer.readthedocs.io/en/stable/"; - maintainers = teams.flyingcircus.members; - license = licenses.postgresql; }; }) From d9b79e9307a14c7080a4426d63c8f25be7c3e00e Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Wed, 13 Mar 2024 16:21:57 +0100 Subject: [PATCH 11/19] apptainer: 1.2.5 -> 1.3.0 Changelog: https://github.com/apptainer/apptainer/releases/tag/v1.3.0 --- pkgs/applications/virtualization/singularity/packages.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/virtualization/singularity/packages.nix b/pkgs/applications/virtualization/singularity/packages.nix index 933bc4efa424..efa77b4209f3 100644 --- a/pkgs/applications/virtualization/singularity/packages.nix +++ b/pkgs/applications/virtualization/singularity/packages.nix @@ -7,20 +7,20 @@ let apptainer = callPackage (import ./generic.nix rec { pname = "apptainer"; - version = "1.2.5"; + version = "1.3.0"; projectName = "apptainer"; src = fetchFromGitHub { owner = "apptainer"; repo = "apptainer"; rev = "refs/tags/v${version}"; - hash = "sha256-1XuqyNXyYrmIfqp8450z8+qET15hKVfj2v2iN9QPmDk="; + hash = "sha256-YqPPTs7cIiMbOc8jOwr8KgUBVu2pTPlSL0Vvw/1n4co="; }; # Update by running # nix-prefetch -E "{ sha256 }: ((import ./. { }).apptainer.override { vendorHash = sha256; }).goModules" # at the root directory of the Nixpkgs repository - vendorHash = "sha256-Y0gOqg+WGgssXGEYHc9IFwiIpkb3hetlQI89vseAQPc="; + vendorHash = "sha256-lWo6ic3Tdv1UInA5MtEaAgiheCin2JSh4nmheUooENY="; extraDescription = " (previously known as Singularity)"; extraMeta.homepage = "https://apptainer.org"; From b4f8ebd2955e2c3ca9f37110b05646f9bd2670ac Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Thu, 14 Mar 2024 09:50:46 +0100 Subject: [PATCH 12/19] postgresqlPackages.anonymizer: update description Co-authored-by: Mario Rodas --- pkgs/servers/sql/postgresql/ext/anonymizer.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/servers/sql/postgresql/ext/anonymizer.nix b/pkgs/servers/sql/postgresql/ext/anonymizer.nix index f7e65b06a9fa..430911d40108 100644 --- a/pkgs/servers/sql/postgresql/ext/anonymizer.nix +++ b/pkgs/servers/sql/postgresql/ext/anonymizer.nix @@ -27,6 +27,6 @@ stdenv.mkDerivation (finalAttrs: { ''; meta = pg-dump-anon.meta // { - description = "postgresql_anonymizer is an extension to mask or replace personally identifiable information (PII) or commercially sensitive data from a PostgreSQL database."; + description = "Extension to mask or replace personally identifiable information (PII) or commercially sensitive data from a PostgreSQL database"; }; }) From 79878e977a0f43abe08c8154a79926db934f26f9 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 14 Mar 2024 12:25:16 +0000 Subject: [PATCH 13/19] tcsh: 6.24.10 -> 6.24.11 --- pkgs/by-name/tc/tcsh/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/tc/tcsh/package.nix b/pkgs/by-name/tc/tcsh/package.nix index 4fa358fbb7c3..7d60050b0a93 100644 --- a/pkgs/by-name/tc/tcsh/package.nix +++ b/pkgs/by-name/tc/tcsh/package.nix @@ -8,11 +8,11 @@ stdenv.mkDerivation (finalAttrs: { pname = "tcsh"; - version = "6.24.10"; + version = "6.24.11"; src = fetchurl { url = "mirror://tcsh/tcsh-${finalAttrs.version}.tar.gz"; - hash = "sha256-E0dcD763QTnTPteTvwD/u7KsLcn7HURGekEHYKujZmQ="; + hash = "sha256-tae2J6uz7y6NOoabtnXQ6SfYUHBER6Gyx3lGwNMkeZ0="; }; strictDeps = true; From d14e6accda8b73f0d4c9f214706fb40736d40844 Mon Sep 17 00:00:00 2001 From: Anthony Roussel Date: Thu, 14 Mar 2024 23:28:54 +0100 Subject: [PATCH 14/19] tomcat9: 9.0.85 -> 9.0.87 https://tomcat.apache.org/tomcat-9.0-doc/changelog.html#Tomcat_9.0.87_(remm) --- pkgs/servers/http/tomcat/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/http/tomcat/default.nix b/pkgs/servers/http/tomcat/default.nix index fdbafa313dc7..c173a912c1da 100644 --- a/pkgs/servers/http/tomcat/default.nix +++ b/pkgs/servers/http/tomcat/default.nix @@ -39,8 +39,8 @@ let in { tomcat9 = common { - version = "9.0.85"; - hash = "sha256-oYdNXi5yADqBJ25alSAASsoRPxNfyEEzQim2j20luh4="; + version = "9.0.87"; + hash = "sha256-2kgvuSIAhtvzceGAqgnGQCr48EhYZzTN7dSgjEjUzgI="; }; tomcat10 = common { From 3ffa0c967ed9a0547e69385226562d9651953fbc Mon Sep 17 00:00:00 2001 From: Anthony Roussel Date: Thu, 14 Mar 2024 23:29:28 +0100 Subject: [PATCH 15/19] tomcat10: 10.1.18 -> 10.1.19 https://tomcat.apache.org/tomcat-10.1-doc/changelog.html#Tomcat_10.1.19_(schultz) --- pkgs/servers/http/tomcat/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/http/tomcat/default.nix b/pkgs/servers/http/tomcat/default.nix index c173a912c1da..710caedc094e 100644 --- a/pkgs/servers/http/tomcat/default.nix +++ b/pkgs/servers/http/tomcat/default.nix @@ -44,7 +44,7 @@ in { }; tomcat10 = common { - version = "10.1.18"; - hash = "sha256-baC0y9MUDmSocZot4ZwgvzkC0mShQqgWrFUq4hat4xE="; + version = "10.1.19"; + hash = "sha256-w+pp2SvPw+15Ko2AeUrNuFbxwF2KBF4XpxoliKDHULc="; }; } From 4fc2d33fad7e7b67542560cdc2b4a1d0964dd485 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 14 Mar 2024 22:32:36 +0000 Subject: [PATCH 16/19] php81Extensions.phalcon: 5.6.1 -> 5.6.2 --- pkgs/development/php-packages/phalcon/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/php-packages/phalcon/default.nix b/pkgs/development/php-packages/phalcon/default.nix index 57affde8d4e2..07854fdf3b11 100644 --- a/pkgs/development/php-packages/phalcon/default.nix +++ b/pkgs/development/php-packages/phalcon/default.nix @@ -2,13 +2,13 @@ buildPecl rec { pname = "phalcon"; - version = "5.6.1"; + version = "5.6.2"; src = fetchFromGitHub { owner = "phalcon"; repo = "cphalcon"; rev = "v${version}"; - hash = "sha256-1dCtj3pJGOY7sRe6xx8JgPPLSj/6qMemUnqrt9guPIk="; + hash = "sha256-AgyV9pxyXcXuhrRgozN2p67u8xZMepbWrzYaBZMFn6k="; }; internalDeps = [ php.extensions.session php.extensions.pdo ]; From cb9af7651e05cad63268c3438b519e6069977a03 Mon Sep 17 00:00:00 2001 From: twitchy0 Date: Thu, 14 Mar 2024 19:48:27 -0400 Subject: [PATCH 17/19] orgparse: init at 0.4.20231004 --- maintainers/maintainer-list.nix | 6 +++++ .../python-modules/orgparse/default.nix | 22 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 3 files changed, 30 insertions(+) create mode 100644 pkgs/development/python-modules/orgparse/default.nix diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index a05c01bc9df9..ef3ce19da9c8 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -19945,6 +19945,12 @@ fingerprint = "E631 8869 586F 99B4 F6E6 D785 5942 58F0 389D 2802"; }]; }; + twitchy0 = { + email = "code@nitinpassa.com"; + github = "twitchy0"; + githubId = 131159000; + name = "Nitin Passa"; + }; twitchyliquid64 = { name = "Tom"; email = "twitchyliquid64@ciphersink.net"; diff --git a/pkgs/development/python-modules/orgparse/default.nix b/pkgs/development/python-modules/orgparse/default.nix new file mode 100644 index 000000000000..67988d5529ff --- /dev/null +++ b/pkgs/development/python-modules/orgparse/default.nix @@ -0,0 +1,22 @@ +{ lib, python3Packages, fetchPypi }: + +python3Packages.buildPythonPackage rec { + pname = "orgparse"; + version = "0.4.20231004"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-pOOK6tq/mYiw9npmrNCCedGCILy8QioSkGDCiQu6kaA="; + }; + + nativeBuildInputs = [ python3Packages.setuptools-scm ]; + + pyproject = true; + + meta = with lib; { + homepage = "https://github.com/karlicoss/orgparse"; + description = "orgparse - Emacs org-mode parser in Python"; + license = licenses.bsd2; + maintainers = with maintainers; [ twitchy0 ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 545fe4a7dae3..afdb1adf6b43 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9054,6 +9054,8 @@ self: super: with self; { orderedset = callPackage ../development/python-modules/orderedset { }; + orgparse = callPackage ../development/python-modules/orgparse { }; + orjson = callPackage ../development/python-modules/orjson { }; orm = callPackage ../development/python-modules/orm { }; From f7f3a3ec537a1ccdb6017a275264179bb229fec6 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Fri, 15 Mar 2024 07:52:18 +0800 Subject: [PATCH 18/19] nixos/budgie: Fix default fonts Always install noto fonts and hack font. --- nixos/modules/services/x11/desktop-managers/budgie.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/x11/desktop-managers/budgie.nix b/nixos/modules/services/x11/desktop-managers/budgie.nix index fe39097a22e8..7d8bb1963d78 100644 --- a/nixos/modules/services/x11/desktop-managers/budgie.nix +++ b/nixos/modules/services/x11/desktop-managers/budgie.nix @@ -159,7 +159,7 @@ in { ++ cfg.sessionPath; # Fonts. - fonts.packages = mkDefault [ + fonts.packages = [ pkgs.noto-fonts pkgs.hack-font ]; From 46b22f0f9a143a67de999078570274afa95b4bab Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 14 Mar 2024 23:59:34 +0000 Subject: [PATCH 19/19] php83: 8.3.3 -> 8.3.4 --- pkgs/development/interpreters/php/8.3.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/php/8.3.nix b/pkgs/development/interpreters/php/8.3.nix index ee2bf413a426..4af1662b3694 100644 --- a/pkgs/development/interpreters/php/8.3.nix +++ b/pkgs/development/interpreters/php/8.3.nix @@ -2,8 +2,8 @@ let base = callPackage ./generic.nix (_args // { - version = "8.3.3"; - hash = "sha256-qvthO6eVlKI/5yL46QrUczAGEL+A50uKpS2pysLcTio="; + version = "8.3.4"; + hash = "sha256-PFyvGODAokOq7JE6OeywkgQxla3eTD/ELpRdpbkndpU="; }); in base.withExtensions ({ all, ... }: with all; ([