Tor Service

2019-05-09 Thread Raghav Gururajan
Hello Guix!

I added Tor Service with Default Configuration to my system config. I also 
added the user to Tor group.

When I configured my browser to use localhost's tor port as proxy, I got error 
"proxy is refusing connection".

When I check tor service with "herd status" as root, tor wasn't running. When I 
did "herd start tor", I am getting error "service tor failed to start".

I have been asked to provide output of "dmesg", which I have attached with this 
email.

NOTE TO CHRIS: I have started this new thread for clarity. :)

Thank you!

Regards,
RG.


dmesg_log
Description: Binary data


Re: Input Attach Service

2019-05-09 Thread Raghav Gururajan
> Our inputattach says…
> 
> --wacom -wacom Wacom W8001
> 
> …so I guess it was just renamed since that wiki article was
> written.
> 
> Then I'm all out of ideas, sorry.
> 

That's okay. Let us see if others or maintainer of "inputattach-service-type" 
has any ideas. :)

Regards,
RG.



About conflicting entries in a profile

2019-05-09 Thread Ivan Vilata i Balaguer
Hi!  I've been using Guix on top of Debian for more than 2 years and I saw
something that spurred a doubt about how Guix manages conflicts.

So the other day I got the following output from ``guix package -u`` after a
``guix pull``:

$ guix package --dry-run -u python-jsonschema
The following package would be upgraded:
   python-jsonschema2.6.0 -> 3.0.1  
/gnu/store/va4hgdfx8zbqzyah7vgqkm25g60p8lf3-python-jsonschema-3.0.1

guix package: error: profile contains conflicting entries for python-attrs
guix package: error:   first entry: python-attrs@18.2.0 
/gnu/store/awb7awycpf1crpd1kllvk6qzchd4g7lw-python-attrs-18.2.0
guix package: error:... propagated from python-jsonschema@3.0.1
guix package: error:   second entry: python-attrs@18.2.0 
/gnu/store/s77kxps7sybxxdny68xkbcp51ffmiwfl-python-attrs-18.2.0
guix package: error:... propagated from python-automat@0.6.0
guix package: error:... propagated from python-twisted@17.5.0
guix package: error:... propagated from python-txtorcon@19.0.0
guix package: error:... propagated from magic-wormhole@0.11.2
hint: Try upgrading both `python-jsonschema' and `magic-wormhole', or 
remove one of them from the profile.

I understand the error message, and upgrading both packages fixed the issue
indeed.  What I don't get is *why* having two different versions of
``python-attrs`` in the profile is considered an error.  My understanding was
that two different packages in the profile should be able to depend on
different versions of the same library without problems, since they are
referred by its absolute path in the store so they don't conflict.  I
understand that I may not directly ``guix install`` two versions of the same
package (because the may e.g. put the same entry under ``$GUIX_PROFILE/bin``),
but in my case ``python-attrs`` is just a dependency package which doesn't
show up in ``guix package -I``.

Can anybody shed some light on the issue?  Thanks!

PS: Yes, I started to write about this in the IRC channel but I pasted too
many command output lines and got banned.  Oops!

-- 
Ivan Vilata i Balaguer -- https://elvil.net/



Re: Guix cookbook (was: guile scheme tutorial)

2019-05-09 Thread Ricardo Wurmus


Pierre Neidhardt  writes:

> I agree with all your points!
>
> Regarding the bootstrapping process: we could already split the
> packaging tutorial into 2 "recipes":
> - A guile primer
> - The actual packaging tutorial
>
> Of course we would interlink them.
>
> Once done, we should not forget to update the blog post to let the
> readers know to refer to the corresponding cookbook instead.

Sounds good.  I’d like to keep the cookbook chapters rather short and
focused, so splitting things up into independent chapters is fine.

> Out of curiosity, can you remember which part of the tutorial is out of
> date?  I cannot think of anything.

I think it was a misunderstanding:

