* Shepherd 1.0.0rc1 available for testing!
@ 2024-11-09 23:23 Ludovic Courtès
2024-11-11 11:15 ` pelzflorian (Florian Pelz)
0 siblings, 1 reply; 2+ messages in thread
From: Ludovic Courtès @ 2024-11-09 23:23 UTC (permalink / raw)
To: guix-devel
[-- Attachment #1: Type: text/plain, Size: 4225 bytes --]
Hello Guix!
I finally tagged 1.0.0rc1! (I was planning to have Fibers bug fixes
checked in and published first, but after much effort, I chose to invert
priorities.)
Looks like we might have one or two bugs already from Felix, we’ll see.
The tarball and signature are available at:
https://alpha.gnu.org/gnu/shepherd/shepherd-1.0.0rc1.tar.gz
SHA256: 3ce5d60e528d4cfb282b1f271a601256395b28f16e41be6052cf5945f687b004
https://alpha.gnu.org/gnu/shepherd/shepherd-1.0.0rc1.tar.gz.sig
The tarball was meant from v1.0.0rc1
(aka. 49f5330077393715ff7e1625be039f64724825d2) and should be
bit-for-bit reproducible (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 #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 853 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Shepherd 1.0.0rc1 available for testing!
2024-11-09 23:23 Shepherd 1.0.0rc1 available for testing! Ludovic Courtès
@ 2024-11-11 11:15 ` pelzflorian (Florian Pelz)
0 siblings, 0 replies; 2+ messages in thread
From: pelzflorian (Florian Pelz) @ 2024-11-11 11:15 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: guix-devel
Thanks for the improved Shepherd! One issue so far:
Ludovic Courtès <ludo@gnu.org> writes:
> The tarball and signature are available at:
>
> https://alpha.gnu.org/gnu/shepherd/shepherd-1.0.0rc1.tar.gz
> SHA256: 3ce5d60e528d4cfb282b1f271a601256395b28f16e41be6052cf5945f687b004
>
> https://alpha.gnu.org/gnu/shepherd/shepherd-1.0.0rc1.tar.gz.sig
>
> The tarball was meant from v1.0.0rc1
> (aka. 49f5330077393715ff7e1625be039f64724825d2) and should be
> bit-for-bit reproducible (run “make dist” from ‘guix shell -CP’).
>
I try:
~/src/shepherd [env]$ guix shell -CP
guix shell: loading environment from '/home/florian/src/shepherd/guix.scm'...
~/src/shepherd [env]$ make dist
make: *** No rule to make target 'dist'. Stop.
~/src/shepherd [env]$ autoreconf -vfi
~/src/shepherd [env]$ ./configure
~/src/shepherd [env]$ make
~/src/shepherd [env]$ make dist
is necessary (copied from guix’ bootstrap).
Could you mention this `autoreconf -vfi` in the README?
But then,
~/src/shepherd [env]$ sha256sum shepherd-1.0.0rc1.tar.gz
b39446cc80b0736f28af87d8bcf6d0072d60f892f4f9380288e46a768ca76386 shepherd-1.0.0rc1.tar.gz
~/src/shepherd [env]$ exit
~/src/shepherd$ guix shell diffoscope -- diffoscope \
../shepherd-1.0.0rc1.tar.gz shepherd-1.0.0rc1.tar.gz
shows the reason is `make dist` updated the .po files.
This is because of the file po/Makefile.in.in created by `autoreconf
-vfi`. Not quite sure how Guix avoids this.
Regards,
Florian
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-11-11 11:15 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-09 23:23 Shepherd 1.0.0rc1 available for testing! Ludovic Courtès
2024-11-11 11:15 ` pelzflorian (Florian Pelz)
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.