style: split doas-service in thematic services

pull/1/head
anemofilia 2023-09-24 10:25:01 -03:00
parent 66c0dcc480
commit a09a647e7f
No known key found for this signature in database
GPG Key ID: 5A8F3D62C87A2B33
1 changed files with 32 additions and 34 deletions

View File

@ -241,45 +241,43 @@
(respawn? #f))) (respawn? #f)))
#|Doas configuration services|# #|Doas configuration services|#
(service doas-service-type (simple-service 'miscellaneous-permissions doas-service-type
(append #|Miscellaneous|# (list (permit (identity ":wheel")
(list (permit (identity ":wheel") (setenv `("GUILE_LOAD_PATH")))
(setenv `("GUILE_LOAD_PATH"))) (permit (identity ":wheel")
(nopass? #t)
(command "guix")
(args `("pull")))))
(simple-service 'text-editors-permissions doas-service-type
(map (lambda (cmd)
(permit (identity ":wheel")
(keepenv? #t)
(command cmd)))
`("kak" "emacsclient")))
(simple-service 'power-management-permissions doas-service-type
(map (lambda (cmd)
(permit (identity ":wheel") (permit (identity ":wheel")
(nopass? #t) (nopass? #t)
(command "guix") (command cmd)
(args `("pull"))) (args '())))
`("zzz" "halt" "reboot")))
(simple-service 'shepherd-status-permissions doas-service-type
(map (lambda (arglist)
(permit (identity ":wheel") (permit (identity ":wheel")
(nopass? #t) (nopass? #t)
(command "herd") (command "herd")
(args `("status" (args (list arg))))
"detailed-status")))) `("status" "detailed-status")))
(simple-service 'service-management-permissions doas-service-type
#|Text editors|# (flatmap (lambda (service action)
(map (lambda (cmd) (permit (identity ":wheel")
(permit (identity ":wheel") (nopass? #t)
(keepenv? #t) (command "herd")
(command cmd))) (args (list action service))))
`("kak" "emacsclient")) `("tlp" "tor" "thermald" "thinkfan"
"wpa-supplicant")
#|Power management|# `("doc" "stop" "start" "enable"
(map (lambda (cmd) "status" "restart" "disable")))
(permit (identity ":wheel")
(nopass? #t)
(command cmd)
(args '())))
`("zzz" "halt" "reboot"))
#|Service management|#
(flatmap (lambda (service action)
(permit (identity ":wheel")
(nopass? #t)
(command "herd")
(args (list action service))))
`("tlp" "tor" "thermald" "thinkfan"
"wpa-supplicant")
`("doc" "stop" "start" "enable"
"status" "restart" "disable"))))
#|Special file services|# #|Special file services|#
(service special-files-service-type (service special-files-service-type