unofficial mirror of guix-science@gnu.org 
 help / color / mirror / Atom feed
* Guix for Embedded, Hardware, Documentation, and Data
@ 2021-12-10 13:00 Peter Polidoro
  2021-12-10 22:18 ` Julien Lepiller
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Peter Polidoro @ 2021-12-10 13:00 UTC (permalink / raw)
  To: guix-science

Could Guix be used for packages that do not strictly contain 
operating system software?

For example, could Guix be used for packages of embedded code and 
their dependencies to be run on a little RTOS, like Zephyr, or 
bare metal, like Arduino or PlatformIO libraries?

Could it be used for hardware, like a Kicad pcb package that 
depends on component and footprint packages, or packages of 
FreeCAD mechanical assemblies that depend on part packages?

Can Guix packages be used for documentation and other data?

Or are all of these types of packages way outside the scope of 
Guix? Although it could still be used for the operating system 
software development environments for these types of projects, it 
might be very powerful to package other types of code and data as 
well.


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

* Re: Guix for Embedded, Hardware, Documentation, and Data
  2021-12-10 13:00 Guix for Embedded, Hardware, Documentation, and Data Peter Polidoro
@ 2021-12-10 22:18 ` Julien Lepiller
  2021-12-12  8:43   ` Efraim Flashner
  2021-12-12  9:43 ` [Spam:]Guix " Konrad Hinsen
  2021-12-13 14:25 ` zimoun
  2 siblings, 1 reply; 8+ messages in thread
From: Julien Lepiller @ 2021-12-10 22:18 UTC (permalink / raw)
  To: guix-science, Peter Polidoro

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

I think guix can be used for more than just packages. When you say documentation, what comes to mind is package documentation, but we also have man-pages, which contains no programs, only… well… man pages :). We also have sicp that contains only a book.

With cross-compilation, it shouldn't be too hard to build something for an embedded system, though that's still something that needg to be demonstrated I think.

Le 10 décembre 2021 08:00:23 GMT-05:00, Peter Polidoro <peter@polidoro.io> a écrit :
>Could Guix be used for packages that do not strictly contain 
>operating system software?
>
>For example, could Guix be used for packages of embedded code and 
>their dependencies to be run on a little RTOS, like Zephyr, or 
>bare metal, like Arduino or PlatformIO libraries?
>
>Could it be used for hardware, like a Kicad pcb package that 
>depends on component and footprint packages, or packages of 
>FreeCAD mechanical assemblies that depend on part packages?
>
>Can Guix packages be used for documentation and other data?
>
>Or are all of these types of packages way outside the scope of 
>Guix? Although it could still be used for the operating system 
>software development environments for these types of projects, it 
>might be very powerful to package other types of code and data as 
>well.
>

[-- Attachment #2: Type: text/html, Size: 1620 bytes --]

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

* Re: Guix for Embedded, Hardware, Documentation, and Data
  2021-12-10 22:18 ` Julien Lepiller
@ 2021-12-12  8:43   ` Efraim Flashner
  0 siblings, 0 replies; 8+ messages in thread
From: Efraim Flashner @ 2021-12-12  8:43 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: guix-science, Peter Polidoro

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

I have a channel which only has IETF RFCs, so I guess that's like having
documentation. In theory if you can write a build that will provide you
with what you want you can build it with Guix. I would say actually
running Guix on any of this small hardware is outside of the scope of
Guix.

https://gitlab.com/Efraim/guix-ietf

On Fri, Dec 10, 2021 at 05:18:43PM -0500, Julien Lepiller wrote:
> I think guix can be used for more than just packages. When you say documentation, what comes to mind is package documentation, but we also have man-pages, which contains no programs, only… well… man pages :). We also have sicp that contains only a book.
> 
> With cross-compilation, it shouldn't be too hard to build something for an embedded system, though that's still something that needg to be demonstrated I think.
> 
> Le 10 décembre 2021 08:00:23 GMT-05:00, Peter Polidoro <peter@polidoro.io> a écrit :
> >Could Guix be used for packages that do not strictly contain 
> >operating system software?
> >
> >For example, could Guix be used for packages of embedded code and 
> >their dependencies to be run on a little RTOS, like Zephyr, or 
> >bare metal, like Arduino or PlatformIO libraries?
> >
> >Could it be used for hardware, like a Kicad pcb package that 
> >depends on component and footprint packages, or packages of 
> >FreeCAD mechanical assemblies that depend on part packages?
> >
> >Can Guix packages be used for documentation and other data?
> >
> >Or are all of these types of packages way outside the scope of 
> >Guix? Although it could still be used for the operating system 
> >software development environments for these types of projects, it 
> >might be very powerful to package other types of code and data as 
> >well.
> >

-- 
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] 8+ messages in thread

* Re: [Spam:]Guix for Embedded, Hardware, Documentation, and Data
  2021-12-10 13:00 Guix for Embedded, Hardware, Documentation, and Data Peter Polidoro
  2021-12-10 22:18 ` Julien Lepiller
