Re: This is how you import a mailing list archives (e.g. guix-patches) into mu4e

2022-12-05 Thread Joshua Branson
Mekeor Melire  writes:

> 2022-11-16 / 23:41 / mek...@posteo.de:
>> 2022-11-16 / 23:22 / jbra...@dismail.de:
>> > November 16, 2022 6:15 PM, "Mekeor Melire"  wrote:
>
>> > > you might want to import a mailing-list-archive into mu4e. E.g.
>> > > because debbugs.el is slow, you might want to import the archives of
>> > > the guix-patches mailing list. This is how to do so.
>
>> > Would you mind writing this up and including it in the guix cookbook?
>>
>> Alright, I'll try to send a patch. I think I should change the
>> instructions in order to replace the unpackaged mb2md perl-script in
>> favor of the packaged mblaze tool. Afterwards, it should be straight
>> forward.
>
> I made a little shell script out of these instructions. You can find it
> attached. The script allows to either import a specified GNU
> mailing-list into a specified maildir, or update that maildir, beginning
> either from a specified -MM date or from the date of the latest
> message.
>
> For example, I used this command to initialize my mailing-list-maildirs:
>
> guix shell mblaze html-xml-utils -- sh -c 'for l in bug-guix
> guix-devel guix-patches help-guix; do ~/path/to/ugmltmd
> ~/path/to/mail/$l $l 2022-01; done'
>
> And I use the following command to update my mailing-list-maildirs:
>
> guix shell mblaze html-xml-utils -- sh -c 'for l in bug-guix
> guix-devel guix-patches help-guix; do ~/path/to/ugmltmd
> ~/path/to/mail/$l $l; done'
>
> I wonder if it still makes sense to add some instructions into the Guix
> cookbook. And if so, I wonder if this shell script should just be put
> there or if it should live in some public git repository somewhere.
>
> What do you think?

I would reach out to guix devel/guix-patches and try to put this little
code snippet in guix's source's /etc directory.  Then add to the
cookbook explaining how to use it.  Something like this would be
tremendously useful!

Thanks for working on it!

Joshua



Re: Auto-Login to a Specific TTY

2022-11-14 Thread Joshua Branson
Raghav Gururajan  writes:

> Joshua,
>
> Any you still using `Auto-Login to a Specific TTY` guide mentioned in cookbook
> [1]?
>
> I'm getting the message `Error in service module` in TTT and doesn't 
> auto-login.
>
> Here are references to my config, [2] and [3].
>
> Any ideas?
>

This has been broken for me for at least a year.  :(

The relevant bug report is #56958.

The bug report also includes a vm, which the last time I tested did let
you autologin to tty1, but not any others.

I've since moved to seatd, which apparently doesn't support autologin.
So for now, I am just not worrying about autologin to tty.  :)

>
> [1]
> https://guix.gnu.org/en/cookbook/en/html_node/Auto_002dLogin-to-a-Specific-TTY.html#Auto_002dLogin-to-a-Specific-TTY
> [2]
> https://git.sr.ht/~raghavgururajan/guix-config/tree/master/item/system/config.scm#L269
> [3]
> https://git.sr.ht/~raghavgururajan/guix-channel/tree/master/item/rg/services/base.scm#L5
>
> Regards,
> RG.



Re: mbsync with XOAUTH2 SASL mechanism

2022-11-13 Thread Joshua Branson
Peter Polidoro  writes:

> I am trying to setup an oauth2 email account to work with Emacs using mbsync
> (from the isync guix package) and mu4e.
>
> I setup oauth2ms to fetch the token and setup mbsync to use oauth2ms for the
> PassCmd and XOAUTH2 for the AuthMechs.
>
> Now when I run mbsync, I get the error:
>
> IMAP error: selected SASL mechanism(s) not available;
>   selected: XOAUTH2
>   available: SCRAM-SHA-1 SCRAM-SHA-256 GS2-IAKERB GS2-KRB5 GSSAPI
> GSS-SPNEGO
>  DIGEST-MD5 EXTERNAL OTP CRAM-MD5 PLAIN ANONYMOUS
>
> I found instructions online saying I need to install the xoauth2 sasl plugin
> from https://github.com/moriyoshi/cyrus-sasl-xoauth2
>
> What is the proper Guix way of getting mbsync to work with XOAUTH2? Should I 
> try
> to package cyrus-sasl-xoauth2 or modify the isync package or something else?
> Thanks!
>

Man this sounds complicated!  haha.  I use isync too...but I do the
really really lazy (insecure) way via ~/.authinfo.

Joshua



auto encrypt user passwords for opensmtpd-service

2022-11-04 Thread Joshua Branson



I am currently trying to extend guix's opensmtpd-service, so that users may
configure the service via records. As a part of this journey, I thought it would
be cool, if users could specify password records like the following, which would
auto encrypt the passwords in the resulting configuration 1:

#+BEGIN_SRC scheme
(opensmtpd-table
 (name "cred-table")
 (data '(("joshua" . "password"
#+END_SRC

would turn into:

#+BEGIN_SRC text
table "creds-table" { "joshua" = 
"$6$yvZhvM.kFiUu0rGV$hbHcUimLf96eKlUFdGh1tIeKrmlL.cRgaftdefmf57R3iZ/L0iY7xVY/ytbqQuZS9b7yZj3Ju5l.INxjvZLuq0"
 }
#+END_SRC

Currently, users of opensmtpd, must generate user passwords manually, via the
following:

#+BEGIN_SRC shell
guix install opensmtpd
#+END_SRC

#+BEGIN_SRC shell
$(find /gnu/store -name '*encrypt*' | grep -m 1 opensmtpd) "password"
#+END_SRC

#+RESULTS:
: 
$6$3prHAJvjxNhDGz7G$74ENoGsV4AnxXiNvPnhS0d9.0Cj5ywgxBCwndgxfvSRHAUWeuOSpkmsTyHEFk4O4z.9dVkx3bMUiaX18HvTbA.

:TheActualFilePathOfTheEncryptBinary:
#+BEGIN_SRC shell
ls -lha $(find /gnu/store -name '*encrypt*' | grep -m 1 opensmtpd)
#+END_SRC

#+RESULTS:
: lrwxrwxrwx 1 root root 87 Dec 31  1969 
/gnu/store/i1bh9a0q9wshpmhl4dnkdkqygfq532dw-profile/libexec/opensmtpd/encrypt 
-> 
/gnu/store/qf84lf6nddsf1saan0qiv60qwz8hsic9-opensmtpd-6.8.0p2/libexec/opensmtpd/encrypt

:END:

I am trying to take a stab at auto-generating these user passwords, and as it
turns out... I really do NOT understand gexps.

In a guile repl, I am not getting, well anything to work.
#+BEGIN_SRC scheme
,use (gnu packages mail)
,use (guix gexps)
,use (guix monad-repl)
,m (gnu services mail)

#~(string-append #$(file-append opensmtpd "/sbin/smtpctl"))
$23 = # 
"/sbin/smtpctl">:out>) 7050f4a17750>
scheme@(gnu services mail) [11]> ,build $23
While executing meta-command:
ERROR:
  1. : # 
"/sbin/smtpctl">:out>) 7050f4a17750>
scheme@(gnu services mail) [11]> #~(begin (string-append #$opensmtpd 
"/sbin/smtpctl"))
$24 = #:out> "/sbin/smtpctl")) 7050f4532d50>
scheme@(gnu services mail) [11]> ,build $24
While executing meta-command:
ERROR:
  1. : #:out> 
"/sbin/smtpctl")) 7050f4532d50>
scheme@(gnu services mail) [11]>
$25 = #
scheme@(gnu services mail) [11]> ,build $25
While executing meta-command:
ERROR:
  1. : #
scheme@(gnu services mail) [11]> (system* "ls")
ABOUT-NLS   build-aux config.status  etc  guix INSTALL  
Makefile poscripts
aclocal.m4  ChangeLog configure  gnu  guix-daemon  
libformat.a  Makefile.am  pre-inst-env  test-env
AUTHORS CODE-OF-CONDUCT   configure.ac   gnu.go   guix.go  
libstore.a   Makefile.in  READMEtests
autom4te.cache  config-daemon.ac  COPYINGgnu.scm  guix.scm 
libutil.aNEWS ROADMAP   THANKS
bootstrap   config.logdocguileHACKING  m4   
nix  run-opensmtpd-record-sanitation-test.log  TODO
$26 = 0
scheme@(gnu services mail) [11]> #~(begin (system* (string-append opensmtpd #$ 
"/sbin/smtpctl") " password\n"))
$27 = #) " password\n")) 7050f4364480>
scheme@(gnu services mail) [11]> ,build $27
While executing meta-command:
ERROR:
  1. : #) " password\n")) 7050f4364480>
scheme@(gnu services mail) [11]> #~(begin $#opensmtpd)
$28 = #
scheme@(gnu services mail) [11]> ,build $28
While executing meta-command:
ERROR:
  1. : #
scheme@(gnu services mail) [11]> #~(begin (mkdir #$output)
  (chdir #$output)
#$opensmtpd)
$29 = #) (chdir #) 
#:out>) 7050f5cd3f60>
scheme@(gnu services mail) [11]> ,build $29
While executing meta-command:
ERROR:
  1. : #) (chdir 
#) #:out>) 7050f5cd3f60>
scheme@(gnu services mail) [11]> ,bt
   1 (string-append # "/sbin/smtpctl"> "/sbin/smtpctl")
In ice-9/boot-9.scm:
  1685:16  0 (raise-exception _ #:continuable? _)
scheme@(gnu services mail) [11]> #~(begin (mkdir $#output)
  (mkdir (string-append #$output) 
"/libexec")
  (string-append opensmtpd 
"/opensmtpd"))
$30 = #) "/libexec") (string-append opensmtpd "/opensmtpd")) 7050f5b271b0>
scheme@(gnu services mail) [11]> ,build $30
While executing meta-command:
ERROR:
  1. : #) "/libexec") (string-append opensmtpd 
"/opensmtpd")) 7050f5b271b0>
scheme@(gnu services mail) [11]>
#+END_SRC

Any tips, suggestions, or example code that I should look at would be very
helpful.  Thanks!

Joshua

1.  It is entirely possible, that it would be better for users to manually
   generate their own passwords.  And NOT allow the service to generate those
   passwords for them.  If that is your opinion, don't hesitate to let me know.
   :) 



New ,build command sets the wrong path for guix daemon

2022-10-07 Thread Joshua Branson


Hello!

The new ,build meta command is pretty awesome!  It works in the guix
repl, but seems to give an error in the geiser repl.

#+BEGIN_SRC org
joshua@crazyhorse ~ (master)> guix repl
GNU Guile 3.0.8
Copyright (C) 1995-2021 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guix-user)> ,use (guix)
scheme@(guix-user)> ,build (plain-file "the" "text")
$1 = "/gnu/store/k6mvi88r0hz4349imxzpx704lcqz3jv5-the"
#+END_SRC

But do the same in a geiser repl, and I am running into trouble:

#+BEGIN_SRC org
,m (gnu services mail)
scheme@(gnu services mail)> ,use (guix)
scheme@(gnu services mail)>
While executing meta-command:
ERROR:
  1. :
  file: "/usr/local/var/guix/daemon-socket/socket"
  errno: 2
#+END_SRC

What am I doing wrong?

Thanks,

Joshua



Re: Guix home, guix system, channels, some noob questions

2022-07-11 Thread Joshua Branson
Daniel Meißner  writes:

> Hi Sébastien,
>
> Sébastien Rey-Coyrehourcq writes:
>
>> Thanks,  in fact when i see *guix home* that was my first intention
>> (like home-manager in nix).
>>
>> The only things holding me back at the moment is two things :
>>
>> a) doom emacs flavour, how to manage the fact that doom use straigt.el
>> to maintain packages

I actually use doom emacs on guix system.  I have not yet migrated to
guix home just yet.  I had an issue with doom emacs NOT having debbugs
installed.  This worked for me:

$ guix install emacs-debbugs

Then I opened up: .doom.d/config.el
(require 'debbugs-autoloads)

$ doom sync

Now I can use doom emacs and debbugs!

Maybe you can add other emacs packages to doom that way.

>> b) "password / secrets" management ?
>>
>> There are two things, file to directly encrypt (like ssh key) and
>> password to hide into configuration file (templating)
>>
>> b.1) So, that need to encrypt/decrypt more or less "on-the-fly" the
>> files using gpg/yubikey or age like yadm (
>> https://yadm.io/docs/encryption ) or chezmoi
>> (https://www.chezmoi.io/user-guide/encryption/gpg/) do ?
>>
>> b.2) And for templating, like replacing ${mypassword} into some
>> configuration file by getting info stored into password manager like
>> "pass", i also don't know how to do that.
>>

This is probably heresy...but I use an ~/.authinfo file.  It's a plain
text file.  I have never been able to figure out how to use a
~/.authinfo.gpg.  Or rather I did figure out how to use it...Then lost
my gpg key, and then lost all of my passwords.  So now I have an
.authinfo file, and I have a private git repo of my /home/joshua of
various files.  It's probably a poor way of doing it, but it's how I do it.

Hope that helps,

-- 

Joshua Branson
https://gnucode.me
https://video.hardlimit.com/a/joshua_branson/video-channels
mastodon: thegnu...@fosstodon.org
Sent from Emacs, Gnus, and the Hurd!



When and how should one use "(thunked)" from (guix records)?

2021-10-19 Thread Joshua Branson
Hey guix!  I'm trying to flush out the (guix records) for the
=opensmtpd-service=.  It's super fun doing it by the way.  If you've
never messed with (guix records) then you should totally give it a
try.  Thanks for the author of (guix records).  You did a really great
job!  The purpose of this email is to get some suggestions on my
opensmtpd-records.scm file and to use this email as a VERY ROUGH draft
for a (guix records) blog post, if there is interest in it.  :)

The code that I have so far can be seen here:

https://notabug.org/jbranso/linode-guix-system-configuration/src/master/opensmtpd-records.scm

I'm open to suggestions.  :)

I have a basic procedure that turns a  into a string...

(define (opensmtpd-configuration->string record)
   ...)

I've had a ton of fun using the =(thunked)= bit in records.  The
documentation in the source code says something like this (also does
the guix manual document guix records somewhere?).

#+BEGIN_EXAMPLE
The 'port' field is \"thunked\", meaning that calls like '(thing-port x)' will
actually compute the field's value in the current dynamic extent, which is
useful when referring to fluids in a field's value.  Furthermore, that thunk
can access the record it belongs to via the 'this-thing' identifier.
#+END_EXAMPLE

I've found some "too-clever" ways of using (thunked) that people on
irc mentioned may NOT be wise to use.  For example, using (thunked) to
define mutually exclusive fieldnames and a fieldname that returns
another fieldnames value.  I think these are not "good" ways of using
(thunked).  Anyone have any good ideas for using (thunked)?

Below is some obligatory code.

* This bit of guix records shows off the =(thunked)= and =this-record=.
=(thunked)= lets you refer to the record that is being defined.  In
this case, I am defining mutually exclusive fieldnames...If =relay= is
defined, then =local-delivery= returns =#f= as its value, which is
pretty awesome.

*Note*: a simpler way to define a mutually exclusive fieldnames is to
have one fieldname that accepts == or ==.  

