Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/vlinkz/nixos-conf-editor

A libadwaita/gtk4 app for editing NixOS configurations
https://github.com/vlinkz/nixos-conf-editor

gtk4 libadwaita nixos

Last synced: 3 months ago
JSON representation

A libadwaita/gtk4 app for editing NixOS configurations

Awesome Lists containing this project

README

        

NixOS Configuration Editor
===

[![Built with Nix][builtwithnix badge]][builtwithnix]
[![License: GPLv3][GPLv3 badge]][GPLv3]
[![Chat on Matrix][matrix badge]][matrix]
[![Chat on Discord][discord badge]][discord]

A simple NixOS configuration editor application built with [libadwaita](https://gitlab.gnome.org/GNOME/libadwaita), [GTK4](https://www.gtk.org/), and [Relm4](https://relm4.org/). The goal of this project is to provide a simple graphical tool for modifying and managing desktop NixOS configurations.


## NixOS Flakes Installation
`flake.nix`
```nix
{
inputs = {
# other inputs
nixos-conf-editor.url = "github:snowfallorg/nixos-conf-editor";
# rest of flake.nix
```

`configuration.nix`
```nix
environment.systemPackages = with pkgs; [
inputs.nixos-conf-editor.packages.${system}.nixos-conf-editor
# rest of your packages
];
```

## NixOS Installation

Head of `configuration.nix`

if you are on unstable channel or any version after 22.11:
```nix
{ config, pkgs, lib, ... }:
let
nixos-conf-editor = import (pkgs.fetchFromGitHub {
owner = "snowfallorg";
repo = "nixos-conf-editor";
rev = "0.1.2";
sha256 = "sha256-/ktLbmF1pU3vFHeGooDYswJipNE2YINm0WpF9Wd1gw8=";
}) {};
in
```
Packages:

```nix
environment.systemPackages =
with pkgs; [
nixos-conf-editor
# rest of your packages
];
```
For any other method of installation, when rebuilding you will be prompted to authenticate twice in a row

## 'nix profile' installation
```bash
nix profile install github:snowfallorg/nixos-conf-editor
```

## 'nix-env' Installation

```bash
git clone https://github.com/snowfallorg/nixos-conf-editor
nix-env -f nixos-conf-editor -i nixos-conf-editor
```

## Single run on an flakes enabled system:
```bash
nix run github:snowfallorg/nixos-conf-editor
```

## Single run on non-flakes enabled system:
```bash
nix --extra-experimental-features "nix-command flakes" run github:snowfallorg/nixos-conf-editor
```

## Debugging

```bash
RUST_LOG=nixos_conf_editor=trace nixos-conf-editor
```

# Screenshots
















## Licenses

The icons in [data/icons](data/icons/) contains assets from the [NixOS logo](https://github.com/NixOS/nixos-artwork/tree/master/logo) and are licensed under a [CC-BY license](https://creativecommons.org/licenses/by/4.0/).

[builtwithnix badge]: https://img.shields.io/badge/Built%20With-Nix-41439A?style=for-the-badge&logo=nixos&logoColor=white
[builtwithnix]: https://builtwithnix.org/
[GPLv3 badge]: https://img.shields.io/badge/License-GPLv3-blue.svg?style=for-the-badge
[GPLv3]: https://opensource.org/licenses/GPL-3.0
[matrix badge]: https://img.shields.io/badge/matrix-join%20chat-0cbc8c?style=for-the-badge&logo=matrix&logoColor=white
[matrix]: https://matrix.to/#/#snowflakeos:matrix.org
[discord badge]: https://img.shields.io/discord/1021080090676842506?color=7289da&label=Discord&logo=discord&logoColor=ffffff&style=for-the-badge
[discord]: https://discord.gg/6rWNMmdkgT