Merge remote-tracking branch 'origin/master' into staging-next

This commit is contained in:
K900 2025-06-06 09:28:07 +03:00
commit c9dd2063b7
457 changed files with 3429 additions and 2192 deletions

View File

@ -21,6 +21,8 @@
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
- Added `rewriteURL` attribute to the nixpkgs `config`, to allow for rewriting the URLs downloaded by `fetchurl`.
- New hardening flags, `strictflexarrays1` and `strictflexarrays3` were made available, corresponding to the gcc/clang options `-fstrict-flex-arrays=1` and `-fstrict-flex-arrays=3` respectively.
## Nixpkgs Library {#sec-nixpkgs-release-25.11-lib}

View File

@ -2896,17 +2896,11 @@
name = "Brandon Elam Barker";
};
bbenne10 = {
email = "Bryan.Bennett@protonmail.com";
email = "Bryan.Bennett+nixpkgs@proton.me";
matrix = "@bryan.bennett:matrix.org";
github = "bbenne10";
githubId = 687376;
name = "Bryan Bennett";
keys = [
{
# compare with https://keybase.io/bbenne10
fingerprint = "41EA 00B4 00F9 6970 1CB2 D3AF EF90 E3E9 8B8F 5C0B";
}
];
};
bbenno = {
email = "nix@bbenno.com";

View File

@ -24,6 +24,8 @@
- [SuiteNumérique Docs](https://github.com/suitenumerique/docs), a collaborative note taking, wiki and documentation web platform and alternative to Notion or Outline. Available as [services.lasuite-docs](#opt-services.lasuite-docs.enable).
[dwl](https://codeberg.org/dwl/dwl), a compact, hackable compositor for Wayland based on wlroots. Available as [programs.dwl](#opt-programs.dwl.enable).
## Backward Incompatibilities {#sec-release-25.11-incompatibilities}
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->

View File

@ -332,6 +332,7 @@
./programs/vivid.nix
./programs/wavemon.nix
./programs/wayland/cardboard.nix
./programs/wayland/dwl.nix
./programs/wayland/gtklock.nix
./programs/wayland/hyprland.nix
./programs/wayland/hyprlock.nix

View File

@ -34,6 +34,12 @@ in
capabilities = "cap_sys_admin+ep";
source = "${package}/bin/gsr-kms-server";
};
security.wrappers."gpu-screen-recorder" = {
owner = "root";
group = "root";
capabilities = "cap_sys_nice+ep";
source = "${package}/bin/gpu-screen-recorder";
};
};
meta.maintainers = with lib.maintainers; [ timschumi ];

View File

@ -0,0 +1,104 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.programs.dwl;
in
{
options.programs.dwl = {
enable = lib.mkEnableOption ''
Dwl is a compact, hackable compositor for Wayland based on wlroots.
You can manually launch Dwl by executing "exec dwl" on a TTY.
'';
package = lib.mkPackageOption pkgs "dwl" {
example = ''
# Lets apply bar patch from:
# https://codeberg.org/dwl/dwl-patches/src/branch/main/patches/bar
(pkgs.dwl.override {
configH = ./dwl-config.h;
}).overrideAttrs (oldAttrs: {
buildInputs =
oldAttrs.buildInputs or []
++ [
pkgs.libdrm
pkgs.fcft
];
patches = oldAttrs.patches or [] ++ [
./bar-0.7.patch
];
});
'';
};
extraSessionCommands = lib.mkOption {
default = "";
type = lib.types.lines;
description = ''
Shell commands executed just before dwl is started.
'';
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
# Create systemd target for dwl session
systemd.user.targets.dwl-session = {
description = "dwl compositor session";
documentation = [ "man:systemd.special(7)" ];
bindsTo = [ "graphical-session.target" ];
wants = [ "graphical-session-pre.target" ];
after = [ "graphical-session-pre.target" ];
};
# Create wrapper script for dwl
environment.etc."xdg/dwl-session" = {
text = ''
#!${pkgs.runtimeShell}
# Import environment variables
${cfg.extraSessionCommands}
# Setup systemd user environment
systemctl --user import-environment DISPLAY WAYLAND_DISPLAY
systemctl --user start dwl-session.target
# Start dwl
exec ${lib.getExe cfg.package}
'';
mode = "0755"; # Make it executable
};
# Create desktop entry for display managers
services.displayManager.sessionPackages =
let
dwlDesktopFile = pkgs.writeTextFile {
name = "dwl-desktop-entry";
destination = "/share/wayland-sessions/dwl.desktop";
text = ''
[Desktop Entry]
Name=dwl
Comment=Dynamic window manager for Wayland
Exec=/etc/xdg/dwl-session
Type=Application
'';
};
dwlSession = pkgs.symlinkJoin {
name = "dwl-session";
paths = [ dwlDesktopFile ];
passthru.providedSessions = [ "dwl" ];
};
in
[ dwlSession ];
# Configure XDG portal for dwl (minimal configuration)
xdg.portal.config.dwl.default = lib.mkDefault [
"wlr"
"gtk"
];
};
meta.maintainers = with lib.maintainers; [ gurjaka ];
}

View File

@ -5,8 +5,6 @@
...
}:
with lib;
let
cfg = config.services.murmur;
forking = cfg.logFile != null;
@ -18,64 +16,49 @@ let
autobanTimeframe=${toString cfg.autobanTimeframe}
autobanTime=${toString cfg.autobanTime}
logfile=${optionalString (cfg.logFile != null) cfg.logFile}
${optionalString forking "pidfile=/run/murmur/murmurd.pid"}
logfile=${lib.optionalString (cfg.logFile != null) cfg.logFile}
${lib.optionalString forking "pidfile=/run/murmur/murmurd.pid"}
welcometext="${cfg.welcometext}"
port=${toString cfg.port}
${optionalString (cfg.hostName != "") "host=${cfg.hostName}"}
${optionalString (cfg.password != "") "serverpassword=${cfg.password}"}
${lib.optionalString (cfg.hostName != "") "host=${cfg.hostName}"}
${lib.optionalString (cfg.password != "") "serverpassword=${cfg.password}"}
bandwidth=${toString cfg.bandwidth}
users=${toString cfg.users}
textmessagelength=${toString cfg.textMsgLength}
imagemessagelength=${toString cfg.imgMsgLength}
allowhtml=${boolToString cfg.allowHtml}
allowhtml=${lib.boolToString cfg.allowHtml}
logdays=${toString cfg.logDays}
bonjour=${boolToString cfg.bonjour}
sendversion=${boolToString cfg.sendVersion}
bonjour=${lib.boolToString cfg.bonjour}
sendversion=${lib.boolToString cfg.sendVersion}
${optionalString (cfg.registerName != "") "registerName=${cfg.registerName}"}
${optionalString (cfg.registerPassword != "") "registerPassword=${cfg.registerPassword}"}
${optionalString (cfg.registerUrl != "") "registerUrl=${cfg.registerUrl}"}
${optionalString (cfg.registerHostname != "") "registerHostname=${cfg.registerHostname}"}
${lib.optionalString (cfg.registerName != "") "registerName=${cfg.registerName}"}
${lib.optionalString (cfg.registerPassword != "") "registerPassword=${cfg.registerPassword}"}
${lib.optionalString (cfg.registerUrl != "") "registerUrl=${cfg.registerUrl}"}
${lib.optionalString (cfg.registerHostname != "") "registerHostname=${cfg.registerHostname}"}
certrequired=${boolToString cfg.clientCertRequired}
${optionalString (cfg.sslCert != "") "sslCert=${cfg.sslCert}"}
${optionalString (cfg.sslKey != "") "sslKey=${cfg.sslKey}"}
${optionalString (cfg.sslCa != "") "sslCA=${cfg.sslCa}"}
certrequired=${lib.boolToString cfg.clientCertRequired}
${lib.optionalString (cfg.sslCert != "") "sslCert=${cfg.sslCert}"}
${lib.optionalString (cfg.sslKey != "") "sslKey=${cfg.sslKey}"}
${lib.optionalString (cfg.sslCa != "") "sslCA=${cfg.sslCa}"}
${optionalString (cfg.dbus != null) "dbus=${cfg.dbus}"}
${lib.optionalString (cfg.dbus != null) "dbus=${cfg.dbus}"}
${cfg.extraConfig}
'';
in
{
imports = [
(mkRenamedOptionModule [ "services" "murmur" "welcome" ] [ "services" "murmur" "welcometext" ])
(mkRemovedOptionModule [ "services" "murmur" "pidfile" ] "Hardcoded to /run/murmur/murmurd.pid now")
];
options = {
services.murmur = {
enable = mkOption {
type = types.bool;
default = false;
description = "If enabled, start the Murmur Mumble server.";
};
enable = lib.mkEnableOption "Mumble server";
openFirewall = mkOption {
type = types.bool;
default = false;
description = ''
Open ports in the firewall for the Murmur Mumble server.
'';
};
openFirewall = lib.mkEnableOption "opening ports in the firewall for the Mumble server";
user = mkOption {
type = types.str;
user = lib.mkOption {
type = lib.types.str;
default = "murmur";
description = ''
The name of an existing user to use to run the service.
@ -83,8 +66,8 @@ in
'';
};
group = mkOption {
type = types.str;
group = lib.mkOption {
type = lib.types.str;
default = "murmur";
description = ''
The name of an existing group to use to run the service.
@ -92,16 +75,16 @@ in
'';
};
stateDir = mkOption {
type = types.path;
stateDir = lib.mkOption {
type = lib.types.path;
default = "/var/lib/murmur";
description = ''
Directory to store data for the server.
'';
};
autobanAttempts = mkOption {
type = types.int;
autobanAttempts = lib.mkOption {
type = lib.types.int;
default = 10;
description = ''
Number of attempts a client is allowed to make in
@ -110,8 +93,8 @@ in
'';
};
autobanTimeframe = mkOption {
type = types.int;
autobanTimeframe = lib.mkOption {
type = lib.types.int;
default = 120;
description = ''
Timeframe in which a client can connect without being banned
@ -119,47 +102,47 @@ in
'';
};
autobanTime = mkOption {
type = types.int;
autobanTime = lib.mkOption {
type = lib.types.int;
default = 300;
description = "The amount of time an IP ban lasts (in seconds).";
};
logFile = mkOption {
type = types.nullOr types.path;
logFile = lib.mkOption {
type = lib.types.nullOr lib.types.path;
default = null;
example = "/var/log/murmur/murmurd.log";
description = "Path to the log file for Murmur daemon. Empty means log to journald.";
};
welcometext = mkOption {
type = types.str;
welcometext = lib.mkOption {
type = lib.types.str;
default = "";
description = "Welcome message for connected clients.";
};
port = mkOption {
type = types.port;
port = lib.mkOption {
type = lib.types.port;
default = 64738;
description = "Ports to bind to (UDP and TCP).";
};
hostName = mkOption {
type = types.str;
hostName = lib.mkOption {
type = lib.types.str;
default = "";
description = "Host to bind to. Defaults binding on all addresses.";
};
package = mkPackageOption pkgs "murmur" { };
package = lib.mkPackageOption pkgs "murmur" { };
password = mkOption {
type = types.str;
password = lib.mkOption {
type = lib.types.str;
default = "";
description = "Required password to join server, if specified.";
};
bandwidth = mkOption {
type = types.int;
bandwidth = lib.mkOption {
type = lib.types.int;
default = 72000;
description = ''
Maximum bandwidth (in bits per second) that clients may send
@ -167,26 +150,26 @@ in
'';
};
users = mkOption {
type = types.int;
users = lib.mkOption {
type = lib.types.int;
default = 100;
description = "Maximum number of concurrent clients allowed.";
};
textMsgLength = mkOption {
type = types.int;
textMsgLength = lib.mkOption {
type = lib.types.int;
default = 5000;
description = "Max length of text messages. Set 0 for no limit.";
};
imgMsgLength = mkOption {
type = types.int;
imgMsgLength = lib.mkOption {
type = lib.types.int;
default = 131072;
description = "Max length of image messages. Set 0 for no limit.";
};
allowHtml = mkOption {
type = types.bool;
allowHtml = lib.mkOption {
type = lib.types.bool;
default = true;
description = ''
Allow HTML in client messages, comments, and channel
@ -194,8 +177,8 @@ in
'';
};
logDays = mkOption {
type = types.int;
logDays = lib.mkOption {
type = lib.types.int;
default = 31;
description = ''
How long to store RPC logs for in the database. Set 0 to
@ -203,23 +186,16 @@ in
'';
};
bonjour = mkOption {
type = types.bool;
default = false;
description = ''
Enable Bonjour auto-discovery, which allows clients over
your LAN to automatically discover Murmur servers.
'';
};
bonjour = lib.mkEnableOption "Bonjour auto-discovery, which allows clients over your LAN to automatically discover Mumble servers";
sendVersion = mkOption {
type = types.bool;
sendVersion = lib.mkOption {
type = lib.types.bool;
default = true;
description = "Send Murmur version in UDP response.";
};
registerName = mkOption {
type = types.str;
registerName = lib.mkOption {
type = lib.types.str;
default = "";
description = ''
Public server registration name, and also the name of the
@ -228,8 +204,8 @@ in
'';
};
registerPassword = mkOption {
type = types.str;
registerPassword = lib.mkOption {
type = lib.types.str;
default = "";
description = ''
Public server registry password, used authenticate your
@ -238,14 +214,14 @@ in
'';
};
registerUrl = mkOption {
type = types.str;
registerUrl = lib.mkOption {
type = lib.types.str;
default = "";
description = "URL website for your server.";
};
registerHostname = mkOption {
type = types.str;
registerHostname = lib.mkOption {
type = lib.types.str;
default = "";
description = ''
DNS hostname where your server can be reached. This is only
@ -255,40 +231,36 @@ in
'';
};
clientCertRequired = mkOption {
type = types.bool;
default = false;
description = "Require clients to authenticate via certificates.";
};
clientCertRequired = lib.mkEnableOption "requiring clients to authenticate via certificates";
sslCert = mkOption {
type = types.str;
sslCert = lib.mkOption {
type = lib.types.str;
default = "";
description = "Path to your SSL certificate.";
};
sslKey = mkOption {
type = types.str;
sslKey = lib.mkOption {
type = lib.types.str;
default = "";
description = "Path to your SSL key.";
};
sslCa = mkOption {
type = types.str;
sslCa = lib.mkOption {
type = lib.types.str;
default = "";
description = "Path to your SSL CA certificate.";
};
extraConfig = mkOption {
type = types.lines;
extraConfig = lib.mkOption {
type = lib.types.lines;
default = "";
description = "Extra configuration to put into murmur.ini.";
};
environmentFile = mkOption {
type = types.nullOr types.path;
environmentFile = lib.mkOption {
type = lib.types.nullOr lib.types.path;
default = null;
example = literalExpression ''"''${config.services.murmur.stateDir}/murmurd.env"'';
example = lib.literalExpression ''"''${config.services.murmur.stateDir}/murmurd.env"'';
description = ''
Environment file as defined in {manpage}`systemd.exec(5)`.
@ -311,8 +283,8 @@ in
'';
};
dbus = mkOption {
type = types.enum [
dbus = lib.mkOption {
type = lib.types.enum [
null
"session"
"system"
@ -323,19 +295,19 @@ in
};
};
config = mkIf cfg.enable {
users.users.murmur = mkIf (cfg.user == "murmur") {
config = lib.mkIf cfg.enable {
users.users.murmur = lib.mkIf (cfg.user == "murmur") {
description = "Murmur Service user";
home = cfg.stateDir;
createHome = true;
uid = config.ids.uids.murmur;
group = cfg.group;
};
users.groups.murmur = mkIf (cfg.group == "murmur") {
users.groups.murmur = lib.mkIf (cfg.group == "murmur") {
gid = config.ids.gids.murmur;
};
networking.firewall = mkIf cfg.openFirewall {
networking.firewall = lib.mkIf cfg.openFirewall {
allowedTCPPorts = [ cfg.port ];
allowedUDPPorts = [ cfg.port ];
};
@ -353,8 +325,8 @@ in
serviceConfig = {
# murmurd doesn't fork when logging to the console.
Type = if forking then "forking" else "simple";
PIDFile = mkIf forking "/run/murmur/murmurd.pid";
EnvironmentFile = mkIf (cfg.environmentFile != null) cfg.environmentFile;
PIDFile = lib.mkIf forking "/run/murmur/murmurd.pid";
EnvironmentFile = lib.mkIf (cfg.environmentFile != null) cfg.environmentFile;
ExecStart = "${cfg.package}/bin/mumble-server -ini /run/murmur/murmurd.ini";
Restart = "always";
RuntimeDirectory = "murmur";
@ -390,7 +362,7 @@ in
# currently not included in upstream package, addition requested at
# https://github.com/mumble-voip/mumble/issues/6078
services.dbus.packages = mkIf (cfg.dbus == "system") [
services.dbus.packages = lib.mkIf (cfg.dbus == "system") [
(pkgs.writeTextFile {
name = "murmur-dbus-policy";
text = ''
@ -432,19 +404,19 @@ in
r /run/murmur/murmurd.ini,
r ${configFile},
''
+ optionalString (cfg.logFile != null) ''
+ lib.optionalString (cfg.logFile != null) ''
rw ${cfg.logFile},
''
+ optionalString (cfg.sslCert != "") ''
+ lib.optionalString (cfg.sslCert != "") ''
r ${cfg.sslCert},
''
+ optionalString (cfg.sslKey != "") ''
+ lib.optionalString (cfg.sslKey != "") ''
r ${cfg.sslKey},
''
+ optionalString (cfg.sslCa != "") ''
+ lib.optionalString (cfg.sslCa != "") ''
r ${cfg.sslCa},
''
+ optionalString (cfg.dbus != null) ''
+ lib.optionalString (cfg.dbus != null) ''
dbus bus=${cfg.dbus}
''
+ ''

View File

@ -905,8 +905,8 @@ let
boolValues
++ [
"static"
"dhcp-on-stop"
"dhcp"
"dynamic-on-stop"
"dynamic"
]
))
];

View File

@ -414,6 +414,7 @@ in
drupal = runTest ./drupal.nix;
drbd-driver = runTest ./drbd-driver.nix;
dublin-traceroute = runTest ./dublin-traceroute.nix;
dwl = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./dwl.nix;
earlyoom = handleTestOn [ "x86_64-linux" ] ./earlyoom.nix { };
early-mount-options = handleTest ./early-mount-options.nix { };
ec2-config = (handleTestOn [ "x86_64-linux" ] ./ec2.nix { }).boot-ec2-config or { };

43
nixos/tests/dwl.nix Normal file
View File

@ -0,0 +1,43 @@
{ lib, ... }:
{
name = "dwl_test_vm";
meta = {
maintainers = with lib.maintainers; [ gurjaka ];
};
nodes.machine =
{
pkgs,
lib,
...
}:
{
imports = [
./common/user-account.nix
./common/wayland-cage.nix
];
environment.systemPackages = [ pkgs.foot ];
services.displayManager.defaultSession = lib.mkForce "dwl";
programs.dwl.enable = true;
};
testScript = ''
with subtest("ensure dwl starts"):
machine.wait_for_file("/run/user/1000/wayland-0")
with subtest("ensure foot is installed"):
machine.succeed("which foot")
with subtest("ensure we can open a new terminal"):
# sleep 3 is required to make sure dwl has started
# TODO: find better way to identify dwl session
machine.sleep(3)
machine.send_key("alt-shift-ret")
machine.sleep(3)
machine.screenshot("terminal")
'';
}

View File

@ -7,7 +7,8 @@ import ./make-test-python.nix {
{
services.thelounge = {
enable = true;
plugins = [ pkgs.theLoungePlugins.themes.solarized ];
# nodePackages.thelounge-theme-* has been removed
# plugins = [ pkgs.theLoungePlugins.themes.solarized ];
};
};
@ -28,7 +29,7 @@ import ./make-test-python.nix {
machine.wait_for_unit("thelounge.service")
machine.wait_for_open_port(9000)
private.wait_until_succeeds("journalctl -u thelounge.service | grep thelounge-theme-solarized")
# private.wait_until_succeeds("journalctl -u thelounge.service | grep thelounge-theme-solarized")
private.wait_until_succeeds("journalctl -u thelounge.service | grep 'in private mode'")
public.wait_until_succeeds("journalctl -u thelounge.service | grep 'in public mode'")
'';

View File

@ -17,19 +17,19 @@ let
{
x86_64-linux = {
arch = "linux-x64";
hash = "sha256-yJ4bAxIg3yfQJPWJcl6jUMwQ/ssHkstJWuEp3wr0dDA=";
hash = "sha256-rxXyDIDANtWUT4z6SK+fHwMXu/xSOIGtNpILdlC5lMc=";
};
aarch64-linux = {
arch = "linux-arm64";
hash = "sha256-EpWHwansBwBD0aYoW2ek7iWFbp+s7ZH6ug3ejoSRG5U=";
hash = "sha256-3JLnZr7pGOY0wSmo9PpQclDE/Yb99qJLALgEBAPn4Ms=";
};
x86_64-darwin = {
arch = "darwin-x64";
hash = "sha256-345hK47tyMGMJDKiujwpECDHMbRpLi17x2lH2rMX9Lg=";
hash = "sha256-yhP5dXP42ZKsoLZ3CySY+Nw2c0bF4IKDc0Le9ky+Qmc=";
};
aarch64-darwin = {
arch = "darwin-arm64";
hash = "sha256-u/vflQd285SuZ41ASd8nJgs+lN6892J3x6lPgWqVY+Y=";
hash = "sha256-KtOZ4AzsS30nF0DtJJT/CaLRD6Pa9pz1hYBgvxPbzZw=";
};
}
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}")
@ -39,7 +39,7 @@ vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
name = "csharp";
publisher = "ms-dotnettools";
version = "2.76.27";
version = "2.80.16";
inherit (extInfo) hash arch;
};

View File

@ -12,8 +12,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
name = "r";
publisher = "reditorsupport";
version = "2.8.5";
hash = "sha256-cZeZdrViEae9sRb9GyB/LeSQ5NRb/fAp3qQW9mPMbsM=";
version = "2.8.6";
hash = "sha256-T/Qh0WfTfXMzPonbg9NMII5qFptfNoApFFiZCT5rR3Y=";
};
nativeBuildInputs = [
jq

View File

@ -687,13 +687,13 @@
"vendorHash": null
},
"jetstream": {
"hash": "sha256-N/cKiMwPHo8581PFg06RjgOGpGB02/CCARTIFu9kH3s=",
"hash": "sha256-I9T5PTNiZfCyPnNiqL8yDhJxpLRQpK7ynZmlr682BnY=",
"homepage": "https://registry.terraform.io/providers/nats-io/jetstream",
"owner": "nats-io",
"repo": "terraform-provider-jetstream",
"rev": "v0.2.0",
"rev": "v0.2.1",
"spdx": "Apache-2.0",
"vendorHash": "sha256-Dd02Ikt51eh/FBEtswe8Qr6P5tgQFZJTKgO01gxPX3s="
"vendorHash": "sha256-ctd9V5EXL0c9b4aJ47nfjhqCMTewL55IkjkQ39ShoUk="
},
"kafka": {
"hash": "sha256-RZwag424lXwI1GR/kFOcpv+huaYMyG4jcFjkhvA0Nlc=",

View File

@ -1,2 +0,0 @@
source 'https://rubygems.org'
gem 'atlassian-stash'

View File

@ -1,27 +0,0 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.5.0)
public_suffix (~> 2.0, >= 2.0.2)
atlassian-stash (0.7.0)
commander (~> 4.1.2)
git (>= 1.2.5)
json (>= 1.7.5)
launchy (~> 2.4.2)
commander (4.1.6)
highline (~> 1.6.11)
git (1.3.0)
highline (1.6.21)
json (2.0.2)
launchy (2.4.3)
addressable (~> 2.3)
public_suffix (2.0.5)
PLATFORMS
ruby
DEPENDENCIES
atlassian-stash
BUNDLED WITH
2.1.4

View File

@ -1,30 +0,0 @@
{
lib,
bundlerEnv,
ruby,
bundlerUpdateScript,
}:
bundlerEnv rec {
name = "bitbucket-server-cli-${version}";
version = (import ./gemset.nix).atlassian-stash.version;
inherit ruby;
gemdir = ./.;
pname = "atlassian-stash";
passthru.updateScript = bundlerUpdateScript "bitbucket-server-cli";
meta = with lib; {
description = "Command line interface to interact with BitBucket Server (formerly Atlassian Stash)";
homepage = "https://bitbucket.org/atlassian/bitbucket-server-cli";
license = licenses.mit;
maintainers = with maintainers; [
jgertm
nicknovitski
];
mainProgram = "stash";
platforms = platforms.unix;
};
}

View File

@ -1,66 +0,0 @@
{
addressable = {
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1j5r0anj8m4qlf2psnldip4b8ha2bsscv11lpdgnfh4nnchzjnxw";
type = "gem";
};
version = "2.5.0";
};
atlassian-stash = {
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1rsf9h5w5wiglwv0fqwp45fq06fxbg68cqkc3bpqvps1i1qm0p6i";
type = "gem";
};
version = "0.7.0";
};
commander = {
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0x9i8hf083wjlgj09nl1p9j8sr5g7amq0fdmxjqs4cxdbg3wpmsb";
type = "gem";
};
version = "4.1.6";
};
git = {
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1waikaggw7a1d24nw0sh8fd419gbf7awh000qhsf411valycj6q3";
type = "gem";
};
version = "1.3.0";
};
highline = {
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "06bml1fjsnrhd956wqq5k3w8cyd09rv1vixdpa3zzkl6xs72jdn1";
type = "gem";
};
version = "1.6.21";
};
json = {
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1lhinj9vj7mw59jqid0bjn2hlfcnq02bnvsx9iv81nl2han603s0";
type = "gem";
};
version = "2.0.2";
};
launchy = {
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "190lfbiy1vwxhbgn4nl4dcbzxvm049jwc158r2x7kq3g5khjrxa2";
type = "gem";
};
version = "2.4.3";
};
public_suffix = {
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "040jf98jpp6w140ghkhw2hvc1qx41zvywx5gj7r2ylr1148qnj7q";
type = "gem";
};
version = "2.0.5";
};
}

View File

@ -16,8 +16,11 @@ buildKodiAddon rec {
sha256 = "sha256-d6BNpnTg6K7NPX3uWp5X0rog33C+B7YoAtLH/CrUYno=";
};
passthru.updateScript = addonUpdateScript {
attrPath = "kodi.packages.six";
passthru = {
pythonPath = "lib";
updateScript = addonUpdateScript {
attrPath = "kodi.packages.six";
};
};
meta = with lib; {

View File

@ -18,7 +18,7 @@ let
hash = "sha256-VwIL1529CW9MLK4N9jHHddSSZD5RsJ5bWGWqGJ751C0=";
};
sourceRoot = "source/scripts";
sourceRoot = "${self.src.name}/scripts";
passthru = {
updateScript = unstableGitUpdater { };

View File

@ -149,7 +149,6 @@ rec {
xorg.libpciaccess
glib
gtk2
bzip2
zlib
gdk-pixbuf
@ -218,7 +217,6 @@ rec {
speex
SDL2_ttf
SDL2_mixer
libappindicator-gtk2
libcaca
libcanberra
libgcrypt

View File

@ -2,7 +2,10 @@ let
mirrors = import ./mirrors.nix;
in
{ system }:
{
rewriteURL,
system,
}:
{
url ? builtins.head urls,
@ -28,7 +31,15 @@ import <nix/fetchurl.nix> {
# Handle mirror:// URIs. Since <nix/fetchurl.nix> currently
# supports only one URI, use the first listed mirror.
let
m = builtins.match "mirror://([a-z]+)/(.*)" url;
url_ =
let
u = rewriteURL url;
in
if builtins.isString u then
u
else
throw "rewriteURL deleted the only URL passed to fetchurlBoot (was ${url})";
m = builtins.match "mirror://([a-z]+)/(.*)" url_;
in
if m == null then url else builtins.head (mirrors.${builtins.elemAt m 0}) + (builtins.elemAt m 1);
if m == null then url_ else builtins.head (mirrors.${builtins.elemAt m 0}) + (builtins.elemAt m 1);
}

View File

@ -6,6 +6,7 @@
stdenvNoCC,
curl, # Note that `curl' may be `null', in case of the native stdenvNoCC.
cacert ? null,
rewriteURL,
}:
let
@ -122,7 +123,7 @@ in
}@args:
let
urls_ =
preRewriteUrls =
if urls != [ ] && url == "" then
(
if lib.isList urls then urls else throw "`urls` is not a list: ${lib.generators.toPretty { } urls}"
@ -137,6 +138,12 @@ let
else
throw "fetchurl requires either `url` or `urls` to be set: ${lib.generators.toPretty { } args}";
urls_ =
let
u = lib.lists.filter (url: lib.isString url) (map rewriteURL preRewriteUrls);
in
if u == [ ] then throw "urls is empty after rewriteURL (was ${toString preRewriteUrls})" else u;
hash_ =
if
with lib.lists;

View File

@ -6,36 +6,34 @@
autoreconfHook,
allegro,
libsamplerate,
libGLU,
libX11,
libXext,
SDL,
SDL_mixer,
SDL2,
SDL2_mixer,
readline,
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "1oom";
version = "1.11.2";
version = "1.11.6";
src = fetchFromGitHub {
owner = "1oom-fork";
repo = "1oom";
tag = "v${version}";
hash = "sha256-xvVl/XzOnItIvW0T3RpQ4tswqANHGWFvwnoY0+uHhx8=";
tag = "v${finalAttrs.version}";
hash = "sha256-w67BjS5CrQviMXOeKNWGR1SzDeJHZrIpY7FDGt86CPA=";
};
nativeBuildInputs = [ autoreconfHook ];
strictDeps = true;
enableParallelBuilding = true;
nativeBuildInputs = [
autoreconfHook
SDL2
];
buildInputs = [
allegro
libsamplerate
libGLU
libX11
libXext
SDL
SDL_mixer
SDL2
SDL2_mixer
readline
@ -47,19 +45,19 @@ stdenv.mkDerivation rec {
];
postInstall = ''
install -d $doc/share/doc/${pname}
install -t $doc/share/doc/${pname} \
install -d $doc/share/doc/1oom
install -t $doc/share/doc/1oom \
HACKING NEWS PHILOSOPHY README.md doc/*.txt
'';
passthru.updateScript = gitUpdater { rev-prefix = "f"; };
passthru.updateScript = gitUpdater { rev-prefix = "v"; };
meta = with lib; {
meta = {
homepage = "https://github.com/1oom-fork/1oom";
changelog = "https://github.com/1oom-fork/1oom/releases/tag/v${version}";
changelog = "https://github.com/1oom-fork/1oom/releases/tag/v${finalAttrs.version}";
description = "Master of Orion (1993) game engine recreation; a more updated fork";
license = licenses.gpl2Only;
platforms = platforms.linux;
maintainers = [ ];
license = lib.licenses.gpl2Only;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ marcin-serwin ];
};
}
})

View File

@ -199,7 +199,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
homepage = "https://github.com/HarbourMasters/2ship2harkinian";
description = "A PC port of Majora's Mask with modern controls, widescreen, high-resolution, and more";
description = "PC port of Majora's Mask with modern controls, widescreen, high-resolution, and more";
mainProgram = "2s2h";
platforms = [ "x86_64-linux" ];
maintainers = with lib.maintainers; [ qubitnano ];

View File

@ -88,7 +88,7 @@ stdenv.mkDerivation rec {
];
meta = with lib; {
description = "A discord client reimplementation, written in C++";
description = "Discord client reimplementation, written in C++";
mainProgram = "abaddon";
homepage = "https://github.com/uowuo/abaddon";
license = licenses.gpl3Plus;

View File

@ -132,7 +132,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
homepage = "https://adios2.readthedocs.io/en/latest/";
description = "The Adaptable Input/Output System version 2";
description = "Adaptable Input/Output System version 2";
license = lib.licenses.asl20;
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [ qbisi ];

View File

@ -5,40 +5,37 @@
nix-update-script,
meson,
ninja,
sassc,
dart-sass,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "adw-gtk3";
version = "5.10";
version = "6.2";
src = fetchFromGitHub {
owner = "lassekongo83";
repo = "adw-gtk3";
tag = "v${finalAttrs.version}";
hash = "sha256-0OZk27b0kujzWtRX5uvelTMivL19g6sNB1IY6BsrO10=";
hash = "sha256-YYaqSEnIYHHkY4L3UhFBkR3DehoB6QADhSGOP/9NKx8=";
};
nativeBuildInputs = [
meson
ninja
sassc
dart-sass
];
postPatch = ''
chmod +x gtk/src/adw-gtk3-dark/gtk-3.0/install-dark-theme.sh
patchShebangs gtk/src/adw-gtk3-dark/gtk-3.0/install-dark-theme.sh
'';
passthru = {
updateScript = nix-update-script { };
};
passthru.updateScript = nix-update-script { };
meta = {
description = "Theme from libadwaita ported to GTK-3";
description = "Unofficial GTK 3 port of libadwaita";
homepage = "https://github.com/lassekongo83/adw-gtk3";
license = lib.licenses.lgpl21Only;
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [ ciferkey ];
maintainers = with lib.maintainers; [
ciferkey
Gliczy
normalcea
];
};
})

View File

@ -36,7 +36,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
};
meta = {
description = "An extremely fast R code formatter";
description = "Extremely fast R code formatter";
homepage = "https://posit-dev.github.io/air";
changelog = "https://github.com/posit-dev/air/blob/${finalAttrs.version}/CHANGELOG.md";
license = lib.licenses.mit;

View File

@ -23,6 +23,7 @@
xdg-utils,
nix-update-script,
withGraphics ? false,
}:
let
rpathLibs =
@ -44,17 +45,32 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "alacritty";
version = "0.15.1";
version = "0.15.1" + lib.optionalString withGraphics "-graphics";
src = fetchFromGitHub {
owner = "alacritty";
repo = "alacritty";
tag = "v${version}";
hash = "sha256-/yERMNfCFLPb1S17Y9OacVH8UobDIIZDhM2qPzf5Vds=";
};
src =
# by default we want the official package
if !withGraphics then
fetchFromGitHub {
owner = "alacritty";
repo = "alacritty";
tag = "v${version}";
hash = "sha256-/yERMNfCFLPb1S17Y9OacVH8UobDIIZDhM2qPzf5Vds=";
}
# optionally we want to build the sixels feature fork
else
fetchFromGitHub {
owner = "ayosec";
repo = "alacritty";
tag = "v${version}";
hash = "sha256-n8vO6Q4bzWLaOqg8YhZ+aLOtBBTQ9plKIEJHXq+hhnM=";
};
useFetchCargoVendor = true;
cargoHash = "sha256-uXwefUV1NAKqwwPIWj4Slkx0c5b+RfLR3caTb42fc4M=";
cargoHash =
if !withGraphics then
"sha256-uXwefUV1NAKqwwPIWj4Slkx0c5b+RfLR3caTb42fc4M="
else
"sha256-UtxZFqU974N+YcHoEHifBjNSyaVuMvuc1clTDgUPuoQ=";
nativeBuildInputs = [
cmake

View File

@ -20,14 +20,14 @@
python3Packages.buildPythonApplication rec {
pname = "alpaca";
version = "6.0.5";
version = "6.1.5";
pyproject = false; # Built with meson
src = fetchFromGitHub {
owner = "Jeffser";
repo = "Alpaca";
tag = version;
hash = "sha256-faxqSUYqf3vRZYeuXAzv+n1inMVwl5KmnndABF77Sus=";
hash = "sha256-4QN88KOCtVFNoqAKpjW/MSvPJFsLoXZixiGN5JNRDvs=";
};
nativeBuildInputs = [

View File

@ -10,7 +10,7 @@
let
pname = "amphetype";
version = "1.0.0";
description = "An advanced typing practice program";
description = "Advanced typing practice program";
in
python3Packages.buildPythonApplication {
inherit pname version;

File diff suppressed because it is too large Load Diff

View File

@ -79,13 +79,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "animeko";
version = "4.10.1";
version = "4.11.1";
src = fetchFromGitHub {
owner = "open-ani";
repo = "animeko";
tag = "v${finalAttrs.version}";
hash = "sha256-sFEq6tJfADH5x8+wdQ9T89awT7/Qx2RV5r+cND3J0iw=";
hash = "sha256-JLOwWJvBfwqvAfaFn5qr8lsHL7/u97qYjZsckBjAu6I=";
fetchSubmodules = true;
};
@ -207,6 +207,8 @@ stdenv.mkDerivation (finalAttrs: {
"libdca.so.0"
"liba52-0.7.4.so"
"libFLAC.so.12"
"libtheoradec.so.1"
"libtheoraenc.so.1"
];
dontWrapQtApps = true;

View File

@ -63,7 +63,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
changelog = "https://github.com/apache/orc/releases/tag/v${finalAttrs.version}";
description = "The smallest, fastest columnar storage for Hadoop workloads";
description = "Smallest, fastest columnar storage for Hadoop workloads";
homepage = "https://github.com/apache/orc/";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ drupol ];

View File

@ -101,7 +101,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
];
meta = with lib; {
description = "An open-source alternative to Notion";
description = "Open-source alternative to Notion";
homepage = "https://www.appflowy.io/";
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = licenses.agpl3Only;

View File

@ -68,7 +68,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
changelog = "https://github.com/hyprwm/aquamarine/releases/tag/v${finalAttrs.version}";
description = "A very light linux rendering backend library";
description = "Very light linux rendering backend library";
homepage = "https://github.com/hyprwm/aquamarine";
license = lib.licenses.bsd3;
teams = [ lib.teams.hyprland ];

View File

@ -25,7 +25,7 @@ buildNpmPackage rec {
meta = {
homepage = "https://webostv.developer.lge.com/develop/tools/cli-introduction";
description = "A collection of commands used for creating, packaging, installing, and launching web apps for LG webOS TV.";
description = "Collection of commands used for creating, packaging, installing, and launching web apps for LG webOS TV";
longDescription = ''
webOS CLI (Command Line Interface) provides a collection of commands used for creating, packaging, installing,
and launching web apps in the command line environment. The CLI allows you to develop and test your app without using

View File

@ -6,16 +6,16 @@
buildGoModule rec {
pname = "argo-rollouts";
version = "1.8.2";
version = "1.8.3";
src = fetchFromGitHub {
owner = "argoproj";
repo = "argo-rollouts";
rev = "v${version}";
sha256 = "sha256-C2Ha3Sdq5IOHEc9S4jb4g6do6a4Gkm4E0BVFq5TnJDM=";
sha256 = "sha256-OCFbnBSFSXcbXHT48sS8REAt6CtNFPCNTIfKRBj19DM=";
};
vendorHash = "sha256-1YtRc2xLP8QAIK+vO690zHb9tXCkR7na/zwwlIdAxgQ=";
vendorHash = "sha256-2zarm9ZvPJ5uwEYvYI60uaN5MONKE8gd+i6TPHdD3PU=";
# Disable tests since some test fail because of missing test data
doCheck = false;

View File

@ -29,7 +29,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
passthru.updateScript = nix-update-script { };
meta = {
description = "A comprehensive user.js template for configuration and hardening";
description = "Comprehensive user.js template for configuration and hardening";
homepage = "https://github.com/arkenfox/user.js";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [

View File

@ -65,7 +65,7 @@ stdenv.mkDerivation (finalAttrs: {
'';
meta = {
description = "The Astro language server";
description = "Astro language server";
homepage = "https://github.com/withastro/language-tools";
changelog = "https://github.com/withastro/language-tools/blob/@astrojs/language-server@${finalAttrs.version}/packages/language-server/CHANGELOG.md";
license = lib.licenses.mit;

View File

@ -14,7 +14,7 @@ buildGoModule {
subPackages = [ "cmd/ldap" ];
meta = authentik.meta // {
description = "The authentik ldap outpost. Needed for the external ldap API.";
description = "Authentik ldap outpost. Needed for the external ldap API";
homepage = "https://goauthentik.io/docs/providers/ldap/";
mainProgram = "ldap";
};

View File

@ -43,7 +43,7 @@ let
pname = "authentik-website-deps";
inherit src version meta;
sourceRoot = "source/website";
sourceRoot = "${src.name}/website";
outputHash = "sha256-AnQpjCoCTzm28Wl/t3YHx0Kl0CuMHL2OgRjRB1Trrsw=";
outputHashMode = "recursive";
@ -75,7 +75,7 @@ let
substituteInPlace package.json --replace-fail 'cross-env ' ""
'';
sourceRoot = "source/website";
sourceRoot = "${src.name}/website";
buildPhase = ''
runHook preBuild

View File

@ -189,7 +189,7 @@ stdenvNoCC.mkDerivation (
homepage = "https://avaloniaui.net/";
license = [ lib.licenses.mit ];
maintainers = with lib.maintainers; [ corngood ];
description = "A cross-platform UI framework for dotnet";
description = "Cross-platform UI framework for dotnet";
sourceProvenance = with lib.sourceTypes; [
fromSource
binaryNativeCode # npm dependencies contain binaries

View File

@ -35,7 +35,7 @@ rustPlatform.buildRustPackage rec {
passthru.updateScript = nix-update-script { };
meta = {
description = "A portable volatile memory acquisition tool for Linux";
description = "Portable volatile memory acquisition tool for Linux";
homepage = "https://github.com/microsoft/avml";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.lesuisse ];

View File

@ -53,7 +53,7 @@ buildGoModule rec {
'';
meta = with lib; {
description = "A vault for securely storing and accessing AWS credentials in development environments";
description = "Vault for securely storing and accessing AWS credentials in development environments";
mainProgram = "aws-vault";
homepage = "https://github.com/99designs/aws-vault";
license = licenses.mit;

View File

@ -145,7 +145,7 @@ stdenv.mkDerivation (finalAttrs: {
];
meta = {
description = "An open-source 3DS emulator project based on Citra";
description = "Open-source 3DS emulator project based on Citra";
homepage = "https://github.com/azahar-emu/azahar";
license = lib.licenses.gpl2Only;
maintainers = with lib.maintainers; [ arthsmn ];

View File

@ -36,7 +36,7 @@
azure-iot = mkAzExtension rec {
pname = "azure-iot";
description = "The Azure IoT extension for Azure CLI.";
description = "Azure IoT extension for Azure CLI";
version = "0.25.0";
url = "https://github.com/Azure/azure-iot-cli-extension/releases/download/v${version}/azure_iot-${version}-py3-none-any.whl";
hash = "sha256-fbS8B2Z++oRyUT2eEh+yVR/K6uaCVce8B2itQXfBscY=";

View File

@ -30,7 +30,7 @@ buildNpmPackage rec {
];
meta = {
description = "An open source Azure Storage API compatible server";
description = "Open source Azure Storage API compatible server";
homepage = "https://github.com/Azure/Azurite";
changelog = "https://github.com/Azure/Azurite/releases/tag/v${version}";
license = lib.licenses.mit;

View File

@ -46,7 +46,7 @@ buildNimPackage (finalAttrs: {
'';
meta = finalAttrs.src.meta // {
description = "The testing framework with balls";
description = "Testing framework with balls";
homepage = "https://github.com/disruptek/balls";
mainProgram = "balls";
license = lib.licenses.mit;

View File

@ -68,7 +68,7 @@ stdenv.mkDerivation {
passthru.updateScript = nix-update-script { };
meta = {
description = "A fork of Basalt improved for tracking XR devices with Monado";
description = "Fork of Basalt improved for tracking XR devices with Monado";
homepage = "https://gitlab.freedesktop.org/mateosss/basalt";
license = lib.licenses.bsd3;
mainProgram = "basalt_vio";

View File

@ -65,7 +65,7 @@ stdenv.mkDerivation (finalAttrs: {
doInstallCheck = true;
meta = with lib; {
description = "A language server for Bash";
description = "Language server for Bash";
homepage = "https://github.com/bash-lsp/bash-language-server";
license = licenses.mit;
maintainers = with maintainers; [ doronbehar ];

View File

@ -11,12 +11,12 @@
let
bigpemu-unwrapped = stdenv.mkDerivation rec {
pname = "BigPEmu";
version = "1.18";
version = "1.19";
src = fetchurl {
url = "https://www.richwhitehouse.com/jaguar/builds/BigPEmu_Linux64_v${
builtins.replaceStrings [ "." ] [ "" ] version
}.tar.gz";
hash = "sha256-fYzC1gYi6/6/Ouxd1reRXRGHshLwLFK4N/Md7GiiU9Y=";
hash = "sha256-kiZ9yzDRkDLzd5EtjIn32TL27Y2GG8ysG0zTM1JRyTU=";
};
installPhase = ''

View File

@ -53,7 +53,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
};
meta = {
description = "A bridge service that connects web wallets like Rabby to BitBox02";
description = "Bridge service that connects web wallets like Rabby to BitBox02";
homepage = "https://github.com/BitBoxSwiss/bitbox-bridge";
downloadPage = "https://bitbox.swiss/download/";
changelog = "https://github.com/BitBoxSwiss/bitbox-bridge/blob/v${finalAttrs.version}/CHANGELOG.md";

View File

@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
pname = "bitbox-web";
inherit version;
inherit src;
sourceRoot = "source/frontends/web";
sourceRoot = "${src.name}/frontends/web";
npmDepsHash = "sha256-eazc3OIusY8cbaF8RJOrVcyWPQexcz6lZYLLCpB1mHc=";
installPhase = "cp -r build $out";
};

View File

@ -66,7 +66,7 @@ stdenv.mkDerivation (finalAttrs: {
passthru.updateScript = nix-update-script { };
meta = {
description = "A Sci-Fi game with industry and automation";
description = "Sci-Fi game with industry and automation";
homepage = "https://www.blackvoxel.com";
changelog = "https://github.com/Blackvoxel/Blackvoxel/releases/tag/${finalAttrs.version}";
license = with lib.licenses; [

View File

@ -66,7 +66,7 @@ stdenv.mkDerivation (finalAttrs: {
};
meta = {
description = "The fast and accurate Genesis emulator";
description = "Fast and accurate Genesis emulator";
homepage = "https://www.retrodev.com/blastem/";
license = lib.licenses.gpl3Plus;
mainProgram = "blastem";

View File

@ -131,7 +131,7 @@ buildDotnetModule rec {
'';
meta = with lib; {
description = "A open-source, cross-platform, stand-alone, Network Renderer for Blender";
description = "Open-source, cross-platform, stand-alone, Network Renderer for Blender";
homepage = "https://github.com/LogicReinc/LogicReinc.BlendFarm";
license = with licenses; [ gpl3Plus ];
maintainers = with maintainers; [ gador ];

View File

@ -146,7 +146,7 @@ buildFHSEnv {
meta = {
homepage = "https://github.com/Adamcake/Bolt";
description = "An alternative launcher for RuneScape.";
description = "Alternative launcher for RuneScape";
longDescription = ''
Bolt Launcher supports HDOS/RuneLite by default with an optional feature flag for RS3 (enableRS3).
'';

View File

@ -55,7 +55,7 @@ stdenv.mkDerivation (finalAttrs: {
passthru.updateScript = nix-update-script { };
meta = {
description = "A library to obtain, parse and analyze data (EEG, EMG, ECG) from biosensors";
description = "Library to obtain, parse and analyze data (EEG, EMG, ECG) from biosensors";
homepage = "https://brainflow.org/";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [

View File

@ -36,7 +36,7 @@ buildGoModule (finalAttrs: {
passthru.updateScript = nix-update-script { };
meta = {
description = "A cli application for bluesky social";
description = "Cli application for bluesky social";
homepage = "https://github.com/mattn/bsky";
changelog = "https://github.com/mattn/bsky/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;

View File

@ -65,7 +65,7 @@ stdenv.mkDerivation (finalAttrs: {
passthru.updateScript = gitUpdater { };
meta = with lib; {
description = "A suite of graphical applications for the terminal";
description = "Suite of graphical applications for the terminal";
homepage = "https://gitlab.postmarketos.org/postmarketOS/buffybox";
license = licenses.gpl3Plus;
maintainers = with lib.maintainers; [ colinsane ];

View File

@ -36,7 +36,7 @@ let
};
pname = "burpsuite";
description = "An integrated platform for performing security testing of web applications";
description = "Integrated platform for performing security testing of web applications";
desktopItem = makeDesktopItem {
name = "burpsuite";
exec = pname;

View File

@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
meta = {
broken = (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64);
homepage = "https://cabinpkg.com";
description = "A package manager and build system for C++";
description = "Package manager and build system for C++";
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.qwqawawow ];
platforms = lib.platforms.unix;

View File

@ -7,18 +7,18 @@
buildGoModule rec {
pname = "cadvisor";
version = "0.52.1";
version = "0.53.0";
src = fetchFromGitHub {
owner = "google";
repo = "cadvisor";
rev = "v${version}";
hash = "sha256-EXhKX4Za+fdJcSrrbH1te533jyEVLmhgd3I9LcOCz2Q=";
hash = "sha256-caGzjv7XhIst3JZA0ri97XqQOO3mI+hwS8WJmLk9f7g=";
};
modRoot = "./cmd";
vendorHash = "sha256-DkJLWFhYElN7BYb5Jn6PDYzgndJKbEI5U08WbRqSMdw=";
vendorHash = "sha256-xUhHo/kDnjAQLuaeFG1EouC2FWBnFhj1RawlQX7ggVs=";
ldflags = [
"-s"

View File

@ -75,7 +75,7 @@ stdenvNoCC.mkDerivation rec {
meta = with lib; {
homepage = "https://github.com/camunda/camunda-modeler";
description = "An integrated modeling solution for BPMN, DMN and Forms based on bpmn.io";
description = "Integrated modeling solution for BPMN, DMN and Forms based on bpmn.io";
teams = [ teams.wdz ];
license = licenses.mit;
inherit (electron.meta) platforms;

View File

@ -26,7 +26,7 @@ stdenvNoCC.mkDerivation {
meta = with lib; {
homepage = "https://fonts.google.com/specimen/Catamaran";
description = "A stylish sans-serif Tamil and Latin typeface";
description = "Stylish sans-serif Tamil and Latin typeface";
longDescription = ''
Catamaran is a Unicode-compliant Latin and Tamil text type family designed for the digital age.
The Tamil is monolinear and was designed alongside the sans serif Latin and Devanagari family Palanquin.

View File

@ -22,7 +22,7 @@ rustPlatform.buildRustPackage {
meta = {
homepage = "https://github.com/catppuccin/whiskers";
description = "A templating tool to simplify the creation of Catppuccin ports";
description = "Templating tool to simplify the creation of Catppuccin ports";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ Name ];
mainProgram = "whiskers";

View File

@ -157,7 +157,7 @@ stdenv.mkDerivation (finalAttrs: {
};
meta = {
description = "The classic linker for Darwin";
description = "Classic linker for Darwin";
homepage = "https://opensource.apple.com/releases/";
license = with lib.licenses; [
apple-psl20

View File

@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
meta = with lib; {
homepage = "https://github.com/dominikwilkowski/cfonts";
description = "A silly little command line tool for sexy ANSI fonts in the console";
description = "Silly little command line tool for sexy ANSI fonts in the console";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ leifhelm ];
mainProgram = "cfonts";

View File

@ -26,7 +26,7 @@ buildGoModule rec {
];
meta = with lib; {
description = "A tool for managing secrets by storing them in AWS SSM Parameter Store";
description = "Tool for managing secrets by storing them in AWS SSM Parameter Store";
homepage = "https://github.com/segmentio/chamber";
license = licenses.mit;
maintainers = with maintainers; [ kalekseev ];

View File

@ -25,7 +25,7 @@ rustPlatform.buildRustPackage rec {
};
meta = {
description = "A CLI tool to convert clang-tidy diagnostics into SARIF";
description = "CLI tool to convert clang-tidy diagnostics into SARIF";
homepage = "https://psastras.github.io/sarif-rs";
maintainers = with lib.maintainers; [ getchoo ];
mainProgram = "clang-tidy-sarif";

View File

@ -5,13 +5,13 @@
"packages": {
"": {
"dependencies": {
"@anthropic-ai/claude-code": "^1.0.6"
"@anthropic-ai/claude-code": "^1.0.11"
}
},
"node_modules/@anthropic-ai/claude-code": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-1.0.6.tgz",
"integrity": "sha512-QqPZZ4IXbUaSLqXEx4z68Stjc7NlGh/b4woyYyMks+cMUJ5ZYDEkAe09cRZQ6tjubZNgBaGTOqfTaT8NgnkioQ==",
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-1.0.11.tgz",
"integrity": "sha512-ezYfkSxCiQjReJoBJkayTpzhWRWKmfEy6Ria2TdufBmDR7Kj/iP4IY10M5JOTgB8pw7XfjYpijgnomiFZmVRbg==",
"hasInstallScript": true,
"license": "SEE LICENSE IN README.md",
"bin": {
@ -22,7 +22,9 @@
},
"optionalDependencies": {
"@img/sharp-darwin-arm64": "^0.33.5",
"@img/sharp-darwin-x64": "^0.33.5",
"@img/sharp-linux-arm": "^0.33.5",
"@img/sharp-linux-arm64": "^0.33.5",
"@img/sharp-linux-x64": "^0.33.5",
"@img/sharp-win32-x64": "^0.33.5"
}
@ -49,6 +51,28 @@
"@img/sharp-libvips-darwin-arm64": "1.0.4"
}
},
"node_modules/@img/sharp-darwin-x64": {
"version": "0.33.5",
"resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.5.tgz",
"integrity": "sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==",
"cpu": [
"x64"
],
"license": "Apache-2.0",
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"funding": {
"url": "https://opencollective.com/libvips"
},
"optionalDependencies": {
"@img/sharp-libvips-darwin-x64": "1.0.4"
}
},
"node_modules/@img/sharp-libvips-darwin-arm64": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz",
@ -65,6 +89,22 @@
"url": "https://opencollective.com/libvips"
}
},
"node_modules/@img/sharp-libvips-darwin-x64": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.4.tgz",
"integrity": "sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==",
"cpu": [
"x64"
],
"license": "LGPL-3.0-or-later",
"optional": true,
"os": [
"darwin"
],
"funding": {
"url": "https://opencollective.com/libvips"
}
},
"node_modules/@img/sharp-libvips-linux-arm": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.5.tgz",
@ -81,6 +121,22 @@
"url": "https://opencollective.com/libvips"
}
},
"node_modules/@img/sharp-libvips-linux-arm64": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.4.tgz",
"integrity": "sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==",
"cpu": [
"arm64"
],
"license": "LGPL-3.0-or-later",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://opencollective.com/libvips"
}
},
"node_modules/@img/sharp-libvips-linux-x64": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.4.tgz",
@ -119,6 +175,28 @@
"@img/sharp-libvips-linux-arm": "1.0.5"
}
},
"node_modules/@img/sharp-linux-arm64": {
"version": "0.33.5",
"resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.5.tgz",
"integrity": "sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==",
"cpu": [
"arm64"
],
"license": "Apache-2.0",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"funding": {
"url": "https://opencollective.com/libvips"
},
"optionalDependencies": {
"@img/sharp-libvips-linux-arm64": "1.0.4"
}
},
"node_modules/@img/sharp-linux-x64": {
"version": "0.33.5",
"resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.5.tgz",

View File

@ -7,16 +7,16 @@
buildNpmPackage rec {
pname = "claude-code";
version = "1.0.6";
version = "1.0.11";
nodejs = nodejs_20; # required for sandboxed Nix builds on Darwin
src = fetchzip {
url = "https://registry.npmjs.org/@anthropic-ai/claude-code/-/claude-code-${version}.tgz";
hash = "sha256-yMvx543OOClV/BSkM4/bzrbytL+98HAfp14Qk1m2le0=";
hash = "sha256-IXNBNjt4Sh5pR+Cz2uEZcCop9reAmQ7hObohtN0f3Ww=";
};
npmDepsHash = "sha256-5QP6WQ2tXGADOID9QHq/m7sDQeQsoMGQWxORvQhVROg=";
npmDepsHash = "sha256-p5FQBBlMNcRBYKIkeeETyup5zKr2Rcxu/Jw+kFwQrHA=";
postPatch = ''
cp ${./package-lock.json} package-lock.json
@ -36,7 +36,7 @@ buildNpmPackage rec {
passthru.updateScript = ./update.sh;
meta = {
description = "An agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster";
description = "Agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster";
homepage = "https://github.com/anthropics/claude-code";
downloadPage = "https://www.npmjs.com/package/@anthropic-ai/claude-code";
license = lib.licenses.unfree;

View File

@ -45,7 +45,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
homepage = "https://github.com/leo-arch/clifm";
changelog = "https://github.com/leo-arch/clifm/releases/tag/v${finalAttrs.version}";
description = "A CLI-based, shell-like, and non-curses terminal file manager";
description = "CLI-based, shell-like, and non-curses terminal file manager";
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [ nadir-ishiguro ];
platforms = lib.platforms.unix;

View File

@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec {
};
meta = {
description = "A CLI tool to convert clippy diagnostics into SARIF";
description = "CLI tool to convert clippy diagnostics into SARIF";
homepage = "https://psastras.github.io/sarif-rs";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ getchoo ];

View File

@ -49,26 +49,26 @@
}:
let
pname = "cursor";
version = "0.50.5";
version = "1.0.0";
inherit (stdenvNoCC) hostPlatform;
sources = {
x86_64-linux = fetchurl {
url = "https://downloads.cursor.com/production/96e5b01ca25f8fbd4c4c10bc69b15f6228c80771/linux/x64/Cursor-0.50.5-x86_64.AppImage";
hash = "sha256-DUWIgQYD3Wj6hF7NBb00OGRynKmXcFldWFUA6W8CZeM=";
url = "https://downloads.cursor.com/production/53b99ce608cba35127ae3a050c1738a959750865/linux/x64/Cursor-1.0.0-x86_64.AppImage";
hash = "sha256-HJiT3aDB66K2slcGJDC21+WhK/kv4KCKVZgupbfmLG0=";
};
aarch64-linux = fetchurl {
url = "https://downloads.cursor.com/production/96e5b01ca25f8fbd4c4c10bc69b15f6228c80771/linux/arm64/Cursor-0.50.5-aarch64.AppImage";
hash = "sha256-51zTYg4A+4ZUbGZ6/Qp3d5aL8IafewGOUYbXWGG8ILY=";
url = "https://downloads.cursor.com/production/53b99ce608cba35127ae3a050c1738a959750865/linux/arm64/Cursor-1.0.0-aarch64.AppImage";
hash = "sha256-/F+OUD+sjnIt2ishusi7F/W1kK/n7hwL7Bz1cO3u+x4=";
};
x86_64-darwin = fetchurl {
url = "https://downloads.cursor.com/production/96e5b01ca25f8fbd4c4c10bc69b15f6228c80771/darwin/x64/Cursor-darwin-x64.dmg";
hash = "sha256-C2+z3WXi3Ma3PzlU8BrcuJFGMx8YosNdxuSqR5tJdBE=";
url = "https://downloads.cursor.com/production/53b99ce608cba35127ae3a050c1738a959750865/darwin/x64/Cursor-darwin-x64.dmg";
hash = "sha256-7JTgauy+vdoaPOtbYjhSCR+ZtVwzRYKHVelpnvS5oKw=";
};
aarch64-darwin = fetchurl {
url = "https://downloads.cursor.com/production/96e5b01ca25f8fbd4c4c10bc69b15f6228c80771/darwin/arm64/Cursor-darwin-arm64.dmg";
hash = "sha256-Gz+aYDaDMDx46R7HA8u5vZwkXx9q//uu4hNyyRmrq9s=";
url = "https://downloads.cursor.com/production/53b99ce608cba35127ae3a050c1738a959750865/darwin/arm64/Cursor-darwin-arm64.dmg";
hash = "sha256-kbSN4+ozVGVAGLqEuaDnWBNfzmFHYdAvbOsCb/KTpe8=";
};
};

View File

@ -31,7 +31,7 @@ rustPlatform.buildRustPackage rec {
buildInputs = [ openssl ];
meta = {
description = "A CLI tool that converts your codebase into a single LLM prompt with a source tree, prompt templating, and token counting";
description = "CLI tool that converts your codebase into a single LLM prompt with a source tree, prompt templating, and token counting";
homepage = "https://github.com/mufeedvh/code2prompt";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ heisfer ];

View File

@ -7,16 +7,16 @@
buildGoModule rec {
pname = "consul-template";
version = "0.40.0";
version = "0.41.0";
src = fetchFromGitHub {
owner = "hashicorp";
repo = "consul-template";
rev = "v${version}";
hash = "sha256-iqBcY7FYCO4qqQRAHxA2sxTnyL5c0vLVWKuhqvX0oJE=";
hash = "sha256-rPr69/U7+TZ7snzK8dvyd+5/O9/sqKMY/sIPOGkORs4=";
};
vendorHash = "sha256-Slp+x+cYYIC/XgICb9qDdqq1gTDxLNwXyClaWZt1fs8=";
vendorHash = "sha256-VUqRNK6OwSVydVbmxDe75JnI16JpnGT+wyAItqz781Q=";
# consul-template tests depend on vault and consul services running to
# execute tests so we skip them here

View File

@ -33,7 +33,7 @@ perlPackages.buildPerlPackage {
'';
meta = {
description = "A colourful wrapper for terminal programs";
description = "Colourful wrapper for terminal programs";
homepage = "https://github.com/deftdawg/cope";
license = with lib.licenses; [
artistic1

View File

@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
meta = {
homepage = "http://www.courier-mta.org/unicode/";
description = "The Courier Unicode Library is used by most other Courier packages";
description = "Courier Unicode Library is used by most other Courier packages";
license = lib.licenses.gpl3;
platforms = lib.platforms.linux;
};

View File

@ -0,0 +1,712 @@
[
# ISO-8859-1
"U+0000"
"U+0001"
"U+0002"
"U+0003"
"U+0004"
"U+0005"
"U+0006"
"U+0007"
"U+0008"
"U+0009"
"U+000A"
"U+000B"
"U+000C"
"U+000D"
"U+000E"
"U+000F"
"U+0010"
"U+0011"
"U+0012"
"U+0013"
"U+0014"
"U+0015"
"U+0016"
"U+0017"
"U+0018"
"U+0019"
"U+001A"
"U+001B"
"U+001C"
"U+001D"
"U+001E"
"U+001F"
"U+0020"
"U+0021"
"U+0022"
"U+0023"
"U+0024"
"U+0025"
"U+0026"
"U+0027"
"U+0028"
"U+0029"
"U+002A"
"U+002B"
"U+002C"
"U+002D"
"U+002E"
"U+002F"
"U+0030"
"U+0031"
"U+0032"
"U+0033"
"U+0034"
"U+0035"
"U+0036"
"U+0037"
"U+0038"
"U+0039"
"U+003A"
"U+003B"
"U+003C"
"U+003D"
"U+003E"
"U+003F"
"U+0040"
"U+0041"
"U+0042"
"U+0043"
"U+0044"
"U+0045"
"U+0046"
"U+0047"
"U+0048"
"U+0049"
"U+004A"
"U+004B"
"U+004C"
"U+004D"
"U+004E"
"U+004F"
"U+0050"
"U+0051"
"U+0052"
"U+0053"
"U+0054"
"U+0055"
"U+0056"
"U+0057"
"U+0058"
"U+0059"
"U+005A"
"U+005B"
"U+005C"
"U+005D"
"U+005E"
"U+005F"
"U+0060"
"U+0061"
"U+0062"
"U+0063"
"U+0064"
"U+0065"
"U+0066"
"U+0067"
"U+0068"
"U+0069"
"U+006A"
"U+006B"
"U+006C"
"U+006D"
"U+006E"
"U+006F"
"U+0070"
"U+0071"
"U+0072"
"U+0073"
"U+0074"
"U+0075"
"U+0076"
"U+0077"
"U+0078"
"U+0079"
"U+007A"
"U+007B"
"U+007C"
"U+007D"
"U+007E"
"U+007F"
"U+0080"
"U+0081"
"U+0082"
"U+0083"
"U+0084"
"U+0085"
"U+0086"
"U+0087"
"U+0088"
"U+0089"
"U+008A"
"U+008B"
"U+008C"
"U+008D"
"U+008E"
"U+008F"
"U+0090"
"U+0091"
"U+0092"
"U+0093"
"U+0094"
"U+0095"
"U+0096"
"U+0097"
"U+0098"
"U+0099"
"U+009A"
"U+009B"
"U+009C"
"U+009D"
"U+009E"
"U+009F"
"U+00A0"
"U+00A1"
"U+00A2"
"U+00A3"
"U+00A4"
"U+00A5"
"U+00A6"
"U+00A7"
"U+00A8"
"U+00A9"
"U+00AA"
"U+00AB"
"U+00AC"
"U+00AD"
"U+00AE"
"U+00AF"
"U+00B0"
"U+00B1"
"U+00B2"
"U+00B3"
"U+00B4"
"U+00B5"
"U+00B6"
"U+00B7"
"U+00B8"
"U+00B9"
"U+00BA"
"U+00BB"
"U+00BC"
"U+00BD"
"U+00BE"
"U+00BF"
"U+00C0"
"U+00C1"
"U+00C2"
"U+00C3"
"U+00C4"
"U+00C5"
"U+00C6"
"U+00C7"
"U+00C8"
"U+00C9"
"U+00CA"
"U+00CB"
"U+00CC"
"U+00CD"
"U+00CE"
"U+00CF"
"U+00D0"
"U+00D1"
"U+00D2"
"U+00D3"
"U+00D4"
"U+00D5"
"U+00D6"
"U+00D7"
"U+00D8"
"U+00D9"
"U+00DA"
"U+00DB"
"U+00DC"
"U+00DD"
"U+00DE"
"U+00DF"
"U+00E0"
"U+00E1"
"U+00E2"
"U+00E3"
"U+00E4"
"U+00E5"
"U+00E6"
"U+00E7"
"U+00E8"
"U+00E9"
"U+00EA"
"U+00EB"
"U+00EC"
"U+00ED"
"U+00EE"
"U+00EF"
"U+00F0"
"U+00F1"
"U+00F2"
"U+00F3"
"U+00F4"
"U+00F5"
"U+00F6"
"U+00F7"
"U+00F8"
"U+00F9"
"U+00FA"
"U+00FB"
"U+00FC"
"U+00FD"
"U+00FE"
"U+00FF"
# Box Drawing and Block Elements
"U+2500"
"U+2501"
"U+2502"
"U+2503"
"U+2504"
"U+2505"
"U+2506"
"U+2507"
"U+2508"
"U+2509"
"U+250A"
"U+250B"
"U+250C"
"U+250D"
"U+250E"
"U+250F"
"U+2510"
"U+2511"
"U+2512"
"U+2513"
"U+2514"
"U+2515"
"U+2516"
"U+2517"
"U+2518"
"U+2519"
"U+251A"
"U+251B"
"U+251C"
"U+251D"
"U+251E"
"U+251F"
"U+2520"
"U+2521"
"U+2522"
"U+2523"
"U+2524"
"U+2525"
"U+2526"
"U+2527"
"U+2528"
"U+2529"
"U+252A"
"U+252B"
"U+252C"
"U+252D"
"U+252E"
"U+252F"
"U+2530"
"U+2531"
"U+2532"
"U+2533"
"U+2534"
"U+2535"
"U+2536"
"U+2537"
"U+2538"
"U+2539"
"U+253A"
"U+253B"
"U+253C"
"U+253D"
"U+253E"
"U+253F"
"U+2540"
"U+2541"
"U+2542"
"U+2543"
"U+2544"
"U+2545"
"U+2546"
"U+2547"
"U+2548"
"U+2549"
"U+254A"
"U+254B"
"U+254C"
"U+254D"
"U+254E"
"U+254F"
"U+2550"
"U+2551"
"U+2552"
"U+2553"
"U+2554"
"U+2555"
"U+2556"
"U+2557"
"U+2558"
"U+2559"
"U+255A"
"U+255B"
"U+255C"
"U+255D"
"U+255E"
"U+255F"
"U+2560"
"U+2561"
"U+2562"
"U+2563"
"U+2564"
"U+2565"
"U+2566"
"U+2567"
"U+2568"
"U+2569"
"U+256A"
"U+256B"
"U+256C"
"U+256D"
"U+256E"
"U+256F"
"U+2570"
"U+2571"
"U+2572"
"U+2573"
"U+2574"
"U+2575"
"U+2576"
"U+2577"
"U+2578"
"U+2579"
"U+257A"
"U+257B"
"U+257C"
"U+257D"
"U+257E"
"U+257F"
"U+2580"
"U+2581"
"U+2582"
"U+2583"
"U+2584"
"U+2585"
"U+2586"
"U+2587"
"U+2588"
"U+2589"
"U+258A"
"U+258B"
"U+258C"
"U+258D"
"U+258E"
"U+258F"
"U+2590"
"U+2591"
"U+2592"
"U+2593"
#"U+2594"
#"U+2595"
"U+2596"
"U+2597"
"U+2598"
"U+2599"
"U+259A"
"U+259B"
"U+259C"
"U+259D"
"U+259E"
"U+259F"
# Braille Patterns
#"U+2800"
"U+2801"
"U+2802"
"U+2803"
"U+2804"
"U+2805"
"U+2806"
"U+2807"
"U+2808"
"U+2809"
"U+280A"
"U+280B"
"U+280C"
"U+280D"
"U+280E"
"U+280F"
"U+2810"
"U+2811"
"U+2812"
"U+2813"
"U+2814"
"U+2815"
"U+2816"
"U+2817"
"U+2818"
"U+2819"
"U+281A"
"U+281B"
"U+281C"
"U+281D"
"U+281E"
"U+281F"
"U+2820"
"U+2821"
"U+2822"
"U+2823"
"U+2824"
"U+2825"
"U+2826"
"U+2827"
"U+2828"
"U+2829"
"U+282A"
"U+282B"
"U+282C"
"U+282D"
"U+282E"
"U+282F"
"U+2830"
"U+2831"
"U+2832"
"U+2833"
"U+2834"
"U+2835"
"U+2836"
"U+2837"
"U+2838"
"U+2839"
"U+283A"
"U+283B"
"U+283C"
"U+283D"
"U+283E"
"U+283F"
"U+2840"
"U+2841"
"U+2842"
"U+2843"
"U+2844"
"U+2845"
"U+2846"
"U+2847"
"U+2848"
"U+2849"
"U+284A"
"U+284B"
"U+284C"
"U+284D"
"U+284E"
"U+284F"
"U+2850"
"U+2851"
"U+2852"
"U+2853"
"U+2854"
"U+2855"
"U+2856"
"U+2857"
"U+2858"
"U+2859"
"U+285A"
"U+285B"
"U+285C"
"U+285D"
"U+285E"
"U+285F"
"U+2860"
"U+2861"
"U+2862"
"U+2863"
"U+2864"
"U+2865"
"U+2866"
"U+2867"
"U+2868"
"U+2869"
"U+286A"
"U+286B"
"U+286C"
"U+286D"
"U+286E"
"U+286F"
"U+2870"
"U+2871"
"U+2872"
"U+2873"
"U+2874"
"U+2875"
"U+2876"
"U+2877"
"U+2878"
"U+2879"
"U+287A"
"U+287B"
"U+287C"
"U+287D"
"U+287E"
"U+287F"
"U+2880"
"U+2881"
"U+2882"
"U+2883"
"U+2884"
"U+2885"
"U+2886"
"U+2887"
"U+2888"
"U+2889"
"U+288A"
"U+288B"
"U+288C"
"U+288D"
"U+288E"
"U+288F"
"U+2890"
"U+2891"
"U+2892"
"U+2893"
"U+2894"
"U+2895"
"U+2896"
"U+2897"
"U+2898"
"U+2899"
"U+289A"
"U+289B"
"U+289C"
"U+289D"
"U+289E"
"U+289F"
"U+28A0"
"U+28A1"
"U+28A2"
"U+28A3"
"U+28A4"
"U+28A5"
"U+28A6"
"U+28A7"
"U+28A8"
"U+28A9"
"U+28AA"
"U+28AB"
"U+28AC"
"U+28AD"
"U+28AE"
"U+28AF"
"U+28B0"
"U+28B1"
"U+28B2"
"U+28B3"
"U+28B4"
"U+28B5"
"U+28B6"
"U+28B7"
"U+28B8"
"U+28B9"
"U+28BA"
"U+28BB"
"U+28BC"
"U+28BD"
"U+28BE"
"U+28BF"
"U+28C0"
"U+28C1"
"U+28C2"
"U+28C3"
"U+28C4"
"U+28C5"
"U+28C6"
"U+28C7"
"U+28C8"
"U+28C9"
"U+28CA"
"U+28CB"
"U+28CC"
"U+28CD"
"U+28CE"
"U+28CF"
"U+28D0"
"U+28D1"
"U+28D2"
"U+28D3"
"U+28D4"
"U+28D5"
"U+28D6"
"U+28D7"
"U+28D8"
"U+28D9"
"U+28DA"
"U+28DB"
"U+28DC"
"U+28DD"
"U+28DE"
"U+28DF"
"U+28E0"
"U+28E1"
"U+28E2"
"U+28E3"
"U+28E4"
"U+28E5"
"U+28E6"
"U+28E7"
"U+28E8"
"U+28E9"
"U+28EA"
"U+28EB"
"U+28EC"
"U+28ED"
"U+28EE"
"U+28EF"
"U+28F0"
"U+28F1"
"U+28F2"
"U+28F3"
"U+28F4"
"U+28F5"
"U+28F6"
"U+28F7"
"U+28F8"
"U+28F9"
"U+28FA"
"U+28FB"
"U+28FC"
"U+28FD"
"U+28FE"
"U+28FF"
# Superscripts and Subscripts
"U+2070"
"U+2074"
"U+2075"
"U+2076"
"U+2077"
"U+2078"
"U+2079"
"U+2080"
"U+2081"
"U+2082"
"U+2083"
"U+2084"
"U+2085"
"U+2086"
"U+2087"
"U+2088"
"U+2089"
# Powerline and Extra Symbols
"U+E0A0"
"U+E0A1"
"U+E0A2"
"U+E0B0"
"U+E0B1"
"U+E0B2"
"U+E0B3"
"U+E0A3" # column number
"U+E0B4" # right half circle
"U+E0B6" # left half circle }
]

View File

@ -2,8 +2,14 @@
lib,
stdenvNoCC,
fetchzip,
writeText,
bdf2psf,
codepoints ? (import ./default-codepoints.nix),
}:
let
codepoints_set = writeText "codepoints.set" (builtins.concatStringsSep "\n" codepoints);
in
stdenvNoCC.mkDerivation rec {
pname = "cozette";
version = "1.29.0";
@ -15,6 +21,20 @@ stdenvNoCC.mkDerivation rec {
hash = "sha256-DHUnCzp6c3d57cfkO2kH+czXRiqRWn6DBTo9NVTghQ0=";
};
nativeBuildInputs = [ bdf2psf ];
postBuild = ''
# Confine Powerline left divider symbols to strictly 6 pixels wide
awk -i inplace 'BEGIN { l=-128 } $1=="ENCODING"&&($2==57520||$2==57521||$2==57524) { l=FNR } l+4<FNR&&FNR<=l+17 { printf("%02X\n", and(lshift(strtonum("0x"$1), 1), 0xFF)); next; }{ print }' cozette.bdf
awk -i inplace 'BEGIN { l=-128 } $1=="ENCODING"&&($2==57520||$2==57521||$2==57524) { l=FNR } l+4<FNR&&FNR<=l+30 { printf("%04X\n", and(lshift(strtonum("0x"$1), 1), 0xFFFF)); next; }{ print }' cozette_hidpi.bdf
# Fix for bdf2psf limitation (See https://github.com/slavfox/Cozette/issues/122#issuecomment-2165328416)
sed -i -e 's/^BBX [2-8]/BBX 9/g' cozette_hidpi.bdf
bdf2psf --fb cozette.bdf ${bdf2psf}/share/bdf2psf/standard.equivalents ${codepoints_set} 512 cozette6x13.psfu
bdf2psf --fb cozette_hidpi.bdf ${bdf2psf}/share/bdf2psf/standard.equivalents ${codepoints_set} 512 cozette12x26.psfu
'';
installPhase = ''
runHook preInstall
@ -25,6 +45,8 @@ stdenvNoCC.mkDerivation rec {
install -Dm644 *.woff -t $out/share/fonts/woff
install -Dm644 *.woff2 -t $out/share/fonts/woff2
install -Dm644 *.psfu -t "$out/share/consolefonts/"
runHook postInstall
'';

View File

@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
];
meta = {
description = "A C++ Algorithmic Differentiation Package";
description = "C++ Algorithmic Differentiation Package";
homepage = "https://github.com/coin-or/CppAD";
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [

View File

@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
cmakeFlags = [ "-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}" ];
meta = with lib; {
description = "A cross platform C99 library to get cpu features at runtime";
description = "Cross platform C99 library to get cpu features at runtime";
homepage = "https://github.com/google/cpu_features";
license = licenses.asl20;
platforms = platforms.all;

View File

@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: {
doCheck = true;
meta = {
description = "A Fast and Easy to use microframework for the web";
description = "Fast and Easy to use microframework for the web";
homepage = "https://crowcpp.org/";
maintainers = with lib.maintainers; [ l33tname ];
platforms = lib.platforms.all;

View File

@ -55,7 +55,7 @@ stdenv.mkDerivation (finalAttrs: {
patches = [ ./cmake_disable_git_clone.patch ];
meta = {
description = "A nice terminal nCurses (tui) internet radio player for Linux, browse and search from api.radio-browser.info";
description = "Nice terminal nCurses (tui) internet radio player for Linux, browse and search from api.radio-browser.info";
homepage = "https://github.com/An7ar35/ctune";
changelog = "https://github.com/An7ar35/ctune/blob/master/CHANGELOG.md";
license = lib.licenses.agpl3Plus;

View File

@ -36,7 +36,7 @@ stdenv.mkDerivation {
meta = with lib; {
homepage = "https://github.com/amboar/culvert";
description = "A Test and Debug Tool for BMC AHB Interfaces ";
description = "Test and Debug Tool for BMC AHB Interfaces ";
mainProgram = "culvert";
license = licenses.asl20;
maintainers = [ maintainers.baloo ];

View File

@ -56,7 +56,7 @@ stdenv.mkDerivation {
'';
meta = {
description = "A 3DS streaming client for Linux";
description = "3DS streaming client for Linux";
homepage = "https://gitlab.com/BoltsJ/cuteNTR";
license = lib.licenses.gpl3Plus;
mainProgram = "cutentr";

View File

@ -39,7 +39,7 @@ let
];
inherit buildInputs;
meta = meta // {
description = "The C-Util Project is a collection of utility libraries for the C11 language.";
description = "C-Util Project is a collection of utility libraries for the C11 language";
homepage = "https://c-util.github.io/";
license = [
lib.licenses.asl20

View File

@ -35,7 +35,7 @@ stdenv.mkDerivation (finalAttrs: {
];
meta = {
description = "A very simple set of IPC classes for inter-process communication";
description = "Very simple set of IPC classes for inter-process communication";
homepage = "https://gitlab.com/desktop-frameworks/ipc";
changelog = "https://gitlab.com/desktop-frameworks/ipc/-/blob/${finalAttrs.src.rev}/ChangeLog";
license = lib.licenses.gpl3Only;

View File

@ -20,7 +20,7 @@ buildGoModule rec {
passthru.updateScript = nix-update-script { };
meta = {
description = "A simple terminal UI player for di.fm";
description = "Simple terminal UI player for di.fm";
homepage = "https://github.com/acaloiaro/di-tui";
license = lib.licenses.bsd2;
maintainers = [ lib.maintainers.acaloiaro ];

View File

@ -30,7 +30,7 @@ buildGoModule rec {
'';
meta = src.meta // {
description = "An extensive, fast, and accurate command-line image dithering tool";
description = "Extensive, fast, and accurate command-line image dithering tool";
license = lib.licenses.gpl3;
maintainers = with lib.maintainers; [ ehmry ];
mainProgram = "didder";

View File

@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
'';
meta = {
description = "A service manager / supervision system, which can (on Linux) also function as a system manager and init";
description = "Service manager / supervision system, which can (on Linux) also function as a system manager and init";
homepage = "https://davmac.org/projects/dinit";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ aanderse ];

View File

@ -21,7 +21,7 @@ buildGoModule rec {
meta = {
changelog = "https://github.com/phanirithvij/distrobox-tui/releases/tag/v${version}";
description = "A TUI for DistroBox";
description = "TUI for DistroBox";
homepage = "https://github.com/phanirithvij/distrobox-tui";
license = lib.licenses.gpl3Plus;
mainProgram = "distrobox-tui";

View File

@ -38,7 +38,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
homepage = "https://dita-ot.org";
changelog = "https://www.dita-ot.org/dev/release-notes/#v${finalAttrs.version}";
description = "The open-source publishing engine for content authored in the Darwin Information Typing Architecture";
description = "Open-source publishing engine for content authored in the Darwin Information Typing Architecture";
license = lib.licenses.asl20;
mainProgram = "dita";
platforms = openjdk17.meta.platforms;

View File

@ -17,7 +17,7 @@ buildGoModule {
vendorHash = "sha256-d9aGSBRblkvH5Ixw3jpbgC8lMW/qEYNJfLTVeUlos7A=";
meta = with lib; {
description = "A daemon for using DNS over HTTPS";
description = "Daemon for using DNS over HTTPS";
homepage = "https://blitiri.com.ar/git/r/dnss/";
license = licenses.asl20;
mainProgram = "dnss";

View File

@ -53,13 +53,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "dolphin-emu";
version = "2503a";
version = "2506";
src = fetchFromGitHub {
owner = "dolphin-emu";
repo = "dolphin";
tag = finalAttrs.version;
hash = "sha256-1IqrQi2aBUFpa3n/WI7nF1wqBPyyfpv02YIFfX/911w=";
hash = "sha256-JEp1rc5nNJY4GfNCR2Vi4ctQ14p+LZWuFPFirv6foUM=";
fetchSubmodules = true;
leaveDotGit = true;
postFetch = ''

View File

@ -1,13 +1,10 @@
{
lib,
fetchFromGitHub,
python311,
python3,
dooit,
nix-update-script,
}:
let
python3 = python311;
in
python3.pkgs.buildPythonPackage rec {
pname = "dooit-extras";
version = "0.2.1";

View File

@ -2,14 +2,11 @@
lib,
fetchFromGitHub,
dooit,
python311,
python3,
testers,
nix-update-script,
extraPackages ? [ ],
}:
let
python3 = python311;
in
python3.pkgs.buildPythonApplication rec {
pname = "dooit";
version = "3.2.2";

Some files were not shown because too many files have changed in this diff Show More