On Wed, 24 Apr 2019, ison wrote:
Several questions about channels have been on my mind which I haven't been able
to find any documentation on. So I figured I would ask them all in one place
since they seem like fairly standard questions that could help others setting
up channels in the future as well.
1) Is it possible to make a channel from a local git repository? (That is to
say, a directory on the local machine initialized as a git repository)
Yes, for example, cat ~/.config/guix/channels.scm
(cons (channel
(name 'my-personal-packages)
(url "file:///home/myuser/src/my-guix-packages"))
%default-channels)
where the my-guix-packages directory is a git repo which has committed
packageModN.scm files.
2) Is it possible to use private remote repositories as channels? The issue here seems to
be one of authentication. I'm wonder if there is (or should be) an
"authentication" field one would add to the channel definition in the
channels.scm file.
I agree it would be nice to have. The git-fetch method is defined here:
https://github.com/guix-mirror/guix/blob/012bf5c4c03e30633f137960bd0677e204c638a7/guix/build/git.scm
and I think it can be modified without too much effort to include an argument
for the -key flag to the git command. I am not sure though whether git-fetch
will have access to the home user's directory in case you provide let's say
~/.ssh/id_rsa as argument. Another possibility would be to check the
GIT_SSH_COMMAND env variable. I suppose you also need to make sure ssh is
available for git-fetch.
--
Vänliga hälsningar / Best Regards
David L