<xavierm02>On an unrelated topic: I'm having a hard time understanding the difference (aside from verbosity), in the config.scm, between adding a package in the package list, and making a simple-service that extends the profile service
<xavierm02>(I'm going to bed but I'll read logs tomorrow so don't hesitate to answer while I'm gone)
*nckx is not sure what kind of answer is expected.
<nckx>xavierm02_: I mean, it'll probably work, I guess, and it's nice & hacky & sure (system-packages…) is just an abstraction you can opt out of if you're the kind of person who likes making their own screws, but why would you do that in practice?
<nckx>eric23: Which errors are we talking about here? ‘guix pull’ prints nothing odd; let's see if the pulled guix does…
<nckx>OriansJ: I don't know, my ‘not sure’ was meant literally, not disapprovingly.
<eric23>I don't remember there being errors. I remember it having load-thunk-from-memory
<nckx>OriansJ: Though I was talking about an empty ‘file’ (or, more generally, any file that isn't a valid sexp according to string->canonical-sexp, which rejects the empty string), *not* an empty set. ‘(acl)’ should work, no question. But ignoring an empty file might hide bugs. Does that make any sense?
<nckx>eric23: Running ‘file <a random similar file>’ here gives me:
<nckx> /gnu/store/z5bk5v8kl2ll16mf1p3rbcb4hwgm4075-guix-module-union/lib/guile/2.2/site-ccache/gnu/packages/djvu.go: ELF 64-bit LSB shared object no machine, version 1 (embedded), dynamically linked, with debug_info, not stripped
<nckx>eric23: It would be interesting to see if ‘file /gnu/store/hvhcfn985gbpr5rmjp2g4gsr5qpp4szw-guix-module-union/lib/guile/2.2/site-ccache/gnu/packages/djvu.go’ returns something bogus for you.
<nckx>Though I'm not a Guile hacker and my advice ends there.
<eric23>I don't have file. Which package is it part of ?
<eric23>does this verify everything on the computer or just guix ?
<nckx>eric23: All software installed by Guix; so what in traditional distributions would be in /bin, /lib, /usr… Not edits you might have made to /etc (such as your system configuration if you're on Guix System) or ‘live’ data in /var, &c. And of course Guix doesn't touch or hash your files /home.
<nckx>Well, you still weren't wrong. And there's certainly a way to get out of your pickle without reinstalling, I just can't pour it into 2 lines here before signing off. I'd be bound to forget something important, for one.
<nckx>eric23: Good luck… (and try writing to /gnu/store if you don't believe me. ;-)
<eric23>I see that... /dev/mapper/guix-test on /gnu/store type ext4 (ro,relatime)
<faif87_>I've never ran into this before, but I can't run executables via terminal using "./". I'd enter "./someprogram" and would get "No such file or directory". Any ideas on how to remedy this?
<eric23>faif87: out of curiousity what do other commands from system say?
<eric23>I mean can you execute any system commands?
<faif87>eric23: Yep. I'm not bash expert, but I can use: cd, ls, pwd, cp, etc.
<faif87>Here's a bit more context to my problem. I want to use Godot, but the one Guix provides is a version behind. I need the latest version because it supports OpenGL ES2, so I downloaded the executable from Godot's website, but can't run it via "./Godot...".
<faif87>I had to download ncurses to use the "clear" command. Is there something I have to install to use "./"?
<eric23>I don't think so. I made a executable bash file on my home directory and executed it fine.
<apteryx>dvorak is honored for the kernel layout (2nd prompt)
<apteryx>and for my Xorg config as well; so it seems it's just Grub that is having problems with it.
<xavierm02_>If you have the keyboard-layout thing at the 3 places it should be (in operating-system, in bootloader-configuration and in xorg-configuration and it still doesn't work, I'd expect it to not be a Guix specific issue
<xavierm02_>apteryx: Seems to be a grub problem. One way to deal with it, as suggested in the second link, is to just add a second key to your encrypted volume, and type it with the default keyboard layout.
<OriansJ>soocki: although regular users can build all packages; they can not make changes that could potentially effect other users and thus commands like system reconfigure require elevated permissions
<OriansJ>soocki: it effectively means nothing was changed; as guix either completes successfullly or does nothing
<xavierm02_>the way guix works is that it puts everything in the store, and then puts a symlink in the profile (which is contained in your path so that's where your shell etc. goes to find programs)
<xavierm02_>so if you don't update the link in the profile, you may have built stuff and added it in the store but it won't be usable
<xavierm02_>OriansJ: Are you sure? Last time I forgot sudo, when I rerun it with sudo it went much much faster. I assumed it meant it had kept the work it did and only added the link
<OriansJ>xavierm02_: that is because the successful builds are still cached and thus that work does not have to be repeated; partial builds and similiar problems have to be redone entirely (if you don't believe me try building firstname.lastname@example.org on a 1GB machine)
<OriansJ>if you wish for it to keep failed builds you need to add --keep-failed
<OriansJ>xavierm02_: what is so dumb about that is that the single test that will fail wouldn't actually detect anything useful and the binary that would be generated is identical to the one produced on a machine with 16GB of ram.
<soocki>My local config (~/.config/guix/current) points to '/var/guix/profiles/per-user/username/current-guix) which still points to the first system iteration '/var/guix/profiles/system-1-link' since the new one ("/var/guix/profiles/system-2-link.new) couldn't be created, permission denied. So I am infact using the previous version. I was under the impres
<soocki>sion the whole point was to have per-user profiles/upgrades, hence 'sudo' shouldn't be needed. Is this normal it fails like this?
<lem0n4de>Hi, I m considering to switching GuixSD, but I am curious is it capable of managing user configuration files?
<OriansJ>lem0n4de: depends upon what you mean by managing user configuration files
<lem0n4de>Like managing .zshrc or some config files for terminal
<soocki>I am pretty sure the size of /gnu/store have doubled as a result of this process, yet since the symlink is not there it is not usable. This is weird.
<OriansJ>soocki: elevated priviledges are required when guix needs to perform an action that could potentially impact other users.
<lem0n4de>I want to use it for personal computer and trying to figure out is there a way to completely reproduce my user environment
<xavierm02_>soocki: Users can guix install, and if serveral users guix install the same thing, then I think it's shared. But guix system is for the admin, otherwise you could change another users' shel to something with a virus, or do other dangerous stuff
<xavierm02_>lem0n4de: If you mean configuration files, then no. The installed packages with their versions yes. And you can just keep a copy of configuration files.
<OriansJ>lem0n4de: well guix can easily ensure all packages are installed to your specification but guix doesn't yet provide that specific functionality like Nix does
<xavierm02_>lem0n4de: There's home-manager in nixos that tries to keep a file that described configuration files. I don't think there's anything prevent you from doing the same in guix, it just hasn't been done yet.
<xavierm02_>And yesterday, someone was trying to make his .config readonly but it wasn't really working because some programs just expect to be able to write there
<lem0n4de>Hmm, I am going to look further for that nix package
<xavierm02_>Maybe you could even install nix from guix, and then home-manager in nix, and with a few symlinkx, you might be able to get it working
<lem0n4de>Yeah, I currently manage my dotfiles with a git repo but to install all system with a single command makes me somewhat excited
<soocki>xavierm02_: OriansJ: Thanks. I do not fully appreciate the fact how this is 'half-allowed' for a regular user but I suppose it's me not fully appreciating the repercussions involved. Since I am not in control of the other user's symlinks to the current version (~/.config/guix/current) than I cannot dictate their version of the system. Yet, somehow
<soocki>I can build and install a fully upgraded system, but not able to use it. I suppose the answer is, like you say, this functionality is for adminstrators, get used to it, fine and I will. Thanks again.
<OriansJ>lem0n4de: would 3 commands be close enough?
<xavierm02_>soock: You can't "build and install", you can "ask guix to build" and "ask guix to make things available in the store". But that's not really installing. In "./configure; make; make install" words, you can "./configure", "make" and "make install for me" (guix install) but not "make install for everyone" (guix system reconfigure).
<soocki>xavierm02_: That makes sense. Running with sudo took no time the second time around.
<soocki>After installation of 'fprintd' what would be the most straight-forward way of starting/enabling the associated service? Is the intervention in the '/etc/config.scm' needed? ('gnu services authentication' + 'service fprintd-service-type' declarations), or is there an alternative way?
<soocki>DISCLAIMER: I have read the related documentation, yet it is still not clear to me, I would very much appreciate a little push in the right direction, hope you don't mind, I don't take this for granted, appreciate all your help answering my questons and clarifying it for me.
***ng0_ is now known as ng0
<xavierm02_>soocki: You can try "herd start fprintd" but I don't think it'll work before adding the service in config.scm
<soocki>xavierm02_: The 'herd' is not aware of the 'fprintd', even though it's installed, that is why I attempted the 'guix system reconfigure ..' in the first place. My user's profile still point to the wrong file system profile though, I guess I need a restart and whatnot. I will have to disconnect so thank you and farewell, talk you again.
<nckx>sneek: later tell soocki: fprintd is enabled by adding ‘(service fprintd-service-type)’ to the services field of your operating-system. You *can* additionally ‘guix install fprintd’ to get the fprint-* tools to test your reader, but they won't work without the service.
<nckx>sneek: later tell soocki: Then you're pretty much done because nothing on Guix System integrates with fprintd [yet]. Or at least nothing that I've tried. Sorry. But you can manually fprint-verify until your fingers bleed.
<nckx>recj: Sure, and one of the fine freedoms explicitly mentions ’for any purpose’. I'm not against booting Windows (well, I am, but don't expect others to be), but can understand that it's not on anyone's to-do list here.
<rvgn>Oh. I assumed that user was doing manual install.
<marusich>recj, roptat_ nckx: you're right, if you want to chainload, you have to manually run the commands from e.g. a GRUB shell on boot. Or you could modify the GRUB configuration file manually, which as they say "may invalidate your warranty" ;)
<marusich>Guix doesn't store a copy of your OS config automatically in the built OS. In some cases, like some of the example VM os configs, it will be automatically copied into the VM image, but generally it's your responsibility to keep track of the file you used.
<marusich>I mean that, if you have a file named ~/my-config.scm which is the OS config, and you invoke "guix system reconfigure ~/my-config.scm", by default the ~/my-config.scm file will not be installed anywhere.
<marusich>Similarly, if you do "guix system build ~/my-config.scm", it will build the new system, but if you examine what was built, you'll find that my-config.scm is not present.
<westerwest>So I need to make my-config.scm into /etc/config.scm to port my configuration elsewhere?
<marusich>I'm not sure what you're trying to do, so maybe I'm confused. As long as you keep track of where your config.scm file is, it doesn't matter where you put it.
<playX>Hello to all! Why there are no `clear` command in terminal?
<marusich>I was trying to explain that, by default, when Guix builds a system (e.g., via "guix system reconfigure config.scm"), it does not automatically store the OS config file that was used ("config.scm") anywhere in particular. Therefore, if for example you build a VM from the OS config (e.g., "guix system vm config.scm") and log into the VM, you will not find the "config.scm" file anywhere inside it, so you will not be able to tell what OS config was
<marusich>xavierm02, there are probably a hundred different ways. I use GNOME3, and I have the ability to mount devices (e.g., USB drives) automatically. GNOME usually "just works"...not sure what magic it does under the covers.
<playX>How I can edit sound configuration in XFCE? In GNOME I can change output device and etc
<marusich>westerwest, you can run "guix package --list-installed" to list all the packages you've installed. However, I think it's easier to keep a "manifest" of packages that you want installed. You can install all packages in a manifest with "guix package --manifest=my-manifest.scm".
<marusich>I don't know if it's Nautilus that does that magic for me or something else; I suspect it's a variety of mechanisms working together. Not sure how it works with other desktop environments. It just works on GNOME, which is one reason why I stick with GNOME.
<westerwest>marusich: gnome probably uses its GVFS to handle all those weird things in the background
<westerwest>Another question: When I use custom package manager within emacs, i dont install emacs packages with guix right?
<marusich>In general, you should be able to use any custom package manager. Especially for an interpreted language like Emacs, I suppose it probably will be fine. But Emacs has a lot of things packaged in Guix, so I'd recommend using Guix to install the Emacs packages, myself.
<westerwest>But when I want to keep my configuration portable? Also isnt all of the things in melpa?
<marusich>I think you can use the Emacs package manager if you want. You might have to jump through some hoops to get it working on Guix; I haven't tried. There are enough Emacs packages packaged in Guix that I usually just don't bother with elpa.
<vagrantc>and it's easy enough to package anything missing...
<nckx>westerwest: I was going to say that ‘guix packages outdated foo’ is not necessarily a fair criticism (for any distribution, really), but I see that GNOME 3.28 is more than a year old and you might have a point there. 😛
<westerwest>Yeah I mean guix has 5.17 kernel but year old Gnome? That aint right
<nckx>xavierm02: Not saying that advice is good, but dmsetup is part of lvm2.
<vagrantc>some packages are harder to update than others due to larger interdependency sets
<nckx>westerwest: Well, a lot more people run the kernel than run Gnome, and if Gnome is as hellish to upgrade as that year implies…
<xavierm02>Alright I have an epic bug. I had sddm installed. Since I couldn't get gparted to decrypt my hdd, I added a gnome-desktop-service in my config.scm. Then my computer froze, and I tried to log in acter Ctrl+Alt+F2 and thought it accepted my login and password, it didnt' do anything else. So I rebooted and sddm fought with gdm (I think) and my screen kept switching between the two several times per second for a minute. And now apparentl
<westerwest>Lord Debian of house Apt, warden of the North Distros
<nckx>Come to destroy your latency and burn your SSD (…what? You'd rather watch a film and perhaps download a file instead of watching your PM's output scoll by? Traitor!)
<nckx>(I didn't mean to blame Debian specifically, there are plenty of ‘my data's probably the only thing in ur q lol’ offenders and apt is far from the worst. I just run it on an old laptop while my mother browses Twitters and then she complains.)
<westerwest>nckx: be loyal to your king of the seven man pages sections!
<westerwest>Dnf isnt great either in that regard FORCING sync every 5 seconds.
*nckx is loyal only to info, the documentation format of the future that hard-wraps at 80 characters.
<westerwest>nckx: I thought that its children's head was bashed with hammer. And that we would use some sane format but gnu in the cities of free software still practices unholy info format. And rumors say that she has 4 GNUs!
*vagrantc suspects this is the wrong channel to advocate man over info
<nckx>westerwest: Stop injecting the freedom straight into your veins. Re ‘sane format’: there was some mumbling on a guix ML about ‘modernising’ the texinfo toolchain (it did involve HTML, maybe even 5, ew, but hey, everyone deserves a chance).
<westerwest>We are lucky that gnu project is very traditionalist in this regard
<nckx>So much to do; info's fine; but I can see it scaring off new contributors who like readthedocs.io or whatever I guess. If someone wants to update it, fine, the nice thing about it being GNU is that ‘it still has to work in emacs’ will always be a loud requirement. ;-)
<roptat_>so I can update graphical and non graphical packages independently
<nckx>vagrantc: Since you bring it up: I never got ‘recommends’, really, or I expect too much of them, or something else. It's just a dependency that isn't resolved by default but kept as dependency once it's installed?
<nckx>vagrantc: diffoscope & diffoscope-minimal? (or -maximal, though that's less conventional?) inxi (also a shell-out-to-mucho tool) does that IIRC.
<vagrantc>nckx: in debian recommends is currently treated more like "installed by default, but if you want to remove it, it won't remove the package"
<nckx>str1ngs: Hm. You can say the same for custom packages (nutjobs like me have dozens for unfathomable reasons) though.
<nckx>Hence why folks run their own substitute servers.
*nckx is still on the fence, pointy and uncomfortable as it may be.
<arbi>I ran my `guix system init` last night before dinner and it's still running this morning after lunch. Is this normal for a system install?
<str1ngs>nckx: maybe this won't be so bad after reading this ML
<nckx>arbi: It's not average. It can happen if substitutes aren't working properly or not available for $huge_packages.
<arbi>OK -- I know I don't have a supported wireless device. Could that have something to do with it? I've seen at least 3 different Guile versions installed at this point.
<nckx>str1ngs: TBH the fact that Ludovic of all people proposed it (and it wasn't early April) made me consider it more and longer. Which isn't correct, but hey, humans.
<nckx>arbi: You seem to be able to download sources, though. Although it's always possible that your connection was flakey while Guix was querying the substitute servers. (I've had WLAN cards that worked without firmware but were just plain unreliable then.) We can't really tell.
<nckx>It definitely isn't the target user experience, no.
<arbi>I'm installing from a "foreign" Linux in order to use my wifi card to do the base install
<arbi>How long does the install usually take? I was able to get a NixOS base install in less than an hour on the same machine (the "foreign" distro I'm installing from)
<nckx>arbi: Oh, then you will have to manually authorise the ci.guix.gnu.org substitute server. The installation ‘CD’ takes care of this for you, guix on a foreign distribution doesn't.
<nckx>See ‘To use substitutes from ‘ci.guix.gnu.org’ or one of its mirrors, authorize them:’ in the ‘Binary installation’ manual section.
<nckx>cat /etc/guix/acl to make sure it contains a key, too. I *think* that should suffice.
<nckx>arbi: But installing guix ‘to’ a foreign distribution to install Guix System is totally reasonable and should work.
<arbi>I see it now in the installation documentation. Thanks for pointing me in the right direction!
<nckx>arbi: I don't know how aggressively guix caches signature verification failures (probably not at all) but you can remove /var/guix/substitute/cache/… & ~/.cache/guix/substitute/… just to make sure it asks the substitute server for everything again.
<rvgn>I have question. Is it possible to acheive a setup where there is no building of packages at all and only using substitutes? I wonder why there are always some packages require building when others don't.
<xavierm02>rvgn: Not currently. When you build it's either that the substitute server hasn't had time to build it yet, or that the build failed