https://github.com/garuda-linux/garuda-nix-subsystem
Garuda Nix Subsystem - a flake enabling dual-boot, same-partition Garuda/NixOS installations ❄️🦅 (mirrored from GitLab)
https://github.com/garuda-linux/garuda-nix-subsystem
garuda-linux nixos-flake subsystem
Last synced: 9 months ago
JSON representation
Garuda Nix Subsystem - a flake enabling dual-boot, same-partition Garuda/NixOS installations ❄️🦅 (mirrored from GitLab)
- Host: GitHub
- URL: https://github.com/garuda-linux/garuda-nix-subsystem
- Owner: garuda-linux
- License: gpl-3.0
- Created: 2023-07-06T04:31:55.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-12-25T05:09:17.000Z (over 1 year ago)
- Last Synced: 2024-12-25T06:17:27.607Z (over 1 year ago)
- Topics: garuda-linux, nixos-flake, subsystem
- Language: Nix
- Homepage: https://nix.garudalinux.org
- Size: 11.6 MB
- Stars: 11
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-starred - garuda-linux/garuda-nix-subsystem - Garuda Nix Subsystem - a flake enabling dual-boot, same-partition Garuda/NixOS installations ❄️🦅 (mirrored from GitLab) (Nix)
README
# Garuda Nix Subsystem
[](https://builtwithnix.org)
[](https://gitlab.com/garuda-linux/garuda-nix-subsystem/-/commits/main)
## General information
The Garuda Nix Subsystem is a Nix flake, which allows easy dual boot with Garuda Linux. But it also provides a framework for pure NixOS, which provides opinionated defaults and a system which can be fully set up by toggling a few module options.
## Quick links
- [Using as subsystem to Garuda](https://nix.garudalinux.org/subsystem/quick-start)
- [Using as module for NixOS](https://nix.garudalinux.org/nixos-module/quick-start)
- ... coming soon™️
## Devshell and how to enter it
This NixOS flake provides a [devshell](https://github.com/numtide/devshell) which contains all deployment tools as well as handy aliases for common tasks.
The only requirement for using it is having the Nix package manager available. It can be installed on various distributions via the package manager or the following script ([click me for more information](https://zero-to-nix.com/start/install)):
```sh
curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix -o nix-install.sh # Check its content afterwards
sh ./nix-install.sh install --diagnostic-endpoint=""
```
This installs the Nix packages with flakes already pre-enabled. After that, the shell can be invoked as follows:
```sh
nix develop # The intended way to use the devshell
nix-shell # Legacy, non-flakes way if flakes are not available for some reason
```
This also sets up pre-commit-hooks and shows the currently implemented tasks, which can be executed by running the command shown in the welcome message.