~ruther/guix-local

3eb720bd — Giacomo Leidi 1 year, 11 months ago
system: pam: Export pam records predicates.

* gnu/system/pam.scm: Export pam-service-name?, pam-entry? and pam-limits-entry?.

Change-Id: I609acfcaae85b4969dc385b72b307e470f5a246e
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
a1ecd7f5 — Giacomo Leidi 1 year, 9 months ago
system: Add /etc/subuid and /etc/subgid support.

This commit adds a Guix System service to handle allocation of subuid
and subgid requests.  Users that don't care can just add themselves as a
subid-range and don't need to specify anything but their user name.
Users that care about specific ranges, such as possibly LXD, can specify
a start and a count.

* doc/guix.texi (Miscellaneous Services): Document it.
* gnu/build/activation.scm (activate-subuids+subgids): New variable.
* gnu/local.mk: Add gnu/tests/shadow.scm.
* gnu/system/accounts.scm (sexp->subid-range): New variable.
* gnu/system/shadow.scm (%root-subid): New variable;
(subids-configuration): new record;
(subid-range->gexp): new variable;
(assert-valid-subids): new variable;
(delete-duplicate-ranges): new variable;
(subids-activation): new variable;
(subids-extension): new record;
(append-subid-ranges): new variable;
(subids-extension-merge): new variable;
(subids-service-type): new variable.
* gnu/tests/shadow.scm (subids): New system test.

Change-Id: I3755e1c75771220c74fe8ae5de1a7d90f2376635
Signed-off-by: Giacomo Leidi <goodoldpaul@autistici.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
337037d2 — Giacomo Leidi 1 year, 9 months ago
accounts: Add /etc/subid and /etc/subgid allocation logic.

This commit adds allocation logic for subid ranges. Subid ranges are
ranges of contiguous subids that are mapped to a user in the host
system. This patch implements a flexible allocation algorithm allowing
users that do not want (or need) to specify details of the subid ranges
that they are requesting to avoid doing so, while upholding requests of
users that need to have specific ranges.

* gnu/build/accounts.scm (%subordinate-id-min): New variable;
(%subordinate-id-max): new variable;
(%subordinate-id-count): new variable;
(subordinate-id?): new variable;
(&subordinate-id-error): new variable;
(&subordinate-id-overflow-error): new variable;
(&illegal-subid-range-error): new variable;
(&specific-subid-range-expected-error): new variable;
(&generic-subid-range-expected-error): new variable;
(within-interval?): new variable;
(allocate-unused-range): new variable;
(allocate-generic-range): new variable;
(allocate-specific-range): new variable;
(reserve-subids): new variable;
(range->entry): new variable;
(entry->range): new variable;
(allocate-subids): new variable;
(subuid+subgid-databases): new variable.

* gnu/system/accounts.scm (subid-range-end): New variable;
(subid-range-has-start?): new variable;
(subid-range-less): new variable.

* test/accounts.scm: Test them.

Change-Id: I8de1fd7cfe508b9c76408064d6f498471da0752d
Co-Authored-By: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Giacomo Leidi <goodoldpaul@autistici.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
58f430f6 — Giacomo Leidi 1 year, 9 months ago
accounts: Add /etc/subuid and /etc/subgid support.

This commit adds a new record type, <subid-entry> and serializers
and deserializers for it in (gnu build accounts).  Each instance of this
record represents one line in either /etc/subuid or /etc/subgid.  Since
Shadow uses the same representation for both files, it should be ok if
we do it as well.

This commit adds also <subid-range>, a user facing representation of
<subid-entry>. It is supposed to be usable directly in OS configurations.

* gnu/build/accounts.scm (subid-entry): New record;
(write-subgid): add serializer for subgids;
(write-subuid): add serializer for subuids;
(read-subgid): add serializer for subgids;
(read-subuid): add serializer for subuids.
* gnu/system/accounts.scm (subid-range): New record.
* test/accounts.scm: Test them.

Change-Id: I6b037e40e354c069bf556412bb5b626bd3ea1b2c
Signed-off-by: Giacomo Leidi <goodoldpaul@autistici.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
478b9cce — Julien Lepiller 1 year, 8 months ago
gramps: Update to 5.2.3.

* gnu/packages/genealogy.scm (gramps): Update to 5.2.3.

Change-Id: Icfd3470989da905d50233564b894887305e9de1e
7c119982 — Janneke Nieuwenhuizen 1 year, 7 months ago
system: examples: Update instructions in {bare,devel}-hurd64.tmpl.

* gnu/system/examples/bare-hurd64.tmpl: Remove --machine q35, there seems to
be no longer any need for this.  Mention that there is no login prompt.
* gnu/system/examples/devel-hurd64.tmpl: Likewise.

