Re: I just got my pinephone.

2021-10-02 Thread Nicolò Balzarotti
Tobias Platen  writes:

> I ordered my Librem 5 about one year ago and I'm still waiting
> for it. Since backorder shipping resumes October 2021, I expect to get
> mine in Q4 2021.

I have a spare PinePhone since when, back in February, I received my L5!

I installed guix binary over pureos and it's working great.  I offload
build to an x64 server (with qemu-binfmt-service-type).  Many programs
fail to build, but for others guix works well (just a bit slow).

I don't know the way forward (how to get a guix image to boot on it).

However, my pinephone is unused.  If we hold the guix days live this year,
guix on the phone should be something we'd want to try, as it seems we
have a few devices to work on.

>
> On Sat, 2021-10-02 at 09:04 -0400, Christine Lemmer-Webber wrote:
>> jbra...@dismail.de writes:
>> 
>> > October 1, 2021 6:56 PM, "Christine Lemmer-Webber"
>> >  wrote:
>> > 
>> > > I think the easiest step to first testing would be to install
>> > > Guix
>> > > (userspace package manager) from Debian on Mobian. I've been
>> > > meaning to
>> > > do that, haven't tried yet...
>> > 
>> > WeirdlyI'm not certain that I want guix on my pinephone. 
>> > Specifically 
>> > I got my Pinephone, because I was tired of google's spyware.  AND I
>> > wanted
>> > a life phone, which is a phone that is so boring to use, you put it
>> > down
>> > and go live a life instead.  :)
>> > 
>> > I've actually installed Mobian, removed the user "mobian" from the 
>> > suoders list, and had my mom change the root password on my phone. 
>> > So, my phone by design does not have firefox or tootle installed...
>> > 
>> > If I installed guix system, I could re-install those annoying apps 
>> > that drain my life away.  It would be nice if guix system could 
>> > create a user that is not allowed to install applications, or had
>> > only a whitelist of applications that he could install. 
>> > 
>> > That's my two cents.  :)
>> 
>> Well I understand.  For years I've kept all the social stuff off my
>> phone to not be too sucked into it.  I use a browser, but in read-
>> only
>> mode...!
>> 
>> > > 
>> > > from there we can look at what's necessary to go full distro
>> > > 
>> > > Kaelyn  writes:
>> > > 
>> > > > Hi Guix!
>> > > > 
>> > > > I just received my pinephone this morning, so I'm going to be
>> > > > interested in bringing Guix to the pinephone as well. I hope to
>> > > > have
>> > > > the capacity to help with the efforts, even if it's just the
>> > > > occasional testing.
>> > > > 
>> > > > Cheers,
>> > > > Kaelyn
>> > > > 
>> > > > Sent with ProtonMail Secure Email.
>> > > > 
>> > > > ‐‐‐ Original Message ‐‐‐
>> > > > 
>> > > > On Wednesday, September 1st, 2021 at 12:39 PM, Joshua Branson
>> > > >  wrote:
>> > > > 
>> > > > > Hey Guix!
>> > > > > 
>> > > > > I just got my phinephone. It's currently running postmarketOS
>> > > > > (1). I
>> > > > > 
>> > > > > usually work nights two nights a week 10pm-6am (EST) Sunday
>> > > > > night and
>> > > > > 
>> > > > > Monday night. If a guix developer would like ssh access to it
>> > > > > during
>> > > > > 
>> > > > > those times, then please let me know. If I should use Mobian
>> > > > > instead
>> > > > > 
>> > > > > to help port guix to it, then I would be willing to switch.
>> > > > > 
>> > > > > I'd be happy to help out! Also jmp.chat (2) works really well
>> > > > > with
>> > > > > 
>> > > > > chatty.
>> > > > > 
>> > > > > Thanks,
>> > > > > 
>> > > > > Joshua
>> > > > > 
>> > > > > 1. https://postmarketos.org/source-code
>> > > > > 2. https://jmp.chat
>> 
>> 



