= Failure with relocatable Guix pack tarball
:categories: guix

:post: https://guix.gnu.org/blog/2018/tarballs-the-ultimate-container-image-format/

FIXED: Use `GUIX_PROFILE= source etc/profile`

'''''

The example from the {post}[blog post] fails.

[source,shell]
----
$ tar xf `guix pack --relocatable -S /bin=bin -S /etc=etc guile gnutls guile-json`
$ source etc/profile
$ bin/guile -c '(use-modules (json))'
guile: warning: failed to install locale
Backtrace:
In ice-9/boot-9.scm:
  1736:10 13 (with-exception-handler _ _ #:unwind? _ # _)
In unknown file:
          12 (apply-smob/0 #<thunk 7f9d240ca740>)
In ice-9/boot-9.scm:
    718:2 11 (call-with-prompt ("prompt") #<procedure 7f9d240db740 ?> ?)
In ice-9/eval.scm:
    619:8 10 (_ #(#(#<directory (guile-user) 7f9d23d00f00>)))
In ice-9/command-line.scm:
   185:18  9 (_ #<input: string 7f9d23cfaa10>)
In unknown file:
           8 (eval (use-modules (json)) #<directory (guile-user) 7f9?>)
In ice-9/eval.scm:
   721:20  7 (primitive-eval (use-modules (json)))
In ice-9/psyntax.scm:
  1241:36  6 (expand-top-sequence ((use-modules (json))) _ _ #f _ _ _)
  1233:19  5 (parse _ (("placeholder" placeholder)) ((top) #(# # ?)) ?)
   285:10  4 (parse _ (("placeholder" placeholder)) (()) _ c&e (eval) ?)
In ice-9/boot-9.scm:
  3898:20  3 (process-use-modules _)
   222:17  2 (map1 (((json))))
  3899:31  1 (_ ((json)))
   3300:6  0 (resolve-interface (json) #:select _ #:hide _ #:prefix _ ?)

ice-9/boot-9.scm:3300:6: In procedure resolve-interface:
no code for module (json)
$ bin/guile -c '(use-modules (gnutls))'
guile: warning: failed to install locale
Backtrace:
In ice-9/boot-9.scm:
  1736:10 13 (with-exception-handler _ _ #:unwind? _ # _)
In unknown file:
          12 (apply-smob/0 #<thunk 7f7fe607a7c0>)
In ice-9/boot-9.scm:
    718:2 11 (call-with-prompt ("prompt") #<procedure 7f7fe6085940 ?> ?)
In ice-9/eval.scm:
    619:8 10 (_ #(#(#<directory (guile-user) 7f7fe5ca8f00>)))
In ice-9/command-line.scm:
   185:18  9 (_ #<input: string 7f7fe5ca2a10>)
In unknown file:
           8 (eval (use-modules (gnutls)) #<directory (guile-user) 7?>)
In ice-9/eval.scm:
   721:20  7 (primitive-eval (use-modules (gnutls)))
In ice-9/psyntax.scm:
  1241:36  6 (expand-top-sequence ((use-modules (gnutls))) _ _ #f _ _ ?)
  1233:19  5 (parse _ (("placeholder" placeholder)) ((top) #(# # ?)) ?)
   285:10  4 (parse _ (("placeholder" placeholder)) (()) _ c&e (eval) ?)
In ice-9/boot-9.scm:
  3898:20  3 (process-use-modules _)
   222:17  2 (map1 (((gnutls))))
  3899:31  1 (_ ((gnutls)))
   3300:6  0 (resolve-interface (gnutls) #:select _ #:hide _ #:prefix ?)

ice-9/boot-9.scm:3300:6: In procedure resolve-interface:
no code for module (gnutls)
----

My Guix version if fairly recent:

[source,shell]
----
$ guix describe
Génération 83   14 déc. 2020 00:28:16   (actuelle)
  guix 41807eb
    URL du dépôt : https://git.savannah.gnu.org/git/guix.git
    branche: master
    commit : 41807eb5329299b8c45cd49356a4ead01ce0d469
----
