From c0620e4f6e45779cc0cd1ee6b734e4a62419a6ec Mon Sep 17 00:00:00 2001 From: Noah Metz Date: Sat, 2 Dec 2023 17:19:54 -0700 Subject: [PATCH] Moved machines/system under metznet, and removed nonguix dependency --- .guix-channel | 6 +- machines/dh2048.pem | 1 - metznet.scm | 201 -------------------- {machines => metznet/machines}/kerberos.scm | 4 +- {machines => metznet/machines}/ldap.scm | 4 +- {machines => metznet/machines}/vpn.scm | 4 +- {system => metznet/system}/base-system.scm | 11 +- 7 files changed, 11 insertions(+), 220 deletions(-) delete mode 120000 machines/dh2048.pem delete mode 100644 metznet.scm rename {machines => metznet/machines}/kerberos.scm (99%) rename {machines => metznet/machines}/ldap.scm (95%) rename {machines => metznet/machines}/vpn.scm (95%) rename {system => metznet/system}/base-system.scm (98%) diff --git a/.guix-channel b/.guix-channel index 0317c22..a86f394 100644 --- a/.guix-channel +++ b/.guix-channel @@ -1,6 +1,2 @@ (channel - (version 0) - (dependencies - (channel - (name nonguix) - (url "https://gitlab.com/nonguix/nonguix")))) + (version 0)) diff --git a/machines/dh2048.pem b/machines/dh2048.pem deleted file mode 120000 index bd7d333..0000000 --- a/machines/dh2048.pem +++ /dev/null @@ -1 +0,0 @@ -/home/nmetz/Code/metznet-channel/pki/dh.pem \ No newline at end of file diff --git a/metznet.scm b/metznet.scm deleted file mode 100644 index 9bb1df0..0000000 --- a/metznet.scm +++ /dev/null @@ -1,201 +0,0 @@ -(define-module (metznet) - #:use-module ((guix licenses) - #:prefix 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) - #:use-module (gnu packages gl) - #:use-module (gnu packages audio) - #: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 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 (ice-9 ftw) - #:use-module (ice-9 match)) - -(define-public metznet-system - (package - (name "metznet-system") - (version "0.3") - (source (git-checkout (url "git://git.metznet.ca/system.git") - (commit (string-append "v" version)))) - (build-system copy-build-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)) - (if (directory-exists? #$directory) - (rmdir #$directory)) - (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 vim-guile - (package - (name "vim-guile") - (version "1.0") - (source (git-checkout (url "https://gitlab.com/HiPhish/guile.vim.git") - (commit "f76959a9dbdc69cde018901de82ac5a3d443843c"))) - (build-system copy-build-system) - (arguments - '(#:install-plan '(("autoload" "share/vim/vimfiles/") - ("ftdetect" "share/vim/vimfiles/") - ("syntax" "share/vim/vimfiles/") - ("test" "share/vim/vimfiles/")))) - (synopsis - "Syntax highlighting and file type detect of GNU Guile code in Vim") - (description - "Provides syntax highlighting and file type detection for GNU Guile files with the .scm extension.") - (home-page "https://gitlab.com/HiPhish/guile.vim") - (license licenses:gpl3+))) - -(define-public vimwiki - (package - (name "vimwiki") - (version "2.5") - (source (git-checkout (url "https://github.com/vimwiki/vimwiki") - (commit (string-append "v" version)))) - (build-system copy-build-system) - (arguments - '(#:install-plan '(("autoload" "share/vim/vimfiles/") - ("doc" "share/vim/vimfiles/") - ("ftplugin" "share/vim/vimfiles/") - ("plugin" "share/vim/vimfiles/") - ("syntax" "share/vim/vimfiles/") - ("test" "share/vim/vimfiles/")))) - (synopsis "A personal wiki plugin for vim") - (license licenses:gpl3+) - (home-page "https://github.com/vimwiki/vimwiki") - (description - "VimWiki is a personal wiki for Vim -- a number of linked text files that have their own syntax highlighting. With VimWiki, you can: - - Organize notes and ideas - - Manage to-do lists - - Write documentation - - Maintain a diary - - Export everything to HTML"))) - -(define-public starsector - (package - (name "starsector") - (version "0.95.1a-RC6") - (source (origin - (method url-fetch) - (uri (string-append - "https://s3.amazonaws.com/fractalsoftworks/starsector/starsector_linux-" - version ".zip")) - (sha256 - (base32 - "14zxzs7xfrrq3apiyslk2cy29yp6qirikwbzanmka74a37aqpa1x")))) - (native-inputs (list unzip)) - (inputs (list openjdk17 - libxcursor - libxrandr - libxxf86vm - mesa - openal)) - (propagated-inputs (list xrandr)) - (build-system copy-build-system) - (arguments - '(#:install-plan '(("." "share/starsector")))) - (synopsis "A space game.") - (description "A very good space game. You will spend hours playing.") - (home-page "https://fractalsoftworks.com") - (license licenses:gpl3+))) - -(define-public libutp - (package - (name "libutp") - (version "2") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/bittorrent/libutp") - (commit "2b364cbb0650bdab64a5de2abb4518f9f228ec44"))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0yaiqksimnhwh14kmsq4kcyq6662b4ask36ni6p5n14dbyq1h2s6")))) - (build-system gnu-build-system) - (arguments - `(#:phases (modify-phases %standard-phases - (delete 'configure) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((lib (string-append (assoc-ref outputs "out") - "/lib")) - (include (string-append (assoc-ref outputs "out") - "/include"))) - (install-file "libutp.so" lib) - (install-file "utp.h" include) - (install-file "utp_types.h" include) #t)))) - #:make-flags '("libutp.so") - #:tests? #f)) - (home-page "https://github.com/bittorrent/libutp") - (synopsis - "Shared library for libutp implementation of the LEDBAT protocol") - (description - "uTP is a TCP-like implementation of LEDBAT documented as a BitTorrent -extension in BEP-29. uTP provides reliable, ordered delivery while -maintaining minimum extra delay. It is implemented on top of UDP to be -cross-platform and functional today. As a result, uTP is the primary -transport for uTorrent peer-to-peer connections. - -uTP is written in C++, but the external interface is strictly C (ANSI C89).") - (license licenses:expat))) diff --git a/machines/kerberos.scm b/metznet/machines/kerberos.scm similarity index 99% rename from machines/kerberos.scm rename to metznet/machines/kerberos.scm index 91336f7..17ef491 100644 --- a/machines/kerberos.scm +++ b/metznet/machines/kerberos.scm @@ -1,4 +1,4 @@ -(define-module (machines kerberos) +(define-module (metznet machines kerberos) #:use-module (srfi srfi-26) #:use-module (srfi srfi-9) #:use-module (srfi srfi-1) @@ -10,7 +10,7 @@ #:use-module (guix build-system gnu) #:use-module ((guix licenses) #:prefix license:) - #:use-module (system base-system) + #:use-module (metznet system base-system) #:use-module (gnu system shadow) #:use-module (gnu packages) #:use-module (gnu packages kerberos) diff --git a/machines/ldap.scm b/metznet/machines/ldap.scm similarity index 95% rename from machines/ldap.scm rename to metznet/machines/ldap.scm index c97fb33..3e9dc9e 100644 --- a/machines/ldap.scm +++ b/metznet/machines/ldap.scm @@ -1,7 +1,7 @@ -(define-module (machines ldap) +(define-module (metznet machines ldap) #:use-module (gnu system) #:use-module (guix gexp) - #:use-module (system base-system) + #:use-module (metznet system base-system) #:use-module (gnu packages slapd) #:use-module (gnu services) #:use-module (gnu services certbot) diff --git a/machines/vpn.scm b/metznet/machines/vpn.scm similarity index 95% rename from machines/vpn.scm rename to metznet/machines/vpn.scm index e490d9c..fd0dfc9 100644 --- a/machines/vpn.scm +++ b/metznet/machines/vpn.scm @@ -1,4 +1,4 @@ -(define-module (machines vpn) +(define-module (metznet machines vpn) #:use-module (guix gexp) #:use-module (guix modules) #:use-module (gnu packages tls) @@ -6,7 +6,7 @@ #:use-module (gnu services) #:use-module (gnu services certbot) #:use-module (gnu services vpn) - #:use-module (system base-system) + #:use-module (metznet system base-system) #:export (vpn.metznet.ca vpn-services)) diff --git a/system/base-system.scm b/metznet/system/base-system.scm similarity index 98% rename from system/base-system.scm rename to metznet/system/base-system.scm index 1111dda..93ecc3d 100644 --- a/system/base-system.scm +++ b/metznet/system/base-system.scm @@ -1,4 +1,4 @@ -(define-module (system base-system) +(define-module (metznet system base-system) #:use-module (guix gexp) #:use-module (gnu bootloader) @@ -249,15 +249,12 @@ (list #$@(shell-packages configuration)))) (define (metznet-etc-service configuration) - `(,@(if (maybe-value-set? (metznet-system-configuration-channels-file configuration)) - `("guix/channels.scm" ,(metznet-system-configuration-channels-file - configuration)) - '()) - ("openvpn/ta.key" ,(metznet-system-configuration-vpn-ta-key configuration)) + `(("openvpn/ta.key" ,(metznet-system-configuration-vpn-ta-key configuration)) ("openvpn/ca.crt" ,(metznet-system-configuration-vpn-ca configuration)) ("openvpn/client.key" ,(metznet-system-configuration-vpn-cert configuration)) - ("openvpn/client.crt" ,(metznet-system-configuration-vpn-key configuration)))) + ("openvpn/client.crt" ,(metznet-system-configuration-vpn-key configuration)) + ,@(if (maybe-value-set? (metznet-system-configuration-channels-file configuration)) (list `("guix/chanels.scm" ,(metznet-system-configuration-channels-file configuration))) '()))) (define-public metznet-service-type (service-type (name 'metznet-service)