#+BEGIN_SRC scheme
(define-record-type* 
  opensmtpd-action make-opensmtpd-action
  opensmtpd-action?
  this-record
  (name opensmtpd-action-name
(default "local"))
  (relay opensmtpd-action-relay
 (default "#f")
  (local-delivery opensmtpd-action-local-delivery ;;type 

  ;; local-delivery has a default value so (service 
opensmtpd-service) will just work for
  ;; local email delivery
  (default (opensmtpd-local-delivery-configuration))
  (thunked)
  (sanitize (lambda (value)
  (cond
   ;; if relay has a value, then local-delivery 
should be #f
   ;; man (guix records) rocks!
   ;; TODO/FIXME, perhaps I should merge 
fieldnames 'relay', 'local-delivery', 'forward-only',
   ;; and 'expand-only' into one fildname 
called "method".  Then the user has to use a specific
   ;; record type to be mutually exclusive.
   [(opensmtpd-action-relay this-record)
   #f] 
   [(opensmtpd-local-delivery-configuration? 
value)
   value] 
   [else
(display (string-append " 
fieldname 'local-delivery' "
"needs to be of 
type .\n"))
(throw 'bad! value)])
#+END_SRC

* This bit of guix records defines a fieldname which returns the type of 
another fieldname

Fieldname =type= returns the type of values that =values= has either
='list-of-strings= or ='assoc-list=.

*Note*: It is probably better to define a function outside of the
record that returns the type that value is.  That just makes it
conceptually easier for the next hacker.

#+BEGIN_SRC scheme
  (define-record-type* 
opensmtpd-table make-opensmtpd-table
opensmtpd-table?
this-record
;; string
;; is a list of values or key values
;; eg: (list "mysite.me" "your-site.com")
;; eg: (list ("joshua" . "jos...@gnu.org") ("james" . "ja...@gnu.org"))
(values opensmtpd-table-values
(default #f)
(sanitize (lambda (value)
(if (or (list-of-strings? value)
(assoc-list? value))
value
(begin
  (display " fieldname: 'value' 
must be a list of strings or an association list.\n")
  (throw 'bad! value))
;; can be of type: (quote list-of-strings) or (quote assoc-list)
;; type is discovered during the initialition 

Re: Guix Home on a Foreign Distro

2021-10-02 Thread Joshua Branson
jgart  writes:

> Hi Guix,
>
> Is anyone using guix home on a foreign distro?

I'd love to know if anyone is daring enough to use guix home on the Hurd...

>
> If so, which one?
>
> Do you have configs you'd like to share?
>
> I'm interested in using guix home in parallel to my dotfiles that are 
> currently 
> being managed by chezmoi on void linux.
>
> all best,
>
> jgart
>
> 3B1D 7F19 E36B B60C 0F5B 2CA9 A52A A2B4 77B6 DD35
>

-- 
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: building but skipping tests?

2021-09-21 Thread Joshua Branson
"Jonathan McHugh"  writes:

> Hi Joshua,
>
> Is there any published guidance covering what test responses are considered 
> as flagging up? 
>
> For instance, would problems be sent to bug-g...@gnu.org as a matter of 
> principle? And what should and should not be included?

https://guix.gnu.org/manual/en/html_node/Tracking-Bugs-and-Patches.html

There's no hard fast rule about what should or should not be sent.  If
it feels like a bug, go ahead and submit it.

It's typically good to put the output of "guix describe" and "guix
system describe" and what hardware you are using when describing a bug.

:)

>
> Kind regards,
>
> 
> Jonathan McHugh
> indieterminacy@libre.brussels
>
> September 21, 2021 8:46 AM, "Joshua Branson"  wrote:
>
>> Andy Tai  writes:
>> 
>>> Hi, if I try to install a package and that may trigger building a
>>> number of dependencies (when no substitutes for some reason but that
>>> is outside the concern of this question), I notice that since the
>>> build processes would run the tests by default, that takes a lot of
>>> time. I wonder if it is possible to skip tests when building
>>> locally? Of course running tests are good but if I am not a
>>> developer of the packages being built running the tests may not be of
>>> much utility to me.
>> 
>> Note that you can disable the tests. BUT enabling said tests, lets you
>> find errors, which you can report, which is really valuable to guix
>> developers. :)
>> 
>>> Thanks for the info on this.
>> 
>> --
>> Joshua Branson (jab in #guix)
>> Sent from Emacs and Gnus
>> https://gnucode.me
>> https://video.hardlimit.com/accounts/joshua_branson/video-channels
>> https://propernaming.org
>> "You can have whatever you want, as long as you help
>> enough other people get what they want." - Zig Ziglar
>

-- 
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: building but skipping tests?

2021-09-21 Thread Joshua Branson
Andy Tai  writes:

> Hi, if I try to install a package and that may trigger building a
> number of dependencies (when no substitutes for some reason but that
> is outside the concern of this question), I notice that since the
> build processes would run the tests by default, that takes a lot of
> time.   I wonder if it is possible to skip tests when building
> locally?   Of course running tests are good but if I am not a
> developer of the packages being built running the tests may not be of
> much utility to me.

Note that you can disable the tests.  BUT enabling said tests, lets you
find errors, which you can report, which is really valuable to guix
developers.  :)

>
> Thanks for the info on this.
>

-- 
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: No network on GNU/Hurd, not even localhost

2021-09-08 Thread Joshua Branson
Akib Azmain Turja  writes:

> I've downloaded latest QEMU image from build servers (build details:
> https://ci.guix.gnu.org/build/618573/details).  Then I booted it with
> libvirtd on my Guix System on GNU/Linux.  It booted and the login shell

Is this the same as booting it with qemu?  I know I've had issues with
no internet access with the Hurd too, but I'm not a very technical user,
so it's most likely operator error.

> Can someone help me with this issue?  The QEMU image is almost unusable
> without networking.
>
> Note: all commands and their outputs are copied by hand.

I wish I had more knowledge to help you out.  

-- 
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: Guix on the MNT Reform

2021-08-29 Thread Joshua Branson
"Jonathan McHugh"  writes:

> I hope you are enjoying the mechanical keyboard, it seems great!
>

The MNT reform does seem like my dream laptop.  I do want a mechanical
keyboard.  What's the max RAM on the reform?  I thought it was 4GB?
Sounds pretty low...

Though I do like what Luke Leighton is doing with the power SOC/GPU.

> 
> Jonathan McHugh
> indieterminacy@libre.brussels
>
> August 17, 2021 7:24 PM, "Christine Lemmer-Webber"  
> wrote:
>
>> Hi! Well my MNT Reform arrived. I'd like to start putting Guix on it
>> but I'm kind of low on time right now...
>>
>> I wonder if anyone else has started making progress towards this?
>>
>> What I'd love: a tutorial that says "here are the steps to make an sd
>> card you can boot your reform with"!
>>
>> Christopher Lemmer Webber writes:
>>
>>> I'm very excited to see the MNT Reform launch:
>>>
>>> https://www.crowdsupply.com/mnt/reform
>>> https://www.crowdsupply.com/mnt/reform/updates/the-campaign-is-live
>>>
>>> Completely hackable laptop; all the designs (that are possible) are
>>> libre, and you can even 3d print to replace many of the parts.
>>>
>

--
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Guix Hang Out Attempt 2 and an Unoffical Guix Hackathon/config party

2021-07-27 Thread Joshua Branson
Joshua Branson  writes:

> Akib Azmain Turja  writes:
>
>> Vagrant Cascadian writes:
>>
>>
>> The idea of using UNIX epoch is good.  But the command showed that it's
>> Wed, 28 Jul 2021 01:00:00 +0600 for me, so I can't attend.  Can you
>> change the time?  And, is that instance of Jitsi Meet free (libre)?
>
> I believe it is...it's the official jitsi instance.
>
> We could always meet at the official FSF jitsi instance, though I'm not
> certain if they intend their instance to be a hang out instance...

The hangout today was awesome!

I and other mysterious and extremely talented C developer discovered the
wonder of power9!

guix environment -s powerpc64le-linux coreutils --ad-hoc coreutils gdb

is a cool command that lets you create a guix binary that runs of
powerpc.  You can then use said guix binary in qemu!  Though it might
work faster if you had a power9 machine.

This talented and mysterious developer also mentioned that IBM does
provide power9 VMs that you can request access to, which would make the
debbugging process a little smoothier.  

I talked about my current email server and other things.  Hopefully we
will see more people next week!

-- 
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: Guix Hang Out Attempt 2 and an Unoffical Guix Hackathon/config party

2021-07-24 Thread Joshua Branson
Akib Azmain Turja  writes:

> Vagrant Cascadian writes:
>
>
> The idea of using UNIX epoch is good.  But the command showed that it's
> Wed, 28 Jul 2021 01:00:00 +0600 for me, so I can't attend.  Can you
> change the time?  And, is that instance of Jitsi Meet free (libre)?

I believe it is...it's the official jitsi instance.

We could always meet at the official FSF jitsi instance, though I'm not
certain if they intend their instance to be a hang out instance...

-- 
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: Making a DIY smart or dumb phone

2021-07-24 Thread Joshua Branson
Vagrant Cascadian  writes:

> On 2021-07-24, Bone Baboon wrote:
>> jbranso--- via writes:
>
>>> and unfortunately it needs to support SMS and traditional calls, so there 
>>> might be some binary blobs for the modem.
>
> I've been using for SMS and voice calls:
>
>   https://jmp.chat
>
> It runs on all free software and provides a pretty rich SMS experience
> using an XMPP client, and you can use a SIP (or maybe even XMPP) client
> for voice calls.

I use JMP.chat too...exclusively.  :)  BUT jmp.chat only works when you
have wifi.  And sometimes I would like to be at the downtown park, which
doesn't have wifi...if work called me then, I would not be available.
Since I get called if someone doesn't show up for a shift...that won't
quite work for me.

However, when SpaceX gets their satellite internet going...that may be
an option for me.

>
> live well,
>   vagrant
>

--
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Guix Hang Out Attempt 2 and an Unoffical Guix Hackathon/config party

2021-07-24 Thread Joshua Branson
Akib Azmain Turja  writes:

> Vagrant Cascadian writes:
>
>> On 2021-07-22, jbra...@dismail.de wrote:
>
> The idea of using UNIX epoch is good.  But the command showed that it's
> Wed, 28 Jul 2021 01:00:00 +0600 for me, so I can't attend.  Can you
> change the time?  And, is that instance of Jitsi Meet free (libre)?

Perhaps in the future.  Is that super early in the morning for you?
Just curious.  :)

I can record the video if you like, though audio may be REALLY poor.

--
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Making a DIY smart or dumb phone

2021-07-24 Thread Joshua Branson
Bone Baboon  writes:

> jbranso--- via writes:
>
>> I'm getting really tired of carrying my Android phone around with google's 
>> spyware,
>
> This issue is larger than just Android / iOS and the applications a user
> deliberately uses.  There is also the issue of unwanted spyware.
>
> <https://en.wikipedia.org/wiki/Project_Pegasus_(investigation)>
>
> You could eliminating the issues mobile phones have entirely by choosing
> to not use a mobile phone.
>
> <https://libreplanet.org/wiki/Going_NoPhone>

I used to do that!  I was nophone for a while, but then I became a
manager at work.  If someone does not show up for work, then they call
me.  I could give up my manager position or find a job that doesn't
require a way to reach me 24/7.

OR I could get a ham radio license...operate a radio tower somewhere
(for real cheap...though that might not be so cheap)...then if work
needs me, they can chat to me via that way...and my libre phone could
pick up the signal...though that might mean I'd have to learn some GNU
Radio, which would be fun!  This strategy is what JMP.chat wants to do
eventually.

>>  (apologies for the youtube link...)
>
> You could share Invidious links as well as YouTube links.  The YouTube
> links could be a backup in case the Invidious server linked to goes
> down.
>
> <https://docs.invidious.io/Invidious-Instances.md>
>
>> and unfortunately it needs to support SMS and traditional calls, so there 
>> might be some binary blobs for the modem.
>
> You can do SMS using email.
>
> <https://en.wikipedia.org/wiki/SMS_gateway#Email_clients>

Now that is awesome!  I will look into that.

>
> Maybe you could convince the people you want to talk to use free
> software like Jami.  For people who are physically nearby walkie talkies
> are an option.

I'm actually really excited about Jami!  It looks really promising!

Jami only works using wifi, as far as I know.  Sometimes I would like to
go to the park, which has no wifi.  Since work has to be able to reach
me 24/7 this won't quite work...again, I could give up my manager
position or get a different job.

>
> <https://jami.net/>
>
> <https://en.wikipedia.org/wiki/Walkie-talkie>

Cheap ones only work 1-1.5 miles.  Sometimes I'm 30 miles away from
work.  But this is something to consider.  There are some expensive
walkie talkies that the military uses that work anywhere in the world.

--
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Guix Hang Out Attempt 2 and an Unoffical Guix Hackathon/config party

2021-07-23 Thread Joshua Branson
Anadon  writes:

> I'll see about making it.  It is during my work hours.
>

Sorry.  I work second shift.  :(  Trying to find a time that I am free
is difficult.  

> On Thu, Jul 22, 2021 at 5:13 PM  wrote:
>
>> Hello friends!
>>
>> Let's try to do another guix hang out next Tuesday, July 27th! We'll meet
>> at 7pm UTC. (I think that is 3pm EST). That is one of the few days I
>> usually have officially off, so I will meet you all with jitsi:
>>
>> https://meet.jit.si/guix
>> password: smoothsystem
>>
>> I plan on meeting for at least an hour, but ya'll are welcome to attend
>> for a shorter or longer duration.
>>
>> Feel free to come and chat about guix or ask any config questions.
>> I'm perfectly happy to try to help you fix your current configuration
>> issue.
>>
>> The following Tuesday, August 3rd at 7pm UTC, let's do an unofficial
>> guix hackathon/config party.  What service do you want?  What package?
>> What services are you having difficulty setting up?
>>
>> I want to see gitile-service-type get merged personally.  It looks so
>> beautiful!  How about a sway-service-type? opensmtpd-configuration record?
>> Let's talk about it then:
>>
>> https://meet.jit.si/guix
>> password: smoothsystem
>>
>> If the guix room gets too noisy and crowded, we can always split it up.
>>
>> Live long and prosper,
>>
>> Joshua
>>
>>

-- 
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Guix Hangout This Wednesday Jul 21 5pm EST

2021-07-19 Thread Joshua Branson


Hello!

Let's do a GNU Guix hangout this Wednesday night July 21 at 5pm EST.  I
think that's -5 UTC.  We'll meet online at https://meet.jit.si/guix .
Come and share what cool thing you are doing with Guix!

P.S.  Sorry for the short notice.  Also my work is fairly hectic, so it
is possible that I will be called into work like 5 minutes into the
hangout.  Hopefully that won't happen though.  :)

Thanks,
Joshua

--
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Typing LUKS passphrase only once and a possible solution

2021-07-07 Thread Joshua Branson
Thomas Albers  writes:

> Hello everyone,
>
> I recently installed guix on my X200T and through the process I found
> some challenges I was not not solve by myself. Its nothing strictly
> necessary but I would like to solve them nonetheless.
>
> My current setup consists of libreboot, my main luks partition and a
> lvm group inside.

I'm a little jealous.  I haven't figured out how to set up an encrypted
/.  Did you encrypt your /boot as well!?  I've got a osboot-ed T400.

> The problem I mentioned is the necessity of typing the passphrase for
> the luks device twice. Once for the bootloader and again for the
> kernel itself.

I've heard that this is the "most" secure way of booting.  Though I'm no
security expert.  :)

> In other distributions this is avoided by copying a key file into the
> initramfs and passing the kernel parameter "cryptkey" to linux. So
> naturally the first I tried after not finding any documentation on
> this topic was this, albeit without success.

I don't think that we have a guix-y way of doing this yet.  Though I
would love it if we did!

Your other questions have moved past my expertise.  I wish I could be
more help.  :)

>
> Thomas Albers Raviola
>

--
Joshua Branson (jab in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: My very own Guix System Server in my apartment

2021-07-01 Thread Joshua Branson
"Jonathan McHugh"  writes:

> Dear Bone,
>
> A great suggestion.
>
> I do wonder whether a 'Guildiverxe' would require more than 30GB to
> manage users compiling scripts. I guess a build farm strategy would
> have to be used where precompiled scripts are unavailable.

This is something to consider I suppose...I'll just have to set
something up and see what what happens.

>
> Would such an enquiry be for the bods upstairs though?
> => https://lists.nongnu.org/archive/html/guix-devel/

I might mail them to get some pointers for setting up a public access
space.  Thanks for the tip!  And I might email Guix HPC too.

>
> 
> Jonathan McHugh
> indieterminacy@libre.brussels
>
> July 1, 2021 5:05 AM, "Bone Baboon"  wrote:
>
>> Joshua Branson writes:
>>
>>> So I will shortly be setting up my very own Guix System server in my
>>> apartment! I am super excited!
>>>
>>> What else should I do with said server?
>>
>> Having a public access Guix server would be a nice way for people to try
>> out Guix.
>>
>> Two examples of public access servers that I am aware of are the
>> tildeverse and SDF.
>>
>> <https://tildeverse.org>
>> <http://sdf.org>
>>
>> Currently the tildeverse does not have any servers that are running FSDG
>> distributions. <https://tildeverse.org/members>
>>
>> Interestingly this ties in with the other responses about Gemini as when
>> I was asking about Gemini on Freenode I was directed to
>> #gem...@tilde.chat which is on the tildeverse IRC network.
>> <https://tilde.chat>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: My very own Guix System Server in my apartment

2021-07-01 Thread Joshua Branson
Bone Baboon  writes:

> Joshua Branson writes:
>> So I will shortly be setting up my very own Guix System server in my
>> apartment!  I am super excited!
>
>> What else should I do with said server?
>
> Having a public access Guix server would be a nice way for people to try
> out Guix.
>
> Two examples of public access servers that I am aware of are the
> tildeverse and SDF.
>
> <https://tildeverse.org/>
> <http://sdf.org/>

I like that idea!  I was actually thinking that Guix System lets regular
users interact with the system...I could probably define an nginx
service that does what https://tilde.club/ does namely a user puts a
static site in their home directory, and it gets served at

https://tilde.club/~/

>
> Currently the tildeverse does not have any servers that are running FSDG
> distributions. <https://tildeverse.org/members/>
>
> Interestingly this ties in with the other responses about Gemini as when
> I was asking about Gemini on Freenode I was directed to
> #gem...@tilde.chat which is on the tildeverse IRC network.
> <https://tilde.chat/>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Install and reinstall issues on Fedora 34

2021-06-30 Thread Joshua Branson
Sébastien Pierre  writes:

> Hi there,
>
> I am evaluating Guix and am running into some issues getting it to work
> under Fedora 34 Workstation. I followed the binary install instructions
> <https://guix.gnu.org/manual/en/html_node/Binary-Installation.html>,
> running the install script from an interactive root shell. All went well, I
> rebooted the VM, but then guix-daemon failed to start:

So is Fedora running on the VM?  And you are running guix the package
manager on top of Fedora, which is inside a vm?  What are you running on
metal?  What operating system is touching your hard drives?

Just check the basics...GNU Guix, the package manager, should run on any
distro.  Yes Fedora's SELinux policy could be breaking some things...

>
> × guix-daemon.service - Build daemon for GNU Guix
>  Loaded: loaded (/etc/systemd/system/guix-daemon.service; enabled;
> vendor preset: disabled)
>  Active: *failed *(Result: exit-code) since Tue 2021-06-15 08:50:44
> NZST; 2 days ago
> Process: 691
> ExecStart=/var/guix/profiles/per-user/root/current-guix/bin/guix-daemon
> --build-users-group=guixbuild (code=exited, status=203/EXEC)
>
> Jun 15 08:50:44 fedora systemd[1]: Started Build daemon for GNU Guix.
> Jun 15 08:50:44 fedora systemd[691]: guix-daemon.service: *Failed to locate
> executable* /var/guix/profiles/per-user/root/current-guix/bin/guix-daemon:
> Permission den>
> Jun 15 08:50:44 fedora systemd[691]: guix-daemon.service: Failed at step
> EXEC spawning
> /var/guix/profiles/per-user/root/current-guix/bin/guix-daemon: Permission
> de>
> Jun 15 08:50:44 fedora systemd[1]: guix-daemon.service: Main process
> exited, code=exited, status=203/EXEC
> Jun 15 08:50:44 fedora systemd[1]: guix-daemon.service: Failed with result
> 'exit-code'.
>
> It seems like a permission error, as the ExecStart path exists and resolves
> to the /gnu/store, which is ther. Manually running the command does work as
> well. I did try to replace the readlink -f'ed path in the SystemD service:
>
> ExecStart=/gnu/store/0iii8i1lc4wg3wccs1db7y7d8lg80i04-guix-1.3.0/bin/guix-daemon
> --build-users-group=guixbuild
>
> But the same Permission Denied/Failed to locate issue remains. I know that
> Fedora uses SELinux which sometimes causes some problems, but I'm not sure
> about how to resolve that.
>
> Help would be appreciated :)
>
> Many thanks
>
> Sebastien

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



My very own Guix System Server in my apartment

2021-06-30 Thread Joshua Branson
Hello Guix people!

So I will shortly be setting up my very own Guix System server in my
apartment!  I am super excited!  I would love to hear any and all
advice.  I should probably set up a good firewall.  I should probably
use REALLY LONG passwords.  AND ONLY use ssh authentication.

I plan to have this Guix System Server host my websites:

gnucode.me and propernaming.org.

I intend this server to host email for the above sites.

I do have a static IP address a signed by my ISP.

I want to run cuirass or the Guix Build Coordinator.

I want to run a GNU FM and or libre.fm instance.

What else should I do with said server?

It's a Dell Optiplex 7020 with 30GB of RAM with a 3TB HDD.  It cost me
$250 USD.


What do you all think?

Joshua



Re: package manager guix on Windows and OSX

2021-06-25 Thread Joshua Branson
Edouard Klein  writes:

> Hi !
>
> The real problem will not be the languages (guile or C++), but the
> system calls used by Guix.

Ahh!  Thanks for pointing that out!

>
> Guix makes use of some recent (less than 2 decades) and somewhat
> advanced features of the Linux kernel, such as namespaces.

True true!

>
> To port Guix to another operating system such as BSD (including OSX),
> one would have to translate these calls.
>
> For example, Guix is the only software I've actually encountered that
> can not run in SmartOS' emulation of Linux, because the system calls it
> uses are not implemented there.
>
> I would love for Guix to be a Multi Kernel package manager (I mean it
> works on the Hurd also, but I have never encountered a Hurd user in real
> life). My dream would be to port Guix to Plan 9 ;-)

Why Plan 9? May I ask?  And I do really like the Hurd, but I use the
dvorak keyboard layout.  My understanding is that the Hurd does not
support variant keyboard layouts yet...  :(

I actually think that the Guix developers may want to consider a port to
the OpenBSD kernel, provided that the Hyperbola developers get
HyperbolaBSD working.  Though I guess the Debian guys sort of did
already.  :)

https://www.hyperbola.info/news/announcing-hyperbolabsd-roadmap/

>
> jbra...@dismail.de writes:
>
>> June 24, 2021 2:26 PM, "Patricio Martínez"  wrote:
>>
>>> Do anyone know the posibilities about install Guix on another system
>>> diferent of Linux?
>>
>> Awesome! I love speculating on topics I know virtually nothing about!  Most
>> of my information comes from a mailing list thread that is about a year old.
>> So the situation may be better than I describe it.  :)
>>
>> The easiest way is to use GNU Guix on Windows is WSL (Windows subsystem
>> for Linux):
>>
>> https://www.mail-archive.com/guile-user@gnu.org/msg12167.html
>>
>> I'm not a big fan of that, because of Window's history of "embrace, extend,
>> extinguish."  And that only lets you run Guix in Windows...what about Mac?
>> The Hurd?  React Os?  Redox Os?
>>
>> https://www.mail-archive.com/guile-user@gnu.org/msg12173.html
>>
>>
>> GNU Guix runs entirely on GNU Guile with some C++ for the build daemon.
>>
>> C++ is fairly portable. That bit should be possible to port, though I
>> believe that the development plan is to eventually rewrite the C++ build
>> daemon in GNU Guile.
>>
>> GNU Guile is the tricky bit.  To the best of my knowledge, the newer
>> versions of GNU Guile run exclusively on GNU/Linux, which is NOT the
>> fault of the Guile developers!  It's REALLY HARD to port things to all
>> OSes.  None of the Guile developers are paid for their fabulous work.
>> And it's not like Windows or Mac make it easy to port to their platform.
>>
>> https://www.mail-archive.com/guile-user@gnu.org/msg12172.html
>>
>> Though, the Lilypond developers did get guile 2.2 version working on Windows.
>>
>> https://www.mail-archive.com/guile-user@gnu.org/msg12163.html
>>
>> So did the gnucash guys for GNU Guile 2.2, but it is fairly tough to
>> get it to build:
>>
>> https://www.mail-archive.com/guile-user@gnu.org/msg12164.html
>>
>> Also, it's a 32-bit GNU Guile that was ported to windows and it does
>> not supports thread.
>>
>> Also Guile 3.0's JIT works on lightening, which is a C library (program ?).
>> And I do not know if that supports Windows.  But C is really portable.  :)
>>
>>> Thanks you very much and sorry for my english
>>
>> It was marvelous English! You should teach it!
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Second screen - DisplayPort

2021-06-23 Thread Joshua Branson
amuza  writes:

> Hello!
>
> I'm new to Guix system, yesterday I installed it for the first time. I
> installed it with i3 and Mate.
>
> I would like to use my second monitor, but its DisplayPort connection is
> not recognized by xrandr. xrandr only shows my own laptop's screen.
>
> If I connect my second monitor through VGA, xrandr does detect that VGA
> connection.
>
> The DisplayPort connection worked fine with Trisquel, I could use my
> second monitor, so I guess it's not an issue on software Freedom.

I wish I knew how to help...What's the main difference between HDMI and
display port?  Does display port allow one to send video and audio down
the wire?

>
> Any suggestion on how to make Guix detect my DisplayPort-connected monitor?
>
> Thank you!
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Pack busybox using guix, but make check have fail tests

2021-05-24 Thread Joshua Branson
Bone Baboon  writes:

> Joshua Branson writes:
>> I believe that busybox has a more permissive license than coreutils?
>
> Looking at the coreutils repository I can see that it is using GPL
> version 3
> <https://git.savannah.gnu.org/cgit/coreutils.git/tree/COPYING>.  When I
> run `guix search coreutils` the output says the license is "GPL 3+".
> Looking at an individual source code file I can see that it says "either
> version 3 of the License, or (at your option) any later version." 
> <https://git.savannah.gnu.org/cgit/coreutils.git/tree/src/cat.c>.
>
> BusyBox is licensed under the GPL version
> 2. <https://www.busybox.net/license.html>. "To summarize: every version
> of BusyBox may be distributed under the terms of GPL version 2. New
> versions (after 1.2.2), as a whole, may only be distributed under GPLv2,
> not under other versions of the GPL."
>
> <https://en.wikipedia.org/wiki/GNU_General_Public_License#Version_3>
> gives me the impression that GPL version 2 is more permissive than GPL
> version 3.

Thanks for clarifying!

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: How to install Guix System on LVM on LUKS?

2021-05-23 Thread Joshua Branson
Nikolay Velyurov  writes:

> Hi geeks,
>
> I try to install Guix System on LVM on LUKS. Installation succeeded,
> but the system can't boot.
>

Just posting to give you some help...

Link to the bug report:

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=21843

f7f292d359e0eb77617f4ecf6b3164f868ec1784  is the commit that fixed it.

I hope this helps!  Good luck!

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Pack busybox using guix, but make check have fail tests

2021-05-23 Thread Joshua Branson
c4droid  writes:

> Hi,
>
> I'm working on the using busybox to provide the guix bootstrap recipes
> for my building Linux From Scratch system using GNU Guix projects. when
> I pack the busybox using guix, I copy the original package definitions
> from gnu/packages/busybox.scm, I add enable-static-link build phases to
> make busybox static linked. At building test, guix can build busybox
> perfectly, but at running test suites, I got test failed about mdev
> components, I check guix original package definitions for busybox, build
> it, mdev test suites is skipped, I don't know how to skip the mdev test
> suites, hope get some guidence for skip the mdev test suites, thanks. :)
>
> My busybox package definitions is at 
> https://github.com/c4dr01d/guix-lfs-bootstrap/blob/master/lfs/packages/busybox.scm

AWESOME!  Thanks for working on this!  Best of luck!

I am commenting just because.  I'm a guix contributor not a developer,
so please take my words with a grain of salt.  :)

I believe that busybox has a more permissive license than coreutils?  Is
that true?   I think I heard rms suggest that one should develop for
coreutils more than busybox.  Someone please correct me if I am mistaken
in some way.

Anyway, great job!  And best of luck!

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: How to repair/reinstall guix on foreign distro

2021-05-18 Thread Joshua Branson
Thorsten Wilms  writes:

> On Mon, 17 May 2021 22:23:03 -0400
> Joshua Branson  wrote:
>
>> Is ubuntu causing this issue?  Why are you seeing an initramfs prompt
>> every few weeks?  If you are running guix on ubuntu...that seems like
>> it's ubuntu's fault.  Though I'm probably way wrong.
>
> If there are filesystem errors on boot, you get a initramfs shell that
> allows running fsck on root for repairs. Sometimes, some files can’t be
> fixed. 
>
> The system resides on a Transcend 256GB MTE110S SSD. Now one would
> probably assume that SSD is faulty. What’s curious is that so far, any
> and all noticeable corruption has been limited to guix-related files!
> smartctl repports "overall-health self-assessment test result: PASSED"
> and has "No Errors Logged". Full output attached at the end.
>
> It does however claim that all except one power cylce has been an unsafe
> shutdown, even though I had only a few hard resets and usually shutdown
> by issuing `poweroff`. Searching the web for this issue led me to
> turning off fast boot in the BIOS, but that didn’t help.
>
> I would still like to have a minimal invasive way to get beyond:
> ```
> guix pull: error: Git error: invalid data in index - incorrect header
> signature
> ```
> Or a way to to remove/replace /gnu/store from the running system.

If you are convinced on using guix on a foreign distro...then you could
create a separate partition for /gnu/store and /var/guix.  Then mount
those at boot time.   That way at least, you could not have to manually
run fsck at an initramfs.  You could do it when you've logged into
ubuntu's gnome (or whatever it is that you use.)

I wish I could be more helpful.

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: interactively debugging os configuration

2021-05-17 Thread Joshua Branson
kevinbanjo  writes:

> Hi everyone:
>
> I think I might be on the verge of getting the guix system (or something
> closely resembling it) running fairly simply under wsl 2 but this sample os
> config file:
>
> https://github.com/giuliano108/guix-packages/blob/master/systems/wsl-config.scm

If you get a good simple guix configuration, you may consider writing
that config in the guix cookbook.  It would be nice if people could grab
a simple guix config that would work well on wsl.  

I personally use guix system, but maybe guix on wsl would encourage more
people to move to guix system.

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: How to repair/reinstall guix on foreign distro

2021-05-17 Thread Joshua Branson
Thorsten Wilms  writes:

> Hi! It seems every few weeks i’m thrown into a initramfs prompt, as
> root got mounted read-only. The way out is always running fsck, which
> reports errors and offers fixes that I either can’t map to anything, or
> that refer to paths that belong to guix. Usually only below /gnu/store,
> but this time also var/guix.

Is ubuntu causing this issue?  Why are you seeing an initramfs prompt
every few weeks?  If you are running guix on ubuntu...that seems like
it's ubuntu's fault.  Though I'm probably way wrong.

>
> Now `guix pull` fails with:
> ```
> ;;; WARNING: loading compiled
> file 
> /gnu/store/8bsnz1fk330qbn1p8k18i0j11vld4jxd-guix-module-union/lib/guile/3.0/site-ccache/guix/build-system/gnu.go
> failed: ;;; In procedure load-thunk-from-memory: not an ELF file
> Updating channel 'guix' from Git repository at
> 'https://git.savannah.gnu.org/git/guix.git'... guix pull: error: Git
> error: invalid data in index - incorrect header signature
> ```

Man...I've no idea.  I'm honestly responding just so you get a
response.  Why do you suppose you are getting into an initramfs...As in
you always have to run fsck?  What hardware are you using?

> At first, I focused on the warning (sorry, leoprikler) ... the same git
> error happens when using an older guix.
>
> Now a fix for that would be great, but independent of that, I have to
> wonder how one should go about reinstalling guix on a foreign distro. I
> cannot umount or remount and remove /gnu/store!
>
> Even after `sudo systemctl stop gnu-store.mount`, /gnu/store is busy.
> `fuser -kim /gnu/store/` will throw me out of the session, even though
> I would think everything that belongs to it is part of the host (Ubuntu
> Unity 20.10). No sudo umount or remount or rm -rf allowed, /gnu/store
> remains ro and busy. Short of booting another system (say an USB
> stick), is there a way to clear /gnu/store? Or to safely replace its
> content?

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Any way to boot Guix with root partition elsewhere?

2021-05-02 Thread Joshua Branson
Vladilen Kozin  writes:

> IMO good solution would be to have Grub load just enough of whatever
> kernel is doing to find that drive and make its contents available. I
> doubt one can do that, but maybe one can boot into some kernel and
> initrd and then "chain" load the Grub on that SSD? I've no clue how to
> do that, but I'm sure its possible: kernel is code running in memory,
> surely it can "load" and "pass control" over to Grub or smth. If
> anyone knows, do tell.

I think you just don't want to use the "slow" hard drive right?  I
personally use a hard drive, and I am content with the performance.  I
just prefer to use the old lenovo T400.  I think it cost me $300 USD to
assemble it.  Not to shabby.  :)

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: What processor features does Guix support on i686?

2021-05-02 Thread Joshua Branson
Leo Famulari  writes:

> On Sun, May 02, 2021 at 12:56:45PM -0400, Joshua Branson wrote:
>> I'm kind of curious, if I were to compile my own linux kernel, and I
>> could someone select a newer processor family, would that make my kernel
>> a little more faster?  Or would it just make my kernel image a little
>> smaller?  Also my laptop is a Lenovo T400.So it doesn't exactly have
>> NEW features.  :)
>
> Just to clarify, these kernel configuration options are for when one
> builds the kernel for "i686-linux" (Guix parlance) or "i386" (Linux
> parlance). This means 32-bit Intel-compatible.
>
> The T400 has a Core 2 Duo 64-bit procesor, so these options won't apply
> for you. That's "x86_64-linux" or "amd64", respectively.
>
> However, yes, you can build a custom kernel to eke out some performance
> improvements.

Thanks for the response!  I'm not quite so interested in building a
custom kernel yet.  But I think it would be cool to do one day!


-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: What processor features does Guix support on i686?

2021-05-02 Thread Joshua Branson


This email list was posted on guix-devel, I'm asking this question on
help-guix, because it's a help guix question and not a guix devel
question...

Mark H Weaver  writes:

> Hi Leo,
>
> Thanks for asking about this, and for ably taking care of our
> Linux-libre packages.  I'm grateful for your work on this.
>
> Leo Famulari  writes:
>
>> I noticed that Linux 5.12 has a new config option regarding "Processor
>> family". The default choice, Pentium-Pro (M686), is highlighted in this
>> quote:
>>
>> --
>> Processor family
>>   1. 486SX (M486SX) (NEW)
>>   2. 486DX (M486) (NEW)
>>   3. 586/K5/5x86/6x86/6x86MX (M586) (NEW)
>>   4. Pentium-Classic (M586TSC) (NEW)
>>   5. Pentium-MMX (M586MMX) (NEW)
>>> 6. Pentium-Pro (M686) (NEW)
>>   7. Pentium-II/Celeron(pre-Coppermine) (MPENTIUMII) (NEW)
>>   8. Pentium-III/Celeron(Coppermine)/Pentium-III Xeon (MPENTIUMIII) (NEW)
>>   9. Pentium M (MPENTIUMM) (NEW)
>>   10. Pentium-4/Celeron(P4-based)/Pentium-4 M/older Xeon (MPENTIUM4) (NEW)
>>   11. K6/K6-II/K6-III (MK6) (NEW)
>>   12. Athlon/Duron/K7 (MK7) (NEW)
>>   13. Opteron/Athlon64/Hammer/K8 (MK8)
>>   14. Crusoe (MCRUSOE) (NEW)
>>   15. Efficeon (MEFFICEON) (NEW)
>>   16. Winchip-C6 (MWINCHIPC6) (NEW)
>>   17. Winchip-2/Winchip-2A/Winchip-3 (MWINCHIP3D) (NEW)
>>   18. AMD Elan (MELAN) (NEW)
>>   19. GeodeGX1 (MGEODEGX1) (NEW)
>>   20. Geode GX/LX (MGEODE_LX) (NEW)
>>   21. CyrixIII/VIA-C3 (MCYRIXIII) (NEW)
>>   22. VIA C3-2 (Nehemiah) (MVIAC3_2) (NEW)
>>   23. VIA C7 (MVIAC7) (NEW)
>>   24. Core 2/newer Xeon (MCORE2)
>>   25. Intel Atom (MATOM)
>> --

I'm kind of curious, if I were to compile my own linux kernel, and I
could someone select a newer processor family, would that make my kernel
a little more faster?  Or would it just make my kernel image a little
smaller?  Also my laptop is a Lenovo T400.So it doesn't exactly have
NEW features.  :)

>>
>> info: https://cateee.net/lkddb/web-lkddb/M686.html
>>
>> I know that, in the past, we have been careful to not require certain
>> processor features on i686, such as SSE [0].
>>
>> I would appreciate some guidance, both about this kernel configuration
>> option, and what we have historically considered to be the "minimum
>> requirements" for i686 hardware. I will put that information the manual
>> so that it doesn't get lost.
> [...]
>> [0] https://lists.gnu.org/archive/html/guix-devel/2016-07/msg01534.html
>
> It's been a long while since I looked at this, and of course we may wish
> to revisit the issue, but for now, I think that the right choice above
> is the default one, namely: "6. Pentium-Pro (M686) (NEW)"
>
>Thanks again,
>Mark

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Anyone running Guix on the pinephone?

2021-05-02 Thread Joshua Branson
Christopher Lemmer Webber  writes:

> I see the cookbook now mentions the possibility of running Guix on a
> pinephone... is anyone actually doing it?  Mind posting your experiences
> and setup?
>
> (Doesn't have to be as a phone necessarily... I'm more interested in
> using it as a lightweight portable computer.  But a phone would be nice
> too.)

Is a pine phone good enough for a portable and personal computer?
Doesn't it only have 2GB?  I was starting to run into RAM issues with
4GB when I was using Gnome.  Now I have 8GB and I am running sway.  No
RAM issues anymore.

Just out of curiosity, how would you deal with RAM issues/slow CPU
issues on a pinephone?  Using a lightweight window manager and only run
Emacs?  :)

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Remove network-manager-applet?

2021-04-30 Thread Joshua Branson
"Frosku"  writes:

> I want to remove network-manager-applet from desktop-services to replace
> it with https://github.com/firecat53/networkmanager-dmenu, but I can't
> seem to work out how to remove it.
>
> Any ideas?
>

I think the guix manual has some examples of the "remove" procedure.

Maybe something like this:

#+BEGIN_SRC scheme
(define %my-desktop-services
  (remove (lambda (service)
(member (service-kind service)
(list
 network-manager-service-type
 )))
  %desktop-services))

(operating-system
   (services (cons*
 %my-desktop-services)))
#+END_SRC

>>>= %frosku = { os => 'gnu+linux', editor => 'emacs', coffee => 1 } =<<
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Any way to boot Guix with root partition elsewhere?

2021-04-30 Thread Joshua Branson
Vladilen Kozin  writes:

> Hello guix.
>
> Is there a way out of this predicament? I can see two options.
> (1) can some Linux distro/bootloader do the FreeBSD trick: start on
> USB but then chain-boot Guix off that SSD? IIUC grub's chain-boot is
> of no help here, cause it simply won't even see that drive;
> (2) install and run Guix off USB but somehow ensure that "IO heavy"
> bits are mounted from that SSD. There's gotta be some (file-systems
> ...) combined with the way I `guix system init config.scm /mnt` (or
> rather what else I mount under /mnt where) that would achieve this?

Hmm. I'm way out of my depth here...

I think number 1 is your "best" bet.  I've no idea how to do that.

Number 2 is probably your "easiest" option.  /boot/ should be put on the
usb, and I suppose that the / should be on the SSD...You would install
this way.  That's probably how I'd do it.  Or rather that is how I would
try to do it.  :)


This is probably a silly idea...would linuxboot.org help?  You use linux
to boot?


Another silly idea...could you embed linux in your flashrom?  I think
that osboot.org is planning on embedding linux in the flashrom...That
would be pretty awesome.  My flashrom is only 8MB though...


Best of luck!

Joshua

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Guix System definition with a .emacs.d filled

2021-04-17 Thread Joshua Branson
Jérémy Korwin-Zmijowski  writes:

> Yo Joshua !
>
> Thank you for taking the time to answer my question. I really
> appreciate it !
>
> Actually, my "genius" haha is working on a little script to pop a Guix
> VM tailored to remotely pair-program with one or more
> Guiler(s)/Schemer(s)/Guixter(s) ! After the hard work, the VM is
> deleted.

ahaha!  That's a bummer!

>
> So right now, I am struggling to provide Emacs with a configuration
> through the system definition. The more Guix can do for me the better I
> am.
> Because Emacs has to download and create files into .emacs.d, the
> folder has to be writable.
>
> Until I find something clever, I will run a second script inside the VM
> to clone the configuration and pull the Guix sources (so we can
> contribute to Guix as well!)
>
> PS: do you want to pair ? ;-)

Sure!  That would give me a reason no stop being so lazy!

>
> Jérémy
>

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: Bug? Importing (gnu rest ...) fails due to lack of patch files on build side.

2021-04-16 Thread Joshua Branson
David Dashyan  writes:

I'm just responding so that you get a response.  :)

Your last email had some pretty cool code bro!  It certainly looks like
you're having fun with guix!

> Hello Guix!
>
> My update on this.
>
> So I though of a dirty hack...
>
> (define guix-patches
>   (package
> (inherit guix)
> (name "guix-patches")
> (build-system copy-build-system)
> (arguments
>  '(#:install-plan
>'(("gnu/packages/patches/"
>   "share/guile/site/3.0/gnu/packages/patches/"
> (native-inputs '())
> (inputs '())
> (propagated-inputs '())
> (native-search-paths '())
> (home-page "")
> (synopsis "")
> (description "")
> (properties '(
>
> The reasoning was that I can wrap everithing it in 
> (with-extensions (list guix-patches ...) ...)
>
> But still loading patches fails.  Even though they should be now in
> %load-path...

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: ProxyJump and offload

2021-04-16 Thread Joshua Branson
Jack Hill  writes:

> Hi Guix,
>
> If I temporarily disable the need to use a proxy host and remove the 
> ProxyJump line from my ssh config, then it works as expected:
>
> ```
> $ guix build --no-substitutes okular
> The following derivation will be built:
>/gnu/store/gcbhh3rbpmcr4p4rdvsj9cw48gwkhnlf-okular-20.12.1.drv
> process 18551 acquired build slot '/var/guix/offload/builder.jackhill.us:22/0'
> normalized load on machine 'builder.jackhill.us' is 0.01
> building /gnu/store/gcbhh3rbpmcr4p4rdvsj9cw48gwkhnlf-okular-20.12.1.drv...
> guix offload: sending 294 store items (286 MiB) to 'builder.jackhill.us'...
> exporting path 
> `/gnu/store/36dq4d3dba7z2vjiqsqphndn7sb2wmyj-kconfig-5.70.0-guile-builder'
> …
> ```
>
> What am I doing wrong?

Maybe guix offloading does not support proxy jumping?  Just a wild
guess.  I've really no idea.  I've never done any off loading.

>
> Best,
> Jack
>

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: Guix System definition with a .emacs.d filled

2021-04-16 Thread Joshua Branson
Jérémy Korwin-Zmijowski  writes:

> Dear Guixters,
>
> Maybe I am asking too much to Guix haha. Maybe I don't.
>
> So. Here is what I intend to do :
>
> I want to write a Guix System definition that puts a .emacs.d directory
> inside /root which is "usable". I don't feel the need to create a
> regular user (I don't fear too much damages inside a disposable VM
> context).
>
> So I tried two options :
>
> First, using an extra-special-file
>
>(extra-special-file "/root/.emacs.d"
>(local-file "emacs.d" #:recursive? #t))
>
> But the resulting .emacs.d is put into the store and is not writable.

This is by design I believe.  Any item in the store is NOT writable.
Anything configured with guix is meant to be static, declarative,
reproducible, NOT updated-able.  :)

Though it's possible that you are trying to do something that I just do
not understand.  This is most likely the case.  You seem like a genius.
:)

>
> Second, using skeletons
>
>(skeletons `((".emacs.d" ,(local-file "emacs.d" #:recursive? #t
>
> But it seems it populate only regular users home directory. /root is
> left empty.
>
> Perhaps the issue is the local-file.
> Perhaps I could change the resulting extra-special-file permissions if
> it does not mess up the store.
> Or perhaps I could create a regular user.
>
> What would be "the way" ? haha

If you want a write-able /root/.emacs.d/  I would recommend starting
Emacs as root.  That would do the job for you.  :)

>
> Cheers,
> Jérémy
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Question about sending in patches

2021-04-16 Thread Joshua Branson
Zelphir Kaltstahl  writes:

> Hello Guix users!
>
> A while ago I sent in a patch to add a package, but I realize, that I might 
> have
> made a mistake, by attaching the git patch file, instead of copy pasting its
> content as a message.

I think that it's ok to attach the git patch file.  The guix manual
reccomends using git send-email.  Here is a todo website that shows you
how to submit patches via git send email:

https://git-send-email.io/

>
> Should I send a new patch with the patch as the only text in the e-mail?

I would just use git send email in the future.  :)

>
> Would this conflict with the possibly wrongly sent patch?
>
> Best wishes,
> Zelphir

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Issue configuring upower and elogind on Guix System

2021-04-14 Thread Joshua Branson
Reily Siegel  writes:

> Hello, Im having a bit of trouble configuring elogind and upower on my
> laptop that is running guix system. The system reconfigures fine, but
> it
> doesnt seem like the configuration takes effect with regard to idle
> time
> (from elogind) and auto power off (from upower). The issue persists
> after multiple reboots.My configuration is available here:
> https://pastebin.com/rLkYj1tN. Is there anything obvious I am missing?
>

Hmmm.  Are using using %desktop-services?  Or are you manually
specifiying only the services you need?  I know that I tried to use only
the specific services that I wanted, and that failed...

I have an easier time just providing a custom %my-desktop-services like
this:

(define %my-desktop-services
  (modify-services
  (remove (lambda (service)
(member (service-kind service)
(list
 avahi-service-type
 bluetooth-service
 gdm-service-type
 geoclue-service
 ;; I customize my pulseaudio-service down below,
 ;; so I need to remove it here.
 pulseaudio-service-type
 )))
  %desktop-services) ;;end of remove services
(guix-service-type
 config =>
 (guix-configuration
  (inherit config)
  (max-silent-time %15-minutes)
  (extra-options '("--max-jobs=2"))
  ))
(network-manager-service-type
 config =>
 (network-manager-configuration
  (inherit config)
  ;;(dns "none") ;;DO NOT update resolve.conf
  (vpn-plugins (list network-manager-openvpn))
  ))
(mingetty-service-type config =>
   (mingetty-configuration
(inherit config)
;;auto login as joshua
(auto-login "joshua")))))

(services (cons* ...
  %my-desktop-services))

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Flatpak Issues

2021-04-14 Thread Joshua Branson
"Frosku"  writes:

> Hey all,
>
> I've installed flatpak along with xdg-desktop-portal & 
> xdg-desktop-portal-gtk, but whenever
> I try to use certain applications I get output like:
>
> Failed to call portal: GDBus.Error:org.freedesktop.DBu
> s.Error.UnknownMethod: No such interface ?org.freedesktop.portal.OpenURI? on 
> object at path /org/freedesktop/portal/desktop

I use flatpak for firefox.  What applications are you using?  Are your
applications wayland specific ?  I currently have to run firefox in X,
because of weird font issues.

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Where to find dmesg and /etc contents of specific system generation?

2021-04-14 Thread Joshua Branson
Vladilen Kozin  writes:

> Hi guix.
>
> Is it possible and where could I find contents of /etc for a specific
> system generation. Ditto dmesg of the last boot of specific
> generation? Not necessarily current generation though.

Hmmm.  I suppose you could try to make a guix system vm with that
configuration, and try to fire up the vm and see what happens...I'm not
certain how helpful that would be though.

>
> In a nutshell: I have a generation that boots and works fine, but
> sadly I also have a generation that fails to boot. I'd like to debug
> the issue by looking at its dmesg as far as it had gotten and also
> checking its /etc/fstab and such seeing how the problem appears to be
> mount related.

I think guix may support connecting to a serial console, though I've
never tried it.

You're trying to run a server right?  How complicated is your config?

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: How to compile native?

2021-04-14 Thread Joshua Branson
Charles Direg  writes:

> Hi,
>
> How can I do a compilation of the packages natively?

Yes this is possible!  You can disable substitutes to compile all
packages natively.

>
> What I mean is that, for example in Gentoo it can be used inside
> /etc/portage/make.conf: CFLAGS="-O2 -march=native -mtune=native" Is that
> possible in guix?

Currently guix does not support gentoo style flags..yet.  Though there
are talks to do something like that. If you wanted to compile packages
with specific compile flags, then you'll need to make custom package
definitions.

>
> Thank you very much for your time, I will be waiting for your kind
> responses.
>
> Greetings.

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: (No Subject)

2021-04-12 Thread Joshua Branson
Ricardo Wurmus  writes:

> Joshua Branson  writes:
>
>> I personally do not use libreboot (I use the nonfree fork), because
>> under intense load, my T400 crashes.  Using the nonfree fork of
>> libreboot, my T400 does not crash under heavy load.
>
> I’m a little confused about “nonfree fork”.  Coreboot is free software,
> though it may include binary blobs when flashing the firmware.  It’s
> also not a fork of libreboot.  osboot is a variant of libreboot, but it

Ahhh... I thought it was improper to mention osboot.  That's what I
use.  osboot also bundles non-free cpu updates, which makes my laptop
not crash under heavy load.

> also is free software.

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: (No Subject)

2021-04-12 Thread Joshua Branson
Vagrant Cascadian  writes:

> On 2021-04-11, Joshua Branson wrote:
>> reduxmotion  writes:
>>> Is it possible to modify installation boot menu, to allow non-Free firmware 
>>> loading?
>> A good solution to your problem might be to use hardware that supports
>> free software.
> ...
>> Also think penguin, za reason, and purism, system76, raptor computing,
>> PineBook Pro ($200) all offer modern computers that you can purchase.
>
> I wouldn't exactly recommend the PineBook Pro at this point; needs a lot
> of work in the kernel to get properly supported, and has some firmware
> issues for what people expect of a laptop.
>
> I suspect the raptor computing boards also are in the category of "needs
> work", even if theoretically they may someday be a very nice option.
>
> So it depends if you want a computer that "just works" vs. a project to
> spend a good deal of time to help make it better. :)

Thanks for the tips vagrant!  I would probably recommend that someone
who wants to use Guix system, should probably just go with a ThinkPad
T400 or T200.  You can probably buy one of those on ebay for $200-$400.
Those are one of the few laptops that can be freed all the way down to
the BIOS.

I personally do not use libreboot (I use the nonfree fork), because
under intense load, my T400 crashes.  Using the nonfree fork of
libreboot, my T400 does not crash under heavy load.  And I use the sway
window manager, with Firefox (is it ok to mention Firefox in this email
channel?) via flatpak.  

>
> live well,
>   vagrant
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: (No Subject)

2021-04-11 Thread Joshua Branson
reduxmotion  writes:

> Hello,
>
> Is it possible to modify installation boot menu, to allow non-Free firmware 
> loading?

Hello!  These kind of questions we politely request do not take place on
help-guix.  :) We encourage users to use free software only.  We would
rather not explain users how to use free software.  Rather we want to
explain to users how to use free software. Feel free to ask any other
question though!

A good solution to your problem might be to use hardware that supports
free software.  I currently use a ThinkPad T400.  It's a bit old, but
works really well.  Also any old-ish computer that has an Intel
processor should work well with GNU/Guix.

This site is a good resource for discovering good hardware that works
with free software:  https://h-node.org/

Also think penguin, za reason, and purism, system76, raptor computing,
PineBook Pro ($200) all offer modern computers that you can purchase.

Thanks!

143!

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Single-board-computer approach: don't make an installer, make the install?

2021-03-31 Thread Joshua Branson
Mathieu Othacehe  writes:

> Hey Joshua,
>
>> I believe that these issues have been closed.  I suppose we could write
>> a blog post, if you believe that would be worth while.
>
> Yes they were indeed. It would be nice but it's not on my list right
> now. I you feel like writing it, I would happily review it :).

I'll add it to my list of things to do.  I still am hoping to get an
endlessh service merged too...I'm moving really slowly.  :)

>
> Thanks,
>
> Mathieu
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Two more computers unable to start X with GDM

2021-03-29 Thread Joshua Branson
Yasuaki Kudo  writes:

> I read a little bit about the current state of video cards, etc - man
> this seems like an uphill battle Basically no manufacture
> sympathizes with the concept of total transparency.
>
> I was just thinking what the practical end-game of this might be - do
> you think at some point there will be an FPGA+power+various I/O ports
> kit that can be totally programmed to provide CPU and video
> acceleration?  Something like that might be the only way to end this
> nonsense

There is this:

https://www.crowdsupply.com/libre-risc-v/m-class/updates

They are still working on it, but that website hasn't seen updates in a
while.  They have another website that they update more often.

>
> Then the battle will be proprietary vs free software rather than
> hardware.  But then again, I don't know what kind of nasty patents
> there might be...
>
> -Yasu
>
>> On Mar 28, 2021, at 03:25, Leo Famulari  wrote:
>> 
>> On Sat, Mar 27, 2021 at 10:14:05AM -0400, Bone Baboon wrote:
>>> X server worked fine with this NVIDIA GeForce FX 5200 GPU when Debian
>>> was installed on this computer.  It also looks like Debian uses a
>>> deblobbed kernal based on this Wikipedia article.
>>> https://en.wikipedia.org/wiki/Binary_blob
>> 
>> The Guix kernel (linux-libre) and the Debian kernel (Linux) have
>> different hardware support and, in general, Linux supports more hardware
>> than linux-libre.
>> 

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: Starting Sway a Wayland window manager

2021-03-29 Thread Joshua Branson
Bone Baboon  writes:

> Joshua Branson writes:
>
>> I also just realized that sway started for me when I changed
>> %base-services to %desktop-services.
>
> If I reconfigure the system with `%desktop-services`:
>
> ```
>  (services %desktop-services)
> ```
>
> When I run `sway` on virtual terminal 1 sway does not start and I get
> this output:
>
> ```
> localhost dbus-daemon[380]: [system] Rejected send message, 2 matched
> rules; type="method_call", sender=":1.24" (uid=1000 pid=26112
> comm="sway ") interface="org.freedesktop.login1.Session"
> member="SetType" error name="(unset)" requested_reply="0"
> destination="org.freedesktop.login1" (uid=0 pid=381
> comm="/gnu/store/jdk3r1gs4d36n3aj9fscsvwwc9prnrzp-elogin")
> [backend/backend.c:303] Failed to open any DRM device
> [sway/server.c:49] Unable to create backend
> ```
>
> When I run `sudo sway` it outputs "XDG_RUNTIME_DIR is not set in the
> environment. Aborting.".


hmmm,  maybe this will help.  Here's my current guix config:

https://notabug.org/jbranso/guix-config/src/master/sway.scm

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: Starting Sway a Wayland window manager

2021-03-28 Thread Joshua Branson
Bone Baboon  writes:

> Joshua Branson writes:
>> My .bash_profile is here:
>>
>> #+BEGIN_SRC sh
>> # Honor per-interactive-shell startup file
>> if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
>>
>> # shepherd
>>
>> if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then
>> export MOZ_ENABLE_WAYLAND=1
>> export GUIX_PACKAGE_PATH=/home/joshua/prog/gnu/guix/guix-packages/
>> 
>> XDG_DATA_DIRS=/var/lib/flatpak/exports/share:/home/joshua/.local/share/flatpak/exports/share:$XDG_DATA_DIRS
>> # this may fix a bug that I have with termite confusing backspace as 
>> space in guix environment
>> # export TERM=linux
>> shepherd -c /home/joshua/.config/shepherd/init.scm &
>> exec dbus-run-session sway
>> fi
>> #+END_SRC
>
> What package includes `dbus-run-session`?  I do not have it installed on
> my system?
>

I think it's dbus?  I honestly don't remember...

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Starting Sway a Wayland window manager

2021-03-28 Thread Joshua Branson
Bone Baboon  writes:

> Vagrant Cascadian writes:
>
>> Is the elogind service running? I *think* that is what I needed to get
>> sway working from the console...
>
> I have added the `elogind` service.  Here is the services section of my
> systems configuration:
>
> ```
>  (services
>   (append
>(list
> (service elogind-service-type)
> (service accountsservice-service-type)
> (service inputattach-service-type)
> x11-socket-directory-service
> polkit-wheel-service)
>%base-services))
> ```

Change %base-services to %desktop-services.  That will probably fix it
for you.

>
> When I run `sudo herd status` the output shows that `elogind` is
> started.
>
> When I run `sway` on virtual terminal 1 sway does not start and I get
> this output: 
>
> ```
> localhost dbus-daemon[380]: [system] Rejected send message, 2 matched rules; 
> type="method_call", sender=":1.24" (uid=1000 pid=26112 comm="sway ") 
> interface="org.freedesktop.login1.Session" member="SetType" error 
> name="(unset)" requested_reply="0" destination="org.freedesktop.login1" 
> (uid=0 pid=381 comm="/gnu/store/jdk3r1gs4d36n3aj9fscsvwwc9prnrzp-elogin")
> [backend/backend.c:303] Failed to open any DRM device
> [sway/server.c:49] Unable to create backend
> ```
>
> When I run `sudo sway` it outputs "XDG_RUNTIME_DIR is not set in the
> environment. Aborting.".
>

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: Starting Sway a Wayland window manager

2021-03-28 Thread Joshua Branson
Joshua Branson  writes:

I also just realized that sway started for me when I changed
%base-services to %desktop-services.

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Starting Sway a Wayland window manager

2021-03-27 Thread Joshua Branson
Vagrant Cascadian  writes:

> On 2021-03-27, Bone Baboon wrote:
>> I have installed Sway a Wayland window manager.
>>
>> I have copied the `gnu/store/-sway-1.5.1/etc/sway/config` to
>> `~/.sway/config`.
>>
>> When I run `sway` or `sudo sway` on virtual terminal 1 it outputs
>> "XDG_RUNTIME_DIR is not set in the environment. Aborting.".  `man sway`
>> and `sway --help` does not mention `XDG_RUNTIME_DIR`.  An suggestions on
>> how to deal with this error?
>
> Is the elogind service running? I *think* that is what I needed to get
> sway working from the console...

That seems to be the trick.

My .bash_profile is here:

#+BEGIN_SRC sh
# Honor per-interactive-shell startup file
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi

# shepherd

if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then
export MOZ_ENABLE_WAYLAND=1
export GUIX_PACKAGE_PATH=/home/joshua/prog/gnu/guix/guix-packages/

XDG_DATA_DIRS=/var/lib/flatpak/exports/share:/home/joshua/.local/share/flatpak/exports/share:$XDG_DATA_DIRS
# this may fix a bug that I have with termite confusing backspace as space 
in guix environment
# export TERM=linux
shepherd -c /home/joshua/.config/shepherd/init.scm &
exec dbus-run-session sway
fi
#+END_SRC

>
> live well,
>   vagrant
>

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: Two more computers unable to start X with GDM

2021-03-27 Thread Joshua Branson
Bone Baboon  writes:

> Joshua Branson writes:
>
>> Bone Baboon  writes:
>>
>>> i686
>>> GPU: NVIDIA GeForce FX 5200
>>
>> I'm guessing that the problem is the GPUs...but I would not know how to
>> help.
>
> X server worked fine with this NVIDIA GeForce FX 5200 GPU when Debian
> was installed on this computer.  It also looks like Debian uses a
> deblobbed kernal based on this Wikipedia article.
> https://en.wikipedia.org/wiki/Binary_blob

I can also confirm that Debian usually works better out of the box for
me on various laptops that I have tried.  :)


-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: Two more computers unable to start X with GDM

2021-03-26 Thread Joshua Branson
Bone Baboon  writes:

> I am trying to get the X server working on a computer that has Guix
> installed.
>
> I was having trouble starting an X server on a computer and asked for
> help about it here:
> https://lists.gnu.org/archive/html/help-guix/2021-03/msg00197.html
>
> I decided to try to get an X server working on two other computers an
> x86_64 and a i686.  I was not able to get an X server working on either
> of them.  Below are the detail.
>
> i686
> GPU: NVIDIA GeForce FX 5200

I'm guessing that the problem is the GPUs...but I would not know how to
help.  Sorry for being so unhelpful.

> x86_64
> GPU: Intel Mobile 946GM/GMS/GME, 943/940GML Express

I feel like the Intel GPUs should work though...


--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Start Xorg server using xinit manually

2021-03-21 Thread Joshua Branson
Bone Baboon  writes:

> Thanks for your reply.
>
> jbra...@dismail.de writes:
>
>> March 21, 2021 6:31 PM, "Bone Baboon"  wrote:
>>
> I am trying to manually run `xinit` so that I can use Emacs X Window
> Manager (EXWM).  I have EXWM configured in my Emacs configuration file.
> I have a small number of important graphical applications I want to run
> in EXWM (web browser, Jami, qTox, ...).

Ok.  Very cool!

>
>> If all you are wanting is to use Emacs, you could always just launch Emace
>> from the virtual console, and not have mouse support.
>
> If I run `emacs` from a virtual terminal in the *Messages* buffer it
> says "[EXWM] Not running under X environment".

Do any of the officially supported guix wm's or desktop environments
work for you?

>
> I am currently working without `xorg` in virtual terminals or in Emacs
> with `emacsclient --tty`.  I am really appreciating `eww` as a browser
> that is in Emacs.

eww is certainly interesting.

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Single-board-computer approach: don't make an installer, make the install?

2021-03-21 Thread Joshua Branson
Mathieu Othacehe  writes:

> I think that the cookbook is a nice achievement for now. Maybe we could
> postpone the guix blog article until the pending image command line
> patches are pushed[1] and the relevant Guix documentation is written?
>
> Thanks,
>
> Mathieu
>
> [1]:
> https://issues.guix.gnu.org/45986
> https://issues.guix.gnu.org/46017

I believe that these issues have been closed.  I suppose we could write
a blog post, if you believe that would be worth while.  


-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: calculate hashes for a new packages

2021-03-19 Thread Joshua Branson
Zelphir Kaltstahl  writes:

> Hello Zimoun!
>
> Ah, I think I get it now:
>
> If I for example created a tag for the version of my package and creation of 
> the
> tag caused the VCS host to create a tarball as release, I could go the 
> url-fetch
> way and then I would use `guix hash` on the tarball, which is the release
> tarball, but if there is no release tarball addressable using a URL, I would 
> use
> the git-fetch way, which means GNU Guix would have to verify the downloaded
> repository, so I calculate the hash using the other way.

I personally use guix download https://path/to/tarball.  That outputs
the hash for me.  :)  Please note that I have never added or fixed a
patch for guix.  

>
> So it all depends on what I specify in my package description, about how GNU
> Guix is to retrieve my package.
>
> Regards,
> Zelphir

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: How to remove extension from service definition?

2021-03-19 Thread Joshua Branson
znavko--- via  writes:

> Hello! I wish to remove network-manager-applet extension from
> profile-service-type
> which is in the list of extensions of
> xfce-desktop-service-type [1] and [2]
>
> And also I want to see the result.
>
> I try it unsuccessfully like this:
>
> $ guile
>> (use-modules (gnu) (gnu services) (gnu services desktop) (srfi srfi-1))
>> xfce-desktop-service-type
> $1 = #
>> (remove (lambda (service) (eq? (service-kind service) profile-service-type)) 
>> xfce-desktop-service-type)
> ice-9/boot-9.scm:1669:16: In procedure raise-exception:
> In procedure remove: Wrong type argument in position 2: # xfce-desktop 7f6c0a4b1000>

 (remove (lambda (service) (eq? (service-kind service) profile-service-type)) 
%desktop-services)

"works for me."  Though you get a HUGE output.  I didn't check the
output to make sure it was removed.  Also just removing all
profile-service-type(s) might be a REALLY BAD idea.  I wouldn't know
exactly why it would be bad, but it might remove lots of system services.

>
> Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
> Also I cannot remove service from %desktop-services asI usually do in 
> config.scm:
>> (remove (lambda (service) (member (service-kind service) (list 
>> network-manager-service-type bluetooth-service))) %desktop-services)
> ;;; :19:57: warning: possibly unbound variable 
> `network-manager-service-type'
> ice-9/boot-9.scm:1669:16: In procedure raise-exception:
> error: network-manager-service-type: unbound variable
> Can you show me how ot interact with guile ? And how to remove service 
> extensionsand also
> how to look at xfce-desktop-service-type contents?

So the problem with it not knowing that 'network-manager-service-type'
is a variable is because you have not included the file that specifies
that network-manager-service-type is a variable.  So how do we discover
what file has network-manager-service-type defined as a variable?

$ guix system search network-manager
name: network-manager
location: gnu/services/networking.scm:1120:4
extends: shepherd-root dbus polkit account activate session-environment profile
shepherdnames: networking
description: Run NetworkManager 
(https://wiki.gnome.org/Projects/NetworkManager), a network management daemon 
that aims to
+ simplify wired and wireless networking.
relevance: 15

You can see that it's located in gnu/services/networking.scm.  Where is
bluetooth defined?

$ guix system search bluetooth
name: bluetooth
location: gnu/services/desktop.scm:467:2
extends: dbus udev etc shepherd-root
shepherdnames: bluetooth
description: Run the `bluetoothd' daemon, which manages all the Bluetooth 
devices and provides a number of D-Bus interfaces.
relevance: 19

Ahh.  gnu/services/desktop.scm.

so

$ guile
scheme@(guile-user) > ,use(gnu services networking)
scheme@(guile-user) > ,use(gnu services desktop)
scheme@(guile-user) > (remove (lambda (service) (member (service-kind service) 
(list network-manager-service-type bluetooth-service))) %desktop-services)

Best of luck!

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Question about one package

2021-03-19 Thread Joshua Branson
Charles Direg  writes:

> Hello Ricardo and jbranso, thank you very much for your reply.
>
> I appreciate your comments and will take them into account.
>
> Another question, how could I change the theme in GNOME? Since in other
> distros, it was simply to put the theme in /usr/share/themes, how could I
> do it in guix?

I don't use gnome.  Sway seems to work more reliably for me.  But you
can probably put some themes in /usr/share/themes/ and see if that lets
you switch gnome themes.  I don't think that the gnome service supports
using different themes yet.  :)

>
> Thank you very much again.
>

-- 
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar
  



Re: DBus with SDDM, Sway, and optionally fish

2021-03-17 Thread Joshua Branson
Sébastien Lerique  writes:

> Dear all,
>
> I use SDDM with (display-server "wayland"), and Sway as my main window
> manager.

yeah I do too!

>
> My current configuration files are here:
> - system configuration:
>   https://gitlab.com/wehlutyk/guix-config/-/blob/master/config.scm
> - main profile:
>   https://gitlab.com/wehlutyk/guix-config/-/blob/master/sl-manifest.scm
> - dot files: https://gitlab.com/wehlutyk/dotfiles
>
> I've been struggling to get the DBUS_SESSION_BUS_ADDRESS variable to
> be set by SDDM, as it does not seem to set it by default. The current
> script that SDDM runs before starting Sway is
> https://github.com/sddm/sddm/blob/master/data/scripts/wayland-session
> , and I haven't found any other setup step which might be a source for
> enviroment variables inside Sway.
>
> (Somehow environment variables set in `.config/environment.d/*.conf`
> also get set, but I don't know how or where that happens.)
>
> In the default configuration, DBUS_SESSION_BUS_ADDRESS is therefore
> not set inside Sway, which leads to a number of problems
> (e.g. nautilus can't read the Trash system).
>
> One can set the value of DBUS_SESSION_BUS_ADDRESS produced by
> `dbus-launch --sh-syntax` in `.profile` (
> https://gitlab.com/wehlutyk/dotfiles/-/blob/master/.profile#L9 ),
> which is then sourced by `wayland-session` if the shell is bash.
> In my case my shell is fish, and the way `wayland-session` calls fish
> doesn't make it export the variables exported by `.profile`. For that
> a small patch to `wayland-session` works, which I ended up using:
> https://gitlab.com/wehlutyk/guix-config/-/commit/5105ab1bea7f8233de5dffc053f794ae69822acd
>
> With the two changes above (setting DBUS_SESSION_BUS_ADDRESS in
> .profile, and patching wayland-session), apps can connect to dbus
> inside Sway. But this seems extremely hacky. Is there maybe a better
> way to make sure SDDM+Sway(+fish) is set up properly as a desktop
> enviroment? Is it time to make a `sway-desktop-service-type`?
>

I'm all game for the above.  ^  I've been working on that for a while
now.  I've work coding on said problem on my video channel here:

https://video.hardlimit.com/my-library/video-playlists/06baf279-76ea-406a-a24d-2fcfefecbf35

I'll tag the below code.  It's the basic define-record-type* that people
may find useful in generating the sway config file.

I'm taking a break from writing the sway service, because I couldn't
figure out how to get the darn service to start.  So now I'm working on
and endlessh service.  (I actually posted a patch here:
https://lists.gnu.org/archive/html/guix-patches/2021-03/msg00672.html)

Here is my current sway-service.scm code:

#+BEGIN_SRC scheme
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Mathieu Lirzin 
;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès 
;;; Copyright © 2017 Mathieu Othacehe 
;;; Copyright © 2017 Jan Nieuwenhuizen 
;;; Copyright © 2018, 2019 Ricardo Wurmus 
;;; Copyright © 2018 Clément Lassieur 
;;; Copyright © 2020, 2021 Joshua Branson 
;;;
;;; 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 (sway-service)
  #:use-module (guix gexp)
  #:use-module (guix records)
  #:use-module (guix packages)
  #:use-module (guix build-system trivial)
  #:use-module (gnu packages admin)
  ;; #:autoload   (gnu packages ci) (cuirass)
  ;; #:autoload   (gnu packages version-control) (git)
  #:use-module (gnu packages wm)
  #:use-module (gnu services)
  #:use-module (gnu services base)
  #:use-module (gnu services shepherd)
  #:use-module (gnu services dbus)
  #:use-module (gnu services admin)
  #:use-module (gnu system shadow)
  #:use-module (ice-9 match)
  #:use-module (srfi srfi-1)
  #:export (
sway-configuration
sway-configuration?
sway-configuration-sway
sway-configuration-user
sway-configuration-group
sway-configuration-sway-variables
sway-configuration-bindsyms
sway-configuration-raw-content
sway-configuration-file

sway-variables-configuration
sway-variables-configuration?
sway-variables-configuration-background-image
sway-variables-confi

Re: Setting up guix source tree for testing a package

2021-03-12 Thread Joshua Branson
Zelphir Kaltstahl  writes:

> Hello Guix Users,
>
> I am trying to set up GNU Guix for package testing, as I want to test a 
> package
> before sending in a patch to add it to GNU Guix.
>
> I'll describe the steps I am taking and where I am seeing them in the docs in
> the following.
>
> All is happening inside a VM, which runs a Debian 10. The VM is almost fresh,
> except for guest additions and git and vim and such things.

This sounds a little complicated...trying to develop things for guix
inside a virtual machine that's running Debian...I mean that sure makes
the testing REALLY potentially reproducible...But wouldn't it be
easier/simpler to do development for guix whilst using guix (or guix
system) on bare metal?

If you really prefer to develop for guix in a vm, you can download guix
virtual machine images here: http://guix.gnu.org/en/download/

Oh, having read the building from git section in the guix manual...they
do make it should like you should start from a virtual machine...What
operating system are you running on bare metal?  That's what I would use
to develop for guix.

>> As you can see, there is a chicken-and-egg problem: you first need to have
> Guix installed. Typically you would install Guix System (see System
> Installation) or Guix on top of another distro (see Binary Installation); in
> either case, you would verify the OpenPGP signature on the installation 
> medium.
> This “bootstraps” the trust chain.

May I suggest that this chicken and egg problem exists because you chose
to use a debian vm?  This is not a criticism.  :)

> But here I am facing a problem. I have no clue what to set the
> `--localstatedir=directory` to. The docs tell me it is important, but I see no
> instructions on how to choose a directory for the local state, when I have
> already a Guix installed (binary installation on foreign distro). The linked
> docs about the https://guix.gnu.org/manual/en/html_node/The-Store.html
> <https://guix.gnu.org/manual/en/html_node/The-Store.html> do not help me
> choosing it either, because that page is about the store itself, not about my
> specific scenario of doing things from Guix source tree. Since I intend to 
> build
> a package inside the Guix source tree, I think it should exactly _not_ be 
> /var,
> as that would conflict with the Guix installation, that I had to do to create
> the pre-inst-env script.

I'm not certain how to answer this.  Since I develop for GNU Guix on
guix system, I always run "./configure --localstatedir=/var".  This
works for me!

>
> What is the idea for the local state directory? Is it the location of a
> temporary store, which will contain anything, that I produce using the
> pre-inst-env script? That is what I am guessing. In that case I think
> `localstoredir` might be a good alias for `localstatedir`.

I think localstatedir is the location of guix specific things?  My
/var/guix contains gcroots, profiles, substitute, and daemon-socket
directories.

I applaud your attention to detail and trying to submit a "perfect"
patch to GNU guix.  :) That really does help the project have good
standards.  Trust me not all of the guix patches are perfect.  Somehow
some of mine were merged.  :)

>
> When I try running:
>
> 
> make authenticate
> 
>
> I get an error:
>
> 
> $ make authenticate
> Authenticating Git checkout...
> /bin/bash: line 1: guix: command not found
> make: *** [Makefile:6290: authenticate] Error 127
> 

I've run into this issue before too...hmmm.  How did I fix it?  I think
that you need to download Ludo's gpg keyring...

https://wiki.archlinux.org/index.php/GnuPG#Import_a_public_key

gpg --import public.key

Then you should be able to run:

 git fetch origin keyring:keyring
 guix git authenticate 9edb3f66fd807b096b48283debdcddccfea34bad \
   "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA"

> Where did I go wrong?
> Regards,
> Zelphir

I think you just tried to start developing in a "perfect" but difficult
way.  :)  If you already use GNU/Linux as your main OS, install guix on
it, and develop from that OS.  If you are running guix system, develop
from that.  Best of luck!

P.S.  You might find my online videos where I try to contribute to guix
helpful too:
https://video.hardlimit.com/accounts/joshua_branson/video-channels They
may be a little boring, and perhaps not the best way to develop, but the
videos show me developing in some kind of haphazard way.  My newer
videos involving endlessh are probably close to the "correct" way.

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Updating a dependency in the web packagr group

2021-03-07 Thread Joshua Branson
Diane  writes:

> Hello, I was wondering about how to get around updating the version
> pointer of a package in the web repository, specifically the `gmnisrv`
> package (currently pointing to `d484ba0`).
> Would I need to send a git patch or should I reach out to any
> maintainer of this list?

Hello!

Generally you would send a patch via git send-email to
guix-patc...@gnu.org.  The contributing section in the guix manual will
give you some pointers and some specific tips about how to do this.

Thanks,

Joshua


--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: How to remove extension 'network-manager-applet' from 'service profile-service-type'

2021-03-06 Thread Joshua Branson
znavko--- via  writes:

> Hello! I use 'xfce-desktop-service-type' in my config.scm
> and xfce service is using 'profile-service-type'.
> Everything was ok while this line not appeared in services/desctop.scm:
>
> 1260:
>  (simple-service 'network-manager-applet
>  profile-service-type
>  (list network-manager-applet))
>
> How can I remove back 'network-manager-applet' extension from 
> profile-service-type
> in my config (in attach)?

Something like this might work:

#+BEGIN_SRC scheme
(use-service-modules
 networking)

(define %my-desktop-services
  (remove (lambda (service)
(member (service-kind service)
(list
 network-manager-service-type
 )))
  %desktop-services))

(operating-system
  (services
(cons* %my-desktop-services)))
#+END_SRC

>
> PS: I dislike networkmanager for it is buggy and slow.
>
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: more than one target service shehperd-root / possible scheme records terribleness

2021-03-03 Thread Joshua Branson
raingloom  writes:

> I have an operating-system called bingobongo. I have another called
> greg that inherits the bingobongo config. If I leave the services field
> empty in greg, there is no issue. If I define it as
> (operating-system-services bingobongo) then all hell breaks loose and I
> get the aforementioned error and no amount of filtering seems to fix it
> becaues then I get the same error but with "profile" instead of
> shepherd-root.
>
> Now, I don't know what causes this, whether it's a Guix issue or
> Guile's record system being... well... kind of terrible, but in any
> case it should be treated like a bug, because a user should not have to
> dig as deeply into Guix internals as I have so far.

Can you show us some code?  That may help.

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Problems with network in installation

2021-02-25 Thread Joshua Branson
"pelzflorian (Florian Pelz)"  writes:

> On Thu, Feb 25, 2021 at 10:38:26AM +0100, chalamov--- via wrote:
>> Hello,
>>
>> I can not connect to wi-fi during the installation of the Gnu Guix. I don't 
>> know what to do.
>> Could you help me?
>>
>> Greetings,
>> Maria
>
> Sadly many (all?) modern Wi-fi devices have no support for the
> Linux-libre kernel.  See
> <https://guix.gnu.org/manual/en/html_node/Hardware-Considerations.html#Hardware-Considerations>.
>
> It is lilkely that you can press Ctrl+Alt+F3 in the Guix installer and
> then run “lspci” to see which device you have for networking.
>
> Many approaches are possible.  Either:
>
> 1) Get a Wi-fi device (for example, a USB Wi-fi dongle) that is
>supported on Linux-libre.  See <https://www.h-node.org/>.

You can purchase one of these devices from
https://www.thinkpenguin.com/catalog/wireless-networking-gnulinux

> 3) Use a kernel with support for your Wi-fi device.  Guix does not
>support such kernels.
>
> 4) Use Guix on a foreign distribution.
>
> Regards,
> Florian
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Flickering XWayland programs after resume from suspend

2021-02-24 Thread Joshua Branson
Sébastien Lerique  writes:

> Dear all,
>
> I use SDDM and Sway, and since a couple weeks I experience a bug where
> several programs start flickering after I resume from suspend, to a
> point that they are unusable. This happens at least on Emacs and
> Firefox (I admit I haven't tested on IceCat), happens in both Sway and
> Gnome on Wayland, and does not happen in Gnome on X11. Which makes me
> think it is related to XWayland.

I'm using sway, and I do not have this issue.  I use Firefox and Emacs.
I've been running sway for days at a time.  At night I close the laptop
lip, and I keep computing for the next day.

> On Emacs, some select letters (often 'o') are not rendered. Parts of
> the windows are not refreshed when other parts are updated. Logging
> out (to SDDM) and back in fixes the issue.

I do not have this issue.

joshua@dobby ~> guix describe
Generation 68   Feb 19 2021 16:39:22(current)
  guix ffe4f87
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: ffe4f87c87a28a9b4ea5e2f389932f3591e21b2b

GUIX_PACKAGE_PATH="/home/joshua/prog/gnu/guix/guix-packages/"

joshua@dobby ~> guix system describe
Generation 67   Feb 23 2021 12:53:39(current)
  file name: /var/guix/profiles/system-67-link
  canonical file name: /gnu/store/8s1waqkjh38jk6w8s4nq0zx63q1j24r6-system
  label: GNU with Linux-Libre 5.10.17
  bootloader: grub
  root device: UUID: 0542cf20-9f62-49cf-992f-54a75186f2b2
  kernel: 
/gnu/store/wwbpbi5kdsmjhvscb2pvmcqm2h0gn623-linux-libre-5.10.17/bzImage
  channels:
guix:
  repository URL: https://git.savannah.gnu.org/git/guix.git
  branch: master
  commit: ffe4f87c87a28a9b4ea5e2f389932f3591e21b2b
  configuration file: 
/gnu/store/898rg76d3wq0s1388jnryfykfg7575ps-configuration.scm

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: error: "cannot download for method git-fetch"

2021-02-21 Thread Joshua Branson
Hartmut Goebel  writes:

> Hi,
>
>
> The manifest for the profile I'm using for development is:
>
> (specifications->manifest
>  '("recutils" "nss-certs" "openssl"
>    "bzip2" "gzip" "zlib" "lzlib" "sqlite" "libgcrypt" "pkg-config" "guile"
>    "util-linux" "glibc-utf8-locales"
>    ;; propagated-inputs
>    "gnutls" "guile-gcrypt" "guile-git" "guile-json" "guile-lzlib"
>    "guile-semver" "guile-sqlite3" "guile-ssh" "guile-zlib" ))

I use guix environment guix --pure.  That's what the manual "building"
from git reccommends.  :)

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Updating substitute error: TLS error in the push function

2021-02-18 Thread Joshua Branson
Todor Kondić  writes:

> [I know some people are going to grumble because of top posting: sorry!]
>
> Yes, I did. I pulled a few times during last and this week.
>
> The recompilation hit because of an unrelated matter. I did a very
> evil thing: evaluated my own version of the net-base package inside
> the module where net-base resides.

I'm not even certain what this means.  But it sounds like this hacker
has gone over to the dark side.  :)

> This dirty technique does  work for services tho ;)

Here's the proof!

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Output all dependencies recursively for package

2021-01-31 Thread Joshua Branson
Phil  writes:

> Hi all,
>
> I'm looking for a command similar to 'guix show' which will give a packages 
> explicit
> dependencies, recursively.
>
> Basically something like python's 'pip freeze' for a specific package.
>

Does guix-refresh --recursive do that? 

#+BEGIN_SRC sh
$ guix refresh --recursive guile

gnu/packages/multiprecision.scm:41:12: gmp would be upgraded from 6.2.0 to 6.2.1
guix/build-system/gnu.scm:143:8: tar would be upgraded from 1.32 to 1.33
guix/build-system/gnu.scm:143:8: findutils would be upgraded from 4.7.0 to 4.8.0
guix/build-system/gnu.scm:143:8: gawk would be upgraded from 5.0.1 to 5.1.0
gnu/packages/commencement.scm:3741:4: grep would be upgraded from 3.4 to 3.6
guix/build-system/gnu.scm:143:8: gmp would be upgraded from 6.2.0 to 6.2.1
guix/build-system/gnu.scm:143:8: guile would be upgraded from 3.0.2 to 3.0.5
gnu/packages/commencement.scm:3501:2: binutils would be upgraded from 2.34 to 
2.36
gnu/packages/commencement.scm:3561:2: gcc would be upgraded from 7.5.0 to 10.2.0
gnu/packages/commencement.scm:3456:2: glibc would be upgraded from 2.31 to 2.32
#+END_SRC

I'm sure you can use an awk script and uniq from coreutils to turn that
into what you want.


 Note that for core packages this can yield huge graphs.  If all you
 want is to know the number of packages that depend on a given
 package, use ‘guix refresh --list-dependent’ (*note
 ‘--list-dependent’: Invoking guix refresh.).

> Any ideas?
>
> Thanks,
> Phil.
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: IPFS p2p integration

2021-01-30 Thread Joshua Branson
Matias Jose Seco Baccanelli 
writes:

> Good day Guix folks!
> I'm very excited about the initiative on IPFS integration, introducing
> the opportunity for Guix to become the first p2p-enabled Distribution!
>
> I was wondering if actually there was the opportunity to test this
> feature, and if actual authors would need a volunteer for
> experimenting the implementation :)

