Felix Lechner <[email protected]>: > > > Hi Marek, > > On Tue, May 16, 2023 at 4:15 AM Marek Paśnikowski > [email protected] wrote: > > > How can I declare symbolic links in the system configuration? > > In this specific case, I wish to be able to declare the following link: > > ~/.config/guix/channels.scm -> ~/src/izumi/channels.scm > > folks—I'm in recovery.) It's also possible that I misunderstood your > question.
You have. I wish to be able to declare symlinks, because my goal is to craft a common core configuration for all of my future GUIX installations. A part of this is automation of tasks, such as redirection of Channel configuration source. I have a strategy to keep all of my configuration in a single GIT repository. > > A symbolic link is a symbolic link. You can create it with > > $ ln -s ~/src/izumi/channels.scm ~/.config/guix/channels.scm > This is a workaround, and my aim is to pre-program as much as possible. > > > I wish, however, to be able to define arbitrary files in the future, > > > I believe Guix Home can do that for you. I currently only use the > capability for Bash [4] (which I hardly use anymore). I look forward > to improving my Guix Home setup and perhaps even learning from what > you find out. > > The author of Guix Home, Andrew Tropin, even tied it into configuring > Emacs via something called 'rde'. There too, I am behind the times. I know of those. I just wished to able to declare symlinks in operating-system. I am starting to think, that this function is not yet implemented. I am actually thinking of promoting the literate configuration style, once I have my first system more or less defined. You can have a look at my previous question on this list, regarding filesystem labels, to see the previous state of the art. > > > I think the Manual chapter about G-expressions does include the answer, > > > Somehow, I doubt it. G-Expressions are an abstraction for the Guix > build system. It is necessary because the build environment is > different from the one in which you run Guix. I think you need > G-Expressions only when you package software. > > > but the instructions are written on an abstraction level > > not accessible to my current understanding. > > > I believe you are experiencing a "fight or flight" response. At its > core, Guix is a simple and trusted friend. It just gets complicated > (and a bit symbolic) along the way. > It is nothing like that - I just know that I have yet to learn this. After another reading I did understand that G-exps allow me to declare most arbitrary files, just not symlinks... My conclusion is to have yet another workaround and just live with this.
