Add earlyoom service to %desktop-services?
I think that the earlyoom service is a necessity for a Guix system desktop. For those who don't know what it does, EarlyOOM (early out-of-memory) is a daemon that kills applications when the amount of memory available falls below a certain percentage of the maximum, by default 10%. There is already an OOM killer in the kernel, but it's too lax and applications that consume too much memory can cause the system to freeze. I've used this for a while and many times it has kicked in and works well for my laptop. I think adding it to the default desktop services will give Guix System on desktop greater stability, which would encourage adoption of Guix System on the desktop What do you, reader, think?
Idea: when in a guix environment, have guix install packages by default to that environment
darth-cheney asked in IRC if from inside a guix environment you would install the packages instead of pip/node, and maybe having guix install packages to current guix environment would be a good idea. Possible issue would be how to change the current guix environment to the new profile, without creating a nest of environments for every `guix install` or `guix package -i`.
Re: Make guix commands pipeable
> Doesnt /dev/stdin work? > > The only reason it could not is that somehow the file descriptor needs > to be seekable. > > Léo This doesn't work for me, with `cat | guix build -f /dev/stdin` i get "guix build: error: failed to load '/dev/stdin': No such file or directory"
Re: Make guix commands pipeable
> Doesnt /dev/stdin work? > > The only reason it could not is that somehow the file descriptor needs > to be seekable. > > Léo This doesn't work for me, with `cat | guix build -f /dev/stdin` i get "guix build: error: failed to load '/dev/stdin': No such file or directory"
Make guix commands pipeable
I would like to be able to pipe files into guix commands. Specifically the `guix system build` command, so I can build a system configuration on a remote Guix system over SSH, i.e. `cat config.scm | ssh guix system build -`, or perhaps using the `--expression` flag which would make more sense, e.g. `cat config.scm | ssh guix system build -e -`. While you can currently just copy over a file and then use that, it would be a little cleaner and more stateless to use a pipe. What do other people think?
Re: guix environment --profile with --ad-hoc
Hi, > Can I ask: What is your use-case? Why not extend the existing profile > using `guix package -p /path -i foobar`? I'm making a script that uses guix containers for running applications isolated from eachother, and I have a single profile for each application. I want to be able to start the container in a shell for debugging, and add packages to that session, such as coreutils, without adding it permanently to the profile.
guix environment --profile with --ad-hoc
guix environment doesn't allow --ad-hoc to be used when --profile is set. I propose to have --ad-hoc add more packages to the container when using it with --profile. Thoughts?
After reconfiguring, often grub says 'no suitable video mode found'
After reconfiguring, often grub says 'no suitable video mode found', and it has a blue background. It's not a problem, but it's certainly inconsistent, and slightly worrying. Anyone know what the cause could be?
Verify validity of sudoers file when reconfiguring system.
Last time I tested, the sudoers file could be changed to anything in the guix system configuration, whether it's valid or not. This could result in someone being locked out of their system when root doesn't have a password, and they rely on sudo. Ideally, `guix system reconfigure` would fail if the specified sudoers file is invalid. I ran `visudo --help` and there are two flags that could be used for this: --check, which simply parses the sudoers file and checks that it's valid, and --file, which specifies which file to check.
Re: Change the '--with-source' flag to use the syntax `--with-source=PACKAGE=SOURCE`
> You can use ‘--with-source=PACKAGE=SOURCE’, too: > > https://guix.gnu.org/manual/en/html_node/Package-Transformation-Options.html Ah great, thanks!
Change the '--with-source' flag to use the syntax `--with-source=PACKAGE=SOURCE`
I propose changing the `--with-source` flag to use the syntax of similar `--with-...` flags such as `--with-commit`, e.g. `--with-source=PACKAGE=SOURCE`, because currently you need to change a file to match the form "package-version.extension`, and it searches the package graph to find the package to replace the input with. It's annoying having to download a source file and change it's filename just to have it work with this flag. It would also be more consistent to match the syntax of the other flags. To illustrate, this is the section of `guix build --help` that shows the syntax of all these `--with-...` flags: ``` --with-source=SOURCE use SOURCE when building the corresponding package --with-input=PACKAGE=REPLACEMENT replace dependency PACKAGE by REPLACEMENT --with-graft=PACKAGE=REPLACEMENT graft REPLACEMENT on packages that refer to PACKAGE --with-branch=PACKAGE=BRANCH build PACKAGE from the latest commit of BRANCH --with-commit=PACKAGE=COMMIT build PACKAGE from COMMIT --with-git-url=PACKAGE=URL build PACKAGE from the repository at URL ```
Re: Package request: OpenRA
Hi Pierre, > We don't have OpenRA (https://www.openra.net/). > Has anyone worked on it? > Otherwise I'll go ahead. > > Any tip, any special wish? I have a working package (last tested a while ago, some third party hashes would need updaring, and there may be new build failures, but i played it in the past) in my repository at https://gitlab.com/pkill-9/guix-packages-free/tree/master/pkill9/packages/openra, however the third party .Net libraries aren't built from source because I couldn't get mono to build them from source. I believe Mono is too old on Guix to build them. Another issue to note is that i had to wrap xdg data dirs to point to generated mono certificates. Another issue is that maxmind geoip database is used during build, but the url constantly updates and they dont provide previous versions. best solution would be patch openra upstream to provide option not to use geoip database, or to grab it at runtime. I don't believe there are any licensing issues with using maxmind's geoip database in guix, can't remember though.
disable substitutes for grub config and bootloader installation script
rolling back the system shows it's trying to get substitutes for grub.cfg.drv and install-bootloader.scm.drv: ``` itsme@antelope ~> sudo guix system roll-back Password: substitute: updating substitutes from 'https://berlin.guixsd.org'... 100.0% substitute: updating substitutes from 'https://mirror.hydra.gnu.org'... 100.0% substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% The following derivation will be built: /gnu/store/b90j6p6qpzvs5x884hhy9dc3zvv6jhcs-grub.cfg.drv building /gnu/store/b90j6p6qpzvs5x884hhy9dc3zvv6jhcs-grub.cfg.drv... substitute: updating substitutes from 'https://berlin.guixsd.org'... 100.0% substitute: updating substitutes from 'https://mirror.hydra.gnu.org'... 100.0% substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% building /gnu/store/m7lcl11s38ks2hapm1j7s2z9szig3zhs-install-bootloader.scm.drv... switched from generation 46 to 45 ``` This is not needed, unless I am missing something?
Re: Evolution
Hey, the evolution dataserver is in a separate package, "evolution-data-server", however when i installed them both it gave me more errors and still fails. I think Evolution expects a bunch of other Gnome stuff to be installed/available at runtim, but I don't really know. If you're just looking for a basic GUI email client, I switched to Claws Mail (package is claws-mail) instead, it's pretty nice :) On Sun, 14 Apr 2019 08:37:02 + "The Philosopher" wrote: > Hello Geeks! > > While adding account, evolution is throwing error "The name > org.gnome.evolution.dataserver.Sources5 was not provided by > any .service files". Also, isn't the package name should be > "gnome-evolution"? > > Thanks!
Improve `guix pull --commit=` behaviour when with channels
When extra channels have been added, running `guix pull --commit=` returns "guix pull: error: '--url', '--commit', and '--branch' are not applicable". I think it would be better if these flags only affected the "guix" channel, including when extra channels have been added. This makes sense considering `guix pull` fails when no channel with the name "guix" exists - if you provide a list of channels in channels.scm and none of them are named "guix", `guix pull` will fail (a channel named "guix" is provided in %default-channels). Thoughts?
Change syntax of '--with-source' flag to match syntax of '--with-commit' flag?
The '--with-commit' flag changes the source used to build a package, the syntax takes the form of '--with-commit=='. The '--with-source' flag also changes the source, but uses the syntax '--with-source=', but only transforms the top-level package (e.g. `guix build ` or `guix environment --ad-hoc ``). It also only works if the new source file has the form '-.', which means if a package source URL isn't named in that way, then you have to first download it, rename it to fit that template, then use --with-source with that file. I propose changing the syntax of '--with-source=' to match the syntax of '--with-commit='. This would have the following benefits: - No need to download and rename files that don't fit the '-.' format. - Able to change the source file of a package input of any package in the package graph. - Makes the syntax consistent with '--with-commit='. What do other people think?