Hey Matias!  There are a couple of IPFS git branches that are available:

https://git.savannah.gnu.org/cgit/guix.git/log/?h=wip-ipfs-substitutes

https://git.savannah.gnu.org/cgit/guix.git/log/?h=wip-ipfs

https://git.savannah.gnu.org/cgit/guix.git/log/?h=wip-ipfs2

I suspect that you can compile the WIP (work in progress)
ipfs-substitutes branch and test out the feature.  Please post back and
report how it went, because I'd like to know!

>
> Have a nice hacking day,
> Matias
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Single-board-computer approach: don't make an installer, make the install?

2021-01-21 Thread Joshua Branson
Mathieu Othacehe  writes:

> Hello,
>
>> This is really well written.  May I edit this article and reproduce it
>> for the guix blog and perhaps the guix manual?  If ludo's ok with me
>> putting it on the blog, then I intend to end the blog post with "This
>> article first appeared in this personal blog (link here) and is
>> reproduced with permission."
>
> Thanks! I would happily review it :).
>
> There's for sure some work left on that topic. I'd like to:
>

Now that we've got this bit included in the cookbook, would you be in
favor of also turning it into a guix blog post?  I'd be happy to submit
a patch.

>
> Mathieu
>
> [1]: https://issues.guix.gnu.org/45020
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Guix Environment Best Practices: Shell Hooks, Creating directories, and More

