Skip to content
/ oasis Public
forked from oasislinux/oasis

a small statically-linked linux system

License

Notifications You must be signed in to change notification settings

ujdhesa/oasis

 
 

Repository files navigation

oasis

Build Status

oasis is a small linux system

It is suitable for a range of uses including server and desktop. oasis provides a solution for many common tasks:

  • Display server (velox, wayland-based)
  • Terminal (st)
  • Program launcher (dmenu)
  • Web browser (netsurf with custom frontend)
  • Document viewer (mupdf)
  • Media player (mpv)
  • HTTP server (nginx)
  • DNS server (nsd)
  • BitTorrent client (transmission)

The entire system can be compiled in minutes, and uses up up only a couple hundred megabytes of disk space (despite being statically linked). It is almost entirely C-based, and only one optional component requires C++ (libutp for transmission).

Updating your system is as simple as

git -C /src/oasis pull
samu -C /src/oasis commit
doas git -C / merge

For more information, see the wiki.

Principles

  • Binaries should be linked statically. This is made possible by lightweight system components like musl libc, and a central source repository to keep track of system-wide dependencies.
  • Software components should be built in a way that allows the user to easily customize and/or modify as needed.
  • Sources can be referenced through a URL or git submodule, but not included directly in the oasis repository. This way, users only need to download the sources they are interested in.
  • /etc directory should be simple enough for system administrators to understand in its entirety and customize appropriately.

Components

oasis uses software from a lot of different packages. The core system is built up from the following:

About

a small statically-linked linux system

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 45.6%
  • Roff 37.1%
  • Lua 14.2%
  • Objective-C 1.5%
  • Awk 0.8%
  • C++ 0.4%
  • Other 0.4%