refactor(packages): clarify inputs and cleanup meta
All checks were successful
Discord / discord commits (push) Has been skipped

This commit is contained in:
matt1432 2025-02-11 13:05:14 -05:00
parent 2c070a4be0
commit f12e7f2513
16 changed files with 124 additions and 53 deletions

View file

@ -8,17 +8,17 @@ This directory contains every derivations for packages exposed by this flake.
| ---- | ----------- | -------- | | ---- | ----------- | -------- |
| `gpu-screen-recorder` | Screen recorder that has minimal impact on system performance by recording a window using the GPU only | https://git.dec05eba.com/gpu-screen-recorder/about/ | | `gpu-screen-recorder` | Screen recorder that has minimal impact on system performance by recording a window using the GPU only | https://git.dec05eba.com/gpu-screen-recorder/about/ |
| `gsr-kms-server` | Screen recorder that has minimal impact on system performance by recording a window using the GPU only | https://git.dec05eba.com/gpu-screen-recorder/about/ | | `gsr-kms-server` | Screen recorder that has minimal impact on system performance by recording a window using the GPU only | https://git.dec05eba.com/gpu-screen-recorder/about/ |
| `homepage` | Highly customisable dashboard with Docker and service API integrations | https://gethomepage.dev | | `homepage` | Highly customisable dashboard with Docker and service API integrations. | https://gethomepage.dev |
| `jmusicbot` | Discord music bot that's easy to set up and run yourself | https://github.com/jagrosh/MusicBot | | `jmusicbot` | Discord music bot that's easy to set up and run yourself | https://github.com/jagrosh/MusicBot |
| `libratbag` | Configuration library for gaming mice | https://github.com/libratbag/libratbag | | `libratbag` | Configuration library for gaming mice | https://github.com/libratbag/libratbag |
| `librespot-auth` | A simple program for populating a credentials.json via Spotify's zeroconf authentication. | https://github.com/dspearson/librespot-auth | | `librespot-auth` | A simple program for populating a credentials.json via Spotify's zeroconf authentication. | https://github.com/dspearson/librespot-auth |
| `pam-fprint-grosshack` | This is a fork of the pam module which implements the simultaneous password and fingerprint behaviour present in pam_thinkfinger. | https://gitlab.com/mishakmak/pam-fprint-grosshack | | `pam-fprint-grosshack` | This is a fork of the pam module which implements the simultaneous password and fingerprint behaviour present in pam_thinkfinger. | https://gitlab.com/mishakmak/pam-fprint-grosshack |
| `piper` | GTK frontend for ratbagd mouse config daemon | https://github.com/libratbag/piper | | `piper` | GTK frontend for ratbagd mouse config daemon | https://github.com/libratbag/piper |
| `pokemon-colorscripts` | A script to print out images of pokemon to the terminal. | https://gitlab.com/phoneybadger/pokemon-colorscripts | | `pokemon-colorscripts` | A script to print out images of pokemon to the terminal. | https://gitlab.com/phoneybadger/pokemon-colorscripts |
| `proton-ge-latest` | Compatibility tool for Steam Play based on Wine and additional components. (This is intended for use in the `programs.steam.extraCompatPackages` option only.) | https://github.com/GloriousEggroll/proton-ge-custom | | `proton-ge-latest` | Compatibility tool for Steam Play based on Wine and additional components. (This is intended for use in the `programs.steam.extraCompatPackages` option only.) This derivation overrides the Proton version in Steam so that games using the Proton from nix keep using it after every version change. | https://github.com/GloriousEggroll/proton-ge-custom |
| `protonhax` | Tool to help running other programs (i.e. Cheat Engine) inside Steam's proton. | https://github.com/jcnils/protonhax | | `protonhax` | Tool to help running other programs (i.e. Cheat Engine) inside Steam's proton. | https://github.com/jcnils/protonhax |
| `repl` | A simple program for populating a credentials.json via Spotify's zeroconf authentication. | fork of https://github.com/fufexan/dotfiles/blob/main/pkgs/repl/default.nix | | `repl` | A wrapper of `nix repl` with the flake located at `$FLAKE` loaded in. It also attempts to load the current system's derivation for both `nixosConfigurations` and `nixOnDroidConfigurations`. | fork of https://github.com/fufexan/dotfiles/blob/main/pkgs/repl/default.nix |
| `some-sass-language-server` | Some Sass is a language server extension for Visual Studio Code and other editors with a language server protocol (LSP) client. It brings improved code suggestions, documentation and code navigation for both SCSS and indented syntaxes. | https://github.com/wkillerud/some-sass | | `some-sass-language-server` | Some Sass is a language server extension for Visual Studio Code and other editors with a language server protocol (LSP) client. It brings improved code suggestions, documentation and code navigation for both SCSS and indented syntaxes. | https://github.com/wkillerud/some-sass |
| `subscleaner` | Subscleaner is a Python script that removes advertisements from subtitle files. It's designed to help you enjoy your favorite shows and movies without the distraction of unwanted ads in the subtitles. | https://gitlab.com/rogs/subscleaner | | `subscleaner` | Subscleaner is a Python script that removes advertisements from subtitle files. It's designed to help you enjoy your favorite shows and movies without the distraction of unwanted ads in the subtitles. | https://gitlab.com/rogs/subscleaner |
| `trash-d` | A near drop-in replacement for `rm` that uses the [FreeDesktop trash bin](https://specifications.freedesktop.org/trash-spec/trashspec-latest.html). | https://github.com/rushsteve1/trash-d | | `trash-d` | A near drop-in replacement for `rm` that uses the [FreeDesktop trash bin](https://specifications.freedesktop.org/trash-spec/trashspec-latest.html). | https://github.com/rushsteve1/trash-d |
| `urllib3` | Powerful, sanity-friendly HTTP client for Python | https://github.com/shazow/urllib3 | | `urllib3` | Powerful, sanity-friendly HTTP client for Python. | https://github.com/shazow/urllib3 |

View file

@ -1,23 +1,24 @@
{ {
# Params # params
pname, pname,
gpu-screen-recorder-src, gpu-screen-recorder-src,
isKmsServer ? false, isKmsServer ? false,
# Derivation deps # nix build inputs
lib, lib,
stdenv,
addDriverRunpath, addDriverRunpath,
makeWrapper,
# deps
dbus, dbus,
ffmpeg, ffmpeg,
libdrm, libdrm,
libglvnd, libglvnd,
libpulseaudio, libpulseaudio,
libva, libva,
makeWrapper,
meson, meson,
ninja, ninja,
pipewire, pipewire,
pkg-config, pkg-config,
stdenv,
vulkan-headers, vulkan-headers,
wayland, wayland,
xorg, xorg,
@ -101,10 +102,13 @@ in
''; '';
meta = { meta = {
description = "Screen recorder that has minimal impact on system performance by recording a window using the GPU only"; mainProgram = pname;
homepage = "https://git.dec05eba.com/gpu-screen-recorder/about/";
license = lib.licenses.gpl3Only; license = lib.licenses.gpl3Only;
platforms = ["x86_64-linux"]; platforms = ["x86_64-linux"];
mainProgram = pname; homepage = "https://git.dec05eba.com/gpu-screen-recorder/about/";
description = ''
Screen recorder that has minimal impact on system performance by recording
a window using the GPU only
'';
}; };
} }

View file

@ -1,14 +1,17 @@
{ {
# params
enableLocalIcons ? true,
# nix build inputs
lib,
stdenv,
buildNpmPackage, buildNpmPackage,
fetchFromGitHub, fetchFromGitHub,
# deps
cctools,
git,
nodePackages, nodePackages,
python3, python3,
stdenv,
cctools,
IOKit ? {}, IOKit ? {},
lib,
enableLocalIcons ? true,
git,
}: let }: let
inherit (lib) optionals optionalString; inherit (lib) optionals optionalString;
@ -86,10 +89,12 @@ in
doDist = false; doDist = false;
meta = { meta = {
description = "Highly customisable dashboard with Docker and service API integrations";
changelog = "https://github.com/gethomepage/homepage/releases/tag/v${version}";
mainProgram = "homepage"; mainProgram = "homepage";
homepage = "https://gethomepage.dev";
license = lib.licenses.gpl3; license = lib.licenses.gpl3;
homepage = "https://gethomepage.dev";
changelog = "https://github.com/gethomepage/homepage/releases/tag/v${version}";
description = ''
Highly customisable dashboard with Docker and service API integrations.
'';
}; };
} }

