Commit Graph

69 Commits

Author SHA1 Message Date
Hilton Chain
2dae5082ff
utils: binary-package: Inherit location. 2026-10-11 01:45:00 +08:00
Hilton Chain
e4aff75551
README: Content: Add services and use tables. 2026-10-09 14:50:51 +08:00
Hilton Chain
805ea83faf
rosenthal: Add packages and variables from testament.
* modules/rosenthal/packages/linux.scm (default-initrd-configs)
(cachyos-configs): New procedures.
(linux-cachyos-lts-server, linux-cachyos-bore-zen4): New variables.
* modules/rosenthal/utils/others.scm (%rosenthal-guix-key-dorphine)
(%rosenthal-guix-key-nuporta, %rosenthal-guix-key-bocis)
(%rosenthal-guix-key-ignamma, %rosenthal-ssh-key-hako)
(%rosenthal-ssh-key-hako-deploy, %rosenthal-ssh-key-jonathan)
(%rosenthal-ssh-key-podiki, %rosenthal-network-manager-ipv6-privacy)
(%rosenthal-network-manager-random-mac-address, %rosenthal-cli-packages): New
variables.
2026-09-28 20:03:46 +08:00
Hilton Chain
8bebafaacd
utils: contract/combinators: ->/c: Use procedure-minimum-arity. 2026-09-19 16:01:51 +08:00
Hilton Chain
b15af6f9ff
utils: contract: Memoize combinators and ->contract. 2026-09-15 20:42:51 +08:00
Hilton Chain
08b1980f22
utils: contract/blame: make-blame: Use delay + force for memoization. 2026-09-14 10:33:58 +08:00
Hilton Chain
9454089804
utils: contract/impl: Fix comment. 2026-09-14 10:33:56 +08:00
Hilton Chain
c8625f6a8c
utils: records: Integrate the contract system. 2026-09-13 17:41:06 +08:00
Hilton Chain
a88ac359a0
utils: Add a Racket-like contract system. 2026-09-13 17:41:06 +08:00
Hilton Chain
f34040153c
utils: Import (guix records).
* modules/rosenthal/utils/records.scm (define-record-type/dolly)
(this-record, match-record/dolly, match-record-lambda/dolly): New
macros.
* .dir-locals.el (scheme-mode): Update.
2026-09-13 17:41:01 +08:00
Hilton Chain
cc797a3378
utils: nix-expressions->profile-build-wrapper: Update mime databases. 2026-09-11 19:02:24 +08:00
Hilton Chain
a21dc8e795
utils: nix-shell-wrapper: Adjust environment-unset when other options are used for the same variable. 2026-09-11 19:02:24 +08:00
Hilton Chain
ba37355893
utils: Deprecate rosenthal-transformation-guix. 2026-08-26 16:38:29 +08:00
Hilton Chain
7a0190a86b
rosenthal: guile-toml: Base on the Guix package.
* modules/rosenthal/packages/guile-xyz.scm (guile-toml): Rename to...
(guile-toml/dolly): ...this new variable, based on the Guix package.
* modules/rosenthal/utils/file.scm (toml-file): Use it.
2026-08-22 02:58:49 +08:00
Hilton Chain
6e28a0825b
utils: Add scm->kdl-string, scm->kdlv1-string, kdl-file and kdlv1-file. 2026-08-14 05:17:36 +08:00
Hilton Chain
3a0838e5e0
utils: nix: Change a few variables to parameters. 2026-07-06 21:53:12 +08:00
Hilton Chain
388bb5dbd0
utils: nix: Adjust variable names and docstrings. 2026-07-04 12:48:51 +08:00
Hilton Chain
386de67aee
util: nix: Correct comment for <nix-wrapper>. 2026-07-04 12:33:57 +08:00
Hilton Chain
180635cee4
util: nix: Add <nix-wrapper>.
* modules/rosenthal/utils/nix.scm (<nix-wrapper>): New data type.
(nix-expressions->profile-build-wrapper, nix-shell-wrapper): Return a value of
it.
(nix-shell-wrapper->package, with-nix-profile): Use it.
2026-07-04 12:30:49 +08:00
Hilton Chain
30af71b024
util: nix-expressions->profile-build-wrapper: Deduplicate expressions list. 2026-07-04 12:30:47 +08:00
Hilton Chain
c2722ed176
utils: nix: Add and use %nix-wrapper-default-exclude-env-paths. 2026-07-03 10:36:55 +08:00
Hilton Chain
e28731a5de
utils: nix-expressions->profile-build-wrapper: Move #:link-to argument to command-line.
* modules/rosenthal/utils/nix.scm (nix-expressions->profile-build-wrapper):
Remove #:link-to argument and get it from command-line instead.
(with-nix-profile): Remove path argument.
2026-07-03 02:10:32 +08:00
Hilton Chain
5f88ec068e
utils: with-nix-profile: Use a shorter example. 2026-07-02 21:54:35 +08:00
Hilton Chain
83773b25db
utils: Add with-nix-profile.
* modules/rosenthal/utils/nix.scm (%nix-shell-wrapper-for-profile?): New
parameter.
(with-nix-profile): New macro.
(nix-expressions->profile-build-wrapper, nix-shell-wrapper)
(nix-shell-wrapper->package): Adjust for it.
2026-07-02 19:56:01 +08:00
Hilton Chain
4d2f3a2e0c
utils: installables->nix-expressions: Fix attrpath check. 2026-07-02 19:55:58 +08:00
Hilton Chain
205b14dd34
util: nix: Add missing exports.
* modules/rosenthal/utils/nix.scm (%nix-build-profile-paths)
(%nix-build-profile-extra-outputs): Export.
2026-07-02 17:09:44 +08:00
Hilton Chain
06a8a5f726
utils: Add nix-expressions->profile-build-wrapper.
* modules/rosenthal/utils/nix.scm (%nix-build-profile-paths)
(%nix-build-profile-extra-outputs): New variables.
(ensure-list, installables->nix-expressions)
(nix-expressions->profile-build-wrapper): New procedures.
(nix-shell-wrapper): Use ensure-list.
2026-07-02 17:02:02 +08:00
Hilton Chain
fe34e0911d
utils: nix-shell-wrapper: Fix match usage.
Probably I extended it from cond and forgot the else usage...
2026-07-02 01:21:49 +08:00
Hilton Chain
3f77432233
utils: nix-shell-wrapper: Fix #:environment-keep appending. 2026-07-01 18:28:06 +08:00
Hilton Chain
7a2f31556f
utils: nix-shell-wrapper: Add environment options and improve expression handling. 2026-07-01 16:54:24 +08:00
Hilton Chain
8bf6002818
build-system: Add go-vendored-build-system.
* modules/rosenthal/utils/download.scm (go-mod-vendor): Sync with Nonguix.
* modules/rosenthal/build/go-vendored-build-system.scm
* modules/rosenthal/build-system/go-vendored.scm: New files.
* modules/rosenthal/packages/networking.scm (cloudflared, mihomo, sing-box)
(tailscale): Use go-vendored-build-system.
* modules/rosenthal/packages/web.scm (anubis-anti-crawler, caddy, caddy/dolly)
(forgejo): Likewise.
2026-06-28 19:41:05 +08:00
Hilton Chain
398f692861
utils: nix-shell-wrapper: Fix typo in docstring. 2026-06-27 23:35:29 +08:00
Hilton Chain
32b08cc095
utils: Add nix-shell-wrapper.
* modules/rosenthal/utils/nix.scm: New file.
2026-06-27 23:17:19 +08:00
Hilton Chain
05f69100c3
utils: Add file-object-or-file-config?. 2026-06-01 20:03:28 +08:00
Hilton Chain
86d418b080
utils: *-file: Support S-expression as well.
* modules/rosenthal/utils/file.scm (ini-file, json-file, toml-file, yaml-file):
Support S-expression.
2026-05-29 14:38:24 +08:00
Hilton Chain
603d65387a
utils: file: Make computed-file non-substitutable.
* modules/rosenthal/utils/file.scm (computed-substitution-with-inputs)
(hidden-desktop-entry, ini-file, json-file, toml-file, yaml-file): Disable substitutable?.
2026-04-10 13:01:44 +08:00
Hilton Chain
794db4f702
rosenthal: Reference the inherited arguments and inputs values.
Following upstream change in
6b1a15189e

