Merge master into haskell-updates
This commit is contained in:
commit
05f9a72c0e
5610 changed files with 8758 additions and 1896 deletions
|
@ -658,14 +658,18 @@ This creates a derivation with a directory structure like the following:
|
|||
|
||||
## `writeReferencesToFile` {#trivial-builder-writeReferencesToFile}
|
||||
|
||||
Writes the closure of transitive dependencies to a file.
|
||||
Deprecated. Use [`writeClosure`](#trivial-builder-writeClosure) instead.
|
||||
|
||||
This produces the equivalent of `nix-store -q --requisites`.
|
||||
## `writeClosure` {#trivial-builder-writeClosure}
|
||||
|
||||
Given a list of [store paths](https://nixos.org/manual/nix/stable/glossary#gloss-store-path) (or string-like expressions coercible to store paths), write their collective [closure](https://nixos.org/manual/nix/stable/glossary#gloss-closure) to a text file.
|
||||
|
||||
The result is equivalent to the output of `nix-store -q --requisites`.
|
||||
|
||||
For example,
|
||||
|
||||
```nix
|
||||
writeReferencesToFile (writeScriptBin "hi" ''${hello}/bin/hello'')
|
||||
writeClosure [ (writeScriptBin "hi" ''${hello}/bin/hello'') ]
|
||||
```
|
||||
|
||||
produces an output path `/nix/store/<hash>-runtime-deps` containing
|
||||
|
|
|
@ -144,4 +144,4 @@ All new projects should use the CUDA redistributables available in [`cudaPackage
|
|||
| Find libraries | `configurePhase` | Missing dependency on a `dev` output | Add the missing dependency | The `dev` output typically contain CMake configuration files |
|
||||
| Find libraries | `buildPhase` or `patchelf` | Missing dependency on a `lib` or `static` output | Add the missing dependency | The `lib` or `static` output typically contain the libraries |
|
||||
|
||||
In the scenario you are unable to run the resulting binary: this is arguably the most complicated as it could be any combination of the previous reasons. This type of failure typically occurs when a library attempts to load or open a library it depends on that it does not declare in its `DT_NEEDED` section. As a first step, ensure that dependencies are patched with [`cudaPackages.autoAddOpenGLRunpath`](https://search.nixos.org/packages?channel=unstable&type=packages&query=cudaPackages.autoAddOpenGLRunpath). Failing that, try running the application with [`nixGL`](https://github.com/guibou/nixGL) or a similar wrapper tool. If that works, it likely means that the application is attempting to load a library that is not in the `RPATH` or `RUNPATH` of the binary.
|
||||
In the scenario you are unable to run the resulting binary: this is arguably the most complicated as it could be any combination of the previous reasons. This type of failure typically occurs when a library attempts to load or open a library it depends on that it does not declare in its `DT_NEEDED` section. As a first step, ensure that dependencies are patched with [`cudaPackages.autoAddDriverRunpath`](https://search.nixos.org/packages?channel=unstable&type=packages&query=cudaPackages.autoAddDriverRunpath). Failing that, try running the application with [`nixGL`](https://github.com/guibou/nixGL) or a similar wrapper tool. If that works, it likely means that the application is attempting to load a library that is not in the `RPATH` or `RUNPATH` of the binary.
|
||||
|
|
|
@ -4,12 +4,31 @@ Ant-based Java packages are typically built from source as follows:
|
|||
|
||||
```nix
|
||||
stdenv.mkDerivation {
|
||||
name = "...";
|
||||
pname = "...";
|
||||
version = "...";
|
||||
|
||||
src = fetchurl { ... };
|
||||
|
||||
nativeBuildInputs = [ jdk ant ];
|
||||
nativeBuildInputs = [
|
||||
ant
|
||||
jdk
|
||||
stripJavaArchivesHook # removes timestamp metadata from jar files
|
||||
];
|
||||
|
||||
buildPhase = "ant";
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
ant # build the project using ant
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
# copy generated jar file(s) to an appropriate location in $out
|
||||
install -Dm644 build/foo.jar $out/share/java/foo.jar
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -17,6 +36,10 @@ Note that `jdk` is an alias for the OpenJDK (self-built where available,
|
|||
or pre-built via Zulu). Platforms with OpenJDK not (yet) in Nixpkgs
|
||||
(`Aarch32`, `Aarch64`) point to the (unfree) `oraclejdk`.
|
||||
|
||||
Also note that not using `stripJavaArchivesHook` will likely cause the
|
||||
generated `.jar` files to be non-deterministic, which is not optimal.
|
||||
Using it, however, does not always guarantee reproducibility.
|
||||
|
||||
JAR files that are intended to be used by other packages should be
|
||||
installed in `$out/share/java`. JDKs have a stdenv setup hook that add
|
||||
any JARs in the `share/java` directories of the build inputs to the
|
||||
|
|
|
@ -6276,6 +6276,16 @@
|
|||
githubId = 541748;
|
||||
name = "Felipe Espinoza";
|
||||
};
|
||||
federicoschonborn = {
|
||||
name = "Federico Damián Schonborn";
|
||||
email = "federicoschonborn@disroot.org";
|
||||
github = "FedericoSchonborn";
|
||||
githubId = 62166915;
|
||||
matrix = "@FedericoDSchonborn:matrix.org";
|
||||
keys = [
|
||||
{ fingerprint = "C43F 4052 D289 3B73 33F8 0259 E4F6 F544 DE9E 29E8"; }
|
||||
];
|
||||
};
|
||||
fedx-sudo = {
|
||||
email = "fedx-sudo@pm.me";
|
||||
github = "FedX-sudo";
|
||||
|
@ -20952,6 +20962,12 @@
|
|||
githubId = 15619766;
|
||||
name = "wldhx";
|
||||
};
|
||||
w-lfchen = {
|
||||
email = "w-lfchen@posteo.net";
|
||||
github = "w-lfchen";
|
||||
githubId = 115360611;
|
||||
name = "Wölfchen";
|
||||
};
|
||||
wmertens = {
|
||||
email = "Wout.Mertens@gmail.com";
|
||||
github = "wmertens";
|
||||
|
|
|
@ -21,6 +21,7 @@ stdenv.mkDerivation {
|
|||
meta = {
|
||||
maintainers = with lib.maintainers; [ eelco ];
|
||||
description = "Utility to generate a Nix expression for a Perl package from CPAN";
|
||||
mainProgram = "nix-generate-from-cpan";
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ stdenv.mkDerivation {
|
|||
meta = with lib; {
|
||||
maintainers = [ maintainers.eelco ];
|
||||
description = "A utility for Nixpkgs contributors to check Nixpkgs for common errors";
|
||||
mainProgram = "nixpkgs-lint";
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -99,6 +99,7 @@ with lib.maintainers; {
|
|||
budgie = {
|
||||
members = [
|
||||
bobby285271
|
||||
federicoschonborn
|
||||
];
|
||||
scope = "Maintain Budgie desktop environment";
|
||||
shortName = "Budgie";
|
||||
|
|
|
@ -171,6 +171,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
|
|||
|
||||
- Invidious has changed its default database username from `kemal` to `invidious`. Setups involving an externally provisioned database (i.e. `services.invidious.database.createLocally == false`) should adjust their configuration accordingly. The old `kemal` user will not be removed automatically even when the database is provisioned automatically.(https://github.com/NixOS/nixpkgs/pull/265857)
|
||||
|
||||
- `writeReferencesToFile` is deprecated in favour of the new trivial build helper `writeClosure`. The latter accepts a list of paths and has an unambiguous name and cleaner implementation.
|
||||
|
||||
- `inetutils` now has a lower priority to avoid shadowing the commonly used `util-linux`. If one wishes to restore the default priority, simply use `lib.setPrio 5 inetutils` or override with `meta.priority = 5`.
|
||||
|
||||
- `paperless`' `services.paperless.extraConfig` setting has been removed and converted to the freeform type and option named `services.paperless.settings`.
|
||||
|
@ -454,3 +456,6 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
|
|||
The previous native backends remain available but are now minimally maintained. Refer to [upstream documentation](https://doc.qt.io/qt-6/qtmultimedia-index.html#ffmpeg-as-the-default-backend) for further details about each platform.
|
||||
|
||||
- The oil shell's c++ version is now available as `oils-for-unix`. The python version is still available as `oil`
|
||||
|
||||
- `documentation.man.mandoc` now by default uses `MANPATH` to set the directories where mandoc will search for manual pages.
|
||||
This enables mandoc to find manual pages in Nix profiles. To set the manual search paths via the `mandoc.conf` configuration file like before, use `documentation.man.mandoc.settings.manpath` instead.
|
||||
|
|
|
@ -352,7 +352,7 @@ in
|
|||
show-trace = true;
|
||||
|
||||
system-features = [ "big-parallel" "kvm" "recursive-nix" ];
|
||||
sandbox-paths = { "/bin/sh" = "''${pkgs.busybox-sandbox-shell.out}/bin/busybox"; };
|
||||
sandbox-paths = [ "/bin/sh=''${pkgs.busybox-sandbox-shell.out}/bin/busybox" ];
|
||||
}
|
||||
'';
|
||||
description = lib.mdDoc ''
|
||||
|
|
|
@ -17,6 +17,8 @@ let
|
|||
)
|
||||
output
|
||||
);
|
||||
|
||||
makeLeadingSlashes = map (path: if builtins.substring 0 1 path != "/" then "/${path}" else path);
|
||||
in
|
||||
{
|
||||
meta.maintainers = [ lib.maintainers.sternenseemann ];
|
||||
|
@ -29,6 +31,7 @@ in
|
|||
type = with lib.types; listOf str;
|
||||
default = [ "share/man" ];
|
||||
example = lib.literalExpression "[ \"share/man\" \"share/man/fr\" ]";
|
||||
apply = makeLeadingSlashes;
|
||||
description = ''
|
||||
Change the paths included in the MANPATH environment variable,
|
||||
i. e. the directories where {manpage}`man(1)`
|
||||
|
@ -41,6 +44,28 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
cachePath = lib.mkOption {
|
||||
type = with lib.types; listOf str;
|
||||
default = cfg.manPath;
|
||||
defaultText = lib.literalExpression "config.documentation.man.mandoc.manPath";
|
||||
example = lib.literalExpression "[ \"share/man\" \"share/man/fr\" ]";
|
||||
apply = makeLeadingSlashes;
|
||||
description = ''
|
||||
Change the paths where mandoc {manpage}`makewhatis(8)`generates the
|
||||
manual page index caches. {option}`documentation.man.generateCaches`
|
||||
should be enabled to allow cache generation. This list should only
|
||||
include the paths to manpages installed in the system configuration,
|
||||
i. e. /run/current-system/sw/share/man. {manpage}`makewhatis(8)`
|
||||
creates a database in each directory using the files
|
||||
`mansection/[arch/]title.section` and `catsection/[arch/]title.0`
|
||||
in it. If a directory contains no manual pages, no database is
|
||||
created in that directory.
|
||||
This option only needs to be set manually if extra paths should be
|
||||
indexed or {option}`documentation.man.manPath` contains paths that
|
||||
can't be indexed.
|
||||
'';
|
||||
};
|
||||
|
||||
package = lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.mandoc;
|
||||
|
@ -178,19 +203,14 @@ in
|
|||
# TODO(@sternenseemman): fix symlinked directories not getting indexed,
|
||||
# see: https://inbox.vuxu.org/mandoc-tech/20210906171231.GF83680@athene.usta.de/T/#e85f773c1781e3fef85562b2794f9cad7b2909a3c
|
||||
extraSetup = lib.mkIf config.documentation.man.generateCaches ''
|
||||
for man_path in ${
|
||||
lib.concatMapStringsSep " " (path:
|
||||
"$out/" + lib.escapeShellArg path
|
||||
) cfg.manPath} ${lib.concatMapStringsSep " " (path:
|
||||
lib.escapeShellArg path) cfg.settings.manpath
|
||||
}
|
||||
for man_path in ${lib.concatMapStringsSep " " (path: "$out" + lib.escapeShellArg path) cfg.cachePath}
|
||||
do
|
||||
[[ -d "$man_path" ]] && ${makewhatis} -T utf8 $man_path
|
||||
done
|
||||
'';
|
||||
|
||||
# tell mandoc the paths containing man pages
|
||||
profileRelativeSessionVariables."MANPATH" = map (path: if builtins.substring 0 1 path != "/" then "/${path}" else path) cfg.manPath;
|
||||
profileRelativeSessionVariables."MANPATH" = lib.mkIf (cfg.manPath != [ ]) cfg.manPath;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -51,14 +51,6 @@ in
|
|||
setuid = false;
|
||||
setgid = true;
|
||||
};
|
||||
|
||||
"1Password-KeyringHelper" = {
|
||||
source = "${package}/share/1password/1Password-KeyringHelper";
|
||||
owner = "root";
|
||||
group = "onepassword";
|
||||
setuid = true;
|
||||
setgid = true;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
|
|
@ -1439,6 +1439,8 @@ in {
|
|||
nodejs
|
||||
gnupg
|
||||
|
||||
"${cfg.packages.gitlab}/share/gitlab/vendor/gems/sidekiq-${cfg.packages.gitlab.rubyEnv.gems.sidekiq.version}"
|
||||
|
||||
# Needed for GitLab project imports
|
||||
gnutar
|
||||
gzip
|
||||
|
@ -1452,7 +1454,12 @@ in {
|
|||
TimeoutSec = "infinity";
|
||||
Restart = "always";
|
||||
WorkingDirectory = "${cfg.packages.gitlab}/share/gitlab";
|
||||
ExecStart="${cfg.packages.gitlab.rubyEnv}/bin/sidekiq -C \"${cfg.packages.gitlab}/share/gitlab/config/sidekiq_queues.yml\" -e production";
|
||||
ExecStart = utils.escapeSystemdExecArgs [
|
||||
"${cfg.packages.gitlab}/share/gitlab/bin/sidekiq-cluster"
|
||||
"-e" "production"
|
||||
"-r" "."
|
||||
"*" # all queue groups
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -1550,7 +1557,7 @@ in {
|
|||
gnutar
|
||||
gzip
|
||||
openssh
|
||||
gitlab-workhorse
|
||||
cfg.packages.gitlab-workhorse
|
||||
];
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
|
|
|
@ -236,9 +236,9 @@ in
|
|||
};
|
||||
|
||||
services.hedgedoc.settings = {
|
||||
defaultNotePath = lib.mkDefault "${cfg.package}/public/default.md";
|
||||
docsPath = lib.mkDefault "${cfg.package}/public/docs";
|
||||
viewPath = lib.mkDefault "${cfg.package}/public/views";
|
||||
defaultNotePath = lib.mkDefault "${cfg.package}/share/hedgedoc/public/default.md";
|
||||
docsPath = lib.mkDefault "${cfg.package}/share/hedgedoc/public/docs";
|
||||
viewPath = lib.mkDefault "${cfg.package}/share/hedgedoc/public/views";
|
||||
};
|
||||
|
||||
systemd.services.hedgedoc = {
|
||||
|
@ -263,7 +263,7 @@ in
|
|||
Group = name;
|
||||
|
||||
Restart = "always";
|
||||
ExecStart = "${cfg.package}/bin/hedgedoc";
|
||||
ExecStart = lib.getExe cfg.package;
|
||||
RuntimeDirectory = [ name ];
|
||||
StateDirectory = [ name ];
|
||||
WorkingDirectory = "/run/${name}";
|
||||
|
|
|
@ -44,6 +44,8 @@ let
|
|||
enableSshSocket = config.services.openssh.startWhenNeeded;
|
||||
};
|
||||
in {
|
||||
meta.maintainers = lib.teams.budgie.members;
|
||||
|
||||
options = {
|
||||
services.xserver.desktopManager.budgie = {
|
||||
enable = mkEnableOption (mdDoc "the Budgie desktop");
|
||||
|
|
|
@ -233,7 +233,9 @@ in
|
|||
symlinks because modprobe only supports one directory.
|
||||
'';
|
||||
# Convert the list of path to only one path.
|
||||
apply = pkgs.aggregateModules;
|
||||
apply = let
|
||||
kernel-name = config.boot.kernelPackages.kernel.name or "kernel";
|
||||
in modules: (pkgs.aggregateModules modules).override { name = kernel-name + "-modules"; };
|
||||
};
|
||||
|
||||
system.requiredKernelConfig = mkOption {
|
||||
|
|
|
@ -13,15 +13,11 @@ let
|
|||
|
||||
kernel-name = config.boot.kernelPackages.kernel.name or "kernel";
|
||||
|
||||
modulesTree = config.system.modulesTree.override { name = kernel-name + "-modules"; };
|
||||
firmware = config.hardware.firmware;
|
||||
|
||||
|
||||
# Determine the set of modules that we need to mount the root FS.
|
||||
modulesClosure = pkgs.makeModulesClosure {
|
||||
rootModules = config.boot.initrd.availableKernelModules ++ config.boot.initrd.kernelModules;
|
||||
kernel = modulesTree;
|
||||
firmware = firmware;
|
||||
kernel = config.system.modulesTree;
|
||||
firmware = config.hardware.firmware;
|
||||
allowMissing = false;
|
||||
};
|
||||
|
||||
|
|
|
@ -91,13 +91,11 @@ let
|
|||
};
|
||||
|
||||
kernel-name = config.boot.kernelPackages.kernel.name or "kernel";
|
||||
modulesTree = config.system.modulesTree.override { name = kernel-name + "-modules"; };
|
||||
firmware = config.hardware.firmware;
|
||||
# Determine the set of modules that we need to mount the root FS.
|
||||
modulesClosure = pkgs.makeModulesClosure {
|
||||
rootModules = config.boot.initrd.availableKernelModules ++ config.boot.initrd.kernelModules;
|
||||
kernel = modulesTree;
|
||||
firmware = firmware;
|
||||
kernel = config.system.modulesTree;
|
||||
firmware = config.hardware.firmware;
|
||||
allowMissing = false;
|
||||
};
|
||||
|
||||
|
|
|
@ -61,14 +61,15 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
|||
machine.succeed(f"{cmd} | grep 'XDG_CURRENT_DESKTOP' | grep 'Budgie:GNOME'")
|
||||
machine.succeed(f"{cmd} | grep 'BUDGIE_PLUGIN_DATADIR' | grep '${pkgs.budgie.budgie-desktop-with-plugins.pname}'")
|
||||
|
||||
with subtest("Open Budgie Control Center"):
|
||||
with subtest("Open run dialog"):
|
||||
machine.send_key("alt-f2")
|
||||
machine.wait_until_succeeds("pgrep -f budgie-run-dialog")
|
||||
machine.wait_for_window("budgie-run-dialog")
|
||||
machine.sleep(3)
|
||||
machine.send_chars("Budgie Control Center", delay=0.5)
|
||||
machine.screenshot("quick_search")
|
||||
machine.send_chars("\n")
|
||||
machine.sleep(2)
|
||||
machine.screenshot("run_dialog")
|
||||
machine.send_key("esc")
|
||||
|
||||
with subtest("Open Budgie Control Center"):
|
||||
machine.succeed("${su "budgie-control-center >&2 &"}")
|
||||
machine.wait_for_window("Budgie Control Center")
|
||||
|
||||
with subtest("Lock the screen"):
|
||||
|
|
|
@ -21,7 +21,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
|
|||
''
|
||||
machine.wait_for_x()
|
||||
machine.succeed("echo '<!DOCTYPE html><html><body><h1>Hello world</h1></body></html>' > page.html")
|
||||
machine.execute("ladybird file://$(pwd)/page.html >&2 &")
|
||||
machine.execute("Ladybird file://$(pwd)/page.html >&2 &")
|
||||
machine.wait_for_window("Ladybird")
|
||||
machine.sleep(5)
|
||||
machine.wait_for_text("Hello world")
|
||||
|
|
|
@ -93,23 +93,5 @@ let
|
|||
|
||||
inherit (import ../ssh-keys.nix pkgs) snakeOilPrivateKey snakeOilPublicKey;
|
||||
|
||||
/*
|
||||
Return a store path with a closure containing everything including
|
||||
derivations and all build dependency outputs, all the way down.
|
||||
*/
|
||||
allDrvOutputs = pkg:
|
||||
let name = "allDrvOutputs-${pkg.pname or pkg.name or "unknown"}";
|
||||
in
|
||||
pkgs.runCommand name { refs = pkgs.writeReferencesToFile pkg.drvPath; } ''
|
||||
touch $out
|
||||
while read ref; do
|
||||
case $ref in
|
||||
*.drv)
|
||||
cat $ref >>$out
|
||||
;;
|
||||
esac
|
||||
done <$refs
|
||||
'';
|
||||
|
||||
in
|
||||
tests
|
||||
|
|
|
@ -38,6 +38,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "GUI for alsa controls presented by Focusrite Scarlett Gen 2/3 Mixer Driver";
|
||||
mainProgram = "alsa-scarlett-gui";
|
||||
homepage = "https://github.com/geoffreybennett/alsa-scarlett-gui";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ sebtm ];
|
||||
|
|
|
@ -39,6 +39,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Realtime modular synthesizer for ALSA";
|
||||
mainProgram = "ams";
|
||||
homepage = "https://alsamodular.sourceforge.net";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -52,6 +52,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "GTK client for MPD (Music player daemon)";
|
||||
mainProgram = "ario";
|
||||
homepage = "https://ario-player.sourceforge.net/";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = [ maintainers.garrison ];
|
||||
|
|
|
@ -36,6 +36,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A graphical Audio CD ripper and encoder for Linux";
|
||||
mainProgram = "asunder";
|
||||
homepage = "http://littlesvr.ca/asunder/index.php";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ mudri ];
|
||||
|
|
|
@ -190,6 +190,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Sound editor with graphical UI";
|
||||
mainProgram = "audacity";
|
||||
homepage = "https://www.audacityteam.org";
|
||||
changelog = "https://github.com/audacity/audacity/releases";
|
||||
license = with licenses; [
|
||||
|
|
|
@ -27,6 +27,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Audio recorder for GNOME and Unity Desktops";
|
||||
mainProgram = "audio-recorder";
|
||||
longDescription = ''
|
||||
This program allows you to record your favourite music or audio to a file.
|
||||
It can record audio from your system soundcard, microphones, browsers and
|
||||
|
|
|
@ -76,6 +76,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A tracker for YM2608 (OPNA) which was used in NEC PC-8801/9801 series computers";
|
||||
mainProgram = "BambooTracker";
|
||||
homepage = "https://bambootracker.github.io/BambooTracker/";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.all;
|
||||
|
|
|
@ -27,11 +27,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "bitwig-studio";
|
||||
version = "5.1.3";
|
||||
version = "5.1.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://downloads.bitwig.com/stable/${version}/${pname}-${version}.deb";
|
||||
sha256 = "sha256-1/iKezOD2HCym6JBXRa9rGpjolJjrxRZA4vwfgZyVng=";
|
||||
sha256 = "sha256-U1Qp7/7kAr1IEcv256I2J/sb5MYxfR20Pi5N8WaVh2U=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ dpkg makeWrapper wrapGAppsHook ];
|
||||
|
|
|
@ -59,6 +59,7 @@ python3Packages.buildPythonApplication rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://github.com/rafaelmardojai/blanket";
|
||||
description = "Listen to different sounds";
|
||||
mainProgram = "blanket";
|
||||
maintainers = with maintainers; [ onny ];
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -50,6 +50,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Nostalgia bucklespring keyboard sound";
|
||||
mainProgram = "buckle";
|
||||
longDescription = ''
|
||||
When built with libinput (wayland or bare console),
|
||||
users need to be in the input group to use this:
|
||||
|
|
|
@ -111,6 +111,7 @@ mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A graphical client for MPD";
|
||||
mainProgram = "cantata";
|
||||
homepage = "https://github.com/cdrummond/cantata";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ peterhoeg ];
|
||||
|
|
|
@ -20,6 +20,7 @@ stdenv.mkDerivation rec {
|
|||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.unix;
|
||||
description = "Command-line utility to get CDDB discid information from a CD-ROM disc";
|
||||
mainProgram = "cd-discid";
|
||||
|
||||
longDescription = ''
|
||||
cd-discid is a backend utility to get CDDB discid information
|
||||
|
|
|
@ -29,6 +29,7 @@ python3.pkgs.buildPythonApplication rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://github.com/xi/cplay-ng";
|
||||
description = "Simple curses audio player";
|
||||
mainProgram = "cplay-ng";
|
||||
longDescription = ''
|
||||
cplay is a minimalist music player with a textual user interface written
|
||||
in Python. It aims to provide a power-user-friendly interface with simple
|
||||
|
|
|
@ -29,6 +29,7 @@ python3Packages.buildPythonApplication rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Command line radio player";
|
||||
mainProgram = "curseradio";
|
||||
homepage = "https://github.com/chronitis/curseradio";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.eyjhb ];
|
||||
|
|
|
@ -130,6 +130,7 @@ in clangStdenv.mkDerivation {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Ultimate Music Player for GNU/Linux";
|
||||
mainProgram = "deadbeef";
|
||||
homepage = "http://deadbeef.sourceforge.net/";
|
||||
downloadPage = "https://github.com/DeaDBeeF-Player/deadbeef";
|
||||
license = licenses.gpl2;
|
||||
|
|
|
@ -49,6 +49,7 @@ in mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Analyse and compare audio files in time and frequency";
|
||||
mainProgram = "dfasma";
|
||||
longDescription = ''
|
||||
DFasma is free open-source software to compare audio files by time and
|
||||
frequency. The comparison is first visual, using wavforms and spectra. It
|
||||
|
|
|
@ -22,6 +22,7 @@ python3Packages.buildPythonApplication rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Compute the DR14 of a given audio file according to the procedure described by the Pleasurize Music Foundation";
|
||||
mainProgram = "dr14_tmeter";
|
||||
license = licenses.gpl3Plus;
|
||||
homepage = "http://dr14tmeter.sourceforge.net/";
|
||||
maintainers = [ maintainers.adisbladis ];
|
||||
|
|
|
@ -15,6 +15,7 @@ mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "An old-school drum-kit sampler synthesizer with stereo fx";
|
||||
mainProgram = "drumkv1_jack";
|
||||
homepage = "http://drumkv1.sourceforge.net/";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -73,6 +73,7 @@ in python.pkgs.buildPythonApplication {
|
|||
|
||||
meta = {
|
||||
description = "ABC music notation editor";
|
||||
mainProgram = "easyabc";
|
||||
homepage = "https://easyabc.sourceforge.net/";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
platforms = lib.platforms.linux;
|
||||
|
|
|
@ -33,6 +33,7 @@ in stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "View and edit tags for various audio files";
|
||||
mainProgram = "easytag";
|
||||
homepage = "https://wiki.gnome.org/Apps/EasyTAG";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ ];
|
||||
|
|
|
@ -30,6 +30,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Compact open source software speech synthesizer";
|
||||
mainProgram = "espeak";
|
||||
homepage = "https://espeak.sourceforge.net/";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -55,6 +55,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Phoneme editor for espeak";
|
||||
mainProgram = "espeakedit";
|
||||
homepage = "https://espeak.sourceforge.net/";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -93,6 +93,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://www.exaile.org/";
|
||||
description = "A music player with a simple interface and powerful music management capabilities";
|
||||
mainProgram = "exaile";
|
||||
license = licenses.gpl2Only;
|
||||
maintainers = with maintainers; [ ryneeverett ];
|
||||
platforms = platforms.all;
|
||||
|
|
|
@ -86,6 +86,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A standalone just-in-time Faust compiler";
|
||||
mainProgram = "FaustLive";
|
||||
longDescription = ''
|
||||
FaustLive is a standalone just-in-time Faust compiler. It tries to bring
|
||||
together the convenience of a standalone interpreted language with the
|
||||
|
|
|
@ -19,6 +19,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Command line encoder frontend for libfdk-aac encoder";
|
||||
mainProgram = "fdkaac";
|
||||
longDescription = ''
|
||||
fdkaac reads linear PCM audio in either WAV, raw PCM, or CAF format,
|
||||
and encodes it into either M4A / AAC file.
|
||||
|
|
|
@ -37,6 +37,7 @@ python3Packages.buildPythonApplication rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Multi process, clustered, FLAC to multi codec audio converter with tagging support";
|
||||
mainProgram = "flac2all";
|
||||
homepage = "https://github.com/ZivaVatra/flac2all";
|
||||
license = licenses.gpl3;
|
||||
# TODO: This has only been tested on Linux, but may work on Mac too.
|
||||
|
|
|
@ -38,6 +38,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with lib; {
|
||||
description =
|
||||
"Extracts audio tracks from an audio CD image to separate tracks";
|
||||
mainProgram = "flacon";
|
||||
homepage = "https://flacon.github.io/";
|
||||
license = licenses.lgpl21;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -49,6 +49,7 @@ python3Packages.buildPythonApplication rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A real-time audio analyzer";
|
||||
mainProgram = "friture";
|
||||
homepage = "https://friture.org/";
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.linux; # fails on Darwin
|
||||
|
|
|
@ -51,6 +51,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A beautiful, fast, fluent, light weight music player written in GTK4";
|
||||
mainProgram = "g4music";
|
||||
homepage = "https://gitlab.gnome.org/neithern/g4music";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ magnouvean ];
|
||||
|
|
|
@ -69,6 +69,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A free, minimal, hardcore audio tool for DJs, live performers and electronic musicians";
|
||||
mainProgram = "giada";
|
||||
homepage = "https://giadamusic.com/";
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ kashw2 ];
|
||||
|
|
|
@ -68,6 +68,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Listen to your favorite podcasts";
|
||||
mainProgram = "gnome-podcasts";
|
||||
homepage = "https://wiki.gnome.org/Apps/Podcasts";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = teams.gnome.members;
|
||||
|
|
|
@ -18,6 +18,7 @@ with pythonPackages; buildPythonApplication rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://github.com/manolomartinez/greg";
|
||||
description = "A command-line podcast aggregator";
|
||||
mainProgram = "greg";
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ edwtjo ];
|
||||
};
|
||||
|
|
|
@ -117,6 +117,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A virtual guitar amplifier for Linux running with JACK";
|
||||
mainProgram = "guitarix";
|
||||
longDescription = ''
|
||||
guitarix is a virtual guitar amplifier for Linux running with
|
||||
JACK (Jack Audio Connection Kit). It is free as in speech and
|
||||
|
|
|
@ -41,6 +41,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "One music sequencer for all major platforms, both desktop and mobile";
|
||||
mainProgram = "helio";
|
||||
homepage = "https://helio.fm/";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = [ maintainers.suhr ];
|
||||
|
|
|
@ -67,6 +67,7 @@ buildPythonApplication {
|
|||
homepage = "https://kryogenix.org/code/hushboard/";
|
||||
license = licenses.mit;
|
||||
description = "Mute your microphone while typing";
|
||||
mainProgram = "hushboard";
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ sersorrel ];
|
||||
};
|
||||
|
|
|
@ -21,6 +21,7 @@ mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Graphical open-source sequencer";
|
||||
mainProgram = "iannix";
|
||||
homepage = "https://www.iannix.org/";
|
||||
license = licenses.lgpl3;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -62,6 +62,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A real-time pitch and formant tracking software";
|
||||
mainProgram = "in-formant";
|
||||
homepage = "https://github.com/in-formant/in-formant";
|
||||
license = licenses.asl20;
|
||||
# currently broken on i686-linux and aarch64-linux due to other nixpkgs dependencies
|
||||
|
|
|
@ -54,6 +54,7 @@ python3Packages.buildPythonApplication rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Sound input/output selector indicator for Linux";
|
||||
mainProgram = "indicator-sound-switcher";
|
||||
homepage = "https://yktoo.com/en/software/sound-switcher-indicator/";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ alexnortung ];
|
||||
|
|
|
@ -24,6 +24,7 @@ mkDerivation rec {
|
|||
homepage = "https://github.com/kripton/jack_autoconnect";
|
||||
description =
|
||||
"Tiny application that reacts on port registrations by clients and connects them";
|
||||
mainProgram = "jack_autoconnect";
|
||||
maintainers = with maintainers; [ unclechu ];
|
||||
license = licenses.gpl2Only;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -25,6 +25,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A program for recording soundfiles with jack";
|
||||
mainProgram = "jack_capture";
|
||||
homepage = "https://github.com/kmatheussen/jack_capture/";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ goibhniu orivej ];
|
||||
|
|
|
@ -19,6 +19,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A simple waveform viewer for JACK";
|
||||
mainProgram = "jack_oscrolloscope";
|
||||
homepage = "http://das.nasophon.de/jack_oscrolloscope";
|
||||
license = licenses.gpl2;
|
||||
maintainers = [ maintainers.goibhniu ];
|
||||
|
|
|
@ -36,6 +36,7 @@ mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Matrix-Mixer for the Jack-Audio-connection-Kit";
|
||||
mainProgram = "jackmix";
|
||||
homepage = "https://github.com/kampfschlaefer/jackmix";
|
||||
license = licenses.gpl2Only;
|
||||
maintainers = with maintainers; [ kampfschlaefer ];
|
||||
|
|
|
@ -55,6 +55,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Multi-machine audio network performance over the Internet";
|
||||
mainProgram = "jacktrip";
|
||||
homepage = "https://jacktrip.github.io/jacktrip/";
|
||||
license = with licenses; [ gpl3 lgpl3 mit ];
|
||||
maintainers = [ maintainers.iwanb ];
|
||||
|
|
|
@ -80,6 +80,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
meta = {
|
||||
broken = (stdenv.isLinux && stdenv.isAarch64);
|
||||
description = "An audio effect processor for PipeWire clients";
|
||||
mainProgram = "jamesdsp";
|
||||
homepage = "https://github.com/Audio4Linux/JDSP4Linux";
|
||||
license = lib.licenses.gpl3Only;
|
||||
maintainers = with lib.maintainers; [ pasqui23 rewine ];
|
||||
|
|
|
@ -50,6 +50,7 @@ rustPlatform.buildRustPackage rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Open Source Spotify client library and playback daemon";
|
||||
mainProgram = "librespot";
|
||||
homepage = "https://github.com/librespot-org/librespot";
|
||||
changelog = "https://github.com/librespot-org/librespot/blob/v${version}/CHANGELOG.md";
|
||||
license = with licenses; [ mit ];
|
||||
|
|
|
@ -42,6 +42,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = {
|
||||
description = "Not a Guitar-Only tuner";
|
||||
mainProgram = "lingot";
|
||||
homepage = "https://www.nongnu.org/lingot/";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
platforms = with lib.platforms; linux;
|
||||
|
|
|
@ -28,6 +28,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Graphical companion application for various bridges like LinVst, etc";
|
||||
mainProgram = "linvstmanager";
|
||||
homepage = "https://github.com/Goli4thus/linvstmanager";
|
||||
license = with licenses; [ gpl3 ];
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -48,6 +48,7 @@ mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "DAW similar to FL Studio (music production software)";
|
||||
mainProgram = "lmms";
|
||||
homepage = "https://lmms.io";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||
|
|
|
@ -55,6 +55,7 @@ python3Packages.buildPythonApplication rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Simple and powerful voice changer for Linux, written in GTK 3";
|
||||
mainProgram = "lyrebird";
|
||||
homepage = "https://github.com/chxrlt/lyrebird";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ OPNA2608 ];
|
||||
|
|
|
@ -65,6 +65,7 @@ mkDerivation rec {
|
|||
broken = stdenv.isDarwin; # test build fails, but the project is not maintained anymore
|
||||
|
||||
description = "Cloud music integration for your desktop";
|
||||
mainProgram = "MellowPlayer";
|
||||
homepage = "https://gitlab.com/ColinDuquesnoy/MellowPlayer";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ kalbasit ];
|
||||
|
|
|
@ -49,6 +49,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Collection of audio level meters with GUI in LV2 plugin format";
|
||||
mainProgram = "x42-meter";
|
||||
homepage = "https://x42.github.io/meters.lv2/";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -31,6 +31,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Graphical program for editing, playing and recording sound files";
|
||||
mainProgram = "mhwaveedit";
|
||||
homepage = "https://github.com/magnush/mhwaveedit";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -66,6 +66,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A small MIDI visualizer tool, using OpenGL";
|
||||
mainProgram = "MIDIVisualizer";
|
||||
homepage = "https://github.com/kosua20/MIDIVisualizer";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.unix;
|
||||
|
|
|
@ -54,6 +54,7 @@ in stdenv.mkDerivation {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Convert MIDI Files to Piano Sheet Music for two hands";
|
||||
mainProgram = "midisheetmusic.mono.exe";
|
||||
homepage = "http://midisheetmusic.com";
|
||||
license = licenses.gpl2;
|
||||
maintainers = [ ];
|
||||
|
|
|
@ -53,6 +53,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A light-weight integrated development environment for the ChucK digital audio programming language";
|
||||
mainProgram = "miniAudicle";
|
||||
homepage = "https://audicle.cs.princeton.edu/mini/";
|
||||
downloadPage = "https://audicle.cs.princeton.edu/mini/linux/";
|
||||
license = licenses.gpl2Plus;
|
||||
|
|
|
@ -142,6 +142,7 @@ mkDerivation rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://mixxx.org";
|
||||
description = "Digital DJ mixing software";
|
||||
mainProgram = "mixxx";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ goibhniu bfortz ];
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -46,6 +46,7 @@ pythonPackages.buildPythonApplication rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://www.mopidy.com/";
|
||||
description = "An extensible music server that plays music from local disk, Spotify, SoundCloud, and more";
|
||||
mainProgram = "mopidy";
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.fpletz ];
|
||||
hydraPlatforms = [];
|
||||
|
|
|
@ -66,6 +66,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Identify any songs in seconds";
|
||||
mainProgram = "mousai";
|
||||
homepage = "https://github.com/SeaDve/Mousai";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ dotlambda ];
|
||||
|
|
|
@ -65,6 +65,7 @@ mkDerivation rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://munt.sourceforge.net/";
|
||||
description = "A synthesizer application built on Qt and libmt32emu";
|
||||
mainProgram = "mt32emu-qt";
|
||||
longDescription = ''
|
||||
mt32emu-qt is a synthesiser application that facilitates both realtime
|
||||
synthesis and conversion of pre-recorded SMF files to WAVE making use of
|
||||
|
|
|
@ -45,6 +45,7 @@ stdenv.mkDerivation rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://munt.sourceforge.net/";
|
||||
description = "Produces a WAVE file from a Standard MIDI file (SMF)";
|
||||
mainProgram = "mt32emu-smf2wav";
|
||||
license = with licenses; [ gpl3Plus ];
|
||||
maintainers = with maintainers; [ OPNA2608 ];
|
||||
platforms = platforms.all;
|
||||
|
|
|
@ -31,6 +31,7 @@ rustPlatform.buildRustPackage rec {
|
|||
meta = with lib; {
|
||||
broken = stdenv.isDarwin;
|
||||
description = "An automatic music sorter (based on ID3 tags)";
|
||||
mainProgram = "muso";
|
||||
homepage = "https://github.com/quebin31/muso";
|
||||
license = with licenses; [ gpl3Plus ];
|
||||
maintainers = with maintainers; [ ];
|
||||
|
|
|
@ -35,6 +35,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Application for practicing playing musical scores and ear training";
|
||||
mainProgram = "nootka";
|
||||
homepage = "https://nootka.sourceforge.io/";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ mmlb orivej ];
|
||||
|
|
|
@ -15,6 +15,7 @@ mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "polyphonic additive synthesizer";
|
||||
mainProgram = "padthv1_jack";
|
||||
homepage = "http://padthv1.sourceforge.net/";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -36,6 +36,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "PulseAudio Preferences";
|
||||
mainProgram = "paprefs";
|
||||
|
||||
longDescription = ''
|
||||
PulseAudio Preferences (paprefs) is a simple GTK based configuration
|
||||
|
|
|
@ -64,6 +64,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "GNOME audio player for transcription";
|
||||
mainProgram = "parlatype";
|
||||
longDescription = ''
|
||||
Parlatype is a minimal audio player for manual speech transcription,
|
||||
written for the GNOME desktop environment. It plays audio sources to
|
||||
|
|
|
@ -42,6 +42,7 @@ buildPythonApplication rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://github.com/Houston4444/Patchance";
|
||||
description = "JACK Patchbay GUI";
|
||||
mainProgram = "patchance";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ orivej ];
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -63,6 +63,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A MIDI file player that teaches you how to play the piano";
|
||||
mainProgram = "pianobooster";
|
||||
homepage = "https://github.com/pianobooster/PianoBooster";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -77,6 +77,7 @@ pythonPackages.buildPythonApplication rec {
|
|||
homepage = "https://picard.musicbrainz.org";
|
||||
changelog = "https://picard.musicbrainz.org/changelog";
|
||||
description = "The official MusicBrainz tagger";
|
||||
mainProgram = "picard";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
|
|
@ -43,6 +43,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Pipewire control GUI program in Qt (Kirigami2)";
|
||||
mainProgram = "pipecontrol";
|
||||
homepage = "https://github.com/portaloffreedom/pipecontrol";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ tilcreator ];
|
||||
|
|
|
@ -34,6 +34,7 @@ pythonPackages.buildPythonApplication rec {
|
|||
meta = with lib; {
|
||||
broken = stdenv.isDarwin;
|
||||
description = "Pandora Internet Radio player for GNOME";
|
||||
mainProgram = "pithos";
|
||||
homepage = "https://pithos.github.io/";
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ obadz ];
|
||||
|
|
|
@ -114,6 +114,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Plugin wrapper around Pure Data to allow patching in a wide selection of DAWs";
|
||||
mainProgram = "plugdata";
|
||||
homepage = "https://plugdata.org/";
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -46,6 +46,7 @@ mkDerivation rec {
|
|||
meta = with lib; {
|
||||
broken = (stdenv.isLinux && stdenv.isAarch64);
|
||||
description = "A soundfont editor for creating musical instruments";
|
||||
mainProgram = "polyphone";
|
||||
homepage = "https://www.polyphone-soundfonts.com/";
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.maxdamantus ];
|
||||
|
|
|
@ -60,6 +60,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
meta = {
|
||||
description = "Doing phonetics by computer";
|
||||
mainProgram = "praat";
|
||||
homepage = "https://www.fon.hum.uva.nl/praat/";
|
||||
license = lib.licenses.gpl2Plus; # Has some 3rd-party code in it though
|
||||
maintainers = with lib.maintainers; [ orivej ];
|
||||
|
|
|
@ -95,6 +95,7 @@ mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A lightweight GTK+ music manager - fork of Consonance Music Manager";
|
||||
mainProgram = "pragha";
|
||||
homepage = "https://pragha-music-player.github.io/";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ mbaeten ];
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "pt2-clone";
|
||||
version = "1.66.1";
|
||||
version = "1.67";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "8bitbubsy";
|
||||
repo = "pt2-clone";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-j7VPC1sj1Q+wL2TBgv06uYLPqym8F57HG1SRvj0Ggeo=";
|
||||
sha256 = "sha256-fTUTXwS6A72zhKkANlSljQVvPeN5rOTyuyb8vLxYfdk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -72,6 +72,7 @@ python3.pkgs.buildPythonApplication rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "An audio tag editor similar to the Windows program, Mp3tag";
|
||||
mainProgram = "puddletag";
|
||||
homepage = "https://docs.puddletag.net";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ peterhoeg dschrempf ];
|
||||
|
|
|
@ -33,6 +33,7 @@ in stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Control pulseaudio volume from the shell or mapped to keyboard shortcuts. No need for alsa-utils";
|
||||
mainProgram = "pulseaudio-ctl";
|
||||
homepage = "https://bbs.archlinux.org/viewtopic.php?id=124513";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ peterhoeg ];
|
||||
|
|
|
@ -67,6 +67,7 @@ python3Packages.buildPythonApplication {
|
|||
|
||||
meta = with lib; {
|
||||
description = "A lightweight streaming server which brings DLNA / UPNP and Chromecast support to PulseAudio and Linux";
|
||||
mainProgram = "pulseaudio-dlna";
|
||||
homepage = "https://github.com/Cygn/pulseaudio-dlna";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ mog ];
|
||||
|
|
|
@ -106,6 +106,7 @@ in stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Limiter, compressor, reverberation, equalizer and auto volume effects for Pulseaudio applications";
|
||||
mainProgram = "pulseeffects";
|
||||
homepage = "https://github.com/wwmm/pulseeffects";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ ];
|
||||
|
|
|
@ -39,6 +39,7 @@ python3Packages.buildPythonApplication rec {
|
|||
meta = with lib; {
|
||||
homepage = "http://www.coderholic.com/pyradio/";
|
||||
description = "Curses based internet radio player";
|
||||
mainProgram = "pyradio";
|
||||
changelog = "https://github.com/coderholic/pyradio/releases/tag/${version}";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ contrun ];
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue