<lispmacs>Is the guix info manual available as a package? <quiliro>but i think that if you have guix, you already have the info <quiliro>lispmacs: is what you want not installing the guix doc with guix <civodul>lispmacs: the Info manual is part of Guix <civodul>'guix pull' populates ~/.config/guix/current, which contains the Info manual, among other things <civodul>you need to set INFOPATH so it can be found <kreyren>Looking for info about guix in comparison to {{gentoo,exherbo}} Linux <str1ngs>kreyren: gentoo is a ports/source based distribution. where as guix is a function rolling release package manager. <kreyren>afaik it means that its running latest commits when they are available or? <str1ngs>functional has the most benefits. in that given the same inputs, you will get the same outputs. gentoo is better for cases where you want to effect the whole system with certain use flags and options. <kreyren>so it doesn't have option to compile source based on provided options/useflags ? <str1ngs>guix at this time does not. and the reality is use flags would introduce more rebuilds and less substitutes. aka binary downloads. <kreyren>true, but rebuilds are expected for said scenario or do you have a better way to configure source from user-end ? <kreyren>i like to optimize/build the system for said hardware <nckx>kreyren: The functional model means that you'll be rebuilding a lot more than on Exherbo/*too, though. If a package changes in any way, all its installed dependents are rebuilt. <nckx>kreyren: Re: ’latest commits’, probably not in the sense you mean. Unlike Exherbo/*too, there's no so thing as -scm packages. <nckx>If by ‘optimize’ you mean build the system with the coolest compiler/linker flags, this is also not something that Guix will give you. (It's possible, but you'll be very much on your own and so will your poor CPU building packages all day.) <str1ngs>most of the optimizations are not worth it. 100% more work for 10% gain. you get the idea. :P *nckx funrolls all y'all's loops. <kreyren>i'm used to beeing on my own in terms of distro setup compiler, linker, kernel + MuQSS patches and others and specifying what to build per package is what i currently have is there anything that i would gain by switching on guix? <kreyren>Re: 100% more work for 10% gain. -- it's worth it for me to spent a month to gain 0,001% more :p <str1ngs>kreyren: guix is pretty flexible yet. you would gain in that what ever you modify witll be repeatable every time. and will distribute to like machines easily <str1ngs>kreyren: there maybe a logical fallacy in that argument. though if you enjoy it. I hear you :) <nckx>‘Repeatable’ as str1ngs says is really the killer feature for me, and the fact that your entire system becomes a data structure for a very powerful programming language (Guile) with a powerful library (Guix, even though it's far from complete). <kreyren>> you would gain in that what ever you modify witll be repeatable every time. -- Can you elaborate? for example on gentoo ` [ebuild R ] sys-devel/gcc-9.1.0-r1:9.1.0::gentoo USE="cxx fortran lto (multilib) nls nptl openmp pch (pie) sanitize ssp vtv (-altivec) -d -debug -doc (-fixed-point) -go -graphite (-hardened) (-jit) (-libssp) -objc -objc++ -objc-gc -pgo -systemtap -test -vanilla"` i have the ability to cherrypick what i <kreyren>expect from gcc to be compiler for.. Can i do something simmilar on guix ? For me generally the more i can alter the result of compilation the better <str1ngs>personally I like the repeatable builds in that I know any binary substitute I'm installing has high degree of validation. such that I don't have to always build everything myself. I don't have much time to focus on those things. <nckx>I switched from a heavily customised Exherbo system in which I'd invested many years because it always felt like I was just about managing to prod my system in the right direction, most of the time, but there was always that feeling of shifting sands. It's hard to describe. With Guix, I write the code, I lock things down, they stay down. And if something (an upstream update or so) does affect it in an unexpected way, it's a very reproducible, repeatable way. <str1ngs>on and dont forget guix has atomic roll backs <nckx>Looking back, I was building a kind of proto-Nix/Guix on top of Gentoo/Exherbo… in bash. <str1ngs>kreyren: you can return your system or user profile to an exact point <nckx>Guix does, or better than anything I've seen so far. <str1ngs>also guix has built in contain creation, and virtual machine creation. all of which are functional as web. <kreyren>str1ngs, so i can decompile back on previous version or do i have to have storage full of binary packages? <kreyren>(which is what i have anyway on gentoo/exherbo) <str1ngs>kreyren: no profiles can effect the whole system state or profile state. <str1ngs>it's an exact point in configuration <nckx>kreyren: In that gcc examples you're pinning a handful of features, there is *a lot* sliding around underneath them. You have no direct control over which libraries that gcc links to unless you rebuild the world every time. Two Gentoo systems with the exact same configuration will drift apart very quickly unless you run the exact same commands at the exact same time on both. <str1ngs>also guix has per user profiles and rootless package management <kreyren>interesting tbh i'm not sure abour what 1/4 of the info provided means but it seems worth it to experiment with it.. <str1ngs>my only personal draw back with guix is program wrappers and environment variable runtime dependency. but that a hard technical problem to solve in the context of what guix provides <str1ngs>kreyren: you can use guix on gentoo or any distro really <str1ngs>within the running distro. it will not effect the current system <nckx>str1ngs mentioned containers, but I'd also like to point out ‘guix environment’, which is like a virtualenv for anything on your system (or so I've been told by people who actually know what virtualenv is). <str1ngs>do we get a commission on these sales? :P <kreyren>i usually use franken configuration alike http://ix.io/1PEJ assuming that you are familiar with gentoo which is discouraged and devs refuse to help me with anything would that be different here assuming that i prefer to be part of development of distro that i'm using? <nckx>So you can set up a Guix environment with GCC-5 and Qt-4 if you feel masochistic, and develop some horrible thing in that, while not affecting the rest of your system (so it's not like global ‘alternatives’ systems like Exherbo has and I'm sure Gentoo does too). <kreyren>so it's able to sandbox environment to be independant from live system? <str1ngs>I stopped using gentoo the second there release engineering team refused to release the sources for there live cd <str1ngs>kreyren: yes guix only uses two unique system paths /gnu and /var/guix and some system configuration state in /etc <nckx>kreyren: That would involve containers (standard warning: Linux containers are not a security feature), and might be incomplete, but yes. And what's missing you can contribute back ;-) <str1ngs>guix is only dependant on two paths that how most of this stuff works. containers environments etc <nckx>Isn't 90% (at least) of that CD GPL? <str1ngs>yes, at the time the released it they would not release the source for creating the CD. which was my primary concern since I wanted to modify and rebuild it <nckx>kreyren: So a lot of what you do in that file you could do in Guix, some of it you can't because it's much better designed (packages aren't pooped out in random languages just because $LANG happened to be set at the moment, builds are properly isolated), and a lot of it you can't just toggle with ‘flags’ because we don't have them. <nckx>I don't think either GentooZerbo nor GuiNix benefit from a direct ’feature’ comparison. They are too different in scope and in worldview. <nckx>str1ngs: Ah, the build scripts? That's still f'ed. Did they have an excuse? <str1ngs>nckx: I wrote the code for the build the CD I dont have to release it. <str1ngs>nckx: mean while it's built on the shoulder of GPL giants no less <nckx>Apart from the moral aspect that reasoning is just legally bogus. <Marlin[m]>kinda weird there isn't a fsdg compliant gentoo-based gnu distro <nckx>You don't get to violate the GPL because the binare object you're distributing has magic bytes ‘ISO’ instead of ‘ELF’. <str1ngs>not to mention you cant recreate the ISO <str1ngs>which was my biggest issue. I don't even get to the point of you need to release sources for everything on this CD lol <str1ngs>they other issues with gentoo, it just seemed redundant everyone is building the same thing over and over again. I mean customization is nice. but I think binary distributions are more efficient at the end of the day. <str1ngs>guix seems to find a nice middle ground between build and binaries <nckx>Technically, Exherbo (and presumably Gentoo) supported almost-transparent binary packages very well. <str1ngs>aye, this was pre exherbo and binaries <str1ngs>tough binaries where just starting to become a thing. <nckx>By ‘socially’ I meant that they (IMO) were always just viewed as something to help distribute your personal packages on your LAN or so, never to create something global like Guix and Nix have. <nckx>Maybe trust was an issue, maybe it wasn't considered worth it since ‘everybody tweaks their CFLAGS anyway’, I don't know. I'll now stop talking based on years-old knowledge 🙂 <nckx>You didn't miss anything of value from me. <Marlin[m]>guix gc tells me i have 35gb free for /gnu/store <Marlin[m]>Then why does installing packages fail and tell me i gave no space left? <Marlin[m]>it says i have 35gb available on root OriansJ <Marlin[m]>that's not good, i need to use system reconfigure to get my pc working fine, i was testing stuff <OriansJ>do you have a 5% reserve for root and have a 700+GB drive? <Marlin[m]>The rest is home and a separate hard drive partition <OriansJ>Marlin[m]: is what you are building larger than 35GB? <OriansJ>Marlin[m]: start with a guix pull and then a guix gc; then maybe check for open file handles in the kernel that could hold the space from being allocated <Marlin[m]>and i can't fix it without system reconfigure <OriansJ>one does not require X for guix pull nor guix gc <OriansJ>and we can always fix things even without reconfigure <Marlin[m]>I have run it plenty of times, but nothing changes <OriansJ>yes just "guix gc" and then "lsof | grep deleted" <OriansJ>then "guix package -i lsof" will add it <CodeSections>Hi all. I am about to purchase a new laptop and am planing to install Guix on it. I'm wondering if anyone can tell me if I'll run into hardware compatibility issues before I place my order. The laptop I'm looking at is a Thinkpad T490 with a Intel Core i7-8565U CPU and Intel 9560 802.11AC wireless card <jwgarber[m]>CodeSections: that WiFi card requires non free firmware (as do all ac cards), so it won't work out of the box <OriansJ>CodeSections: well wifi might be an issue (but there are work arounds for that) and provided it is Intel or AMD graphics you should be fine with graphics (nVidia is a different story) and those are generally the only problem areas these days <CodeSections>jwgarber[m] That's what I was afraid of. I'd be willing to sacrifice the wifi speed if for a free firmware, but I haven't seen an older card in laptops with the CPU I'm aiming for <OriansJ>Marlin[m]: then reboot the system and select an earlier system configuration that worked <OriansJ>CodeSections: external USB wifi is always an option though <jwgarber[m]>CodeSections: as long as the card isn't soldered to the motherboard you should be able to replace it (maybe lookup a repair guide to check) <jwgarber[m]>CodeSections: that reminds me though, the BIOS might have a whitelist that won't allow installing different cards <str1ngs>nckx: yes, binaries were always a second rate citizen <CodeSections>Thanks. Any recomendations on the best wireless card with free firmware? (Or where to start looking?) <jwgarber[m]>Ones than use the ath9k driver are probably the best <jwgarber>you can get a lot of them for cheap online, or order them from various libre companies <jwgarber>(the Respect Your Freedoms list above has some links) <Marlin[m]>OriansJ deleting my guix profile in /var/guix did it <desttinghim>I am trying to install JACK, but I can't seem to get the PAM limits working correctly <desttinghim>Does anyone have a working configuration I can look at? <desttinghim_>`herd status` is returning this: error: connect: /run/user/1000/shepherd/socket: No such file or directory <cbaines>desttinghim_, if you're intending to talk to the root shepherd, you'll need to run herd status as root <lukas74824>I installed Guix inside Parabola and am creating an system image... ***benny is now known as Guest43664
<mfg>Hi, so i tried running the extended version of hugo on guix. it has external dependencies to libstdc++.so.6 and libgcc_s.so.1 which are not found. gcc-toolchain is installed. What am i missing here? which package contains those libs? ***emyles` is now known as emyles
<lukas74824>While reading the docs, I wonder if I can use Wayland and how <mfg>this is the ldd output <mfg>`find' finds both libs. so i don't get why ldd doesn't <mfg>Or is it some kind of version mismatch? <mfg>nvm compiling from source helped <mfg>if the answer is correct this happens because glib is compiled with GCC9 and Go uses GCC 6.5 on Guix <Lukas8463>Building Linux from source was a mistake.... Is going on for 5 hours now <pkill9>the linux kernel takes a few hours on my laptop <pkill9>chromium/icecat takes way too long <mfg>what hardware are you using? icecat is the only thing that takes long for me :D ~30-45 minutes <mfg>or are you doing allyesconfig :D <mfg>(also using a notebook) <pkill9>mfg: you mean the kernel takes 30-45 minutes fo ryou? <pkill9>mfg: are you running guix on a foreign distro or as operating system? <mfg>pkill9: nah, icecat takes 30-45. I don't know how long the kernel takes, but back on gentoo it was a thing of maybe 5 minutes ... <mfg>I use an HP ZBook 15 G2 <mfg>had to buy a Guix SD compatible WiFi Chip everything else seems to just work - awesome :D <mfg>Lukas8463: Why do you need a custom kernel? <mfg>Ah i see. for the firmware loading :D <pkill9>you can avoid constantly recompiling a custom kernel by using an inferior package for the kernel <pkill9>that's what i do, it works really well <Lukas8463>To be honest, I just want to get Guix as a system somehow <Lukas8463>I would love to run a free system.... 🅱️Ut I can't because I can't afford a PC having support for that <quiliro>Lukas8463: what hardware does not work for you? <Lukas8463>I got a second PC now because Guix doesn't boot on my first one <Lukas8463>But the second one will not install without proprietary drivers <Lukas8463>And that makes me into a bad mood of trying since 6 and a half hour to compile that kernel with firmware <quiliro>it would not install the non-free drivers or it would not install at all? <quiliro>mood would not like you to say that about him at all! <Lukas8463>Well, I seem to need internet for the install (which I don't understand because the image is 1.4 GB) and I don't have a card with free driver support <quiliro>maybe a friend's house? or another café? <Lukas8463>Looks like internet is working at home (only wifi) <quiliro>or even you could make a mirror of the packages needed <Lukas8463>I have Guix package manager on Arch, what can I do to build an image that works? <quiliro>the best is not to help the hardware vendor that abuses you <quiliro>get the hardware instead of having the vendor its way <Lukas8463>I have -7 bucks on my bank and - 27 on paypal <quiliro>then work for 5 dollars all the hours you have spent in compiling <Lukas8463>Besides, I kinda need a working PC tomorrow evening <mfg>When following the docs to start the guix-daemon from a freshly built git checkout i get a socket in se error. How do i start the new guix-daemon and kill the old one? <quiliro>wait i have to verify if it is TPE-N150 <Lukas8463>Besides I have a PC with only free hardware ... but Guix doesn't boot there <quiliro>Lukas8463: does any other libre distro work on it? <erudition>quiliro : it's not. TPE means Think Penguin. It might still have the N150 chip, but it doesn't really matter because it's not $5 <quiliro>Lukas8463: it works on parabola without recompiling the kernel? <Marlin[m]>Then the problem isn't with your computer i think <erudition>It's an auction. I mean the bidding could end for less than $5 I suppose, but it almost never does <quiliro>erudition: you are right but i have seen very cheap n150 <Marlin[m]>it'll take some time till i can afford importing libre hardware from the US or germany <Marlin[m]>other than that there are some thinkpads over here <quiliro>how much can you afford...you can spend time or money <quiliro>if you spend 20 hours and you can earn 1 usd per hour, then you can spend 20 usd ***jonsger1 is now known as jonsger
<quiliro>so you choose where to spend your time and your money <quiliro>and adjust the rates to your possible rate per hour <quiliro>if you can chat, you can earn money if you want <Marlin[m]>yeah... now's not the time for me to work, and i already have a desktop (getting another one would be a waste) <quiliro>Marlin[m]: study could be a good investment <quiliro>Lukas8463: if it works with free software (parabola stock kernel), it is weird not to work on guix <mfg>Because i don't know how to solve the problem with the Go Compiler, i will just use an arch VM ... <Lukas8463>Again, 2 PCs , one doesn't boot the installer, one has no free WiFi... How to install GuixSD on either of thease <quiliro>Lukas8463: how does the non-boot boot process go? <quiliro>Lukas8463: did you verify other_ports/other_usb_dongle/cleaning_ports ? <quiliro>did you check that the guix system live usb work on other machines? <Lukas8463>The image works on the nonfree PC, but it will not install <quiliro>other distros on the same usb and the same port of the same machine boot fine? <quiliro>much more info now....sorry if i did not get it <quiliro>so we are sure now it is not a problem of the state of the hardware <Lukas8463>I couldn't oversee that the partitions created are very strange too <quiliro>on the mounted partition (probably on /mnt) <Marlin[m]>i wonder if there is a group like nouveau working on reverse engineering amd firmware <quiliro>when booting with the usb and you started with the graphical installer (but it did not work and you go to the terminal), you can see the configuration on /mnt/etc/config.scm <quiliro>the usb is a fully functional guix system installation <Lukas8463>So I should try to boot with the nonfree PC , find the config.scm... then what <quiliro>so you could theoretically copy it to the hard disk and boot from it <quiliro>haha...what i try to say is that you investigate the following way: type the following: ls /mnt <Lukas8463>Oh ok, so I should boot on the nonfree PC now <Lukas8463>It asks me if I want a shell or the graphical install <quiliro>on this machine is the one that works on parabola? <quiliro>sorry....the only thing you can do with a machine that does not have a free networking device is install the system from another pc by removing the disk or install on this pc by getting a networking device that respects you <quiliro>you could also dd the usb onto the disk <quiliro>then you would have the live on the hard disk <quiliro>if you coy the usb (with dd) on the hard disk you would not have a way to install anything without copying all the extra software installation software...which is possible but i have not done it <quiliro>if you copy the usb (with dd) on the hard disk, you would not have a way to install anything without copying all the extra software installation software...which is possible but i have not done it <quiliro>Marlin[m]: but that is for the other machine <Lukas8463>1. The installer gets fixed so it boots on my free PC <Lukas8463>2. I can create some nonfree version of guix so it works on my Nonfree PC <Lukas8463>Can you help me with either of this or have other ideas? <quiliro>Lukas8463: on 1. you will have to help people to fix the issue so you must report on bugs-guix mailing list with no guarantee of solution <quiliro>Lukas8463: on 2. you are on your own...we will not help the vendor violate your rights <quiliro>option 3. get a free wireless device <Formbi>Lukas8463: can't you connect this computer with a wire? <quiliro>Lukas8463: what do you mean? (no wire) <quiliro>no ethernet on machine or on internet link? <quiliro>you could have another device bridge wifi to ethernet <quiliro>another access point could use the ethernet as lan and the wifi as wlan <quiliro>thus being able to connect the wifi to the ethernet port! <Lukas8463>I have a PC with internet I could connect to the nonfree PC <quiliro>with respect to the other machine, you say you cannot enter grub? (with the esc key while booting) <quiliro>clicking the esc key will let you work in grub without booting just yet <quiliro>do you know how to route the internet to it? <minall>How can I manually install a font? <minall>quiliro: Disculpa que llegue tarde... <Lukas8463>How do I create an image that I can just dd on the free PC <quiliro>Lukas8463: have never done that...please tell us when you do it :-) <g_bor[m]>minall: what do you mean by manually installing a font? Installing a packaged one can be done using guix install. <g_bor[m]>If you only have the font then you can copy it to the user fonts directory, amd update the fontconfig cache. <g_bor[m]><g_bor[m] "If you only have the font then y"> Guix should not touch manually installed fonts. <Minall>quiliro: Kiel vi fartas, mandame un mensaje por privado! <gnutec>Guile is the best! Guix is the best! <gnutec>Lukas8463: GNU/Hurd is comming. I think. I stell wait a Guile version of Blender. *vagrantc just gave a very minimal lightning talk about gnu guix, mes and Debian *vagrantc will share a link if it's not too embarrasing :) ***jonsger1 is now known as jonsger
***jonsger1 is now known as jonsger
<notnotdan>every time i forget how to properly do a `./configure` in the guix source tree.. <Lukas8463>IRC, disconnects you, and you loose every conversation <xavierm02>Lukas8463: The channel is logged, so you can still access the messages <Lukas8463>Yeah, this channel but not private conversation <nalkri>There's Matrix, for certain values of better <nalkri>My connection is currently via Matrix <xavierm02>So I've been trying to use LyX and there's a lot of dependencies missing, which lead to it working but some optionsnot being available. <xavierm02>I'm converging towards a solution but it's painfully slow because everytime, I have to add whatever was missing to propagated-inputs, compile LyX, and then see what's the next thing missing. <xavierm02>Is there some way I could avoid recompiling it? <ryanprior>xavierm02: does it have a configure script? If so, that might have a big list of optional dependencies that it searches for and informs about their availability. <Minall>Hello guix!, I see that the package definition on the driver xf86-video-openchrome is of course, downloading the package from a source, but the version gets specified there, in this case the latter one, 0.6.0, my question is, when for example, the package gets an update, guix updates it immediatly? <Minall>And why is the package downloaded on a .tar.bz2, instead of .tar.gz, I don't have this clear, what is the difference between these two? <str1ngs>Minall .tar.bz2 uses bzip2 algorithm <str1ngs>tar is a container format. gz bz2 is what it's compressed with <trzcdev>Looking at 'man guix environment'. The documentation for --ad-hoc says "include all specified pacakages in the environemtn instead of only their inputs" <trzcdev>What is meant by "instead of only their inputs"? <str1ngs>trzcdev: that may mean native-inputs and propagated-inputs as well <trzcdev>where inputs are the dependencies of a given package? <Minall>str1ngs: Thanks!, is there a reason why guix would prefer the bzip2 algorithm instead of a tar.gz? <Minall>I'm really uninform on this topic, sorry about that! <str1ngs>Minall it has higher compression so it uses less disk space and network traffic. but at the expense of higher CPU usage to compress decompress <roptat>I have a question on substitution. If a derivation is marked as #:substitutable #f, does it mean my guix will not try to look for it at a substitute server, that no substitute server will ever propose it, or both? <trzcdev>Looking a little more at the documentation on guix package, I see that there are three notions of "input". These are 1) inputs, 2) native-inputs and 3) propogated-inputs. It seems like inputs can be categorized as native and propogated. Native are used only during build-time and exist only for that part of the packaging process. After the build step is complete, they are removed from the environment? Inputs exist during build and <trzcdev>beyond. But propogated-inputs are used only during run-time as "helpers" and are "linked" together so that if the parent dependency is removed, the propogated-inputs are removed as well. Is my understanding sound? <nullix>trying to run a binary file here: ./Godot_v3.0.6-stable_x11.64 <nullix>bash: ./Godot_v3.0.6-stable_x11.64: No such file or directory <trzcdev>nullix: The obvious question, are you in the directory you think you are? That is, is the binary located where you're calling it (or is it on your path)? <trzcdev>nullix: Or, do you have permission to run it? Check ls -l, I believe <trzcdev>It may be that you don't have one of the necessary dependencies to run it. For instance, it may require library-x but when it tries to run that, it's giving an ambiguous error message. <str1ngs>nullix if the binary was not build with guix or gcc-toolchain it will not find the dynamic linker <nullix>tryed other binary (a game) got same error <nullix>its precompiled, not build in guix <str1ngs>yes so it wont find the dynamic linker <str1ngs>you can get it to work but you need a special file service <nullix>dont have readelf, cant find it to install too <str1ngs>also . $ file ./binary may show the dynamic linker <lispmacs>Hi, I installed guix on another one of my Debian 9 x86_64 systems, and did a guix pull && guix package -u. I'm confused as to why it is building pioneer package from source if I can see one built at guix.gnu.org already <str1ngs>lispmacs: did you enable substitutes on the new install? <lispmacs>str1ngs: the script asked me if I wanted to, and I said yes, but if there is some way to double check that... <str1ngs>lispmacs: it probably is working then <lispmacs>str1ngs: so, back to the original question... <lispmacs>yeah, I see installing other substitute, but pioneers-20180203 building from source <str1ngs>if it needs to build it needs to build rarely is it wrong <str1ngs>your guix pull hash can also be a factor <lispmacs>str1ngs: package listed online didn't list a guix hash req or anything <jfred>Hey there - so I'm trying to build a Guix rootfs with 'guix system init', but the resulting FS tree seems to be missing /etc/passwd and /etc/shadow... is there something that runs on first boot that populates these? And if so, is there any way to pre-populate those files before initial boot? <lispmacs>str1ngs: I'm not saying guix is wrong, just trying to figure out where I went wrong. Seem frustrating to have to build package for 4 hours if substitute is available for same version and architecture <nullix>./Godot_v3.0.6-stable_x11.64: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.24, BuildID[sha1]=1976e4d0ae8152e9e73d69f4af7b62c4e91e4fe9, not stripped <nullix>any step to take to run binary files? <adfeno>How to debug some package installed through Guix (in this case, Minetest) with GDB which was also installed using Guix? <adfeno>I downloaded the source using `guix build -S' and also extracted it to my user's home. <xavierm02>Rephrasing my previous question about Debian packages in Guix: Does having a "guix import debian" sound feasible? <mbakke>nullix: You can use 'patchelf' to change the interpreter of the executable. <mbakke>Alternatively, you could create /lib64/ld-linux-x86-64.so.2 using the 'extra-special-file' service type. <xavierm02>apfel: Yes. (operating-system (inherit my-old-os) (kernel my-new-kernel)) <apfel>xavierm02: in the link i posted you can see my definition. I want to add a service to the %installation-services, but i get this error described in the link as well. <mbakke>xavierm02: Debian uses slightly different package names (i.e. libfoo1-dev), which may not translate very well to the guix names. It does not sound insurmountable, though (but is it worth it?) :-) <mbakke>apfel: Feel free to submit a patch that exports %installation-services :-) <mbakke>In the mean time, you can use '(@@ (gnu system install) %installation-services)' <adfeno>Re: using GDB from Guix to debug Minetest from Guix: Installing gcc-toolchain:out and gcc-toolchain:debug and sourcing $GUIX_PROFILE/etc/profile didn't help. <adfeno>Not sourcing, but using the dot (".", like ". path") <mbakke>adfeno: what is the problem with running minetest through gdb? <adfeno>`gdb minetest' tells me "(No debugging symbols found in minetest)" <mbakke>adfeno: That's just a warning, right? <adfeno>Yes, the "(gdb)" prompt is ready/active waiting for instructions <mbakke>adfeno: you should be able to use gdb normally even though minetest is lacking debug symbols. <mbakke>the difference is that stack traces will be less informative <mbakke>adfeno: You can also pass '#:build-type "Debug"' in minetests (arguments ...), but I don't know if the cmake-build-system is smart enough not to strip the debug symbols. <adfeno>Hm... I'll try to set a break point somewhere based on the thing I want to test, to see if not having debug symbols is any blocker. <mbakke>gdb is able to resolve function names and similar, at least after you have run the program once. Then you can do `break some_function`. <apfel>hm, the created image is 2.9 GB large, i am wondering why, i only added the agetty service <kori>can guix do the INFINITE TOWER OF OPERATING SYSTEMS yet? <adfeno>mbakke: Re: Debugging with GDB: I run the program once inside GDB, then exited the program normaly, set "break -function name" and it asked if I wanted to leave it pending for next program run, so I said yes, and run again. <adfeno>mbakke: but `info breakpoints' still shows it as pending <adfeno>s/leave it pending for next program run/leaving its discovery pending for the next "library" load/ <mbakke>adfeno: oh, I probably mis-remembered then, sorry for the confusion <mbakke>adfeno: You can create a CMake debug build from the minetest source tree "manually" by running `mkdir debug-build ; cd debug-build; cmake -DCMAKE_BUILD_TYPE=Debug ..` after entering a `guix environment minetest`. <mbakke>adfeno: You would need to unpack the minetest sources and enter that directory first, of course. <mbakke>adfeno: Another hack is to add #:build-type "Debug" to the package definition, build it with --keep-failed and then cancel it before it finishes installing... <mbakke>Then you can enter "/tmp/guix-build-minetest-5.0.1-0/build" and run it from there. <adfeno>How to list all the paths of the runtime outputs of a specific package? <nckx>sneek: later tell trzcdev: 'guix environment hello' makes all inputs (=dependencies) of the hello package available in the environment. It does not make hello itself available: you get an environment for *building* hello. <nckx>sneek: later tell trzcdev: 'guix environment --ad-hoc hello' makes only hello available in the environment, not its inputs. 'guix environment hello --ad-hoc hello' does both. <nckx>sneek: eat this botsnack. <Marlin1113>how can i use git-fetch to get the master branch of a repository? <nckx>Marlin1113: Not, since you can't hash a moving target. <Marlin1113>i'm trying to test suckless surf, but i gotta change the source code to customize it, so i thought i should create a repo and a channel that gets from that repo <nckx>Why can't you just specifiy the latest commit and hash? <Marlin1113>and it would really just be getting from the master i guess <nckx>Marlin1113: You can probably hack around this 'limitation' (it's really an important feature) by cloning the repository on the 'host' side instead of having the daemon do it, but I can't tell you how to do that off the top of my head & am not convinced it's a good idea. <adfeno>Re: Getting the path of the build input: … like what (assoc-ref %build-inputs "dependency") does but in this case I'm inside an environment and want to know where that dependency is. <nckx>Marlin1113: git log | head -n1 ? <nckx>This isn't Guix-related, though. <nckx>I presume you know some git basics if you're making a (tiny) fork of a repo and committing changes to it, otherwise you might not have a fun time. <Formbi>ex. «guix package -i st --with-source=st@marlin=./st» <nckx>That works, but you'll have to pass that option every time you invoke guix in a way that touches your st installation. <adfeno>Oh, I found a way to my last question: guix gc --references $(which minetest) <nckx>adfeno: Environments are intended mainly to bring all your inputs into a single profile ($GUIX_ENVIRONMENT), so for example *all* headers are in ls $GUIX_ENVIRONMENT/include, you're not really expected to chase down separate output paths like that. What are you trying to do? <adfeno>nckx: I'm trying to build Minetest (installed from Guix) with debugging symbols enabled so I can run it with GDB (also installed from Guix). <nckx>adfeno: Did you mean 'runtime inputs' instead of 'runtime outputs' above? <adfeno>Yes, sorry, that is what I meant <nckx>No sorry needed, I was just wondering what it could mean 🙂 <nullix>how can i create the entry for extra-special-file for /lib64/ld-linux-x86-64.so.2 <nckx>nullix: ("/lib/ld-linux-x86-64.so.2" ,(file-append (canonical-package glibc) "/lib/ld-linux-x86-64.so.2"))