Skip to content

PantherXOS/panther

Repository files navigation

Guix Channel: PantherX OS Packages

This repository contains package defintions for PantherX OS.

This is a fork of our original package repository guix-pantherx to resolve authentication issues (many of the commits weren't signed) and reduce the size which had blown up to 700+ MB.

Refer to ./DOCS.md for more information on configuration options.

Authentication

(cons* (channel
        (name 'pantherx)
        (url "https://channels.pantherx.org/git/panther.git")
        ;; Enable signature verification:
        (introduction
         (make-channel-introduction
          "54b4056ac571611892c743b65f4c47dc298c49da"
          (openpgp-fingerprint
           "A36A D41E ECC7 A871 1003  5D24 524F EB1A 9D33 C9CB"))))
       %default-channels)

Package for Guix

Tip: GNU Guix respects the GUIX_PACKAGE_PATH environment variable and will prefer packages specified in the directories listed in this variable over those that come with GNU Guix.

$ export GUIX_PACKAGE_PATH=/root/panther
$ guix package -i packagename

Format and lint the file before commit:

guix style --whole-file px/packages/tools.scm

Test changes

./pre-inst-env guix system vm .examples/server-os.scm

Patches

For the time being, all patches must remain in ./ to be found by guix, due to:

;; gnu/packages.scm
(define %patch-path
  ;; Define it after '%package-module-path' so that '%load-path' contains user
  ;; directories, allowing patches in $GUIX_PACKAGE_PATH to be found.
  (make-parameter
   (map (lambda (directory)
          (if (string=? directory %distro-root-directory)
              (string-append directory "/gnu/packages/patches")
              directory))
        %load-path)))

Troubleshooting

When you are upgrading from a old installation, you might face issues where %default-channels points to previous guix and nongnu (nonguix) channels.

Here's what your channels file probably looked like:

(list (channel
        (name 'guix)
        (url "https://channels.pantherx.org/git/pantherx.git")
        (branch "rolling-nonlibre"))
      (channel
        (name 'nongnu)
        (url "https://channels.pantherx.org/git/nongnu.git")
        (branch "rolling"))
      (channel
        (name 'pantherx)
        (url "https://channels.pantherx.org/git/pantherx-extra.git")
        (branch "master")))

This is what you tried:

(cons* (channel
        (name 'pantherx)
        (branch "master")
        (url "https://channels.pantherx.org/git/panther.git")
         (introduction
          (make-channel-introduction
           "54b4056ac571611892c743b65f4c47dc298c49da"
           (openpgp-fingerprint
            "A36A D41E ECC7 A871 1003  5D24 524F EB1A 9D33 C9CB"))))
       %default-channels)

This is a potential issue:

zcat /var/log/guix/drvs/k7/dgx55ivy7bfgm2z2qvk0njnjs2x5dh-nongnu.drv.gz
(repl-version 0 1 1)
(exception unbound-variable (value #f) (value "Unbound variable: ~S") (value (linux-libre-6.3)) (value #f))

This is how you can temporarily overwrite all channels:

(list (channel
       (name 'guix)
       (branch "master")
       (url "https://git.savannah.gnu.org/git/guix.git")
        (introduction
         (make-channel-introduction
          "9edb3f66fd807b096b48283debdcddccfea34bad"
          (openpgp-fingerprint
           "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA"))))
       (channel
        (name 'nonguix)
        (url "https://channels.pantherx.org/git/nonguix.git")
        (introduction
         (make-channel-introduction
          "897c1a470da759236cc11798f4e0a5f7d4d59fbc"
          (openpgp-fingerprint
           "2A39 3FFF 68F4 EF7A 3D29  12AF 6F51 20A0 22FB B2D5"))))
       (channel
        (name 'pantherx)
        (branch "master")
        (url "https://channels.pantherx.org/git/panther.git")
         (introduction
          (make-channel-introduction
           "54b4056ac571611892c743b65f4c47dc298c49da"
           (openpgp-fingerprint
            "A36A D41E ECC7 A871 1003  5D24 524F EB1A 9D33 C9CB")))))

After pull and reconfigure succeeds, you may restore the default.

About

[Mirror] PantherX OS source repository

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published