IRC channel logs

2020-02-09.log

back to list of logs

<drakonis>so, how to handle package collisions between channels when installing with guix?
<pkill9>drakonis: you mean packages with the same name?
<pkill9>or that install files to the same place?
<drakonis>same name, yes.
<drakonis>the latter is also important
<bandali>hmm, i know guix prints a warning and tells you which definition it chooses
<bandali>(for same name)
<drakonis>hm, neat.
<drakonis>didn't know that was a thing
<bandali>but not sure how specify which channel to choose it from, perhaps besides order of channels in your channels file
<bandali>yeah, i accidentally ran into it the other day when i forgot to remove a package definition from my channel after landing it in guix proper
<pkill9>you can refer to the variable with a guix expression, e.g. `guix build -e '(use-modules (module)) package-variable'
<pkill9>i think you just have to ensure they have different names
<pkill9>or remove the package from the channel
<drakonis>trying to fix up some packages so i can send them upstream
<drakonis>and handling file collisions in this case?
<drakonis>hmm, better yet, what's the workflow for experimenting with packages?
<drakonis>ah finally i have a working channel.
<drakonis>up next, learning how to recursively copy files into the output because i can't get it to copy the folders i want
<pkill9>copy-file-recursively i think
<ngz>(copy-recursively "foo" "bar") copies (recursively) the _contents_ of "foo/" into "bar/"
<drakonis>i've been trying that but i have no idea of how the directory is internally structured
<drakonis>in the build
<ngz>insert a (invoke "ls") of some such in your phase.
<drakonis>hmm, i see.
<pkill9>you could also build with -K and kill it before it succeeds, then look in the build directory
<drakonis>my other issue is uh, i need to add a extra phase but it keeps choking out and dying
<SuperPidgen>Hi,How do GuixSystem deal with non-free driver?
<bandali>SuperPidgen, by not including any
<SuperPidgen>Install by my self?
<bandali>discussion of nonfree software is off-topic in this channel :-) being a GNU project, we won't endorse or explain to users how to sabotage their freedom
<bandali>drakonis, re experimenting with packages: if they are or they are to be included in upstream guix, what I do is build guix from git, and then use ./pre-inst-env guix to build/experiment with my local clone of guix.git
<bandali>but i also have a personal channel that i use for that
<SuperPidgen>bandali, You are right. But Seems GuixSystem was not good to work with my graphics card.
<bandali>SuperPidgen, your graphics card may be not good to not work with free and user-respecting software :-) i can empathize
<bandali>for example, my laptop's built-in wireless card doesn't work without requiring proprietary firmware. so what i do is use a usb wifi dongle
<SuperPidgen>Okay, Thanks. that's a way.
<bandali>cheers :-) h-node.org has a nice catalogue of free software-friendly hardware
<SuperPidgen>Thanks :-)
<bandali>cheers!
<drakonis>there's always a way.
<drakonis>anyways, i'll go out and be back later
<drakonis>so, an interesting random thing that came up on
<drakonis>#scheme, make available an subset of guix for the explicit purpose of creating a deployment system for language specific packages that doesn't require all the guix specific parts
<drakonis>replace other language build systems
<oriansj>drakonis: reducing guix's scheme load; does also have advantages for enablin easier porting to alternate schemes (and enabling bootstrapping to the metal)
<drakonis>yes
<oriansj>speaking of which I wonder how many schemers would be open to helping with the guile bootstrap problem
<drakonis>go visit #scheme for that one
<oni-on-ion>self-hosting ?
<drakonis>would be nice.
<drakonis>the goal for it would be to be able to handle deploying languages without explicitly pulling in all the other guix bits that arent relevant to the particular workload
<drakonis>and have the ability to eventually have something like guix on racket
<drakonis>what would we call it in this case tho :V?
<drakonis>as its already short for guile nix
<drakonis>a friend ran into issues while trying to use nix for building their rust project
<drakonis>building it requires having the entirety of nix plus pulling in whatever's in nixpkgs at the time
<drakonis>so it can be a big dealbreaker
<oni-on-ion>nix is a build tool? =p
<oni-on-ion>haven't come across it yet in the wild
<drakonis>it can be used as such
<oriansj>well it certainly ensures that the build will happen
<drakonis>but it is normally used in tandem with other build systems and not on its own
<oni-on-ion>ah yeah. most recently i was using the build tool for ocaml, dune. it has s-exp syntax and is rather pleasant when knowing what it expects
<drakonis>dune is nice.
<oriansj>drakonis: except when the builds are "trivial"
<drakonis>yes
<drakonis>trivial is relative
<drakonis>as they have build automagic
<oriansj>drakonis: seriously? why bother automagic when you can demand exact build dependencies?
<drakonis>lol they do automagic based on dependencies
<drakonis>one sec
<oriansj>which they can explictly specify?
<drakonis> https://nixos.org/nixpkgs/manual/#ssec-setup-hooks
<oriansj>So they use a tool to detect the things, they just explicitly ensured to be there in an exact form...
<drakonis>so, if i include python in the definition, it'll add a python hook
<drakonis>if i include x package that has hooks, it'll be included in the build
<drakonis>rather than being declared as "this thing needs this specific build system"
<drakonis>and there's an standard environment that comes with various packages that include these hooks
<drakonis>its notably less elegant than guix right now
<drakonis>so, basically, yes.
<lispmacs>is guile 3.0 not in guix yet?
<lispmacs>as a package?
<drakonis>it is, yes.
<drakonis>as guile-next?
<drakonis>why wouldnt it be when guix itself runs on 3.0?
<lispmacs>in package definitions, then, do I have to use guile-next, or guile-3.0
<drakonis>guile-next maybe?
<drakonis>as there's no guile-3.0 i think?
<drakonis>sj
<drakonis>ah nvm
<drakonis>there's guile-3.0, go use that
<lispmacs>okay, just confused then why guile version 3.0 does not show up as a package in a search
<drakonis>it exists as a target but the package name is guile-next
<drakonis>because it wasnt renamed yet
<Telior>Hi guix! I'm getting "chsh: PAM: Authentication failure" after I run "chsh -s /home/Telior/.guix-profile/bin/fish", what am I doing wrong?
<drakonis>is this guix standalone or system?
<Telior>standalone as in just the package manager on another distro? it's guix sd :)
<drakonis>ah, that'd be guix system these days
<drakonis>youyou can set the default shell for your user on your system config
<drakonis>also chsh needs to be elevated
<drakonis>though i'd recommend changing it on your system config instead
<drakonis>the 'shell' field should let you do that
<drakonis>you set to a package
<drakonis>ah, sorry, the name of a file.
<Telior>ok, so something like "(services (append (list `(("/bin/fish" ,(file-append fish "/bin/fish")))%base-services)))"? or do I need to change something there?
<drakonis>oh no no
<drakonis>you know the section you declare your users?
<drakonis>you add (shell "fish")
<Telior>'=D
<Telior>ahh
<drakonis>to the user you want
<Telior>like under (name "Telior"), in this case?
<Telior>(name "Telior")(shell "fish")
<Telior>?
<drakonis>yeah?
<oni-on-ion>delishioush shell fish
<drakonis>should be your shell on your next login
<Telior>noice, tyvm :)
<drakonis>hmm, docs say it should be a g-expression
<drakonis>should be good to check up docs with "info guix"
<drakonis>if this advice fails you
<Telior>that's the same as the online reference manual, right?
<drakonis>yes
<drakonis>its from where i took what i told you
<Telior>I check it before asking in IRC but it's not always clear to me what I'm supposed to do. For example, I couldn't find a modified shell in the example setups given there. Where did you take it from?
<drakonis>from system configuration
<drakonis>user accounts
<drakonis>it does say that a g-expression should be used in that field
<drakonis>shouldnt be too complex
<oni-on-ion>ok, guix installed into debian. not sure what else to do right now, but i will start using that moving forward in my package-dealings
<drakonis>it means its time to experiment
<drakonis>i wish i didnt have to rebuild every time i changed a phase
<drakonis>as the output hasnt changed yet
<oni-on-ion>hmm =)
<Telior>ok I'm getting some errors when I try to reconfigure: https://paste.debian.net/1129844/
<Telior>thought it was the fish bit I added but I removed it and keep getting the same errors
<drakonis>ah these are warnings not errors
<bavier`>those warnings not caused noticable problems for me
<bavier`>they started appearing around the guile@3 migration
<bavier`>it would be nice if we could quite them
<bavier`>s/quite/quiet
<Telior>so the reconfigure was successful? usually it takes a while and it downloads a bunch of stuff
<drakonis>yes
<drakonis>it didnt need to redownload anything because fish is already in the store
<drakonis>just for good measure, set it back and log from a tty
<drakonis>just to see if fish will be available
<Telior>ok I rebooted and my user's gone D:
<Telior>I'm greeted by a "Username" prompt, and if I fill in username and pw it just sends me back to the initial promtp
<Telior>prompt*
<drakonis>oh
<drakonis>well
<drakonis>time for a rollback
<Telior>If I log from tty3 and fill in my name and pw it says "Cannot execute fish: No such file or directory"
<drakonis>i told you to log into a tty before rebooting
<Telior>I did D:
<drakonis>its because it takes in a g-expression to provide the path to it
<Telior>and "whereis fish" gave me the gnu store address of fish
<drakonis>dont set the store address
<drakonis>that's why the expression exists
<drakonis>now uhh
<drakonis>i'm not so good with those atm, so refer to docs to help with it
<Telior>oh, I didn't put the store address in the config file, but since running whereis fish gave me the location of fish in the store, I thought that meant it was available
<drakonis>(string-append #$coreutils "/bin/ls") might do it?
<drakonis>uh
<drakonis>except replace coreutils with fish and /bin/ls to /bin/fish?
<lispmacs>I'm trying to update a package definition to recent Guix and to guile-3.0 input. But during bootstrap phase I get error `command "autoreconf" "-vif" failed with status 127'
<drakonis>it will point directly to the shell path you want
<drakonis>and it will be updated every time you rebuild the system and fish changes path
<lispmacs> http://dpaste.com/2WM48S8
<drakonis>hmm, how do i get the source inputs?
<drakonis>or nevermind, i messed something up
<lispmacs>going to try to reproduce in environment
<drakonis>Telior: log in as root and rebuild with the line as input for the shell variable
<drakonis>YESSS my first patch
<drakonis>its real now
<drakonis>LET THERE BE AUDIO FOR MY DOOMY STUFF
<drakonis>ah wait, still have a problem, i need to access the extracted tarball
<Telior>I get "error: (string-append (ungexp coreutils) "/bin/fish"): invalid field specifier
<Telior>"
<drakonis>actually you need #$
<drakonis>#$fish
<drakonis>where did that ungexp come from?
<drakonis>ah, its probably best if you check up the docs on g-expressions for that
<Telior>ah forgot to change coreutils for fish, but even then, I still get (ungexp fish...)
<Telior>in the config.scm file I used #$, but in the error message I get ungexp
<drakonis>do (string-append #$fish "/bin/fish")
<Telior>I did, same error
<drakonis>hmm, check the docs for writing g-exp then
<drakonis>welp
<commanderkeen>i've only been using guix for a few days but i cant stop
<commanderkeen>should i seek help?
<drakonis>is that a problem tho?
<Telior>ok, so I deleted the whole fish line from my config.scm, but now I get "error: (user-account (name "Telior") (comment [...] group, home directory, supplementary-group fields [...]))): extraneous field initializers (supplementary-group)"
<Telior>X)
<drakonis>looks like you ate a paren
<drakonis>hmm
<Telior>I have this on my users bit in the config.scm: https://paste.debian.net/1129845/
<Telior>I think all the parens are there
<drakonis>all here
<drakonis>i'm trying to build my own thing here
<Telior>ok, so I'm trying out the rollback options from the 4.2 section of the manual, but switch-generation and roll-back return errors
<Telior>for example, guix package -p Telior --switch-generation=3 says "error: open-file: Read-only file system: "Telior.lock""
<drakonis>you can rollback by booting into an older generation
<drakonis>and that's profile rollbacking, not system you're doing
<Telior>that's from GRUB, right?
<Telior>I have the timeout set to 0 >_<
<Telior>ahm I added "-p Telior" because simply putting "guix package --roll-back" returns "error: profile 'var/guix/profiles/per-user/root/guix-profile' does not exist"
<drakonis>that's user profiles, not system rollbacking as far as i'm aware
<drakonis>try guix system roll-back for this
<Telior>"error: roll-back: unrecognized option
<Telior>"
<drakonis>guix system roll-back
<drakonis>did you forget system?
<Telior>ah I didn't, but I used "guix system --roll-back", I think it's working now with plan roll-back
<Telior>:D :D :D it worked :D :D :D
<Telior>that was a bit scary lol
<drakonis>rolling back mistakes is nice.
<nexgen>hello
<nexgen>I do not see rspamd in your repos
<nexgen>even postfix is missing!
<nexgen>how is it possible?
<bandali>hi, i think people simply haven’t needed them so far
<bandali>i see we have an exim package
<bandali>i think there was an attempt to package postfix a while ago
<Telior>drakonis think I need to dip my toes a bit more in lisp and scheme before trying to mess with the config file again lol, but tyvm for all the help :)
<nexgen>I need a more recent RSPAMD than it is in Devuan
<nexgen>Postfix+RSPAMD
<nexgen>already installed and partially configured it on Devuan
<nexgen>Alpine has the latest v1.x version though
<bandali>feel free to try your hand at writing package definitions for them :-)
<nexgen>Btw, do you provide verification of installed file checksums?
<nexgen>I would be glad if at least your package manager supports checksum verification
<bandali>i’ll eventually attempt them, as i’d like to move my mail server to guix as well, but i personally don’t have much free time on my hands right now
<nexgen>like rpm -V and debsums
<bandali>i’m not familiar with those; can you give a concrete example of what you mean?
<bandali>guix normally by definition checks shasums, since they’re normally part of a package’s definition
<nexgen>please look at: https://wiki.archlinux.org/index.php/Pacman/Rosetta#Verification_and_repair
<nexgen>how to check if package binaries are still authentic unchanged after a while after installation ?
<nexgen>say install dovecot
<nexgen>a month passed
<nexgen>a hacked changed some files unnoticed
<nexgen>how can I discover the changes?
<nexgen>a *hacker
<bandali>i’m not sure. perhaps try asking on the help-guix@ list
<bandali>i know we have ‘guix hash’
<bandali>and hashes are part of a packge’s definition. e.g. https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/lean.scm#n37
<bandali>not sure if we have anything for checking of package sums after they’re installed to /gnu/store/
<str1ngs>that's only a source hash
<bandali>right
<nexgen>do you have a hash for each file in the package or only for a whole package?
<bandali>the latter i believe
<str1ngs>guix has other hashing I'm not sure how the algo works for inputs and outputs
<str1ngs>it's quite possible guix does not need per file hashing because it has package output hashing
<nexgen>without per file hash it is not possible to verify installed files after a while
<nexgen>only compare them to a copy extracted from a package again
<str1ngs>sure you can if you recursive hash and sum a directory
<CompanionCube>store's immutable anyway, no?
<nexgen>extract again, then comparem - not convenient
<bandali>yeah, i don’t think we *need* per-file hashes for that
<str1ngs>guix is more top down in the regards not to mention it handles inputs as well.
<nexgen>for example Debian way:
<str1ngs>s/the/this
<nexgen>wajig integrity
<str1ngs>please lets not compare other package mangers to guix it's an apple to oranges thing
<nexgen>its output includes even a list of changes files in /etc/
<nexgen>convenient to see which files were changes by me during the whole time
<bandali>but here’s the thing: with guix one doesn’t ‘change the files’ after installing a package
<nexgen>why not compare them in the area of file verification
<nexgen>even configs?
<bandali>system-wide configs? yes
<CompanionCube>whole shebang's immutable
<bandali>one configures the packages through a config.scm file
<CompanionCube>there are no updates, only new files.
<str1ngs> /etc is declarative. you can't compare that to Debian's /etc at all
<nexgen>not sure, how do I configure a dovecot daemon without modifications in /etc/dovecot ?
<bandali>like this: https://git.sr.ht/~bandali/dotfiles/tree/master/.config/guix/system/chaman.scm
<str1ngs>declartively with config.scm
<bandali>see line 59
<nexgen>well, can I still use old method of editing /etc/ conf files?
<str1ngs>so simply running guix system build ./config.scm will tell you if something is wront
<nexgen>while not familiar with gule
<str1ngs>wrong*
<CompanionCube>on guix system? no
<bandali>not sure if it’s possible or not, but it’s heavily discouraged
<CompanionCube>what about standalome though? I wonder how that'd work.
<bandali>also, some package services allow you to provide a drop-in replacement config file rather than doing it in guile
<bandali>i think the dovecot service is one such example
<str1ngs>you can copy local files. but it's still declarative at the end of the day
<str1ngs>and most things are immutable
<bandali>^
<str1ngs>so in that regards I would think that guix system build will indicated if something was changed
<nexgen>GUIX automatically converts old style conf files to its own gule logical structures?
<bandali>i don’t think so, but some services allow you to configure their package with a config file/string
<str1ngs>not automatically there are service helpers etc that help with that.
<bandali>which is what the guile bits ultimately get translated into
<nexgen>well, looks nice
<CompanionCube>nexgen: other way around
<CompanionCube>guix takes in guile logical structures
<nexgen>but binary verification is still needed IMHO
<CompanionCube>puts out the config file somewhere
<str1ngs>not to mention it's atomic and you can roll back. and repeat your system configuration on any machine etc etc
<str1ngs>so we really should not be comparing guix to debian. :)
<nexgen>how can I know if my current installation is not corrupted without replicating it to another host to be sure it is good at least in a new incarnation ?
<str1ngs>again guix verfications works top down. not on a per file bases.
<nexgen>say someone changes /bin/bash->/xxx/bash
<nexgen>places a trojan into it already after installation
<str1ngs>bash is symlink in the store first off
<nexgen>how can I discover this?
<str1ngs>so it's going to be really hard to change that
<nexgen>lets a trojan is in the store
<CompanionCube>str1ngs: well if you're root you can do anything
<str1ngs>right but then bashs output has would be wrong
<CompanionCube>like say, replace the binary verification tool with your own version that always returns 0
<str1ngs>I'm pretty sure guix would complain about that . try it out :)
<CompanionCube>nexgen: what happens on debian if attacker replaces debsums after trojaning bash
<nexgen>at least it is easy to verify bash and verification tool in advance from a trusted boot source like LiveCD
<nexgen>and then chroot and execute whole system verification
<nexgen>provided bash and check tools are good for sure
<nexgen>package database too
*CompanionCube thinks trying to determine what an attacker with the highest level of privilege has done with decent certainty is a futile endeavour
<lispmacs>seems like in principle it shouldn't be difficult to come up with a script that recursively verefies checksums of all packages given a profile derivation
<bandali>hmm, yeah maybe
<lispmacs>that save copy of the profile derivation somewhere safe off system
<lispmacs>*than
<bandali>but i personally think if someone gets root on your system all bets are off
<bandali> https://www.cs.cmu.edu/~rdriley/487/papers/Thompson_1984_ReflectionsonTrustingTrust.pdf is a fascinating read
<str1ngs>I'm not sure if it's need. it really depends on guix output algo and when it verfices
<str1ngs>verifies
<nexgen>often hacked systems are not destroyed
<CompanionCube>bandali: yep, also relevant to guix in teems of bootstrapping
<str1ngs>its quit possible just running guix system build well verify all outputs for the sytem
<bandali>CompanionCube, exactly
<nexgen>only backdoors are injected
<bandali>nexgen, if you get a chance, read the pdf i posted
<nexgen>gcc bootstrapping seems to be unique feature of GUIX
<CompanionCube>nexgen: true, but given root can by definition do anything and cover it up by default, there's no feasible way to see what they covered up
<nexgen>thanks for the link
<bandali>cheers
<lispmacs>it seems like solution is still someway related to having safe copy of profile (or system) derivation somewhere, then just checking sums. but to be really thorough, sum checking tools must be from off system, with system drive unmounted
<nexgen>then it is easier just to use ZFS for rootfs
<CompanionCube>lispmacs: an alternate way is to impose limifs on root
<nexgen>and then do zfs diff for the directories of the store
<bandali>i think this would be worth a discussion on one of the guix mailing lists
<nexgen>I would not trust any security like LSM, container, capabilities, etc.
<nexgen>just isolate hardware
<nexgen>and still need a method to verify files are still not hacked
<nexgen>many SoCs like Beaglebone black are more secure than a the same amount of KVM VMs
<str1ngs>assuming you trust the hardware firmware :P
<nexgen>my idea is just to distribute services among the SoC boards instead of trying to fight with Spectre, IntelME, etc. many many other holes
<nexgen>the older the board the better
<CompanionCube>re ZFS: <insert FSF rant about license politics here>
<nexgen>may be ARM v4/5
*CompanionCube says the above jokingly as a ZFS and guix user
<nexgen>or even very rare old hardware
<nexgen>and pure software emulation of another even more rare hardware on them may help?
<CompanionCube>older != better
<str1ngs>sure run novell in dosbox :P
<nexgen>ZFS can be used on a FreeBSD if licensing issues matters, then share ZVOLs via iSCSI
<CompanionCube>good luck trying to mitigate say, DMA attacks on old hardware with no IOMMU.
<nexgen>just isolate each service
<nexgen>and hardware part
<nexgen>isolate disks via iSCSI on dedicated disk host
<nexgen>and no DMA from disk firmwares anymore
<nexgen>boot from only encrypted containers starting from Libreboot with luks v1 in BIOS chips
<nexgen>use old IDE drives for booting
<nexgen>20 years old
<CompanionCube>why old IDE
<CompanionCube>it's not like old drives are magically secure
<nexgen>they miss modern powerful MCU boards which can inject trojans into boot sectors
<CompanionCube>You want the maximum securiy computer? It's turned off.
<nexgen>but if booting from BIOS chips it is not so much important
<nexgen>I want secure computer powered on and not expensive
<nexgen>:)
<CompanionCube>something like QubesOS then
<nexgen>it uses hardware virtualization, then it is not secure
<nexgen>only emulation can be trusted
<CompanionCube>orly
<nexgen>and dedicated boards
<CompanionCube>where's the backdoor in my AMD FX-8350's AMD-V
<nexgen>there are rumors about IntelME like, but not disclosed yet
<nexgen>pre PSP
<CompanionCube>also, how you gonna verify the absence of a SMM backdoor in your old CPUs?
<nexgen>there is FreeBIOS and Libreboot
<CompanionCube>what if there's blobs elsewhere in the CPU
<nexgen>cannot do anything with CPU itself of course
<nexgen>only software emulation like an alternative for matrix boards
<nexgen>LibreSilicone + Open source like RISCV
<nexgen>but it is the future
<nexgen>for now only emulation
<CompanionCube>now we're getting somewhere
<CompanionCube>i mean, if you want maximum security from hackers you need to go the often-proprietary route of requiring all executable code be signed by you
<CompanionCube>hacker modifies /bin/bash? Guess that won't run anymore.
<commanderkeen>good conversation. but what's it called in guix for multiple machine builds? i cant remember what it's called but remember seeing it somewhere
<commanderkeen>like distcc but for guix
<CompanionCube>offload?
<nexgen>cannot a hacker modify a module which checks signatures?
<commanderkeen>CompanionCube: yes. thank you
<CompanionCube>nexgen: well, that depends how deep you're willing to go with it
<CompanionCube>again, see the KTH mentioned up
<nexgen>For now I would like to rely on ZFS diff
<nexgen>but to avoid VM to have ZFS inside it
<nexgen>not sure how to do this except rsyncing with --dry-run from external ZVOl snapshots
<nexgen>passing external FS via 9p is not secure too
<nexgen>though it would be nice to pass through external ZFS directly, not blocks from "zfs diff" point of view
<NieDzejkob>shtwzrd: > hint: After setting `PATH', run `hash guix' to make sure your shell refers to /home/rock/.config/guix/current/bin/guix <- that's your problem. Normal pulls weren't working either, you just didn't notice
<NieDzejkob>Telior: two things: it's supplementary-groups, plural, hence the error. Also, use either (file-append fish "/bin/fish") or #~(string-append #$fish "/bin/fish"). I consider the former the much nicer alternative
<NieDzejkob>ah they're not here.
<NieDzejkob>sneek: later tell Telior: two things: it's supplementary-groups, plural, hence the error. Also, use either (file-append fish "/bin/fish") or #~(string-append #$fish "/bin/fish"). I consider the former the much nicer alternative
<sneek>Okay.
***paprika is now known as strawberyy
***strawberyy is now known as strawberry
***strawberry is now known as paprika
<paprika>I'm used to be able to browse others systems file systems on other distros through ssh in my filemanager
<paprika>though I don't seem to be able to get it to work on Guix System
<paprika>any idea?
<PotentialUser-97>Hi all
<bricewge>Hello PotentialUser-97
<bricewge>paprika: I can't see why you couldn't do it in Guix.
<PotentialUser-97>Are all guix utilities+features independent of kernel?
<PotentialUser-97>i.e. when hurd or any new kernel becomes available, would guix utilites work?
<bricewge>That's the plan, but probably some features will need some adjusting,`guix environment --container` for example.
***Kimapr__ is now known as Kimapr
<NieDzejkob>paprika: does the ssh command itself work?
<olivuser>hello everyone!
<olivuser>I've got a couple of questions that maybe some of you might be able to help with.
<olivuser>First: why is it that gdm displays DEs that have not been installed (Openbox in my case) or have been uninstalled a while ago (GNOME), even after "delete-generations" commands and guix gc? I have LXQt, Xfce and dwm installed.
<olivuser>Second: is anyone else experiencing problems with LXQt? I had it working many generations ago - which have been deleted in the meantime -, then uninstalled and now reinstalled. First, I had only "lxqt" in my system profile, but then went on to install all packages with a "lxqt"-prefix. Now, when I try to login to LXQt, I enter what is essentially a blackscreen with a cursors, with the incapacity for command input (I cant enter VTs
<olivuser>other than VT7, though)
<olivuser>(I can enter VTs other than VT7, though)
<pkill9>olivuser: are there entries in /run/current-system/profile/share/xsession?
<olivuser>pkill9, yes. dwm.desktop, lxqt.desktop, openbox.desktop (with *-gnome/kde variants), xfce.desktop
<pkill9>have you reconfigured your system?
<pkill9>can you post your config
<olivuser>pkill9, yes, kind of a dozen times by now :D first off, the commands and their order: `guix pull && sudo guix system reconfigure /path/to/file.scm`
<olivuser>and: you mean my os-config file, right?
<pkill9>yea
<olivuser> https://paste.debian.net/1129875
<paprika>NieDzejkob: yes ssh works fine
<pkill9>olivuser: i dunno, have you tried rebooting?
<pkill9>weird
<pkill9>and see if /run/current-system/configuration.scm is what you reconfigured with
<pkill9>otherwise *shrugU
<pkill9>*shrug**
<olivuser>pkill9, yeah it is, at least regarding the parts that relate to lxqt. Do you have an idea whom I could ask? Would this be something for the issue tracker?
<vits95>Hi! How can i set the mount options in sys config?
<paprika>and scp works fine too, NieDzejkob
<oriansj>bandali, nexgen: you forgot the firmware rewrite attacks possible with root access. Such as in classics as print to root: how to own printers with just a pdf.
***deesix_ is now known as deesix
<vits95>how to use (options ) for file-system? XD
<pkill9>olivuser: i would ask in here later when there's other people who'll see, and yea post to the issue tracker
<olivuser>another question: in icecat, numbers are not shown. is this a font issue, is anyone else having trouble with this?
<NieDzejkob>olivuser: font issue
<NieDzejkob>personally, I've got font-dejavu, font-liberation and font-google-noto installed, no issues with any characters whatsoever
<NieDzejkob>(font-google-noto is like a gigabyte, though)
<NieDzejkob>oh, and if you install it in your user profile, you'll need to run fc-cache
<olivuser>NieDzejkob, apparently it is also an open issue in the issue tracker. Am currently trying to solve the issue by installing `font-gnu-freefont-ttf`which is what is suggested by https://issues.guix.gnu.org/issue/39073. Thanks for the "fc-cache" tip, though!
<vits95>Ok, info guix have ''()'. HTML shows simple '() i got it. And common flags, like noatime should be passed not throught the (options
<str1ngs> vits95 do you mean it should be (options '(noatime)) ?
<vits95>No. It will no fly.
<vits95>(flags '(no-atime))
<vits95>str1ngs, good day ;)
<str1ngs>glad you got it sorted out :)
<alextee[m]>anyone deployed guix on hetzner servers?
*kmicu saw similar topics on guix ml https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00195.html
<bandali>oriansj, right!
<vits95>how to pass option compress-force=lzo to btrfs in sys.scm
<vits95>?
<NieDzejkob>(file-system (mount-point "/whatever") (type "btrfs") (device ...) (options "compress-force=lzo")) should work
<vits95>thanks, testing...
<vits95>Maybe i'd found a bug: my user's "comment" survives the guix system reconfigure
<vits95>NieDzejkob, indeed it works. Thanks again.
<alextee[m]>kmicu: thanks!
<OriansJ>bandali: what is even more scary are the firmware rewrite attacks that don't require elavated permissions
<str1ngs>time to form FHF :)
<bandali>OriansJ, very interesting; i know next to none about those
<OriansJ>combine with classes of attack such as rowhammer, meltdown and spectre; one has an argument that we need to start making our own hardware and designing it with care and love
***Palpares is now known as palpares
<bandali>aha
<bandali>str1ngs, FHF indeed :p
<NieDzejkob>OriansJ: what are you referring to here?
<str1ngs>big take away there is "love" :)
<NieDzejkob>any links to read about?
<OriansJ>bandali: the worst ones are the Hard drive controllers.
<bandali>OriansJ, ah that makes a lot of sense, actually
<OriansJ>NieDzejkob: it is quite old: https://hackaday.com/2015/06/08/hard-drive-rootkit-is-frighteningly-persistent/
<str1ngs>one huge draw to hardware is it requires developers to invest there own $ to test and develop for that hardware. it's not like you can just download and decompress a tarball to work on it.
<OriansJ>why do you think chromebooks has the firmware write switch (or screw)?
<OriansJ>It is really hard to uncompromise firmware
<OriansJ>Has no one else heard of The Equation Group?
<g_bor[m]>Hello guix!
<str1ngs>hello g_bor[m]
<NieDzejkob>OriansJ: AFAICS this still requires elevated permissions
<g_bor[m]>I just did a writeup of the current status of Outreachy.
<OriansJ>Short version if you have a device that has upgradable firmware, that doesn't require a manual process to enable updating; your firmware can be "upgraded" at any time.
<bricewge>By what should I replace @@ in Guile 3? I have read the Guix bog post and the related manual links (6.20.{2,9}) but I can't manage to get anything practical out of it.
<g_bor[m]>I would like to publish it soon,as the Outreachy Twitter Chat is on the 11th.
<str1ngs>g_bor[m]: Outreachy for Guix or Outreachy in general?
<g_bor[m]>Is it ok to push a blog post now?
<g_bor[m]>str1ngs: the chat is for Outreachy general.
<NieDzejkob>bricewge: what do you need @@ for?
<g_bor[m]>The post is about Outreachy for Guix.
<str1ngs>g_bor[m]: ah that interesting. btw I think you helped with nomad's GoSC proposal?
<OriansJ>NieDzejkob: not exactly, on systems without an IOMMU there is a bit of an issue...
<NieDzejkob>OriansJ: IO ports still can't be accessed in Ring 3, even without an IOMMU
<janneke>g_bor[m]: you can alway push do website/drafts?
<str1ngs>bricewge: in what case do you need @@?
<OriansJ>NieDzejkob: Sinkhole begs to differ but that is a whole different discussion.
<bricewge>NieDzejkob: I want operating-system-firmware and operating-system-keyboard-layout from (gnu system).
<bandali>OriansJ, btw would you check #scheme as well
<g_bor[m]>str1ngs: I helped as much as I could, which was not too much. I offered to fill in my contact details, and told them to reach out to GNU, as they are the official org.
<g_bor[m]>janneke: ok.
<g_bor[m]>How does it go live then?
<str1ngs>g_bor[m]: your help was appreciated thank you.
<bricewge>str1ngs: I want a binding that isn't exported by it's module.
<g_bor[m]>It is actually only a minor edit of the previous one.
<janneke>g_bor[m]: when "someone" (you?) move it from drafts into posts/
<g_bor[m]>str1ngs: yw.
<g_bor[m]>janneke: :)
<janneke>g_bor[m]: ah, i would think OK to push/publish then?
<g_bor[m]>ok, that makes sense.
<NieDzejkob>OriansJ: Are you referring to "The Memory Sinkhole"?
<str1ngs>g_bor[m]: I'm hoping to one day elevate the project to GNU from nongnu. lots of work to do still. but it's fun either way :)
<OriansJ>bandali: doing that now
<janneke>we have been using drafts/ for when more input is needed
<bandali>OriansJ, thank you :-)
<g_bor[m]>janneke: ok, thanks.
<str1ngs>bricewge: ah @@ won't help you there anyways you would need @ instead. I'm guessing @ no longer works either?
<str1ngs>bricewge: nvm I have those reversed for some reason. @@ is right
<str1ngs>bricewge: maybe you can use save-module-excursion with set-current-module to export the binding.
<str1ngs>bricewge: see https://www.gnu.org/software/guile/manual/html_node/Module-System-Reflection.html
<bricewge>Thanks str1ngs , I didn't read this page. reload-module may be what I'm looking for, I'll give it a try,
<str1ngs>bricewge: maybe it's best to ask in #guile. I'm not sure my suggestion will work either :(
<bricewge>str1ngs: (module-ref (resolve-module '(gnu system)) 'operating-system-keyboard-layout) do what I want.
<str1ngs>bricewge: ahh good know. thanks
<vits95>(((((I want to set a keyboard layout))))) i like it :)
<vits95>Like in that comic: "your built a ((((((((((horse))))))))))
<str1ngs>after awhile you don't see parentheses. we call that nirvana :)
<g_bor[m]>liberdiko: I believe this should be exported.
<NieDzejkob>OriansJ: I checked, and The Memory Sinkhole also doesn't let you access I/O from Ring 3
<bricewge>g_bor: I'm also using operating-system-firmware. Should I submit a patch with all operating-system-* exported?
<OriansJ>NieDzejkob: interesting, as it allows one to write to priviledged memory to gain root
<OriansJ>as it is an APIC overlay attack.
<NieDzejkob>yeah, but you need ring 0 already to carry it out
<OriansJ>True;
<OriansJ>but given the last few years of hardware vulnerabilities; perhaps consider the possibility that if something untrusted is running on your machine there is a very good chance it can do harm in ways we don't quite know.
<OriansJ>It isn't just the things that you don't know that can hurt you in cyber security but also the things you know but are not quite so.
<OriansJ>Especially in this world of Benchmarks and power consumption being the basis for most people buying of hardware.
<NieDzejkob>aren't all of these hardware vulnerabilities just about data exfiltration?
<NieDzejkob>you claimed that there are attacks that gain persistency without any priviledges, though
<OriansJ>NieDzejkob: you are absolutely correct
<OriansJ>the primary reason for exfiltration is to facilitate access.
<OriansJ>have you seen: https://en.wikipedia.org/wiki/Fwupd yet?
<OriansJ>and I quote "By default, any users are able to update signed firmware for removable hardware. "
<NieDzejkob>"signed"
<NieDzejkob>though I can't find your quote on that page
<OriansJ> https://fwupd.org/lvfs/docs/users
***dustyweb` is now known as dustyweb
***modula is now known as defaultxr
***calher1 is now known as KE0VVT
<vits95>is there any issues with Wayland? I want to install sway as the only WM.
<mehlon>vits95: not that I remember, but it's not hard to set it up and rollback if it doesnt work
<vits95>mehlon: good :)
<vits95>BTW: current version of Guix system installation .iso (at least before pull, reconfigure) has booting issue with btrfs and zstd compression.
<vits95> https://askubuntu.com/questions/1056396/compression-type-0x3-not-supported
<nckx>vits95: That's long been fixed, unfortunately the installer on the Web site is almost a year old by now. You can build your own (guix system disk-image, see ‘Building the Installation Image’ in the manual) or join in helping to get Guix ready for the next release 🙂
<nckx>You can of course also guix pull after enabling cow-store, even though it's not ‘the official way’ it's what I always do anyway.
<vits95>G
<vits95>guix pull is better tha
<vits95>n reboot and defrag. Thanks!
<vits95>*virtual keyboard*
<Ek3F>I've just installed Guix System with GNOME interface, but I don't know how to launch GNOME from the command line after reboot
<Ek3F>Any pointers?
<NieDzejkob>Ek3F: you could try to get startx (from the xinit package) to work, but I think a login manager such as gdm, slim or sddm is preferred
<Ek3F>Thanks, but shouldn't have one been installed already if I selected GNOME as GUI?
<roptat>hi guix!
<bluekeys>Hi guix. What's the guix way of adding to my hosts file
<roptat>I'd like to add the possibility of resuming downloads (for substitutes and fixed-output derivations). I'm currently focusing on the second one. From what I see, I can change (guix build download) to add a Range header and fetch only missing bytes, the issue is that at that point, the old attempt is already removed from the store (although failed attempts are kept in the sotre, so I guess the guix daemon removes failed derivation before retrying them)
<roptat>bluekeys, there's a hosts field in operating-system
<roptat> https://guix.gnu.org/manual/en/html_node/operating_002dsystem-Reference.html#operating_002dsystem-Reference
<roptat>actually it's 'host-file'
<bluekeys>roptat. Thank-you. And I was going to ask for documentation, but ... awesome
<NieDzejkob>Ek3F: oh, if you used the installer it should probably work. Maybe you need to wait a minute? I recall that the boot can be a bit slow
<roptat>hm... the description is a bit short though
<NieDzejkob>Ek3F: can you verify that the /etc/config.scm is using %desktop-services?
<roptat>bluekeys, https://framagit.org/tyreunom/system-configuration/blob/master/modules/config/os.scm#L116 could be an example
<roptat>I thought I took it from the manual, but maybe not...
<Ek3F>NieDzejkob: No, grep could only find (use-service-modules desktop ...)
<Ek3F>And instead of %desktop-services, I have %base-services, don't know why
<alextee[m]>i keep getting this on guix pull: (exception misc-error (value #f) (value "no code for module ~S") (value ((sphinx))) (value #f))
<alextee[m]>i removed all occurences of "sphinx" from my channel
<alextee[m]>maybe i have a bad package installed from before?
<alextee[m]> https://paste.debian.net/1129917/
<alextee[m]>i can't figure it out :/
<alextee[m]>oh i removed my channel and now i get this: (value "Unbound variable: ~S") (value (ghc-hspec-discover)) (value #f))
<alextee[m]>i think it's looking to update stuff that's not found in the channel
<mwette>alextee[m]: I'm just getting the same thing! no code for module. My repo is named packages.git and in there I have file nyacc-next which defines module (packages nyacc-next). Hmm ...
<mwette>s/file nyacc-next/file nyacc-next.scm/
***sturm is now known as Guest90765
<sirgazil>Same ghc-hspec-discover related error here (https://paste.gnome.org/prqsjgsc0).
<alextee[m]>so it's aproblem with current guix? i've had this issue for weeks now
<alextee[m]>my guix installation is getting older and older lol
<nckx>sirgazil, alextee[m]: Hm, I thought it was related to a very recent commit. Testing…
<alextee[m]>well the error i was getting a couple of weeks ago was about "sphinx". the ghc-hspec-discover is a new one, im not sure if they're related
<nckx>Oh, OK. No.
<sirgazil>nckx: Yeah, I just saw the "05/05: gnu: Add ghc-hspec-discover" in guile-devel
<nckx>Which was then reverted.
<nckx>sirgazil, alextee[m]: Could you pull & try again?
<alextee[m]>pulling
<vinceleg>Hello, I need to use the perl module from the rrdtool package and can't find the way, the path to its .pm file should be added to perl include list... any pointer to something similar ?
*nckx hopes they didn't make a typo in their ‘fix typo’ commit, that would be embarrasing. Unable to test…
<nckx>vinceleg: Would setting PERL5LIB in the environment of the running executable (by creating a wrapper) solve this? See clusterssh for an example of that (in gnu/packages/admin.scm).
*nckx hasta AFK.
<vinceleg>nckx: I'll try that, thanks
<mwette>ah: I fixed "no code for module nyacc-next" and now getting the "Unbound variable: ghc-hspec-discover"; let me pull again
<g_bor[m]>liberdiko: I believe so
<alextee[m]>nckx: succeeded! thanks
<sirgazil>nckx: Problem solved.
<mwette>nckx: pull succeeds
<commanderkeen>i wrote a udev rule in my config.scm file. how do I check what is actually generated?
<NieDzejkob>you could reconfigure and check, uhh, /etc/udev.d I think?
<commanderkeen>so if that doesnt exist, then it failed?
<commanderkeen>would it show up in logs somewhere?
<commanderkeen>okay i see it in /var/log/messages
<NieDzejkob>what code did you write, exactly?
<commanderkeen>i see what i did wrong. sorry
<nckx>alextee[m], sirgazil, mwette: Thanks for testing!
<mwette>yw
<pkill9>udev.d doesn't exist for me but i have working udev rules
<nckx>pkill9: Isn't it udev/rules.d?
<nckx>It exists here (/run/current-system/profile/lib/udev/rules.d).
<nckx>Filled with udevvy goodness.
<pkill9>i don't see my added rule in there, i think they might be bundled with udev
<pkill9>yea, a bunch are from the eudev package
<pkill9>maybe all of them
<pkill9>i can't find my rule in /run/current-system
<nckx>pkill9: Indeed.
<nckx>pkill9: sudo herd rules udev. I resorted to reading the source, of course it turns out to be documented in the manual 😛
<nckx>Funny how that's usually how it goes.
<mwette>finally got my channel/package def doing something, but now the build can't find guile when it is definitely in the path (last entry of PATH); see https://paste.debian.net/1129937/ and https://paste.debian.net/1129938/; any clue?
<NieDzejkob>mwette: try (native-inputs `(("pkg-config" ,pkg-config)), perhaps?
<mwette>NieDzejkob: thanks -- will try
<sirgazil>It's amazing how simple it is to create a Guix channel.
<mwette>hehe
<mwette>NieDzejkob: that did get me further, I'm guessing the dependency comes from guile.m4; not to deal with the next set of issue: "failed to create path for auto-compiled file ..."
<mwette> I get "no code for module (bytestructures guile)"
*sirgazil failed to install its first package from his channel though (it seems guile-build-system is not enough)
<mwette>Ah, that's my issue
<Ek3F>NieDzejkob: my bad, I thought I selected GNOME during the installation process, but actually it didn't get selected by pressing enter. I had to press space than enter :-)
<Ek3F>How does one find all the packages installed in their Guix System instance and get the sources for them?
<sirgazil>I'm very ignorant about packaging and the build systems, but, right now, I'd like to be able to tell the guile-build-system: Hey, this is my guile library and here is the texinfo docs, work with that and leave other directories alone.
<leoprikler>how do you build the texinfo docs in your setup?
<nckx>Ek3F: guix package --profile=/run/current-system/profile -I. I guess you could process the output and pass it to guix build --source with judicious piping and cutting, but won't try to do that off the top of my head.
<Ek3F>Thanks for the pointer!
<PotentialUser-52>is this the best way to start x w/o a greeter? https://lists.gnu.org/archive/html/help-guix/2018-07/msg00080.html
<sirgazil>leoprikler: I use makeinfo.
<g_bor[m]>Hello guix!
<g_bor[m]>I've pushed a status update on Outreachy a few hours ago to the blog.
<leoprikler>In that case you'll need one phase to (invoke "makeinfo" ...) and you'll also have to wrap the build and install phases in directory excursions
<g_bor[m]>Do we need to announce it somewhere?
<leoprikler>at least IIRC and guile-build-system only compiles all of the guile sources
<leoprikler>ah, no, you actually do have documentation-file-regexp, but that seems to just copy the files as-is
<sirgazil>leoprikler: Thanks, I'll try that for the docs. However, my main issue with the guile-build-system, is that it will compile every scheme file available in the git repo, and my project has some scripts that I'd like to be ignored.
<nckx>g_bor[m]: Maybe a listmail? I wonder if/where the blog Atom feed is syndicated to planets GNU and the like.
<g_bor[m]>nckx (@freenode_nckx:matrix.org):
<sirgazil>leoprikler: It copies README files as documentation.
<g_bor[m]>nckx: ok, I will send one
<leoprikler>sirgazil: try (replace 'build (lambda args (with-directory-excursion src (apply (assoc-ref %standard-phases 'build) args) ))
<leoprikler>probably missed a closing bracket
<leoprikler>of course src being your actual source directory, such as "module"
<leoprikler>similar pattern for install
<sirgazil>Let me try...
<g_bor[m]>Ok, mail sent.
<nckx>g_bor[m]: It's already at https://planet.gnu.org/ 🙂
<g_bor[m]>nckx (@freenode_nckx:matrix.org): great!
<nckx>g_bor: that matrix.org thing is new.
<nckx>g_bor[m]: Thanks for writing this post and collecting all those links… however… I really don't like that we're promoting Twitter.com on guix.gnu.org like this. Have you discussed this with anyone?
<g_bor[m]>nckx: we can remove this part. The Outreachy site has links anyways.
<mwette>My configure.ac file has "AC_CONFIG_FILES([etc/fixup],[chmod +x etc/fixup])". Do I need something in the package spec for this? The build is saying it can't generate etc/fixup.
<nckx>g_bor[m]: I'd prefer that.
<g_bor[m]>I intentionally did not include the link, and the text is the name of the event on the Outreachy site, however I did not discuss it. Feel free to remove that, if this is against the policy.
<leoprikler>mwette: I assume there is an etc/fixup.in?
<mwette>leoprikler: yes
<mwette>it works outside guix
<leoprikler>Any weird patterns in that file or is everything normal?
<g_bor[m]>nckx: can you take care of that for me? I will not be at my computer before tomorrow evening.
<g_bor[m]>I am on mobile right now.
<leoprikler>You may want to try --keep-failed to reproduce the build environment
<nckx>g_bor[m]: I really appreciate you coordinating this and think you should be entitled to decide how you run things. But reading ‘join our Twitter chat’ on gnu.org is… hm. I don't like it. I'll remove it for now and we can discuss it on the list if you want. Would you be open to using another service? Are you using Twitter mainly because it's what you prefer, or because you think it will attract more volunteers? If the latter, I don't think it r
<nckx>eally matters in our case.
<mwette>leoprikler: ok, thanks for the help -- gotta go for a bit
<nckx>g_bor[m]: OK, enjoy 😉
<g_bor[m]>nckx: I do not like twitter either. This is the official Outreachy organized pre internship discussion that precedes all rounds. I do not have a decision here.
<nckx>g_bor[m]: I see.
<vagrantc>so all profiles seem to produce a manifest file ... was that always the case?
<nckx>vagrantc: Yes, but it's an overloaded term: that manifest isn't the same format you write by hand (it's both more complete and less user-friendly).
<vagrantc>nckx: oh fun
<vagrantc>i'm looking to see what would be reasonable to pass a limited set of things to have guix challenge check
<nckx>It's a useful thing. It stores information (like propagated-inputs IIRC) that would be ’lost’ after guix pull.
<nckx>But the name is unfortunate in retrospect.
<vagrantc>maybe guix challenge --profile-manifest=/path/to/profile/manifest ?
<nckx>vagrantc: I don't grok that last bit. ‘Everything’ is both the obvious and apparently incorrect answer 🙂
<nckx>Ah.
<vagrantc>nckx: i want to be able to build a set of packages, and then have guix challenge check all the relevent built objects
<leoprikler>inb4 we go the Java way and name it detailed-manifest-with-propagated-inputs
<vagrantc>including all the build dependencies, recursively
<nckx>vagrantc: So the ‘closure’? (Yay, another overloaded term, though at least we use the metaphor consistently in Guix.)
<vagrantc>nckx: i guess so
<vagrantc>"guix challenge $(guix system build bare-bones.tmpl )/manifest" or something like that would be nice.
<g_bor[m]>nckx: I have an idea how to solve this, feel free to remove that part. After the chat is finished I will collect what was said, and write it up. That way we do not have to promote, but we can retain all the information. How does that sound?
<vagrantc>i'll just file a bug and see where it goes
<nckx>vagrantc: Would something like ‘guix challenge $(guix gc --references foo)’ work? Obviously untested.
<nckx>Ah, no, that's not recursive.
<nckx>g_bor[m]: Certainly a good compromise. I haven't taken a look around the outreachy site yet, I'll try to replace it with a useful link.
<g_bor[m]>The timeline has a direct embedded link iirc.
<vagrantc>guix challenge basically seems to either check against all local builds, or a specified build
<vagrantc>or specified builds
<nckx>g_bor[m]: Sorry to be so difficult. I'd just rather deal with this now than later. Apart from me, there are less friendly folks…
*nckx can officially no longer type ‘git pull’. Tried twice. Fingers say ‘have some guix instead’.
<NieDzejkob>Wait, how did you type it into your message?
<vagrantc>cut and paste is really useful sometimes
<nckx>NieDzejkob: Very slowly and deliberately. 🙂
<NieDzejkob>I've got `alias gpu="git pull"` set up, so I'm immune from this problem
<nckx>g_bor[m]: Is http://paste.debian.net/1129951/ acceptable?
<nckx>The shorter ‘gp’ being ‘guix pull’ obviously.
<nckx>Or ‘gg’, ‘git guix’.
<g_bor[m]>nckx: wonderful.
<nckx>👍!
<g_bor[m]>Thanks for taking care.
<NieDzejkob>nah, gp is git push :D
<g_bor[m]>I can't tell how many times did I try guix push...
<vagrantc>i thought it's called guix deploy? :)
<g_bor[m]>Well, to add to the confusion I use git deploy on some nodes...
*nckx fights to resist the commit message ‘Remove bird shit’ :-/
<mwette>leoprikler: rechecked config of etc/fixit; the file is generated, but it's not being compiled by guile, so need to deal with the separate issue
<sirgazil>leoprikler: replacing the build phase with your code solved my problem. But now I have another problem: no code for module (glab i18n), where "glab" is my library. So it seems I need to update GUILE_LOAD_PATH in the build phase to find "glab"? But I don't know how...
<sirgazil>Oh, I think I found an example in Guix packages...
*sirgazil tries...
*kmicu reads guano via rss on nitter; no proprietary js required to read it.
<NieDzejkob>nckx: is it some fix for chicken?
<nckx>Nothing so productive, just the above blog post.
<NieDzejkob>oooh
<nckx>kmicu: But that doesn't allow posting, or does it?
<nckx>Well, no matter how you post, you're still affected by their EULA.
<kmicu>I only read it via rss; have no desire to participate.
<kmicu>Alas not everyone is on fediverse.
<shtwzrd>hi guix :) I'm trying to submit my first patch but i'm a little confused and a bit of a scrub. I read Submitting Patches in Info, but I'm not sure about the procedure -- I want to send a patch for a bug I opened myself, using git send-mail
<shtwzrd>It's just a small, one-off patch. It's good enough to just --annotate and put [PATCH] in front of the subject line, right? I give a link to the bug it closes in the commit message
<NieDzejkob>yeah, that should be enough
<shtwzrd>and the to: should be <issuenr.>@debbugs.gnu.org or is that only for patch series?
<nckx>kmicu: Sure, and I only post shit memes, but using it for productive internship discussion would be problematic.
<nckx>shtwzrd: A single patch can be sent to guix-patches@ directly. Just make sure it's really a single patch. No need for a cover letter; you can include a blurb (that won't show up in the commit message) after the ‘---’.
<nckx>guix send-mail -1 --to=guix-patches@gnu.org
<nckx>GOD DAMMIT
<nckx>*git
<shtwzrd>nckx: hehe :D
<kmicu>nckx: isn’t Outreachy from Conservancy? https://mastodon.social/web/accounts/252905
<g_bor[m]>nckx: thanks again for taking care.
<nckx>shtwzrd: Add this to your guix's .git/config to set the sane default. https://paste.debian.net/1129953/
<g_bor[m]>Bye, going to sleep.
<kmicu>(If yes, then I’m surprised they use Twitter but maybe that’s the price for reaching to others.)
<nckx>Unless you're worried about accidentally spamming the list, I guess, in which case don't.
<nckx>g_bor[m]: o/
<nckx>kmicu: It is, so I also find that a strange choice on their part. I too guess it's to ‘reach people’.
<nckx>It's a strange ‘chat’ format to begin with, unless your real purpose is to spam a hash tag.
<vagrantc>kmicu: conservancy is just a host organization, they don't prescribe too many requirements upon their member projects
<vagrantc>(well, they're more than *just* a host organization, but you get the idea hopefully)
<g_bor[m]>Ok, the changes are effective as of now. Good night.
<kmicu>nckx: Not my circus; not my moral dilemmas 😺 (Personally I think Guix space should not point anyone to places requiring proprietary code. So a good call IMO.)
<kmicu>vagrantc: I get that now. No FSDG required there. They also have links to Twitter and Facebook https://sfconservancy.org/about/
<kmicu>I guess promoting libre requires spamming hashtags.
<shtwzrd>thanks nckx and NieDzejkob for the help. Patch submitted :)
*shtwzrd does the first-patch-dance
<kmicu>Congratulations shtwzrd 🎉
*NieDzejkob is meanwhile trying to get vim-full to build
<NieDzejkob>you know it's bad when you're fetching the source for binutils
<vagrantc>shtwzrd: nice dance! :)
<vagrantc>NieDzejkob: huh, i do that all the time...
<vagrantc>:)
***weber.freenode.net sets mode: +o ChanServ
<NieDzejkob>anybody got any idea how to use the "resume" feature on savannah? I can't find the "save" button for "Do you want your resume to be activated? Yes/No"
<nckx>NieDzejkob: ‘Update Profile’ under ‘Resume - Description of Experience’, no?
<pep7>To the developers and supporters of Guix, thank you
<nckx>It's been ages since I've disabled mine.
<nckx>pep7: Why thank you 🙂
<pep7>Additionally, I had a stupid question, I saw someone send me a screenshot showing Guix with the Hurd Kernel
<pep7>Is there a special url for this, or is it default with guix?
<pep7>When I visted the guix website I only saw the source and basic images
<pep7>nckx, seriously, I appreciate FOSS developers
<pep7>If I can get my shit str8 I'll donate, still in startup phase of LLC atm
<nckx>pep7: It's certainly not default, and AFAIK still a work in progress. I'm not even sure it's currently working. It's not trivial, unfortunately.
<pep7>nckx, how can I attain a copy, working or not
*nckx doesn't know.
<pep7>thanks anyways <3
<nckx>pep7: Consider mailing help-guix at gnu.org. Not everyone is on IRC.
<pep7>["<3" for each in guix[::] ]
<pep7>alright
<pep7>Mailed em, thanks nckx. If you do find the answer later please do pm me or highlight me
<vinceleg>pep7, I remember reading something on the -devel ML, try looking for it here : https://lists.gnu.org/archive/cgi-bin/namazu.cgi?query=hurd&submit=Search%21&idxname=guix-devel&max=20&result=normal&sort=score
<vinceleg>pep7, maybe the reverse chronological order will be more helpful
<nckx>I know it was also a topic of discussion at the Guix Days in Brussels last month, but don't actually know what was said.
<pep7>I do appreciate the finger pointing in the right direction vinceleg
<commanderkeen>is there a good tutorial on utilizing the REPL and building packages? I'm not really that familiar with guile or scheme but I feel like the repl experience would be so much better.
<commanderkeen>i select switch to repl and enter module from geiser but Im not really sure where to go from here
<commanderkeen>im not sure what module and function call to run on a package def
<commanderkeen>i feel like if i got it set up right it would be fun and way faster to write packages.
<pep7>yea, I enjoy using ipython for debugging and writing tests before I put it in a text file
<pep7>Wish there was an ipython for ruby and perl
<commanderkeen>also, what does a hash on a git-reference source really mean? how do I get the base32 hash of something like that to put in the package def?
<vinceleg>commanderkeen, dl the tarball then run guix hash on it
<vagrantc>ok, guix build branch failed due to a a certificate error in a remote site it was attempting to contact ... at least i could understand this one!
<vinceleg>oh, did not see you were refering to a gitref
<commanderkeen>vinceleg: yeah i was using guix download URL to get the hash, but there was an example i was looking at where a git ref with a specific commit being used
<vagrantc>git get the hash for a git checkout, git a clean checkout of the exact commit, and: guix hash -rx /path/to/clean/checkout
<vagrantc>commanderkeen: ^^
<commanderkeen>vagrantc: thank you. i was lost trying to figure that out.