vinix
Weekly build 2024-12-21
Vinix是在V编程语言中编写现代,快速且有用的操作系统的努力。
加入Discord聊天。
注意:Vinix仍然是alpha前软件,不适合日常或生产使用!


您可以在https://github.com/vlang/vinix/releases上获取预构建的夜间Vinix图像
确保用足够的内存(8+GIB)引导ISO,因为目前,Vinix将其整个根文件系统加载到Ramdisk中,以便能够更轻松地在真实硬件上启动。
以下是构建Vinix所需的包装列表。
如果有的话,请跳到主机发行版的段落。
GNU make , findutils , curl , git , xz , rsync , xorriso , qemu进行测试,并且需要存在一个工作C编译器( cc )。
sudo apt install -y build-essential make findutils curl git xz-utils rsync xorriso qemu-system-x86sudo pacman -S --needed gcc make findutils curl git xz rsync xorriso qemusudo yum install -y gcc make findutils curl git xz rsync xorriso qemusudo xbps-install -Suv gcc make findutils curl git xz rsync xorriso qemu要构建发行版,其中包括构建内核和端口所需的跨工具链以及内核本身:
make all # Build the base distro and make filesystem and ISO.注意:在某些发行版上,例如Ubuntu 24.04,可能会遇到一个错误:
.../.jinx-cache/rbrt: failed to open or write to /proc/self/setgroups at line 186: Permission denied
在这种情况下,这可能意味着Apparmor正在阻止使用用户名称空间,从而导致jinx无法正常工作。一个人可以通过运行启用用户名称空间:
sudo sysctl kernel.apparmor_restrict_unprivileged_userns=0这不是重新启动的永久性。为此,可以这样做:
sudo sh -c ' echo "kernel.apparmor_restrict_unprivileged_userns = 0" >/etc/sysctl.d/99-userns.conf '这将构建最小的发行图像。设置PKGS_TO_INSTALL ENV变量将允许一个人指定一个自定义的软件包以构建/安装。例如:
PKGS_TO_INSTALL= ' * ' make all这将构建所有软件包(可能需要一些时间)。或者:
PKGS_TO_INSTALL= ' python sqlite ' make all这将构建基本系统(例如make all )以及python和sqlite软件包。
在Linux中,如果可用KVM,请与
make run-kvm
在MacOS中,如果有HVF可用,请运行
make run-hvf
在没有任何加速的情况下运行
make run