2021-01-21 Thread Joshua Branson


I believe in guix land this is best achieved with

#+BEGIN_SRC
guix environment -m environment.scm
#+END_SRC

Assuming the project that you are working on has such an
"environment.scm" file.

guile-haunt has "package.scm" file that does something like this:

https://github.com/guildhall/guile-haunt/blob/master/package.scm

Relevant blog posts:

https://dthompson.us/reproducible-development-environments-with-gnu-guix.html

https://dthompson.us/ruby-on-guix.html

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: converting a distro to guixsd

2021-01-19 Thread Joshua Branson
kevinbanjo  writes:

> On Sun, Jan 17, 2021 at 7:42 PM Joshua Branson  wrote:
> I started trying to use this to install The Guix System ("TGS") directly
> using the instructions here but due to a bug in busybox (not being able to
> access directory entries on the virtual disk partitions) I decided to try
> and just install it over Alpine.
>
> https://github.com/giuliano108/guix-packages/blob/master/notes/Guix-on-WSL2.md
>
>> That would get running guix as a package manager in WSL.
>> Then you could do some playing around.
>>
>> You could also try running Guix System inside a virtual machine in Windows.
>>
>>
> That's kind of in essence what WSL (at least version 2) is.
Ahhh.  I didn't know that.
Does qemu work on Linux?  You could install Guix System that way.
>
>> If you really want computing freedom, you might be interested in dual
>> booting windows and Guix System.  That way at boot time you could choose
>> to boot into Windows or Guix System.
>>
>>
> I tried that with no luck, the difficulties of which can be seen in some of
> my very recent earlier emails to this list.
>
>> I personally gave up Windows a long time ago.  I prefer GNU/Linux
>> because I want to be able to watch all the sappy romantic comedies I
>> want and not report it to Big Brother.  :)
>>
>>
> Yes, I have mostly stuck to some form of Unix most of my long career but
> recently I've been asked to develop software for windows and there are
> several applications I need that only run under it.   Also, I've downloaded
> a bunch of stuff on it recently I'd rather not move off yet so I was
> thinking I'd use WSL to check out several more innovative recent distros
> before I try and wipe it and go fully native (perhaps eventually running
> windows in a VM under linux)