Re: Code sharing between system and home services

2021-10-02 Thread Vagrant Cascadian
On 2021-10-02, Ludovic Courtès wrote:
> Maxime Devos  skribis:
>> Ludovic Courtès schreef op di 28-09-2021 om 14:21 [+0200]:
>>> Joshua Branson  skribis:
>>> 
>>> > Apologies if I'm speaking for something I know very little
>>> > about...Wouldn't it be nice if guix home services would accept a user
>>> > and a group field?  For the syncthing service, perhaps the user wants to
>>> > limit Syncthing's runtime permissions.  So instead of running as the
>>> > user, the user would run synthing as a different user with less 
>>> > permissions?
>>> 
>>> That’s not possible unless the calling user is root, since you’d need
>>> the ability to switch users somehow.
>>
>> On Debian, a user has a list of ‘subordinate user IDs’ which can be switched
>> to without root: 
>> .
>>
>> Maybe "guix home" could use that mechanism, and this mechanism could be 
>> implemented
>> on Guix System as well?
>
> Yes but that requires unprivileged user namespaces, which may or may not
> be supported—e.g., likely unsupported when using Home on a foreign
> distro.

Debian finally enabled it by default in the current stable release,
bullseye, which was released just a few months ago (and it was possible
to enable with a boot flag in earlier releases). Not sure which distros
still disable unprivledged user namespaces...


I am definitely curious to test guix home on a foreign distro at some
point! :)


live well,
  vagrant


signature.asc
Description: PGP signature


Re: I just got my pinephone.

2021-10-02 Thread jbranso
October 2, 2021 11:40 AM, "Christine Lemmer-Webber"  
wrote:

> jbra...@dismail.de writes:
> 
>> October 1, 2021 6:56 PM, "Christine Lemmer-Webber"  
>> wrote:
>> 
>>> I think the easiest step to first testing would be to install Guix
>>> (userspace package manager) from Debian on Mobian. I've been meaning to
>>> do that, haven't tried yet...
>> 
>> WeirdlyI'm not certain that I want guix on my pinephone. Specifically
>> I got my Pinephone, because I was tired of google's spyware. AND I wanted
>> a life phone, which is a phone that is so boring to use, you put it down
>> and go live a life instead. :)
>> 
>> I've actually installed Mobian, removed the user "mobian" from the
>> suoders list, and had my mom change the root password on my phone.
>> So, my phone by design does not have firefox or tootle installed...
>> 
>> If I installed guix system, I could re-install those annoying apps
>> that drain my life away. It would be nice if guix system could
>> create a user that is not allowed to install applications, or had
>> only a whitelist of applications that he could install.
>> 
>> That's my two cents. :)
> 
> Well I understand. For years I've kept all the social stuff off my
> phone to not be too sucked into it. I use a browser, but in read-only
> mode...!

Also what's read-only mode?  A web browser that doesn't support images/video ?



Re: I just got my pinephone.

2021-10-02 Thread jbranso
October 2, 2021 11:40 AM, "Christine Lemmer-Webber"  
wrote:

> jbra...@dismail.de writes:
> 
>> October 1, 2021 6:56 PM, "Christine Lemmer-Webber"  
>> wrote:
>> 
>>> I think the easiest step to first testing would be to install Guix
>>> (userspace package manager) from Debian on Mobian. I've been meaning to
>>> do that, haven't tried yet...
>> 
>> WeirdlyI'm not certain that I want guix on my pinephone. Specifically
>> I got my Pinephone, because I was tired of google's spyware. AND I wanted
>> a life phone, which is a phone that is so boring to use, you put it down
>> and go live a life instead. :)
>> 
>> I've actually installed Mobian, removed the user "mobian" from the
>> suoders list, and had my mom change the root password on my phone.
>> So, my phone by design does not have firefox or tootle installed...
>> 
>> If I installed guix system, I could re-install those annoying apps
>> that drain my life away. It would be nice if guix system could
>> create a user that is not allowed to install applications, or had
>> only a whitelist of applications that he could install.
>> 
>> That's my two cents. :)
> 
> Well I understand. For years I've kept all the social stuff off my
> phone to not be too sucked into it. I use a browser, but in read-only
> mode...!

