IRC channel logs


back to list of logs

<rain1>guix built successfully
<rain1>took about 5 hours
<rain1>guix package: error: build failed: while setting up the build environment: cannot unmount real root filesystem: Operation not permitted
<rain1>do I need something special in fstab or something to let the guix builders do their chroot thing?
<rain1>for now --disable-chroot is letting me build things
<cehteh>not guixsd?
<cehteh>normal users can not chroot usually
<quiliro>just installed emacs-emms-player-mpv
<quiliro>but i dont know how to use it
<quiliro>is it necessary to restart emacs?
<quiliro>M-x emms does not work
<quiliro>M-x mpv does not work
<cehteh>try M-x load-library emms
<cehteh>or restart
<quiliro>i have installed do i use it
<cehteh>[03:20] <cehteh> try M-x load-library emms
<cehteh>[03:20] <cehteh> or restart
<cehteh>and rtfm .. i dont use emms
<quiliro>which manual? emacs has a section on mpv?
<quiliro>i restarted already
<cehteh>emms manual?
<cehteh>M-x info
<yrk>no, emms doesn't have a section in the manual about mpv because whomever hacked-up that kludge didn't submit a patch for it to be included in emms
<yrk>in other words, it isn't a part of emms and won't be supported or documented until (and if) it is
<yrk>the moral of this story is: send useful changes upstream
<cehteh>at least it tells how to plug in player modules
<cehteh>here it does
<cehteh>and how to configure emms
<yrk>yes, we are proud of the emms manual; it aims to be a useful and up to date manual
<yrk>I even bum people out by asking that patches submitted include a manual update
<quiliro>cehteh: so i should look for emms in the emacs manual?
<cehteh>i am on debian here, there i have a emms info page
<cehteh>i bet you can google that on the net as well
<quiliro>cehteh: i found it inside the emacs info
<quiliro>it is a complete emms manual
<quiliro>now i have to find how to use it to play videos
<quiliro>thanks for the tips
<cehteh>i just use mpv from commandline
<cehteh>apropos mpv: .. best thing since sliced bread :D
<quiliro>i want to view videos on eww
<quiliro>will mpv with emms do the job?
<quiliro>or am i pointing in the wrong direction?
<quiliro>i was used to doing everything on firefox. then i discovered that firefox included some non free stuff. so i went with iceweasel, then i found that guix had emacs in which you could do [almost] everything. so i tryed but could not do some things like check email and browse the web and watch videos and listen to audios and open pdfs and odt files
<quiliro>but then i discovered some things
<quiliro>it cost investigation...but i am learning
<quiliro>i still cannot browse the web as i did with firefox or even with icecat in GuixSD
<quiliro>but i could open my mail files in gnus
<quiliro>and i think i will be able to download new mail
<quiliro>in less than 30 minutes from now
<quiliro>i can open pdfs
<quiliro>i think emacs can open libre office files now...but have not tested
<quiliro>i am able to install packages from the command line but not from emacs yet
<quiliro>i was able to install GuixSD on a Macbook Air A1304 (2009) that uses EFI as the sole operating system without another bootloader such as rEFInd
<quiliro>i am not able to use libreboot on it yet
<quiliro>but i hope i can learn to in the next 2 years
<quiliro>it is not supported yet
<quiliro>so i will have to be the one to do it or count on luck that someone that knows will do it for me
<quiliro>so i am still having dificulties with emacs....but i think i will de a good user sometime
<quiliro>and will be able to contribute with guixsd also
<quiliro>i think that need is the mother of creativity
<quiliro>so i will probably learn a lot to be able to get what i need.....for example to install openmolar1 in guixsd
<quiliro>i could probably get free dentist if i could do that for my dentist
<quiliro>she wants clinical history for her dental patients
<quiliro>and openmolar1 i think does that
<quiliro>but it is not included on i will have to learn how to install it....better yet, package it for guix
<quiliro>how can i watch youtube videos in emacs?
<quiliro>or movies?
<quiliro>can i open the videos from eww?
<quiliro>can i open the movies with C-x C-f?
<rekado>Hi Guix
<rekado>to everyone complaining about hydra being slow: we’re working on it.
<rekado>I’m currently on vacation, mostly away from keyboard
<rekado>we may soon have more servers in the build farm that will provides us with binary substitutes more quickly
<rekado>there’s no point in complaining about this.
<rekado>If you want to help you can provide substitutes yourself with “guix publish” to help out others.
<rekado>ACTION signs off again
<rain1>rekado, what is this in response to
<quiliro>hi rekado
<rekado>hi rain1
<rekado>I was just reading the logs from the past two days
<rekado>and the topic of hydra came up a couple of times
<rekado>that’s what I responded to
<rekado>I have prepared two servers that should join the build farm; they just wait for IT to reconfigure the routing, which may take them a week.
<rekado>once that’s done I’ll prepare a couple more servers
<rekado>this should allow us to provide substitutes much faster than now
<rekado>I can understand the frustration, though.
<fredmanglis>Hello there. I need help with a package definition, that doesn't produce the same output on running 'guix build --rounds=3 python-conda'
<fredmanglis>The definition is here
<fredmanglis>It depends on ruamel.yaml ( which has already been submitted as a patch
<catonano>rekado: great news !
<civodul>Hello Guix!
<sneek>Welcome back civodul, you have 3 messages.
<sneek>civodul, wingo says: regarding (lambda () (floor/ 1 2)) (lambda (x) x)) -- i think the 2.0 behavior was a bug
<sneek>civodul, wingo says: i believe what we want is for explicit instances of call-with-values to be strict; truncation only happens for call sites that implicitly accept 1 value
<sneek>civodul, wingo says: the way to express truncation in 2.2 is (call-with-values thunk (lambda (x . rest) x)); the rest arg will not be allocated
<earthfail22>hello guix!
<catonano>I'm going to the beach. Good bye, fellow guixers !
<civodul>luck catonano :-)
<civodul>sneek: seen m-o
<sneek>m-o was here Jun 14 at 07:33 am UTC, saying: hi civodul !.
<civodul>sneek: later tell m-o Nixy variant of what you're trying to do with GuixSD services for users:
<jlicht>civodul: that link seems interesting :O. Are there any guix-related undertakings similar to that one?
<jsierles>if i want to run cuirass, do i have to build it from source?
<rekado>ACTION is at the beach, too, but at the baltic sea. Kinda cold.
<jsierles>any tips in general on getting it running are welcome
<rekado>jsierles: are you using GuixSD? There’s a cuirass service for it.
<rekado>and we have a cuirass package in Guix.
<jsierles>rekado: nope. running everything in docker
<jsierles>haven't yet figured out how to run guixsd in there
<rekado>jsierles: then you’ll have to run Guix manually and emulate what the cuirass service does in GuixSD.
<jsierles>rekado: ok. but i'm not sure how to point it at guix definitions. is it something like one of these?
<jsierles>it would be interesting to get a guixsd docker base image going
<rekado>jsierles: you may also want to look at the guix-maintenance repository, which contains the cuirass config for bayfront.
<jsierles>that would help
<rekado>BTW: cuirass is developed under Guix now:
<rekado>the maintenance repo is here:
<jsierles>what's the relationship to hydra?
<reepca>Hm, it occurs to me that the reason that it's fine for the C++ daemon to unconditionally remount everything as MS_PRIVATE is because it's in a separate mount namespace (so anything that assumes its mounts have a certain propagation type outside of the container is unaffected). But run-container makes that optional. Perhaps it'd be better to just copy what useful parts I can get from call-with-container instead of trying to refactor it.
<rekado>jsierles: hydra is unrelated.
<ng0>the relationship is: trying to get rid of hydra.
<efraim>reepca: or copy unconditionally and refactor later
<efraim>I'm building out core-updates now on aarch64, its looking really good to me
***jonsger1 is now known as jonsger
<Leo`>Does Guix applies any kind of patches to the Linux-libre kernel? (Underlying question being: what are the risks of using a mailine kernel like that person here did?
<ng0>probably the first reply after my reply will be 'do not post such links here'
<ng0>on the topic, blobs are legally complicated.
<civodul>jlicht: yep, m-o posted something on the mailing list a week or two ago
<ng0>I'm experimenting with them, outside of Guix. Imo there are no risks. If you really have to use linux (or even binary blobs) and not linux-libre you can do it if you find out how to do it.
<ng0>well there are not no risks. but it depends on your threat scenario
<civodul>Leo`: you can reach the linux-libre definitions from here:
<civodul>in short there's a stack-clash patch and a boot-logo patch currently
<civodul>heya rekado :-)
<civodul>reepca: maybe for a start you can simply use call-with-container as is, and refine later?
<Leo`>ng0: Well I'm aware of the threats of blob themselves, that was not really the question, more like will I miss anything that the Guix package maintainers apply to the Linux-libre kernel.
<ng0>just the 2 patches. and you'd have to build the kernel locally every time
<Leo`>Sounds ok I guess.
<ng0>as linux-nonfree is like mordor here I can't really write everything.
<Leo`>How's the support of broadband modems in Linux-libre anyway? I read a lot about WiFi chips but nothing about them.
<ng0>I also don't want to encourage using linux mainline with blobs like iwl, cards can really suck and you have to load the kernel module again because they constantly die if the hardware is crap.
<ng0>I flashed coreboot because I got so annoyed.
<civodul>Leo`: see
<civodul>i don't know about the specifics of broadband modems though
<Leo`>ng0: Ok but what's the alternative, except buying new hardware...
<ng0>that's why I started one of my repos.
<ng0>well not that simple reason
<ng0>but it's one of many
<Leo`>Which repo?
<civodul>the policy is that Guix supports free software, and this channel is about Guix :-)
<ng0>you have the choice of using a different kernel, or try to find out as much about supported hardware as possible (in -libre) and find hardware accordingly
<civodul>ACTION uses an Atheros dongle for WiFi
<ng0>offloading via tor does not work. has anyone tried this before, to an .onion without systemwide traffic redirection?
<ng0>I'll just see what I can come up with as a solution
<jsierles>is it possible to do the equivalent of 'guix pull --url' without having initially setup the deamon? i'd like to get a specific version of guix installed directly from git.
<jsierles>perhaps using pre-inst-env with 'guix pull'?
<jsierles>the goal is to provide a docker image with a specific guix version already installed.
<quiliro>i want to include openmolar1 on guix
<quiliro>but first i will try to install it by compiling it to make sure it works on guixsd
<quiliro>is that a good route to take?
<quiliro>i was looking for a dental practice software
<quiliro>found it....but dont know if there might be a better solution from the perspective of freedom and/or funcionality
<civodul>jsierles: i'd suggest "guix pack -f docker --localstatedir guix"
<civodul>well, with the caveat that --localstatedir does nothing with "-f docker" currently
<civodul>something we should fix
<jsierles>civodul: i think that was suggested before, but if it doesn't work, then i can't use it :)
<civodul>good point :-)
<civodul>it kinda works though ;-)
<jsierles>but in theory, would the above work?
<civodul>which of the above?
<civodul>"guix pack"?
<jsierles>pre-inst-env guix pull
<jsierles>what will 'guix pack' give me if it can't use the local state dir?
<civodul>you'd end up with a Docker image that contains Guix, but where Guix doesn't know what's in its store
<jsierles>ah, that doesn't sound good
<civodul>yeah 'guix gc' would wipe everything
<civodul>we should just fix that --localstatedir thing
<jsierles>i dont mind a hacky solution for now
<jsierles>but i guess i can just live with 0.13 release for now. and get that working later
<jsierles>well, in other news i got our substitute server published
<quiliro>i need: python3 runtime, qt5 for python3 and a python3 wrapper around the c-api for
<quiliro>communicating with the databas......what packages are needed for this? with command guix package -i
<rain1>hello, can I ask help with using guix I compiled which is failing?
<quiliro>rain1: asking to ask?
<quiliro>rain1: never ask if you can ask...just go ahaead and do it...if unsure if it is the right forum, do ask....but this is th right forum for your question....did you not know that?
<rain1>as root i run # guix-daemon --build-users-group=guixbuild --disable-chroot
<rain1>then im doing $ guix package -i units
<rain1>x86_64-guix-linux-gnu-ld: cannot find -lstdc++
<rain1>and it has this error when compiling libiberty
<rain1> heres more of the error
<quiliro>it is beyond my knowledge...perhaps someone else might know
<rain1>i think that my OS is missing a part of C++
<rain1>im looking into it
<ng0>rain1: do you document the path you take for th musl build of guix? would be very cool :)
<ng0>iirc this was on alpine?
<rain1>yes ng0 i built it on alpine and I got notes
<quiliro>which package corresponds to python3 runtime?
<ng0>or do you mean the python package "runtime"?
<ng0>in that case: `guix import pypi runtime`
<ng0>in other words, you have to package python-runtime
<elreydelaswasas1>trying to install the guixsd operative system i firstable intorduced the command: loadkeys la-latin1 , the i introduced the comand ifconfig -a to see all my networks and i choosed my wired network eno1 with LINKENCAP Ethernet hwaddr 08:2ESF:02:EC:06 and i choosed it using the command ifconfig eno1 up then i entered the command dhclient eno1 then i used the command cfdisk and i created a Linux filesystem in /dev/sda1 with 20G,
<ng0>was this message cut off?
<quiliro>elreydelaswasas1: esta muy bien hasta ahi
<quiliro>ng0: i dont know if i need file INSTALL.txt on
<quiliro> openmolar-1.0.15-gd81f9e5.tar.gz
<quiliro>i dont know how to copy a link in emacs
<elreydelaswasas1>continuation of what i said:"inux swap with 2 G in /dev/sda3, i have 8 gb of ram, a BIOS boot in /dev/sda4 with 513M, a Linux home partition with 493M in /dev/sda5, a Linux home partiton with 908.5Gb in /dev/sda6 in /dev/sda6 then i executed the command herd start ssh-daemon, the i ejecuted the command mkfs.ext4 -L my-root in /dev/sda1 then i ejecuted the command cryptsetup luksFormat /dev/sda1 , then the command cryptsetup op
<ng0>it should be cryptsetup luksOpen /dev/sdX foo in case that wasn't a typo and your next message will show the error :)
<quiliro>how can i search for a log on this channel but i do not remember what day it was? it was recommended to me to install the appropriate packages for installing that program
<quiliro>i want to check which they were...i remember mentioning openmolar
<quiliro>i think it was rekado which made the suggestion
<ng0>there is no search for the irc logs (yet)
<quiliro>i want to install the deps for the source of openmolar1
<elreydelaswasas1>continuation of what i wrote:"hen i executed the command mkfs.ext4 -L my-root /dev/mapper/my-partition, then i ehecuted the command mount LABEL=my-root /mnt, when i was partitioning the disk with cfdisk isaved the changes with the Write option before i quit the program with the quit option , after i ejecuted themount LABEL=my-root /mnt command i executed the mkswap /dev/sda3 swapon /dev/sda3 then i executed the command herd s
<janneke>elreydelaswasas1: it is more helpful if you start with your question
<jonsger>guix + r = :)
<elreydelaswasas1>mkdir /mnt/etc, then the command cp /etc/cnofiguration/desktop.scm /mnt/etc/config.scm, then i executed the command nano /mnt/etc/config.scm, and in the archive of config.scm i made the next changes , in in the script that started with (use-package-modules i changed what it said with (use-package-modules xfce ratpoison enlightenment certs), and in the in the script that begined with (packages (cons* i changed it to (packages (
<elreydelaswasas1>top environments and in the script below to this below the first o letter of the word rat poison i wrote nss-certs and below the last letter of the first enlightenment word i wrote;and continue writing for HTTPS access in the below script after i wrote the firstcerts word next to certs but below it i wrote %base-packages)), and in the script that said with (bootloader (grub-configuration (device "/dev/sdx")) i wrote instead of
<rain1>good morning guix fellows: )
<quiliro>elreydelaswasas1: your report is confusing
<quiliro>elreydelaswasas1: why dont you write directly in the chat
<quiliro>instead of copy pasting?
<elreydelaswasas1>forget that i really mean i wrote instead of it (bootloader (grub-configuration (device "/dev/sda"))), then i executed the command guix system init /mnt/etc/config.scm /mnt and then appeared the next errorguix substitute: error: TLS error in procedure ´read_from_session_record_port´: The TLS connection was non-properly terminated, in the next line i wrote: substitute: updating list of substitutes from ´https://mirror.hydra.g
<quiliro>elreydelaswasas1: it is still confusing because it is incomplete
<jsierles>i think he's pasting from google translate
<quiliro>elreydelaswasas1: hblas catellano?
<quiliro>hablas castellano?
<quiliro>elreydelaswasas1: do you speak spanish, french, german, esperanto?
<quiliro>elreydelaswasas1: there are people that speak those languages and more in this chatroom
<jsierles>probably spanish given the nick 'king of the whatsapps" :P
<quiliro>jsierles: 'king of the grotesque women'
<quiliro>wasa is a grotesque woman
<quiliro>castillian is my mother language
<quiliro>it is not spanish because spain has several languages
<quiliro>i was born in america
<quiliro>in latin amica
<jsierles>i live in spain, just saying, here they say 'wasas' in that sense too
<quiliro>in latin america
<quiliro>jsierles: wasap, not wasas
<jsierles>they also say it like 'me mandó unas wasas' here in andalucia
<quiliro>it is a distortion of guaso
<quiliro>jsierles: oh! sorry then
<jsierles>just sounds like the kinds of jokes they say here. :)
<jsierles>'guasa' used to mean 'cheekiness' or something similar, but now it means 'whatsapp' unfortunately.
<jsierles>hmm: guix pull: error: build failed: cloning builder process: Operation not permitted
<jsierles>anyone know what that's about?
<jsierles>i' m trying to roll back to 0.13.0 after having guix pulled to latest
<ZombieChicken>ng0: Hey, are you there?
<quiliro>jsierles: why dont you try guixsd?
<quiliro>what package will provide "a python3 wrapper around the c-api for communicating with the database"?
<jsierles>quiliro: i can't right now. my cluster runs on docker and coreos. no easy way at the moment to go down that route
<jsierles>besides, guixsd doesn't seem very stable from what i read on the ML and here. would rather treat these as separate projects
<quiliro>jsierles: how about a virtual machine?
<quiliro>guixsd is very stable for a rolling release
<jsierles>quiliro: coreos runs on docker. i'm sure it's doable, just not a priority right now
<jsierles>i'm only trying to fill my up substitute server with stuff so i don't have to use hydra
<jsierles>above we discussed building a boostrapped environment with guixsd for docker. shouldn't be too much work
<quiliro>i have no idea about docker
<ng0>ZombieChicken: not really, but I can ask later
<jsierles>would be great for communities to try it too
<ng0>*read later
<ZombieChicken>ng0: I'll just email you then. It's nothing real important
<quiliro>the packages that ubuntu or debian need for openmolar1 are satisfied with the following command:
<quiliro>sudo apt-get install python3-mysqldb python3-pyqt5 python3-pyqt5.qsci python3-pyqt5.qsci
<quiliro> python3-pyqt5.qtsvg python3-pyqt5.qtxmlpatterns python3-pyqt5.qtwebkit
<quiliro> xdg-utils pyqt5-dev-tools
<quiliro>what packages in guixsd would that mean?
<ZombieChicken>qtwebkit. Ouch.
<quiliro>ZombieChicken: i thought the qtwebkit dilema was just rumourous and it was solved
<ZombieChicken>Oh, I'm not commenting on guix(sd)'s qtwebkit. I just don't care for eithe webkit nor qt, and my past experiences with it have been annoying at best
<jsierles>hmm, why would i get `guix package: error: unsupported manifest format` when running 'guix package'
<jsierles>looks like a mismatch with the running daemon and the command line.
<quiliro>is it possible to run mysql on guixsd?
<quiliro>or mariadb?
<quiliro>i wonder if it will have to be installed as root
<quiliro>so i should 'su -' and then 'guix package -i mysql'?
<quiliro>then herd status mysqld
<quiliro>and herd start mysqld
<quiliro>if needed
<jlicht>quiliro: there is a mysql-service available:
<jlicht>so in theory you should just be able to include it and your mysql-configuration in your operating system declaration (followed by a guix system reconfigure)
<jsierles>wonder if anyone has tried to package docker for guix
<jsierles>looks like docker-compose is packaged, which seems odd since it won't work without docker!
<ZombieChicken>Check the mailing list archive. I seem to recall something being mentioned about it at some point
<rekado>jsierles: if you’re doing this inside of docker you may need to have a privileged container.
<jsierles>rekado: i didn't mean that. i mean the docker daemon/client as an installable guix package for running docker on guixsd
<jsierles>this is here:
<jsierles>this would be a prerequisite for running guixsd in our env
<rekado>jsierles: I was replying to your question about “cloning builder process: Operation not permitted”
<jsierles>for now, i'm running the daemon and sub server on alpine
<rekado>ACTION is always late these days
<jsierles>rekado: ah, sorry. yes you're right, i figured it out eventually
<jsierles>can the sub server run read-only for /var/guix and /gnu/store?
<quiliro>i have this error:
<quiliro>error: could not create '/gnu/store/fhmwxcp40v853j3n5a6x73rq66h1ywcl-python-3.5.3/lib/python3.5/site-packages/openmolar': Read-only file system
<quiliro>the program attemps to create a file in the store when installed from source
<quiliro>should i install it as root?
<rekado>quiliro: this will never work. You need to tell the package not to write to the Python package’s lib directory. You need to patch openmolar’s sources.
<wigust>Hi, guix. Does anybody have an issue with offload like ?
<quiliro>rekado: where in the script is it that it is finding that directory? what should i search for?
<rekado>quiliro: you’d have to check the Makefile or similar.
<rekado>quiliro: it probably runs “python” with a little Python script to determine the site lib directory.
<rekado>you’d have to replace that
<rekado>I remember that we’re doing this in some packages, but it’s hard to find it
<quiliro>rekado: how does python search for the site lib directory?
<rekado>quiliro: it does not search for it.
<rekado>quiliro: it spits out the value when you ask for it.
<rekado>quiliro: but I don’t know how this works.
<rekado>I’d have to see the Makefile.
<quiliro>rekado: i cannot find a Makefile
<quiliro>rekado: i will search harder
<rekado>quiliro: what build system does this package use?
<quiliro>it uses python3
<quiliro>the line is
<quiliro>python3 install
<rekado>you need to pass additional arguments here.
<rekado>in the python-build-system we do this by default
<quiliro>which arguments and how should i do that?
<rekado>see (guix build python-build-system)
<quiliro>thank you
<quiliro>in the manual right?
<rekado>the module
<rekado>the “install” procedure
<quiliro>how do i see it?
<rekado>if you have a guix checkout go to guix/build/python-build-system.scm
<rekado>(the path always matches the module name)
<quiliro>i will co now
<quiliro>i do not know how to do it in emacs...i will have to have the address to
<quiliro>i will check the guix manual
<rekado>what address do you need?
<rekado>do you have a copy of the guix sources?
<quiliro>how do i get them?
<rekado>if you’re hacking on Guix that would be a good thing to have
<rekado>git clone
<quiliro>i guess i need to install git
<quiliro>just a minute
<quiliro>apparently it was not installed
<quiliro>cloning now
<quiliro>there is no guix/build
<quiliro>only guix/build-aux
<quiliro>rekado: where is the module?
<rekado>after git clone, there should be a “guix” directory
<rekado>inside of that directory you will find “guix/build/”
<quiliro>inside guix there is no guix/build only build-aux
<efraim>Try gnu/build
<quiliro>not used to eshell yet
<rekado>quiliro: if the *only* thing you fetched with git is “build-aux” then something must have gone wrong.
<rekado>it’s definitely in guix/build/python-build-system.scm
<quiliro>rekado: openned the file
<quiliro> completion works a la zsh, not a la bash
<quiliro>so the first option was guix.scm, not guix/ and i thought it did not exist
<quiliro>i feel bad about wasting time
<quiliro>not my time because i learned, but yours because i gave the wrong info
<rekado>no problem :)
<quiliro>rekado: so what do i do with guix/build/python-build-system.scm
<rekado>anyway, in that file you should a definition of “install”
<rekado>this is what the build system does when it installs Python things
<rekado>it prepares “--prefix”, “--root”, and one more argument, and then hands them to “python install”
<rekado>so for your package you just need to do the same.
<rekado>to override whatever the default is
<quiliro>i understand this now
<quiliro>what do i have to search fo?
<rekado>no, you said that it runs “python install”, right?
<rekado>where does it do that?
<rekado>or how?
<quiliro>I DO THAT
<quiliro>i type that
<quiliro>on the openmolar source directory which i downloaded
<rekado>well, in that case the solution is easy!
<rekado>do you actually want to package this software for Guix?
<rekado>then let’s do that instead
<quiliro>i dont know if it is good but debian and ubuntu have it
<efraim1>i just realized that qtwebkit has rejoined the official qt releases
<quiliro>i would have to check if it is libre
<rekado>instead of running this command manually, let’s write a package expression that uses the python-build-system
<quiliro>i will do as you tell me
<rekado>do you already know what software this depends on?
<quiliro>yes...i think
<rekado>is all of this software part of Guix already?
<quiliro>mysql, python, gettext, python-disutils-extra, python-pyqt
<quiliro>i think that is all
<quiliro>because i ran the install python script and installed those packages which led to continue installation
<rekado>what kind of software is this? Do you have an idea what Guix module it would best fit in?
<rekado>you can also check the “” file
<quiliro>but of course i already had some software those packages might be not specified....but i doubt it
<rekado>it should list all python modules that you need to build it
<quiliro>sudo apt-get install python3-mysqldb python3-pyqt5 python3-pyqt5.qsci python3-pyqt5.qsci
<quiliro> python3-pyqt5.qtsvg python3-pyqt5.qtxmlpatterns python3-pyqt5.qtwebkit
<quiliro> xdg-utils pyqt5-dev-tools
<quiliro>and either mariadb-server or mysql-server
<quiliro>on the server machine
<quiliro>aditionally to the former on the client machine
<efraim1>the package python-pyqt should satisfy all the python3-pyqt5 packages
<quiliro>and i think python-mysqlclient is needed too
<efraim1>apt-cache says python3-mysqldb is from mysqlclient on pypi
<rekado>quiliro: are you packaging openmolar1 or openmolar2?
<quiliro>openmolar2 is not production use according to the website
<rekado>then let’s get started
<rekado>first thing is to fetch the source code
<quiliro>got it
<rekado>and to verify the signature
<efraim>try this for python-mysqlclient:
<rekado>you need to download the signature file, then get the author’s GPG key and make sure that the signature for the tarball is valid
<rekado>at you see that you can download the signature file
<rekado>I just tried to get the author’s key from a key server, but only got an expired key
<rekado>so the signature won’t be that useful for our purposes.
<rekado>they also published the md5 checksum, which we should compare
<rekado>run md5sum on the tarball and make sure it matches the contents of the checksum file
<rekado>ACTION will be right back
<quiliro>the checksum is passed
<quiliro>it matches
<quiliro>at least the one i downloaded
<quiliro>how did you check signatures?
<wigust>%load-path must be the same for guix offload to work `user@host$ guile` AND `ssh user@host guile`, doesn't it? `user@host$ guile` has much more PATHS. `ssh user@host guile` has unexisting PATHS.
<wigust>Is it because I need to offload to root@host?
<quiliro>wigust: i cannot help you ... but would you ming telling me how you did the paste?
<rekado>quiliro: you would have to download the GPG key first, e.g. with “gpg --search-keys”
<rekado>then “gpg --verify the-signature-file.asc the-tarball.tar.gz”
<wigust>quiliro: I copied from terminal and paste on manually. Or did I understand wrong? :-)
<quiliro>wigust: ok...thank you
<quiliro>rekado: great...will document all that you are teaching
<quiliro>rekado: now what?
<rekado>quiliro: let’s compute the hash
<rekado>“guix hash the-tarball.tar.gz”
<quiliro>in emacs it is easy to document everything that you do!
<rekado>we’ll need that later
<rekado>but first the hardest part: where to put the package definition?!
<rekado>it’s medical software
<quiliro>rekado: done: 1cfdzfbi6wslw7k0dc6ad6xrgs75iwsl91cg73w4myswaqqkfk3z
<rekado>we don’t seem to have a module for medical software yet
<rekado>so let’s create a new module
<rekado>start a new file gnu/packages/medical.scm
<quiliro>rekado: where?
<rekado>in your Guix git checkout
<rekado>copy the copyright header from another file and change the copyright, so that it only mentions you.
<rekado>let’s take a small module as a template.
<rekado>how about “abduco.scm”
<rekado>copy the “define-module” clause and change the module name to match the new file name: (gnu packages medical)
<rekado>we will be using the python-build-system, so change (guix build-system gnu) to (guix build-system python)
<rekado>next, create a new package definition. You can use the definition of “abduco” as a template.
<rekado>change the obvious values like name, version, url, description, license, etc
<rekado>and, of course, build system (“python-build-system”)
<rekado>when you’re done post a paste here before continuing.
<quiliro>wait...i used adbico.scm as a template for medical.scm
<quiliro>rekado: is that correct?
<quiliro>i thought this must be called openmolar1
<quiliro>not medical.scm
<rekado>the module can be named anything
<rekado>we use this as a “group” for all medical software
<rekado>“openmolar” is just the first package in that module
<wingo>ACTION looking into guix compilation prob
<rekado>if you look at “engineering” or “bioinformatics” you’ll see that we do this there too
<rekado>wingo: thank you!
<rekado>quiliro: before you can test your new package, you’ll need to compile Guix from git. It’s essentially just this:
<rain1>what guix compilation problems?
<rekado>guix environment guix ; ./bootstrap && ./configure --localstatedir=/var && make
<catonano>I am fascinated by this live instructing about how to create a new module/package :-)
<rekado>catonano: it’s been raining all day, so I’m sitting on the hotel bed near the sea with nothing better to do than to hang out on IRC :)
<efraim1>i sometimes add --sysconfdir=/etc
<rekado>(actually it’s been storming and raining for three days now, and I’m really just dressed for summer…)
<catonano>rekado: oh I'm sorry that you're spending your holidays like that
<rekado>hah, it’s still fun :)
<rekado>I was out in the rain before
<rekado>makes the return to the hotel room so much sweeter
<rekado>should have travelled south, not north. What a beginner mistake!
<catonano>rekado: of course you should have travelled south !
<rekado>I don’t travel often enough to remember…
<rekado>I’ll correct my mistake the next time ;)
<catonano>rekado: next time you should come here ! The weather is marvelous and the sea is unforgettable !
<rekado>catonano: don’t make me envy you more :)
<catonano>rekado: you might have seen some pictures on my Mastodon profile
<rekado>ACTION goes to check
<catonano>rekado: this is one example
<catonano>sorry for it being on google
<catonano>ah the mastodon instance made justice of large old binaries
<rekado>very pretty!
<rekado>we’ve got… erm, water and sand too.
<rekado>ACTION sobs
<rekado>quiliro: are you making progress?
<quiliro>wait please
<quiliro>slow but secure
<quiliro>i think that the only thing that i am missing is the arguments
<quiliro>rekado: what do i put there?
<rekado>let’s delete (arguments …) for now
<rekado>they are only needed when you want to change the behaviour of the build system
<rekado>let’s start with the defaults
<rekado>quiliro: great!
<rekado>quiliro: have you already built Guix from git?
<quiliro>oops no
<quiliro>i will do it now
<quiliro>guix environment guix ; ./bootstrap && ./configure --localstatedir=/var && make
<quiliro>should i add:
<catonano>sholdn't the new module file be added to ?
<rekado>quiliro: you don’t need this at this point
<rekado>(I think)
<quiliro>lets wait
<rekado>catonano: the module should eventually be added to, but I’m not sure it’s necessary just yet.
<quiliro>until it finishes
<quiliro>i have a core2duo only
<rekado>quiliro: once that’s done you should be able to run “./pre-inst-env guix build openmolar”
<rekado>“pre-inst-env” is a script that tells Guix to use the modules in the current git checkout
<rekado>(this includes your new “medical” module containing “openmolar”)
<quiliro>bash: ./pre-inst-env: No existe el fichero o el directorio
<quiliro>file does not ecist
<quiliro>quiliro@portkomputilo ~/guix [env]$
<rekado>quiliro: it should have been created by “./configure …”
<quiliro>let me check the location of medical.scm
<quiliro>it is in the correct place...but i forgot to change the author
<quiliro>i did it now
<quiliro>the command you asked me to run did not give an error
<rekado>did it output anything?
<quiliro>(define-module (gnu packages medical)
<quiliro>is correct on medical.scm?
<quiliro>no error message
<rekado>if it is in gnu/packages/medical.scm that’s correct
<rekado>can you paste the whole module to
<quiliro>except on ./pre-inst/env guix buil openmolar1
<quiliro> is that location...verified it
<quiliro>rekado: how from emacs?
<quiliro>to paste
<rekado>oh, I don’t really know
<rekado>maybe with emacs-wget
<rekado>if you have “curl” installed you could use
<quiliro>something i did with emacs
<quiliro>that is the openmolar1 guix package
<quiliro>rekado: is it correct?
<quiliro>except for the copyright
<rekado>I’m checking now
<rekado>I did ./pre-inst-env guix build openmolar1 and it told me that the hash is wrong
<rekado>you forgot to change it.
<rekado>earlier you wrote that the hash is “1cfdzfbi6wslw7k0dc6ad6xrgs75iwsl91cg73w4myswaqqkfk3z”
<rekado>I got an error, which told me that the hash is incorrect. You should have gotten the same.
<rekado>(the next error is that there are no defined inputs, so it will complain about pyqt5)
<quiliro>wait please... i would like to do it
<quiliro>then i will learn
<quiliro>rekado: would you let me?
<rekado>ACTION has to leave in a few minutes
<quiliro>i changed it now
<quiliro>i have no log :-(
<quiliro>but i have history
<rekado>“./pre-inst-env guix build openmolar1” should always give you the complete build output. Let yourself be guided by the error messages.
<rekado>I recommend using M-x shell with “guix-build-log-minor-mode” enabled
<rekado>it’s pretty and you can use C-c M-p to jump to the beginning of the previous build phase
<rekado>C-c M-n to jump to the next phase, etc
<rekado>gotta go!
<rekado>hope someone else can take over from here.
<rekado>good luck!
<quiliro>guix environment again
<quiliro>rekado: thank you very much
<wingo>well, it is bedtime for me. however i think i might have the issue. there are some times in which we use the stack in an O(n) way. this should be fine; guile can make a stack like this, no problem, if your problem is O(n) anyway then it is better on the stack than on the heap.
<wingo>however --
<wingo>we mark the stack precisely. that means that we have a mark function that goes frame by frame to see what values are actually gc values in that frame (and not, e.g. values which have a slot allocated but are actually dead, etc)
<wingo>however with libgc, they expect that mark functions do a constant amount of work, not an O(n) amount of work
<wingo>i.e. that calling a mark function will push a constant number of objects on the mark stack
<wingo>but with an O(n) stack, that's not the case. i think what happens is that when a mark phase starts, it starts with a certain stack size; then if too much marking happens, the mark stack "overflows" then actually libgc will fail the whole thing, expand the mark stack, and try again
<wingo>this is quadratic
<wingo>so when we compile files that are longer and longer, our gc times go up quadratically
<wingo>in the length of the file
<wingo>because the root "function" of the file is getting longer and longer
<wingo>again, linear is fine. quadratic is not fine tho :)
<wingo>my next step will be to look in to see if this is the case. if it is i will see about fixing the vm stack mark function to be incremental, to conform to libgc expectations
<wingo>sneek: later tell civodul take a look at this backlog around 22h30
<quiliro>how to enable “guix-build-log-minor-mode”?
<jlicht>hello guix!
<quiliro>just M-x before that text
<quiliro>jlicht: hello!
<quiliro>why does ./pre-inst-env guix build openmolar1 say that the file does not exist?
<quiliro> guix environment guix ; ./bootstrap && ./configure --localstatedir=/var && make
<quiliro>where should that command be run
<jlicht>quiliro: You run it in your local git checkout of guix
<jlicht>quiliro: And I always add a --pure flag, e.g.: `guix environment --pure guix'
<jlicht>but that might just be me buying a bit of a cargo cult mentality ;-)
<quiliro>what does puro do?
<quiliro>when i run the command i pasted before, i get a prompt with [env] on it
<jlicht>From the guix manual, " To create a “pure” environment, in which the original environment variables have been unset, use the --pure option"
<quiliro>jlicht: is that normal after running the command?
<quiliro>i mean what happened to me
<jlicht>quiliro: the [env] should come from your prompt variable. Try running `echo $PS1' when you see it, and you should see something like `\\u@\\h \\w [env]\\$'
<jlicht>it is purely cosmetic, and shows you that you are currently running a shell within a guix environment
<quiliro>quiliro@portkomputilo ~/guix [env]$ ./pre-inst-env guix build openmolar1
<quiliro>bash: ./pre-inst-env: No existe el fichero o el directorio
<jlicht>quiliro: Did you try running your commands (with --pure) from the guix git checkout?
<quiliro>jlicht: i will do that now
<jlicht>quiliro: the ./pre-inst-env stuff is meant to be run from *outside* the guix environment. So just your normal terminal, without [env].
<jlicht>at least that is how I have been using it for several months
<rain1>is anyone able to help me with c++ compiler problems? I have built guix from source and got the build demon running, the problem comes when i try to use it guix package -i units
<rain1> heres the error, when building the libiberty dependency
<rain1>x86_64-guix-linux-gnu-ld: cannot find -lstdc++
<quiliro>so i have to open another terminal to run withou [env]?
<rain1>I've really got no ideas how to approach this, I have already made sure I have g++ nistalled
<ng0>ZombieChicken: now I have time, for a while
<jlicht>quiliro: after running make in your [env] environment, you can just type `exit' and you should end up with your normal shell (without [env])
<jlicht>and there you should be able to type `./pre-inst-env guix package -s hello'
<quiliro>quiliro@portkomputilo ~/guix [env]$ exit
<quiliro>+ exec autoreconf -vfi
<quiliro>./bootstrap: línea 5: exec: autoreconf: no se encontró
<jlicht>rain1: are you trying to build guix without using guix :S?
<elreydelaswasas1>como hago en el teclado la combinación de teclas alt+ 0174
<ng0>props to the person who packaged toxic \\o/ their old buildsystem was annoying and I hoped it would simply get better. seems like it did
<rain1>guix package -i units
<jlicht>quiliro: you do not need to do the ./bootstrap stuff after running make in your environment
<elreydelaswasas1>como hago en el teclado la combinación de teclas alt+ 0174
<jlicht>quiliro: aaaaaaah! I understand. Did you type all those commands at once? (so on one line, with ; separating them?)
<quiliro>jlicht: ^
<jlicht>quiliro: guix environment creates a new shell, so you either need to feed the rest of your commands via stdin (complicated, not really useful), OR you just first type `guix environment --pure guix', and then when you see the shell with [env], run the rest of the commands
<elreydelaswasas1>como hago en el teclado la combinación de teclas alt+ 0174
<quiliro>elreydelaswasas1: no entiendo
<quiliro>quiliro@portkomputilo ~$ guix environment --pure guix
<quiliro>substitute: updating list of substitutes from ''... 100.0%
<quiliro>quiliro@portkomputilo ~ [env]$ ./bootstrap
<quiliro>bash: ./bootstrap: No such file or directory
<elreydelaswasas1>como hago en el teclado la combinación de teclas alt+ 0174
<jlicht>quiliro: you seem to be in ~ ($HOME) right now, it should work better once you are in your git checkout (via cd)
<elreydelaswasas1>como hago en el teclado la combinación de teclas alt+ 0174
<ng0>could you either knock it off or wait for a reply?
<quiliro>elreydelaswasas1: nadie va a contestar tu pregunta si la repites
<quiliro>oh! it is working now
<jlicht>quiliro: \\o/
<jlicht>`make' might take some time though, depending on how powerful your computer is
<ng0>I have this lazy script for setting up guix checkouts:
<quiliro>jlicht: year 2009 macbook air
<quiliro>i aspire to install libreboot on it
<quiliro>elreydelaswasas1: speak spanish?
<quiliro>elreydelaswasas1: hablas catellano?
<jlicht>ng0: nifty. Don't mind me, just going to nab that ;-)
<ng0>oh, that's not the newest version.
<ng0>now it is