Ok.  Well best of luck!
>
> -Kevin

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: [PATCH] * doc/guix-cookbook.texi (Guix System Image API): new section

2021-01-18 Thread Joshua Branson
Mathieu Othacehe  writes:

> Hello,
>
> Thanks for this contribution! You should submit patches to
> "guix-patc...@gnu.org" instead of this mailing list.

I'll send one that way.

>
> There's also a small issue with the commit message which is placed as
> title of this email.
>
>> +* Guix System Image API::Customizing the disk-image to target 
>> specific platforms.
>
> Customizing disk images to target specific platforms, maybe?
>
>> +@itemize @bullet
>> +@item
>> +- @file{gnu/system/images/hurd.scm}
>
> You can remove the dash here.
>
>> +@example
>> +guix system disk-image my-os.scm
>> +@end example
>
> I have a pending patchset renaming "disk-image" command to "image". We
> will need to update it accordingly.
>
> Otherwise, it looks nice to me, but I may be biased here. It would be
> nice if someone else could have a look.
>
> Thanks,
>
> Mathieu

I will update accordingly to your edits.

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: converting a distro to guixsd

2021-01-17 Thread Joshua Branson
kevinbanjo  writes:

> On Sun, Jan 17, 2021, 11:47 AM  wrote:
>
> Actually I was looking at trying to convert an Alpine Linux in WSL into GuixSd