View file

@ -1,6 +1,8 @@
{ {
# nix build inputs
lib, lib,
fetchurl, fetchurl,
# deps
jmusicbot, jmusicbot,
jdk11_headless, jdk11_headless,
jre_minimal, jre_minimal,

View file

@ -1,6 +1,8 @@
{ {
# nix build inputs
lib, lib,
libratbag-src, libratbag-src,
# deps
libratbag, libratbag,
... ...
}: let }: let

View file

@ -1,10 +1,12 @@
{ {
# nix build inputs
lib, lib,
fetchFromGitHub, fetchFromGitHub,
makeWrapper, makeWrapper,
rustPlatform,
# deps
openssl, openssl,
pkg-config, pkg-config,
rustPlatform,
... ...
}: }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
@ -36,9 +38,12 @@ rustPlatform.buildRustPackage rec {
]; ];
meta = { meta = {
description = "A simple program for populating a credentials.json via Spotify's zeroconf authentication.";
mainProgram = pname; mainProgram = pname;
homepage = "https://github.com/dspearson/librespot-auth";
license = with lib.licenses; [isc]; license = with lib.licenses; [isc];
homepage = "https://github.com/dspearson/librespot-auth";
description = ''
A simple program for populating a credentials.json via Spotify's
zeroconf authentication.
'';
}; };
} }

