GitHub - solcloud/NiceOS: Linux OS that one person can manage. Nice!
source link: https://github.com/solcloud/NiceOS
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
NiceOS
Operating system with vanilla Linux kernel for users who wants to take full control of their system. You can do it, try it and make NiceOS your last Linux distribution ever!
Minimal example
You can watch me building minimal preset on YouTube
mkdir -p /data/src/nice # recommend HDD folder with few spare gigs git clone 'https://github.com/solcloud/NiceOS' /data/src/nice cd /data/src/nice $EDITOR .config.sh # read carefully and make modifications inside config.sh export NICE_PRESET=minimal # presets by default lives inside presets/ folder make download # download linux and busybox compressed releases make build make cmd # or make gui , qemu cmd quit shortcut 'Ctrl-a x'
For more presets look at presets folder, there is base as a starting template and few my personal presets
Promo
Everybody likes screenshots right here is my
Advance example
Building my main desktop system - Ghost with binaries extracted from Artix (Pᗣᗧ•••MᗣN)
You can watch me building ghost preset on YouTube
export NICE_PRESET=ghost DISTRO=artix DISTRO_ISO=/data/dwn/artix-base-openrc-20220123-x86_64.iso make extract make build make gui
For extracting binaries from different distribution just read supported distributions. We virtually provide extract recipes for every linux distro ever made You just need to pick one that suits you best. For example if you prefer devuan binaries over artix just use something like DISTRO=devuan DISTRO_ISO=/path/to/devuan_chimaera_4.0.0_amd64_minimal-live.iso make extract
instead.
After successful make build
you have raw disk image file in storage/sda.img
that you can burn to real disk and boot from it or use make gui
to run that image in QEMU virtual emulator. If you do not want to use QEMU, you can run make vbox
which will convert raw image to virtual disk image file (.vdi), that can be used in VirtualBox for example. Windows video
User's config
For overwriting default config variables you can use git ignored config.sh
file at project root, eg:
$ cat config.sh export QEMU_RAM=3G export TARGET_GROUP=code export MAKE_NUM_OF_THREADS=6
User's presets
If you have own presets in different folder than default presets folder, you can use NICE_PRESET_ROOT
variable, eg:
export NICE_PRESET_ROOT=/home/me/nice/my_presets # or use config.sh file echo 'export NICE_PRESET_ROOT=/home/me/nice/my_presets' >> config.sh export NICE_PRESET=my_custom_preset make build
If you publish your presets to GitHub do not forget to use niceos tag on your repository.
Build dependencies
For debian based system you will probably need these packages:
sudo apt install git make gcc rsync bison flex cpio bc libelf-dev gawk fdisk wget lbzip2 xz-utils dosfstools libssl-dev libncurses-dev # required sudo apt install qemu-system-gui qemu-utils # optional (for running and extracting in QEMU emulator)
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK