-
-
Notifications
You must be signed in to change notification settings - Fork 18k
Overhaul PostgreSQL packaging, native extensions, and NixOS support #38698
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Changes from all commits
Commits
Show all changes
61 commits
Select commit
Hold shift + click to select a range
677c607
nixpkgs: deprecate the badly named 'postgresql100' attribute
thoughtpolice ac197be
nixpkgs: move postgresql patches into a common directory
thoughtpolice 6d00a38
nixpkgs: reorganize the postgresql extensions
thoughtpolice abf7e3c
nixpkgs: tidy up pgjwt package
thoughtpolice 3cbd0b2
nixpkgs: implement new postgresqlPackages infrastructure
thoughtpolice 1cee11f
nixpkgs: migrate postgis to new postgresqlPackages infrastructure
thoughtpolice 1864fc3
postgresqlPackages: add myself as a maintainer
thoughtpolice 4eaf18b
postgresqlPackages: add versionCheck passthru to extension builds for…
thoughtpolice 83e0444
postgresqlPackages.timescaledb: only works on 9.6+
thoughtpolice 96babf1
postgresqlPackages.pg_cron: only works on 9.5+
thoughtpolice 4c257d7
postgresqlPackages.pg_topn: only works on 9.4+
thoughtpolice ebcffbc
postgresqlPackages.pg_jobmon: init at 1.3.3
thoughtpolice f9c2f8d
postgresqlPackages.pg_partman: init at 3.1.2
thoughtpolice e5ad1dc
nixos/postgresql: add myself as the module maintainer
thoughtpolice 2842c50
nixos/postgresql: kill ugly hack, now that postgresql has 'version' a…
thoughtpolice 16624c6
nixos/postgresql: add new nixos module API
thoughtpolice 31e15da
nixos/tests: migrate postgis test to new postgres API
thoughtpolice 87ccdbe
nixpkgs/nixos: switch to PostgreSQL 10 by default
thoughtpolice ef1f8be
nixos/postgres: update manual
thoughtpolice 44fc8a9
nixpkgs: actually deprecate old postgresql extension names
thoughtpolice 2f32398
nixos/tests: migrate to new postgresql api
thoughtpolice f20b306
postgresql: always create $out/bin (issue #22653).
basvandijk b671e68
postgresqlPackages.pg_journal: init at 0.2.0
basvandijk 8bdf30e
postgresqlPackages.tsearch_extras: 0.3 -> 0.4
thoughtpolice 5083436
postgresqlPackages.pg_cron: 1.0.2 -> 1.1.2
thoughtpolice 7571fb4
postgresqlPackages.pg_partman: 3.1.2 -> 3.2.1
thoughtpolice 6f6dcc0
postgresqlPackages.pg_topn 2.0.2 -> 2.1.0
thoughtpolice 1e83cf3
postgresql: enable systemd service notification on 9.6+
thoughtpolice af3d0e5
postgresqlPackages: simplify versionCheck comparisons
thoughtpolice 7c8281c
postgresqlPackages.pg_repack: (re)indent to 2 spaces
thoughtpolice fafa88f
nixos/manual: add 18.09 release notes for PostgreSQL
thoughtpolice f30de35
postgresql: add postgresql 11.0 beta2 package
thoughtpolice dcd9455
postgresql11: preliminary JIT support
thoughtpolice 8caf523
postgresql11: remove hard clang dependency for JIT support
thoughtpolice 91841ff
postgresql11: keep bitcode/llvmjit.so in $out, not $lib
thoughtpolice dce94b7
postgresqlPackages: add new withPackages combinator
thoughtpolice 9b06c7a
postgresqlPackages.pg_similarity: remove needless dir
thoughtpolice 49dbf9f
postgresqlPackages: make PGXS install phase Nix-compatible
thoughtpolice 54ec98d
nixos/manual: finish section on PostgreSQL server upgrades
thoughtpolice 4119c9f
postgresqlPackages: init citus 7.5.0
thoughtpolice 429f350
postgresqlPackages.postgis: fix gdal against the same postgresql the …
thoughtpolice a022a95
postgresqlPackages: expose a set containing all postgresqlPackages se…
thoughtpolice 364c06b
nixos/postgresql-backup: migrate to new module API
thoughtpolice 73866e5
nixos/tests: touch up PostgreSQL tests, migrate to new module API
thoughtpolice c0a7848
nixos/tests: wibble for postgis tests [NFC]
thoughtpolice 2fc694e
nixos/tests: touch up pgjwt tests
thoughtpolice 69dd764
nixos/tests: migrate trac to new postgresql API
thoughtpolice 01610cf
nixos/virtualisation: fix example
thoughtpolice 224ca9f
nixos/gitea: update to new PostgreSQL interface
thoughtpolice 9e398a1
nixos/gitlab: use new postgres module API
thoughtpolice 075f1b7
nixos/matrix-synapse: use new postgres module API
thoughtpolice 0b3d622
postgresqlPackages.postgis: enable PostgreSQL 11 JIT support
thoughtpolice 0b7377a
postgresqlPackages: remove outdated comments
thoughtpolice c2e3535
nixos/manual: add more postgresql modules to 18.09 release notes
thoughtpolice c3919f5
nixos/postgresql: give the plugins option the selectorFunction type
basvandijk da504b6
nixos/postgresql: give the postgres user a homedir and shell
thoughtpolice bcf4858
timescaledb-parallel-copy: init at 2018-05-14
thoughtpolice 8a0deeb
postgresqlPackages: add .man to all withPackage/NixOS configurations
thoughtpolice 0ca1def
postgresqlPackages: enable LLVM JIT by default on PostgreSQL 11+
thoughtpolice 9a88df8
postgresql: add doc section id module-services-postgres-new-extensions
basvandijk a1d18b7
postgresql: introduce the deprecated, readOnly and invisible postgres…
basvandijk File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can this be made dependent on
cfg.package.versioninstead ofconfig.system.stateVersion?Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The intent is that e.g. if you were on NixOS 16.03, and you upgrade to NixOS 17.09, you should keep using PostgreSQL 9.5, because 9.6 is not on-disk compatible, and breaking your database across an upgrade isnt friendly. This is because when you installed NixOS, the (16.03) installer explicitly sets
stateVersion = "16.03"inconfiguration.nixby default, and that should not be changed even beyond upgrades.I might be misunderstanding what you mean, of course (a diff would be helpful if that's the case!). But otherwise, this logic must remain to not break already-installed databases.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This isn't a direct problem by itself, but rather a simplification for those who use PG older than NixOS default. When you set
services.postgresql.packageto some old version, you now have to setservices.postgresql.packagesto an older pacakgeset too, which, I think, can be detected by NixOS automatically.