diff options
author | Marius Bakke <marius@gnu.org> | 2022-09-29 07:26:37 +0200 |
---|---|---|
committer | Marius Bakke <marius@gnu.org> | 2022-09-29 07:26:37 +0200 |
commit | f66067febc111d03929c95c067f0b88a8f8abb7b (patch) | |
tree | d571997c6756f60a9e9ddd6396e46d05ca7e0dde /gnu/services | |
parent | 5dc5d6fa8136f067c85295d88018a7cd8b7cfe40 (diff) | |
parent | 45eac6cdf5c8d9d7b0c564b105c790d2d2007799 (diff) | |
download | guix-f66067febc111d03929c95c067f0b88a8f8abb7b.tar.gz |
Merge branch 'master' into staging
Diffstat (limited to 'gnu/services')
-rw-r--r-- | gnu/services/base.scm | 37 | ||||
-rw-r--r-- | gnu/services/samba.scm | 12 |
2 files changed, 35 insertions, 14 deletions
diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 616bc42e69..3f662f1a6c 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -55,7 +55,9 @@ #:select (file-system-packages)) #:use-module (gnu packages admin) #:use-module ((gnu packages linux) - #:select (alsa-utils crda eudev e2fsprogs fuse gpm kbd lvm2 rng-tools)) + #:select (alsa-utils btrfs-progs crda eudev + e2fsprogs f2fs-tools fuse gpm kbd lvm2 rng-tools + util-linux xfsprogs)) #:use-module (gnu packages bash) #:use-module ((gnu packages base) #:select (coreutils glibc glibc-utf8-locales tar)) @@ -64,7 +66,10 @@ #:autoload (gnu packages hurd) (hurd) #:use-module (gnu packages package-management) #:use-module ((gnu packages gnupg) #:select (guile-gcrypt)) - #:use-module (gnu packages linux) + #:use-module ((gnu packages disk) + #:select (dosfstools)) + #:use-module ((gnu packages file-systems) + #:select (bcachefs-tools exfat-utils jfsutils zfs)) #:use-module (gnu packages terminals) #:use-module ((gnu build file-systems) #:select (mount-flags->bit-mask @@ -86,6 +91,7 @@ #:export (fstab-service-type root-file-system-service file-system-service-type + file-system-utilities swap-service host-name-service %default-console-font @@ -488,6 +494,31 @@ upon boot." (memq 'bind-mount (file-system-flags file-system)))) file-systems)) +(define (file-system-type->utilities type) + "Return the package providing the utilities for file system TYPE, #f +otherwise." + (assoc-ref + `(("bcachefs" . ,bcachefs-tools) + ("btrfs" . ,btrfs-progs) + ("exfat" . ,exfat-utils) + ("ext2" . ,e2fsprogs) + ("ext3" . ,e2fsprogs) + ("ext4" . ,e2fsprogs) + ("fat" . ,dosfstools) + ("f2fs" . ,f2fs-tools) + ("jfs" . ,jfsutils) + ("vfat" . ,dosfstools) + ("xfs" . ,xfsprogs) + ("zfs" . ,zfs)) + type)) + +(define (file-system-utilities file-systems) + "Return a list of packages containing file system utilities for +FILE-SYSTEMS." + (filter-map (lambda (file-system) + (file-system-type->utilities (file-system-type file-system))) + file-systems)) + (define file-system-service-type (service-type (name 'file-systems) (extensions @@ -495,6 +526,8 @@ upon boot." file-system-shepherd-services) (service-extension fstab-service-type file-system-fstab-entries) + (service-extension profile-service-type + file-system-utilities) ;; Have 'user-processes' depend on 'file-systems'. (service-extension user-processes-service-type diff --git a/gnu/services/samba.scm b/gnu/services/samba.scm index 4e930d61dc..dfc7778570 100644 --- a/gnu/services/samba.scm +++ b/gnu/services/samba.scm @@ -17,14 +17,12 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu services samba) - #:use-module (gnu packages) #:use-module (gnu packages base) #:use-module (gnu packages admin) #:use-module (gnu packages samba) #:use-module (gnu services) - #:use-module (gnu services configuration) #:use-module (gnu services shepherd) #:use-module (gnu services base) #:use-module (gnu system shadow) @@ -41,20 +39,10 @@ #:export (samba-service-type samba-configuration - samba-smb-conf wsdd-service-type wsdd-configuration)) -(define %smb-conf - (plain-file "smb.conf" "[global] - workgroup = WORKGROUP - server string = Samba Server - server role = standalone server - log file = /var/log/samba/log.%m - logging = file -")) - (define-record-type* <samba-configuration> samba-configuration make-samba-configuration |