IRC channel logs

2022-12-05.log

back to list of logs

<lxsameer>hmm may copy a dir instead?
<podiki[m]>not sure, sorry. but seems like something you should be able to do (skeletons creating a directory if needed)
<jlicht>Can I "just" pass a `(scheme-file ...)' gexp to any of the `with-extensions'/`with-imported-modules' helpers?
<lxsameer>podiki[m]: thanks friend, I'll dig around
<podiki[m]>good luck and if someone doesn't have an answer i'd ask on the mailing list or just file a bug report
<jlicht>or to actually do what I want: I have a small local guile file, that only depends on some srfi stuff that are part of guile; can I make this module available for use to my gexp without making a proper package?
<lxsameer>podiki[m]: cheers
<civodul>jlicht: for with-imported-modules there's special syntax, like (with-imported-modules `(((foo bar) => ,(scheme-file ...))) ...)
<civodul>you'll find uses of that involving make-config.scm
<oriansj>podiki[m]: to answer your question: https://paste.debian.net/1262895/
<podiki[m]>oriansj: which question?
<lxsameer>podiki[m]: figured it out, it should be like ` (skeletons `((".ssh1" ,(directory-union ".ssh1" (list (local-file "./ssh/authorized_keys"))))))`
<oriansj>since guix currently has a bug with throws the attached error when you change an sshfs mount point from (mount? #f) to (mount? #t)
<oriansj>what would be the most guix correct to mount that filesystem on boot?
<lxsameer>podiki[m]: but the ssh service provides a way to do the same thing and I'm going to use it this way since it's not hacky
<lxsameer>Thanks for your help
<apteryx>oriansj: there's no support for network file systems in Guix at boot from what I know
<podiki[m]>lxsameer: ah good to know about both, thanks for sharing
<apteryx>I also use (mount? #f) for NFS mounts for that reason
<lxsameer>podiki[m]: cheers, thanks for your help :bow:
<oriansj>ok, that is nice to know but I need it to mount before the autologin runs and starts kodi
<oriansj>is there an mcron option?
<oriansj>does it support @boot?
<oriansj>on other distros I could just do: https://git.sr.ht/~oriansj/System_setup/tree/main/item/files/kodi.sh
<oriansj>but as guix seems not to be able to run that script on boot, I am stuck trying to glue this all together
<oriansj>since autologin I know works, it is just how to get the minimal subset of that script to do the mounting before autostarts kodi
<oriansj>or shall I abandon guix doing the proper thing, tweak my script to just run kodi and let i3 handle this
<oriansj>anyone experienced with tweaking sudo in guix?
<apteryx>oriansj: perhaps you could have a one-shot service that calls mount
<apteryx>that would depend on your session manager service
<oriansj>apteryx: well i3 has exec_always --no-startup-id which I can use to run a script
<lechner>Hi, is anyone running Dovecot for IMAP? I'd love to see your configuration. Thanks!
<oriansj>I have a clever lecture file for sudo; I notice guix doesn't have an option to include that
<oriansj> https://paste.debian.net/1262899/
<cbwang>Hi, does anyone know when Guix is going to use stage0 as their bootstrapping seed instead of mescc?
<oriansj>cbwang: mescc is bootstrapped from stage0
<oriansj>it has been that while for a long time now
<oriansj>^while^way^
<oriansj>specifically from M2-Planet which was built by cc_* which was built by M0 which was built by hex2 which was built by hex1 which was built by hex0 which is of course built by the hex0 bootstrap-seeds
<oriansj>a more accurate question is when is guix goiong to have the guix binary built outside of guix and not require the bootstrap Guile as a driver.
<oriansj>which is honestly anytime they feel like picking up the latest version of live-bootstrap as we already solved the guile bootstrap problem
<oriansj>#bootstrappable if you want to know the details as janneke is there and is the person who did the Guix bootstrap work. (I just did some stage0 pieces)
<cbwang>Thanks for the reply! Another question, currently is stage0 the only binary that the whole Guix OS is used during the build?
<oriansj>cbwang: no currently guix uses a staticly built guile binary to drive the build chain and execute a few guile programs that do things like uncompress gz files and unpack tars
<cbwang>And those guile, tar, stage0 etc. are the only seeds?
<oriansj>minus tar as it isn't a binary but a human readable scheme program
<cbwang>I see. Apart from that, is the current bootstrapping process fully reproducible? i.e. would I get a same sha256 for all the packages in the installation iso if I repeat the bootstrapping process on my own laptop?
<oriansj>cbwang: well there are a couple bits that are nondeterministic if I remember correctly and live-bootstrap has made progress in solving that issue
<cbwang>I see. Thanks!
<oriansj>plus if one is very exacting about root binaries in their tree of trust, one must mention that guix does also include a linux binary in its root of trust.
<oriansj>Live-bootstrap is making progress to eliminate that but that is still another year out before we can fully remove all operating system kernels from the root of trust (we wrote a POSIX kernel in 4K of hex0 [bootstrapped from a 510bbyte bootstrap seed] and used it to do all the stage0 +mescc + the first tcc step) Which we are now using to build a better kernel written in C that we hope will take us all the way to Bootstrapping Linux+Guix
<oriansj>on #bootstrappable rickmasters is the expert on kernel bootstrapping and his builder-hex0 work is really impressive
<oriansj>and we have stikonas doing UEFI bootstrapping for people who do trust their firmware
<oriansj>Impressive work honestly
<oriansj>Once we complete those chains we would have to start designing and building our own hardware to get more trust.
<oriansj>so if you know anyone interested in doing hardware to enable secure bootstrapping please let us know
<cbwang>Thanks! I'm interested in open source hardware, but I think currently making the Guix iso reproducible is the primary thing. I found little documents on the Guix website telling me how far they'd go. It seems that Guix 1.4.0-rc1 was released recently, but I'm not sure how much reproducibility they reached & how large their total size of seeds is.
<oriansj>cbwang: well the size by definition will only ever go down and at this point the only big pieces remaining are the staticly built guile and the linux-libre kernel
<oriansj>and the guile can be eliminated at anytime by any guix developer with only a couple days of work (for x86)
<oriansj>ok, now networking fails to start on boot but I can ssh in??
<oriansj>ssh into box: ping known operational IP address: ping: sending packet: Network is unreachable : WHAT?
<apteryx>are automatic labels derived from package names?
<apteryx>ACTION add-input-label has the answer
<apteryx>(list (package-name package) package output) for the usual case, so package NAME
<janneke>cbwang: yes, 1.4.0 uses the stage0-posix bootstrap; there will be a blog post
<viivien>So guix gc freed me 431 Go at the end :)
<janneke>some of us anticipated 1.4.0 somewhere last spring
<cbwang>janneke: thanks! How about the reproducibility in 1.4.0?
<janneke>cbwang: there was a thread some time ago and some bugs fixed i believe, but i don't know the current status https://lists.gnu.org/archive/html/guix-devel/2022-05/msg00022.html
<unmatched-paren>morning guix!
<xd1le>o/
<civodul>Hello Guix!
<civodul>hey mothacehe
<mothacehe>hey civodul!
<mothacehe>just replied to a new installer issue, a disk not syncing in less than 16 seconds apparently :(
<civodul>mothacehe: d'oh, interesting
<civodul>actually where are those crash dumps? :-)
<civodul>i realized we should check if anything reaches dump.guix
<mothacehe> https://dump.guix.gnu.org/
<civodul>as simple as this, tx
<mothacehe>the small webserver configuration is in the maintenance repository
<civodul>yes i remember seeing it some time ago
<civodul> https://dump.guix.gnu.org/download/installer-dump-ff0643d8 has nothing but syslog output
<civodul>is that expected?
<civodul>(it may be enough in this case though)
<mothacehe>the user can opt-in/out for every file
<mothacehe>so if there's just syslog that's probably because all the others files were unchecked
<civodul>oh right
<civodul>a disk with *18* partitions
<mothacehe>wow!
<civodul>what i don't get from that log is that /dev/sdh (the one that's EBUSY) doesn't seem to be used
<mothacehe>sdd you mean?
<civodul>i'm looking at "installer-dump-ff0643d8"
<civodul>it's from Nov. 24 though
<mothacehe>oh i was mentionning installer-dump-2a14e489
<civodul>that looks similar: /dev/sdd is not the one that's being partitioned and all
<civodul>one thing we're missing in syslog is the output of 'guix describe'
<mothacehe>right and right
<civodul>ACTION takes a look at 'guix describe' logging
<GNUtoo>hi, if I've a package (for instance coreutils), how can I know the path it will take?
<GNUtoo>will (assoc-ref <package> "out") (example: (assoc-ref coreutils "out")) produce that /gnu/store/[...]-coreutils-[...] path?
<user_oreloznog>o/
<GNUtoo>The context here is that I want to refer to a package in a service in my system.scm and both are defined in that system.scm file
<SUPERB[m]>There’s not Firefox nor Brave at the repository to install?
<GNUtoo>There is icecat I think
<SUPERB[m]>GNUtoo: Isn’t it out dated?
<SUPERB[m]>I mean the last version was established at 2019
<GNUtoo>version: 102.5.0-guix0-preview1
<GNUtoo>It seems up to date
<GNUtoo>As for icecat they just stopped making binary releases but they continue source code releases
<GNUtoo>Wikipedia says the current extended version of firefox is 102.5.0esr
<GNUtoo>So the way to look at it is probably though the Guix packages and not through the icecat website
<SUPERB[m]>Index of /pub/gnu/gnuzilla/60.7.0
<SUPERB[m]> https://mirror.ibcp.fr/pub/gnu/gnuzilla/60.7.0/
<SUPERB[m]>I guess that’s the latest version
<GNUtoo>Guix has 102.5.0esr
<SUPERB[m]>And I use multiple browsers on my system
<civodul>mothacehe: do you have insight regarding .drv that get GC'd early? that cause system tests to be marked as failed: https://ci.guix.gnu.org/jobset/version-1.4.0-tests
<GNUtoo> https://packages.guix.gnu.org/packages/icecat/102.5.0-guix0-preview1/
<SUPERB[m]>What’s your alt suggestion?
<GNUtoo> https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/gnuzilla.scm#n482
<GNUtoo>Basically it takes Firefox sources and re-applies icecat changes on top
<GNUtoo>I'm unsure if it applies all the changes but at least it uses a recent enough Firefox version
<SUPERB[m]>Ok
<SUPERB[m]>Ty
<SUPERB[m]>But I use multiple browsers on my system
<SUPERB[m]>What are your alternate suggestions?
<GNUtoo>I don't know, I've a different setup, I can't even use icecat because it depends on rust that isn't available yet on i686
<GNUtoo>I guess other browsers are up to date too
<GNUtoo>They can probably be checked with guix lint
<GNUtoo>You probably need to try to see if they suits your needs
<GNUtoo>The neat thing is that it's even possible to try on top of another distribution
<SUPERB[m]>Just found out Midori and ungoogled-chromium are available too
<GNUtoo>There is also epiphany
<GNUtoo>And several browsers that use vim-like or lisp interfaces
<GNUtoo>looking for "browser" finds many packages
<GNUtoo>some of these are not web browsers though
<SUPERB[m]>Typed guix search web browser
<SUPERB[m]>A list of available web browser showed up
<SUPERB[m]>Midori is among them but most of them are texual
<SUPERB[m]>Midori is on the list but most of them are texual
<GNUtoo>There are things like qutebrowser, vimb, nyxt, midori, luakit?, ungoogled-chromium-wayland/ungoogled-chromium, surf?, nomad, netsurf?, etc
<GNUtoo>eolie is the gnome browser
<GNUtoo>s/the/a/
<GNUtoo>Another solution would be to try to run the same browser with different profiles
<SUPERB[m]>Is it available to add like repositories to install programs on Guix?
<SUPERB[m]>Or I should only install through the main repository?
<GNUtoo>These are available in the main repository
<SUPERB[m]>Like add a repository to install brave
<GNUtoo>ACTION doesn't know that stuff, I don't even know if brave is free or not
<GNUtoo>Though I managed to make tor-browser work on i686
<SUPERB[m]>Brave runs on trisquel and pureos
<GNUtoo>For that I use a guix container
<GNUtoo>ok
<SUPERB[m]>But first you need to add the repository
<GNUtoo>Here it would be more simple to just package it
<GNUtoo>Else it's still possible to use chroots though I need to find time to refresh my debootstrap patches to add Trisquel
<SUPERB[m]>Installing Brave on Linux | Brave Browser
<SUPERB[m]> https://brave.com/linux/
<GNUtoo>PureOS is available in recent debootstrap so maybe that works in Guix
<GNUtoo>Also I've no idea if Trisquel patched brave or not
<GNUtoo>It probably did because most firefox browsers (is it based on firefox?) points users to nonfree addons
<SUPERB[m]>Brave is not at trisquel’s repositories
<GNUtoo>ah I missunderstood you then
<SUPERB[m]>You need to add the repository manually first
<GNUtoo>Ah I missed a line
<GNUtoo>You could try to package brave, but there are probably easier ways
<SUPERB[m]>It just can be installed by installing the repository referred to Ubuntu
<GNUtoo>like using the same browser with different profiles at the same time
<SUPERB[m]>GNUtoo: Sounds good
<SUPERB[m]>That’s a good ability of Guix
<GNUtoo>ACTION was thinking of browser profiles, but that probably also works with guix profiles if you export the right variables
<SUPERB[m]>Just installed Tinc vpn
<SUPERB[m]>But can’t find on the menu
<SUPERB[m]>* can’t find it on the
<GNUtoo>guix shell -C --expose=/run/user/$(id -u)/ --expose=/tmp/.X11-unix --expose=/tmp/.X1-lock --preserve="^DISPLAY$" --container --network <browser> bash [...]
<GNUtoo>That works for me to run graphical browsers, though I use it without -C
<GNUtoo>Ah ok brave uses adds as business model...
<davidl>Will there be a mips64 port for the 1.4 release?
<GNUtoo>I've finally solved my question, #$<package> worked, for instance if I do (string-append #$coreutils "/bin/[...]") It refers to the right path
<civodul>davidl: no
<mothacehe>civodul: it is not a GC issue, it's a publish issue. The publish server receives too many requests and timeouts on some of them.
<mothacehe>its visible in the nginx logs
<jlicht>civodul: thanks, that works for me. Could I also use these facilities to 'add' my local foo.scm (with define-module (foo)) to a gexp?
<mothacehe>civodul: more details at https://issues.guix.gnu.org/48468
<ardon>ChatGPT is truly scary good https://0x0.st/okdp.jpg
<zamfofex>ardon: Oh wow! Is that an actual real screenshot, or is it just meant as a joke? If it’s real, it’s really impressive!
<ardon>zamfofex: It's genuine. You can try it for yourself
<nikolar>That's terrifying
<Humanoid>When using "guix system init", how do I get the default list for %base-packages, %base-services, %base-user-accounts, %base-user-accounts. Is there some scheme script that can be used to print those values?
<Humanoid>I meant %base-file-systems as the 4th in my question.
<davidl>Thought: wouldn't it be cool to have a guix system rollback --state={postgres,mysql...,root?} that would let you roll-back service-related directories like /var/lib/mysql etc? Say if system services declared a record for state-directories that they write their state-files to, it could be bundled nicely with roll-back feature - for example it would be nice to be able roll-back the Gnome desktop service to a prior state.
<davidl>...this would be a btrfs snapshot feature.
<civodul>mothacehe: oh i see, i hadn't thought that was related
<davidl>...state-files/directories: would just refer to anything that keeps a programs state in between it stops and starts, so files and directories where a program writes to disk.
<darosior>What's the syntax for "rust:cargo" but in a packages->manifest? I struggle to find documentation about how to specify a specific output of a derivation in a manifest file
<darosior>Found the syntax: (list rust "cargo")
<rekado>ardon: I asked it to translate the Nix package definition for tensorflow to a a Guix package definition. It looks plausible (and is syntactically correct) but is otherwise quite wrong.
<ardon>rekado: Yeah, it's not that accurate. For instance, in my above example it missed many of the module imports. However, I can see it being used as an assistant for now
<darosior>Does anyone know if there is a way to link Rust against a specific glibc? In the same way it's possible to use a specific gcc toolchain with (make-gcc-toolchain gcc glibc-2.X)
<zamfofex>darosior: Have you tried ‘--with-input’? I don’t know the procedure name for it.
<darosior>I haven't. Thanks for the hint i'll give it a look
<zamfofex>Seems like the procedure is ‘package-input-rewriting’.
<reyman>Hi ! If there are rust champion here, i'm interested to know i could supercharge/overwrite the rust version into rust package compiling. I try this
<reyman>(define-public rust-latest (@@ (gnu packages rust) rust-1.65))
<reyman> (native-inputs (list rust-latest `(,rust-latest "cargo") clang-toolchain-14 git-minimal ninja gn ccache (make-lld-wrapper lld) python pkg-config python-pkgconfig))
<reyman>but when i look at PATH in environment variable i see rustc 1.60
<reyman>so rust 1.65 seems not used
<reyman>I have two rust, the 1.60 and the 1.65 into my PATH, how could i remove one using native input ?
<reyman>export PATH="/gnu/store/6l1pbfzfd5wgyazx4gbsgqgp0p43kn8m-rust-1.60.0-cargo/bin:/gnu/store/zi56fka0w6s7ymm626kjfzz28bgkbapr-rust-1.60.0/bin:/gnu/store/ksdqwar1f7jdzf6idffvzmxvwfx7cv8g-rust-1.65.0/bin:/gnu/store/ddc44h6223byr20s23740bbncwflynfw-rust-1.65.0-cargo/bin
<jlicht>reyman: is this new package using the cargo-build-system?
<reyman>yep
<civodul>zamfofex: you may find this useful: https://guix.gnu.org/manual/devel/en/html_node/Defining-Package-Variants.html
<rekado>speaking of Rust: the antioxidant build system got so close to completion. Is anyone capable of taking over the work?
<jlicht>if so: "A different Rust package can be specified with the #:rust parameter"
<jlicht> https://guix.gnu.org/manual/devel/en/html_node/Build-Systems.html#index-cargo_002dbuild_002dsystem
<zamfofex>civodul: Oh? Did you mean to mention someone else? Or what does this refer to?
<reyman>great @jlicht ! i didn't see that, i try !
<civodul>zamfofex: ah dunno, i saw you were discussing --with-input and all that
<zamfofex>Ah, fair enough!
<civodul>rekado: yes, i wonder! it'd have been great to have one of the usual Rust packagers pick it up
<civodul>especially since antidote mentioned they were "on hiatus"
<civodul>maybe the maintainers could call for help?
<darosior>civodul: thanks, that link was helpful to me.
<mbakke>(guix build utils) is missing a procedure that returns the "top-level" store item for a file
<mbakke>i.e. (mystery-procedure (search-input-file inputs "/lib/libfoo.so")) should return /gnu/store/abc123-libfoo
<mbakke>I could write it, but not sure what to call it
<reyman>so @jlicht, i could write something like #:rust (rust-latest) with (define-public rust-latest (@@ (gnu packages rust) rust-1.65))?
<mbakke>the motivation is to get rid of the many (dirname (dirname (search-input-file ...))) incantations for something more intuitive
<reyman>i search an example on the web but i found few
<xiews>Hi, is there a guix package for gentoo?
<xiews>emerge guix gets nothing.
<nckx>civodul: anti​pode… Who's on your list of ‘usual Rust packagers’? (Building mine :)
<nckx>xiews: Maybe <https://github.com/trofi/nix-guix-gentoo>.
<nckx>(Not a recommendation, haven't used it.)
<mbakke>ACTION hides
<xiews>nckx: thank. Let me check.
<reyman>if i write this #:rust (@@ (gnu packages rust) rust-1.65), that works
<reyman>but using the (define rust-latest) , that don't work, i'm loosing my mind with quote,quasiquote ahah
<reyman>if i call #:rust (rust-latest), this is the same thing to #:rust (@@ (gnu packages rust) rust-1.65), no ?
<reyman>considering rust-latest is (define-public rust-latest (@@ (gnu packages rust) rust-1.65))
<nckx>You're falling into the same trap as last time: (foo) calls foo as a procedure. rust-latest is not a procedure.
<civodul>nckx: of course there's ef​raim but there's also quite a few people who contribute Rust packages, even if they're not taking responsibility yet :-)
<civodul>at any rate, it'd be sad to see this project bitrot
<reyman>arg you're right nckx :D !
<nckx>It's just that my ‘list’ is rather short.
<civodul>Rust packaging as it exists is a serious liability
<nckx>Plus, a lot of exceptions <https://notabug.org/maximed/cargoless-rust-experiments/src/master/antioxidant-packages.scm> which are a bit over my head.
<civodul>could be
<civodul>anyhow i think IWBN to form a group around this
<civodul>mbakke: we could copy direct-store-path from (guix store) to (guix build utils)
<mbakke>civodul: that's perfect, I'll prepare a patch, thanks :-)
<civodul>yw :-)
<reyman>as a noob in packaging and guile, trying to package a rust package (without knowing rust), is a strange experience :) But that works with some hacks. My objective is packging Quarto, because this is the future of rmarkdown for R/Python.
<reyman>and we need it to prepare reproducibility for materials in R in a summer school
<jlicht>reyman: I hope you're situated in the global North then, so you'd still have some time ;)
<reyman>after that i probably start to look a sbt builder
<civodul>reyman: yeah Rust packaging is not pleasant
<civodul>it's in part due to the fact that it's special-cased in Guix in a weird way
<civodul>and you cannot use standard tools with it
<civodul>but that in turn is largely due to the weird compilation model of Rust
<reyman>yes i'm in France, so i have some month, but i try/error and learn about packaging / rust/ since two weeks now i think :)
<reyman>the fact that Quarto take old version of Deno that take many dependencies, like huge C++ lib like v8 / chromium (30 minutes of compilation) in dependency didn't help.
<Humanoid>Does anybody know the list of %base-packages and %base-services?
<reyman>they did horrible thing for reproducibility in some crate, like uploading into the crate directly a .tar.gz that contain a snapshot of C library, like libffi for example.
<rekado>Humanoid: yes, these are defined in the Guix source code
<rekado>see gnu/system.scm
<rekado>for the definition of %base-packages
<rekado>you can also inspect it in the REPL
<rekado>guix repl
<rekado>and then ,use (gnu)
<rekado>followed by ,pp %base-packages
<civodul>reyman: you're really looking at some of the most difficult things to package
<rekado>the things starting with a comma are REPL commands
<rekado>,use is equivalent to (use-modules …)
<Humanoid>rekado, I see it in system.scm, thanks! I will try guix repl as well to see.
<civodul>reyman: not sure if that's consolation but it's much better than this on average :-)
<rekado>,pp is for pretty printing
<civodul>see also: https://guix.gnu.org/manual/devel/en/html_node/Using-Guix-Interactively.html
<rekado>hey, should the pypi importer generate expressions using pyproject-build-system instead of python-build-system?
<rekado>I think this would be an improvement in most cases
<elevenkb>Is it possible to make a channel that points to a local git repository?
<rekado>I think so. But it could make sense to do without the channel mechanism if you don’t intend to share it anyway.
<rekado>you could extend Guix with GUIX_PACKAGE_PATH or with “guix command -L /path/to/your/modules”
<reyman>:D thanks @civodul, unfortunately I have a certain taste for build systems (maven, osgi, sbt and other horrible things people need one day or another), i try to recover from that, but it's hard :D
<elevenkb>indeed rekado: but; the channel I was pull has a minor error in a package definition so now guix pull doesn't work.
<Humanoid>rekado, guix repl works well. I can use that to inspect far more stuff. Thanks!
<elevenkb>so yah maybe if I just keep a local version of the package and extend GUIX_PACKAGE_PATH like that then I can exert moar freedoms and autonomy.
<elevenkb>i mean the channel, not the package.
<rekado>Humanoid: yeah, it’s pretty neat!
<reyman>Nix langage is my limit, too much experimentation in a single language. I try to understand overlay with flakes and such other thing but i finally loose my mind after 6 month to try. There are too much trial/error lib developped by a huge community, but if this is good for diversity, this is catastrophic for reproductibility. Guile is more monolithic, i prefer.
<elevenkb>thanks btw rekado.
<acrow>Returning to the joy of guix, yay!
<lechner>me too
<apteryx>rekado: re pyproject-build-system I think so, but note that pyproject-build-system is slate to replace python-build-system at some point
<apteryx>so we could just wait for that to become true
<apteryx>*slated
<Tecjor[m]>guix upgrade enlightenment, It doesn't work, how do you do it?
<apteryx>Tecjor[m]: what are you tring to do?
<Tecjor[m]>update desktop environment in Guix system
<jlicht>Tecjor[m]: that would be done as part of `guix system reconfigure ...', normally
<jlicht>Or do you mean to use a more recent version of a specific DE? That would involve packaging the new version yourself, in most cases
<apteryx>cbaines: hi! any clue why https://qa.guix.gnu.org/issue/59811 is marked as failing?
<apteryx>Tecjor[m]: so you'd like to upgrade th enlightment version to a version not in guix yet?
<apteryx>if you just want the latest available in guix, 'guix pull && guix upgrade enlightment'
<apteryx>if you want to try to update its package definition in Guix, you'll want to read info '(guix) Contributing'
<apteryx>once you have a built checkout of guix, you can try './pre-inst-env guix refresh --update enlightment'
<GNUtoo>Hi, as I understand the base32 in (sha256 (base32 "[...]") comes from Nix (https://nixos.wiki/wiki/Nix_Hash), is there some tools that can convert a sha256 to this (sha256 (base32 "[...]")) ?
<zamfofex>Usually sha256 is written in hex, so I think it’s just a matter of converting between radices.
<GNUtoo>ok
<GNUtoo>ahh maybe I've found it, it's not in this wiki page though but man nix-hash has this example:
<GNUtoo>nix-hash --type sha1 --to-base16 nvd61k9nalji1zl9rrdfmsmvyyjqpzg4
<GNUtoo>and nix-hash --type sha1 --to-base32 e4fd8ba5f7bbeaea5ace89fe10255536cd60dab6
<GNUtoo>I'll try it and see if it works fine
<civodul>"description contains typo 'This packages', should be 'This package'"
<civodul>yay, thank you vagrantc
<cbwang>Does anyone know if there's a website like r13y.com in NixOS to monitor the core packages reproducibility in Guix?
<civodul>cbwang: better than r13y.com because it's about all the packages on all the architectures :-) https://data.guix.gnu.org/repository/1/branch/master/latest-processed-revision/package-reproducibility
<cbwang>That one is good. But I'm primarily concerning about the core packages & the packages in the iso.
<Andronikos>Can someone tell me the state of Dart? https://issues.guix.gnu.org/44926 will not load on Firefox
<Andronikos>I am asking since I need Flutter.
<unmatched-paren>Andronikos: well, flutter requires the android sdk
<unmatched-paren>which definitely isn't gonna be packaged anytime soon
<unmatched-paren>afternoon guix btw :)
<Andronikos>Can that even be packaged since last time I wanted the SDK it always pointed me to the whole Android IDE Suite and so on. Really annoying installing that whole IDE if you don't even going to use it.
<unmatched-paren>Andronikos: I have no idea.
<unmatched-paren>It'd at least require an enormous effort.
<jpoiret>it can. the question is: how many decades would it require?
<Andronikos>Is it more of a annyoing work or more of working against Google?
<Andronikos>would*
<unmatched-paren>Probably a huge amount of both.
<Andronikos>Oh okay nevermind. Thought as a beginner I could learn a lot but if it is more of a hacky thing I will not even try.
<lechner>Andronikos /
<lechner>Andronikos / unmatched-paren / i think there is a way https://tracker.debian.org/pkg/android-sdk-meta
<unmatched-paren>lechner: it's usually harder to package things for guix than debian, but good find :)
<lechner>unmatched-paren / Having rewritten the Haskell build system for Debhelper, I think Debian tools are massive and even harder to learn
<unmatched-paren>lechner: i mean that guix has some constraints that debian doesn't have
<unmatched-paren>such as the non-FHS thing
<lechner>For example, Debian tracks symbols for shared libraries (across architectures) https://sources.debian.org/src/wolfssl/5.5.3-3/debian/libwolfssl35.symbols/
<lechner>unmatched-paren / yeah, in that respect you are right
<GNUtoo>ok, it works
<GNUtoo>The big advantage is that it avoids downloading the data twice and it also reuses an existing hash for checking
<lechner>unmatched-paren / btw the symbol tracking, i am happy to write, will never be needed in Guix!
<unmatched-paren>lechner: is it something to do with the fact that debian can't have multiple versions of the same library?
<yarl>Hello guix.
<lechner>hi
<lechner>unmatched-paren / actually, the do. the issue is that upgrading the same SONAME version can (and often does) cause stability issues in consuming executables
<lechner>Debian never recompiles anything in the archive
<yarl>Should I had a copyright notice every time I modify a file which does not contains mine yet? Should I do that for very small and unimportant changes? I am asking this because I saw by git-logging that some files have some changes by authors that did not add their copyright notice.
<lechner>yarl / your choice. i do not add mine unless i feel i contributed in a meaningful way.
<lechner>in the eyes of whoever reads my patch
<mirai>is generic-serialize-alist (from gnu/services/configuration.scm) compatible with g-expressions?
<yarl>lechner: Ok, thanks. That's kind of what I thought. I prefer to ask, maybe there are some implicit rule there.
<lechner>yarl / sometimes i do it on the third patch, sometimes never. for most free software, the year is most important. so if you see 2022 already, you know that there is protection (unless you are really young, because the copyright in many places is your life plus seventy years). in case of a legal dispute, which someone like the SFLC would file, there is also a commit log
<lechner>yarl / sometimes people invite you. please do that if you end up being a maintainer. here, for example, the maintainer asked me to resubmit my patch to include my name in the list of contributors. https://github.com/certbot/certbot/commit/641aba68b1c2e57a912e5edf95178cd29fd66b4b
<podiki[m]>yarl: for guix the rough rule of thumb I've heard is around 5-10 lines as a cutoff, but you can add it for less I don't think anyone will mind
<podiki[m]>you'll see it not added for some people because they may have a copyright line for that year in that file already
<yarl>podiki[m]: ok, thank you.
<podiki[m]>Guix does not assign copyright to FSF unlike say emacs or other gnu projects
<podiki[m]>the manual doesn't have any guidelines other than how to add your copyright (and some tools we provide for that)
<podiki[m]>(the rule of thumb I saw come up was only rarely mentioned, not an official policy; perhaps something we could clarify)
<lechner>yarl / you could supply a patch to the docs with podiki[m]'s clarification in a place that seems appropriate to you. the text would be reviewed for accuracy in that process
<podiki[m]>and/or an email to the devel list to ask
<yarl>lechner: I can add it to my todo list :)
<cbaines>apteryx, I'm not sure what was going on with https://qa.guix.gnu.org/issue/59811 but the data seems to be showing up now
<Andronikos>Is this a rework of issues.guix.gnu or something different?
<unmatched-paren>Andronikos: QA is for automated patch testing
<unmatched-paren>i think it shows if your patch broke any packages, for example
<unmatched-paren>or if the packages it adds fail to build
<Andronikos>Ah got it. Thanks
<apteryx>hm, my Geiser stopped working
<apteryx>it hangs waiting for a prompt
<apteryx>cbaines: OK, thanks. Could these be false positives?
<apteryx>how can I tell the reasons it failed for? can I see the logs from that interface?
<cbaines>apteryx, in the Package build status table, it's the additional failing builds for i686-linux that's the reason it's marked as failing
<cbaines>apteryx, it's quite possible there are false positives, as I've noticed weird i686-linux build failures on the build farm
<cbaines>apteryx, although... I think the reason here might be that some of the builds that were "blocked" previously are now failing
<cbaines>you can kind of see that from the interface if you look at the numbers in the table in detail, but this is something that can hopefully be fixed
<cbaines>but I'm not quite sure how yet...
<apteryx>I don't really see how that change could affect negatively *some* platforms
<apteryx>it's just removing code
<apteryx>or more accurately moving it to a new package definition
<apteryx>is anyone else observing geiser getting stuck at the prompt on their setup?
<apteryx>C-c C-c doesn't help
<cbaines>apteryx, have you had a look at the Guix Data Service comparison for i686-linux?
<cbaines>I've been looking at the change to zfs, and it seems like for the base revision, the linux-libre-6.0.10 input failed to build, but that same input successfully built for the target revision
<cbaines>I can't quite tell if that failure for the base revision is spurious or not (this is the derivation https://data.qa.guix.gnu.org/gnu/store/981g934ywgw1qxd7qayn4bkm3jys0i54-linux-libre-6.0.10.drv )
<mirai>Can someone try the command `mcron -s` and confirm if it's also resulting in errors?
<unmatched-paren>mirai: yep
<mirai>the description for that option is "-s, --schedule[=N] Display the next N (or 8) jobs that will be run"
<mirai>I presume this is a mcron bug then?
<unmatched-paren>i suppose it makes the argument optional when it shouldn't
<mirai>unmatched-paren: it should be optional as it says 8
<unmatched-paren>Oh, right
<jlicht>apteryx: just plain old geiser(-guile)? Or geiser-connect?
<apteryx>I usually start it with geiser-mode-switch-to-repl-and-enter (C-c C-a)
<apteryx>but yeah, even M-x geiser-guile gives me with a borked REPL
<apteryx>there was a recent update to geiser
<jlicht>hmm, I only see funny business for geiser-connect (to either a guile process or guix repl process), but geiser-guile seems to work fine (/w geiser 0.28.1)
<jlicht>The entire geiser-version.el file seems to be missing though
<apteryx>OK, thanks fo checking
<apteryx>ACTION is testing a change that causes the inferred cross toolchain components of the gnu-build-system to match version of gcc, libc, binutils, etc. used in native-inputs
<mirai>any chance for this small fix to be merged? (https://issues.guix.gnu.org/59711)
<mirai>with ras-mc-ctl broken it's impossible to know if rasdaemon is doing anything
<apteryx>ACTION peeks
<apteryx>looks good per https://qa.guix.gnu.org/patches
<mekeor[m]>hello. slightly off-topic. does anyone know how to fetch an IMAP url like this, e.g. using isync/mbsync? imaps://;AUTH=ANONYMOUS@news.yhetil.org/yhetil.gnu.guix.patches
<mekeor[m]>i guess i need to define an IMAPAccount in the isync config file
<lechner>mekeor[m] / i am not sure if you need an account. (i do.) i think an account can serve multiple stores, but you could just go with the latter http://frostyx.cz/posts/synchronize-your-2fa-gmail-with-mbsync
<mekeor[m]>lechner: in fact, i already use mbsync for my emails. i guess, i was wondering if it's possible to just "mbsycn imaps://..." or so
<lechner>mekeor[m] / i think you can name channels on the command-line, but you still need a config file
<apteryx>mirai: applied #59711, thank you
<mirai>apteryx: thanks!
<yarl>night
<ieure>I'm trying to explore Guix System in a VM on a Debian machine. I downloaded the QEMU image and went to the "Installation instructions" page for them: https://guix.gnu.org/manual/en/html_node/Running-Guix-in-a-VM.html
<ieure>The "Connecting Through SSH" instructions don't work or aren't really for what they seem to be.
<ieure>1. It doesn't explain *how* to enable the openssh-service-type at all.
<ieure>2. The command to forward SSH port 22 seems to be intended to run on the host OS, and also assume that's a Guix-running machine of some sort. But if I already had Guix installed, I wouldn't be following instructions to install it.
<ieure>*How* do I enable the SSH service inside the VM?
<ieure>How do I do whatever port forwarding stuff is needed to access that from my Debian host OS?
<mekeor[m]>ieure: hmm, i only know how to start the ssh service in general: herd start ssh-daemon
<ieure>(This is my second attempt to test drive Guix. I'm fascinated by the ideas, but have found the documentation woefully inadequate for the learning curve.)
<mekeor[m]>ieure: does that help? what does that command output?
<ieure>mekeor[m], I get a connection error as an unprivileged user, and "herd: service 'ssh-daemon' could not be found" as root.
<ss2>ieure: You will have to put the service-type into your config.scm, reconfigure, then it will immediately become available. It should auto start too.
<mekeor[m]>ieure: i guess that means that the image you are running does not have the ssh-daemon service enabled. unfortunately, i don't know where in the code-base the system declaration of that image is located. so, i can't verify. but you'd need to do what ss2 says.
<ieure>ss2, "into your config.scm" what config.scm? Where can I find it?
<ss2>/etc/config.scm
<ieure>ss2, That file doesn't exist inside the QEMU image.
<ieure>It's the one from this page: https://guix.gnu.org/en/download/
<ss2>interesting. I haven't booted the QEMU in ages.
<ieure>And the instructions for the openssh stuff are on the page "Installation instructions" links to. It's directly under the download link.
<ss2>why not set up a vm and install it directly there?
<ieure>ss2, That's literally what I'm trying to do.
<ieure>I dowwnloaded the QEMU VM image and ran it.
<ieure>*downloaded
<ss2>The qemu is preinstalled, just grab the actual system installer.
<ss2>And install it to a vm. But don't try it version 1.3.0. It is considered old now, and currently there is a release candidate in the making.
<ieure>Well then what's the point of having the preinstalled QEMU image if you have to use the installer image to install it yourself?
<ss2>The current builds are usually fine too.
<ieure>I don't know what I expected.
<ss2>have a look at it. I thought it was neat then too. But installing the system is a whole different experience well worth exploring.
<ss2>*to have..
<ieure>ss2, I installed it on hardware maybe a year ago, but bounced off it because I had no idea how anything worked and the documentation was unhelpful.
<ieure>ss2, Are there more current images? Because I'm literally on https://guix.gnu.org/en/download/ and 1.3.0 is all they have.
<ss2> https://guix.gnu.org/en/download/latest/
<ss2>and https://lists.gnu.org/archive/html/guix-devel/2022-12/msg00000.html
<mekeor[m]>unfortunately, https://guix.gnu.org/en/download/latest/ does not offer a qemu image
<ss2>There aren't any. Only the installer and the binary.
<mekeor[m]>but yes, that mail thread does!
<mekeor[m]> https://alpha.gnu.org/gnu/guix/guix-system-vm-image-1.4.0rc1.x86_64-linux.qcow2
<mekeor[m]>i wonder how to get the system declaration of the qcow2 image
<mekeor[m]>i guess, i'd need to load the respective module from the guix-repository into a guile-repl
<mekeor[m]>the last link i posted should be using linux, not hurd, right?
<ieure>ss2, Downloaded the 1.4.0rc1 QCOW2 image, it also doesn't have an /etc/config.scm file.
<podiki[m]>you can always find the config for the current system with guix system list-generations (it will show you where each generation's config is)
<podiki[m]>or just guix system describe
<mekeor[m]>nice! didn't know that. that should solve ieure's problem! :)
<ieure>Sure, okay, but: I'm a new user. I'm reading the documentation for new users to install it. Given that, how am I supposed to know about those things?
<podiki[m]>this is probably what the vm image is built from: https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/system/examples/vm-image.tmpl
<mekeor[m]>ieure: the manual is not perfect. you did the right thing: ask here
<podiki[m]>e.g. https://guix.gnu.org/en/manual/devel/en/html_node/Invoking-guix-system.html
<ieure>mekeor[m], I know it's not perfect; I've read it.
<podiki[m]>or after installing the next pages in the manual https://guix.gnu.org/en/manual/devel/en/html_node/After-System-Installation.html
<mekeor[m]>podiki: what about this?: https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/system/image.scm#n208
<mekeor[m]>ieure: i know you know :D
<podiki[m]>mekeor: at quick look I think that is just defining the image type (for making qcow images), not the actual system configuration
<podiki[m]>but I'm only looking quickly now as I'm supposed to be doing something else :)
<ieure>mekeor[m], I guess what I'm wondering is, does the Guix community share my opinion that the Guix documentation is unhelpful, and if so, is anything being done to address that?
<ieure>It's the sort of documentation that makes perfect sense if you already know what you're reading it to learn.
<ieure>Is my hot take.
<podiki[m]>the documentation is pretty good, but certainly can use improvement; suggestions/difficulties a new user has are always welcome to hear about
<ieure>podiki[m], Is there a good venue to make suggestions / point out things that are unclear which are more likely to get those addressed than griping in IRC?
<podiki[m]>here is fine to start :) often people are here who can make those changes, but otherwise bug reports or emails to a mailing list (probably help-guix best) are good
<podiki[m]>I would dive in more now in the specifics you bring up but have to get back to something else
<podiki[m]>but please do share feedback as a new user, it is welcome
<podiki[m]>(to be specific small changes can be worked out quickly in IRC, but otherwise bug reports, patches, and/or email to the lists is what you want)
<podiki[m]>ACTION must away for now
<ieure>Okay, thank you. I'll bias towards bug reports.
<mekeor[m]>same, bug report sounds good to me, personally, too
<ieure>Install failed because a substitute server was slow and timed out. If I choose not to use a substitute server, that means the whole system compiles on my local box, yes?
<mekeor[m]>ieure: afaik, iiuc, yes
<ieure>ugh
<mekeor[m]>ieure: maybe try --substitute-urls="https://bordeaux.guix.gnu.org https://ci.guix.gnu.org"