diff --git a/homelab.scm b/homelab.scm index cbe6336..c74c013 100644 --- a/homelab.scm +++ b/homelab.scm @@ -2,6 +2,7 @@ #:use-module ((guix licenses) #:prefix licenses:) #:use-module (nonguix licenses) #:use-module (gnu packages) + #:use-module (gnu packages base) #:use-module (gnu packages autotools) #:use-module (gnu packages java) #:use-module (gnu packages xorg) @@ -10,31 +11,82 @@ #:use-module (gnu packages kerberos) #:use-module (gnu packages tls) #:use-module (gnu packages crypto) + #:use-module (gnu services) #:use-module (guix utils) #:use-module (guix git-download) #:use-module (guix git) #:use-module (guix gexp) #:use-module (guix build-system cmake) #:use-module (guix download) - #:use-module (guix extracting-download) + #:use-module (guix records) + #:use-module (gnu packages vim) #:use-module (guix build-system gnu) #:use-module (guix build-system copy) #:use-module (gnu packages compression) - #:use-module (guix packages)) + #:use-module (guix packages) + #:use-module (ice-9 ftw) + #:use-module (ice-9 match)) -(define-public test +(define-public metznet-system (package - (name "test") - (version "1.2") + (name "metznet-system") + (version "0.2") (source (git-checkout - (url "git://home.noahmetz.xyz/nmetz/test.git") + (url "git://git.metznet.ca/system.git") (commit (string-append "v" version)))) - (build-system gnu-build-system) - (native-inputs (list autoconf automake)) - (synopsis "Hello world program") - (description "Prints hello world") - (home-page "http://home.noahmetz.xyz") + (build-system copy-build-system) + (arguments + '(#:install-plan + '(("." "etc/system")))) + (synopsis "metznet GUIX system definitions") + (description "metznet GUIX system definitions") + (home-page "http://home.metznet.ca") + (license licenses:gpl3+))) + +(define-record-type* + metznet-system-configuration make-metznet-system-configuration + metznet-system-configuration? + (repo metznet-system-configuration-repo + (default metznet-system)) + (directory metznet-system-configuration-directory + (default "/etc/system"))) + +(define-public metznet-system-activation + (match-lambda + (($ repo directory) + #~(begin + (use-modules (guix build utils)) + (symlink #$repo #$directory))))) + +(define-public metznet-system-service-type + (service-type + (name 'metznet-system) + (description "GUIX System service using metznet files") + (extensions (list + (service-extension activation-service-type metznet-system-activation))) + (default-value (metznet-system-configuration)))) + +(define-public nvim-vimtex + (package + (name "nvim-vimtex") + (version "2.10") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/lervag/vimtex") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1d16rlnp3rszx451nqrax15z46swa7cg4krbn840dcsspigx3ybl")))) + (build-system copy-build-system) + (arguments + '(#:install-plan + '(("." "share/nvim/site/pack/lervag/start/vimtex")))) + (home-page "") + (synopsis "LaTeX plugin for neovim") + (description "Neovim plugin which provides highlighting for latex, along with bindings for auto-compilation") (license licenses:gpl3+))) (define-public lib-ledger-core