IRC channel logs

2023-04-10.log

back to list of logs

<zyd>what are all these guest accounts?
<euandreh>probably a web portal somewhere for new users to get help but aren't used to IRC
<euandreh>maybe linked from the website?
<zyd>yeah i see now. web.libera.chat.
<Guest70>yes, I com from the weppage, but I will create a real account, when i fixed more important problems
<euandreh>Guest70: no worries, guests are welcome :)
<Guest70>euandreh thank you :)
<Guest70>very friendly environment
<mekeor[m]>hello. is wordlist packaged for guix? i.e. what is located at /usr/share/dict/* on debian: https://packages.debian.org/sid/wordlist
<jgart[m]>mekeor: looks like not: https://toys.whereis.みんな/?search=wordlist
<jgart[m]>It's possible that it might be in some random channel out in the internets that toys is not tracking
<mekeor[m]>yea, i checked out toys already :)
<jgart[m]>s/tracking/indexing
<jgart[m]>cool!
<jgart[m]>I use toys to see if a package is out of date since it has repology integration
<mekeor[m]>oh yea, that's a quite recent feature, i see. thanks unwox! https://git.sr.ht/~whereiseveryone/toys/log
<jgart[m]>yep
<jgart[m]>There's a ticket that has been open upstream for repology integration into guix refresh for a while: https://issues.guix.gnu.org/53818
<jgart[m]>But it looks stale... (Feb 6, 2022) was the last activity ;()
<jgart[m]>Maybe we should resuscitate that ticket/issue?
<jgart[m]>Would be cool to have that functionality in guix refresh
<mekeor[m]>til: repology is floss
<jgart[m]>You mean FOSS?
<jgart[m]>floss is what I'll be using tonight before going to bed
<mirai>drop the f and you end up with loss
<jgart[m]>That makes logical sense.
<mekeor[m]>jgart: l for libre
<mirai>😂
<jgart[m]>Free and Libre and Open Source Software
<jgart[m]>ah TIL
<jgart[m]>cool,
<vagrantc>to clarify the free as in freedom vs. free as in cost distinction
<vagrantc>or ...ambiguity
<jgart[m]>Would be cool if there was a rating/certification for extensibility also.
<jgart[m]>i.e. This software scores a 10 in good extensible design
<jgart[m]>For example, Emacs or Guix
<jgart[m]>They get a 10
<jgart[m]>Gajim gets a 5 and Dino gets a 4.
<singpolyma>Dino gets a 4? What is lower ?
<jgart[m]>I'm saying that but I like Dino as a program. I just don't think it scores high on this imaginary extensibility metric that I am proposing.
<jgart[m]>Profanity is probably the worst UI I've tried.
<jgart[m]>Now I know why they named it what they did.
<vagrantc>dino has limited configurability by design, at least, that was the response when i asked for a configurable feature
<vagrantc>(or maybe not by design, but intentionally)
<jgart[m]>It's obious to me that dino is not configurable by design. That's ok too
<jgart[m]>This is not a metric that necessarily makes a program good or bad I think or...?
<jgart[m]>Do one thing and do it well
<vagrantc>depends on if that one thing doesn't include what you want :)
<singpolyma>Sure, but it's unconfigurable and has to be recompiled to be edited or extended
<jgart[m]>#true
<singpolyma>So scores a 1
<jgart[m]>qtile is higher than dino
<jgart[m]>as is xonsh, eshell, and eat terminal
<jgart[m]>singpolyma: speaking of eat and xonsh: https://codeberg.org/akib/emacs-eat/issues/2#issuecomment-869691
<vagrantc>admittedly, i mostly have taken the approach of "if a (near) default configuration does not work well, try something else"
<vagrantc>i get tired of twiddling dotfiles
<jgart[m]>Outsourcing dotfile configuration to a community like spacemacs or rde seems to work well for a lot of people.
<eriedaberrie>And what does dwm score on this scale?
<jgart[m]>dwm would probably score high although it achieves the configurability through other means. A different thesis than the Emacs thesis
<jgart[m]>Combining the Emacs thesis with the dwm thesis might make for really good software design
<jgart[m]>I prefer qtile or stumpwm now to dwm for the same reason I prefer guix to xbps.
<jgart[m]>I want my package manager and window manager to be as hackable and extensible as possible. I'm fine with Dino though for chatting.
<jgart[m]>package manager/declarative OS
<glenda>Probably off-topic, can anyone tell me how do I change screen resolution to 1920x1080?
<glenda>Ah done
<jgart[m]>on an external monitor?
<jgart[m]>xrandr?
<glenda>Already done, yes xrandr. no, main
<jgart[m]>cool
<Guest70>do all packages I install in emacs have to have a public package?
<Guest70>or is the installation via melpa enough
<Guest70>because I see that a lot of packages are there for emacs
<jgart[m]>What do you mean by public package?
<jgart[m]>define-public emacs-foo?
<rekahsoft>Hey folks, I noticed the other day that guix glibc packages use gnu ftp releases instead of glibc release branchs (eg. https://sourceware.org/git/?p=glibc.git;a=shortlog;h=refs/heads/release/2.33/master). Why is this the case?
<vagrantc>possibly due to where it stands in the bootstrap?
<vagrantc>possibly just due to old habits? :)
<rekahsoft>vagrantc: 😛; might be nice to fix it imo. I'm not sure what impact it would have on bootstrapping, but I would expect it to be mitigated via grafts. Perhaps keeping the existing glibc patch set up to date is also a burden? I haven't actually looked to see how extensive they are.
<Guest70>jgart[m] yes, exactly
<vagrantc>rekahsoft: well, having to bootstrap git before glibc seems like an interesting challenge :P
<rekahsoft>vagrantc: oof! Fair point.
<vagrantc>i am not *sure* that is why ... but it is one plausible reason
<vagrantc>could be done with phases, too ... get an early enough glibc to bootstrap a minimal git ... enough to get git build system to work ... and then finally switch to a more complete glibc built from git ...
<rekahsoft>vagrantc: For sure. I figure it would be possible to work around it as well (by .. beat me to it 😅)
<vagrantc>everyone is waiting for someone else to beat them at it :)
<glenda>I hate intel, why their wifi firmware are non-free. Gives me so much problems
<karthink[m]>Guix users using texlive: What do you need to do to get latex packages to be recognized on the system? I've installed texlive-base, texlive-amsmath, tlmgr and a few other Guix packages using "guix install".
<karthink[m]>1. When I try to compile a tex file with \usepackage{cancel}, for instance, I get the error that cancel.sty can't be found.
<karthink[m]>2. If I run "tlmgr info cancel" however, it tells me that the package cancel is installed.
<tex_milan>Hello, I am using Guix system, home config, how to create a job that runs after network is connected (wifi) and just once per day (it is a notebook)? I want it for automatic backup with borgbaclup.
<msavoritias>you can look here: https://guix.gnu.org/en/manual/devel/en/guix.html#Mcron-Home-Service
<msavoritias>its done with mcron
<jpoiret>karthink[m]: i don't think we have cancel packaged in guix
<Guest70>how do i install emacs packages in guix
<Guest70>I can either use package install or do it via configuiration. what is the difference?
<glenda>guix install emacs will do only for user
<glenda>via configuration - global, for all users
<Guest70>glenda same for emacs packages?
<glenda>Do you install emacs packages via "guix install blahblah"? Right?
<Guest70>glenda I never installed any emacs package, I just would go into emacs and use m-x package install
<Guest70>glenda or am I doing this wrong?
<glenda>then right
<glenda>It will be installed for user that you use when running emacs (or if global then for all)
<msavoritias>to install packages you just do "guix install <package you want>" yeah
<msavoritias>for me I also needed to add:
<msavoritias> (let ((default-directory "/home/fannys/.guix-profile/share/emacs/site-lisp"))
<msavoritias> (normal-top-level-add-subdirs-to-load-path))
<msavoritias> (guix-emacs-autoload-packages)
<msavoritias>in my init.el to actually pull the packages
<glenda>tar xvpf src.tgz ; cd src ; mk all ; mk install :3
<glenda>best way
<msavoritias>(let ((default-directory "/home/fannys/.guix-profile/share/emacs/site-lisp"))
<msavoritias>oups.
<msavoritias>I got that config from here: https://www.emacswiki.org/emacs/LoadPath
<Guest70>msavoritias do you also use package install inside emacs in guix?
<msavoritias>no. I only install pacakges with guix. makes it easier and declarative
<Guest70>msavoritias nice, love it, thanks for the code.
<msavoritias>just a note that it was pasted wrong for some reason. So check the page I sent instead ^^
<Guest70>msavoritias will do, thank you
<Guest70>what a great distro, really awesome
<jpoiret>rekado: just noticed https://bugreports.qt.io/browse/QTBUG-104232 for the qt bug you encountered, so I'm upgrading qt@6 to 6.5.0 and see if that lets us re-enable the tests
<Guest70>how do you cope with your flathub programs and put them into your config?
<unmatched-paren>hello guix!
<unmatched-paren>anyone know if https://www.juix.org's source is available somewhere?
<lilyp> https://git.savannah.gnu.org/cgit/guix/guix-artwork.git/
<unmatched-paren>lilyp: aha, i'm specifically talking about juix.org, that wasn't a typo :)
<glenda>unmatched-paren: I got ThinkPad T42 today!
<lilyp>Ahh, sorry
<unmatched-paren>glenda: nice!
<glenda>Installed 9front to it!
<glenda>I want to try run GNU/Hurd here later.
<glenda>It boots though
<efraim>Guest70: https://git.sr.ht/~efraim/guix-config/tree/master/item/efraim-home.scm#L940 I just install flatpak programs regularly and have this in my home-bash-service-type
<jpoiret>unmatched-paren: you should ask lechner I think
<jpoiret>or rather, https://codeberg.org/lechner/juix
<jpoiret>oops, that doesn't look like the right repo, rather https://codeberg.org/lechner/juix.org
<Guest70>efraim oh nice thank you
<Guest70>efraim how do you now all programs you want to install after installation
<efraim>Guest70: I do a normal 'flatpak install foo'
<Guest70>efraim mhh, looked at my flatpak and I dont have an export directory, just a "repo" directory. Do you have any idea why this is ?
<efraim>the binaries are symlinked into ~/.local/share/flatpak/export/bin/, do you have any installed?
<efraim>or perhaps they're installed globally?
<Guest70>efraim I just have one appliaction installed atm
<tex_milan>How to create a config file in /etc/NetworkManager/dispatcher.d/ ? Trying to use etc-config-service and got guix system: error: symlink: File exists: "/etc/NetworkManager".
<Guest70>what is a network manager for,  tex_milan?
<glenda>an useless app
<tex_milan>Guest70: https://www.google.cz/search?q=networkmanager
<glenda>Google is non-free software
<tex_milan>I have laptop with wireless card.
<glenda>wpa_supplicant
<tex_milan>any web search is non-free software.
<glenda>no
<Guest70>tex_milan thanks
<tex_milan>Let's focus on the problem folks. Don't pick up the NetworkManager. Let's say there is already /etc/A, and I want to create a config file /etc/A/something/my.conf. How to do it?
<glenda>mkdir /etc/A/something
<glenda>your_editor /etc/A/something/my.conf
<tex_milan>glenda: Hmm, direct approach :) But then I could stay at ARCH. I want it in my system config. I am using guix system.
<glenda>oh that modern systems
<glenda>sorry
<jpoiret>tex_milan: you should extend etc-service-type
<jpoiret>I think it's described in the manual
<jpoiret>ah, didn't see the error above
<tex_milan>jpoiret: I did that. But because there already is the A folder.... yep.
<jpoiret>do you have a snippet of the code that you're using?
<tex_milan> (simple-service 'networkmanager-borgmatic etc-service-type
<tex_milan> (list `("NetworkManager/dispatcher.d/borgmatic.sh"
<tex_milan> ,borgmatic-config)))
<jpoiret>please use paste.debian.net for pastes
<tex_milan>sorry, always not sure how big is too big
<tex_milan>I see that the file itself must not be there as it will be a link to storage, but what's the issue with the folder itself?
<efraim>tex_milan: does that work for you? I tried to add an /etc/ssh/known_hosts file like that and git the same 'File exists: "/etc/ssh"' error
<efraim>s/git/got/
<jpoiret>you will need to use a file-union
<jpoiret>basically, the target of an entry in that list needs to be a directory or a file directly, you can't give it a path (at least I don't think so)
<jpoiret>and additionally, since you can only have one entry per directory/file in /etc, if the file/directory already exists Guix will give an error from what I can read
<tex_milan>Thanks, will try. Also how can I make that file executable? Adding * to simple-file?
<jpoiret>but I think that's not the proper way to do it, rather the file-union in the etc-service-type's definition should somehow say that conflicts aren't permitted
<jpoiret>tex_milan: it will be u+x by default since it's in the store
<jpoiret>even just ugw+x
<tex_milan>thanks
<jpoiret>does anyone know if cmake's unix makefiles generator supports parallel make?
<jpoiret>i'm getting some subdirectory ordering issues when upgrading qt 6, a tool hasn't been built yet when it gets used somewhere else
<tex_milan>With CMake 3.12 this is possible.
<efraim>how many cores?
<Guest70>how do I now which emacs package I take, the one from elpa or the one from guix?
<Guest70>which I installed through the configuration
<Guest70>or does it come down whether I use emacs-guix or normal emacs?
<tex_milan>jpoiret: I used file-union and got the same error.
<mirai>what's the difference between %default-imported-modules and %default-modules in gnu/services/shepherd.scm ?
<jpoiret>efraim: I'm upgrading to 6.5.0 on core-updates
<jpoiret>the number of cores shouldn't matter too much, I have 4 I think
<jpoiret>tex_milan: do you have a snippet of that?
<efraim>jpoiret: sounds good to me. meson was just bumped anyway on core-updates, that has a bajillion dependencies
<jpoiret>it's mostly because the ssl tests failing were fixed starting from 6.4, and I'd much rather have that than disable them
<tex_milan>jpoiret: jpoiret, I just don't know how to use it.
<tex_milan>jpoiret: https://paste.debian.net/1276929/
<jpoiret>ah no, you still have the same issue, the target should be NetworkManager, and then you should build a directory with dispatcher.d inside, with a file inside
<jpoiret>looks annoying, maybe somewhere in the guix source there's an easy way to do that
<jpoiret>seems like we should be using Ninja to build Qt
<jpoiret>yep, don't seem to be running into the same bug with the Ninja CMake generator, and the configure script warns you if you're using Unix
<tex_milan>jpoiret: https://paste.debian.net/1276933/ Tried this and still doesn't work. The same error..
<tex_milan>jpoiret: target where?
<jpoiret>hmmm, maybe I'm wrong then, I haven't tried this myself
<mirai>about this activation-service extension thing, I've spotted a weakly related but significant problem
<mirai>The usual pattern is that they're used essentially to do: (mkdir-p <(dirname …)|…>) followed by (chown … (passwd:uid …) …)
<mirai>this is done as root
<mirai>but suppose someone configures a field like log-dir to /var/log (or log-file to /var/log/foo.log)
<mirai>then the activation snippet would chown /var/log to foo:foo, hardly something you'd want
<jpoiret>mirai: wouldn't that just be a misconfiguration from the user though?
<mirai>jpoiret: yes, but it's a rather subtle one
<mirai>it would be quite unexpected to do a reconfigure and find out one day that /var/lib has been chown'd to some random user
<mirai>it's possible to do a rudimentary check to eliminate possible mistakes (via a sanitizer or before calling chown), if there's a list of directories that should be protected
<Guest70>can anybody help me pleas, how do I install exwm in guix. is there a xsession directory somewher, which I have to populate?
<Guest70>I am really struggling with this
<msavoritias>if you use gdm all you have to do is add exwm in your system config and then 'sudo guix system reconfigure'
<attila_lendvai>i think i have a memory leak in my shepherd service code. it's using fibers. i wonder if there are any tools to track it down. wild guess: is for-each breaking tail calls? i doubt... but that's my current best idea.
<attila_lendvai>but when i stop the service, and i see from the log that the fiber i started exits... PID 1's memory usage still doesn't decrease from 1GB.
<Guest70>msavoritias that worked, thank you. I thought it is enough to have this package installed in emacs. The only problem, I  still have is that I have to say exwm, that I have two monitors. How am I able to configure this in exwm in guix. In ubuntu, there is something called like xsession
<Guest70>msavoritias Could you help me at this by any chance?
<Guest70>msavoritias I just found, that I just have to put it into my config
<msavoritias>No clue. Maybe xrandr? I dont use X or exwm
<Guest70>msavoritias it works, I just had to put it into my emacs config, thank you so much for your support
<Guest70>emacs plus exwm plus guix, now I am happy
<Guest70>Is there any more glory in life ?
<msavoritias>Ah nice. Glad it worked out
<sarg>hey guix, is there a procedure to add another `requires` to a shepherd service? I want `networking` to depend on my service which sets up a networking bridge.
<mirai>sarg: which service
<sarg>dhcp-client-service-type
<mirai>you can specify what a service X will depend on but you can't do “service X is wanted by …”
<mirai>so, you want dhcp-client-service-type to depend on another service?
<sarg>yep
<mirai>hmm… there are some issues involved here
<mirai>the thing is, dhcp-client-service-type provides 'networking
<mirai>and 'networking is more or less understood to be the service that configures... networking, that includes setting up interfaces, etc.
<mirai>so people usually either use static-networking-service-type or NetworkManager/connman
<sarg> https://github.com/sarg/dotfiles/blob/af9e5a6af9ec783e87794d4f7a2bedec8dd739bf/guix/hass.scm#L25-L45
<sarg>bridges are not supported in guix atm
<mirai>dhcp-client service type is a really simple service that you'd use only when you have a simple interface and don't need anything fancy
<mirai>there's also the fact that it will only do dhcpv4 (or dhcpv6) but not both at the same time
<mirai>what I suggest is that you use NetworkManager instead
<mirai>configure the bridges there and dhcp
<mirai>you'll have to write the .nmconnection files and manually provision them since NM will complain that their permissions are too lax
<mirai>(which kinda makes sense since these files can store credential data for vpn, etc.)
<sarg>it's a headless server, I'd rather not use the bloated NM
<mirai>sarg: NM doesn't mean UI
<sarg>I'll just extend my bridge setup script to run dhclient as well
<mirai>you can perfectly use NM without the GUI
<sarg>I aim for simplicity, and NM doesn't fit here at all
<mirai>ok... but before you write NM off, I'd like to say that using NM will give you dhcp for both ipv4+ipv6 and that it actually can signal when the 'networking service is truly “up”
<mirai>this is important if you have any services that depend on a networking interface being up (such as opensmtpd)
<sarg>does it boot properly without internet access?
<mirai>and that a manually cooked solution will probably end up more complex as well
<tex_milan>mirai: how does it signal it? how can I run my script on such signal in guix?
<mirai>sarg: yes
<mirai>tex_milan: the NM guix service has recently gained the nm-wait-online.service equivalent
<mirai>the *online* part is misleading, it actually means _NM has finished booting up and configuring interfaces_
<mirai>it doesn't mean WAN access
<sarg>mirai: hmm, `(shepherd-requirement network-manager-configuration-shepherd-requirement (default '(wpa-supplicant)))`. Why there is no such thing for `dhcp-client-service-type` ?
<mirai>sarg: one one remembered to?😉
<mirai>you can add one, but keep in mind that the symbol 'networking is supposed to be in charge of all networking affairs
<mirai>should you someday swap dhcp-client-service-type for something else, you're likely to face strange interactions
<sarg>wdym by manual provision of .nmconnection files? They go to `/etc/NetworkManager`, right? You don't manage them with guix?
<mirai>they go to /etc/NetworkManager, yes
<mirai>but they should not be handled by guix
<mirai>.nmconnection files can contain credential data
<mirai>which if you handle with guix, ends up in the store which is world readable
<mirai>and NM will complain loudly that the .nmconnection file permissions are too lax and refuse to use them
<tex_milan>and my another problem is that in /etc/NetworkManager/ there can be folder dispatcher.d with user scripts that are run on network events. And apparently you cannot create them with guix...
<mirai>tex_milan: why not?
<mirai>what happens if you place scripts there?
<tex_milan>I want my Guix OS system scm config to place them there. Not manually. I am not on ARCH anymore.
<sarg>I'm fine with putting creds in the store, as the store is on the same machine. And for the permissions afaik one can use `local-file` with `recursive` flag.
<tex_milan>> How to create a config file in /etc/NetworkManager/dispatcher.d/ ? Trying to use etc-config-service and got guix system: error: symlink: File exists: "/etc/NetworkManager".
<mirai>tex_milan: certain things will have to be done manually, when they involve credential data
<mirai>in theory you can do full auto but I don't know anyone who does it
<tex_milan>those scripts have no credential data
<mirai>the script thing is likely unrelated
<mirai>something might be competing for the same directory
<mirai>will have to dig into guix to find out what's happening
<tex_milan>The /etc/NetworkManager folder is created by guix NetworkManager service. There is folder with connections (user configured).
<tex_milan>But why it should care when I want to manage dispatcher.d subfolder...?
<ae_chep_> /win c
<mekeor[m]>hello. let's assume i'm working on a software project using a local checkout of its source code and i can build it with "make". when i run "make" a second time, it will only recompile the changed files and use previously built object-files for the unchanged files. but when i use guix to build the software project, and do so a second time, can i make guix reuse object-files somehow? or could we implement such a feature somehow?