NixOS(Gnome)安装及配置指南
这篇文章已过时
进入NixOS的LiveCD, 连接网络
可以使用手机网络共享然后无线连接
配置代理
1 |
|
然后进入127.0.0.1:2017
导入代理配置
使用cfdisk
进行系统分区
1 |
|
1 |
|
这些步骤跟安装archlinux
完全一样, 并使用GUID分区表和UEFI启动方式
安装系统
1 |
|
用户名以yoimiya
为例, 主机名默认即可
示例配置:
1 |
|
保存退出后安装系统
1 |
|
安装完成后会要求设置root
密码,然后使用
1 |
|
设置用户密码。设置完成后重启电脑,进入新系统
情况一、QEMU/KVM
虚拟机的配置
1 |
|
从此处获得示例虚拟机配置, 编辑/etc/nixos/configuration.nix
,
然后输入sudo nixos-rebuild switch
一键配置更新系统,重启后输入sudo nix-collect-garbage -d
清理旧镜像
情况二、NVIDIA
显卡实体机配置
在使用笔者的配置之前,确保你理解了配置文件的每一句话,并根据实际情况作了修改
克隆配置仓库
1 |
|
安装Windows字体
1 |
|
安装农历依赖
1 |
|
配置zsh
1 |
|
安装主配置文件(根据实际情况修改,请仔细阅读配置的每一行)
1 |
|
更新系统配置, 换成Unstable
通道
1 |
|
如果出错, 可以尝试sudo systemctl stop nixos-rebuild-switch-to-configuration.service
重启到新系统, 清理垃圾
1 |
|
配置新系统
关于Gnome
桌面环境的配置此处省略, 可看Manjaro
那篇文章
补充说明
实体机安装的是
linux-zen
内核下列配置使用
nix-shell
可以使用clang
工具链, 以及Qt
应用程序开发:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20with import <nixpkgs> {
config = {
allowUnfree = true;
};
};
let
gccForLibs = stdenv.cc.cc;
in
stdenv.mkDerivation {
name = "llvm-env";
buildInputs = [
# clang
];
CPLUS_INCLUDE_PATH = "${gccForLibs}/include/c++/${gccForLibs.version}:${gccForLibs}/include/c++/${gccForLibs.version}/x86_64-unknown-linux-gnu:${gccForLibs}/lib/gcc/x86_64-unknown-linux-gnu/${gccForLibs.version}/include:${stdenv.cc.libc.dev}/include";
QT_QPA_PLATFORM_PLUGIN_PATH = "${libsForQt5.qt5.qtbase}/lib/qt-${libsForQt5.qt5.qtbase.version}/plugins/platforms";
shellHook = ''
echo ${libsForQt5.qt5.qtbase.version};
'';
}关于
Pycharm
无法使用的问题, 手动导入环境变量, 先在终端运行, 然后把完整文本路径导入Pycharm
对应位置(不是直接把下面的命令导入Pycharm
):1
export LD_LIBRARY_PATH=$(find /nix/store -type d -name '*steam-run-fhs*' -exec echo -n {}'/usr/lib32:'{}'/usr/lib64:' \;)
IDEA
也是一样。如果要使用JavaFx
则导入LD_LIBRARY_PATH=/home/yoimiya/javafx-sdk-21.0.5/lib:/nix/store/haci0d018njygwdga95bsbx8ww2iswy7-zlib-1.3.1/lib:/usr/java/packages/lib:/usr/lib64:/lib64:/lib:/usr/lib:/nix/store/qqfyfd3zq9jqyk9cibz72ir2ws9znl5a-steam-run-fhs/usr/lib32:/nix/store/qqfyfd3zq9jqyk9cibz72ir2ws9znl5a-steam-run-fhs/usr/lib64
,
对于虚拟机选项,导入--module-path "/home/yoimiya/javafx-sdk-21.0.5/lib" --add-modules javafx.controls,javafx.fxml
Gnome
的新终端Console
可以用命令kgx --tab
打开nix-shell -p ncurses5 flex bison elfutils openssl
此配置可以用于内核编译nix-shell -p gtk4 gtk3 pkg-config
此配置用于rust-gtk开发