How can I start another shell process inside of a guix shell container?

2025-03-12 Thread Gabor Gero via
Hello,



I'm using guix shell --container --emulate-fhs --network for development. I 
need to run 2 processes, neither of which can be a background process. What's a 
good way to spawn a new terminal/shell. Do I need to include the entirety of 
xorg in the container?



Thanks for the help

Gabor Gero


Re: Python channels for all versions of python

2025-03-12 Thread indieterminacy

Hello Fernando,

On 2025-03-11 20:14, Fernando Martínez González wrote:

Hi all! I am looking for a channel (or an alternative way) that has
all python versions (3.7, 3.8, ... etc).

My idea is to use this for development purposes, testing my package in
many different python versions.

Any recomendations are well received.



Have you considered this webring of Guix channels for 
package-definitions?:

https://toys.whereis.social/

Kind regards,



Thank!
Fernando




Re: WebRTC screen sharing under Sway in Guix-packaged browsers

2025-03-12 Thread 45mg
Hi Arnaud,

I managed to get it working based on your description.
Here are a few observations that may be of interest:

Arnaud Daby-Seesaram  writes:

> Hi,
>
> I am not an expert at Wayland (at all), but my current Sway
> configuration works for screen sharing (I have just made a test in
> Librewolf).  Here is a brief description of my solution:
>
> - I use Guix System.  My list of services contains most of
>   %desktop-services (+ other irrelevant services),
>
> - I configure Sway using Guix Home and start it from a TTY.

It will also work if you configure Sway manually, ie. without
home-sway-service-type.

>   I have added both xdg-desktop-portal and xdg-desktop-portal-wlr to my
>   Guix Home packages (via the `packages' field of `sway-configuration').
>   In a previous iteration of my setup, they were not in the same
>   profile, and screen sharing did not work.
>
>   I use `home-pipewire-service-type' and `home-dbus-service-type'.

Can confirm that both of these are necessary.

>   Moreover, Sway executes the following at startup & reload:
>  + (file-append
>  dbus "/bin/dbus-update-activation-environment "
>   "--systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway")
>  + "$HOME/.guix-home/profile/libexec/xdg-desktop-portal -r"
>  + "$HOME/.guix-home/profile/libexec/xdg-desktop-portal-wlr -r"
>

I experimented a bit here, and I landed on the following in my sway
config:

exec dbus-update-activation-environment WAYLAND_DISPLAY

...which is the equivalent of the first line of your 'startup-programs'
field of 'home-sway-configuration' that you shared above; I started with
your line and then gradually slimmed it down to this. (So, I didn't need
the '--systemd' flag or XDG_CURRENT_DESKTOP)

The other two lines that you have there do not appear to be necessary;
screensharing works for me without them.

For future reference: I am using Firefox version 136.0 from Nonguix.

> I do not claim that this is the right way to do it, but it works for me.
> If others have a cleaner solution, or an explanation for why it works,
> I would love to read them.
>
>
> Best regards,
>
> -- 
> Arnaud



Re: Come speak at the Guix Social meetup

2025-03-12 Thread Steve George
On  4 Jun, Ekaitz Zarraga wrote:
> On 2024-06-04 10:19, Steve George wrote:
> > Hi,
> > 
> > We're looking for speakers - of any level - to give talks at the Guix 
> > online meetup. We're a small, friendly group at all levels of experience. 
> > Talks can be about anything Guix associated, for example:
> > 
> > - Experiences using or learning Guix
> > - Particular commands or capabilities - deploying VM's, building a desktop 
> > etc
> > - Using the declarative configuration approach
> > - Packaging or creating system services
> > - Something mad, interesting or curious!
> > 
> > Whatever it is, we'd love to hear it!
> > 
> > We've had recent talks by Ludo [0] and David Wilson (System crafters) [1]. 
> > We have an upcoming talk on June 18th by David Thompson [2] who will be 
> > talking about Guile, Guix and his work on Guile Hoot. And, on July 11th 
> > Vagrant Cascadian will be talking about reproducibility and Guix. After 
> > that ...
> > 
> > Just to repeat - talks can be any length (10-20-45 mins), and at any level 
> > :-)
> > 
> > Thanks,
> > 
> > Steve / Futurile
> > 
> > [0] https://www.youtube.com/watch?v=339dRDf4c6E
> > [1] https://www.youtube.com/watch?v=oINCgds-8kA
> > [2] https://dthompson.us/ - register here 
> > https://libreplanet.org/wiki/Group:Guix/PatchReviewSessions2024
> 
> 
> I could talk about the bootstrapping in riscv, maybe it's too technical or
> idk...
> 
> If you want, I'm open to do it!
> 
(...)

