<nckx>raghavgururajan: Don't forget to test ‘guix pull’ before pushing to master... <nckx>...or letting Danny do so, I see. 🙂 <bdju>getting this warning when pulling and applying manifests and so on: WARNING: (gnu packages man): `expat' imported from both (guix licenses) and (gnu packages xml) <nckx>bdju: I just fixed that. <nckx>Will push in a few minutes. It's a harmless warning. <mbakke>raghavgururajan: 'libde265' and 'sysprof' were already present on the master branch <nckx>mbakke: Some of raghavgururajan's lines are better (for libde265) so I'm merging the two. <nckx>To be fair, they're not the one who signed off on these. <mbakke>nckx: that's great, thanks. I considered reverting them, but haven't been hacking in two weeks and did not feel comfortable. :-) <nckx>They don't even share header names, wat. <mbakke>I notice one has a 'g' in the package name <nckx>Cheap way to keep them apart & build them both. <mbakke>aw, ganeti is broken, probably due to the big haskell changes *mbakke will try to fix it tomorrow <mroh>wow, a lot of interesting pkgs/software! ty raghavgururajan and danny! <mroh>mbakke: compile or runtime broken? welcome back! ;) <mbakke>ty :) there is something wrong with ghc-regex-pcre which prevents it from compiling <butterypancake>so I just did a guix system reconfigure (which never doesn't cause me grief) and now my screen resolution is aweful, I can only use 1 monitor, and xrandr just tells me about "screen 0" instead of an actual screen (like DVI-1 or something). Did someone change xorg or something recently? <leoprikler>for the complete list of changes, you could clone the repo, and then `git log A..B`, where A is the commit used in your previous config and B is the current one <butterypancake>xd1le: thanks! I'll check it out. I'm actually a contributor to evil-collection (don't let that fool you, I still don't understand how to use it) <butterypancake>leoprikler: I think I lost the first commit though. I was on generation 1, then I reconfigured thrice. Then I went back to 1, then I reconfigured again. I'm not sure how to figure out what commit generation 1 is <leoprikler>If you're checking against the installation disk, then xorg-server certainly changed ;) <butterypancake>no, 1 is still the original. But the first generation for some reason doesn't have channels? Looking at guix system list-generations I can see commits for every generation except the first <butterypancake>this is a pretty recent install disk. I generated it like 3 days ago from source <leoprikler>the last change to xorg-server was made longer than that ago <leoprikler>a huge bulk of raghavgururajan's packages have been upstreamed quite recently, but I'm not sure whether that has any effect on your config <butterypancake>maybe I'll just delete a bunch of random stuff from my config and reconfigure <butterypancake>huh, the config says use the swapfile at /swapfile but it doesn't exist <leoprikler>Guix does not actually do your partitioning for you, I guess it's the same thing here <butterypancake>aight. did a reconfigure with a more minimal config. going to reboot and see what happens <PotentialUser-93>Question: Why does Guix requires multiple build users to build packages concurrently? Why isn't one user sufficient? <leoprikler>by chowning the build directory to that user, no other user can interfere <leoprikler>sneek later ask raghavgururajan is there a point in packaging seed if it is pretty outdated and gjs serves the same purpose? ***nckx is now known as PotentialUser-93
***PotentialUser-93 is now known as nckx
<butterypancake>so, my screen still looks like a potato. I can make it not by rolling back to generation 1. and I'm pretty darn certain the problem isn't in my system config.scm *nckx chants bisect! bisect! bisect! <nckx>You're the only one who can... <nckx>butterypancake: Well, you can guess. *butterypancake starts downloading ubuntu <mroh>leoprikler: maybe, because memphis needs seed. <nckx>butterypancake: /run/current-system/channels.scm ? <nckx>butterypancake: Wait what no was it something we said?? <leoprikler>since you missed it, they apparently have a system without provisioning *nckx looks up ‘provisioning’. <leoprikler>IIRC provisioning is what gives you the nice channel.scm info for `guix system describe` *nckx adds another techbro neologism to their quiver. <mroh>butterypancake: have you tried with another user or a fresh $HOME and/or ~/.config/ etc? <butterypancake>cat /gnu/store/*-channels.scm got me two commits. I think I'm in business. Thanks nckx for the idea <butterypancake>mroh: would that help? I'm using slim and even the slim login screen is wide and ugly. <leoprikler>nckx: my bad, I confused provisioning and provenance :( <nckx>I thought this system was installed from a custom-built image, not 1.1, but indeed I didn't follow closely. <leoprikler>either way, generation 1 should have provenance, should it not? <nckx>At least I can't think of a reason not to, assuming the initing Guix had it. <nckx>butterypancake: Does ‘the first generation for some reason doesn't have channels’ refer to <system>/channels.scm or something else? <vivasvat>is there a reason signal messenger hasn't been packaged? I haven't found anything online... <sneek>Welcome back vivasvat, you have 2 messages! <sneek>vivasvat, nckx says: All I know is that https://ci.guix.gnu.org/nar/lzip/kiawv51z8dd41mq3sxva8sqkma5ysgc7-icedove-68.11.0 returns 404 while /gnu/store/kiawv51z8dd41mq3sxva8sqkma5ysgc7-icedove-68.11.0 *exists* on the server. It has nothing to do with you (nor can you do anything to fix it). Trying to get any sensible answers out of ‘guix gc’ takes ages so I gave up. My current bet is negative caching; we'll now if that's true in 1h. <sneek>vivasvat, nckx says: That would explain the inconsistent error you got: Guix will only try to download a substitute after asking the server whether one exists. The server must have said yes. And then it gives you a 404 anyway. Must be cached. <nckx>vivasvat: My guess is that it depends on npm, and we don't have a good way to package npm packages yet. <nckx>Seems to be GPL3-ish although I havent't audited it. <vivasvat>what determines which packages are easy to package and which are hard? <vivasvat>and does the difficulty of packaging certain things have to do with the fact that guix is source based <nckx>☝ that, compounded by the fact that npm takes a micropackage/-dependency approach and comes from a culture of bundling random different versions of the same package many times in one dependency graph... <nckx>It does not synergise well with how Nix/Guix view software, at all. <nckx>(And so Nix cheats and we don't, and so Nix has npm and we don't.) <brendyyn>I was getting started writing a npm importer the other day <brendyyn>How do we solve javascript packaging then? <brendyyn>I wanted to package MathJax from source but when it required a lot of node- packages some of which i couldnt get to work and required so many i needed an importer, so i just packaged the built version <Formbi>maybe it would be feasible to make collections of packages? <Formbi>that would cut the huge number of them a bit <Formbi>AFAIK people make packages out of single procedures <brendyyn>i almost wanted to make a package just for one developers entire collectino <Formbi>per-developer packages could be a nice solution <brendyyn>i think it needs to be mostly automatically generated. most packages built fine with node-build-system, <nckx>I wonder if it's feasible to drop our pretention to hand-crafted packages for the NPM module. Just ship a big list of names, versions/commits, and hashes, that are updated programatically every so often. Then have procedures to turn the raw data into package objects. <brendyyn>the importer i think needs to download the repo and import package.json <brendyyn>the entire npm database can be downloaded at 100MiB or so <nckx>With some luck the vast majority will just work since JS is relatively isolated from the underlying OS/file system (?), but we'll still run into edge cases we need to customise. Not sure how to handle those. <brendyyn>then we want some code to scan for minified js, unbundle modules <nckx>By ‘handle’ I mean ‘manage the insane complexity that probably exceeds a human's capacity to track’. <nckx>I don't JS, I don't Node, I like traditional notions of packaging; I can't be of much help. <Formbi>I mean running something over the list of names <brendyyn>neither. my dream is to create a jitsi-meet service so guix users can launch up their own server <lle-bout>hello there! --with-source on guix pack with custom manifest doesnt seem to work, should it? <nckx>brendyyn: Yes, a lot of these complex ‘don't even try to build our supposedly free software; just download our opaque container’ server applications would benefit from something like Guix, and yet are currently impossible to package because of things like NPM. Shame. <brendyyn>well ok lets just have some positivity. im sure we can do it. its only hard work <nckx>It's absolutely possible, and we all own machines designed to do hard repetitive work for us. 🙂 <lle-bout>also, I got a package source in a private repo that requires authentication, how could GNU Guix handle that? I've been using --with-source to supply a local clone instead but it doesnt seem to work with guix pack and manifests <brendyyn>im just wondering if anyone else made any progress with this and what the correct method is <lle-bout>it works with guix build but not guix pack <lle-bout>brendyyn: I am not sure what differs between NPM and Go/Rust/Python - these eco systems also have lots of transitive dependencies <brendyyn>you think there will be dependency loops and thus a bootstrap problem? <lle-bout>I think it would just be a matter of actually doing it, writing a reliable importer and going on from there <lle-bout>The number of dependencies may be higher but is it an issue for GNU Guix? It supports any arbitrary number of packages <brendyyn>for mathjax. the npm repository points to a git repo containing the built version. the actual source is in a completely different repo :/ <brendyyn>I actually wonder about that. When guix has 100k packages, will the overhead for guile become an issue? <lle-bout>by that time GNU Guile will get more performance improvements too <lle-bout>I don't think the total number of packages has an influence if you don't use them <brendyyn>thanks to andy and all other contributers \o/ <brendyyn>for guix pull it does since the definitions all need to be compiled <Formbi>maybe there could be a separate channel for the ecmascript shit <Formbi>so people who don't use it wouldn't get the performance issues <brendyyn>this is not just a javascript issue. guix will expand to 100k packages regardless ***iyzsong-- is now known as iyzsong-w
<Formbi>yeah, but it could be shifted in time ***V is now known as Guest7215
***V_ is now known as V
<apteryx>anyone else suffering Emacs crashes as of late? <vivasvat>nckx: sorry, just got back, but it makes sense what you were saying about npm <vivasvat>im not a js developer, but does that mean people who'd use npm on guixSD would have to install it manually? <vivasvat>like in whatever way you install things without a pakcage manager :p <apteryx>I think npm provides an install script. <brendyyn>would it be similar to how rust in guix uses cargo? <apteryx>I have no idea of how Rust packaging is done, sorry. <vivasvat>how difficult would it be for me to set up a uix mirror <vivasvat>ok so basically would it constitute setting up my own guixSD instance <vivasvat>and the using guix publish to make substitues available? <vivasvat>would this overtax the offical substitute server? I don't want to accidentally do that <vagrantc>vivasvat: simplest thing would be to set up a caching proxy <vagrantc>vivasvat: you wouldn't need to use a separate channel though ... <vagrantc>vivasvat: but yes, you could run guix publish on your own infrastructure ... not sure how that would tax the other substitute server(s) <vivasvat>I meant like if I was syncing with the offical substitue servers <vivasvat>like if one "my" mirror if I downloaded all the substitues <vivasvat>I think the caching proxy seems the best idea, I'll have to look into it more ***drakonis- is now known as drakonis
<sneek>Welcome back raghavgururajan, you have 1 message! <sneek>raghavgururajan, leoprikler says: is there a point in packaging seed if it is pretty outdated and gjs serves the same purpose? <raghavgururajan>nckx: Just like libde265, could you also merge my sysprof with the older definition? <vagrantc>vivasvat: yes, as long as you've got two machines using it, a caching proxy should at least give the second machine faster downloads <vagrantc>won't help any with the first download, of course <vagrantc>well, might even help in some corner-cases <vivasvat>do you have any advice/information on setting up a caching proxy? <vivasvat>it would just update whenever the guix official server updates <vivasvat>would it have to download all the formulas/substitutes? <vagrantc>vivasvat: a caching proxy is something that downloads on-demand ... so the first download is slow, the second download faster <vagrantc>vivasvat: so it updates whenever someone asks for something it doesn't have <vagrantc>vivasvat: the advantage being you never download anything you don't use ... the disadvantage is the first download is slow <vivasvat>but installing something new would take normal time *vagrantc isn't sure what vivasvat meant by "updates" <brendyyn>anyone running doom emacs? i get this error running geiser-run or when opening a scheme file and i cant open a repl File mode specification error: (error Loading file /home/b/.emacs.d/bin/doom failed to provide feature ‘geiser-guile’) <efraim>raghavgururajan: I just saw all the commits that landed in master. Wow! Congrats! ***ezzzc9 is now known as ezzzc
***benny_ is now known as benny
<ngz>Hello. I cannot use make, ./configure or ./bootstrap from Guix HEAD. For example, using ./boostrap, I get "error: possibly undefined macro: AM_INIT_AUTOMAKE". I'm using "guix environment guix". Does that ring a bell? <rekado>this sounds like you don’t have automake in your environment. Check your environment variables. Are you setting any weird ones manually? <ngz>I don't think I set fancy environment variables. I also tried with `guix environment --pure guix`. Speaking of which, shouldn't that bring in automake and friends? <ngz>Same here, until now. <ngz>I'm running sudo guix gc --verify=contents,repair just in case. <rekado>does it get better when you do “guix environment guix --ad-hoc automake” ? <sneek>Welcome back peanutbutterandc, you have 1 message! <sneek>peanutbutterandc, daviid says: yes, you need 2.0 or 2.2, and yes, you need to install the Gtk typelib, on debian, it would be the gir1.2-gtk-3.0:amd64 (or what ever postfix for your acrch of course) ... <peanutbutterandc>sneek, later ask daviid Is work ongoing to make g-golf compatible with 3.x series, too? <peanutbutterandc>I was trying to `./configure` guix and I get configure: error: found development files for Guile 3.0, but /gnu/store/4wm4dg8prid141d9xiqirfvlqbmbikgb-profile/bin/guile has effective version 2.2 <raghavgururajan>ngz: Can you try `guix environment guix --pure`? Also, use `guix environment guix --pure --ad-hoc emacs-minimal` for /etc/indent.el script to work. <ngz>raghavgururajan: hum, what? <raghavgururajan>peanutbutterandc, Did you start from `./bootstrap` or just did `./configure`? <ngz>raghavgururajan: I already tried --pure, to no avail. <raghavgururajan>ngz: You mentioned that you did `guix environment --pure guix`. Could you try `guix environment guix --pure` ? Here, guix comes before --pure <ngz>raghavgururajan: OK. ./boostrap fails in the same way. <raghavgururajan>ngz: Last idea on my head: `guix environment guix --pure guix --ad-hoc guix` <ngz>Silly idea: I'm going to prune all repository and start again. Maybe it got corrupted somehow. ***dddddd_ is now known as dddddd
<raghavgururajan>Folks! In master, after commit 748b2c85788623a8361f74434aa0f2cb834a45c3, lvm2 fails to download source with "In procedure connect*: Permission denied". <nckx>raghavgururajan: Oh, so you're behind a firewall that blocks FTP or something? <nckx>The commit you pasted doesn't change the URL, so this is nothing new. However, let's use HTTP instead of FTP since it's more popular and hence supported. <raghavgururajan>nckx: Not sure if you received the ping, nckx: Just like libde265, could you also merge my sysprof with the older definition? <nckx>raghavgururajan: Where was he trying to download it? <raghavgururajan>[06:57:08 AM] Danny: My provider is famous for not blocking anything, on principle <raghavgururajan>[06:57:23 AM] Danny: I could run my own mail server, and do run my own web servers <raghavgururajan>[06:58:30 AM] Danny: Guix connects to the redhat ftp server just fine, and I also tried to use ncftp to get the file from ftp://sourceware.org/pub/lvm2/LVM2.2.03.10.tgz <ftp://sourceware.org/pub/lvm2/LVM2.2.03.10.tgz...> , which worked just fine <raghavgururajan>[06:59:06 AM] Danny: Retrieving the same URL by guix/ftp-client fails <raghavgururajan>[06:59:25 AM] Danny: On the other hand, ftp://sources.redhat.com/pub/lvm2/releases/LVM2.2.03.10.tgz <ftp://sources.redhat.com/pub/lvm2/releases/LVM2.2.03.10.tgz...> does not exist--so that's clear why that doesn't work <nckx>☝ on a non-famous provider 🙂 <nckx>Tell Danny I've changed it on master already. <raghavgururajan>Anyway, `guix download ftp://sourceware.org/pub/lvm2/LVM2.2.03.10.tgz` works for me too. <peanutbutterandc>Umm... how does one use guix lint? I have got a few things that I just `guix import gem --recursive stuff` >> definition.scm and I want to guix lint definition.scm <peanutbutterandc>Also, I suppose these definitions will just have to be `cat definition.scm >> ruby.scm` in the git repo, right? o.O <peanutbutterandc>ah... guix lint is supposed to be called on package and not on files!? So, concatenate first. On it! <nckx>raghavgururajan: I was already merging sysprofs before you committed a third one (now that's prompt service)! Your sysprof package is almost identical to mine, apart from the propagation of glib and gtk+. Do you remember why you propagate them? *raghavgururajan is missing two pieces in his birthday gift from nckx :-P <KimaprOnPhone>Does grub support booting from logical partitions (in extended partitions on mbr disk) on bios? <raghavgururajan>KimaprOnPhone: I suspect that you mentioned sdaX instead of just sda, in bootloader configuration, in config.scm <KimaprOnPhone>I used automated process to find that path from root filesystem label, suggested by nckx <KimaprOnPhone>I also tested it in guile repl and it gave me correct results <KimaprOnPhone>I'm using the BIOS firmware shipped on motherboard or something <KimaprOnPhone>If i'll have the /boot partition separate and with a very supported filesystem may it boot better?er <raghavgururajan>KimaprOnPhone: Yes, I recommed you to use GPT. For BIOS+GPT setup, you will create dedicated BIOS Boot Partition. <raghavgururajan>[1] Format disk with GPT [2] Create partition sdX1 with "BIOS Boot Partition" flag, in cdisk. [3] Use /dev/sdX1 in bootloader configuration. <raghavgururajan>On BIOS+MBR setup, grub always boot from MBR-Gap. It is the design. The /boot partition is different in this scenario. <KimaprOnPhone>I thought it first boots some kind of "minimal grub" and boots the rest from target partition <raghavgururajan>The /boot is for storing kernel, ramdisk and grub.cfg. Which can be on separate parition too. But in guix, only grub,cfg applies. <raghavgururajan>Yes, those are grub.cfg --> ramdisk/kernel. In guix, only grub.cfg is stored under /boot. The ramdisk and kernel are in /gnu/store <raghavgururajan>I can may be help you better if you share the bootloader and disk section of config.scm <nckx>raghavgururajan: Sorry, had to run, will copy the rusts now. <nckx>raghavgururajan: Up to & including .39, right? <peanutbutterandc>I have just made a bit of changes in my local guix checkout, and... I realized that ./pre-inst-env complains about not finding the guix-daemon socket because of the default prefix /usr/local <nckx>raghavgururajan: Rust 1.39 is downloading. What else were you missing? <nckx>raghavgururajan: Note that the labels are ‘resolved’ to /dev/sdaX names at evaluation time, so everything sees /dev/sdaX names. <nckx>Yes, it's a hack, not a Guix Feature(TM). <raghavgururajan>nckx: I see. That might be the problem for KimaprOnPhone. It should resolve to sdX, not sdXY. <KimaprOnPhone>Except the labels at file-systems, i used proper stuff there <nckx>raghavgururajan: The string-trim-right shaves off the numbers. <peanutbutterandc>Okay, I'm currently running `./preinstenv guix environment`. guix environment within guix environment. Please do let me know if this is not a good idea <nckx>One could run this in ‘guix repl’ to check. I really don't think this is related to the error, it's equivalent to writing "/dev/sda". <peanutbutterandc>raghavgururajan, I see. `./configure --prefix=''` did the trick for me. Thank you very much. <nckx>I'll read the backlog properly later, I just skimmed. <peanutbutterandc>Hmm.... I wonder if the reason why this derivation is failing is because of me running guix environment within guix environment. I hope it is not a problem, is it? <raghavgururajan>KimaprOnPhone: Regarging your doubt in how grub boots: In a nut-shell, GRUB boots in two stages. In stage 1, the grub loads its own files (binaries, drivers and modules). In stage 2, it loads grub.cfg which then as info to load ramdisk/kernel. In BIOS+MBR setup, the stage 1 files are stored in MBR-Gap and stage 2 files are stored in /boot directory. In BIOS+GPT setup, the stage 1 files are stored in <raghavgururajan>BIOS Boot Partition (separate parition from root partition) and stage 2 files are stored in /boot directory. In both setups, the /boot directory can either be in root partition or in separate boot partition (but has to be mounted under root "/". <rekado>peanutbutterandc: have you added ruby-simplecov? <raghavgururajan>In a nut-shell, GRUB boots in two stages. In stage 1, the grub loads its own files (binaries, drivers and modules). In stage 2, it loads grub.cfg which then as info to load ramdisk/kernel. In BIOS+MBR setup, the stage 1 files are stored in MBR-Gap and stage 2 files are stored in /boot directory. In BIOS+GPT setup, the stage 1 files are stored in BIOS Boot Partition (separate parition from root partit <peanutbutterandc>rekado, silly me. I thought `guix import` took care of everything there was to take care of. I will add that to native-inputs right away then <raghavgururajan>In a nut-shell, GRUB boots in two stages. In stage 1, the grub loads its own files (binaries, drivers and modules). In stage 2, it loads grub.cfg which then as info to load ramdisk/kernel. <raghavgururajan>In BIOS+MBR setup, the stage 1 files are stored in MBR-Gap and stage 2 files are stored in /boot directory. <raghavgururajan>In BIOS+GPT setup, the stage 1 files are stored in BIOS Boot Partition (separate parition from root partition) and stage 2 files are stored in /boot directory. <raghavgururajan>In both setups, the /boot directory can either be in root partition or in separate boot partition (but has to be mounted under root "/". <rekado>ngz: I can’t reproduce your problem. I ran “guix pull” before-hand. ./bootstrap and ./configure both work fine. <raghavgururajan>In guix, for stage 2 files, only grub.cfg is created under /boot dir. It has info to load ramdisk/kernel from /gnu/store, based on your system generation. <raghavgururajan>For both BIOS+MBR and BIOS+GPT setups, you will use (bootloader grub-bootloader). For the former, you use /dev/sdX (device) and for the latter you use /dev/sdXY (BIOS Boot parition). <rndd>hi everyone! i tried to run simple gui app in docker: "docker run --rm -ti --net=host -e DISPLAY=:0 fr3nd/xeyes" but got these errors "No protocol specified; Error: Can't open display: :0". does anybody had same issue? <nckx>Our GRUB should refuse to install if you're using BIOS+GPT without a BIOS Boot partition (the classic ‘blocklists are spooky!’ error). <raghavgururajan>For UEFI+GPT setup, the stage 1 files are stored in UEFI Boot Partition (separate parition from root partition) and stage 2 files are stored under /boot dir (which again can either be in root parition or different parition+mounted under root "/". <raghavgururajan>For UEFI+GPT setup, you will use (bootloader grub-uefi-bootloader) and /dev/sdXY (UEFI Boot Partition). <nckx>raghavgururajan: Rust is served. But you said you were missing 2 things? Which? <nckx>I'd copied 1.38 already so that shouldn't be it. <raghavgururajan>> nckx: Our GRUB should refuse to install if you're using BIOS+GPT without a BIOS Boot partition (the classic ‘blocklists are spooky!’ error). <raghavgururajan>Yep! Though this not only to guix. GRUB fails to install if it doesn't detect BIOS Boot Partition in BIOS+GPT setup. <nckx>Yes, I mean that Guix doesn't automatically add ‘--force’ out of habit whenever that happens, while an nckx does 😛 <nckx>raghavgururajan: So I am in /home/raghavgururajan/guix/wip-desktop. When I run ‘guix environment guix -- ./pre-inst-env guix build rust@1.38’, it tries to graft .38, but it doesn't try to build it. <nckx>Grafting is a relatively fast if I/O-bound process. *raghavgururajan is waiting for make to finish <nckx>Well, if you keep changing the checkout (as is your right, it's your $HOME) I of course can't guarantee that this will remain true. <nckx>I'm getting a lot more ‘warning: source file newer’ warnings than y'day so something changed. <nckx>But at least it's downloading! 🙂 <peanutbutterandc>Question: does %build-inputs variable always have the pair (source . source) as the car? <NieDzejkob>depends on the build-system. I'd recommend using (assoc-ref %build-inputs "source") <peanutbutterandc>NieDzejkob, I actually need just the explicit inputs. for ruby-build-system <nckx>Yeah, that question is a red flag in itself. <nckx>We don't commit to a stable caaaddr API. 🙂 <NieDzejkob>if so, you could add an argument and have the host-side pass only the explicit inputs there <peanutbutterandc>NieDzejkob, How would I do that? I am trying to modify the PATH, but instead of manually typing each PATH, I plan on (map)-ing on top of all the inputs <raghavgururajan>Could you please do `./pre-inst-env guix build rust@1.38 --root=$HOME/.config/guix/gcroots/rust-1.38` and `./pre-inst-env guix build rust@1.39 --root=$HOME/.config/guix/gcroots/rust-1.39, by being at /home/raghavgururajan/guix/wip-desktop ? <nckx>As in I just shut it down because everything should be OK. <nckx>As in it was true when you said it. <nckx>As in anyway, try building something rusty now. <nckx>You should see 0 or more grafts but no Rust builds. <peanutbutterandc>Hmm... is there any debugging to trick that I can use to see what exactly the value of %build-inputs is inside of the builder? <leoprikler>(begin (display %build-inputs) (newline) %build-inputs)? <rekado>%build-inputs is a list of lists. <peanutbutterandc>leoprikler, I did something similar inside the lambda that I was defining to put after a certain phase... perhaps I should have it out of certain lexical scopes? <rekado>each inner list consists of a label, a package value, and optionally an output name <peanutbutterandc>Yikes... I just wanted the explicitly declared inputs... and their /gnu/store location <leoprikler>if you're already using phases, can't you use inputs for that? <nckx>‘Explicitly declared’ is really a package-level thing (package-inputs foo). <nckx>Being ‘what the user added’. <nckx>leoprikler: (pk %build-inputs) 😉 <peanutbutterandc>nckx, would that be available inside of (wrap-program ) just so or do I have to do some (#:modules magic thingy? <nckx>The latter should work if you're at the package level (which is the only place package-level reasoning makes sense anyway). *Inside* of wrap-program? That I don't understand. Are you writing your own? <nckx>If you mean inside of the wrap-program call in a phase: yes, should work. <peanutbutterandc>leoprikler, Turns out, (display %build-inputs) works, like you suggested. Which is strange. I could have sworn I did try that before... anyways, thank you very much <anadon>I'm not sure the specific verbage I'm looking for. I want to be able to include a <my package>.scm in my project repo and be able to build and reference the project that the package file is in without having the package file count itself in the checksum. <raghavgururajan>efraim: Could you please merge my libcloudproviders definition with the old one? <nckx>raghavgururajan: I suggest you do so yourself, or submit a guix-patches bug with the changes you'd like to make to the existing lcp package. <nckx>Like our 3 sysprof packages: this happens. Decentralised development sucks, but it sucks less than the alternatives. <nckx>peanutbutterandc: What's nice about pk over display is that pk is ‘transparent’, (pk x) => x, so you can insert it anywhere without changing your code. <nckx>Then you forget about it and accidentally include it in patches. <anadon>pk? Also, if I can redirect some attention to my question above. *raghavgururajan stares at MozJS-68 build. Has a soul-sucking effect. <butterypancake>I finally sorta figured out my problem. The nouveau driver doesn't like linux-libre 5.7 so I have to stay on 5.4 <peanutbutterandc>nckx, I tried debugging using (pk package-inputs) but it threw an unbound variable error. Perhaps I need to use some module? Where is this function defined? <apteryx>butterypancake: eh? I'm using nouveau with 5.7 without problems <butterypancake>I don't think my cards got initilized so the screen resolution was locked to a really low resolution and instead of xrandr spitting out actuall monitor devices like DVI-1 all I got was screen-0 <butterypancake>I was really hoping someone just didn't update a package... nouveau is up to date, mesa is pretty out of date <peanutbutterandc>Okay (arguments `(#:modules ((guix packages)) ...)) is throwing an error: "no code for module (guix packages)" <butterypancake>peanutbutterandc: you're trying to import a package definition? which package? <peanutbutterandc>butterypancake, I am actually trying to make (package-inputs) function available inside my modification of a %standard-phases. <butterypancake>I threw that argument into a random package and got the same error. It's not just you <cbaines>peanutbutterandc, manipulation of the package objects doesn't normally happen on the build daemon side <peanutbutterandc>butterypancake, Thank you for confirming. I see we are a duo of food-based-nicks. lol <cbaines>why are you trying to use package-inputs? <peanutbutterandc>cbaines, I want to (map (lambda (input) (string-append (cdr input) "/bin")) (package-inputs package) inside of (wrap-program) <cbaines>so, you can do that not on the build daemon side <peanutbutterandc>Does anybody here realize that there is 1. a (source) procedure in guile that is supposed to give us the source of a procedure, and it doesn't work currently? <cbaines>or you can use the inputs keyword argument to whatever phase you're in (assuming you're using the gnu-build-system or something which inherits from it) <ngz>OK. I created a new clone of the repository, and can boostrap, configure, and make again. But now, I get ice-9/eval.scm:293:34: no code for module (json) whenever I try to push something. <peanutbutterandc>inputs was unbound.... %build-inputs has bash and everything... not exactly what I am looking for.... <cbaines>peanutbutterandc, so if you don't want bash, what are you looking for? <peanutbutterandc>cbaines, If you `guix import gem --recursive ronn` you will see 2 package definitions, among which I am trying to, hopefully, add to guix distribution... the second of these: ruby-ronn-ng has a few `propagated inputs` that I want to make just normal inputs. For which I want to wrap the program <cbaines>Sounds like the wrap phase should list the inputs explictly when it does the wrapping <ngz>Interestingly, I packaged ronn-ng a few hours ago, but cannot commit it. <cbaines>Each input has a name, it's the key of the alist <ngz>(along with ruby-mustache) <butterypancake>quick question: how do I tell if something is already packaged. I'd like to update mesa and libdrm but they might go into the core-updates or staged-updates branch. Is there an easy way to check the versions in all the branches? <ngz>peanutbutterandc: Note that I didn't bother removing propagated inputs. <apteryx>butterypancake: not fancy, but 'git log --grep "gnu: mesa" origin/core-updates <apteryx>it's for packages which are a bit too disrputive to go to master but not as disruptive to go to core-updates <apteryx>it's explained in the manual, in terms of 'guix refresh -l' count metrics. <butterypancake>ya but I'm struggling to fetch it. what's is the exact branch name in git? <apteryx>raghavgururajan: neat! I'll try having a look at it later in the day <peanutbutterandc>ngz You were supposed to bring balance to the purity of the .guix-profile, Anakin. Not dabble with the dark powers of propagated inputs! :D <ngz>peanutbutterandc: propagated inputs seem common in the Ruby world, much like Python or Elisp. <null_radix[m]>is chez-scheme packages broken for just me or everyone? this fails `guix environment --ad-hoc chez-scheme chez-fmt` <apteryx>we should propose runpath-like features for those languages ala C/C++ to their upstream, to further the functional packagers ecosystem ;-) <butterypancake>when packaging something, should you stick to actual releases or are release candidates fine? But I think mesa is pretty important so maybe even if release candidates are fine, maybe I shouldn't for mesa? <peanutbutterandc>ngz, Also, shouldn't it be ruby-ronn-ng ? o.O All things in ruby.scm seem to be defined that way <ngz>peanutbutterandc: Our ruby-kramdown needs to be updated, then. <butterypancake>oh ok. mbakke actually already updated mesa and libdrm on staging. I'm glad I checked first <ngz>latest is 2.3.0, we provide 1.17.0 <ngz>peanutbutterandc: I don't think ronn-ng should go in ruby.scm <ngz>groff.scm is a better place, IMO. <peanutbutterandc>wait what!? I just did guix refresh ruby-kramdown and it just upgraded it for me.... and I was not in ./pre-inst-env... didn't know refresh actually updated packages like that. neat (and strange) <peanutbutterandc>ngz, Hmm... I see. I will poke around then. I will still try to see if I can get rid of the propagated inputs. Just so. Because I have basically wasted quite a lot of time already. :D <apteryx>peanutbutterandc: no it just spits the updated package definition to stdout <apteryx>you must use ./pre-inst-env with -u to actually have it written to disk <ngz>Are we supposed to edit pre-push hook since authentication was implemeted? I cannot remember. If so, in what way? <NieDzejkob>weird, my tmux session on bayfront seems to have died <apteryx>ngz: cp etc/git/pre-push .git/hooks/pre-push <ngz>apteryx: I did that, but I still cannot push <apteryx>you also need a local keyring branch <apteryx>then I don't know. What's the error? <ngz>I get an error about missing json module <NieDzejkob>ngz: are you pushing in a guix environment guix? <ngz>ice-9/eval.scm:293:34: no code for module (json) <ngz>I'm pushing from Magit, as I used to. <NieDzejkob>I'd suggest you get normal 'git push' working first <peanutbutterandc>ngz, So... am I stuck until this is patched upstream? Is there something I can do? Doesn't guix have one of those (patches thing in (origin ? How do I go about applying this patch? <ngz>I think adding a phase with a simple substitute* is enough. <ngz>NieDzejkob: I'm doing guix environment guix; git push right now, but it recompiles everything :( <peanutbutterandc>Hmmm... I think I remember reading something about sustitute taking s-expressions, patch taking patches <nckx>peanutbutterandc: Use substitute* like you'd use sed, use source patches when you have an actual patch file. <peanutbutterandc>Hmm... I see... I want to try patch, just to learn. I haven't seen an example of patch yet.... <peanutbutterandc>Hmm... there's a `patches` directory. I see. so patches go inside patches directory residing in the same directory as the definition. neat <ngz>NieDzejkob: I think I need to change "exec make authenticate check-channel-news" into "exec guix environment guix -- make authenticate check-channel-news" or some such in pre-push script. <nckx>peanutbutterandc: You also need to register new packages in gnu/local.mk. Automake thing. <peanutbutterandc>nckx, Whoa... But I'm not going to contribute this... just poking around. I hope it'll just work.... almost there <peanutbutterandc>I wonder if there is some sort of a way to debug guix cooking up a package. gdb-like thingy for guix <nckx>peanutbutterandc: It looks like your source unpacks into 3 more tarballs. You'll need to unpack those yourself (add-before 'unpack 'unpack-harder (lambda _ (invoke "tar" "xvf" (find-files ...)))), something like that. <peanutbutterandc>I was hoping the other day if I could define a phony store and have selected build take place there (from the repl), that way I could trace everything that was going on *raghavgururajan is finishing Outreachy Internship as of today. Feels grateful for this opportunity. <nckx>raghavgururajan: Feel weird, man. *raghavgururajan also feels weird <nckx>peanutbutterandc: s/add-before/add-after/, dunno what's wrong with me today. ***daviid is now known as Guest58294
<ngz>raghavgururajan: oooh, so, how did it go? <peanutbutterandc>I was reading a scheme book and most of such procedures were like deep-* something. This kinda' seemed a bit funny <butterypancake>If I wanted to add an arbitrary file to system using the system config (say a /etc/doas.conf) how would I go about doing that? (feel free to point me to a spot in the manual) <nckx>butterypancake: Use plain-file to ‘intern’ text into the store, then etc-service-type to make it available in /etc at boot time. Searching the manual for "ddcci.conf" will give you an example. <ngz>peanutbutterandc: I just pushed ruby-mustache, finally (yay!) <nckx>butterypancake: Documented in ‘(guix)Service Reference, Scheme Variable: etc-service-type’. <ngz>raghavgururajan: I saw that branch. That's a lot of work. <peanutbutterandc>ngz, Oh wow, you've got write access to the repo. I didn't know I was talking to an expert. LOL. I'm the n00best and the loudest one here. :D <butterypancake>nckx: That's perfect! Thanks! Since it's a service, it'll run everytime I start up my machine right? (never bothered to figure out what services are) this means I won't be able to edit it once it's in place? (That's fine, just curious) <nckx>butterypancake: Yes and yes, it will be a symlink into the immutable store. The Guixy way to edit it is to edit your system configuration & then run ‘guix system reconfigure’. That will immediately apply the changes, no need for a reboot. <ngz>peanutbutterandc: I'm not an expert :) It took me hours to figure out how to get write access back. <butterypancake>nckx: I think that's pretty cool. easy way to put my /etc configs in my dotfiles for version control. <raghavgururajan>ngz: :-) I still same some tidy-up things to do. There are some quite nasty run-time errors. <nckx>butterypancake: You're onto something. Most newcomers think service == daemon, but ‘system services’ in Guix can be any snippet of code that runs before system activation. Not all system services are shepherd services. <butterypancake>nckx: I was thinking something like a systemd 1 shot service. Can you put services on timers? like a weekly certbot renewal? <nckx>butterypancake: You'd use mcron for that. <butterypancake>nckx: nice! never bothered to learn cron. systemd timers use odd syntax, but mcron will let me use guile! I think. Right? <nckx>Not because running a separate cron daemon is objectively better than having your service manager handle it (like systemd), but it's just the way things are for now. mcron's main problem is that it's underdocumented. <nckx>Just... have fun figuring out anything more advanced than ‘every hour/day/...’ the first time you need it 😉 <butterypancake>oh rip. bad documentation is a pretty big turn off for me. that's the reason I gave up on roff :P <butterypancake>does font-dejavu not have emojis? What do I need to do to see nckx's emojis? This has been bugging me since I joined this IRC :P <NieDzejkob>depends on what you're using to connect to IRC... <nckx>butterypancake: I use font-google-noto which displays emojos in HexChat at least. Emacs is more troublesome. <nckx>You're not missing much. *NieDzejkob still has to get emoji to work in IceCat <NieDzejkob>they work perfectly in my terminal, for crying out loud <nckx>& by ‘more troublesome’ I mean ‘no fucking clue aargh I give up burn it down burn it all’. <butterypancake>I managed to get japanese easy (even in icecat) by just installing font-wqy-zenhei and adding ` <butterypancake>xset +fp $(dirname $(readlink -f ~/.guix-profile/share/fonts/truetype/fonts.dir))' to my .xinit (not sure if this is necessary) <butterypancake>I'm looking into moving that configuration into the xorg-configuration in my system config.scm though <nckx>peanutbutterandc: It can have as many as you like, but note that they are applied in order, which can be counter-intuitive. <nckx>(add-after 'a 'b) (add-after 'a 'c) → will run 'a 'c 'b <peanutbutterandc>but I am trying to test a hypothesis: two (wrap-programs actually over-write each other, rather than adding to the modifications of the preceding (wrap-program) <nckx>That's possible, I've never tried. wrap-program just moves the original bin/binary to bin/.binary-real, then creates a bin/binary as a shell script that sets some variables. <peanutbutterandc>which is not as (help wrap-program) [in guix repl after ,use (guix build utils) (ice-9 session)] says <nckx>I have no idea how it combines multiple runs. <nckx>But I've seen plenty of bin/..binary-real-real in practice, so while it's not efficient, it can be done. <jetomit>peanutbutterandc: I think I ran into that once, IIRC it works as you described <peanutbutterandc>jetomit, wouldn't that mean it's a bug? Since it is different from the 'documentation' as supplied by (help wrap-program)? o.O <nckx>Yes, that would be a bug. <jetomit>that was my conclusion :) but I never followed up <alextee[m]>is there an example package that prefetches things in specific directories? <nckx>I'd add ‘(invoke "cat" ".wrappedthing-real")’ to each phase to illustrate that what you say happens really happens. <nckx>Oh, right. And that's an up-pointing finger. <peanutbutterandc>nckx, Hmmm.... '(invoke "cat" ".wrappedthing-real")'.... that... I haven't seen any guix procedures like that yet.... If you can tell me a bit more about it, perhaps I can test and add that info to the report? o.O <nckx>alextee[m]: Does what gromacs does with googletest describe what you want to do? <butterypancake>how do I add a font to my xorg-configuration? it says it wants a font path but I want to give it a font package :/ <nckx>To test the assumption before you report it. <alextee[m]>ah isee. so i'd have to create separate packages for the required modules and then add them as inputs using (package-source) <nckx>alextee[m]: You can use an inline origin. <nckx>(inputs `(("foo" ,(origin (method foo-fetch) ...)))) <peanutbutterandc>nckx, Oh wow! (invoke "cat" is calling cat on that thingy. That is another debugging technique I've learned from you today! Thank you very much! <nckx>alextee[m]: You're welcome. NieDzejkob meant the same thing I think. <peanutbutterandc>I was actually trying to do just that (my first question) but it kinda' didn't work (syntax error, some kind of...) <nckx>peanutbutterandc: I added one ) too many at the end. <nckx>I just typed this straight into the pastebin... <butterypancake>font-google-noto is 1494.1 MiB. How is that possible? That's way to big! <bdju>has anyone else noticed the pulseaudio process suddenly taking up 90% or more of cpu and making the fans loud and cpu hot? has happened to me a few days in a row lately <bdju>I see my temp is high without me compiling stuff and then I go check htop and pulseaudio is always at the top <nckx>butterypancake: It probably is too big, but it is a *very* complete font that aims to provide *every* glyph. That said, sure, it's probably bloated af, it's from Googs. <butterypancake>I'm still struggling to figure out how to add fonts. I think I need to do something like (file-append font-package "some/random/path/X11") but the fonts I want to use don't have an X11 folder. Is that a problem? <peanutbutterandc>nckx, Thank you for the tip. Sadly I couldn't run it... syntax errors still... and I don't yet have a feel for parens.... and my battery is almost dying (powercut here).... I think I'll have to go for now. But I will report the bug tomorrow.... <nckx>sneek: Later tell peanutbutterandc: Look at the ‘'("FOO" ":" = ("BAR")))#t)))’ line. This returns #t and ends the procedure. Then, under that, you try to return #t again outside of the procedure body. It's basically gibberish at that point. If you fix that up it should run fine. Good luck! <alextee[m]>wait i forgot. i'm supposed to pass the output to PREFIX, and leave DESTDIR empty ***gal is now known as galex-713
<hendursaga>I was going to finish up packaging xmltoman, when I ran guix pull and saw that someone beat me to it! Haha! <hendursaga>raghavgururajan: One less thing for me to do then! :P <hendursaga>And with that, I submitted yet another patch, this one depending on xmltoman :) <hendursaga>raghavgururajan: You follow guix-patches? I'm currently using isync, Emacs, and mu4e to read all my mailing lists. And it was ssss, a crypto software. <raghavgururajan>hendursaga, Ah I am not subscribed to mail-lists yet. I am waiting on my custom-domian email setup. <bluekeys>Does anybody here use guix workflow? I'm following the guide on guixwl.org but can't get much past guix install gwl. After that completes successfully, running guix workflow gives guix: workflow: command not found. Reading further into the page there is a mention that the Guile module (guix scripts workflow) must be found in a directory on the GUILE_LOAD_PATH. How do I do that? <bluekeys>Looking at the content of $GUILE_LOAD_PATH, why doesn't the installer script just add a link to the store? <leoprikler>bluekeys: you should add guile to your profile/environment, then everything works out ***nckx is now known as facebook
***facebook is now known as nckx
<jackhill>raghavgururajan: congrats on finishing your internship! <hendursaga>raghavgururajan: Secret sharing schemes in general are pretty cool. <nckx>raghavgururajan: Uhm, a253c41aed3c8629aad3b6957d5c4df134e9fb52 is identical to the patch I asked you about yesterday. <nckx>I'm going to take that as a ‘yes’ & push it. <NieDzejkob>oh wtf. Bayfront is pinned at 100% CPU usage, ssh is unresponsive ***Server sets mode: +cnt
<nckx>raghavgururajan: I know 🙂 <NieDzejkob>it's compiling two webkits, ghc, librsvg and ghc. all of these feel like heavy packages <nckx>And wpewebkit & I saw stuff like opencv too. <raghavgururajan>NieDzejkob, Sorry my bad. I set -c32 to see how fast it goes. Instead it just froze <NieDzejkob>if you tell it to use all cores, it will. and nothing else will be able to use the machine <nckx>I've STOPped all cc1plus's to pause the madness. *NieDzejkob runs guix build ungoogled-chromium to get a store path, hopes not to trigger a build <nckx>raghavgururajan: You can't just blindly set --cores=32. --max-jobs=4, so that means 4 builds will each use 32 jobs. <nckx>I think I've managed to kill the -j32 stuff without touching Cuirass stuff. <raghavgururajan>nckx: You don't have to update gnome stuff on master. I have already updated on wip-desktop and soon will be added to master <nckx>raghavgururajan: Go ahead and restart your build, but remember that this is a shared machine (running scheduled Cuirass builds too). Don't start 128 C++ compilers please. It has ‘only’ 64 GiB of RAM. <nckx>I wasn't planning on updating more than I just did (I actually use Simple Scan, not much else). <NieDzejkob>ungoogled-chromium times out after 21600 seconds even though the properties have set a timeout of 144000. What gives? <NieDzejkob>the same thing happened when I tried building it on bayfront manually a few days back <nckx>raghavgururajan: No harm done. I know how unpleasant it is, but please ping someone here *as soon* as you say ‘oh fuck’. Don't wait too see if it fixes itself. If Jakub hadn't caught this immediately, SSH might've seized up completely. Who knows how long the machine would've been unresponsive. <nckx>raghavgururajan: I killed 2-3 ‘make -j32’ trees, they must've been yours. <raghavgururajan>nckx: It took me 10min to actually realize it froze. It assumed it was waiting on build lock or something. Then when I pressed enter, i realized shits not right. <gnutec>I have problem with instalation of unkown-horizons. <GNUtoo>I'm using guix to build a library and I've done that on the .scm source code: <GNUtoo>- (commit "181d3e2a85dff24552a29a0cecbca9ac78cba5b7"))) <GNUtoo>+ (commit "77155778b245f600cbf7b43445cb51282d8a2664"))) <GNUtoo>So normally running guix build <the-package-name> should rebuild it right? <nckx>Not if you didn't change the hash. <GNUtoo>If I change the package version it tries to rebuild it <sneek>guixy, guix-vits says: Thanks a lot. Lucky for me the 4 hundreth whitespace errors were in +++ side of the patch :). *GNUtoo feared that it was a bug, I'll just change the hash so it recomputes everything <nckx>GNUtoo: YW 🙂 The hash is the canonical identifier. The rest are merely instructions on where to find <file matching hash>. They are *not used* when Guix already has it. <nckx>gnutec: I get AttributeError: module 'platform' has no attribute 'dist'. <nckx>It was deprecated (one would get a warning) in 3.7, and removed in 3.8. <guixy>What is necessary for a working alpine email client on guix? <nckx>Why is it sniffin' that in the first place. Oh well. I'll try that patch anyway. <nckx>gnutec: Yes. That's the latest release. <NieDzejkob>GNUtoo: I think you might want to set the version of your package with git-version. That way, the filename of the store item will change together with the commit hash, which will also trigger a re-download <nckx>Do you mean (git-)file-name? Using git-version may be a good idea here (depends) but won't affect the source. *NieDzejkob starts a chromium build on bayfront again <nckx>Bah: INTERNALERROR> pluggy.manager.PluginValidationError: unknown hook 'pytest_namespace' in plugin <module 'tests.conftest' from '/tmp/guix-build-unknown-horizons-2019.1.drv-0/unknown-horizons-2019.1/tests/conftest.py'> ***jonsger1 is now known as jonsger
<alextee[m]>im stuck without updates because i don't have enough (>1000 gazillion GB) to build it <nckx>alextee[m]: It's not ci.guix.gnu.org but it can be used as --substitute-urls. <alextee[m]>is there a way i can add it to the list of substitute candidates through a config file? <kmicu>Google sucks granetd but Noto is not bloated it anyway. World has many scripts and it’s a basic need to have multiple styles for each. If there’s an issue then only with Guix packaging which lacks seperate downloads as provided by upstream. *alextee[m] needs to read the manual again <nckx>Lol. Yesterday ci.guix.gnu.org had 400 MiB left (of 1TB) on /. <nckx>kmicu: Many scripts != bloat. It would be nice to split up font-google-noto but it's not a priority for me. 1.5G (or whatever) is fine. <nckx>alextee[m]: Guix System? <kmicu>Western languages use handful letters so we think that 3MB for a font is normal, but what is normal for majority of people is ~100MB for a font. <nckx>On foreign distros, foreign customs apply. <NieDzejkob>so why are there no subs for audacity? A build finished successfully 10 and 2 hours ago <bluekeys>leoprikler: that looks to have worked. Thank-you <kmicu>NieDzejkob: could it be a stale Guix cache on your machine? <GNUtoo>NieDzejkob: NieDzejkob: I've already that: (file-name (git-file-name name version)) <nckx>GNUtoo: What is version? <GNUtoo>Maybe I need to add commit instead <nckx>You probably want (let ((commit "hash") (revision "0")) (package (version (git-version "0.1" revision commit)) … <nckx>GNUtoo: Take a look at xf86-video-intel (xorg.scm), particularly the version field and how commit is re-used in the source. <nckx>I've ‘tested’ the latest x86_64 audacity on berlin so one might as wel substitute & enjoy. <NieDzejkob>hmm, I think I'm stuck between a rock and a hard place <NieDzejkob>right now, I can't update until substitutes are ready for everything big <NieDzejkob>if I split into multiple profiles, the packages aren't going to see each other except by luck <NieDzejkob>(because the producer and consumer of a search path must be in the same profile) <NieDzejkob>and I do want to have a manifest file that lists my packages -_- <nckx>Would --do-not-upgrade work for your case? <NieDzejkob>I could use 'guix upgrade' for now and hope for the best, but then I can't really modify the manifest to add packages <nckx>Well, you could manually keep it up to date while running guix install, for now. <nckx>That about sums it up yes. <NieDzejkob>is there a reason guix upgrade does not support --do-not-upgrade, or is that an oversight? <butterypancake>jsoo: I'm attempting to use startx as you do, but looking through your dotfiles, I cannot for the life of me figure out how X is loading your window manager. I've copied over a good bit of your config into my config and have successfully launched X. But it's not running my xinitrc or xsession file. How do you do it? *NieDzejkob prepares patch *nckx stops preparing theirs. <jsoo>butterypancake: check config.fish and .profile I think. <jsoo>butterypancake: it's at the bottom of config.fish. Had to double check just now <butterypancake>jsoo: I'm doing it! No login manager for me! Thank you so much!!! I'm so very happy!!! <jsoo>Nice! Man I really should write that up <butterypancake>just curious, in config.scm, why are lines 126 and 127 identical? <nckx>The first one is the file that gets executed, the second is the string it receives as name, or arg0 (‘itself’). <nckx>This is how some utilities change their behaviour depending on how you launch them (e.g. through a symlink with a different name). <jsoo>butterypancake: maybe a mistake? <nckx>Yeah. ‘Conventionally the first ARG is the same as FILENAME.’ <nckx>Arg, I forgot the v above. <butterypancake>another question, how did you access non-exported variables like xorg-configuration->file? I ended up ripping them out of their modules using @@, but you seem to just access them without issue <bluekeys>I get a segmentation fault when running movemail. Anyone have ideas on how to start debugging it? <nckx>bluekeys: Is that part of mailutils? <bluekeys>I don't know how to use them... I'll get into the manuals *nckx answers: yes it is. <nckx>bluekeys: ‘strace movemail --...’ just spews trace output to stderr, you can 2> it into a file and/or paste it somewhere. <nckx>I can't get it to segfault but don't have a mailbox to move. <bluekeys>It does it when I connect via imaps and try to use uidls <nckx>I have an imaps, I can do this. <bluekeys>movemail -vv --max-messages=1 --progress-meter --preserve --uidl 'user%40host.com:password@imap.host.com:993' maildir:///home/user/Maildir <bluekeys>to create the maildir I just ran mkdir -p /home/user/Maildir/{cur,new,tmp} <nckx>movemail: could not create mailbox `user%40host.com:password@imap.host.com:993': Requested item not found *nckx installs properly to read docs <nojr>is there/will there be a blog post on how to set up Guix in DigitalOcean droplet ?? <nckx>bluekeys: So the segv happens in mu_stream_seek (gdb --args movemail -vv ...; then ‘run’; then ‘backtrace’) but that's probably all we can say without debug symbols. Or staring at that function's source & spotting an obvious booboo. <bluekeys>How to add debug symbols? Copy package definition to my own channel and recompile with debug symbols? <nckx>Something like that (I've never actually done this). And set #:strip-binaries? #f at least. <bluekeys>OK. That'll take more time than I've got right now... I'll update here when I've got a channel set up <NieDzejkob>alternatively, add a "debug" output to have the gnu-build-system split the debuginfo into a separate output <mroh>(outputs '("out" "debug"))