all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Packaging Inferno
@ 2018-10-05  8:11 Diego Nicola Barbato
  2018-10-07  9:49 ` Efraim Flashner
  2018-10-08 13:00 ` Ludovic Courtès
  0 siblings, 2 replies; 12+ messages in thread
From: Diego Nicola Barbato @ 2018-10-05  8:11 UTC (permalink / raw)
  To: guix-devel

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

Hello Guix,

I have written a package definition for Inferno and I would like to know
if it would make sense to add it to Guix.  I am asking because I am not
sure if it is compatible with the FSDG (bundled fonts, trademarks, ...)
and if it would be of any use to anyone.

It builds reproducibly on my Laptop (x86_64-linux).  I have not tried to
build it on any of the other (supposedly) supported architectures.

For now the recipe has to be passed to `guix build' or `guix package'
using the `-f' option but I would be glad to add it to a module
(e.g. (gnu packages virtualization), or a module of its own) and send a
patch if it is decided that it belongs in Guix.

Greetings,

Diego


[-- Attachment #2: inferno-trivial.scm --]
[-- Type: application/octet-stream, Size: 8075 bytes --]

(use-modules (ice-9 match)
             (guix packages)
             (guix git-download)
             (guix hg-download)
             (guix build-system trivial)
             ((guix licenses) #:prefix license:)
             (gnu packages base)
             (gnu packages bash)
             (gnu packages commencement)
             (gnu packages compression)
             (gnu packages gawk)
             (gnu packages xorg))

(let ((commit "62ae0f7")
      (revision "0"))
  (package
    (name "inferno")
    (version (git-version "4" revision commit))
    (source
     (origin
       (method hg-fetch)
       (uri (hg-reference
             (url "https://bitbucket.org/inferno-os/inferno-os")
             (changeset commit)))
       (file-name (string-append name "-" version "-checkout"))
       (sha256
        (base32 "18irka9qad8m1r2m9f56glv9d0gwk4ai7n7i0mzbi47vcmm60hdd"))
       ;; Remove bundled proprietary fonts.
       (modules '((guix build utils)))
       (snippet
        '(begin
           (for-each delete-file-recursively
                     '("fonts/lucidasans"
                       "fonts/pelm"
                       "fonts/lucida"
                       "fonts/lucm"))
           #t))))
    (build-system trivial-build-system)
    (native-inputs `(("bash" ,bash)
                     ("coreutils" ,coreutils)
                     ("grep" ,grep)
                     ("sed" ,sed)
                     ("awk" ,gawk)
                     ("xz" ,xz)
                     ("tar" ,tar)
                     ("gcc-toolchain" ,gcc-toolchain)                     ))
    (inputs `(("libx11" ,libx11)
              ("xorgproto" ,xorgproto)
              ("libxext" ,libxext)))
    (arguments
     `(;; Force a 32-bit build targeting a similar architecture, i.e.:
       ;; armhf for armhf/aarch64, i686 for i686/x86_64.
       #:system ,@(match (%current-system)
                    ((or "armhf-linux" "aarch64-linux")
                     `("armhf-linux"))
                    (_
                     `("i686-linux")))
       #:modules ((guix build utils))
       #:builder
       (begin
         (use-modules (guix build utils))
         (let* ((out (assoc-ref %outputs "out"))
                (root (string-append out "/usr/inferno"))
                (bindir (string-append out "/bin"))
                (infwm-script (string-append bindir "/infwm"))
                (source (assoc-ref %build-inputs "source"))
                (bash (assoc-ref %build-inputs "bash"))
                (xz (assoc-ref %build-inputs "xz"))
                (tar (assoc-ref %build-inputs "tar"))
                (gcc-tc (assoc-ref %build-inputs "gcc-toolchain"))
                (cutils (assoc-ref %build-inputs "coreutils"))
                (grep (assoc-ref %build-inputs "grep"))
                (sed (assoc-ref %build-inputs "sed"))
                (awk (assoc-ref %build-inputs "awk"))
                (libx11 (assoc-ref %build-inputs "libx11"))
                (xorgproto (assoc-ref %build-inputs "xorgproto"))
                (libxext (assoc-ref %build-inputs "libxext"))
                (objtype ,@(match (%current-system)
                             ((or "armhf-linux" "aarch64-linux")
                              `("arm"))
                             (_
                              `("386")))))
           ;; set paths
           (set-path-environment-variable "PATH" '("bin")
                                          (list gcc-tc
                                                cutils
                                                grep
                                                sed
                                                awk
                                                xz
                                                tar))
           (set-path-environment-variable "CPATH" '("include")
                                          (list gcc-tc
                                                libx11
                                                xorgproto
                                                libxext))
           (set-path-environment-variable "LIBRARY_PATH" '("lib")
                                          (list gcc-tc
                                                libx11
                                                libxext))
           ;; extract source
           (mkdir-p root)
           (invoke "tar" "xvf" source "-C" root "--strip=1" "-m")
           ;; build inside of root as the source tree doubles as
           ;; inferno's root file system and its path is baked into
           ;; the emu binary
           (with-directory-excursion root
             ;; substitute ocurrences of /bin/sh
             (for-each (lambda (file)
                         (substitute* file
                           (("/bin/sh")
                            (string-append bash "/bin/sh"))))
                       '("makemk.sh"
                         "mkfiles/mkhost-Linux"
                         "emu/Linux/mk-wrt"
                         "utils/mk/Posix.c"))
             ;; configure
             (substitute* "mkconfig"
               (("ROOT=/usr/inferno")
                (string-append "ROOT=" root))
               (("SYSHOST=Plan9")
                "SYSHOST=Linux")
               (("OBJTYPE=\\$objtype")
                (string-append "OBJTYPE=" objtype)))
             ;; substitute occurences of cc
             ;; TODO: verify this is not a problem on arm
             (substitute* "mkfiles/mkfile-Linux-386"
               (("cc -") ; don't match yacc
                "gcc -"))
             ;; Make build reproducible by ensuring timestamps
             ;; embedded into binaries are set to 0
             (substitute* "emu/Linux/mkfile"
               (("^KERNDATE=.*$")
                "KERNDATE=0\n"))
             ;; build mk
             (invoke "./makemk.sh")
             ;; add mk's location to PATH
             (setenv "PATH"
                     (string-append
                      root
                      "/Linux/" objtype "/bin:"
                      (getenv "PATH")))
             ;; build emu and .dis files using mk
             (invoke "mk" "-s" "nuke" "mkdirs" "install")
             ;; install infwm script
             (mkdir-p bindir)
             (with-output-to-file infwm-script
               (lambda ()
                 (display
                  (string-append
                   "#!" bash "/bin/sh\n"
                   "exec " root "/Linux/" objtype "/bin/emu $* "
                   "/dis/sh.dis -c \""
                   "bind -bc '#U*/tmp' /tmp; " ; bind the host's /tmp to inferno's /tmp
                   "bind '#U*/home' /usr; " ; bind the host's /home to inferno's /usr
                   "wm/wm wm/logon -u $USER" ; launch the window manager and login as $USER
                   "\"\n"))))
             (chmod infwm-script #o755)
             ;; install a symlink to emu
             (symlink (string-append root "/Linux/" objtype "/bin/emu")
                      (string-append bindir "/emu")))))))
    (home-page "http://www.inferno-os.org")
    (synopsis "Compact operating system for building cross-platform distributed systems")
    (description
     "Inferno is a virtualised operating system that can run natively across
a wide range of processor architectures or hosted on a wide range of
operating systems.  The principal components of the system are:
@itemize
@item The Inferno kernel which can run both native and hosted on a
range of platforms and which presents the same interface to programs
in both cases.
@item The Dis virtual machine.
@item Styx - the tiny broad-spectrum file service protocol.
@item Limbo - a new simple, modular, concurrent programming language.
@item Tk and Prefab - graphical user interface (GUI) primitives
without a lot of goo.
@item The portable cross-development suites that allow any native
Inferno platform to be cross-compiled on any hosted system.
@end itemize
This package provides hosted Inferno.\n")
    (supported-systems '("i686-linux" "x86_64-linux" "armhf-linux" "aarch64-linux"))
    (license license:gpl2+)))

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