These references are found via:
    rg '\(package-(arguments|[a-z]*-?inputs)'

No derivation changes are introduced by this commit.
2026-03-21 00:42:14 +08:00
Hilton Chain
f58f1b0583
utils: Add toml-file.
* modules/rosenthal/utils/file.scm (toml-file): New procedure.
* modules/rosenthal/services/web.scm (conduit-shepherd, iocaine-etc)
(navidrome-shepherd-service): Use it.
2026-02-26 10:26:42 +08:00
Hilton Chain
f8fb2556c3
utils: Add json-file.
* modules/rosenthal/utils/file.scm (json-file): New procedure.
* modules/rosenthal/services/desktop.scm (%rosenthal-skeletons-installer)
[.cache/noctalia/shell-state.json]: Use it.
2026-02-25 16:18:45 +08:00
Hilton Chain
8782619822
utils: Add yaml-file.
* modules/rosenthal/utils/file.scm (yaml-file): New procedure.
* modules/rosenthal/services/monitoring.scm (loki-shepherd, mimir-shepherd)
(prometheus-shepherd)
* modules/rosenthal/services/web.scm (misskey-oci): Use it.
* modules/rosenthal/utils/serializers.scm
* modules/rosenthal/utils/serializers/yaml.scm: Delete modules.
2026-02-25 15:32:16 +08:00
Hilton Chain
d6fac7ef25
utils: Add ini-file.
* modules/rosenthal/utils/file.scm (ini-file): New procedure.
* modules/rosenthal/services/monitoring.scm (grafana-shepherd)
* modules/rosenthal/services/web.scm (forgejo-shepherd-service): Use it.
* modules/rosenthal/utils/serializers/ini.scm: Delete module.
2026-02-25 15:32:11 +08:00
Hilton Chain
eab1e4b7b9
utils: Add modify-services/by-name.
* modules/rosenthal/utils/services.scm (modify-services/by-name): New macro.
* .dir-locals.el (scheme-mode): Add it.
2026-02-19 12:54:12 +08:00
Hilton Chain
f536df13ce
utils: rosenthal-transformation-zfs: Don't use package variant for ZFS module.
It's already handled by ‘linux-builder-configuration->system-entry’.

