<wdkrnls>Hi Guix, is there a place to see error logs from software running in a Xorg session? <wdkrnls>I'm trying to debug why my window manager is not loading its configuration file, which prevents me from opening a terminal or doing anything else without pressing the power button. <bandali>hmm, logs should be under /var/log/ indeed <wdkrnls>no other places to look for such an error, maybe I need to configure the xorg-service in some way to enable these errors to be stored? <bandali>let me boot up my guix system machine and see if i have any x logs <bandali>indeed, i don't see any /var/log/Xorg.* <bandali>i'm gonna keep looking, but maybe try looking through your login manager's logs if you use one? <bandali>wdkrnls, also, perhaps try looking in /var/log/messages <nckx>dftxbs3e: Not a word. Yesterday evening, #osuosl: <kindlehl> Yep. I'll get current with all our tickets today as well. I've been very busy for a while now <nckx>So I'll give 'em a few more days 🙂 <bandali>quick guile question: anyone know if it's possible to export a function from another module, without having to give it a new name in the current one? <bandali>to answer myself: yes, using #:re-export rather than #:export <nckx>Wow, that's even completely logical & intuitive. <bandali>i'm starting to fall in love with guile <bandali>here goes my productivity on my thesis; goddammit :p <alextee[m]>is guille cleaner than python wrt package/environment management? <ScaredySquirrel>bandali: wdkrnls there is an xorg log under ~/.local/share/xorg/ if you launched it with startx under a normal user <bandali>ScaredySquirrel, ha, i see. i think it's launched by shepherd, no? <wdkrnls>Couldn't you just run `guix package --list-installed | cut -f 1` on both systems and then take the set difference? <wdkrnls>well, it's setdiff in R, but googling maybe the 'comm' command does that after piping from sort? <ScaredySquirrel>why would I have to reboot after adding the openssh service to my os config? <wdkrnls>Switching my configuration scripts to use #!/usr/bin/env fixed the problem I was trying to track down in the X error logs... <wdkrnls>Is there any reason I shouldn't make #!/bin/bash another extra-special-file? <apteryx>alextee[m]: I don't know that Guile has a virtualenv equivalent, but with Guix, it's not much of a concern ;-) <apteryx>and yes, Guix is cleaner than pip/virtualenv w.r.t. package/environment management. <alextee[m]>i see, so i guess you can say guix is also guile's package manager <apteryx>In my opinion, it is. But you may want to ask on #guile to have a less biased one ;-) <atw>I have not been following the EMACSLOADPATH party but should the value of that variable be different inside vs outside a guix environment? <Loup>Hello, everyone I am on "guix". I made the installation from the iso, I install all interfaces gnome, xfce ... but no software provided with. I know that the project and young, I would like to help his devellopement. How to finish the installation properly to have a functional system? <Loup>Hello, everyone I am on "guix". I made the installation from the iso, I install all interfaces gnome, xfce ... but no software provided with. I know that the project and young, I would like to help his devellopement. How to finish the installation properly to have a functional system? <Loup>Hello, everyone I am on "guix". I made the installation from the iso, I install all interfaces gnome, xfce ... but no software provided with. I know that the project and young, I would like to help his devellopement. How to finish the installation properly to have a functional system? <Loup>Sorry google translate my english is broken <zig>what is your favorite speaking language? <bandali>hello Loup, can you elaborate on what the issue? <zig>french can be accepted if you speak french? <bandali>are you not greeted with a gdm login screen after rebooting to your fresh install? <bandali>and indeed, french and esperanto are popular around here; though sadly i barely speak either <Loup>sudo guix system reconfigure /etc/config.scm <Loup>sudo guix system reconfigure /etc/config.scm <Loup>Bon desole si vous ne parlez pas francais. J' ai fais un guix pull tout se passe bien mais j' ai installer toutes les interfaces mais je n' es aucun logiciel avec je suis avec le navigateur gnome en ce moment. <Loup>Good luck if you do not speak french. I made a guix pull all goes well but I have to install all the interfaces but I am no software with I am with the browser gnome at this time. <malaclyps>If I want a guix package to create a file in /etc/profile (on a Guix System) as opposed to ~/.guix-profile/etc -- is there a way to specify that? Or is it a matter of installing that package in guix system configuration? <malaclyps>(I'm trying to modify zsh to generate a /etc/zprofile that will source /etc/profile so that zsh login shells will pick up the Guix environment variable settings) <wdkrnls>I'm interested to hear if you figure that out. In installed xbacklight, but it seems like it requires the creation of the file in /sys or alternatively a modification of the xserver. <malaclyps>Right now I'm erring on the side of just having it in $GUIX_PROFILE/etc/ -- zsh lets you define where the global zprofile should live. (I'm livestreaming my stumbling around on this at https://twitch.tv/codetherapy if anyone wants to heckle) <Loup>guix is ​​actually a system walking on the principle of get? <Loup>sorry my english french walke in french == works <Loup>guix is ​​actually a system works on the principle of get? <SylvainC>The principle of the system is to work on git so that it saves our packet to be able to make back machine easily <roptat>Salut SylvainC :) tu peux parler français ici si c'est plus facile pour toi <SylvainC>Merci roptat, je cherche a comprendre le systeme de la distribution qui a l'air geniale. Il fait en permanance des save sur le git ce qui permet de faire des backup simple et propre ? <roptat>Pas vraiment des backups, mais chaque version le guix est bien un commit dans je dépôt git sur savannah <roptat>Chaque version défini une arborescence des dépendances, donc un ensemble de paquet. Si on veut une version précédente d'un paquet, il suffit de revenir à un commit précédent du dépôt git <SylvainC>Ah d'accord, je trouve le systeme asser classe c'est nouveau comme fonctionnalite ? Je viens touts juste de finir une petite formation avec le git et je ne connaissais pas du tout. <roptat>Guix, c'est pas git :) c'ess pas si neuf que ça, la gestion des paquets fonctionelle c'est décrit dans la thèse d'Eelco Dolstra en 2006 <roptat>Guix jui-même existe depuis 2009 ou 2010 si je me souviens bien <roptat>Le fonctionnement avec git a toujours été jà <SylvainC>Oui je sais mais je trouve le systeme vraiment impressionant. Si je veux je peux creer un serveur de backup qui permettrais de revenir a n'importe quel moment sur le moment cle de mon systeme entier. <SylvainC>Je trouve sa dingue ^^, par contre mon installation est tres longue :/ <roptat>Sur sa configuration, oui :) j'ai même mis la conf le mes machines dans un dépôt git, ça fait backup ^^ <roptat>Il est possible que tu sois en train de compiler des trucs si lis substituts sont pas dispos ou activés <roptat>Tu installe sur une distro externe, ou dia le système live ? <SylvainC>Exact, mais ce que je ne comprend pas c'est comment activer touts les logiciel pour mon utilisateurs. Direct en live <SylvainC>J'etais sur une manjaro une distrib magnifique d'ailleur et je voulais aller sur une pure GNU. J'ai boot a partir d'une cle <SylvainC>Il dise dans la documentation si je comprend bien qu'il faut faire un fichier utilisateur pour les logiciel ? <roptat>Il te faut un fichier le configuration pour le système, et pour les utilisateurs tu as deux possibilités <roptat>Soit avec un fichier manifest, plus pratique à partager et plus lans la philosophie déclarative de guix, soit via les commandes "guix install", "guix remove" etc <SylvainC>Il n'y a que moi dessus ^_^. Comment faire pour faire un manifeste general ? Je vais essayer de revoir le documentation merci :). Je reviendrais si j'ai un soucis de comprehension <roptat>Chaque utilisateur peut gérer son propre profil de paquets, mais le système lui-même peut proposer une liste de paquets disponibles pour tout le monde <roptat>C'est dans le champ packages de la déclaration de système d'exploitation <roptat>Mais l'installateur te laisse pas trop la main dessus, c'est un truc que tu pourras changer une fois booté sur le nouveau système <SylvainC>Je suis deja sur le systeme je viens de faire sudo -i guix system reconfigure /etc/config.scm <SylvainC>c'est le config.scm j'aurais du m'etre le nom d'utilisateur ? <roptat>system reconfigure ne peut se faire qu'en root <SylvainC>Je dois modifier le fichier config.scm pour qu'il prenne en compte le nom d'utilisateur ? <roptat>Dans ton config.scm, il y a un chanp packages où tu peux déclarer les paquets qui seront installés pour tous les utilisateurs. Ensuite, chaque utilisateur peut utiliser guix pour se rajouter des paquets individuellement <roptat>Si tu veux créer plus d'utilisateurs, il faut les déclarer dans config.scm <SylvainC>Ok la il y en a un qu'un je vais voir des sa des que c'est finis merci, j'avais du mal a comprendre touts sa <roptat>Attention, parce que root est un utilisateur comme les autres : si tu installes des paquets avec root, ils ne sont disponibles que pour root, sauf s'ils sont dans config.scm et que tu reconfigure <SylvainC>J' ai bien de suivre les commande indiquer ^_^ <g_bor>I have been recently following the source-inputs discussion. It took me some time to collect my thoughts, but it seems we are missing a kind of input. <rekado_>ScaredySquirrel: you can’t login as root because best practices are to disable that by default. If you want it you can configure the service to enable it. <rekado_>ScaredySquirrel: it would be better (if possible in your situation) to limit root access to certain networks or IP addresses only. <g_bor>I believe this could be expressed more generally. What is actually missing a propagated king of input, that propagates into dependent build environment. Am I missing something here? <rekado_>I again saw “Too many open files” printed by mumi on berlin. Had to restart it. Maybe the web server doesn’t close connections automatically…? <g_bor>hmm... I believe it should close them. Do we have an idea about the volume of the traffic? <bricewge>I get « herd: exception caught while executing 'start' on service 'networking': » but I don't think it will be helpful enough in a bug report. <leoprikler>atw: If you want some Emacs package in a local environment, you have to do `guix environment --ad-hoc emacs <emacs-packages>` and then `source $GUIX_ENVIRONMENT/etc/profile` ***roscoe-tw is now known as roscoe_tw
***wxie1 is now known as wxie
<valignatev>Heyo! Guix has a very cool transformation option --with-input=package=replacement which replaces the input with something else. But is there something for adding more inputs instead of replacing existing once? I want to build Emacs from master with jansson as an additional dependency. <pkill9>valignatev: there isn't, but it wouldn't be hard to add i don't think <valignatev>I can imagine, but polluting cli interface with an option that isn't very demanded is no good. I guess I'll have to write a package definition. <pkill9>you could add your own CLI options with a guix channel <valignatev>pkill9: Well, maybe it's a good idea. I'll consider that if I will need it often. Thanks for ideas! <maxzor>Hello, can one use GUIX system with systemd? <maxzor>or are there fundamental incompatibilities <kkebreau>If it is possible, it would require quite a bit of work. <raghav-gururajan>Folks! How can I use linux-libre version 4.9 instead of 5.3? I tried using (kernel linux-libre@4.9) under (operating system, but it did not work. <kkebreau>For any GNOME users out there, I'll be merging GNOME 3.32 into Guix master today after a final check since there don't seem to be any outstanding issues. <kkebreau>raghav-gururajan: Use "(kernel linux-libre-4.9)" <leoprikler>will all GNOME packages be upgraded or are some stuck on 3.30? <maxzor>in particular, guix system services are a replacement for systemctl right? <kkebreau>leoprikler: All GNOME packages whose version string starts with "3.30" will be upgraded to their "3.32" versions, and all updates required by those new "3.32" versions have been made as well. <leoprikler>if we had a shepherd-service-type guix services could extend that in pretty much the same manner <maxzor>so guix system services could extend systemctl? I am skimming through concepts I barely know <leoprikler>the thing is 1. we don't have a systemd-service-type and 2. guix currently forces shepherd to exist through an implicit service rather than an explicit one <maxzor>would you have readings about shepherd vs systemd? <kkebreau>raghav-gururajan: That was part of my goal, but I wanted to get GNOME fully updated to version 3.34 in Guix first. <leoprikler>so you would have to 1. make shepherd-service explicit in %base-services, 2. implement systemd-service-type and 3. update existing services so that they extend it <kkebreau>raghav-gururajan: At first glance I don't think some of these changes are necessary, but we'll see as we continue packaging the GNOME application suite. <kkebreau>Also, thanks for making the table! It's very useful. <leoprikler>They are similar in the aspect that they're both advanced init systems. The differences boil down to: <leoprikler>2. shepherd doesn't do pkexec for root services (you have to sudo on your own, basically) <leoprikler>2.1 also there's no --user flag and shepherd doesn't run for the user automatically <leoprikler>3. shepherd doesn't attempt to brew your coffee -- IOW if you want timing stuff you still want cron, same for other stuff that isn't implemented in shepherd itself ***runejuhl1 is now known as runejuhl
<refpga>Hello, how can I put newlines in a plain-file string? (This causes error in newlines in sudoers file: (plain-file "filename" (format "~a~%~a" "1st line" "2nd line")). <atw>leoprikler: thanks! I'll do that! the weird part to me was that I didn't use to have to do the `source …` manually <valignatev>Hi again! Is there a way to dynamically specify sha256 hash? I'm writing a package definition that will install something from a master branch, and I don't want to pin the definition to a particular commit. So I want to either inject a hash of a newly checked out commit, or ignore it altogether. <valignatev>I've searched the logs for some time and found recommendations like "build it first time, it'll fail and give you the hash, paste it and build again." Sounds not very appealing :) <leoprikler>valignatev: #f instead of a hash object to ignore, otherwise use a function with the hash as parameter <valignatev>Oh, so if I do (sha256 #f) it'll just ignore the hash? <leoprikler>well, it's really a feature that should only be used by upstream developers, who are trusted to not abuse it beyond snapshots <leoprikler>(and are to an extent expected to dig into Guix itself a bit if that's what they want to do) <leoprikler>(probably to make sure they understand what they're doing) <valignatev>Well, yeah, I agree that you have to know what you're doing with that and making people to dig the knowledge out might be one way to add that entry barrier to the feature <valignatev>But considering that a CLI option to build from the latest commit exists, it's only logical that this functionality should be somewhere <leoprikler>yeah, that simply rewrites the packages inputs -- see guix/scripts/build.scm <valignatev>It rewrites source if I understand it correctly, but it keeps sha without a change <valignatev>Ah, found the tests. Indeed, they check that if --with-git-url is in works, sha256 is #f. Didn't found actual code when it opts-out of the hash, but it indeed doesn't expect it to be set <valignatev>Oh boy, I swear, I started to learn scheme two days ago and I already can understand most of the code. It's like magic, lol <valignatev>leoprikler: Thanks for the help, really appreciate it! <leoprikler>,@(if have-long-double? '("--with-long-double-128") '()) ? <dftxbs3e>leoprikler, what does the syntax mean exactly? do you mind explaining? <dftxbs3e>hmm ok I see, what does unfold mean exactly? <dftxbs3e>sure but how can that work? like 'in place' ? <leoprikler>it's a feature of quasiquote called `unquote-splicing' <valignatev>dftxbs3e: If you're familiar with javascript, ,@ is like an array destructuring, so `(a b ,@'(c d)) is like [a, b, ...[c, d]] in javascript. <dftxbs3e>Well, I never used such a syntax in JavaScript, I only do little things with it. I'm more of a Rust guy <valignatev>dftxbs3e: Heh, I hesitated to provide a Rust example :) You've probably guessed it already, it's like struct literal update in Rust :) <dftxbs3e>valignatev, let s = SomeStruct { a: 123, ..SomeStruct::default() }; ? <valignatev>Yeah, kinda like that. With a little nuance that you can embed anything in a lisp list this way while ownership in Rust won't allow you such frivolity <dftxbs3e> ,@(if (equal? "powerpc64le-linux-gnu" boot-triplet) <dftxbs3e> ;; On POWER9 (little endian) glibc needs the 128 bit long double type. <efraim>I'm on my phone ATM, I'd suggest looking for commits that say 'fix aarch64' for some examples <hulten>A 'guix system reconfigure' pulls in the dependency 'gnome-shell'. I want to understand where it comes from. <kkebreau>hulten: I don't know if there's an automatic way do that, but one might use `guix graph` <hulten>I see how to do it for packages; not sure if it works the same with a system 'config.scm'. <kkebreau>By looking at the result of `guix graph gnome-shell --type=reverse-package`, you can see that numix-theme, gnome, and arc-theme are the only three packages that depend on gnome-shell... <kkebreau>Then since the default login manager on Guix System is GDM, the GNOME Display Manager, one /might/ conclude that gnome-shell is required by GDM. <kkebreau>But again, it's not automatic, and it's definitely not obvious. <hulten>I'm trying '--type=revers-bag' now to get the whole reverse DAG of the package (but this may take a while). It could answer my question, but I don't really know because there may be dependencies through not only "gnu packages" but also "gnu services", "gnu system", "*-modules" and so on. <kkebreau>hulten: Right. Do you have the gnome-desktop-service-type in your system configuration file? <sylvainc>Bonsoir j'etais passer ce matin, on m'as conseille de configurer le /etc/config.msc; pour le seul utilisateur sylvainc. Mais je ne sais pas par ou commencer :(. J'ai du mal avec les termes techniques. <zig>quelles termes techniques? <zig>ah ok tu veux plus d'utilisateurs? <zig>j'ai scroller l'historique, mais j'ai pas tout lu et pas tout compris evidemment. <sylvainc>zig beaucoup trop pour tous les citer :p, Je ne comprend pas comment configurer "sylvain" pour qu'il et acces a tt les packet installer en sudoers <zig>sylvainc: soit tu ajoutes les packets dans config.scm dans le champs kivabien, ou alors tu install en tant que sylvain avec la commande: guix package -i hello <zig>j'ai lu que roptat avait explique cela ;) <sylvainc>Ok merci je croyais avoir compris ce matin mais en fait ... non ^^ <zig>il NE faut PAS faire: sudo guix package -i hello <roptat>sylvainc: quand tu fais sudo guix install foo, tu installes foo pour l'utilisateur root uniquement <roptat>Sans le sudo, tu installes pour l'utilisateur actuel <zig>comme sur une debian... avec guix la gestion des package est un peu (beaucoup?) differente. <roptat>Dans config.scm, tu installes pour tout le monde <sylvainc>Ah ok apres avoir telecharger mais donner je fait sur l'utilisateur courant guix package hello sans sudo <sylvainc>Sur debian on utilise la commande apt-get install nom du packet il n'y a pas de fichier de configuration enfin je n'y est pas toucher sur le coup a par la source.list <Blackbeard[m]>I wasn't sure because I was understanding too much but I don't know French <wdkrnls>I just installed the font-hack package. <wdkrnls>How do I use it? I don't see the font in any of my programs. <wdkrnls>Blackbeard[m]: thanks, I'll give it a look :) <Blackbeard[m]>wdkrnls: fc-cache -rv. The fc-cache command is provided by the fontconfig package. <Blackbeard[m]>wdkrnls: make sure to read that link, it has a few things you should do to have a correct setup <wdkrnls>Thanks, again. I've made a link to that in my notes. <valignatev>I started getting "warning: setlocale: LC_ALL: cannot change locale (en_US.utf8)" after recent guix pull. The last time I got those installing locales under root and setting up GUIX_LOCPATH there helped. /gnu/store/hash/bin is in my $PATH, and $HOME/.guix-profile/lib/locale is my GUIX_LOCPATH. <hulten>kkebreau: No, I don't have gnome-desktop-service-type in my config, but I do have xfce-desktop-service-type as well as %desktop-services listed. <hulten>The reverse-bag didn't give anything more than numix-theme, gnome, and arc-theme. <kkebreau>hulten: Okay, in the manual you can find "gdm-service-type" listed as one of the services included in "%desktop-services". <kkebreau>If you read about configuring the GDM service in the manual, you can find that part of its configuration is called "gnome-shell-assets". <kkebreau>Searching for "gnome-shell-assets" in the Guix codebase indicates that gnome-shell is required by GDM. <kkebreau>hulten: You can also build a derivation for your system and look at the required derivations, like this: "guix gc --referrers $(guix system build -d /path/to/your/config.scm)". But that doesn't tell you why gnome-shell is there. <kkebreau>I can't imagine a reason this should be so difficult, because a package graph for a configuration file sounds like a very useful feature. <kkebreau>hulten: Did you want to use a different display manager? <valignatev>guix info for --with-branch says "... If the `source` field of PACKAGE is an origin with the `git-fetch` method or a `git-checkout` object, the repository URL is taken from that `source`. Does that mean that we can pass (git-checkout (url "...") (recursive? #t)) directly to (source)? <kkebreau>valignatev: Do you mean like the source field in the libpd package? <valignatev>kkebreau: Not really. This is git-reference. I'm talking about git-checkout record type from /guix/git.scm <valignatev>That's because I want to build a package from the latest commit every time <valignatev>I want scheme analog of the --with-git-url transformation option <kkebreau>Ah. I'm not sure. If it's possible, it hasn't been done in the main codebase. <valignatev>I've tried to put git-checkout under the uri where one would put git-reference, like (uri (git-checkout (url "repo-url-here") <valignatev>But I'm getting guix package: error: cannot install non-package object: #<unspecified> <valignatev>Yeah, I see that there are no examples of that in the main repo. But there should be a convenient way of installing packages from master <valignatev>Well, although my current package definition doesn't work with git-reference as well, so I probably have errors somewhere else <kkebreau>valignatev: Yes, it'd be weird if you got the error with git-checkout and not git-reference. <valignatev>Hm, can you do guix packag -f file.scm, if it defines a module with define-public instead of defining package directly? <kkebreau>The "transform-package-source-git-url" method does exactly what you expected. <kkebreau>No, the main package you want to install has to be present without defintion. <kkebreau>instead of (define-public blah (package (name "blah") ...)) <valignatev>So what's the workflow then if I have a .scm file that defines a module and (define-public blah)? I should convert it to the (package (name "blah)), test it as it and only then convert back to module? <kkebreau>Actually, if you just put blah at the end of the file after the definition and all that, it should work. <kkebreau>Then when it works, remove the blah at the end of the file. <hulten>kkebreau: Thanks for the "%desktop-services" hint! <hulten>Since I have (service slim-service-type) anyway, I just removed %desktop-services. <valignatev>kkebreau: Wow that got things moving, thanks! I wonder if there's a way to do it without putting the package to the end of the file, but that's ok. <valignatev>Now I have to make it work with master. Apparently, git-checkout doesn't work like that: guix/git-download.scm:75:8: In procedure git-fetch: procedure git-reference-recursive?: Wrong type argument: #<<git-checkout> url <valignatev>This was the first thing that I've tried because it seemed it's what manual said. But that was before I resolved package/module issue. So I've tried this again and it worked this time! Well, git remote responds with 504, but that's another story ^_^ <valignatev>It turned out the manual was right all along, sigh. But it touched on this possibility ever so slightly that I didn't really believed that I got it right the first time :) I guess a package definition that builds from master every time is not something guix really encourages because that's not reproducible at all <kkebreau>True, but it's still useful to have for different use cases and new ones we are yet to see. *kkebreau is momentarily afk