I enjoyed reading this. As a happy guix user, I often struggle to explain why I like certain features to friends and colleagues. This blog post does a great job!
And in one step, you will end up with a working bin/osh -c 'echo hi' after installing a bunch of Ubuntu packages and so forth. Gitpod is an online dev environment in the browser. I think it just runs VSCode in the browser, backed by an Ubuntu VM. (I don’t use it myself, but this is a good comparison point.)
This is the tiny shell function it runs:
gitpod-minimal() {
ubuntu-deps # REPLACE WITH GUIX ?
# NOW THE REST SHOULD WORK
minimal
test/spec.sh smoke
set -x
bin/osh -c 'echo hi'
}
Feel free to ping me here or on https://oilshell.zulipchat.com/ if you want to try this out … for either Nix or Guix. I would like to make it easy for people to contribute, and maybe use it myself :-) Although the rest of the build is pretty big.
Nix can also provide a shell with all the build dependencies of a package with nix develop. If you just need a temporary shell with a particular package available, nix shell package1 package2 .... I think this is a recent development - it’s still marked experimental. But I used to use nix-shell -p package1 package2 ... at least for the latter. Not sure about the equivalent of nix develop.
Nix is getting a bit more easy to use as time passes. The new flakes system is also pretty cool - though I still find it a bit intimidating and haven’t fully grokked it yet.
I enjoyed reading this. As a happy guix user, I often struggle to explain why I like certain features to friends and colleagues. This blog post does a great job!
I wonder if someone can contribute this for people to hack on Oil – i.e. to run a minimal dev build that Gitpod already runs?
e.g. click on “Contribute with Gitpod” here:
https://github.com/oilshell/oil/blob/master/README.md
And in one step, you will end up with a working
bin/osh -c 'echo hi'
after installing a bunch of Ubuntu packages and so forth. Gitpod is an online dev environment in the browser. I think it just runs VSCode in the browser, backed by an Ubuntu VM. (I don’t use it myself, but this is a good comparison point.)This is the tiny shell function it runs:
https://github.com/oilshell/oil/blob/master/build/py.sh#L467
Feel free to ping me here or on https://oilshell.zulipchat.com/ if you want to try this out … for either Nix or Guix. I would like to make it easy for people to contribute, and maybe use it myself :-) Although the rest of the build is pretty big.
Longer comment: https://news.ycombinator.com/item?id=32927682
i have only ever used nix, and maybe read a couple of guix articles, but i envy the clarity of the guix interface.
Nix can also provide a shell with all the build dependencies of a package with
nix develop
. If you just need a temporary shell with a particular package available,nix shell package1 package2 ...
. I think this is a recent development - it’s still marked experimental. But I used to usenix-shell -p package1 package2 ...
at least for the latter. Not sure about the equivalent ofnix develop
.Nix is getting a bit more easy to use as time passes. The new flakes system is also pretty cool - though I still find it a bit intimidating and haven’t fully grokked it yet.