aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArun Isaac2021-06-12 16:09:36 +0530
committerArun Isaac2021-06-13 21:02:09 +0530
commit670310cb24b15319ec9d84cc88a6ca4fc0bd51e5 (patch)
tree5a0b172445daabbcb546233487a6d6542086cffc
parent6c34f3b9cdab5902a7a68130f3e533a767275e19 (diff)
downloadguile-email-670310cb24b15319ec9d84cc88a6ca4fc0bd51e5.tar.gz
guile-email-670310cb24b15319ec9d84cc88a6ca4fc0bd51e5.tar.lz
guile-email-670310cb24b15319ec9d84cc88a6ca4fc0bd51e5.zip
pre-inst-env: Rewrite pre-inst-env in scheme.
Scheme code is more readable than arcane bash. * pre-inst-env.in: Rewrite in scheme.
-rw-r--r--pre-inst-env.in61
1 files changed, 33 insertions, 28 deletions
diff --git a/pre-inst-env.in b/pre-inst-env.in
index 9e49f05..e6b281f 100644
--- a/pre-inst-env.in
+++ b/pre-inst-env.in
@@ -1,32 +1,37 @@
-#! /bin/sh
+#! @GUILE@ --no-auto-compile
+-*- scheme -*-
+!#
+;;; guile-email --- Guile email parser
+;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
+;;;
+;;; This file is part of guile-email.
+;;;
+;;; guile-email is free software; you can redistribute it and/or modify
+;;; it under the terms of the GNU Affero General Public License as
+;;; published by the Free Software Foundation; either version 3 of the
+;;; License, or (at your option) any later version.
+;;;
+;;; guile-email 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
+;;; Affero General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU Affero General Public
+;;; License along with guile-email. If not, see
+;;; <http://www.gnu.org/licenses/>.
-# guile-email --- Guile email parser
-# Copyright © 2012, 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
-# Copyright © 2017 Eric Bavier <bavier@cray.com>
-# Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
-# Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
-#
-# This file was adapted from mumi and is part of guile-email.
-#
-# guile-email is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation; either version 3 of the
-# License, or (at your option) any later version.
-#
-# guile-email 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
-# Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public
-# License along with guile-email. If not, see
-# <http://www.gnu.org/licenses/>.
+(import (ice-9 match))
-abs_top_srcdir="`cd "@abs_top_srcdir@" > /dev/null; pwd -P`"
-abs_top_builddir="`cd "@abs_top_builddir@" > /dev/null; pwd -P`"
+(define (prepend-path-environment-variable name . values)
+ (setenv name (string-join (append values
+ (if (getenv name)
+ (string-split (getenv name) #\:)
+ '()))
+ ":")))
-GUILE_LOAD_COMPILED_PATH="$abs_top_builddir${GUILE_LOAD_COMPILED_PATH:+:}$GUILE_LOAD_COMPILED_PATH"
-GUILE_LOAD_PATH="$abs_top_builddir:$abs_top_srcdir${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH"
-export GUILE_LOAD_COMPILED_PATH GUILE_LOAD_PATH
+(prepend-path-environment-variable "GUILE_LOAD_PATH" "@abs_top_builddir@" "@abs_top_srcdir@")
+(prepend-path-environment-variable "GUILE_LOAD_COMPILED_PATH" "@abs_top_builddir@")
-exec "$@"
+(match (command-line)
+ ((_ command args ...)
+ (apply execlp command command args)))