@ 2021-12-12  9:43 ` Konrad Hinsen
  2021-12-13 13:20   ` Guix " Peter Polidoro
  2021-12-13 14:25 ` zimoun
  2 siblings, 1 reply; 8+ messages in thread
From: Konrad Hinsen @ 2021-12-12  9:43 UTC (permalink / raw)
  To: Peter Polidoro, guix-science

Peter Polidoro <peter@polidoro.io> writes:

> Could Guix be used for packages that do not strictly contain 
> operating system software?

Guix the package manager: certainly. The only practical technical limit
to what you can put into Guix packages is the size of the data. The Guix
store isn't particularly well suited to very large files.

Guix the software distribution: it depends. I doubt you would have much
success with submitting a pull request for adding video clips, for
example. There are a few documentation-only packages in Guix, but they
are clearly related to software that's also in Guix.

For a nice example of using Guix for something else than software, see
this blog post:

  https://guix.gnu.org/en/blog/2021/reproducible-data-processing-pipelines/

-- 
---------------------------------------------------------------------
Konrad Hinsen
Centre de Biophysique Moléculaire, CNRS Orléans
Synchrotron Soleil - Division Expériences
Saint Aubin - BP 48
91192 Gif sur Yvette Cedex, France
Tel. +33-1 69 35 97 15
E-Mail: konrad DOT hinsen AT cnrs DOT fr
http://dirac.cnrs-orleans.fr/~hinsen/
ORCID: https://orcid.org/0000-0003-0330-9428
Twitter: @khinsen
---------------------------------------------------------------------


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

* Re: Guix for Embedded, Hardware, Documentation, and Data
  2021-12-12  9:43 ` [Spam:]Guix " Konrad Hinsen
@ 2021-12-13 13:20   ` Peter Polidoro
  2021-12-13 14:48     ` [Spam:]Re: " Konrad Hinsen
  0 siblings, 1 reply; 8+ messages in thread
From: Peter Polidoro @ 2021-12-13 13:20 UTC (permalink / raw)
  To: guix-science


Efraim Flashner <efraim@flashner.co.il> writes:

> I would say actually
> running Guix on any of this small hardware is outside of the 
> scope of
> Guix.

Konrad Hinsen <konrad.hinsen@cnrs.fr> writes:

> Guix the software distribution: it depends. I doubt you would 
> have much
> success with submitting a pull request for adding video clips, 
> for
> example.

These are good points, thanks. I was not thinking of trying to run 
Guix on embedded hardware without the GNU operation system, 
though, or of trying to add large media files to Guix proper.

I was mostly curious about using Guix as a universal package 
manager for organizing and distributing code and data, especially 
for reproducible science, and I was wondering for which cases it 
would not make sense to use Guix.

For example, after a researcher publishes a paper, years later 
someone may want exact versions of the experimental data, analysis 
software, and documentation referenced in the paper. They may also 
want the exact version of the experimental rig used to collect the 
data, the software, hardware, and firmware, and the exact version 
of the development environments used to create each one. Guix 
seems ideal for this, especially if the code and data are in text 
files rather than large binaries.

The packages you all told me about, like the sicp book, give me 
clues about how I might try packaging something like circuit board 
files. I will give it a try, thanks!

> For a nice example of using Guix for something else than 
> software, see
> this blog post:
>
>   https://guix.gnu.org/en/blog/2021/reproducible-data-processing-pipelines/

The guix.gnu.org site appears to be down right now, but I look 
forward to reading this when it is available again.



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