That would be great - there's been quite a lot of interest in different 
architectures! 

I've provisionally calendared these dates, would one of them work for you:

- 6th August (Tuesday): 
- 29th August (Thursday): 
- 17th September (Tuesday):
- 9th October (Wednesday): 

Thanks,

Steve / Futurile




Re: Come speak at the Guix Social meetup

2025-03-12 Thread Steve George
On  4 Jun, Nils Landt wrote:
> > Steve George  hat am 04.06.2024 10:19 CEST geschrieben:
> >
> > - Something mad, interesting or curious!
> 
> I built a home service for systemd. It is currently unpublished, but I could 
> demo it, and publish the WIP version.
> 
> Not sure if there's enough interest in this to warrant a talk, systemd is not 
> packaged for Guix (and quite possibly never will be). This would only be of 
> interest for users of Guix Home on a foreign distro who, for some reason or 
> another, want to use systemd units instead of shepherd / mcron. 
(...)

Hi Nils,

It sounds interesting to me - particularly as I'm on a foreign distribution. 
I'm sure there are lots of people who try Guix on top of their existing 
distribution so I'm sure there's an audience for this! Definitely be better if 
people could use your WIP code, so publishing it 'as is' somewhere would be 
cool! 

When would you be able to talk about it:

- 6th August (Tuesday): 
- 29th August (Thursday): 
- 17th September (Tuesday):
- 9th October (Wednesday): 

Thanks,

Steve / Futurile




Re: Preliminary questions before try guix

2025-03-12 Thread Steve George
Hi Carlo,

On  3 Feb, Carlo Ascani via wrote:
> 
> Greetings,
> 
> I have some preliminary questions before even try to use guix.
> 
> My use case will be:
> 
> - Use guix on a foreign distro (Debian 12)
> - Use it especially to create isolated development environment [1]
> 
> My questions:
> 
> - How easy is it to install older versions of packages? [2]

Generally, Guix only has one version of a package available at a time (e.g. one 
version of Vim available).

The Guix repository has all the commits within it for earlier versions of a 
package. If you 'pin' the version of the Guix repository that you're using then 
you can install the earlier version of a package. This is done by specifying a 
'channels.scm' file where you set the guix repository location and the specific 
commit to use.

There's a specific `guix time-machine` command where you feed in the channels 
file, along with a manifest file that contains the packages to install: if in a 
team setting this is how all developers can use the same package versions. 
There's a few good blog posts out there about this sort of thing, including one 
I did here:

https://www.futurile.net/2023/11/07/guix-time-travel-tricks/

> - Can I specify services to be started in the development environments? [3]
(...)

Mostly people use `guix shell` to start a ephemeral environment with the 
packages they want specified. The way that services are run is generally using 
`guix home`. I think your options here will be to either start a specific 
service in your main environment (main guix home). I don't _think_ you can do 
it it in an 'environment-local' directory, as we're still in our main shell 
environment and running multiple databases will conflict. Is there a specific 
tool that you're using today that you're thinking of here?

The second option is rather than to use `guix shell` use `guix system 
container` [0]. This will give you a running container that you can then do 
normal start-up stuff with, such as running a database. The advantage is that 
this will all be in a declarative configuration file. I don't have an 
experience with it, so it may take some investigation.

HTH,

Steve

