Merge remote-tracking branch 'origin/staging-next' into staging
Conflicts: pkgs/top-level/linux-kernels.nix
This commit is contained in:
commit
182718fecc
@ -6071,6 +6071,15 @@
|
||||
githubId = 12715461;
|
||||
name = "Anders Bo Rasmussen";
|
||||
};
|
||||
fwam = {
|
||||
name = "Legion Orsetti";
|
||||
email = "fwam@queereen.dev";
|
||||
github = "fwam";
|
||||
githubId = 113541944;
|
||||
keys = [{
|
||||
fingerprint = "3822 20B8 57ED 0602 3786 8A7A 18E1 AE22 D704 B4FC";
|
||||
}];
|
||||
};
|
||||
fwc = {
|
||||
github = "fwc";
|
||||
githubId = 29337229;
|
||||
|
@ -424,3 +424,6 @@ The module update takes care of the new config syntax and the data itself (user
|
||||
`virtualisation.fileSystems = lib.mkForce { };`.
|
||||
|
||||
- The `electron` packages now places its application files in `$out/libexec/electron` instead of `$out/lib/electron`. Packages using electron-builder will fail to build and need to be adjusted by changing `lib` to `libexec`.
|
||||
|
||||
- `teleport` has been upgraded from major version 12 to major version 14. Please see upstream [upgrade instructions](https://goteleport.com/docs/management/operations/upgrading/) and release notes for versions [13](https://goteleport.com/docs/changelog/#1300-050823) and [14](https://goteleport.com/docs/changelog/#1400-092023). Note that Teleport does not officially support upgrades across more than one major version at a time. If you're running Teleport server components, it is recommended to first upgrade to an intermediate 13.x version by setting `services.teleport.package = pkgs.teleport_13`. Afterwards, this option can be removed to upgrade to the default version (14).
|
||||
|
||||
|
@ -28,15 +28,17 @@ let
|
||||
{
|
||||
virtualisation.qemu.package = testModuleArgs.config.qemu.package;
|
||||
})
|
||||
(optionalAttrs (!config.node.pkgsReadOnly) {
|
||||
({ options, ... }: {
|
||||
key = "nodes.nix-pkgs";
|
||||
config = {
|
||||
# Ensure we do not use aliases. Ideally this is only set
|
||||
# when the test framework is used by Nixpkgs NixOS tests.
|
||||
nixpkgs.config.allowAliases = false;
|
||||
# TODO: switch to nixpkgs.hostPlatform and make sure containers-imperative test still evaluates.
|
||||
nixpkgs.system = hostPkgs.stdenv.hostPlatform.system;
|
||||
};
|
||||
config = optionalAttrs (!config.node.pkgsReadOnly) (
|
||||
mkIf (!options.nixpkgs.pkgs.isDefined) {
|
||||
# Ensure we do not use aliases. Ideally this is only set
|
||||
# when the test framework is used by Nixpkgs NixOS tests.
|
||||
nixpkgs.config.allowAliases = false;
|
||||
# TODO: switch to nixpkgs.hostPlatform and make sure containers-imperative test still evaluates.
|
||||
nixpkgs.system = hostPkgs.stdenv.hostPlatform.system;
|
||||
}
|
||||
);
|
||||
})
|
||||
testModuleArgs.config.extraBaseModules
|
||||
];
|
||||
|
@ -449,6 +449,8 @@ let
|
||||
gidsAreUnique = idsAreUnique (filterAttrs (n: g: g.gid != null) cfg.groups) "gid";
|
||||
sdInitrdUidsAreUnique = idsAreUnique (filterAttrs (n: u: u.uid != null) config.boot.initrd.systemd.users) "uid";
|
||||
sdInitrdGidsAreUnique = idsAreUnique (filterAttrs (n: g: g.gid != null) config.boot.initrd.systemd.groups) "gid";
|
||||
groupNames = lib.mapAttrsToList (n: g: g.name) cfg.groups;
|
||||
usersWithoutExistingGroup = lib.filterAttrs (n: u: !lib.elem u.group groupNames) cfg.users;
|
||||
|
||||
spec = pkgs.writeText "users-groups.json" (builtins.toJSON {
|
||||
inherit (cfg) mutableUsers;
|
||||
@ -750,6 +752,18 @@ in {
|
||||
{ assertion = !cfg.enforceIdUniqueness || (sdInitrdUidsAreUnique && sdInitrdGidsAreUnique);
|
||||
message = "systemd initrd UIDs and GIDs must be unique!";
|
||||
}
|
||||
{ assertion = usersWithoutExistingGroup == {};
|
||||
message =
|
||||
let
|
||||
errUsers = lib.attrNames usersWithoutExistingGroup;
|
||||
missingGroups = lib.unique (lib.mapAttrsToList (n: u: u.group) usersWithoutExistingGroup);
|
||||
mkConfigHint = group: "users.groups.${group} = {};";
|
||||
in ''
|
||||
The following users have a primary group that is undefined: ${lib.concatStringsSep " " errUsers}
|
||||
Hint: Add this to your NixOS configuration:
|
||||
${lib.concatStringsSep "\n " (map mkConfigHint missingGroups)}
|
||||
'';
|
||||
}
|
||||
{ # If mutableUsers is false, to prevent users creating a
|
||||
# configuration that locks them out of the system, ensure that
|
||||
# there is at least one "privileged" account that has a
|
||||
|
@ -66,36 +66,32 @@ let
|
||||
};
|
||||
|
||||
filterDTBs = src: if cfg.filter == null
|
||||
then "${src}/dtbs"
|
||||
then src
|
||||
else
|
||||
pkgs.runCommand "dtbs-filtered" {} ''
|
||||
mkdir -p $out
|
||||
cd ${src}/dtbs
|
||||
cd ${src}
|
||||
find . -type f -name '${cfg.filter}' -print0 \
|
||||
| xargs -0 cp -v --no-preserve=mode --target-directory $out --parents
|
||||
'';
|
||||
|
||||
filteredDTBs = filterDTBs cfg.kernelPackage;
|
||||
|
||||
# Compile single Device Tree overlay source
|
||||
# file (.dts) into its compiled variant (.dtbo)
|
||||
compileDTS = name: f: pkgs.callPackage({ stdenv, dtc }: stdenv.mkDerivation {
|
||||
name = "${name}-dtbo";
|
||||
|
||||
nativeBuildInputs = [ dtc ];
|
||||
|
||||
buildCommand = ''
|
||||
$CC -E -nostdinc -I${getDev cfg.kernelPackage}/lib/modules/${cfg.kernelPackage.modDirVersion}/source/scripts/dtc/include-prefixes -undef -D__DTS__ -x assembler-with-cpp ${f} | \
|
||||
dtc -I dts -O dtb -@ -o $out
|
||||
'';
|
||||
}) {};
|
||||
filteredDTBs = filterDTBs cfg.dtbSource;
|
||||
|
||||
# Fill in `dtboFile` for each overlay if not set already.
|
||||
# Existence of one of these is guarded by assertion below
|
||||
withDTBOs = xs: flip map xs (o: o // { dtboFile =
|
||||
let
|
||||
includePaths = ["${getDev cfg.kernelPackage}/lib/modules/${cfg.kernelPackage.modDirVersion}/source/scripts/dtc/include-prefixes"] ++ cfg.dtboBuildExtraIncludePaths;
|
||||
extraPreprocessorFlags = cfg.dtboBuildExtraPreprocessorFlags;
|
||||
in
|
||||
if o.dtboFile == null then
|
||||
if o.dtsFile != null then compileDTS o.name o.dtsFile
|
||||
else compileDTS o.name (pkgs.writeText "dts" o.dtsText)
|
||||
let
|
||||
dtsFile = if o.dtsFile == null then (pkgs.writeText "dts" o.dtsText) else o.dtsFile;
|
||||
in
|
||||
pkgs.deviceTree.compileDTS {
|
||||
name = "${o.name}-dtbo";
|
||||
inherit includePaths extraPreprocessorFlags dtsFile;
|
||||
}
|
||||
else o.dtboFile; } );
|
||||
|
||||
in
|
||||
@ -121,7 +117,39 @@ in
|
||||
example = literalExpression "pkgs.linux_latest";
|
||||
type = types.path;
|
||||
description = lib.mdDoc ''
|
||||
Kernel package containing the base device-tree (.dtb) to boot. Uses
|
||||
Kernel package where device tree include directory is from. Also used as default source of dtb package to apply overlays to
|
||||
'';
|
||||
};
|
||||
|
||||
dtboBuildExtraPreprocessorFlags = mkOption {
|
||||
default = [];
|
||||
example = literalExpression "[ \"-DMY_DTB_DEFINE\" ]";
|
||||
type = types.listOf types.str;
|
||||
description = lib.mdDoc ''
|
||||
Additional flags to pass to the preprocessor during dtbo compilations
|
||||
'';
|
||||
};
|
||||
|
||||
dtboBuildExtraIncludePaths = mkOption {
|
||||
default = [];
|
||||
example = literalExpression ''
|
||||
[
|
||||
./my_custom_include_dir_1
|
||||
./custom_include_dir_2
|
||||
]
|
||||
'';
|
||||
type = types.listOf types.path;
|
||||
description = lib.mdDoc ''
|
||||
Additional include paths that will be passed to the preprocessor when creating the final .dts to compile into .dtbo
|
||||
'';
|
||||
};
|
||||
|
||||
dtbSource = mkOption {
|
||||
default = "${cfg.kernelPackage}/dtbs";
|
||||
defaultText = literalExpression "\${cfg.kernelPackage}/dtbs";
|
||||
type = types.path;
|
||||
description = lib.mdDoc ''
|
||||
Path to dtb directory that overlays and other processing will be applied to. Uses
|
||||
device trees bundled with the Linux kernel by default.
|
||||
'';
|
||||
};
|
||||
|
@ -1286,6 +1286,7 @@
|
||||
./services/web-apps/powerdns-admin.nix
|
||||
./services/web-apps/prosody-filer.nix
|
||||
./services/web-apps/restya-board.nix
|
||||
./services/web-apps/rimgo.nix
|
||||
./services/web-apps/sftpgo.nix
|
||||
./services/web-apps/rss-bridge.nix
|
||||
./services/web-apps/selfoss.nix
|
||||
|
@ -187,7 +187,7 @@ in {
|
||||
serviceConfig = {
|
||||
User = pgmanage;
|
||||
Group = pgmanage;
|
||||
ExecStart = "${pkgs.pgmanage}/sbin/pgmanage -c ${confFile}" +
|
||||
ExecStart = "${cfg.package}/sbin/pgmanage -c ${confFile}" +
|
||||
optionalString cfg.localOnly " --local-only=true";
|
||||
};
|
||||
};
|
||||
|
@ -154,5 +154,5 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ erictapen bbenno joscha ];
|
||||
meta.maintainers = with lib.maintainers; [ erictapen bbenno ];
|
||||
}
|
||||
|
@ -92,6 +92,16 @@ in {
|
||||
'';
|
||||
};
|
||||
|
||||
extraArgs = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [ ];
|
||||
example = [ "-r" "-s" "19200" ];
|
||||
description = lib.mdDoc ''
|
||||
A list of extra command line arguments to pass to gpsd.
|
||||
Check gpsd(8) mangpage for possible arguments.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
@ -117,12 +127,14 @@ in {
|
||||
Type = "forking";
|
||||
ExecStart = let
|
||||
devices = utils.escapeSystemdExecArgs cfg.devices;
|
||||
extraArgs = utils.escapeSystemdExecArgs cfg.extraArgs;
|
||||
in ''
|
||||
${pkgs.gpsd}/sbin/gpsd -D "${toString cfg.debugLevel}" \
|
||||
-S "${toString cfg.port}" \
|
||||
${optionalString cfg.readonly "-b"} \
|
||||
${optionalString cfg.nowait "-n"} \
|
||||
${optionalString cfg.listenany "-G"} \
|
||||
${extraArgs} \
|
||||
${devices}
|
||||
'';
|
||||
};
|
||||
|
@ -58,6 +58,7 @@ let
|
||||
"nut"
|
||||
"openldap"
|
||||
"openvpn"
|
||||
"pgbouncer"
|
||||
"php-fpm"
|
||||
"pihole"
|
||||
"postfix"
|
||||
@ -312,6 +313,25 @@ in
|
||||
Please specify either 'services.prometheus.exporters.nextcloud.passwordFile' or
|
||||
'services.prometheus.exporters.nextcloud.tokenFile'
|
||||
'';
|
||||
} {
|
||||
assertion = cfg.pgbouncer.enable -> (
|
||||
(cfg.pgbouncer.connectionStringFile != null || cfg.pgbouncer.connectionString != "")
|
||||
);
|
||||
message = ''
|
||||
PgBouncer exporter needs either connectionStringFile or connectionString configured"
|
||||
'';
|
||||
} {
|
||||
assertion = cfg.pgbouncer.enable -> (
|
||||
config.services.pgbouncer.ignoreStartupParameters != null && builtins.match ".*extra_float_digits.*" config.services.pgbouncer.ignoreStartupParameters != null
|
||||
);
|
||||
message = ''
|
||||
Prometheus PgBouncer exporter requires including `extra_float_digits` in services.pgbouncer.ignoreStartupParameters
|
||||
|
||||
Example:
|
||||
services.pgbouncer.ignoreStartupParameters = extra_float_digits;
|
||||
|
||||
See https://github.com/prometheus-community/pgbouncer_exporter#pgbouncer-configuration
|
||||
'';
|
||||
} {
|
||||
assertion = cfg.sql.enable -> (
|
||||
(cfg.sql.configFile == null) != (cfg.sql.configuration == null)
|
||||
@ -350,12 +370,24 @@ in
|
||||
`openFirewall' is set to `true'!
|
||||
'';
|
||||
})) ++ config.services.prometheus.exporters.assertions;
|
||||
warnings = [(mkIf (config.services.prometheus.exporters.idrac.enable && config.services.prometheus.exporters.idrac.configurationPath != null) ''
|
||||
Configuration file in `services.prometheus.exporters.idrac.configurationPath` may override
|
||||
`services.prometheus.exporters.idrac.listenAddress` and/or `services.prometheus.exporters.idrac.port`.
|
||||
Consider using `services.prometheus.exporters.idrac.configuration` instead.
|
||||
''
|
||||
)] ++ config.services.prometheus.exporters.warnings;
|
||||
warnings = [
|
||||
(mkIf (config.services.prometheus.exporters.idrac.enable && config.services.prometheus.exporters.idrac.configurationPath != null) ''
|
||||
Configuration file in `services.prometheus.exporters.idrac.configurationPath` may override
|
||||
`services.prometheus.exporters.idrac.listenAddress` and/or `services.prometheus.exporters.idrac.port`.
|
||||
Consider using `services.prometheus.exporters.idrac.configuration` instead.
|
||||
''
|
||||
)
|
||||
(mkIf
|
||||
(cfg.pgbouncer.enable && cfg.pgbouncer.connectionString != "") ''
|
||||
config.services.prometheus.exporters.pgbouncer.connectionString is insecure. Use connectionStringFile instead.
|
||||
''
|
||||
)
|
||||
(mkIf
|
||||
(cfg.pgbouncer.enable && config.services.pgbouncer.authType != "any") ''
|
||||
Admin user (with password or passwordless) MUST exist in the services.pgbouncer.authFile if authType other than any is used.
|
||||
''
|
||||
)
|
||||
] ++ config.services.prometheus.exporters.warnings;
|
||||
}] ++ [(mkIf config.services.minio.enable {
|
||||
services.prometheus.exporters.minio.minioAddress = mkDefault "http://localhost:9000";
|
||||
services.prometheus.exporters.minio.minioAccessKey = mkDefault config.services.minio.accessKey;
|
||||
|
@ -0,0 +1,145 @@
|
||||
{ config, lib, pkgs, options }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.prometheus.exporters.pgbouncer;
|
||||
in
|
||||
{
|
||||
port = 9127;
|
||||
extraOpts = {
|
||||
|
||||
telemetryPath = mkOption {
|
||||
type = types.str;
|
||||
default = "/metrics";
|
||||
description = lib.mdDoc ''
|
||||
Path under which to expose metrics.
|
||||
'';
|
||||
};
|
||||
|
||||
connectionString = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
example = "postgres://admin:@localhost:6432/pgbouncer?sslmode=require";
|
||||
description = lib.mdDoc ''
|
||||
Connection string for accessing pgBouncer.
|
||||
|
||||
NOTE: You MUST keep pgbouncer as database name (special internal db)!!!
|
||||
|
||||
NOTE: Admin user (with password or passwordless) MUST exist
|
||||
in the services.pgbouncer.authFile if authType other than any is used.
|
||||
|
||||
WARNING: this secret is stored in the world-readable Nix store!
|
||||
Use {option}`connectionStringFile` instead.
|
||||
'';
|
||||
};
|
||||
|
||||
connectionStringFile = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
example = "/run/keys/pgBouncer-connection-string";
|
||||
description = lib.mdDoc ''
|
||||
File that contains pgBouncer connection string in format:
|
||||
postgres://admin:@localhost:6432/pgbouncer?sslmode=require
|
||||
|
||||
NOTE: You MUST keep pgbouncer as database name (special internal db)!!!
|
||||
|
||||
NOTE: Admin user (with password or passwordless) MUST exist
|
||||
in the services.pgbouncer.authFile if authType other than any is used.
|
||||
|
||||
{option}`connectionStringFile` takes precedence over {option}`connectionString`
|
||||
'';
|
||||
};
|
||||
|
||||
pidFile = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = lib.mdDoc ''
|
||||
Path to PgBouncer pid file.
|
||||
|
||||
If provided, the standard process metrics get exported for the PgBouncer
|
||||
process, prefixed with 'pgbouncer_process_...'. The pgbouncer_process exporter
|
||||
needs to have read access to files owned by the PgBouncer process. Depends on
|
||||
the availability of /proc.
|
||||
|
||||
https://prometheus.io/docs/instrumenting/writing_clientlibs/#process-metrics.
|
||||
|
||||
'';
|
||||
};
|
||||
|
||||
webSystemdSocket = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc ''
|
||||
Use systemd socket activation listeners instead of port listeners (Linux only).
|
||||
'';
|
||||
};
|
||||
|
||||
logLevel = mkOption {
|
||||
type = types.enum ["debug" "info" "warn" "error" ];
|
||||
default = "info";
|
||||
description = lib.mdDoc ''
|
||||
Only log messages with the given severity or above.
|
||||
'';
|
||||
};
|
||||
|
||||
logFormat = mkOption {
|
||||
type = types.enum ["logfmt" "json"];
|
||||
default = "logfmt";
|
||||
description = lib.mdDoc ''
|
||||
Output format of log messages. One of: [logfmt, json]
|
||||
'';
|
||||
};
|
||||
|
||||
webConfigFile = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
description = lib.mdDoc ''
|
||||
Path to configuration file that can enable TLS or authentication.
|
||||
'';
|
||||
};
|
||||
|
||||
extraFlags = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [ ];
|
||||
description = lib.mdDoc ''
|
||||
Extra commandline options when launching Prometheus.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
serviceOpts = {
|
||||
after = [ "pgbouncer.service" ];
|
||||
serviceConfig = let
|
||||
startScript = pkgs.writeShellScriptBin "pgbouncer-start" "${concatStringsSep " " ([
|
||||
"${pkgs.prometheus-pgbouncer-exporter}/bin/pgbouncer_exporter"
|
||||
"--web.listen-address ${cfg.listenAddress}:${toString cfg.port}"
|
||||
"--pgBouncer.connectionString ${if cfg.connectionStringFile != null then
|
||||
"$(head -n1 ${cfg.connectionStringFile})" else "${escapeShellArg cfg.connectionString}"}"
|
||||
]
|
||||
++ optionals (cfg.telemetryPath != null) [
|
||||
"--web.telemetry-path ${escapeShellArg cfg.telemetryPath}"
|
||||
]
|
||||
++ optionals (cfg.pidFile != null) [
|
||||
"--pgBouncer.pid-file= ${escapeShellArg cfg.pidFile}"
|
||||
]
|
||||
++ optionals (cfg.logLevel != null) [
|
||||
"--log.level ${escapeShellArg cfg.logLevel}"
|
||||
]
|
||||
++ optionals (cfg.logFormat != null) [
|
||||
"--log.format ${escapeShellArg cfg.logFormat}"
|
||||
]
|
||||
++ optionals (cfg.webSystemdSocket != false) [
|
||||
"--web.systemd-socket ${escapeShellArg cfg.webSystemdSocket}"
|
||||
]
|
||||
++ optionals (cfg.webConfigFile != null) [
|
||||
"--web.config.file ${escapeShellArg cfg.webConfigFile}"
|
||||
]
|
||||
++ cfg.extraFlags)}";
|
||||
in
|
||||
{
|
||||
ExecStart = "${startScript}/bin/pgbouncer-start";
|
||||
};
|
||||
};
|
||||
}
|
@ -192,7 +192,7 @@ in {
|
||||
# orangefs daemon will run as user
|
||||
users.users.orangefs = {
|
||||
isSystemUser = true;
|
||||
group = "orangfs";
|
||||
group = "orangefs";
|
||||
};
|
||||
users.groups.orangefs = {};
|
||||
|
||||
|
@ -29,6 +29,13 @@ in {
|
||||
type = types.package;
|
||||
description = lib.mdDoc "Coredns package to use.";
|
||||
};
|
||||
|
||||
extraArgs = mkOption {
|
||||
default = [];
|
||||
example = [ "-dns.port=53" ];
|
||||
type = types.listOf types.str;
|
||||
description = lib.mdDoc "Extra arguments to pass to coredns.";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
@ -44,7 +51,7 @@ in {
|
||||
AmbientCapabilities = "cap_net_bind_service";
|
||||
NoNewPrivileges = true;
|
||||
DynamicUser = true;
|
||||
ExecStart = "${getBin cfg.package}/bin/coredns -conf=${configFile}";
|
||||
ExecStart = "${getBin cfg.package}/bin/coredns -conf=${configFile} ${lib.escapeShellArgs cfg.extraArgs}";
|
||||
ExecReload = "${pkgs.coreutils}/bin/kill -SIGUSR1 $MAINPID";
|
||||
Restart = "on-failure";
|
||||
};
|
||||
|
@ -121,6 +121,13 @@ in
|
||||
restarted. Keys are stored at ${keysPath}.
|
||||
'');
|
||||
|
||||
extraArgs = mkOption {
|
||||
type = listOf str;
|
||||
default = [ ];
|
||||
example = [ "-loglevel" "info" ];
|
||||
description = lib.mdDoc "Extra command line arguments.";
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
@ -181,7 +188,7 @@ in
|
||||
"${binYggdrasil} -genconf") + " > /run/yggdrasil/yggdrasil.conf"}
|
||||
|
||||
# start yggdrasil
|
||||
${binYggdrasil} -useconffile /run/yggdrasil/yggdrasil.conf
|
||||
${binYggdrasil} -useconffile /run/yggdrasil/yggdrasil.conf ${lib.strings.escapeShellArgs cfg.extraArgs}
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
|
107
nixos/modules/services/web-apps/rimgo.nix
Normal file
107
nixos/modules/services/web-apps/rimgo.nix
Normal file
@ -0,0 +1,107 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
cfg = config.services.rimgo;
|
||||
inherit (lib)
|
||||
mkOption
|
||||
mkEnableOption
|
||||
mkPackageOption
|
||||
mkDefault
|
||||
mkIf
|
||||
types
|
||||
literalExpression
|
||||
optionalString
|
||||
getExe
|
||||
mapAttrs
|
||||
;
|
||||
in
|
||||
{
|
||||
options.services.rimgo = {
|
||||
enable = mkEnableOption "rimgo";
|
||||
package = mkPackageOption pkgs "rimgo" { };
|
||||
settings = mkOption {
|
||||
type = types.submodule {
|
||||
freeformType = with types; attrsOf str;
|
||||
options = {
|
||||
PORT = mkOption {
|
||||
type = types.port;
|
||||
default = 3000;
|
||||
example = 69420;
|
||||
description = "The port to use.";
|
||||
};
|
||||
ADDRESS = mkOption {
|
||||
type = types.str;
|
||||
default = "127.0.0.1";
|
||||
example = "1.1.1.1";
|
||||
description = "The address to listen on.";
|
||||
};
|
||||
};
|
||||
};
|
||||
example = literalExpression ''
|
||||
{
|
||||
PORT = 69420;
|
||||
FORCE_WEBP = "1";
|
||||
}
|
||||
'';
|
||||
description = ''
|
||||
Settings for rimgo, see [the official documentation](https://rimgo.codeberg.page/docs/usage/configuration/) for supported options.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
systemd.services.rimgo = {
|
||||
description = "Rimgo";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" ];
|
||||
environment = mapAttrs (_: toString) cfg.settings;
|
||||
serviceConfig = {
|
||||
ExecStart = getExe cfg.package;
|
||||
AmbientCapabilities = mkIf (cfg.settings.PORT < 1024) [
|
||||
"CAP_NET_BIND_SERVICE"
|
||||
];
|
||||
DynamicUser = true;
|
||||
Restart = "on-failure";
|
||||
RestartSec = "5s";
|
||||
CapabilityBoundingSet = [
|
||||
(optionalString (cfg.settings.PORT < 1024) "CAP_NET_BIND_SERVICE")
|
||||
];
|
||||
DeviceAllow = [ "" ];
|
||||
LockPersonality = true;
|
||||
MemoryDenyWriteExecute = true;
|
||||
PrivateDevices = true;
|
||||
PrivateUsers = cfg.settings.PORT >= 1024;
|
||||
ProcSubset = "pid";
|
||||
ProtectClock = true;
|
||||
ProtectControlGroups = true;
|
||||
ProtectHome = true;
|
||||
ProtectHostname = true;
|
||||
ProtectKernelLogs = true;
|
||||
ProtectKernelModules = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectProc = "invisible";
|
||||
RestrictAddressFamilies = [
|
||||
"AF_INET"
|
||||
"AF_INET6"
|
||||
];
|
||||
RestrictNamespaces = true;
|
||||
RestrictRealtime = true;
|
||||
RestrictSUIDSGID = true;
|
||||
SystemCallArchitectures = "native";
|
||||
SystemCallFilter = [
|
||||
"@system-service"
|
||||
"~@privileged"
|
||||
];
|
||||
UMask = "0077";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
maintainers = with lib.maintainers; [ quantenzitrone ];
|
||||
};
|
||||
}
|
@ -1340,6 +1340,11 @@ in
|
||||
nginx.gid = config.ids.gids.nginx;
|
||||
};
|
||||
|
||||
# do not delete the default temp directories created upon nginx startup
|
||||
systemd.tmpfiles.rules = [
|
||||
"X /tmp/systemd-private-%b-nginx.service-*/tmp/nginx_*"
|
||||
];
|
||||
|
||||
services.logrotate.settings.nginx = mapAttrs (_: mkDefault) {
|
||||
files = "/var/log/nginx/*.log";
|
||||
frequency = "weekly";
|
||||
|
@ -28,7 +28,6 @@ let
|
||||
# TODO: warn the user that any address configured on those interfaces will be useless
|
||||
++ concatMap (i: attrNames (filterAttrs (_: config: config.type != "internal") i.interfaces)) (attrValues cfg.vswitches);
|
||||
|
||||
domains = cfg.search ++ (optional (cfg.domain != null) cfg.domain);
|
||||
genericNetwork = override:
|
||||
let gateway = optional (cfg.defaultGateway != null && (cfg.defaultGateway.address or "") != "") cfg.defaultGateway.address
|
||||
++ optional (cfg.defaultGateway6 != null && (cfg.defaultGateway6.address or "") != "") cfg.defaultGateway6.address;
|
||||
@ -40,8 +39,6 @@ let
|
||||
};
|
||||
in optionalAttrs (gateway != [ ]) {
|
||||
routes = override (map makeGateway gateway);
|
||||
} // optionalAttrs (domains != [ ]) {
|
||||
domains = override domains;
|
||||
};
|
||||
|
||||
genericDhcpNetworks = initrd: mkIf cfg.useDHCP {
|
||||
|
@ -331,7 +331,6 @@ in {
|
||||
graylog = handleTest ./graylog.nix {};
|
||||
grocy = handleTest ./grocy.nix {};
|
||||
grub = handleTest ./grub.nix {};
|
||||
guacamole-client = handleTest ./guacamole-client.nix {};
|
||||
guacamole-server = handleTest ./guacamole-server.nix {};
|
||||
gvisor = handleTest ./gvisor.nix {};
|
||||
hadoop = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop; };
|
||||
@ -555,6 +554,7 @@ in {
|
||||
nginx-sandbox = handleTestOn ["x86_64-linux"] ./nginx-sandbox.nix {};
|
||||
nginx-sso = handleTest ./nginx-sso.nix {};
|
||||
nginx-status-page = handleTest ./nginx-status-page.nix {};
|
||||
nginx-tmpdir = handleTest ./nginx-tmpdir.nix {};
|
||||
nginx-variants = handleTest ./nginx-variants.nix {};
|
||||
nifi = handleTestOn ["x86_64-linux"] ./web-apps/nifi.nix {};
|
||||
nitter = handleTest ./nitter.nix {};
|
||||
|
@ -14,8 +14,8 @@ import ./make-test-python.nix
|
||||
profiles.user.databases = [
|
||||
{
|
||||
settings = {
|
||||
"test/not/locked" = mkInt32 1;
|
||||
"test/is/locked" = "locked";
|
||||
"test/not".locked = mkInt32 1;
|
||||
"test/is".locked = "locked";
|
||||
};
|
||||
locks = [
|
||||
"/test/is/locked"
|
||||
|
@ -28,7 +28,7 @@ import ./make-test-python.nix ({ pkgs, ... } : {
|
||||
};
|
||||
};
|
||||
boot.extraModulePackages =
|
||||
optional (versionOlder config.boot.kernelPackages.kernel.version "5.6")
|
||||
pkgs.lib.optional (pkgs.lib.versionOlder config.boot.kernelPackages.kernel.version "5.6")
|
||||
config.boot.kernelPackages.wireguard;
|
||||
boot.kernelModules = [ "wireguard" ];
|
||||
};
|
||||
|
@ -31,7 +31,6 @@ let
|
||||
linux_5_10_hardened
|
||||
linux_5_15_hardened
|
||||
linux_6_1_hardened
|
||||
linux_6_4_hardened
|
||||
linux_6_5_hardened
|
||||
linux_rt_5_4
|
||||
linux_rt_5_10
|
||||
|
@ -8,7 +8,7 @@ in
|
||||
meta.maintainers = [ lib.maintainers.ratsclub ];
|
||||
|
||||
nodes = {
|
||||
server = { config, pkgs }: {
|
||||
server = { config, pkgs, ... }: {
|
||||
services.legit = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
@ -44,14 +44,22 @@ import ./make-test-python.nix ({ pkgs, ...} : {
|
||||
};
|
||||
services.grafana = {
|
||||
enable = true;
|
||||
security = {
|
||||
adminUser = "admin";
|
||||
adminPassword = "admin";
|
||||
};
|
||||
addr = "localhost";
|
||||
port = 3000;
|
||||
extraOptions = {
|
||||
DATABASE_URL = "sqlite3:///var/lib/grafana/data/grafana.db?cache=private&mode=rwc&_journal_mode=WAL";
|
||||
settings = {
|
||||
security = {
|
||||
admin_user = "admin";
|
||||
admin_password = "admin";
|
||||
};
|
||||
|
||||
server = {
|
||||
http_addr = "localhost";
|
||||
http_port = 3000;
|
||||
};
|
||||
|
||||
database = {
|
||||
type = "sqlite3";
|
||||
path = "/var/lib/grafana/data/grafana.db";
|
||||
wal = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
users.users.foo = {
|
||||
|
@ -8,8 +8,8 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
lxd-image-metadata = lxd-image.lxdMeta.${pkgs.stdenv.hostPlatform.system};
|
||||
lxd-image-rootfs = lxd-image.lxdImage.${pkgs.stdenv.hostPlatform.system};
|
||||
lxd-image-metadata = lxd-image.lxdContainerMeta.${pkgs.stdenv.hostPlatform.system};
|
||||
lxd-image-rootfs = lxd-image.lxdContainerImage.${pkgs.stdenv.hostPlatform.system};
|
||||
|
||||
in {
|
||||
name = "lxd-image-server";
|
||||
|
@ -27,7 +27,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
|
||||
in {
|
||||
name = "mongodb";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ bluescreen303 offline cstrahan rvl phile314 ];
|
||||
maintainers = [ bluescreen303 offline rvl phile314 ];
|
||||
};
|
||||
|
||||
nodes = {
|
||||
|
60
nixos/tests/nginx-tmpdir.nix
Normal file
60
nixos/tests/nginx-tmpdir.nix
Normal file
@ -0,0 +1,60 @@
|
||||
let
|
||||
dst-dir = "/run/nginx-test-tmpdir-uploads";
|
||||
in
|
||||
import ./make-test-python.nix {
|
||||
name = "nginx-tmpdir";
|
||||
|
||||
nodes.machine = { pkgs, ... }: {
|
||||
environment.etc."tmpfiles.d/nginx-uploads.conf".text = "d ${dst-dir} 0755 nginx nginx 1d";
|
||||
|
||||
# overwrite the tmp.conf with a short age, there will be a duplicate line info from systemd-tmpfiles in the log
|
||||
systemd.tmpfiles.rules = [
|
||||
"q /tmp 1777 root root 1min"
|
||||
];
|
||||
|
||||
services.nginx.enable = true;
|
||||
# simple upload service using the nginx client body temp path
|
||||
services.nginx.virtualHosts = {
|
||||
localhost = {
|
||||
locations."~ ^/upload/([0-9a-zA-Z-.]*)$" = {
|
||||
extraConfig = ''
|
||||
alias ${dst-dir}/$1;
|
||||
client_body_in_file_only clean;
|
||||
dav_methods PUT;
|
||||
create_full_put_path on;
|
||||
dav_access group:rw all:r;
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("nginx")
|
||||
machine.wait_for_open_port(80)
|
||||
|
||||
with subtest("Needed prerequisite --http-client-body-temp-path=/tmp/nginx_client_body and private temp"):
|
||||
machine.succeed("touch /tmp/systemd-private-*-nginx.service-*/tmp/nginx_client_body")
|
||||
|
||||
with subtest("Working upload of test setup"):
|
||||
machine.succeed("curl -X PUT http://localhost/upload/test1 --fail --data-raw 'Raw data 1'")
|
||||
machine.succeed('test "$(cat ${dst-dir}/test1)" = "Raw data 1"')
|
||||
|
||||
# let the tmpfiles clean service do its job
|
||||
machine.succeed("touch /tmp/touched")
|
||||
machine.wait_until_succeeds(
|
||||
"sleep 15 && systemctl start systemd-tmpfiles-clean.service && [ ! -f /tmp/touched ]",
|
||||
timeout=150
|
||||
)
|
||||
|
||||
with subtest("Working upload after cleaning"):
|
||||
machine.succeed("curl -X PUT http://localhost/upload/test2 --fail --data-raw 'Raw data 2'")
|
||||
machine.succeed('test "$(cat ${dst-dir}/test2)" = "Raw data 2"')
|
||||
|
||||
# manually remove the nginx temp dir
|
||||
machine.succeed("rm -r --interactive=never /tmp/systemd-private-*-nginx.service-*/tmp/nginx_client_body")
|
||||
|
||||
with subtest("Broken upload after manual temp dir removal"):
|
||||
machine.fail("curl -X PUT http://localhost/upload/test3 --fail --data-raw 'Raw data 3'")
|
||||
'';
|
||||
}
|
@ -36,7 +36,7 @@ in
|
||||
machine.succeed("echo 'SELECT address FROM etc_hosts LIMIT 1;' | osqueryi | tee /dev/console | grep -q '127.0.0.1'")
|
||||
|
||||
# osquery binaries respect configuration from the Nix config option.
|
||||
machine.succeed("echo 'SELECT value FROM osquery_flags WHERE name = \"utc\";' | osqueryi | tee /dev/console | grep -q ${boolToString utc}")
|
||||
machine.succeed("echo 'SELECT value FROM osquery_flags WHERE name = \"utc\";' | osqueryi | tee /dev/console | grep -q ${lib.boolToString utc}")
|
||||
|
||||
# osquery binaries respect configuration from the Nix flags option.
|
||||
machine.succeed("echo 'SELECT value FROM osquery_flags WHERE name = \"config_refresh\";' | osqueryi | tee /dev/console | grep -q ${config_refresh}")
|
||||
|
@ -966,6 +966,36 @@ let
|
||||
'';
|
||||
};
|
||||
|
||||
pgbouncer = {
|
||||
exporterConfig = {
|
||||
enable = true;
|
||||
connectionString = "postgres://admin:@localhost:6432/pgbouncer?sslmode=disable";
|
||||
};
|
||||
|
||||
metricProvider = {
|
||||
services.postgresql.enable = true;
|
||||
services.pgbouncer = {
|
||||
# https://github.com/prometheus-community/pgbouncer_exporter#pgbouncer-configuration
|
||||
ignoreStartupParameters = "extra_float_digits";
|
||||
enable = true;
|
||||
listenAddress = "*";
|
||||
databases = { postgres = "host=/run/postgresql/ port=5432 auth_user=postgres dbname=postgres"; };
|
||||
authType = "any";
|
||||
maxClientConn = 99;
|
||||
};
|
||||
};
|
||||
exporterTest = ''
|
||||
wait_for_unit("postgresql.service")
|
||||
wait_for_unit("pgbouncer.service")
|
||||
wait_for_unit("prometheus-pgbouncer-exporter.service")
|
||||
wait_for_open_port(9127)
|
||||
succeed("curl -sSf http://localhost:9127/metrics | grep 'pgbouncer_up 1'")
|
||||
succeed(
|
||||
"curl -sSf http://localhost:9127/metrics | grep 'pgbouncer_config_max_client_connections 99'"
|
||||
)
|
||||
'';
|
||||
};
|
||||
|
||||
php-fpm = {
|
||||
nodeName = "php_fpm";
|
||||
exporterConfig = {
|
||||
|
@ -17,7 +17,7 @@ let
|
||||
|
||||
# Returns an attributeset of users who are not system users.
|
||||
normalUsers = config:
|
||||
filterAttrs (name: user: user.isNormalUser) config.users.users;
|
||||
lib.filterAttrs (name: user: user.isNormalUser) config.users.users;
|
||||
|
||||
# Returns true if a user is a member of the given group
|
||||
isMemberOf =
|
||||
@ -26,7 +26,7 @@ let
|
||||
groupName:
|
||||
# users.users attrset
|
||||
user:
|
||||
any (x: x == user.name) config.users.groups.${groupName}.members;
|
||||
lib.any (x: x == user.name) config.users.groups.${groupName}.members;
|
||||
|
||||
# Generates a valid SFTPGo user configuration for a given user
|
||||
# Will be converted to JSON and loaded on application startup.
|
||||
@ -52,7 +52,7 @@ let
|
||||
# inside the dataprovider they will be automatically created.
|
||||
# You have to create the folder on the filesystem yourself
|
||||
virtual_folders =
|
||||
lib.optional (lib.isMemberOf config sharedFolderName user) {
|
||||
lib.optional (isMemberOf config sharedFolderName user) {
|
||||
name = sharedFolderName;
|
||||
mapped_path = "${config.services.sftpgo.dataDir}/${sharedFolderName}";
|
||||
virtual_path = "/${sharedFolderName}";
|
||||
@ -63,7 +63,7 @@ let
|
||||
lib.recursiveUpdate {
|
||||
"/" = [ "list" ]; # read-only top level directory
|
||||
"/private" = [ "*" ]; # private subdirectory, not shared with others
|
||||
} (lib.optionalAttrs (lib.isMemberOf config "shared" user) {
|
||||
} (lib.optionalAttrs (isMemberOf config "shared" user) {
|
||||
"/shared" = [ "*" ];
|
||||
});
|
||||
|
||||
@ -89,7 +89,7 @@ let
|
||||
# of users and folders to import to SFTPGo.
|
||||
loadDataJson = config: pkgs.writeText "users-and-folders.json" (builtins.toJSON {
|
||||
users =
|
||||
lib.mapAttrsToList (name: user: lib.generateUserAttrSet config user) (normalUsers config);
|
||||
lib.mapAttrsToList (name: user: generateUserAttrSet config user) (normalUsers config);
|
||||
|
||||
folders = [
|
||||
{
|
||||
@ -144,7 +144,7 @@ in
|
||||
{
|
||||
name = "sftpgo";
|
||||
|
||||
meta.maintainers = with maintainers; [ yayayayaka ];
|
||||
meta.maintainers = with lib.maintainers; [ yayayayaka ];
|
||||
|
||||
nodes = {
|
||||
server = { nodes, ... }: {
|
||||
@ -228,7 +228,7 @@ in
|
||||
# Created shared folder directories
|
||||
"d ${statePath}/${sharedFolderName} 2770 ${sftpgoUser} ${sharedFolderName} -"
|
||||
]
|
||||
++ mapAttrsToList (name: user:
|
||||
++ lib.mapAttrsToList (name: user:
|
||||
# Create private user directories
|
||||
''
|
||||
d ${statePath}/users/${user.name} 0700 ${sftpgoUser} ${sftpgoGroup} -
|
||||
@ -273,12 +273,12 @@ in
|
||||
networking.firewall.allowedTCPPorts = [ 22 80 ];
|
||||
services.sftpgo = {
|
||||
settings = {
|
||||
sftpd.bindings = mkForce [{
|
||||
sftpd.bindings = lib.mkForce [{
|
||||
address = "";
|
||||
port = 22;
|
||||
}];
|
||||
|
||||
httpd.bindings = mkForce [{
|
||||
httpd.bindings = lib.mkForce [{
|
||||
address = "";
|
||||
port = 80;
|
||||
}];
|
||||
|
@ -43,6 +43,10 @@ import ./make-test-python.nix ({ pkgs, ... }: {
|
||||
mv $GOPATH/tracee-integration $out/bin/
|
||||
'';
|
||||
doInstallCheck = false;
|
||||
|
||||
meta = oa.meta // {
|
||||
outputsToInstall = [];
|
||||
};
|
||||
}))
|
||||
];
|
||||
};
|
||||
|
@ -116,6 +116,7 @@ in import ./make-test-python.nix ({ pkgs, ...} : {
|
||||
networking.firewall.allowedTCPPorts = [ 43210 ];
|
||||
services.yggdrasil = {
|
||||
enable = true;
|
||||
extraArgs = [ "-loglevel" "error" ];
|
||||
denyDhcpcdInterfaces = [ "ygg0" ];
|
||||
settings = {
|
||||
IfTAPMode = true;
|
||||
|
@ -6,16 +6,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "lnd";
|
||||
version = "0.16.3-beta";
|
||||
version = "0.17.0-beta";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lightningnetwork";
|
||||
repo = "lnd";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-/seSpWnlQmeU4vQtlHMOSedPXP9HJp1GyxcB1LqHayA=";
|
||||
hash = "sha256-HndO7vp/sia352hs23xAgrpyJ/CfbRxYAAhLZ4q94Pc=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-obrSVMqTwHe7231wa0OuoT6ANBqkQbkHIy93J2f68Zk=";
|
||||
vendorHash = "sha256-4n81AZLKCTEV4+p4kRhZbzYsdRGIztzh6EKPin8W1Z0=";
|
||||
|
||||
subPackages = [ "cmd/lncli" "cmd/lnd" ];
|
||||
|
||||
|
@ -3,11 +3,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ldtk";
|
||||
version = "1.4.0";
|
||||
version = "1.4.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/deepnight/ldtk/releases/download/v${finalAttrs.version}/ubuntu-distribution.zip";
|
||||
hash = "sha256-WuKzhE9r/yMqlV2bf/0AuNVKfxq/SlecmN3rHt6RjXo=";
|
||||
hash = "sha256-Qt6ADyIbhuxFGh7IP1WwcsvMtjOUZoTd99GeWt5s4UM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip makeWrapper copyDesktopItems appimage-run ];
|
||||
|
@ -4,13 +4,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "orbiton";
|
||||
version = "2.65.0";
|
||||
version = "2.65.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xyproto";
|
||||
repo = "orbiton";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-ul5E5xOtH5qh5tNE+S/VhUOr079wHwgtXF7ZIAwGzgU=";
|
||||
hash = "sha256-ebtzhir6nBnIawkJJq+BgXv/5CbXtbhujXkMBzQEsNY=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
@ -33,13 +33,13 @@
|
||||
|
||||
let
|
||||
pname = "pulsar";
|
||||
version = "1.108.0";
|
||||
version = "1.109.0";
|
||||
|
||||
sourcesPath = {
|
||||
x86_64-linux.tarname = "Linux.${pname}-${version}.tar.gz";
|
||||
x86_64-linux.hash = "sha256-9wxMKekowNkFX+m3h2ZeTXu/uMLyPi6IIbseJ16shG4=";
|
||||
x86_64-linux.hash = "sha256-pIm3mI1YdfapxXgIciSHtI4LeqMw5RdYTnH+eHUQ4Yo=";
|
||||
aarch64-linux.tarname = "ARM.Linux.${pname}-${version}-arm64.tar.gz";
|
||||
aarch64-linux.hash = "sha256-GdPnmhMZR3Y2WB2j98JEWomdKFZuTgxN8oga/tBwA4U=";
|
||||
aarch64-linux.hash = "sha256-KIY/qzfl7CU0YwIgQlNHoAMhLfrTbQe7ZZvzdkUVw+M=";
|
||||
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
|
||||
|
||||
newLibpath = lib.makeLibraryPath [
|
||||
|
@ -30,21 +30,21 @@ let
|
||||
archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
|
||||
|
||||
sha256 = {
|
||||
x86_64-linux = "0i6zk4zkwcw5lnzhg7vvnsw17nar97bbq3iishag9cpjqs9jpq4z";
|
||||
x86_64-darwin = "1sy0ir4mhw9j5ifiv6d2928gcs8wfksxlsp312r9nsmc2h0i11g6";
|
||||
aarch64-linux = "13lsycmia9yj6s7zf441vg8c0pipxpxdrnrj7v4rhjlvixjb8f8k";
|
||||
aarch64-darwin = "1qwmwx0q05lzhsb8810kjk1lcw4wm7cr0zn7pkyjlsda0vkcc5g8";
|
||||
armv7l-linux = "1hlnd9w141phrd3mzkhgiskbcnxqb05396frrv38pns007xhj103";
|
||||
x86_64-linux = "1ayb0fj3dfcvwmfc749aihn1mm2h4nin914kvalchkm9q0xvc2y9";
|
||||
x86_64-darwin = "0yvcm1m1dlklacc0rir4ja2bqiwlwmrmx3qwxf3ik40m1dfwhh53";
|
||||
aarch64-linux = "0vj7q6b82n9509dph0p4d6n7b9gwz5b3wkg4wysm4w4xflqlx9al";
|
||||
aarch64-darwin = "144fxkxg6c5216ds32wdx7qf5hnvlq4a429z90wz62iynslaggl4";
|
||||
armv7l-linux = "1819dg30dy8hd8gi84b1992ii1bxcfcvhx9yf4q8wdf62hw5nkpq";
|
||||
}.${system} or throwSystem;
|
||||
in
|
||||
callPackage ./generic.nix rec {
|
||||
# Please backport all compatible updates to the stable release.
|
||||
# This is important for the extension ecosystem.
|
||||
version = "1.82.2";
|
||||
version = "1.83.0";
|
||||
pname = "vscode" + lib.optionalString isInsiders "-insiders";
|
||||
|
||||
# This is used for VS Code - Remote SSH test
|
||||
rev = "abd2f3db4bdb28f9e95536dfa84d8479f1eb312d";
|
||||
rev = "e7e037083ff4455cf320e344325dacb480062c3c";
|
||||
|
||||
executableName = "code" + lib.optionalString isInsiders "-insiders";
|
||||
longName = "Visual Studio Code" + lib.optionalString isInsiders " - Insiders";
|
||||
@ -68,7 +68,7 @@ in
|
||||
src = fetchurl {
|
||||
name = "vscode-server-${rev}.tar.gz";
|
||||
url = "https://update.code.visualstudio.com/commit:${rev}/server-linux-x64/stable";
|
||||
sha256 = "1d1ypmasr7zj4csinb5nj531ckj7a1pgn36469fdzwn0xjrgkg16";
|
||||
sha256 = "11lf24hsbc4xbi08lrzxw4bn0jqp7rbhz120y9i3ffq25kni989l";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -6,116 +6,23 @@
|
||||
, perl
|
||||
, libpng
|
||||
, giflib
|
||||
, libjpeg
|
||||
, alsa-lib
|
||||
, readline
|
||||
, libGLU
|
||||
, libGL
|
||||
, libXaw
|
||||
, pkg-config
|
||||
, gtk2
|
||||
, gtk3
|
||||
, glew
|
||||
, SDL
|
||||
, SDL_image
|
||||
, autoreconfHook
|
||||
, makeDesktopItem
|
||||
, dos2unix
|
||||
, runtimeShell
|
||||
, xa
|
||||
, file
|
||||
, wrapGAppsHook
|
||||
, xdg-utils
|
||||
}:
|
||||
|
||||
let
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "x128";
|
||||
exec = "x128";
|
||||
comment = "VICE: C128 Emulator";
|
||||
desktopName = "VICE: C128 Emulator";
|
||||
genericName = "Commodore 128 emulator";
|
||||
categories = [ "System" ];
|
||||
})
|
||||
|
||||
(makeDesktopItem {
|
||||
name = "x64dtv";
|
||||
exec = "x64dtv";
|
||||
comment = "VICE: C64 DTV Emulator";
|
||||
desktopName = "VICE: C64 DTV Emulator";
|
||||
genericName = "Commodore 64 DTV emulator";
|
||||
categories = [ "System" ];
|
||||
})
|
||||
|
||||
(makeDesktopItem {
|
||||
name = "x64sc";
|
||||
exec = "x64sc";
|
||||
comment = "VICE: C64 Emulator";
|
||||
desktopName = "VICE: C64 Emulator";
|
||||
genericName = "Commodore 64 SC emulator";
|
||||
categories = [ "System" ];
|
||||
})
|
||||
|
||||
(makeDesktopItem {
|
||||
name = "xcbm2";
|
||||
exec = "xcbm2";
|
||||
comment = "VICE: CBM-II B-Model Emulator";
|
||||
desktopName = "VICE: CBM-II B-Model Emulator";
|
||||
genericName = "CBM-II B-Model Emulator";
|
||||
categories = [ "System" ];
|
||||
})
|
||||
|
||||
(makeDesktopItem {
|
||||
name = "xcbm5x0";
|
||||
exec = "xcbm5x0";
|
||||
comment = "VICE: CBM-II P-Model Emulator";
|
||||
desktopName = "VICE: CBM-II P-Model Emulator";
|
||||
genericName = "CBM-II P-Model Emulator";
|
||||
categories = [ "System" ];
|
||||
})
|
||||
|
||||
(makeDesktopItem {
|
||||
name = "xpet";
|
||||
exec = "xpet";
|
||||
comment = "VICE: PET Emulator";
|
||||
desktopName = "VICE: PET Emulator";
|
||||
genericName = "Commodore PET Emulator";
|
||||
categories = [ "System" ];
|
||||
})
|
||||
|
||||
(makeDesktopItem {
|
||||
name = "xplus4";
|
||||
exec = "xplus4";
|
||||
comment = "VICE: PLUS4 Emulator";
|
||||
desktopName = "VICE: PLUS4 Emulator";
|
||||
genericName = "Commodore PLUS4 Emulator";
|
||||
categories = [ "System" ];
|
||||
})
|
||||
|
||||
(makeDesktopItem {
|
||||
name = "xscpu64";
|
||||
exec = "xscpu64";
|
||||
comment = "VICE: SCPU64 Emulator";
|
||||
desktopName = "VICE: SCPU64 Emulator";
|
||||
genericName = "Commodore SCPU64 Emulator";
|
||||
categories = [ "System" ];
|
||||
})
|
||||
|
||||
(makeDesktopItem {
|
||||
name = "xvic";
|
||||
exec = "xvic";
|
||||
comment = "VICE: VIC-20 Emulator";
|
||||
desktopName = "VICE: VIC-20 Emulator";
|
||||
genericName = "Commodore VIC-20 Emulator";
|
||||
categories = [ "System" ];
|
||||
})
|
||||
|
||||
(makeDesktopItem {
|
||||
name = "vsid";
|
||||
exec = "vsid";
|
||||
comment = "VSID: The SID Emulator";
|
||||
desktopName = "VSID: The SID Emulator";
|
||||
genericName = "SID Emulator";
|
||||
categories = [ "System" ];
|
||||
})
|
||||
];
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "vice";
|
||||
version = "3.7.1";
|
||||
@ -126,46 +33,41 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
bison
|
||||
dos2unix
|
||||
file
|
||||
flex
|
||||
pkg-config
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
alsa-lib
|
||||
giflib
|
||||
gtk2
|
||||
gtk3
|
||||
glew
|
||||
libGL
|
||||
libGLU
|
||||
libXaw
|
||||
libjpeg
|
||||
libpng
|
||||
perl
|
||||
readline
|
||||
SDL
|
||||
SDL_image
|
||||
xa
|
||||
xdg-utils
|
||||
];
|
||||
dontDisableStatic = true;
|
||||
configureFlags = [ "--enable-fullscreen" "--enable-gnomeui" "--disable-pdf-docs" ];
|
||||
configureFlags = [ "--enable-sdl2ui" "--enable-gtk3ui" "--enable-desktop-files" "--disable-pdf-docs" "--with-gif" ];
|
||||
|
||||
LIBS = "-lGL";
|
||||
|
||||
preBuild = ''
|
||||
for i in src/resid src/resid-dtv
|
||||
do
|
||||
mkdir -pv $i/src
|
||||
ln -sv ../../wrap-u-ar.sh $i/src
|
||||
done
|
||||
sed -i -e 's|#!/usr/bin/env bash|${runtimeShell}/bin/bash|' src/arch/gtk3/novte/box_drawing_generate.sh
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
for app in ${toString desktopItems}
|
||||
do
|
||||
mkdir -p $out/share/applications
|
||||
cp $app/share/applications/* $out/share/applications
|
||||
done
|
||||
mkdir -p $out/share/applications
|
||||
cp src/arch/gtk3/data/unix/vice-org-*.desktop $out/share/applications
|
||||
'';
|
||||
|
||||
meta = {
|
||||
|
@ -13,13 +13,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "doublecmd";
|
||||
version = "1.1.1";
|
||||
version = "1.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "doublecmd";
|
||||
repo = "doublecmd";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-IccM7AwPiOtGHjAzvjQ99mrLFh8iZu8G7Rf71LJHB/g=";
|
||||
hash = "sha256-hRBF0Xl1SSoW+vbp9c1iCuFBVIzLtueNJaqoFMF8lJ4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -13,11 +13,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fig2dev";
|
||||
version = "3.2.8b";
|
||||
version = "3.2.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/mcj/fig2dev-${version}.tar.xz";
|
||||
sha256 = "1jv8rg71dsy00lpg434r5zqs5qrg8mxqvv2gpcjjvmzsm551d2j1";
|
||||
hash = "sha256-FeJGyNE8xy3iXggxQDitUM59Le+pzxr8Fy/X9ZMgkLE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
@ -5,13 +5,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "meme-image-generator";
|
||||
version = "1.0.1";
|
||||
version = "1.0.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nomad-software";
|
||||
repo = "meme";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-MzSPJCszVEZkBvSbRzXR7AaDQOOjDQ2stKKJr8oGOSE=";
|
||||
hash = "sha256-L+JpNg9X3RSNXTozv2H1n2JiQx75i9gFGaQmDFaMIf0=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, desktop-file-utils, gtk2, libpng, exiv2, lcms
|
||||
{ lib, stdenv, fetchFromGitHub, fetchpatch, meson, ninja, pkg-config, desktop-file-utils, gtk2, libpng, exiv2, lcms
|
||||
, intltool, gettext, shared-mime-info, glib, gdk-pixbuf, perl}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -9,9 +9,22 @@ stdenv.mkDerivation rec {
|
||||
owner = "hellosiyan";
|
||||
repo = "Viewnior";
|
||||
rev = "${pname}-${version}";
|
||||
sha256 = "sha256-LTahMmcAqgqviUxR624kTozJGTniAAGWKo1ZqXjoG5M=";
|
||||
hash = "sha256-LTahMmcAqgqviUxR624kTozJGTniAAGWKo1ZqXjoG5M=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "viewnior-1.8-change-exiv2-AutoPtr-to-unique_ptr.patch";
|
||||
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-gfx/viewnior/files/viewnior-1.8-change-exiv2-AutoPtr-to-unique_ptr.patch?id=002882203ad6a2b08ce035a18b95844a9f4b85d0";
|
||||
hash = "sha256-O3/d7qMiOsYJmz7ekoLM6oaHcuYjEbAfPFuDUWSybfE=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "viewnior-1.8-add-support-for-exiv-0.28.0-errors.patch";
|
||||
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-gfx/viewnior/files/viewnior-1.8-add-support-for-exiv-0.28.0-errors.patch?id=002882203ad6a2b08ce035a18b95844a9f4b85d0";
|
||||
hash = "sha256-Zjc4CIlelAkbyvX2F1yo/qJjUajtAgF4+FoHWFEIPWY=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
|
@ -9,16 +9,17 @@
|
||||
, libXp
|
||||
, Xaw3d
|
||||
, libXaw
|
||||
, libXft
|
||||
, fig2dev
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "xfig";
|
||||
version = "3.2.8b";
|
||||
version = "3.2.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/mcj/xfig-${version}.tar.xz";
|
||||
sha256 = "0fndgbm1mkqb1sn2v2kj3nx9mxj70jbp31y2bjvzcmmkry0q3k5j";
|
||||
hash = "sha256-E+2dBNG7wt7AnafvSc7sJ4OC0pD2zZJkdMLy0Bb+wvc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ imagemagick makeWrapper ];
|
||||
@ -30,6 +31,7 @@ stdenv.mkDerivation rec {
|
||||
libXp
|
||||
Xaw3d
|
||||
libXaw
|
||||
libXft
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
@ -57,6 +59,7 @@ stdenv.mkDerivation rec {
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with lib; {
|
||||
changelog = "https://sourceforge.net/p/mcj/xfig/ci/${version}/tree/CHANGES";
|
||||
description = "An interactive drawing tool for X11";
|
||||
longDescription = ''
|
||||
Note that you need to have the <literal>netpbm</literal> tools
|
||||
|
@ -17,6 +17,7 @@
|
||||
, libxkbcommon
|
||||
, wlroots
|
||||
, xorg
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
let
|
||||
@ -70,6 +71,8 @@ in stdenv.mkDerivation rec {
|
||||
patchShebangs build-aux/post_install.py
|
||||
'';
|
||||
|
||||
passthru.tests.phosh = nixosTests.phosh;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Wayland compositor for mobile phones like the Librem 5";
|
||||
homepage = "https://gitlab.gnome.org/World/Phosh/phoc";
|
||||
|
@ -2,17 +2,17 @@
|
||||
, alsa-lib, at-spi2-atk, at-spi2-core, atk, cairo, cups
|
||||
, gtk3, nss, glib, dbus, nspr, gdk-pixbuf, libdrm, mesa
|
||||
, libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext
|
||||
, libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, pango
|
||||
, libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, libxshmfence, pango
|
||||
, gcc-unwrapped, udev
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "snapmaker-luban";
|
||||
version = "4.8.0";
|
||||
version = "4.9.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/Snapmaker/Luban/releases/download/v${version}/snapmaker-luban-${version}-linux-x64.tar.gz";
|
||||
sha256 = "sha256-uY8MlLIZrbds5/QdYZFTLSSis0BwRU19XfLiBX+2VCY=";
|
||||
sha256 = "sha256-qLeF1trBrp53xkiAhybPTHUKuXYHQYfZ3tsmPPJlvUM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -35,6 +35,7 @@ stdenv.mkDerivation rec {
|
||||
libXScrnSaver
|
||||
libXtst
|
||||
libxcb
|
||||
libxshmfence
|
||||
mesa # Required for libgbm
|
||||
nspr
|
||||
nss
|
||||
@ -42,7 +43,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
libPath = lib.makeLibraryPath [
|
||||
stdenv.cc.cc alsa-lib atk at-spi2-atk at-spi2-core cairo cups
|
||||
gdk-pixbuf glib gtk3 libX11 libXcomposite
|
||||
gdk-pixbuf glib gtk3 libX11 libXcomposite libxshmfence
|
||||
libXcursor libXdamage libXext libXfixes libXi libXrandr libXrender
|
||||
libXtst nspr nss libxcb pango libXScrnSaver udev
|
||||
];
|
||||
@ -93,5 +94,6 @@ stdenv.mkDerivation rec {
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.simonkampe ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
knownVulnerabilities = [ "CVE-2023-5217" ];
|
||||
};
|
||||
}
|
||||
|
@ -92,11 +92,11 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "brave";
|
||||
version = "1.58.135";
|
||||
version = "1.58.137";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
|
||||
sha256 = "sha256-tJfpBIZvBr0diympUmImXYELPERJIzCSuOB0aovhodI=";
|
||||
sha256 = "sha256-6vsdQU9NbEKFp/1A0bNQvutF4I+vI0zfrx70QvU1KV4=";
|
||||
};
|
||||
|
||||
dontConfigure = true;
|
||||
|
@ -84,7 +84,7 @@ let
|
||||
++ lib.optional sndioSupport sndio
|
||||
++ lib.optional jackSupport libjack2
|
||||
++ lib.optional smartcardSupport opensc
|
||||
++ lib.optional (cfg.speechSynthesisSupport or false) speechd
|
||||
++ lib.optional (cfg.speechSynthesisSupport or true) speechd
|
||||
++ pkcs11Modules
|
||||
++ gtk_modules;
|
||||
gtk_modules = [ libcanberra-gtk3 ];
|
||||
|
@ -14,12 +14,11 @@
|
||||
, makeDesktopItem
|
||||
, wrapGAppsHook
|
||||
, testers
|
||||
, palemoon-bin
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "palemoon-bin";
|
||||
version = "32.4.0.1";
|
||||
version = "32.4.1";
|
||||
|
||||
src = fetchzip {
|
||||
urls = [
|
||||
@ -27,9 +26,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"https://rm-us.palemoon.org/release/palemoon-${finalAttrs.version}.linux-x86_64-gtk${if withGTK3 then "3" else "2"}.tar.xz"
|
||||
];
|
||||
hash = if withGTK3 then
|
||||
"sha256-kGt3pIgCjVeSD6UXRvj5w9opWrMx3q3B/Y0S55kKS08="
|
||||
"sha256-c/rfnMpiLWqlNZppqPRNWXsgAQ1FofAdel5EFnK+mrY="
|
||||
else
|
||||
"sha256-kNvUC/ir7TKjvKXYFoEDOPAY75CEgeixmEV1tuB/WIM=";
|
||||
"sha256-27njFdqq2DUctlz/UOtH5tlOduQNpoapuCYS+48K9dk=";
|
||||
};
|
||||
|
||||
preferLocalBuild = true;
|
||||
@ -155,7 +154,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
'';
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = palemoon-bin;
|
||||
package = finalAttrs.finalPackage;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -1,36 +1,45 @@
|
||||
{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
|
||||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, installShellFiles
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "glooctl";
|
||||
version = "1.15.4";
|
||||
version = "1.15.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "solo-io";
|
||||
repo = "gloo";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-dQvvWlfCCc9QZFdOryX0bvLVdoBlhVMeP8MqQAYKua4=";
|
||||
hash = "sha256-sGJfQ9sALQPxne+Q1Rf8PhCHBHupbWrIShk1dqFEPhk=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-KaBq1VCGWv3K50DDelS0hOQkXnK1ufBiXBtbPQFzwMY=";
|
||||
|
||||
subPackages = [ "projects/gloo/cli/cmd" ];
|
||||
vendorHash = "sha256-FU8Siea+oH4xtSVwGk/dcivS6eNpIkWZiZqQ3EX9dwI=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
"-w"
|
||||
"-X github.com/solo-io/gloo/pkg/version.Version=${version}"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
mv $out/bin/cmd $out/bin/glooctl
|
||||
|
||||
export HOME=$TMP
|
||||
installShellCompletion --cmd glooctl \
|
||||
--bash <($out/bin/glooctl completion bash) \
|
||||
--zsh <($out/bin/glooctl completion zsh)
|
||||
'';
|
||||
|
||||
ldflags = [ "-s" "-w" "-X github.com/solo-io/gloo/pkg/version.Version=${version}" ];
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "glooctl is the unified CLI for Gloo";
|
||||
homepage = "https://docs.solo.io/gloo-edge/latest/reference/cli/glooctl/";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ nelsonjeppesen ];
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ ];
|
||||
};
|
||||
}
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kubelogin";
|
||||
version = "0.0.31";
|
||||
version = "0.0.32";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Azure";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-yIRiIZKq+Q10Uo/9qEToeMHMipA5rApkxIRr/IJ0yfY=";
|
||||
sha256 = "sha256-pMen6ZL1S0xr5+h7gVBMG4XjlZUifIiqHvjKgg8AY5c=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-XHSVLATWKklg1jWL4Lnaey7hCkYHAk/cNyUgQZ6WIq0=";
|
||||
vendorHash = "sha256-pNOCagxOcxhELSWO1GfbxGmopYXIgKD00XdZdVgawrc=";
|
||||
|
||||
ldflags = [
|
||||
"-X main.version=${version}"
|
||||
|
@ -7,16 +7,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "tf-summarize";
|
||||
version = "0.3.2";
|
||||
version = "0.3.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dineshba";
|
||||
repo = "tf-summarize";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-d8DIVPQkuEvDCO0wKl+aK1jSu6MJCpTxQrgKYcFnzjA=";
|
||||
hash = "sha256-1sYWOvSWxoS0R6M1HxJ6yyBSa/LY3b9G8mF3NMofFhM=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-cnybdZth7qlP2BHK8uvLCoqJtggMIkvaL2+YugiUZRE=";
|
||||
vendorHash = "sha256-YdfZt8SHBJHk5VUC8Em97EzX79EV4hxvo0B05npBA2U=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
@ -8,13 +8,13 @@ buildGoModule rec {
|
||||
/* Do not use "dev" as a version. If you do, Tilt will consider itself
|
||||
running in development environment and try to serve assets from the
|
||||
source tree, which is not there once build completes. */
|
||||
version = "0.33.5";
|
||||
version = "0.33.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tilt-dev";
|
||||
repo = "tilt";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-o78PoIKj+0FvZRpm0AqtUq3N9a9/LDYc7DIPZgSZe4s=";
|
||||
hash = "sha256-WtE8ExUKFRtdYeg0+My/DB+L/qT+J1EaKHKChNjC5oI=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "deck";
|
||||
version = "1.27.0";
|
||||
version = "1.27.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Kong";
|
||||
repo = "deck";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-QP267H1vfsIo1EhV9vAWt03ewGufPHT8sZWcj/AHuxw=";
|
||||
hash = "sha256-9eMcbmRCr92ebJsPTyDFnwGn3gsRpR7aAkzV6Qfntgo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "signal-cli";
|
||||
version = "0.12.1";
|
||||
version = "0.12.2";
|
||||
|
||||
# Building from source would be preferred, but is much more involved.
|
||||
src = fetchurl {
|
||||
url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}-Linux.tar.gz";
|
||||
hash = "sha256-pxDSAVh/zg3hCuTlSuilgD4VKe1CPSG/ZLl0TF1nc1I=";
|
||||
hash = "sha256-XhLTovymqjbc19X717WyNIi4jdpwnyttXGqkkHBFwQA=";
|
||||
};
|
||||
|
||||
buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ];
|
||||
|
@ -45,14 +45,14 @@ let
|
||||
|
||||
pname = "slack";
|
||||
|
||||
x86_64-darwin-version = "4.34.119";
|
||||
x86_64-darwin-sha256 = "17ssha6a8iyvan3k7mbg2cdyy1y7gmlwrh4dlkgcc63bqqxsavy1";
|
||||
x86_64-darwin-version = "4.34.121";
|
||||
x86_64-darwin-sha256 = "0j04rj8v6aq4kjlkkc6yf466zq821jg3qy6qppmvyg5z0f08cyar";
|
||||
|
||||
x86_64-linux-version = "4.34.120";
|
||||
x86_64-linux-sha256 = "0wldnj6hyzqxyc9p365gb46pyqq0im1ayl12mrc8xkrikx9phb7y";
|
||||
x86_64-linux-version = "4.34.121";
|
||||
x86_64-linux-sha256 = "11199dsp7phmz0bxlk5al61xp2g6yzgj17nwz0zrx1g7ak0qdvz5";
|
||||
|
||||
aarch64-darwin-version = "4.34.119";
|
||||
aarch64-darwin-sha256 = "0xa39l4ynjmzq6811vprxxz8znwckmxcss9aa7v68cja8vj033vj";
|
||||
aarch64-darwin-version = "4.34.121";
|
||||
aarch64-darwin-sha256 = "0pvlf9h8433fi31398g4rkii14gk77a684sln8n95xg5p3lxkydy";
|
||||
|
||||
version = {
|
||||
x86_64-darwin = x86_64-darwin-version;
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "juju";
|
||||
version = "3.2.2";
|
||||
version = "3.2.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "juju";
|
||||
repo = "juju";
|
||||
rev = "juju-${version}";
|
||||
sha256 = "sha256-ZmMOQCKQWtzB2O6CNZTRhhj7gkpRRXY9ILN2KdSQoWk=";
|
||||
sha256 = "sha256-sUlM4bLy/kluZmGOzMACz92GG46XYKicNPP5k2FPSGA=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-rqf5nAXwcW6lm7sidEcxMqatT4KPju4Seo1/Awse5Zs=";
|
||||
vendorHash = "sha256-mPEixXVuxAqgkBoNqIYnZaFJynHJsnmamaHqyh/svwQ=";
|
||||
|
||||
# Disable tests because it attempts to use a mongodb instance
|
||||
doCheck = false;
|
||||
|
@ -12,19 +12,17 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "aerc";
|
||||
version = "0.15.2";
|
||||
version = "0.16.0";
|
||||
|
||||
src = fetchFromSourcehut {
|
||||
owner = "~rjarry";
|
||||
repo = "aerc";
|
||||
rev = version;
|
||||
hash = "sha256-OQDA4AHDcAdDzpwNSi8rW1FKjfYaFktOwiM0FEHPd70=";
|
||||
hash = "sha256-vmr2U0bz6A7aMZZBtOitA5gKQpXKuNhYxRCmholHYa8=";
|
||||
};
|
||||
|
||||
proxyVendor = true;
|
||||
vendorHash = "sha256-NWOySC0czNgNOakpxFguZLtmEI7AvjJQKXDE2vFWeZg=";
|
||||
|
||||
doCheck = false;
|
||||
vendorHash = "sha256-j/wTmlVcyVI4gnjbi7KLzk5rdnZtZLrdSNbihtQJxRY=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
scdoc
|
||||
@ -74,6 +72,7 @@ buildGoModule rec {
|
||||
description = "An email client for your terminal";
|
||||
homepage = "https://aerc-mail.org/";
|
||||
maintainers = with maintainers; [ tadeokondrak ];
|
||||
mainProgram = "aerc";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
|
@ -21,7 +21,7 @@
|
||||
, dht
|
||||
, libnatpmp
|
||||
, libiconv
|
||||
, darwin
|
||||
, Foundation
|
||||
# Build options
|
||||
, enableGTK3 ? false
|
||||
, gtkmm3
|
||||
@ -37,14 +37,14 @@
|
||||
, apparmorRulesFromClosure
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "transmission";
|
||||
version = "4.0.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "transmission";
|
||||
repo = "transmission";
|
||||
rev = version;
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-Sz3+5VvfOgET1aiormEnBOrF+yN79tiSQvjLAoGqTLw=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
@ -113,7 +113,7 @@ stdenv.mkDerivation rec {
|
||||
++ lib.optionals enableGTK3 [ gtkmm3 xorg.libpthreadstubs ]
|
||||
++ lib.optionals enableSystemd [ systemd ]
|
||||
++ lib.optionals stdenv.isLinux [ inotify-tools ]
|
||||
++ lib.optionals stdenv.isDarwin [ libiconv darwin.apple_sdk.frameworks.Foundation ];
|
||||
++ lib.optionals stdenv.isDarwin [ libiconv Foundation ];
|
||||
|
||||
postInstall = ''
|
||||
mkdir $apparmor
|
||||
@ -164,7 +164,5 @@ stdenv.mkDerivation rec {
|
||||
license = with lib.licenses; [ gpl2Plus mit ];
|
||||
maintainers = with lib.maintainers; [ astsmtl ];
|
||||
platforms = lib.platforms.unix;
|
||||
# Needs macOS >= 10.14.6
|
||||
broken = stdenv.isDarwin && stdenv.isx86_64;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -32,17 +32,14 @@
|
||||
, apparmorRulesFromClosure
|
||||
}:
|
||||
|
||||
let
|
||||
version = "3.00";
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "transmission";
|
||||
inherit version;
|
||||
version = "3.00";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "transmission";
|
||||
repo = "transmission";
|
||||
rev = version;
|
||||
rev = finalAttrs.version;
|
||||
sha256 = "0ccg0km54f700x9p0jsnncnwvfnxfnxf7kcm7pcx1cj0vw78924z";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
@ -147,4 +144,4 @@ in stdenv.mkDerivation {
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
|
||||
}
|
||||
})
|
||||
|
@ -27,13 +27,13 @@ assert !(pulseaudioSupport && portaudioSupport);
|
||||
|
||||
gnuradioMinimal.pkgs.mkDerivation rec {
|
||||
pname = "gqrx";
|
||||
version = "2.16";
|
||||
version = "2.17";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gqrx-sdr";
|
||||
repo = "gqrx";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-14MVimOxM7upq6vpEhvVRnrverBuFToE2ktNhG59LKE=";
|
||||
hash = "sha256-QnwkiH8KqoHa2Q3knh0OAyGBySAArEtdpO+lTzqJ4j0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -13,13 +13,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "delly";
|
||||
version = "1.1.6";
|
||||
version = "1.1.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dellytools";
|
||||
repo = "delly";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-/I//7MhsC/CcBeIJblzbjXp/yOSBm83KWJsrYpl6UJk=";
|
||||
hash = "sha256-oBIY8s/ippf+Xw+3QzMwP0Esc/QpiT6yWeAnqpMix6s=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
@ -1,6 +1,5 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, python3Packages
|
||||
, runtimeShell
|
||||
, bcftools
|
||||
@ -16,37 +15,28 @@ let
|
||||
};
|
||||
in python3Packages.buildPythonApplication rec {
|
||||
pname = "truvari";
|
||||
version = "4.0.0";
|
||||
version = "4.1.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ACEnglish";
|
||||
repo = "truvari";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-UJNMKEV5m2jFqnWvkVAtymkcE2TjPIXp7JqRZpMSqsE=";
|
||||
hash = "sha256-HFVAv1TTL/nMjr62tQKhMdwh25P/y4nBGzSbxoJxMmo=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "fix-anno-trf-on-darwin.patch";
|
||||
url = "https://github.com/ACEnglish/truvari/commit/f9f36305e8eaa88f951562210e3672a4d4f71265.patch";
|
||||
hash = "sha256-7O9jTQDCC2b8hUBm0qJQCYMzTC9NFtn/E0dTHSfJALU=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "fix-anno-grm-on-darwin.patch";
|
||||
url = "https://github.com/ACEnglish/truvari/commit/31416552008a506204ed4e2add55474f10392357.patch";
|
||||
hash = "sha256-42u0ewZU38GCoSfff+XQFv9hEFeO3WlJufTHcl6vkN4=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace "rich==" "rich>="
|
||||
substituteInPlace truvari/utils.py \
|
||||
--replace "/bin/bash" "${runtimeShell}"
|
||||
patchShebangs repo_utils/test_files
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
python3Packages.setuptools
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
pywfa
|
||||
rich
|
||||
edlib
|
||||
pysam
|
||||
@ -83,6 +73,7 @@ in python3Packages.buildPythonApplication rec {
|
||||
meta = with lib; {
|
||||
description = "Structural variant comparison tool for VCFs";
|
||||
homepage = "https://github.com/ACEnglish/truvari";
|
||||
changelog = "https://github.com/ACEnglish/truvari/releases/tag/${src.rev}";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ natsukium scalavision ];
|
||||
longDescription = ''
|
||||
|
@ -11,11 +11,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "iterm2";
|
||||
version = "3.4.20";
|
||||
version = "3.4.21";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://iterm2.com/downloads/stable/iTerm2-${lib.replaceStrings ["."] ["_"] version}.zip";
|
||||
hash = "sha256-RXBv3RXd2Kq8k7rbOE3HPEf6vI64VZCo1IX03gDy7l0=";
|
||||
hash = "sha256-hx2d08U4AeRCLtSV3QBcnRu1QS0RblLx/LUH6HHdQvw=";
|
||||
};
|
||||
|
||||
dontFixup = true;
|
||||
|
@ -39,14 +39,14 @@ let
|
||||
in
|
||||
buildGoModule rec {
|
||||
pname = "forgejo";
|
||||
version = "1.20.4-1";
|
||||
version = "1.20.5-0";
|
||||
|
||||
src = fetchFromGitea {
|
||||
domain = "codeberg.org";
|
||||
owner = "forgejo";
|
||||
repo = "forgejo";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-Fxlj+ckw1LSgiQDex3ZizHakIKd52U6JcdTurJj8YWg=";
|
||||
hash = "sha256-tuwMvSWaMUc/GghmrbGLtyjixwOwiapWEOMD9QmMLic=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-dgtZjsLBwblhdge3BvdbK/mN/TeZKps9K5dJbqomtjo=";
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
let
|
||||
pname = "lefthook";
|
||||
version = "1.4.8";
|
||||
version = "1.5.1";
|
||||
in
|
||||
buildGoModule rec {
|
||||
inherit pname version;
|
||||
@ -15,7 +15,7 @@ buildGoModule rec {
|
||||
owner = "evilmartians";
|
||||
repo = "lefthook";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-lK2JGENCqfNXXzZBHirEoOB5+ktea38ypb2VD7GWxhg=";
|
||||
hash = "sha256-v6COZt4ylhpPfPNQLSN0XDpjVk8E2ZUDIP4TU+Uzk5A=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-/VLS7+nPERjIU7V2CzqXH69Z3/y+GKZbAFn+KcRKRuA=";
|
||||
|
@ -39,6 +39,10 @@ in mkDerivation {
|
||||
|
||||
sourceRoot = "makemkv-oss-${version}";
|
||||
|
||||
patches = [ ./r13y.patch ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
nativeBuildInputs = [ autoPatchelfHook pkg-config ];
|
||||
|
||||
buildInputs = [ ffmpeg openssl qtbase zlib ];
|
||||
@ -80,7 +84,7 @@ in mkDerivation {
|
||||
expiration date.
|
||||
'';
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
license = licenses.unfree;
|
||||
license = [ licenses.unfree licenses.lgpl21 ];
|
||||
homepage = "http://makemkv.com";
|
||||
platforms = [ "x86_64-linux" ];
|
||||
maintainers = with maintainers; [ titanous ];
|
||||
|
13
pkgs/applications/video/makemkv/r13y.patch
Normal file
13
pkgs/applications/video/makemkv/r13y.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index 61c47fc..e08ffac 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -27,7 +27,7 @@ INSTALL=@INSTALL@
|
||||
OBJCOPY=@OBJCOPY@
|
||||
LD=@LD@
|
||||
BUILDINFO_ARCH_NAME=$(shell $(GCC) -dumpmachine)
|
||||
-BUILDINFO_BUILD_DATE=$(shell date)
|
||||
+BUILDINFO_BUILD_DATE=$(shell date -d @${SOURCE_DATE_EPOCH})
|
||||
|
||||
top_srcdir ?= .
|
||||
INCF=-I$(top_srcdir)/
|
5838
pkgs/applications/window-managers/cosmic/applets/Cargo.lock
generated
Normal file
5838
pkgs/applications/window-managers/cosmic/applets/Cargo.lock
generated
Normal file
File diff suppressed because it is too large
Load Diff
62
pkgs/applications/window-managers/cosmic/applets/default.nix
Normal file
62
pkgs/applications/window-managers/cosmic/applets/default.nix
Normal file
@ -0,0 +1,62 @@
|
||||
{ lib, stdenv, fetchFromGitHub, rust, rustPlatform
|
||||
, cargo, just, pkg-config, util-linuxMinimal
|
||||
, dbus, glib, libxkbcommon, pulseaudio, wayland
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "cosmic-applets";
|
||||
version = "unstable-2023-10-04";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pop-os";
|
||||
repo = "cosmic-applets";
|
||||
rev = "fefaea9b63548b1baa5e64521b860234ee46339a";
|
||||
hash = "sha256-I+18NCKLH/3QajYpZRPYmCUxkbptAjuEHfKtnZVOlH4=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"accesskit-0.11.0" = "sha256-/6KUCH1CwMHd5YEMOpAdVeAxpjl9JvrzDA4Xnbd1D9k=";
|
||||
"cosmic-client-toolkit-0.1.0" = "sha256-pVWK+dODQxNej5jWyb5wX/insoiXkX8NFBDkDEejVV0=";
|
||||
"cosmic-config-0.1.0" = "sha256-pUDuRHX46fbcPw19s5DEsPyJdb/Bem/lJg+3NEO/WX0=";
|
||||
"cosmic-dbus-networkmanager-0.1.0" = "sha256-eWqB+zRCfJYdrcPE8Ey+WgzPBJltN0zRiutzgdtWsDA=";
|
||||
"cosmic-notifications-config-0.1.0" = "sha256-KnPQdrMpzA05v4bt0Fz9fbcKdC0cSU60Hv7wqrthIaw=";
|
||||
"cosmic-panel-config-0.1.0" = "sha256-H3QuiP7Og69wm9yCX/uoSG0aQ3B/61q9Sdj+rW4KZMU=";
|
||||
"cosmic-time-0.3.0" = "sha256-JiTwbJSml8azelBr6b3cBvJsuAL1hmHtuHx2TJupEzE=";
|
||||
"smithay-client-toolkit-0.17.0" = "sha256-v3FxzDypxSfbEU50+oDoqrGWPm+S+kDZQq//3Q4DDRU=";
|
||||
"softbuffer-0.2.0" = "sha256-VD2GmxC58z7Qfu/L+sfENE+T8L40mvUKKSfgLmCTmjY=";
|
||||
"xdg-shell-wrapper-config-0.1.0" = "sha256-Otxp8D5dNZl70K1ZIBswGj6K5soGVbVim7gutUHkBvw=";
|
||||
};
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace justfile --replace '#!/usr/bin/env' "#!$(command -v env)"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ just pkg-config util-linuxMinimal ];
|
||||
buildInputs = [ dbus glib libxkbcommon pulseaudio wayland ];
|
||||
|
||||
dontUseJustBuild = true;
|
||||
|
||||
justFlags = [
|
||||
"--set" "prefix" (placeholder "out")
|
||||
"--set" "target" "${rust.lib.toRustTargetSpecShort stdenv.hostPlatform}/release"
|
||||
];
|
||||
|
||||
# Force linking to libwayland-client, which is always dlopen()ed.
|
||||
"CARGO_TARGET_${rust.toRustTargetForUseInEnvVars stdenv.hostPlatform}_RUSTFLAGS" =
|
||||
map (a: "-C link-arg=${a}") [
|
||||
"-Wl,--push-state,--no-as-needed"
|
||||
"-lwayland-client"
|
||||
"-Wl,--pop-state"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/pop-os/cosmic-applets";
|
||||
description = "Applets for the COSMIC Desktop Environment";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ qyliss ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
5606
pkgs/applications/window-managers/cosmic/comp/Cargo.lock
generated
Normal file
5606
pkgs/applications/window-managers/cosmic/comp/Cargo.lock
generated
Normal file
File diff suppressed because it is too large
Load Diff
61
pkgs/applications/window-managers/cosmic/comp/default.nix
Normal file
61
pkgs/applications/window-managers/cosmic/comp/default.nix
Normal file
@ -0,0 +1,61 @@
|
||||
{ lib, rustPlatform, fetchFromGitHub, makeBinaryWrapper, pkg-config
|
||||
, libinput, libglvnd, libxkbcommon, mesa, seatd, udev, wayland, xorg
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "cosmic-comp";
|
||||
version = "unstable-2023-10-04";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pop-os";
|
||||
repo = "cosmic-comp";
|
||||
rev = "a3ac6c42b6913193b76e481d9a60f775f67aa858";
|
||||
hash = "sha256-nPQx3Pkd9WAq9ooLs8K8UI1rCHYwJlu88SP2PbC/avU=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"calloop-0.12.2" = "sha256-d/LB65l1DEC/5Kk8yvenTQYfIFBs99XqXn4tAM2mfHI=";
|
||||
"cosmic-config-0.1.0" = "sha256-0HKv0/UHZMpSGF54aCip9PbwfWiWMSMHZpiipM6Qrf0=";
|
||||
"cosmic-protocols-0.1.0" = "sha256-oBE/69A4haCN6Etih6B8SlbSnKg1bEocI6Rvf9IegLE=";
|
||||
"id_tree-1.8.0" = "sha256-uKdKHRfPGt3vagOjhnri3aYY5ar7O3rp2/ivTfM2jT0=";
|
||||
"smithay-0.3.0" = "sha256-7oOVAoEl+X09e0+V1eR5GviodntMbineEO8Igk2+BM0=";
|
||||
"smithay-egui-0.1.0" = "sha256-FcSoKCwYk3okwQURiQlDUcfk9m/Ne6pSblGAzHDaVHg=";
|
||||
"softbuffer-0.2.0" = "sha256-VD2GmxC58z7Qfu/L+sfENE+T8L40mvUKKSfgLmCTmjY=";
|
||||
"taffy-0.3.11" = "sha256-Py9D8+L9G+sBkHPtlenOdugH5nQKTXa+XdKArOg5+qU=";
|
||||
};
|
||||
};
|
||||
|
||||
separateDebugInfo = true;
|
||||
|
||||
nativeBuildInputs = [ makeBinaryWrapper pkg-config ];
|
||||
buildInputs = [ libglvnd libinput libxkbcommon mesa seatd udev wayland ];
|
||||
|
||||
# Force linking to libEGL, which is always dlopen()ed, and to
|
||||
# libwayland-client, which is always dlopen()ed except by the
|
||||
# obscure winit backend.
|
||||
RUSTFLAGS = map (a: "-C link-arg=${a}") [
|
||||
"-Wl,--push-state,--no-as-needed"
|
||||
"-lEGL"
|
||||
"-lwayland-client"
|
||||
"-Wl,--pop-state"
|
||||
];
|
||||
|
||||
# These libraries are only used by the X11 backend, which will not
|
||||
# be the common case, so just make them available, don't link them.
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/cosmic-comp \
|
||||
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [
|
||||
xorg.libX11 xorg.libXcursor xorg.libXi xorg.libXrandr
|
||||
]}
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/pop-os/cosmic-comp";
|
||||
description = "Compositor for the COSMIC Desktop Environment";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ qyliss ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
3165
pkgs/applications/window-managers/cosmic/panel/Cargo.lock
generated
Normal file
3165
pkgs/applications/window-managers/cosmic/panel/Cargo.lock
generated
Normal file
File diff suppressed because it is too large
Load Diff
54
pkgs/applications/window-managers/cosmic/panel/default.nix
Normal file
54
pkgs/applications/window-managers/cosmic/panel/default.nix
Normal file
@ -0,0 +1,54 @@
|
||||
{ lib, stdenv, fetchFromGitHub, cargo, just, pkg-config, rust, rustPlatform
|
||||
, libglvnd, libxkbcommon, wayland
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "cosmic-panel";
|
||||
version = "unstable-2023-09-22";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pop-os";
|
||||
repo = "cosmic-panel";
|
||||
rev = "df55f44f504c1cee9377cb331c1fb9d95ca83967";
|
||||
hash = "sha256-qf1ITvP6PPATZ6jvlc0UuCes1UYMseY4Wr57/5xRZPE=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"cosmic-client-toolkit-0.1.0" = "sha256-pVWK+dODQxNej5jWyb5wX/insoiXkX8NFBDkDEejVV0=";
|
||||
"cosmic-config-0.1.0" = "sha256-XsFfQzR1gn8Je5lbd6PmSgz/T7XAFTVnR1G6pUY+eX4=";
|
||||
"cosmic-notifications-util-0.1.0" = "sha256-wRUPovWJucsrKGhjHXku/4UoZf9ih9+Wpbs0sLN+oCI=";
|
||||
"launch-pad-0.1.0" = "sha256-gFtUtrD/cUVpLxPvg6iLxxAK97LTlvI4uLxo06UYIU4=";
|
||||
"smithay-0.3.0" = "sha256-hulj6zr4h8A9RElQyrJBy3lvYMd7COe3uDaFMMaWNrM=";
|
||||
"smithay-client-toolkit-0.17.0" = "sha256-13fXDYqO/701tzoOk8ujHtzgzzz1N6GGbcHUrsNhQ0U=";
|
||||
"xdg-shell-wrapper-0.1.0" = "sha256-VCiDjvcCsb02LMo7UpEROV6lzX2DYf4Ix9zfEDO2pUg=";
|
||||
};
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ just pkg-config ];
|
||||
buildInputs = [ libglvnd libxkbcommon wayland ];
|
||||
|
||||
dontUseJustBuild = true;
|
||||
|
||||
justFlags = [
|
||||
"--set" "prefix" (placeholder "out")
|
||||
"--set" "bin-src" "target/${rust.lib.toRustTargetSpecShort stdenv.hostPlatform}/release/cosmic-panel"
|
||||
];
|
||||
|
||||
# Force linking to libEGL, which is always dlopen()ed.
|
||||
"CARGO_TARGET_${rust.toRustTargetForUseInEnvVars stdenv.hostPlatform}_RUSTFLAGS" =
|
||||
map (a: "-C link-arg=${a}") [
|
||||
"-Wl,--push-state,--no-as-needed"
|
||||
"-lEGL"
|
||||
"-Wl,--pop-state"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/pop-os/cosmic-panel";
|
||||
description = "Panel for the COSMIC Desktop Environment";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ qyliss ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -223,6 +223,7 @@ let
|
||||
|
||||
bin = writeShellScript "${name}-bwrap" (bwrapCmd { initArgs = ''"$@"''; });
|
||||
in runCommandLocal name {
|
||||
inherit pname version;
|
||||
inherit meta;
|
||||
|
||||
passthru = passthru // {
|
||||
|
@ -1,7 +1,9 @@
|
||||
{ callPackage, stdenvNoCC, lib, fetchFromGitHub, makeBinaryWrapper }:
|
||||
{ php, callPackage, stdenvNoCC, lib, fetchFromGitHub, makeBinaryWrapper }:
|
||||
|
||||
let
|
||||
composer = callPackage ./composer-phar.nix { };
|
||||
composer = callPackage ./composer-phar.nix {
|
||||
inherit (php.packages.composer) version pharHash;
|
||||
};
|
||||
|
||||
composerKeys = stdenvNoCC.mkDerivation (finalComposerKeysAttrs: {
|
||||
pname = "composer-keys";
|
||||
|
@ -10,15 +10,17 @@
|
||||
, stdenvNoCC
|
||||
, unzip
|
||||
, xz
|
||||
, version
|
||||
, pharHash
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "composer-phar";
|
||||
version = "2.6.4";
|
||||
inherit version;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/composer/composer/releases/download/${finalAttrs.version}/composer.phar";
|
||||
hash = "sha256-Wjnz4s5bo5HuP+yyJ/ryE5D1t+1cVvFMq54cMEi8+Lg=";
|
||||
hash = pharHash;
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
@ -5,14 +5,14 @@
|
||||
, libvterm-neovim
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "a4term";
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "a4";
|
||||
version = "0.2.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rpmohn";
|
||||
repo = "a4";
|
||||
rev = "v${version}";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-AX5psz9+bLdFFeDR55TIrAWDAkhDygw6289OgIfOJTg=";
|
||||
};
|
||||
|
||||
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
||||
libvterm-neovim
|
||||
];
|
||||
|
||||
makeFlags = [ "PREFIX=$(out)" ];
|
||||
installFlags = [ "PREFIX=${placeholder "out"}" ];
|
||||
|
||||
meta = {
|
||||
description = "A dynamic terminal window manager";
|
||||
@ -31,4 +31,4 @@ stdenv.mkDerivation rec {
|
||||
platforms = lib.platforms.linux;
|
||||
mainProgram = "a4";
|
||||
};
|
||||
}
|
||||
})
|
23
pkgs/by-name/ao/aocl-utils/package.nix
Normal file
23
pkgs/by-name/ao/aocl-utils/package.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{ lib, stdenv, fetchFromGitHub, cmake } :
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "aocl-utils";
|
||||
version = "4.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "amd";
|
||||
repo = "aocl-utils";
|
||||
rev = version;
|
||||
hash = "sha256-7Vc3kE+YfqIt6VfvSamsVQRemolzs1sNJUVUZFKk/O8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Interface to all AMD AOCL libraries to access CPU features";
|
||||
homepage = "https://github.com/amd/aocl-utils";
|
||||
license = licenses.bsd3;
|
||||
platforms = [ "x86_64-linux" ];
|
||||
maintainers = [ maintainers.markuskowa ];
|
||||
};
|
||||
}
|
40
pkgs/by-name/ri/rimgo/package.nix
Normal file
40
pkgs/by-name/ri/rimgo/package.nix
Normal file
@ -0,0 +1,40 @@
|
||||
{
|
||||
lib,
|
||||
fetchFromGitea,
|
||||
buildGoModule,
|
||||
tailwindcss,
|
||||
}:
|
||||
buildGoModule rec {
|
||||
pname = "rimgo";
|
||||
version = "1.2.0";
|
||||
|
||||
src = fetchFromGitea {
|
||||
domain = "codeberg.org";
|
||||
owner = "rimgo";
|
||||
repo = "rimgo";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-C878ABs978viVtIuv3fPn2F2anOg2GB/+f5jaCO13tc=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-u5N7aI9RIQ3EmiyHv0qhMcKkvmpp+5G7xbzdQcbhybs=";
|
||||
|
||||
nativeBuildInputs = [ tailwindcss ];
|
||||
|
||||
preBuild = ''
|
||||
tailwindcss -i static/tailwind.css -o static/app.css -m
|
||||
'';
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
"-w"
|
||||
"-X codeberg.org/rimgo/rimgo/pages.VersionInfo=${version}"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "An alternative frontend for Imgur";
|
||||
homepage = "https://codeberg.org/rimgo/rimgo";
|
||||
license = licenses.agpl3Only;
|
||||
mainProgram = "rimgo";
|
||||
maintainers = with maintainers; [ quantenzitrone ];
|
||||
};
|
||||
}
|
@ -6,20 +6,20 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "scdoc";
|
||||
version = "1.11.2";
|
||||
version = "1.11.2-unstable-2023-03-08";
|
||||
|
||||
src = fetchFromSourcehut {
|
||||
owner = "~sircmpwn";
|
||||
repo = "scdoc";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-2NVC+1in1Yt6/XGcHXP+V4AAz8xW/hSq9ctF/Frdgh0=";
|
||||
rev = "afeda241f3f9b2c27e461f32d9c2a704ab82ef61";
|
||||
hash = "sha256-jIYygjUXP/6o5d9drlZjdr25KjEQx8oy4TaQwQEu8fM=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "man" "dev" ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace Makefile \
|
||||
--replace "-static" ""
|
||||
--replace "LDFLAGS+=-static" "LDFLAGS+="
|
||||
'';
|
||||
|
||||
makeFlags = [
|
||||
@ -33,10 +33,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
meta = {
|
||||
description = "A simple man page generator written in C99 for POSIX systems";
|
||||
homepage = "https://git.sr.ht/~sircmpwn/scdoc";
|
||||
changelog = "https://git.sr.ht/~sircmpwn/scdoc/refs/${finalAttrs.version}";
|
||||
changelog = "https://git.sr.ht/~sircmpwn/scdoc/refs/${finalAttrs.src.rev}";
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "scdoc";
|
||||
maintainers = with lib.maintainers; [ primeos AndersonTorres ];
|
||||
platforms = lib.platforms.unix;
|
||||
mainProgram = "scdoc";
|
||||
};
|
||||
})
|
73
pkgs/by-name/su/supersonic/package.nix
Normal file
73
pkgs/by-name/su/supersonic/package.nix
Normal file
@ -0,0 +1,73 @@
|
||||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, makeDesktopItem
|
||||
, copyDesktopItems
|
||||
, pkg-config
|
||||
, xorg
|
||||
, libglvnd
|
||||
, mpv
|
||||
, glfw3
|
||||
, waylandSupport ? false
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "supersonic" + lib.optionalString waylandSupport "-wayland";
|
||||
version = "0.5.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dweymouth";
|
||||
repo = "supersonic";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-4SLAUqLMoUxTSi4I/QeHqudO62Gmhpm1XbCGf+3rPlc=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-6Yp5OoybFpoBuIKodbwnyX3crLCl8hJ2r4plzo0plsY=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
copyDesktopItems
|
||||
pkg-config
|
||||
];
|
||||
|
||||
# go-glfw doesn't support both X11 and Wayland in single build
|
||||
tags = lib.optionals waylandSupport [ "wayland" ];
|
||||
|
||||
buildInputs = [
|
||||
libglvnd
|
||||
mpv
|
||||
xorg.libXxf86vm
|
||||
xorg.libX11
|
||||
] ++ (glfw3.override { inherit waylandSupport; }).buildInputs;
|
||||
|
||||
postInstall = ''
|
||||
for dimension in 128 256 512;do
|
||||
dimensions=''${dimension}x''${dimension}
|
||||
mkdir -p $out/share/icons/hicolor/$dimensions/apps
|
||||
cp res/appicon-$dimension.png $out/share/icons/hicolor/$dimensions/apps/${meta.mainProgram}.png
|
||||
done
|
||||
'' + lib.optionalString waylandSupport ''
|
||||
mv $out/bin/supersonic $out/bin/${meta.mainProgram}
|
||||
'';
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = meta.mainProgram;
|
||||
exec = meta.mainProgram;
|
||||
icon = meta.mainProgram;
|
||||
desktopName = "Supersonic" + lib.optionalString waylandSupport " (Wayland)";
|
||||
genericName = "Subsonic Client";
|
||||
comment = meta.description;
|
||||
type = "Application";
|
||||
categories = [ "Audio" "AudioVideo" ];
|
||||
})
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
mainProgram = "supersonic" + lib.optionalString waylandSupport "-wayland";
|
||||
description = "A lightweight cross-platform desktop client for Subsonic music servers";
|
||||
homepage = "https://github.com/dweymouth/supersonic";
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ zane sochotnicky ];
|
||||
};
|
||||
}
|
@ -1,25 +1,25 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
audioSupport ? true,
|
||||
darwin,
|
||||
alsa-lib,
|
||||
pkg-config
|
||||
{ lib
|
||||
, stdenv
|
||||
, rustPlatform
|
||||
, fetchFromGitHub
|
||||
, pkg-config
|
||||
, audioSupport ? true
|
||||
, darwin
|
||||
, alsa-lib
|
||||
}:
|
||||
rustPlatform.buildRustPackage {
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "uiua";
|
||||
version = "unstable-2023-09-28";
|
||||
version = "0.0.16";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "uiua-lang";
|
||||
repo = "uiua";
|
||||
rev = "9b8c65332396f521f170b0ed3ce104b7a8bcf7c0";
|
||||
hash = "sha256-+pleCEEwgRj+p+k9oKIvbsGUWC49qByV/juv76ZdBcc=";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-CMuCl4idoO5qIpXdkXBbglsZQBWVT8w9azbn2rRxviA=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-L8TCMe6eHS3QRy6HuTc1WvMfzsDhKx9YYupAkNeBwpk=";
|
||||
cargoHash = "sha256-BLP9OGTnksM9NscfhtVWxE0/CqZgkqqlIMgRclCzEzs=";
|
||||
|
||||
nativeBuildInputs = lib.optionals stdenv.isDarwin [
|
||||
rustPlatform.bindgenHook
|
||||
@ -37,8 +37,6 @@ rustPlatform.buildRustPackage {
|
||||
|
||||
buildFeatures = lib.optional audioSupport "audio";
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "A stack-oriented array programming language with a focus on simplicity, beauty, and tacit code";
|
||||
longDescription = ''
|
||||
@ -49,6 +47,6 @@ rustPlatform.buildRustPackage {
|
||||
homepage = "https://www.uiua.org/";
|
||||
license = licenses.mit;
|
||||
mainProgram = "uiua";
|
||||
maintainers = with maintainers; [ cafkafk ];
|
||||
maintainers = with maintainers; [ cafkafk tomasajt ];
|
||||
};
|
||||
}
|
||||
|
@ -5,11 +5,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "sketchybar-app-font";
|
||||
version = "1.0.14";
|
||||
version = "1.0.16";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/kvndrsslr/sketchybar-app-font/releases/download/v${finalAttrs.version}/sketchybar-app-font.ttf";
|
||||
hash = "sha256-GPxNMlG6a7newSXorh2RULZ5XHYFmQbcB46C0RytTTU=";
|
||||
hash = "sha256-58gRCEJix9pnZEcoo6bm2zWduP0xXl3WWC6mt36SGuo=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
@ -5,7 +5,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
makePackage =
|
||||
makeSuperOTC =
|
||||
{ family
|
||||
, description
|
||||
, rev
|
||||
@ -13,9 +13,10 @@ let
|
||||
, zip ? ""
|
||||
, prefix ? ""
|
||||
}:
|
||||
let Family =
|
||||
lib.toUpper (lib.substring 0 1 family) +
|
||||
lib.substring 1 (lib.stringLength family) family;
|
||||
let
|
||||
Family =
|
||||
lib.toUpper (lib.substring 0 1 family) +
|
||||
lib.substring 1 (lib.stringLength family) family;
|
||||
in
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "source-han-${family}";
|
||||
@ -49,9 +50,36 @@ let
|
||||
maintainers = with lib.maintainers; [ taku0 emily ];
|
||||
};
|
||||
};
|
||||
|
||||
makeVariable =
|
||||
{ family
|
||||
, version
|
||||
, hash
|
||||
, format
|
||||
}:
|
||||
let
|
||||
Family =
|
||||
lib.toUpper (lib.substring 0 1 family) +
|
||||
lib.substring 1 (lib.stringLength family) family;
|
||||
in
|
||||
fetchurl {
|
||||
pname = "source-han-${family}-vf-${format}";
|
||||
inherit version hash;
|
||||
url = "https://raw.githubusercontent.com/adobe-fonts/source-han-${family}/${version}R/Variable/OTC/SourceHan${Family}-VF.${format}.ttc";
|
||||
recursiveHash = true;
|
||||
downloadToTemp = true;
|
||||
postFetch = "install -Dm444 $downloadedFile $out/share/fonts/variable/SourceHan${Family}-VF.${format}.ttc";
|
||||
|
||||
meta = {
|
||||
description = "An open source Pan-CJK ${Family} typeface";
|
||||
homepage = "https://github.com/adobe-fonts/source-han-${family}";
|
||||
license = lib.licenses.ofl;
|
||||
maintainers = with lib.maintainers; [ taku0 emily ];
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
sans = makePackage {
|
||||
sans = makeSuperOTC {
|
||||
family = "sans";
|
||||
description = "sans-serif";
|
||||
rev = "2.004R";
|
||||
@ -59,7 +87,7 @@ in
|
||||
zip = ".zip";
|
||||
};
|
||||
|
||||
serif = makePackage {
|
||||
serif = makeSuperOTC {
|
||||
family = "serif";
|
||||
description = "serif";
|
||||
rev = "2.001R";
|
||||
@ -68,10 +96,38 @@ in
|
||||
prefix = "01_";
|
||||
};
|
||||
|
||||
mono = makePackage {
|
||||
mono = makeSuperOTC {
|
||||
family = "mono";
|
||||
description = "monospaced";
|
||||
rev = "1.002";
|
||||
hash = "sha256-DBkkSN6QhI8R64M2h2iDqaNtxluJZeSJYAz8x6ZzWME=";
|
||||
};
|
||||
|
||||
sans-vf-otf = makeVariable {
|
||||
family = "sans";
|
||||
version = "2.004";
|
||||
hash = "sha256-V7PE09c7h4RDS8Ij4PSI36Gy+LM+PVDi73Rcs+4DfHo=";
|
||||
format = "otf";
|
||||
};
|
||||
|
||||
sans-vf-ttf = makeVariable {
|
||||
family = "sans";
|
||||
version = "2.004";
|
||||
hash = "sha256-mXTG/d30gUxzxkJpaH4vOawRXMSxxTXlHCvHEsfGqbc=";
|
||||
format = "ttf";
|
||||
};
|
||||
|
||||
serif-vf-otf = makeVariable {
|
||||
family = "serif";
|
||||
version = "2.002";
|
||||
hash = "sha256-8sD4bU6w7HBm4vBuPAjcjpxN2rtEJugAw+X0bAOcmjA=";
|
||||
format = "otf";
|
||||
};
|
||||
|
||||
serif-vf-ttf = makeVariable {
|
||||
family = "serif";
|
||||
version = "2.002";
|
||||
hash = "sha256-dmTZFRsD55WCOg2+sqd8bkmTSnSNn5xUYf0PgzIvzww=";
|
||||
format = "ttf";
|
||||
};
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
{ fetchurl
|
||||
, fetchpatch
|
||||
, lib
|
||||
, stdenv
|
||||
, substituteAll
|
||||
@ -47,6 +48,12 @@ stdenv.mkDerivation rec {
|
||||
dbusLaunch = "${dbus.lib}/bin/dbus-launch";
|
||||
bash = "${bash}/bin/bash";
|
||||
})
|
||||
# See #226355. Can be removed on update to v45.
|
||||
(fetchpatch {
|
||||
name = "fix-gnome-boxes-crash.patch";
|
||||
url = "https://gitlab.gnome.org/GNOME/gnome-session/commit/fab1a3b91677035d541de2c141f8073c4057342c.patch";
|
||||
hash = "sha256-2xeoNgV8UDexkufXDqimAplX0GC99tUWUqjw3kfN+5Q=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -1,6 +1,7 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, nix-update-script
|
||||
, meson
|
||||
, ninja
|
||||
@ -23,6 +24,15 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "sha256-j4K8qYwfu6/s4qnTSzwv6KRsk9f+Qr/l1bhLywKMHMU=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Add pantheon-portals.conf
|
||||
# https://github.com/elementary/default-settings/pull/293
|
||||
(fetchpatch {
|
||||
url = "https://github.com/elementary/default-settings/commit/8201eeb6a356e6059b505756ef7a556a6848ad3b.patch";
|
||||
sha256 = "sha256-qhGj7WQTAWJTC1kouUZhBWKqyO4hQWJghEhLVl8QVUM=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
accountsservice
|
||||
dbus
|
||||
|
@ -1,30 +1,34 @@
|
||||
{ lib
|
||||
, mkXfceDerivation
|
||||
, exo
|
||||
, glib
|
||||
, gtk3
|
||||
, libxfce4ui
|
||||
, xfconf
|
||||
, libwnck
|
||||
, libX11
|
||||
, libXmu
|
||||
}:
|
||||
|
||||
mkXfceDerivation {
|
||||
category = "apps";
|
||||
pname = "xfce4-taskmanager";
|
||||
version = "1.5.5";
|
||||
version = "1.5.6";
|
||||
odd-unstable = false;
|
||||
|
||||
sha256 = "sha256-worHYB9qibRxMaCYQ0+nHA9CSTColewgahyrXiPOnQA=";
|
||||
sha256 = "sha256-2NkjaK6xXsrMimriO2/gTOZowt9KTX4MrWJpPXM0w68=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
exo
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
gtk3
|
||||
libxfce4ui
|
||||
xfconf
|
||||
libwnck
|
||||
libX11
|
||||
libXmu
|
||||
];
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
{ mkXfceDerivation
|
||||
, fetchpatch
|
||||
, lib
|
||||
, docbook_xsl
|
||||
, exo
|
||||
@ -25,6 +26,15 @@ let unwrapped = mkXfceDerivation {
|
||||
|
||||
sha256 = "sha256-pxIblhC40X0wdE6+uvmV5ypp4sOZtzn/evcS33PlNpU=";
|
||||
|
||||
patches = [
|
||||
# Fix log spam with new GLib
|
||||
# https://gitlab.xfce.org/xfce/thunar/-/issues/1204
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.xfce.org/xfce/thunar/-/commit/2f06fcdbedbc59d9f90ccd3df07fce417cea391d.patch";
|
||||
sha256 = "sha256-nvYakT4GJkQYmubgZF8GJIA/m7+6ZPbmD0HSgMcCh10=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
docbook_xsl
|
||||
gobject-introspection
|
||||
|
@ -1,5 +1,6 @@
|
||||
{ lib
|
||||
, mkXfceDerivation
|
||||
, fetchpatch
|
||||
, polkit
|
||||
, exo
|
||||
, libxfce4util
|
||||
@ -19,6 +20,15 @@ mkXfceDerivation {
|
||||
|
||||
sha256 = "sha256-qCkE3aVYVwphoO1ZAyzpL1ZtsLaP6XT1H1rlFoBI3yg=";
|
||||
|
||||
patches = [
|
||||
# Add minimal xdg-desktop-portal conf file
|
||||
# https://gitlab.xfce.org/xfce/xfce4-session/-/issues/181
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.xfce.org/xfce/xfce4-session/-/commit/6451c8b21085631d8861e07ff4e1b2ef64a64ad3.patch";
|
||||
sha256 = "sha256-t3opom0iv7QsKoivzk+nXbxI5uFhNmB8/Qwb4QHvcCQ=";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
exo
|
||||
gtk3
|
||||
|
@ -17,8 +17,8 @@
|
||||
mkXfceDerivation {
|
||||
category = "panel-plugins";
|
||||
pname = "xfce4-pulseaudio-plugin";
|
||||
version = "0.4.7";
|
||||
sha256 = "sha256-9fumaX4M6NTXHM1gGa4wB/Uq+CZIUnvm9kC+pJNbWXU=";
|
||||
version = "0.4.8";
|
||||
sha256 = "sha256-7vcjARm0O+/hVNFzOpxcgAnqD+wRNg5/eqXLcq4t/iU=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
automakeAddFlags
|
||||
|
@ -89,9 +89,9 @@ let
|
||||
in
|
||||
{
|
||||
# features : Attr Set (String PackageFeatureAttrs)
|
||||
features = processManifest ./manifests/redistrib_features_${fullCudaVersion}.json;
|
||||
features = processManifest (./manifests + "/redistrib_features_${fullCudaVersion}.json");
|
||||
# manifest : Attr Set (String PackageAttrs)
|
||||
manifest = processManifest ./manifests/redistrib_${fullCudaVersion}.json;
|
||||
manifest = processManifest (./manifests + "/redistrib_${fullCudaVersion}.json");
|
||||
};
|
||||
|
||||
# Function to build a single redist package
|
||||
|
@ -46,11 +46,11 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "go";
|
||||
version = "1.20.8";
|
||||
version = "1.20.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://go.dev/dl/go${finalAttrs.version}.src.tar.gz";
|
||||
hash = "sha256-ONcXFPpSeflyQEUZVtjkfjwbal3ny4QTeUnWK13TGC4=";
|
||||
hash = "sha256-SSOSA4HNcdaLUndhr++lI+oYxYMbR5UDTIJ+GLaFzc8=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
54
pkgs/development/libraries/fbjni/default.nix
Normal file
54
pkgs/development/libraries/fbjni/default.nix
Normal file
@ -0,0 +1,54 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, fetchpatch
|
||||
, jdk_headless
|
||||
, gtest
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fbjni";
|
||||
version = "0.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "facebookincubator";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-97KqfFWtR3VJe2s0D60L3dsIDm4kMa0hpkKoZSAEoVY=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Part of https://github.com/facebookincubator/fbjni/pull/76
|
||||
# fix cmake file installation directory
|
||||
(fetchpatch {
|
||||
url = "https://github.com/facebookincubator/fbjni/commit/ab02e60b5da28647bfcc864b0bb1b9a90504cdb1.patch";
|
||||
sha256 = "sha256-/h6kosulRH/ZAU2u0zRSaNDK39jsnFt9TaSxyBllZqM=";
|
||||
})
|
||||
# install headers
|
||||
(fetchpatch {
|
||||
url = "https://github.com/facebookincubator/fbjni/commit/74e125caa9a815244f1e6bd08eaba57d015378b4.patch";
|
||||
sha256 = "sha256-hQS35D69GD3ewV4zzPG+LO7jk7ncCj2CYDbLJ6SnpqE=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
jdk_headless
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtest
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DJAVA_HOME=${jdk_headless.passthru.home}"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A library designed to simplify the usage of the Java Native Interface";
|
||||
homepage = "https://github.com/facebookincubator/fbjni";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ jonringer ];
|
||||
};
|
||||
}
|
@ -9,13 +9,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "graphene-hardened-malloc";
|
||||
version = "11";
|
||||
version = "12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "GrapheneOS";
|
||||
repo = "hardened_malloc";
|
||||
rev = finalAttrs.version;
|
||||
sha256 = "sha256-BbjL0W12QXFmGCzFrFYY6CZZeFbUt0elCGhM+mbL/IU=";
|
||||
sha256 = "sha256-ujwzr4njNsf/VTyEq7zKHWxoivU3feavSTx+MLIj1ZM=";
|
||||
};
|
||||
|
||||
doCheck = true;
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "inih";
|
||||
version = "56";
|
||||
version = "57";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "benhoyt";
|
||||
repo = pname;
|
||||
rev = "r${version}";
|
||||
sha256 = "sha256-7k3i3pElihastUDrdf9DyRZMe2UNFckfLUFGb4rbWLo=";
|
||||
hash = "sha256-a4nvhJSmZGqu2sdZSPNPjdnkzZ9dSKocL/XG2aDyFw4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson ninja ];
|
||||
|
@ -64,6 +64,7 @@ stdenv.mkDerivation rec {
|
||||
updateScript = gnome.updateScript {
|
||||
packageName = pname;
|
||||
versionPolicy = "odd-unstable";
|
||||
freeze = true;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
||||
packageName = pname;
|
||||
attrPath = "libsigcxx";
|
||||
versionPolicy = "odd-unstable";
|
||||
freeze = true;
|
||||
freeze = "2.99.1";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -1,13 +1,13 @@
|
||||
{ lib, stdenv, fetchFromGitHub, cmake, check, subunit }:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "orcania";
|
||||
version = "2.3.2";
|
||||
version = "2.3.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "babelouest";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-xF6QIXfsI+6WqshcG74/J98MgjSkYjRkTW64zeH6DDY=";
|
||||
sha256 = "sha256-Cz3IE5UrfoWjMxQ/+iR1bLsYxf5DVN+7aJqLBcPjduA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -99,7 +99,7 @@ stdenv.mkDerivation rec {
|
||||
packageName = pname;
|
||||
versionPolicy = "odd-unstable";
|
||||
# 1.90 is alpha for API 2.
|
||||
freeze = true;
|
||||
freeze = "1.90.0";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -6,10 +6,10 @@
|
||||
# Enable BLAS interface with 64-bit integer width.
|
||||
, blas64 ? false
|
||||
|
||||
# Target architecture. "amd64" compiles kernels for all Zen
|
||||
# Target architecture. "amdzen" compiles kernels for all Zen
|
||||
# generations. To build kernels for specific Zen generations,
|
||||
# use "zen", "zen2", or "zen3".
|
||||
, withArchitecture ? "amd64"
|
||||
# use "zen", "zen2", "zen3", or "zen4".
|
||||
, withArchitecture ? "amdzen"
|
||||
|
||||
# Enable OpenMP-based threading.
|
||||
, withOpenMP ? true
|
||||
@ -18,15 +18,16 @@
|
||||
let
|
||||
threadingSuffix = lib.optionalString withOpenMP "-mt";
|
||||
blasIntSize = if blas64 then "64" else "32";
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "amd-blis";
|
||||
version = "3.0";
|
||||
version = "4.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "amd";
|
||||
repo = "blis";
|
||||
rev = version;
|
||||
hash = "sha256-bbbeo1yOKse9pzbsB6lQ7pULKdzu3G7zJzTUgPXiMZY=";
|
||||
hash = "sha256-1vd4uBg/+Vufqsr+MnAWSUW/THkribHNSMeq1/is8K4=";
|
||||
};
|
||||
|
||||
inherit blas64;
|
||||
@ -54,8 +55,9 @@ in stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
ln -s $out/lib/libblis${threadingSuffix}.so.3 $out/lib/libblas.so.3
|
||||
ln -s $out/lib/libblis${threadingSuffix}.so.3 $out/lib/libcblas.so.3
|
||||
ls $out/lib
|
||||
ln -s $out/lib/libblis${threadingSuffix}.so $out/lib/libblas.so.3
|
||||
ln -s $out/lib/libblis${threadingSuffix}.so $out/lib/libcblas.so.3
|
||||
ln -s $out/lib/libblas.so.3 $out/lib/libblas.so
|
||||
ln -s $out/lib/libcblas.so.3 $out/lib/libcblas.so
|
||||
'';
|
||||
|
@ -1,34 +0,0 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 5549ce30..ac2ee51e 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -583,14 +583,14 @@ endif
|
||||
|
||||
# --- Shared library linker rules ---
|
||||
|
||||
-$(LIBFLAME_SO_PATH): $(MK_ALL_FLAMEC_OBJS)
|
||||
+$(LIBFLAME_SO_PATH): $(MK_ALL_FLAMEC_OBJS) $(LAPACKE_A_PATH)
|
||||
ifeq ($(ENABLE_VERBOSE),yes)
|
||||
ifeq ($(FLA_ENABLE_MAX_ARG_LIST_HACK),yes)
|
||||
$(CAT) $(AR_OBJ_LIST_FILE) | xargs -n$(AR_CHUNK_SIZE) $(AR) $(ARFLAGS) $(LIBFLAME_A)
|
||||
ifeq ($(OS_NAME),Darwin)
|
||||
- $(LINKER) $(SOFLAGS) -o $@ -Wl,-force_load,$(LIBFLAME_A) $(LDFLAGS)
|
||||
+ $(LINKER) $(SOFLAGS) -o $@ -Wl,-force_load,$(LIBFLAME_A),$(LAPACKE_A_PATH) $(LDFLAGS)
|
||||
else
|
||||
- $(LINKER) $(SOFLAGS) -o $@ -Wl,--whole-archive,$(LIBFLAME_A),--no-whole-archive $(LDFLAGS)
|
||||
+ $(LINKER) $(SOFLAGS) -o $@ -Wl,--whole-archive,$(LIBFLAME_A),$(LAPACKE_A_PATH)--no-whole-archive $(LDFLAGS)
|
||||
endif
|
||||
else
|
||||
# NOTE: Can't use $^ automatic variable as long as $(AR_OBJ_LIST_FILE) is in
|
||||
@@ -602,9 +602,9 @@ else
|
||||
ifeq ($(FLA_ENABLE_MAX_ARG_LIST_HACK),yes)
|
||||
@$(CAT) $(AR_OBJ_LIST_FILE) | xargs -n$(AR_CHUNK_SIZE) $(AR) $(ARFLAGS) $(LIBFLAME_A)
|
||||
ifeq ($(OS_NAME),Darwin)
|
||||
- @$(LINKER) $(SOFLAGS) -o $@ -Wl,-force_load,$(LIBFLAME_A) $(LDFLAGS)
|
||||
+ @$(LINKER) $(SOFLAGS) -o $@ -Wl,-force_load,$(LIBFLAME_A),$(LAPACKE_A_PATH) $(LDFLAGS)
|
||||
else
|
||||
- @$(LINKER) $(SOFLAGS) -o $@ -Wl,--whole-archive,$(LIBFLAME_A),--no-whole-archive $(LDFLAGS)
|
||||
+ @$(LINKER) $(SOFLAGS) -o $@ -Wl,--whole-archive,$(LIBFLAME_A),$(LAPACKE_A_PATH),--no-whole-archive $(LDFLAGS)
|
||||
endif
|
||||
else
|
||||
# NOTE: Can't use $^ automatic variable as long as $(AR_OBJ_LIST_FILE) is in
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user