* Re: Guix for Embedded, Hardware, Documentation, and Data
  2021-12-10 13:00 Guix for Embedded, Hardware, Documentation, and Data Peter Polidoro
  2021-12-10 22:18 ` Julien Lepiller
  2021-12-12  9:43 ` [Spam:]Guix " Konrad Hinsen
@ 2021-12-13 14:25 ` zimoun
  2 siblings, 0 replies; 8+ messages in thread
From: zimoun @ 2021-12-13 14:25 UTC (permalink / raw)
  To: Peter Polidoro; +Cc: guix-science

Hi,

On Fri, 10 Dec 2021 at 14:21, Peter Polidoro <peter@polidoro.io> wrote:

> Can Guix packages be used for documentation and other data?

At the time of Guix Days 2020 [1], I packaged as proof-of-concept one
talk [2] shareable via a custom channel.  But the <package> record
does not fit well for distributing data.  Guix could be used for that
but, IMHO, it lacks a layer or something.  For instance, when you
build data, you have multi-origin, say
http://dx.doi.org/10.23668/psycharchives.4353 and
http://dx.doi.org/10.23668/psycharchives.4354.


1: <https://guix.gnu.org/en/blog/2020/online-guix-day-announce-2/>
2: GNU Guix in psychology research and teaching


Cheers,
simon


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

* Re: [Spam:]Re: Guix for Embedded, Hardware, Documentation, and Data
  2021-12-13 13:20   ` Guix " Peter Polidoro
@ 2021-12-13 14:48     ` Konrad Hinsen
  2021-12-14 15:19       ` Peter Polidoro
  0 siblings, 1 reply; 8+ messages in thread
From: Konrad Hinsen @ 2021-12-13 14:48 UTC (permalink / raw)
  To: Peter Polidoro, guix-science

Peter Polidoro <peter@polidoro.io> writes:

> I was mostly curious about using Guix as a universal package 
> manager for organizing and distributing code and data, especially 
> for reproducible science, and I was wondering for which cases it 
> would not make sense to use Guix.

Then don't miss this masterpiece:

   https://gitlab.inria.fr/lcourtes-phd/edcc-2006-redone

A complete reproducible article done in Guix, up to the production of a
PDF file containing figures containing computed data.

Konrad.
-- 
---------------------------------------------------------------------
Konrad Hinsen
Centre de Biophysique Moléculaire, CNRS Orléans
Synchrotron Soleil - Division Expériences
Saint Aubin - BP 48
91192 Gif sur Yvette Cedex, France
Tel. +33-1 69 35 97 15
E-Mail: konrad DOT hinsen AT cnrs DOT fr
http://dirac.cnrs-orleans.fr/~hinsen/
ORCID: https://orcid.org/0000-0003-0330-9428
Twitter: @khinsen
---------------------------------------------------------------------


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

* Re: Guix for Embedded, Hardware, Documentation, and Data
  2021-12-13 14:48     ` [Spam:]Re: " Konrad Hinsen
@ 2021-12-14 15:19       ` Peter Polidoro
  0 siblings, 0 replies; 8+ messages in thread
From: Peter Polidoro @ 2021-12-14 15:19 UTC (permalink / raw)
  To: Konrad Hinsen; +Cc: guix-science


>
> Then don't miss this masterpiece:
>
>    https://gitlab.inria.fr/lcourtes-phd/edcc-2006-redone
>
> A complete reproducible article done in Guix, up to the 
> production of a
> PDF file containing figures containing computed data.

This is fantastic, thanks!

The 'Ten Years Reproduciblity Challenge' is such an interesting 
exercise too. There is no way that most researchers in our 
organization could still run code from papers they wrote ten years 
ago. Such a great reason for them to start using Guix.


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

end of thread, other threads:[~2021-12-14 15:28 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-10 13:00 Guix for Embedded, Hardware, Documentation, and Data Peter Polidoro
2021-12-10 22:18 ` Julien Lepiller
2021-12-12  8:43   ` Efraim Flashner
2021-12-12  9:43 ` [Spam:]Guix " Konrad Hinsen
2021-12-13 13:20   ` Guix " Peter Polidoro
2021-12-13 14:48     ` [Spam:]Re: " Konrad Hinsen
2021-12-14 15:19       ` Peter Polidoro
2021-12-13 14:25 ` zimoun

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).