A nix flake for neuswc and neuwld packages (hevel, howl, mojito...).
The packages this flake currently provides are:
neuwldneuswcneumenushkohevelslgrohowlhackswclockswivmojitohsttohuneuwmwsxwmklatkawawa
You can use the compositors in this flake in two ways. If you add neuswc to your system packages, you can launch them with swc-launch:
sudo swc-launch shkoOr, you can use a wrapper script that calls swc-launch for you, no need to add neuswc:
sudo shko-launchAdd the flake as an input to your own system flake:
{
inputs = {
nixpkgs = "github:nixos/nixpkgs/nixos-unstable";
neu-nix = {
url = "github:ricardomaps/neu-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
}
# ...
}Then add all the packages you want, wherever your system uses them, eg.:
environment.systemPackages = with inputs.neu-nix.packages.${system}; [
shko
neumenu
hack
];Alternatively, you can use the flake's overlay:
#...
nixpkgs.overlays = [
inputs.neu-nix.overlays.default
];
environment.systemPackages = [
hevel
neumenu
mojito
];
#...Take a look here for information about the packages, what they are and how to use them.
Configuration can be done by overriding the package and passing in either a path to a config file, a derivation or just write the config inline. For example to configure shko you can either do:
pkgs.shko.override {
configZig = ''
pub const terminal = "st-wl";
pub const menu = "neumenu_run";
'';
}or:
pkgs.shko.override {
configZig = ./path/to/config.zig;
}Take a look at the default.nix file for the specific package you want to configure to see what argument is expected for the config.
Make a pull request with the package you want to contribute. Again, take a look here for a list of packages that could be added here. Familiarize yourself with the structure of the repo, write the package definition in the callPackage pattern and add it to packages/default.nix.