From: Efraim Flashner <efraim@flashner.co.il>
To: help-guix@gnu.org
Subject: removing items from %desktop-services
Date: Wed, 16 May 2018 11:44:52 +0300 [thread overview]
Message-ID: <20180516084452.GB1239@macbook41> (raw)
[-- Attachment #1.1: Type: text/plain, Size: 1470 bytes --]
I'm trying to modify the list of services in my os-config, and I've run
into a bit of a problem. I've replaced my ntp-service with an
openntpd-service, but I'm having trouble with the syntax for removing
more services. Here's a snippet:
(use-modules (srfi srfi-1)
<snip>
(modify-services (delete (ntp-service) %desktop-services)
;(modify-services (fold delete %desktop-services
; '(
; (screen-locker-service slock)
; (screen-locker-service xlockmore "xlock")
; (ntp-service)
; )
<snip>
The uncommented out code works and deletes (ntp-service) from
%desktop-servies as expected. When I comment that line out and put in
the multi-line version with fold then I find out that it doesn't work,
as evidenced by the error that I have two services providing ntpd (ntp
and openntpd).
I know I can put (modify-services (delete (service)
(delete (other-service)
(delete (third-service)
%desktop-services)))
but I'd rather do it more cleanly with `fold' or something similar.
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #1.2: macbook41_config.scm --]
[-- Type: text/plain, Size: 6515 bytes --]
(use-modules (guix store)
(gnu)
(gnu system nss)
(gnu system locale)
(srfi srfi-1))
(use-service-modules admin cups desktop mcron networking pm ssh xorg)
(use-package-modules bootloaders certs cups gnome linux video)
(define %btrfs-scrub
#~(job '(next-hour '(3))
(string-append #$btrfs-progs "/bin/btrfs scrub -c 3 start /")))
(define %btrfs-balance
#~(job '(next-hour '(5))
(string-append #$btrfs-progs "/bin/btrfs balance start -dusage=50 -musage=70 /")))
(define my-xorg-modules
;; Only the modules on this laptop
(fold delete %default-xorg-modules
'("xf86-video-ati"
"xf86-video-cirrus"
"xf86-video-mach64"
"xf86-video-nouveau"
"xf86-video-nv"
"xf86-video-sis"
"xf86-input-evdev"
"xf86-input-keyboard"
"xf86-input-mouse"
"xf86-input-synaptics"
)))
(operating-system
(host-name "macbook41")
(timezone "Asia/Jerusalem")
(locale "en_US.utf8")
(locale-definitions
(list (locale-definition (source "en_US")
(name "en_US.utf8"))
(locale-definition (source "he_IL")
(name "he_IL.utf8"))))
;; Assuming /dev/sdX is the target hard disk, and "my-root"
;; is the label of the target root file system.
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
(target "/boot/efi")))
(kernel-arguments '("zswap.enabled=1"
;; Required to run X32 software and VMs
;; https://wiki.debian.org/X32Port
;; Still untested on GuixSD.
"syscall.x32=y"))
(file-systems (cons* (file-system
(device "my-root")
(mount-point "/")
(type "btrfs")
(title 'label)
(options "autodefrag,compress=lzo,discard,ssd_spread"))
(file-system
(device "none")
(mount-point "/var/guix/temproots")
(title 'device)
(type "tmpfs")
(check? #f))
(file-system
(device (uuid "F010-1913" 'fat))
(title 'uuid)
(mount-point "/boot/efi")
(type "vfat"))
%base-file-systems))
(swap-devices '("/dev/sda2"))
(users (cons (user-account
(name "efraim")
(comment "Efraim")
(group "users")
(supplementary-groups '("wheel" "netdev" "kvm"
"lp" "lpadmin"
"audio" "video"))
(home-directory "/home/efraim"))
%base-user-accounts))
;; This is where we specify system-wide packages.
(packages (cons* nss-certs ;for HTTPS access
gvfs ;for user mounts
cups
btrfs-progs
libvdpau-va-gl ;intel graphics vdpau
%base-packages))
(services (cons* (service enlightenment-desktop-service-type)
(console-keymap-service "il-heb")
(service guix-publish-service-type
(guix-publish-configuration
(port 3000)))
(service openssh-service-type
(openssh-configuration
(port-number 22)
(allow-empty-passwords? #f)
(password-authentication? #t)))
(tor-service)
(tor-hidden-service "http"
'((22 "127.0.0.1:22")))
(service cups-service-type
(cups-configuration
(web-interface? #t)
(extensions
(list cups-filters hplip))))
(service tlp-service-type)
(service rottlog-service-type)
(service mcron-service-type
(mcron-configuration
(jobs (list %btrfs-scrub
%btrfs-balance))))
(service openntpd-service-type
(openntpd-configuration
(listen-on '("127.0.0.1" "::1"))
(allow-large-adjustment? #t)))
(modify-services (delete (ntp-service) %desktop-services)
;(modify-services (fold delete %desktop-services
; '(
; (screen-locker-service slock)
; (screen-locker-service xlockmore "xlock")
; (ntp-service)
; )
; )
(guix-service-type config =>
(guix-configuration
(inherit config)
(substitute-urls
(cons* ;"https://bayfront.guixsd.org" ; currently offline
"https://berlin.guixsd.org"
;"http://192.168.1.134:8181" ; odroid-c2
"http://192.168.1.183" ; E1240
%default-substitute-urls))
(extra-options
'("--cores=1")))) ; we're on a laptop
(slim-service-type config =>
(slim-configuration
(inherit config)
(startx (xorg-start-command
#:modules my-xorg-modules))))
)))
;; Allow resolution of '.local' host names with mDNS.
(name-service-switch %mdns-host-lookup-nss))
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next reply other threads:[~2018-05-16 8:45 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-16 8:44 Efraim Flashner [this message]
2018-05-17 14:28 ` removing items from %desktop-services Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180516084452.GB1239@macbook41 \
--to=efraim@flashner.co.il \
--cc=help-guix@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).