IRC channel logs

2020-03-05.log

back to list of logs

<MtotheM>Does guix clean up after itself? or is that still something I'd have to do myself? Let's say I install a program that puts config files on the system. but later on decide I don't want it anymore. would those files still longer? or can you have guix clean up after itself fully?
<MtotheM>linger*
<killmeplease>MtotheM: for package managers in general that's a VERY difficult issue
<killmeplease>The rule usually is "yes if it's in a certain directory [not sure how that maps to guix] has a certain hash and/or modification time"
<nckx>MtotheM: Guix cleans up after itself, but not after the software you install with it. That's not currently in scope.
<killmeplease>So if I don't touch /etc/whatever it'll delete it when the program goes [as that's safe, provided nothing else is installed that may also read it but not fully depend on the project [yep that happens]]
<killmeplease>If I /do/ touch /etc/whatever whether or not you want it "purged" is a different question
<MtotheM>Ah
<killmeplease>....
<nckx>One approach taken by guix-home-manager (not an official Guix™ feature) is to lock down your entire home directory as read-only, thus ‘solving’ the problem of programmes writing random config files. A bit draconian but very Guixy in its own way.
<killmeplease>Yeah the state-as-version-control thing is powerful, but does not support the idea of deletions very well!
<nckx>But it doesn't handle /etc, /var, etc.
<killmeplease>I used that as an example of a config file, you would expect it to be in the domain of the package - as opposed to ~/,whateverc
<nckx>Right.
<killmeplease>Me being right is not worthy of report ;)
<nckx>That particular sausage factory is still pretty nasty though.
<killmeplease>I don't understand that reference? Is that using sausage factory as some sort of pinnacle of automation or as a low target?
<nckx> /var/hardcodedfoo is part of foo until it isn't and somebody else writes to it. Oh well. Hope it wasn't important. Also hope your packager didn't miss any hard-coded directories. In general, hope many things.
<nckx>killmeplease: As something of which you don't want to know the inner workings.
<lfam>Make the entire computer immutable
<nckx>Guix System Manager.
<killmeplease>lfam: record all the data!
<killmeplease>One day we can use it to make actionable business data driven inference proposals which we file and don't do.
<nckx>Guix is a wonderful experiment in putting ‘state is evil’ in a cage with a ‘state is everything and everything is state’ Unix derivative and making them fight to the death.
<nckx>We're all just along for the ride.
<nckx>And the popcorn.
<lfam>I didn't know there was popcorn
<killmeplease>...yep. And like version control the idea of deletions is difficult, systems sidestep this by just tracking the file [at best] or removing it from that state and leaving it in derived, guix can't track the effect that had on others :) We get it
<nckx>There is but it's read-only. You can look at it.
<lfam>Lol
<nly>hi nckx
<nly>how does one fetch multiple files with url-fetch?
<nly>(advance) thanks!
<nckx>nly: One doesn't. (url (list …)) only specifies different mirror URIs for the same file. If a package source consists of multiple origins, one can either choose one as ‘primary’ (source …) and add the rest as inputs (inputs can be origins, not just packages), or use a computed-origin-method as done for icecat, linux-libre, and others. The latter's cleaner (guix build --source does the right thing) but more complex.
<nckx>For a more specific answer, give more specifics. 🙂
*nckx → away.
<nly>nckx: there's this file on emacswiki + its dependencies: https://www.emacswiki.org/emacs/bookmark+.el
<nly>thanks
<nly>i think i've got it
<nly>nckx: i made some progress https://git.piviq.ga/guix.git/commit/
<Blackbeard>Hello
<Blackbeard>Emacs is not detecting the modes I installed
<Blackbeard>Nevermind
<nly>Blackbeard: great
<Blackbeard>nly: :)
<narispo>hry
<narispo>hey *
<narispo>does anyone have a working sway configuration for GNU Guix?
<MtotheM>So. when I SSH into the GUIX distro. I get this every time I run GUIX 'guile: warning: failed to install locale' but it doesn't display locally.
<MtotheM>That's odd
<MtotheM>what do you mean by config FOR guix? narispo, if you want the config for sway. there is a default example in '/etc/sway/config'
<narispo>MtotheM: GNU Guix System Configuration
<MtotheM>does it not work if you just include it in the package list?
<MtotheM>this section in the default config '(packages (cons screen %base-packages))'
<narispo>MtotheM: Nope, it says "error reading from status command"
<apteryx>nckx: python twoism. haha.
*apteryx is going through the logs, looking for something suspicious that might have broken 'make check-system TESTS=btrfs-root-os'
<apteryx>MtotheM: this suggests that you are missing environemnt variables in your SSH shell. Look for GUIX_LOCPATH
<apteryx>it should be set to /run/current-system/locale
*apteryx lets 'git bisect run make check-system TESTS=btrfs-root-os' do its magic overnight
<efraim>killmeplease: regarding the sausage factory, I assume it's a cross between sausages generally getting whatever's leftover at the meat packing plant and the description of a meat packing plant from The Jungle by Upton Sinclair
<navik>My `guix system init <config> /mnt` fails on building the keymap; what is the default keymap, which I could try to just get the system floating?
<navik>nevermind, found the default config :)
***sneek_ is now known as sneek
<bricewge>Hello Guix!
<bricewge>Is there a way to nicely compose configurations, in particular services?
<bricewge>To configure my laptop I have a t430.scm file which should just contain specific hardware config and should inherit from workstation.scm that contains graphicals settings itself expanding on base.scm.
<bricewge>In Nix this kind of setup was painless but in Guix it doesn't look straightforward. Am I missing something to achieve such a setup?
<drainful>Yeah I feel the same pain. I don't know if there's an elegant solution. I've been drafting some macros to merge records like nix sets, but the introspection facilities on records is poor. For now I just have this function to create a composable "os part" that includes a list of packages and services https://pastebin.com/DhLqBgfJ
<drainful>The list of packages/services from your merged os-part can be slotted in to your operating-system like this(operating-system (packages (assoc-ref os-part #:packages)) (services (assoc-ref os-part #:services)))
<drainful>bricewge: forgot to mention you
<raingloom>is it a bug if i can't build guix with `make -j 2`, only `make`?
<wingo>yes
<nckx>raingloom: Guix itself? Yes, unless you're running out of memory or something.
<raingloom>nckx: that also happened, but i tried again and it failed again
<nckx>raingloom: We'll know more if you paste the exact build output. And check dmesg, the OOM killer's excursions are logged there.
<nckx>apteryx: Any luck so far?
<efraim>IIRC building the daemon is a race nightmare, that definately needs to be single threaded
<nckx>Orly? I always run ‘make -kj `nproc`’ without ever having problems. I must be lucky, or unlucky to not have enough cores.
<raingloom>nckx: here it is http://paste.debian.net/1133555/ latest commit as of an hour or so ago
<nckx>efraim: That's the first I hear of that.
<efraim>nckx: I definately didn't have a clean checkout at the time
<efraim>also I think it was a machine I have access to with 56 cores
<nckx>raingloom: ‘Terminated’ is a big finger (with Austrian accent) pointing at the OOM killa.
<nckx>efraim: Well poor you.
<raingloom>nckx: hmm. oh, damn, looks like i missed the second entry in the earlyoom log.
<nckx>I always (scriptily) build cleanly the exact same way, so it's quite possible my dance avoids the problem. That and my 4 measly threads.
<raingloom>okay, nevermind i guess
<raingloom>back to getting this tablet working
<bricewge>drainful: That's an interesting take on this.
<bricewge>It made me remember the existence of modify-services; just to realize that it don't support simple-service. Argh
<guix-vits>Hi Guix.
<guix-vits>narispo: barely-working, but running: https://paste.debian.net/1133560/
<guix-vits>don't forget to delete or move out i3 configs.
<guix-vits>path to default configuration: /run/current-system/profile/etc/sway/config
<guix-vits>custom one is in .config/sway/config
<apteryx>nckx: it's still going at it
<alextee[m]>is it ok to package a package from upstream repository that contains proprietary code that only gets compiled in on windows?
<alextee[m]>(this https://github.com/thestk/rtaudio)
<nckx>alextee[m]: If you remove all the offending code in a snippet.
<alextee[m]>nckx: cool, thanks
<joshuaBPMan>morning guix!
<nly>hi chrislck: does gnucash have invoice generation?
<nly>example: https://fosslook.com/images/invoice_landing/inv-templ2.png
<chrislck>nly: of course
<chrislck> https://www.gnucash.org/docs/v3/C/gnucash-guide/bus_ar.html#bus-ar-invoices1
<nly>nice
<apteryx>nckx: # first bad commit: [205c1e04e04b9a9338c7219ff82bd13f000fb8c8] gnu: shepherd: Update to 0.7.0.
<apteryx>nckx: I've create an issue about that
<apteryx>created*
<RRedcroft>Hi guys, just installed guixsd and got a problem with reconfigure
<RRedcroft>following the manual, ive done 'guix pull' as user and that seems to have worked fine
<RRedcroft>but then running 'sudo guix system reconfigure /etc/config.scm' says: 'guix system: warning /root/.config/guix/current not found: 'guix pull' was never run'
<RRedcroft>running with 'sudo -E' says the same thing but with /home/rich/.config/guix/current'
<RRedcroft>but doing guix pull again says 'Migrating profile generations to '/var/guix/profiles/per-user/rich'
<RRedcroft>guix pull: error: symlink: File exists: "/var/guix/profiles/per-user/redsith/current-guix"
<NieDzejkob>What does "type guix" say?
<RRedcroft>guix is hashed (/run/current-system/profile/bin/guix)
<RRedcroft>ls -l ~/.config/guix/current points to '/var/guix/profiles/per-user/root/current-guix'
<infertux>so I'm packaging my first application for Guix and it's a Golang app - do I need to add all the dependencies in Go.mod as inputs as well as their sub-dependencies? Is there a way to speed up the process because there are probably 100+ dependencies?
<infertux>and none of them are already packaged in gnu/packages/golang.scm
<anadon>The purist way would that guix handles all dependencies. This is to ensure at everything at every step it bit reproducible. When using golang's module and dependency utilities, they don't have the same strong guarantees and so may pollute what you are packaging as not bit reproducible, thus negating one of guix's bigger values.
<anadon>Can you provide the exact dependency list?
<anadon>This sounds like it would end up like a kind of mixed support option.
<infertux>anadon: thanks, this makes sense. However having to package hundreds of Go libraries in order to package a new Go app is gonna take several days of work unless there is a way to pregenerate templates/definitions for all libraries?
<infertux>what's mixed support?
<anadon>I do not know of such a utility. But I'm still rather new.
<anadon>Mixed support where a number of the more common packages are in guix, but relying on go's packaging and dependency work for uncommon packages.
<anadon>It still has issues, but allows for progress.
<infertux>sounds interesting, could I use mixed support so I can deploy my app today relying on Go's dependency work - until I can properly package all the dependencies?
<anadon>Yes. I'd still suggest @nckx 's or someone else core to the project's word on how well that is thought out. I can be very wrong.
<infertux>or is that really frowned upon?
<anadon>Global variables are frowned upon. They can't exactly just be gotten rid of. I suspect something similar here.
<infertux>anadon: ok thanks for your help, maybe I should start by packaging a simplier app using gnu-build-system and I'll keep Go apps on Debian for the time being
<RRedcroft>is there a binary build of qt webengine? trying to install qutebrowser isnt possible as my machine doesnt have enough ram to build it
<anadon>infertux: I don't think you quite got guix right. Guix is a tool to manage packages. Packaging and building are separate things. The GNU build system is different and is not a thing for golang. Debian's analog is `apy` which faces you with the exact same tradeoff of tracking in its tool or using golang's.
<anadon>Debian doesn't really change your situation.
<NieDzejkob>RRedcroft: do you have substitutes enabled?
<RRedcroft>NieDzejkob: not sure what that is, brand new to guix
<NieDzejkob>Are other packages built locally or downloaded?
<RRedcroft>NieDzejkob: appear to be downloaded, ive just installed guixsd
<infertux>anadon: sorry for the confusion, I meant I'd rather install the pre-built binary for my Go app on Debian and keep my Guix System machine clean ;)
<NieDzejkob>RRedcroft: okay, what does "guix weather qtwebengine" say?
<RRedcroft>NieDzejkob: slowly computing derivations
<anadon>RRedcroft: What kind of machine is this?
<efraim>has anyone used guix-environment from a guile prompt?
<RRedcroft>anadon: n4200 intel laptop, its a hobby machine
<NieDzejkob>32- or 64-bit?
<RRedcroft>64bit
<anadon>Ouch
<RRedcroft>anadon: lol, i specifically choose it to be cheap, and i don't work on it, desktop rig is a fair bit better
<allana>Hi #guix! Anyone here a docker-service-type user who has experienced the docker service not starting? I reconfigure regularly and it seems that the docker service has not been working for weeks and maybe over a month for me.
<sneek>Welcome back allana, you have 1 message.
<sneek>allana, dftxbs3e says: rpm is also needed to *build* .rpm files, so if you want to distribute a package for an rpm-based distro, that can be useful. Maybe you can even use GNU Guix to build and then get it to output a .rpm file directly.
<anadon>I don't have any meaningful suggestions to make a n4200 faster here.
<NieDzejkob>allana: does it work if you start it manually with (guessing) sudo herd start docker ?
<allana>NieDzejkob: nope
<anadon>This sounds like it should have triggered a test failure somewhere.
<allana>And the failure to start of the docker service has been present on a hosted VM of mine, and confirmed on a new machine where I have just recently installed guixSD.
<efraim>for anyone who was curious about using guix-environment from a guile repl, it looks like it's similar to guix-build, so (guix-environment "guix" "--" "make") in place of 'guix environment guix -- make'
<RRedcroft> 'https://ci.guix.org/api/queue?nr=1000' returned 504 ("Gateway Time-out")
<anadon>My machine doesn't resolve that URL.
<RRedcroft>sorry, "https://ci.guix.gnu.org/api/queue?nr=1000"
<RRedcroft>thats what i get when i run guix weather qtwebengine
<anadon>The root path for that server also times out. Something is wrong server side.
<RRedcroft>ahh, guess i'll wait, thnx
<NieDzejkob>RRedcroft: that should be fine, what does it say before that?
<RRedcroft> https://ci.guix.gnu.org - 85.1% substitutes avilable (8,689 out of 10,205) 28,183.3 MiB of nars (compressed), 77,250.0 MiB on disk (uncompressed), 0.001 seconds per request (12.6 seconds in total), 810.1 requests per second
<RRedcroft>then the line about Gateway Time-out
<NieDzejkob>oh, this might be related to the guix pull problem from before
<NieDzejkob>if you haven't solved it, you might be trying to use package definitions from a year ago
<NieDzejkob>we don't provide all binaries for those
<RRedcroft>NieDzejkob: ahh, makes sense
<NieDzejkob><RRedcroft> ls -l ~/.config/guix/current points to '/var/guix/profiles/per-user/root/current-guix'
<NieDzejkob>is this as root or as your user?
<RRedcroft>as user
<NieDzejkob>O_o_O
<NieDzejkob>did you try to run `sudo guix pull` before?
<RRedcroft>oh wait, as users points to /var/guix/profiles/per-user/rich/current-guix
<RRedcroft>must have run that as root
<NieDzejkob>(sudo guix pull is bad)
<NieDzejkob>hmm, run "hash guix"
<RRedcroft>i ran guix pull as user, then guix system reconfigure as sudo
<NieDzejkob>type guix should change "type guix" to point to ~/.config/guix/current
<RRedcroft>'type guix' -> guix is hashed (/run/current-system/profile/bin/guix)
<NieDzejkob>hmm
<NieDzejkob>do you have any dotfiles in your home directory from a previous distro?
<RRedcroft>nope fresh install
<allana>Hi, I am trying to create a custom service type, and I am quite the scheme newbie. For me the guix manual is not very clear in this area. What I am hoping to do is find out how to create a service from a g-expression that just runs an executable with baked-in arguments. Does anyone know of an example where this is done? Is this a correct approach?
<NieDzejkob>RRedcroft: try running a new login shell - log out and log in, or restart your terminal if you're in a graphical session
<anadon>rip
<NieDzejkob>allana: see nscd-service-type, particularily the nscd-shepherd-service
<allana>NieDzejkob: thanks
<NieDzejkob>reminds me of that bash.org quote...
<NieDzejkob> (http://bash.org/?139697, if anyone's wondering)
<anadon>Quality~
<NieDzejkob>uh oh, RRedcroft is taking a while to join back
<anadon>Is guix's git master considered stable? I'm getting a few test failures when building. In paricular, the challenge.scm, channels.scm, containers.scm, debug-link.scm, derivations.scm, gexp.scm, grafts.scm, graph.scm, packages.scm tests are failing.
<NieDzejkob>anadon: master is considered stable. Some tests are known to fail, this is tracked by bugs like #34229 and CI.
<anadon>ok
<dftxbs3e>I have an issue where GDM doesnt start for some reason, it either tries to start and fails, or tries to start and fails then repeat many many times until it stops at around 600th try. It seems to be Xorg that doesnt work. I have a standard configuration with xfce, gnome and i3. Nothing too special.
<dftxbs3e>(on x86_64)
<dftxbs3e>I can't find any Xorg logs
<dftxbs3e>I installed xinit and tried startx but it says it can't find the X executable
<NieDzejkob>dftxbs3e: could you paste your system config here? -> paste.debian.org
<anadon>It looks like the built in tests have frozen on the process test group. What's going on here?
<anadon>They've been running for ~2 hours.
<Blackbeard>NieDzejkob: hey, what DE environment do you have?
<Blackbeard>NieDzejkob: oh you have I3, xfce and GNOME
<Blackbeard>Oh sorry it was dftxbs3e I should talk to
<Blackbeard>dftxbs3e: so where exactly is it failing? You can't see GDM? Or you can see it but you can't login into a DE?
<NieDzejkob>Blackbeard: I use ratpoison
<Blackbeard>NieDzejkob: ah nice!!
<Blackbeard>I use StumpWM the little brother :)
<NieDzejkob>So, evaluation 11327 of guix-master on CI has 1423 pending builds. Isn't that a core-updates thing?
<mbakke>NieDzejkob: it's from the ibus update which causes just under 300 rebuilds, but it should probably have gone through staging indeed
<mbakke>the pending builds # is for all architectures
<NieDzejkob>ahh, makes sense
<zzappie>Hi Guix!
<NieDzejkob>o/
<zzappie>is anyone using cuirass in a small/medium size project? I can't wrap my head around guix-maintanance ci setup
<jackhill>Can anyone spot there error I made in match-lambda while working on the certbot service: https://lists.gnu.org/archive/html/guix-devel/2020-03/msg00068.html
<nckx>Good morning, Guix!
<jackhill>good morning nckx!
<user_oreloznog>Hello o/
<jackhill>how is guixing today?
<nckx>jackhill: Testin' ya patch.
<nckx>(It's not really morning here, it's a very wet evening.)
<jackhill>:) thanks
*mbakke is testing the hopefully final full-rebuild of core-updates...
<nckx>jackhill: I can't make it fail while reconfiguring. When does this happen?
<nckx>Eyeballing alone: https://paste.debian.net/plain/1133624
<jackhill>nckx: it happens right after running `guix system reconfigure /path/to/config.scm`
<nckx>jackhill: I applied your patch, added your service-type snippet to my configuration and reconfigured without error. Even sudo /var/lib/certbot/renew-certificates runs (and luckily for all of us, fails to finish).
<nckx>Try reconfiguring with the pasted changes above. 🤷
<jackhill>nckx: interesting…
<jackhill>nckx: so your pasted diff doesn't contain the change to the certbot-configuration record, is that correct?
<nckx>jackhill: Perhaps a ‘make clean-go’ is in order.
<nckx>jackhill: No, it's a diff² on top of yours.
<jackhill>I elided some stuff in my operating system config for the mail, here is the full thing: https://paste.debian.net/plain/1133624
<jackhill>nckx: oh, on top of mine. I see. I'll try it.
<nckx>That's mine 😉
<jackhill> https://paste.debian.net/1133625/
<jackhill>fist time with the computer today :)
<nckx>no code for module (guix-at-duke services endpoint-management), so I'm back to staring at code.
<jackhill>yeah, that's why I didn't put the whole thing originally :)
<jackhill>(although that is available: https://gitlab.oit.duke.edu/jackhill/guix-at-duke.git )
<nckx>jackhill: Does this happen when you ‘guix system build’ instead of reconfigure?
<nckx>I've pasted both your certbot- and nginx-service-types into my configuration and it builds.
<nckx>The full ones.
<nckx>My bet is still on API mismatches and doing a full clean-&-make.
<jackhill>nckx: yes, it happens with system build as well. Trying your patch currently…
*nckx only now reads ‘fist time with the computer today’…
<nckx>I understand you're frustrated but that's a bit much.
<jackhill>oh, er, text-based communication is hard, I'm not actually that frustrated or annoyed by the mispaste or my real problem, but it is a commen statement in my hosehold. Using a computer while others are watching is difficult :)
<nckx>Relatable.
<jackhill>nckx: with your patch it works as expected!
<jackhill>so it looks like I just missed a place to make the change
<jackhill>thanks for your help.
<jackhill>I guess I should clean this up, update the documentation, and make a proper patch.
<nckx>You're welcome! I wonder why I didn't get the same error but don't really ‘care’ 🙂
<nckx>That would be great.
<jackhill>sweet, I'll do that. Should I put the documentation change in the same commit or make two commits?
<nckx>jackhill: Same commit as the changes you're documenting.
<jackhill>sounds great, thanks!
<rekado_>hey, in a few hours I’m going to take down ci.guix.gnu.org
<rekado_>I wonder if we can perform some DNS magic to make this a little less annoying.
<jackhill>nckx: submitted: https://issues.guix.gnu.org/issue/39934 Thanks again for your help
<rekado_>this will affect issues.guix.gnu.org (which could run on bayfront for some time)
<rekado_>but the biggest impact will be the lack of a substitute server.
<rekado_>any ideas what we could do?
<rekado_>can we quickly bring up the CDN again?
<vagrantc>didn't realize it wasn't on the CDN anymore
<rekado_>… I think that’s good…?
<nckx>rekado_: I'll lower the TTL (currently 3600) now.
<nckx>When is the downtime again?
<vagrantc>rekado_: could be a good sign, sure :)
<vagrantc>although i've got my own local caching proxy
<nckx>What's the deal with /root/maintenance? It has random unstaged changes.
<rekado_>nckx: not random
<rekado_>nckx: I disabled three nodes, because they have RAM problems.
<rekado_>nckx: they are being checked right now.
<rekado_>another change is to make sure that the include works
<rekado_>it broke with the move to Guile 3.
<nckx>#; hydra-slave1.netris.org
<nckx>(service mumi-service-type)
<rekado_>I wanted to make this change official later, once we confirmed it’s a good change.
<rekado_>oh, yeah…
<rekado_>same for these
<rekado_>hydra-slave1 seems to be unavailable
<nckx>I didn't mean to insult you, it just looks very random and oh-just-one-more-thingy.
<rekado_>the mumi service will be added to the repo soon
<rekado_>I’m just… all over the place
<nckx>🙂
<rekado_>all of this should go into the repo
<apteryx>how is TERM set in Guix System? Is agetty responsible for this?
<madage>janneke: I saw that you submitted #39738 regarding your build failure on i686. My build attempts are failing on other test (checkasm_audiodsp), do you think I should reply to your report or create a new one?
<madage>also, if anyone else here have a guess
<nckx>apteryx: Initially, yes.
<nckx>Of course by the time you get to X it's usually your terminal emulator.
<madage>I'm inclined to reply on the same thread since the issue title applies "ffmpeg does not build on i686"
<rekado_>nckx: I’m squeezing in a little maintanence every now and then. With the mumi service at least we have a working issues.* right now. (And I no longer need to restart my custom mumi process every morning…)
<rekado_>so… it’s still bad, but it’s slightly less bad now.
<rekado_>the downtime will probably start around 11am UTC+1
<rekado_>we will then move servers and apply a bunch of upgrades. This may take a while.
<rekado_>maybe an hour.
<rekado_>it may take a lot longer if things break, of course.
<apteryx>nckx: mine is set to xterm, by xterm, I presume. Should I use something more modern?
<nckx>apteryx: I'm no expert. I have my .bashrc change xterm-termite to xterm-256color because the former upset some delicate programmes (I long forgot which). That sounds marginally more modern. It has 256 colours! Does it matter? Probably not.
<NieDzejkob>"a bunch of upgrades"? wouldn't that be just a reboot with guix?
<nckx>rekado_: I don't think a CDN would buy us meaningful redundancy.
<nckx>The caching's per-region and it's just that, caching. Not worth the work.
<nckx>bayfront uses a different key, right? Pity, or we could just drop it in for a day.
<vagrantc>if we had switched the CDN on a week ago...
<nckx>Shoulda gouda.
<rekado_>NieDzejkob: firmware upgrades.
<rekado_>big servers have lots of little chips with non-trivial software
<rekado_>yes, bayfront has recently switched to its own key
<rekado_>can we redirect the DNS record to a maintenance page?
<nckx>The simplest option I see is: get a server/VPS with a few 100G free, set up an nginx caching proxy with very long TTL and berlin as back-end, run a Guix weather against it, then fetch all the berlin-signed nars from the gathered narinfos through it.
<nckx>rekado_: Oh, sure.
<nckx>I wonder how Guix will present that though.
<rekado_>well, it would fail faster
<nckx>‘Somewhere in the backtrace.’
<rekado_>I don’t really want to have users wait for a timeout.
<nckx>If /nix-cache-info returns 404 Guix should ignore the server completely.
<rekado_>I suppose we could also promote one of the servers here and let it host the nginx cache.
*rekado_ checks the size of the nginx cache
<nckx>Mine is pretty complete, but I don't have the space to host a whole other copy of differently-signed nars.
<rekado_>32G
<rekado_>that’s surprisingly small
*rekado_ checks /var/cache/guix
<nckx>Hmno, all of Guix packages (excluding CAS sources) is ~130G.
<janneke>bah -- error: 'guild compile' failed to remove 't-guild-compile-9931.go.3C7VtY'
*nckx does have 31G free but that's not enough.
<nckx>rekado_: I can probably clear another 100G and start mirroring berlin but I'd like to know it would actually be used before I spend my evening on it.
<rekado_>I don’t know. I think it’s easier to use a server here.
<rekado_>we could reconfigure it to use the same IP as ci.guix.gnu.org
<rekado_>it wouldn’t run “guix publish” but just an nginx mirror
<rekado_>hmm, /var/cache/guix is 3TB
<rekado_>I don’t have a server with that much free space.
<nckx>rekado_: nginx evicts LRU. You can set max_size=<sane>g, restart/kick nginx and it should start cleaning up the old cruft. 3T is many Guixes, even factoring in many arches. 1T should suffice. 2T to be safe. How much space do you have?
<rekado_>I only have a couple hundred GB
<rekado_>when we bought the new servers we didn’t think we’d need as much.
<nckx>Some things never change 🙂
<rekado_>3T is /var/cache/guix, not the nginx cache.
<nckx>Sorry, misread.
<rekado_>the new servers are just build nodes; they aren’t supposed to serve anything.
<nckx>I know less about Guix cache mgmt than nginx's.
<rekado_>the guix publish cache is redundant because we switched from gzip to lzip some time ago
<nckx>What's /var/cache/guix? I don't have it.
<nckx>Ah.
<rekado_>I guess I can ignore all the gzip stuff
<rekado_>yeah, the lzip directory is just under 1T
<apteryx>I'm connecting an external monitor through HDMI, and there's no way to have it found by xrandr. Ideas?
<ArneBab>can I create a 32bit environment? (get a full system working that’s built for i686-linux)
<rekado_>ArneBab: “guix build” supports the “--system” option. I don’t know if other commands do.
<rekado_>apteryx: I’ve only ever done this with Gnome and it just works without configuration.
<ArneBab>rekado_: ah, yes, environment does!
<ArneBab>thank you!
<ArneBab>rekado_: guix environment --system=i686-linux glibc
<nckx>apteryx: Not found as in ‘xrandr’ doesn't show it?
<jboy>can somebody help me figure out what is missing from this package definition? https://paste.debian.net/hidden/fb38bc8c/
<rekado_>jboy: do you get an error?
<nckx>jboy: That would be much easier with the error message to go with it.
<jboy>the error message didn't tell me much: guix build: error: #<unspecified>: not something we can build
<nckx>jboy: Did you use -f? Then you need ‘gitless’ as the last line of the file.
<jboy>but I just saw that the "name" field and the variable in define-public aren't the same. could that be the problem?
<nckx>No. But there's no need for the python- prefix.
<jboy>ok thanks, that did it
<jboy>I appreciate you taking a look nckx
<nckx>I appreciate you contributing to Guix. I hope.
<rekado_>jboy: the package name (the string in the “name” field) is what you use on the command line.
<nckx>jboy: Minor detail: the home page supports HTTPS.
<jboy>nckx: ok will do, but now it turns out that the python-pygit2 package is broken.
<rekado_>jboy: the name of the variable (the symbol after “define” or “define-public”) is for use with Guile, e.g. as an input to other packages.
<jboy>rekado_: thanks, that's helpful to know
<nckx>jboy: Finally finished building Guix to build pygit2. I wonder if simply updating to 1.0.1 would fix this libgit2-0.28.x requirement. Have you tried?
<nckx>*1.1.0
*raghavgururajan 's initial application for outreachy has been passed :-)
<nckx>raghavgururajan: Congratulations.
<raghavgururajan>nckx: Thanks!
<ArneBab>do you know which package installs libgcc_s.so.1
<ArneBab>?
<ArneBab>and libstdc++.so.6
<ArneBab>the only two deendencies I’m still missing …
<ArneBab>in 32bit
<nckx>ArneBab: They are provided by gcc, so handle accordingly.
<ArneBab>installing gcc does not provide them
<nckx>ArneBab: How do you ‘install gcc’?
<ArneBab>$ LANG=C guix install gcc
<ArneBab>guix install: error: gcc: unknown package
<nckx>And yes, it does, they're in /lib.
<ArneBab>^ actually not at all
<nckx>ArneBab: You can't guix install gcc, but you can guix install gcc-toolchain.
<rekado_>gcc-toolchain
<ArneBab>that also does not provide them, as far as I could tell.
<ArneBab>… need to continue tomorrow, sleep calls … sorry
<nckx>gcc-toolchain doesn't provide them, but it should give you a working C++ compiler. Any reason you can't build with Guix? Installing gcc was deliberately broken because it didn't do what people expected.
<nckx>ArneBab: Good night!