diff --git a/README.org b/README.org index 1321df2..937ebfb 100644 --- a/README.org +++ b/README.org @@ -62,12 +62,11 @@ The development environment is defined by the following files: - [[./channels.scm][channels.scm]] :: Specifically defines a set of available software, their versions and their build recipe. - [[./guix.scm][guix.scm]] :: Defines the package for this site, ~blog-rekahsoft-ca~. -- [[./manifest.scm][manifest.scm]] :: Defines packages required for development of this site. To start a development environment, run the following: #+begin_src sh - guix time-machine -C channels.scm -- shell -CN -E '^LANG$' -E '^TERM$' -E '^PS1$' -Df guix.scm -m manifest.scm + guix time-machine -C channels.scm -- shell -CN -E '^LANG$' -E '^TERM$' -E '^PS1$' -f guix.scm -Df guix.scm #+end_src This uses the [[info:guix#Invoking guix time-machine][guix time-machine]] feature to ensure the development environment is reproducible @@ -76,10 +75,9 @@ shell]] command is used within the time-machine to start a development environme container (~-C~), which shares the hosts network namespace (~-N~). The environment variable ~LANG~ is passed into the container to ensure locales work as expected; without this, site building will fail! Additionally, the environment variable ~TERM~ is passed into the -container to ensure the development shell behaves correctly. Finally, ~-Df guix.scm~ -indicates that development dependencies of the ~blog-rekahsoft-ca~ package should be included -in the environment and ~-m manifest.scm~ ensures that extra tools for development are -included as well. +container to ensure the development shell behaves correctly. Finally, ~-f guix.scm~ loads the +~blog-rekahsoft-ca~ package, and ~-Df guix.scm~ indicates that development dependencies of +the ~blog-rekahsoft-ca~ package should be included in the environment. *** Deployment Development Environment @@ -105,7 +103,7 @@ To start a deployment development environment, run the following: *** Composing Site Development and Deployment Environments #+begin_src sh - guix time-machine -C channels.scm -- shell -CN -E '^LANG$' -E '^TERM$' -E '^PS1$' -E '^AWS.*$' -Df guix.scm -m manifest.scm -m infra/manifest.scm + guix time-machine -C channels.scm -- shell -CN -E '^LANG$' -E '^TERM$' -E '^PS1$' -E '^AWS.*$' -f guix.scm -Df guix.scm -m infra/manifest.scm #+end_src ** Build Site diff --git a/guix.scm b/guix.scm index b13aeca..8083356 100644 --- a/guix.scm +++ b/guix.scm @@ -27,6 +27,8 @@ (rekahsoft-gnu packages haskell-web) (git)) +(setenv "PS1" "\\W [env]\\$ ") + (define %srcdir (dirname (current-filename))) diff --git a/manifest.scm b/manifest.scm deleted file mode 100644 index f703e40..0000000 --- a/manifest.scm +++ /dev/null @@ -1,39 +0,0 @@ -;; (C) Copyright Collin J. Doering 2021 -;; -;; This program is free software: you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation, either version 3 of the License, or -;; (at your option) any later version. -;; -;; This program is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. -;; -;; You should have received a copy of the GNU General Public License -;; along with this program. If not, see . - -;; File: manifest.scm -;; Author: Collin J. Doering -;; Date: Nov 21, 2021 - -(use-modules - (gnu packages) - (guix packages) - (guix profiles) - (guix transformations)) - -(load "guix.scm") - -(setenv "PS1" "\\W [env]\\$ ") - -(define dev-transform - (options->transformation - `((with-source . ,(string-append "blog-rekahsoft-ca=" (getcwd)))))) - -(concatenate-manifests - (list - (packages->manifest - `(,(dev-transform %blog-rekahsoft-ca))) - (specifications->manifest - `("coreutils"))))