Change-Id: Ib918cff3ca96f2a199869e876b6a75fedb09c983
573f47a2 — Hilton Chain 1 year, 7 months ago
gnu: Add privacy-redirect-icecat.

* gnu/packages/browser-extensions.scm (privacy-redirect)
(privacy-redirect/icecat): New variables.

Change-Id: I92778c4b46a30f88f23758cc65837b4aecccbd09
0e4b36f2 — Hilton Chain 1 year, 7 months ago
gnu: Add livemarks-icecat.

* gnu/packages/browser-extensions.scm (livemarks,livemarks/icecat): New
variables.

Change-Id: Ie13563ac62ed2d39c5b52e681c6f9351dbdab41c
014fc189 — Hilton Chain 1 year, 7 months ago
gnu: Add adaptive-tab-bar-colour-icecat.

* gnu/packages/browser-extensions.scm (adaptive-tab-bar-colour)
(adaptive-tab-bar-colour/icecat): New variables.

Change-Id: I94343ef4246b1a7a0f5606b7d2214174475e7f03
396eb759 — Hilton Chain 1 year, 7 months ago
gnu: librewolf: Support Guix icecat browser extensions.

* gnu/packages/patches/librewolf-use-system-wide-dir.patch: New file.
* gnu/local.mk (dist_patch_DATA): Regisiter it.
* gnu/packages/librewolf.scm (make-librewolf-source)[patches]: Add it along with
torbrowser-compare-paths.patch.
(librewolf)[native-search-paths]: Add ICECAT_SYSTEM_DIR.

Change-Id: I8609d25a7e2725ad94ab257d720326639eb06778
fdfff107 — Hilton Chain 1 year, 7 months ago
gnu: Add papersway.

* gnu/packages/wm.scm (papersway): New variable.

Change-Id: I36b21a08fb86d0b8ca526ef5c9b2946e3caa3729
0ef86dea — Hilton Chain 1 year, 7 months ago
gnu: perl-anyevent-i3: Update to 0.19.

* gnu/packages/wm.scm (perl-anyevent-i3): Update to 0.19.

Change-Id: I6fd24c31520c501aa0cb14506e3bbf2dd7dc0a76
ae9bce9b — Hilton Chain 1 year, 7 months ago
gnu: phantomsocks: Update to 0.0.0-20241119070700-535ab0adb1e4.

* gnu/packages/networking.scm (phantomsocks): Update to
0.0.0-20241119070700-535ab0adb1e4.

Change-Id: I4d61a68e686969c656caae0bc230ca7defa50395
2b32a380 — Maxim Cournoyer 1 year, 7 months ago
system/examples: Fix qemu invocation in comment of bare-hurd64.tmpl.

* gnu/system/examples/bare-hurd64.tmpl: Add missing backslash escape.

Change-Id: I84c5d37c6efb005a14f15b96432360628003d87b
118d6429 — Maxim Cournoyer 1 year, 7 months ago
system/examples: Use latest QEMU for hurd examples.

* gnu/system/examples/bare-hurd64.tmpl: Replace qemu@7 with qemu in invocation
example.
* gnu/system/examples/devel-hurd64.tmpl: Likewise.

Change-Id: I3cdbff6f68b810feff1d9b2929a323498af3fd29
2dc4a9cc — Maxim Cournoyer 1 year, 7 months ago
system/examples: Fix git clone instructions in devel-hurd64.tmpl template.

* gnu/system/examples/devel-hurd64.tmpl: Fix git clone instructions in
comment.

Change-Id: Id82f3e5d7888355507ac90e86e3bff4c27e6fba1
a5850e73 — Maxim Cournoyer 1 year, 9 months ago
gnu: mygui: Use gexps.

* gnu/packages/game-development.scm (mygui) [arguments]: Use gexps.
[description]: Fix MyGUI capitalization.

Change-Id: I99c693dfea6ff81bc2fc5411427fadd5911b3f31
8b384437 — Maxim Cournoyer 1 year, 9 months ago
gnu: bullet: Modernize.

* gnu/packages/game-development.scm (bullet)
[source]: Remove trailing #t in snippet.
[arguments]: Use gexps.  Remove trailing #t in phase.

Change-Id: I8792845f83acfffc8be40cc453fcf9d0c3c4e2df
e4020c27 — Maxim Cournoyer 1 year, 9 months ago
gnu: bullet: Update to 3.25.

* gnu/packages/game-development.scm (bullet): Update to 3.25.

Change-Id: I73844285c63fe0288f247f3fd441201fdffb5505
555f641f — Maxim Cournoyer 1 year, 9 months ago
gnu: Add ogre-next.

* gnu/packages/graphics.scm (ogre-next): New variable.

Change-Id: I0342e7c9917a5bf3c91cf464cf80a9137798b722
Next