Thanks for understanding Chris.  For some reason I expected people to be
annoyed with me for not wanting guix on my phone...  :)

>> 
>> Thanks,
>> 
>> Joshua
>> 
>> 1. https://postmarketos.org/source-code
>> 2. https://jmp.chat



Re: Could the Go importer use the Go toolchain? (was Re: Go importer and packages with version flags)

2021-10-02 Thread raingloom
On Thu, 30 Sep 2021 10:31:08 -0500
Katherine Cox-Buday  wrote:

> Sarah Morgensen  writes:
> > Did you have something particular in mind as far as leveraging the
> > Go tooling?  
> 
> I haven't though too much about it, but ~GOPROXY=direct~ was my guess
> too. Thinking about this, would a shallow fetch into a bare
> repository be so bad?
> 
> It made me start wondering why our ~git-download~ type /doesn't/ have
> this behavior. Are we unnecessarily pulling down the entire commit
> history with all tags and branches of a large repository?
> 
> I don't even know what the philosophy is being doing this or not.
> Isn't the only commitment a Guix package makes for software at a
> particular version/commit that the store contains that immutable
> version of the source, not the complete repository?

AFAIK there is a long standing libgit2 bug for adding support for
shallow fetches. Or rather operations on shallow repositories.
https://github.com/libgit2/libgit2/issues/3058

So guile-git can't have shallow fetches until libgit2 gets its act
together. Or Guix could use a patched libgit2 I guess.



Re: On the naming of System and Home services modules.

2021-10-02 Thread Oleg Pykhalov
Ludovic Courtès  writes:

[…]

> I’m in favor of (gnu home services) rather than (gnu services), in part
> because we have yet to figure out how much can be shared between System
> and Home services, and in part because the Home bits are likely useless
> for System.

Moved to (gnu home services) in https://issues.guix.gnu.org/50967


signature.asc
Description: PGP signature


Re: guix weather -m etc/sources-manifest.scm and CI?

2021-10-02 Thread Mathieu Othacehe


Hey Ludo,

> -package system))
> - packages)))
> +  (let ((manifests (arguments->manifests rest channels)))
> +(manifests->jobs store manifests)))

This sounds great to me :)

Thanks,

Mathieu



Re: I just got my pinephone.

2021-10-02 Thread Tobias Platen
I ordered my Librem 5 about one year ago and I'm still waiting
for it. Since backorder shipping resumes October 2021, I expect to get
mine in Q4 2021. 

