Configure repo as channel, because hell yeah

This commit is contained in:
TakeV 2023-07-07 15:37:54 -07:00
parent 7641082c4f
commit f63116baad
Signed by: TakeV
GPG Key ID: A64F41345C7400AF
6 changed files with 121 additions and 86 deletions

8
.guix-authorizations Normal file
View File

@ -0,0 +1,8 @@
(authorizations
(version 0)
(("1086 326D E207 068C 1C02 5129 A64F 4134 5C74 00AF"
(name "takev"))))
;;; Local Variables:
;;; mode: scheme
;;; End:

8
.guix-channel Normal file
View File

@ -0,0 +1,8 @@
(channel
(version 0)
(directory ".guix/modules"))
;;; Local Variables:
;;; mode: scheme
;;; End:

View File

@ -0,0 +1,83 @@
(define-module (guix-cantrips-package)
#:use-module (guix)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages guile)
#:use-module (gnu packages guile-xyz)
#:use-module (gnu packages package-management)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages texinfo))
(define vcs-file?
(or (git-predicate (current-source-directory))
(const #t)))
(define-public guix-cantrips
(package
(name "guix-cantrips")
(version "0.1-src")
(source (local-file "../.." "guix-cantrips" #:recursive? #t))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~(list "GUILE_AUTO_COMPILE=0")
#:phases
#~(modify-phases %standard-phases
(delete 'strip)
(add-before 'configure 'hall-build
(lambda _
(system* "hall" "build" "-x")))
(add-after 'hall-build 'autoreconf
(lambda _
(system* "autoreconf" "-vif")))
(add-after 'install 'hall-wrap-binaries
(lambda _
(use-modules (ice-9 ftw))
(define (compiled-dir out version)
(string-append out "/lib/guile/"
version
"/site-ccache"))
(define (uncompiled-dir out version)
(string-append out
"/share/guile/site"
(if (string-null? version) ""
"/")
version))
(define (dep-path env modules path)
(list env ":"
'prefix
(cons modules
(map (lambda (input)
(string-append input path))
(list #$guile-config
#$guile-lib
#$guile-simple-iterators)))))
(define bin (string-append #$output "/bin/"))
(define site (uncompiled-dir #$output ""))
(define version (caddr (scandir site)))
(wrap-program (string-append bin "guix-cantrips")
(dep-path
"GUILE_LOAD_PATH"
(uncompiled-dir #$output version)
(uncompiled-dir "" version))
(dep-path
"GUILE_LOAD_COMPILED_PATH"
(compiled-dir #$output version)
(compiled-dir "" version))))))))
(native-inputs (list autoconf automake pkg-config texinfo guile-hall))
(inputs (list guile-3.0))
(propagated-inputs (list guix
guile-config))
(synopsis "")
(description "")
(home-page "")
(license license:gpl3+)))
guix-cantrips

View File

@ -1,80 +0,0 @@
(use-modules
(guix)
(guix git-download)
(guix packages)
((guix licenses) #:prefix license:)
(guix download)
(guix build-system gnu)
(gnu packages)
(gnu packages autotools)
(gnu packages guile)
(gnu packages guile-xyz)
(gnu packages package-management)
(gnu packages pkg-config)
(gnu packages texinfo))
(define vcs-file?
(or (git-predicate (current-source-directory))
(const #t)))
(package
(name "guix-cantrips")
(version "0.1-src")
(source (local-file (dirname (current-filename)) #:recursive? #t
#:select? vcs-file?))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~(list "GUILE_AUTO_COMPILE=0")
#:phases
#~(modify-phases %standard-phases
(delete 'strip)
(add-before 'configure 'hall-build
(lambda _
(system* "hall" "build" "-x")))
(add-after 'hall-build 'autoreconf
(lambda _
(system* "autoreconf" "-vif")))
(add-after 'install 'hall-wrap-binaries
(lambda _
(use-modules (ice-9 ftw))
(define (compiled-dir out version)
(string-append out "/lib/guile/"
version
"/site-ccache"))
(define (uncompiled-dir out version)
(string-append out
"/share/guile/site"
(if (string-null? version) ""
"/")
version))
(define (dep-path env modules path)
(list env ":"
'prefix
(cons modules
(map (lambda (input)
(string-append input path))
(list #$guile-config
#$guile-lib
#$guile-simple-iterators)))))
(define bin (string-append #$output "/bin/"))
(define site (uncompiled-dir #$output ""))
(define version (caddr (scandir site)))
(wrap-program (string-append bin "guix-cantrips")
(dep-path
"GUILE_LOAD_PATH"
(uncompiled-dir #$output version)
(uncompiled-dir "" version))
(dep-path
"GUILE_LOAD_COMPILED_PATH"
(compiled-dir #$output version)
(compiled-dir "" version))))))))
(native-inputs (list autoconf automake pkg-config texinfo guile-hall))
(inputs (list guile-3.0))
(propagated-inputs (list guix))
(synopsis "")
(description "")
(home-page "")
(license license:gpl3+))

1
guix.scm Symbolic link
View File

@ -0,0 +1 @@
.guix/modules/guix-cantrips-package.scm

View File

@ -5,12 +5,12 @@
(author "TakeV")
(copyright (2023))
(synopsis "")
(description "Utilities to make programming with guix feel like magic.")
(description
"Utilities to make programming with guix feel like magic.")
(home-page "")
(license gpl3+)
(dependencies
`(("guix" ,guix)
("guile-git" ,guile-git)
`(("guile-git" ,guile-git)
("guile-config" ,guile-config)))
(skip ())
(files (libraries
@ -27,7 +27,17 @@
(symlink "README" "README.org")
(org-file "README")))
(infrastructure
((scheme-file "hall")
((text-file ".guix-authorizations")
(text-file ".guix-channel")
(symlink
"guix.scm"
".guix/modules/guix-cantrips-package.scm")
(directory "scripts" ((in-file "guix-cantrips")))
(directory
".guix"
((directory
"modules"
((scheme-file "guix-cantrips-package")))))
(scheme-file "hall")
(text-file ".gitignore")
(scheme-file "guix")
(directory "scripts" ((in-file "guix-cantrips")))))))
(scheme-file "guix")))))

View File

@ -1,4 +1,9 @@
#!@GUILE@ \
--no-auto-compile -e main -s
!#
;; bin/guix-cantrips --- guix-cantrips cli -*- coding: utf-8 -*-
(use-modules (config)
(config api)
(config licenses)