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