mirror of
https://github.com/donovanglover/nix-config.git
synced 2025-01-24 06:38:36 +01:00
meta: Handle postgres at the system level
This makes sense since postgres is a service that runs on the system.
This commit is contained in:
parent
bfd55ef40a
commit
58df5018da
@ -1,19 +1,11 @@
|
||||
{ pkgs, config, lib, ... }:
|
||||
{ pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
inherit (pkgs) fish;
|
||||
inherit (lib) mkEnableOption mkIf mkMerge singleton;
|
||||
inherit (cfg) postgres;
|
||||
inherit (config.modules.system) username;
|
||||
inherit (lib) mkMerge;
|
||||
inherit (builtins) attrValues;
|
||||
|
||||
cfg = config.modules.shell;
|
||||
in
|
||||
{
|
||||
options.modules.shell = {
|
||||
postgres = mkEnableOption "postgres database and pgcli for containers";
|
||||
};
|
||||
|
||||
config = {
|
||||
users.defaultUserShell = fish;
|
||||
environment.shells = [ fish ];
|
||||
@ -84,6 +76,7 @@ in
|
||||
visidata
|
||||
zellij
|
||||
diskonaut
|
||||
pgcli
|
||||
;
|
||||
inherit (pkgs)
|
||||
p7zip
|
||||
@ -105,22 +98,8 @@ in
|
||||
nix-search-cli
|
||||
;
|
||||
})
|
||||
|
||||
(mkIf postgres (attrValues {
|
||||
inherit (pkgs) pgcli;
|
||||
}))
|
||||
];
|
||||
|
||||
services.postgresql = mkIf postgres {
|
||||
enable = true;
|
||||
|
||||
ensureUsers = singleton {
|
||||
name = username;
|
||||
};
|
||||
|
||||
ensureDatabases = [ username ];
|
||||
};
|
||||
|
||||
programs = {
|
||||
fish.enable = true;
|
||||
neovim.enable = true;
|
||||
|
@ -4,7 +4,7 @@ let
|
||||
inherit (lib) mkOption mkEnableOption mkIf singleton;
|
||||
inherit (lib.types) nullOr str listOf;
|
||||
inherit (pkgs.nixVersions) nix_2_19;
|
||||
inherit (cfg) username iHaveLotsOfRam hashedPassword mullvad allowSRB2Port allowZolaPort noRoot;
|
||||
inherit (cfg) username iHaveLotsOfRam hashedPassword mullvad allowSRB2Port allowZolaPort noRoot postgres;
|
||||
inherit (builtins) attrValues;
|
||||
|
||||
cfg = config.modules.system;
|
||||
@ -55,6 +55,7 @@ in
|
||||
noRoot = mkEnableOption "disable access to root";
|
||||
|
||||
mullvad = mkEnableOption "mullvad vpn";
|
||||
postgres = mkEnableOption "postgres database for containers";
|
||||
|
||||
allowSRB2Port = mkEnableOption "port for srb2";
|
||||
allowZolaPort = mkEnableOption "port for zola";
|
||||
@ -207,11 +208,23 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
services.resolved.llmnr = "false";
|
||||
services = {
|
||||
resolved.llmnr = "false";
|
||||
|
||||
services.mullvad-vpn = mkIf mullvad {
|
||||
enable = true;
|
||||
enableExcludeWrapper = false;
|
||||
mullvad-vpn = mkIf mullvad {
|
||||
enable = true;
|
||||
enableExcludeWrapper = false;
|
||||
};
|
||||
|
||||
postgresql = mkIf postgres {
|
||||
enable = true;
|
||||
|
||||
ensureUsers = singleton {
|
||||
name = username;
|
||||
};
|
||||
|
||||
ensureDatabases = [ username ];
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
|
Loading…
Reference in New Issue
Block a user