mirror of
https://github.com/CHN-beta/nixos.git
synced 2026-01-12 04:39:23 +08:00
move system.user to user
This commit is contained in:
@@ -73,7 +73,7 @@ inputs: rec
|
||||
openmpi-aocc = inputs.pkgs.callPackage ./vasp/openmpi-aocc { inherit aocc; gcc = gcc-pie; };
|
||||
gcc-pie = inputs.pkgs.wrapCC (inputs.pkgs.gcc.cc.overrideAttrs (prev:
|
||||
{ configureFlags = prev.configureFlags ++ [ "--enable-default-pie" ];}));
|
||||
additionalCommands = let uid = inputs.config.nixos.system.user.user.gb; in
|
||||
additionalCommands = let uid = inputs.config.nixos.user.uid.gb; in
|
||||
''[ "$(${inputs.pkgs.coreutils}/bin/id -u)" -eq ${builtins.toString uid} ] && exit 1'';
|
||||
};
|
||||
oneapi = inputs.pkgs.callPackage ./oneapi {};
|
||||
|
||||
@@ -142,8 +142,8 @@ inputs:
|
||||
};
|
||||
users =
|
||||
{
|
||||
users.frp = { uid = inputs.config.nixos.system.user.user.frp; group = "frp"; isSystemUser = true; };
|
||||
groups.frp.gid = inputs.config.nixos.system.user.group.frp;
|
||||
users.frp = { uid = inputs.config.nixos.user.uid.frp; group = "frp"; isSystemUser = true; };
|
||||
groups.frp.gid = inputs.config.nixos.user.gid.frp;
|
||||
};
|
||||
}
|
||||
)
|
||||
@@ -193,8 +193,8 @@ inputs:
|
||||
nixos.services.acme = { enable = true; cert.${frpServer.serverName}.group = "frp"; };
|
||||
users =
|
||||
{
|
||||
users.frp = { uid = inputs.config.nixos.system.user.user.frp; group = "frp"; isSystemUser = true; };
|
||||
groups.frp.gid = inputs.config.nixos.system.user.group.frp;
|
||||
users.frp = { uid = inputs.config.nixos.user.uid.frp; group = "frp"; isSystemUser = true; };
|
||||
groups.frp.gid = inputs.config.nixos.user.gid.frp;
|
||||
};
|
||||
networking.firewall.allowedTCPPorts = [ 7000 ];
|
||||
}
|
||||
|
||||
@@ -16,13 +16,13 @@ inputs:
|
||||
{
|
||||
users.fz-new-order =
|
||||
{
|
||||
uid = inputs.config.nixos.system.user.user.fz-new-order;
|
||||
uid = inputs.config.nixos.user.uid.fz-new-order;
|
||||
group = "fz-new-order";
|
||||
home = "/var/lib/fz-new-order";
|
||||
createHome = true;
|
||||
isSystemUser = true;
|
||||
};
|
||||
groups.fz-new-order.gid = inputs.config.nixos.system.user.group.fz-new-order;
|
||||
groups.fz-new-order.gid = inputs.config.nixos.user.gid.fz-new-order;
|
||||
};
|
||||
systemd =
|
||||
{
|
||||
|
||||
@@ -12,7 +12,7 @@ inputs:
|
||||
users = inputs.config.users.groups.groupshare.members;
|
||||
in mkIf groupshare.enable
|
||||
{
|
||||
users.groups.groupshare.gid = inputs.config.nixos.system.user.group.groupshare;
|
||||
users.groups.groupshare.gid = inputs.config.nixos.user.gid.groupshare;
|
||||
systemd.tmpfiles.rules = [ "d /var/lib/groupshare" ]
|
||||
++ (concatLists (map
|
||||
(user:
|
||||
|
||||
@@ -13,8 +13,8 @@ inputs:
|
||||
{
|
||||
users =
|
||||
{
|
||||
users.mirism = { uid = inputs.config.nixos.system.user.user.mirism; group = "mirism"; isSystemUser = true; };
|
||||
groups.mirism.gid = inputs.config.nixos.system.user.group.mirism;
|
||||
users.mirism = { uid = inputs.config.nixos.user.uid.mirism; group = "mirism"; isSystemUser = true; };
|
||||
groups.mirism.gid = inputs.config.nixos.user.gid.mirism;
|
||||
};
|
||||
systemd =
|
||||
{
|
||||
|
||||
@@ -125,13 +125,13 @@ inputs:
|
||||
{
|
||||
users."misskey-${instance.name}" =
|
||||
{
|
||||
uid = inputs.config.nixos.system.user.user."misskey-${instance.name}";
|
||||
uid = inputs.config.nixos.user.uid."misskey-${instance.name}";
|
||||
group = "misskey-${instance.name}";
|
||||
home = "/var/lib/misskey/${instance.name}";
|
||||
createHome = true;
|
||||
isSystemUser = true;
|
||||
};
|
||||
groups."misskey-${instance.name}".gid = inputs.config.nixos.system.user.group."misskey-${instance.name}";
|
||||
groups."misskey-${instance.name}".gid = inputs.config.nixos.user.gid."misskey-${instance.name}";
|
||||
})
|
||||
(attrsToList misskey.instances));
|
||||
nixos.services =
|
||||
|
||||
@@ -55,7 +55,7 @@ inputs:
|
||||
inherit (pool) name;
|
||||
value =
|
||||
{
|
||||
uid = inputs.config.nixos.system.user.user.${pool.name};
|
||||
uid = inputs.config.nixos.user.uid.${pool.name};
|
||||
group = pool.name;
|
||||
extraGroups = [ "nginx" ];
|
||||
isSystemUser = true;
|
||||
@@ -63,7 +63,7 @@ inputs:
|
||||
})
|
||||
(filter (pool: pool.value.user == null) (attrsToList phpfpm.instances)));
|
||||
groups = listToAttrs (map
|
||||
(pool: { inherit (pool) name; value.gid = inputs.config.nixos.system.user.group.${pool.name}; })
|
||||
(pool: { inherit (pool) name; value.gid = inputs.config.nixos.user.gid.${pool.name}; })
|
||||
(filter (pool: pool.value.user == null) (attrsToList phpfpm.instances)));
|
||||
};
|
||||
};
|
||||
|
||||
@@ -54,8 +54,8 @@ inputs:
|
||||
};
|
||||
users =
|
||||
{
|
||||
users.rsshub = { uid = inputs.config.nixos.system.user.user.rsshub; group = "rsshub"; isSystemUser = true; };
|
||||
groups.rsshub.gid = inputs.config.nixos.system.user.group.rsshub;
|
||||
users.rsshub = { uid = inputs.config.nixos.user.uid.rsshub; group = "rsshub"; isSystemUser = true; };
|
||||
groups.rsshub.gid = inputs.config.nixos.user.gid.rsshub;
|
||||
};
|
||||
nixos.services =
|
||||
{
|
||||
|
||||
@@ -37,14 +37,14 @@ inputs:
|
||||
{
|
||||
users."synapse-${instance.name}" =
|
||||
{
|
||||
uid = inputs.config.nixos.system.user.user."synapse-${instance.name}";
|
||||
uid = inputs.config.nixos.user.uid."synapse-${instance.name}";
|
||||
group = "synapse-${instance.name}";
|
||||
home = "/var/lib/synapse/${instance.name}";
|
||||
createHome = true;
|
||||
isSystemUser = true;
|
||||
shell = "${inputs.pkgs.bash}/bin/bash";
|
||||
};
|
||||
groups."synapse-${instance.name}".gid = inputs.config.nixos.system.user.group."synapse-${instance.name}";
|
||||
groups."synapse-${instance.name}".gid = inputs.config.nixos.user.gid."synapse-${instance.name}";
|
||||
})
|
||||
(attrsToList synapse.instances));
|
||||
systemd = mkMerge (map
|
||||
|
||||
@@ -294,7 +294,7 @@ inputs:
|
||||
[ "-m set --match-set xmu_net dst -j MARK --set-mark 1/1" ]
|
||||
++ (map
|
||||
(user:
|
||||
let uid = inputs.config.nixos.system.user.user.${user};
|
||||
let uid = inputs.config.nixos.user.uid.${user};
|
||||
in "-m owner --uid-owner ${toString uid} -j DSCP --set-dscp 0x1")
|
||||
(xray.client.xray.noproxyUsers ++ [ "v2ray" ]))
|
||||
))
|
||||
@@ -320,8 +320,8 @@ inputs:
|
||||
};
|
||||
users =
|
||||
{
|
||||
users.v2ray = { uid = inputs.config.nixos.system.user.user.v2ray; group = "v2ray"; isSystemUser = true; };
|
||||
groups.v2ray.gid = inputs.config.nixos.system.user.group.v2ray;
|
||||
users.v2ray = { uid = inputs.config.nixos.user.uid.v2ray; group = "v2ray"; isSystemUser = true; };
|
||||
groups.v2ray.gid = inputs.config.nixos.user.gid.v2ray;
|
||||
};
|
||||
environment.etc."resolv.conf".text = "nameserver 127.0.0.1";
|
||||
}
|
||||
@@ -508,8 +508,8 @@ inputs:
|
||||
};
|
||||
users =
|
||||
{
|
||||
users.v2ray = { uid = inputs.config.nixos.system.user.user.v2ray; group = "v2ray"; isSystemUser = true; };
|
||||
groups.v2ray.gid = inputs.config.nixos.system.user.group.v2ray;
|
||||
users.v2ray = { uid = inputs.config.nixos.user.uid.v2ray; group = "v2ray"; isSystemUser = true; };
|
||||
groups.v2ray.gid = inputs.config.nixos.user.gid.v2ray;
|
||||
};
|
||||
nixos.services =
|
||||
{
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
inputs:
|
||||
{
|
||||
options.nixos.system.user = let inherit (inputs.lib) mkOption types; in
|
||||
{
|
||||
user = mkOption
|
||||
{
|
||||
type = types.attrsOf types.ints.unsigned;
|
||||
readOnly = true;
|
||||
default =
|
||||
{
|
||||
chn = 1000;
|
||||
xll = 1001;
|
||||
yjq = 1002;
|
||||
yxy = 1003;
|
||||
zem = 1004;
|
||||
gb = 1005;
|
||||
test = 1006;
|
||||
misskey-misskey = 2000;
|
||||
misskey-misskey-old = 2001;
|
||||
frp = 2002;
|
||||
mirism = 2003;
|
||||
httpapi = 2004;
|
||||
httpua = 2005;
|
||||
rsshub = 2006;
|
||||
v2ray = 2007;
|
||||
fz-new-order = 2008;
|
||||
synapse-synapse = 2009;
|
||||
synapse-matrix = 2010;
|
||||
};
|
||||
};
|
||||
group = mkOption
|
||||
{
|
||||
type = types.attrsOf types.ints.unsigned;
|
||||
readOnly = true;
|
||||
default = inputs.config.nixos.system.user.user //
|
||||
{
|
||||
groupshare = 3000;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -5,27 +5,57 @@ inputs:
|
||||
{
|
||||
users = mkOption { type = types.listOf types.nonEmptyStr; default = [ "chn" ]; };
|
||||
sharedModules = mkOption { type = types.listOf types.anything; default = []; };
|
||||
};
|
||||
config =
|
||||
let
|
||||
inherit (inputs.config.nixos) user;
|
||||
inherit (builtins) map;
|
||||
inherit (inputs.lib) mkMerge;
|
||||
in
|
||||
uid = mkOption
|
||||
{
|
||||
users = mkMerge (map
|
||||
(name:
|
||||
{
|
||||
users.${name} =
|
||||
{
|
||||
uid = inputs.config.nixos.system.user.user.${name};
|
||||
group = name;
|
||||
isNormalUser = true;
|
||||
};
|
||||
groups.${name}.gid = inputs.config.nixos.system.user.group.${name};
|
||||
})
|
||||
user.users);
|
||||
type = types.attrsOf types.ints.unsigned;
|
||||
readOnly = true;
|
||||
default =
|
||||
{
|
||||
chn = 1000;
|
||||
xll = 1001;
|
||||
yjq = 1002;
|
||||
yxy = 1003;
|
||||
zem = 1004;
|
||||
gb = 1005;
|
||||
test = 1006;
|
||||
misskey-misskey = 2000;
|
||||
misskey-misskey-old = 2001;
|
||||
frp = 2002;
|
||||
mirism = 2003;
|
||||
httpapi = 2004;
|
||||
httpua = 2005;
|
||||
rsshub = 2006;
|
||||
v2ray = 2007;
|
||||
fz-new-order = 2008;
|
||||
synapse-synapse = 2009;
|
||||
synapse-matrix = 2010;
|
||||
};
|
||||
};
|
||||
gid = mkOption
|
||||
{
|
||||
type = types.attrsOf types.ints.unsigned;
|
||||
readOnly = true;
|
||||
default = inputs.config.nixos.user.uid //
|
||||
{
|
||||
groupshare = 3000;
|
||||
};
|
||||
};
|
||||
};
|
||||
config = let inherit (inputs.config.nixos) user; in
|
||||
{
|
||||
users = inputs.lib.mkMerge (builtins.map
|
||||
(name:
|
||||
{
|
||||
users.${name} =
|
||||
{
|
||||
uid = inputs.config.nixos.user.uid.${name};
|
||||
group = name;
|
||||
isNormalUser = true;
|
||||
};
|
||||
groups.${name}.gid = inputs.config.nixos.user.gid.${name};
|
||||
})
|
||||
user.users);
|
||||
};
|
||||
}
|
||||
|
||||
# environment.persistence."/impermanence".users.chn =
|
||||
|
||||
Reference in New Issue
Block a user