Compare commits

...

2 Commits

Author SHA1 Message Date
Hilton Chain
d549c64015
rosenthal: Remove sops.
This commit re-applies a2fee8a415.
2026-04-12 18:25:51 +08:00
Hilton Chain
6517fe1c32
home: services: gtk[234]: Set up environment variables and files only when needed.
* modules/rosenthal/home/services/gtk.scm (home-gtk2-environment-variables)
  (home-gtk2-xdg-configuration-files, home-gtk3-xdg-configuration-files)
  (home-gtk4-xdg-configuration-files): Return empty list when there's no
  configuration.

Fixes: #53
2026-04-12 15:49:34 +08:00
2 changed files with 27 additions and 74 deletions

View File

@ -14,37 +14,45 @@
home-gtk3-service-type
home-gtk4-service-type))
(define home-gtk2-environment-variables
;; https://wiki.archlinux.org/title/XDG_Base_Directory
'(("GTK2_RC_FILES" . "$XDG_CONFIG_HOME/gtk-2.0/gtkrc")))
(define (home-gtk2-environment-variables config)
(if (null? config)
'()
;; https://wiki.archlinux.org/title/XDG_Base_Directory
'(("GTK2_RC_FILES" . "$XDG_CONFIG_HOME/gtk-2.0/gtkrc"))))
(define (home-gtk2-xdg-configuration-files config)
`(("gtk-2.0/gtkrc"
,(computed-file "gtkrc"
#~(begin
(use-modules (ice-9 match))
(call-with-output-file #$output
(lambda (port)
(for-each (match-lambda
((key . val)
(format port "~a = ~a~%" key val)))
'#$config))))
#:options '(#:substitutable? #f)))))
(if (null? config)
'()
`(("gtk-2.0/gtkrc"
,(computed-file "gtkrc"
#~(begin
(use-modules (ice-9 match))
(call-with-output-file #$output
(lambda (port)
(for-each (match-lambda
((key . val)
(format port "~a = ~a~%" key val)))
'#$config))))
#:options '(#:substitutable? #f))))))
(define (home-gtk3-xdg-configuration-files config)
`(("gtk-3.0/settings.ini"
,(ini-file "settings.ini" #~'(("Settings" #$@config))))))
(if (null? config)
'()
`(("gtk-3.0/settings.ini"
,(ini-file "settings.ini" #~'(("Settings" #$@config)))))))
(define (home-gtk4-xdg-configuration-files config)
`(("gtk-4.0/settings.ini"
,(ini-file "settings.ini" #~'(("Settings" #$@config))))))
(if (null? config)
'()
`(("gtk-4.0/settings.ini"
,(ini-file "settings.ini" #~'(("Settings" #$@config)))))))
(define home-gtk2-service-type
(service-type
(name 'home-gtk2)
(extensions
(list (service-extension home-environment-variables-service-type
(const home-gtk2-environment-variables))
home-gtk2-environment-variables)
(service-extension home-xdg-configuration-files-service-type
home-gtk2-xdg-configuration-files)))
(compose concatenate)

View File

@ -15,58 +15,3 @@
#:use-module (guix build-system go)
;; Guix packages
#:use-module (gnu packages golang))
(define-public sops
(package
(name "sops")
(version "3.12.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/getsops/sops")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"01w67iv0v9hnxgaklixk871dwnhyhllm3zz36iiwqsd19d5rllfm"))))
(build-system go-build-system)
(arguments
(list #:go go-1.26
#:install-source? #f
#:import-path "./cmd/sops"
#:build-flags
#~(list (string-append
"-ldflags="
"-X github.com/getsops/sops/v3/version.Version="
#$(package-version this-package)))
#:modules
'(((guix build gnu-build-system) #:prefix gnu:)
(guix build go-build-system)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(replace 'unpack
(lambda args
(unsetenv "GO111MODULE")
(apply (assoc-ref gnu:%standard-phases 'unpack) args)
(copy-recursively
#+(this-package-native-input "vendored-go-dependencies")
"vendor")))
(replace 'install-license-files
(assoc-ref gnu:%standard-phases 'install-license-files)))))
(native-inputs
(list (origin
(method (go-mod-vendor #:go go-1.26))
(uri (package-source this-package))
(file-name "vendored-go-dependencies")
(sha256
(base32
"1gd5kpiqizrab7fbhzhwj5lm1b6wmpvwpvnrwwz0xkfn6hqwj1qy")))))
(home-page "https://getsops.io/")
(synopsis "Simple and flexible tool for managing secrets")
(description
"@acronym{SOPS, Secrets OPerationS} is an editor of encrypted files that
supports YAML, JSON, ENV, INI and binary formats and encrypts with @acronym{AWS
KMS, Amazon Web Services Key Management Service}, @acronym{GCP KMS, Google Cloud
Platform Key Management Service}, Azure Key Vault, @code{age}, and OpenPGP.")
(license license:mpl2.0)))