IRC channel logs

2015-08-08.log

back to list of logs

<yenda>is guix using lowlatency kernel?
<mark_weaver>yenda: see /run/current-system/kernel/config
<mark_weaver>the voluntary-preemption model is enabled. not fully preemptible (low-latency)
<mark_weaver>gnu/packages/linux-libre-x86_64.conf is the thing to edit
<yenda>I got this : https://imgur.com/Mxyh2Kb,Fyk2ayV#0
<mark_weaver>so, the tradeoff there is that enabling full-preemption means that there's more overhead for thread sychronization primitives.
<yenda>after patching the kernel for radeon : watchdog detected hard lockup on cpu 2
<mark_weaver>okay, I'm not sure what's going on there
<yenda> https://jxself.org/radeon.patch this patch was intended to make radeon gpu work without the proprietary firmware
<yenda>before the driver would just crash without it
<yenda>someone on triskel asked me if have a low latency kernel
<mark_weaver>yenda: we use CONFIG_PREEMPT_VOLUNTARY=y
<yenda>I don't really know what it is
<mark_weaver>you can pass that along
<yenda>Does it increase the risk of deadlocks ?
<yenda>mark_weaver: I already have that since I compiled from the package definition of linux-libre, I only added the patch.
<yenda->I will try to rollback to linux libre 3.2.69, apparently ati cards were working back then
<dmarinoj>how do I change the keymap in the console?
<dmarinoj>I tried to run (console-keymap-service "/path/to/keymap.map") and the changes did not take place
<dmarinoj>Does this line need to be put in the operating system config?
<yenda->yes
<yenda->dmarinoj: https://github.com/yenda/guix-config
<yenda->in the makefile you can see also how I get it to work in X too
<dmarinoj>Thanks! I really appreciate it!
<yenda->don't forget sudo guix system reconfigure /etc/config.scm
<dmarinoj>yeah, got it
<tennix>how do i use guix module in guile interactive shell?
<tennix>(use-modules (guix packages)) doesn't work
<tennix>ok, i got it, it needs to export SCHEME_LIBRARY_PATH=$HOME/.guix-profile/share/guile/site/2.0
<dmarinoj>yenda: thanks, worked like a charm
<tennix>i followed the manual "Defining packages" and defined hello package in hello.scm, but still can't figure out how to build hello with this file
<davexunit>tennix: set GUIX_PACKAGE_PATH to include the directory that the package is in
<davexunit>the file should be a guile module
<davexunit>and that module should export the variable that the package object is bound to
<francis7>mark_otaris, are you mark_weaver?
<mark_otaris>francis7: Nope.
<francis7>ok
<mark_otaris>Oh, that's right, we have similar nicknames.
<francis7>I have some exciting news for mark_weaver, so I'll wait for him to come here.
<francis7>If anyone sees him, tell him to PM me.
<mark_otaris>You can use MemoServ to send him a memo if it's short. Otherwise you might want to wait.
<yenda->here there is peek, you say "later say X blablabla" and when he connects to the chan peek will say blabla to him
<yenda->peek later say francis7 that ^
<yenda->ok fail
<yenda->sneek later tell francis s/peek/sneek :D
<sneek>Got it.
<francis7>later say mark_weaver PM francis7 for some good news
<sneek>Welcome back francis7, you have 1 message.
<sneek>francis7, yenda- says: s/peek/sneek :D
<francis7>peek later mark_weaver say PM francis7. he has some news for you.
<francis7>peek later say mark_weaver say PM francis7. he has some news for you.
<francis7>ah, I see
<francis7>wait
<francis7>sneek later say mark_weaver say PM francis7. he has some news for you.
<francis7>ok
<francis7>ok, I'm a noob
<francis7>sneek later tell mark_weaver PM francis7 for some good news
<sneek>Will do.
<francis7>yay
<yenda->:D sorry my bad
<yenda->Why does the adblock comming with icecat doesn't find any blockable item ever ? Am I the only one with this problem ?
<tennix>i can't compile a C program using gcc installed by guix, /usr/bin/ld: cannot find crt1.o: No such file or directory
<alezost>tennix: instead of 'gcc' package you need to install 'gcc-toolchain'
<tennix>yes, after installing gcc-toolchain, it works now
<tennix>thanks
<alezost>np
<tennix>BTW why there's gcc-toolchain besides gcc?
<tennix>when i'm using other distros, i only need to install gcc package
<alezost>guix/nix are not like other distros. I don't really know; my guess: gcc is a mysterious beast and it requires some special treatment
<yenda->damn it takes hours to download the world everytime I try a new kernel :(
<yenda->5 hours already for 3.2 and counting, and I'm not even sure why it needs to download anything
<yenda->does kernel change of kernel triggers change of other packages ?
<alezost>the kernel change only triggers the changes of the packages that depend on it, definitely not all of the packages
<DusXMT>interesting; I'm using a custom kernel on Guix and it doesn't need to recompile anything... but then again, mine is a separate package that inherits from the official one
<DusXMT>s/interesting; //
<yenda->DusXMT: Could you share the source ?
<yenda->* 6th hours of download party
<DusXMT>yenda-: sure, but it may be a bit dusty, I haven't unfortunately had the time to play with guix for a while...
<DusXMT>yenda-: linux-custom.scm
<DusXMT>It probably could've been done simpler, but it did the trick for me
<DusXMT>I'm an idiot, http://paste.lisp.org/display/153255
<yenda->ty
<yenda->I am confused by the package definition (on the official as well), why is the build process described outside of the package, is it an old way of doing it or necessary for the kernel definition ?
<tennix>Where is the root's profile? I just make && make install, but i couldn't find /usr/local/var/guix/profiles/per-user/root
<tennix>only /usr/local/var/guix/profiles/per-user/tennix
<alezost>yenda-: what do you mean? It is not outside the package
<alezost>yenda-: oh, are you confused with "let"?
<alezost>tennix: then you probably don't have root profile
<tennix>why? is it because i installed it with sudo rather than as root user?
<alezost>tennix: are you talking about "make install"? Apparently it was installed into PREFIX
<alezost>tennix: it has nothing to do with a guix profile
<tennix>then how does profile generated
<alezost>tennix: I think it will be created when you install something there (using "# guix package -i …")
<alezost>ACTION has an empty root profile
<tennix>the manual says: The guix package must remain available in root???s profile, or it would become subject to garbage collection
<tennix>s/root???s/root's
<alezost>tennix: only if you used the binary installation
<tennix>so source installation can be without root's profile?
<alezost>yes
<tennix>ok. i think the manul should make this clear
<tennix>or newcomers would be confused
<alezost>tennix: I think it is clear: your quote was from the "binary installation" section
<tennix>ok, my fault
<yenda->alezost: I'm confuse because usually the build phase is modified in (modify-phases)
<alezost>yenda-: oh that: modify-phases syntax was added not so long ago. Previously we used 'alist-replace', etc.
<yenda->so could this be used also for this package ?
<alezost>yes, modify-phases is the current way to do these things.
<alezost>It is just a wrapper for alist-… procedures: <http://git.savannah.gnu.org/cgit/guix.git/tree/guix/build/utils.scm#n449>
<yenda->guix build linux-libre worked
<yenda->but sudo guix system reconfigure didn't :(
<yenda->12 hours of installation for nothing :D
<DusXMT>yenda-: actually, the kernel is still compiled, so if you fix your config without modifying it, you won't have to rebuild it
<DusXMT>Same goes for the other packages
<yenda->but I didn't change anything in the config
<DusXMT>s/without modifying it/without modifying the kernel recipe/
<yenda->DusXMT: I only downgraded the kernel to 3.2.69
<DusXMT>Could you pastebin the taillog of the failure? Might help if we can have a look
<yenda-> http://paste.lisp.org/+3A9D
<yenda->I think there is some extra step that I should have deleted or something
<DusXMT>hmm, seems like some things have changed since I last used GuixSD :) perhaps the code for the modules isn't aware of the possibility of a custom kernel?
<yenda->Tbh I only changed the version from 4.1.4 to 3.2.69 and the hash.
<yenda->I digged in the old commits and it doesn't go further than linux 3.11
<yenda->back then the definition was way simplier but I'm not sure it was fully functional though
<davexunit>yenda-: sorry I didn't see this earlier, but 3.2 is far too old for guix to work
<davexunit>well, maybe it's fine.
<davexunit>I was thinking that we needed newer than 3.8
<davexunit>due to namespace stuff that was finalized in that release
<davexunit>but that may not be true
<yenda->I don't have a choice linux-libre is not working since 3.2 for ati radeon
<davexunit>yes, but you also may not have a choice to use that version and have a working guix system
<davexunit>though I think I'm probably wrong about guix not working with that kernel version.
<davexunit>ACTION goes afk
<yenda->ok thanks for the info
<yenda->DusXMT: could you show me your config.scm ? Because I don't understand how to declare a custom kernel
<DusXMT>yenda-: http://paste.lisp.org/display/153266
<yenda->ty
<yenda->easier than I would expect :D
<DusXMT>Well, back when I was getting this to work, the initrd-creating-code was putting the modules of the non-custom kernel into the initrd image, so I had to define a bareboned-one with no modules for my purposes
<DusXMT>(if you do that, ensure you have all drivers needed to boot compiled in the kernel)
<dmarinoj>guix system reconfigure throws an error "build failed: no space left on device" but 32% of the disk space is used
<dmarinoj>Has anybody had this issue?
<xentrac>in my case it was trying to build on /tmp, which was on a small partition
<DusXMT>dmarinoj: it might be that you have a ramdisk on /tmp
<xentrac>so builds would fail with no space left on device just because /tmp was full
<dmarinoj>I only have 2 partitions, one for swap and one for the rootfs on an 8G virtual hard disk
<xentrac>and you don't have a ramdisk mounted on /tmp?
<xentrac>I was surprised when `guix pull` decided it needed to build several gigabytes of stuff
<xentrac>and ran out of disk space
<dmarinoj>No, /dev/sda1 is swap and /dev/sda2 is everything else
<xentrac>apparently building GCC needs more than 2G
<xentrac>more than the almost 3G I had free on /tmp
<dmarinoj>Should I resize the image?
<DusXMT>dmarinoj: what does this command report? $ df -h /tmp
<dmarinoj>7.3GG size 2.2G used 4.8G available
<dmarinoj>I also ran guix gc
<DusXMT>It's definitely possible that that's not enough; I remember that Seamonkey required over 6GB to build; but I only had a 10GB hard drive on that machine (had to use sshfs to access a dummy filesystem image from another machine, and then mount it where Gentoo would build packages :)
<dmarinoj>DusXMT: Does 16G sound good?
<DusXMT>dunno
<xentrac>this seems like a thing we should figure out
<dmarinoj>You could put the minimum disk space requirements in os config templates
<davexunit>mark_weaver: I pushed a commit that fixes the container tests, and I have an as-of-yet unpushed commit that updates our snapshot and re-enables the tests. the build completes successfully on my machine. shall I push it?
<yenda->I would like to use a libre and secure password manager for all the websites I use, is keepassX worth it ?
<paroneayea>yenda-: personally I recommend assword, though iirc it is not yet packaged in guix
<paroneayea>yenda-: mainly for 2 reasons:
<paroneayea>yenda-: `assword gui` if bound to a WM key can type your passwords into any X window
<paroneayea>no copy-pasta involved
<paroneayea>yenda-: also it's a very short python script that is just GPG wrapped json.
<paroneayea>yenda-: so easy to move formats if you need to
<yenda->you have to copy pass with keepassX ?
<paroneayea>yenda-: yup
<paroneayea>iirc
<paroneayea>it does have a "copy to clipboard" feature I think
<yenda->paroneayea: is assword still under ongoing development ?
<paroneayea>yenda-: I think it's not super actively developed. last commit was last year.
<mark_weaver>yenda-: I haven't looked closely at how it works, but as you probably know, GNU IceCat can remember passwords to web sites automatically, and if you look in the "Security" section of the IceCat preferences, you can optionally set a "Master password", which I would guess (hope?) works by encrypting the passwords.
<yenda->paroneayea: it uses xclip so it does programatic copy pasting ?
<paroneayea>yenda-: ymmv!
<paroneayea>yenda-: assword does not do programatic copy pasting
<paroneayea>assword actually enters keystrokes into the window
<paroneayea>yenda-: thus able to work some places where copy-pasta does not
<yenda->paroneayea: clever
<paroneayea>but do as you like!
<mark_weaver>I would not recommend keeping non-website passwords in such a complicated program as a modern web browser, but for passwords to web sites that you will use through a modern web browser anyway, I see no disadvantage.
<mark_weaver>yenda-: based on the article <http://lifehacker.com/5350375/how-to-recover-your-firefox-master-password> I guess that the passwords are indeed encrypted, since the article talks about how to specify a list of characters that your password contained to help the brute force recovery.
<mark_weaver>s/your password/your master password/
<paroneayea>no matter what you do, be sure you have backups! :)
<paroneayea>which is always true, but becomes more true once you do the (important!) task of switching all your passwords to being randomly generated
<mark_weaver>indeed
<yenda->firefox does automatic backups
<mark_weaver>fwiw, I recommend the "diceware" method of generating passphases
<mark_weaver> https://firstlook.org/theintercept/2015/03/26/passphrases-can-memorize-attackers-cant-guess/
<yenda->mark_weaver: I only used it for my passphrase, for passwords I would generate I don't care since the idea is to change them often or at least have them unique
<mark_weaver> https://en.wikipedia.org/wiki/Diceware
<mark_weaver>yenda-: agreed, such a strong passphrase is not appropriate for everything
<yenda->"Note that the passwords are always encrypted when saved to the logins.json file. It is only not safe because the encryption key is stored in the key3.db file and having access to this file is sufficient to decode the passwords. If you set a (strong) Master Password then an extra encryption level is added."
<yenda->So it's encrypted but not sure how good the encryption is and makes me wonder of portability of the password db
<yenda->3DES is the algorithm
<yenda->Now I remember the trauma :D I raged at the new firefox sync security model last year because they wrapped the encryption key to id/password identity while it was purely done with pairing devices before so they never had your encryption key
<yenda->well I probably misunderstood it, I guess I'll settle for it
<yenda->is there a way to reenable one specific blob in linux libre ? I tried everything the last few weeks to get my gpu to at least work for 2D graphics at native resolution but nothing worked (rollback to old kernel, experimental radeon patch provoked deadlock...).
<yenda->mark_weaver: btw does amd have the same kind of backdoor intel has with northbridge ?
<mark_weaver>yenda-: I vaguely recall that it can be done with linux-libre, but I don't know the details.
<mark_weaver>yenda-: #libreboot is the best place to ask that
<mark_weaver>yenda-: lxo on #libreboot is the person who makes linux-libre; he could surely answer your first question.
<yenda->I'm wondering because I want to punish amd for my troubles to replace their firmware, but in the meantime I can't help but thinking the tradeoff to embrace intel well supported graphics as recommended on trisquel is way way worst
<mark_weaver>why is it way worse?
<mark_weaver>well, we're obviously in a bad position
<yenda->as far as I understand the firmware for a gpu is loaded in the gpu, and the gpu is responsible for 2D and 3D acceleration, so it's job is merely randering. If I have to choose between a whole uncontrolled computer sitting between me, my machine and the network and one between my computer and the screen I choose the latter
<mark_weaver>well, the GPU typically has access to read and write arbitrary RAM, iiuc.
<yenda->even with dedicated ram ? I see it as a concern is devices such as the Pi which shares RAM with gpu but not on dedicated cards but I might be wrong
<mark_weaver>iirc, matthew garrett said so in http://hemingway.softwarelivre.org/fisl16/high/40t/sala_40t-high-201507111600.ogv
<mark_weaver>anyway, you wrote "If I have to choose" [between two bad options], but afaict those aren't your only options.
<mark_weaver>but anyway, if you want to load blobs, then I guess you want to just package up Linus's blobbed 'linux', which isn't hard to do with guix.
<yenda->the thing is that I only coined my need to 1 single problematic missing firmware all the rest is fine. And I wish I could still run linux-libre with this one until I replace the gpu
<xentrac>typically most device drivers actually have the ability to read and write arbitrary RAM
<xentrac>I mean device firmwares
<xentrac>for devices that have DMA
<mark_weaver>yenda-: I vaguely recall that linux-libre was designed to allow individual firmware blobs to be made available on the filesystem and loaded, although it had to be done in such a way that the error messages didn't constitute an invitation to install the blob.
<mark_weaver>but I suspect that in practice the feature is almost never used, and I can't find documentation for it.
<mark_weaver>but lxo on #libreboot would know
<xentrac>it doesn't totally have to be that way. the 360 (or 370?) "channel" architecture limited the access that peripherals had to main memory
<yenda->mark_weaver: you mean lxo would now about how to load a blob in linux-libre on #libreboot ? or you are talking about the ram sharing thing?
<mark_weaver>yenda-: lxo is the creator and maintainer for linux-libre. he would know whether it is possible to enable loading the radeon blob with linux-libre.
<mark_weaver>other people on #libreboot might know whether the radeon can access arbitrary system RAM.
<yenda->well he said I might be able to patch for my gpu as well but I don't see the point of running a massive gpu just to have native resolution I thing it would be more rational to just try to fix the deadlock problem with the integrated chipset
<mark_weaver>yenda-: sounds good to me!
<yenda->except for the fact that I think it is outside of my skill scope for now :(
<yenda->mark_weaver: you link doesn't help with the paranoia :D