<raghavgururajan>leoprikler: In gtk4 pack-def, despite pre-check phase, tests fail with an error "Could not open display". Thoughts?
<ulfvonbelow>I've been reading the code that runs for mcron when it's used as a standard (vixie) cron, and I think crontab only barely accidentally doesn't hand out root privileges to anyone that asks, because it uses system instead of system* to invoke $EDITOR which invokes bash which happens to decide to set the effective uid to the real uid (AFAIK this isn't specified in any standard, it's just what bash does).
***ornxka_ is now known as ornxka
***janneke_ is now known as janneke
<leoprikler>raghavgururajan: hum, you're creating an Xvfb and setting DISPLAY as usual
<xmmx>I'm planning to add ghc-8.10.4, for that do I have to upgrade the current ghc from 8.8.3 to 8.8.4 ?
<solene>is there a way to avoid downloading a file twice when updating it in the packages definition? When upstream doesn't provide the sha256 I'm building the package from guix, wait for it to complain and get the checksum that I update in the file and build again which re-trigger a download, it's a waste of bandwidth. I guess there is a way to avoid this?
<xmmx>solene: I was just think about this. I want to know that too.
<efraim>sometimes I'll download the file with wget, run 'guix hash /path/to/file' and then add it to the store with 'guix download file:///path/to/file'
<xmmx>Any shortcut way to find hash for any tags of git repo ?
<nckx>solene: I don't see a (security etc.) argument against storing the downloaded file instead of throwing it away, though. It would just sit there, ready to be re-used if needed, or be collected at the next GC otherwise.
<nckx>sneek: Later tell xmmx: The code behind ‘ghc@8’ looks at all package objects, picks out the ones with ‘ghc’ as name, then picks the highest ‘8[.x[.y...]]’ version. At no point does it look at variable names. They are totally separate.
<nckx>solene: You certainly shouldn't be disturbed. The two Guixes are different in that they see different package collections, but you shouldn't be able to break your system by using the wrong one. At worst, an unintended downgrade when you forget ./pre-inst-env, or an error because your system configuration refers to a package that doesn't exist upstream. But nothing should break. I mix the two constantly.
<solene>tissevert: mastodon has poor search features and I was looking for @tissevert :P
<solene>I have no idea who translated "Cookbook" by "Recette de cuisine" in French on Guix website but it's not helping anyone IMO :D (it's litteraly translated cook book and you expect real cooking recipes)
<solene>ops "Livre de recette" sorry :D still, not helpful
<sneek>xmmx, nckx says: The code behind ‘ghc@8’ looks at all package objects, picks out the ones with ‘ghc’ as name, then picks the highest ‘8[.x[.y...]]’ version. At no point does it look at variable names. They are totally separate.
<rekado>pinfo doesn’t display images, nor does it render variable pitch fonts, which is a little sad.
<zimoun>xmmx, I am just pointing that updating the default GHC does not mean only update ’(define-public ghc’ because it is used by ’default’haskell’ in guix /build-system/haskell.scm. However, adding a new variable ’ghc-8.10’ would be cool. :-)
<dstolfa>solene: i hate it in every way. i have never gotten a contribution to any software project from a VS code user that wasn't poorly formatted because their editor did something stupid
<dstolfa>like randomly convert spaces to a tab in 1 line
<PotentialUser-23>Hi, the installation of the new version stops after receiving: snd_hda_intel: no codecs found. But I turned off audio and wifi in bios settings because there are no free drivers for them. Is it being solved?
<zimoun>xmmx, and all the ghc-* packages are currently consistent with one LTS. Currently 14.27 defined in guix/import/stackage.scm, compatible with ghc-8.6.5. It is then checked by the linter, see check-haskell-stackage in guix/lint.scm. Does it make sense?
<zimoun>solene: considering the Guix ecosystem, I would recommend Emacs for 3 things: read Info C-h i, Git stuff with M-x magit, read/comment Bugs/Patches with M-x debbugs. Not Emacs for all as editing and so on, but only for these 3 things. IMHO, Emacs does much better than alternatives. (And Org-mode is also something really poweful, another sory ;-))
<dstolfa>org-mode is the only reason i still consider jumping back to emacs
<zimoun>yeah, Org and especially coupled with Org-Babel is pwa! :-)
<apteryx>I've packaged Gnulib, mostly for the info/html manual, Autoconf macros but also maintainers scripts. I'm hinking its best home is perhaps (gnu packages base), but I'm open to suggestions if you think otherwise :-)
<ecbrown>solene: there is an offload build facility, to send to a larger computer to build and then it fetches the artifacts back
<solene>ecbrown: I'm just struggling with a package that fails once it reach 99% of its build and I have to do it again and again every time I make a simple change to see if it fixes the build. Using ccache I'd reach the 99% step in a few seconds
<vbox>solene: no, nothing happens. Now that I think about it I can fix it by disabling auto suspend.
<solene>vbox: seems like your system is going in suspend mode and virtual box doesn't enjoy that?
<vbox>solene: I also have other linux vms and they don't have this problem..
<ecbrown>vbox: i have this problem with gdm, i usually run "headless" but have a gui screen. i don't think you can disable suspend after 20 min unless logged in as user
<ecbrown>(many trips to the basement to kick start my computer lol)
<dstolfa>virtualbox is the most unreliable thing i've ever had the displeasure of using
<ruffni>i'm porting ufw to guix. it installs just fine. but ufw expects /etc/default to hold some initial values. i think that's a debian thing for storing default settings. how is this handled in guix?
<pkill9>in guix, the service would typically launch ufw with a config file specified, and the config file would be generated in the store
<ruffni>so i'd install the package and configure a ufw-service (inheriting from 'etc' service)?
<pkill9>i think one issue would be that typically services in guix are configured in the configuration.scm file, rather than using commandline, the next time it reboots it would discad the settings changed using commandline
<pkill9>a g-expression is scheme cod ethat generates a file in the store i think
<pkill9>packages and profiles are g-expressions when it comes odwn to it
<ruffni>this sounds like what i'm looking for! except that ufw doesn't have a --config option (i think) but expects files to be in /etc/default/ufw and /etc/ufw (but this is easily patchable)
<pkill9>yea you can also just extend /etc service like you suggested actually
<pkill9>but it's preferable to use commandline, just because it's less reliance on 'state' (i.e. the 'state' of the /etc directory)
<pkill9>i think /etc is just used when it isn't possible to do directly via commandline
<ruffni>do you know of any examples i could look some stuff up? this is pretty new for me and my impression of the docs for services is that they're not as verbose/complete (maybe) than the part for the packages? or am i just looking in the wrong places?
<pkill9>or would require a lot of patching which would mean more maintenace
<pkill9>yea i don'tthink there's as much docs for creating services
<nanounanue>After running a `guix pull` yesterday, I am getting the following error: `guix gc: error: setting synchronous mode: unable to open database file` in *every* `guix` command
<nanounanue>Apparently the system thinks that it don't have any space free on device, though `df -h` reports 50 Gb free
<nckx>dstolfa: Looking at the code, it doesn't seem so. You'd choose GNOME, then when given the chance to edit your configuration near the end, remove GDM from %desktop-services and replace it with SDDM. Not trivial by far.
<nanounanue>If I try to run any command like `touch` I got the following error: `/run/current-system/profile/bin/touch: cannot touch 'test': No space left on device`
<dstolfa>nckx: hmm, but is gdm the issue here? i was under the impression that gnome defaulted to wayland, but for some reason i see a bunch of xorg stuff running?
<nckx>Yeah, hence the ‘not trivial’ above I'm afraid.
<nanounanue>nckx: So basically, it seems that I have space in disk... (according to df at least). But any pointer about the error `guix gc: error: setting synchronous mode: unable to open database file error?`
<nanounanue>nckx: I was assuming that, It is good to know that I was in the right track. Is there any way to solve the db corruption?
<nckx>Probably not, you'll have to restore a backup. But first, try ‘guix environment --ad-hoc sqlite -- sudo sqlite3 /var/guix/db/’, enter ‘pragma integrity_check;’, to see if my answer is even correct.
<nanounanue>nckx: Don't worry. The command fail with the same error: `guix gc: error: setting synchronous mode: unable to open database file`
<nanounanue>So, I am assumming that the backup is the only option ...
<nckx>nanounanue: No, stupid me, you're not able to do *anything* with Guix so... OK: does ‘ls /gnu/store/*/bin/sqlite3’ show anything? (It should, many things depend on sqlite.) Then invoke one of those full file names directly instead of using Guix environment.
<nckx>Also check your dmesg for any hint of what's actually going on with your file system.
<nanounanue>nckx: The first test failed. When I try to look into the db I got: `unable to open database file`
<nanounanue>nckx: And regarding `dmesg`, one line (well several ones) that looks suspicious: `[ 5042.371549] EXT4-fs warning (device nvme0n1p3): ext4_dx_add_entry:2354: Directory (ino: 655404) index full, reach max htree level :2`
<nckx>So it *is* what I thought. I don't understand why you can't touch files outside of the store, though.
<nckx>dir_index is a horrible ‘feature’ but it should only keep you from writing new files to /gnu/store, not your entire file system.
<nckx>Running ‘sudo tune2fs -O ^dir_index /dev/nvme0n1p3’ will probably fix your bogus ‘no space left on device’ errors, at the expense of performance of directories with very many entries like /gnu/store. But you only have one choice...
<nckx>This doesn't happen often (about 1-2x a year?) but enough that we should consider tweaking the mkfs.ext4 defaults in the installer… And by ‘we’ I'd ideally mean ‘someone who knows or at least uses ext4’, not me committing some random good-looking numbers.
<nckx>...I got disconnected, those 3 messages ☝ are older.
<ss2>oh yes, I'd be for such a tweak. I've resorted to doing this manually, and still not sure if I've found the right balance.
<nckx>nanounanue: If you have a spare drive and a live medium (like the Guix System installer), you could move everything off of / with rsync -aHAX[...], reformat it with -i ‘8192’ (twice as many inodes as default 16k, *if* UC), and move everything back with the same rsync options.
<ss2>nckx: thinking of, I once tried to rsync a store to an external partition, which I never got it right, since it would have taken ages moving the amount of inodes, and I'd always run into issues of broken hard links or something similar.
<nckx>I don't know what you mean by ‘guix-extra-profiles’ so I'm not sure.
<nckx>If you do want to keep ext4, switch to a VT with Shift+Alt+F2 at that point in the installation, and create the file system yourself with -i 4096 or 8192 (lower = safer + more wasteful), then continue from there.
<robin>i've been using btrfs for years; i think i switched after meeting the maintainer at a red hat conference (i was too shy but my friend asked my question about why it doesn't use zippers internally :))
<robin>it gets cranky if you run out of disk space but i've never had data loss from it
<alexandra>hi there, I just installed guix on my computer, and I need to recompile the kernel to add support for my wireless card. is there a way to do this with the config.scm file or something like that? I'm not really used to using a system like this
<robin>alexandra, what model is your wireless card? guix uses linux-libre, so only cards with free firmware (or no firmware) are officially supported
<apteryx>ss2: never had any problems with Btrfs; been using it since 2017 perhaps? I have it setup as a Btrfs RAID 1 array with zstd compression on my desktop; and in case of questions its developers in #btrfs (that was on freenode, not sure if they moved to libera) have been very useful.
<dstolfa>nckx: so it's fairly straightforward to get into wayland-gnome from the installer actually, the thing you need to include is just srfi
<dstolfa>then you can use modify-services and it's easy
<nckx>Well, that's straightforward for some users, daunting for others, but I'm happy to hear it worked.
<dstolfa>yeah i mean i guess it would be ideal to have a little "tick" option in the installer for SDDM instead of GDM, but it's not really the end of the world. the docs are great, but maybe it would be handy to include the "slim-service-type" example from the docs into the sddm-service-type one too
<dstolfa>aside from that, it's easy to follow along
<ix>drakonis: I mean plenty of inspiration from my config, I guess, but yeah thats the main one. Even without that, channel config isn't easy to make declarative, and even if you do via inferiors, you can't build an entire inferior system, so thats alrealy one limit
***alextee2 is now known as alextee
<pineapples>I was convinced that Guix' implementation of channels covers the needs of Nix Flakes adopters
<drakonis>i should point you towards existing configs
<drakonis>they manage building different systems with a single config just fine
<solene>what happens if I use "guix refresh rsync" with the system wide guix and not the one from my git repo? It's weird to me to have 2 guix commands
<nckx>solene: It'll just look at the version of rsync shipped with the system-wide guix, and tell you whether it's old. Using ‘./pre-inst-env guix refresh rsync’ from your git repo will look at the rsync version in the git repo.
<pkill9>solene: what does it mean for it to be more 'corporate'?
<solene>pkill9: it seems really company driven, I made a few commits and got a job offer related to NixOS... They rely on github and there are a few paid services to help NixOS development (I remember one about paying to download existing derivations instead of setting up such service)
<solene>I have the test "channels" that FAILS when I use make check in my guix repo, can someone else reproduce it?
<solene>you need to fill forms to submit bugs and patches too (on github)
<solene>I have nothing against establishing some rules though
<pkill9>yea, it's nice being able to just email bugs and patches