Errors trying to use home-dicod-service-type and home-syncthing-service-type

  • Done
  • quality assurance status badge
Details
2 participants
  • Morgan Smith
  • Ludovic Courtès
Owner
unassigned
Submitted by
Morgan Smith
Severity
normal
M
M
Morgan Smith wrote on 24 Aug 2023 20:39
(address . bug-guix@gnu.org)
DM5PR03MB31638956F1FD00766F595BD5C51DA@DM5PR03MB3163.namprd03.prod.outlook.com
Hello guix!

Thank you Ludovic for adding a way to map system services to home
services! This is very exciting. However, I can't seem to use some of
those services.

Take a look at this minimal example home configuration:

Toggle snippet (16 lines)
(use-modules (gnu services)
(gnu home services dict)
(gnu home services syncthing)
(gnu home services mcron))

(home-environment
(services
(list
;; guix home: error: no target of type 'system' for service 'profile'
(service home-dicod-service-type)
;; guix home: error: no target of type 'system' for service 'profile'
(service home-syncthing-service-type)
;; works great!
(service home-mcron-service-type))))

Am I doing something wrong? Both the dicod and syncthing services give
me an error when running "guix home build". The mcron service works
fine though even though it is built using the same "for-home" stuff.

I'm not that comfortable with debugging services and I don't really know
where to start.

I used the "guix repl" to print out "(service home-dicod-service-type)"
and got this:

Toggle snippet (2 lines)
$1 = #<<service> type: #<service-type home-dict 7f16dd2e3600> value: #<<dicod-configuration> dico: #<package dico@2.11 gnu/packages/dico.scm:41 7f16dd2e9210> interfaces: ("localhost") handlers: () databases: (#<<dicod-database> name: "gcide" handler: "gcide" complex?: #f options: (#<gexp (string-append "dbdir=" #<gexp-input #<package gcide@0.53 gnu/packages/dictionaries.scm:114 7f16de0644d0>:out> "/share/gcide") gnu/services/dict.scm:94:18 7f16dc110150> #<gexp (string-append "idxdir=" #<gexp-input #<<computed-file> name: "dicod-gcide-index" gexp: #<gexp (begin (use-modules (guix build utils)) (mkdir #<gexp-output out>) (invoke #<gexp-input native #<file-append #<package dico@2.11 gnu/packages/dico.scm:41 7f16dd2e9210> "/libexec/idxgcide">:out> #<gexp-input native #<file-append #<package gcide@0.53 gnu/packages/dictionaries.scm:114 7f16de0644d0> "/share/gcide">:out> #<gexp-output out>)) gnu/services/dict.scm:83:19 7f16dc1101b0> guile: #f options: (#:local-build? #t)>:out>) gnu/services/dict.scm:95:18 7f16dc110120>)>) home-service?: #t>>
L
L
Ludovic Courtès wrote on 29 Aug 2023 11:34
(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
87zg2aur8l.fsf@gnu.org
Hi Morgan,

Morgan Smith <Morgan.J.Smith@outlook.com> skribis:

Toggle quote (13 lines)
> (use-modules (gnu services)
> (gnu home services dict)
> (gnu home services syncthing)
> (gnu home services mcron))
>
> (home-environment
> (services
> (list
> ;; guix home: error: no target of type 'system' for service 'profile'
> (service home-dicod-service-type)
> ;; guix home: error: no target of type 'system' for service 'profile'
> (service home-syncthing-service-type)

Oops. The workaround is to explicitly add (gnu home services shepherd)
to the list of imported modules.

I’ll look for a proper fix.

Thanks for reporting the issue!

Ludo’.
L
L
Ludovic Courtès wrote on 29 Aug 2023 12:30
(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
87sf82uomo.fsf@gnu.org
Hi,

Morgan Smith <Morgan.J.Smith@outlook.com> skribis:

Toggle quote (13 lines)
> (use-modules (gnu services)
> (gnu home services dict)
> (gnu home services syncthing)
> (gnu home services mcron))
>
> (home-environment
> (services
> (list
> ;; guix home: error: no target of type 'system' for service 'profile'
> (service home-dicod-service-type)
> ;; guix home: error: no target of type 'system' for service 'profile'
> (service home-syncthing-service-type)

Fixed in cf6abf50dbbbd95fef465ab4bb3b608843ac47e1.

It’s not fully satisfactory though so this will need more thought.

Thanks,
Ludo’.
Closed
?