-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathshell_fhs.nix
More file actions
108 lines (97 loc) · 2.43 KB
/
shell_fhs.nix
File metadata and controls
108 lines (97 loc) · 2.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
{ pkgs ? import <nixpkgs> { }
, android-nixpkgs ? import <android-nixpkgs> { }
, nixpkgs ? import <nixpkgs> { }
}:
with pkgs;
let
android-sdk = android-nixpkgs.sdk.${system} (sdkPkgs: with sdkPkgs; [
build-tools-35-0-0
build-tools-34-0-0
build-tools-30-0-0
cmdline-tools-latest
emulator
platform-tools
platforms-android-35
platforms-android-34
platforms-android-30
]);
# FHS environment for installing official .NET SDK
dotnet-fhs = buildFHSEnv {
name = "dotnet-fhs";
targetPkgs = pkgs: (with pkgs; [
coreutils
util-linux
gawk
gnused
gnugrep
which
git
curl
wget
unzip
procps
icu
zlib
openssl
gcc
gcc-unwrapped
glibc
glibc.dev
stdenv.cc.cc.lib
llvm_18
glibc
skia
libGL
libGLU
xorg.libX11
xorg.libXi
zlib
openssl
xorg.libICE
xorg.libSM
fontconfig
gtk3
tree
android-sdk
gradle
jdk17
aapt
zip
nuget-to-json
nixpkgs-fmt
nil
python3
jetbrains.rider
nodejs
windsurf.fhs
]);
profile = ''
# Environment variables
export ANDROID_HOME=${android-sdk}/share/android-sdk
export ANDROID_SDK_ROOT=${android-sdk}/share/android-sdk
export JAVA_HOME=${jdk17.home}
export DOTNET_ROOT=~/.dotnet
export PATH="$DOTNET_ROOT:$PATH"
# Information on how to install .NET SDK
echo ""
echo "====================================================================="
echo "FHS Environment for .NET SDK Installation"
echo "====================================================================="
echo ""
echo "To install the official .NET SDK, run:"
echo ""
echo " curl -sSL https://dot.net/v1/dotnet-install.sh | bash -s -- --channel 9.0"
echo " # Add more channels as needed, for example:"
echo " curl -sSL https://dot.net/v1/dotnet-install.sh | bash -s -- --channel 8.0"
echo ""
echo "The SDK will be installed to ~/.dotnet"
echo "Add it to your PATH within this shell:"
echo ""
echo " export PATH=~/.dotnet:$PATH"
echo ""
echo "====================================================================="
echo ""
'';
runScript = "bash --init-file /etc/profile";
};
in dotnet-fhs.env