* modules/rosenthal/utils/transformations.scm (rosenthal-transformation-zfs)
[kernel-loadable-modules]: Use unmodified zfs:module.
2026-02-19 12:54:12 +08:00
Hilton Chain
2db419232a
utils: Add ‘mapping-for-system’ and ‘binary-package’.
* modules/rosenthal/utils/packages.scm (system-mapping, binary-package): New
procedures.
2026-02-14 00:37:21 +08:00
Hilton Chain
9c244cfe3b
utils: %binary-source: Adjust package.
* modules/rosenthal/utils/packages.scm (%binary-source): Override home-page,
synopsis, description and license.
2026-02-14 00:37:16 +08:00
Hilton Chain
bf6937ec63
utils: Add %binary-source.
* modules/rosenthal/utils/packages.scm (%binary-source): New variable.
2026-02-07 20:58:32 +08:00
Hilton Chain
53c757521a
maint: Update REUSE.toml, adjust SPDX headers and module imports. 2026-02-07 18:22:14 +08:00
Hilton Chain
e1558d198a
utils: rosenthal-transformation-guix: Update signing keys.
Forgot to add the new one here...
See also <https://codeberg.org/hako/Testament/issues/20>.

* modules/rosenthal/utils/transformations.scm (rosenthal-transformation-guix):
Add new signing key of Guix Moe build farm.
2026-01-12 22:24:17 +08:00
Hilton Chain
ee65ec0e89
services: Add user-id and group-id configuration options. 2025-11-04 16:54:55 +08:00
Hilton Chain
1c3aed0cdb
services: zfs: Add zfs-configuration.
* modules/rosenthal/services/file-systems.scm (<zfs-configuration>): New data
type.
Enable auto mounting and disable volumes by default.
(zfs-shepherd-service): Rename to zfs-shepherd.
No longer use one-shot services.
(zfs-service-type): Adjust accordingly.
Set default value.

* modules/rosenthal/utils/transformations.scm (rosenthal-transformation-zfs):
Allow configuration.
2025-10-20 13:44:15 +08:00