IRC channel logs

2017-09-19.log

back to list of logs

<happy_gnu[m]>mray_web: there is already an easy way to install it
<happy_gnu[m]>Is just not graphical
<bavier`>mray_web: and the installation image is a live cd
<happy_gnu[m]>But is easy
<happy_gnu[m]>There is alive USB image also
<mray_web>so i could download the qemu image and start it just like that? would it contain gnome?
<bavier`>mray_web: no
<mray_web>is it packaged?
<bavier`>mray_web: yes, so you could install it in the vm
<mray_web>hm interesting.
<bavier`>ACTION afk
<mray_web>awesome. how would i install gnome?
<mray_web>sudo apt-get install gnome-shell won't work I GUESS...
<mray_web>well, the reference manual does not seem to give away credentials to log in to the QEMU image.... is there a default I'm not aware of?
<buenouanq>you add desktop environments from the os config
<mray_web>buenouanq: so i don't "install" gnome3?
<mray_web>sorry if i'm not making sense. i'm not the typical GNU hacker i guess.
<mray_web>I'm just very new to guix sd and only know debian based distros
<happy_gnu[m]>mray_web: you might one to look at Guix
<buenouanq>you add (gnome-desktop-service) to the (services section of the os config.scm and run $ guix system reconfigure .../config.scm
<happy_gnu[m]>Pretty easy to install on top of your current distribution
<happy_gnu[m]>Won't interfile with it
<happy_gnu[m]>And if you don't like it
<happy_gnu[m]>It is very easy to remove it
<mray_web>oh so you mean i shoudl isntall guix on Ubuntu?!
<happy_gnu[m]>mray_web: of course you can install GuixSD
<happy_gnu[m]>But maybe if you find it overwhelming you will feel is not worth (even though it is)
<happy_gnu[m]>So starting simple isn't bad either
<happy_gnu[m]>You can install it on Ubuntu yes
<happy_gnu[m]>It won't interfire
<mray_web>I failed at getting packages for ubuntu - ironically :P
<happy_gnu[m]>And we are here to help you install it
<mray_web>is there a repo, or downlaodable *.deb files?
<mray_web>ACTION is too unskilled to build anything
<happy_gnu[m]>mray_web: you need to start by reading the manual
<happy_gnu[m]>Don't worry I've got your back
<happy_gnu[m]>This is different than installing with apt get
<happy_gnu[m]>Or apt
<happy_gnu[m]>You are gonna install an "apt-get" not with it
<happy_gnu[m]>Guix is a package manager
<happy_gnu[m]>So you will install programs with it
<mray_web>that is one of the few thigns i really got :D
<mray_web>and what it looks like it is superior to whatever snappy and flatpack have to offer
<happy_gnu[m]>But from a different place and in a different form
<happy_gnu[m]>So you will be able to use this programs
<happy_gnu[m]>But they won't mess with the ones you have in Ubuntu
<happy_gnu[m]>Yes it is very superior
<happy_gnu[m]>OK first
<happy_gnu[m]>I need you to read the manuol
<happy_gnu[m]>Binary installation
<mray_web>ACTION is really the GUI kind of guye.... GNOME and all...
<happy_gnu[m]>Make sure to read and understand
<happy_gnu[m]>Then I'll help you install it
<happy_gnu[m]>If you have any doubts
<happy_gnu[m]>mray_web: I used to be too
<happy_gnu[m]>I am a lawyer
<happy_gnu[m]>Not a programme r
<happy_gnu[m]>And English is not my first language
<happy_gnu[m]>So I had trouble too
<happy_gnu[m]>But you know the only way to learn
<happy_gnu[m]>Is by doing
<mray_web>awesome. neither is mine. $design guy here o/
<mray_web>so how do i get the guix binaries to run on ubuntu?
<happy_gnu[m]>OK so you have to go to Guix website
<happy_gnu[m]>There are 3 downloads
<happy_gnu[m]>GuixSD
<happy_gnu[m]>Guix binary
<happy_gnu[m]>And guix virtual machine
<happy_gnu[m]>You need to download 2 things
<happy_gnu[m]>The guix binary
<mray_web>ok
<happy_gnu[m]>For your architecture
<happy_gnu[m]>Are you on 64 or 32 bits?
<happy_gnu[m]>And the signature
<mray_web>i'm running 64bit
<happy_gnu[m]>Ok
<mray_web>so that is x86_64 right?
<happy_gnu[m]>Download both signature and tar
<happy_gnu[m]>Yes
<happy_gnu[m]>That is correct
<happy_gnu[m]>After download started
<happy_gnu[m]>Go to installation instructions
<happy_gnu[m]>And start reading
<happy_gnu[m]>Carefully
<happy_gnu[m]>Everything is there for a reason
<happy_gnu[m]>Don't jump to commands
<happy_gnu[m]>Many beginners tend to do that (me included)
<mray_web>ok i did the first two commands already
<happy_gnu[m]>Hahahha
<happy_gnu[m]>The first command is to download
<happy_gnu[m]>The second is for checking .tar
<happy_gnu[m]>With the signature
<happy_gnu[m]>Now you have to make sure your terminal is in the directory
<mray_web>oh right.
<happy_gnu[m]>Where you downloaded the files
<mray_web>it is.
<happy_gnu[m]>Ok
<happy_gnu[m]>And that both files are completely downloaded
<happy_gnu[m]>Now if you read carefully your terminal
<happy_gnu[m]>You will probably notice
<happy_gnu[m]>Second command failed
<happy_gnu[m]>So you have to download the pgp key (that's why the third command)
<happy_gnu[m]>And then run second command again
<happy_gnu[m]>This time it should work
<mray_web>ok worked.
<happy_gnu[m]>mray_web: sure? No errors at all?
<happy_gnu[m]>Most times I've seen errors because the key was just downloaded and has not been set to trust by the user
<mray_web>well GPG complains about signature not being trusted. but that is to be expected I guess
<happy_gnu[m]>mray_web: OK then let's move on
<mray_web>Good signature is good enough for me :P
<happy_gnu[m]>Now you have to be root and run those commands
<happy_gnu[m]>Yeah me too
<happy_gnu[m]>If you copy paste them
<happy_gnu[m]>You will have errors with the second
<mray_web>so i type "sudo" infront of it?
<mray_web>or should I do "su" first?
<happy_gnu[m]>You gotta read carefully to know why
<happy_gnu[m]>Yes with sudo
<happy_gnu[m]>sudo is just fine
<mray_web>hm mv: cannot move 'var/guix' to '/var/guix': Directory not empty
<mray_web>the second command isn't working.
<mray_web>happy_gnu[m]: /tmp$ sudo mv var/guix /var/ && mv gnu /
<mray_web>that seems right to me
<happy_gnu[m]>mray_web: yes this is an error with documentation
<happy_gnu[m]>in the first command you moved your terminal to /tmp
<happy_gnu[m]>but you did not moved the guix tar file
<mray_web>i completed teh file path there
<mray_web>so that the extraction should ahve worked.
<mray_web>but an issue like that should probably be fixed on the homepage :P
<happy_gnu[m]>what did this command said
<happy_gnu[m]># tar --warning=no-timestamp -xf \\
<happy_gnu[m]> guix-binary-0.13.0.system.tar.xz
<happy_gnu[m]>mray_web
<mray_web> http://paste.lisp.org/+7MVJ
<mray_web>after that i pointed to the tar in the correct sub-folder
<happy_gnu[m]>can you tell me with your words what does it say mray_web ?
<mray_web>it seems to extract a file into a folder with some extra flags
<mray_web>it's just not finding the file
<happy_gnu[m]>yes thats correct
<happy_gnu[m]>could you please do a "ls"
<happy_gnu[m]>command
<happy_gnu[m]>and then a "pwd"
<happy_gnu[m]>and send me the input on paste.lisp
<mray_web>not sure if there is sensitive info in the filenames - is this a good idea?
<mray_web>what are we looking for?
<happy_gnu[m]>is the file guix-binary-0.13.0.x86_64-linux.tar.xz there?
<happy_gnu[m]>when you do "ls"
<mray_web>no, it is still where i downlaoded it
<happy_gnu[m]>that command is to exctract the file
<happy_gnu[m]>if it is where you downloaded it you can not extract it
<happy_gnu[m]>you have to be in the directory where it is
<happy_gnu[m]>mray_web: I knew that this was going to happen... however I let this happen because is with errors that we learn
<happy_gnu[m]>so now you have to go back to where you downloaded it
<happy_gnu[m]>extract it
<happy_gnu[m]>and then run the mv command
<mray_web>sudo mv var/guix /var/ && mv gnu / mv: cannot move 'var/guix' to '/var/guix': Directory not empty
<mray_web>still being in the same folder as the downlaoded binary
<mray_web>using root
<mray_web>the "var" and "gnu" folders are there
<mray_web>maybe the mv command needs an extra property to recrsively move everythininside it?
<happy_gnu[m]>did you ran the mv command before?
<happy_gnu[m]>can you do a "ls / " and see if /gnu is there
<mray_web>yes - not sure to what degree it suceeded
<happy_gnu[m]>also a "ls /var"
<happy_gnu[m]>and see if /guix is there
<happy_gnu[m]>ok we gotta delete those directories, this is very sensitive so be very careful
<mray_web>a /gnu/store and a /var/guix folder is inside my Downloads folder currently, yes.
<happy_gnu[m]>mray_web: no I meant
<happy_gnu[m]>"ls / "
<happy_gnu[m]>the / stands for the root directory
<mray_web>oh you mean in the root directory
<happy_gnu[m]>yes
<happy_gnu[m]>when you do "ls /path/to/directory/" you can see what is in there without having to do a "cd /path/to/directory"
<happy_gnu[m]>so please do this "ls /gnu"
<happy_gnu[m]>"ls /var/guix"
<mray_web>ACTION uses nautilus to look inside the fodlers :P
<happy_gnu[m]>lets see if there is something there
<mray_web>db gcroots profiles temproots
<mray_web>is in there
<happy_gnu[m]>ACTION knows mray_web will stop using nautilus eventually and will appreciate this class even more 
<happy_gnu[m]>oh mray_web well apparently you did move them
<happy_gnu[m]>lets do this
<mray_web>ACTION thinks happy_gnu[m] does not know mray well enough ;)
<happy_gnu[m]>you are still in your downloads right?
<mray_web>yes
<mray_web>the root folder dos not contain gnu though. there is no "/gnu"
<happy_gnu[m]>ok the difference is going to be a period .
<happy_gnu[m]>run a "ls ./var/guix"
<happy_gnu[m]>and a "ls /var/guix"
<happy_gnu[m]>check if both are the same
<happy_gnu[m]>then
<happy_gnu[m]>run "ls ./gnu"
<mray_web>they are the same
<happy_gnu[m]>and "ls /gnu"
<mray_web>$ ls /gnu ls: cannot access '/gnu': No such file or directory
<happy_gnu[m]>ok then just do this
<happy_gnu[m]>you are gonna run the command
<happy_gnu[m]>mv gnu /
<mray_web>with sudo i guess
<happy_gnu[m]>yes with sudo
<mray_web>$ ls ./gnu ls: cannot access './gnu': No such file or directory
<mray_web>checking for the both gnu versions the hidden one seems to be gone now :P
<happy_gnu[m]>thats weird
<happy_gnu[m]>when you do a "ls" alone
<happy_gnu[m]>can you see gnu
<happy_gnu[m]>ohh
<happy_gnu[m]>please do a
<happy_gnu[m]>tar --warning=no-timestamp -xf <br />
<happy_gnu[m]>guix-binary-0.13.0.system.tar.xz
<happy_gnu[m]>again
<happy_gnu[m]>make sure to change system.tar.xz
<happy_gnu[m]>and just move gnu to /
<mray_web>~/Downloads$ sudo mv gnu / mv: cannot move 'gnu' to '/gnu': Directory not empty
<mray_web>o_0
<mray_web>my Downlaods folder now does contain a /gnu subfolder
<mray_web>with /store inside adn lots of stuff
<happy_gnu[m]>can you run "ls /gnu" again for me please?
<mray_web>could it be sudo mv /gnu / ?
<happy_gnu[m]>ah yes please use sudo
<mray_web>i meant the leading /
<mray_web>i did use sudo
<mray_web>sudo mv gnu /
<mray_web>sudo mv /gnu /
<mray_web>is the last one maybe the right one?
<mray_web>ACTION shrugs
<happy_gnu[m]>no
<happy_gnu[m]>is like this
<happy_gnu[m]>sudo mv gnu /
<happy_gnu[m]>you don't need to put / before gnu /gnu because / stands for root directory
<mray_web>sudo mv gnu/ / maybe?
<mray_web>autocompletition suggests that
<happy_gnu[m]>ok do that
<mray_web>~/Downloads$ sudo mv gnu/ / mv: cannot move 'gnu/' to '/gnu': Directory not empty
<mray_web>somehow mv seems to expect to handle empty folders?!
<happy_gnu[m]>no
<happy_gnu[m]>this is happening because you already put it on root
<happy_gnu[m]>check please with
<happy_gnu[m]>"ls /gnu"
<happy_gnu[m]>now the / stands for root directory
<mray_web>you are right it is now there!
<happy_gnu[m]>perfect
<happy_gnu[m]>lets check it is similar to "ls ./gnu"
<mray_web>both are there now
<happy_gnu[m]>the period . says "this directory not root"
<happy_gnu[m]>that is how ls knows that you are looking at the /gnu of downloads
<happy_gnu[m]>not the one on root /
<happy_gnu[m]>the period makes the difference
<happy_gnu[m]>great let's move to the next part
<mray_web>d
<happy_gnu[m]>mostly we are using sudo on everything now
<mray_web>so i do everythign in the root folder, too now?
<mray_web>or still in /tmp?
<happy_gnu[m]>it doesn't matter
<happy_gnu[m]>but you might prefer to be on /tmp
<happy_gnu[m]>is safer
<happy_gnu[m]>now
<happy_gnu[m]>what version of ubuntu are you using
<mray_web>17.04
<happy_gnu[m]>(I am asking because of point 5)
<happy_gnu[m]>oh ok so systemd right
<happy_gnu[m]>in 5 there are 3 boxes
<happy_gnu[m]>but only the first box
<happy_gnu[m]>is for systemd
<happy_gnu[m]>do not run the other 2
<happy_gnu[m]>but before you do that
<happy_gnu[m]>do not skip #4
<happy_gnu[m]>you have to click the link on 4
<happy_gnu[m]>and run those 2 commands as a root
<mray_web>oh ok.
<mray_web>ok.
<mray_web>happy_gnu[m]: the second command seems to not work
<mray_web>the one beginning with "for i ...."
<mray_web>am i supposed to paste the whole box?
<happy_gnu[m]>What's the output mray_web
<happy_gnu[m]>Yes you are
<mray_web>oh.
<happy_gnu[m]>The #
<happy_gnu[m]>Stands for your promth
<happy_gnu[m]>Prompt
<happy_gnu[m]>Lookt at how your command line starts
<mray_web>so the first box contains two commands, right?
<happy_gnu[m]>user@machine $
<happy_gnu[m]>The $ stands for user
<happy_gnu[m]>But if you do su
<happy_gnu[m]>It should be root@machine #
<mray_web>so i need to replace teh # with sudo in my case?
<happy_gnu[m]>Yes
<happy_gnu[m]>Move the page up and see how first commands start with $
<happy_gnu[m]>But the ones you used sudo start with #
<happy_gnu[m]>(In the web page)
<mray_web>oh i see
<mray_web>but actually i did use sudo
<mray_web>i think the line breaks don't work
<mray_web>it should be "sudo for....." right?
<mray_web>and the whole bunch is one alrge command
<happy_gnu[m]>Yes sudo
<happy_gnu[m]>And paste everything
<happy_gnu[m]>But why do you think is not working
<mray_web> https://0bin.net/paste/EqLpIAbxfPyuaBjP#qIR+hw88uvxcTeI1d1R46Xujc9KT3dFXQpO1vVNzhGo
<happy_gnu[m]>Oh I see
<happy_gnu[m]>Please change to sudo
<mray_web>it is a different output if i paste with middle click
<happy_gnu[m]>What's the Ubuntu commd
<happy_gnu[m]>su
<happy_gnu[m]>sudo -s
<happy_gnu[m]>I don't remember
<mray_web>hm ok seems to work now i guess
<mray_web>ACTION shrugs
<mray_web>so what about the second box on that extra page?
<happy_gnu[m]>Run it too
<happy_gnu[m]>After you run it
<happy_gnu[m]>You will need to open a different terminal
<happy_gnu[m]>Because that one will be running the daemon
<happy_gnu[m]>No wait
<mray_web>i see
<mray_web>ok
<happy_gnu[m]>My mistake
<mray_web>ACTION waits
<happy_gnu[m]>It should be usable still
<mray_web>ok i run it then.
<happy_gnu[m]>Nov go back
<happy_gnu[m]>And run first box
<happy_gnu[m]>On number 5
<happy_gnu[m]>But
<happy_gnu[m]>There is a problem
<happy_gnu[m]>It says systemctl start first
<happy_gnu[m]>And then systemctl enable
<happy_gnu[m]>It should be enable first
<mray_web>ok running the extra command did in fact not work.
<mray_web>so i ran the first box in 5.
<happy_gnu[m]>systemctl enable guix-daemon && systemctl start guix-daemon
<happy_gnu[m]>Like that ∆
<mray_web>ok
<mray_web>no error at least. is guix now running?
<happy_gnu[m]>Then go to number 6
<happy_gnu[m]>Run 6 and 7 commands
<happy_gnu[m]>8 is to install package hello
<happy_gnu[m]>Is a simple package to check it is working
<mray_web># guix archive --authorize < ~root/.guix-profile/share/guix/hydra.gnu.org.pub guile: warning: failed to install locale warning: failed to install locale: Invalid argument
<happy_gnu[m]>Don't worry
<happy_gnu[m]>Go on
<happy_gnu[m]>From 8 only run the first
<mray_web>ok.....
<happy_gnu[m]>It should work
<happy_gnu[m]>Tell me the output when it finish
<happy_gnu[m]>Just the last 3 lines
<mray_web>the bot has taken over and is erasing all my files with 4mb/s now .... or something liek that :P
<mray_web>The following environment variable definitions may be needed: export PATH="/home/mray/.guix-profile/bin:/home/mray/.guix-profile/sbin${PATH:+:}$PATH" export GUIX_LOCPATH="/home/mray/.guix-profile/lib/locale${GUIX_LOCPATH:+:}$GUIX_LOCPATH"
<happy_gnu[m]>Run this
<happy_gnu[m]>export PATH="/home/mray/.guix-profile/bin:/home/mray/.guix-profile/sbin${PATH:+:}$PATH" export GUIX_LOCPATH="/home/mray/.guix-profile/lib/locale${GUIX_LOCPATH:+:}$GUIX_LOCPATH"
<happy_gnu[m]>And then type hello
<mray_web>Hello, world!
<happy_gnu[m]>Save this actually
<happy_gnu[m]>Save this actually
<happy_gnu[m]>The following environment variable definitions may be needed: export PATH="/home/mray/.guix-profile/bin:/home/mray/.guix-profile/sbin${PATH:+:}$PATH" export GUIX_LOCPATH="/home/mray/.guix-profile/lib/locale${GUIX_LOCPATH:+:}$GUIX_LOCPATH"
<happy_gnu[m]>It is important put in in a file
<mray_web>ok what is it good for?
<happy_gnu[m]>Now type exit
<happy_gnu[m]>To log out of sudo
<happy_gnu[m]>You should be your user now
<mray_web>hm there is still a #
<happy_gnu[m]>Does it say root@computer #
<mray_web>yep
<happy_gnu[m]>exit
<happy_gnu[m]>Doesn't work?
<mray_web>ok that worked
<happy_gnu[m]>Just close the window and open a new terminal then
<happy_gnu[m]>Ok
<happy_gnu[m]>Now as your user
<happy_gnu[m]>No sudo
<happy_gnu[m]>Run this
<happy_gnu[m]>guix package -i hello
<happy_gnu[m]>Again
<happy_gnu[m]>You should be able to install as user
<happy_gnu[m]>This will also show the long command I told you to save
<mray_web> https://0bin.net/paste/slTxQw+JZNWsJsC9#tdvpDnQU-MCYxFc6Wb5HJQjPNnnXSWawIF4x9vf8Ph6
<happy_gnu[m]>Everything is nomal
<happy_gnu[m]>Think of it as an apt update
<happy_gnu[m]>export PATH="/var/guix/profiles/per-user/mray/guix-profile/bin${PATH:+:}$PATH"
<happy_gnu[m]>Save that too
<happy_gnu[m]>And now do you know what is .bashrc
<happy_gnu[m]>Actually run
<happy_gnu[m]>export PATH="/var/guix/profiles/per-user/mray/guix-profile/bin${PATH:+:}$PATH"
<happy_gnu[m]>And type hello
<happy_gnu[m]>It should say hello, world! Too
<mray[m]>Hello, world!
<happy_gnu[m]>Yes!
<happy_gnu[m]>OK back to it
<happy_gnu[m]>If you reboot your PC now
<happy_gnu[m]>And you type hello
<happy_gnu[m]>It won't wonk
<happy_gnu[m]>Work*
<mray[m]>ok to summarize: I kernel-assembled my computer to make it say hello to me in the console? guix is great :D
<happy_gnu[m]>You need to put this
<happy_gnu[m]>export PATH="/var/guix/profiles/per-user/mray/guix-profile/bin${PATH:+:}$PATH" mray@Y50-70:~$
<happy_gnu[m]>Sorry
<happy_gnu[m]>This
<happy_gnu[m]>export PATH="/var/guix/profiles/per-user/mray/guix-profile/bin${PATH:+:}$PATH"
<happy_gnu[m]>On your bashrc
<mray[m]>but why would i want that?
<happy_gnu[m]>Because otherwise you need to execute
<happy_gnu[m]>export PATH="/var/guix/profiles/per-user/mray/guix-profile/bin${PATH:+:}$PATH"
<happy_gnu[m]>Each time you want to run a Guix package
<happy_gnu[m]>You can do that too if you want
<happy_gnu[m]>Right now you can install
<happy_gnu[m]> https://www.gnu.org/software/guix/packages/
<happy_gnu[m]>anyone of those
<mray[m]>ok i think this just my general linux ignorance at work - i have jsut no clue about all that stuff.
<mray[m]>ok supposed i want to install inkscape (which i have installed already)
<happy_gnu[m]>things like audacity, blender,
<happy_gnu[m]>mmm lets install inkscape
<happy_gnu[m]>you are a designer
<happy_gnu[m]>you probably already have it
<happy_gnu[m]>type
<happy_gnu[m]>guix package -i inkscape
<mray[m]>it complains about the locale but continues...
<happy_gnu[m]>and watch this video https://audio-video.gnu.org/video/misc/2016-07__GNU_Guix_Demo_2.webm
<happy_gnu[m]>it will teach you a lot in one minute
<happy_gnu[m]>mray: don't worry about that complain
<happy_gnu[m]>do you know where is .bashrc
<mray[m]>happy_gnu: despite all the horrible problems it feels really nice to finally actually text guix(sd) somewhat!
<happy_gnu[m]>just open it with a text editor and put the command: export PATH="/var/guix/profiles/per-user/mray/guix-profile/bin${PATH:+:}$PATH"
<happy_gnu[m]>there
<mray[m]>thanks a lot for guiding me this far - i would NEVER have done that by myself.
<happy_gnu[m]>mray: yeah I told you i've got your back
<happy_gnu[m]>and I bet you learned a few things
<happy_gnu[m]>thats the way of learning, by doing and screwing things
<happy_gnu[m]>mray btw I am also on IRC on #lgn Libre Game Night, we only play libre games is fun actually you are invited to join
<mray[m]>lol thanks - getting late here
<happy_gnu[m]>well we don't play everynight, just fridays
<happy_gnu[m]>you can check the website www.libregamenight.xyz
<mray[m]>happy i made it in "time" but wondering how i would start the different versions of inkscape
<happy_gnu[m]>are you installing inkscape?
<happy_gnu[m]>if you put that in your .bashrc
<happy_gnu[m]>there should be 2 inkscapes on GNOME
<mray[m]>inkscape seems to be installed via guix now
<sadiq[m]>Why already installed packages downloaded again. When I installed adwaita-icon-theme it downloaded texinfo, guile, less and many other already installed software pieces
<happy_gnu[m]>and you can run one with inkscape (guix)
<happy_gnu[m]>or the other with /bin/inkscape (i think)
<happy_gnu[m]>anyway sadiq[m] has a point
<happy_gnu[m]>you don't need both
<happy_gnu[m]>I just wanted to show you, you can run GUI's too
<happy_gnu[m]>and didn't know what else can you be interested in
<mray[m]>sure it seems stupid, but in terms of compatibility it is sometimes usefull to be able to do that.
<mray[m]>it is a big advantage voer apt after all!
<happy_gnu[m]>i am not sure if ubuntu saves inkscape there
<happy_gnu[m]>please run that in your terminal
<happy_gnu[m]>"/bin/inkscape"
<mray[m]>nope not there
<happy_gnu[m]>it should open inkscape
<happy_gnu[m]>mmm
<happy_gnu[m]>then /usr/bin/inkscape
<adfeno>Perhaps `command inkscape'?
<mray[m]>/usr/bin/inkscape ?
<happy_gnu[m]>yes
<happy_gnu[m]>adfeno: but that will opend Guix inkscape
<happy_gnu[m]>he did export PATH="/var/guix/profiles/per-user/mray/guix-profile/bin${PATH:+:}$PATH"
<adfeno>Oh, I see.
<mray[m]>so that is my ubuntu inkscape right?
<happy_gnu[m]>I am showing him how to open both guix and ubuntu's
<happy_gnu[m]>you have both
<happy_gnu[m]>and from GNOME icons you should be able to see either the one you already had or both
<mray[m]>/usr/bin/inkscape <- ubuntu, right?
<happy_gnu[m]>yes
<happy_gnu[m]>but I insist
<happy_gnu[m]>if you don't put export PATH="/var/guix/profiles/per-user/mray/guix-profile/bin${PATH:+:}$PATH"
<happy_gnu[m]>on bashrc
<happy_gnu[m]>you will have to run that command everytime you want to run a guix program
<adfeno>I wonder, is it ".bashrc" or ".profile"?
<happy_gnu[m]>lets say you reboot and you just do "inkscape" on terminal
<mray[m]>ok so i should open ~.bashrc? and add it there?
<adfeno>I put these variables in my .profile :)
<happy_gnu[m]>ohhh yes adfeno I thik it is .profile
<adfeno>mray[m]: It's a text file, called ".profile", which is in your user's home.
<happy_gnu[m]>actually mray
<happy_gnu[m]>is
<happy_gnu[m]>~/.bash_profile
<adfeno>happy_gnu[m]: bash_profile?
<happy_gnu[m]>yeah lets better mray
<happy_gnu[m]>plase run this now
<happy_gnu[m]>"ls -a"
<happy_gnu[m]>look for this 3 files
<happy_gnu[m]>.profile
<happy_gnu[m]>.bash_profile
<happy_gnu[m]>and .bashrc
<mray[m]>there is a .bashrc and a .profile
<happy_gnu[m]>mmm
<happy_gnu[m]>could you open .profile
<happy_gnu[m]>put it in .profile as adfeno said
<happy_gnu[m]>good thing he was here I almost screwed up :/
<mray[m]>export PATH="/var/guix/profiles/per-user/mray/guix-profile/bin${PATH:+:}$PATH"
<mray[m]>just at the end?
<happy_gnu[m]>mmm
<happy_gnu[m]>are there any more "export"
<mray[m]>you are certainly not asking me... :P
<happy_gnu[m]>in the file
<happy_gnu[m]>can you read any other line
<happy_gnu[m]>that starts with "export"
<mray[m]>not in .profile
<adfeno>Personally, I like to put my "export" lines in the begining.
<happy_gnu[m]>ok
<happy_gnu[m]>yeah put it at the start
<mray[m]>just in .bashrc
<happy_gnu[m]>before or after this line
<happy_gnu[m]>leave it on .profile is better there
<happy_gnu[m]>you can close .bashrc don't worry
<mray[m]>ok
<happy_gnu[m]>you can write commands with #
<happy_gnu[m]>so in the line before the command you pasted
<mray[m]>did so already
<happy_gnu[m]>ah ok
<mray[m]>so now my .profile is pimped with GUIX power
<happy_gnu[m]>sorry
<happy_gnu[m]>yes
<happy_gnu[m]>you can reboot
<happy_gnu[m]>and run hello
<mray[m]>now what? :)
<happy_gnu[m]>and it should say hello world
<mray[m]>ok i could
<happy_gnu[m]>to make sure it is working
<adfeno>Or, simply logout and back in.
<happy_gnu[m]>after that you can install pretty much anything here
<mray[m]>ah ok because i installed hello via guix
<happy_gnu[m]> https://www.gnu.org/software/guix/packages/
<mray[m]>what if a hello program was in ubuntu repos for example?
<happy_gnu[m]>if you saw the video I send you there teaches how to search for packages too
<adfeno>(no need to reboot, just log out and back in) :)
<mray[m]>ACTION would like to see inkscape running side by side
<happy_gnu[m]>you can run "guix pull"
<happy_gnu[m]>it should work too
<happy_gnu[m]>if it works then guix is working
<mange>Instead of adding each specific variable that guix-package tells you, you can source ~/.guix-profile/etc/profile to set all the variables that your current profile needs.
<happy_gnu[m]>mray: tell us when you log in again
<mray[m]>"guix pull" is "sudo apt-get update"?
<happy_gnu[m]>yes, similar
<happy_gnu[m]>apt update && apt upgrade
<mray[m]>ah nice.
<happy_gnu[m]>if you open both inkscape and /usr/bin/inkscape then go to
<mray[m]>pull is doing its thing rigth now - what happens if i just rebbot during this?
<happy_gnu[m]>help about
<happy_gnu[m]>as it is a functional package manager
<happy_gnu[m]>the package won't be installed but nothing else
<happy_gnu[m]>it won't breake
<happy_gnu[m]>open both inkscapes
<happy_gnu[m]>and go to help-> about
<happy_gnu[m]>should be different
<mange>"guix pull" is not "apt update && apt upgrade". It doesn't change anything about your current profile, just your current package recipes. That means that "guix pull" is roughly equivalent to just "apt update".
<adfeno>To contribute to mange: Besides, it's *per user*.
<mray[m]>hm it could be that guix has the exact same version as ubuntu
<mray[m]>"/usr/bin/inkscape" <-> "inkscape" turn up the same version
<adfeno>So, root has to run "guix pull"; and also "guix package --upgrade"; this also applies to every user that *has* Guix installed/enabled.
<mange>mray[m]: Can you run "which inkscape" and tell us the output?
<adfeno>mray[m]: Do: which inkscape
<happy_gnu[m]>mray: what does the line at the top says
<mray[m]>ACTION didn't rebbot yet, though
<mange>That's fine.
<happy_gnu[m]>this line: Inkscape 0.92.2 5c3e80d, 2017-08-06
<mray[m]>$ which inkscape
<mray[m]>/usr/bin/inkscape
<happy_gnu[m]>at the top of about
<happy_gnu[m]>ah damn :/
<mange>Try running ~/.guix-profile/bin/inkscape.
<mange>Sorry, that '.' at the end was a full-stop. :P
<mray[m]>the build info is the same in the about screen
<mange>~/.guix-profile/bin/inkscape
<mray[m]>$ ~/.guix-profile/bin/inkscape
<mray[m]>bash: /home/mray/.guix-profile/bin/inkscape: No such file or directory
<mray[m]>somethign is still compilin in the other shell
<mange>Did "guix package -i inkscape" complete successfully earlier?
<happy_gnu[m]>guix package --list-installed
<mray[m]>don't know...
<mray[m]>but there is the complaint about the locale again
<mray[m]>so whose repositories am i now using?
<happy_gnu[m]>mray: don't worry about that compliance
<adfeno>THe locale thing is another issue. I had that issue too, we'll fix that eventually.
<mray[m]>or are they called stores?
<happy_gnu[m]>find . -name "inkscape" > search.txt
<mray[m]>find . -name "inkscape" > search.txt
<adfeno>mray[m]: Can you do: cd "/gnu/store/mkr3w3izmvzv3myq3g4l2p5qhr2i7byw-inkscape-0.92.1"
<mray[m]>oops sorry
<happy_gnu[m]>yeah do that adfeno said
<happy_gnu[m]>I have to go now mray
<mray[m]>happy_gnu: thanks a lot!
<happy_gnu[m]>mray: you are welcome
<happy_gnu[m]>I hope you enjoy guix
<mray[m]>adfeno: i can, yes.
<mray[m]>so you all run GuixSD ?
<mray[m]>i'll see how often i can make use of its repos :)
<mray[m]>(or just toy around)
<adfeno>Well, I'm like you: running Guix the package manager in some other system distribution. ;)
<mange>I don't run GuixSD, I just run Guix on top of Debian.
<adfeno>I didn't venture myself into trying GuixSD yet.
<mray[m]>i really don't get the fuss about Snappy and Flatpak - looking at guix...
<mray[m]>they probably are easier to get running ;)
<happy_gnu[m]>adfeno: I send you a PM
<happy_gnu[m]>mray: they are!
<marusich>mray[m], regarding your question of "what repos" you are using - the answer is that you are using the package definitions, written in Guile scheme, which are authored by the Guix devs. If you have defined your own packages and configured GUIX_PACKAGE_PATH to point to those definitions, you are also using those package definitions.
<marusich>If you're using the default Guix configuration, you are probably also using substitutes that are published by the Hydra build farm, which is a build farm run by Guix devs for the purpose of continuously building all of the packages defined in Guix.
<adfeno>mray[m]: The thing about Flatpak and Snappy being easier to get running is somewhat relative... For someone using a system distribution ("distro") with Snappy as default, it's easier to just use Snappy.
<marusich>So, when you install something, Guix tries to download a pre-built copy from Hydra first, and if that fails, it tries to build the software locally from source.
<adfeno>(continuing my last message) .... and more dificult to get Flatpak there.
<adfeno>(cont.) .... although it is possible.
<mray[m]>ok what about the compiling thing right after guix pull? - is this like compiling all packages from source?!?!
<mray[m]>adfeno: true, hence guixSD.
<mray[m]>marusich: what about reproducible builds - is that a feature that comes with guix by default?
<mray[m]>lol - i want flatpak and snappy packages in guix!
<mray[m]>ACTION read about it in the news section
<mray[m]>flatpak and snappy don't seem to have that.
<marusich>mray[m], when you run guix pull, the guix source (Guile scheme modules in files named "foo.scm" and the like) gets compiled (to compiled Guile modules with names like "foo.go"). In other words, all of the Guile scheme source code that Guix uses gets compiled, including all of the package definitions. It isn't compiling all the packages that are defined; it's compiling the Guile modules that contain the package definitions.
<marusich>As for reproducible builds, that is not a feature of that comes with Guix by default. This is true also for Nix, or any package manager that follows the same functional software deployment paradigm.
<mray[m]>marusich: thanks that makes *some* sense to me.
<marusich>Reproducibility is a property of the software that gets built.
<marusich>However, Guix (and Nix) make it much easier to achieve and verify reproducible builds. That is one of the great benefits of the functional software deployment model.
<mray[m]>my understanding is that snappy and flatpak snap very flat on that feature.
<mray[m]>ok. so i wasn't so wrong.
<mray[m]>ACTION is tired though.
<marusich>For example, in Guix, builds are performed in an isolated environment to prevent any possibility of unexpected interaction with the outside world or other installed components. The upshot is that IF software builds reproducibly, THEN everyone who runs "guix package -i foo" will get the exact same software, bit for bit.
<adfeno>mray[m]: Don't worry. I also felt like that in the begining. :)
<marusich>The same thing is not true for any traditional (destructive) package manager, like rpm or dpkg
<mray[m]>it is all somewhat similar to haskell stuff i suppose
<marusich>The problem with those is that they just spray files into the file system in an somewhat undisciplined manner
<mray[m]>LOL
<marusich>That kind of software deployment results in unexpected consequences and makes it very difficult to roll back changes if something breaks.
<mray[m]>to be fair - you probably don't want to know what microsoft does cough - or "did"...
<mray[m]>crap i have to go get some sleep now
<marusich>If you want to read more about this topic, I highly suggest reading the first 20 pages of Eelco Dolstra's thesis. He succinctly describes the problems that Nix and Guix, and any package manager implementing the functional software deployment model, solve.
<mray[m]>good night and thanks again happy_gnu !!
<adfeno>mray[m]: Also about the "compiling" messages in "guix pull": as marusich said, its not building/compiling "everything", it's just preparing/organizing the recipes it knows about.
<marusich>mray[m], it's here if you are curious: https://nixos.org/~eelco/pubs/phd-thesis.pdf
<mray[m]>marusich: thanks I am but a humble non-coder though
<marusich>Even if you don't code, it's very interesting and helpful to understand the motivation.
<marusich>The first 20 pages don't contain code.
<marusich>Consider it ;)
<mray[m]>i'm more interested in the motivation of not sticking ti nixOS
<happy_gnu[m]>marusich: I will read it!
<happy_gnu[m]>I was trying to learn to package stuff today
<marusich>mray[m], Oh, well, to understand the difference between NixOS and Guix, there is a paper for that, too!
<mray[m]>lol
<happy_gnu[m]>marusich: wow you know a lot send it too
<happy_gnu[m]>I will read them later
<happy_gnu[m]>Good bye
<mray[m]>ACTION gets some functional sleep
<mray[m]>o/
<adfeno>:)
<adfeno>I must go too :)
<adfeno>But I think I can work a bit more on the inkscape issue, if mray[m] wants to.
<adfeno>There is no need to hurry though, at least for me.
<marusich>happy_gnu[m], mray[m], Check out this paper, "Functional Package Management with Guix": https://arxiv.org/abs/1305.4584
<marusich>It helps clarify the motivation for why in Guix we use Guile scheme instead of Nix's expression language.
<marusich>Outside of this, I don't have a lot of good references for information about how GuixSD differs from NixOS... Their methods for implementing operating system features like services and bootloaders are significantly different, and I have not found any articles that explain ALL of the differences.
<marusich>There are, however, some blog posts and papers that describe either the NixOS approach, or the GuixSD approach, to some of these things. In particular, I can think of the following...
<buenouanq>`Lisp.' is all the argument that should be necessary
<marusich>Any of the "NixOS" papers mentioned here do a reasonable overview: https://nixos.org/docs/papers.html
<marusich>I found this one to be interesting, but I'm sure it's quite out of date by now: https://nixos.org/docs/SCR-2005-091.pdf
<marusich>And the Guix news feed on Savannah has a few interesting articles, too: https://savannah.gnu.org/news/?group=guix
<marusich>In particular, this is helpful for understanding services in GuixSD: https://savannah.gnu.org/forum/forum.php?forum_id=8412
<adfeno>I must go now, my eyes are failing ;)
<marusich>The area outside of Guix/Nix package management can get very messy, since in some cases it seems you have to deviate from the purely functional paradigm. For example, the bootloader-related aspects of GuixSD are unfortunately rather stateful (e.g., the generation of the grub.cfg file, the installation of the grub bootloader image on the hard drive itself).
<marusich>Goodnight!
<marusich>However, I like the way services have been handled in GuixSD; a lot of the configuration really is declarative and stateless, which is great because it makes it so much easier to reproduce the entire system.
<marusich>If I need to copy the output of one package to another, should I just copy the files with copy-recursive (from (guix build utils)), or should I create a "copy" by just symlinking the things I need?
<marusich>Specifically, I have a gnucash-docs package which builds one directory: /gnu/store/...gnucash-docs-2.6.17/share/...
<marusich>Specifically: /gnu/store/...gnucash-docs-2.6.17/share/gnome/...
<marusich>I want to merge the "share" directory built by gnucash-docs into the output of the "gnucash" package.
<marusich>Since there is no share/gnome directory in the gnucash package, I imagine I could accomplish this by creating a single symlink that points from /gnu/store/...gnucash-2.6.17/share/gnome to /gnu/store/...gnucash-docs-2.6.17/share/gnome
<marusich>However, it is not clear to me in general whether it is OK to use symlinks like this.
<marusich>Are symlinks in the store that point to other store paths in the store (in entirely different components) OK?
<sadiq[m]>No... Compiler segmentation fault on compiling webkitgtk :'(
<marusich>To answer my own question, I'm pretty sure it's fine. Symlinks are explicitly part of the FSO definition, so not only is it expected that symlinks can be in the store which point to other paths, but the presence of this particular symlink will cause gnucash-docs to be detected as a retained reference of gnucash, which makes sense because gnucash refers to gnucash-docs.
<marusich>is it possible to use gexps in "modify-phases"?
<marusich>I'm guessing not yet
<Apteryx>Has anyone got this when trying to use adb (connect to Android device): error: insufficient permissions for device: udev requires plugdev group membership
<Apteryx>I also see this from dmesg but I'm unsure if it's related: RUN{builtin}: 'uaccess' unknown /gnu/store/a6cl12hddjr8nx18hlngfwp2cd2f9gn3-udev-rules/lib/udev/rules.d/73-seat-late.rules:15
<Apteryx>Should I try adding a "plugdev" group to my user?
<happy_gnu[m]>Man this day sucks :/ stupid DRM
<happy_gnu[m]>Internet is about to become horrible
<bavier1>we don't have qtwebengine?
<bavier1>oh right, the whole bundled chromium thing...
<brendyn>bavier1: I think it is in qtwebkit?
<bavier1>brendyn: no, we disable it in our qt package
<bavier1>which I think is unfortunate, since it may be better security-wise than qtwebkit
<bavier1>the package I'm looking has announced they'll no longer support qtwebkit in the next release, since they're moving to qtwebengine
<Apteryx>How much behind is 'guix pull'? I'm finding something strange... (target) is missing from the bootloader-configuration record and I just did a 'guix pull'.
<Apteryx>root's ~root/.config/guix/latest points to ~/.config/guix/latest... but it seems my ~/.config/guix/latest is corrupted, as `ls -alH ~/.config/guix/latest' says: Too many levels of symbolic links. Rerunning guix pull just now to see if it'll heal itself.
<happy_gnu[m]>bavier1: doesn't qutebrowser use it?
<Apteryx>marusich: sounds like you're making progress on gnucash:doc :) This will be a neat addition!
<happy_gnu[m]>How do you set DNS en guix
<happy_gnu[m]>On GuixSD
<Apteryx>happy_gnu[m]: do you mean, like to those of your Internet Provider?
<pksadiq>what is the guixSD workflow of developing C softwares. Is there something like 'guix install build-depends gedit' to instll all required packages enough to build gedit?
<Apteryx>pksadiq: easier than that: guix environment gedit
<Apteryx>this gives you a non-persistent environment with every dependencies found in gedit's package inputs.
<Apteryx>to use the same source as that of the package you could do: "cd /tmp; tar xf $(guix build --source gedit)"
<pksadiq>that's great. So this is why make, python, etc are not available direct from shell
<pksadiq>inside gedit env, gcc version 5.x is used. How can I choose gcc 7.2 instead?
<happy_gnu[m]>Apteryx: yes
<happy_gnu[m]>How do I set DNS on Guix
<happy_gnu[m]>on Parabola I edit
<happy_gnu[m]>/etc/resolv.conf
<happy_gnu[m]>And modify network manager to not override it
<pksadiq`>How to update grub.cfg to include other distributions installed? should I simpy install os-prober and grub and do grub-mkconfig?
<janneke>happy_gnu[m]: i run dhclient, which sets it for me
<janneke>pksadiq`, pksadiq``: see node: Bootloader Configuration in the manual
<janneke>you can supply a menu-entry to grub
<happy_gnu[m]>janneke: oh thanks!
***Guest15044 is now known as sturm
<bavier1>happy_gnu[m]: yes, qutebrowser was what I was looking at
<efraim>grub can't read my btrfs filesystem on my new guixsd machine
<civodul>Hello Guix!
<civodul>few people today, weird
<kmicu>( ^_^)/
<kmicu>#guix user peak: 182 (104d 11h ago) lowest: 116 (340d 20h ago) average: 154.81 users (29d period)
<janneke>o/
<rekado>Hello!
<rekado>ACTION still has problems with the i686 server
<civodul>moin!
<civodul>the i686 server?
<rekado>well, “server”
<rekado>it’s the little thing hosting elephly.net
<marusich>civodul, I am trying to add gnucash-docs as a doc output for gnucash. I have found that after adding (outputs '("out" "doc")), that not all the directories I thought would wind up in the doc output actually went there.
<rekado>it’s not powerful enough to compile things on its own, but it has to do that anyway
<marusich>Do I have to do something special to tell guix what stuff should go into the doc output?
<rekado>marusich: yes, you have to install it there.
<marusich>I did, but it did not wind up in the doc output.
<rekado>marusich: e.g. by setting some configure flags or specifically copying things there.
<civodul>rekado: you mean there are not enough substitutes for i686?
<marusich>So, specifically, I have modified the gnucash package definition so that it uses gnucash-doc as an input. gnucash-doc build the documentation, which lives at /gnu/store/...gnucash-doc-2.6.17/share/gnome/...
<rekado>civodul: yes
<marusich>I then added a phase to gnucash which creates a symlink at /gnu/store/...gnucash-2.6.17/share/gnome which points to /gnu/store/...gnucash-doc-2.6.17/share/gnome.
<rekado>civodul: and every upgrade to guix (from git) requires compiling, which results in OOM
<marusich>I expected the "share/gnome" directory to wind up in the doc output of gnucash; instead, it remains in the out output.
<civodul>:-(
<marusich>So, what I'm saying is that I believe I've installed the documentation correctly, but that it is not winding up in the "doc" output of gnucash.
<rekado>marusich: don’t you make the “out” output dependent on the “doc” output with that symlink?
<rekado>marusich: could you show me the patch please?
<marusich>I guess I don't understand the contract for adding documentation which is supposed to wind up in the "doc" output. My understanding is very vague...something like, "If I put files in 'the right' places, magically the files will be excluded from out and put into doc output"
<marusich>sure, just a sec
<marusich>This may take a minute; I'll email it to you privately in the next 10 mins.
<rekado>okay, no rush
<marusich>In the meantime, can you perhaps point me to the code that is responsible for the "splitting" of content into multiple outputs?
<marusich>I've tried looking in the past to find it, and I wasn't successful...
<rekado>AFAIU there’s no such thing.
<rekado>we set the prefix to (assoc-ref outputs "out"), which is a directory.
<rekado>the build system does the rest to install the files there.
<rekado>with other configure flags we can set different target directories for different files
<marusich>That's true, but something is responsible for e.g. putting the "doc stuff" into the "doc" output, and for putting the "debug stuff" into the "debug" output, right?
<rekado>(elephly.net is back now)
<rekado>marusich: the gnu-build-system does this
<rekado>in (guix build gnu-build-system), the “configure” procedure
<rekado>it checks for out, bin, lib, include, and doc.
<rekado>and then it sets configure flags for prefix, bindir, libdir, includedir, and docdir.
<rekado>if the build system does not support the docdir flag, then you have to do this yourself.
<marusich>I see
<marusich>Thank you
<marusich>So, in this case, no, the build system for "gnucash" does not support the docdir flag for its docs, because those docs are not built as part of the "gnucash" release.
<marusich>They are built in a totally separate release package with its own makefile.
<marusich>That's why I have a separately defined package for it.
<marusich>So, is the right thing to do for me to put a symlink in the "doc" output, myself?
<rekado>I think it’s not right to use a symlink from one package to another.
<marusich>Why would you say that?
<rekado>would the symlink not be installed in any case?
<rekado>or only if the doc output is installed?
<marusich>My intent is to make it so that when the "out" output is installed by itself, there is no documentation pesent.
<rekado>ok
<marusich>When "doc" is installed, you get the docs via the "doc" output.
<marusich>I think I see how to do this thanks to our conversation; I'll give it a try.
<rekado>ACTION goes afk
<marusich>Is it expected that man pages don't wind up in the doc output? I see that in gnu-build-system.scm, we set docdir to (string-append "--docdir=" docdir "/share/doc/" (package-name)), which notably does not include share/man
<marusich>Hm, maybe I'm just confused. I guess gnucash is depositing man pages into $prefix/share/man, instead of into $docdir?
<marusich>I guess I need to explicitly set mandir.
<marusich>Is there a reason why we don't set --mandir explicitly in gnu-build-system.scm to point to the doc output?
<marusich>It seems that --mandir must be configured independently of --docdir, at least for gnucash. I wonder if it's true for other packages, too.
<civodul>marusich: good question
<civodul>i think there are arguments for both options
<civodul>i.e., man pages within or outside of "doc"
<civodul>"doc" is typically used for large files such as HTML or PDF
<civodul>often we don't save much space by taking man pages away
<marusich>I see.
<marusich>In this case, gnucash is 1 GiB. Wow. According to "guix size", at least.
<marusich>The doc output I created, which will contain the help docs you can view in GNOME Yelp, is 94 MiB.
<efraim>that sounds big enough to split off
<marusich>Maybe it should just go in the "out" output after all.
<marusich>Even though it's a tiny fraction of 1 GiB?
<marusich>I guess it's almost 10%
<efraim>i normally look at `du -sch $(guix build foo)` to see how much the different subdirectories take up
<efraim>er, `du -sch $(guix build foo)/*`
<marusich>The man pages are a whoping 20 KiB :)
<marusich>Splitting out the man pages would not really buy anything here.
<marusich>efraim, I have been wary of passing multiple arguments to du to measure sizes ever since I discovered this: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=11526
<marusich>But du is a handy tool nonetheless :)
<marusich>Anyway. I am happy having a separate output for gnucash's Yelp help docs, especially since I already wrote up a patch. Since the man pages are so small, civodul is probably right that it doesn't buy anything if we move it into the "doc" output.
<efraim>plus I would assume that the man pages would be included with the package
<marusich>That does usually seem to be the common way it's done.
<efraim>and since I'm everybody, clearly thats right :p
<marusich>:)
<civodul>marusich: Yelp doc takes quite a bit of space i think, so it makes sense to have a separate output or package for that
<efraim>Does anyone have GuixSD on a btrfs root? Grub doesn't recognize my filesystems
<efraim>Only have btrfs and swap partitions
<civodul>efraim: mark_weaver apparently has btrfs on LUKS
<civodul>and there's at least a test for btrfs for root
<marusich>civodul, if I want to know the total size of the transitive closure under the references relation of the derivation that built my current system, how would you find that out?
<efraim>Is there a flag for grub for including extra modules? Could I have forgotten to include it?
<marusich>I thought it would be simple to find out what derivation built my current system since I know the store path of my current system, but I can't figure it out.
<civodul>marusich: guix size $(readlink -f /run/current-system)
<civodul>efraim: grub finds out by itself what it needs to do
<marusich>Won't that show the size of the transitive closure of the *output* of the derivation that built my current system?
<efraim>that's what I thought
<marusich>I want to know the size of the transitive closure of the derivation that built my system; i.e., how much space was taken up by all the software that was required to build my system?
<efraim>I specifically wanted btrfs raid 1 since I have a bunch of similarly sized random disks
<marusich>Maybe my understanding is mistaken; I thought that the derivation that built my system would have retained references to (transitively) every input required to build the system.
<efraim>re: the `guix system build' errors we've been having over the past week, a test to build the example configs would've caught it
<efraim>then again I know I don't normally investigate the failures on the system tests
<civodul>marusich: i can't think of an easy way to get what you're asking
<civodul>the size of the closure of the .drv would be something different from what you're asking
<civodul>so you'd need to look at the size of the outputs of closure of the .drv
<civodul>something like that
<civodul>but even that wouldn't be quite what you're asking for i think
<efraim>guix size $(guix build foo --sources)
<marusich>Ah, i see what you're saying
<marusich>"Guix size" would give me the size of all the derivations required to build the system, but that would be quite small because the instructions for building the system can be small compared to the source files those instructions would cause to be compiled, and the outputs that those actions would cause to be created.
<marusich>In any case, is there generally an easy way to tell which derivation built my current system...?
<sadiq[m]>installing webkitgtk always fail (compiler segfaults). How to use gcc7 instead.of gcc5 for build?
<efraim>sadiq[m]: do you run out of memory? what's the output of `free -m'
<sadiq[m]>hm.. there is a chance.. (memory is now free enough tho). when I built webkitgtk from Debian it always overflow (and uses swap spaces). Won't guixSD too behave the same?
<civodul>how does one add a domain name to a Let's Encrypt cert?
<civodul>i can't find the right certbot incantatino
<civodul>marusich: for any store item, you can query its deriver via the 'query-deriver' RPC
<civodul>there's no CLI though
<marusich>OK, that's what I was suspecting. Thank you for confirming my suspicions!
<sadiq[m]>Will it be possible to install webkitgtk without building?
<civodul>sadiq[m]: it should be possible, yes
<sadiq[m]>civodul: hm.. Right now it is always building locally.
<civodul>sadiq[m]: are you on today's master?
<sadiq[m]>probably. Updated using guix pull about 3 hours ago
<civodul>hmm yes, no substitutes right now
<sadiq[m]>Why package -i sometimes pull in the same package (with different hash prefix) twice?
<civodul>cbaines: could you check if we can apply the rsync service patches? :-)
<civodul>oh you already replied
<civodul>hmm, sorry for the noise
<rekado>do you know how to get around the problem of guile-git having been moved?
<rekado>I have a system with an old central guix installation.
<rekado>everybody else uses “guix pull”, but the central installation cannot be upgraded because “guix pull” will try to build the old guile-git from its old URL.
<rekado>I suppose I could use “guix build --with-source=…”
<rekado>that worked
<mray[m]>wow, upon installing a pacakge guix seems very verbose
<mray[m]>ACTION wonders whether the install log is bigger than the blender binaries themselves...
<efraim>people have also used guix pack to get around guile-git having moved
<efraim>is there a reason we build xorg-xserver-xwayland with --disable-xorg?
<civodul>rekado: i'm still confused as to why there aren't substitutes for the old guile-git checkout
<civodul>i'm sure i asked before, but i forgot what the answer was
<civodul>do you remember? :-)
<civodul>rekado: in other news, could you reconfigure berlin, so that it has the latest & greatest Cuirass?
<civodul>(with the HTTP API)
<Apteryx>sadiq[m]: if you configured to use swap in your operating-system declaration with GuixSD, it should use it yes. You can check if there's any swap available using the `free' command.
<Apteryx>sadiq[m]: and by bad experience building webkitgtk uses like 2GB per thread, and GuixSD builds with multiple threads by default, so yes, that can bring a system down quick and will report errors like you've seen (compiler segfaults -- which I find confusing)
<sadiq[m]>Apteryx: yes there is plenty swap space free. Anyway now building with single core
<Apteryx>a way around that is to use "guix build --cores=1 webkitgtk"
<Apteryx>Has anyone been able to backup an android device using 'adb'? I get some 'not enough permissions' error which seems to be caused by my user not being in a 'plugdev' group.
<ng0>what's prefered: patching software so that it takes environment variables or wrapping it and providing PATH? Caja doesn't like native-search path because it records the CAJA_EXTENSIONSPATH or what it was at configure/build
<ng0>pathcing would maybe help uostream, but wrapping would be a solution which works for us now
<ng0>the only getenv's in caja are XDG_CURRENT_DESKTOP DESKTOP_SESSION SESSION_MANAGER MATE22_USER_DIR MATE and some more but not the extension dir.. My idea is to wrap, so that I can wrap it up for now
<ng0>but: due to glib-or-gtk build-system caja is already wrapped. I think wrapping a wrap will not taste good.
<ng0>I should read more to see if this is a problem or not
<rekado>wraps are squashed automatically
<ng0>I'd add the PATH wrap after 'install' phase. and at the very end comes the build-system included wrap, right?
<ng0>before I do this I should first take a break because I have doubts if it works at all. Basically my situation is: Every Mate application which includes Caja extensions automatically picks up the caja extensions path inside /gnu/store/…caja-version… so I had to pass the configure switch to them to point to their own out/…same/path/as/in/caja. Now the code for extensions in caja is not that much and could
<ng0>be changed easily to getenv, but for me it'd be very much testing and not knowing (still learning the language used there).
<ng0>so we have caja, and caja-extensions and atril and some other application. caja needs to learn about the other applications.
<ng0>I think I'm on the right way
<efraim>ng0: does it help that the mate metapackage squishes everything into a common %out directory, so it is in /gnu/store/...mate-meta/path/to/extension
<ng0>but that's just the meta package
<ng0>if we change anything it is in libcaja-private/caja-module.c between lines 216 and 270
<ng0>I'm looking at our pidgin patch, maybe some of it can be copied
<efraim>how do i run the %test-btrfs-root-os test?
<efraim>i tried guix build -e '(@@ (gnu tests install) %test...)'
<efraim>civodul: looking at the btrfs parts of (gnu tests install) I didn't specifically do the bios_grub stuff, I just marked the os partition as bootable
<civodul>ok
<efraim>so that could also be part of whatever is going wrong with my install
<civodul>also see https://www.gnu.org/software/guix/manual/html_node/Running-the-Test-Suite.html
<civodul>maybe you should email help-guix if you think something's fishy
<efraim>civodul: thanks
<efraim>i also noticed that the btrfs-root-os test hasn't been run since may, the location of the symlink already exists
<efraim>make check TESTS="that test" is easier than I was trying :)
<civodul>what?
<civodul>"check-system"
<civodul>what symlink are you talking about? :-)
<civodul>ACTION is confused
<efraim>yeah, i read down to the bottom finally
<efraim> https://hydra.gnu.org/job/gnu/master/test.btrfs-root-os.x86_64-linux
<rekado>civodul: for the guix-hpc website “guix build -f guix.scm” fails for me with “asset processing failed with errno: "static" 2”
<jonsger>why is it necessary to add "--ad-hoc guile-git" when building guix inside "guix environment"?
<civodul>rekado: yeah, git-predicate bug
<civodul>ACTION is drowning in bugs
<rekado>:(
<jonsger>I'm trying to build guix after git pull from source and getting that error http://susepaste.org/view/raw/88316961
<rekado>jonsger: try “make clean-go” first
<jonsger>okay
<Apteryx>Hmm, how to add a 'plugdev' group to my config? When I declare it as part of the 'supplementary-groups' field of the user-account record, guix system reconfigure fails with: guix system: error: supplementary group 'plugdev' of user 'maxim' is undeclared
<civodul>you must add it to 'groups' as well
<Apteryx>civodul: OK, thanks!
<civodul>yw!
<jonsger>is there anything else to do after configure and make to get guix itself updgraded?
<civodul>jonsger: that should be fine
<jonsger>but it's definitly not updated because "guix system search" is still missing.
<jonsger>or is there anything to change between binary and from-sources install?
<civodul>jonsger: well from your checkout "./pre-inst-env guix system search" works, right?
<Myst_>hey guys I've been itching to try guix for over a yr. But lacked the tech skills to install. over the last month or so I moved to using gentoo based distros. Having compiled them from scratch following tutorials I've succesfully installed them
<civodul>hello Myst_
<civodul>s/guys/people/ :-)
<Myst_>I know have a clearer understanding of the process involved
<jonsger>civodul: yes
<Myst_>Hi civodul:
<Myst_>I assume I can install guix from an existing linux os
<Myst_>what initially confused me where commands & phrases that I've not seen before.
<jonsger>Myst_: just follow that https://www.gnu.org/software/guix/manual/guix.html#Installation
<Myst_>Having installed gentoo, they are not soalien top me anymore
<ng0>any mistakes which slipped into this description? https://github.com/mate-desktop/caja/issues/851
<ng0>*that
<Myst_>thank you just reading it now.
<Myst_>are there any videos out there witha guide
<Myst_>on installation
<jonsger>Myst_: just ask maybe youtube
<Apteryx>Seems to have worked adding plugdev after adding "plugdev" to supplementary-groups and (user-group (system? #t) (name "plugdev")) to groups.
<Myst_>assuming guix will be installed on sda7 on a gpt ext4 using rEFInd boot loader
<Apteryx>ACTION reboots to test
<Myst_>I will not have need to worry about grub etc
<davexunit>guix always installs grub
<davexunit>guixsd, that is
<Myst_>my initiall concerns are chrooting and mounting the rootfs
<ng0>there's an guix package in gentoo
<Myst_>? what does that do
<ng0>I assume you want Guix not GuixSD
<Myst_>I want to install the Os
<Myst_>not the packagemanger
<Apteryx>Myst_: That's GuixSD
<Myst_>sorry
<Myst_>thanks
<ng0>then you want GuixSD, and unless you have good reasons I'd go with using the USB Image (and not from top of an existing system)
<Myst_>ok.
<ng0>which is possible aswell, but has some quirks for first time use
<Myst_>that is my trepadation
<Apteryx>Myst_: yes, follow the user manual, it's well written. Don't try anything fancy at first to get going.
<sadiq[m]>ACTION feels guixOS better. rhymes with geek's OS or geeks' OS :)
<Myst_>this command
<Myst_>mount LABEL=my-root /mnt
<pmikkelsen>hi guix!
<Myst_>so in my case assuming I'm using sda7
<rekado>civodul: I’m running “guix pull” on berlin and will reconfigure it.
<Myst_>i'll wait a while
<Myst_>help the others first
<ng0>If you want to test you could even 'emerge -a guix' and when the initial bootstrapping after 'guix pull' is done you could test a VM from within Gentoo
<Myst_>yes I could
<rekado>I’m still having problems running “guix pull” on an older system. I tried using a later version of Guix on the same machine, but “guix pull” fails to compile current master.
<ng0>(assuming you have Gentoo on a spare computer. If not, nevermind me)
<rekado>here’s the error: guix/scripts/graph.scm:101:15: return: return used outside of 'with-monad' in form (return (object-address a))
<Myst_>never tried VM yet
<rekado>it says it’s “Building from Git commit 3daea4f12b4c9fa48d4a964ee2d9e3d1de349054...”
<ng0>so like "guix vm my-testsystem.scm" and you could re-use that "my-testsystem.scm" if you put it into a git (or upload it somewhere) and pull it later into the bare-metal system you install GuixSD on
<ng0>sorry, "guix system vm foo.scm"
<rekado>hmm, it worked this time with c694520bb13ef11c11c06cbc52e1dc27c24dc788 :-/
<rekado>I fear that maybe this is a problem with Guile 2.2.2 on a machine with many cores and lots of memory.
<htgoebel>Hi guix,
<htgoebel>is it okay to push a new temporary branch for "QT install and search paths"? This would simplify collaboration
<efraim>sounds good to me
<efraim>although I would shorten the name
<htgoebel>efraim: shorter of course :-) Locally I named it wip-qt-paths. Okay?
<efraim>Sounds good
<htgoebel>Fine then :-)
<sadiq[m]>No no no... webkitgtk build faild after 5 hours of build :'(
<efraim>2.18.0 or the old one?
<sadiq[m]>2.18.0
<efraim>how much ram/swap do you have?
<efraim>I found that 4GB total wasn't enough, and 8 was plenty, but i'm not sure where the cross-over point is
<sadiq[m]>it said some file is missing (but I forgot to add -K arg)
<sadiq[m]>4 GB ram, 5GB swap. Built using single core
<efraim>i'm at 79% on aarch64, using 6 cores
<ng0>here thinkpad t60 (with 3GB RAM afaik) went through it in the last 12 hours with some other updates and other computers were just yawning through in a couple of hours.
<sadiq[m]>eh.. will the hydra build subsitute be soon ready?
<efraim>hopefully
<sadiq[m]>hm.. any status page for that? amd64 arch btw
<efraim> https://hydra.gnu.org/eval/109786?filter=webkitgtk&compare=109785&full=#tabs-now-fail according to this it should be ready
<sadiq[m]>thats great.. so I should do a guix pull and try install again, right?
<ng0>no, just try again
<sadiq[m]>Btw, what is the timezone of hydra server?
<efraim>hmm, kdelibs4support and python-pastel need some loving
<ng0>hydra is in some part of USA, hydra mirror is at TU Munich (or one of its data locations)
<efraim>that is a good question, if its local then EDT or EST, otherwise maybe UTC
<ng0>oh, that timezone
<efraim>by local i mean local to the machine hydra is running on
<sadiq[m]>to utc*
<sadiq[m]>Hm.. setting timezone utc might help many (if not yet so)
<ng0>it's easier on reviewers if I don't send a 20 packages proof-of-concept necessary batch of patches I think. I work on cinnamon, but that could take a while longer than Mate. I already have 1 cinnamon package ready but it just builds and serves no user-facing function. Got stuck at muffin.
<jonsger>ng0: you wanna replace Linux Mint by GuixSD :P
<htgoebel>efraim: Re kdelibs4support: interesting it passed two days ago.
<efraim>htgoebel: i think it might have just been a timeout
<ng0>kinda. A sub-item for something I want is to have some fully-featured DEs and DMs
<ng0>so Mate is close to being easy to maintain and featureful. Plus probably easy to add unique themes to
<ng0>cinnamon -> muffin right now is: Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by <-- HERE in m/(.*?){ <-- HERE / at /gnu/store/sd4gxwa0xln492nvy8j6l2ivpy7l1g42-gtk-doc-1.25/bin/gtkdoc-scan line 735. where I didn't have more time to find a solution to
<ng0>that's all I could find https://github.com/linuxmint/muffin/issues/296
<htgoebel>efaim: Unforunatly not, some test is failing now :-( https://hydra.gnu.org/build/2280528/log/tail-reload
<efraim>yeah but it took 5000 ms, hence my timeout guess
<htgoebel>hopefully :-)
<civodul>cbaines: i'm looking at the mysql/popen issue, which turns out to be more involved than expected :-)
<civodul>it looks like ice-9/popen.scm isn't found because we lack a pivot_root(2) call in the boot process
<civodul>so at the point where we try to access popen.scm, we're looking at the old root, which has been emptied
<civodul>anyway, i'm trying to check this hypothesis