[0] https://guix.gnu.org/cookbook/en/html_node/Guix-System-Containers.html





RE: Failed to initialize accelerated iGPU/dGPU framebuffer sharing: Not hardware accelerated

2025-03-12 Thread outlook user
$ eglinfo
GBM platform:
kmsro: driver missing
kmsro: driver missing
eglinfo: eglInitialize failed

Wayland platform:
libEGL warning: egl: failed to create dri2 screen
eglinfo: eglInitialize failed

X11 platform:
libEGL warning: egl: failed to create dri2 screen
eglinfo: eglInitialize failed

Device platform:
eglinfo: eglInitialize failed

De : outlook user 
Envoyé : mercredi 12 mars 2025 14:22
À : help-guix@gnu.org 
Objet : Failed to initialize accelerated iGPU/dGPU framebuffer sharing: Not 
hardware accelerated




Re: guix home: error: open-fdes-at: Not a directory

2025-03-12 Thread Ian Eure
Hi Benjamin,

The "~HOME" looks wrong.

  — Ian

On March 11, 2025 8:14:13 PM PDT, Benjamin Slade  wrote:
>Hi Guix,
>
>On a reinstalled system, my Guix Home is now unhappy. Doing a `guix home 
>reconfigure <...>', it  gets to `Finished updating symlinks.' and then has 
>`guix home: error: open-fdes-at: Not a directory'.
>
>I've tried running with `--verbosity=10 --debug=10' (I suppose they probably 
>cap out at `3', but I couldn't find this information, and `10' seemed to be a 
>sufficiently high number), which produces more output overall, but doesn't 
>make Guix Home expand on which thing is not a directory (for the `guix home: 
>error: open-fdes-at: Not a directory' error).
>
>I'm assuming it's something in my
>
>,
>| (simple-service 'some-useful-env-vars-service
>|home-environment-variables-service-type
>|`(("SBCL_HOME" . "$HOME/.guix-home/profile/lib/sbcl")
>|  ("GUIX_LOCPATH" . "~HOME/.guix-home/lib/locale")
>| ..
>`
>
>section, but I'm not sure which thing, and I've gone through all of the paths 
>and tried to verify that they exist.
>
>Is there any better way of debugging/getting more information about the `guix 
>home: error: open-fdes-at: Not a directory' message?
>
>best,
> —Benjamin
> --
> '(Dr Benjamin Slade (he/him)
> (website . ) 
> `(pgp_fp: ,(B20E 444C FA80 B5F8 15FA  4AD8 6FBF CD68 3B05 2B84))
>   "sent by [mu4e] 1.12.9 in [Emacs] 30.1 with [org-msg] on [GNU Guix] 
>([Linux])")
>
>
>[mu4e] 
>
>[Emacs] 
>
>[org-msg] 
>
>[GNU Guix] 
>
>[Linux] 


Re: Come speak at the Guix Social meetup

2025-03-12 Thread Steve George
On  5 Jun, Artyom V. Poptsov wrote:
> Hello!
> 
> I can give an online talk about Guile-SSH[1] as it is used by GNU Guix,
> if you're interested.
> 
> Although I have never done any talks in English, I think it'll be an
> interesting experience.
> 
> References:
> 1. https://github.com/artyom-poptsov/guile-ssh
> 

Hi Artyom - as you know it's a small friendly group so it would be really fun 
to learn more about Guile-SSH, how it's been developing it and how it's used in 
Guix!

I have a rough set of dates - does one of them work for you:

- 6th August (Tuesday):
- 29th August (Thursday):
- 17th September (Tuesday):
- 9th October (Wednesday):

Thanks,

Steve / Futurile




Re: How to install Python libraries under python-next?

2025-03-12 Thread Tracker
Gary Johnson  writes:

>> Hi folks,
>> 
>> I ran across a situation today in which I needed a newer version of Python 
>> than what is provided via the `python` package in Guix main (version 3.10.7).
>> 
>> Fortunately, Guix does have a `python-next` package (version 3.12.2) that is 
>> sufficiently up-to-date for my needs.
>> 
>> Unfortunately, I also need some Python libraries installed along with it, 
>> and this makes the problem much more challenging.

Michael Dahlberg  writes:

> Might I suggest not touching the system python version or its provided
> collection of libraries? Instead use UV
> (https://github.com/astral-sh/uv) to create the exact needed python
> development environment with the exact set of neccessary libraries.
> Creation of a virtual environment in this manner is a much better
> solution than trying to bend the system environment to your will.
> Also, much less frustrating!
>
> Just my suggestion.
>
> Mike

Thanks for the idea, Mike. I don't see a Guix package for uv though. Do you 
have one handy? ;)

Thanks,
  Gary

-- 
GPG Key ID: C4FBEDBD
Use `gpg --search-keys trac...@disroot.org' to find me
Protect yourself from surveillance: https://emailselfdefense.fsf.org
===
()  ascii ribbon campaign - against html e-mail
/\  www.asciiribbon.org   - against proprietary attachments

Why is HTML email a security nightmare? See https://useplaintext.email/

Please avoid sending me MS-Office attachments.
See http://www.gnu.org/philosophy/no-word-attachments.html



Re: How can I start another shell process inside of a guix shell container?

2025-03-12 Thread Denis 'GNUtoo' Carikli
On Wed, 12 Mar 2025 09:22:52 +0100
Gabor Gero via  wrote:

> Hello,
Hi,

> I'm using guix shell --container --emulate-fhs --network for
> development. I need to run 2 processes, neither of which can be a
> background process. What's a good way to spawn a new terminal/shell.
> Do I need to include the entirety of xorg in the container?
It may be possible to use some daemon launcher to launch them and
somehow collect the output in logs or though some logging system.

There is daemontools in Guix but I didn't try it.

Denis.


pgpGaPxWh2fZO.pgp
Description: OpenPGP digital signature


Re: How to install Python libraries under python-next?

2025-03-12 Thread Michael Dahlberg






On Wednesday, March 12th, 2025 at 9:04 AM, Tracker  
wrote:

> 
> 
> Gary Johnson lambdatro...@disroot.org writes:
> 
> > > Hi folks,
> > > 
> > > I ran across a situation today in which I needed a newer version of 
> > > Python than what is provided via the `python` package in Guix main 
> > > (version 3.10.7).
> > > 
> > > Fortunately, Guix does have a `python-next` package (version 3.12.2) that 
> > > is sufficiently up-to-date for my needs.
> > > 
> > > Unfortunately, I also need some Python libraries installed along with it, 
> > > and this makes the problem much more challenging.
> 
> 
> Michael Dahlberg dahlberg+g...@recursoft.org writes:
> 
> > Might I suggest not touching the system python version or its provided
> > collection of libraries? Instead use UV
> > (https://github.com/astral-sh/uv) to create the exact needed python
> > development environment with the exact set of neccessary libraries.
> > Creation of a virtual environment in this manner is a much better
> > solution than trying to bend the system environment to your will.
> > Also, much less frustrating!
> > 
> > Just my suggestion.
> > 
> > Mike
> 
> 
> Thanks for the idea, Mike. I don't see a Guix package for uv though. Do you 
> have one handy? ;)
> 
> Thanks,
> Gary

Hi Gary:

I don't believe Guix has packaged it (yet).  From their Github page you can 
either use pip to install it:

pip install uv

(
since you're on Guix, I'd probably install it so that its local to just your 
account:
pip install --user uv
)

or use their installer:

# On macOS and Linux.
curl -LsSf https://astral.sh/uv/install.sh | sh

My recommendation would be to go with their installer since you can easily 
update it after installing it using:

uv self update

uv is under very active development and they are very responsive to bugs and 
feature requests, so its a good idea to keep it updated on a regular basis.

As an aside, RealPython interviewed the creator of UV, Charlie Marsh and this 
screencast is really good.  It talks a lot about the capabilities of uv and how 
it accomplishes them.  From what I've seen, uv is SO good that pretty much the 
entire python ecosystem is moving to it as the default package manager for 
python.

Hope this helps!

Mike



Re: after removing pidgin and gajim it wants to build them again during updating packages

2025-03-12 Thread Gottfried

Hi Guix,

it is very strange, after:

gfp@Tuxedo ~$ guix package --do-not-upgrade=farstream 
--do-not-upgrade=gajim --do-not-upgrade=pidgin -u


it wants to build the derivations: farstream, gajim, pidgin ???:
I have removed gajim, pidgin as I wrote earlier.


substitute: looking for substitutes on 
'https://bordeaux.guix.gnu.org'... 100.0%

substitute: looking for substitutes on 'https://ci.guix.gnu.org'... 100.0%
Folgende Ableitungen werden erstellt:
  /gnu/store/14y3a048xhr3bbbam6i9s8w63qc2ji0i-farstream-0.2.9.drv
  /gnu/store/cmrmgd9dp314jfp9fd22cicw0xh6vpqb-gajim-1.9.3.drv
  /gnu/store/pvcmg6r1bg1laip2lvww2xvfx2pjq62h-pidgin-2.14.13.drv
  /gnu/store/mn1yk1iy6ffrzcv8cnx1k9khf3xpslzy-caja-extensions-1.28.0.drv


There is a problem somewhere

thanks

Gottfried




Am 10.03.25 um 15:05 schrieb gfp:

Hi Guix,

I did a system reconfigure,
a garbage collection after removing gajim and pidgin.

Why, after guix package -u

it can´t be upgraded, it wants to build
farstream?
gajim and pidgin which I have removed?

Folgende Ableitungen werden erstellt:
   /gnu/store/14y3a048xhr3bbbam6i9s8w63qc2ji0i-farstream-0.2.9.drv
   /gnu/store/bk6v9cx35k35p9p38bzimb965knfwrhx-gajim-1.9.3.drv
   /gnu/store/qncxgbayn7j987vl7a6q2p9mj5hqs84f-pidgin-2.14.13.drv
   /gnu/store/wi87ii7xxhb1zl9klfxbnra8j2lpm1xd-caja-extensions-1.28.0.drv


thanks

Gottfried




OpenPGP_0x61FAF349C9FB7F94.asc
Description: OpenPGP public key


OpenPGP_signature.asc
Description: OpenPGP digital signature


Re: MATE desktop

2025-03-12 Thread gfp

Hi Guix,

I installed Trisquel with MATE Desktop in a qemu/virtual machine.

I checked if in Caja, the file manager in MATE, it is possible to change 
the background.


In the Menu bar it is the second option: "edit"

Then choose "backgrounds/emblems" (almost on the bottom of the 
possibilities)


If you use the mouse and drag one of the backgrounds to an object
then it changes the background.
It is quite nice and encouraging to get a beautiful background.

That does work in Trisquel but not in Guix.
In other distros like Manjaro I used it already some years ago.

There must be any problem in Guix, because in Trisquel it works.
May be a bug?

That´s for your information.

Gottfried



Am 09.02.25 um 18:02 schrieb gfp:

Hi Roman,

  a second thing that does not work in MATE desktop, which worked 
earlier in other distros. I don´t know if that works in Trisquel because 
I haven´t installed Trisquel with MATE desktop on an other laptop.


Caja the file manager has a possibility to change the 
backgrounds/colours/emblems of the file manager, so that you have a nice 
background.


I used that earlier, but in Guix it does not work.

kind regards

Gottfried





OpenPGP_0xD9E413C6C4BB32CE.asc
Description: OpenPGP public key


OpenPGP_signature.asc
Description: OpenPGP digital signature


Gnome "oh no something has gone wrong..."

2025-03-12 Thread Christophe Pisteur
Hi, 


I'm on guix system with Gnome and Wayland. After a guix pull, then guix
package -u then guix system reconfigure, I went from gnome 44 to gnome
46 and from linux 6.12 to linux 6.13.

After rebooting and connecting to my session, the following message
appears after about one minutes:

"oh no something has gone wrong a problem has occurred and the system
can't recover  please log out and try again"

I have no extension to gnome-shell
I also did:
rm -r ~/.config/dconf
rm -r ~/.local/share/gnome-shell

the problem remains the same

I'm on Wayland, and I've tried to connect with xorg, but the problem
persists.

Strangely enough, I can still use my session if I leave the error
message on one workspace and I work on another workspace. If I want to
close the error message, it closes my session. 

Does anyone have any idea what to do?

Christophe





Re: How to install Python libraries under python-next?

2025-03-12 Thread Gary Johnson
Simon Tournier  writes:

> Hi,
>
> On Tue, 18 Feb 2025 at 17:51, Gary Johnson  wrote:
>
>> Okay, so it looks like all of the libraries I wanted were still built
>> against the `python` package because it is included by the
>> `python-build-system`, which is used in all of their package
>> definitions.
>
> Yes.  All the Python packages are only built with the defautl Python
> interpreter.
>
>
>> Unfortunately, this crashes when attempting to build
>> `python-pytz`. Here's the relevant build error:
>
> Indeed, there is no guarantee that the recipe of one Python package
> builds equally for two different versions of the Python interpreter.

Unfortunately, this doesn't appear to be an issue with breaking
changes between Python versions but rather with the absence of
`python-setuptools` in the updated build pipeline.

>> Unfortunately, adding `python-setuptools` to the `guix shell`
>> invocation doesn't seem to work.
>
> Using Andreas explanations and patch, is it enough for your use case?

I understand why adding `python-setuptools` directly to the `guix
shell` invocation won't help because it's not updating the inputs
further down the dependency graph. Andreas' patch did not help me
unfortunately. By adding `python-setuptools` directly to the inputs of
`python-pytz`, this just leads to other packages failing to build for
the same reason.

I've tried using package transformation functions to add
`python-setuptools` to all of the packages in my tree, but I'm only
able to update the top-level ones. This currently leads to `meson`
(further down the tree) throwing the missing setuptools error that was
previously plaguing `python-pytz`.

Here's my current manifest script:

```
(use-modules
 ((gnu packages base) #:select (coreutils))
 ((gnu packages bash) #:select (bash))
 ((gnu packages build-tools)  #:select (meson))
 ((gnu packages protobuf) #:select (python-protobuf))
 ((gnu packages python)   #:select (python-toolchain python python-next))
 ((gnu packages python-build) #:select (python-setuptools))
 ((gnu packages rpc)  #:select (python-grpcio))
 ((gnu packages time) #:select (python-dateutil python-pytz))
 ((gnu packages wget) #:select (wget))
 ((guix build-system python)  #:select (pypi-uri python-build-system))
 ((guix download) #:select (url-fetch))
 ((guix licenses) #:select (expat))
 ((guix packages) #:select (package origin base32 package-inputs 
modify-inputs package-input-rewriting))
 ((guix profiles) #:select (packages->manifest)))

(define (include-setuptools p)
  (package
   (inherit p)
   (inputs (modify-inputs (package-inputs p)
  (append python-setuptools)

(define use-python-next
  (package-input-rewriting `((,python . ,python-next

(packages->manifest
 (append
  (list coreutils
bash
wget)
  (map (compose use-python-next include-setuptools)
   (list python-toolchain
 python-grpcio
 python-protobuf
 python-dateutil
 python-pytz
```

Thanks again for your help.

Cheers,
  Gary

-- 
GPG Key ID: C4FBEDBD
Use `gpg --search-keys gary.john...@disroot.org' to find me
Protect yourself from surveillance: https://emailselfdefense.fsf.org
===
()  ascii ribbon campaign - against html e-mail
/\  www.asciiribbon.org   - against proprietary attachments

Why is HTML email a security nightmare? See https://useplaintext.email/

Please avoid sending me MS-Office attachments.
See http://www.gnu.org/philosophy/no-word-attachments.html