View file

@ -1,6 +1,9 @@
{ {
# nix build inputs
lib, lib,
stdenv,
pam-fprint-grosshack-src, pam-fprint-grosshack-src,
# deps
dbus, dbus,
glib, glib,
libfprint, libfprint,
@ -10,7 +13,6 @@
pam, pam,
pkg-config, pkg-config,
polkit, polkit,
stdenv,
systemd, systemd,
... ...
}: let }: let
@ -44,9 +46,11 @@ in
]; ];
meta = { meta = {
description = "This is a fork of the pam module which implements the simultaneous
password and fingerprint behaviour present in pam_thinkfinger.";
homepage = "https://gitlab.com/mishakmak/pam-fprint-grosshack";
license = with lib.licenses; [gpl2Plus]; license = with lib.licenses; [gpl2Plus];
homepage = "https://gitlab.com/mishakmak/pam-fprint-grosshack";
description = ''
This is a fork of the pam module which implements the simultaneous password and
fingerprint behaviour present in pam_thinkfinger.
'';
}; };
} }

View file

@ -1,6 +1,8 @@
{ {
# nix build inputs
lib, lib,
piper-src, piper-src,
# deps
piper, piper,
... ...
}: let }: let

View file

@ -1,8 +1,10 @@
{ {
# nix build inputs
mkVersion, mkVersion,
stdenv, stdenv,
python3Packages,
pokemon-colorscripts-src, pokemon-colorscripts-src,
# deps
python3Packages,
... ...
}: }:
stdenv.mkDerivation { stdenv.mkDerivation {
@ -27,7 +29,9 @@ stdenv.mkDerivation {
''; '';
meta = { meta = {
description = "A script to print out images of pokemon to the terminal.";
homepage = "https://gitlab.com/phoneybadger/pokemon-colorscripts"; homepage = "https://gitlab.com/phoneybadger/pokemon-colorscripts";
description = ''
A script to print out images of pokemon to the terminal.
'';
}; };
} }

View file

@ -1,5 +1,7 @@
{ {
# nix build inputs
lib, lib,
# deps
proton-ge-bin, proton-ge-bin,
rsync, rsync,
... ...
@ -27,4 +29,12 @@ in
runHook postBuild runHook postBuild
''; '';
meta = o.meta // {
description = ''
${o.meta.description}
This derivation overrides the Proton version in Steam so that games using the Proton
from nix keep using it after every version change.
'';
};
}) })

