Re: Looking to contribute
cinde...@hushmail.com writes: > Hello. I recently learned about GuixSD, and it seems like a distro > I would actually _enjoy_ using. Essentially, my questions are: > > What is the current state of GuixSD? Is it currently too buggy or > feature-deficient to use as a day-to-day os? > I use it on my laptop and my wife's laptop. feature-deficient is a rather subjective term. I have xfce on my wife's laptop. Occasionally she'll complain about lack of flash or that a website doesn't like icecat. I have a few boxen that I haven't converted (from Debian) yes as I rely heavily on lvm and don't want to sort out how to do without lvm. On those boxen I use guix as a foreign package manager which actually works out quite well. > How can I best contribute? > I've found the people on the #guix channel and on this list to be very helpful. The website has a section on how to contribute. I've started by just packaging programs that I use that were net yet in Guix. Knowing guile is not (IHMO) a prerequisite, although willingness to learn probably is ;). HTH, James. -- I prefer encrypted email. GPG Fingerprint = 8FD2 7619 C19A 2201 CB1D E131 EA1C F14B D846 7AFB https://jamestechnotes.com/gpgkey https://jamestechnotes.com
GuixSD Success with grub-efi
I just successfully installed guixsd 0.13.0 with efi on a new HP laptop. I found the manual to be somewhat lacking with specific details on exactly how to accomplish this. I've added to my todo list to post more details here. I also had to disable secure boot (for obvious(?) and annoying reasons) for the laptop to actually boot, but that is a rant for a different audience. ;) Thanks to all who helped make this possible! -- James Richardson signature.asc Description: PGP signature
Re: [PATCH 0/12]: Add asdf-build-system.
Andy Patterson writes: > Hello, > > As promised, here's my work toward adding a build system for Common Lisp > software. I still have some issues with it as follows: > Thank you! > Getting things to work "out of the box": I'd like to set up an environment > variable to allow implementations to find installed libraries, but it's a bit > tricky: > > Essentially I'd like to have, in each profile, a setup something like > > export CL_SOURCE_FRAGMENT=#+sbcl \ > (:directory \"${GUIX_PROFILE}/share/common-lisp/sbcl-bundle-systems/\") \ > #+ecl ... \ > ${CL_SOURCE_FRAGMENT} > > followed by > > export CL_SOURCE_REGISTRY=\ > (:source-registry ${CL_SOURCE_FRAGMENT} \ > (:directory \"${GUIX_PROFILE}/share/common-lisp/systems/\") \ > :inherit-configuration) > > This would allow each implementation to pick up their own compiled libraries, > as well as systems installed as source as a fallback. I don't know how to > achieve that kind of a setup, so I'd like some help. I'm also worried about > either blowing away user configuration, or having it shadow the desired > configuration, since this isn't a simple search path which could be appended > to. Should we try to patch the asdf implementations to handle a separate > variable just for guix? > > I'd also like to hear your thoughts on how packages are laid out using the > system, so I've included some examples. I was thinking that something like > package-with-python2 could also be helpful here; is that the right way > forward? > I don't really know enough to offer valid suggestions yet. There are mostly the same questions/issues I hit when trying to package a lisp program with dependencies. The Debian project came up with a thing called common-lisp-controller (http://ci-debian.alioth.debian.org/clid/clid.html/ch-clc.html) which address some of the issues. It seems to build an abstraction layer over asdf. I'm not advocating this as it does seem to presume a Debian-ish infrastructure, just mentioning as a source of potential ideas. > Thanks. -- James Richardson
Re: [Patch] add keychain
Hartmut Goebel writes: Thank you for the feedback! Much appreciated! > Am 22.09.2016 um 14:10 schrieb James Richardson: >> * gnu/packages/keychain.scm: Add new file. > > I suggest putting this into some other file, e.g. crypto.scm or ssh.scm. > Otherwise we have a file for a single package. I wasn't sure of the policy. I will move it to one of these files. > >> * gnu/packages/keychain.scm: (keychain): New variable. > > If you stay with the separate file, this line is not needed. > >> + #:builder (begin >> + (use-modules (guix build utils)) >> + (let ((bin-dir (string-append %output "/bin")) >> + (man1-dir (string-append %output >> "/share/man/man1")) >> + (tar (string-append >> + (assoc-ref %build-inputs "tar") >> + "/bin/tar")) >> + (bzip2 (assoc-ref %build-inputs "bzip2")) > You may want to have a look at audio.scm:freepats for a bit shorter and > more obvious code. I will take a look. > >> + (mkdir-p bin-dir) >> + (mkdir-p man1-dir) >> + (setenv "PATH" (string-append bzip2 "/bin")) >> + (system* tar "xfv" source) > > Please unpack the source first, the code is more obvious then. >> + (copy-file (string-append ,name "-" >> + ,version "/keychain.1") > If you run this using "with-directory-excursion", the code is more > obvious and simpler. >> +(string-append man1-dir "/keychain.1")) >> + (copy-file (string-append ,name "-" >> + ,version "/keychain") >> +(string-append bin-dir "/keychain")) > > You can use install-file and save the make-p above. >> +(native-inputs `(("bzip2" ,bzip2) >> + ("tar" ,tar) I wasn't aware of of install-file. I will make these updates. > > Please warp like this: > > +(native-inputs > + `(("bzip2" ,bzip2) > + ("tar" ,tar) > > >> + ("source" ,source))) > > > No need for listing the source here. > I will work on the wording. >> +(synopsis "Key manager for OpenSSH") > > Not only for *open*ssh, but for other implementations, too. And für > GnuPG-Agent, Maybe even talk abpout the Agent in the synopsis. > > Keychains itself says it is a "agent manager". > >> +(description >> + "Keychain is an OpenSSH key manager, typically run from >> +~/.bash_profile. When keychain is run, it checks for a running ssh-agent, >> +otherwise it starts one. It saves the ssh-agent environment variables to >> +~/.keychain/$HOSTNAME-sh, so that subsequent logins and >> +non-interactive shells such as cron jobs can source the file and make >> +passwordless ssh connections. In addition, when keychain runs, it >> +verifies that the key files specified on the command-line are known to >> +ssh-agent, otherwise it loads them, prompting you for a password >> +if necessary.") > > > The text above is a details workflow description. For me the text form > the keychain.spec-file is more meaningful. Maybe you want to combine them? > > Keychain is a manager for OpenSSH, ssh.com, Sun SSH and GnuPG agents. > It acts as a front-end to the agents, allowing you to easily have one > long-running agent process per system, rather than per login session. > This reduces the number of times you need to enter your passphrase > from once per new login session to once every time your local machine > is rebooted. I'll try to have these changes in the next few days. Thank you for the review. -- James Richardson
Re: stumpwm and common lisp modules
Andy Patterson writes: > On Thu, 22 Sep 2016 23:40:46 -0400 > James Richardson <ja...@jamestechnotes.com> wrote: > >> Hello list, >> >> I was attempting to make a package for stumpwm. I got as far as, oh it >> has a dependency on cl-ppcre (and a few other cl packages). Well it >> turns out that actually putting a lisp module in a guix package seems, >> well, non trivial. Does anyone else have an interest getting lisp >> packages into Guix? >> >> > > Hi James, > > I've been working on a build system for CL packages for some time now, > which works well enough to produce a working stumpwm package. It still > has some missing parts and design issues which I've been mulling over, > but if you're interested I could try to clean things up and post my > progress soon. > > What do you think? I would be very interested! I'm not really a lisp expert (yet), but I will help where I can.
stumpwm and common lisp modules
Hello list, I was attempting to make a package for stumpwm. I got as far as, oh it has a dependency on cl-ppcre (and a few other cl packages). Well it turns out that actually putting a lisp module in a guix package seems, well, non trivial. Does anyone else have an interest getting lisp packages into Guix?
Re: Mail to this list is slow?
John Darrington writes: > A number of people have said that mail to this list takes a long time to > show up. Today I too have noticed that some of my patches have not (yet) > appeared in the archives. > I've posted a patch several hours ago, haven't seen it in the archives.
[Patch] add keychain
Let's try inline as attachements seem to not work. Feedback appreciated as this is my first submission ;) >From aa92429df463ac197a0edcd90aa30ebf8c064ac0 Mon Sep 17 00:00:00 2001 From: James Richardson <ja...@jamestechnotes.com> Date: Thu, 22 Sep 2016 01:44:28 -0400 Subject: [PATCH] gnu: add keychain * gnu/local.mk: Include gnu/packages/keychain.scm. * gnu/packages/keychain.scm: Add new file. * gnu/packages/keychain.scm: (keychain): New variable. --- gnu/local.mk | 1 + gnu/packages/keychain.scm | 79 +++ 2 files changed, 80 insertions(+) create mode 100644 gnu/packages/keychain.scm diff --git a/gnu/local.mk b/gnu/local.mk index a756638..3b814f4 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -191,6 +191,7 @@ GNU_SYSTEM_MODULES =\ %D%/packages/kde.scm \ %D%/packages/kde-frameworks.scm \ %D%/packages/key-mon.scm \ + %D%/packages/keychain.scm\ %D%/packages/kodi.scm\ %D%/packages/language.scm\ %D%/packages/ldc.scm \ diff --git a/gnu/packages/keychain.scm b/gnu/packages/keychain.scm new file mode 100644 index 000..7842fb4 --- /dev/null +++ b/gnu/packages/keychain.scm @@ -0,0 +1,79 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 James Richardson <ja...@jamestechnotes.com> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages keychain) + #:use-module (guix utils) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system trivial) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages base) + #:use-module (gnu packages compression)) + +(define-public keychain + (package +(name "keychain") +(version "2.8.2") +(source + (origin + (method url-fetch) + (uri (string-append +"http://www.funtoo.org/distfiles/keychain/keychain-; +version ".tar.bz2")) + (sha256 + (base32 +"009kmqrwjp1a2a5iyhbnjm2fbiig7xh5c6p8a6ls25kn54r5i2bl" +(build-system trivial-build-system) +(arguments + `(#:modules ((guix build utils)) + #:builder (begin + (use-modules (guix build utils)) + (let ((bin-dir (string-append %output "/bin")) + (man1-dir (string-append %output "/share/man/man1")) + (tar (string-append + (assoc-ref %build-inputs "tar") + "/bin/tar")) + (bzip2 (assoc-ref %build-inputs "bzip2")) + (source (assoc-ref %build-inputs "source"))) + (mkdir-p bin-dir) + (mkdir-p man1-dir) + (setenv "PATH" (string-append bzip2 "/bin")) + (system* tar "xfv" source) + (copy-file (string-append ,name "-" + ,version "/keychain.1") +(string-append man1-dir "/keychain.1")) + (copy-file (string-append ,name "-" + ,version "/keychain") +(string-append bin-dir "/keychain")) +(native-inputs `(("bzip2" ,bzip2) + ("tar" ,tar) + ("source" ,source))) +(synopsis "Key manager for OpenSSH") +(description + "Keychain is an OpenSSH key manager, typically run from +~/.bash_profile. When keychain is run, it checks for a running ssh-agent, +otherwise it starts one. It saves the ssh-agent environment variables to +~/.keychain/$HOSTNAME-sh, so that subsequent logins and +non-interactive shells such as cron jobs can source the file and make +passwordless ssh connections. In addition, when keychain runs, it +verifies that the key files specified on the command-line are known to +ssh-agent, otherwise it loads them, prompting you for a password +if necessary.") +(home-page "http://www.funtoo.org/Keychain;) +(license license:gpl2))) + -- 2.9.2