On Sat, 2021-10-02 at 09:04 -0400, Christine Lemmer-Webber wrote:
> jbra...@dismail.de writes:
> 
> > October 1, 2021 6:56 PM, "Christine Lemmer-Webber"
> >  wrote:
> > 
> > > I think the easiest step to first testing would be to install
> > > Guix
> > > (userspace package manager) from Debian on Mobian. I've been
> > > meaning to
> > > do that, haven't tried yet...
> > 
> > WeirdlyI'm not certain that I want guix on my pinephone. 
> > Specifically 
> > I got my Pinephone, because I was tired of google's spyware.  AND I
> > wanted
> > a life phone, which is a phone that is so boring to use, you put it
> > down
> > and go live a life instead.  :)
> > 
> > I've actually installed Mobian, removed the user "mobian" from the 
> > suoders list, and had my mom change the root password on my phone. 
> > So, my phone by design does not have firefox or tootle installed...
> > 
> > If I installed guix system, I could re-install those annoying apps 
> > that drain my life away.  It would be nice if guix system could 
> > create a user that is not allowed to install applications, or had
> > only a whitelist of applications that he could install. 
> > 
> > That's my two cents.  :)
> 
> Well I understand.  For years I've kept all the social stuff off my
> phone to not be too sucked into it.  I use a browser, but in read-
> only
> mode...!
> 
> > > 
> > > from there we can look at what's necessary to go full distro
> > > 
> > > Kaelyn  writes:
> > > 
> > > > Hi Guix!
> > > > 
> > > > I just received my pinephone this morning, so I'm going to be
> > > > interested in bringing Guix to the pinephone as well. I hope to
> > > > have
> > > > the capacity to help with the efforts, even if it's just the
> > > > occasional testing.
> > > > 
> > > > Cheers,
> > > > Kaelyn
> > > > 
> > > > Sent with ProtonMail Secure Email.
> > > > 
> > > > ‐‐‐ Original Message ‐‐‐
> > > > 
> > > > On Wednesday, September 1st, 2021 at 12:39 PM, Joshua Branson
> > > >  wrote:
> > > > 
> > > > > Hey Guix!
> > > > > 
> > > > > I just got my phinephone. It's currently running postmarketOS
> > > > > (1). I
> > > > > 
> > > > > usually work nights two nights a week 10pm-6am (EST) Sunday
> > > > > night and
> > > > > 
> > > > > Monday night. If a guix developer would like ssh access to it
> > > > > during
> > > > > 
> > > > > those times, then please let me know. If I should use Mobian
> > > > > instead
> > > > > 
> > > > > to help port guix to it, then I would be willing to switch.
> > > > > 
> > > > > I'd be happy to help out! Also jmp.chat (2) works really well
> > > > > with
> > > > > 
> > > > > chatty.
> > > > > 
> > > > > Thanks,
> > > > > 
> > > > > Joshua
> > > > > 
> > > > > 1. https://postmarketos.org/source-code
> > > > > 2. https://jmp.chat
> 
> 





Re: I just got my pinephone.

2021-10-02 Thread Christine Lemmer-Webber
jbra...@dismail.de writes:

> October 1, 2021 6:56 PM, "Christine Lemmer-Webber"  
> wrote:
>
>> I think the easiest step to first testing would be to install Guix
>> (userspace package manager) from Debian on Mobian. I've been meaning to
>> do that, haven't tried yet...
>
> WeirdlyI'm not certain that I want guix on my pinephone.  Specifically 
> I got my Pinephone, because I was tired of google's spyware.  AND I wanted
> a life phone, which is a phone that is so boring to use, you put it down
> and go live a life instead.  :)
>
> I've actually installed Mobian, removed the user "mobian" from the 
> suoders list, and had my mom change the root password on my phone.  
> So, my phone by design does not have firefox or tootle installed...
>
> If I installed guix system, I could re-install those annoying apps 
> that drain my life away.  It would be nice if guix system could 
> create a user that is not allowed to install applications, or had
> only a whitelist of applications that he could install. 
>
> That's my two cents.  :)

Well I understand.  For years I've kept all the social stuff off my
phone to not be too sucked into it.  I use a browser, but in read-only
mode...!

>> 
>> from there we can look at what's necessary to go full distro
>> 
>> Kaelyn  writes:
>> 
>>> Hi Guix!
>>> 
>>> I just received my pinephone this morning, so I'm going to be
>>> interested in bringing Guix to the pinephone as well. I hope to have
>>> the capacity to help with the efforts, even if it's just the
>>> occasional testing.
>>> 
>>> Cheers,
>>> Kaelyn
>>> 
>>> Sent with ProtonMail Secure Email.
>>> 
>>> ‐‐‐ Original Message ‐‐‐
>>> 
>>> On Wednesday, September 1st, 2021 at 12:39 PM, Joshua Branson 
>>>  wrote:
>>> 
 Hey Guix!
 
 I just got my phinephone. It's currently running postmarketOS (1). I
 
 usually work nights two nights a week 10pm-6am (EST) Sunday night and
 
 Monday night. If a guix developer would like ssh access to it during
 
 those times, then please let me know. If I should use Mobian instead
 
 to help port guix to it, then I would be willing to switch.
 
 I'd be happy to help out! Also jmp.chat (2) works really well with
 
 chatty.
 
 Thanks,
 
 Joshua
 
 1. https://postmarketos.org/source-code
 2. https://jmp.chat




