Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/maradotwebp/driveros
☁️ An operating system ... in the cloud!
https://github.com/maradotwebp/driveros
hyprland nix nixos wayland
Last synced: 9 days ago
JSON representation
☁️ An operating system ... in the cloud!
- Host: GitHub
- URL: https://github.com/maradotwebp/driveros
- Owner: maradotwebp
- License: mit
- Created: 2023-02-21T19:17:44.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-10-23T11:22:08.000Z (over 1 year ago)
- Last Synced: 2024-11-29T01:43:16.826Z (2 months ago)
- Topics: hyprland, nix, nixos, wayland
- Language: Nix
- Homepage:
- Size: 10.4 MB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# *driverOS*
This repository contains the entirety of my operating system, all my used applications, my dotfiles and my custom app themes.
![screenshot0](screenshot0.png)
## Huh?
- [Nix](https://nixos.org/) is a package manager for Linux systems. It's purely functional: It treats packages as immutable, which brings a few advantages like having the ability to install multiple versions of packages at the same time, and atomic upgrades & rollbacks. All package definitions are written in a functional language called Nix.
- [NixOS](https://nixos.org/) is an operating system built entirely with Nix. The complete operating system is built from a declarative Nix config: With the advantage of all configuration being defined in a single place, distribution becomes easy. With NixOS, you also gain all the advantages of Nix: You can roll back faulty system configurations and test changes to your OS before you deploy them.
> You can read more about NixOS [here](https://nixos.org/features.html).
## Highlights
- Multiple **OS configurations**, for my **laptop** & **workstation**
- Fully **declarative** config for my daily drivers
- hyprland / eww / rofi / dunst, alacritty / nushell / starship, intellij, gtk / qt, syncthing, greetd, wayland, zathura
- **User** & **Global** packages managed with the same config
- **Consistent** declarative config for wallpaper & color theme
- **Project Templates** with **nix flakes included**## Installation
You can install this on any computer that runs NixOS [with flake support enabled](https://nixos.wiki/wiki/Flakes).
*(Obviously, some settings are OS- & hardware-specific, so it's probably better if you integrate relevant settings into your own config.)*1. Clone the repository.
2. Run `sudo nixos-rebuild switch --flake '.#'`
- Optionally, link the `flake.nix` with `ln -s /etc/nixos/flake.nix` so that future rebuilds use the repository automatically.
3. Done!All application settings are managed declaratively, except for:
- IntelliJ IDEA which uses settings sync.
- Firefox which has account sync.
- Private SSH Keys, which can't be easily managed with a public git repo.### Templates
This repository also provides custom-made flake templates for languages & environments I commonly use.
To use, register `flake.nix` in the nix registry:
```bash
nix registry add home
```At which point you can start using the templates:
```bash
nix flake init -t home#rust
```## More screenshots
![screenshot1](screenshot1.png)