Tobias Geerinckx-Rice <me@tobias.gr> writes:
> Gregory,
>
> I changed the last mentions of 512 MiB to 1 GiB for exactly this
> reason, but that was in July…
>
> Gregory Hablutzel 写道:
>> Using recommended settings for the Qemu VM of 512 MB ram from
>> https://guix.gnu.org/manual/en/html_node/Running-Guix-in-a-VM.html,
>> guix pull fails.
>
> The string ‘512’ doesn't occur anywhere on that page. Could you
> clarify?
Can't find 512 mentioned in our current manual, except for the hurd VM
service. Closing for now.
--
Thanks,
Maxim
[-- Attachment #1: Type: text/plain, Size: 657 bytes --] The package "rclone" has not been updated in a long time. I did not find any open bug reports about it. I was brave and tried to run the latest myself using: `guix build rclone --with-source=rclone@1.66.0=./rclone-1.66.0.tar.gz` With the latest source tarball from the Github release. The recipe (in sync.scm) uses a tar download rather than a git-fetch for some reason, so I wasn't able to reuse the recipe with --with-branch. (Btw --with-version would be nice to have, since the version's download URL is done correctly in the recipe.) Unfortunately I ran into some obscure build error and don't know how to proceed as this is outside of my familiarity. [-- Attachment #2: Type: text/html, Size: 1548 bytes --]
Hello, Thanks for the submission! On Mon, Mar 18, 2024 at 11:38 PM, Daniel Ziltener wrote: > (native-inputs > `(,@(if (target-hurd?) > '() > `(("gobject-introspection" ,gobject-introspection))) > + ("gcc-13" ,gcc-13) > + ("gtk-doc" ,gtk-doc) Note that this is a circular dependency as, gtk-doc depends on cairo currently: --8<---------------cut here---------------start------------->8--- $ guix graph --path gtk-doc cairo gtk-doc@1.33.2 dblatex@0.3.12 imagemagick@6.9.12-4 pango@1.50.10 cairo@1.16.0 --8<---------------cut here---------------end--------------->8--- Please see <https://issues.guix.gnu.org/69495> for my submission as well. Since it has been a couple of weeks, I'll likely push that version on mesa-updates for testing soon, but comments welcome. John
Thanks Owen. I used the .iso image in the QEMU install. I will Run `guix
gc -d` to delete all old generations. I have no need to rollback (yet!)
I'm not using VBox as I have in the past, wanting to using FOSS apps.
I'll keep track of disk usage. Luckily this is experimental and not a
production set-up.
On 3/18/24 04:48PM, Owen T. Heisler wrote:
> On 3/18/24 15:56, Brian O'Keefe wrote:
>> I've been installing and reinstalling the latest GUIX OS in AQEMU.
>
>> yesterday I got a warning from my Ubuntu host that my HD was
>> dangerously low.
>
>> I saw that my ~/.aqemu folder was packed and the culprit was the
>> virtual GUIX machine which had far exceeded its 25GB capacity.
>
> If you created a 25 GB hard drive with AQEMU (that's a QEMU front-end,
> right?), then the `guix.qcow2` hard drive image shouldn't get much
> bigger than 25 GB. However if AQEMU is using qcow2 snapshots, then the
> image will grow as much as necessary to keep all the snapshot data.
>
>> It also seems that with each "guix pull" or "guix refresh" or "guix
>> upgrade" more and more data is being stored.
> Run `guix gc -d` to delete all old generations. You will not be able
> to roll-back the Guix system to a previous generation once you have
> deleted it.
>
>> Why that affects my host OS, I don't know
> Yeah, that seems odd. The only thing that comes to my mind is qcow2
> snapshots as I mentioned above.
>
>
--
[-- Attachment #1: Type: text/plain, Size: 471 bytes --] Actually, after poking around further, it seems it's not builds, but only this shebang I've been using where it happens. ghc-turtle depends on ghc-foldl which depends on ghc-profunctors. #!/run/current-system/profile/bin/env -S guix shell ghc@9.2 ghc-turtle -- runhaskell But, packages I use like kmonad use depend on packages that still list the store path with the empty .so as a reference, along with other Haskell programs. I am not really sure how they still work. [-- Attachment #2: Type: text/html, Size: 1270 bytes --]
[-- Attachment #1: Type: text/plain, Size: 0 bytes --] [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: 0001-gnu-Add-python-ical2orgpy.patch --] [-- Type: text/x-patch, Size: 2140 bytes --] From edfc5be31a37f0c9ae0c5e7297a237645ab92e32 Mon Sep 17 00:00:00 2001 From: Benjamin Slade <slade@lambda-y.net> Date: Mon, 18 Mar 2024 17:52:06 -0500 Subject: [PATCH] gnu: Add python-ical2orgpy. * gnu/packages/python-xyz.scm (python-ical2orgpy): New variable --- gnu/packages/python-xyz.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 1f3272e..20ead67 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -17623,6 +17623,36 @@ (define-public python-execnet (home-page "https://codespeak.net/execnet/") (license license:expat)))) +(define-public python-ical2orgpy + (package + (name "python-ical2orgpy") + (version "0.5") + (source + (origin + (method url-fetch) + (uri (pypi-uri "ical2orgpy" version)) + (sha256 + (base32 "0a2ai78jzn250s1dlsimsfp6035421nrabj08xdlgsh7mb82gkap")))) + (build-system python-build-system) + (arguments + ;; Broken tests or cyclic dependecies with other packages. + '(#:phases (modify-phases %standard-phases + (delete 'sanity-check)) + #:tests? #f)) + (propagated-inputs (list python-click python-icalendar python-pytz + python-tzlocal python-recurring-ical-events)) + (home-page "https://github.com/ical2org-py/ical2org.py") + (synopsis "Convert ical .ics file to org-mode") + (description + "This python script converts an ical calendar (for instance, as exported + from google calendar) into an org-mode document. It is conceived as a replacement of + the awk script located at +@url{https://orgmode.org/worg/org-tutorials/org-google-sync.html}. + The main difference is that ical2orgpy correctly manages recurring events of + @dfn{yearly}, @dfn{daily} and @dfn{weekly} types. ical2orgpy duplicates all recurring + events falling into a specified time-frame into the exported org-document.") + (license license:gpl3+))) + (define-public python-recurring-ical-events (package (name "python-recurring-ical-events") -- 2.41.0
--- gnu/packages/gtk.scm | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 2dcfa0edc1..9afc692e8d 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -157,12 +157,11 @@ (define-public appmenu-gtk-module "This package provides a global menu applet for use with desktop panels such as mate-panel and xfce4-panel.") (home-page "https://gitlab.com/vala-panel-project/vala-panel-appmenu") - (license (list license:lgpl3)))) (define-public cairo (package (name "cairo") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) @@ -170,17 +169,16 @@ (define-public cairo (string-append "https://cairographics.org/releases/cairo-" version ".tar.xz")) (sha256 - (base32 "0c930mk5xr2bshbdljv005j3j8zr47gqmkry3q6qgvqky6rjjysy")) - (patches (search-patches - "cairo-CVE-2018-19876.patch" - "cairo-CVE-2020-35492.patch")))) - (build-system glib-or-gtk-build-system) - (outputs '("out" "doc")) + (base32 + "0r0by563s75xyzz0d0j1nmjqmdrk2x9agk7r57p3v8vqp4v0ffi4")))) + (build-system meson-build-system) (arguments `(#:tests? #f ; see http://lists.gnu.org/archive/html/bug-guix/2013-06/msg00085.html #:configure-flags (list - "--disable-static" + "-Dgtk_doc=true" + "-Dsymbol-lookup=disabled" + "-Dspectre=disabled" ;; XXX: To be enabled. ;; "--enable-gallium=yes" ;; "--enable-gl=yes" @@ -189,15 +187,14 @@ (define-public cairo ;; "--enable-cogl=yes" ;; "--enable-directfb=yes" ;; "--enable-vg=yes" - "--enable-tee=yes" ;needed for GNU IceCat - "--enable-xml=yes" ;for cairo-xml support - (string-append "--with-html-dir=" - (assoc-ref %outputs "doc") - "/share/gtk-doc/html")))) + ))) (native-inputs `(,@(if (target-hurd?) '() `(("gobject-introspection" ,gobject-introspection))) + ("gcc-13" ,gcc-13) + ("gtk-doc" ,gtk-doc) + ("docbook-xsl" ,docbook-xsl) ("pkg-config" ,pkg-config) ("python" ,python-wrapper))) (inputs @@ -236,6 +233,7 @@ (define-public cairo (list license:lgpl2.1+ license:mpl1.1)))) + (license (list license:lgpl3)))) (define-public cairo-sans-poppler ;; Variant used to break the dependency cycle between Poppler and Cairo. -- 2.41.0
[-- Attachment #1: Type: text/plain, Size: 0 bytes --] [-- Attachment #2: 0001-gnu-Add-python-x-wr-timezone.patch --] [-- Type: text/x-patch, Size: 2327 bytes --] From f93366cb785f4783efe3c5e4027ae2062f0f87a3 Mon Sep 17 00:00:00 2001 From: Benjamin Slade <slade@lambda-y.net> Date: Mon, 18 Mar 2024 17:47:03 -0500 Subject: [PATCH] gnu: Add python-x-wr-timezone. * gnu/packages/<module>.scm (python-x-wr-timezone): New variable --- gnu/packages/python-xyz.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 7ed8c94..17ce6ef 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -149,6 +149,7 @@ ;;; Copyright © 2024 Timothee Mathieu <timothee.mathieu@inria.fr> ;;; Copyright © 2024 Ian Eure <ian@retrospec.tv> ;;; Copyright © 2024 Adriel Dumas--Jondeau <leirda@disroot.org> +;;; Copyright © 2024 Benjamin Slade <slade@lambda-y.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -17622,6 +17623,33 @@ (define-public python-execnet (home-page "https://codespeak.net/execnet/") (license license:expat)))) +(define-public python-x-wr-timezone + (package + (name "python-x-wr-timezone") + (version "0.0.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "x_wr_timezone" version)) + (sha256 + (base32 "0j5zjvrshn7smq6cgbh7l66dl64wqs18cfyfnq1np1y00g320pha")))) + (build-system python-build-system) + (arguments + ;; Broken tests or cyclic dependecies with other packages. + '(#:phases (modify-phases %standard-phases + (delete 'sanity-check)) + #:tests? #f)) + (propagated-inputs (list python-icalendar python-pytz)) + (home-page "https://github.com/niccokunzmann/x-wr-timezone") + (synopsis "Handling of non-standard X-WR-TIMEZONE icalendar property") + (description + "Some calendar providers introduce the non-standard X-WR-TIMEZONE +parameter to ICS calendar files. Strict interpretations according to RFC 5545 ignore + the X-WR-TIMEZONE parameter. This causes the times of the events to differ from those + which make use of X-WR-TIMEZONE. This module aims to bridge the gap by converting + calendars using X-WR-TIMEZONE to a strict RFC 5545 calendars.") + (license license:lgpl3+))) + (define-public python-icalendar (package (name "python-icalendar") -- 2.41.0
[-- Attachment #1: Type: text/plain, Size: 1 bytes --] [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: 0001-gnu-Add-python-recurring-ical-events.patch --] [-- Type: text/x-patch, Size: 1838 bytes --] From f7ea1140bb2937dd2d41f858ca8a39cd4b423e76 Mon Sep 17 00:00:00 2001 From: Benjamin Slade <slade@lambda-y.net> Date: Mon, 18 Mar 2024 17:50:14 -0500 Subject: [PATCH] gnu: Add python-recurring-ical-events. * gnu/packages/python-xyz.scm (python-recurring-ical-events): New variable --- gnu/packages/python-xyz.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 17ce6ef..1f3272e 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -17623,6 +17623,32 @@ (define-public python-execnet (home-page "https://codespeak.net/execnet/") (license license:expat)))) +(define-public python-recurring-ical-events + (package + (name "python-recurring-ical-events") + (version "2.1.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "recurring_ical_events" version)) + (sha256 + (base32 "00k4l800j2d3zfqhxjlzjk0b6493wqhmg4r58xsp12sx2ia2sxla")))) + (build-system python-build-system) + (arguments + ;; Broken tests or cyclic dependecies with other packages. + '(#:phases (modify-phases %standard-phases + (delete 'sanity-check)) + #:tests? #f)) + (propagated-inputs (list python-x-wr-timezone python-icalendar python-pytz)) + (home-page "https://github.com/niccokunzmann/python-recurring-ical-events") + (synopsis + "Python library for recurrence of ical events based on icalendar") + (description + "ICal has some complexity to it: Events, TODOs and Journal entries can + be repeated, removed from the feed and edited later on. +This tool takes care of these circumstances.") + (license license:lgpl3+))) + (define-public python-x-wr-timezone (package (name "python-x-wr-timezone") -- 2.41.0
On 3/18/24 15:56, Brian O'Keefe wrote: > I've been installing and > reinstalling the latest GUIX OS in AQEMU. > yesterday I got a warning from > my Ubuntu host that my HD was dangerously low. > I saw that > my ~/.aqemu folder was packed and the culprit was the virtual GUIX > machine which had far exceeded its 25GB capacity. If you created a 25 GB hard drive with AQEMU (that's a QEMU front-end, right?), then the `guix.qcow2` hard drive image shouldn't get much bigger than 25 GB. However if AQEMU is using qcow2 snapshots, then the image will grow as much as necessary to keep all the snapshot data. > It also seems that with each "guix pull" or "guix refresh" or > "guix upgrade" more and more data is being stored. Run `guix gc -d` to delete all old generations. You will not be able to roll-back the Guix system to a previous generation once you have deleted it. > Why that affects my host OS, I don't know Yeah, that seems odd. The only thing that comes to my mind is qcow2 snapshots as I mentioned above.
--- gnu/packages/freedesktop.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 20cf2510d2..b919b50d73 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -1242,7 +1242,7 @@ (define-public wayland (define-public wayland-protocols (package (name "wayland-protocols") - (version "1.32") + (version "1.33") (source (origin (method url-fetch) (uri (string-append "https://gitlab.freedesktop.org/wayland/" @@ -1250,7 +1250,7 @@ (define-public wayland-protocols name "-" version ".tar.xz")) (sha256 (base32 - "04dsn79409mryxs6maq9kfhca97gvl3pr1ggjnv9d0hc6jfpjnbl")))) + "0flnqfc8npzn6rxsw4afpr8yifwsn5kq81327yh62vhd145wbw4l")))) (build-system meson-build-system) (inputs (list wayland)) -- 2.41.0
[-- Attachment #1: Type: text/plain, Size: 1399 bytes --] When attempting to build a package dependent on ghc-profunctors, I get this message: /gnu/store/3x7nzknpil5zrq13pnswvn5c4yl1cwj4-ghc-profunctors-5.6.2/lib/x86_64-linux-ghc-9.2.5/libHSprofunctors-5.6.2-FoCtSorI5di3GxmpY9TPlQ-ghc9.2.5.so: file too short I get the following doing ls on the file $ ls -l /gnu/store/3x7nzknpil5zrq13pnswvn5c4yl1cwj4-ghc-profunctors-5.6.2/lib/x86_64-linux-ghc-9.2.5/libHSprofunctors-5.6.2-FoCtSorI5di3GxmpY9TPlQ-ghc9.2.5.so -r-xr-xr-x 1 root root 0 Dec 31 1969 /gnu/store/3x7nzknpil5zrq13pnswvn5c4yl1cwj4-ghc-profunctors-5.6.2/lib/x86_64-linux-ghc-9.2.5/libHSprofunctors-5.6.2-FoCtSorI5di3GxmpY9TPlQ-ghc9.2.5.so I have fixed this problem in the past by using guix gc to delete everything dependent on ghc-profunctors, then ghc-profunctors itself. After that I reinstalled the deleted items with substitutes off and it was no longer a 0 byte file. Following a system and home reconfigure using substitutes the ghc-profunctors .so is a 0 byte file again. It took me awhile to notice this time around so now it would be too difficult to perform my initial fix again since I've gone through several generations with this bad file. If there is a way to force this one package to rebuild without substitutes, or other work-arounds I would love to hear them, but more than that I'd be interested in a fix if this is a problem I think originates with the substitute. Thanks. [-- Attachment #2: Type: text/html, Size: 2704 bytes --]
--- gnu/packages/freedesktop.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 20cf2510d2..3fb89dbc5a 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -573,7 +573,7 @@ (define-public libinput ;; Updating this will rebuild over 700 packages through libinput-minimal. (package (name "libinput") - (version "1.22.1") + (version "1.25.0") (source (origin (method git-fetch) (uri (git-reference @@ -581,7 +581,7 @@ (define-public libinput (commit version))) (sha256 (base32 - "17a5qlym2d6lg2j8fdpxda9k7x5zr35flb4wlj1bz7h0mnkh8326")))) + "0nzz76lgjkj8la5icmv9zm43gb3d12ygjcilc4nqh25ywpj58qbk")))) (build-system meson-build-system) (arguments `(#:configure-flags '("-Ddocumentation=false") -- 2.41.0
Hi MSavoritias,
MSavoritias <email@msavoritias.me> skribis:
> So since the Guix community have agreed to make it welcoming to
> everybody we have to take into account people that will want to change
> their names.
As I wrote earlier, several Guix contributors changed names in the past.
As a project, we always recognized the importance of calling people by
their chosen name and so those changes went smoothly. So 💯 on your
comment above.
Now, I’d invite everyone to slow down on this conversation. There are
important human and technical issues at stake, none of which is new or
specific to Guix or SWH.
Ludo’.
[-- Attachment #1: Type: text/plain, Size: 2196 bytes --] Hi Ian, I don't have the setup required to try running this service but 2 things stand out to me when reading through it. On 3/9/24 21:24, Ian Eure wrote: > +To enable, add this to your home services: > + > +@lisp > +(service home-jellyfin-mpv-shim-service-type #f) > +@end lisp You can add a default-value field to the service definition like so: (define-public home-jellyfin-mpv-shim-service-type (service-type (name 'home-jellyfin-mpv-shim) (default-value #f) (extensions (list (service-extension home-shepherd-service-type jellyfin-mpv-shim-shepherd-service) ;; Ensure 'home-x11-service-type' is instantiated so we ;; can depend on the Shepherd 'x11-display' service. (service-extension home-x11-service-type (const #t)))) (description "Run Jellyfin MPV Shim."))) Then, users can simply use (service home-jellyfish-mpv-shim-service-type) without having to specify #f manually And if the service ever changes in the future and this value becomes useful then you can provide a reasonable default without requiring users to change their code. (https://guix.gnu.org/manual/en/html_node/Service-Reference.html) > + > +The service only starts if @code{jellyfin-mpv-shim} has been configured with a remote server and credentials. This must be done manually, by launching @code{jellyfin-mpv-shim}. After configuring the server, the service will start automatically when you log in. Would it make sense to launch this program automatically if it is not configured? Presumably if someone adds the service then they want to configure a server. The value passed to the service could be used to specify whether or not the program should automatically launch so that users who do not want this behavior can disable it (note that if you decide to implement this then the configuration value should be an instance of a new structure defined to store configuration for this service, not a simple boolean; again, this makes things easier in the future so that if you want to add more fields pre-existing code will still work). Regards, Skyler [-- Attachment #2: Type: text/html, Size: 3136 bytes --]
--- gnu/packages/pciutils.scm | 70 ++++++++++++++++++++------------------- 1 file changed, 36 insertions(+), 34 deletions(-) diff --git a/gnu/packages/pciutils.scm b/gnu/packages/pciutils.scm index 140bbd0e90..b4ec295978 100644 --- a/gnu/packages/pciutils.scm +++ b/gnu/packages/pciutils.scm @@ -38,44 +38,46 @@ (define-module (gnu packages pciutils) (define-public hwdata (package - (name "hwdata") - (version "0.365") ;updated monthly - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/vcrhonek/hwdata") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "00gqx24dyy9l98ygnvx8i087xq8pl9d2393h4d2cm4d5nnvr51d4")))) - (build-system gnu-build-system) - (outputs '("out" "iab" "oui" "pci" "pnp" "usb")) - (arguments - ;; Tests require pciutils, python, podman. Disable to avoid recursive dep. - (list - #:tests? #f - ;; Do not cross-compile, since the package only contains data. - #:target #f - #:configure-flags #~(list (string-append "--datadir=" #$output "/share")) - #:phases - #~(modify-phases %standard-phases - (replace 'install - (lambda _ - (install-file "iab.txt" (string-append #$output:iab "/share/hwdata")) - (install-file "oui.txt" (string-append #$output:oui "/share/hwdata")) - (install-file "pci.ids" (string-append #$output:pci "/share/hwdata")) - (install-file "pnp.ids" (string-append #$output:pnp "/share/hwdata")) - (install-file "usb.ids" (string-append #$output:usb "/share/hwdata"))))))) - (home-page "https://github.com/vcrhonek/hwdata") - (synopsis "Hardware identification and configuration data") - (description "@code{hwdata} contains various hardware identification and + (name "hwdata") + (version "0.380") ;updated monthly + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/vcrhonek/hwdata") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1j7lr67ay4nz737cv4y1hiyqdz03zl5c1vdavr7fd05h92sv91i2")))) + (build-system gnu-build-system) + (native-inputs + (list pkg-config)) + (outputs '("out" "iab" "oui" "pci" "pnp" "usb")) + (arguments + ;; Tests require pciutils, python, podman. Disable to avoid recursive dep. + (list + #:tests? #f + ;; Do not cross-compile, since the package only contains data. + #:target #f + #:configure-flags #~(list (string-append "--datadir=" #$output "/share")) + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'post-install + (lambda _ + (install-file "iab.txt" (string-append #$output:iab "/share/hwdata")) + (install-file "oui.txt" (string-append #$output:oui "/share/hwdata")) + (install-file "pci.ids" (string-append #$output:pci "/share/hwdata")) + (install-file "pnp.ids" (string-append #$output:pnp "/share/hwdata")) + (install-file "usb.ids" (string-append #$output:usb "/share/hwdata"))))))) + (home-page "https://github.com/vcrhonek/hwdata") + (synopsis "Hardware identification and configuration data") + (description "@code{hwdata} contains various hardware identification and configuration data, such as the @file{pci.ids} and @file{usb.ids} databases. Each database is contained in a specific package output, such as the @code{pci} output for @file{pci.ids}, the @code{usb} output for @file{usb.ids}, etc.") - (license (list license:gpl2+ - license:expat)))) ;XFree86 1.0 + (license (list license:gpl2+ + license:expat)))) ;XFree86 1.0 (define-public pciutils (package -- 2.41.0
--- gnu/packages/cpp.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index d451eea2fd..8f8b528071 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -786,6 +786,28 @@ (define-public nlohmann-json (define-public json-modern-cxx (deprecated-package "json-modern-cxx" nlohmann-json)) +(define-public tomlplusplus + (package + (name "tomlplusplus") + (version "3.4.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/marzer/tomlplusplus") + (commit (string-append "v" version)))) + (sha256 + (base32 + "1hvbifzcc97r9jwjzpnq31ynqnj5y93cjz4frmgddnkg8hxmp6w7")))) + (build-system cmake-build-system) + (native-inputs + (list python)) + (arguments + (list #:tests? #f)) + (home-page "https://marzer.github.io/tomlplusplus/") + (synopsis "Header-only TOML config file parser and serializer for C++17") + (description "Header-only TOML config file parser and serializer for C++17.") + (license license:expat))) + (define-public xtl (package (name "xtl") -- 2.41.0
Hello, Ian Eure <ian@retrospec.tv> skribis: > HuggingFace and the StarCoder2 model is in violation of principle 2. > By their own admission, they are including code without clear > licensing[1]: [...] > HuggingFace is also in violation of the third principle, because they > haven’t established a functioning opt-out model[3]. Opting out > requires using non-free software; requests have been sitting for > nearly a year with no action or response; and out of every request > submitted, only a single one has *ever* been honored. > > They appear to be violating free software licenses on large > scale. They are in violation of SWH’s own positions. You may be right, but again, I think we should all wait for SWH folks to weigh in. Many people working there are long-time free software activists; I think we can trust them to take our concerns into consideration, but they may also need more time to reply thoughtfully. Besides, we should probably focus the discussion on what it means for Guix. Ludo’.
[-- Attachment #1: Type: text/plain, Size: 2771 bytes --] On 2024-03-18 12:08:48 +0000, Daniel Littlewood wrote: > Hi everyone, > > I think the discussion so far splits into "should something be done" > and "what can be done". The "should something be done" is easier to > address, I think, so I'll deal with it first. I particularly have > Attila's reply in mind. > > > let's put aside the trans aspect of this question for a moment, > > is it reasonable for me to demand from somebody else to change their memory of my past actions? > > if so, then where is the line? what's the principle here? and what are its implications? > > i sure see some actors out there who can hardly wait to start erasing certain records at the barrel of the law > > I do not doubt that there are bad actors who might misuse the ability > to rewrite history generally. However, this only allows us to dismiss > the technical challenge if there is *no* legitimate use case for > rewriting history, ever, in any circumstance. So rather than removing > the trans aspect of the question to consider every possible use case > (good or bad) of rewriting history, it seems like we only need to come > up with a single case that's sufficient to justify altering someone's > identity, for it to be worth considering if the technical restriction > could be avoided. But then the answer is obvious: Someone might just > sign their commits wrong for whatever reason. Is it valuable for a > user or for guix generally to preserve metadata in the case where a > commit is signed incorrectly? Obviously not. So whether you are > sympathetic to the deadnaming issue or not (personally I am) it seems > like we can dismiss the question "should we do something about it". I do not think the situation is as black and white as you put it here. I believe the question of "should something be done" needs to be further split into two sub-branches. "should something be doable effective from some point in time" and "should something be doable retro-actively". For the former, I think most people here would agree that yes, and there already is a mechanism for that (.mailmap). For the latter, I do not think you can just "dismiss" it. While I agree with you there is a little value in the act of Guix preserving wrong metadata by itself, any history-modifying operation would have quiet large impact on the ecosystem, so that needs to be taken into account as well. And it that light I would say yes, preserving wrong metadata (when viewed from this angle) does have a value. And I say this as a contributor perfectly matching your example of "signed their commits wrong", which is why you will find me in the .mailmap. Have a nice day, Tomas Volf -- There are only two hard things in Computer Science: cache invalidation, naming things and off-by-one errors. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --]
Hello This is very probably simple but not for me. I've been installing and reinstalling the latest GUIX OS in AQEMU. Aside from tweaks needed to conform to the install instructions everything is mostly good. But that's after 8 install attempts! However, yesterday I got a warning from my Ubuntu host that my HD was dangerously low. So I jettisoned as much data as I could in a few minutes, including my several VMs. I saw that my ~/.aqemu folder was packed and the culprit was the virtual GUIX machine which had far exceeded its 25GB capacity. I managed to regain 48GB by deleting it and other data. I am wanting to run GUIX as a VM but this seems to be an issue as I just reinstalled it and just running a "reconfigure" to set my PATH I see that the VM has already swelled to over 20GB. It also seems that with each "guix pull" or "guix refresh" or "guix upgrade" more and more data is being stored. When packages are refreshed or repositories updated and then the system upgraded, aren't the old packages overwritten or dumped, or something? It looks like my new VM HD of 30GB will soon be filled. Why that affects my host OS, I don't know. I'd think that the host would just stay at whatever storage it has left if the VM HD fills up. Many thanks!! --
On Mon, 18 Mar 2024, Kaelyn <kaelyn.alexi@protonmail.com> wrote: > On Monday, March 18th, 2024 at 2:28 AM, Simon Tournier <zimon.toutoune@gmail.com> wrote: [...] >> That’s the double sword of “free software”. :-) > > Hi, > > I want to stress that I am not a lawyer, but my (possiblibly outdated) > understanding of what machine learning models can and cannot do with > regards to their training data, and a reading of parts of the GPL 2 > and 3, suggest that at best the SWH's LLM is in a legal grey area and > at worst directly violates the license of GPL code that it ingests for > training. As such, I don't think it is accurate to say "you cannot > prevent people to use “your” free software for any purposes you > dislike" in response to concerns about automatic inclusion of free > software into LLM training sets. Specifically, my understanding (as of > a few years ago) is that LLMs have difficulty tracing and atttributing > various aspects of its training to specific inputs, which seems to be > in violation of of e.g. Sections 5 and 6 of the GPL. Specific quotes > from those sections https://www.gnu.org/licenses/gpl-3.0.html: I think that the larger point here is that you do not get to choose who use your software and for what purpose. That is the double edges sword of free software. Putting aside LLM for a moment, what if some package in Guix is used for military purpose? Will this software be removed from Guix because one of its user uses it in some unethical way, even though it is also used in an ethical way by others. Will we penalized users for the sake of moral high ground? This raise the question, what is considered ethical and when does ethic become political dogma? [...] -- Olivier Dion oldiob.ca
Simon Tournier <zimon.toutoune@gmail.com> writes: > Hi, > > On sam., 16 mars 2024 at 08:52, Ian Eure <ian@retrospec.tv> > wrote: > >> They appear to be using the archive to build LLMs: >> https://www.softwareheritage.org/2024/02/28/responsible-ai-with-starcoder2/ > > About LLM, Software Heritage made a clear statement: > > https://www.softwareheritage.org/2023/10/19/swh-statement-on-llm-for-code > > Quoting: > > We feel that the question is no longer whether LLMs for > code > should be built. They are already being built, > independently of > what we do, and there is no turning back. The real > question is > how they should be built and whom they should benefit. > > Principles: > > 1. Knowledge derived from the Software Heritage archive > must be > given back to humanity, rather than monopolized for > private > gain. The resulting machine learning models must be made > available > under a suitable open license, together with the > documentation and > toolings needed to use them. > > 2. The initial training data extracted from the Software > Heritage > archive must be fully and precisely identified by, for > example, > publishing the corresponding SWHID identifiers (note > that, in the > context of Software Heritage, public availability of the > initial > training data is a given: anyone can obtain it from the > archive). This will enable use cases such as: studying > biases > (fairness), verifying if a code of interest was present > in the > training data (transparency), and providing appropriate > attribution > when generated code bears resemblance to training data > (credit), > among others. > > 3. Mechanisms should be established, where possible, for > authors to > exclude their archived code from the training inputs > before model > training begins. > > I hope it clarifies your concerns to some extent. > It doesn’t clarify them, but it does illustrate them. HuggingFace and the StarCoder2 model is in violation of principle 2. By their own admission, they are including code without clear licensing[1]: The main difference between the Stack v2 and the Stack v1 is that we include both permissively licensed and unlicensed files. HuggingFace’s StarChat2 Playground[2] also violates this principle, as it outputs code without any license or provenance information; I know, because I tried it. While their own terms of use for StarCoder2 state: Any use of all or part of the code gathered in The Stack v2 must abide by the terms of the original licenses... ...their own playground makes this impossible. HuggingFace is also in violation of the third principle, because they haven’t established a functioning opt-out model[3]. Opting out requires using non-free software; requests have been sitting for nearly a year with no action or response; and out of every request submitted, only a single one has *ever* been honored. They appear to be violating free software licenses on large scale. They are in violation of SWH’s own positions. > Moreover, you wrote: « I want absolutely nothing to do with > them. » > > Maybe there is a misunderstanding on your side about what “free > software” and GPL means because once “free software”, you cannot > prevent > people to use “your” free software for any purposes you dislike. > > If you want to bound the use cases of the software you create, > you need > to explicitly specify that in the license. And if you do, your > software > will not be considered as “free software”. > > That’s the double sword of “free software”. :-) > I am crystal clear on the meaning of free software. I wish to remove it from these models *in order to* keep it free. Thanks, — Ian [1]: https://arxiv.org/html/2402.19173v1 [2]: https://huggingface.co/spaces/HuggingFaceH4/starchat2-playground [3]: https://huggingface.co/datasets/bigcode/the-stack-v2 [4]: https://github.com/bigcode-project/opt-out-v2/issues
> It pretty easy to see who most people that use Guix agree with that
> actually. Check what the CoC says right here
I believe that Guix can continue to achieve a welcoming, harassment-free
environment even if we're not able to support repo authorship history
modification. (Or non-destructive attribution.)
I'm not in favor of (mandatory and global) UUIDs. To my understanding
there are two options for how they could be implemented:
a) UUIDs are used with .mailmap
1) This doesn't solve the problem since .mailmap itself is also
tracked in git. Any old names/aliases are still in the repo.
2) This would mask the name change. To my knowledge unless someone is
actively browsing .mailmap's log, the old name shouldn't appear. I
understand why people may feel that's insufficient though.
3) I don't believe any mechanism stops someone from choosing to
do this already?
b) The UUID->Name mapping is stored out of band (GitLab's unimplemented
solution)
1) This adds additional complication to development (need to fetch
files over a network at some point, be sure you're using the right
UUID even if you change machines, update your out of band copy
regularly, etc).
We may be able to partially resolve b) but I doubt it's possible to turn
it into a "no-impact" process. It almost certainly would add steps for
new contributors. We don't want even more barriers to their first patch.
We could choose to allow people to opt-in to using UUIDs and also use
out-of-band storage, I suppose, but that would only help those who
already suspected they'd want to change their name, but didn't want to
change it at that moment. Otherwise a) would suffice.
Perhaps there are better options I'm not thinking of.
Would UUIDs be valid for the copyright notices at the top of files?
--
Take it easy,
Richard Sent
Making my computer weirder one commit at a time.
* gnu/packages/networking.scm (ngtcp2): Update to 1.4.0. Change-Id: I87a91913dd12affe18d240235c39a5639c798801 --- gnu/packages/networking.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 3a743730a6..9bb1e41e0f 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -4551,7 +4551,7 @@ (define-public nbd (define-public ngtcp2 (package (name "ngtcp2") - (version "1.3.0") + (version "1.4.0") (source (origin (method url-fetch) @@ -4559,7 +4559,7 @@ (define-public ngtcp2 "releases/download/v" version "/" "ngtcp2-" version ".tar.xz")) (sha256 - (base32 "16qkik9185ygkr351a7q59l1rv6dzw51j4f7vkzfvzh385kqdqy3")))) + (base32 "0jnay7m4zkg6v2zcidswv9xbyjgsvjbhwf8ykqjcw1jwkwxl7ldm")))) (build-system gnu-build-system) (arguments (list -- 2.41.0
* gnu/packages/security-token.scm (ccid): Fix cross-compilation. Change-Id: I15c96a57e155742f5a2a8394402ae0fb0563f663 --- gnu/packages/security-token.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm index a1fc058db8..372777c17b 100644 --- a/gnu/packages/security-token.scm +++ b/gnu/packages/security-token.scm @@ -105,10 +105,13 @@ (define-public ccid "06bjdswbwcwndsn23rsdhz5a7xqsgb66glqnk9lqzd7qws3l94qk")))) (build-system gnu-build-system) (arguments - `(#:configure-flags (list (string-append "--enable-usbdropdir=" %output - "/pcsc/drivers")) + (list + #:configure-flags + #~(list (string-append "--enable-usbdropdir=" + #$output + "/pcsc/drivers")) #:phases - (modify-phases %standard-phases + #~(modify-phases %standard-phases (add-after 'unpack 'patch-Makefile (lambda _ (substitute* "src/Makefile.in" base-commit: c8556379c3f2d3d095a178858915720f2eebc012 -- 2.41.0