unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* offline repo server
@ 2018-01-17 23:58 Quiliro Ordonez Baca
  2018-01-17 23:59 ` Jalus Bilieyich
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Quiliro Ordonez Baca @ 2018-01-17 23:58 UTC (permalink / raw)
  To: help-guix

I am not sure if this has been asked before. But I live in a place where
there is no network link and I would like users to install different
softwares there.

Is it possible to have a machine connect to the net every so often so
that it updates all available substitutes (or source if substitutes are
not available)...and then take that machine to an offline site where
other machines use it to install all packages that users want?

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: offline repo server
  2018-01-17 23:58 offline repo server Quiliro Ordonez Baca
@ 2018-01-17 23:59 ` Jalus Bilieyich
  2018-01-18  0:12 ` Eric Bavier
  2018-01-19 16:47 ` Ricardo Wurmus
  2 siblings, 0 replies; 5+ messages in thread
From: Jalus Bilieyich @ 2018-01-17 23:59 UTC (permalink / raw)
  To: help-guix

Just go to a nearby public place with internet access and bring a
laptop. Install away. And come back with all the package tarballs.

On 01/17/2018 05:58 PM, Quiliro Ordonez Baca wrote:
> I am not sure if this has been asked before. But I live in a place where
> there is no network link and I would like users to install different
> softwares there.
> 
> Is it possible to have a machine connect to the net every so often so
> that it updates all available substitutes (or source if substitutes are
> not available)...and then take that machine to an offline site where
> other machines use it to install all packages that users want?
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: offline repo server
  2018-01-17 23:58 offline repo server Quiliro Ordonez Baca
  2018-01-17 23:59 ` Jalus Bilieyich
@ 2018-01-18  0:12 ` Eric Bavier
  2018-01-19 13:01   ` Efraim Flashner
  2018-01-19 16:47 ` Ricardo Wurmus
  2 siblings, 1 reply; 5+ messages in thread
From: Eric Bavier @ 2018-01-18  0:12 UTC (permalink / raw)
  To: Quiliro Ordonez Baca; +Cc: help-guix

[-- Attachment #1: Type: text/plain, Size: 1545 bytes --]

On Wed, 17 Jan 2018 18:58:08 -0500
Quiliro Ordonez Baca <quiliro@riseup.net> wrote:

> I am not sure if this has been asked before. But I live in a place where
> there is no network link and I would like users to install different
> softwares there.
> 
> Is it possible to have a machine connect to the net every so often so
> that it updates all available substitutes (or source if substitutes are
> not available)...and then take that machine to an offline site where
> other machines use it to install all packages that users want?
> 

I don't think we don't have anything out-of-the-box that would elegantly
handle a use-case like this.  That being said, you should be able to
hack something together.  I think a good place to start would be the
recent work Ludovic did on 'guix weather', which queries substitute
servers for availability of package substitutes.  You could base
something off that which, instead of simply reporting statistics,
actually builds the derivations: either the source derivation if a
substitute is unavailable, or the package derivation.

Obviously, downloading substitutes and/or source for all
packages could take quite a but of time, so you may instead want to
limit to a manifest of the packages you're interested in.  But that
could get more complicated because a package's source is "useless"
unless you have sources or substitutes of the packages needed to build
it, so you'd need to analyze the dependency tree a bit.

It's an interesting use-case.

Happy Hacking,
`~Eric

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: offline repo server
  2018-01-18  0:12 ` Eric Bavier
@ 2018-01-19 13:01   ` Efraim Flashner
  0 siblings, 0 replies; 5+ messages in thread
From: Efraim Flashner @ 2018-01-19 13:01 UTC (permalink / raw)
  To: Eric Bavier; +Cc: Quiliro Ordonez Baca, help-guix

[-- Attachment #1: Type: text/plain, Size: 2371 bytes --]

On Wed, Jan 17, 2018 at 06:12:49PM -0600, Eric Bavier wrote:
> On Wed, 17 Jan 2018 18:58:08 -0500
> Quiliro Ordonez Baca <quiliro@riseup.net> wrote:
> 
> > I am not sure if this has been asked before. But I live in a place where
> > there is no network link and I would like users to install different
> > softwares there.
> > 
> > Is it possible to have a machine connect to the net every so often so
> > that it updates all available substitutes (or source if substitutes are
> > not available)...and then take that machine to an offline site where
> > other machines use it to install all packages that users want?
> > 
> 
> I don't think we don't have anything out-of-the-box that would elegantly
> handle a use-case like this.  That being said, you should be able to
> hack something together.  I think a good place to start would be the
> recent work Ludovic did on 'guix weather', which queries substitute
> servers for availability of package substitutes.  You could base
> something off that which, instead of simply reporting statistics,
> actually builds the derivations: either the source derivation if a
> substitute is unavailable, or the package derivation.
> 
> Obviously, downloading substitutes and/or source for all
> packages could take quite a but of time, so you may instead want to
> limit to a manifest of the packages you're interested in.  But that
> could get more complicated because a package's source is "useless"
> unless you have sources or substitutes of the packages needed to build
> it, so you'd need to analyze the dependency tree a bit.
> 
> It's an interesting use-case.
> 
> Happy Hacking,
> `~Eric

The shell script I use on my aarch64 build machine is:
guix build --no-substitutes --no-grafts --keep-going $(guix package -A | cut -f1,2 --output-delimiter=@) --sources=transitive

Not related to caching sources but related to building all the packages,
I take off '--sources=transitive' and put on '--max-silent-time=1800' when
I'm= building everything.

I guess if you're not running it as a fully independant build server
then you wouldn't need the '--no-substitutes'


-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: offline repo server
  2018-01-17 23:58 offline repo server Quiliro Ordonez Baca
  2018-01-17 23:59 ` Jalus Bilieyich
  2018-01-18  0:12 ` Eric Bavier
@ 2018-01-19 16:47 ` Ricardo Wurmus
  2 siblings, 0 replies; 5+ messages in thread
From: Ricardo Wurmus @ 2018-01-19 16:47 UTC (permalink / raw)
  To: Quiliro Ordonez Baca; +Cc: help-guix


Quiliro Ordonez Baca <quiliro@riseup.net> writes:

> I am not sure if this has been asked before. But I live in a place where
> there is no network link and I would like users to install different
> softwares there.
>
> Is it possible to have a machine connect to the net every so often so
> that it updates all available substitutes (or source if substitutes are
> not available)...and then take that machine to an offline site where
> other machines use it to install all packages that users want?

You have to control the version of Guix on these machines (it should be
the same).  If you know what packages they need then you can put them in
manifests and build those manifests on the host that can be connected to
the internet once in a while.  Later at the offline site you can then
fire up “guix publish” to share your populated store with the other
users.

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-01-19 17:03 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-17 23:58 offline repo server Quiliro Ordonez Baca
2018-01-17 23:59 ` Jalus Bilieyich
2018-01-18  0:12 ` Eric Bavier
2018-01-19 13:01   ` Efraim Flashner
2018-01-19 16:47 ` Ricardo Wurmus

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).