From fc105dc2dddb0b8aa4e4b44e1c1dcc0b5aea3335 Mon Sep 17 00:00:00 2001 From: NotAShelf Date: Sat, 19 Apr 2025 18:48:02 +0300 Subject: [PATCH] docs: simplify --- README.md | 152 +++++++++++------------------------------------------- 1 file changed, 29 insertions(+), 123 deletions(-) diff --git a/README.md b/README.md index d9be20c..71e7b88 100644 --- a/README.md +++ b/README.md @@ -1,25 +1,28 @@ # 🌙 nyxexprs -My personal package overlay for sharing my most commonly used derivations. - -## 📦 Packages - -There are several packages exposed by this flake. Each directory in `pkgs` -contains a description of the package inside its README. - -| Package | Description | -| :--------------- | :----------------------------------------------------------------------------------------------: | -| alejandra-custom | A patched version of the **Alejandra** Nix formatter, without the pesky ads and spacing patches | -| ani-cli | An up-to-date, auto updated version of ani-cli following auto-updated pins | -| cloneit | A CLI tool to download specific GitHub directories or files | -| foot-transparent | A patched version of the Foot terminal emulator that brings back fullscreen transparency[^1] | -| fuzzel-git | Patched version of Fuzzel that tracks the latest git revision | -| headscale-ui | A web frontend for the headscale Tailscale-compatible coordination server | -| mastodon-bird-ui | Mastodon web UI, but strongly inspired by Twitter. | -| zsh-stripped | ZSH with newinstall scripts removed, and patches to handle special characters such as `^` or `#` | +My personal package overlay for sharing my most commonly used derivations. Kept +up to date with Github workflows and npins. Contributions welcome. ## Usage +All packages in Nyxexprs are exposed in the flake outputs. + +### Flakes + +```nix +# flake.nix +inputs = { + # Add an input as such. Avoid adding "follows" lines if you would + # like to benefit from the binary cache. + nyxexprs.url = "github:notashelf/nyxexprs"; + # ... +}; +``` + +If you are using Nix on a non-NixOS distro, you may nix run to try out packages, +or `nix profile install` to install them on your system profile. If using +home-manager on non-NixOS, I recommend using `home.packages` instead. + ### Binary Cache Regardless of your setup,you may want to add the @@ -42,112 +45,15 @@ nix.settings = { }; ``` -### NixOS/Home-manager (flakes) - -It is as simple as adding a new entry to your inputs with the correct url. - -```nix -# flake.nix -inputs = { - # ... - nyxexprs.url = "github:notashelf/nyxexprs"; - # ... -}; -``` - -After adding the input, you can consume the [exposed packages](#-packages) in -your system configuration. An example `flake.nix` would be as follows: - -```nix -# flake.nix -{ - inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; - home-manager.url = "github:nix-community/home-manager"; - - # ↓ add nyxexprs as a flake input - nyxexprs.url = "github:notashelf/nyxexprs"; - }; - - outputs = inputs @ {self, nixpkgs, ...}: { - # set up for NixOS - nixosConfigurations. = nixpkgs.lib.nixosSystem { - specialArgs = {inherit inputs;}; - modules = [ - ./configuration.nix - # ... - ]; - }; - - # or for Home Manager - homeConfigurations. = inputs.home-manager.lib.homeManagerConfiguration { - extraSpecialArgs = {inherit inputs;}; - - pkgs = import nixpkgs { - system = "x86_64-linux"; - config.allowUnfree = true; - }; - - modules = [ - ./home.nix - # ... - ]; - } - }; -} -``` - -Where you can then add the relevant package to your `environment.systemPackages` -or `home.packages` - -```nix -{pkgs, inputs, ...}: { - # in case of home-manager, this will be home.packages - environment.systemPackages = [ - inputs.nyxexprs.packages.${pkgs.system}. # installs a package - ]; -} -``` - -### Nix - -If you are using Nix on a non-NixOS distro, you may `nix run` to try out -packages, or `nix profile install` to install them on your system profile. If -using home-manager on non-NixOS, I recommend using `home.packages` instead. - -```console -nix profile install github:notashelf/nyxexprs# -``` - -### NixOS/Home-manager (no flakes) - -If you are not using flakes, the above instructions will not apply. You may -obtain the source as a tarball to consume in your system configuration as -follows: - -```nix -{pkgs, ...}: let - nyxexprs = import (builtins.fetchTarball "https://github.com/notashelf/nyxexprs/archive/main.tar.gz"); -in { - # install packages - # this can also be home.packages if you are using home-manager - environment.systemPackages = [ - nyxexprs.packages.${pkgs.hostPlatform.system}. - ]; -} -``` - -## 🔧 Contributing - -PRs are always welcome. - ## 🫂 Credits -The repository structure is mostly borrowed from -[@fufexan](https://github.com/fufexan)'s -[nix-gaming](https://github.com/fufexan/nix-gaming). +[@fufexan]: https://github.com/fufexan +[nix-gaming]: https://github.com/fufexan/nix-gaming -[^1]: - Foot has broken fullscreen transparency on 1.15, which looks **really** - ugly with padding. The author is dead set on not fixing it, because it's broken - on one wayland compositor that a total of 7 people use. +The repository structure is mostly borrowed from [@fufexan] 's [nix-gaming] +repository. Thank you fuf! + +## 📜 License + +This repository (Nix, patches, ettc.) is released under EUPL v1.2. Please see +the [license file](./LICENSE) for more details.