View file

@ -1,8 +1,9 @@
{ {
# nix build inputs
lib, lib,
mkVersion, mkVersion,
protonhax-src,
stdenv, stdenv,
protonhax-src,
... ...
}: }:
stdenv.mkDerivation { stdenv.mkDerivation {
@ -16,8 +17,10 @@ stdenv.mkDerivation {
''; '';
meta = { meta = {
description = "Tool to help running other programs (i.e. Cheat Engine) inside Steam's proton.";
homepage = "https://github.com/jcnils/protonhax";
license = with lib.licenses; [bsd3]; license = with lib.licenses; [bsd3];
homepage = "https://github.com/jcnils/protonhax";
description = ''
Tool to help running other programs (i.e. Cheat Engine) inside Steam's proton.
'';
}; };
} }

View file

@ -1,12 +1,14 @@
# modified from https://github.com/fufexan/dotfiles/blob/main/pkgs/repl/default.nix
{ {
# nix build inputs
writeShellApplication,
# deps
coreutils, coreutils,
gnused, gnused,
ncurses, ncurses,
writeShellApplication,
... ...
}: let }: let
repl = ./repl.nix; repl = ./repl.nix;
example = command: desc: ''\n$(tput setaf 3) ${command}$(tput sgr0) - ${desc}''; example = command: desc: ''\n$(tput setaf 3) ${command}$(tput sgr0) - ${desc}'';
in in
writeShellApplication { writeShellApplication {
@ -40,7 +42,11 @@ in
''; '';
meta = { meta = {
description = "A simple program for populating a credentials.json via Spotify's zeroconf authentication.";
homepage = "fork of https://github.com/fufexan/dotfiles/blob/main/pkgs/repl/default.nix"; homepage = "fork of https://github.com/fufexan/dotfiles/blob/main/pkgs/repl/default.nix";
description = ''
A wrapper of `nix repl` with the flake located at `$FLAKE` loaded in. It also attempts
to load the current system's derivation for both `nixosConfigurations` and
`nixOnDroidConfigurations`.
'';
}; };
} }

View file

@ -1,19 +1,23 @@
{ {
# nix build inputs
lib, lib,
buildNpmPackage,
makeWrapper,
writeShellApplication, writeShellApplication,
# update script deps
nodejs_latest, nodejs_latest,
prefetch-npm-deps, prefetch-npm-deps,
jq, jq,
buildNpmPackage,
makeWrapper,
... ...
}: let }: let
package = builtins.fromJSON (builtins.readFile ./package.json); inherit (builtins) fromJSON readFile;
package = fromJSON (readFile ./package.json);
pname = "some-sass-language-server"; pname = "some-sass-language-server";
version = package.dependencies.some-sass-language-server;
in in
buildNpmPackage { buildNpmPackage {
inherit pname; inherit pname version;
version = package.dependencies.some-sass-language-server;
src = ./.; src = ./.;
dontNpmBuild = true; dontNpmBuild = true;
@ -39,9 +43,14 @@ in
}; };
meta = { meta = {
description = "Some Sass is a language server extension for Visual Studio Code and other editors with a language server protocol (LSP) client. It brings improved code suggestions, documentation and code navigation for both SCSS and indented syntaxes.";
mainProgram = pname; mainProgram = pname;
homepage = "https://github.com/wkillerud/some-sass";
license = with lib.licenses; [isc]; license = with lib.licenses; [isc];
homepage = "https://github.com/wkillerud/some-sass";
description = ''
Some Sass is a language server extension for Visual Studio Code and
other editors with a language server protocol (LSP) client. It brings
improved code suggestions, documentation and code navigation for both
SCSS and indented syntaxes.
'';
}; };
} }