http://bayfront.guix.info:/2019-05-08.log#042356

The tutorial says:

Follow the instruction from the "Contributing" chapter in the manual
to set up the repository environment.

I think they did not follow those instructions.  Sorry for the false
alarm!

--
Ricardo




Re: good overview presentation?

2019-05-09 Thread Miles Fidelman

Thanks Chris,

A couple of follow-ups:

On 5/9/19 12:39 PM, Christopher Baines wrote:


1: http://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/talks

There's also two talks [2] which I've given in the past on Guix, they're
a few years old, but I think most of the material is still correct.

Silly me, but how does one view these things?  The ones labeled with 
.pdf extensions come across as ascii files, that can't be read as pdf, 
and others look like they have to be assembled.


These are pretty good, and helpful - but they do raise a key question:



2: https://www.cbaines.net/projects/guix/

The FOSDEM 2018 one is shorter, and higher level [3].

3: https://www.cbaines.net/projects/guix/fosdem-2018/presentation/#/

The Freenode live! 2017 one is longer and more technical [4].

4: https://www.cbaines.net/projects/guix/freenode-live-2017/presentation/#/


From the slides, it looks like GUIX keeps track of dependencies, but 
there's no discussion about how dependencies are identified, included in 
the package definitions, or resolved at install time. Details (or 
pointer) please!


Thanks Again,

Miles



--
In theory, there is no difference between theory and practice.
In practice, there is.   Yogi Berra

Theory is when you know everything but nothing works.
Practice is when everything works but no one knows why.
In our lab, theory and practice are combined:
nothing works and no one knows why.  ... unknown




Re: question re. packaging, build, init and shepherd

2019-05-09 Thread Miles Fidelman

Ok... a few follow-on questions (in-line):


On 5/9/19 1:03 PM, Christopher Baines wrote:


Miles Fidelman  writes:


The GUIX documentation is great when it comes to installing GUIX, and
then installing packaged software.

It's not so clear on how do install software that isn't in the package
repository - whether by creating a package, or via the classic
./configure;make;make install, or if there are tools that can bring
classically installed software under package management (e.g., the
Debian alien tool).

I can't really think of a situation where creating a package would be a
bad approach, and the manual does describe this. There's also the
packaging tutorial blog post [1]

1: https://www.gnu.org/software/guix/blog/2018/a-packaging-tutorial-for-guix/

I think there could indeed be a lack of guidance about where do perhaps
deviate from the instructions or common steps for installing software.

Taking the shepherd as an example, the INSTALL file distributed with the
source contains the common: './configure && make && make install'


Ok.. see that.  So it basically does what one would do manually, 
following the instructions in the configure & make files.




With a Guix System, that would probably work, at least initially. But
you'd be missing out on some of the advantages Guix packages offer, and
would possibly run in to problems with garbage collection.

As Guix doesn't really have binary packages like Debian, there isn't
really the possibility of a Alien like tool. The dependencies between
the "binary" package forms are very strict, using exact store paths,
which would make generating a package to slot in to a system difficult.


And then there's the question of init systems:  Until systemd came
along, ./configure;make;make install generally just works - leaving
init files in the right places, starting up daemons, etc.

Which leads to the question of, if I want to install something
complicated in GUIX - say the Sympa list manager (to pick a non-random
example), which comes with standard sysvinit scripts - can I just
./configure;make;make install?  Does Shepherd do the right thing with
sysvinit scripts?  Can I invoke them through Shepherd (e.g, after a
config change)?  Can I still edit & invoke the init scripts in the
classic ways (vi, /etc/init.d/ restart).

The configuration of the shepherd is normally entirely managed through
your Guix operating-system definition. The configuration is generated in
te store, and shepherd looks at that.

This is important as it allows you to boot in to previous generations of
your system, which is useful for recovering the system if things go
wrong.

So, whereas I think things like systemd are aware of sysvinit scripts in
the usual place, the shepherd is completely unaware.