You may be confusing terms.  GuixSD is the deprecated term.  The new
term is Guix System, which is running guix paired with the GNU shepherd
as a GNU/Linux distro.

Guix System implies that GNU/Linux is the host OS.  I suppose that it
might be possible to run Guix System in WSL, but I do not know of anyone
that has tried it.   Why don't you try to run the installer script on
WSL first?  That would get running guix as a package manager in WSL.
Then you could do some playing around.

You could also try running Guix System inside a virtual machine in Windows.

If you really want computing freedom, you might be interested in dual
booting windows and Guix System.  That way at boot time you could choose
to boot into Windows or Guix System.

I personally gave up Windows a long time ago.  I prefer GNU/Linux
because I want to be able to watch all the sappy romantic comedies I
want and not report it to Big Brother.  :)

>
> -Kevin
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



[PATCH] * doc/guix-cookbook.texi (Guix System Image API): new section

2021-01-17 Thread Joshua Branson
---
 doc/guix-cookbook.texi | 187 +
 1 file changed, 187 insertions(+)

diff --git a/doc/guix-cookbook.texi b/doc/guix-cookbook.texi
index 54ab99558e..2bc8fe8a99 100644
--- a/doc/guix-cookbook.texi
+++ b/doc/guix-cookbook.texi
@@ -1353,6 +1353,7 @@ reference.
 
 @menu
 * Customizing the Kernel::   Creating and using a custom Linux kernel on 
