Re: Packages in lisp-xyz.scm are now sorted
Hi Guillaume, Packages are now sorted in this commit: https://git.savannah.gnu.org/cgit/guix.git/commit/ all the best, jgart
Re: Packages in lisp-xyz.scm are now sorted
Hi Guillaume, I'll sort those today. Thanks for the heads up and sorry for missing that. all best, jgart
Re: Committers available for Patch hacking/review meet-up?
> 7th March (Thursday) > 20th March (Wednesday) > 2nd April (Tuesday) > 15th April (Monday) > 3rd May (Friday) > 16th May (Thursday) > 29th May (Wednesday) > > Each one held at 19:00 CET / 18:00 BST / 13:00 EST [0] for 1.5 hours. Hi, Thanks for putting this together. Lately I've been too busy with work and other tasks/priorities to review Guix patches, unfortunately. Those dates and times conflict with my work hours so I probably won't be able to attend any of the proposed dates. I live in the CT timezone and I am usually working from 9 AM to 5 or 6 PM CT on weekdays. I could potentially do a Saturday or Sunday sometime in May. all best, jgart https://whereis.みんな/
Re: Rust <3 Guix
> Do you need both nss-certs and curl? Hi Efraim, yes, I need both, oddly enough. If I remove one of them the build fails with the error message in the README that I provided. > I saw in a later commit you said it's working. I'm able to build main.rs with the guix installed tools but I'm not able to use guix-installed crate dependencies. I ended up installing the crates with cargo by fetching them from crates.io with the following invocations: cargo fetch cargo update cargo build Not sure at the moment how to get cargo to defer to guix for managing the crates when doing development... WDYT > Also, rust-analyzer is basically a convenience package around the > rust-analyzer binary from rust:tools since we don't have a way to > deprecate packages and point them to alternate outputs. I was wondering why it existed as I looked inside the bin of the output of rust:tools and also saw it there. Thanks for clarifying that. I'll remove rust-analyzer from my manifest. thanks for the help, jgart
Rust <3 Guix
Hi Guixers, What do you think I am missing? Completion works. Clippy works. Rustfmt works. `rust-compile` from emacs-rust-mode does not work :( I get the following error listed in the README when I try to compile the following Rust Guix project: https://git.sr.ht/~whereiseveryone/crab-meets-gnu WDYT, jgart
sbcl-py4cl does not appear in --list-dependent output
Hi Guixers, Does anyone happen to know why sbcl-py4cl doesn't appear in this output? guix refresh --list-dependent python-numpy Building the following 1490 packages would ensure 3164 dependent packages are rebuilt: python-pytest-pudb@0.7.0 python-fpylll@0.5.7 python-flint@0.3.0 aoflagger@3.2.0 python-fitsio@1.2.1 audio-to-midi@2020.7 crossmap@0.6.1 rseqc@3.0.1 python-pyfit-sne@1.2.1 shorah@1.99.2 seqmagick@0.8.4 python-bcbio-gff@0.6.9 python-nose-randomly@1.2.6 python-tweepy@4.4.0 rtv@1.27.0 tuir@1.29.0 python-flask-oidc@1.4.0 python-google-auth-oauthlib@1.1.0 python-wsgi-intercept@1.2.2 python-google-api-client@2.102.0 ceph@17.2.5 r-cistopic@2.1.0 r-cistopic-next@0.3.0-1.04cecbb r-chromunity@0.0.2-1.712e56c feedgnuplot@1.60 python-django-bulk-update@2.2.0 python-django-simple-math-captcha@1.0.9 python-django-ninja@0.22.2 python-django-localflavor@3.1 python-django-taggit@1.3.0 python-django-contrib-comments@1.9.2 python-django-debug-toolbar-alchemy@0.1.5 python-django-sortedm2m@3.0.2 python-django-contact-form@1.9 python-django-override-storage@0.3.0 python-django-logging-json@1.15 python-django-assets@2.0 python-django-rq@2.7.0 python-django-url-filter@0.3.15 python-django-configurations@2.4.1 python-django-auth-ldap@4.1.0 python-django-netfields@1.3.0 python-django-statici18n@2.1.0 patchwork@3.1.1 postorius@1.3.6 python-openid-teams@1.1 python-openid-cla@1.2 dynaconf@3.1.7 python-django@4.2.5 python-haversine@2.7.0 r-snapatac@2.0 r-insol@1.2.2 r-rastervis@0.51.6 r-leaflet@2.2.1 r-mlrmbo@1.1.5.1 r-cicero-monocle3@1.3.2-1.fa2fb65 r-ggvenndiagram@1.2.3 r-rnaturalearth@0.3.4 r-bien@1.2.6 r-tmaptools@3.1-1 r-zonebuilder@0.0.2 r-ggpattern@1.0.1 r-sungeo@1.1.1 r-zoon@0.6.5 r-zonator@0.6.0 python-hyperkitty@1.3.5 postgis@3.2.1 osmium-tool@1.15.0 osm2pgsql@1.9.2 python-h3@4.0.0b2 gnome-plots@0.6.2 mypaint@2.0.1 rmlint@2.10.2 gbonds@2.0.3-1.3054ee2 transmission-remote-gtk@1.4.2 dia@0.97.3-4.b903dd8 five-or-more@3.32.3 vala-language-server@0.48.3 gnome-sudoku@42.0 libskk@1.0.5 snixembed@0.3.3 dnssec-trigger@0.17 gromit-mpx@1.4.2 nicotine+@3.2.1 gammastep@2.0.9 xfce4-statusnotifier-plugin@0.2.3 rust-notmuch@0.6.0 aerc@0.15.2 bower@1.0 alot@0.10 neomutt@20230517 notmuch-addrlookup-c@9 afew@3.0.1 emacs-consult-notmuch@0.8.1 emacs-piem@0.5.0 emacs-ol-notmuch@2.0.1 emacs-notmuch-maildir@0.2.2 emacs-helm-notmuch@1.2 emacs-wanderlust@2.15.9-803.3e8cf26 emacs-counsel-bbdb@0.0.5 emacs-counsel-notmuch@1.0-0.a4a1562 muchsync@7 emacs-treemacs-extra@3.1 emacs-mu4e-jump-to-list@1.0-1.358bba0 emacs-mu4e-dashboard@0.1.1-0.16ffbb2 emacs-git-email@0.2.0-0.b5ebade emacs-mu4e-alert@1.0-0.3c9af8c emacs-mu4e-conversation@0.0.1-5.98110bb emacs-helm-mu@20180513-1.77e6fea jj@2 mcabber@1.1.2 freetalk@4.2 createrepo-c@0.20.1 pam-u2f@1.0.8 book-sparc@1.1.0 solfege@3.23.5pre2 bluez-alsa@3.0.0 emacs-bluetooth@0.3.1 xmp@4.1.0 espeakup@0.90 emacspeak@53.0 snapcast@0.27.0 cava@0.8.3 libsoundio@2.0.0 csfml@2.5.1 mars@0.7.5-2.84664cd schiffbruch@1.2.1-0.e41916d extremetuxracer@0.8.2 marble-marcher@0-1.e580460 allegro@5.0.11 opensurge@0.6.0.3 cl-liballegro@0.2.15-1.49f632c ecl-cl-liballegro@0.2.15-1.49f632c minetest-mobs-animal@2021-11-14 minetest-basic-trains@1.0.1 minetest-unified-inventory@2021-12-26 minetest-mobs-monster@2022-12-10 minetest-mesecons@1.2.1-63.27c3c51 minetest-ethereal@1.29-0.7670c1d minetest-worldedit@1.3 minetest-oneblock@2022-09-01 minetest-coloredwood@2021-04-14-1 minetest-homedecor-modpack@2022-05-18 minetest-technic@2022-10-30 minetest-wielded-light@2022-06-24 minetest-throwing-arrows@1.1-0.059cc89 wasm4@2.5.4 csound@6.16.2 darkice@1.4 cli-visualizer@1.8 volctl@0.9.3 conky@1.19.6 aws-sdk-cpp@1.9.306 rust-libpulse-binding@2.28.1 rust-libpulse-simple-sys@1.21.1 rust-libpulse-simple-binding@2.28.1 rust-libpulse-sys@1.21.0 emacs-pulseaudio-control@0.1-0.34a6114 ecl-cl-raylib@0.0.1-0.985ceeb cl-raylib@0.0.1-0.985ceeb superstarfighter@0.6.5 kappanhang@1.3 praat@6.4 gnubg@1.07.001 linsmith@0.99.33 gnome-planner@0.14.6 ocaml4.07-utop@2.4.3 ocaml4.07-frontc@3.4.2 ocaml4.07-sqlite3@5.0.2 ocaml4.07-cstruct@5.1.1 ocaml4.07-base64@3.2.0 ocaml4.07-sedlex@2.1 ocaml4.07-uri@2.2.0 ocaml4.07-batteries@2.10.0 coq-ide@8.16.1 laby@0.7.0 usync@0-1.09a8059 ocaml5.0-merlin@4.7.1-500 ocaml5.0-eio-main@0.8.1 emacs-eval-in-repl-ocaml@0.9.7 ocaml-down@0.1.0 ocaml-ocb-stubblr@0.1.1 ocaml-mirage-bootvar-unix@0.1.0 ocaml-hmap@0.8.1 ocaml-markup@0.8.0 ocaml-mirage-time@3.0.0 ocaml-psq@0.2.1 ocaml-expect@0.0.6 frama-c@24.0 ocaml-mirage-logs@1.2.0 ocaml-ssl@0.5.13 ocaml-guile@1.0 ocaml-uring@0.5 ocaml-merlin@4.7-414 ocaml-sqlite3@5.1.0 ocaml-async@0.15.0 ocamlformat@0.24.1 ocaml-cohttp@5.0.0 ocaml-mirage-unix@5.0.1 ocaml-mirage-xen@8.0.1 ocaml-mirage@4.3.3 ocaml-digestif@1.1.3 bap@2.6.0-alpha-0.f995d28 guile-gnome@2.16.5 aisleriot@3.22.9 python-pycanberra@0.1.1 hexchat@2.16.1 rawtherapee@5.9 kitty@0.21.2 nerd-dictation-xdotool@0-1.0eb44b7 alure@1.2 ecl-radiance-contribs@1.0.0-1.710b3e1
guix refresh --update Removes Needed Dependencies
Hi Guixers, `guix refresh --update` removes Tex Dependencies that are needed. This makes it more tedious to update packages :( See the diff below which was the result of running: ./pre-inst-env guix refresh --update python-sphinx Diff: [jgart@fedora guix] [env]$ git diff diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm index eee1f1c4a8..92658a3632 100644 --- a/gnu/packages/sphinx.scm +++ b/gnu/packages/sphinx.scm @@ -64,14 +64,14 @@ (define-module (gnu packages sphinx) (define-public python-sphinx (package (name "python-sphinx") -(version "5.1.1") +(version "7.2.6") (source (origin (method url-fetch) (uri (pypi-uri "Sphinx" version)) (sha256 (base32 - "12cdy3m5c09lpf2bbxzbhm5v5y9fk7jgm94qrzggpq86waj28cms" + "1dasilib5w98hwr5rdnv1ri2dmdxv3fa42dscdcqss4hxbhn0lcs" (build-system python-build-system) (arguments '(#:phases @@ -87,57 +87,39 @@ (define-public python-sphinx (setenv "HOME" "/tmp") ;for test_cython (invoke "make" "test"))) (propagated-inputs - (list python-babel + (list python-alabaster + python-babel + python-colorama + python-cython python-docutils - python-jinja2 + python-docutils-stubs + python-filelock + python-flake8 + python-flake8-simplify + python-html5lib python-imagesize python-importlib-metadata + python-isort + python-jinja2 + python-mypy python-packaging python-pygments + python-pytest python-requests + python-ruff + python-setuptools python-snowballstemmer - python-sphinx-alabaster-theme + python-sphinx-lint python-sphinxcontrib-applehelp python-sphinxcontrib-devhelp python-sphinxcontrib-htmlhelp python-sphinxcontrib-jsmath python-sphinxcontrib-qthelp python-sphinxcontrib-serializinghtml - - ;; The Sphinx LaTeX library '\RequirePackage' or \\usepackage - ;; these: - texlive-amsfonts ;amsmath, amssymb, amstext - texlive-amsmath - texlive-capt-of - texlive-carlisle ;remreset - texlive-cmap - texlive-etoolbox - texlive-fancyhdr - texlive-fancyvrb - texlive-float - texlive-fncychap - texlive-framed - texlive-geometry - texlive-hyperref - texlive-kvoptions - texlive-latex-bin - texlive-ltxcmds - texlive-needspace - texlive-oberdiek ;hypcap - texlive-parskip - texlive-preview - texlive-tabulary - texlive-titlesec - texlive-tools;multicol, longtable - texlive-upquote - texlive-varwidth - texlive-wrapfig - texlive-xcolor)) + python-sphinxcontrib-websupport + python-types-requests)) (native-inputs - (list imagemagick ;for "convert" - python-cython - python-html5lib - python-pytest)) + (list)) (home-page "https://www.sphinx-doc.org;) (synopsis "Python documentation generator") (description "Sphinx is a tool that makes it easy to create documentation
Re: Patch Review Flow
There's also the following workflow: Click on an individual patch in the mumi web interface to download it to ~/Downloads. cd guix-checkout git am -S ~/Downloads/53019-76.mbox Go back to the mumi interface and click on the next patch. Repeat. > Should we document an approach in the manual? Yes.
Re: Patch Review Flow
> I've had it installed forever but only ever used it for viewing commits and > branches. ditto! -- jgart
Re: Patch Review Flow
Hi Efraim, Thanks for sharing your approach as well. IIRC, a user can't interactively cherry-pick a range with tig. If you find a way please do share ;()
Re: Patch Review Flow
> which I then cherry pick from (via Magit), which makes it quick and easy to > apply patches. Hi Chris, That's a great idea to use magit to select the range of patches to apply. I was doing it in a more painful way via the CLI. thanks, jgart
Patch Review Flow
Hi Guixers, Does anyone follow this workflow for reviewing patches? git clone https://git.guix-patches.cbaines.net/guix-patches/ git checkout issue-x git format-patch ... # then in the development checkout of Guix: git am ...; make; ./pre-inst-env guix build Should we document it in the manual? Does anyone follow a workflow that is more efficient than the above? all best, jgart
Re: guix shell init
> Could you explain what “Nix flake” means using Guix terminology? Hi Simon Here's TLDR list of nix flake features and their guix equivalents (maybe): Guix has features that overlap with flake features. What might be new nix features that the flakes API introduced might just be features that are built in to Guix by design as first class. Not all flake features are implemented or maybe make sense for Guix's API. This is potentially an open research question. > Another feature of flakes is that they provide a consistent structure, which > makes it easier to understand and use different Nix projects. Typically, they > have a standard API where they provide Nix packages, NixOS modules, or other > standard outputs. Guix uses guix.scm and manifest.scm for this. > Each flake has a lock file, flake.lock, which pins exact versions of its > dependencies. This ensures that builds are reproducible, even across > different machines. Guix has a way to do this as well, currently. > Flake evaluations can be cached. This means that if you're working with a > particular set of flakes frequently, Nix won’t need to re-evaluate them every > time, speeding up operations. > A feature of the nix Flake edition is that Nix evaluations are cached. > Running nix-shell can be a bit slow and take 1-3 seconds. Ludo fixed the caching in guix shell and wrote a post about it. A reference for the caching thing that flakes introduced: https://nixos.wiki/wiki/Flakes#Super_fast_nix-shell There's also some comparison of Guix and Nix flakes here: https://blog.benoitj.ca/2023-10-23-guix-home-configuration-part1-packages/ https://blog.benoitj.ca/2023-10-20-how-guix-compare-to-nix-and-vice-versa/ Wrapping up this email the Guix way – carefully packaged and with a sprinkle of flakes for good measure. Have a crunchy day ahead! jgart
Re: guix shell init
> Right? Hi Simon, Yes, that is correct. Something like that.
Re: guix shell init
nix flakes also allows you to create your own custom template for use with `nix flakes init`: https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake-init#template-definitions We could do the same with `guix shell init` maybe...
Re: guix shell init
See this blog post for how nix does it for the `nix flakes init` command: https://peppe.rs/posts/novice_nix:_flake_templates/ wdyt
Re: guix shell init
It would generate this boilerplate somehow: https://guix.gnu.org/en/blog/tags/cookbook/sk/html_node/Getting-Started.html
guix shell init
Hi Guixers, What if we had a command like `guix shell init`. It would create a basic manifest.scm or guix.scm file for the user. bloat or meh or yeh? Sprinkling some Guix flakes on your day, jgart
Re: Opportunity For Guix: RFI Areas of long-term focus and Prioritization
Great! Keep us posted on the results. all best, jgart
Re: IDEA: missing-tests-pypi-error? condition
> You want `info -f doc/guix.info`. Ah yes, I actually used that flag once before and had forgotten it... Thanks!
Re: Is this a bug in guix refresh with respect to Common Lisp packages?
> I don’t see any difference in behavior here. The difference is that the common lisp example I gave doesn't contain the output with the packages that would be rebuilt.
Re: IDEA: missing-tests-pypi-error? condition
> 'make'), and you can review the new work with 'info doc/guix.info'. Hi, Is there a way to open the guix manual directly? Not sure why info opens a "main page" with all my texinfo manuals when I give it doc/guix.info as an argument... 閭 https://up.nixnet.services/89q7q1f9.png https://up.nixnet.services/k55f0n8d.png Checking the manual with man texinfo doesn't seem very helpful: Doing info texinfo is TMI: https://up.nixnet.services/7tzldvyw.png Doing man texinfo is TLI: https://up.nixnet.services/nvk70ry0.png off to learn something new (or relearn something old), jgart
Re: Is this a bug in guix refresh with respect to Common Lisp packages?
> These are the 7 packages: I didn't get that output from `./pre-inst-env guix refresh -l sbcl-enhanced-eval-when` I get the following: [jgart@fedora guix]$ guix refresh -l sbcl-enhanced-eval-when Building the following 1 package would ensure 7 dependent packages are rebuilt: cl-definitions-systems@2.0.1 I realize that those are all the dependents it just doesn't print from refresh -l for me for the said package. It works for python-requests though: [jgart@fedora guix]$ guix refresh -l sbcl-enhanced-eval-when Building the following 1 package would ensure 7 dependent packages are rebuilt: cl-definitions-systems@2.0.1 [jgart@fedora guix]$ guix refresh -l python-requests Building the following 633 packages would ensure 1362 dependent packages are rebuilt: sdkmanager@0.6.5 r128gain@1.0.7 borgmatic@1.7.12 patman@2023.07.02 python-canopen@2.0.0 python-behave-web-api@1.0.6 xenon@0.9.0 pwntools@4.4.0 trydiffoscope@67.0.1 greaseweazle-host-tools@1.12 docker-compose@1.29.2 cozy@1.2.1 anki@2.1.16 beancount@2.3.5 electron-cash@4.3.1 renpy@8.1.0 qgis@3.30.1 python-geoip2@2.9.0 nerd-dictation-sox-ydotool@0-1.0eb44b7 nerd-dictation-xdotool@0-1.0eb44b7 nerd-dictation-sox-wtype@0-1.0eb44b7 nerd-dictation-sox-xdotool@0-1.0eb44b7 toot@0.38.1 units@2.22 instantmusic@1.0-1.300891d curseradio@0-1.1bd4bd0 gandi.cli@1.6 pass-rotate@0.1 python-pytest-services@1.3.1 trytond-authentication-sms@6.2.0 trytond-user-role@6.2.0 trytond-ldap-authentication@6.2.1 trytond-party-relationship@6.2.0 trytond-dashboard@6.2.0 trytond-gis@6.2.0 trytond-google-maps@6.2.0 trytond-marketing-automation@6.2.1 trytond-marketing-email@6.2.0 gpodder@3.11.1 python-flask-markdown@0.3 python-flask-restx@0.5.1 python-flask-assets@2.0 python-flask-multistatic@1.0 python-flask-misaka@1.0.0 python-flask-principal@0.4.0 python-flask-oidc@1.4.0 python-flask-restful-swagger@0.20.1 python-flask-htpasswd@0.3.1 python-flask-migrate@3.1.0 python-flask-htmlmin@1.2 python-flask-seasurf@1.1.1 dynaconf@3.1.7 buku-run@0.1.1 python-flask-login@0.6.0 python-qtsass@0.4.0 python-rauth@0.7.3 python-pyega3@3.4.1 zulip-term@0.5.2 conda@22.9.0 python-flask-combo-jsonapi@1.1.0 python-wsgiproxy2@0.4.6 python-beren@0.7.0 python-pynetbox@7.2.0 python-pywinrm@0.4.1 whoogle-search@0.8.2 python-google-api-client@1.12.8 python-requests-ftp@0.3.1 python-pyfxa@0.6.0 magic-wormhole@0.12.0 python-wsgi-intercept@1.2.2 grip@4.6.1 httpie@3.2.1 hydrus-network@495 python-openai@0.28.1 python-woob@3.0 dosage@2.17 python-consul@0.6.1 nbss-upload@0.1 trytond-account-rule@6.2.1 trytond-account-move-line-grouping@6.2.0 trytond-account-de-skr03@6.2.0 trytond-account-fr@6.2.0 trytond-account-dunning-email@6.2.0 trytond-project-plan@6.2.0 trytond-party-avatar@6.2.0 trytond-attendance@6.2.0 trytond-product-price-list-parent@6.2.0 trytond-stock-location-sequence@6.2.0 trytond-stock-split@6.2.0 trytond-account-dunning-fee@6.2.0 trytond-stock-quantity-issue@6.2.1 trytond-production-split@6.2.0 trytond-stock-lot-unit@6.2.0 trytond-stock-assign-manual@6.2.0 trytond-stock-quantity-early-planning@6.2.2 trytond-account-be@6.2.0 trytond-account-invoice-correction@6.2.0 trytond-account-invoice-defer@6.2.2 trytond-account-tax-cash@6.2.0 trytond-account-statement-ofx@6.2.0 trytond-account-statement-coda@6.2.0 trytond-account-statement-aeb43@6.2.1 trytond-account-invoice-history@6.2.0 trytond-account-deposit@6.2.0 trytond-stock-product-location@6.2.0 trytond-product-classification-taxonomic@6.2.0 trytond-customs@6.2.0 trytond-product-price-list-dates@6.2.1 trytond-sale-shipment-grouping@6.2.0 trytond-sale-shipment-tolerance@6.2.0 trytond-sale-complaint@6.2.1 trytond-stock-lot-sled@6.2.0 trytond-product-image-attribute@6.2.0 trytond-sale-gift-card@6.2.0 trytond-sale-extra@6.2.0 trytond-notification-email@6.2.2 trytond-commission-waiting@6.2.1 trytond-stock-inventory-location@6.2.0 trytond-account-stock-landed-cost-weight@6.2.0 trytond-sale-secondary-unit@6.2.0 trytond-sale-discount@6.2.1 trytond-account-stock-shipment-cost@6.2.1 trytond-carrier-subdivision@6.2.0 trytond-sale-subscription-asset@6.2.0 trytond-product-cost-warehouse@6.2.1 trytond-sale-supply-production@6.2.1 trytond-analytic-sale@6.2.0 trytond-project-invoice@6.2.3 trytond-purchase-invoice-line-standalone@6.2.0 trytond-sale-stock-quantity@6.2.0 trytond-production-outsourcing@6.2.0 trytond-production-work-timesheet@6.2.0 trytond-stock-location-move@6.2.0 trytond-stock-supply-forecast@6.2.0 trytond-carrier-percentage@6.2.0 trytond-carrier-weight@6.2.0 trytond-purchase-secondary-unit@6.2.0 trytond-product-kit@6.2.2 trytond-stock-supply-day@6.2.0 trytond-analytic-purchase@6.2.0 trytond-stock-consignment@6.2.0 trytond-account-cash-rounding@6.2.0 trytond-purchase-price-list@6.2.1 trytond-purchase-amendment@6.2.1 trytond-account-tax-rule-country@6.2.0 trytond-sale-credit-limit@6.2.0 trytond-incoterm@6.2.0 trytond-account-es@6.2.0 trytond-account-payment-sepa-cfonb@6.2.0 trytond-analytic-bud
Re: Is this a bug in guix refresh with respect to Common Lisp packages?
Yep, this looks broken: [jgart@fedora guix] [env]$ make -j6 && ./pre-inst-env guix refresh -l sbcl-enhanced-eval-when ecl-enhanced-eval-when make all-recursive make[1]: Entering directory '/home/jgart/Code/guix' Making all in po/guix make[2]: Entering directory '/home/jgart/Code/guix/po/guix' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/home/jgart/Code/guix/po/guix' Making all in po/packages make[2]: Entering directory '/home/jgart/Code/guix/po/packages' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/home/jgart/Code/guix/po/packages' make[2]: Entering directory '/home/jgart/Code/guix' Compiling Scheme modules... Compiling Scheme modules... Compiling Scheme modules... Compiling Scheme modules... Compiling Scheme modules... Compiling Scheme modules... Compiling Scheme modules... Compiling Scheme modules... make[2]: Leaving directory '/home/jgart/Code/guix' make[1]: Leaving directory '/home/jgart/Code/guix' Building the following 2 packages would ensure 10 dependent packages are rebuilt: cl-definitions-systems@2.0.1 ecl-definitions-systems@2.0.1 This email is gluten-free, vegan, and 100% organic, jgart
Is this a bug in guix refresh with respect to Common Lisp packages?
make -j6 && ./pre-inst-env guix refresh -l sbcl-enhanced-eval-when I don't see 7 dependent packages that would be rebuilt... Just three. Building the following 1 package would ensure 7 dependent packages are rebuilt: cl-definitions-systems@2.0.1 sent while avoiding adult responsibilities, jgart
Re: IDEA: missing-tests-pypi-error? condition
> Sometimes, PyPI versions lag behind upstream versions. Hi Bonz, Yes, in my experience that has sometimes been the case because maintainers don't make timely releases to PyPI. > What's the policy on this. Shouldn't we prefer upstream over PyPI? Our importer works with the JSON API that PyPI provides at https://pypi.org/pypi/baz/json See here: https://git.savannah.gnu.org/cgit/guix.git/tree/guix/import/pypi.scm?h=master#n141 That API provides a lot of package data that GitHub does not track in a unified and structured way. > Adding extra glue can add unnecessary complexity. You're right. I thought about that after I sent the email with the idea ;() Doing my best to make inboxes a happier place, jgart
Tvix Guix
> The Tvix architecture is designed to be modular: It should be possible to > write an evaluator that plugs in the Guile language (for compatibility with > GNU Guix), to use arbitrary builders, and to replace the store implementation. Should we reach out to Tvix about collaborating since they want us to plug in Guile? Reference: https://tvl.fyi/blog/rewriting-nix May your inbox always be spam-free, jgart
IDEA: missing-tests-pypi-error? condition
Hi Guixers, I was recently reviewing a patch by a contributor and was discussing the notion of preferring upstream to PyPI when tests are missing on PyPI. WDYT if we also signalled a special condition when there are missing tests in PyPI? I'm thinking of something similar to here: https://git.savannah.gnu.org/cgit/guix.git/tree/guix/import/pypi.scm?h=master#n562 Maybe it can be a missing-tests-pypi-error? This email is gluten-free, vegan, and 100% organic, jgart
Re: guix refresh -u weird behaviour
> Because Faker doesn’t list them in a way that the importer can add them. Hi Ricardo, What is the way that Faker needs to list them? I've experienced this same issue with quite a number of Python packages that I've tried to import though... I'm just reporting Faker as one example to demonstrate the issue. all best, jgart
guix refresh -u weird behaviour
Hi Guixers, guix refresh -u does some weird stuff. See the git diff below. Why did it remove the native inputs? Do we have a bug report open for this? Is it intended behaviour? all best, jgart (define-public python-faker (package (name "python-faker") -(version "15.0.0") +(version "19.6.2") (source (origin (method url-fetch) (uri (pypi-uri "Faker" version)) (sha256 (base32 -"1yx3gsivisf8ls43v0fgzy4n5q9625xrp9fr9cb5gp3h6k9cfpr4" +"10yzgya59l5kkrdfzp9m06cb5sj05py077h18s545yxhaqsrbmfm" (build-system python-build-system) (arguments '(#:phases @@ -19707,12 +19707,8 @@ (define-public python-faker (when tests? (invoke "python" "-m" "pytest" "-v"))) (native-inputs - (list python-freezegun - python-pytest - python-random2 - python-ukpostcodeparser - python-validators)) -(propagated-inputs (list python-dateutil)) + (list)) +(propagated-inputs (list python-dateutil python-typing-extensions)) (home-page "https://github.com/joke2k/faker;) (synopsis "Python package that generates fake data")
Re: more than 1,800 dependent packages: website out of date
> > My expectation for browsing help from a website these days is that ... I concur!
Re: more than 1,800 dependent packages: website out of date
Hi Simon and Attila, I like the idea of releasing the website as a rolling release. The issue with keeping the release manual around is in edge cases like these where even though we have an old release manual and a rolling release manual, people contributing are expected to follow the latest practices regarding branch policy ;() That can be confusing. WDYT. yours truly, jgart
more than 1,800 dependent packages: website out of date
> more than 1,800 dependent packages https://guix.gnu.org/manual/en/html_node/Submitting-Patches.html Hi Guixers, When will the above website be updated to use the latest manual information about branches? all best, jgart
Re: Python Team: Keeping Branch Up To Date Question
So, I should add a Python teams specific section to the texinfo docs?
Re: Python Team: Keeping Branch Up To Date Question
Thanks, I ended up doing what you suggested. Should we document this git branch policy for contributors with commit access in the manual? I think we should state it explicitly so there is no confusion for new contributors with commit access. all best, jgart
Re: Cadence For Merging python-team into master
Thanks, I'll take a look once I find the time to look into sphinx failures. best, jgart
Re: Cadence For Merging python-team into master
Hi, What does the integration and testing work involve? Is the work/details for what's required for that documented for someone doing that work or is it just a matter of successfully building all dependents that you are introducing against master? best, jgart
Cadence For Merging python-team into master
Hi Lars, What is the cadence for merging the python-team branch into master? Should you do it, me, or someone else? best, jgart
Python Team: Keeping Branch Up To Date Question
Hi Lars, What is the git approach for keeping the Python branch up to date? 閭 Should I be rebasing off of master or something else? I'm trying to review this patch: https://issues.guix.gnu.org/64973 Any advice much appreciated. all best, jgart
Re: Current Issues with Patch Review Workflow Using git.guix-patches.cbaines.net
> I don't think automatically closing older issues is helpful, they still > need looking at. Or instead of closing them, put the patch into a state that is not open. Like an archived state or some other state that does not require action until someone takes ownership of the issue and resolves it. I think this can prevent being overwhelmed by the number of open issues that are not high priority, lack reviewers, or are so grossly outdated and that they require completely starting from scratch in order to work on it.
Re: Current Issues with Patch Review Workflow Using git.guix-patches.cbaines.net
>> Old tickets are not kept around. Hi, Oh ok, old tickets were never included instead of old tickets being deleted. I'm not familiar with this code yet. Thanks for the clarification.
Current Issues with Patch Review Workflow Using git.guix-patches.cbaines.net
Hi Guixers, Andreas' detailed a nice workflow for reviewing patches in a previous thread*: ``` git clone https://git.guix-patches.cbaines.net/guix-patches/ git checkout issue-x git format-patch ... then in the development checkout of Guix: git am ...; make; ./pre-inst-env guix build ``` I noticed that there is one issue with this approach after trying it. Old tickets are not kept around. For example, A branch for ticket 51810* does not exist anymore. But that ticket is still open Hi Christopher, Would it be possible to keep around branches for any open tickets? Should stale tickets like 51810 be automatically closed so that git.guix-patches.cbaines.net* gets comprehensive coverage of ticket/branch pairings? best, jgart * https://lists.gnu.org/archive/html/guix-devel/2023-08/msg00158.html * https://issues.guix.gnu.org/51810 * https://git.guix-patches.cbaines.net/guix-patches/
Opportunity For Guix: RFI Areas of long-term focus and Prioritization
Hi Guixers, Just reposting this chat message from Ryan Prior over #guix for anyone interested: > The US Federal government has an RFI open on "Areas of long-term focus and > Prioritization". They're looking for 10 page briefing memos on supporting > memory-safe languages, strengthening software supply chains, sustaining > FLOSS, behavioural/economic incentives to secure the OSS ecosytem, or other > related ideas. Sounds like an interesting opportunity for Guix hackers https://cloudisland.nz/@freakboy3742/110969575789548640 I don't have the time currently to submit an RFI on behalf of GNU Guix but maybe someone else is interested in this opportunity? best, jgart
Automatic importer for GitHub projects
Hi Guixers, I'm sharing a guix-forge project ticket that I think could help increase Guix and guix-forge adoption. What is guix-forge you may ask? Here's a nice TLDR from the project page: > guix-forge is a Guix service that lets you run a complete software forge in > the manner of GitHub, GitLab, etc. And here's a TLDR of the ticket description: We want to implement an importer that migrates the user's GitHub account to guix-forge. Ticket description: > We want to implement an importer to automagically import projects from GitHub > (or from GitLab, SourceHut, etc.) into guix-forge. The user gives their > GitHub/GitLab/SourceHut account URL (API token if required) and the importer > will generate a guix-forge config with all of the user's repositories ready > to be consumed by cgit or klaus, issue tracker is migrated to > public-inbox/tissue, continuous integration is converted to something laminar > can run, etc. Ticket on guix-forge's issue tracker: https://guix-forge.systemreboot.net/issues/automatic-importer-for-github-projects Here's the main page for the guix-forge project: https://guix-forge.systemreboot.net/ If anyone is interested in contributing then reach out to Arun Isaac. ps Here are some live guix-forge instances running their git and ci web apps, respectively: GeneNetwork https://git.genenetwork.org/ https://ci.genenetwork.org/ systemreboot https://git.systemreboot.net/ https://ci.systemreboot.net/ happy scheming, jgart
Adding %conf-dir breaks module
Hi, Adding the following %conf-dir expression breaks this entire module. If I comment it out all is fine. (define-module (confetti features common-lisp) #:use-module (rde features) #:use-module (rde features emacs) #:use-module (rde features predicates) #:use-module (guixrus packages guix) #:use-module (guixrus packages common lisp) #:use-module (gnu home services) #:use-module (gnu packages emacs-xyz) #:use-module (gnu packages lisp) #:use-module (gnu packages lisp-xyz) #:use-module (gnu services) #:use-module (guix gexp) #:use-module (guix packages) #:export (feature-common-lisp)) ;; Adding the following %conf-dir expression breaks this entire module. If I comment it out all is fine. (define %conf-dir (dirname (current-filename))) ;; (define (path-join . args) ;; (string-join args "/")) ;; (define (config-file file) ;; (local-file (path-join %conf-dir file))) (define* (feature-common-lisp #:key (lisp-implementation sbcl) (init-file "lisp/sbclrc.lisp")) "Configure Common Lisp support." (ensure-pred file-like? lisp-implementation) ;; TODO: Use path like or whatnot. (ensure-pred string? init-file) (feature (name 'common-lisp) (home-services-getter (lambda (config) (list (simple-service 'add-guixrus-home-packages home-profile-service-type (list sbcl-cl-guix-utils guixrus-scripts sbcl-slynk sbcl)) (simple-service 'add-rus-shell-home-envs home-environment-variables-service-type '(("GUIX_EXTENSIONS_PATH" . "$HOME/.guix-home/profile/share/guix/extensions"))) (simple-service 'add-sbclrc-home-file home-files-service-type (list `(".sbclrc" ,(local-file init-file) Any thoughts on why that would happen? https://git.sr.ht/~whereiseveryone/confetti/tree/590f999c0b836059232314b2b240ef1561ef9a83/conf/confetti/features/common-lisp.scm#L38
Re: Adding %conf-dir breaks module
(define-module (confetti features common-lisp) #:use-module (rde features) #:use-module (rde features emacs) #:use-module (rde features predicates) #:use-module (confetti srfi srfi-197) #:use-module (guixrus packages guix) #:use-module (guixrus packages common lisp) #:use-module (gnu home services) #:use-module (gnu packages emacs-xyz) #:use-module (gnu packages lisp) #:use-module (gnu packages lisp-xyz) #:use-module (gnu services) #:use-module (guix gexp) #:use-module (guix packages) #:export (feature-common-lisp)) ;; This is OK. (define x 3) ;; But this is not OK. How come? (define %conf-dir (dirname (current-filename))) ;; (define (path-join . args) ;; (string-join args "/")) ;; (define (config-file file) ;; (local-file (path-join %conf-dir file))) (define* (feature-common-lisp #:key (lisp-implementation sbcl) (init-file "lisp/sbclrc.lisp")) "Configure Common Lisp support." (ensure-pred file-like? lisp-implementation) ;; TODO: Use path like or whatnot. (ensure-pred string? init-file) (feature (name 'common-lisp) (home-services-getter (lambda (config) (list (simple-service 'add-guixrus-home-packages home-profile-service-type (list sbcl-cl-guix-utils guixrus-scripts sbcl-slynk sbcl)) (simple-service 'add-rus-shell-home-envs home-environment-variables-service-type '(("GUIX_EXTENSIONS_PATH" . "$HOME/.guix-home/profile/share/guix/extensions"))) (simple-service 'add-sbclrc-home-file home-files-service-type (list `(".sbclrc" ,(local-file init-file)
Re: Transformations Shell Syntax
Hi Ludo, Is there any interest in having a syntax for shepherd for controlling multiple workers? >>> Excerpt from https://blog.miguelgrinberg.com/post/running-a-flask-application-as-a-service-with-systemd Now I can start four workers using brace expansion in bash: $ sudo systemctl daemon-reload $ sudo systemctl start microblog-tasks@{1..4} $ sudo systemctl status microblog-tasks@{1..4} And if you want to address an individual instance you can do that as well: $ sudo systemctl restart microblog-tasks@3 > In other words being able to specify workers with shepherd: Starting multiple workers: $ herd start microblog-tasks@{1..4} $ herd status microblog-tasks@{1..4} Restarting a particular worker: $ herd restart microblog-tasks@3 WDYT
How Can We Make G-Expressions Even More Interactive At The REPL?
Hi Guixers, How can we make g-expressions even more interactive at the REPL? For example, thing to explore is what can we print instead of '(*approximate*)? Just brainstorming/listing. Let me know if there is some previous thread I should be reading. ps WDYT if we had even more convenience meta-commands for interactive development with g-expressions?
Re: Transformations Shell Syntax
> What disturbs me with your suggestion is that it reuses the same syntax > that is already used for a different purpose. So in a sense you do > "operator overloading", and the same command line then means different > things depending on whether the package version is already provided by > Guix or not. Yes, I see how that can be an CLI smell and "not Guixonic". Would be sweet to have something like it but I realize the negative of dirtying the current API's explicitness to get lower verbosity invocations at the shell prompt.
Re: Transformations Shell Syntax
> I am a bit wary of too much intelligence in interpreting commands, at the > expense of clarity Hi Andreas, I agree with this design aesthetic. Personally, I like my software not too dumb and not too smart with a slight bias towards the smart. > I think your semantics ends up meaning "try to make sense of the version > field, and give me the package at this version". Aren't these the current semantics of guix package transformations though? I'm just proposing shell syntax for them. Anyways, just an idea. I'm brainstorming out loud ;() I realize that it might be bloat. I'm fine with also not having them as per the design aesthetics mentioned above.
Re: Transformations Shell Syntax
> WDYT about what? Could you be more specific and detail your idea? Hi Simon, I was openly ideating on having shell syntax like we do currently for emacs-ement@0.9.3, for example, but for a subset of package transformation options as well. Does that clarify my intent? If not, let me know to expound further. all best, jgart
Transformations Shell Syntax
Hi Guixers WDYT, Uses specified commit hash: guix build emacs-ement@8b56efa9387262514daf63151d41c9e111e79567 Uses specified commit hash (short): guix build emacs-ement@8b56efa Uses latest upstream release: guix build emacs-ement@latest Uses upstream version 0.8.2 if not packaged: guix build emacs-ement@0.8.2 Uses the latest commit in the wip/find-room branch: guix build emacs-ement@wip/find-room etc.
Re: Welcome to Jorge Gomez (jgart) as a new Guix committer
Thanks Blake and nice to hear from you. It's been a minute ;()
Re: Welcome to Jorge Gomez (jgart) as a new Guix committer
> I'd like to welcome Jorge as a new Guix committer! Jorge has been > around for some time already, and is always very active around the Guix > community; I'm sure they'll know to use their new privilege in a way > that benefits the Guix community! Hi Maxim, Thanks for the warm welcome. It is much appreciated. I look forward to continuing to push our efforts forward as a group. I also want to thank everyone who has reviewed and merged my patches in the past and I look forward to now returning the help to others. all best, jgart ps I also made a statement about my commit access grant here: https://lists.gnu.org/archive/html/guix-devel/2023-05/msg00202.html
Commit Access: jgart
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Hi Guixers, Thanks for granting me commit access. I'm looking forward to helping out with patch review, with a particular focus on moving patches along for the Python team. I also intend to continue contributing more packages, updates, and improvements. Thanks again for granting me the privilege of commit access and I am looking forward to continuing our collaborations. all best, jgart (Jorge Gomez) -BEGIN PGP SIGNATURE- Version: OpenPGP.js v2.6.2 Comment: https://openpgpjs.org wsFcBAEBCAAQBQJkYunxCRClKqK0d7bdNQAAyVYQALssKAaeBc5flQqs2IA0 3a/+014O15GvwceZXx+eoPjO6yNwouHQ8h8zZmCLZIcjVLfTEQci6NVpDJhR 0sZ4dYV7Glncv2KcFGqucTEoHmmzEQbCOaUjT2fH0j+eTadOdgzIMuhqbLAH /DNUzjlzEkIaDoyuSZodOZC3EMs1fiZaNqn70BJ/Ticl3NntB5OIWDUdiaeu ZHb0O8iaqJM0lniyYBAwVtLXXNIoVYmU0TkXp8sQtrj6bwXPcBD+PMv4YrxH 8PpKfy6/sDAsNQyy4hnRADAIAGhbGFfCzpDFtfJWWcIQpGiGO00XyD2Zjbtw icKBAx+VI6T8b48K+9rcoUngL/X8r+PoH8bFuf+rUKq4wbNdI0638pB78TUt okWhWAiR/DWMv3VTafFBkU8D4uL1Xto1vYAuuSfXJ/Ze2p/VLCKyp5cOE4o3 il7Lc+Fjcmoq1ptZ2rsp1EmdvQWROSLBcxt2mBsLhMa3v5mP//yFuLaOkMEe /IAHdpfrggwZWdayZQL06V3g3H/K37rpW1R/wZa5CdS2X6WHtkqFeJl02FIT x0cJAZdRi6tA2Hhr/qgsFaMoXvbBml8S50F7WT+UxyUiaoo2wtI69At/w0P1 MIVlEu19U1cmidjA9D4du/g5T+X7DZgRwl4BhucHNq5GGhSduASXZGOask+Y Q6FL =Mfmz -END PGP SIGNATURE-
Patch graphviz in emacs-guix
Hi should emacs-guix be patched and the graphviz program add as an input to emacs-guix? https://github.com/alezost/guix.el/blob/c9aef52121b458297e70bb50f49f7276b4a8d759/elisp/guix-external.el#L51 If I try to run `guix-package-graph` I get the following error: guix-dot-arguments: Couldn’t find ’dot’. Set ‘guix-dot-program’ to a proper value
Re: Patch xdg-open in emacs-embark package
BTW, I discovered this because when I tried calling that function in eshell (with eat-eshell-mode enabled, btw lol) it complained that xdg-open was not install. ;() Just a little story about the discovery. I think it would be great to not worry about installing xdg-open if you install emacs-embark and it depends on it.
Re: Patch xdg-open in emacs-embark package
Hi, Yes, definitely please do open a PR upstream for that. Sounds good to me. Keep us posted here on the thread on that status of that. all best, jgart May 10, 2023 6:29 AM, "Mekeor Melire" wrote: > 2023-05-10 02:11 jg...@dismail.de: > >> Just writing down a public TODO for myself: >> >> TODO: patch xdg-open (xdg-utils) in emacs-embark package. >> >> https://github.com/oantolin/embark/blob/f88314044d5492efeacb9466122889c6e60c8af4/embark.el#L3710 >> >> If anyone else wants to work on this feel free to. > > We could introduce a defcustom variable for this command, upstream, so that > we can use > `emacs-substitute-variables'[1] within the package declaration in the Guix > repository. WDYT? > > [1] > https://github.com/guix-mirror/guix/blob/d1aba42ad4e1909faa21d484975c5954c778e002/guix/build/emacs-u > ils.scm#L211
Patch xdg-open in emacs-embark package
Just writing down a public TODO for myself: TODO: patch xdg-open (xdg-utils) in emacs-embark package. https://github.com/oantolin/embark/blob/f88314044d5492efeacb9466122889c6e60c8af4/embark.el#L3710 If anyone else wants to work on this feel free to.
Re: evince: Is this a bug?
guix install gdk-pixbuf The following package will be installed: gdk-pixbuf 2.42.8 guix install: error: profile contains conflicting entries for glib guix install: error: first entry: glib@2.72.3 /gnu/store/nb40pwd37v6i1g4b1fq4l6q4h9px3asr-glib-2.72.3 guix install: error:... propagated from gdk-pixbuf@2.42.8 guix install: error: second entry: glib@2.70.2 /gnu/store/z6c305j8xvhvizvnyp5961gssmw3zjr2-glib-2.70.2 guix install: error:... propagated from dconf@0.40.0 guix install: error:... propagated from gajim@1.4.7 hint: Try upgrading both `gdk-pixbuf' and `gajim', or remove one of them from the profile. The only issue with upgrading gajim is that it is currently broken at the latest one... Any suggestions here?
Re: evince: Is this a bug?
Hi Felix, can you share the s-expression form(s) that generated those paths in your guix home config? all best, jgart
Re: evince: Is this a bug?
Hi Felix, It's not set. What should I set it to? I tried the following: export XDG_DATA_DIRS="/home/jgart/.config/gajim" but didn't work when I tried to launch gajim
Re: evince: Is this a bug?
Yep ;(
evince: Is this a bug?
Is this a bug? $ evince (evince:8881): Gtk-WARNING **: 20:41:52.851: Could not load a pixbuf from icon theme. This may indicate that pixbuf loaders or the mime database could not be found. ** Gtk:ERROR:gtkiconhelper.c:494:ensure_surface_for_gicon: assertion failed (error == NULL): Failed to load /gnu/store/vkcl29s7qcfgqz1cs6lab98fyxsxyczx-adwaita-icon-theme-43/share/icons/Adwaita/48x48/status/image-missing.png: Unrecognized image file format (gdk-pixbuf-error-quark, 3) Bail out! Gtk:ERROR:gtkiconhelper.c:494:ensure_surface_for_gicon: assertion failed (error == NULL): Failed to load /gnu/store/vkcl29s7qcfgqz1cs6lab98fyxsxyczx-adwaita-icon-theme-43/share/icons/Adwaita/48x48/status/image-missing.png: Unrecognized image file format (gdk-pixbuf-error-quark, 3) I have gnome-desktop-service running fine that brought with it evince
#:tests? #f
hi, wdyt `guix build qutebrowser --disable-tests` or bloat?
mcron latest
https://repology.org/project/mcron/versions#gnuguix Should we update mcron to the latest? Is anyone working on that? AUR has the latest mcron but we don't :(
WDYT of guix remove flag that is like sed -i?
hi, WDYT of a `guix remove` flag that is like sed -i that removes the package from the module it is in? It is like `sed -i` but works on guix packages/sexps themselves. For example, I as the user would be able to do the following `guix remove -i chezmoi` and it would remove the chezmoi package cleanly from gnu/packages/configuration-management.scm:31:2 If I also pass in the -r flag then it will also remove all the direct dependencies of chezmoi. Might be cool and powerful to be able to have a flag to remove dependents as well. I realize that this better serves the particular use cases of a channel like Guix 'R Us that is constantly needing to remove packages that it has upstreamed in an efficient manner. Still, this would be cool functionality to have.
Re: Erlang: dirname: command not found
Hi Efraim, Hope all is well! I'll take a look. Give me a few days to find some time. all best, jgart
Re: i686 core-updates failure.
My thoughts on this are that unless someone has the time to maintain those broken packages we should just remove them and clean up shop a bit. Is there a reason to keep around the broken packages? A news entry about the removals would also be helpful if we decide to remove them in order for people to know and so future contributors can pick up the work if they are interested in maintaining them at a later date. Anyways, one idea for what to do, WDYT
Re: Demo: Live Loading Common Lisp Systems with Guix
Hi Guixers, archive.org video is up! https://archive.org/details/charje_live_loading_common_lisp_with_guix The archive.org entry includes the text log for the Big Blue Button chat. Most questions were asked there. Start from 2:58 if you'd like to skip my ums and go straight to the presentation ;() all best, jgart https://whereis.みんな/
Re: Demo: Live Loading Common Lisp Systems with Guix
Hi Guixers, Thanks to those who came out! We had a great session with charje and others. Here is the video recording from today's Demo: Live Loading Common Lisp Systems with Guix: https://meet.nixnet.services/playback/presentation/2.3/8c682fa49919a4d0c6cebf672e2b0dd52a825e6c-1680450956044 I'll be uploading it to the following archive.org today. Stay tuned for the next one! https://archive.org/details/@whereiseveryone all best, jgart https://whereis.みんな/
Erlang: dirname: command not found
jgart@guixer ~/erl_sandbox$ guix shell erlang --container jgart@guixer ~/erl_sandbox [env]$ erlc /gnu/store/i98q2wgmsvvfck51f830c4aqxrygjlb2-profile/bin/erl: line 22: dirname: command not found /gnu/store/i98q2wgmsvvfck51f830c4aqxrygjlb2-profile/bin/erl: line 52: basename: command not found jgart@guixer ~/c_sandbox [env]$ erl /gnu/store/i98q2wgmsvvfck51f830c4aqxrygjlb2-profile/bin/erl: line 22: dirname: command not found /gnu/store/i98q2wgmsvvfck51f830c4aqxrygjlb2-profile/bin/erl: line 52: basename: command not found Hi, Is the above expected?
Lisp team: Should we package Quicklisp?
Hi, what do you think if we package Quicklisp? For example, we have emacs-straight packaged which is a purely functional package manager for the Emacs hacker that is not Guix. I think it could be convenient to have. https://www.quicklisp.org/
Re: Guix's Answer to PyInstaller
> Hey! > ¿Qué tal? Hola, aqui gozando con bolsas y derivaciones ;() > but I suspect it requires a pretty heavy magic for non-python packages. I imagine not much magic for Common Lisp since we can produce a static binary with sbcl, etc. > I'd love to see this happening, mostly because I have clients I'd like to be > able to serve... If > you want to dig on this issue, please let me know your findings. Maybe I can > help! Another software to compare to is PyOxidizer which is used for producing binaries that embed Python: https://github.com/indygreg/PyOxidizer > Thanks for bringing this up! De nada, anytime! > [^1]: See https://ekaitz.elenq.tech/windows.html Nice blog post. I'll read it soon. all best, jgart
Guix's Answer to PyInstaller
Hi Guixers, What is Guix's answer to PyInstaller? `guix pack --list-formats`? https://github.com/pyinstaller/pyinstaller I haven't reviewed all of PyInstaller yet to see where feature parity fails or differences should be noted. On my TODO list.
Demo: Live Loading Common Lisp Systems with Guix
Hi Guixers and Lispers, I'd like to invite you to a demo and QA entitled "Live Loading Common Lisp Systems with Guix" presented by charje. We'll meet over Big Blue Button on April 2nd and 16:00 UTC at the following link: https://meet.nixnet.services/b/jga-nze-hgu-1qg The demo itinerary is the following: 1: Show how currently a full shell and image restart is required to load a new CL system. 2: Show how, using tools in Guix 'R Us, CL systems can be loaded without restarting shell or image. 3: Go into each of the tools (charje.guix, guix provides, and guix shell --mutable) and the role that each plays. 4: Show short comings, and ask for help in solving them. Questions will be taken at the end of each step. Here is the git repository for these new Guix tools for you to optionally review before the demo: https://git.sr.ht/~charje/cl-guix-utils https://git.sr.ht/~whereiseveryone/guixrus-scripts The event will be live recorded and published on archive.org on this page afterwards: https://archive.org/details/@whereiseveryone -- jgart ;() * https://github.com/charJe/ https://whereis.みんな https://guix.gnu.org
guix build -S --with-branch
Hi Guixers, Just opening this thread for us to brainstorm how we can improve the symbiosis between guix build -S and --with-branch. >From a #guix irc conversation earlier today with civodul: jgart: What do people think of having a guix clone command that passes the result of (-> network-manager (package-source) (origin-uri)) to git clone? -> is from guile-pipe package in upstream guix civodul: > hey! sounds interesting; there's some overlap with "guix build -S" and with > "--with-branch" and the likes, i wonder how we could improve symbiosis :-) all best, jgart https://github.com/joshwalters/guile-pipe
Re: Can zig-build-system be an alternative to the gnu-build-system?
De nada, vas a estar en dias de los guixeros in brussels?
Re: Can zig-build-system be an alternative to the gnu-build-system?
hola Ekaitz, I added it as a pre-release to Guix 'R Us a few weeks ago: https://toys.whereis.みんな/symbols?search=zig-build-system ;()
Re: Mumi Feature Request: Easier way to apply patches from web interface
宋文武, That's an great idea! Reminds me of tissue, the text based issue tracker, written in Guile by Arun Isaac: https://git.systemreboot.net/tissue/ I think it would be amazing for the guix CLI to have integration with issues/debbugs. January 29, 2023 7:31 PM, "宋文武" wrote: > "jgart" writes: > >> Note that I realize that this is possible: >> >> https://man.sr.ht/~whereiseveryone/wiki/tipsandtricks.md#applying-patches-from-issuesguixgnuorg >> >> or >> >> wget -O- https://issues.guix.gnu.org/issue/48364/patch-set/2 | git am >> >> What this feature is is to generate the appropriate command for the >> respective patch series that >> you'd like to apply from https://issues.guix.gnu.org > > Maybe add a guix command for issues/patches? > > guix issues new > guix issues open nnn > guix issues reply nnn > guix issues apply nnn > guix issues close nnn
Re: Mumi Feature Request: Easier way to apply patches from web interface
Note that I realize that this is possible: https://man.sr.ht/~whereiseveryone/wiki/tipsandtricks.md#applying-patches-from-issuesguixgnuorg or wget -O- https://issues.guix.gnu.org/issue/48364/patch-set/2 | git am What this feature is is to generate the appropriate command for the respective patch series that you'd like to apply from https://issues.guix.gnu.org
Mumi Feature Request: Easier way to apply patches from web interface
Hi Guixers, This is a feature request for mumi. What do you think if mumi had a feature that gives the user a generated command like this one (the following url is probably not correct) and shows it in the web interface for each patch series? curl -s https://issues.guix.gnu.org/issue/61036/raw/1 | git am -3 The new user can then just copy paste the above command to apply the patch and review it. sr.ht's mailing list service implements the feature: https://lists.sr.ht/~whereiseveryone/bangs/patches/38520 See on the right in the html where it says "How do I use this?": https://lists.sr.ht/~whereiseveryone/toys/patches/38089 The code for that implementation is here: https://git.sr.ht/~sircmpwn/lists.sr.ht/tree/master/item/listssrht/templates/patchset.html#L174 It looks like they are using their graphql API to get that information for the jinja template: https://git.sr.ht/~sircmpwn/lists.sr.ht/tree/master/item/listssrht/blueprints/api/lists.py#L41
Re: ¿ How can I get qutebrowser to use Guix installed Python deps ?
Oops, ignore this one. I misread the backtrace. Qutebrowser can import from Guix installed Python packages just fine.
¿ How can I get qutebrowser to use Guix installed Python deps ?
Hi Guixers, How can I get qutebrowser to use Guix installed Python dependencies? I'm able to install a python dep and load it in the repl but I can't import the dep into ~/.config/qutebrowser/config.py
Re: debug moviepy with jgart
Thanks for the reply. Interestingly, there is no hypothesis code in the moviepy tests so I'm not sure why we get that plugins output section mentioning hypothesis. I wonder if there's a way to start pdb or pudb in the failed build environment so that I can step through the test? hmmm Will try that next... for fun Here's one test that fails: # -*- coding: utf-8 -*- """Image sequencing clip tests meant to be run with pytest.""" import os import sys import pytest from moviepy.video.io.ImageSequenceClip import ImageSequenceClip from .test_helper import TMP_DIR def test_1(): images=[] durations=[] for i in range(5): durations.append(i) images.append("media/python_logo.png") durations.append(i) images.append("media/python_logo_upside_down.png") with ImageSequenceClip(images, durations=durations) as clip: assert clip.duration == sum(durations) clip.write_videofile(os.path.join(TMP_DIR, "ImageSequenceClip1.mp4"), fps=30) def test_2(): images=[] durations=[] durations.append(1) images.append("media/python_logo.png") durations.append(2) images.append("media/matplotlib_demo1.png") #images are not the same size.. with pytest.raises(Exception): ImageSequenceClip(images, durations=durations).close() if __name__ == '__main__': pytest.main() and here's the test failure output: test_1 def test_1(): images=[] durations=[] for i in range(5): durations.append(i) images.append("media/python_logo.png") durations.append(i) images.append("media/python_logo_upside_down.png") with ImageSequenceClip(images, durations=durations) as clip: assert clip.duration == sum(durations) > clip.write_videofile(os.path.join(TMP_DIR, > "ImageSequenceClip1.mp4"), fps=30) tests/test_ImageSequenceClip.py:25: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /gnu/store/zfw5y8356i5hmfghpix46qk3iaxg3i6y-python-decorator-5.0.9/lib/python3.9/site-packages/decorator.py:232: in fun return caller(func, *(extras + args), **kw) moviepy/decorators.py:54: in requires_duration return f(clip, *a, **k) /gnu/store/zfw5y8356i5hmfghpix46qk3iaxg3i6y-python-decorator-5.0.9/lib/python3.9/site-packages/decorator.py:232: in fun return caller(func, *(extras + args), **kw) moviepy/decorators.py:135: in use_clip_fps_by_default return f(clip, *new_a, **new_kw) /gnu/store/zfw5y8356i5hmfghpix46qk3iaxg3i6y-python-decorator-5.0.9/lib/python3.9/site-packages/decorator.py:232: in fun return caller(func, *(extras + args), **kw) moviepy/decorators.py:22: in convert_masks_to_RGB return f(clip, *a, **k) moviepy/video/VideoClip.py:300: in write_videofile ffmpeg_write_video(self, filename, fps, codec, moviepy/video/io/ffmpeg_writer.py:213: in ffmpeg_write_video with FFMPEG_VideoWriter(filename, clip.size, fps, codec = codec, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = filename = '/tmp/guix-build-python-moviepy-1.0.3.drv-0/ImageSequenceClip1.mp4' size = (260, 77), fps = None, codec = 'libx264', audiofile = None preset = 'medium', bitrate = None, withmask = False, logfile = -1 threads = None, ffmpeg_params = None def __init__(self, filename, size, fps, codec="libx264", audiofile=None, preset="medium", bitrate=None, withmask=False, logfile=None, threads=None, ffmpeg_params=None): if logfile is None: logfile = sp.PIPE self.filename = filename self.codec = codec self.ext = self.filename.split(".")[-1] # order is important cmd = [ get_setting("FFMPEG_BINARY"), '-y', '-loglevel', 'error' if logfile == sp.PIPE else 'info', '-f', 'rawvideo', '-vcodec', 'rawvideo', '-s', '%dx%d' % (size[0], size[1]), '-pix_fmt', 'rgba' if withmask else 'rgb24', > '-r', '%.02f' % fps, '-an', '-i', '-' ] E TypeError: must be real number, not NoneType moviepy/video/io/ffmpeg_writer.py:88: TypeError -- Here's the Guix package for the curious: ;;; GNU Guix --- Functional package management for GNU ;;; ;;; Copyright © 2022 jgart ;;; This file is not part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHO
Can zig-build-system be an alternative to the gnu-build-system?
Can `zig-build-system` be an alternative to the `gnu-build-system`? https://ziglang.org/learn/why\_zig\_rust\_d\_cpp/#a-package-manager-and-build-system-for-existing-projects > Not only can you write Zig code instead of C or C++ code, but you can use Zig > as a replacement for autotools, cmake, make, scons, ninja, etc. And on top of > this, it (will) provide a package manager for native dependencies. This build > system is intended to be appropriate even if the entirety of a project’s > codebase is in C or C++. WDYT
IDEA: Host Key CLI flag for Guix Deploy
WDYT: guix deploy machine.scm --host-key="ssh-ed25519 C3NzaC1lZDI1NTE5IEEz3nkI1me0/CESu+XA8yyWF8OPkhVaRv+Xg+WZdjg+ jg...@dismail.de"
IDEA: Give Our Generations a Name
Hi Guixers, What do you think if we would be able to give past generations a name? I'm thinking of the way you can do the following with git: git stash -m "My description of this important stash." I think this would help differentiate slight differences that would be hard to tell what the state of that generation was by just looking at the differences of profile package content. to bloat? or not to bloat? that is the question
Re: "Sales Pitch" for Guix as Yet Another Python Package Manager
> But why Nix? Cargo uses lock files and does a good job of keeping track of > Rust dependencies. But Nix goes further, also taking into account both system > dependencies and the Rust compiler itself. Also, in a polyglot environment, > Nix can simplify the build process by not requiring a concoction of compilers > and tools to be installed. https://www.tweag.io/blog/2022-09-22-rust-nix/ s/Nix/Guix/
"Sales Pitch" for Guix as Yet Another Python Package Manager
Hi Guixers, I'd like to get your opinions/brainstorms on the unique features that you think make Guix an excellent Python package manager over all the others: pip, poetry, pyenv, pipenv, conda, etc. Here are two reasons I can think of: 1. You never get opaque mystery wheels but always get the Python libraries built from source including any C/C++ related dependencies. In other words, you can ensure that the entire "transitive story" can be told and accounted for down to the primordial berry. 2. Guix makes it easy to have a multi-language environment/project without having to worry about scrambling to get your non-Python deps with various build tools/package managers. 3. You want some C, ruby, C++, etc. development dependencies in your Python project? You got it and from one CLI. What else makes Guix unique for Python development besides the above 3 points? The one thing I can say that we are currently missing that pyenv provides is getting any version of CPython 3 that is currently supported. Guix only conveniently provides Python 3.9. By convenient, I mean easily available from master with substitutes available. This is mostly my fault as I haven't spent the time to package the other CPython versions yet.
Re: monero-gui-wallet does not show up in GNOME
> Done in commit ef0613a81dca73602e702cb5f5444ee94566f983. Awesome, thanks for doing that! all best, jgart
monero-gui-wallet does not show up in GNOME
Hi, Even after logging out and in I still can't see `monero-wallet-gui` executable show up when I press the "windows" key in the GNOME desktop. See this screenshot: https://up.nixnet.services/vyv1z6ia.png I installed monero-gui like this: https://git.sr.ht/~whereiseveryone/confetti/tree/gnome/item/home.scm WDYT
Should a Guix Channel Have a Description?
Hi Guixers, What do you think of this proposal: https://issues.guix.gnu.org/60630 Should a record have a description? Here's a user story: WhereIsEveryone is developing a webring as an API for discovering Guix channels and their contents. With a growing* channels.scm file, IWBN to have a description about each channel as part of the data about that channel in the same way that users get a description about a package. WDYT See the toys README** for instructions on how to try this API and for more information on contributing. We could use all the hacking help we can get. * https://git.sr.ht/~whereiseveryone/toys/tree/master/item/channels.scm ** https://git.sr.ht/~whereiseveryone/toys/#usage
️ Install every Guix package ️
Hi Guixers, How would you approach writing a script that installs every Guix package exhaustively for your current revision? I'm thinking of something similar to `all-packages` on PyPi but for every Guix package (the whole wide ️). https://pypi.org/project/all-packages/
Re: What's missing from qutebrowser for text rendering?
Just adding this here as a note to self: oriansj jgart: the answer to your qutebrowser problem is a known defect with an easy work around: --qt-arg disable-seccomp-filter-sandbox true mroh ah, that explains why I have no fonts in kiwix-desktop. thx! jgart oriansj: [THANKS ]: Yay.
Re: What's missing from qutebrowser for text rendering?
I still get an empty wiki after doing everything you recommended ;() https://up.nixnet.services/y6p1ynig.png unwox, Hi, Do you use qutebrowser on Guix system? Do you know if you had to do anything extra or special to get text font rendering to work on sites like wikipedia?
Re: What's missing from qutebrowser for text rendering?
> Which fonts do you have installed? font-google-noto font-jetbrains-mono and whatever comes with gnome and the desktop-services
What's missing from qutebrowser for text rendering?
hi guixers, what am I missing from qutebrowser to render text from sites like wikipedia and g-golf documentation site? See this screenshot (will expire in a week): https://up.nixnet.services/j80xqgx7.png has anyone else run into this issue? I'm on guix system and I installed qutebrowser via my guix home profile Does qutebrowser on guix system require me to explicitly install fonts for it? all best
mumi tag team
Hi Guixers, What do you think if mumi had support for team or language tags?
chezmoi
Hi Guixers Happy GNU Year 2023, Should we remove the chezmoi package since it is 103 version releases behind current? I think it might be a maintenance burden currently to maintain it given the amount of dependencies needed to be packaged. Or, should we leave the package in until someone decides to update it? all best https://github.com/twpayne/chezmoi/releases/tag/v2.28.0