aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/src/quick-start.md
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2020-07-22 20:27:23 +0200
committerEelco Dolstra <edolstra@gmail.com>2020-07-23 18:26:48 +0200
commite0ea3c82ca9e46359c55c9f716fec016f8d483ea (patch)
tree5c538cd5c0ad0912268039079540019b0bc113a3 /doc/manual/src/quick-start.md
parent650ae14ceda72dcb294bde4d08988a7ed26ab0ff (diff)
Use mdbook
Diffstat (limited to 'doc/manual/src/quick-start.md')
-rw-r--r--doc/manual/src/quick-start.md79
1 files changed, 79 insertions, 0 deletions
diff --git a/doc/manual/src/quick-start.md b/doc/manual/src/quick-start.md
new file mode 100644
index 000000000..21c03e3cf
--- /dev/null
+++ b/doc/manual/src/quick-start.md
@@ -0,0 +1,79 @@
+# Quick Start
+
+This chapter is for impatient people who don't like reading
+documentation. For more in-depth information you are kindly referred
+to subsequent chapters.
+
+1. Install single-user Nix by running the following:
+
+ $ bash <(curl -L https://nixos.org/nix/install)
+
+ This will install Nix in `/nix`. The install script will create
+ `/nix` using `sudo`, so make sure you have sufficient rights. (For
+ other installation methods, see
+ [here](../installation/installation.md).)
+
+1. See what installable packages are currently available in the
+ channel:
+
+ $ nix-env -qa
+ docbook-xml-4.3
+ docbook-xml-4.5
+ firefox-33.0.2
+ hello-2.9
+ libxslt-1.1.28
+ …
+
+1. Install some packages from the channel:
+
+ $ nix-env -i hello
+
+ This should download pre-built packages; it should not build them
+ locally (if it does, something went wrong).
+
+1. Test that they work:
+
+ $ which hello
+ /home/eelco/.nix-profile/bin/hello
+ $ hello
+ Hello, world!
+
+1. Uninstall a package:
+
+ $ nix-env -e hello
+
+1. You can also test a package without installing it:
+
+ $ nix-shell -p hello
+
+ This builds or downloads GNU Hello and its dependencies, then drops
+ you into a Bash shell where the `hello` command is present, all
+ without affecting your normal environment:
+
+ [nix-shell:~]$ hello
+ Hello, world!
+
+ [nix-shell:~]$ exit
+
+ $ hello
+ hello: command not found
+
+1. To keep up-to-date with the channel, do:
+
+ $ nix-channel --update nixpkgs
+ $ nix-env -u '*'
+
+ The latter command will upgrade each installed package for which
+ there is a “newer” version (as determined by comparing the version
+ numbers).
+
+1. If you're unhappy with the result of a `nix-env` action (e.g., an
+ upgraded package turned out not to work properly), you can go back:
+
+ $ nix-env --rollback
+
+1. You should periodically run the Nix garbage collector to get rid of
+ unused packages, since uninstalls or upgrades don't actually delete
+ them:
+
+ $ nix-collect-garbage -d