Merge 77fc6c546b into haskell-updates
This commit is contained in:
@@ -292,11 +292,16 @@ module.exports = async function ({ github, context, core, dry }) {
|
||||
})
|
||||
).data.workflow_runs[0]
|
||||
|
||||
// Go back as far as the last successful run of this workflow to make sure
|
||||
// we are not leaving anyone behind on GHA failures.
|
||||
// Defaults to go back 1 hour on the first run.
|
||||
const cutoff = new Date(
|
||||
lastRun?.created_at ?? new Date().getTime() - 1 * 60 * 60 * 1000,
|
||||
Math.max(
|
||||
// Go back as far as the last successful run of this workflow to make sure
|
||||
// we are not leaving anyone behind on GHA failures.
|
||||
// Defaults to go back 1 hour on the first run.
|
||||
new Date(lastRun?.created_at ?? new Date().getTime() - 1 * 60 * 60 * 1000).getTime(),
|
||||
// Go back max. 1 day to prevent hitting all API rate limits immediately,
|
||||
// when GH API returns a wrong workflow by accident.
|
||||
new Date().getTime() - 24 * 60 * 60 * 1000,
|
||||
),
|
||||
)
|
||||
core.info('cutoff timestamp: ' + cutoff.toISOString())
|
||||
|
||||
@@ -308,6 +313,7 @@ module.exports = async function ({ github, context, core, dry }) {
|
||||
'is:open',
|
||||
`updated:>=${cutoff.toISOString()}`,
|
||||
].join(' AND '),
|
||||
per_page: 100,
|
||||
// TODO: Remove in 2025-10, when it becomes the default.
|
||||
advanced_search: true,
|
||||
},
|
||||
|
||||
@@ -223,6 +223,10 @@ If `null` (which is the default value), the one included in `src` is used.
|
||||
`editedCabalFile`
|
||||
: `sha256` hash of the cabal file identified by `revision` or `null`.
|
||||
|
||||
`env`
|
||||
: Extra environment variables to set during the build.
|
||||
These will also be set inside the [development environment defined by the `passthru.env` attribute in the returned derivation](#haskell-development-environments), but will not be set inside a development environment built with [`shellFor`](#haskell-shellFor) that includes this package.
|
||||
|
||||
`configureFlags`
|
||||
: Extra flags passed when executing the `configure` command of `Setup.hs`.
|
||||
|
||||
|
||||
@@ -1445,12 +1445,6 @@
|
||||
githubId = 5149377;
|
||||
name = "Amine Chikhaoui";
|
||||
};
|
||||
amorsillo = {
|
||||
email = "andrew.morsillo@gmail.com";
|
||||
github = "evelant";
|
||||
githubId = 858965;
|
||||
name = "Andrew Morsillo";
|
||||
};
|
||||
amozeo = {
|
||||
email = "wroclaw223@outlook.com";
|
||||
github = "amozeo";
|
||||
@@ -6210,12 +6204,6 @@
|
||||
githubId = 21953890;
|
||||
name = "Tim Digel";
|
||||
};
|
||||
desiderius = {
|
||||
email = "didier@devroye.name";
|
||||
github = "desiderius";
|
||||
githubId = 1311761;
|
||||
name = "Didier J. Devroye";
|
||||
};
|
||||
desttinghim = {
|
||||
email = "opensource@louispearson.work";
|
||||
matrix = "@desttinghim:matrix.org";
|
||||
@@ -11280,6 +11268,13 @@
|
||||
githubId = 45084216;
|
||||
keys = [ { fingerprint = "1BF9 8D10 E0D0 0B41 5723 5836 4C13 3A84 E646 9228"; } ];
|
||||
};
|
||||
JacoMalan1 = {
|
||||
name = "Jaco Malan";
|
||||
email = "jacom@codelog.co.za";
|
||||
github = "JacoMalan1";
|
||||
githubId = 10290409;
|
||||
keys = [ { fingerprint = "339C 9213 7F2D 5D6E 2B6A 6E98 240B B4C4 27BC 327A"; } ];
|
||||
};
|
||||
jaculabilis = {
|
||||
name = "Tim Van Baak";
|
||||
email = "tim.vanbaak@gmail.com";
|
||||
@@ -19007,13 +19002,6 @@
|
||||
githubId = 104593071;
|
||||
name = "Oliver Schmidt";
|
||||
};
|
||||
osslate = {
|
||||
email = "fionn@kelleher.email";
|
||||
github = "osslate";
|
||||
githubId = 773673;
|
||||
matrix = "@osslate:fsfe.org";
|
||||
name = "Fionn Kelleher";
|
||||
};
|
||||
ostrolucky = {
|
||||
email = "gabriel.ostrolucky@gmail.com";
|
||||
github = "ostrolucky";
|
||||
@@ -22485,10 +22473,10 @@
|
||||
name = "Sauyon Lee";
|
||||
};
|
||||
savalet = {
|
||||
email = "savinien.petitjean@gmail.com";
|
||||
email = "me@savalet.dev";
|
||||
github = "savalet";
|
||||
githubId = 73446695;
|
||||
name = "savalet";
|
||||
name = "Savinien Petitjean";
|
||||
};
|
||||
savannidgerinel = {
|
||||
email = "savanni@luminescent-dreams.com";
|
||||
@@ -25986,6 +25974,11 @@
|
||||
githubId = 57819359;
|
||||
name = "Binh Nguyen";
|
||||
};
|
||||
tuynia = {
|
||||
github = "mivorasu";
|
||||
githubId = 221005165;
|
||||
name = "Qylia Vorlaque";
|
||||
};
|
||||
tv = {
|
||||
email = "tv@krebsco.de";
|
||||
github = "4z3";
|
||||
|
||||
@@ -343,6 +343,15 @@ source: @NIXOS_TEST_OPTIONS_JSON@
|
||||
|
||||
## Accessing VMs in the sandbox with SSH {#sec-test-sandbox-breakpoint}
|
||||
|
||||
::: {.note}
|
||||
For debugging with SSH access into the machines, it's recommended to try using
|
||||
[the interactive driver](#sec-running-nixos-tests-interactively) with its
|
||||
[SSH backdoor](#sec-nixos-test-ssh-access) first.
|
||||
|
||||
This feature is mostly intended to debug flaky test failures that aren't
|
||||
reproducible elsewhere.
|
||||
:::
|
||||
|
||||
As explained in [](#sec-nixos-test-ssh-access), it's possible to configure an
|
||||
SSH backdoor based on AF_VSOCK. This can be used to SSH into a VM of a running
|
||||
build in a sandbox.
|
||||
|
||||
@@ -857,6 +857,12 @@
|
||||
"modules-services-akkoma-distributed-deployment": [
|
||||
"index.html#modules-services-akkoma-distributed-deployment"
|
||||
],
|
||||
"module-services-atalkd": [
|
||||
"index.html#module-services-atalkd"
|
||||
],
|
||||
"module-services-atalkd-basic-usage": [
|
||||
"index.html#module-services-atalkd-basic-usage"
|
||||
],
|
||||
"module-services-systemd-lock-handler": [
|
||||
"index.html#module-services-systemd-lock-handler"
|
||||
],
|
||||
|
||||
@@ -19,6 +19,8 @@
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
};
|
||||
|
||||
package = lib.mkPackageOption pkgs "iio-sensor-proxy" { };
|
||||
};
|
||||
};
|
||||
|
||||
@@ -28,10 +30,10 @@
|
||||
|
||||
boot.initrd.availableKernelModules = [ "hid-sensor-hub" ];
|
||||
|
||||
environment.systemPackages = with pkgs; [ iio-sensor-proxy ];
|
||||
environment.systemPackages = [ config.hardware.sensor.iio.package ];
|
||||
|
||||
services.dbus.packages = with pkgs; [ iio-sensor-proxy ];
|
||||
services.udev.packages = with pkgs; [ iio-sensor-proxy ];
|
||||
systemd.packages = with pkgs; [ iio-sensor-proxy ];
|
||||
services.dbus.packages = [ config.hardware.sensor.iio.package ];
|
||||
services.udev.packages = [ config.hardware.sensor.iio.package ];
|
||||
systemd.packages = [ config.hardware.sensor.iio.package ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -333,6 +333,7 @@
|
||||
./programs/vim.nix
|
||||
./programs/virt-manager.nix
|
||||
./programs/vivid.nix
|
||||
./programs/vscode.nix
|
||||
./programs/wavemon.nix
|
||||
./programs/wayland/cardboard.nix
|
||||
./programs/wayland/dwl.nix
|
||||
@@ -1073,6 +1074,7 @@
|
||||
./services/networking/anubis.nix
|
||||
./services/networking/aria2.nix
|
||||
./services/networking/asterisk.nix
|
||||
./services/networking/atalkd.nix
|
||||
./services/networking/atftpd.nix
|
||||
./services/networking/atticd.nix
|
||||
./services/networking/autossh.nix
|
||||
|
||||
@@ -47,7 +47,10 @@ let
|
||||
);
|
||||
|
||||
driverPaths = [
|
||||
# opengl:
|
||||
# NOTE: Since driverLink is just a symlink, we need to include its target as well.
|
||||
pkgs.addDriverRunpath.driverLink
|
||||
config.systemd.tmpfiles.settings.graphics-driver."/run/opengl-driver"."L+".argument
|
||||
|
||||
# mesa:
|
||||
config.hardware.graphics.package
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
cfg = config.programs.vscode;
|
||||
in
|
||||
{
|
||||
options.programs.vscode = {
|
||||
enable = lib.mkEnableOption "VSCode editor";
|
||||
|
||||
defaultEditor = lib.mkEnableOption "" // {
|
||||
description = ''
|
||||
When enabled, configures VSCode to be the default editor
|
||||
using the EDITOR environment variable.
|
||||
'';
|
||||
};
|
||||
|
||||
package = lib.mkPackageOption pkgs "vscode" {
|
||||
extraDescription = "The final package will be customized with extensions from {option}`programs.vscode.extensions`";
|
||||
};
|
||||
|
||||
extensions = lib.mkOption {
|
||||
type = lib.types.listOf lib.types.package;
|
||||
default = [ ];
|
||||
example = lib.literalExpression ''
|
||||
with pkgs.vscode-extensions; [
|
||||
bbenoist.nix
|
||||
golang.go
|
||||
twxs.cmake
|
||||
]
|
||||
'';
|
||||
description = "List of extensions to install.";
|
||||
};
|
||||
|
||||
finalPackage = lib.mkOption {
|
||||
type = lib.types.package;
|
||||
visible = false;
|
||||
readOnly = true;
|
||||
description = "Resulting customized VSCode package.";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.systemPackages = [
|
||||
cfg.finalPackage
|
||||
];
|
||||
|
||||
environment.variables.EDITOR = lib.mkIf cfg.defaultEditor (
|
||||
lib.mkOverride 900 cfg.finalPackage.meta.mainProgram
|
||||
);
|
||||
|
||||
programs.vscode.finalPackage = pkgs.vscode-with-extensions.override {
|
||||
vscode = cfg.package;
|
||||
vscodeExtensions = cfg.extensions;
|
||||
};
|
||||
};
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ ethancedwards8 ];
|
||||
}
|
||||
@@ -176,6 +176,10 @@ in
|
||||
krdp
|
||||
xwaylandvideobridge # exposes Wayland windows to X11 screen capture
|
||||
]
|
||||
++ lib.optionals config.hardware.sensor.iio.enable [
|
||||
# This is required for autorotation in Plasma 6
|
||||
qtsensors
|
||||
]
|
||||
++ lib.optionals config.services.flatpak.enable [
|
||||
# Since PackageKit Nix support is not there yet,
|
||||
# only install discover if flatpak is enabled.
|
||||
|
||||
@@ -100,7 +100,7 @@ in
|
||||
ProtectHostname = true;
|
||||
ProtectKernelLogs = true;
|
||||
ProtectKernelModules = true;
|
||||
ProtectKernalTunables = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectProc = "invisible";
|
||||
ProcSubset = "pid";
|
||||
RemoveIPC = true;
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
# atalkd {#module-services-atalkd}
|
||||
|
||||
atalkd (AppleTalk daemon) is a component inside of the suite of software provided by Netatalk. It allows for the creation of AppleTalk networks, typically speaking over a Linux ethernet network interface, that can still be seen by classic macintosh computers. Using the NixOS module, you can specify a set of network interfaces that you wish to speak AppleTalk on, and the corresponding ATALKD.CONF(5) values to go along with it.
|
||||
|
||||
## Basic Usage {#module-services-atalkd-basic-usage}
|
||||
|
||||
A minimal configuration looks like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
services.atalkd = {
|
||||
enable = true;
|
||||
interfaces.wlan0.config = "-router -phase 2 -net 1 -addr 1.48 -zone \"Default\"";
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
It is also valid to use atalkd without setting `services.netatalk.interfaces` to any value, only providing `services.atalkd.enable = true`. In this case it will inherit the behavior of the upstream application when an empty config file is found, which is to listen on and use all interfaces.
|
||||
@@ -0,0 +1,98 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
utils,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
cfg = config.services.atalkd;
|
||||
|
||||
# Generate atalkd.conf only if configFile isn't manually specified
|
||||
atalkdConfFile = pkgs.writeText "atalkd.conf" (
|
||||
lib.concatStringsSep "\n" (
|
||||
lib.mapAttrsToList (
|
||||
iface: ifaceCfg: iface + (if ifaceCfg.config != null then " ${ifaceCfg.config}" else "")
|
||||
) cfg.interfaces
|
||||
)
|
||||
);
|
||||
in
|
||||
{
|
||||
options.services.atalkd = {
|
||||
enable = lib.mkEnableOption "the AppleTalk daemon";
|
||||
|
||||
configFile = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.path;
|
||||
default = atalkdConfFile;
|
||||
defaultText = "/nix/store/xxx-atalkd.conf";
|
||||
description = ''
|
||||
Optional path to a custom `atalkd.conf` file. When set, this overrides the generated
|
||||
configuration from `services.atalkd.interfaces`.
|
||||
'';
|
||||
};
|
||||
|
||||
interfaces = lib.mkOption {
|
||||
description = "Per-interface configuration for atalkd.";
|
||||
type = lib.types.attrsOf (
|
||||
lib.types.submodule {
|
||||
options.config = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.str;
|
||||
default = null;
|
||||
description = "Optional configuration string for this interface.";
|
||||
};
|
||||
}
|
||||
);
|
||||
default = { };
|
||||
};
|
||||
};
|
||||
|
||||
config =
|
||||
let
|
||||
interfaces = map (iface: "sys-subsystem-net-devices-${utils.escapeSystemdPath iface}.device") (
|
||||
builtins.attrNames cfg.interfaces
|
||||
);
|
||||
in
|
||||
lib.mkIf cfg.enable {
|
||||
system.requiredKernelConfig = [
|
||||
(config.lib.kernelConfig.isEnabled "APPLETALK")
|
||||
];
|
||||
systemd.services.netatalk.partOf = [ "atalkd.service" ];
|
||||
systemd.services.netatalk.after = interfaces;
|
||||
systemd.services.netatalk.requires = interfaces;
|
||||
systemd.services.atalkd =
|
||||
let
|
||||
interfaces = map (iface: "sys-subsystem-net-devices-${utils.escapeSystemdPath iface}.device") (
|
||||
builtins.attrNames cfg.interfaces
|
||||
);
|
||||
in
|
||||
{
|
||||
|
||||
description = "atalkd AppleTalk daemon";
|
||||
unitConfig.Documentation = "man:atalkd.conf(5) man:atalkd(8)";
|
||||
after = interfaces;
|
||||
wants = [ "network.target" ];
|
||||
before = [ "netatalk.service" ];
|
||||
requires = interfaces;
|
||||
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
path = [ pkgs.netatalk ];
|
||||
|
||||
serviceConfig = {
|
||||
Type = "forking";
|
||||
GuessMainPID = "no";
|
||||
DynamicUser = true;
|
||||
AmbientCapabilities = [ "CAP_NET_ADMIN" ];
|
||||
RuntimeDirectory = "atalkd";
|
||||
PIDFile = "/run/atalkd/atalkd";
|
||||
BindPaths = [ "/run/atalkd:/run/lock" ];
|
||||
ExecStart = "${pkgs.netatalk}/bin/atalkd -f ${cfg.configFile}";
|
||||
Restart = "always";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ matthewcroughan ];
|
||||
meta.doc = ./atalkd.md;
|
||||
}
|
||||
@@ -54,7 +54,7 @@ in
|
||||
let
|
||||
g3proxy-yaml = settingsFormat.generate "g3proxy.yaml" cfg.settings;
|
||||
in
|
||||
"${lib.getExe cfg.package} --config-file ${g3proxy-yaml}";
|
||||
"${lib.getExe cfg.package} --config-file ${g3proxy-yaml} --systemd --control-dir %t/g3proxy";
|
||||
|
||||
WorkingDirectory = "/var/lib/g3proxy";
|
||||
StateDirectory = "g3proxy";
|
||||
|
||||
@@ -71,7 +71,7 @@ let
|
||||
};
|
||||
|
||||
cupsFilesFile = writeConf "cups-files.conf" ''
|
||||
SystemGroup root wheel
|
||||
SystemGroup root wheel lpadmin
|
||||
|
||||
ServerBin ${bindir}/lib/cups
|
||||
DataDir ${bindir}/share/cups
|
||||
@@ -361,10 +361,15 @@ in
|
||||
|
||||
config = mkIf config.services.printing.enable {
|
||||
|
||||
users.users.cups = {
|
||||
uid = config.ids.uids.cups;
|
||||
group = "lp";
|
||||
description = "CUPS printing services";
|
||||
users = {
|
||||
users.cups = {
|
||||
uid = config.ids.uids.cups;
|
||||
group = "lp";
|
||||
description = "CUPS printing services";
|
||||
};
|
||||
|
||||
# It seems that groups provided for `SystemGroup` must exist
|
||||
groups.lpadmin = { };
|
||||
};
|
||||
|
||||
# We need xdg-open (part of xdg-utils) for the desktop-file to proper open the users default-browser when opening "Manage Printing"
|
||||
|
||||
@@ -22,6 +22,10 @@ in
|
||||
description = "Port for LANraragi's web interface.";
|
||||
};
|
||||
|
||||
openFirewall = lib.mkEnableOption "" // {
|
||||
description = "Open ports in the firewall for the Radarr web interface.";
|
||||
};
|
||||
|
||||
passwordFile = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.path;
|
||||
default = null;
|
||||
@@ -103,5 +107,9 @@ in
|
||||
EOF
|
||||
'';
|
||||
};
|
||||
|
||||
networking.firewall = lib.mkIf cfg.openFirewall {
|
||||
allowedTCPPorts = [ cfg.port ];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -34,7 +34,6 @@ let
|
||||
"@obsolete"
|
||||
"@privileged"
|
||||
"@setuid"
|
||||
"@spawn"
|
||||
];
|
||||
|
||||
cfgService = {
|
||||
|
||||
@@ -1331,7 +1331,7 @@ in
|
||||
ssh-audit = runTest ./ssh-audit.nix;
|
||||
sssd = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./sssd.nix { };
|
||||
sssd-ldap = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./sssd-ldap.nix { };
|
||||
stalwart-mail = runTest ./stalwart-mail.nix;
|
||||
stalwart-mail = runTest ./stalwart/stalwart-mail.nix;
|
||||
stargazer = runTest ./web-servers/stargazer.nix;
|
||||
starship = runTest ./starship.nix;
|
||||
stash = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./stash.nix { };
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
{ pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
certs = import ../common/acme/server/snakeoil-certs.nix;
|
||||
domain = certs.domain;
|
||||
in
|
||||
{
|
||||
security.pki.certificateFiles = [ certs.ca.cert ];
|
||||
|
||||
services.stalwart-mail = {
|
||||
enable = true;
|
||||
settings = {
|
||||
server.hostname = domain;
|
||||
|
||||
certificate."snakeoil" = {
|
||||
cert = "%{file:${certs.${domain}.cert}}%";
|
||||
private-key = "%{file:${certs.${domain}.key}}%";
|
||||
};
|
||||
|
||||
server.tls = {
|
||||
certificate = "snakeoil";
|
||||
enable = true;
|
||||
implicit = false;
|
||||
};
|
||||
|
||||
server.listener = {
|
||||
"smtp-submission" = {
|
||||
bind = [ "[::]:587" ];
|
||||
protocol = "smtp";
|
||||
};
|
||||
|
||||
"imap" = {
|
||||
bind = [ "[::]:143" ];
|
||||
protocol = "imap";
|
||||
};
|
||||
|
||||
"http" = {
|
||||
bind = [ "[::]:80" ];
|
||||
protocol = "http";
|
||||
};
|
||||
};
|
||||
|
||||
session.auth.mechanisms = "[plain]";
|
||||
session.auth.directory = "'in-memory'";
|
||||
storage.directory = "in-memory";
|
||||
|
||||
storage.data = "rocksdb";
|
||||
storage.fts = "rocksdb";
|
||||
storage.blob = "rocksdb";
|
||||
storage.lookup = "rocksdb";
|
||||
|
||||
session.rcpt.directory = "'in-memory'";
|
||||
queue.outbound.next-hop = "'local'";
|
||||
|
||||
store."rocksdb" = {
|
||||
type = "rocksdb";
|
||||
path = "/var/lib/stalwart-mail/data";
|
||||
compression = "lz4";
|
||||
};
|
||||
|
||||
directory."in-memory" = {
|
||||
type = "memory";
|
||||
principals = [
|
||||
{
|
||||
class = "individual";
|
||||
name = "alice";
|
||||
secret = "foobar";
|
||||
email = [ "alice@${domain}" ];
|
||||
}
|
||||
{
|
||||
class = "individual";
|
||||
name = "bob";
|
||||
secret = "foobar";
|
||||
email = [ "bob@${domain}" ];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
@@ -3,9 +3,8 @@
|
||||
# - serve this message through IMAP.
|
||||
|
||||
let
|
||||
certs = import ./common/acme/server/snakeoil-certs.nix;
|
||||
certs = import ../common/acme/server/snakeoil-certs.nix;
|
||||
domain = certs.domain;
|
||||
|
||||
in
|
||||
{ lib, ... }:
|
||||
{
|
||||
@@ -14,78 +13,9 @@ in
|
||||
nodes.main =
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
security.pki.certificateFiles = [ certs.ca.cert ];
|
||||
|
||||
services.stalwart-mail = {
|
||||
enable = true;
|
||||
settings = {
|
||||
server.hostname = domain;
|
||||
|
||||
certificate."snakeoil" = {
|
||||
cert = "%{file:${certs.${domain}.cert}}%";
|
||||
private-key = "%{file:${certs.${domain}.key}}%";
|
||||
};
|
||||
|
||||
server.tls = {
|
||||
certificate = "snakeoil";
|
||||
enable = true;
|
||||
implicit = false;
|
||||
};
|
||||
|
||||
server.listener = {
|
||||
"smtp-submission" = {
|
||||
bind = [ "[::]:587" ];
|
||||
protocol = "smtp";
|
||||
};
|
||||
|
||||
"imap" = {
|
||||
bind = [ "[::]:143" ];
|
||||
protocol = "imap";
|
||||
};
|
||||
|
||||
"http" = {
|
||||
bind = [ "[::]:80" ];
|
||||
protocol = "http";
|
||||
};
|
||||
};
|
||||
|
||||
session.auth.mechanisms = "[plain]";
|
||||
session.auth.directory = "'in-memory'";
|
||||
storage.directory = "in-memory";
|
||||
|
||||
storage.data = "rocksdb";
|
||||
storage.fts = "rocksdb";
|
||||
storage.blob = "rocksdb";
|
||||
storage.lookup = "rocksdb";
|
||||
|
||||
session.rcpt.directory = "'in-memory'";
|
||||
queue.outbound.next-hop = "'local'";
|
||||
|
||||
store."rocksdb" = {
|
||||
type = "rocksdb";
|
||||
path = "/var/lib/stalwart-mail/data";
|
||||
compression = "lz4";
|
||||
};
|
||||
|
||||
directory."in-memory" = {
|
||||
type = "memory";
|
||||
principals = [
|
||||
{
|
||||
class = "individual";
|
||||
name = "alice";
|
||||
secret = "foobar";
|
||||
email = [ "alice@${domain}" ];
|
||||
}
|
||||
{
|
||||
class = "individual";
|
||||
name = "bob";
|
||||
secret = "foobar";
|
||||
email = [ "bob@${domain}" ];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
imports = [
|
||||
./stalwart-mail-config.nix
|
||||
];
|
||||
|
||||
environment.systemPackages = [
|
||||
(pkgs.writers.writePython3Bin "test-smtp-submission" { } ''
|
||||
@@ -40,7 +40,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "polyphonic additive synthesizer";
|
||||
description = "Polyphonic additive synthesizer";
|
||||
mainProgram = "padthv1_jack";
|
||||
homepage = "http://padthv1.sourceforge.net/";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
|
||||
@@ -7,12 +7,12 @@
|
||||
|
||||
let
|
||||
pname = "plexamp";
|
||||
version = "4.12.3";
|
||||
version = "4.12.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://plexamp.plex.tv/plexamp.plex.tv/desktop/Plexamp-${version}.AppImage";
|
||||
name = "${pname}-${version}.AppImage";
|
||||
hash = "sha512-gjOjk/JtHbhEDGzWH/bBtNd7qsYS97hBlPbRw7uWH/PCXD4urUWBrlihNWAOgYClVwl7nbrx/y7mhCrI2N6c1w==";
|
||||
hash = "sha512-LtYqC4pqX7hA+clUj9UVrp0YWebELULM23SsYlKnVDcYbZn8LJldiOOebS0+SU4RqK1a8Z3Kh4fPJ/HfijP0qw==";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extractType2 {
|
||||
@@ -38,7 +38,7 @@ appimageTools.wrapType2 {
|
||||
meta = with lib; {
|
||||
description = "Beautiful Plex music player for audiophiles, curators, and hipsters";
|
||||
homepage = "https://plexamp.com/";
|
||||
changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/80";
|
||||
changelog = "https://forums.plex.tv/t/plexamp-release-notes/221280/81";
|
||||
license = licenses.unfree;
|
||||
maintainers = with maintainers; [
|
||||
killercup
|
||||
|
||||
@@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = ''A real-time graphical programming environment for audio, video, and graphical processing'';
|
||||
description = ''Real-time graphical programming environment for audio, video, and graphical processing'';
|
||||
homepage = "http://puredata.info";
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
|
||||
@@ -100,7 +100,7 @@ mkDerivation rec {
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://leo-editor.github.io/leo-editor/";
|
||||
description = "A powerful folding editor";
|
||||
description = "Powerful folding editor";
|
||||
longDescription = "Leo is a PIM, IDE and outliner that accelerates the work flow of programmers, authors and web designers.";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [
|
||||
|
||||
@@ -4055,6 +4055,8 @@ let
|
||||
|
||||
reditorsupport.r = callPackage ./reditorsupport.r { };
|
||||
|
||||
release-candidate.vscode-scheme-repl = callPackage ./release-candidate.vscode-scheme-repl { };
|
||||
|
||||
reloadedextensions.reloaded-cpp = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "reloaded-cpp";
|
||||
@@ -4929,6 +4931,8 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
tsyesika.guile-scheme-enhanced = callPackage ./tsyesika.guile-scheme-enhanced { };
|
||||
|
||||
tuttieee.emacs-mcx = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "emacs-mcx";
|
||||
@@ -4983,6 +4987,8 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
ufo5260987423.magic-scheme = callPackage ./ufo5260987423.magic-scheme { };
|
||||
|
||||
uiua-lang.uiua-vscode = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "uiua-vscode";
|
||||
|
||||
@@ -16,7 +16,7 @@ vscode-utils.buildVscodeMarketplaceExtension rec {
|
||||
name = "python";
|
||||
publisher = "ms-python";
|
||||
version = "2025.10.0";
|
||||
hash = "sha256-8dc1uM/6iUNF+9y4yKH7w4/FsrzgVoOJlIFfQOvY8YM=";
|
||||
hash = "sha256-uD6NWGD5GyYwd7SeoGsgYEH26NI+hDxCx3f2EhqoOXk=";
|
||||
};
|
||||
|
||||
buildInputs = [ icu ];
|
||||
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
{
|
||||
lib,
|
||||
vscode-utils,
|
||||
jq,
|
||||
chez,
|
||||
moreutils,
|
||||
}:
|
||||
|
||||
vscode-utils.buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "release-candidate";
|
||||
name = "vscode-scheme-repl";
|
||||
version = "0.7.4";
|
||||
hash = "sha256-Pfy0aJXq8I53o5mG4dfzyqsyLQX0bs+phBgN46yU/Yw=";
|
||||
};
|
||||
|
||||
postInstall = ''
|
||||
cd "$out/$installPrefix"
|
||||
${lib.getExe jq} '.contributes.configuration.properties."chezScheme.schemePath" = "${lib.getExe' chez "scheme"}"' package.json | ${lib.getExe' moreutils "sponge"} package.json
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Uses REPL for autocompletions and to evaluate expressions";
|
||||
downloadPage = "https://marketplace.visualstudio.com/items?itemName=release-candidate.vscode-scheme-repl";
|
||||
homepage = "https://github.com/Release-Candidate/vscode-scheme-repl";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ tuynia ];
|
||||
};
|
||||
}
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
{
|
||||
lib,
|
||||
vscode-utils,
|
||||
jq,
|
||||
guile,
|
||||
moreutils,
|
||||
}:
|
||||
|
||||
vscode-utils.buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "tsyesika";
|
||||
name = "guile-scheme-enhanced";
|
||||
version = "0.0.2";
|
||||
hash = "sha256-uoHYfbLeANHnMB7OgDQPfIIlNN7LgERS9zQfa+QIk0M=";
|
||||
};
|
||||
|
||||
postInstall = ''
|
||||
cd "$out/$installPrefix"
|
||||
${lib.getExe jq} '.contributes.configuration.properties."guileScheme.guileREPLCommand".default = "${lib.getExe' guile "guile"}"' package.json | ${lib.getExe' moreutils "sponge"} package.json
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Better experience for working with scheme";
|
||||
downloadPage = "https://marketplace.visualstudio.com/items?itemName=tsyesika.guile-scheme-enhanced";
|
||||
homepage = "https://codeberg.org/tsyesika/vscode-guile-scheme-enhanced";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ tuynia ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
{
|
||||
lib,
|
||||
vscode-utils,
|
||||
jq,
|
||||
akkuPackages,
|
||||
chez,
|
||||
akku,
|
||||
moreutils,
|
||||
}:
|
||||
|
||||
vscode-utils.buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "ufo5260987423";
|
||||
name = "magic-scheme";
|
||||
version = "0.0.5";
|
||||
hash = "sha256-br1Vr4gIC2Zo74NHyCLTJL+GCjFzdOZh2oXIXZdJuRw=";
|
||||
};
|
||||
|
||||
postInstall = ''
|
||||
cd "$out/$installPrefix"
|
||||
${lib.getExe jq} '.contributes.configuration.properties."magicScheme.scheme-langserver.serverPath".default = "${lib.getExe' akkuPackages.scheme-langserver "scheme-langserver"}" | .contributes.configuration.properties."magicScheme.scheme.path".default = "${lib.getExe' chez "scheme"}" | .contributes.configuration.properties."magicScheme.akku.path".default = "${lib.getExe akku}"' package.json | ${lib.getExe' moreutils "sponge"} package.json
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Adds support for Scheme(r6rs standard)";
|
||||
downloadPage = "https://marketplace.visualstudio.com/items?itemName=ufo5260987423.magic-scheme";
|
||||
homepage = "https://github.com/ufo5260987423/magic-scheme";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ tuynia ];
|
||||
};
|
||||
}
|
||||
@@ -11,26 +11,26 @@ vscode-utils.buildVscodeMarketplaceExtension {
|
||||
sources = {
|
||||
"x86_64-linux" = {
|
||||
arch = "linux-x64";
|
||||
hash = "sha256-/6V4hjwp3Vy4WEwTtcYvJk6Rt3AIeKqXWJ09Zsp9CZg=";
|
||||
hash = "sha256-QOMJIhgc/dixPDUmir7bq5dWYGUfEWHJOlgTbGkxuDo=";
|
||||
};
|
||||
"x86_64-darwin" = {
|
||||
arch = "darwin-x64";
|
||||
hash = "sha256-bMwiMIhsvF6Q12vCgt9Os109acqW8Ovpt3o9Y8Sf+gk=";
|
||||
hash = "sha256-CucMSzmeYdrSbXZbevyJb3M2oTkyatddAt2MUMXNwl0=";
|
||||
};
|
||||
"aarch64-linux" = {
|
||||
arch = "linux-arm64";
|
||||
hash = "sha256-SwBHNKqif3mGqNSF6Y100HCDaLmARe0jApPol7AzsOQ=";
|
||||
hash = "sha256-Lv/Hqp5OGC66qdIj/5VPlj434ftK4BBHNWlgg2ZAAac=";
|
||||
};
|
||||
"aarch64-darwin" = {
|
||||
arch = "darwin-arm64";
|
||||
hash = "sha256-SGTQdjvrXkEaCuHv9dfJfCBUgkfOtf+kLPiHYAqJ7+8=";
|
||||
hash = "sha256-KuAT8+8t6YlQ4VygtxGindvSRs1x7oKT9ZgE7Vhvf8I=";
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
name = "visualjj";
|
||||
publisher = "visualjj";
|
||||
version = "0.15.4";
|
||||
version = "0.16.1";
|
||||
}
|
||||
// sources.${stdenvNoCC.hostPlatform.system}
|
||||
or (throw "Unsupported system ${stdenvNoCC.hostPlatform.system}");
|
||||
|
||||
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Your-editor (yed) is a small and simple terminal editor core that is meant to be extended through a powerful plugin architecture";
|
||||
description = "Small and simple terminal editor core that is meant to be extended through a powerful plugin architecture";
|
||||
homepage = "https://your-editor.org/";
|
||||
changelog = "https://github.com/your-editor/yed/blob/${version}/CHANGELOG.md";
|
||||
license = with lib.licenses; [ mit ];
|
||||
|
||||
@@ -5,13 +5,13 @@
|
||||
}:
|
||||
mkLibretroCore {
|
||||
core = "genesis-plus-gx";
|
||||
version = "0-unstable-2025-06-27";
|
||||
version = "0-unstable-2025-07-18";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "libretro";
|
||||
repo = "Genesis-Plus-GX";
|
||||
rev = "7eaca304a77827d4ba0f9bd9e23aca1ed8eb231e";
|
||||
hash = "sha256-hcl0iN7AfZEncXFC8GvD6D8olr+NlIOcVV42dZ6G55Y=";
|
||||
rev = "0cfb7a22b129f42feb3b48095871c122acf45158";
|
||||
hash = "sha256-Fonxi2RQJ/iqSLAfun2anHCzVnM7TkJFkc8PtWkNsQY=";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -66,6 +66,7 @@
|
||||
adwaita-icon-theme,
|
||||
alsa-lib,
|
||||
desktopToDarwinBundle,
|
||||
fetchpatch,
|
||||
}:
|
||||
|
||||
let
|
||||
@@ -110,6 +111,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
(replaceVars ./tests-dbus-conf.patch {
|
||||
session_conf = "${dbus.out}/share/dbus-1/session.conf";
|
||||
})
|
||||
|
||||
# Fix a crash that occurs when trying to pick a color for text outline
|
||||
# TODO: remove after GIMP 3.2 is released, per https://gitlab.gnome.org/GNOME/gimp/-/issues/14047#note_2491655
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.gnome.org/GNOME/gimp/-/commit/1685c86af5d6253151d0056a9677ba469ea10164.diff";
|
||||
hash = "sha256-Rb3ANXWki21thByEIWkBgWEml4x9Qq2HAIB9ho1bygw=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs =
|
||||
|
||||
@@ -20,6 +20,10 @@ python3Packages.buildPythonApplication rec {
|
||||
hash = "sha256-/jkZiCapmCLMp7WfgUmpsR8aNCfb3gBELlMYaC4e7zI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./remove-setuptools-sandbox.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
gettext
|
||||
python3Packages.pyqt5
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
diff --git a/build.py b/build.py
|
||||
index 06905a11..56d54a17 100644
|
||||
--- a/build.py
|
||||
+++ b/build.py
|
||||
@@ -10,7 +10,7 @@ from optparse import OptionParser
|
||||
import shutil
|
||||
from multiprocessing import Pool
|
||||
|
||||
-from setuptools import sandbox
|
||||
+import subprocess
|
||||
from hscommon import sphinxgen
|
||||
from hscommon.build import (
|
||||
add_to_pythonpath,
|
||||
@@ -118,7 +118,12 @@ def build_normpo():
|
||||
def build_pe_modules():
|
||||
print("Building PE Modules")
|
||||
# Leverage setup.py to build modules
|
||||
- sandbox.run_setup("setup.py", ["build_ext", "--inplace"])
|
||||
+ result = subprocess.run(
|
||||
+ [sys.executable, "setup.py", "build_ext", "--inplace"],
|
||||
+ check=True,
|
||||
+ )
|
||||
+ if result.returncode != 0:
|
||||
+ sys.exit("Error building PE modules. Please check the output above.")
|
||||
|
||||
|
||||
def build_normal():
|
||||
@@ -46,7 +46,7 @@ in
|
||||
# darwin has slightly different build steps
|
||||
broken = stdenv.hostPlatform.isDarwin;
|
||||
changelog = "https://github.com/Inochi2D/inochi-creator/releases/tag/${src.rev}";
|
||||
description = "An open source editor for the Inochi2D puppet format";
|
||||
description = "Open source editor for the Inochi2D puppet format";
|
||||
};
|
||||
};
|
||||
|
||||
@@ -80,7 +80,7 @@ in
|
||||
# darwin has slightly different build steps
|
||||
broken = stdenv.hostPlatform.isDarwin;
|
||||
changelog = "https://github.com/Inochi2D/inochi-session/releases/tag/${src.rev}";
|
||||
description = "An application that allows streaming with Inochi2D puppets";
|
||||
description = "Application that allows streaming with Inochi2D puppets";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
passthru.updateScript = gitUpdater { };
|
||||
|
||||
meta = with lib; {
|
||||
description = "Command line Kiwix tools: kiwix-serve, kiwix-manage, ..";
|
||||
description = "Command line Kiwix tools";
|
||||
homepage = "https://kiwix.org";
|
||||
changelog = "https://github.com/kiwix/kiwix-tools/releases/tag/${finalAttrs.version}";
|
||||
license = licenses.gpl3Plus;
|
||||
|
||||
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://jwilk.net/software/mwic";
|
||||
description = "spell-checker that groups possible misspellings and shows them in their contexts";
|
||||
description = "Spell-checker that groups possible misspellings and shows them in their contexts";
|
||||
mainProgram = "mwic";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ matthiasbeyer ];
|
||||
|
||||
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://tools.suckless.org/slstatus/";
|
||||
description = "status monitor for window managers that use WM_NAME like dwm";
|
||||
description = "Status monitor for window managers that use WM_NAME like dwm";
|
||||
license = licenses.isc;
|
||||
maintainers = with maintainers; [
|
||||
oxzi
|
||||
|
||||
@@ -38,14 +38,14 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
version = "1.7.9";
|
||||
version = "1.7.10";
|
||||
pname = "syncthingtray";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Martchus";
|
||||
repo = "syncthingtray";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-nIu6JrFqJ1QsALei9Bmrs6Bd2qM/37nb0ouxDymMN8k=";
|
||||
hash = "sha256-ik/UKemhSuhe3oXPPLAR/qKO7J4Mq35zimixVHNj7go=";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
||||
@@ -215,7 +215,6 @@ let
|
||||
};
|
||||
|
||||
isElectron = packageName == "electron";
|
||||
needsCompgen = chromiumVersionAtLeast "133";
|
||||
rustcVersion = buildPackages.rustc.version;
|
||||
|
||||
chromiumDeps = lib.mapAttrs (
|
||||
@@ -295,11 +294,7 @@ let
|
||||
[
|
||||
ninja
|
||||
gnChromium
|
||||
]
|
||||
++ lib.optionals needsCompgen [
|
||||
bashInteractive # needed for compgen in buildPhase -> process_template
|
||||
]
|
||||
++ [
|
||||
pkg-config
|
||||
python3WithPackages
|
||||
perl
|
||||
@@ -513,7 +508,7 @@ let
|
||||
revert = true;
|
||||
})
|
||||
]
|
||||
++ lib.optionals (chromiumVersionAtLeast "131" && stdenv.hostPlatform.isAarch64) [
|
||||
++ lib.optionals stdenv.hostPlatform.isAarch64 [
|
||||
# Reverts decommit pooled pages which causes random crashes of tabs on systems
|
||||
# with page sizes different than 4k. It 'supports' runtime page sizes, but has
|
||||
# a hardcode for aarch64 systems.
|
||||
@@ -529,70 +524,12 @@ let
|
||||
hash = "sha256-PuinMLhJ2W4KPXI5K0ujw85ENTB1wG7Hv785SZ55xnY=";
|
||||
})
|
||||
]
|
||||
++ lib.optionals (!isElectron && !chromiumVersionAtLeast "137") [
|
||||
# Backport "Add more CFI suppressions for inline PipeWire functions" from M137
|
||||
# to fix SIGKILL (ud1) when screensharing with PipeWire 1.4+ and is_cfi = true.
|
||||
# Our chromium builds set is_official_build = true, which in turn enables is_cfi.
|
||||
# We don't apply this patch to electron, because we build electron with
|
||||
# is_cfi = false and as such is not affected by this.
|
||||
# https://chromium-review.googlesource.com/c/chromium/src/+/6421030
|
||||
(fetchpatch {
|
||||
name = "add-more-CFI-suppressions-for-inline-PipeWire-functions.patch";
|
||||
url = "https://chromium.googlesource.com/chromium/src/+/0eebf40b9914bca8fe69bef8eea89522c1a5d4ce^!?format=TEXT";
|
||||
decode = "base64 -d";
|
||||
hash = "sha256-xMqGdu5Q8BGF/OIRdmMzPrrrMGDOSY2xElFfhRsJlDU=";
|
||||
})
|
||||
]
|
||||
++ lib.optionals (!isElectron && !chromiumVersionAtLeast "136") [
|
||||
# Backport "Only call format_message when needed" to fix print() crashing with is_cfi = true.
|
||||
# We build electron is_cfi = false and as such electron is not affected by this.
|
||||
# Started shipping with M136+.
|
||||
# https://github.com/NixOS/nixpkgs/issues/401326
|
||||
# https://gitlab.archlinux.org/archlinux/packaging/packages/chromium/-/issues/13
|
||||
# https://skia-review.googlesource.com/c/skia/+/961356
|
||||
(fetchpatch {
|
||||
name = "only-call-format_message-when-needed.patch";
|
||||
url = "https://skia.googlesource.com/skia/+/71685eda67178fa374d473ec1431fc459c83bb21^!?format=TEXT";
|
||||
decode = "base64 -d";
|
||||
stripLen = 1;
|
||||
extraPrefix = "third_party/skia/";
|
||||
hash = "sha256-aMqDjt/0cowqSm5DqcD3+zX+mtjydk396LD+B5F/3cs=";
|
||||
})
|
||||
]
|
||||
++ lib.optionals (chromiumVersionAtLeast "136") [
|
||||
# Modify the nodejs version check added in https://chromium-review.googlesource.com/c/chromium/src/+/6334038
|
||||
# to look for the minimal version, not the exact version (major.minor.patch). The linked CL makes a case for
|
||||
# preventing compilations of chromium with versions below their intended version, not about running the very
|
||||
# exact version or even running a newer version.
|
||||
./patches/chromium-136-nodejs-assert-minimal-version-instead-of-exact-match.patch
|
||||
]
|
||||
++ lib.optionals (versionRange "137" "138") [
|
||||
(fetchpatch {
|
||||
# Partial revert of upstream clang+llvm bump revert to fix the following error when building with LLVM < 21:
|
||||
# clang++: error: unknown argument: '-fextend-variable-liveness=none'
|
||||
# https://chromium-review.googlesource.com/c/chromium/src/+/6514242
|
||||
# Upstream relanded this in M138+ with <https://chromium-review.googlesource.com/c/chromium/src/+/6541127>.
|
||||
name = "chromium-137-llvm-19.patch";
|
||||
url = "https://chromium.googlesource.com/chromium/src/+/ddf8f8a465be2779bd826db57f1299ccd2f3aa25^!?format=TEXT";
|
||||
includes = [ "build/config/compiler/BUILD.gn" ];
|
||||
revert = true;
|
||||
decode = "base64 -d";
|
||||
hash = "sha256-wAR8E4WKMvdkW8DzdKpyNpp4dynIsYAbnJ2MqE8V2o8=";
|
||||
})
|
||||
]
|
||||
++ lib.optionals (versionRange "137" "138") [
|
||||
(fetchpatch {
|
||||
# Backport "Fix build with system libpng" that fixes a typo in core/fxcodec/png/png_decoder.cpp that causes
|
||||
# the build to fail at the final linking step.
|
||||
# https://pdfium-review.googlesource.com/c/pdfium/+/132130
|
||||
# Started shipping with M138+.
|
||||
name = "pdfium-Fix-build-with-system-libpng.patch";
|
||||
url = "https://pdfium.googlesource.com/pdfium.git/+/83f11d630aa1cb6d5ceb292364412f7b0585a201^!?format=TEXT";
|
||||
extraPrefix = "third_party/pdfium/";
|
||||
stripLen = 1;
|
||||
decode = "base64 -d";
|
||||
hash = "sha256-lDX0OLdxxTNLtViqEt0luJQ/H0mlvQfV0zbY1Ubqyq0=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch =
|
||||
@@ -811,19 +748,10 @@ let
|
||||
# Disable PGO because the profile data requires a newer compiler version (LLVM 14 isn't sufficient):
|
||||
chrome_pgo_phase = 0;
|
||||
clang_base_path = "${llvmCcAndBintools}";
|
||||
|
||||
use_qt5 = false;
|
||||
use_qt6 = false;
|
||||
}
|
||||
// (
|
||||
# M134 changed use_qt to use_qt5 (and use_qt6)
|
||||
if chromiumVersionAtLeast "134" then
|
||||
{
|
||||
use_qt5 = false;
|
||||
use_qt6 = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
use_qt = false;
|
||||
}
|
||||
)
|
||||
// lib.optionalAttrs (chromiumVersionAtLeast "136") {
|
||||
# LLVM < v21 does not support --warning-suppression-mappings yet:
|
||||
clang_warning_suppression_file = "";
|
||||
@@ -911,12 +839,14 @@ let
|
||||
let
|
||||
buildCommand = target: ''
|
||||
TERM=dumb ninja -C "${buildPath}" -j$NIX_BUILD_CORES "${target}"
|
||||
${lib.optionalString needsCompgen "bash -s << EOL\n"}(
|
||||
bash -s << EOL
|
||||
(
|
||||
source chrome/installer/linux/common/installer.include
|
||||
PACKAGE=$packageName
|
||||
MENUNAME="Chromium"
|
||||
process_template chrome/app/resources/manpage.1.in "${buildPath}/chrome.1"
|
||||
)${lib.optionalString needsCompgen "\nEOL"}
|
||||
)
|
||||
EOL
|
||||
'';
|
||||
targets = extraAttrs.buildTargets or [ ];
|
||||
commands = map buildCommand targets;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,113 +7,46 @@
|
||||
|
||||
let
|
||||
pkg = fetchFromGitLab {
|
||||
domain = "gitlab.postmarketos.org";
|
||||
owner = "postmarketOS";
|
||||
repo = "mobile-config-firefox";
|
||||
rev = "ff2f07873f4ebc6e220da0e9b9f04c69f451edda";
|
||||
sha256 = "sha256-8wRz8corz00+0qROMiOmZAddM4tjfmE91bx0+P8JNx4=";
|
||||
rev = "4.6.0";
|
||||
hash = "sha256-tISfxN/04spgtKStkkn+zlCtFU6GbtwuZubqpGN2olA=";
|
||||
};
|
||||
userChrome = runCommand "userChrome.css" { } ''
|
||||
cat ${pkg}/src/userChrome/*.css > $out
|
||||
mobileConfigDir = runCommand "mobile-config-firefox" { } ''
|
||||
mkdir -p $out/mobile-config-firefox/{common,userChrome,userContent}
|
||||
|
||||
cp ${pkg}/src/common/*.css $out/mobile-config-firefox/common/
|
||||
cp ${pkg}/src/userChrome/*.css $out/mobile-config-firefox/userChrome/
|
||||
cp ${pkg}/src/userContent/*.css $out/mobile-config-firefox/userContent/
|
||||
|
||||
(cd $out/mobile-config-firefox && find common -name "*.css" | sort) >> $out/mobile-config-firefox/userChrome.files
|
||||
(cd $out/mobile-config-firefox && find common -name "*.css" | sort) >> $out/mobile-config-firefox/userContent.files
|
||||
|
||||
(cd $out/mobile-config-firefox && find userChrome -name "*.css" | sort) > $out/mobile-config-firefox/userChrome.files
|
||||
(cd $out/mobile-config-firefox && find userContent -name "*.css" | sort) > $out/mobile-config-firefox/userContent.files
|
||||
|
||||
'';
|
||||
userContent = runCommand "userContent.css" { } ''
|
||||
cat ${pkg}/src/userContent/*.css > $out
|
||||
|
||||
mobileConfigAutoconfig = runCommand "mobile-config-autoconfig.js" { } ''
|
||||
substitute ${pkg}/src/mobile-config-autoconfig.js $out \
|
||||
--replace "/etc/mobile-config-firefox" "${mobileConfigDir}/mobile-config-firefox"
|
||||
'';
|
||||
|
||||
mobileConfigPrefs = runCommand "mobile-config-prefs.js" { } ''
|
||||
# Remove the autoconfig setup lines since we handle that through extraPrefsFiles
|
||||
grep -v "general.config.filename" ${pkg}/src/mobile-config-prefs.js | \
|
||||
grep -v "general.config.obscure_value" | \
|
||||
grep -v "general.config.sandbox_enabled" > $out
|
||||
'';
|
||||
in
|
||||
wrapFirefox firefox-unwrapped {
|
||||
# extraPolicies = (lib.importJSON "${pkg}/src/policies.json").policies;
|
||||
extraPoliciesFiles = [ "${pkg}/src/policies.json" ];
|
||||
extraPrefs = ''
|
||||
// Copyright 2022 Arnaud Ferraris, Oliver Smith
|
||||
// SPDX-License-Identifier: MPL-2.0
|
||||
extraPrefsFiles = [
|
||||
mobileConfigAutoconfig
|
||||
mobileConfigPrefs
|
||||
];
|
||||
|
||||
// This is a Firefox autoconfig file:
|
||||
// https://support.mozilla.org/en-US/kb/customizing-firefox-using-autoconfig
|
||||
|
||||
// Import custom userChrome.css on startup or new profile creation
|
||||
const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
Cu.import("resource://gre/modules/FileUtils.jsm");
|
||||
|
||||
var updated = false;
|
||||
|
||||
// Create <profile>/chrome/ directory if not already present
|
||||
var chromeDir = Services.dirsvc.get("ProfD", Ci.nsIFile);
|
||||
chromeDir.append("chrome");
|
||||
if (!chromeDir.exists()) {
|
||||
chromeDir.create(Ci.nsIFile.DIRECTORY_TYPE, FileUtils.PERMS_DIRECTORY);
|
||||
}
|
||||
|
||||
// Create nsIFile objects for userChrome.css in <profile>/chrome/ and in /etc/
|
||||
var chromeFile = chromeDir.clone();
|
||||
chromeFile.append("userChrome.css");
|
||||
var defaultChrome = new FileUtils.File("${userChrome}");
|
||||
|
||||
// No auto-upgrade. Should this be replaced with symlinking?
|
||||
// // Remove the existing userChrome.css if older than the installed one
|
||||
// if (chromeFile.exists() && defaultChrome.exists() &&
|
||||
// chromeFile.lastModifiedTime < defaultChrome.lastModifiedTime) {
|
||||
// chromeFile.remove(false);
|
||||
// }
|
||||
|
||||
// Copy userChrome.css to <profile>/chrome/
|
||||
if (!chromeFile.exists()) {
|
||||
defaultChrome.copyTo(chromeDir, "userChrome.css");
|
||||
updated = true;
|
||||
}
|
||||
|
||||
// Create nsIFile objects for userContent.css in <profile>/chrome/ and in /etc/
|
||||
var contentFile = chromeDir.clone();
|
||||
contentFile.append("userContent.css");
|
||||
var defaultContent = new FileUtils.File("${userContent}");
|
||||
|
||||
// No auto-upgrade. Should this be replaced with symlinking?
|
||||
// // Remove the existing userContent.css if older than the installed one
|
||||
// if (contentFile.exists() && defaultContent.exists() &&
|
||||
// contentFile.lastModifiedTime < defaultContent.lastModifiedTime) {
|
||||
// contentFile.remove(false);
|
||||
// }
|
||||
|
||||
// Copy userContent.css to <profile>/chrome/
|
||||
if (!contentFile.exists()) {
|
||||
defaultContent.copyTo(chromeDir, "userContent.css");
|
||||
updated = true;
|
||||
}
|
||||
|
||||
// Restart Firefox immediately if one of the files got updated
|
||||
if (updated === true) {
|
||||
var appStartup = Cc["@mozilla.org/toolkit/app-startup;1"].getService(Ci.nsIAppStartup);
|
||||
appStartup.quit(Ci.nsIAppStartup.eForceQuit | Ci.nsIAppStartup.eRestart);
|
||||
}
|
||||
|
||||
defaultPref('general.useragent.override', 'Mozilla/5.0 (Android 11; Mobile; rv:96.0) Gecko/96.0 Firefox/96.0');
|
||||
defaultPref('browser.urlbar.suggest.topsites', false);
|
||||
defaultPref('browser.urlbar.suggest.engines', false);
|
||||
defaultPref('browser.newtabpage.enabled', true);
|
||||
|
||||
// Enable android-style pinch-to-zoom
|
||||
pref('dom.w3c.touch_events.enabled', true);
|
||||
pref('apz.allow_zooming', true);
|
||||
pref('apz.allow_double_tap_zooming', true);
|
||||
|
||||
// Save vertical space by hiding the titlebar
|
||||
pref('browser.tabs.inTitlebar', 1);
|
||||
|
||||
// Disable search suggestions
|
||||
pref('browser.search.suggest.enabled', false);
|
||||
|
||||
// Empty new tab page: faster, less distractions
|
||||
pref('browser.newtabpage.enabled', false);
|
||||
|
||||
// Allow UI customizations with userChrome.css and userContent.css
|
||||
pref('toolkit.legacyUserProfileCustomizations.stylesheets', true);
|
||||
|
||||
// Select the entire URL with one click
|
||||
pref('browser.urlbar.clickSelectsAll', true);
|
||||
|
||||
// Disable cosmetic animations, save CPU
|
||||
pref('toolkit.cosmeticAnimations.enabled', false);
|
||||
|
||||
// Disable download animations, save CPU
|
||||
pref('browser.download.animateNotifications', false);
|
||||
'';
|
||||
extraPoliciesFiles = [
|
||||
"${pkg}/src/policies.json"
|
||||
];
|
||||
}
|
||||
|
||||
@@ -9,11 +9,11 @@
|
||||
|
||||
buildMozillaMach rec {
|
||||
pname = "firefox";
|
||||
version = "128.12.0esr";
|
||||
version = "128.13.0esr";
|
||||
applicationName = "Firefox ESR";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||
sha512 = "442d0b2b6ce02adcd878975f01e86548ca8fe93840185d77a1acb41ec99440c7abfdc8757e6f30d60593dcf2c7f50563b6ea6ccd4d239beea01305615b73c359";
|
||||
sha512 = "9e6f3af535e0904219bcac947d458789cc43cbfaf476ac287328323662391eaaadeff57b244599acf3626a2fadc0bc41b70d07e33ca6af4412006ad01ceff034";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -9,11 +9,11 @@
|
||||
|
||||
buildMozillaMach rec {
|
||||
pname = "firefox";
|
||||
version = "140.0esr";
|
||||
version = "140.1.0esr";
|
||||
applicationName = "Firefox ESR";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||
sha512 = "12e40b81627ac4b44d43edb94aa1cd2a6c50bb49503e3b1b6f80259eed197ecb5847a0f0520ad204340dfe0ab7b5a4aa1ced2bc21ee0258471e8fdb121f6aaf4";
|
||||
sha512 = "1b5caff9b381cd449c40d148542501f7a31a7151a3f2f888e789c9743af8ee1d1eddbd970f8c0054902d1e1d739221db0cfcf1dc6ab704bb83bbb7b7b6a20055";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
|
||||
buildMozillaMach rec {
|
||||
pname = "firefox";
|
||||
version = "140.0.4";
|
||||
version = "141.0";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||
sha512 = "3de7c0871b8a45683f5c226fb3e91e597e8f89ef154b208b2a57c4d3ea9f39cb5c69ecbd5eca3b6da68d3775688d2289c1360c7d110c67bb1be1cf26ef8cf36d";
|
||||
sha512 = "bd6998bce927c5b5c186537bd41475fc9e3809829ceadb2277bb382d02d3780d2a5e5749487567a75b7c9e3726f97662c4ec28924bc491c5a3f21e2ec4828d63";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -152,7 +152,7 @@ buildGoModule (finalAttrs: {
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/rancher/rke2";
|
||||
description = "RKE2, also known as RKE Government, is Rancher's next-generation Kubernetes distribution";
|
||||
description = "Rancher's next-generation Kubernetes distribution, also known as RKE Government";
|
||||
changelog = "https://github.com/rancher/rke2/releases/tag/v${finalAttrs.version}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [
|
||||
|
||||
@@ -426,13 +426,13 @@
|
||||
"vendorHash": "sha256-oVTanZpCWs05HwyIKW2ajiBPz1HXOFzBAt5Us+EtTRw="
|
||||
},
|
||||
"equinix": {
|
||||
"hash": "sha256-oKAfDSSY8Ys7wKHSDoFPOOrbXN4cOFq4HYinngjD5xY=",
|
||||
"hash": "sha256-s2oXZSi0IVysbaI9rOp3sVDCSJCKPHe5cXJyU2g8SEE=",
|
||||
"homepage": "https://registry.terraform.io/providers/equinix/equinix",
|
||||
"owner": "equinix",
|
||||
"repo": "terraform-provider-equinix",
|
||||
"rev": "v3.10.0",
|
||||
"rev": "v3.11.1",
|
||||
"spdx": "MIT",
|
||||
"vendorHash": "sha256-kwrRbuMP57knT38w9SmrIs8bPmTaMeflqWb+4cFphew="
|
||||
"vendorHash": "sha256-OzFNqWCAIvFQQ/4bi52doASkjo/zoxlS2ueiV1rww1M="
|
||||
},
|
||||
"exoscale": {
|
||||
"hash": "sha256-V/+7qjE1r49cbF1+N5E7/jWFTSvqjhO8jxjneTJjjmQ=",
|
||||
@@ -1300,13 +1300,13 @@
|
||||
"vendorHash": "sha256-jGGdSKXpg/N80lNsHFt1nU1t3oW5uDphGYHhBZmAgxE="
|
||||
},
|
||||
"sysdig": {
|
||||
"hash": "sha256-oJ51syzDKX7ZO8EJ3Ug1JNRO34N0t4Y8CzAszc5apOM=",
|
||||
"hash": "sha256-RGHf1JpcPP6VMPZSvj3HsL4Z7EnJKv5Y0T+tSk2hauc=",
|
||||
"homepage": "https://registry.terraform.io/providers/sysdiglabs/sysdig",
|
||||
"owner": "sysdiglabs",
|
||||
"repo": "terraform-provider-sysdig",
|
||||
"rev": "v1.56.3",
|
||||
"rev": "v1.57.1",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-L+XwC7c4ph4lM0+BhHB9oi1R/Av8jlDcqHewOmtPU1s="
|
||||
"vendorHash": "sha256-IrkNNKoBCMd+8vwQDF5PNiC9vS5iz0pjhM2nN0rsMrA="
|
||||
},
|
||||
"tailscale": {
|
||||
"hash": "sha256-p96Jv4sIxWHWcpxcAWXASf2m06M7lsIvCCygM9KEALY=",
|
||||
|
||||
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "manage IP ranges";
|
||||
description = "Manage IP ranges";
|
||||
mainProgram = "iprange";
|
||||
homepage = "https://github.com/firehol/iprange";
|
||||
license = licenses.gpl2;
|
||||
|
||||
@@ -9,24 +9,24 @@ let
|
||||
versions =
|
||||
if stdenv.hostPlatform.isLinux then
|
||||
{
|
||||
stable = "0.0.101";
|
||||
stable = "0.0.102";
|
||||
ptb = "0.0.152";
|
||||
canary = "0.0.716";
|
||||
development = "0.0.83";
|
||||
canary = "0.0.723";
|
||||
development = "0.0.84";
|
||||
}
|
||||
else
|
||||
{
|
||||
stable = "0.0.353";
|
||||
ptb = "0.0.181";
|
||||
canary = "0.0.823";
|
||||
development = "0.0.96";
|
||||
stable = "0.0.354";
|
||||
ptb = "0.0.182";
|
||||
canary = "0.0.829";
|
||||
development = "0.0.97";
|
||||
};
|
||||
version = versions.${branch};
|
||||
srcs = rec {
|
||||
x86_64-linux = {
|
||||
stable = fetchurl {
|
||||
url = "https://stable.dl2.discordapp.net/apps/linux/${version}/discord-${version}.tar.gz";
|
||||
hash = "sha256-FB6GiCM+vGyjZLtF0GjAIq8etK5FYyQVisWX6IzB4Zc=";
|
||||
hash = "sha256-xnl67Ty9uuAjOV5eWnR7xG+PR5J4M7nYc1hjRBjbaOI=";
|
||||
};
|
||||
ptb = fetchurl {
|
||||
url = "https://ptb.dl2.discordapp.net/apps/linux/${version}/discord-ptb-${version}.tar.gz";
|
||||
@@ -34,29 +34,29 @@ let
|
||||
};
|
||||
canary = fetchurl {
|
||||
url = "https://canary.dl2.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
|
||||
hash = "sha256-W7uPrJRKY4I6nsdj/TNxT8kHh5ssn9KyCArhOhAlaH4=";
|
||||
hash = "sha256-k1ClTRaYsb5rPV8AFtVg3iEZ44z5gmcBnOJgsQq9O1Y=";
|
||||
};
|
||||
development = fetchurl {
|
||||
url = "https://development.dl2.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz";
|
||||
hash = "sha256-KpZ90VekGf3KNpNpFfZlVXorv86yK1OuY0uqgBuWIQ4=";
|
||||
hash = "sha256-0SmCBi/fl77m5PzI5O38CpAoIzyQc+eRUKLyKVMQ6Dc=";
|
||||
};
|
||||
};
|
||||
x86_64-darwin = {
|
||||
stable = fetchurl {
|
||||
url = "https://stable.dl2.discordapp.net/apps/osx/${version}/Discord.dmg";
|
||||
hash = "sha256-qHOLhPhHwN0fy1KiJroJvshlYExBDsuna2PddjtNyEI=";
|
||||
hash = "sha256-JucQ4EPWSMKAKvZhovij8YGWLhZ3IhnXoskce3RG0Do=";
|
||||
};
|
||||
ptb = fetchurl {
|
||||
url = "https://ptb.dl2.discordapp.net/apps/osx/${version}/DiscordPTB.dmg";
|
||||
hash = "sha256-Q153X08crRpXZMMgNDYbADHnL7MiBPCakJxQe8Pl0Uo=";
|
||||
hash = "sha256-yL3NSjY3W1w1gfw7w7zdCgVcov18PtrT8RmcwgQLA6U=";
|
||||
};
|
||||
canary = fetchurl {
|
||||
url = "https://canary.dl2.discordapp.net/apps/osx/${version}/DiscordCanary.dmg";
|
||||
hash = "sha256-69Q8kTfenlmhjptVSQ9Y0AyeViRw+srMExOA7fAlaGw=";
|
||||
hash = "sha256-pa7nJMJU6jPNcusIJ93aAH8AFQl93z1FX/sv6+M4WME=";
|
||||
};
|
||||
development = fetchurl {
|
||||
url = "https://development.dl2.discordapp.net/apps/osx/${version}/DiscordDevelopment.dmg";
|
||||
hash = "sha256-fe7yE+dxEATIdfITg57evbaQkChCcoaLrzV+8KwEBws=";
|
||||
hash = "sha256-BVTQPr3Oox/mTNE7LTJfYuKhI8PlkJlznKiOffqpECs=";
|
||||
};
|
||||
};
|
||||
aarch64-darwin = x86_64-darwin;
|
||||
|
||||
@@ -50,7 +50,7 @@ buildDunePackage {
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/hannesm/jackline";
|
||||
description = "minimalistic secure XMPP client in OCaml";
|
||||
description = "Minimalistic secure XMPP client in OCaml";
|
||||
mainProgram = "jackline";
|
||||
license = licenses.bsd2;
|
||||
maintainers = with maintainers; [ sternenseemann ];
|
||||
|
||||
@@ -103,11 +103,11 @@ assert lib.all (p: p.enabled -> !(builtins.elem null p.buildInputs)) plugins;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "weechat";
|
||||
version = "4.6.3";
|
||||
version = "4.7.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://weechat.org/files/src/weechat-${version}.tar.xz";
|
||||
hash = "sha256-XAte+pabhzxL5YIBmxhSPuQD50MLgiOCW820Son1gV0=";
|
||||
hash = "sha256-RdwDlgYMhjFphoNJ7CgK8cb0rFJKpJJYDhoGXhQsLNg=";
|
||||
};
|
||||
|
||||
# Why is this needed? https://github.com/weechat/weechat/issues/2031
|
||||
|
||||
@@ -159,7 +159,10 @@ mkDerivation rec {
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
license = licenses.unfree;
|
||||
description = "Desktop sharing application, providing remote support and online meetings";
|
||||
platforms = [ "x86_64-linux" ];
|
||||
platforms = [
|
||||
"x86_64-linux"
|
||||
"aarch64-linux"
|
||||
];
|
||||
maintainers = with maintainers; [
|
||||
jagajaga
|
||||
jraygauthier
|
||||
|
||||
@@ -1,7 +1,17 @@
|
||||
#! /usr/bin/env nix-shell
|
||||
#! nix-shell -i bash -p nix-update curl
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p bash curl gnugrep jq nix nix-prefetch nix-prefetch-scripts common-updater-scripts
|
||||
|
||||
TEAMVIEWER_VER=$(curl -s https://www.teamviewer.com/en-us/download/linux/ | grep -oP 'Current version: <span data-dl-version-label>\K[0-9]+\.[0-9]+\.[0-9]+')
|
||||
set -euo pipefail
|
||||
|
||||
nix-update --version "$TEAMVIEWER_VER" --system x86_64-linux teamviewer
|
||||
nix-update --version "skip" --system aarch64-linux teamviewer
|
||||
current_version=$(nix eval --raw -f . teamviewer.version)
|
||||
latest_version=$(curl -s https://www.teamviewer.com/en-us/download/portal/linux/ | grep -oP 'Current version: <span data-dl-version-label>\K[0-9]+\.[0-9]+\.[0-9]+')
|
||||
|
||||
echo "current version: $current_version"
|
||||
echo "latest version: $latest_version"
|
||||
|
||||
if [[ "$latest_version" == "$current_version" ]]; then
|
||||
echo "package is up-to-date"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
update-source-version teamviewer "$latest_version"
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
mkDerivation,
|
||||
fetchzip,
|
||||
wrapQtAppsHook,
|
||||
autoPatchelfHook,
|
||||
qtbase,
|
||||
qtmultimedia,
|
||||
qtx11extras,
|
||||
}:
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "beebeep";
|
||||
version = "5.8.6";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://netix.dl.sourceforge.net/project/beebeep/Linux/beebeep-${version}-qt5-amd64.tar.gz";
|
||||
sha256 = "sha256-YDgFRXFBM1tjLP99mHYJadgccHJYYPAZ1kqR+FngLKU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
wrapQtAppsHook
|
||||
autoPatchelfHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
qtbase
|
||||
qtmultimedia
|
||||
qtx11extras
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp * $out/bin
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://www.beebeep.net/";
|
||||
description = "BeeBEEP is the free office messenger that is indispensable in all those places where privacy and security are an essential requirement";
|
||||
mainProgram = "beebeep";
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl2Only;
|
||||
maintainers = with maintainers; [ mglolenstine ];
|
||||
};
|
||||
}
|
||||
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "NEST is a command line tool for simulating neural networks";
|
||||
description = "Command line tool for simulating neural networks";
|
||||
homepage = "https://www.nest-simulator.org/";
|
||||
changelog = "https://github.com/nest/nest-simulator/releases/tag/v${version}";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
|
||||
@@ -66,7 +66,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/NanoVNA-Saver/nanovna-saver";
|
||||
description = "A tool for reading, displaying and saving data from the NanoVNA";
|
||||
description = "Tool for reading, displaying and saving data from the NanoVNA";
|
||||
mainProgram = "NanoVNASaver";
|
||||
longDescription = ''
|
||||
A multiplatform tool to save Touchstone files from the NanoVNA, sweep
|
||||
|
||||
@@ -14,7 +14,6 @@
|
||||
pkg-config,
|
||||
gnumake42,
|
||||
customOCamlPackages ? null,
|
||||
ocamlPackages_4_05,
|
||||
ocamlPackages_4_09,
|
||||
ocamlPackages_4_10,
|
||||
ocamlPackages_4_12,
|
||||
@@ -35,12 +34,6 @@ let
|
||||
lib = import ../../../../build-support/coq/extra-lib.nix { inherit (args) lib; };
|
||||
|
||||
release = {
|
||||
"8.5pl1".sha256 = "1976ki5xjg2r907xj9p7gs0kpdinywbwcqlgxqw75dgp0hkgi00n";
|
||||
"8.5pl2".sha256 = "109rrcrx7mz0fj7725kjjghfg5ydwb24hjsa5hspa27b4caah7rh";
|
||||
"8.5pl3".sha256 = "15c3rdk59nifzihsp97z4vjxis5xmsnrvpb86qiazj143z2fmdgw";
|
||||
"8.6.0".sha256 = "148mb48zpdax56c0blfi7v67lx014lnmrvxxasi28hsibyz2lvg4";
|
||||
"8.6.0".rev = "V8.6";
|
||||
"8.6.1".sha256 = "0llrxcxwy5j87vbbjnisw42rfw1n1pm5602ssx64xaxx3k176g6l";
|
||||
"8.7.0".sha256 = "1h18b7xpnx3ix9vsi5fx4zdcbxy7bhra7gd5c5yzxmk53cgf1p9m";
|
||||
"8.7.1".sha256 = "0gjn59jkbxwrihk8fx9d823wjyjh5m9gvj9l31nv6z6bcqhgdqi8";
|
||||
"8.7.2".sha256 = "0a0657xby8wdq4aqb2xsxp3n7pmc2w4yxjmrb2l4kccs1aqvaj4w";
|
||||
@@ -131,10 +124,6 @@ let
|
||||
case = lib.versions.range "8.7" "8.10";
|
||||
out = ocamlPackages_4_09;
|
||||
}
|
||||
{
|
||||
case = lib.versions.range "8.5" "8.6";
|
||||
out = ocamlPackages_4_05;
|
||||
}
|
||||
] ocamlPackages_4_14;
|
||||
ocamlNativeBuildInputs = [
|
||||
ocamlPackages.ocaml
|
||||
|
||||
@@ -107,7 +107,7 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "LabPlot is a FREE, open source and cross-platform Data Visualization and Analysis software accessible to everyone";
|
||||
description = "Free, open source and cross-platform data visualization and analysis software accessible to everyone";
|
||||
homepage = "https://labplot.kde.org";
|
||||
license = with licenses; [
|
||||
asl20
|
||||
|
||||
@@ -81,7 +81,7 @@ stdenv'.mkDerivation rec {
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "COLMAP - Structure-From-Motion and Multi-View Stereo pipeline";
|
||||
description = "Structure-From-Motion and Multi-View Stereo pipeline";
|
||||
longDescription = ''
|
||||
COLMAP is a general-purpose Structure-from-Motion (SfM) and Multi-View Stereo (MVS) pipeline
|
||||
with a graphical and command-line interface.
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
let
|
||||
pname = "rxvt-unicode";
|
||||
version = "9.31";
|
||||
description = "A clone of the well-known terminal emulator rxvt";
|
||||
description = "Clone of the well-known terminal emulator rxvt";
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = pname;
|
||||
|
||||
@@ -12,7 +12,7 @@ bundlerApp {
|
||||
passthru.updateScript = bundlerUpdateScript "gitlab-triage";
|
||||
|
||||
meta = with lib; {
|
||||
description = "GitLab's issues and merge requests triage, automated!";
|
||||
description = "GitLab's issues and merge requests triage, automated";
|
||||
homepage = "https://gitlab.com/gitlab-org/ruby/gems/gitlab-triage";
|
||||
license = licenses.mit;
|
||||
maintainers = [ ];
|
||||
|
||||
@@ -25,7 +25,7 @@ buildKodiAddon rec {
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/tiran/defusedxml";
|
||||
description = "defusing XML bombs and other exploits";
|
||||
description = "Defusing XML bombs and other exploits";
|
||||
license = licenses.psfl;
|
||||
teams = [ teams.kodi ];
|
||||
};
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-scale-to-sound";
|
||||
version = "1.2.4";
|
||||
version = "1.2.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dimtpap";
|
||||
repo = "obs-scale-to-sound";
|
||||
tag = version;
|
||||
hash = "sha256-N6OMufx4+WyLGnIZQNxwlPdlmsa+GoZhuDMS9NIbIGE=";
|
||||
hash = "sha256-El5lwQfc33H9KvjttJyjakzRizjLoGz2MbkiRm4zm8E=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
@@ -73,9 +73,9 @@ let
|
||||
buildType = "release";
|
||||
# Use maintainers/scripts/update.nix to update the version and all related hashes or
|
||||
# change the hashes in extpack.nix and guest-additions/default.nix as well manually.
|
||||
virtualboxVersion = "7.1.10";
|
||||
virtualboxVersion = "7.1.12";
|
||||
virtualboxSubVersion = "";
|
||||
virtualboxSha256 = "7d60010a4c9102613554b46f61d17b825c30ee59d8be071e52d8aac664ca9869";
|
||||
virtualboxSha256 = "6f9618f39168898134975f51df7c2d6d5129c0aa82b6ae11cf47f920c70df276";
|
||||
|
||||
kvmPatchVersion = "20250207";
|
||||
kvmPatchHash = "sha256-GzRLIXhzWL1NLvaGKcWVBCdvay1IxgJUE4koLX1ze7Y=";
|
||||
@@ -247,8 +247,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
++ optional enableKvm (
|
||||
let
|
||||
patchVboxVersion =
|
||||
# There is no updated patch for 7.1.10 yet, but the older one still applies.
|
||||
if finalAttrs.virtualboxVersion == "7.1.10" then "7.1.6" else finalAttrs.virtualboxVersion;
|
||||
# There is no updated patch for 7.1.12 yet, but the older one still applies.
|
||||
if finalAttrs.virtualboxVersion == "7.1.12" then "7.1.6" else finalAttrs.virtualboxVersion;
|
||||
in
|
||||
fetchpatch {
|
||||
name = "virtualbox-${finalAttrs.virtualboxVersion}-kvm-dev-${finalAttrs.kvmPatchVersion}.patch";
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
virtualbox,
|
||||
}:
|
||||
let
|
||||
virtualboxExtPackVersion = "7.1.10";
|
||||
virtualboxExtPackVersion = "7.1.12";
|
||||
in
|
||||
fetchurl rec {
|
||||
name = "Oracle_VirtualBox_Extension_Pack-${virtualboxExtPackVersion}.vbox-extpack";
|
||||
@@ -14,7 +14,7 @@ fetchurl rec {
|
||||
# Thus do not use `nix-prefetch-url` but instead plain old `sha256sum`.
|
||||
# Checksums can also be found at https://www.virtualbox.org/download/hashes/${version}/SHA256SUMS
|
||||
let
|
||||
value = "e020755711849fa0ee23d3bc47bc90cb0ea595da7dda804499568a0dc2387989";
|
||||
value = "c7ed97f4755988ecc05ec633475e299bbc1e0418cc3d143747a45c99df53abd3";
|
||||
in
|
||||
assert (builtins.stringLength value) == 64;
|
||||
value;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
}:
|
||||
fetchurl {
|
||||
url = "http://download.virtualbox.org/virtualbox/${virtualboxVersion}/VBoxGuestAdditions_${virtualboxVersion}.iso";
|
||||
sha256 = "59c92f7f5fd7e081211e989f5117fc53ad8d8800ad74a01b21e97bb66fe62972";
|
||||
sha256 = "256883e2eabf7ab5c10fb3b6831c294942ce34bc615807f9d0cf6c3d2e882236";
|
||||
meta = {
|
||||
description = "Guest additions ISO for VirtualBox";
|
||||
longDescription = ''
|
||||
|
||||
@@ -12,9 +12,9 @@
|
||||
libX11,
|
||||
}:
|
||||
let
|
||||
virtualboxVersion = "7.1.10";
|
||||
virtualboxVersion = "7.1.12";
|
||||
virtualboxSubVersion = "";
|
||||
virtualboxSha256 = "7d60010a4c9102613554b46f61d17b825c30ee59d8be071e52d8aac664ca9869";
|
||||
virtualboxSha256 = "6f9618f39168898134975f51df7c2d6d5129c0aa82b6ae11cf47f920c70df276";
|
||||
|
||||
virtualBoxNixGuestAdditionsBuilder = callPackage ./builder.nix {
|
||||
inherit virtualboxVersion virtualboxSubVersion virtualboxSha256;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
callPackage,
|
||||
pkg-config,
|
||||
@@ -28,12 +29,12 @@ let
|
||||
{ hypr-dynamic-cursors = import ./hypr-dynamic-cursors.nix; }
|
||||
{ hyprfocus = import ./hyprfocus.nix; }
|
||||
{ hyprgrass = import ./hyprgrass.nix; }
|
||||
{
|
||||
hyprscroller = throw "hyprlandPlugins.hyprscroller has been removed as the upstream project is deprecated. Consider using `hyprlandPlugins.hyprscrolling`.";
|
||||
} # Added 2025-05-09
|
||||
{ hyprspace = import ./hyprspace.nix; }
|
||||
{ hyprsplit = import ./hyprsplit.nix; }
|
||||
(import ./hyprland-plugins.nix)
|
||||
(lib.optionalAttrs config.allowAliases {
|
||||
hyprscroller = throw "hyprlandPlugins.hyprscroller has been removed as the upstream project is deprecated. Consider using `hyprlandPlugins.hyprscrolling`."; # Added 2025-05-09
|
||||
})
|
||||
];
|
||||
in
|
||||
(lib.mapAttrs (name: plugin: callPackage plugin { inherit mkHyprlandPlugin; }) plugins)
|
||||
|
||||
@@ -71,7 +71,7 @@ stdenv.mkDerivation {
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "i3lock is a bash script that takes a screenshot of the desktop, blurs the background and adds a lock icon and text";
|
||||
description = "A bash script that takes a screenshot of the desktop, blurs the background and adds a lock icon and text";
|
||||
homepage = "https://github.com/meskarune/i3lock-fancy";
|
||||
maintainers = [ maintainers.reedrw ];
|
||||
mainProgram = "i3lock-fancy";
|
||||
|
||||
@@ -728,12 +728,7 @@ stdenvNoCC.mkDerivation {
|
||||
''
|
||||
# GCC NG friendly libc++
|
||||
+ optionalString (libcxx != null && libcxx.isGNU or false) ''
|
||||
for dir in ${getDev libcxx}/include/c++/*; do
|
||||
echo "-isystem $dir" >> $out/nix-support/libcxx-cxxflags
|
||||
done
|
||||
for dir in ${getDev libcxx}/include/c++/*/${targetPlatform.config}; do
|
||||
echo "-isystem $dir" >> $out/nix-support/libcxx-cxxflags
|
||||
done
|
||||
echo "-isystem ${getDev libcxx}/include" >> $out/nix-support/libcxx-cxxflags
|
||||
''
|
||||
|
||||
##
|
||||
|
||||
@@ -67,7 +67,7 @@ stdenv.mkDerivation {
|
||||
|
||||
meta = {
|
||||
homepage = "https://tools.suckless.org/9base/";
|
||||
description = "9base is a port of various original Plan 9 tools for Unix, based on plan9port";
|
||||
description = "Port of various original Plan 9 tools for Unix, based on plan9port";
|
||||
longDescription = ''
|
||||
9base is a port of various original Plan 9 tools for Unix, based on plan9port.
|
||||
It also contains the Plan 9 libc, libbio, libregexp, libfmt and libutf.
|
||||
|
||||
@@ -52,7 +52,7 @@ python3Packages.buildPythonApplication rec {
|
||||
passthru.updateScript = gitUpdater { rev-prefix = "v"; };
|
||||
|
||||
meta = {
|
||||
description = "ABlog for blogging with Sphinx";
|
||||
description = "Sphinx extension that converts any documentation or personal website project into a full-fledged blog";
|
||||
mainProgram = "ablog";
|
||||
homepage = "https://ablog.readthedocs.io/en/latest/";
|
||||
license = lib.licenses.mit;
|
||||
|
||||
@@ -17,7 +17,7 @@ buildGoModule rec {
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Command-line program for working with ham logfiles.";
|
||||
description = "Command-line program for working with ham logfiles";
|
||||
homepage = "https://github.com/flwyd/adif-multitool";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ mafo ];
|
||||
|
||||
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
|
||||
configureFlags = [ "--enable-maintainer-mode" ];
|
||||
|
||||
meta = {
|
||||
description = "automatic device model synthesizer";
|
||||
description = "Automatic device model synthesizer";
|
||||
homepage = "https://github.com/Qucs/adms";
|
||||
license = lib.licenses.gpl3;
|
||||
maintainers = with lib.maintainers; [ disassembler ];
|
||||
|
||||
@@ -28,7 +28,7 @@ stdenvNoCC.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "aeolus synthesizer instrument definitions";
|
||||
description = "Aeolus synthesizer instrument definitions";
|
||||
homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/aeolus/index.html";
|
||||
license = licenses.lgpl3;
|
||||
platforms = platforms.linux;
|
||||
|
||||
@@ -35,7 +35,7 @@ buildGoModule {
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Agola: CI/CD Redefined";
|
||||
description = "CI/CD Redefined";
|
||||
homepage = "https://agola.io";
|
||||
maintainers = with maintainers; [ happysalada ];
|
||||
license = licenses.mit;
|
||||
|
||||
@@ -24,7 +24,7 @@ buildGoModule rec {
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = ''Artificial Intelligence Infrastructure-as-Code Generator.'';
|
||||
description = ''Artificial Intelligence Infrastructure-as-Code Generator'';
|
||||
mainProgram = "aiac";
|
||||
homepage = "https://github.com/gofireflyio/aiac/";
|
||||
license = licenses.asl20;
|
||||
|
||||
@@ -35,7 +35,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
meta = {
|
||||
homepage = "https://allurereport.org/";
|
||||
description = "Allure Report is a flexible, lightweight multi-language test reporting tool";
|
||||
description = "Flexible, lightweight multi-language test reporting tool";
|
||||
longDescription = ''
|
||||
Allure Report is a flexible, lightweight multi-language test reporting
|
||||
tool providing clear graphical reports and allowing everyone involved
|
||||
|
||||
@@ -38,7 +38,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "ALMO is markdown parser and static site generator";
|
||||
description = "Markdown parser and static site generator";
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.all;
|
||||
homepage = "https://github.com/abap34/almo";
|
||||
|
||||
@@ -16,7 +16,7 @@ in
|
||||
runCommand "${alsa-lib.pname}-${alsa-lib.version}"
|
||||
{
|
||||
meta = with lib; {
|
||||
description = "wrapper to ease access to ALSA plugins";
|
||||
description = "Wrapper to ease access to ALSA plugins";
|
||||
mainProgram = "aserver";
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ gm6k ];
|
||||
|
||||
@@ -40,18 +40,18 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "alvr";
|
||||
version = "20.14.0";
|
||||
version = "20.14.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "alvr-org";
|
||||
repo = "ALVR";
|
||||
tag = "v${version}";
|
||||
fetchSubmodules = true; # TODO devendor openvr
|
||||
hash = "sha256-K1E8zeSjaUtJ17C9G+aKNw9bzKUzeezUunZc0MM1Rj4=";
|
||||
hash = "sha256-9fckUhUPAbcmbqOdUO8RlwuK8/nf1fc7XQBrAu5YaR4=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-GeI6YlpTa89W6dYmK/1Hq73R0QX67va9zL1UIyfwcv0=";
|
||||
cargoHash = "sha256-OTCMWrlwnfpUhm6ssOE133e/3DaQFnOU+NunN2c1N+g=";
|
||||
|
||||
patches = [
|
||||
(replaceVars ./fix-finding-libs.patch {
|
||||
|
||||
@@ -8,14 +8,14 @@
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "ansible-doctor";
|
||||
version = "7.0.8";
|
||||
version = "7.0.9";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "thegeeklab";
|
||||
repo = "ansible-doctor";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-BwmmAd1mmyGQ5QQo6uS3+JmPP9kmZe2OOBDNAKFqEl0=";
|
||||
hash = "sha256-d7KPn+nCrGEYE9lzfV3+Fl8MDUq8x5S8MPKrwX8XZ5w=";
|
||||
};
|
||||
|
||||
build-system = with python3Packages; [
|
||||
@@ -54,7 +54,7 @@ python3Packages.buildPythonApplication rec {
|
||||
description = "Annotation based documentation for your Ansible roles";
|
||||
mainProgram = "ansible-doctor";
|
||||
homepage = "https://github.com/thegeeklab/ansible-doctor";
|
||||
changelog = "https://github.com/thegeeklab/ansible-doctor/releases/tag/v${version}";
|
||||
changelog = "https://github.com/thegeeklab/ansible-doctor/releases/tag/${src.tag}";
|
||||
license = lib.licenses.lgpl3Only;
|
||||
maintainers = with lib.maintainers; [ tboerger ];
|
||||
};
|
||||
|
||||
@@ -74,7 +74,7 @@ buildNpmPackage rec {
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/IvarK/AntimatterDimensionsSourceCode";
|
||||
description = "Idle incremental game with multiple prestige layers.";
|
||||
description = "Idle incremental game with multiple prestige layers";
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "antimatter-dimensions";
|
||||
maintainers = with lib.maintainers; [ amozeo ];
|
||||
|
||||
@@ -24,7 +24,7 @@ stdenvNoCC.mkDerivation {
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/vernnobile/antonioFont";
|
||||
description = "condensed, sans serif font for larger display, headline & banner use, based on Anton";
|
||||
description = "Condensed, sans serif font for larger display, headline & banner use, based on Anton";
|
||||
longDescription = ''
|
||||
Antonio is a ‘refined’ version of the Anton Font. Anton is a single
|
||||
weight web font, designed specifically for larger display, headline and
|
||||
|
||||
@@ -136,7 +136,7 @@ stdenv.mkDerivation {
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Tool for filling forms for the Hungarian government,";
|
||||
description = "Tool for filling forms for the Hungarian government";
|
||||
longDescription = ''
|
||||
Official tool for filling Hungarian government forms.
|
||||
|
||||
|
||||
@@ -44,12 +44,20 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
zstd
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeFeature "CMAKE_BUILD_TYPE" "Release")
|
||||
(lib.cmakeBool "BUILD_JAVA" false)
|
||||
(lib.cmakeBool "STOP_BUILD_ON_WARNING" true)
|
||||
(lib.cmakeBool "INSTALL_VENDORED_LIBS" false)
|
||||
];
|
||||
cmakeFlags =
|
||||
[
|
||||
(lib.cmakeFeature "CMAKE_BUILD_TYPE" "Release")
|
||||
(lib.cmakeBool "BUILD_JAVA" false)
|
||||
(lib.cmakeBool "STOP_BUILD_ON_WARNING" true)
|
||||
(lib.cmakeBool "INSTALL_VENDORED_LIBS" false)
|
||||
]
|
||||
++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
# Fix (RiscV) cross-compilation
|
||||
# See https://github.com/apache/orc/issues/2334
|
||||
(lib.cmakeFeature "HAS_PRE_1970_EXITCODE" "0")
|
||||
(lib.cmakeFeature "HAS_POST_2038_EXITCODE" "0")
|
||||
(lib.cmakeFeature "CMAKE_CXX_FLAGS" "-Wno-unused-parameter")
|
||||
];
|
||||
|
||||
env = {
|
||||
GTEST_HOME = gtest.dev;
|
||||
|
||||
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "APPLgrid project provides a fast and flexible way to reproduce the results of full NLO calculations with any input parton distribution set in only a few milliseconds rather than the weeks normally required to gain adequate statistics";
|
||||
description = "Fast and flexible way to reproduce the results of full NLO calculations with any input parton distribution set in only a few milliseconds rather than the weeks normally required to gain adequate statistics";
|
||||
license = licenses.gpl3;
|
||||
homepage = "http://applgrid.hepforge.org";
|
||||
platforms = platforms.unix;
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
}:
|
||||
let
|
||||
pname = "artisan";
|
||||
version = "3.1.4";
|
||||
version = "3.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/artisan-roaster-scope/artisan/releases/download/v${version}/${pname}-linux-${version}.AppImage";
|
||||
hash = "sha256-GU9DCAIMioPRUC1IDu8SbhD802pWEH7MlALnQH+Y4oU=";
|
||||
hash = "sha256-p8M9Z0z/0unJPOLXVOnN8INO4v0D5Ojjug42xT77oqQ=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extract {
|
||||
@@ -30,7 +30,7 @@ appimageTools.wrapType2 {
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "visual scope for coffee roasters";
|
||||
description = "Visual scope for coffee roasters";
|
||||
homepage = "https://artisan-scope.org/";
|
||||
changelog = "https://github.com/artisan-roaster-scope/artisan/releases/tag/v${version}";
|
||||
downloadPage = "https://github.com/artisan-roaster-scope/artisan/releases";
|
||||
|
||||
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Enjoy the mysteries of the sea from the safety of your own terminal!";
|
||||
description = "Enjoy the mysteries of the sea from the safety of your own terminal";
|
||||
mainProgram = "asciiquarium";
|
||||
homepage = "https://robobunny.com/projects/asciiquarium/html/";
|
||||
license = licenses.gpl2;
|
||||
|
||||
@@ -14,13 +14,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "astroterm";
|
||||
version = "1.0.7";
|
||||
version = "1.0.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "da-luce";
|
||||
repo = "astroterm";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-SQR5Q369LUtQum5a4f0/sy7GdPB8sBfn6mkAjxyTbg8=";
|
||||
hash = "sha256-XSJq2M+rOZf18ueF1jjApOR140mkMZOm/IFzA7M5x4M=";
|
||||
};
|
||||
|
||||
bsc5File = fetchurl {
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "atlas";
|
||||
version = "0.35.0";
|
||||
version = "0.36.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ariga";
|
||||
repo = "atlas";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-USA3PiZcOF39LK45Xu0Oq/GJi3URMxJpBrUXxIsEkCY=";
|
||||
hash = "sha256-NmlE0Wr5A2tt0cWudOWxGgyYwqE4fmCeEU68yuQKARU=";
|
||||
};
|
||||
|
||||
modRoot = "cmd/atlas";
|
||||
|
||||
@@ -8,16 +8,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "auth0-cli";
|
||||
version = "1.15.0";
|
||||
version = "1.16.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "auth0";
|
||||
repo = "auth0-cli";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-1OPoogvCA85Z4pmwnEgoLosh5QDVvFH7SnDArCx156s=";
|
||||
hash = "sha256-iTtjjqONnSmOlaBHOq1SgsbNiKVSKCePg5CJfZs4r/4=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-tIZz3iwY79r5B4b3GuEOd/j0RtviM4uf6v1ZMS6M+t4=";
|
||||
vendorHash = "sha256-e5/9AA68p1byqwUOK5/t4L3WQ/td9BYiNfFDD5NbTeU=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
||||
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
|
||||
meta = with lib; {
|
||||
mainProgram = "auto-epp";
|
||||
homepage = "https://github.com/jothi-prasath/auto-epp";
|
||||
description = "Auto-epp (energy performance preference) for AMD processors when amd_pstate=active";
|
||||
description = "Energy performance preference tuner for AMD processors when amd_pstate=active";
|
||||
platforms = platforms.linux;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.lamarios ];
|
||||
|
||||
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "AutoRaise (and focus) a window when hovering over it with the mouse";
|
||||
description = "Automatically raise and focus a window when hovering over it with the mouse";
|
||||
homepage = "https://github.com/sbmpost/AutoRaise";
|
||||
license = lib.licenses.gpl3Only;
|
||||
maintainers = with lib.maintainers; [ nickhu ];
|
||||
|
||||
@@ -22,7 +22,7 @@ buildGoModule rec {
|
||||
subPackages = [ "cmd/kazel" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "kazel - a BUILD file generator for go and bazel";
|
||||
description = "A BUILD file generator for go and bazel";
|
||||
homepage = "https://github.com/kubernetes/repo-infra";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ kalbasit ];
|
||||
|
||||
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage {
|
||||
cargoHash = "sha256-TikWh0U56x3HKca5Dj68Z59mOgedv+K5r+y7/CcpWa8=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "boring data tool. A CLI tool to query parquet, json and avro files";
|
||||
description = "CLI tool to query parquet, json and avro files";
|
||||
homepage = "https://github.com/datafusion-contrib/bdt";
|
||||
license = licenses.asl20;
|
||||
mainProgram = "bdt";
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
{
|
||||
lib,
|
||||
fetchzip,
|
||||
autoPatchelfHook,
|
||||
libsForQt5,
|
||||
}:
|
||||
|
||||
libsForQt5.mkDerivation rec {
|
||||
pname = "beebeep";
|
||||
version = "5.8.6";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://netix.dl.sourceforge.net/project/beebeep/Linux/beebeep-${version}-qt5-amd64.tar.gz";
|
||||
hash = "sha256-YDgFRXFBM1tjLP99mHYJadgccHJYYPAZ1kqR+FngLKU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
libsForQt5.wrapQtAppsHook
|
||||
autoPatchelfHook
|
||||
];
|
||||
|
||||
buildInputs = with libsForQt5; [
|
||||
qtbase
|
||||
qtmultimedia
|
||||
qtx11extras
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp * $out/bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "https://www.beebeep.net/";
|
||||
description = "Free office messenger that is indispensable in all those places where privacy and security are an essential requirement";
|
||||
mainProgram = "beebeep";
|
||||
platforms = lib.platforms.linux;
|
||||
license = lib.licenses.gpl2Only;
|
||||
maintainers = with lib.maintainers; [ mglolenstine ];
|
||||
};
|
||||
}
|
||||
@@ -18,7 +18,7 @@ buildGoModule rec {
|
||||
vendorHash = "sha256-yTNUxwnulQ+WbHdQbeNDghH4RPXurQMIgKDyXfrMxG8=";
|
||||
|
||||
meta = {
|
||||
description = "Tool for running self-hosted bridges with the Beeper Matrix server.";
|
||||
description = "Tool for running self-hosted bridges with the Beeper Matrix server";
|
||||
homepage = "https://github.com/beeper/bridge-manager";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = [ lib.maintainers.heywoodlh ];
|
||||
|
||||
@@ -31,7 +31,7 @@ rustPlatform.buildRustPackage rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Bend is a massively parallel, high-level programming language";
|
||||
description = "Massively parallel, high-level programming language";
|
||||
homepage = "https://higherorderco.com/";
|
||||
license = lib.licenses.asl20;
|
||||
mainProgram = "bend";
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user