- Nix 100%
|
novenary
5208cb9f14
pacman-master-key: split out of pacman-keyring
Key generation is slow, a reusable fixed-output derivation speeds up keyring rebuilds. |
||
|---|---|---|
| pkgs | pacman-master-key: split out of pacman-keyring | |
| .editorconfig | initial shart | |
| .gitignore | initial shart | |
| flake.lock | initial shart | |
| flake.nix | treewide: inherit from lib with namespaces | |
| LICENSE | initial shart | |
| overlay.nix | treewide: inherit from lib with namespaces | |
| README.md | treewide: append trailing / to most URLs | |
noobkitShell
a wrapper/sandbox/compatibility layer for devkitPro's homebrew SDK on NixOS.
also check out devkitNoob, a work-in-progress that natively packages the SDK with Nix.
getting started
for basic usage, simply nix run this flake!
you'll be dropped into a shell with pacman available.
pacman is pre-configured, and the keyring pre-populated;
you can start installing packages right away.
the wrapper also treats any arguments as a command to run in the sandbox:
$ nix run -- pacman -Q
catnip 0.1.0-1
devkit-env 1.0.1-2
devkitPPC r48-8
...
the sandbox is set up to install packages in your HOME without root access, and follows the XDG base directory specification.
there is no need to install upstream's pacman and keyring packages: their functionality is provided by the wrappers, and they won't do anything by default.
installation
it is recommended to make noobkitShell available through your NixOS or
Home Manager configuration.
you should use the Nixpkgs overlay for this;
the package outputs of the flake are only provided for compatibility with the
Nix CLI,
and they will cause an extra Nixpkgs instantiation.
customizing noobkitShell
the implementation tries to follow established conventions from Nixpkgs for
package and package set extension.
unfortunately, some builders make it annoyingly difficult to write overridable
derivations.
please open an issue or submit a pull request to add new extension points if
needed.
some sample overlays are provided for convenience and demonstration:
.#with-extremscorner: enables the Extrems' Corner.org repo, which contains libogc2 and peripheral packages..#with-multiArch: enables multiarch/multilib support in the noobkitShell environment to run 32-bit binaries