Compare commits

..

No commits in common. "92c6a14084e1c9413a96c22555063373109a0a3c" and "4a20afc0253b6866e03329824932e1379d8b92bd" have entirely different histories.

29 changed files with 154 additions and 252 deletions

View File

@ -1,7 +1,7 @@
;;; -*- mode: scheme -*-
;;; SPDX-FileCopyrightText: 2022, 2024 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: CC0-1.0
;; -*- mode: scheme -*-
;; SPDX-FileCopyrightText: 2022, 2024 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: CC0-1.0
(authorizations
(version 0)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2024, 2025 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2024, 2025 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (guix import rosenthal-updaters)
#:use-module (srfi srfi-71)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2023 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2023 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal bootloader grub)
#:use-module (gnu bootloader)

View File

@ -1,8 +1,8 @@
;;; -*- lexical-binding: t -*-
;;; SPDX-FileCopyrightText: DogLooksGood <doglooksgood@hotmail.com>
;;; SPDX-FileCopyrightText: 2022 Nyk Ma <i@nyk.ma>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: DogLooksGood <doglooksgood@hotmail.com>
;; SPDX-FileCopyrightText: 2022 Nyk Ma <i@nyk.ma>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
;; https://github.com/DogLooksGood/meomacs/blob/master/laf.org
;; https://github.com/nykma/nema/blob/develop/my-sample/font.el

View File

@ -1,7 +1,7 @@
;;; SPDX-FileCopyrightText: 2022, 2025 Hilton Chain <hako@ultrarare.space>
;;; SPDX-FileCopyrightText: 2025 William Goodspeed
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2022, 2025 Hilton Chain <hako@ultrarare.space>
;; SPDX-FileCopyrightText: 2025 William Goodspeed
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages admin)
#:use-module ((guix licenses) #:prefix license:)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2023-2024 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2023-2024 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages binaries)
#:use-module (srfi srfi-1)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2023 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2023 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages bootloaders)
#:use-module (guix download)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2023-2025 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2023-2025 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages browser-extensions)
#:use-module (srfi srfi-1)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2022 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2022 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages busybox)
#:use-module (guix gexp)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages ci)
#:use-module ((guix licenses) #:prefix license:)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2022-2024 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2022-2024 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages dns)
#:use-module ((guix licenses) #:prefix license:)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2022-2024 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2022-2024 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages emacs-xyz)
#:use-module ((guix licenses) #:prefix license:)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2022-2024 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2022-2024 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages networking)
#:use-module ((guix licenses) #:prefix license:)
@ -186,12 +186,6 @@ bypass network restrictions." )
"vendor")))
(replace 'install-license-files
(assoc-ref gnu:%standard-phases 'install-license-files))
(add-after 'unpack 'set-tailscale-default-wireguard-port
(lambda _
;; See also: https://tailscale.com/kb/1082/firewall-ports
;; https://github.com/tailscale/tailscale/blob/51c11a864b1241d1cf1a736fbc94b0f8c76da563/cmd/tailscaled/tailscaled.go#L102
(substitute* "vendor/github.com/sagernet/tailscale/tsnet/tsnet.go"
(("s\\.Port") "41641"))))
(add-after 'install 'install-extras
(lambda _
(let ((sing-box

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages password-utils)
#:use-module (guix gexp)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages rust-apps)
#:use-module ((guix licenses) #:prefix license:)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2022 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2022 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages ssh)
#:use-module (guix gexp)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2023 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2023 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages tree-sitter)
#:use-module (guix gexp)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2022 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2022 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages video)
#:use-module (guix gexp)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2022, 2025 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2022, 2025 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages web)
#:use-module ((guix licenses) #:prefix license:)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages wm)
#:use-module ((guix licenses) #:prefix license:)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal packages xorg)
#:use-module ((guix licenses) #:prefix license:)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2022, 2023 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2022, 2023 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal services bittorrent)
#:use-module (ice-9 format)
@ -18,9 +18,9 @@
qbittorrent-service-type
home-qbittorrent-service-type))
;;;
;;; qBittorrent
;;;
;;
;; qBittorrent
;;
(define-configuration qbittorrent-configuration

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2022, 2023 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2022, 2023 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal services child-error)
#:use-module (guix records)
@ -42,9 +42,9 @@
home-socks2http-configuration
home-socks2http-service-type))
;;;
;;; Clash
;;;
;;
;; Clash
;;
(define-configuration clash-configuration
@ -122,9 +122,9 @@
(description "Run Clash.")))
;;;
;;; Cloudflare Tunnel
;;;
;;
;; Cloudflare Tunnel
;;
(define-maybe string)
@ -213,9 +213,9 @@ headers. This can expose sensitive information in your logs.")
(description "Run cloudflared, the Cloudflare Tunnel daemon.")))
;;;
;;; Cloudflare Warp
;;;
;;
;; Cloudflare Warp
;;
(define-configuration cloudflare-warp-configuration
@ -250,9 +250,9 @@ headers. This can expose sensitive information in your logs.")
(description "Run warp-svc, the Cloudflare Warp daemon.")))
;;;
;;; Miniflux
;;;
;;
;; Miniflux
;;
(define-maybe string)
@ -326,9 +326,9 @@ headers. This can expose sensitive information in your logs.")
(description "Run Miniflux, a minimalist and opinionated feed reader.")))
;;;
;;; Wakapi
;;;
;;
;; Wakapi
;;
(define-configuration home-wakapi-configuration
@ -365,9 +365,9 @@ headers. This can expose sensitive information in your logs.")
(description "Run Wakapi, a self-hosted WakaTime-compatible backend.")))
;;;
;;; ShadowTLS
;;;
;;
;; ShadowTLS
;;
(define-maybe list-of-strings
@ -524,9 +524,9 @@ is @code{443} by default")
(default-value (for-home (shadow-tls-configuration)))))
;;;
;;; Socks2http
;;;
;;
;; Socks2http
;;
(define-configuration home-socks2http-configuration

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2022, 2023 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2022, 2023 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal services dns)
#:use-module (guix gexp)
@ -12,9 +12,9 @@
#:export (smartdns-configuration
smartdns-service-type))
;;;
;;; Smartdns
;;;
;;
;; Smartdns
;;
(define-configuration smartdns-configuration

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2024 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2024 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal services file-systems)
#:use-module (guix gexp)
@ -16,9 +16,9 @@
dumb-runtime-dir-service-type))
;;;
;;; Btrbk
;;;
;;
;; Btrbk
;;
(define-configuration btrbk-configuration

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2024 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2024 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal services mail)
#:use-module (srfi srfi-26)

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2023 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2023 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal services networking)
#:use-module (srfi srfi-1)
@ -15,19 +15,15 @@
#:use-module (gnu services configuration)
#:use-module (gnu services dbus)
#:use-module (gnu services shepherd)
#:use-module (gnu system shadow)
#:export (iwd-configuration
iwd-service-type
sing-box-service-type
sing-box-configuration
tailscale-configuration
tailscale-service-type))
;;;
;;; iwd
;;;
;;
;; iwd
;;
(define %iwd-config-general
@ -382,84 +378,9 @@ list, power save will be disabled."))
(description "Run iwd, the iNet wireless daemon.")))
;;;
;;; sing-box
;;;
(define (file-object? val)
(or (string? val)
(file-like? val)))
(define-configuration/no-serialization sing-box-configuration
(sing-box
(file-like sing-box)
"")
(config-file
file-object
"")
(data-directory
(string "/var/lib/sing-box")
"")
;; Shepherd
(shepherd-provision
(list-of-symbols '(sing-box))
"")
(shepherd-requirement
(list-of-symbols '(networking))
"")
(log-file
(string "/var/log/sing-box.log")
"")
(auto-start?
(boolean #t)
""))
(define sing-box-account
(list (user-group (name "sing-box") (system? #t))))
(define sing-box-activation
(match-record-lambda <sing-box-configuration>
(data-directory)
#~(begin
(use-modules (guix build utils))
(mkdir-p #$data-directory))))
(define sing-box-shepherd-service
(match-record-lambda <sing-box-configuration>
(sing-box data-directory config-file
shepherd-provision shepherd-requirement log-file auto-start?)
(list (shepherd-service
(provision shepherd-provision)
(requirement `(user-processes ,@shepherd-requirement))
(start
#~(make-forkexec-constructor
(list #$(file-append sing-box "/bin/sing-box")
"--config" #$config-file
"--directory" #$data-directory
"--disable-color"
"run")
#:log-file #$log-file))
(stop #~(make-kill-destructor))
(auto-start? auto-start?)))))
(define sing-box-service-type
(service-type
(name 'sing-box)
(extensions
(list (service-extension account-service-type
(const sing-box-account))
(service-extension activation-service-type
sing-box-activation)
(service-extension shepherd-root-service-type
sing-box-shepherd-service)
(service-extension log-rotation-service-type
(compose list sing-box-configuration-log-file))))
(description "")))
;;;
;;; Tailscale
;;;
;;
;; Tailscale
;;
(define-configuration tailscale-configuration

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2024 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2024 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal services web)
#:use-module (guix gexp)
@ -51,16 +51,6 @@
"")
(caddyfile
file-like
"")
;; Shepherd
(shepherd-provision
(list-of-symbols '(caddy))
"")
(shepherd-requirement
(list-of-symbols '())
"")
(auto-start?
(boolean #t)
""))
(define (caddy-accounts config)
@ -101,25 +91,22 @@
(chown file (passwd:uid user) (passwd:gid user)))
(find-files data-dir #:directories? #t)))))))
(define caddy-shepherd-services
(match-record-lambda <caddy-configuration>
(shepherd-provision shepherd-requirement auto-start?)
(list (shepherd-service
(provision shepherd-provision)
(requirement `(user-processes loopback ,@shepherd-requirement))
(start
#~(make-forkexec-constructor
(list "/run/privileged/bin/caddy" "run"
"--environ" "--config" "/etc/caddy/Caddyfile")
#:user "caddy"
#:group "caddy"
#:directory "/var/lib/caddy"
#:log-file "/var/log/caddy.log"
#:resource-limits '((nofile 1048576 1048576))
#:environment-variables '("HOME=/var/lib/caddy")))
(stop
#~(make-kill-destructor))
(auto-start? auto-start?)))))
(define (caddy-shepherd-services config)
(list (shepherd-service
(provision '(caddy))
(requirement '(user-processes loopback))
(start
#~(make-forkexec-constructor
(list "/run/privileged/bin/caddy" "run"
"--environ" "--config" "/etc/caddy/Caddyfile")
#:user "caddy"
#:group "caddy"
#:directory "/var/lib/caddy"
#:log-file "/var/log/caddy.log"
#:resource-limits '((nofile 1048576 1048576))
#:environment-variables '("HOME=/var/lib/caddy")))
(stop
#~(make-kill-destructor)))))
(define caddy-service-type
(service-type
@ -138,9 +125,9 @@
;;;
;;; Forgejo
;;;
;;
;; Forgejo
;;
(define (file-object? val)
@ -231,9 +218,9 @@
(description "Run Forgejo.")))
;;;
;;; Jellyfin
;;;
;;
;; Jellyfin
;;
(define-maybe string)
@ -375,9 +362,9 @@
(description "Run Komga.")))
;;;
;;; Misskey
;;;
;;
;; Misskey
;;
(define-configuration misskey-configuration
@ -525,9 +512,9 @@
(description "Run Navidrome.")))
;;;
;;; Vaultwarden
;;;
;;
;; Vaultwarden
;;
(define-configuration vaultwarden-configuration

View File

@ -1,6 +1,6 @@
;;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;;
;;; SPDX-License-Identifier: GPL-3.0-or-later
;; SPDX-FileCopyrightText: 2025 Hilton Chain <hako@ultrarare.space>
;;
;; SPDX-License-Identifier: GPL-3.0-or-later
(define-module (rosenthal utils download)
#:use-module (guix gexp)