View file

@ -12,9 +12,13 @@ in
preferWheels = true; preferWheels = true;
meta = { meta = {
description = "Subscleaner is a Python script that removes advertisements from subtitle files. It's designed to help you enjoy your favorite shows and movies without the distraction of unwanted ads in the subtitles.";
mainProgram = "subscleaner"; mainProgram = "subscleaner";
homepage = "https://gitlab.com/rogs/subscleaner";
license = lib.licenses.gpl3Only; license = lib.licenses.gpl3Only;
homepage = "https://gitlab.com/rogs/subscleaner";
description = ''
Subscleaner is a Python script that removes advertisements from subtitle files.
It's designed to help you enjoy your favorite shows and movies without the
distraction of unwanted ads in the subtitles.
'';
}; };
} }

View file

@ -1,19 +1,22 @@
{ {
# nix build inputs
lib, lib,
stdenv,
trash-d-src,
# deps
dmd, dmd,
dub, dub,
trash-d-src,
ronn, ronn,
stdenv,
... ...
}: let }: let
inherit (builtins) fromJSON readFile; inherit (builtins) fromJSON readFile;
tag = (fromJSON (readFile "${trash-d-src}/dub.json")).version; tag = (fromJSON (readFile "${trash-d-src}/dub.json")).version;
pname = "trash";
version = "${tag}+${trash-d-src.shortRev}";
in in
stdenv.mkDerivation { stdenv.mkDerivation {
pname = "trash"; inherit pname version;
version = "${tag}+${trash-d-src.shortRev}";
src = trash-d-src; src = trash-d-src;
@ -37,15 +40,19 @@ in
ronn --roff --pipe MANUAL.md > $out/man/man1/trash.1 ronn --roff --pipe MANUAL.md > $out/man/man1/trash.1
''; '';
meta = { meta = {
mainProgram = "trash"; mainProgram = "trash";
license = with lib.licenses; [mit];
platforms = [ platforms = [
"x86_64-linux" "x86_64-linux"
"i686-linux" "i686-linux"
"x86_64-darwin" "x86_64-darwin"
]; ];
description = "A near drop-in replacement for `rm` that uses the [FreeDesktop trash bin](https://specifications.freedesktop.org/trash-spec/trashspec-latest.html).";
homepage = "https://github.com/rushsteve1/trash-d"; homepage = "https://github.com/rushsteve1/trash-d";
license = with lib.licenses; [mit]; description = ''
A near drop-in replacement for `rm` that uses the
[FreeDesktop trash bin](https://specifications.freedesktop.org/trash-spec/trashspec-latest.html).
'';
}; };
} }

View file

@ -1,7 +1,9 @@
# From nixpkgs 4c0061c983a2bcb888f5c478cfb7631ec1090c22 # From nixpkgs 4c0061c983a2bcb888f5c478cfb7631ec1090c22
{ {
# nix build inputs
lib, lib,
fetchPypi, fetchPypi,
# deps
python3Packages, python3Packages,
}: }:
python3Packages.buildPythonPackage rec { python3Packages.buildPythonPackage rec {
@ -58,10 +60,12 @@ python3Packages.buildPythonPackage rec {
]; ];
}; };
meta = with lib; { meta = {
description = "Powerful, sanity-friendly HTTP client for Python"; license = lib.licenses.mit;
homepage = "https://github.com/shazow/urllib3"; homepage = "https://github.com/shazow/urllib3";
changelog = "https://github.com/urllib3/urllib3/blob/${version}/CHANGES.rst"; changelog = "https://github.com/urllib3/urllib3/blob/${version}/CHANGES.rst";
license = licenses.mit; description = ''
Powerful, sanity-friendly HTTP client for Python.
'';
}; };
} }