Re: How did you handle making a GNU/Linux distribution?

2021-10-02 Thread Christine Lemmer-Webber
Philip McGrath  writes:

> On 9/12/21 11:09 PM, Christine Lemmer-Webber wrote:
>> Philip McGrath  writes:
>>> Christine Lemmer-Webber had floated the idea at some point of trying
>>> to integrate Racket and Guile.
>>>
>>> IIRC, I think what she's had in mind was trying to make a Guile
>>> backend for Racket along the lines of the Chez Scheme backend (or the
>>> BC backend, or experimental backends like Pycket).
>> Yes that's what I had in mind :)
>
> A few stray thoughts, all with the caveat that I haven't actually
> tried any of this ...
>
>>> there are two things that have struck me
>>> as downsides:
>>>
>>>   1. Flatt et al. say in "Rebuilding Racket on Chez Scheme (Experience
>>>  Report)" (§6, p. 13) that, "If our task were to compile Racket to an
>>>  existing target, then we would not have achieved such a high degree
>>>  of compatibility. … we have taken the liberty of modifying Chez
>>>  Scheme to make it an easier target for Racket."
>>>
>>>  https://www.cs.utah.edu/plt/publications/icfp19-fddkmstz.pdf
>>>
>>>  Presumably a Racket-on-Guile project would face the same trade-off,
>>>  where modifications to Guild, if Racket CS is a guide, could require
>>>  hard work over many years, and lesser compatibility would make the
>>>  result less useful.
>> At one point when I spoke to Matthew, he was very optimistic that
>> the
>> work on porting on top of Chez would open Racket to running on top of
>> many other backends.  But yes... since there have been so many "custom"
>> modifications to Chez, it's easier to be skeptical about that these
>> days...
>
> I think there a few possible senses for what "running on top of many
> other backends" could mean. My impression overall is that it has
> gotten easier, but may not necessarily be easy.
>
> The most clearly demonstrated is that it seems to be easier to port
> Chez Scheme to new architectures than to port Racket BC's VM. Racket
> CS supports the Apple M1 chip natively (and hopefully will support the 
> Linux kernel on the M1 when that stabilizes), which Racket BC does
> not. Racket CS also fully supports some platforms (ARM in general,
> IIRC) on which Racket BC lacks support for futures, places, or the
> JIT. The most promising route to Racket on WASM also seems to be
> adding a WASM backend to the Chez Scheme compiler. (In fairness, there
> are also some architectures, like ppc64le, to which no one has ported
> Racket CS yet, for which Racket BC can offer at least some support via
> C.)

Who will get to WASM first, Racket or Guile?  :)

> More generally, the "linklet" abstraction[1] seems to provide a much
> more clear boundary between the responsibilities of a backend 
> implementation and the common frontend than existed before Racket
> 7.0. For example, the backend doesn't have to deal with macro
> expansion or even shadowing of variables: it just need to have some
> way to instantiate linklets (likely with further backend-specific
> compilation) and to provide a whole bunch of primitives. I believe
> I've heard Sam Tobin-Hochstadt say that linklets have made it possible
> for Pycket (the experimental Racket implementation in Reticulated
> Python) to run most Racket code.
>
> [1]: https://docs.racket-lang.org/reference/linklets.html
>
> Another benefit of linklets is that they've defined a clear path for
> implementing parts of Racket in Racket itself, like the regexp 
> implementation on Racket CS. This seems like it could help a lot with
> supplying that very large number of primitives.
>
> So I expect it would be entirely possible to implement a linklet-based
> Racket backend in Guile. I do suspect that getting production-quality 
> performance and compatibility could be a lot of work. But my bigger
> concern is ...
>
>>>   2. As you probably know, Racket programs can't generally use
>>>  Chez Scheme implemented libraries, because Chez Scheme effectively
>>>  is the "unsafe" layer of the Racket VM. For example, not all Racket
>>>  procedures are Chez Scheme procedures, and Racket's continuations
>>>  wrap Chez Scheme's to implement delimited and composable control,
>>>  threads, parameters, full continuation marks, etc.
>>>
>>>  For Racket CS, this isn't a great loss (there aren't so many
>>>  Chez-specific libraries, and portable libraries can run in Racket's
>>>  R6RS language), but, for a hypothetical Racket-on-Guile,
>>>  bidirectional interoperability would be a big attraction: imagine
>>>  Guix, Shepherd, Mcron, syntax/parse, racket/contract, and more all
>>>  working together.
>
> I don't think a Racket-on-Guile that worked like Racket-on-Chez would
> achieve the most interesting benefit (IMO) of bringing the two
> languages together: safe, bidirectional interoperability.
>
> Probably there are many ways to achieve that goal. In principle, one
> could write a Racket-on-Guile implementation where arbitrary Guile
> could run without breaking Racket's 

