Change:
}; initialEmail = mkOption { <del> description = lib.mdDoc "Initial email for the pgAdmin account."; </del> <ins> description = lib.mdDoc "Initial email for the pgAdmin account"; </ins> type = types.str; }; initialPasswordFile = mkOption { description = lib.mdDoc '' Initial password file for the pgAdmin account. <del> NOTE: Should be string not a store path, to prevent the password from being world readable. </del> <ins> NOTE: Should be string not a store path, to prevent the password from being world readable </ins> ''; type = types.path; }; <ins> emailServer = { enable = mkOption { description = lib.mdDoc '' Enable SMTP email server. This is necessary, if you want to use password recovery or change your own password ''; type = types.bool; default = false; }; address = mkOption { description = lib.mdDoc "SMTP server for email delivery"; type = types.str; default = "localhost"; }; port = mkOption { description = lib.mdDoc "SMTP server port for email delivery"; type = types.port; default = 25; }; useSSL = mkOption { description = lib.mdDoc "SMTP server should use SSL"; type = types.bool; default = false; }; useTLS = mkOption { description = lib.mdDoc "SMTP server should use TLS"; type = types.bool; default = false; }; username = mkOption { description = lib.mdDoc "SMTP server username for email delivery"; type = types.nullOr types.str; default = null; }; sender = mkOption { description = lib.mdDoc '' SMTP server sender email for email delivery. Some servers require this to be a valid email address from that server ''; type = types.str; example = "noreply@example.com"; }; passwordFile = mkOption { description = lib.mdDoc '' Password for SMTP email account. NOTE: Should be string not a store path, to prevent the password from being world readable ''; type = types.path; }; }; </ins> openFirewall = mkEnableOption (lib.mdDoc "firewall passthrough for pgadmin4"); settings = mkOption { description = lib.mdDoc '' Settings for pgadmin4. <del> [Documentation](https://www.pgadmin.org/docs/pgadmin4/development/config_py.html). </del> <ins> [Documentation](https://www.pgadmin.org/docs/pgadmin4/development/config_py.html) </ins> ''; type = pyType; <del> default= {}; </del> <ins> default = { }; </ins> }; };

Discussion:
Steps to reproduce the behavior: pgadmin.service Add any other context about the problem here. Please run and paste the result.
I know. The PR needs to be merged.
seems like it might be some time before this gets fixed. In the meantime, is there a way I could force my system to use an older version of pgadmin? I'm using flakes for my system config.
The way I do it, is to maintain my own fork of and cherry-pick PR's like that. An older version will not work, because they will run into similar errors. You could only run an older version of . This is a problem due to updated dependencies in nixpkgs. I re-requested an review from and/or maybe someone else has time to review/commit the PR.
OK I got it working for now by changing my as follows: Please let me know if that's a terrible idea in your opinion ...
No, not really. I use my branch which I regularly update, which includes my cherry-picked commits. The commit you picked reflects the status of at the time of the commit of pgadmin (and obviously the changes to pgadmin) You just need to be aware that due to the pinning, a will not update currently and should probably be reverted once the PR got merged.
thanks that's what I'll do!
I'm a little fuzzy on what happens next here. Am I seeing correctly that this problem is still not resolved?
The PR needs to be merged. AFAIK everything is done with the PR
This issue has been mentioned on NixOS Discourse. There might be relevant details there:
Got it working using in my flake.