You've already forked tribes-plugin-aether
forked from tribes/tribes-plugin-template
1cbcb5ea55
Rename the repo Guix development manifest to manifest.scm and update the wrapper and direnv integration.
78 lines
2.3 KiB
Scheme
78 lines
2.3 KiB
Scheme
;; Guix development manifest for the Aether plugin.
|
|
;;
|
|
;; Usage:
|
|
;; ./guix/guix-dev
|
|
;;
|
|
;; This intentionally keeps the repo-specific development package list here,
|
|
;; similar to devenv.nix. Shared custom packages such as node-24, prek, and
|
|
;; prettier come from the pinned guix-tribes channel.
|
|
|
|
(use-modules (gnu packages bash)
|
|
(gnu packages base)
|
|
(gnu packages elixir)
|
|
(gnu packages erlang)
|
|
(gnu packages gnome)
|
|
(gnu packages linux)
|
|
(gnu packages nss)
|
|
(gnu packages package-management)
|
|
(gnu packages version-control)
|
|
(guix build-system trivial)
|
|
(guix gexp)
|
|
((guix licenses) #:prefix license:)
|
|
(guix packages)
|
|
(guix profiles)
|
|
(tribes packages devtools)
|
|
((tribes packages node) #:select (node-24)))
|
|
|
|
(define guix-dev-script
|
|
(local-file "guix/guix-dev" "guix-dev-script"))
|
|
|
|
(define guix-dev-command-package
|
|
(package
|
|
(name "guix-dev-command")
|
|
(version "0.1")
|
|
(source #f)
|
|
(build-system trivial-build-system)
|
|
(arguments
|
|
(list
|
|
#:modules '((guix build utils))
|
|
#:builder
|
|
#~(begin
|
|
(use-modules (guix build utils))
|
|
(let* ((bin (string-append #$output "/bin"))
|
|
(target (string-append bin "/guix-dev")))
|
|
(mkdir-p bin)
|
|
(copy-file #$guix-dev-script target)
|
|
(substitute* target
|
|
(("^#!/usr/bin/env bash")
|
|
(string-append "#!" #$(file-append bash-minimal "/bin/bash"))))
|
|
(chmod target #o555)))))
|
|
(inputs (list bash-minimal))
|
|
(home-page "https://git.teralink.net/tribes/tribes-plugin-aether.git")
|
|
(synopsis "Pinned Guix development shell helper")
|
|
(description
|
|
"guix-dev re-enters this checkout's Guix development shell through its
|
|
repo-local guix/channels.scm time-machine pin and manifest.scm.")
|
|
(license license:asl2.0)))
|
|
|
|
(packages->manifest
|
|
(list bash
|
|
coreutils
|
|
findutils
|
|
grep
|
|
sed
|
|
nss-certs
|
|
git
|
|
guix
|
|
guix-dev-command-package
|
|
pre-commit
|
|
prek
|
|
prettier
|
|
erlang
|
|
elixir
|
|
elixir-hex
|
|
rebar3
|
|
node-24
|
|
libnotify
|
|
inotify-tools))
|