summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorJonathan Marler <johnnymarler@gmail.com>2022-03-07 21:12:55 -0700
committerLinus Groh <mail@linusgroh.de>2022-03-08 23:31:45 +0100
commit97c0a8c063ca61061d5947785ad45344a171c0ea (patch)
treef0173e1139ff0fb4f1f73a47a1ab157ee140e744 /Documentation
parent70ccdb300bdfb20d465f7e1933f719b707e0f924 (diff)
downloadserenity-97c0a8c063ca61061d5947785ad45344a171c0ea.zip
Toolchain: Move nix script from Documentation into Toolchain
Moves the nix script to setup the build environment from Documentation into the Toolchain as a callable script. I also modified the script to accept a "pkgs" argument to make it easy to override the nixpkgs version from the command-line when calling the script.
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/BuildInstructionsOther.md41
1 files changed, 3 insertions, 38 deletions
diff --git a/Documentation/BuildInstructionsOther.md b/Documentation/BuildInstructionsOther.md
index 357cf351d0..8cb9ad558a 100644
--- a/Documentation/BuildInstructionsOther.md
+++ b/Documentation/BuildInstructionsOther.md
@@ -26,47 +26,12 @@ apt-get install curl cmake libmpc-devel gmp-devel e2fsprogs libmpfr-devel ninja-
## NixOS
-You can use a `nix-shell` script like the following to set up the correct environment:
+You can use the `nix-shell` script [`Toolchain/serenity.nix`](../Toolchain/serenity.nix) to set up the environment:
-myshell.nix:
-
-```
-with import <nixpkgs> {};
-
-stdenv.mkDerivation {
- name = "cpp-env";
- nativeBuildInputs = [
- gcc11
- curl
- cmake
- mpfr
- ninja
- gmp
- libmpc
- e2fsprogs
- patch
- ccache
- rsync
- unzip
-
- # Example Build-time Additional Dependencies
- pkgconfig
- ];
- buildInputs = [
- # Example Run-time Additional Dependencies
- openssl
- x11
- qemu
- # glibc
- ];
- hardeningDisable = [ "format" "fortify" ];
-}
+```console
+nix-shell Toolchain/serenity.nix
```
-Then use this script: `nix-shell myshell.nix`.
-
-Once you're in nix-shell, you should be able to follow the build directions.
-
## Alpine Linux
First, make sure you have enabled the `community` repository in `/etc/apk/repositories` and run `apk update`. It has been tested on `edge`, YMMV on `stable`.