So... that kind of leaves out automatically setting up servers. I mean, 
most server software still comes with init files, maybe with systemd or 
other init files, but generally make install sets things up so that 
servers start & run.


So how does GUIX support this?

And, for that matter, how does GUIX handle any kind of post-install 
configuration?  E.g., the kind of things that debconf might be used for.


Thanks,

Miles Fidelman

--
In theory, there is no difference between theory and practice.
In practice, there is.   Yogi Berra

Theory is when you know everything but nothing works.
Practice is when everything works but no one knows why.
In our lab, theory and practice are combined:
nothing works and no one knows why.  ... unknown




Re: collect2: fatal error: cannot find 'ld'

2019-05-09 Thread Ricardo Wurmus


Ludovic Courtès  writes:

> Hello!
>
> Ricardo Wurmus  skribis:
>
>> Ludovic Courtès  writes:
>>
>>> Ricardo Wurmus  skribis:
>>>
 I still think that we should hide the plain gcc packages on the command
 line.
>>>
>>> Agreed.
>>
>> Is this the right way to hide the package (see patch)?  I searched for
>> GCC on the command line with “guix package --search=gcc” and the results
>> did not include the plain gcc packages.
>
> It still includes the ‘gcc-toolchain’ packages, right?

Yes.

> Go for it!

Done!

-- 
Ricardo




Re: Input Attach Service

2019-05-09 Thread Tobias Geerinckx-Rice

Raghav,

Raghav Gururajan wrote:
I tried it. But didn't work. Now the error output line during 
boot " inputattach: invalid type "--w8001"".


Our inputattach says…

 --wacom  -wacomWacom W8001

…so I guess it was just renamed since that wiki article was 
written.


Then I'm all out of ideas, sorry.

Kind regards,

T G-R


signature.asc
Description: PGP signature


Re: question re. packaging, build, init and shepherd

2019-05-09 Thread Christopher Baines

Miles Fidelman  writes:

> The GUIX documentation is great when it comes to installing GUIX, and
> then installing packaged software.
>
> It's not so clear on how do install software that isn't in the package
> repository - whether by creating a package, or via the classic
> ./configure;make;make install, or if there are tools that can bring
> classically installed software under package management (e.g., the
> Debian alien tool).

I can't really think of a situation where creating a package would be a
bad approach, and the manual does describe this. There's also the
packaging tutorial blog post [1]

1: https://www.gnu.org/software/guix/blog/2018/a-packaging-tutorial-for-guix/

I think there could indeed be a lack of guidance about where do perhaps
deviate from the instructions or common steps for installing software.

Taking the shepherd as an example, the INSTALL file distributed with the
source contains the common: './configure && make && make install'

With a Guix System, that would probably work, at least initially. But
you'd be missing out on some of the advantages Guix packages offer, and
would possibly run in to problems with garbage collection.

As Guix doesn't really have binary packages like Debian, there isn't
really the possibility of a Alien like tool. The dependencies between
the "binary" package forms are very strict, using exact store paths,
which would make generating a package to slot in to a system difficult.

> And then there's the question of init systems:  Until systemd came
> along, ./configure;make;make install generally just works - leaving
> init files in the right places, starting up daemons, etc.
>
> Which leads to the question of, if I want to install something
> complicated in GUIX - say the Sympa list manager (to pick a non-random
> example), which comes with standard sysvinit scripts - can I just
> ./configure;make;make install?  Does Shepherd do the right thing with
> sysvinit scripts?  Can I invoke them through Shepherd (e.g, after a
> config change)?  Can I still edit & invoke the init scripts in the
> classic ways (vi, /etc/init.d/ restart).

The configuration of the shepherd is normally entirely managed through
your Guix operating-system definition. The configuration is generated in
te store, and shepherd looks at that.

This is important as it allows you to boot in to previous generations of
your system, which is useful for recovering the system if things go
wrong.