Guix System.
+* Guix System Image API::Customizing the disk-image to target specific 
platforms.
 * Connecting to Wireguard VPN::  Connecting to a Wireguard VPN.
 * Customizing a Window Manager:: Handle customization of a Window manager on 
Guix System.
 * Running Guix on a Linode Server:: Running Guix on a Linode Server
@@ -1601,6 +1602,192 @@ likely that you'll need to modify the initrd on a 
machine using a custom
 kernel, since certain modules which are expected to be built may not be
 available for inclusion into the initrd.
 
+@node Guix System Image API
+@section Guix System Image API 
+
+Historically, Guix System is centered around an @code{operating-system}
+structure.  This structure contains various fields ranging from the
+bootloader and kernel declaration to the services to install.  This is
+useful to create an installer image, but the new Guix System image API
+makes it possible to create an image that the user boots into directly.
+For example, an image that targets the Beagleboard or PinePhone
+directly.
+
+Turning an @code{operating-system} structure into a disk-image requires
+additional information such as the image label, size and
+partitioning. To this end, we can use the new @code{image} record.
+
+@lisp
+(define-record-type* 
+  image make-image
+  image?
+  (name   image-name ;symbol
+  (default #f))
+  (format image-format) ;symbol
+  (target image-target
+  (default #f))
+  (size   image-size  ;size in bytes as integer
+  (default 'guess))
+  (operating-system   image-operating-system  ;
+  (default #f))
+  (partitions image-partitions ;list of 
+  (default '()))
+  (compression?   image-compression? ;boolean
+  (default #t))
+  (volatile-root? image-volatile-root? ;boolean
+  (default #t))
+  (substitutable? image-substitutable? ;boolean
+  (default #t)))
+@end lisp
+
+This record also contains the operating-system to instantiate. The
+@code{format} field defines the image type and can be @code{disk-image},
+@code{compressed-qcow2} or @code{iso9660}. In the future, it could be
+extended to @code{docker} or other image types.
+
+A new directory in the Guix sources is dedicated to images definition. For now
+there are two files:
+
+@itemize @bullet
+@item
+- @file{gnu/system/images/hurd.scm}
+
+@item
+- @file{gnu/system/images/pine64.scm}
+
+@end itemize
+
+Let's have a look to @file{pine64.scm}. It contains the
+@code{pine64-barebones-os} variable which is a minimal definition of an
+operating-system dedicated to the @b{Pine A64 LTS} board.
+
+@lisp
+(define pine64-barebones-os
+  (operating-system
+(host-name "vignemale")
+(timezone "Europe/Paris")
+(locale "en_US.utf8")
+(bootloader (bootloader-configuration
+ (bootloader u-boot-pine64-lts-bootloader)
+ (target "/dev/vda")))
+(initrd-modules '())
+(kernel linux-libre-arm64-generic)
+(file-systems (cons (file-system
+  (device (file-system-label "my-root"))
+  (mount-point "/")
+  (type "ext4"))
+%base-file-systems))
+(services (cons (service agetty-service-type
+ (agetty-configuration
+  (extra-options '("-L")) ; no carrier detect
+  (baud-rate "115200")
+  (term "vt100")
+  (tty "ttyS0")))
+%base-services
+@end lisp
+
+The @code{kernel} and @code{bootloader} fields are pointing to packages
+dedicated to this board.
+
+Right below, the @code{pine64-image-type} variable is also defined.
+
+@lisp
+(define pine64-image-type
+  (image-type
+   (name 'pine64-raw)
+   (constructor (cut image-with-os arm64-disk-image <>
+@end lisp
+
+It's using a record we haven't talked about yet, the @code{image-type} record,
+defined this way:
+
+@lisp
+(define-record-type* 
+  image-type make-image-type
+  image-type?
+  (name   image-type-name) ;symbol
+  (constructorimage-type-constructor)) ; -> 
+@end lisp
+
+The main purpose of this record is to associate a name to a procedure
+transforming an @code{operating-system} to an image. To understand why
+it is necessary, let's have a look to the command producing a disk-image
+from an @code{operating-system} configuration file:
+
+@example
+guix system 

Re: Guix on Smartphones

2021-01-16 Thread Joshua Branson
Matias Jose Seco Baccanelli 
writes:

> Good January Guixers!
> I write you regarding a curiosity related to the mobile arena.
> I was trying to discover an overview of the present requirements to
> achieve a Guix System version for smartphones, so i was wondering if
> the following were the main points needed for:
>
> a) Hardware:
> - ARM architecture (i suppose also Risc-V will be popular)

Guix does support ARM, but the majority of users are X86_64, so that's
where the best guix support likely is.  Perhaps someone using guix on
Arm can comment here.

> - Open Source firmware for included components (Wifi, Modem, GPS,..)*
> *if there are firmware blobs, they can  be considered safe once they're
> properly isolated ?

Guix is a free software distribution.  It will not distribute non-free
components.  These things may be considered safe, but guix will not
ship any non-free firmware blobs.

>
> b) Software Stack:
> - reading PureOS experience, they were able to integrate
>   existing software which runs fine on both Desktop and Mobile formats
> - KDE Neon ?
>
> As you can see, my main question is about a big-picture on having the
> chance to run Guix System with GNU/Linux mobile libre-apps/tools on
> top.

It's certainly possible to use guix system on a mobile phone.  Has
anyone done it yet?

>
> Cheers,
> have a happy hacking,
> Matias
>

--
Joshua Branson (joshuaBPMan in #guix)
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Single-board-computer approach: don't make an installer, make the install?

2021-01-14 Thread Joshua Branson via
Mathieu Othacehe  writes:

> Hello,
>
>> This is really well written.  May I edit this article and reproduce it
>> for the guix blog and perhaps the guix manual?  If ludo's ok with me
>> putting it on the blog, then I intend to end the blog post with "This
>> article first appeared in this personal blog (link here) and is
>> reproduced with permission."
>
> Thanks! I would happily review it :).
>
> There's for sure some work left on that topic. I'd like to:
>
> * Rename "disk-image" command to "image".
> * Add "docker" as a new image type.
> * Find a better way to enforce system/target constraints, as discussed
> here[1].

I'll go ahead and try to set up a patch for the cookbook.  

>
> Mathieu
>
> [1]: https://issues.guix.gnu.org/45020

--
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help
enough other people get what they want." - Zig Ziglar



Re: Single-board-computer approach: don't make an installer, make the install?

2021-01-13 Thread Joshua Branson via
Mathieu Othacehe  writes:

> Mathieu
>
> [1]: https://othacehe.org/the-guix-system-image-api.html

This is really well written.  May I edit this article and reproduce it
for the guix blog and perhaps the guix manual?  If ludo's ok with me
putting it on the blog, then I intend to end the blog post with "This
article first appeared in this personal blog (link here) and is
reproduced with permission."

> [2]: https://archive.fosdem.org/2020/schedule/event/ggaaattyp/
>

--
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help

enough other people get what they want." - Zig Ziglar



Re: Working Configuration for Wayland Auto-Login?

2020-12-26 Thread Joshua Branson


I would also be interested in figuring this out.  I have half of the
solution:

I currently login to a virtual console, then have .bash_profile start
sway:

#+BEGIN_SRC sh
# Honor per-interactive-shell startup file
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi

# shepherd

if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then
export MOZ_ENABLE_WAYLAND=1
export GUIX_PACKAGE_PATH=/home/joshua/prog/gnu/guix/guix-packages/

XDG_DATA_DIRS=/var/lib/flatpak/exports/share:/home/joshua/.local/share/flatpak/exports/share:$XDG_DATA_DIRS
# this may fix a bug that I have with termite confusing backspace as space 
in guix environment
# export TERM=linux
shepherd -c /home/joshua/.config/shepherd/init.scm &
exec dbus-run-session sway
fi
#+END_SRC

--
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help

enough other people get what they want." - Zig Ziglar



Re: Guix System on Libreboot Laptops

2020-12-25 Thread Joshua Branson via


YES!  I do have experience with this!  I have a T400.

After you install libreboot (with a grub payload), turn on your T400.
When you get to the libreboot grub payload, then insert your usb stick
with guix on it.  There are several options to choose to boot.  I think
that you have to choose the "external media" boot option...something
like that.

Then it should boot into the guix installer.

For whatever reason, I could only get guix to work on libreboot with 1 /
ext4 partition.  Any other option install guix, but I could not boot
into guix after it was installed. 

Thanks,

Joshua

--
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help

enough other people get what they want." - Zig Ziglar



Re: Full Disk Encryption

2020-12-25 Thread Joshua Branson


For those curious, I just opened the relevant file
'/gnu/tests/install.scm', navigated to the section about LVM support,
and ran M-x magit-blame.  Super cool command.  :)

--
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help

enough other people get what they want." - Zig Ziglar



Re: Full Disk Encryption

2020-12-22 Thread Joshua Branson


Hey sullentrapd...@airmail.cc!

Thanks for sharing that LVM support was added to guix!  I had not heard
about that!  That's awesome!  And thanks Mikhail Tsykalov for committing
it!  I'm pretty sure with a name like Mikhail, you have to be a genius.
Am I right?

For the commit message, it looks like LVM support was added on
11/25/2020.  So like, really recently.  It also looks like there has
only been one commit:  The commit to package LVM, which includes the
comment that guix currently doesn't support root-on-LVM.

My intuition tells me that currently guix does not support /root on
LVM.  I suppose it's just a little difficult to get that support set up
at the moment.  But you could always give Mikhail a financial tip to add
LVM /root support!  I'll chip in $5 toward this goal if you do!  Anyone
else that wants this support, feel free to respond with however much you
would donate for this support.

Man this is super cool news!  I've really wanted to play around with LVM
for quite some time now!

--
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help

enough other people get what they want." - Zig Ziglar



Re: Running postgres with shepherd as user-level service?

2020-12-21 Thread Joshua Branson


Hey Carlo,

I am SUPER NOT a guix developer, but I figured I'd respond to your
email.  Please bear in mind I am making this up as I go along.  :)

It sounds like your user postgresql service is not even generating a
postgresql config file.  It sounds like it is error-ing out before
anything useful happens.  Specifically in while I assume in a guile
procedure call to "fport_write".  You may need to get into debugging the
shepherd.  The GNU Guile manual has a section of debugging the shepherd.
It's not as pretty as debugging elisp code.  (I really hope someone
making the debugging guile code as awesome as debugging elisp).

Let's test the assumption that your user service of postgresql is NOT
generating any postgresql config file.  I would ensure that /gnu/store
has NO postgresql config files.  To do this, remove postgresql from your
user profile, and ensure that you DO not have a running postgresql
service definition in config.scm.  Then do a guix gc.  Now do something
like:

I think this is the right syntax for a recursive grep...
#+BEGIN_SRC sh
grep -r postgresql /gnu/store
#+END_SRC

Check for any files and directories that grep shows.  Do you see any
postgresql configuration files?

I would try to load the service as you did before via 'herd load root
postgres.scm' and then do a

#+BEGIN_SRC sh
cat /var/log/messages
#+END_SRC

You could also try looking at where postgresql logs files, but again it
doesn't sound like postgresql is even generating the config file...
https://www.postgresql.org/docs/9.1/runtime-config-logging.html

When I was debugging my system nginx service, I found it useful to
discover what nginx file guix generated.  Currently the shepherd doesn't
have a way to show you the generated file, but you can do a recursive
grep and try to find said config file. 

You can also try to take a look at the system postgresql service
definition in guix-src/gnu/services/databases.scm.

Best of luck,

Joshua

P.S.  If the above fails, try dipping an orange in a big barrel of
pickle juice, speak the incantation "Relational Databases are fantastic"
5 times, and gently pat your computer thinking the positive affirmation
"you are adorable".  :)

--
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help

enough other people get what they want." - Zig Ziglar



Re: GNU Guix 1.2.0 T-shirts available

2020-12-20 Thread Joshua Branson via


Maybe the guix website should have a shop tab for things like this.  It
would also be cool if they could mention suppliers that sell Guix System.

-- 
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help 

enough other people get what they want." - Zig Ziglar
  



Re: xlockmore man pages

2020-12-20 Thread Joshua Branson


Hey Andre,

I believe that is a feature.  Your user cannot access system packages,
because your user profile is separate from the system packages.

Though I do find it surprising that you can access the elogind man
page.  I'm not certain why that is different.

--
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help

enough other people get what they want." - Zig Ziglar



Re: Guix Newbie, Looking for Support

2020-12-20 Thread Joshua Branson


Hey hey Marek!  Nice to meet you friend!

You might be interested in some of my videos from hardlimit (link down
below).  I'm happy to try to help mentor you as a pay what you want
service; if you don't like the service, then don't pay.  I'm based in
the Midwest in the good old U.S., but I'd be happy to try to help you
get set up.  My $5 linode VPS is currently running https://gnucode.me,
https://propernaming.org (it's a joke), and https://gnu-hurd.com.

My current guix system server config file is here:
https://notabug.org/jbranso/linode-guix-system-configuration/src/master/linode-locke-lamora-current-config.scm

I've ran websites before with debian, and guix is soo much easier to
use.  (opinion).

Do you have a decent internet connection, so that we could chat via big
blue button or meet.jit.si?

Thanks,

--
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help

enough other people get what they want." - Zig Ziglar



Re: Problem on setting up the Cuirass as substitute server

2020-12-20 Thread Joshua Branson


Hey Reza,

I think that cuirass may eventually be replaced by the guix build
coordinator.  I'm not certain if that helps you, but I figured I'd email
you something.

--
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help

enough other people get what they want." - Zig Ziglar



Re: A weird thing about network connections in Icecat (and Firefox) on Guix

2020-12-20 Thread Joshua Branson via


Hey Chris,

I used to have that Icecat issue.  I had to restart icecat whenever I
lost the internet connection.  I do not believe that I have had that
issue in a while.  I just turned off my wifi and turned it back on and
icecat worked just fine.

P.S.  Whoever has been maintaining Icecat, great job!  I used to have
all sorts of weird stability issues, but not so much anymore.  Thanks!

--
Joshua Branson
Sent from Emacs and Gnus
  https://gnucode.me
  https://video.hardlimit.com/accounts/joshua_branson/video-channels
  https://propernaming.org
  "You can have whatever you want, as long as you help

enough other people get what they want." - Zig Ziglar



Re: Eternal Terminal Server?

2020-11-10 Thread Joshua Branson


Hey yasu,

I've never actually heard of eternal terminal, but that sounds pretty
awesome!  haha!

If those guix packages are only for clients, then it sounds like we need
to create a package for the server stuff, and also create a service for
it.

Would you care to work on that?  I can probably give you encouragement
going forward, but probably not much developmental guidance.  :)

--
Joshua Branson
Sent from Emacs and Gnus
https://gnucode.me
https://video.hardlimit.com/accounts/joshua_branson/video-channels
"You can have whatever you want, as long as you help enough other people get 
what they want." - Zig Ziglar



Re: Touchpad not working on Acer Aspire One laptop

2020-11-10 Thread Joshua Branson


Hey Barnabas!  (awesome name by the way!)

Is your touchpad working at all?  Can you move a mouse with your
touchpad?  I had an issue on my old macbook, where my mouse would only
move up and down.  When I started using sway, that issue went away.

Thanks,

--
Joshua Branson
Sent from Emacs and Gnus
https://gnucode.me
https://video.hardlimit.com/accounts/joshua_branson/video-channels
"You can have whatever you want, as long as you help enough other people get 
what they want." - Zig Ziglar



Re: Trouble booting Guix System

2020-11-10 Thread Joshua Branson


Yeah, any AMD graphics card is going to have a hard time.   Without the
firmware files, those graphics cards are nearly useless.  There's some
really old nvidia cards that work fairly well.  There's probably a
kernel parameter you could pass that would disable the AMD graphics
driver from loading.

The Intel CPU graphics driver is one of the better ones for running
libre graphics software.  :)

--
Joshua Branson
Sent from Emacs and Gnus
https://gnucode.me
https://video.hardlimit.com/accounts/joshua_branson/video-channels
"You can have whatever you want, as long as you help enough other people get 
what they want." - Zig Ziglar



Re: Easy DigitalOcean setup?

2020-11-09 Thread Joshua Branson


You might try using a linode VPS.  That's what I'm using.  There is a
guide in the cookbook that shows you how to set it up. :)

-- 
Joshua Branson
Sent from Emacs and Gnus
https://gnucode.me
https://video.hardlimit.com/accounts/joshua_branson/video-channels
"You can have whatever you want, as long as you help enough other people get 
what they want." - Zig Ziglar



Re: Trouble booting Guix System

2020-11-05 Thread Joshua Branson


I actually couldn't get encryption to work for my on my librebooted
machine.  I re-installed with just 1 unencrypted ext4 machine, and now I
can use guix system.  Not really a fix I know, but you might give that a try.

-- 
Joshua Branson
Sent from Emacs and Gnus
https://gnucode.me
https://video.hardlimit.com/accounts/joshua_branson/video-channels
"You can have whatever you want, as long as you help enough other people get 
what they want." - Zig Ziglar



Re: Troubles with opensmtpd-filter-dkimsign

2020-11-03 Thread Joshua Branson


I don't have that directory structure...

#+BEGIN_SRC sh
cd /run/current-system/profile/libexec/opensmtpd
bash: cd: /run/current-system/profile/libexec/opensmtpd: No such file or 
directory
#+END_SRC

How do I reliably find opensmtpd-filter-dkimsign?  and I've tried doing
a /gnu/store/sntahusntae/...  URI before...

Thanks,

Joshua

--
Joshua Branson
Sent from Emacs and Gnus
https://gnucode.me
https://video.hardlimit.com/accounts/joshua_branson/video-channels
"You can have whatever you want, as long as you help enough other people get 
what they want." - Zig Ziglar



  1   2   >