[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Should Guix support writing CLI Common Lisp scripts? (Think Roswell)
From: |
bokr |
Subject: |
Re: Should Guix support writing CLI Common Lisp scripts? (Think Roswell) |
Date: |
Tue, 27 Dec 2022 23:06:31 +0100 |
User-agent: |
Mutt/1.10.1 (2018-07-13) |
Hi Jgart,
On +2022-12-27 19:23:18 +0000, jgart wrote:
> > I'm not sure what you mean if it is something beyond what we can do already
> > with 'guix shell.' Do
> > you mean using a particular hashbang as well?
>
> Yes, that is one feature that I was nodding ambiguously at. Sorry
>
> > guix shell sbcl sbcl-cl-csv unoconv -- sbcl --load myscript.lisp
> > ~/Downloads/*.xlsx
>
> That command is too long. What Roswell does is create binaries and installs
> them in your PATH for your usage like a traditional script that you can call
> without also having to call the interpreter in your terminal invocation.
>
> I want to type just the following and have `myscript` be an executable
> program available in my `guix home` environment:
>
> > myscript ~/Downloads/*.xlsx
If bash is interpreting your script, could you use alias
myscript=YOUR_MAGIC_HERE
to get the concise invocations you want?
(which bash BTW? -- from logind, child of that, or via a guix profile, or
minimal-something ??)
┌──────────────────────────────────────────────────────────────────────────────┐
│ help alias │
├──────────────────────────────────────────────────────────────────────────────┤
│ alias: alias [-p] [name[=value] ... ] │
│ Define or display aliases. │
│ │
│ Without arguments, `alias' prints the list of aliases in the reusable │
│ form `alias NAME=VALUE' on standard output. │
│ │
│ Otherwise, an alias is defined for each NAME whose VALUE is given. │
│ A trailing space in VALUE causes the next word to be checked for │
│ alias substitution when the alias is expanded. │
│ │
│ Options: │
│ -p print all defined aliases in a reusable format │
│ │
│ Exit Status: │
│ alias returns true unless a NAME is supplied for which no alias has been │
│ defined. │
└──────────────────────────────────────────────────────────────────────────────┘
>
> I want an automated way to prepare the script for that command line user
> experience. That is the convenience that roswell provides. I agree that is is
> sweet sugar but I'm lazy and don't want to type long CLI invocations.
>
I think it's possible, the question for me is what language
do you want to code your automation in :)
> Thanks for sharing the above though.
>
> It's great to see how people are using `guix shell`.
>
> Given what I said, I might just do what you're suggesting John, because I'm
> not sure when I'll be able to implement a solution like the roswell one in
> Guix.
>
> Thanks for your thoughts on the topic. They are appreciated.
>
> all best,
>
> jgart
>
--
Regards,
Bengt Richter