IRC channel logs

2018-07-22.log

back to list of logs

<OriansJ>ACTION FACEPALMS HARD
<OriansJ>Anyone else really interested in Instruction Set Architecture Engineering? #bootstrappable has some interesting research opportunities for you
<A87221>Is there a "build-essential" equivalent that will give me a sane gcc and g++ env?
<A87221>(build-essential in debian*)
<OriansJ>A87221: gcc and binutils; should do it (gdb if you like)
<A87221>Hello OriansJ, when I try to test gcc, I see: "ld: cannot find crtl.o: No such file or directory". Also crti.o.
<OriansJ>A87221: you need binutils for that
<A87221>I do have it installed.
<qwertasd>A87221: install gcc-toolchain
<A87221>qwertasd -- testing...
<A87221>qwertasd, *thanks*
<A87221>Is the guix warning "collision encountered" a serious problem or safe to ignore?
<OriansJ>A87221: Generally safe to ignore
<atw>I can use emacs' new-ish --fg-daemon to create a user service around emacs, meaning that an emacs user service (https://lists.gnu.org/archive/html/guix-devel/2018-02/msg00047.html) actually works!
<A87221>Anyone have knowledge related to gtk+ in guixsd?
<A87221>I installed gtk+. Trying to build geany, which expects gtk+2.0.
<pkill9>A87221: try gtk+@2
<pkill9>also when you say you instaled it, do you mean you instlaled it to your user profile?
<A87221>pkill9, shall try that. Yes, installed as user, not as root.
<pkill9>it's better to use `guix environment --ad-hoc <package> <package> ...`
<pkill9>for compiling software
<pkill9>that will put you in an environment with those packages 'installed' in that environment
<A87221>you mean instead of guix package -i foo ?
<pkill9>yeah
<A87221>is the env transient? or like python venv?
<pkill9>it's transient
<A87221>pkill9, *thank you*. "gtk+@2" is the solution! Can you explain it to me?
<pkill9>the '@2' tells guix to look for version 2 of gtk+
<A87221>I had issued "gtk+" -- what would that have installed?
<pkill9>(and the latest minor version, e.g. 2.4 would be chosen over 2.3)
<pkill9>it installed the latest gtk+, which is gtk+3
<A87221>Today I Learned. Now I can prepare a geany package for guixsd. (o:
***tilpner_ is now known as tilpner
<roptat>hi guix!
<g_bor[m]>Hello guix!
<efraim>looks like debootstrap might need to propagate coreutils, certainly easier than finding each occurance and patching it
<roptat>so I'm running guix pull on my arm board and it's taking a lot of time :/
<g_bor[m]>As far as I've seen wip-java8 is not merged to staging yet. What is the current status, can I merge it now?
<qwertasd>where can I find all the drivers I can add to cups-configuration?
<OriansJ>roptat: my RaspberryPI has been erroring out for the last 2 days when I do guix pull. (It taking about 11 hours to get to the error out however makes it hard to troubleshoot)
<A87221>Compiling problem: "ld: cannot find -lbz2". I have installed lbzip2... Do I need something else?
<efraim>libzip2-dev?
<A87221>efraim -- shall test.
<A87221>No such package.
<roptat>OriansJ: the power cable is not very reliable, so it keeps powering off while doing guix pull actually
<roptat>that's why I didn't see any progress on the ssh session ^^'
<A87221>Hi OriansJ, how can I solve this compile dependency in guix? "ld: cannot find -lbz2". I have installed lbzip2.
<OriansJ>A87221: libarchive perhaps
<A87221>Shall test. Working on compiling geany. The lib deps in debian output differ from those in guixsd...
<A87221>OriansJ, it didn't satisfy the dep.
<A87221>How does one install the src files for a package using guix?
<OriansJ>A87221: you might need (bzip2 (assoc-ref inputs "bzip2")) and (("-lbz2")
<OriansJ> (string-append "-L" bzip2 "/lib -lbz2")))
<A87221>OriansJ: run at cmd line?
<OriansJ>A87221: source files are just like any other files built by guix, you simply move them where they need to be; relative to their install directory of course
<OriansJ>A87221: Part of the package definition
<OriansJ>-lbz2 is part of the libarchive package definition in gnu/packages/backup.scm and it might help you solve your dependency problem
<A87221>OriansJ: I see the references in /gnu/store/./backup.scm. So are you suggesting that I take one of these backup.scm files, modify it as you showed, then reconfigure?
<OriansJ>A87221: Since I work primarily with the Bootstrap pieces, this is a detail I am not directly familiar with but you should be able to copy part of the libarchive package definition to solve your -lbz2 problem in your package definition.
<A87221>VG, TY. I am learning guixsd slowly.
<OriansJ>A87221: keep up the good work :D
<A87221>Ha, "good" work.
<A87221>Is there a guix package -i command for source, or is source always installed?
<A87221>debian is different.
<OriansJ>A87221: as in the work you are doing is for the good of us all (Every package definition is another application closer to addressing user needs)
<OriansJ>A87221: Generally if you want the source and desire to build from it, --no-substitutes is usually used
<pkill9>A87221: if you want the source of a package, run `guix build -S <package>` (i haven't kept up with the conversation though, not sure if that's what you want)
<pkill9>that will return a store path to the source of the package
<pkill9>so a nice way to get the source using atool is `atool -x $(guix build -S <package>)`
<pkill9>s/get/extract
<A87221>hi pkill9, ty. Blocker is "ld: cannot find -lbz2". I have installed lbzip2...
<pkill9>atool is good for this because it's a wrapper for all the archive tools like tar, unzip, xz, etc and if the archive is a 'tar bomb' then it will handle that and put it in it's own directoyr instead of spilling all the files everywhere lol
<pkill9>A87221: hmm not sure, i may have had the same issue a while back, but can't remember
<A87221><casts memory spell on pkill9>
<OriansJ>pkill9: look in gnu/packages/backup.scm
<pkill9>i wish i could remember
<OriansJ>pkill9: hint grep -iR -- '-lbz2'
<A87221>so debian differs. but in the geany dep file generated on guix, all the deps are FQPs in /gnu/store *except* for -lbz2, which is literally shown as "-lbz2"
<pkill9>ah :)
<pkill9>A87221: try adding zlib to the build environment
<A87221>pkill9: in what manner?
<pkill9>if that doesn't work, try doing what's done here (ty OriansJ :) http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/backup.scm#n247
<pkill9>like with `guix environment --ad-hoc <package1> <package2> zlib`
<A87221>pkill9: as I grok it, that command will create/append a temp env var for the pupose of the build. Shall test.
<pkill9>oh hmm, i don't think adding zlib will do anything, i misread the source, oh well worht a shot
<pkill9>actually i think you need to add a flag pointing to the bzip2 library
<A87221>Explain?
<A87221>In debian, I have /sbin/ldconfig that can show me whither are libs
<A87221>How to do this in guixsd?
<A87221><waiting patiently, sensei>
<qwertasd>where can I find all the drivers for cups-configuration?
<qwertasd>it would be nice if there was a full-fledged tutorial on GuixSD's configuration
<pkill9>sorry idk
<A87221>pkill9, OriansJ: I have success with make. lbz2 is in .guix-profile/lib/.
<A87221>geany build succeeds. sudo make install encounters problems. shall try destdir.
<pkill9>A87221: you can't install using the traditional methods
<pkill9>guixsd doesn't use FHS paths
<A87221>quick suggestion?
<pkill9>well, just set destination directory to somewhere in your home folder, however if you run guix garage collector it will possibly delete the libs you built genay with
<pkill9>geany*
<pkill9>which is why you'll want to write a package definition so you cna install and update it easily
<A87221>yes, that's to do next.
<A87221>almost there -- I assume that pkg defs are O(1) and easy. (o;
<A87221>update for geany: can compile, cannot run. hard-coded directory "/usr/local/geany/geany.glade"
<A87221>investigating...
<A87221>ha ha, success with geany, at least for running it from a ~/mydir !
<A87221>For geany: ./configure --prefix=mydir --enable-binreloc
<ng0>I'm playing around a bit with Phoenix and Ecto, and with a running Postgresql on GuixSD, how do I become the postgres user? temporarily not make it a system-user? all I want is access to the postgresql shell
<ng0>is theresomething obvious I'm missing?
<ecbrown>ng0: it can be done by first becoming root with 'su' and then 'su - postgres'
<ng0>oh
<ng0>thought su - postgres as normal user was enough
<ng0>well.. no
<ng0>the account is a system account.
<ng0>but at least I progressed so far
<ng0>I know how to fix that
<ng0>thanks :)
<ecbrown>you're welcome
<ng0>for the record(ing irclog): su - ; su -s /bin/sh postgres
<ng0>actually you still need to get the psql binary available via your prefered method.
<ng0>well... actually: guix environment --ad-hoc postgresql and then execute psql -U postgres
<roptat>OriansJ: no error with guix pull on my cubietruck
<roptat>but isn't the raspberry pi armv6?
<OriansJ>roptat: armv7l
<OriansJ>(It is a RaspberryPI 3)
<OriansJ>4 cores, 1GB of RAM
<atw>I would like to package the Agda standard library. The way Agda libraries work is described here https://agda.readthedocs.io/en/latest/tools/package-system.html. Basically, it is expected that packages go in ~/.agda or a directory specified by $AGDA_DIR. What have other language library packagers done about this kind of situation?
<atw>Maybe doing guix package --ad-hoc some-agda-libary another-agda-library should create a special store directory with both libs and set $AGDA_DIR appropriately?
<roptat>other languages support a sort of PATH variable for their libraries
<roptat>for instance, OCaml has OCAMLPATH, java CLASSPATH, python PYTHONPATH
<roptat>they can contain multiple directories
<roptat>doesn't agda has a similar mechanism?
<roptat>can AGDA_DIR contain more than one directory?
<roptat>otherwise, I'd suggest creating a profile hook and point AGDA_DIR to the profile
<atw>hmm, in a way. $AGDA_DIR/libraries is a file where each line is a path to a library. What's a profile hook?
<roptat>that's something that's run before creating a profile, like updating the man page database, icon cache, etc
<roptat>they're in guix/profile.scm
<atw>Are profile hooks invoked by guix environment?
<roptat>not sure
<roptat>I think they are
<snape>hey TSholokhova_!
<sneek>snape, you have 1 message.
<sneek>snape, wingo says: yep it would
<snape>I'm having a quick look at your branch
<snape>you don't need normalize-parameter anymore
<ng0>anyone besides myself interested in responding to this (on their bugtracker, not here)? https://phabricator.whonix.org/T600#16420
<ng0>ah. TL;DR a long lasting discussion with Whonix about (now) getting Guix into Debian
<ng0>the link I posted leads to the recent proposal draft towards Debian
<TSholokhova_>Hello snape, thank you! Yes, I've already removed it locally. I will fix it in the next commit.
<qwertasd>Yasnippet gives me an error and tells me to install more recent version of gcc even thought I have gcc 8.1.0. Yasnippet worked with the same configuration on Debian. Any ideas what could be wrong?
<snape>TSholokhova_: great :-) also, (list-ref something 0) is the same as (car something)
<snape>see https://en.wikipedia.org/wiki/CAR_and_CDR
<atw>ng0: with possible sticking points being store location? What's FHS?
<atw>ah, https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
<atw>roptat: it's interesting that ghc-package-cache-file is the only language package thing in %default-profile-hooks. To me that suggests that other language packages have been able to install etc without profile hooks
<roptat>that's because guix can set environment variables for them
<roptat>like PYTHONPATH points to every pthon library
<roptat>and they're installed in separate directories
<snape>TSholokhova_: also, could you replace array-ref with vector-ref? Because the SQLite library returns vectors
<qwertasd>if I want to change slim's background, should I maunally change the file or do it from the configuration file?
<qwertasd>the background image is in the store so I guess you shouldn't change it manually
<snape>ACTION uses the train's wifi and has internet issues, obviously
<TSholokhova_>snape: thank you, it is more clear now. I used these functions in my minimal and maximal functions, but didn't totally understand it's meaning.
<TSholokhova_>By the way, I have a question about it. How can I find minimal or maximal value from the list? (also it can be list of pairs, for builds pagination). Now I have implemented functions for find min/max value in list of integers.
<TSholokhova_>I think, I can make it more compact if I will use reduce to find min or max value. But I'm not sure about it. And I'm not sure about pair comparison in guile. I don't think that it is the most important thing. But may be you can give me some advices?
<TSholokhova_>Okay, got it. :)
<snape>TSholokhova_: to find the max of a list, you can use the 'max' procedure
<snape>it takes several arguments instead of taking a list
<snape>so you need to 'apply' it to the list
<snape>but reduce is better, actually
<snape>you're right
<snape>because if the list is empty, (reduce max 0 '()) returns 0, which is more consistent
<TSholokhova_>snape: So, is it okay to use reduce with custom pair comparison?
<snape>hm I don't know and I'm arriving to the train station :-) I'll think about it and reply later1
<snape>what does a pair look like?
<TSholokhova_>snape: it is (timestamp, id)
<g_bor[m]>TSholokhova_: Using reduce with custom pair comparison seems like ok.
<TSholokhova_>g_bor[m]: ok, I'm going to try this
<qwertasd>GuixSD doesn't boot up to slim. Can someone tell whats wrong with my config? https://paste.debian.net/hidden/c7161a8b/
<snape>qwertasd: does it boot with a non-modified slim service?
<snape>I meant "boot up to slim"
<qwertasd>snape: yes
<qwertasd>I don't get graphical login with that config
<snape>it seems that theme is a directory, and theme-name is a file relative to that directory
<snape>qwertasd:
<qwertasd>snape: ok I'll try
<qwertasd>snape: here is my new config which doesn't work either https://paste.debian.net/hidden/dfc1e4d3/.
<snape>qwertasd: I don't know... And I know it's a hard thing to debug
<snape>maybe it's a Slim bug
<snape>I don't know much about Slim, and I believe it's unsupported
<snape>*unmaintained
<snape>I'm really in favor of getting rid of Slim
<snape>even the project home page is down. The project is said to be abandonned
<atw>qwertasd: have you tried slim without a custom config?
<qwertasd>atw: yes
<qwertasd>it works without custom config
<qwertasd>I also tried to follow this tutorial http://lists.gnu.org/archive/html/help-guix/2018-07/msg00080.html but Xorg always froze when I tried to start it
<qwertasd>maybe I shouldn't use GuixSD as "daily driver" yet and wait until it isn
<qwertasd>ins't beta anymore
<roptat> https://hydra.gnu.org/build/2930868 looks stalled
<atw>sneek: later tell qwertasd could you try (theme (local-file "/home/ajjlmau/.config")) (theme-name "slim-theme") ? I'm guessing this based on the values of %default-slim-theme and %default-slim-theme-name. The former is a gexp, hence local-file and the latter is a string identifying a directory in the former. Also see https://git.savannah.gnu.org/cgit/guix/guix-artwork.git/tree/slim/0.x
<sneek>Okay.
<atw>qwertasd: you're back! https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/services/xorg.scm#n409 is where I got the values of variables
<qwertasd>atw: ok, I'll try
<sneek>qwertasd, you have 1 message.
<sneek>qwertasd, atw says: could you try (theme (local-file "/home/ajjlmau/.config")) (theme-name "slim-theme") ? I'm guessing this based on the values of %default-slim-theme and %default-slim-theme-name. The former is a gexp, hence local-file and the latter is a string identifying a directory in the former. Also see https://git.savannah.gnu.org/cgit/guix/guix-artwork.git/tree/slim/0.x
<qwertasd>atw: "guix system: error: build failed: regular file expected"
<qwertasd>I think it's because .config is directory
<atw>it may be because I was wrong about theme being a gexp...let me see
<grafoo>hej! i installed guix on debian stretch and tried to run qutebrowser.
<grafoo>seems that package is currently broken.
<atw>qwertasd: (gexp? %default-slim-theme) => #f . Based on that, could you try (theme "/home/ajjlmau/.config") (theme-name "slim-theme")
<grafoo>tried to investitage a little bit; does anyone know why the qtwebkit input is commented out in the python-pyqt package?
<qwertasd>atw: yep, it worked :)
<qwertasd>thanks
<atw>yay! :D
<divansantana_>when launching soffice after recent update, it crashes like so. https://paste.debian.net/1034780/
<divansantana_>anyone know of a workaround?
<grafoo>say i cloned the guix git repo. how would i use it to change two package definitions which rely on each other and - after a successful build - install those packages and not the upstream ones when the version didn't change?
<qwertasd>atw: Next I will reinstall GuixSD and try to get full disk encryption to work. Last time I kinda got it to work but I had to write the password two times, in libreboot and when GuixSD booted.
<atw>qwertasd: funny you should mention -- that's exactly how my FDE works now, and it is kinda annoying. LMK what you figure out!
<divansantana_>seems my icons cant be found. Is this a result of no longer longing in with slim and now using xinit?
<pkill9>grafoo: do any other packages depend on the package definitions you want to modify?
<grafoo>qutebrowser depends on python-pyqt.
<qwertasd>atw: oh, well maybe I should leave /boot unencrypted then. sounds kinda painful to write same password two times
<grafoo>python-pyqt is the one i modified.
<rain1>maybe you could put a keyfile on boot and use that to decrypt /home
<grafoo>pkill9: if i'm building qutebrowser how can is tell guix that it should the modified derivation of python-pyqt?
<pkill9>grafoo: you can create package definitions that inherit existing ones, and then use them by putting the directory they're in in GUIX_PACKAGE_PATH
<pkill9>here's an example of how to replace an input: https://gitlab.com/pkill-9/guix-packages/blob/master/free/curl-fix.scm#L22
<pkill9>i don't actually know guile/scheme much at all, that example was mostly copied from somewhere else
<mbakke>qwertasd: Unencrypted /boot won't be enough since the kernel resides in the store.
<qwertasd>well maybe I will be writing my password twice then
<atw>mbakke: so encrypted root necessitates encrypted /boot? I'm unfamiliar with FDE (despite using it :P)
<mbakke>atw: You could arrange to copy the kernel to /boot, instead of pointing GRUB to /gnu/store.
<mbakke>But I don't think that's supported.
<mbakke>But it sounds dangerous to have the kernel unencrypted :)
<grafoo>pkill9: thx. but i'd like to avoid creating a separat package definition.
<grafoo>pkill9: what i'd like to do is invoke `guix build/install` using the "local" guix repo instead the one in the store.
<pkill9>the separate package definition will override the one in the store though
<qwertasd>what printers does GuixSD support by default? GuixSD manual only tells how to add support for Epson and HP printers.
<mbakke>There is a wishlist bug somewhere about support for keyfiles on external media.
<marusich>qwertasd, there isn't a canonical list of supported printers, but we have CUPS and we have some driver packages, which should be good enough for quite a few printers.
<qwertasd>marusich: where can I find the driver packages?
<marusich>I'd start by doing "guix package --search=cups" or "guix package --search=print"
<marusich>I've been able to get printing working with various printers on GuixSD. However, I can't say the process has been painless.
<marusich>Setting up your printer is an infamously finnicky job no matter what OS you use :(
<qwertasd>yeah :(
<marusich>FWIW, I've had success using the foomatic-filters
<marusich>Maybe try that, and check out https://wiki.linuxfoundation.org/openprinting/database/foomatic
<qwertasd>marusich: Ok, thanks for help
<marusich>see also: https://wiki.linuxfoundation.org/openprinting/database/databaseintro
<marusich>You can search the database online to find potentially useful stuff.
<EuAndreh[m]>Is there an equivalent of `nix show-derivation /nix/store/...x.drv` in Guix?
<marusich>I don't think there is an out of the box solution, but maybe you could install Nix and run "nix show-derivation"
<marusich>Perhaps there is an aterm pretty printer out there other than show-derivation you could use, also? I haven't done this before, but it seems useful.
<marusich>Note that you can install nix with "guix package -i nix", since it is packaged in Guix.
<marusich>apparently "nix show-derivation" won't work because the command wants to create /nix