* Re: Packaging Inferno
  2018-10-05  8:11 Packaging Inferno Diego Nicola Barbato
@ 2018-10-07  9:49 ` Efraim Flashner
  2018-10-11 13:30   ` Diego Nicola Barbato
  2018-10-08 13:00 ` Ludovic Courtès
  1 sibling, 1 reply; 12+ messages in thread
From: Efraim Flashner @ 2018-10-07  9:49 UTC (permalink / raw)
  To: Diego Nicola Barbato; +Cc: guix-devel


[-- Attachment #1.1: Type: text/plain, Size: 1287 bytes --]

On Fri, Oct 05, 2018 at 10:11:54AM +0200, Diego Nicola Barbato wrote:
> Hello Guix,
> 
> I have written a package definition for Inferno and I would like to know
> if it would make sense to add it to Guix.  I am asking because I am not
> sure if it is compatible with the FSDG (bundled fonts, trademarks, ...)
> and if it would be of any use to anyone.
> 
> It builds reproducibly on my Laptop (x86_64-linux).  I have not tried to
> build it on any of the other (supposedly) supported architectures.
> 
> For now the recipe has to be passed to `guix build' or `guix package'
> using the `-f' option but I would be glad to add it to a module
> (e.g. (gnu packages virtualization), or a module of its own) and send a
> patch if it is decided that it belongs in Guix.
> 
> Greetings,
> 
> Diego
> 

Not a big fan of using the trivial build system for something that ends
up with this many lines, but I built it on my aarch64 board and here's
the diff I came up with to make it work.

I didn't look into the source at all other than making it build.


-- 
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 #1.2: inferno-arm.diff --]
[-- Type: text/plain, Size: 331 bytes --]

116a117,119
>              ;; don't pass '-m32' unconditionally
>              (substitute* "makemk.sh"
>                (("-m32") ""))
126d128
<              ;; TODO: verify this is not a problem on arm
129a132,133
>              (substitute* "mkfiles/mkfile-Linux-arm"
>                (("arm-gcc") "gcc"))
182a187
> 

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

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

* Re: Packaging Inferno
  2018-10-05  8:11 Packaging Inferno Diego Nicola Barbato
  2018-10-07  9:49 ` Efraim Flashner
@ 2018-10-08 13:00 ` Ludovic Courtès
  2018-10-08 13:47   ` Nils Gillmann
  1 sibling, 1 reply; 12+ messages in thread
From: Ludovic Courtès @ 2018-10-08 13:00 UTC (permalink / raw)
  To: Diego Nicola Barbato; +Cc: guix-devel

Hello Diego,

Diego Nicola Barbato <dnbarbato@posteo.de> skribis:

> I have written a package definition for Inferno and I would like to know
> if it would make sense to add it to Guix.  I am asking because I am not
> sure if it is compatible with the FSDG (bundled fonts, trademarks, ...)
> and if it would be of any use to anyone.

Removing the proprietary(?) fonts like you did sounds like the right
thing to do.  As for trademarks, please see
<https://www.gnu.org/distros/free-system-distribution-guidelines.html#trademarks>
to determine whether there’s a problem at all.

Could you also check whether all the code is GPLv2+ like the ‘license’
field suggests?

Do I get it right that the build result is a script that launches
Inferno as a GNU/Linux process?  It seems like it could be useful.

Some comments about the package definition:

>     (build-system trivial-build-system)
>     (native-inputs `(("bash" ,bash)
>                      ("coreutils" ,coreutils)
>                      ("grep" ,grep)
>                      ("sed" ,sed)
>                      ("awk" ,gawk)
>                      ("xz" ,xz)
>                      ("tar" ,tar)
>                      ("gcc-toolchain" ,gcc-toolchain)                     ))
>     (inputs `(("libx11" ,libx11)
>               ("xorgproto" ,xorgproto)
>               ("libxext" ,libxext)))

Like Efraim wrote, I think using ‘gnu-build-system’ would allow you to
simplify the package definition.

>              ;; build mk
>              (invoke "./makemk.sh")

It would be ideal if we had a separate package for ‘mk’ (I suppose it
can run on POSIX systems, right?).

Once you’ve double-checked the licensing and trademark situation, I
think you can go ahead and submit it as a patch (or two patches, with
‘mk’ separately).

Thanks!

Ludo’.

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

