aboutsummaryrefslogtreecommitdiffhomepage
path: root/cmd/fuserdb/payload.go
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2025-01-23 17:04:19 +0900
committerOphestra <cat@gensokyo.uk>2025-01-23 17:04:19 +0900
commit134247b57d2ff93c7b70815158474d94bed1074b (patch)
treeffbe509e339a521b3ba58cd9d89a335e18bef564 /cmd/fuserdb/payload.go
parentb5bb7654da074dc92c354582d086b68d2d45024c (diff)
nix: configure target users via nixos
This makes patching home-manager no longer necessary. Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'cmd/fuserdb/payload.go')
-rw-r--r--cmd/fuserdb/payload.go64
1 files changed, 0 insertions, 64 deletions
diff --git a/cmd/fuserdb/payload.go b/cmd/fuserdb/payload.go
deleted file mode 100644
index dc8a0729..00000000
--- a/cmd/fuserdb/payload.go
+++ /dev/null
@@ -1,64 +0,0 @@
-package main
-
-import (
- "encoding/json"
- "os"
- "path"
-
- "git.gensokyo.uk/security/fortify/internal/fmsg"
-)
-
-type payloadU struct {
- UserName string `json:"userName"`
- Uid int `json:"uid"`
- Gid int `json:"gid"`
- MemberOf []string `json:"memberOf,omitempty"`
- RealName string `json:"realName"`
- HomeDirectory string `json:"homeDirectory"`
- Shell string `json:"shell"`
-}
-
-func writeUser(userName string, uid int, us string, realName, homeDirectory, shell string, out string) {
- userFileName := userName + ".user"
- if f, err := os.OpenFile(path.Join(out, userFileName), os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644); err != nil {
- fmsg.Fatalf("cannot create %s: %v", userName, err)
- } else if err = json.NewEncoder(f).Encode(&payloadU{
- UserName: userName,
- Uid: uid,
- Gid: uid,
- RealName: realName,
- HomeDirectory: homeDirectory,
- Shell: shell,
- }); err != nil {
- fmsg.Fatalf("cannot serialise %s: %v", userName, err)
- } else if err = f.Close(); err != nil {
- fmsg.Printf("cannot close %s: %v", userName, err)
- }
- if err := os.Symlink(userFileName, path.Join(out, us+".user")); err != nil {
- fmsg.Fatalf("cannot link %s: %v", userName, err)
- }
-}
-
-type payloadG struct {
- GroupName string `json:"groupName"`
- Gid int `json:"gid"`
- Members []string `json:"members,omitempty"`
-}
-
-func writeGroup(groupName string, gid int, gs string, members []string, out string) {
- groupFileName := groupName + ".group"
- if f, err := os.OpenFile(path.Join(out, groupFileName), os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644); err != nil {
- fmsg.Fatalf("cannot create %s: %v", groupName, err)
- } else if err = json.NewEncoder(f).Encode(&payloadG{
- GroupName: groupName,
- Gid: gid,
- Members: members,
- }); err != nil {
- fmsg.Fatalf("cannot serialise %s: %v", groupName, err)
- } else if err = f.Close(); err != nil {
- fmsg.Printf("cannot close %s: %v", groupName, err)
- }
- if err := os.Symlink(groupFileName, path.Join(out, gs+".group")); err != nil {
- fmsg.Fatalf("cannot link %s: %v", groupName, err)
- }
-}