Re: guix weather -m etc/sources-manifest.scm and CI?

2021-10-02 Thread Ludovic Courtès
Hi,

Mathieu Othacehe  skribis:

> The issue is that (gnu ci) expects manifests of packages and not
> manifests of origins. Hence, the "job-name" procedure that calls
> "package-name" on an origin fails.

Ah, silly me.

> We could maybe generalize the manifests->packages to support packages
> and origins. The package-job procedure would also need some adjustment
> to call origin->derivation instead of package-derivation.

How about this change?  That will create jobs for manifests containing
any kind of file-like object.

Thanks!

Ludo’.

diff --git a/gnu/ci.scm b/gnu/ci.scm
index ceb1b94af9..e1011355db 100644
--- a/gnu/ci.scm
+++ b/gnu/ci.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès 
+;;; Copyright © 2012-2021 Ludovic Courtès 
 ;;; Copyright © 2017, 2020 Jan (janneke) Nieuwenhuizen 
 ;;; Copyright © 2018, 2019 Clément Lassieur 
 ;;; Copyright © 2020 Julien Lepiller 
@@ -86,7 +86,7 @@
 (define* (derivation->job name drv
   #:key
   (max-silent-time 3600)
-  (timeout 3600))
+  (timeout (* 5 3600)))
   "Return a Cuirass job called NAME and describing DRV.
 
 MAX-SILENT-TIME and TIMEOUT are build options passed to the daemon when
@@ -443,19 +443,40 @@ valid."
   (map channel-url channels)))
arguments))
 