* Re: Packaging Inferno
  2018-10-08 13:00 ` Ludovic Courtès
@ 2018-10-08 13:47   ` Nils Gillmann
  2018-10-09 17:09     ` Diego Nicola Barbato
  0 siblings, 1 reply; 12+ messages in thread
From: Nils Gillmann @ 2018-10-08 13:47 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel, Diego Nicola Barbato

Ludovic Courtès transcribed 1.9K bytes:
> Hello Diego,
> 
> Diego Nicola Barbato <dnbarbato@posteo.de> skribis:
> 
> > I have written a package definition for Inferno and I would like to know
> > if it would make sense to add it to Guix.  I am asking because I am not
> > sure if it is compatible with the FSDG (bundled fonts, trademarks, ...)
> > and if it would be of any use to anyone.
> 
> Removing the proprietary(?) fonts like you did sounds like the right
> thing to do.  As for trademarks, please see
> <https://www.gnu.org/distros/free-system-distribution-guidelines.html#trademarks>
> to determine whether there’s a problem at all.
> 
> Could you also check whether all the code is GPLv2+ like the ‘license’
> field suggests?
> 
> Do I get it right that the build result is a script that launches
> Inferno as a GNU/Linux process?  It seems like it could be useful.
> 
> Some comments about the package definition:
> 
> >     (build-system trivial-build-system)
> >     (native-inputs `(("bash" ,bash)
> >                      ("coreutils" ,coreutils)
> >                      ("grep" ,grep)
> >                      ("sed" ,sed)
> >                      ("awk" ,gawk)
> >                      ("xz" ,xz)
> >                      ("tar" ,tar)
> >                      ("gcc-toolchain" ,gcc-toolchain)                     ))
> >     (inputs `(("libx11" ,libx11)
> >               ("xorgproto" ,xorgproto)
> >               ("libxext" ,libxext)))
> 
> Like Efraim wrote, I think using ‘gnu-build-system’ would allow you to
> simplify the package definition.
> 
> >              ;; build mk
> >              (invoke "./makemk.sh")
> 
> It would be ideal if we had a separate package for ‘mk’ (I suppose it
> can run on POSIX systems, right?).

I can finish my mk package and send it in.
My mk is the canonical set of mk files as used by bmake.
Sources are from http://crufty.net/help/sjg/mk-files.htm
and/or places linked from there.

If this matches the mk mentioned here, I can create this patch.

> Once you’ve double-checked the licensing and trademark situation, I
> think you can go ahead and submit it as a patch (or two patches, with
> ‘mk’ separately).
> 
> Thanks!
> 
> Ludo’.
> 

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

* Re: Packaging Inferno
  2018-10-08 13:47   ` Nils Gillmann
@ 2018-10-09 17:09     ` Diego Nicola Barbato
  2018-10-09 17:55       ` Nils Gillmann
  2018-10-16 12:03       ` Ludovic Courtès
  0 siblings, 2 replies; 12+ messages in thread
From: Diego Nicola Barbato @ 2018-10-09 17:09 UTC (permalink / raw)
  To: Ludovic Courtès, Nils Gillmann; +Cc: guix-devel

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

Hello,

Thank you for your feedback.

Nils Gillmann <ng0@n0.is> writes:

> Ludovic Courtès transcribed 1.9K bytes:
>> Hello Diego,
>> 
>> Diego Nicola Barbato <dnbarbato@posteo.de> skribis:
>> 
>> > I have written a package definition for Inferno and I would like to know
>> > if it would make sense to add it to Guix.  I am asking because I am not
>> > sure if it is compatible with the FSDG (bundled fonts, trademarks, ...)
>> > and if it would be of any use to anyone.
>> 
>> Removing the proprietary(?) fonts like you did sounds like the right

@Ludo:  The fonts I removed are copyright Bigelow & Holmes.  They are
licensed in a way that forbids them from being modified and distributed
except as part of Inferno (or software derived from Inferno) [1].

>> thing to do.  As for trademarks, please see
>> <https://www.gnu.org/distros/free-system-distribution-guidelines.html#trademarks>
>> to determine whether there’s a problem at all.

@Ludo:  Judging from the link there seems to be no problem with the
trademarks after all.  The bundled fonts (the ones I did not remove),
however, are provided in a format native to Inferno (and Plan 9) and can
not be rebuilt from source, which might be a problem according to this
[2] thread.

>> Could you also check whether all the code is GPLv2+ like the ‘license’
>> field suggests?

@Ludo:  According to the NOTICE files scattered through the source tree
and the Inferno home page [3] different parts of Inferno are licensed
under GPLv2+, LGPLv2+, Expat (MIT-template), Lucent Public License 1.02
and Freetype.
Am I right to assume that I have to mention all of them in the ‘license’
field even though the NOTICE in the root of the source tree [4] says
that the "collection" is governed by the GPLv2+?  
I could not find the Lucent Public License [5] in the (guix licenses)
module.  Should I add it or should I use ‘non-copyleft’?

>> Do I get it right that the build result is a script that launches
>> Inferno as a GNU/Linux process?  It seems like it could be useful.

@Ludo: That is right.  I got the script from here [6].  It starts the
window manager and logs in as the current user; it is supposed to
provide a convenient entry point to start exploring the system.
Alongside this script in %out/bin/ there is also a symlink to the emu
binary which is installed by ‘mk install’ under
%out/usr/inferno/Linux/386/bin/ (Linux/arm/bin on arm machines).  This
directory contains several other executables.  I am considering making
some of them (like the Limbo compiler) available under %out/bin in the
same way as emu. 

>> Some comments about the package definition:
>> 
>> >     (build-system trivial-build-system)
>> >     (native-inputs `(("bash" ,bash)
>> >                      ("coreutils" ,coreutils)
>> >                      ("grep" ,grep)
>> >                      ("sed" ,sed)
>> >                      ("awk" ,gawk)
>> >                      ("xz" ,xz)
>> >                      ("tar" ,tar)
>> >                      ("gcc-toolchain" ,gcc-toolchain)                     ))
>> >     (inputs `(("libx11" ,libx11)
>> >               ("xorgproto" ,xorgproto)
>> >               ("libxext" ,libxext)))
>> 
>> Like Efraim wrote, I think using ‘gnu-build-system’ would allow you to
>> simplify the package definition.

@Ludo:  My first attempt at writing the package definition used
‘gnu-build-system’. I switched to ‘trivial-build-system’ when I realised
that most phases in %standard-phases were ill suited for building
inferno.  I will try to rewrite the definition using ‘gnu-build-system’.

>> >              ;; build mk
>> >              (invoke "./makemk.sh")
>> 
>> It would be ideal if we had a separate package for ‘mk’ (I suppose it
>> can run on POSIX systems, right?).

@Ludo:  This is Plan 9's mk (their version of make), which, I believe,
can run on POSIX systems.  Though, if we were to add mk to Guix, i would
rather package the one provided by Plan 9 from Userspace [7] since that
project seems to be more active than Inferno.

> I can finish my mk package and send it in.
> My mk is the canonical set of mk files as used by bmake.
> Sources are from http://crufty.net/help/sjg/mk-files.htm
> and/or places linked from there.
>
> If this matches the mk mentioned here, I can create this patch.

@Nils:  Your mk package seems to be unrelated to Plan 9's mk.

>> Once you’ve double-checked the licensing and trademark situation, I
>> think you can go ahead and submit it as a patch (or two patches, with
>> ‘mk’ separately).
>> 
>> Thanks!
>> 
>> Ludo’.
>> 

Greetings,

Diego


[1]: 

[-- Attachment #2: LICENCE --]
[-- Type: application/octet-stream, Size: 3757 bytes --]

FONT LICENCE

This applies only to those fonts that are copyright Bigelow & Holmes.

You MAY NOT:

- make an ADAPTATION of files that are copyright Bigelow & Holmes found in the Inferno distribution (``FONT SOFTWARE'').
- distribute FONT SOFTWARE except as part of a larger software distribution
incorporating the Inferno system software (and any adaptations of it YOU may make)
provided that the distribution includes minimum sub-licence terms as specified below.

The FONT SOFTWARE includes Fonts and Typefaces that are licensed from
Bigelow & Holmes Inc ("B&H").  YOU must include the following licence
terms when distributing the Fonts or Typefaces to any sublicensee and
impose the same restrictions on them in respect of any sublicence that
they may grant.

1. Licence and Title
This FONT LICENCE conveys a limited right to use, reproduce and
distribute the Fonts and Typefaces in accordance with the terms and
conditions in this FONT LICENCE and the Inferno Binary and Limited
Source Licence Agreement but does not convey title or any other
licences or rights which are not expressly provided relating to the
Typefaces or Fonts to YOU, sublicensees or any other end users.  YOU
acknowledge and agree that B&H owns all proprietary rights including
without limitation all intellectual property rights in the Typefaces
and Fonts and derivative works.

2. B&H Trade Mark Ownership
YOU acknowledge that B&H owns the entire right, title and interest in
the trade marks "Lucida and Bigelow & Holmes".

3. Notices
3.1 YOU agree that all advertising, promotion, marketing and
distribution in connection with this FONT LICENCE shall acknowledge
and use the trade marks of B&H in such a way as to protect such trade
marks.  3.2 YOU may not identify the Typefaces and Fonts by any trade
mark or trade name other than "Lucida".  If YOU make any reference to
any of the Typefaces or Fonts in sales literature, advertising,
manuals and documentation, on equipment, visual displays, printed
output and image carrier labels and outer containers, such references
shall include the "Lucida" trade marks together with (i) the symbol ®
and (ii) the phrase
 
"Lucida is a registered trade mark of Bigelow & Holmes Inc".  3.3 YOU
shall publish notices of B&H copyright and/or design patent rights on
the Image Carrier labels and diskette, tape or cartridge containers in
which the Typefaces and Fonts are packaged separately from the
LICENSED SOFTWARE, and in the header of files containing Typefaces or
Fonts.  Such notices shall be inthe following form; "Lucida and
Pellucida are registered trademarks of Bigelow & Holmes Inc. Lucida®
digital fonts copyright © 1985, 1986 by Bigelow & Holmes Inc".

4. B&H Rights in the Typeface Designs
4.1 YOU shall produce machine readable Raster Fonts only from Fonts provided by B&H.
4.2 YOU may not modify the Fonts or Typefaces represented by the Fonts
in Style (ie.  the combination of typographic design characteristics
that distinguish one typeface from another), design features or in any
other respect, nor add additional characters without the prior written
consent of B&H.
4.3 YOU may permit the LICENSED SOFTWARE to make automatic
modifications of any Typeface or Font including scaling, rotating,
condensation, extension, obliquing, reversal, tinting, shadowing,
outlining, or other transformations which LICENSED SOFTWARE can
perform automatically.

5. Protection Against Unauthorised Reproduction
5.1 YOU shall use due care in protecting the Typeface and Font digital
data YOU received against unauthorised use or reproduction.
5.2 YOU shall notify VITA NUOVA promptly in writing of any known or
suspected unauthorised reproduction, use or distribution of the Fonts
or Typefaces by Sublicensees, end users or others.

[-- Attachment #3: Type: text/plain, Size: 125 bytes --]


[2]: https://lists.gnu.org/archive/html/bug-guix/2018-10/msg00010.html
[3]: http://inferno-os.org/inferno/licence.html
[4]: 

[-- Attachment #4: NOTICE --]
[-- Type: application/octet-stream, Size: 1782 bytes --]

This Inferno® distribution includes software from various sources and
different portions are therefore subject to different licence terms.
The most stringent is the GNU Public License (version 2), which governs the collection.
Individual components might have their own NOTICE and licence files (LICENCE
or COPYING) that cover their content.  All of them allow modification and redistribution.
They are all compatible with the GPLv2.

The following copyright notice covers the contents of this
distribution unless otherwise specified by a given file, directory, or
directory tree:

Inferno® Copyright © 1996-1999 Lucent Technologies Inc.  All rights reserved.
Inferno revisions Copyright © 1997-1999 Vita Nuova Limited.  All rights reserved.
Inferno revisions Copyright © 2000-2015 Vita Nuova Holdings Limited.  All rights reserved.
Inferno new material Copyright © 2000-2015 Vita Nuova Holdings Limited.  All rights reserved.

Inferno, Styx, Dis and Limbo are registered trademarks of Vita Nuova Holdings Limited in the USA and other countries.
Plan 9 is a registered trademark of Lucent Technologies Inc.

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License (`GPL') as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

[-- Attachment #5: Type: text/plain, Size: 167 bytes --]


[5]: https://www.gnu.org/licenses/license-list.html#lucent102
[6]: https://www.ueber.net/who/mjl/inferno/getting-started.html
[7]: https://9fans.github.io/plan9port/

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

* Re: Packaging Inferno
  2018-10-09 17:09     ` Diego Nicola Barbato
@ 2018-10-09 17:55       ` Nils Gillmann
  2018-10-17 17:35         ` Diego Nicola Barbato
  2018-10-16 12:03       ` Ludovic Courtès
  1 sibling, 1 reply; 12+ messages in thread
From: Nils Gillmann @ 2018-10-09 17:55 UTC (permalink / raw)
  To: Diego Nicola Barbato; +Cc: guix-devel

Diego Nicola Barbato transcribed 12K bytes:
> Hello,
> 
> Thank you for your feedback.
> 
> Nils Gillmann <ng0@n0.is> writes:
> 
> > Ludovic Courtès transcribed 1.9K bytes:
> >> Hello Diego,
> >> 
> >> Diego Nicola Barbato <dnbarbato@posteo.de> skribis:
> >> 
> >> > I have written a package definition for Inferno and I would like to know
> >> > if it would make sense to add it to Guix.  I am asking because I am not
> >> > sure if it is compatible with the FSDG (bundled fonts, trademarks, ...)
> >> > and if it would be of any use to anyone.
> >> 
> >> Removing the proprietary(?) fonts like you did sounds like the right
> 
> @Ludo:  The fonts I removed are copyright Bigelow & Holmes.  They are
> licensed in a way that forbids them from being modified and distributed
> except as part of Inferno (or software derived from Inferno) [1].
> 
> >> thing to do.  As for trademarks, please see
> >> <https://www.gnu.org/distros/free-system-distribution-guidelines.html#trademarks>
> >> to determine whether there’s a problem at all.
> 
> @Ludo:  Judging from the link there seems to be no problem with the
> trademarks after all.  The bundled fonts (the ones I did not remove),
> however, are provided in a format native to Inferno (and Plan 9) and can
> not be rebuilt from source, which might be a problem according to this
> [2] thread.
> 
> >> Could you also check whether all the code is GPLv2+ like the ‘license’
> >> field suggests?
> 
> @Ludo:  According to the NOTICE files scattered through the source tree
> and the Inferno home page [3] different parts of Inferno are licensed
> under GPLv2+, LGPLv2+, Expat (MIT-template), Lucent Public License 1.02
> and Freetype.
> Am I right to assume that I have to mention all of them in the ‘license’
> field even though the NOTICE in the root of the source tree [4] says
> that the "collection" is governed by the GPLv2+?  
> I could not find the Lucent Public License [5] in the (guix licenses)
> module.  Should I add it or should I use ‘non-copyleft’?
> 
> >> Do I get it right that the build result is a script that launches
> >> Inferno as a GNU/Linux process?  It seems like it could be useful.
> 
> @Ludo: That is right.  I got the script from here [6].  It starts the
> window manager and logs in as the current user; it is supposed to
> provide a convenient entry point to start exploring the system.
> Alongside this script in %out/bin/ there is also a symlink to the emu
> binary which is installed by ‘mk install’ under
> %out/usr/inferno/Linux/386/bin/ (Linux/arm/bin on arm machines).  This
> directory contains several other executables.  I am considering making
> some of them (like the Limbo compiler) available under %out/bin in the
> same way as emu. 
> 
> >> Some comments about the package definition:
> >> 
> >> >     (build-system trivial-build-system)
> >> >     (native-inputs `(("bash" ,bash)
> >> >                      ("coreutils" ,coreutils)
> >> >                      ("grep" ,grep)
> >> >                      ("sed" ,sed)
> >> >                      ("awk" ,gawk)
> >> >                      ("xz" ,xz)
> >> >                      ("tar" ,tar)
> >> >                      ("gcc-toolchain" ,gcc-toolchain)                     ))
> >> >     (inputs `(("libx11" ,libx11)
> >> >               ("xorgproto" ,xorgproto)
> >> >               ("libxext" ,libxext)))
> >> 
> >> Like Efraim wrote, I think using ‘gnu-build-system’ would allow you to
> >> simplify the package definition.
> 
> @Ludo:  My first attempt at writing the package definition used
> ‘gnu-build-system’. I switched to ‘trivial-build-system’ when I realised
> that most phases in %standard-phases were ill suited for building
> inferno.  I will try to rewrite the definition using ‘gnu-build-system’.
> 
> >> >              ;; build mk
> >> >              (invoke "./makemk.sh")
> >> 
> >> It would be ideal if we had a separate package for ‘mk’ (I suppose it
> >> can run on POSIX systems, right?).
> 
> @Ludo:  This is Plan 9's mk (their version of make), which, I believe,
> can run on POSIX systems.  Though, if we were to add mk to Guix, i would
> rather package the one provided by Plan 9 from Userspace [7] since that
> project seems to be more active than Inferno.
> 
> > I can finish my mk package and send it in.
> > My mk is the canonical set of mk files as used by bmake.
> > Sources are from http://crufty.net/help/sjg/mk-files.htm
> > and/or places linked from there.
> >
> > If this matches the mk mentioned here, I can create this patch.
> 
> @Nils:  Your mk package seems to be unrelated to Plan 9's mk.

Aha! I have it in 9base, which I have also packaged. At least according
to the README in the 9base/mk/ folder it should be compatible.

Now I don't know if we want all of 9base... I would leave analyis of
that to you. If 9base on its own does not work, I can extract mk or
create a package which just builds mk and gets rid of the other files.

https://git.suckless.org/9base

I haven't checked but would assume that differences exist between
9base (altough it states plan9 + inferno os) and inferno os mk.

> >> Once you’ve double-checked the licensing and trademark situation, I
> >> think you can go ahead and submit it as a patch (or two patches, with
> >> ‘mk’ separately).
> >> 
> >> Thanks!
> >> 
> >> Ludo’.
> >> 
> 
> Greetings,
> 
> Diego
> 
> 
> [1]: 


> 
> [2]: https://lists.gnu.org/archive/html/bug-guix/2018-10/msg00010.html
> [3]: http://inferno-os.org/inferno/licence.html
> [4]: 


> 
> [5]: https://www.gnu.org/licenses/license-list.html#lucent102
> [6]: https://www.ueber.net/who/mjl/inferno/getting-started.html
> [7]: https://9fans.github.io/plan9port/

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

* Re: Packaging Inferno
  2018-10-07  9:49 ` Efraim Flashner
@ 2018-10-11 13:30   ` Diego Nicola Barbato
  2018-10-11 13:44     ` Efraim Flashner
  0 siblings, 1 reply; 12+ messages in thread
From: Diego Nicola Barbato @ 2018-10-11 13:30 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

Hello Efraim,

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

> Not a big fan of using the trivial build system for something that ends
> up with this many lines, but I built it on my aarch64 board and here's
> the diff I came up with to make it work.

Thanks for your feedback and especially for testing it on aarch64.  I am
currently rewriting the definition using the ‘gnu-build-system’.

Since I am going to include your modifications, should I add a copyright
line for you?  (I am asking since I am relatively new to this and I am
not sure how such things are handled correctly.)

Greetings,

Diego

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

* Re: Packaging Inferno
  2018-10-11 13:30   ` Diego Nicola Barbato
@ 2018-10-11 13:44     ` Efraim Flashner
  0 siblings, 0 replies; 12+ messages in thread
From: Efraim Flashner @ 2018-10-11 13:44 UTC (permalink / raw)
  To: Diego Nicola Barbato; +Cc: guix-devel

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

On Thu, Oct 11, 2018 at 03:30:07PM +0200, Diego Nicola Barbato wrote:
> Hello Efraim,
> 
> Efraim Flashner <efraim@flashner.co.il> writes:
> 
> > Not a big fan of using the trivial build system for something that ends
> > up with this many lines, but I built it on my aarch64 board and here's
> > the diff I came up with to make it work.
> 
> Thanks for your feedback and especially for testing it on aarch64.  I am
> currently rewriting the definition using the ‘gnu-build-system’.
> 
> Since I am going to include your modifications, should I add a copyright
> line for you?  (I am asking since I am relatively new to this and I am
> not sure how such things are handled correctly.)
> 

I may already have a copyright line in the file, I'm not sure. But
either way I'm ok with no attribution, I see it more as "I've tested it
out on my board(s)" and less of "I've contributed".

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

* Re: Packaging Inferno
  2018-10-09 17:09     ` Diego Nicola Barbato
  2018-10-09 17:55       ` Nils Gillmann
@ 2018-10-16 12:03       ` Ludovic Courtès
  2018-10-21 13:59         ` Diego Nicola Barbato
  1 sibling, 1 reply; 12+ messages in thread
From: Ludovic Courtès @ 2018-10-16 12:03 UTC (permalink / raw)
  To: Diego Nicola Barbato; +Cc: guix-devel

Hi Diego,

Sorry for the delay!

Diego Nicola Barbato <dnbarbato@posteo.de> skribis:

> Nils Gillmann <ng0@n0.is> writes:
>
>> Ludovic Courtès transcribed 1.9K bytes:
>>> Hello Diego,
>>> 
>>> Diego Nicola Barbato <dnbarbato@posteo.de> skribis:
>>> 
>>> > I have written a package definition for Inferno and I would like to know
>>> > if it would make sense to add it to Guix.  I am asking because I am not
>>> > sure if it is compatible with the FSDG (bundled fonts, trademarks, ...)
>>> > and if it would be of any use to anyone.
>>> 
>>> Removing the proprietary(?) fonts like you did sounds like the right
>
> @Ludo:  The fonts I removed are copyright Bigelow & Holmes.  They are
> licensed in a way that forbids them from being modified and distributed
> except as part of Inferno (or software derived from Inferno) [1].

OK, good.

>>> thing to do.  As for trademarks, please see
>>> <https://www.gnu.org/distros/free-system-distribution-guidelines.html#trademarks>
>>> to determine whether there’s a problem at all.
>
> @Ludo:  Judging from the link there seems to be no problem with the
> trademarks after all.  The bundled fonts (the ones I did not remove),
> however, are provided in a format native to Inferno (and Plan 9) and can
> not be rebuilt from source, which might be a problem according to this
> [2] thread.

Sometimes TTF files are considered source, so it really depends.  Unless
there’s evidence that there exists another source for these fonts, I’d
say we can assume it’s fine, possibly with a comment.

Do you know whether other FSDG distros and Debian provide these fonts?

>>> Could you also check whether all the code is GPLv2+ like the ‘license’
>>> field suggests?
>
> @Ludo:  According to the NOTICE files scattered through the source tree
> and the Inferno home page [3] different parts of Inferno are licensed
> under GPLv2+, LGPLv2+, Expat (MIT-template), Lucent Public License 1.02
> and Freetype.
> Am I right to assume that I have to mention all of them in the ‘license’
> field even though the NOTICE in the root of the source tree [4] says
> that the "collection" is governed by the GPLv2+?  

Yes, but you can leave a comment explaining that the combined work is
effectively GPLv2+.

> I could not find the Lucent Public License [5] in the (guix licenses)
> module.  Should I add it or should I use ‘non-copyleft’?

You can use ‘non-copyleft’ in that case, with a reference to
<https://www.gnu.org/licenses/license-list.html#lucent102>.

Note that the page above says that the Lucent PL is incompatible with
the GPL.  Are we combining GPL code with Lucent code here?

>>> Do I get it right that the build result is a script that launches
>>> Inferno as a GNU/Linux process?  It seems like it could be useful.
>
> @Ludo: That is right.  I got the script from here [6].  It starts the
> window manager and logs in as the current user; it is supposed to
> provide a convenient entry point to start exploring the system.
> Alongside this script in %out/bin/ there is also a symlink to the emu
> binary which is installed by ‘mk install’ under
> %out/usr/inferno/Linux/386/bin/ (Linux/arm/bin on arm machines).  This
> directory contains several other executables.  I am considering making
> some of them (like the Limbo compiler) available under %out/bin in the
> same way as emu. 

Sounds good.  Note that, if possible, we should stick to the usual file
system layout (that is OUT/share, OUT/lib, OUT/bin, etc. and not
OUT/usr.)  Though if keeping the /usr/inferno layout style is really
important, we can make an exception.

> @Ludo:  My first attempt at writing the package definition used
> ‘gnu-build-system’. I switched to ‘trivial-build-system’ when I realised
> that most phases in %standard-phases were ill suited for building
> inferno.  I will try to rewrite the definition using ‘gnu-build-system’.

OK.  Note that you can always remove the unnecessary phases.

>>> >              ;; build mk
>>> >              (invoke "./makemk.sh")
>>> 
>>> It would be ideal if we had a separate package for ‘mk’ (I suppose it
>>> can run on POSIX systems, right?).
>
> @Ludo:  This is Plan 9's mk (their version of make), which, I believe,
> can run on POSIX systems.  Though, if we were to add mk to Guix, i would
> rather package the one provided by Plan 9 from Userspace [7] since that
> project seems to be more active than Inferno.

OK.  That can be done separately if you prefer, in which case just leave
a TODO comment about the packaging of mk from Plan 9 from Userspace.

Thanks for your reply!

Ludo’.

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

* Re: Packaging Inferno
  2018-10-09 17:55       ` Nils Gillmann
@ 2018-10-17 17:35         ` Diego Nicola Barbato
  0 siblings, 0 replies; 12+ messages in thread
From: Diego Nicola Barbato @ 2018-10-17 17:35 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel

Hello Nils,

Nils Gillmann <ng0@n0.is> writes:

> Diego Nicola Barbato transcribed 12K bytes:
>> Hello,
>> 
>> Thank you for your feedback.
>> 
>> Nils Gillmann <ng0@n0.is> writes:
>> 
>> > Ludovic Courtès transcribed 1.9K bytes:
>> >> Hello Diego,
>> >> 
>> >> Diego Nicola Barbato <dnbarbato@posteo.de> skribis:

[...snip...]

>> >> >              ;; build mk
>> >> >              (invoke "./makemk.sh")
>> >> 
>> >> It would be ideal if we had a separate package for ‘mk’ (I suppose it
>> >> can run on POSIX systems, right?).
>> 
>> @Ludo:  This is Plan 9's mk (their version of make), which, I believe,
>> can run on POSIX systems.  Though, if we were to add mk to Guix, i would
>> rather package the one provided by Plan 9 from Userspace [7] since that
>> project seems to be more active than Inferno.
>> 
>> > I can finish my mk package and send it in.
>> > My mk is the canonical set of mk files as used by bmake.
>> > Sources are from http://crufty.net/help/sjg/mk-files.htm
>> > and/or places linked from there.
>> >
>> > If this matches the mk mentioned here, I can create this patch.
>> 
>> @Nils:  Your mk package seems to be unrelated to Plan 9's mk.
>
> Aha! I have it in 9base, which I have also packaged. At least according
> to the README in the 9base/mk/ folder it should be compatible.
>
> Now I don't know if we want all of 9base... I would leave analyis of
> that to you. If 9base on its own does not work, I can extract mk or
> create a package which just builds mk and gets rid of the other files.
>
> https://git.suckless.org/9base
>
> I haven't checked but would assume that differences exist between
> 9base (altough it states plan9 + inferno os) and inferno os mk.

AFAICT it should be possible to build inferno using 9base's mk.  In fact
I think 9base is better suited for this purpose than Plan 9 from
Userspace (plan9port), which was where I suggested we should get mk
from, since it is much smaller.

I can not tell from the source if it will be necessary to extract mk, so
I will try to build inferno using 9base's mk as soon as you send in your
patch and get back to you should I encounter any problems caused by one
of the other commands provided by 9base.

Thanks!

Diego

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

* Re: Packaging Inferno
  2018-10-16 12:03       ` Ludovic Courtès
@ 2018-10-21 13:59         ` Diego Nicola Barbato
  2018-10-24 12:58           ` Ludovic Courtès
  0 siblings, 1 reply; 12+ messages in thread
From: Diego Nicola Barbato @ 2018-10-21 13:59 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

Hello Ludo,

I have sent a patch incorporating most of your feedback to
guix-patches@gnu.org (bug#33080).

ludo@gnu.org (Ludovic Courtès) writes:

> Hi Diego,
>
> Sorry for the delay!

No problem (my replies are not quite instantaneous either).

> Diego Nicola Barbato <dnbarbato@posteo.de> skribis:
>
>> Nils Gillmann <ng0@n0.is> writes:
>>
>>> Ludovic Courtès transcribed 1.9K bytes:
>>>> Hello Diego,
>>>> 
>>>> Diego Nicola Barbato <dnbarbato@posteo.de> skribis:

[...snip...]

>>>> thing to do.  As for trademarks, please see
>>>> <https://www.gnu.org/distros/free-system-distribution-guidelines.html#trademarks>
>>>> to determine whether there’s a problem at all.
>>
>> @Ludo:  Judging from the link there seems to be no problem with the
>> trademarks after all.  The bundled fonts (the ones I did not remove),
>> however, are provided in a format native to Inferno (and Plan 9) and can
>> not be rebuilt from source, which might be a problem according to this
>> [2] thread.
>
> Sometimes TTF files are considered source, so it really depends.  Unless
> there’s evidence that there exists another source for these fonts, I’d
> say we can assume it’s fine, possibly with a comment.

I have found no evidence that there exists another source.

> Do you know whether other FSDG distros and Debian provide these fonts?

They do not provide these exact fonts but those from which some of these
are derived (misc and jis are "based" on X fonts, vera is probably based
on Bitstream Vera).
It is harder to find the origin of the other fonts as there is little
information about them (big5 was "provided by students at the University
of Hong Kong" according to its README; courier, gb, and minitel do not
contain any information).  The remaining fonts just reuse "subfonts"
from the other directories.

>>>> Could you also check whether all the code is GPLv2+ like the ‘license’
>>>> field suggests?
>>
>> @Ludo:  According to the NOTICE files scattered through the source tree
>> and the Inferno home page [3] different parts of Inferno are licensed
>> under GPLv2+, LGPLv2+, Expat (MIT-template), Lucent Public License 1.02
>> and Freetype.
>> Am I right to assume that I have to mention all of them in the ‘license’
>> field even though the NOTICE in the root of the source tree [4] says
>> that the "collection" is governed by the GPLv2+?  
>
> Yes, but you can leave a comment explaining that the combined work is
> effectively GPLv2+.
>
>> I could not find the Lucent Public License [5] in the (guix licenses)
>> module.  Should I add it or should I use ‘non-copyleft’?
>
> You can use ‘non-copyleft’ in that case, with a reference to
> <https://www.gnu.org/licenses/license-list.html#lucent102>.
>
> Note that the page above says that the Lucent PL is incompatible with
> the GPL.  Are we combining GPL code with Lucent code here?

AFAICT LPL code (libmp libsec) is combined with GPL code when building
emu.  There is some more LPL code in the os directory, which is only
needed for building native inferno, and in the appl and module
directories, which contain Limbo code which is run on inferno but not
used to build it.
The NOTICE says that all licenses are compatible with the GPLv2 but that
is apparently incorrect.
As I am not very familiar with software licenses I do not know what to
do about this.  According to the GPL FAQ [*] it is possible to add an
exception when using incompatible libraries, but I am hesitant to
suggest this in a bug report to upstream because I do not know if that
applies here.

Is this a blocker?

>>>> Do I get it right that the build result is a script that launches
>>>> Inferno as a GNU/Linux process?  It seems like it could be useful.
>>
>> @Ludo: That is right.  I got the script from here [6].  It starts the
>> window manager and logs in as the current user; it is supposed to
>> provide a convenient entry point to start exploring the system.
>> Alongside this script in %out/bin/ there is also a symlink to the emu
>> binary which is installed by ‘mk install’ under
>> %out/usr/inferno/Linux/386/bin/ (Linux/arm/bin on arm machines).  This
>> directory contains several other executables.  I am considering making
>> some of them (like the Limbo compiler) available under %out/bin in the
>> same way as emu. 
>
> Sounds good.  Note that, if possible, we should stick to the usual file
> system layout (that is OUT/share, OUT/lib, OUT/bin, etc. and not
> OUT/usr.)  Though if keeping the /usr/inferno layout style is really
> important, we can make an exception.

The layout style is not important; I only used OUT/usr/inferno because
/usr/inferno is the default in mkconfig.  I have changed this to
OUT/share/inferno, which matches what the Nix package [†] does.

[...snip...]

> Thanks for your reply!
>
> Ludo’.

Thanks for the feedback!

Diego

[*]: https://www.gnu.org/licenses/gpl-faq.html#GPLIncompatibleLibs
[†]: https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/inferno/default.nix

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

* Re: Packaging Inferno
  2018-10-21 13:59         ` Diego Nicola Barbato
@ 2018-10-24 12:58           ` Ludovic Courtès
  0 siblings, 0 replies; 12+ messages in thread
From: Ludovic Courtès @ 2018-10-24 12:58 UTC (permalink / raw)
  To: Diego Nicola Barbato; +Cc: guix-devel

Hi Diego,

Diego Nicola Barbato <dnbarbato@posteo.de> skribis:

> I have sent a patch incorporating most of your feedback to
> guix-patches@gnu.org (bug#33080).

Thank you, and sorry that review takes some time.  I guess that’s the
price to pay when submitting non-trivial packages.  ;-)

>> Do you know whether other FSDG distros and Debian provide these fonts?
>
> They do not provide these exact fonts but those from which some of these
> are derived (misc and jis are "based" on X fonts, vera is probably based
> on Bitstream Vera).
> It is harder to find the origin of the other fonts as there is little
> information about them (big5 was "provided by students at the University
> of Hong Kong" according to its README; courier, gb, and minitel do not
> contain any information).  The remaining fonts just reuse "subfonts"
> from the other directories.

OK.  Courier is a standard PostScript font (with a free implementation
by the URW++ foundry), so it’s probably fine.  I don’t know about the
others; it’s probably safe, but perhaps you could ask for advice on the
GNU/Linux-libre mailing list?  (See
<https://lists.nongnu.org/mailman/listinfo/gnu-linux-libre>.)

>> Note that the page above says that the Lucent PL is incompatible with
>> the GPL.  Are we combining GPL code with Lucent code here?
>
> AFAICT LPL code (libmp libsec) is combined with GPL code when building
> emu.  There is some more LPL code in the os directory, which is only
> needed for building native inferno, and in the appl and module
> directories, which contain Limbo code which is run on inferno but not
> used to build it.
> The NOTICE says that all licenses are compatible with the GPLv2 but that
> is apparently incorrect.
> As I am not very familiar with software licenses I do not know what to
> do about this.  According to the GPL FAQ [*] it is possible to add an
> exception when using incompatible libraries, but I am hesitant to
> suggest this in a bug report to upstream because I do not know if that
> applies here.
>
> Is this a blocker?

What you’re writing about libmp/libsec linked into ‘emu’ sounds like it
could be a GPL violation.  Again, to be sure, I’d suggest getting
feedback from the GNU/Linux-libre mailing list (in a separate thread.)

>> Sounds good.  Note that, if possible, we should stick to the usual file
>> system layout (that is OUT/share, OUT/lib, OUT/bin, etc. and not
>> OUT/usr.)  Though if keeping the /usr/inferno layout style is really
>> important, we can make an exception.
>
> The layout style is not important; I only used OUT/usr/inferno because
> /usr/inferno is the default in mkconfig.  I have changed this to
> OUT/share/inferno, which matches what the Nix package [†] does.

Sounds good.

Thank you!

Ludo’.

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

end of thread, other threads:[~2018-10-24 12:59 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-10-05  8:11 Packaging Inferno Diego Nicola Barbato
2018-10-07  9:49 ` Efraim Flashner
2018-10-11 13:30   ` Diego Nicola Barbato
2018-10-11 13:44     ` Efraim Flashner
2018-10-08 13:00 ` Ludovic Courtès
2018-10-08 13:47   ` Nils Gillmann
2018-10-09 17:09     ` Diego Nicola Barbato
2018-10-09 17:55       ` Nils Gillmann
2018-10-17 17:35         ` Diego Nicola Barbato
2018-10-16 12:03       ` Ludovic Courtès
2018-10-21 13:59         ` Diego Nicola Barbato
2018-10-24 12:58           ` Ludovic Courtès

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.