IRC channel logs


back to list of logs

<leoprikler>I think Guix packages scale in difficulty by the amount of features they use.
<leoprikler>Using gnu-build-system? Easy. Have to change some configure flags? Easy. Tweak some phase? Easy. But add it all together and you're getting to an increasingly long read.
<wdkrnls>I'm confused why I need --file-system-type=iso9660 for a disk image I want to put on a USB.
<wdkrnls>I have never had any success whatsoever without that argument even though I'm using a USB stick.
***Server sets mode: +cnt
<pkill9>initrd-modules isn't the field i need, it just takes strings, so it just defines which available modules get loaded to the initrd
<pkill9>i want to install a linux module package to make it available
<pkill9>do i just need to add it to the system packages?
<nckx>wdkrnls: dd does only one thing no matter what you throw at it, it's not involved here. The ‘ISO’ image that Guix (actually, GRUB) produces is already hacked to high heaven to double as a USB installer, and probably plays all kinds of tricks on picky BIOSen. I don't think I've seen that problem here, but then I usually build ISOs because they are better tested.
<nckx>pkill9: Danny submitted some patches to make this possible but I don't know if they've been merged yet. I didn't think so.
<pkill9>there's a linux-module-build-system, and acpi-call-linux-module is a package
<nckx>I know, I wrote the latter.
<nckx>What I do is ‘insmod /run/booted-system/profile/lib/modules/`uname -r`/extra/acpi_call.ko’.
<nckx>You can't say it doesn't work™.
<pkill9>ah no worries, that will do for me
<nckx>Then you can just add it to your sytem packages.
<nckx>pkill9: Out of curiousity, whatcha gonna tweak on your ThinkPad?
<pkill9>this isn't for acpi_call, this is for the anbox kernel modules
<pkill9>btw adding the LDFLAGS worked, i got anbox compiled
<pkill9>here is what i have so far if you want to test it, i've also packaged the kernel modules in this file:
<nckx>pkill9: Thanks, but I presume it needs X, which is broken here, I also don't know the first thing about Android.
<nckx>I say that but here I am building it anyway.
<pkill9>ah yea you'll need X. They provide prebuilt images of android which you can give to anbox
<pkill9>so it can be run without knowing android
<pkill9>as in, you don't need to compile android, so you don't need to know it
<str1ngs> /CLEAR
<pkill9>guix time-machine is great, i just built the anbox linux modules with an older guix to get the older kernel, and i successfully loaded htem with insmod
<johnjay>is there any way i can customize the guix installation?
<johnjay>it failed downloading and i think it needs wget --retry-connrefused
<johnjay>(my internet sometimes goes out for a minute)
<johnjay>should I just select openbox and cross my fingers?
<nckx>johnjay: I'm connfused: at what point does Guix call wget?
<johnjay>i don't know, i'm just guessing
<johnjay>whatever it's calling i need a way to force it to be more aggressive with timeout and retries
<nckx>Ah, I see. You mean Guix should do the equivalent.
<nckx>Yeah, I agree. Guix uses its own (Guile) HTTP client which is *way* too fragile.
<johnjay>yes. i didn't realize it needed to download so much
<johnjay>do you know the total amount?
<johnjay>i think you or somebody else said the final install is 10-20GB
<nckx>I don't know how to tweak it, and I'm afraid it would involve writing code, not just setting an option/variable in the installation environment.
<nckx>johnjay: That's the size of the drive I'd use for a ‘real-world’ Guix installation, the kind you want to actually use and update and use to store documents and share oggs. It's not the size of all downloaded binaries. That would be less.
<johnjay>i just want to try it out in a virtual machine
<johnjay>do you happen to know if there's a vmdk or vdi image somewhere?
<nckx>johnjay: What I'd do personally in your situation is call ‘guix system init /mnt/etc/config.scm /mnt’ multiple times until it succeeds.
<nckx>Nope, sorry.
<nckx>(I don't know.)
<johnjay>hrm. where do i call that?
<johnjay>the installer doesn't let me type anything
<nckx>Control+Alt+Fn (where n>2, I think) should take you to a VT with a shell.
<nckx>Assuming the automated installer uses the same conventions used in the manual for an, er, manual installation, the command above should just work.
<nckx>You can even run something like ‘until guix system init /mnt/etc/config.scm /mnt; do sleep 10; done’ to retry endlessly until it succeeds. You'll need to keep an eye out for non-network-related fatal errors though.
<johnjay>so before the install launches i should try to get to that shell and type somethign?
<nckx>johnjay: No, after the first error message from the guided installer.
<johnjay>ok well i still have virtualbox open
<nckx>Then it will have mounted all the file systems & created a config.scm for you.
<nckx>Otherwise you have to do it yourself, which is perfectly doable, but probably not your intended experience right now.
<johnjay>what does that command do exactly?
<johnjay>continues the download or?
<nckx>It tells Guix to initalise /mnt to contain the full operating system described in /mnt/etc/config.scm.
<johnjay>ah ok. which includes the download process
<nckx>Yes, and no. It actually starts from scratch each time but the downloads are cached so the effect is indeed the same.
<nckx>It doesn't resume partial downloads but that should be acceptable here.
<johnjay>alright done
<johnjay>thanks i'll come back when it finishes
<nckx>Much luck.
<PotentialUser-32>Hello! do I need %desktop-services to be able to run `startx'? I'd like to skip the greeter and just run xmonad with xinit and startx
<dftxbs3e>nckx, in the actual reason for this gcc bootstrapping issue
<dftxbs3e>and how to solve it, considering I cannot even reproduce the build environment because guix environment -C doesnt work and environment-variables files arent being created
<nckx>PotentialUser-32: startx isn't actually the ‘easy option’ on Guix, it's not available by default and not tested. The supported minimal option would be slim + .xsession. That said: (service special-files-service-type `(("/bin/startx" ,(xorg-start-command))) ; used to work, but only as root
<nckx>dftxbs3e: Ack. That's a shame.
***catonano_ is now known as catonano
<PotentialUser-32>nckx: slim is a greeter, right? I'm trying to avoid networkmanager and the like
<PotentialUser-32>nckx: ohh that service doesn't apply to any user when they log in?
<PotentialUser-32>hmm it's not doing anything for root either...
<nckx>I call it a display manager, might be the same thing. Don't know any DMs that tie in to NetworkManager. Don't want to know.
<PotentialUser-32>will it pull in lots of dependencies? I don't really need i18n or anything
<nckx>PotentialUser-32: ‘# startx’ or ‘$ sudo startx’ don't work? Then I can't say why, only that it used to work but has likely bitrotted away.
<nckx>( ☝ *after* reconfiguring with the ‘service’ snippet I posted above, I mean.)
<PotentialUser-32>as root startx gives me the same error I got as a user: unable to run server: "/gnu/store/lkjfasdkljasdlkjf-xinit-1.4.1/bin/X": No such file or directory
<PotentialUser-32>used that snippet and ran guix system reconfigure /etc/config.scm
<PotentialUser-32>will post my config
<nckx>You might be under(or over?)estimating slim 🙂
<PotentialUser-32>yeah that seems fine
<nckx>I'm inferring that GDM has somehow grown a dependency on NM.
<PotentialUser-32>here's my config:
<PotentialUser-32>will try w/slim later... have to afk for a bit though. thanks for your advice!
<nckx>PotentialUser-32: I'm AFK for the night, hope slim works out for you. o/
***apteryx_ is now known as apteryx
<viaken>Making my first attempt at packaging, but the software I chose has several shell scripts with hard-coded paths to other binaries from that software. I assume I can't use (which) for software yet to be installed. Is there a reasonable solution?
<atw>can you give an example of one of these hard-coded paths?
<viaken>I'm now wondering if the problems go deeper, but this shebang is one such: #!/usr/bin/picolisp /usr/lib/picolisp/lib.l
<viaken>patch-shebangs only changes the executable, not the argument, correct?
<atw>I think so, but you could try it out and see
<ZombieChicken>About how difficult is it to make a package for guix?
<Blackbeard[m]>ZombieChicken: depending on the package
<markasoftware>Does Guix have something like Nix's configuration management system, or is it just for packages?
<dftxbs3e>markasoftware, GNU Guix also has configuration management
<lispmacs>what should the version of a package be if using a certain git commit in-between releases?
<janneke>lispmacs: there's a meme for that, see e.g. ci.scm:cuirass
<janneke>you add a revision and part of the commit
<lispmacs>janneke: what exactly is revision referring to?
<lispmacs>lispmacs: is that my revision of the package definition?
<lispmacs>ack, I just asked myself
<lispmacs>must be my my revision number, that would make sense
<janneke>the guix package version; you start at 0 and bump with every update
<lispmacs>to compute the hash with guix download, do I need to specific the commit somehow in the command?
<lispmacs>I tried just the git url, but that seems to have download the github html page
<lispmacs>lispmacs: just can't seem to figure this out from the info document
<lispmacs>ack, talking to myself again. getting too late
<lispmacs>guix download followed by the git https url just gets your the html page
<lispmacs>could use I guess the github zip download option?
<lispmacs>guess I could figure it out by evaluating my uri s-exp, if I can figure out which module to use
<lispmacs>okay, after 30 minutes of inspecting source code and documentation, it seems to be some kind of recursive hash, but beats me how to download or calculate it
<lispmacs>well, an hour past my bed time, will have to give up I guess
<leoprikler>sneek later tell lispmacs perhaps you can do some substitute* magic, e.g. (substitute* (("/usr") output-prefix)) or (substitute* (("/usr/lib") output-lib))
<sneek>Will do.
<civodul>Hello Guix!
<kmicu>( ^_^)/
<janneke>hello guix!
<civodul>hey, janneke!
<roptat>civodul: I get a 502 on since yesterday
<jonsger>roptat: me as well
<civodul>roptat: bah :-/
<civodul>roptat: restarted!
<jlicht>hey guix!
<roptat>ok, I see it now
<roptat>I didn't notice you were waiting for me ^^'
<roptat>it's not nice that it will make some sentences obsolete, but since it fixes some typos, I think it's fine. We really need a better translation workflow though
<jonsger>civodul: thanks :)
<roptat>currently, we have a short translation round for guix, the packages and the manual before every release, but that's too much work for too short a period of time
<roptat>I'd like to have a more rolling-release style of translation, and I was thinking about pootle for at least a year or two
<roptat>it seems it's not maintained anymore, so maybe we could use weblate instead, which is a nice platform too. It works a bit differently from pootle, and requires commit access to a git repository to work (either to a mirror of guix, or to the guix repository directly)
<roptat>whenever someone works on weblate, it pushes a commit on their behalf to the configured branch (probably master, and maybe the latest stable branch)
<roptat>we have two possibilities if we want to use weblate: we could use freely because we are a free software project (but they would get commit access to our repository) or we could self-host it (so we need to package it and create a service for it)
<roptat>self-hosting is nice, but translators will need yet another account on some platform to do their work, which is annoying
<jlicht>roptat: could we perhaps do the translation work on a separate remote?
<roptat>it's a possibility
<roptat>but then we would have to merge in both directions (new translations to master, and new strings to the remote)
<civodul>roptat: i'm all for a "rolling-release" translation
<civodul>in fact, we can submit POT files whenever we want
<vagrantc>roptat: merging in both directions seems less scary than remote services having push access to the main repository :)
<roptat>isn't it annoying for the translation project people though?
<civodul>so if you want to submit them to the TP, like, now, i say go for it!
<roptat>like, submitting every week or so...
<civodul>well, we need to find the right periodicity
<civodul>maybe once per week is too much
<civodul>once per month may be fine
<vagrantc>if only we had a tool that tracks when things need to be rebuilt
<civodul>now, moving to weblate might also be an option, i'm not familiar with it
<civodul>hey vagrantc, welcome back! :-)
<civodul>oh but yeah, i agree with vagrantc that an external service pushing to the main repo doesn't sound great
<vagrantc>more seriously, is there any way to use guix to track when the .pot files need to be regenerated/updated/etc ?
<vagrantc>because then you could push the updates when they matter
<roptat>they matter very often, because they modify the manual, some guix sentences or more often, some package description or synopsis
<az`>hi there
<roptat>so I could imagine a tool to automatically push/merge changes from master to a separate git repository that would be accessed by weblate
<roptat>but then from that repository to ours would be a bit annoying I guess, or we could have a makefile target for commiters to do it almost automatically
<civodul>roptat: yes, so you'd have one quick manual review round before merging
<civodul>it should be fine, we won't merge updated translations twice a day either :-)
<roptat>I imagine once or twice a week is a good periodicity (if there is any change to merge)
<civodul>right, i'm not even sure we change the manual this often
<roptat>weblate would also allow us to translate the stable branch and the master branch in parallel, which is better than what the TP can offer
<civodul>but we do change package descriptions very often, of course
<civodul>"stable branch"? :-)
<roptat>I've pushed a few changes to the manual there since the release :)
<roptat>(a cosmetic change and fixes for typos in the translation)
<roptat>the latest commit should be about making the manual "responsive"
<roptat>I'm thinking that an update to translations of the manual on this branch would make sense, because it's updated on the website (even if it's not updated on the master branch/whatever guix pull pulls)
<civodul>roptat: BTW, did you see Florian's work on the web site i18n?
<civodul>it'd be great if you could chime in
<civodul>it looks like it could be deployed, but i could use help
<roptat>I've been reading it, but didn't really have anything to say
<roptat>oh that's not the web site i18n :)
<jonsger>Hackbar :P
<zimoun>hi! couple of days ago, nckx and ricardo were discussing mirroring the Guix repo on Savannah. Which is a good idea! :-) However, it is another stuff on the shoulder of Ricardo (berlin, issues, etc.). And I discovered that the GLIBC or GCC are not hosted on Savannah but on even an really old version of Guile ;-) It is GNU and so on but managed by RedHat guys, if I understand well. The traffic of a "guix pull"
<zimoun>mirror will be really low. What do you think to ask them if we can add our mirror on their infrastructure?
<kirisime>A couple days ago I unplugged my headphones while my laptop was suspended and as a result GNOME is now convinced they're always plugged in preventing the speakers from making noise. It even persisted upgrading the system profile.
<roptat>put them in and out again? or put the computer to sleep, put them in, resume it and pull them out :)
<roptat>there's but it sounds very manual
<leoprikler>reconnecting the speakers is also an option IIRC
<leoprikler>btw. does brettg visit IRC sometimes or rather not?
<civodul>zimoun: sure, we could have a mirror there
<civodul>the problem, to me, is not so much mirroring, but how we can enable users to make sure they talk to a genuine mirror
<civodul>mjw: do you know what it would take to get a Git repo on sourceware?
<roptat>I'm trying to think about how to interact properly with weblate. they have a nice API to get files, so I'm not worried about that, but it can't be used to set a template for a translation component (a component would be the manual, the packages, guix, the website, the news, the blog, ...)
<roptat>I think I'd like to have a mcron job on a server (maybe berlin) to automatically fetch the latest master from guix, update the pot files and the manual translation (and same with the website when it's translated), merge and push the result to another repository that would be used by weblate
<roptat>then a commiter could use a makefile target to get the translations from weblate, using their api
<roptat>I'm not sure how to properly set up a new repo and push to it
<roptat>and I'm not sure either how to re-generate the pot files from a mcron job
<mjw>civodul, join #overseers on this server, the sourceware admins are there. They are mostly friendly. So just ask :)
<sneek>Welcome back mjw, you have 1 message.
<sneek>mjw, nckx says: Nooo, don't go… OK, too late. You'd git clone, then edit doc/guix.texi and commit your change, then git send-email it to guix-patches at
<mjw>sneek, thanks! Of course it would be that simple
<mjw>I was just wondering if the docs would be a "package" for which I could get a guix environment somehow (which I dream is the meta guix way to hack on guix)
<roptat>mjw doesn't "guix environment guix" give you all you need to hack on the manual?
<roptat>admittedly it's a bit more than what you need :)
<leoprikler>If you do --pure it's a bit less, because you also need --ad-hoc emacs ;)
<leoprikler>(also git)
<mjw>roptat, I guess it would. /me is such a guix noob. Sorry. I am still struggling with environments (I would love to use -C but my "host OS" seems to not setup for that)
<roptat>in case of trouble with the repo, --pure can help
<leoprikler>-C is overkill
<leoprikler>for guix at least
<roptat>I need it to run ./configure on my fedory for instance, otherwise it tries to use my system's guile, which doesn't have the necessary extensions
<mjw>My main trouble is CPATH vs C_INCLUDE_PATH for now. I was hoping -C might help me better understand that issue.
<mjw>It makes my preferred setup using -Werror everywhere slightly impossible because the "system headers" aren't recognized as system headers, so lots of warning/errors :{
<mjw>I guess I should use guix as distro to make all this go away, but I am not ready yet :)
<civodul>mjw: if you have a recent kernel and you really want to play with -C, you can set /proc/sys/kernel/unprivileged_userns_clone to 1
<mjw>civodul, yes, that part actually works.
<civodul>mjw: re CPATH, we'd all be interested in an actual fix!
<mjw>civodul, it is the devpts mount that fails for some reason
*mjw also switched host distros, which doesn't make any of this easier to report. Sorry, slightly chaotic I know. Bad user, bad bug reporter.
<mjw>it is super weird, because I can see (with strace) that the other mounts do work
<mjw>Also, I still seem to not have gotten this locale thing correct. Because there are still warnings :{
<nckx>leoprikler: I've seen brettgilio around here before. Probably less time for IRC now…
<mjw>All this is super confusing for me because I don't have a proper conceptual understanding of what runs under which "environment", various issues did disappear however when I did guix pull for the root user (which is the profile the deamon seems to be using)
<mjw>But I am now at: $ guix environment -C
<mjw>guile: warning: failed to install locale
<mjw>guix environment: error: mount: mount "none" on "/tmp/guix-directory.8TNPgs/dev/pts": Invalid argument
<roptat>civodul, could we ask for a repository at savannah and allow weblate to push in it, but not in other guix repositories?
<mjw>I'll try to make some time this weekend to have a good setup. Meanwhile is there a good overview of the environment/profiles when running guix on a guest distro. Especially for someone totally confused which environment (paths/locale) variables are essential for the user and daemon to run properly?
<efraim>At that point would we want to just pull it in as a submodule?
<roptat>if guix pull can support that, I suppose yes
<mjw>(That is why I wanted to hack on the guix manual, to fill in those blanks, but now that I tried a bit more, I am not sure I really understand any of it...)
<mjw>(There is also the issue of which bash is reading which startup files when, especially when using guix environment, it all gets super confusing for someone like me who never really messes with .bashrc, .bash_profile, .profile, etc.)
<nomr>downgrading guix-daemon ended up working great for recovering my system from broken libgcrypt-1.8.5 ^_^
***vj is now known as valignatev
<kirisime>Ha ha, audio issues seem to be caused by the port no longer detecting the plug reliably. Violently plopping the audio slider while unplugging my headphones seems to help with the detection.
<roptat>actually, we don't track our pot files in our git repository, so a submodule wouldn't work (weblate needs to have the pot file in the repository it clones)
<roptat>so I think we should have a separate repository from which we would get translations from time to time
<roptat>it would also contain a script to get the guix git repository and generate pot files from it. latter, it we could add support for more (the website, news, etc)
<jlicht>roptat: perhaps this could be done using a post-merge hook?
*kmicu (╯°□°)╯︵ ┻━┻ in a friendly manner after seeing no Guix mentions on (though it’s nice to see few #guix regulars there)
<roptat>jlicht, what do you mean?
***apteryx_ is now known as apteryx
<jlicht>you could have a git mirror of the guix git repo, that on pulling from the main guix git repo autmatically generates the latest pot files
<nckx>┬──┬ ノ(° -°ノ)
<jlicht>still doesn't solve the main challenges in setting this up, of course :/
<Minall>Hello guix!
<Minall>valignatev: o/
<Minall>I'm on a new guix installation, and I have 2 questions...
<Minall>1- I'm on gnome, my desktop environment I like, but I can't install extensions, these are installed a) by the web browser (icecat) or b) on the gnome app store, and some of them usually become already preinstalled
<Minall>I can't find the gnome app store, and I installed something called gnome-shell-extensions, but that didn't fixed my problem...
<leoprikler>Minall: some extensions are packaged in guix, such as gnome-shell-extensions, gnome-shell-extension-dash-to-dock, etc.
<Minall>2- In my default installation, I have my user (Minall) in the group wheel, but I don't really want this, can I just remove it from the group?, or do I have to erase the "wheel" group from my user on my config.scm and then reconfigure?
<leoprikler>Others you will have to install yourself by downloading them from and moving them into ~/.local/share/gnome-shell/extensions or by writing packages for them.
<Minall>leoprikler: Oh!!, Let me check it, btw, emacs-guix is awesome!
<Minall>Let me check them!
<leoprikler>You can remove your user from the wheel group, but then you can no longer sudo.
<leoprikler>You do so through reconfiguring as you already guessed.
<Minall>btw... When I want to search for a package on guix is always a little harder since I can't search in the page itself, I have to search the package by its first letter, which is not bad but also not very comfortable. And the homepage looks neat!, they added videos lol
<Minall>leoprikler: Ok then, thanks!, so If I want cups, apache or mysql I have to reconfigure? or can they 'work' just installing them on my user for tests?
<leoprikler>you can search through the guix package manager as well -- guix search gnome-shell
<Minall>For example, If I want you to test some working on apache, can I just install it in order to have 'localhost' accessible?
<leoprikler>cups will not work without root, you need the service
<leoprikler>for apache and mysql I'm not sure, apache should work if you get it to run under your user, but don't quote me on this
<Minall>leoprikler: true... so the service is always needed... where can I see if this service is on -desktop-services? since I assume that being able to print at first is good for a default configuration
<Minall>leoprikler: Ok, I'll test and learn
<leoprikler>you can graph your current system services, otherwise just inspect the source
<leoprikler>neither apache nor mysql are in desktop-services though
<Minall>Also, if I run 'guix pull' and then restart, should I rerun 'guix pull' in order to have the newest packages?... Or after one guix pull it doesn't matter if I reinstall?, I could do a guix upgrade and guix reconfigure if I really want the newest packages on my latest reconfigure?
<Minall>leoprikler: THanks!, apache and mysql seems good but, cups must be I think
<leoprikler>I think periodically `guix pulling` is the way to go -- unless you're following some very important bug to you in the mailing list and have been informed that it was just now fixed, in which case you can pull earlier.
<leoprikler>Or you are blocked by some nasty bug in which case you can delay pulling until it is solved.
<Minall>leoprikler: I see!... So if I run guix pull and then restart, In the new boot I don't have to run again guix pull?, Do I already have the latest guix?
***ng0_ is now known as ng0
<leoprikler>you have the guix that you've just pulled
<reepca>so I finally restarted icecat and got the latest version - anyone else find that the enabled-by-default viewtube extension isn't working on, for example, youtube?
<reepca>it shows "no video with supported format and mime type found"
<reepca>anyone else get that?
<reepca>er, wait, seems it just fails to select a format that actually exists by default... weird
<snape>Minall: after a 'guix pull' you have the new guix if `which guix` returns '~/.config/guix/current/bin/guix'
<snape>which might not be true if there's an issue with your PATH
<hostile>Hello, i resently installed guix and whenever i try to open something in thunar i get an error saying "Failed to open execute child process "gio-launch-desktop" (No such file or directory)". From what i understand it's a glib issue, but i tried installing it and it gives me an error that the profile contains conflicting entries for glib. I also tried to install it to the global profile but failed.
<reepca>Never mind, seems I had to check a box to enable (IIUC) playing separate video and audio streams together or something
<jlicht>hostile: did you try installing "glib:bin"?
<jlicht>(which would probably not help with your conflicting entries issue, by the way. Sorry for that!)
<hostile>jlicht: Thanks that solved it!
<hostile>Also i got some other problems, i cant write on my ntfs usb stick but i have installed ntfs-3g.
*jlicht has to go
<jlicht>good luck hostile!
<valignatev>hostile: Does writing work if you mount manually with ntfs-3g instead of mount: # ntfs-3g /dev/your_NTFS_partition /mount/point
<hostile>valignatev: no, does it matter where the mount point is?
<valignatev>Well, the location should be writable by the user you're trying to write with. Can you write as root?
<valignatev>I suggested to try using ntfs-3g executable directly because it might be the case that "mount" can't figure out file system or something like that
<valignatev>You may also want to install gvfs if you still didn't, it handles mounting stuff automatically
<valignatev>guix package -s thunar says that thunar doesn't depend on gvfs, so you might not have it installed. I find it quite useful though
<hostile>valignatiev: It works using ntfs-3g and not mount
<hostile>valignatiev: also i have gvfs installed
<Minall>reepca: I always had that error and just disabled the viewtube extension
<valignatev>hostile: Interesting. It means that "mount" can't figure out filesystem type by itself
<valignatev>It says that it tries blkid library first, and then tries everything from /etc/filesystems and in /proc/filesystems
<valignatev>hostile: Does "mount -t ntfs-3g" works? E.g. you're using mount, but explicitly set filesystem type
<hostile>valignatev: no but mount -t ntfs works
<hostile>also everytime i run mount i have to use sudo
<valignatev>Hmm. It's a wild guess because my mount comes from foreign distro (Arch), but maybe you don't have "util-linux" installed which provides libblkid that mount uses to figure out filesystem?
<valignatev>I'm really guessing now, so there's that :)
<hostile>valignatev: installed it, it didn't change something, should i reboot?
<valignatev>hostile: What OS do you use? Guix System?
<lispmacs>sneek later tell sneek later tell sneek hi
<sneek>Welcome back lispmacs, you have 1 message.
<sneek>lispmacs, leoprikler says: perhaps you can do some substitute* magic, e.g. (substitute* (("/usr") output-prefix)) or (substitute* (("/usr/lib") output-lib))
<sneek>Umm, I'm right here.
<valignatev>hostile: I don't know tbh. There's guix system switch-generation, but I'm not sure about that. Maybe try to reboot ¯\_(ツ)_/¯
<hostile>valignatev: ok, ill connect again
<hostile>valignatev: didn't work
<hostile>it's not a big deal anyways since i can use ntfs-3g
<valignatev>Maybe someone more into it will jump in later
<hostile>I have another small problem, i can't use the command "clear", whenever i type it in the terminal it says "bash: clear: command not found"
<Minall>Is it normal that my system is very slow when installing something with emacs-guix but not from the terminal?
<nckx>hostile: The ncurses package provides the clear & reset commands.
<Minall>For example, I'm right now installing openjdk with emacs-guix, and I'm at the part when emacs guix is showing all the folders created, I think: like jdk-3cc80be736f2/jdk/test/jdk/modules/... etc etc
<nckx>hostile: Life hack: use Control+L at the terminal, have more free time.
<Minall>This part doesn't appear to be with with terminal, and when I'm at this part at emacs guix my system slows a lot and it may freeze
<hostile>nckx: Thanks!
<Minall>With the terminal interface this doesn't happend
<Minall>nckx: that's the same as clear!
<nckx>With 0 dependencies.
<ng0>hostile: you want to install ncurses, or simply: "exec tput clear"
<ng0>better: there are many ways t o achive clear
<ng0>sorry for "simply"
<nckx>ng0: Clear golfing.
<nckx>Probably a thing, somewhere.
<ng0>what does that mean?
<nckx>ng0: Just reminded me of
<bdju>Same idea as vim golf probably.
<nckx>or sed golf. That'll eat yer brain.
<valignatev>You can scroll in terminal until it's clean. If a terminal supports scrollback of course
<nckx>I just reboot.
<ng0>my clear is a script which just does this exec tput clear
<ng0>i also have a curses version
<ng0>so with some patience i guess golfing this could be done
<nckx>VTEs probably make this boring^Wharder.
<ng0>eh not curses, i meant something else, forgot what
<nckx>On a ‘real’ VT you can probably overflow some buffer & force a reset.
<nckx>Voilà, cleared.
<Minall>Yep, the only part that slows my system a lot is when emacs-guix is showing all the paths it is creating for the package....
<Minall>How should I fix this?
<nckx>Minall: I wish I knew.
<Minall>How can I contact the emacs-guix creators to ask them?
<johnjay>Minall: i don't think he works on it anymore
<reepca>guix package -s emacs-guix | recsel -p homepage
<nckx>Also: (linked from the home page), last commit 22 days ago.
<snape>Minall: it's Alex Kost
<nckx>alezost here(?) and in #emacs IIRC.
<Minall>Thanks, I'm checking on it but... Don't tell me the development has stopped?
<snape>I wouldn't say 22 days without a commit means it has stopped
<nckx>Minall: Version 0.5.2 was released 22 days ago with new commands.
<nckx>Sounds all right to me.
<civodul>emacs-guix is rock solid!
<Minall>Where can you see the last commit?, I'm looking at gitlab right now and it the latest updated file was 1 month ago...
<Minall>I'll try to contact him
<nckx>Minall: I clicked on it here, took me to GitHub, saw last commit.
<Minall>I'm checking on it, thanks
<spk121>Another way to force a screen reset is echo -e "\e[H\e[2J\e[3J"
<nckx>Here we go.
<Minall>Yep, two weaks ago... seems that the project is still going
<civodul>a more memorizable trick to reset the screen: (unset INSIDE_EMACS; guix build foo)
<civodul>pro tip!
<nckx>spk121: I've used something like that in scripts but it's not terminfonically correct, which means that it won't work on some physical DEC terminal, which is very important.
<nckx>civodul: Say I want to reconfigure berlin (I won't!), what would be the exact command?
<nckx>guix system build ~nckx/maintenance/hydra/berlin.scm → blah blah no code for module (sysadmin services)
<nckx>I could hack my way around it but what is the canonical snippet?
<roptat>you need -L ~/nckx/maintenance/hydra/modules
<spk121>nckx: true. I just checked my physical Boundless Tech VT520 and it prefers "\e[H\e[2J"
<nckx>spk121: Noice.
<nckx>civodul: Thanks. Thought maybe there was a recommended magical ansib^Wbash script or something.
<ng0>cat clear.c | grep "printf":
<ng0>maybe collecting all the ways you can clear screens would be interesting
<lispmacs`>hi, I was trying to do my first package definition, and am confused: how do you figure out in advance what the sha256 hash is supposed to be if you are using the git-fetch method?
***lispmacs is now known as Guest10998
***lispmacs` is now known as lispmacs
<bavier>lispmacs`: from the checkout directory do `guix hash -rx`
<nckx>lispmacs: If you have a (pristine!) local checkout: cd ~/it && guix hash -rx.
<nckx>If ‘git status’ says any untracked files are present, remove them, or they will affect the hash.
<lispmacs>okay, thanks. is that well documented in the manual? it wasn't obvious to me
<nckx>lispmacs: It's documented under ‘Invoking guix hash’.
<snape>lispmacs: or you put a wrong hash and you wait for 'guix build' to tell you the one it found
<nckx>Which is linked in ‘Defining packages’ under ‘source’.
<lispmacs>I'm sure you guys are busy, but a video (series?) on package definition would be really cool
<lispmacs>I've tried to watch all the talks I could find listed on the blog
<lispmacs>which have all been really interesting
<snape>well, you can ask questions here :)
<nckx>Isn't that literally what lsl88 made? I just don't know where they are.
<leoprikler>can we make `guix download` take git urls?
<leoprikler>or at least do something like `guix download --fetch=git`
<civodul>nope! (unfortunately)
<nckx>zimoun: Your premise is that Ricardo would be (more) responsible for the mirror.
<nckx>That's not true.
*nckx reads the backlog.
<nckx>zimoun: I think the main mirror belongs on a Guix machine, not on Sourceware, and it's literally a one-line git command every 5 minutes (which I'm writing now). Moving the main upstream repository from Savannah to somewhere else is a different discussion.
<nckx>I don't think it's warranted just because Savannah had some unrelated outages lately, but that's a matter of opinion, of course 🙂
<nckx>Running our own mirror is also *less* work than asking others to do it once you factor in communication and Yet Another Thing To Coördinate-overhead.
<valignatev>lispmacs: There are some videos on . Being a visual person myself, I totally understand your desire for more :)
<lispmacs>valignatev: that's great, thanks!
<valignatev>Ur welcome :3
<g_bor>hello guix!
<mjw>If it helps I can also provide a mirror using gitolite having mirrors is trivial.
<nckx>mjw: Thanks! The more ‘decentralised’ mirrors the better, for sure. I was just talking about whatever canonical URL we point people to in our manual and channel.
<nckx>I really think that should end in
<mjw>nckx, so, I have already in the URL, that is close :)
<mjw>nckx, also == so we could ask the sourceware overseers if they want to expose it on that cname.
<mjw>zimoun, no, I haven't subscribed yet (continuing conversation here). I really should, but so much to do/read, so little time :{
<g_bor>nckx: I was recently thinking about this mirroring infrastructure.
<g_bor>One of the main points raised was that if we switch the mirror then https will fail certificate validation
<nckx>g_bor: That's true when proxying. I'm talking about an actual mirror, on berlin.
<g_bor>I was talking about the proxy screnario, as I still believe that a reverse proxy with ssl termination could work as a canonical url.
<nckx>That gives a pretty URL and flexibility to switch back ends, but it doesn't address upstream outages like recent Savannah.
<leoprikler>Hmmm, can we write channel.scm in a mirror-aware way?
<nckx>And having (say) nginx cache git HTTPS requests sound extremely fragile if it even works at all. I'd be surprised.
<g_bor>That way we could do a local mirror on berlin, do a health check on savannah, and then fall back to serving form the local berlin mirror in case of an outage.
<nckx>g_bor: What would that give us over the more straightforward Savannah→mcron→berlin→users approach? 2.5 average minutes of updates, sure.
<nckx>(See guix-sysadmin@ if you haven't yet.)
<g_bor>nckx: It would provide a flexible fronten to a scalable mirroring architecture, where we could add additional mirrors on an as needed basis.
<nckx>This sounds very over-engineered to me. Our problem isn't one of server performance.
<nckx>If Berlin can't serve the occasional guix.git to our 1,000 users, it's misconfigured.
<g_bor>nckx: you are right, I believe. The other approach could be easier to implement.
<nckx>g_bor: Do you have any experience with this kind of load-balancing (that's what it is) set-up?
<g_bor>Also I might be more on the dreaming end here :)
<g_bor>I have some limited experience with it.
<g_bor>I did it on smaller systems, on the order of a few tens on servers...
<g_bor>last time on a 12 server cluster
<nckx>g_bor: It's a fine proposal, I just don't think it's necessary when we have 10,000 users, let alone 1,000 (current). And the complexity & fragility *are* there from day 1.
<g_bor>Essentially I don't really know how big currently guix is :)
<nckx>This discussion (last) started when Savannah was down, you want something stupid & simple when that happens, not a cascade of learning experiences 😉
<g_bor>What I currently feel is that berlin is a very big single point of failure on the infastructure, and loading more roles on it would not help.
<nckx>g_bor: I did some very simple ‘analysis’ on berlin, I think it was about 1000 unique monthly IPs asking for substitutes. The number of people using Guix without substitutes could be double that (seems unlikely) and we're still in the low 1000s.
<nckx>g_bor: I mostly agree, although it seems to be acceptable in practice.
<g_bor>I would like to later propose a plan for the case when berlin goes down.
<g_bor>I believe some funtionalities can be rearranged to bayfront, but not all of them
<nckx>The berlin services that go down are things like logs.guix and issues.guix, which is due to their… architecture. Berlin itself has been solid. But I agree that a back-up plan is needed, and load-balancing will be a part of it.
<nckx>berlin as a machine is miles from overloaded, although you have the monitoring data and I just look at top regularly 🙂
<g_bor>Are you coming to the Guix Days?
<nckx>That's why I like the current ‘mirror’: the only thing that can break is the mcron job (and it's so simple that that should be rare). Even if that happens, the mirror just serves slightly stale data.
<nckx>Well, not current, soon-to-be.
<g_bor>nckx :)
<g_bor>that makes sense
<nckx>g_bor: I am.
<nckx>issues.guix gives a very wrong impression of the berlin load average, I don't know what it's doing.
<g_bor>It would be really nice to know if savannah or berlin breaks more often. It might very well be that we have been extemly lucky/unlucky recently
<g_bor>some long term data would be appreciated on this front :)
<g_bor>I belive issues.guix is most of the times blocked, and there is only one worker.
<nckx>g_bor: Ah, I thought it used fibres. Yeah, that would do it. Berlin has 36 cores 🙂
<g_bor>nckx: rekado_ tired to switch it to fibers, but it did not work.
<nckx>Its past 15m load average was 1.8.
<g_bor>Now there is somme other problem with it, it dies a lot recently with 'too many open files'
<g_bor>I would like to investigate that, that's why I asked for a pw, I would like to have a look at the open fd-s for mumi to see where resources are leaking.
<g_bor>I have to go now.
<nckx>g_bor: Thanks!
<nckx>And bye 🙂
<g_bor>Good night!
***vj is now known as valignatev
***vj is now known as valignatev
<nckx>leoprikler: Thanks for depropagating a thing (ffplay).
<leoprikler>I've looked into depropagating libwebp too, but it seems to only be used indirectly (through imagemagick) and changing imagemagick itself would be a c-u thing
<leoprikler>Also with Emacs 27 dropping support for imagemagick I'm not really sure how telega will hold up.
<valignatev>leoprikler: What Emacs will use instead of imagemagick? Some custom utils or something less bloated?
<alextee[m]>what's the guixy way to set up /etc/ansible/hosts?
<alextee[m]>special-files-service-type and link it from a fixed path?
<nckx>alextee[m]: The Guixy way would be something like (etc-service-type (list … `("foo" ,(plain-file "foo" "content"))))
<nckx>I don't know if /e/a/h is a file or directory.
<nckx>alextee[m]: The very Guixy way is to use and contribute to ‘guix deploy’ 😉
<alextee[m]>oh nice thanks
<alextee[m]>i just noticed the colored brackets in the manual
<alextee[m]>whoever did this, great job
<nckx>alextee[m]: Which manual?
<alextee[m]>nckx: here
<alextee[m]>if you hover over the configuration script
*nckx looking at
<nckx>alextee[m]: How did you get there? I used but I never read the Web manual.
<alextee[m]>i just ddg the keywords lol
<bavier>civodule did that a little while ago
<nckx>Pure CSS, nice.
*bavier with the typos agan
<nckx>Phonetic typoes don't count.
<bavier>typo connasewer?
<bricewge>Hello Guix.
<bricewge>How does one send a commented patch with git send-email?
<bricewge>I keep making mistake when sending them (duplicate issues and such).
<nckx>bricewge: What do you mean by ‘commented patch’? When I run ‘git send-email -$n’ it opens up an emacs window to edit n patches before sending.
<bricewge>I tried --annotate, --compose and --cover-letter but none does the job.
<nckx>I don't know if I changed that default long ago, of course…
<nckx>So you get nothing?
<nckx>Duplicate issues sound like a different, er, issue. If you use that shouldn't happen.
<bricewge>I want to add some comments about the patch, to explain it more thorougly.
<nckx>Hmm, --compose should do just that.
<bricewge>I get the emacs window that open
<nckx>but then…?
<bavier>oh noes, proot-static ftbfs on aarch64-linux
<nckx>I consistently read ftbfs as btrfs
<nckx>there's a cheap joke in there somewhere.
<bavier>heh :)
*nckx is building it.
<bricewge>nckx: You are right. My previous patch, sent with --compose didn't open duplicate issues. Even though I remembered it did...
<bricewge>Sorry for the noise.
<oriansj>nckx: too much time spent thinking about friends with benefits file systems?
<nckx>You should never use ‘git send-email -[n>1] --to=guix-patches’ or ‘git send-email -1 --compose --to=guix-patches’, since they will both open multiple issues, but you probably knew that already.
<nckx>bricewge: ☝
<nckx>That's the only thing I can think of that comes close to what you describe.
<nckx>bavier: proot straight-out doesn't define it on aarch64 for whatever deliberate reason:
<nckx>I don't know why…
<leoprikler>valignatev: I'm not quite sure, but IIRC it is going to add some more features to the built-in image editing/viewing.
<civodul>bavier: re proot, is that a test failure?
<valignatev>leoprikler: Ok, interesting
<nckx>(build phase).
<civodul>oh, oh
<civodul>"guix refresh proot" doesn't provide much hope
<nckx>civodul: Our ‘release’ is just(?) a git commit though, and the GitHub page has no tags or releases.
<nckx>I'll try the latest commit.
<bricewge>nckx: Sending a patch with 'git send-email -1 --compose --to=guix-patches' was what caused the problem. How do you send the patches with a commentary in such case?
<nckx>If it's just 1 patch I add my ‘cover letter’ after the commit message's --- line.
<nckx>It will be part of the mail but not part of the commit when applied.
<nckx>If you really want 2 separate mails you have to: send the cover letter with your mail client; wait for the bug number; then use ‘git send-email -1 --to=nnnn’ to send just the patch.
<nckx>Bit tedious.
<nckx>bricewge: Finally found an example:
<bricewge>Thank you nckx, finally I have understand with the example!
<bricewge>I just need --annotate and writing my comments after the first ---.
<nckx>Sv 504s: still a thing.