···53 ${optionalString (
54 cfg.down != "" || cfg.updateResolvConf
55 ) "down ${pkgs.writeShellScript "openvpn-${name}-down" downScript}"}
56- ${optionalString (cfg.authUserPass != null)
57- "auth-user-pass ${pkgs.writeText "openvpn-credentials-${name}" ''
58- ${cfg.authUserPass.username}
59- ${cfg.authUserPass.password}
60- ''}"
61- }
00062 '';
6364 in
···202 This option can be used to store the username / password credentials
203 with the "auth-user-pass" authentication method.
204205- WARNING: Using this option will put the credentials WORLD-READABLE in the Nix store!
000206 '';
207 type = types.nullOr (
208- types.submodule {
0000000209210- options = {
211- username = mkOption {
212- description = "The username to store inside the credentials file.";
213- type = types.str;
214 };
215-216- password = mkOption {
217- description = "The password to store inside the credentials file.";
218- type = types.str;
219- };
220- };
221- }
222 );
223 };
224 };
···53 ${optionalString (
54 cfg.down != "" || cfg.updateResolvConf
55 ) "down ${pkgs.writeShellScript "openvpn-${name}-down" downScript}"}
56+ ${optionalString (cfg.authUserPass != null) (
57+ if isAttrs cfg.authUserPass then
58+ "auth-user-pass ${pkgs.writeText "openvpn-credentials-${name}" ''
59+ ${cfg.authUserPass.username}
60+ ${cfg.authUserPass.password}
61+ ''}"
62+ else
63+ "auth-user-pass ${cfg.authUserPass}"
64+ )}
65 '';
6667 in
···205 This option can be used to store the username / password credentials
206 with the "auth-user-pass" authentication method.
207208+ You can either provide an attribute set of `username` and `password`,
209+ or the path to a file containing the credentials on two lines.
210+211+ WARNING: If you use an attribute set, this option will put the credentials WORLD-READABLE into the Nix store!
212 '';
213 type = types.nullOr (
214+ types.oneOf [
215+ types.singleLineStr
216+ (types.submodule {
217+ options = {
218+ username = mkOption {
219+ description = "The username to store inside the credentials file.";
220+ type = types.str;
221+ };
222223+ password = mkOption {
224+ description = "The password to store inside the credentials file.";
225+ type = types.str;
226+ };
227 };
228+ })
229+ ]
00000230 );
231 };
232 };
···9798 - GNU Multiple Precision arithmetic library (GMP): [`pkgs/development/libraries/gmp`](development/libraries/gmp). Also done by the generic builder, but has a dependency on `m4`.
99100- - Pan, a GTK-based newsreader: [`pkgs/by-name/pa/pan/package.nix`](./by-name/pa/pan/package.nix). Has an optional dependency on `gtkspell`, which is only built if `spellCheck` is `true`.
101102 - Apache HTTPD: [`pkgs/servers/http/apache-httpd/2.4.nix`](servers/http/apache-httpd/2.4.nix). A bunch of optional features, variable substitutions in the configure flags, a post-install hook, and miscellaneous hackery.
103
···9798 - GNU Multiple Precision arithmetic library (GMP): [`pkgs/development/libraries/gmp`](development/libraries/gmp). Also done by the generic builder, but has a dependency on `m4`.
99100+ - Pan, a GTK-based newsreader: [`pkgs/by-name/pa/pan/package.nix`](./by-name/pa/pan/package.nix). Has an optional dependency on `gspell`, which is only built if `spellCheck` is `true`.
101102 - Apache HTTPD: [`pkgs/servers/http/apache-httpd/2.4.nix`](servers/http/apache-httpd/2.4.nix). A bunch of optional features, variable substitutions in the configure flags, a post-install hook, and miscellaneous hackery.
103
···1618 prometheus-minio-exporter = throw "'prometheus-minio-exporter' has been removed from nixpkgs, use Minio's built-in Prometheus integration instead"; # Added 2024-06-10
1619 prometheus-tor-exporter = throw "'prometheus-tor-exporter' has been removed from nixpkgs, as it was broken and unmaintained"; # Added 2024-10-30
1620 protobuf_23 = throw "'protobuf_23' has been removed from nixpkgs. Consider using a more recent version of the protobuf library"; # Added 2025-04-20
01621 protobuf3_24 = protobuf_24;
1622 protobuf3_23 = protobuf_23;
1623 protobuf3_21 = protobuf_21;
···1618 prometheus-minio-exporter = throw "'prometheus-minio-exporter' has been removed from nixpkgs, use Minio's built-in Prometheus integration instead"; # Added 2024-06-10
1619 prometheus-tor-exporter = throw "'prometheus-tor-exporter' has been removed from nixpkgs, as it was broken and unmaintained"; # Added 2024-10-30
1620 protobuf_23 = throw "'protobuf_23' has been removed from nixpkgs. Consider using a more recent version of the protobuf library"; # Added 2025-04-20
1621+ protobuf_28 = throw "'protobuf_28' has been removed from nixpkgs. Consider using a more recent version of the protobuf library"; # Added 2025-06-14
1622 protobuf3_24 = protobuf_24;
1623 protobuf3_23 = protobuf_23;
1624 protobuf3_21 = protobuf_21;