-(define (manifests->packages store manifests)
-  "Return the list of packages found in MANIFESTS."
+(define (manifests->jobs store manifests)
+  "Return the list of jobs for the entries in MANIFESTS, a list of file
+names."
   (define (load-manifest manifest)
 (save-module-excursion
  (lambda ()
(set-current-module (make-user-module '((guix profiles) (gnu
(primitive-load manifest
 
-  (delete-duplicates!
-   (map manifest-entry-item
-(append-map (compose manifest-entries
- load-manifest)
-manifests
+  (define (manifest-entry-job-name entry)
+(string-append (manifest-entry-name entry) "-"
+   (manifest-entry-version entry)))
+
+  (define (manifest-entry->job entry)
+(let* ((obj (manifest-entry-item entry))
+   (drv (parameterize ((%graft? #f))
+  (run-with-store store
+(lower-object obj
+   (max-silent-time (or (and (package? obj)
+ (assoc-ref (package-properties obj)
+'max-silent-time))
+3600))
+   (timeout (or (and (package? obj)
+ (assoc-ref (package-properties obj) 'timeout))
+(* 5 3600
+  (derivation->job (manifest-entry-job-name entry) drv
+   #:max-silent-time max-silent-time
+   #:timeout timeout)))
+
+  (map manifest-entry->job
+   (delete-duplicates
+(append-map (compose manifest-entries load-manifest)
+manifests)
+manifest-entry=?)))
 
 (define (arguments->systems arguments)
   "Return the systems list from ARGUMENTS."
@@ -568,12 +589,8 @@ valid."
  packages)))
  (('manifests . rest)
   ;; Build packages in the list of manifests.
-  (let* ((manifests (arguments->manifests rest channels))
- (packages (manifests->packages store manifests)))
-(map (lambda (package)
-   (package-job store (job-name package)
-package system))
- packages)))
+  (let ((manifests (arguments->manifests rest channels)))
+(manifests->jobs store manifests)))
  (else
   (error "unknown subset" subset
  systems)))


Re: Code sharing between system and home services (was Re: On the naming of System and Home services modules.)

2021-10-02 Thread Ludovic Courtès
Maxime Devos  skribis:

> Ludovic Courtès schreef op di 28-09-2021 om 14:21 [+0200]:
>> Hi,
>> 
>> Joshua Branson  skribis:
>> 
>> > Apologies if I'm speaking for something I know very little
>> > about...Wouldn't it be nice if guix home services would accept a user
>> > and a group field?  For the syncthing service, perhaps the user wants to
>> > limit Syncthing's runtime permissions.  So instead of running as the
>> > user, the user would run synthing as a different user with less 
>> > permissions?
>> 
>> That’s not possible unless the calling user is root, since you’d need
>> the ability to switch users somehow.
>
> On Debian, a user has a list of ‘subordinate user IDs’ which can be switched
> to without root: 
> .
>
> Maybe "guix home" could use that mechanism, and this mechanism could be 
> implemented
> on Guix System as well?

Yes but that requires unprivileged user namespaces, which may or may not
be supported—e.g., likely unsupported when using Home on a foreign
distro.

Ludo’.



Re: On the naming of System and Home services modules.

2021-10-02 Thread Ludovic Courtès
Hi,

Xinglu Chen  skribis:

> I think it would be better to put home services in the same modules as
> system services, i.e., (gnu services mcron) would contain the Mcron
> service for Guix System and the Mcron service for Guix Home.  That would
> also mean that we wouldn’t have to export ‘job-files’ and
> ‘shepherd-schedule-action’[1].

Ah true, hmm.  For now it’s okay to export these two things IMO.

Also, more generally, we have to make sure there are no circular
dependencies.  So Home modules can depend on anything else, but System
modules should not depend on Home modules.

> I think using (gnu home services …) would only make sense if we already
> had (gnu system services …).

As I wrote before, I agree in principle, but we’re not going to rename
those modules.  :-)

Thanks,
Ludo’.



Re: On the naming of System and Home services modules.

2021-10-02 Thread Ludovic Courtès
Hi!

Oleg Pykhalov  skribis:

> Andrew Tropin  writes:
>
> […]
>
>>> I would very much like to have these modules renamed to (gnu home
>>> services …) quickly.  WDYT?  Could the two of you take a look?
>>
>> Doable.
>>
>> What about moving home services to (gnu services ...)?
>>
>> It's a little harder, because we probably will need to adjust `guix
>> system search` and `guix home search`, but other than that seems not too
>> hard.
>>
>> However, I'm quite ok with (gnu home services ...), just asking to avoid
>> one more migration later.
>
> I'm OK with both variants, but (gnu services) seems more friendly for
> sharing the code and as (gnu home services) doesn't look hard to migrate
> with current amount of services in (gnu home-services).

I’m in favor of (gnu home services) rather than (gnu services), in part
because we have yet to figure out how much can be shared between System
and Home services, and in part because the Home bits are likely useless
for System.

>> Let me know, which option seems better to you, I can take this task
>> tomorrow.
>
> I could try to join the migration on friday, or weekends.  Fill free to
> delegate (gnu home-services XYZ) module migration to me here, or IRC.

Awesome, and I see we already have a new patch series to look at,
thanks!  :-)

Ludo’.