Nix-shell shebang: Difference between revisions

N0099 (talk | contribs)
Roberth (talk | contribs)
add lua from https://github.com/NixOS/nix/issues/604#issuecomment-2692657032
 
(2 intermediate revisions by 2 users not shown)
Line 53: Line 53:


Console.WriteLine($"It has been {since.Humanize()} since .NET 9 was released.");
Console.WriteLine($"It has been {since.Humanize()} since .NET 9 was released.");
</syntaxHighlight>
=== Haskell ===
<syntaxHighlight lang="haskell">
#! /usr/bin/env nix-shell
#! nix-shell -p "haskellPackages.ghcWithPackages (p: with p; [turtle])" -i runghc
{-# LANGUAGE OverloadedStrings #-}
import Turtle
main = echo "Hello world!"
</syntaxHighlight>
=== Lua ===
Stable CLI <!-- credit fabian-thomas https://github.com/NixOS/nix/issues/604#issuecomment-2692657032 -->
<syntaxHighlight lang="lua">
#!/usr/bin/env nix-shell
--[[
#!nix-shell -i lua -p lua5_3
--]]
print("Hello, world!")
</syntaxHighlight>
Pinned and eval-cached
<syntaxHighlight lang="lua">
#!/usr/bin/env nix
--[[
#!nix shell github:NixOS/nixpkgs?ref=88a6078fc5d104f480d1b4a0b58ffec5de965b1b#lua5_3 -c lua
--]]
print("Hello, world!")
</syntaxHighlight>
</syntaxHighlight>


Line 121: Line 153:
</syntaxHighlight>
</syntaxHighlight>


=== Haskell ===
=== Wolfram Language ===
<syntaxHighlight lang="haskell">
#! /usr/bin/env nix-shell
#! nix-shell -p "haskellPackages.ghcWithPackages (p: with p; [turtle])" -i runghc


{-# LANGUAGE OverloadedStrings #-}
Using [https://woxi.ad-si.com/ Woxi], the Rust reimplementation.


import Turtle
<syntaxhighlight lang="mathematica">
#!/usr/bin/env nix-shell
(*
#! nix-shell -p woxi -i woxi
*)


main = echo "Hello world!"
RandomInteger[{1, 9}, 5] // Map[#^2&] // Map[Print]
</syntaxHighlight>
</syntaxhighlight>


== Pinning nixpkgs ==
== Pinning nixpkgs ==