IRC channel logs
2017-07-10.log
back to list of logs
<bavier>istm a global priority queue would in the daemon would be better than walking the dependency tree breadth-first <civodul>bavier: the graft thing happens on the client side, not in libstore <civodul>catern: i don't have a link handy, but that was in one of the first discussions about the potluck <civodul>where Mark raised concerns about having external repos that would assume a stable "package API" <bavier>civodul: sure, I was thinking more about prioritizing substitutes before local builds <alca>Hi, I'm having a bit of trouble wraping my head around configuration in GuixSD. <alca>At the moment I'm just trying to get wifi and an X server running. <alca>On my other systems I just use wpa_supplicant and edit its config file, but that dosen't seem to be the way to go on Guix? <buenouanq>alca: what do you have thus far, a successfully completed install? <alca>Yes, I also added the dbus and wpa-supplicant services to my declaration, pulled and reconfigured. <buenouanq>I'm not exactly sure about wpa_supplicant, but I imagine that has examples in the install guide. <buenouanq>The supported way to install a working X server, is via the %desktop-service. <buenouanq>In mine you can see how you would add an additional config to be read with startx. <alca>Thanks, I'm not sure how to get my config off this machine at the moment, but looking at an example with startx should help. <buenouanq>all you need is to add %desktop-service to the (services declaration. <buenouanq>this is not going to be like debian minimal or whatever you're trying to cling to <buenouanq>there's no supported way to install just x and startx when you want after logging in <alca>Ah alright, that's what I needed to hear. I was trying to forgo the login manager and just use startx. <buenouanq>it's possible and people have done it I believe, you'll just have to really get your hands dirty and learn more about all this than you prolly want or are willing <rekado>With a recent kernel update on i686 I no longer have /dev/kvm <rekado>It’s strange that ‘modprobe kvm’ does succeed, but there still is no /dev/kvm <jsierles>wanted to learn 'pre-inst-env' but i don't see it in a fresh checkout of guix. <phant0mas>good day jsierles, you first have to run ./boostrap && ./configure && make <jsierles>so i do need at least autoconf and make? <jsierles>trying to run this on alpine, so need to see what the prereqs are. <rekado>I think you may do without make; it’s created by ‘configure’. <jsierles>ok, bootstrap is looking for a specific version of gettext (0.18.1) <jsierles>which isn't available anymore on alpine. <jsierles>actually, not sure what's going on there <jsierles>ok, looks like gettext no longer has 'archive.tar.gz' <jsierles>ok, fixed it. both 'gettext' and 'gettext-dev' are needed. <jsierles>now got: configure.ac:75: error: possibly undefined macro: GUILE_MODULE_AVAILABLE <jsierles>almost there. gnutls is not found, even though i installed it from alpine <jsierles>any way to deal with "The Guile bindings of GnuTLS are missing; please install them"? <phant0mas>jackhill: you need the guile-gnutls package from your distro <reepca>Hm, how can one easily alter geiser's guile-running command so that it uses ./test-env? <rekado_>reepca: I haven’t tried this but geiser-guile-binary may be a list <rekado_>reepca: though it may be simpler to create a shell wrapper and use its path as the value for geiser-guile-binary. <reepca>rekado_: I ended up just going with the --listen approach <rekado_>hmm, the last thing that keeps me from using texlive-union in python-numpy-documentation is some babel default. <rekado_>sphinx generates a LaTeX source file that includes \\usepackage{babel}, but babel complains that it doesn’t know what language to use <rekado_>it should use \\usepackage[english]{babel} <rekado_>the documentclass, however, does declare the language. <rekado_>annoyingly, the tex file is generated and processed in the same phase, so I can’t easily patch the generated file <efraim>It turns out our copy of signing-party is so old it doesn't build on aarch64 <rekado_>efraim: I guess I could try a new version of Sphinx <rekado_>I’m having trouble building the daemon on CentOS 7 inside ‘guix environment guix’ <rekado_>nix/nix-daemon/nix-daemon.cc:890:44: error: cannot convert âin_addrâ to âin_addr_t {aka unsigned int}â in initialization <rekado_>that’s with latest master and it’s the same with a version from July 4 <reepca>the test environment doesn't by any chance have something against substitutes, does it? Or am I just re-going through the commencement phase? <rekado>In trying to fix the problem I’m installing gcc-toolchain@5 <rekado>this is with a globally installed guix 0.12.0 <rekado>since there are no substitutes for 0.12.0 anymore this results in building a lot of things. <rekado>while messages scroll past me on the screen, I’m thinking again about ‘guix pull’ <rekado>can we add a job on hydra to build the latest version of Guix and turn ‘guix pull’ into a stupid downloader? <rekado>right now it computes derivations, builds dependencies to build Guix from source, and then builds it from source. <rekado>this means that if you’re using an old version of Guix on which you run ‘guix pull’ you will need to build from source the old tools that you then use to build the latest Guix. <rekado>Can we avoid this by not building Guix from source at all? <rekado>I’m thinking of creating a pack on hydra and downloading that (minus the things one may already have in the store) <civodul>rekado: i'm looking at the C+ error above, what g++ version are you using? <rekado>the problem does not appear with GCC 5.3, but I got it with GCC 4.9 <rekado>i.e. with the default GCC from Guix 0.12.0 <civodul>that's super weird, is there a second line for this error message? <rekado>there’s another instance of this for the IP6 variant <civodul>this is C++ weirdness, i wonder why it compiled in the first place :-) <civodul>apparently there was some magical implicit cast and it just worked <civodul>re guix pull, there's a chicken-and-egg problem <civodul>basically, we need to compute the derivation of guix if we want to build it (and maybe get a substitute) <civodul>but to compute the derivation of guix, we need guix, or a large subset thereof <rekado>I don’t understand why we need to compute a derivation. <rekado>that’s not necessary when we just want to download a file <civodul>but that file would contain the output of a derivation no? <rekado>right now we hardcode the URL to the master tarball <rekado>could we not provide a URL where the latest version of the pre-built Guix can be fetched from? <civodul>and that file would not be linked to a derivation? <rain1>would the loop be broken by somehow splitting guix into parts? <rekado>civodul: does it have to be linked to a derivation? <rekado>‘guix pull’ is already a bit special <civodul>rekado: it's akin to downloading a big binary blob from the internet out there <civodul>derivations provide provenance tracking <civodul>and so we always use derivations when building something <civodul>of course we could make an exception, but that doesn't sound very good to me at first sight :-) <rekado>could we download the derivation instead of computing it locally? <civodul>that'd be some sort of a "meta-substitute" <reepca>I hear "computing derivations" mentioned quite a bit, but I don't seem to recall a definition. <civodul>for a substitute, you have a drv, and you ask the server whether it has the corresponding results <civodul>for a meta-substitute, you have a commit, and you ask the server whether it has the corresponding drv <civodul>reepca: by "computing a derivation" i'm referring to what the 'package-derivation' procedure does <civodul>i.e., taking a high-level package definition, and "compiling" it down to a .drv <reepca>blargh... it's always so bittersweet finding a function that does exactly what you spent a fair bit of time writing a function to do. <reepca>two of them, one which turned out to be provided by guile. string-tokenize, hidden away under "miscellaneous string operations" in the manual, and mount-points from (guix build syscalls), which used string-tokenize. But hey, at least I made something useful - "octal-escaped", in case mount points have spaces in the name. <reepca>also, out of curiosity, what's the difference between /proc/mounts and /proc/self/mountinfo? <civodul>reepca: i think the latter takes namespaces into account <civodul>while the former is the global list of mount points <rekado>bleh, using the latest sphinx didn’t help. <rekado>same error: ‘! Package babel Error: You haven’t specified a language option.’ <reepca>Hm, I've tried using debug-set! to make the guile backtrace wider, but it seems truncated at the same point. Is that a geiser thing, and is there a way to control it? <rekado>gah, I really cannot read TeX code. <rekado>I really like strace. I can understand what the TeX code tries to achieve by looking at the syscalls it triggers. <adfeno>rekado: I also don't like writting in TeX/LaTeX. I like Org mode more :) <adfeno>although Texinfo is fortunatelly more readable compared to TeX/LaTeX. :) <rekado>I’m fine with LaTeX, but TeX code as used in compiled TeX packages such as babel.sty is simply unreadable. <rekado>I know that it’s all macro expansion, but it takes me forever to figure out what I should even look for. <adfeno>What I miss in Org mode is how to make LaTeX + BibTeX work when exporting Org documents. <adfeno>... also when considering BibTeX files that have accents or spaces in path names. <jsierles>but, you can get pretty far with guix on OS X using Docker for Mac <jsierles>not for OSX packages of course. but for using and testing guix for linux <jsierles>right now i'm using guix in a docker-based development environment. <jsierles>civodul: what would it take to make 'localstatedir' work with guix pack -f docker? <jsierles>currently if you run 'guix pack --localstatedir -f docker guix', you don't have a /var in the image <jsierles>my goal here is to create a guix docker image which is bootstrapped for a specific git checkout of guix, with a fully populated store, database and profile links for guix. <jsierles>the idea is you have it bootstrapped, then run the image to copy the store and database to a docker volume <jsierles>i haven't found any faster way to get a 'latest guix' on all my teams local machines <jsierles>running 'guix pull' takes forever and recompiles stuff that's already been compiled on my substitute server. <civodul>jsierles: we need to replicate what "guix pack -f tarball --localstatedir" does in the docker backend <jsierles>civodul: OK. maybe something I could look at as a first task <jsierles>but this way works for now, putting a tarball into an image whose job is only to fill up an empty store mount <jsierles>this should allow anyone to try the latest guix too, on any docker platform <quiliro>kaj mi konstructas la pakagxon de openmolar1 <quiliro>anyone would please help me change my keyboard layout? <quiliro>i stalled on the construction of qscintilla <davexunit>jsierles: ah, the use-case makes sense now. thanks for explaining. <davexunit>it will be so nice when 'guix pull' just fetches a binary <quiliro>would someone remind me of the distro based on guixsd which was being designed for a stable release? <quiliro>how to some loadkeys es error: cannot open file es <rekado_>quiliro: if I remember correctly you were almost done with qscintilla. <rekado_>you only needed to override the installation target directory <rekado_>quiliro: AFAIK there is no distro based on GuixSD. All I know of are ideas. <rekado_>ACTION would really like to rewrite bournish <quiliro>after that, i will run guix environment guix <rekado_>quiliro: why run ‘guix pull’ when you have the git checkout? <rekado_>you don’t need ‘guix environment guix’ so often <rekado_>it’s fine to have one or two files not compiled <quiliro>Your branch is up-to-date with 'origin/master'. <rekado_>regarding qscintilla, I think you need to run ‘qmake’ with some arguments to set QT_INSTALL_PREFIX <quiliro>now i dont need guix environment guix you say.....what should i do then? <rekado_>you can just run ‘./pre-inst-env guix build …’ <rekado_>put if you have a lot of uncompiled modules I recommend actually doing ‘guix environment guix’ first to run ‘make’ <rekado_>I don’t always do this, but after a big ‘git pull’ with lots of changes it makes things faster. <rekado_>here’s the qmake syntax to set variables: ‘qmake -set PROPERTY VALUE’ <rekado_>I think it might be enough to do something like ‘qmake -set QT_INSTALL_PREFIX (assoc-ref outputs "out")’ <rekado_>note, this qmake stuff should be part of the qscintilla package definition; part of some build phase. <quiliro>ran ./pre-inst-env guix build qscintilla <rekado_>because we still haven’t made any changes to the recipe <quiliro>rekado_: in what part of the qscintilla package should i place 'qmake -set <rekado_>I’m not sure how this works, but I think it’s safe to run this in the same phase where we run ‘qmake’ on its own. <rekado_>we can just run it before and chain the commands with ‘and’ <rekado_>try ‘(and 23 12)’ in the REPL (e.g. with Geiser) <quiliro>scheme@(guile-user)> (and 'foo 'bar 12 + -) <quiliro>$2 = #<procedure - (#:optional _ _ . _)> <quiliro>scheme@(guile-user)> (and 12 #f 34 1 3) <rekado_>in the first case you get 12, in the second case you get a procedure called ‘-’, in the third case you get #f, which stands for ‘false’. <rekado_>in Scheme every value that is not #f is considered ‘true’. <rekado_>we can use it to chain procedures that return either true or false. <rekado_>such as ‘zero?’, which will return either #t or #f. <quiliro>but why will it show only the last and not the chain? <rekado_>that’s just how it works. It’s supposed to evaluate all arguments until it hits #f. <rekado_>an evaluation can have a side effect. <rekado_>do you remember how we can run external commands with Scheme? <quiliro><rekado> quiliro: while you are in a Scheme buffer hit C-c C-z to switch to geiser [15:17] <quiliro><rekado> then type ,use (guix build gnu-build-system) <quiliro><rekado> this will show you the value of that variable <rekado_>no, that only gets you to geiser and then shows you what value %standard-phases has <rekado_>you’re already calling an external command in one of the build phases <rekado_>‘chdir’ cannot call an arbitrary command. All it does is change the current directory. <rekado_>we’re using this in qscintilla to run ‘qmake’ <rekado_>system* takes one or more arguments. The first argument is a command. All other arguments are arguments to that command. <rekado_>okay, what about (system* "touch" "/tmp/a") <rekado_>that’s a command that … does something but we cannot really see if it was successful by looking at the output <rekado_>because it doesn’t print any output. <rekado_>what return value do you get for the last expression? <rekado_>what about (system* "touch" "/whatever") <quiliro>from (system* "touch" "/tmp/whatever") <rekado_>(these $ values are intermediate variables that the REPL creates, so that we can more easily refer to previous results) <rekado_>okay, so we can use ‘(zero? (system* "something"))’ to check if the command ‘something’ had an error. <lfam>ACTION prepares master -> core-updates merge. Please no commits to core-updates in the next few minutes! <rekado_>if it had no error, it will return #t. If it had an error it will return #f. <rekado_>‘and’ evaluates things until it hits ‘#f’. <quiliro>zero checks if it is zero or in other words correct <rekado_>so (and (zero? (system* "ls")) (zero? (system* "touch" "/bad"))) will return … what? <rekado_>when doing this in your head: evaluate from the left to right, from the inside to the outside <quiliro>only the last output you said with and <rekado_>(and (zero? (system* "ls")) (zero? (system* "touch" "/bad"))) <rekado_>(and (zero? 0) (zero? (system* "touch" "/bad"))) <rekado_>(and #t (zero? (system* "touch" "/bad"))) <rekado_>‘and’ evaluates all its arguments until it hits #f. <rekado_>had there been any further argument it would have been ignored <rekado_>(and (zero? (system* "ls")) (zero? (system* "touch" "/bad")) (zero? (system* "ls"))) <quiliro>oh...so all values are displayed until #f only <adfeno>(and ...) keeps going until everything is done, or until it hits #f. <rekado_>the first and the last should both be fine, but the last command is never executed. <rekado_>‘display’ is not correct. They are *evaluated*. <rekado_>it just so happens that the evaluation of ‘(system* "ls")’ prints some text. <rekado_>anyway, that’s enough to change the recipe <rekado_>we want to first run ‘qmake -set QT_INSTALL_PREFIX /gnu/store/…’, and then ‘qmake’. <rekado_>since we don’t know the name of the directory under /gnu/store we can simply ask Guix to tell us the name. <rekado_>we use ‘(assoc-ref outputs "out")’ to get a string of the target directory in the store. <rekado_>so the command is (system* "qmake" "-set" "QT_INSTALL_PREFIX" (assoc-ref outputs "out")) <quiliro>how do i feed that result to our command? <rekado_>that’s okay because ‘system*’ takes just a bunch of strings, and (assoc-ref outputs "out") returns a string. <adfeno>quiliro: Important note: rekado_'s (system* "ls") example is, of course a simple usage of (system* ...), however, Guile Scheme itself has procedures (like "commands" in GNU Bash, or "functions" in any language) to do the same as "ls". <rekado>quiliro: when you’re done modifying the recipe for qscintilla please share it with me. <quiliro>rekado: i did it...i was going to./pre-inst.... <rekado>I think it’s going to fail, because ‘outputs’ is undefined <rekado>there are a couple of problems here <rekado>we want to chain them and only run the second if the first succeeded. <rekado>the second problem is ‘lambda _’ <rekado>the ‘_’ means: “whatever, I don’t care” <rekado>some background: the build procedures are all called with a bunch of keyword arguments. <rekado>but one of these arguments is a value for “outputs” <rekado>so we should let our lambda *bind* that value. <rekado>change “lambda _” to “lambda* (#:key outputs #:allow-other-keys)” <rekado>this declares that we have a procedure that takes keyword arguments, ignores most of them, and binds the value for the keyword argument “outputs” to the variable “outputs”. <rekado>and you need to use “and” to chain the two qmake commands. (You only have one.) <lfam>ACTION pushes the core-updates merge <rekado>heh, the “and” is in the wrong place :) <quiliro>this looks like the tests at elementary school <rekado>look at the previous example again <jsierles>`guix pack nss-certs` generates this unusual error: i/o error: /gnu/store/v3badl9wh3zv569zzm3za7gr51dnwgan-profile/etc/ssl/certs/T??B??TAK_UEKAE_K??k_Sertifika_Hizmet_Sa??lay??c??s??_-_S??r??m_3:2.1.17.pem: No such file or directory <rekado>jsierles: this looks like a locale problem. <jsierles>the resulting tar exists but without these files. <quiliro>let me reread your instructions...you said: <jsierles>rekado: does guix need a special locale setting? running 'tar cf' on the directory directory works fine <rekado>I don’t know. This looks like a bug to me. <lfam>rekado, jsierles: I believe we discussed this previously on one of the mailing lists <lfam>I recommend searching the archives for 'nss-certs' in the last ~6 months <lfam>Too bad one can't search all the lists at once, but oh well <adfeno>quiliro: Example: (and (zero? (system* "ls")) <quiliro><rekado_> we want to first run ‘qmake -set QT_INSTALL_PREFIX /gnu/store/…’, <adfeno>quiliro: (zero? (system* "pwd"))) <adfeno>quiliro: Notice what rekado said: "before *both* qmake". <rekado>jsierles: I remember seeing a bug relating to encoding in Guile some time ago. <jsierles>guess the daemon needs to run in utf8 locale <quiliro>(arguments `(#:phases (modify-phases %standard-phases (replace 'configure (lambda* (#:key outputs #:allow-other-keys)_ (chdir "Qt4Qt5") (zero? (system* (and ("qmake" "-set" "QT_INSTALL_PREFIX" (assoc-ref outputs "out"))) "qmake"))))))) <quiliro>(system* (and ("qmake" "-set" "QT_INSTALL_PREFIX" (assoc-ref outputs "out"))) "qmake") <rekado>("qmake" "-set" "QT_INSTALL_PREFIX" (assoc-ref outputs "out")) <– that’s not a command <rekado>remember that the first thing must always be a procedure or special syntax. <rekado>what we need is something like this: (and (zero? (system* …)) (zero? (system* …))) <rekado>that whole expression will either return #t or #f <quiliro>so i need to check if the first qmake is true <adfeno>Also, there is a underline near (lambda * ()_ <adfeno>That underline must not exist :) <rekado>now, let’s see if this fixes our problem <rekado>run ./pre-inst-env guix build qscintilla <quiliro>is that what stallman wrote initially? <quiliro>but i guess he did not write the c++ part <quiliro>the other time it broke in this time <quiliro>make: [Makefile:3905: install_header] Error 3 (ignored) <quiliro>mkdir: cannot create directory ‘/gnu/store/6wmrf9c7rpv2c8q02vxvv1frsmljr5lh-qtbase-5.9.1/translations’: Permission denied <quiliro>ln: failed to create symbolic link '/gnu/store/6wmrf9c7rpv2c8q02vxvv1frsmljr5lh-qtbase-5.9.1/lib/libqscintilla2_qt5.so.13': Permission denied <rekado>looks like setting QT_INSTALL_PREFIX didn’t help <rekado>we may need to set all of the variables that qscintilla.pro uses <adfeno>quiliro: Dont worry, everything is going well in the context of learning. Right now, rekado is checking the link he just gave, it seems that qmake is a little more tricky than what we thought. But in the learning side, we are doing fine :) <quiliro>(and (zero? (compile qcintilla quiliro) (zero? (compile qcintilla rekado))) <rekado>QT_INSTALL_LIBS, QT_INSTALL_HEADERS, QT_INSTALL_TRANSLATIONS, QT_INSTALL_DATA, QT_INSTALL_DATA <adfeno>Hm... I wonder if qscintilla itself has a text file inside that sets everything... <rekado>quiliro: heh, now you speak like a Scheme programme :) <rekado>adfeno: no, these seem to be the default values that qtbase provides <quiliro>(and (zero? (compile qcintilla quiliro) ((zero? (adfeno guide quiliro)) | (zero? (rekado guide quiliro))) (zero? (compile qcintilla quiliro) (zero? (compile qcintilla <quiliro><rekado> QT_INSTALL_LIBS, QT_INSTALL_HEADERS, QT_INSTALL_TRANSLATIONS, <quiliro>i guess that is not the correct algorithm <adfeno>quiliro: I think that what rekado means is that we must repeat the (zero? (system* "qmake -set ...")) for every item he just told us about... <quiliro>adfeno: isnt it supposed to be modified in qt itself? <rekado>I’m not familiar with qmake, but I looked around in qt.scm <rekado>python-pyqt is completely independent <adfeno>Oh... so rekado is also searching for an easier way... :) <rekado>we end the extra build phase that runs qmake with “#f” and then use “./pre-inst-env guix build -K qscintilla” <rekado>then we take a look at the generated Makefile <quiliro>ok...how do we end the extra build hase? <rekado>right now it ends with whatever zero? returns <rekado>since we’re using (and …) we can just put an extra #f there <quiliro>after (zero? (system* "qmake") we insert #f <adfeno>Hm... and we try to (substitute* "Makefile" (...)) the problematic paths ... :) <adfeno>quiliro: About your last question: after the last (zero? ...). <rekado>adfeno: we could do that, but I think it’s prettier to generate the correct Makefile <quiliro>i guess my synthax was not correct...but i meant the same as you said.... rekado: ok <quiliro>rekado: how to generate the Makefile <rekado>we must figure out how to tell qmake to generate a Makefile with the correct target directory <rekado>I tried “qmake -set” on all variables, but it doesn’t have any effect. <catonano>rekado: you suggested me a workaround for a qmake based package, some time ago <rekado>actually, qtsvg contains a phase that just patches up the generated Makefile <quiliro>is there something i can do in the meantime? <rekado>you could check the sources of Qscintilla to confirm the license. <rekado>is it really GPLv3 or does it contain the “or later” clause? <rekado>you don’t have to do it manually. There are tools to find strings in files ;) <adfeno>Or, there might be a "LICENSE" file in the directory where qscintilla is. <adfeno>Err... sorry, the LICENSE file is only the entire license, not what copyright holder writes in the license notice.... <quiliro>there is the license file...it is the GNU GPLv3 <adfeno>I think the license notice is in a README file, or in a "main" file, or in a file with the same name of the project. <quiliro>rekado: how can i use that link without retypyng everything? <adfeno>rekado: I was just reading the README.doc and noticed that you substitute things in the "qscintilla.pro" file.... <adfeno>rekado: ... I wonder if we don't need to update the "features/qscintilla.prf" file too <quiliro>that means i dont make changes to qt.scm? <rekado>quiliro: you can visit the URL with eww and then apply the contents of the buffer as a patch <adfeno>rekado: Won't he loose the "openmolar" custom package? <quiliro>i should download the link as a file? <adfeno>Oopps... Openmolar is in another file. :) <adfeno>quiliro: Yes, that link rekado just gave can be downloaded as a simple text file. <rekado>this fetches the paste, prints it to standard output, creates a temporary file handle and then applies the patch. <rekado>make sure that you have no changes to qt.scm or else the patch won’t apply <rekado>you can do “git checkout -- gnu/packages/qt.scm” to erase all of your changes. <rekado>i.e. all the changes to qt.scm; none of your other changes will be touched. <adfeno>quiliro: ^ this is why the "-- gnu/packages/qt.scm" part is important, we don't want to lose openmolar :) <quiliro>it it very difficult to use this english keyboard <quiliro>so i cannot type without looking at the keys on en <quiliro>but loadkeys does not work on guixsd <rekado>In my system configuration I have this service: (console-keymap-service "dvorak") <rekado>quiliro: are you using a virtual console only? Or also a graphical user interface? <quiliro>i dont know how to use anything on the console <rekado>FWIW “sudo loadkeys dvorak-es” works for me <rekado>(but I don’t know how it differs from the English dvorak) <rekado>I rarely use the virtual console <rekado>to me it’s only useful when things break <quiliro>used (console-keymap-service "dvorak-es") on the (operating-system) section <quiliro>then i have 'guix system reconfigure config.scm'? <rekado>the console-keymap-service only affects the virtual console, though :-/ <rekado>for the graphical user interface I have an additional setting <quiliro>that is ok...if it boots with dvorak-es, everything else will too. <efraim>whats the difference between cl-stumpwm, ecl- and sbcl-? <rekado>efraim: they use different Lisp runtimes. <jsierles>so on my server, I used 'guix pull' and then 'guix pack guix'. but the packed image doesn't contain the 'guix-latest' derivation <jsierles>what would i need to do on the target system where the pack was unloaded to use latest guix? <quiliro>with './pre-inst-env guix build openmolar' <jsierles>i assumed running 'guix pack guix' would give me the latest incarnation of guix <lfam>rekado: Any progress on those new old servers? <civodul>jsierles: "guix pack PKG" creates a pack for PKG; the 'guix' package is different from what 'guix pull' provides <civodul>see (gnu packages package-management) <jsierles>civodul: oh. so is there no way then to do what I'm trying to do? <civodul>you can install it and run it (i don't know this piece of software) <civodul>jsierles: you'd have to pass 'guix pack' a fresh snapshot of the Guix code, with "guix pack guix --with-source=./guix-0.1.2.3.tar.gz" <jsierles>civodul: ok. so guix would still have to build on the target system? <jsierles>ah, bummer. so conclusion is that guix always needs to build, no way to port a 'guix latest' around yet <rekado>lfam: the servers just sit here waiting for approval. <rekado>I was out last week and there hasn’t been any progress :( <adfeno>rekado: quiliro: About the license used by qscintilla: README.doc says its under GNU GPL 3 (only). <civodul>rekado: if lfam and i can sign something on change.org, let us know ;-) <rekado>I had to prepare a project proposal with risk estimates etc to move this forward. <rekado>I hope we can get something done this week. <jsierles>civodul: so what about getting all the dependencies into a pack at least? <quiliro>i did './pre-inst-env guix build openmolar' <civodul>jsierles: "guix pack guix" will provide all the dependencies (+ guix as a bonus :-)) <rekado>quiliro: did you add qscintilla to the inputs? <jsierles>civodul: ok, i thought so, but i see gcc, perl, etc being build locally after having unpacked <quiliro>rekado: it was added....but let me check <lfam>civodul: Can you reply to Niall on help-guix to give some clarification about the new profile collision detector? I don't understand it well enough to explain it <civodul>jsierles: is /var/guix/db/db.sqlite properly initialized? <jsierles>civodul: i just untarred and ran wit that. what needs to be done? <civodul>ACTION has to reboot due to a broken reconfigure with experimentalish code <rekado>try “git diff gnu/packages/medical.scm” first <rekado>that’s because we don’t have medical.scm in git. <rekado>just use “cat” instead of “git diff” <rekado>but there’s no qscintilla among the inputs <rekado>you only had problems when running it. <quiliro>perhaps because it was already installed? <rekado>add it to the inputs of “openmolar” <rekado>don’t move the definition there :) <civodul>rekado: i'm willing to push the service "customization" patch <civodul>rekado: it's not ideal, but i don't have a better idea, and it solves a real problem <quiliro>./pre-inst-env guix environment --ad-hoc openmolar -- openmolar <rekado>ACTION hasn’t yet regained an overview after vacation <rekado>you can also just do $(guix build openmolar)/bin/openmolar <civodul>ACTION feels ashamed that alezost has been waiting for a solution for so long <quiliro>ImportError: cannot import name 'Qsci' <rekado>civodul: my biggest concern with this is probably that there is no ordering <rekado>quiliro: that’s a Python error, though <rekado>maybe we’re missing python bindings to Qscintilla? <rekado>and that should just load qscintilla <rekado>export LD_LIBRARY_PATH=$(guix build qscintilla)/lib; $(guix build openmolar)/bin/openmolar <quiliro> $(guix build openmolar)/bin/openmolar <quiliro>bash: /bin/openmolar: No existe el fichero o el directorio <quiliro>guix build: error: qscintilla: unknown package <quiliro>guix build: error: openmolar: unknown package <quiliro>bash: /bin/openmolar: No existe el fichero o el directorio <quiliro>FileNotFoundError: [Errno 2] No existe el fichero o el directorio: '/usr/share/openmolar/resources/appointment_shortcuts.xml' <quiliro>with ./pre-inst-env guix environment --ad-hoc openmolar -- openmolar <quiliro>rekado: from './pre-inst-env guix environment --ad-hoc openmolar -- openmolar 2>&1 | curl -F 'sprunge=<-' http://sprunge.us' <rekado>quiliro: oh, sorry. Use “./pre-inst-env guix”, not just “guix” <rekado>export LD_LIBRARY_PATH=$(./pre-inst-env guix build qscintilla)/lib; $(./pre-inst-env guix build openmolar)/bin/openmolar <jsierles>civodul: so how should the db be initialized? <quiliro>FileNotFoundError: [Errno 2] No existe el fichero o el directorio: '/usr/share/openmolar/resources/appointment_shortcuts.xml' <quiliro>ImportError: cannot import name 'Qsci' <jsierles>just assumed I can untar the db in place. <rekado>quiliro: the first error indicates that we need to patch the openmolar sources a little, but that’s okay.. <rekado>quiliro: the second error is what makes me worry a little <quiliro>export LD_LIBRARY_PATH=$(./pre-inst-env guix build qscintilla)/lib; $(./pre-inst-env guix build openmolar)/bin/openmolar 2>&1 | curl -F 'sprunge=<-' http://sprunge.us <rekado>quiliro: we need to investigate why it cannot import Qsci <quiliro>in a couple of second i will put the link to the paste <rekado>./pre-inst-env guix environment --ad-hoc python-wrapper python-pyqt qscintilla <civodul>jsierles: if --localstatedir was passed to 'guix pack', then that file should be non-empty <civodul>jsierles: if you don't want to rebuild everything, you also need to authorize the key for substitutes <jsierles>so now i would expect 'guix pull' with the git hash to be fairly quick, right? <jsierles>civodul: yep , i have authorized my sub server <civodul>jsierles: not necessarily quick, it depends on a few things <quiliro>rekado: no error with the last command you asked me to run <jsierles>hmm, i think maybe my store and db were out of sync. <jsierles>civodul: now i wiped the store and untarred freshly, it seems to only be downloading now <jsierles>civodul: what i'm curious about is why all the things it's downloading are not included in the pack. <jsierles>i guess because the latest release has a lot of new dependencies? i see it downloading libX11 for example. <jsierles>huh, now it's downloading a ton of source files. *confused* <rekado>quiliro: looks like we’re not done with qscintilla yet. <rekado>quiliro: we actually need to build the Python bindings <rekado>quiliro: see the heading of the same name. <jsierles>civodul: so it is building everything in the end. <rekado>quiliro: we can either create a new package “python-qscintilla” that inherits from “qscintilla”, or we can build the Python bindings in another build phase. <rekado>quiliro: but I’m out of time now. <quiliro>If you do make changes, specifically to the names of the installation directories or the name of the library, then you may also need to update the Qt4Qt5/features/qscintilla2.prf file. <quiliro>perhaps someone else will guide me now <quiliro>or i can return another day if someone else is not available for helping now <jsierles>maybe my issue is my substitute server is not working correctly. <civodul>jsierles: 'guix pull' uses dependencies "of its time", if you see what i mean <jsierles>"gzip: stdin: invalid compressed data--crc error" that looks bad <jsierles>guix substitute: error: corrupt input while restoring '/gnu/store/wak3m4kdkgw010qn1ksnqlggvklp4b24-gmp-6.1.2/lib/libgmp.a' from #{read pipe}# <quiliro>i will return tommorrow or the day after tomorrow <jsierles>civodul: i understand the deps would be different. but since i have that version of guix on my build server, i assume my sub server will deliver those packages <quiliro>will someone send me homework please? <jsierles>ugh, on my build server i'm now seeing 'profile contains conflicting entries for gmp:ou' <quiliro>rekado, civodul, adfeno: what should i study? <civodul>jsierles: no, it means the profile contains two entries for "gpm" <jsierles>civodul: how does a profile get two entries like that? <jsierles>i see, maybe by having run 'guix package -i guix' <quiliro>i will check the sources and see what i can do <jsierles>civodul: do you think the crc error is an issue on my end, or with hydra? <jsierles>fwiw, i have gmp-6.1.2 built on my server <quiliro>thank you all for the help...i am proud of my progress <civodul>jsierles: on hydra; can you report the faulty URL?