guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Shepherd 1.0.0rc2 available for testing!


From: Ludovic Courtès
Subject: Shepherd 1.0.0rc2 available for testing!
Date: Sat, 30 Nov 2024 22:00:19 +0100
User-agent: Gnus/5.13 (Gnus v5.13)

Hello Guix!

1.0.0rc2 is available for testing!  Compared to 1.0.0rc1, it fixes bugs
reported by Attila, Florian, Jelle, and Thomas, and adds ‘herd spawn
transient’, inspired by Efraim’s ‘shepherd-run’.  Will it be the final
release candidate?  Maybe, we’ll see!

The tarball and signature are available at:

  https://alpha.gnu.org/gnu/shepherd/shepherd-1.0.0rc2.tar.gz
  SHA256: 316c9ba8ce63bd9b59b1ff59c0cb400799996c72140246b73516b31e5d5424db

  https://alpha.gnu.org/gnu/shepherd/shepherd-1.0.0rc2.tar.gz.sig

The tarball was built from v1.0.0rc2 (commit
6e740fbc4a48f6f41800e7ecfc312d6c99d3587b) and should be bit-for-bit
reproducible, hopefully for real this time (run “make dist” from
‘guix shell -CP’).


What’s new
==========

Check out the ‘NEWS’ file to see what you might enjoy:

  https://git.savannah.gnu.org/cgit/shepherd.git/tree/NEWS


How to test
===========

You could still a reference to the tarball above in your Guix checkout,
but the preferred way is probably to use Shepherd as a channel, as noted
in ‘README’:

The Shepherd repository can be used as a Guix “channel”.  To do that, change
~/.config/guix/channels.scm along these lines:

  (append (list (channel
                 (name 'shepherd)
                 (url "https://git.savannah.gnu.org/git/shepherd.git";;)
                 (branch "main")
                 (introduction
                  (make-channel-introduction
                   "788a6d6f1d5c170db68aa4bbfb77024fdc468ed3"
                   (openpgp-fingerprint
                    "3CE464558A84FDC69DB40CFB090B11993D9AEBB5")))))
          %default-channels)

Once that is done, run ‘guix pull’.  This will give you additional ‘shepherd’
packages with higher version numbers:

  guix package -A shepherd

You can then install it with ‘guix install shepherd’, or e.g. use it in an
operating-system configuration:

  (operating-system
    ...
    (essential-services
     (modify-services (operating-system-default-essential-services
                       this-operating-system)
       (shepherd-root-service-type
        config =>
        (shepherd-configuration
         (inherit config)
         (shepherd (@ (shepherd-package) shepherd)))))))

To test with Guix Home:

  (home-environment
    (services
     (list (service home-shepherd-service-type
                    (home-shepherd-configuration
                      (shepherd (@ (shepherd-package) shepherd))))
           …)))


Testing the new services
========================

Among the highlights of 1.0.0 are the new ‘system-log’ and
‘log-rotation’ services.  Testing them requires more changes to your
config but feedback would be welcome!

First, you can define these two services in your Guix System config:

  (define system-log-service-type
    (shepherd-service-type
     'shepherd-system-log
     (const (shepherd-service
             (documentation "Shepherd's built-in system log (syslogd).")
             (provision '(system-log syslogd))
             (modules '((shepherd service system-log)))
             (free-form #~(system-log-service))))
     #t
     (description
      "Shepherd's built-in system log (syslogd).")))

  (define log-rotation-service
    (simple-service 'shepherd-log-rotation
                    shepherd-root-service-type
                    (list (shepherd-service
                           (provision '(log-rotation))
                           (modules '((shepherd service log-rotation)))
                           (free-form #~(log-rotation-service))))))

Then you can actually use one or both:

  (operating-system
    ;; …
    (services (cons* log-rotation-service
                     (service system-log-service-type)

                     ;; …

                     ;; Remove the currently-used syslogd service,
                     ;; now redundant.
                     (modify-services %desktop-services
                       (delete syslog-service-type)))))


Reporting bugs
==============

Please email bug-guix@gnu.org with “[Shepherd]” in the subject to report
bugs.


Translation
===========

Consider helping with translation of messages at
<https://translationproject.org/domain/shepherd.html>.


Thanks in advance.  :-)

Ludo’.

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]