From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id +Mg5ACU9amU7WQAA9RJhRA:P1 (envelope-from ) for ; Fri, 01 Dec 2023 21:08:05 +0100 Received: from aspmx1.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id +Mg5ACU9amU7WQAA9RJhRA (envelope-from ) for ; Fri, 01 Dec 2023 21:08:05 +0100 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 96B505AE6D for ; Fri, 1 Dec 2023 21:08:04 +0100 (CET) Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=koszko.org header.s=mail header.b=MrDdmq4M; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gnu.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1701461284; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=SHe7eI6IPB7c0qWqzgSRlMoJYsa/3hLW7YCBrf0LkwU=; b=AW5yMTfOlbnppMtHdZmz6U/RAfjDXVpnsPa63FiXXelpPa9C4I7l3xIgDqpd4SExq1f6yg EbJLuqkVdKu0MT8qx9Etp62xDYQbPusfPvx1oiDvNClPw5L+mZP4NuPFSGBw/1wOF8Acli lCf7MHAsxoj/QgNoGEUtYS4FhMYAD9eUGjc06cWsnNRKg4F5CANp5ktZs4TVmSbntqCisS jQ0S0CeDgjq0toNyPv540haPj7eB7nEYn4XkfM2XivuIDvlUExPhnCnKctXFgY6C6auTBX 6npSP1PHEIBn/xhC+5efcF/QSr1g49W+gqX1DmNG/8RX1fmELR3gLUGdZG8aVg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=koszko.org header.s=mail header.b=MrDdmq4M; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gnu.org ARC-Seal: i=1; s=key1; d=yhetil.org; t=1701461284; a=rsa-sha256; cv=none; b=VHWXtiFxKJwIeHtRrIPfdOjx4JxQf8iTpDZRYMBstIf6J404H2BL6pVyuiFfe0z8ltKpBO StgAyCfgu0AKsHyIehMijsW8WXBC0ZYJVvz8YFj2r9N2PViBdczE/TaKBKTE4iBnrVLIQ3 ZsBK48tdCcO6OZrdFIhmL3USmGfN291NnUvykcJjt1YCScLwpGXFKHcG68R6ekzcmZ0Vec RS78VVFIeeKwTHMbrUP4y+1gvVmOo5qih57CN9fA2ag1XYjV2qD1wVr/RELnEWQY1q271F cL+fiFZ3G4GmSdOVrhOxkQ5K4q+TNMWIUjoLNmtNUfFO4hPVh+aEKOd/nIeJFQ== Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r99nO-0001Cm-Bs; Fri, 01 Dec 2023 15:07:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r99nK-0001CY-KV for help-guix@gnu.org; Fri, 01 Dec 2023 15:07:27 -0500 Received: from koszko.org ([93.95.227.159]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r99nI-0008R1-9m for help-guix@gnu.org; Fri, 01 Dec 2023 15:07:26 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=koszko.org; s=mail; h=Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Subject :Cc:To:From:Date:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=SHe7eI6IPB7c0qWqzgSRlMoJYsa/3hLW7YCBrf0LkwU=; b=MrDdmq4MuTIB6oSYw6woKSi6a+ oR1+YRpQd6uxrkUAwLIZUTFaAj6JATF2Jex/lR27V70IZxXqBz1BYF4lfBb3oezD0HdTIcZrLYpUv IgoBdLTpcd1s6o2AHFwqq8/kd4z0AWASBzXaJrPW+iImHN4n6PK+FILoczzu7lBxZcpnrac17SjT5 aWkuvHz8EaAY3QanZzMsbe4gTTS/OLhzd04b9DwbwCULq/LCgqWYoUw7i5TTCqUO5IVZLjPKr0f7a rQEHSoVdlBhmf+EV+SElbKHDoGyKhqc+1LY4i4CdxP7VhkRk5Jgm+TIkhqPGZUHJ0d3tYWfhFdK08 yk1zwZ9doJtgVDzE33yCGfvP1IyKYHVxHRkbR2fy4lAuVKQKeJZrHEuXlPOYmE2UGVNdaESWABm1a 8rPYYArha8g4frDLDhEytVnho/KU/wQuD/IfQ4sjC7pk63fvafX+fZb63BN3GS9tQCet1XXfIObug PYVICobU7Ki7+ttw9nKG7fMm62JRnt+PNoYchhdg8Qkjy4goCT3VBNCwEEjo0/bLeU87uXrx8ZOti KZafoSqBIAGV4nH/Mz7p5Sz6DzWsFpkc5Cu4vb/VmRIarploP+okKHTF0ReAyyTkgPSmt0ebgnXv3 mSWYgxke0GgNg9m2F7IK1aNgs2TqetUZFLfrPQOiA=; Received: from 78-11-235-71.static.ip.netia.com.pl ([78.11.235.71] helo=localhost) by koszko.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96.1) (envelope-from ) id 1r99nE-0003c1-1X; Fri, 01 Dec 2023 21:07:20 +0100 Date: Fri, 1 Dec 2023 21:07:17 +0100 To: Mauritz Stenek Cc: help-guix@gnu.org Subject: Re: SSH error guix pull Message-ID: <20231201210717.0d3d8ec4.koszko@koszko.org> In-Reply-To: <87sf4liww5.fsf@disroot.org> References: <87zfyuit2g.fsf@disroot.org> <20231201141224.6169bfea.koszko@koszko.org> <87sf4liww5.fsf@disroot.org> X-Mailer: Claws Mail 4.1.1 (GTK 3.24.37; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/yRZGVyzlrcbW7S8r=P3QJQ/"; protocol="application/pgp-signature"; micalg=pgp-sha256 Received-SPF: pass client-ip=93.95.227.159; envelope-from=koszko@koszko.org; helo=koszko.org X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-guix@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Wojtek Kosior From: Wojtek Kosior via Errors-To: help-guix-bounces+larch=yhetil.org@gnu.org Sender: help-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -8.74 X-Spam-Score: -8.74 X-Migadu-Queue-Id: 96B505AE6D X-Migadu-Scanner: mx12.migadu.com X-TUID: PDz4mauOPnHK --Sig_/yRZGVyzlrcbW7S8r=P3QJQ/ Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable > Starting service root... > Service root started. > Service root running with value #t. > Service root has been started. > Uncaught exception while loading configuration file=20 > '/home/mst/.config/shepherd/init.scm': (goops-error #f "No=20 > applicable method for ~S in call ~S" (#< service-actions=20 > (1)> (service-actions shepherd)) ()) =20 > ``` >=20 > which I don't know how to fix. I see=E2=80=A6 I've never been using shepherd alone, in separation from Gu= ix but I see that my Guix-generated user shepherd config has this --8<---------------cut here---------------start------------->8--- (action 'root 'daemonize) --8<---------------cut here---------------end--------------->8--- while the example you linked to uses --8<---------------cut here---------------end--------------->8--- (perform-service-action 'shepherd 'daemonize) --8<---------------cut here---------------start------------->8--- Anyway, if there's no strong reason for not using Guix home, I'd suggest using it. I mean the `guix home` command and its subcommands. It handles =E2=80=94 among others =E2=80=94 shepherd configuration. The link = I gave earlier was about using SSH through Guix home. > > Btw, there's perhaps another solution =E2=80=94 pull from local git=20 > > checkout. > > You can pass a filesystem path instead of a url when running=20 > > `guix > > pull`. This might later cause some issues if you try to `sudo=20 > > guix > > system reconfigure` but that's another topic=E2=80=A6 =20 >=20 > I was able to install a package like this but it's not ideal. You can also set serve a cloneable git repo over HTTP on localhost=E2=80=A6 Here's a sample script for this that I happen to have written for my own purposes just today ;) --8<---------------cut here---------------start------------->8--- #!/usr/bin/env -S guix repl -- !# ;; SPDX-License-Identifier: CC0-1.0 ;; Copyright (C) 2023 Wojtek Kosior ;; ;; Available under the terms of Creative Commons Zero v1.0 Universal. (use-modules ((guix gexp) #:select (gexp file-append mixed-text-file program-file lower-object)) ((gnu packages version-control) #:select (git)) ((gnu packages web) #:select (lighttpd)) ((guix store) #:select (run-with-store with-store %store-monad= )) ((guix monads) #:select (mlet mbegin return)) ((guix derivations) #:select (built-derivations derivation-output-path derivation-outputs)= )) (define here (dirname (current-filename))) (define git-http-backend (file-append git "/libexec/git-core/git-http-backend")) (define lighttpd-config (mixed-text-file "lighttpd.conf" "\ server.document-root =3D \"/dev/null\" server.modules =3D ( \"mod_alias\", \"mod_cgi\", \"mod_setenv\") server.port =3D 8098 alias.url =3D ( \"/guix\" =3D> \"" git-http-backend "\" ) cgi.assign =3D (\"\" =3D> \"\") setenv.add-environment =3D ( \"GIT_PROJECT_ROOT\" =3D> \"" here "\" + \"/.git\", \"GIT_HTTP_EXPORT_ALL\" =3D> \"\" ) ")) (define run-lighttpd-guix-repo-server (program-file "run-lighttpd-guix-repo-server" #~(system* #$(file-append lighttpd "/sbin/lighttpd") "-D" "-f" #$lighttpd-config))) (system* (with-store store (run-with-store store (mlet %store-monad ((script-drv (lower-object run-lighttpd-guix-repo-server))) (mbegin %current-monad (built-derivations (list script-drv)) (return (derivation-output-path (assoc-ref (derivation-outputs script-drv) "out")))))))) --8<---------------cut here---------------end--------------->8--- One can write it as, say, "serve-git-repo.scm" in a git project checkout (possibly also listing it in `.git/info/exclude` to have git ignore it). Then `chmod +x` it and run =E2=80=94 if all goes OK, it should serve the repo at: http://localhost:8098/guix It's then possible to do e.g. --8<---------------cut here---------------start------------->8--- guix pull --url=3Dhttp://localhost:8098/guix --8<---------------cut here---------------end--------------->8--- The benefit is that the aforementioned `guix system reconfigure` seems to work afterwards (although the local git repo server needs to be running during this time). Voila! We no longer need to rely on remote git servers availability :) It'd make sense to also spawn this HTTP server through shepherd. And to generalize it to be able to serve multiple repos at once =E2=80=94 f= or example a custom Guix tree, a channel other than "guix" and some software projects Best Wojtek -- (sig_start) website: https://koszko.org/koszko.html fingerprint: E972 7060 E3C5 637C 8A4F 4B42 4BC5 221C 5A79 FD1A follow me on Fediverse: https://friendica.me/profile/koszko/profile =E2=99=A5 R29kIGlzIHRoZXJlIGFuZCBsb3ZlcyBtZQ=3D=3D | =C3=B7 c2luIHNlcGFyYXR= lZCBtZSBmcm9tIEhpbQ=3D=3D =E2=9C=9D YnV0IEplc3VzIGRpZWQgdG8gc2F2ZSBtZQ=3D=3D | ? U2hhbGwgSSBiZWNvbWUg= SGlzIGZyaWVuZD8=3D -- (sig_end) On Fri, 01 Dec 2023 12:37:58 -0600 Mauritz Stenek wro= te: > On 2023-12-01 at 07:12, Wojtek Kosior wrote: >=20 > > [[PGP Signed Part:Undecided]] > > Hi > > =20 > >> However, on a full Guix system I keep getting this error: > >>=20 > >> ``` > >> guix pull: error: Git error: error authenticating: no auth sock=20 > >> variable > >> ``` > >>=20 > >> and, for the life of me, I just can't get it to work. =20 > > > > Maybe you're not running ssh user agent daemon under your user?=20 > > You > > need it for this to work. > > > > You can probably spawn it in a number of ways. One of them=20 > > would be > > through Guix home. See this[1] Guix manual node for info about > > ssh-agent's home service :) > > > > Also, you're not running `guix pull` with sudo, are you? It=20 > > wouldn't > > work this way because sudo erases environment variables,=20 > > including > > "SSH_AUTH_SOCK". > > > > Btw, on my fully Guixified laptop I am using Guix home without > > ssh-agent configured and yet I do have ssh-agent running under=20 > > my user. > > I'm not sure what started it=E2=80=A6 =20 >=20 > Seems like that is the situation. I actually tried to run the=20 > ssh-agent user service example in the shepherd manual=20 > (https://www.gnu.org/software/shepherd/manual/html_node/Managing-User-Ser= vices.html)=20 > -- verbatim -- and I get this error: >=20 > ``` > Starting service root... > Service root started. > Service root running with value #t. > Service root has been started. > Uncaught exception while loading configuration file=20 > '/home/mst/.config/shepherd/init.scm': (goops-error #f "No=20 > applicable method for ~S in call ~S" (#< service-actions=20 > (1)> (service-actions shepherd)) ()) =20 > ``` >=20 > which I don't know how to fix. >=20 > Other than that example, I'm at a loss with ssh. >=20 > > =20 > >> (disclaimer: I'm a total scheme/guile neophyte -- and am=20 > >> learning=20 > >> as I go) =20 > > > > As all of us, haha :D =20 >=20 > :D >=20 > > > > Btw, there's perhaps another solution =E2=80=94 pull from local git=20 > > checkout. > > You can pass a filesystem path instead of a url when running=20 > > `guix > > pull`. This might later cause some issues if you try to `sudo=20 > > guix > > system reconfigure` but that's another topic=E2=80=A6 =20 >=20 > I was able to install a package like this but it's not ideal. >=20 > > Good luck and happy hacking! =20 >=20 > Thanks! I can tell you, it is a journey. >=20 > > Wojtek > > > > [1]=20 > > https://guix.gnu.org/manual/devel/en/html_node/Secure-Shell.html > > > > > > -- (sig_start) > > website: https://koszko.org/koszko.html > > fingerprint: E972 7060 E3C5 637C 8A4F 4B42 4BC5 221C 5A79 FD1A > > follow me on Fediverse:=20 > > https://friendica.me/profile/koszko/profile > > > > =E2=99=A5 R29kIGlzIHRoZXJlIGFuZCBsb3ZlcyBtZQ=3D=3D | =C3=B7=20 > > c2luIHNlcGFyYXRlZCBtZSBmcm9tIEhpbQ=3D=3D > > =E2=9C=9D YnV0IEplc3VzIGRpZWQgdG8gc2F2ZSBtZQ=3D=3D | ?=20 > > U2hhbGwgSSBiZWNvbWUgSGlzIGZyaWVuZD8=3D > > -- (sig_end) > > > > > > On Thu, 30 Nov 2023 19:47:43 -0600 Mauritz Stenek=20 > > wrote: > > =20 > >> I'm trying out Guix and created a personal (private) channel=20 > >> with=20 > >> some custom packages. I access my git repo with ssh. > >>=20 > >> Using Guix on a foreign distro, pulling from my git repo works=20 > >> fine after applying this strategy:=20 > >> https://issues.guix.gnu.org/31285. > >>=20 > >> However, on a full Guix system I keep getting this error: > >>=20 > >> ``` > >> guix pull: error: Git error: error authenticating: no auth sock=20 > >> variable > >> ``` > >>=20 > >> and, for the life of me, I just can't get it to work. > >>=20 > >> (disclaimer: I'm a total scheme/guile neophyte -- and am=20 > >> learning=20 > >> as I go) > >>=20 > >> Please help. > >> =20 > > > > [[End of PGP Signed Part]] =20 >=20 >=20 --Sig_/yRZGVyzlrcbW7S8r=P3QJQ/ Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iHUEARYIAB0WIQTpcnBg48VjfIpPS0JLxSIcWnn9GgUCZWo89QAKCRBLxSIcWnn9 GuUuAQCEogC2Aq4gMkSJ80y7giHmgH60UYNaYDrKr7A1CrfOngEAmhCdH1zrn9U1 irbqsplauONkse2xgj1ycESqF1DPdAM= =heN7 -----END PGP SIGNATURE----- --Sig_/yRZGVyzlrcbW7S8r=P3QJQ/--