guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

04/06: doc: Document 'shebang' for 'guix shell'.


From: guix-commits
Subject: 04/06: doc: Document 'shebang' for 'guix shell'.
Date: Thu, 16 Mar 2023 07:41:17 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit 5864fc33803762388264e461e002ff09e3b5e4e8
Author: Simon Tournier <zimon.toutoune@gmail.com>
AuthorDate: Fri Jan 27 12:12:37 2023 +0100

    doc: Document 'shebang' for 'guix shell'.
    
    * doc/guix.texi (Invoking guix shell): Add a note mentioning how to use
    'shebang'.
    
    Co-authored-by: Ludovic Courtès <ludo@gnu.org>
---
 doc/guix.texi | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 56a24a1011..aa98d7df4b 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -71,7 +71,7 @@ Copyright @copyright{} 2019 Kyle Andrews@*
 Copyright @copyright{} 2019 Alex Griffin@*
 Copyright @copyright{} 2019, 2020, 2021, 2022 Guillaume Le Vaillant@*
 Copyright @copyright{} 2020 Liliana Marie Prikler@*
-Copyright @copyright{} 2019, 2020, 2021, 2022 Simon Tournier@*
+Copyright @copyright{} 2019, 2020, 2021, 2022, 2023 Simon Tournier@*
 Copyright @copyright{} 2020 Wiktor Żelazny@*
 Copyright @copyright{} 2020 Damien Cassou@*
 Copyright @copyright{} 2020 Jakub Kądziołka@*
@@ -5939,6 +5939,22 @@ building or downloading any missing package, and runs the
 guix shell python python-numpy -- python3
 @end example
 
+@quotation Note
+@cindex shebang, for @command{guix shell}
+@command{guix shell} can be also be used as a script interpreter, also
+known as @dfn{shebang}.  Here is an example self-contained Python script
+making use of this feature:
+
+@example
+#!/usr/bin/env -S guix shell python python-numpy -- python3
+import numpy
+print("This is numpy", numpy.version.version)
+@end example
+
+You may pass any @command{guix shell} option, but there's one caveat:
+the Linux kernel has a limit of 127 bytes on shebang length.
+@end quotation
+
 Development environments can be created as in the example below, which
 spawns an interactive shell containing all the dependencies and
 environment variables needed to work on Inkscape:



reply via email to

[Prev in Thread] Current Thread [Next in Thread]