So, whereas I think things like systemd are aware of sysvinit scripts in
the usual place, the shepherd is completely unaware.


signature.asc
Description: PGP signature


Re: good overview presentation?

2019-05-09 Thread Christopher Baines

Miles Fidelman  writes:

> Hi Folks,
>
> Is there a good, current, overview presentation on all things GUIX?
> The whole who, what, where, when, why, how, how much, and who cares
> overview that one might give at USENIX, describing a new distro.
>
> I've been doing a lot of googling, and not finding anything remotely
> current.  Lots of stuff on detailed aspects, some videos (but no
> slides) from FOSDEM 2019 - but nothing that gives the big picture, the
> overall architecture, the build process, and so forth.
>
> It seems like the release of v1.0.0 merits a serious
> intro/overview/tutorial for those of us who might be interested in
> exploring/adopting GUIX.
>
> If there's such a beast floating around, could someone point me at it
> (and maybe add a prominent link at
> https://www.gnu.org/software/guix/).
>
> If not... a polite suggestion to the team:  Nobody else can put
> something together, it's all too new, and you're the only folks who
> have the big picture.  Please share!

Hi Miles,

There are some talks described here [1]. Guix has only been around as a
project for the last ~7 years, so recency shouldn't be too much of an
issue, especially if you're interested in a more general overview.

1: http://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/talks

There's also two talks [2] which I've given in the past on Guix, they're
a few years old, but I think most of the material is still correct.

2: https://www.cbaines.net/projects/guix/

The FOSDEM 2018 one is shorter, and higher level [3].

3: https://www.cbaines.net/projects/guix/fosdem-2018/presentation/#/

The Freenode live! 2017 one is longer and more technical [4].

4: https://www.cbaines.net/projects/guix/freenode-live-2017/presentation/#/

Chris


signature.asc
Description: PGP signature


question re. packaging, build, init and shepherd

2019-05-09 Thread Miles Fidelman
The GUIX documentation is great when it comes to installing GUIX, and 
then installing packaged software.


It's not so clear on how do install software that isn't in the package 
repository - whether by creating a package, or via the classic 
./configure;make;make install, or if there are tools that can bring 
classically installed software under package management (e.g., the 
Debian alien tool).


And then there's the question of init systems:  Until systemd came 
along, ./configure;make;make install generally just works - leaving init 
files in the right places, starting up daemons, etc.


Which leads to the question of, if I want to install something 
complicated in GUIX - say the Sympa list manager (to pick a non-random 
example), which comes with standard sysvinit scripts - can I just 
./configure;make;make install?  Does Shepherd do the right thing with 
sysvinit scripts?  Can I invoke them through Shepherd (e.g, after a 
config change)?  Can I still edit & invoke the init scripts in the 
classic ways (vi, /etc/init.d/ restart).


---

I'm sure I'm not the only one looking at GUIX as an alternative to the 
various distributions that have gone down the systemd rathole - 
particularly those of us who run Linux in production server environments 
that have been heavily customized over the years.  GUIX seems to be 
reaching a maturity level where it can be considered for production use 
- but there's an awful paucity of information that might let us evaluate it.


Miles Fidelman


--
In theory, there is no difference between theory and practice.
In practice, there is.   Yogi Berra

Theory is when you know everything but nothing works.
Practice is when everything works but no one knows why.
In our lab, theory and practice are combined:
nothing works and no one knows why.  ... unknown




good overview presentation?

2019-05-09 Thread Miles Fidelman

Hi Folks,

Is there a good, current, overview presentation on all things GUIX?  The 
whole who, what, where, when, why, how, how much, and who cares overview 
that one might give at USENIX, describing a new distro.


I've been doing a lot of googling, and not finding anything remotely 
current.  Lots of stuff on detailed aspects, some videos (but no slides) 
from FOSDEM 2019 - but nothing that gives the big picture, the overall 
architecture, the build process, and so forth.


It seems like the release of v1.0.0 merits a serious 
intro/overview/tutorial for those of us who might be interested in 
exploring/adopting GUIX.


If there's such a beast floating around, could someone point me at it 
(and maybe add a prominent link at https://www.gnu.org/software/guix/).


If not... a polite suggestion to the team:  Nobody else can put 
something together, it's all too new, and you're the only folks who have 
the big picture.  Please share!


Miles Fidelman


--
In theory, there is no difference between theory and practice.
In practice, there is.   Yogi Berra

Theory is when you know everything but nothing works.
Practice is when everything works but no one knows why.
In our lab, theory and practice are combined:
nothing works and no one knows why.  ... unknown




Re: "System Package" vs "System Service"

2019-05-09 Thread Raghav Gururajan
> The Linux kernel logs information in a ring buffer as it runs. That log
> can be viewed by invoking the "dmesg" tool. The tool is available in
> the "util-linux" package.
> 
> The same messages will eventually be logged to syslog, and on Guix
> System I think the default place they are stored is /var/log/messages.
> The ring buffer contains only the most recent messages.

Chris, please find the dmesg output attached with this email.


dmesg_log
Description: Binary data


Fingerprint Service

2019-05-09 Thread Raghav Gururajan
Hello Guix!

Based on this 
(https://www.gnu.org/software/guix/manual/en/html_node/Miscellaneous-Services.html#Miscellaneous-Services
 
(https://www.gnu.org/software/guix/manual/en/html_node/Miscellaneous-Services.html#Miscellaneous-Services)),
 I have included "fprintd-service-type" (with default config, that is, values 
left blank) to my system services in the system config. The "guix system 
reconfigure" went without any errors. But it appears the service is not 
actually added to the system.

When I checked "herd status" as root, the fprintd service was not running. 
Also, when I did "herd start fprintd", I am getting "service not found". That 
means the service itself is not available in the system right? Weird!?

My device is RYF-Certified TET-X200T (https://tehnoetic.com/tet-x200t 
(https://tehnoetic.com/tet-x200t)).

Thank you!

Regards,
RG.


Re: Input Attach Service

2019-05-09 Thread Raghav Gururajan

>
> > 
> > This is probably just a typo in your e-mail, but the service is
> > name inputattach-service-type (no third hyphen).
> >
>
> Yes, it was a typo. :)
>
> > 
> > I don't own an X200T, and I don't know which guide your following,
> > but a random search led me here[0]. They use ‘--w8001’ while our
> > service defaults to ‘--wacom’.
> > 
> > Does passing ‘(type "w8001")’ to inputattach-configuration change
> > a thing?
> >
>
> Ah, Thanks! I will try this and get back to you.
>

I tried it. But didn't work. Now the error output line during boot " 
inputattach: invalid type "--w8001"".

Re: Search for package output

2019-05-09 Thread Chris Marusich
Hi,

mikadoZero  writes:

> `guix package -s cargo`
> This does not return rust even though cargo is an output of rust. The
> manual says it looks at name, synopsis, or description. So this is not
> a surprise.
>
> Is there a way to search for programs that are an output of a package?
>
> I looked at "4.2 Invoking ‘guix package’" in the manual but it is not
> covered there.

I opened a bug report here for the issue in which a package's outputs
are not included in the search results:

https://bugs.gnu.org/35588

And we've fixed it in commit 387e6b9e340ce4b401f220f72881415623a466f7.

Thank you for reporting the issue, mikadoZero!

-- 
Chris


signature.asc
Description: PGP signature


Re: Wrong type argument in position 1 (expecting struct): #

2019-05-09 Thread rendaw
On 5/9/19 2:55 PM, zna...@disroot.org wrote:
> Hello! I try to reconfigure system with Gnome, sddm and wayland.
> I also use sddm-configuration to define use wayland for greeter, but get the 
> error for my misconfiguration:
>
> # cat config.scm
> ...
>  (services (cons*
>  ;(service xfce-desktop-service-type)
>  (service gnome-desktop-service-type)
>  (service dhcp-client-service-type)
>  (service sddm-service
>  (sddm-configuration
>  (display-server "wayland")))
> ...
> )
>
> # guix system reconfigure config.scm
> Backtrace:
>  14 (primitive-load "/root/.config/guix/current/bin/guix")
> In guix/ui.scm:
>  1734:12 13 (run-guix-command _ . _)
> In ice-9/boot-9.scm:
>  829:9 12 (catch _ _ # …)
>  829:9 11 (catch _ _ # …)
> In guix/scripts/system.scm:
>  1301:8 10 (_)
> In guix/status.scm:
>  768:4 9 (call-with-status-report _ _)
> In guix/scripts/system.scm:
>  1159:4 8 (process-action _ _ _)
> In guix/store.scm:
>  623:10 7 (call-with-store _)
>  1794:24 6 (run-with-store _ _ #:guile-for-build _ #:system _ # _)
> In guix/scripts/system.scm:
>  1175:13 5 (_ _)
>  882:18 4 (perform-action reconfigure #< kerne…> …)
> In gnu/system.scm:
>  851:19 3 (operating-system-derivation _)
> In gnu/services.scm:
>  743:6 2 (instantiate-missing-services _)
> In guix/combinators.scm:
>  45:26 1 (fold2 # …)
> In gnu/services.scm:
>  733:11 0 (adjust-service-list _ (#< type: # …) …)
>
> gnu/services.scm:733:11: In procedure adjust-service-list:
> In procedure struct_vtable: Wrong type argument in position 1 (expecting 
> struct): #
> Please, let me know how to understand such errors. Here, I saw the same 
> structure 
> https://www.gnu.org/software/guix/manual/en/guix.html#index-sddm_002dservice

(sddm-service ...) returns a service instance so you don't need to wrap
it in (service ...).  I think the key point to notice is it's
`sddm-service` and not `sddm-service-type` - service types go in
`(service ...)` as the second parameter but `service-*` functions
replace the `(service ...)` call entirely.

I'm not sure if there's more information you can get from the backtrace,
but where it says:

position 1 (expecting struct): #

it's saying it wanted a struct but got `sddm-service` which is a
`procedure` (function). And the last line of the trace has:

 733:11 0 (adjust-service-list _ (#< type: # …) …)

-- all the  things make me think that it's probably looking for
a struct of type .

If you change it from `(service sddm-service)` to `(sddm-service
(sddm-configuration))` it should work (although you might want to
specify some values in sdm-configuration.




Re: Input Attach Service

2019-05-09 Thread Raghav Gururajan
> 
> This is probably just a typo in your e-mail, but the service is
> name inputattach-service-type (no third hyphen).
> 

Yes, it was a typo. :)

> 
> I don't own an X200T, and I don't know which guide your following,
> but a random search led me here[0]. They use ‘--w8001’ while our
> service defaults to ‘--wacom’.
> 
> Does passing ‘(type "w8001")’ to inputattach-configuration change
> a thing?
> 

Ah, Thanks! I will try this and get back to you.

Regards,
RG.



Re: "System Package" vs "System Service"

2019-05-09 Thread Chris Marusich
"Raghav Gururajan"  writes:

>> I'm sorry to hear that Tor is giving you such trouble. Maybe there is
>> some helpful information in one of the files in /var/log? Perhaps dmesg
>> has some useful output?
>
> I will check the log and get back to you.
> How do I use dmesg? Should I install any package and use any specific command?

The Linux kernel logs information in a ring buffer as it runs.  That log
can be viewed by invoking the "dmesg" tool.  The tool is available in
the "util-linux" package.

The same messages will eventually be logged to syslog, and on Guix
System I think the default place they are stored is /var/log/messages.
The ring buffer contains only the most recent messages.

-- 
Chris


signature.asc
Description: PGP signature