Merge staging-next into staging
This commit is contained in:
@@ -75,6 +75,9 @@ jobs:
|
||||
with:
|
||||
extra_nix_config: sandbox = true
|
||||
|
||||
- name: Ensure flake outputs on all systems still evaluate
|
||||
run: nix --experimental-features 'nix-command flakes' flake check --all-systems --no-build ./nixpkgs
|
||||
|
||||
- name: Query nixpkgs with aliases enabled to check for basic syntax errors
|
||||
run: |
|
||||
time nix-env -I ./nixpkgs -f ./nixpkgs -qa '*' --option restrict-eval true --option allow-import-from-derivation false >/dev/null
|
||||
|
||||
@@ -98,15 +98,26 @@
|
||||
|
||||
checks = forAllSystems (
|
||||
system:
|
||||
{
|
||||
tarball = jobs.${system}.tarball;
|
||||
}
|
||||
{ }
|
||||
//
|
||||
lib.optionalAttrs
|
||||
(
|
||||
# Exclude x86_64-freebsd because "Failed to evaluate rustc-wrapper-1.85.0: «broken»: is marked as broken"
|
||||
system != "x86_64-freebsd"
|
||||
)
|
||||
{
|
||||
tarball = jobs.${system}.tarball;
|
||||
}
|
||||
//
|
||||
lib.optionalAttrs
|
||||
(
|
||||
self.legacyPackages.${system}.stdenv.hostPlatform.isLinux
|
||||
# Exclude power64 due to "libressl is not available on the requested hostPlatform" with hostPlatform being power64
|
||||
&& !self.legacyPackages.${system}.targetPlatform.isPower64
|
||||
# Exclude armv6l-linux because "cannot bootstrap GHC on this platform ('armv6l-linux' with libc 'defaultLibc')"
|
||||
&& system != "armv6l-linux"
|
||||
# Exclude riscv64-linux because "cannot bootstrap GHC on this platform ('riscv64-linux' with libc 'defaultLibc')"
|
||||
&& system != "riscv64-linux"
|
||||
)
|
||||
{
|
||||
# Test that ensures that the nixosSystem function can accept a lib argument
|
||||
@@ -156,8 +167,8 @@
|
||||
system != "armv6l-linux"
|
||||
# Exclude riscv64-linux because "Package ‘ghc-9.6.6’ in .../pkgs/development/compilers/ghc/common-hadrian.nix:579 is not available on the requested hostPlatform"
|
||||
&& system != "riscv64-linux"
|
||||
# Exclude FreeBSD because "Package ‘ghc-9.6.6’ in .../pkgs/development/compilers/ghc/common-hadrian.nix:579 is not available on the requested hostPlatform"
|
||||
&& !self.legacyPackages.${system}.stdenv.hostPlatform.isFreeBSD
|
||||
# Exclude x86_64-freebsd because "Package ‘ghc-9.6.6’ in .../pkgs/development/compilers/ghc/common-hadrian.nix:579 is not available on the requested hostPlatform"
|
||||
&& system != "x86_64-freebsd"
|
||||
)
|
||||
{
|
||||
/**
|
||||
@@ -167,7 +178,15 @@
|
||||
}
|
||||
);
|
||||
|
||||
formatter = forAllSystems (system: (import ./ci { inherit system; }).fmt.pkg);
|
||||
formatter = lib.filterAttrs (
|
||||
system: _:
|
||||
# Exclude armv6l-linux because "cannot bootstrap GHC on this platform ('armv6l-linux' with libc 'defaultLibc')"
|
||||
system != "armv6l-linux"
|
||||
# Exclude riscv64-linux because "cannot bootstrap GHC on this platform ('riscv64-linux' with libc 'defaultLibc')"
|
||||
&& system != "riscv64-linux"
|
||||
# Exclude x86_64-freebsd because "Package ‘go-1.22.12-freebsd-amd64-bootstrap’ in /nix/store/0yw40qnrar3lvc5hax5n49abl57apjbn-source/pkgs/development/compilers/go/binary.nix:50 is not available on the requested hostPlatform"
|
||||
&& system != "x86_64-freebsd"
|
||||
) (forAllSystems (system: (import ./ci { inherit system; }).fmt.pkg));
|
||||
|
||||
/**
|
||||
A nested structure of [packages](https://nix.dev/manual/nix/latest/glossary#package-attribute-set) and other values.
|
||||
|
||||
@@ -166,6 +166,8 @@
|
||||
|
||||
- [mqtt-exporter](https://github.com/kpetremann/mqtt-exporter/), a Prometheus exporter for exposing messages from MQTT. Available as [services.prometheus.exporters.mqtt](#opt-services.prometheus.exporters.mqtt.enable).
|
||||
|
||||
- [pocket-id](https://pocket-id.org/), an OIDC provider with passkeys support. Available as [services.pocket-id](#opt-services.pocket-id.enable).
|
||||
|
||||
- [nvidia-gpu](https://github.com/utkuozdemir/nvidia_gpu_exporter), a Prometheus exporter that scrapes `nvidia-smi` for GPU metrics. Available as [services.prometheus.exporters.nvidia-gpu](#opt-services.prometheus.exporters.nvidia-gpu.enable).
|
||||
|
||||
- [OpenGamepadUI](https://github.com/ShadowBlip/OpenGamepadUI/), an open source gamepad-native game launcher and overlay for Linux. Available as [programs.opengamepadui](#opt-programs.opengamepadui.enable).
|
||||
|
||||
@@ -1419,6 +1419,7 @@
|
||||
./services/security/paretosecurity.nix
|
||||
./services/security/pass-secret-service.nix
|
||||
./services/security/physlock.nix
|
||||
./services/security/pocket-id.nix
|
||||
./services/security/shibboleth-sp.nix
|
||||
./services/security/sks.nix
|
||||
./services/security/sshguard.nix
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
|
||||
let
|
||||
cfg = config.services.displayManager.cosmic-greeter;
|
||||
cfgAutoLogin = config.services.displayManager.autoLogin;
|
||||
in
|
||||
|
||||
{
|
||||
@@ -35,6 +36,10 @@ in
|
||||
user = "cosmic-greeter";
|
||||
command = ''${lib.getExe' pkgs.coreutils "env"} XCURSOR_THEME="''${XCURSOR_THEME:-Pop}" systemd-cat -t cosmic-greeter ${lib.getExe pkgs.cosmic-comp} ${lib.getExe cfg.package}'';
|
||||
};
|
||||
initial_session = lib.mkIf (cfgAutoLogin.enable && (cfgAutoLogin.user != null)) {
|
||||
user = cfgAutoLogin.user;
|
||||
command = ''${lib.getExe' pkgs.coreutils "env"} XCURSOR_THEME="''${XCURSOR_THEME:-Pop}" systemd-cat -t cosmic-session ${lib.getExe pkgs.cosmic-session}'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -421,8 +421,7 @@ in
|
||||
};
|
||||
environment = env;
|
||||
|
||||
preStart =
|
||||
''
|
||||
preStart = ''
|
||||
# remove old papaerless-manage symlink
|
||||
# TODO: drop with NixOS 25.11
|
||||
[[ -L '${cfg.dataDir}/paperless-manage' ]] && rm '${cfg.dataDir}/paperless-manage'
|
||||
@@ -448,13 +447,15 @@ in
|
||||
${cfg.package}/bin/paperless-ngx document_index reindex
|
||||
fi
|
||||
|
||||
echo ${cfg.package.version} > "$versionFile"
|
||||
fi
|
||||
''
|
||||
+ lib.optionalString (cfg.passwordFile != null) ''
|
||||
echo ${cfg.package.version} > "$versionFile"
|
||||
fi
|
||||
|
||||
if ${lib.boolToString (cfg.passwordFile != null)} || [[ -n $PAPERLESS_ADMIN_PASSWORD ]]; then
|
||||
export PAPERLESS_ADMIN_USER="''${PAPERLESS_ADMIN_USER:-admin}"
|
||||
PAPERLESS_ADMIN_PASSWORD=$(cat "$CREDENTIALS_DIRECTORY/PAPERLESS_ADMIN_PASSWORD")
|
||||
export PAPERLESS_ADMIN_PASSWORD
|
||||
if [[ -e $CREDENTIALS_DIRECTORY/PAPERLESS_ADMIN_PASSWORD ]]; then
|
||||
PAPERLESS_ADMIN_PASSWORD=$(cat "$CREDENTIALS_DIRECTORY/PAPERLESS_ADMIN_PASSWORD")
|
||||
export PAPERLESS_ADMIN_PASSWORD
|
||||
fi
|
||||
superuserState="$PAPERLESS_ADMIN_USER:$PAPERLESS_ADMIN_PASSWORD"
|
||||
superuserStateFile="${cfg.dataDir}/superuser-state"
|
||||
|
||||
@@ -462,7 +463,8 @@ in
|
||||
${cfg.package}/bin/paperless-ngx manage_superuser
|
||||
echo "$superuserState" > "$superuserStateFile"
|
||||
fi
|
||||
'';
|
||||
fi
|
||||
'';
|
||||
requires = lib.optional cfg.database.createLocally "postgresql.service";
|
||||
after =
|
||||
lib.optional enableRedis "redis-paperless.service"
|
||||
|
||||
@@ -24,6 +24,17 @@
|
||||
# dependencies here. This creates the necessary symlinks in the proper locations.
|
||||
systemd.sockets.paretosecurity.wantedBy = [ "sockets.target" ];
|
||||
|
||||
# In NixOS, systemd services are configured with minimal PATH. However,
|
||||
# paretosecurity helper looks for installed software to do its job, so
|
||||
# it needs the full system PATH. For example, it runs `iptables` to see if
|
||||
# firewall is configured. And it looks for various password managers to see
|
||||
# if one is installed.
|
||||
# The `paretosecurity-user` timer service that is configured lower has
|
||||
# the same need.
|
||||
systemd.services.paretosecurity.serviceConfig.Environment = [
|
||||
"PATH=${config.system.path}/bin:${config.system.path}/sbin"
|
||||
];
|
||||
|
||||
# Enable the tray icon and timer services if the trayIcon option is enabled
|
||||
systemd.user = lib.mkIf config.services.paretosecurity.trayIcon {
|
||||
services.paretosecurity-trayicon = {
|
||||
@@ -31,6 +42,9 @@
|
||||
};
|
||||
services.paretosecurity-user = {
|
||||
wantedBy = [ "graphical-session.target" ];
|
||||
serviceConfig.Environment = [
|
||||
"PATH=${config.system.path}/bin:${config.system.path}/sbin"
|
||||
];
|
||||
};
|
||||
timers.paretosecurity-user = {
|
||||
wantedBy = [ "timers.target" ];
|
||||
|
||||
@@ -0,0 +1,278 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (lib)
|
||||
mkEnableOption
|
||||
mkIf
|
||||
mkOption
|
||||
optionalAttrs
|
||||
optional
|
||||
mkPackageOption
|
||||
;
|
||||
inherit (lib.types)
|
||||
bool
|
||||
path
|
||||
str
|
||||
submodule
|
||||
;
|
||||
|
||||
cfg = config.services.pocket-id;
|
||||
|
||||
format = pkgs.formats.keyValue { };
|
||||
settingsFile = format.generate "pocket-id-env-vars" cfg.settings;
|
||||
in
|
||||
{
|
||||
meta.maintainers = with lib.maintainers; [
|
||||
gepbird
|
||||
ymstnt
|
||||
];
|
||||
|
||||
options.services.pocket-id = {
|
||||
enable = mkEnableOption "Pocket ID server";
|
||||
|
||||
package = mkPackageOption pkgs "pocket-id" { };
|
||||
|
||||
environmentFile = mkOption {
|
||||
type = path;
|
||||
description = ''
|
||||
Path to an environment file loaded for the Pocket ID service.
|
||||
|
||||
This can be used to securely store tokens and secrets outside of the world-readable Nix store.
|
||||
|
||||
Example contents of the file:
|
||||
MAXMIND_LICENSE_KEY=your-license-key
|
||||
'';
|
||||
default = "/dev/null";
|
||||
example = "/var/lib/secrets/pocket-id";
|
||||
};
|
||||
|
||||
settings = mkOption {
|
||||
type = submodule {
|
||||
freeformType = format.type;
|
||||
|
||||
options = {
|
||||
PUBLIC_APP_URL = mkOption {
|
||||
type = str;
|
||||
description = ''
|
||||
The URL where you will access the app.
|
||||
'';
|
||||
default = "http://localhost";
|
||||
};
|
||||
|
||||
TRUST_PROXY = mkOption {
|
||||
type = bool;
|
||||
description = ''
|
||||
Whether the app is behind a reverse proxy.
|
||||
'';
|
||||
default = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
default = { };
|
||||
|
||||
description = ''
|
||||
Environment variables that will be passed to Pocket ID, see
|
||||
[configuration options](https://pocket-id.org/docs/configuration/environment-variables)
|
||||
for supported values.
|
||||
'';
|
||||
};
|
||||
|
||||
dataDir = mkOption {
|
||||
type = path;
|
||||
default = "/var/lib/pocket-id";
|
||||
description = ''
|
||||
The directory where Pocket ID will store its data, such as the database.
|
||||
'';
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = str;
|
||||
default = "pocket-id";
|
||||
description = "User account under which Pocket ID runs.";
|
||||
};
|
||||
|
||||
group = mkOption {
|
||||
type = str;
|
||||
default = "pocket-id";
|
||||
description = "Group account under which Pocket ID runs.";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
warnings = (
|
||||
optional (cfg.settings ? MAXMIND_LICENSE_KEY)
|
||||
"config.services.pocket-id.settings.MAXMIND_LICENSE_KEY will be stored as plaintext in the Nix store. Use config.services.pocket-id.environmentFile instead."
|
||||
);
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"d ${cfg.dataDir} 0755 ${cfg.user} ${cfg.group}"
|
||||
];
|
||||
|
||||
systemd.services = {
|
||||
pocket-id-backend = {
|
||||
description = "Pocket ID backend";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
restartTriggers = [
|
||||
cfg.package
|
||||
cfg.environmentFile
|
||||
settingsFile
|
||||
];
|
||||
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
User = cfg.user;
|
||||
Group = cfg.group;
|
||||
WorkingDirectory = cfg.dataDir;
|
||||
ExecStart = "${cfg.package}/bin/pocket-id-backend";
|
||||
Restart = "always";
|
||||
EnvironmentFile = [
|
||||
cfg.environmentFile
|
||||
settingsFile
|
||||
];
|
||||
|
||||
# Hardening
|
||||
AmbientCapabilities = "";
|
||||
CapabilityBoundingSet = "";
|
||||
DeviceAllow = "";
|
||||
DevicePolicy = "closed";
|
||||
#IPAddressDeny = "any"; # communicates with the frontend
|
||||
LockPersonality = true;
|
||||
MemoryDenyWriteExecute = true;
|
||||
NoNewPrivileges = true;
|
||||
PrivateDevices = true;
|
||||
PrivateNetwork = false; # communicates with the frontend
|
||||
PrivateTmp = true;
|
||||
PrivateUsers = true;
|
||||
ProcSubset = "pid";
|
||||
ProtectClock = true;
|
||||
ProtectControlGroups = true;
|
||||
ProtectHome = true;
|
||||
ProtectHostname = true;
|
||||
ProtectKernelLogs = true;
|
||||
ProtectKernelModules = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectProc = "invisible";
|
||||
ProtectSystem = "full"; # needs to write in cfg.dataDir
|
||||
RemoveIPC = true;
|
||||
RestrictAddressFamilies = [
|
||||
"AF_INET"
|
||||
"AF_INET6"
|
||||
];
|
||||
RestrictNamespaces = true;
|
||||
RestrictRealtime = true;
|
||||
RestrictSUIDSGID = true;
|
||||
SystemCallArchitectures = "native";
|
||||
SystemCallFilter = lib.concatStringsSep " " [
|
||||
"~"
|
||||
"@clock"
|
||||
"@cpu-emulation"
|
||||
"@debug"
|
||||
"@module"
|
||||
"@mount"
|
||||
"@obsolete"
|
||||
"@privileged"
|
||||
"@raw-io"
|
||||
"@reboot"
|
||||
#"@resources" # vm test segfaults
|
||||
"@swap"
|
||||
];
|
||||
UMask = "0077";
|
||||
};
|
||||
};
|
||||
|
||||
pocket-id-frontend = {
|
||||
description = "Pocket ID frontend";
|
||||
after = [
|
||||
"network.target"
|
||||
"pocket-id-backend.service"
|
||||
];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
restartTriggers = [
|
||||
cfg.package
|
||||
cfg.environmentFile
|
||||
settingsFile
|
||||
];
|
||||
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
User = cfg.user;
|
||||
Group = cfg.group;
|
||||
ExecStart = "${cfg.package}/bin/pocket-id-frontend";
|
||||
Restart = "always";
|
||||
EnvironmentFile = [
|
||||
cfg.environmentFile
|
||||
settingsFile
|
||||
];
|
||||
|
||||
# Hardening
|
||||
AmbientCapabilities = "";
|
||||
CapabilityBoundingSet = "";
|
||||
DeviceAllow = "";
|
||||
DevicePolicy = "closed";
|
||||
#IPAddressDeny = "any"; # communicates with the backend and client
|
||||
LockPersonality = true;
|
||||
MemoryDenyWriteExecute = false; # V8_Fatal segfault
|
||||
NoNewPrivileges = true;
|
||||
PrivateDevices = true;
|
||||
PrivateNetwork = false; # communicates with the backend and client
|
||||
PrivateTmp = true;
|
||||
PrivateUsers = true;
|
||||
ProcSubset = "pid";
|
||||
ProtectClock = true;
|
||||
ProtectControlGroups = true;
|
||||
ProtectHome = true;
|
||||
ProtectHostname = true;
|
||||
ProtectKernelLogs = true;
|
||||
ProtectKernelModules = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectProc = "invisible";
|
||||
ProtectSystem = "strict";
|
||||
RemoveIPC = true;
|
||||
RestrictAddressFamilies = [
|
||||
"AF_INET"
|
||||
"AF_INET6"
|
||||
];
|
||||
RestrictNamespaces = true;
|
||||
RestrictRealtime = true;
|
||||
RestrictSUIDSGID = true;
|
||||
SystemCallArchitectures = "native";
|
||||
SystemCallFilter = lib.concatStringsSep " " [
|
||||
"~"
|
||||
"@clock"
|
||||
"@cpu-emulation"
|
||||
"@debug"
|
||||
"@module"
|
||||
"@mount"
|
||||
"@obsolete"
|
||||
"@privileged"
|
||||
"@raw-io"
|
||||
"@reboot"
|
||||
"@resources"
|
||||
"@swap"
|
||||
];
|
||||
UMask = "0077";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
users.users = optionalAttrs (cfg.user == "pocket-id") {
|
||||
pocket-id = {
|
||||
isSystemUser = true;
|
||||
group = cfg.group;
|
||||
description = "Pocket ID backend user";
|
||||
home = cfg.dataDir;
|
||||
};
|
||||
};
|
||||
|
||||
users.groups = optionalAttrs (cfg.group == "pocket-id") {
|
||||
pocket-id = { };
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -65,6 +65,7 @@ let
|
||||
|
||||
vaultwarden = cfg.package.override { inherit (cfg) dbBackend; };
|
||||
|
||||
useSendmail = configEnv.USE_SENDMAIL or null == "true";
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
@@ -236,10 +237,10 @@ in
|
||||
DevicePolicy = "closed";
|
||||
LockPersonality = true;
|
||||
MemoryDenyWriteExecute = true;
|
||||
NoNewPrivileges = true;
|
||||
PrivateDevices = true;
|
||||
NoNewPrivileges = !useSendmail;
|
||||
PrivateDevices = !useSendmail;
|
||||
PrivateTmp = true;
|
||||
PrivateUsers = true;
|
||||
PrivateUsers = !useSendmail;
|
||||
ProcSubset = "pid";
|
||||
ProtectClock = true;
|
||||
ProtectControlGroups = true;
|
||||
@@ -262,10 +263,13 @@ in
|
||||
inherit StateDirectory;
|
||||
StateDirectoryMode = "0700";
|
||||
SystemCallArchitectures = "native";
|
||||
SystemCallFilter = [
|
||||
"@system-service"
|
||||
"~@privileged"
|
||||
];
|
||||
SystemCallFilter =
|
||||
[
|
||||
"@system-service"
|
||||
]
|
||||
++ lib.optionals (!useSendmail) [
|
||||
"~@privileged"
|
||||
];
|
||||
Restart = "always";
|
||||
UMask = "0077";
|
||||
};
|
||||
|
||||
@@ -17,7 +17,7 @@ let
|
||||
in
|
||||
{
|
||||
options.services.archtika = {
|
||||
enable = mkEnableOption "Whether to enable the archtika service";
|
||||
enable = mkEnableOption "the archtika CMS";
|
||||
|
||||
package = mkPackageOption pkgs "archtika" { };
|
||||
|
||||
|
||||
@@ -114,7 +114,7 @@ in
|
||||
proxy_pass http://onlyoffice-docservice/$2$3;
|
||||
'';
|
||||
# /etc/nginx/includes/ds-docservice.conf
|
||||
#disable caching for api.js
|
||||
# disable caching for api.js
|
||||
"~ ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\w]+)?\\/(web-apps\\/apps\\/api\\/documents\\/api\\.js)$".extraConfig =
|
||||
''
|
||||
expires -1;
|
||||
@@ -124,26 +124,23 @@ in
|
||||
"~ ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\w]+)?\\/(document_editor_service_worker\\.js)$".extraConfig =
|
||||
''
|
||||
expires 365d;
|
||||
# gzip_static on;
|
||||
alias ${cfg.package}/var/www/onlyoffice/documentserver/sdkjs/common/serviceworker/$2;
|
||||
alias ${cfg.package}/var/www/onlyoffice/documentserver/sdkjs/common/serviceworker/$2;
|
||||
'';
|
||||
#suppress logging the unsupported locale error in web-apps
|
||||
# suppress logging the unsupported locale error in web-apps
|
||||
"~ ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\w]+)?\\/(web-apps)(\\/.*\\.json)$".extraConfig = ''
|
||||
expires 365d;
|
||||
error_log /dev/null crit;
|
||||
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
|
||||
'';
|
||||
#suppress logging the unsupported locale error in plugins
|
||||
# suppress logging the unsupported locale error in plugins
|
||||
"~ ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\w]+)?\\/(sdkjs-plugins)(\\/.*\\.json)$".extraConfig = ''
|
||||
expires 365d;
|
||||
error_log /dev/null crit;
|
||||
# gzip_static on;
|
||||
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
|
||||
'';
|
||||
"~ ^(\\/[\\d]+\\.[\\d]+\\.[\\d]+[\\.|-][\\w]+)?\\/(web-apps|sdkjs|sdkjs-plugins|fonts|dictionaries)(\\/.*)$".extraConfig =
|
||||
''
|
||||
expires 365d;
|
||||
# gzip_static on;
|
||||
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
|
||||
'';
|
||||
"~* ^(\\/cache\\/files.*)(\\/.*)".extraConfig = ''
|
||||
@@ -302,9 +299,8 @@ in
|
||||
' /run/onlyoffice/config/default.json | sponge /run/onlyoffice/config/default.json
|
||||
|
||||
chmod u+w /run/onlyoffice/config/production-linux.json
|
||||
jq '
|
||||
.FileConverter.converter.x2tPath = "${cfg.x2t}/bin/x2t"
|
||||
' /run/onlyoffice/config/production-linux.json | sponge /run/onlyoffice/config/production-linux.json
|
||||
jq '.FileConverter.converter.x2tPath = "${cfg.x2t}/bin/x2t"' \
|
||||
/run/onlyoffice/config/production-linux.json | sponge /run/onlyoffice/config/production-linux.json
|
||||
|
||||
if psql -d onlyoffice -c "SELECT 'task_result'::regclass;" >/dev/null; then
|
||||
psql -f ${cfg.package}/var/www/onlyoffice/documentserver/server/schema/postgresql/removetbl.sql
|
||||
|
||||
@@ -129,6 +129,7 @@ let
|
||||
|
||||
environment = lib.mkMerge [
|
||||
{
|
||||
INCUS_DOCUMENTATION = "${cfg.package.doc}/html";
|
||||
INCUS_EDK2_PATH = ovmf;
|
||||
INCUS_LXC_HOOK = "${cfg.lxcPackage}/share/lxc/hooks";
|
||||
INCUS_LXC_TEMPLATE_CONFIG = "${pkgs.lxcfs}/share/lxc/config";
|
||||
|
||||
@@ -243,7 +243,7 @@ in
|
||||
imports = [ ./binary-cache.nix ];
|
||||
_module.args.compression = "xz";
|
||||
};
|
||||
bind = handleTest ./bind.nix { };
|
||||
bind = runTest ./bind.nix;
|
||||
bird = handleTest ./bird.nix { };
|
||||
birdwatcher = handleTest ./birdwatcher.nix { };
|
||||
bitbox-bridge = runTest ./bitbox-bridge.nix;
|
||||
@@ -294,7 +294,7 @@ in
|
||||
] ./ceph-single-node-bluestore-dmcrypt.nix { };
|
||||
certmgr = handleTest ./certmgr.nix { };
|
||||
cfssl = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./cfssl.nix { };
|
||||
cgit = handleTest ./cgit.nix { };
|
||||
cgit = runTest ./cgit.nix;
|
||||
charliecloud = handleTest ./charliecloud.nix { };
|
||||
chromadb = runTest ./chromadb.nix;
|
||||
chromium = (handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./chromium.nix { }).stable or { };
|
||||
@@ -584,7 +584,7 @@ in
|
||||
herbstluftwm = handleTest ./herbstluftwm.nix { };
|
||||
homebox = handleTest ./homebox.nix { };
|
||||
homer = handleTest ./homer { };
|
||||
homepage-dashboard = handleTest ./homepage-dashboard.nix { };
|
||||
homepage-dashboard = runTest ./homepage-dashboard.nix;
|
||||
honk = runTest ./honk.nix;
|
||||
installed-tests = pkgs.recurseIntoAttrs (handleTest ./installed-tests { });
|
||||
invidious = handleTest ./invidious.nix { };
|
||||
@@ -691,7 +691,7 @@ in
|
||||
leaps = handleTest ./leaps.nix { };
|
||||
lemmy = handleTest ./lemmy.nix { };
|
||||
libinput = handleTest ./libinput.nix { };
|
||||
librenms = handleTest ./librenms.nix { };
|
||||
librenms = runTest ./librenms.nix;
|
||||
libresprite = handleTest ./libresprite.nix { };
|
||||
libreswan = runTest ./libreswan.nix;
|
||||
libreswan-nat = runTest ./libreswan-nat.nix;
|
||||
@@ -703,7 +703,7 @@ in
|
||||
libvirtd = handleTest ./libvirtd.nix { };
|
||||
lidarr = handleTest ./lidarr.nix { };
|
||||
lightdm = handleTest ./lightdm.nix { };
|
||||
lighttpd = handleTest ./lighttpd.nix { };
|
||||
lighttpd = runTest ./lighttpd.nix;
|
||||
limesurvey = handleTest ./limesurvey.nix { };
|
||||
limine = import ./limine { inherit runTest; };
|
||||
listmonk = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./listmonk.nix { };
|
||||
@@ -795,7 +795,7 @@ in
|
||||
defaults.services.mongodb.package = config.node.pkgs.mongodb-ce;
|
||||
}
|
||||
);
|
||||
moodle = handleTest ./moodle.nix { };
|
||||
moodle = runTest ./moodle.nix;
|
||||
moonraker = handleTest ./moonraker.nix { };
|
||||
mopidy = handleTest ./mopidy.nix { };
|
||||
morph-browser = runTest ./morph-browser.nix;
|
||||
@@ -1039,6 +1039,7 @@ in
|
||||
pleroma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./pleroma.nix { };
|
||||
plikd = handleTest ./plikd.nix { };
|
||||
plotinus = handleTest ./plotinus.nix { };
|
||||
pocket-id = handleTest ./pocket-id.nix { };
|
||||
podgrab = handleTest ./podgrab.nix { };
|
||||
podman = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./podman/default.nix { };
|
||||
podman-tls-ghostunnel = handleTestOn [
|
||||
@@ -1202,7 +1203,7 @@ in
|
||||
sssd-ldap = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./sssd-ldap.nix { };
|
||||
stalwart-mail = handleTest ./stalwart-mail.nix { };
|
||||
stargazer = runTest ./web-servers/stargazer.nix;
|
||||
starship = handleTest ./starship.nix { };
|
||||
starship = runTest ./starship.nix;
|
||||
stash = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./stash.nix { };
|
||||
static-web-server = handleTest ./web-servers/static-web-server.nix { };
|
||||
step-ca = handleTestOn [ "x86_64-linux" ] ./step-ca.nix { };
|
||||
@@ -1351,7 +1352,7 @@ in
|
||||
tuptime = handleTest ./tuptime.nix { };
|
||||
turbovnc-headless-server = handleTest ./turbovnc-headless-server.nix { };
|
||||
turn-rs = handleTest ./turn-rs.nix { };
|
||||
tuxguitar = handleTest ./tuxguitar.nix { };
|
||||
tuxguitar = runTest ./tuxguitar.nix;
|
||||
twingate = runTest ./twingate.nix;
|
||||
typesense = handleTest ./typesense.nix { };
|
||||
ucarp = handleTest ./ucarp.nix { };
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import ./make-test-python.nix {
|
||||
{ ... }:
|
||||
{
|
||||
name = "bind";
|
||||
|
||||
nodes.machine =
|
||||
|
||||
+95
-97
@@ -1,113 +1,111 @@
|
||||
import ./make-test-python.nix (
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
robotsTxt = pkgs.writeText "cgit-robots.txt" ''
|
||||
User-agent: *
|
||||
Disallow: /
|
||||
'';
|
||||
in
|
||||
{
|
||||
name = "cgit";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ schnusch ];
|
||||
};
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
robotsTxt = pkgs.writeText "cgit-robots.txt" ''
|
||||
User-agent: *
|
||||
Disallow: /
|
||||
'';
|
||||
in
|
||||
{
|
||||
name = "cgit";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ schnusch ];
|
||||
};
|
||||
|
||||
nodes = {
|
||||
server =
|
||||
{ ... }:
|
||||
{
|
||||
services.cgit."localhost" = {
|
||||
enable = true;
|
||||
package = pkgs.cgit.overrideAttrs (
|
||||
{ postInstall, ... }:
|
||||
{
|
||||
postInstall = ''
|
||||
${postInstall}
|
||||
cp ${robotsTxt} "$out/cgit/robots.txt"
|
||||
'';
|
||||
}
|
||||
);
|
||||
nginx.location = "/(c)git/";
|
||||
repos = {
|
||||
some-repo = {
|
||||
path = "/tmp/git/some-repo";
|
||||
desc = "some-repo description";
|
||||
};
|
||||
};
|
||||
settings = {
|
||||
readme = [
|
||||
":README.md"
|
||||
":date.txt"
|
||||
];
|
||||
nodes = {
|
||||
server =
|
||||
{ ... }:
|
||||
{
|
||||
services.cgit."localhost" = {
|
||||
enable = true;
|
||||
package = pkgs.cgit.overrideAttrs (
|
||||
{ postInstall, ... }:
|
||||
{
|
||||
postInstall = ''
|
||||
${postInstall}
|
||||
cp ${robotsTxt} "$out/cgit/robots.txt"
|
||||
'';
|
||||
}
|
||||
);
|
||||
nginx.location = "/(c)git/";
|
||||
repos = {
|
||||
some-repo = {
|
||||
path = "/tmp/git/some-repo";
|
||||
desc = "some-repo description";
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = [ pkgs.git ];
|
||||
settings = {
|
||||
readme = [
|
||||
":README.md"
|
||||
":date.txt"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
start_all()
|
||||
environment.systemPackages = [ pkgs.git ];
|
||||
};
|
||||
};
|
||||
|
||||
server.wait_for_unit("nginx.service")
|
||||
server.wait_for_unit("network.target")
|
||||
server.wait_for_open_port(80)
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
start_all()
|
||||
|
||||
server.succeed("curl -fsS http://localhost/%28c%29git/cgit.css")
|
||||
server.wait_for_unit("nginx.service")
|
||||
server.wait_for_unit("network.target")
|
||||
server.wait_for_open_port(80)
|
||||
|
||||
server.succeed("curl -fsS http://localhost/%28c%29git/robots.txt | diff -u - ${robotsTxt}")
|
||||
server.succeed("curl -fsS http://localhost/%28c%29git/cgit.css")
|
||||
|
||||
server.succeed(
|
||||
"curl -fsS http://localhost/%28c%29git/ | grep -F 'some-repo description'"
|
||||
)
|
||||
server.succeed("curl -fsS http://localhost/%28c%29git/robots.txt | diff -u - ${robotsTxt}")
|
||||
|
||||
server.fail("curl -fsS http://localhost/robots.txt")
|
||||
server.succeed(
|
||||
"curl -fsS http://localhost/%28c%29git/ | grep -F 'some-repo description'"
|
||||
)
|
||||
|
||||
server.succeed("sudo -u cgit ${pkgs.writeShellScript "setup-cgit-test-repo" ''
|
||||
set -e
|
||||
git init --bare -b master /tmp/git/some-repo
|
||||
git init -b master reference
|
||||
cd reference
|
||||
git remote add origin /tmp/git/some-repo
|
||||
{ echo -n "cgit NixOS Test at "; date; } > date.txt
|
||||
git add date.txt
|
||||
git -c user.name=test -c user.email=test@localhost commit -m 'add date'
|
||||
git push -u origin master
|
||||
''}")
|
||||
server.fail("curl -fsS http://localhost/robots.txt")
|
||||
|
||||
# test web download
|
||||
server.succeed(
|
||||
"curl -fsS 'http://localhost/%28c%29git/some-repo/plain/date.txt?id=master' | diff -u reference/date.txt -"
|
||||
)
|
||||
server.succeed("sudo -u cgit ${pkgs.writeShellScript "setup-cgit-test-repo" ''
|
||||
set -e
|
||||
git init --bare -b master /tmp/git/some-repo
|
||||
git init -b master reference
|
||||
cd reference
|
||||
git remote add origin /tmp/git/some-repo
|
||||
{ echo -n "cgit NixOS Test at "; date; } > date.txt
|
||||
git add date.txt
|
||||
git -c user.name=test -c user.email=test@localhost commit -m 'add date'
|
||||
git push -u origin master
|
||||
''}")
|
||||
|
||||
# test http clone
|
||||
server.succeed(
|
||||
"git clone http://localhost/%28c%29git/some-repo && diff -u reference/date.txt some-repo/date.txt"
|
||||
)
|
||||
# test web download
|
||||
server.succeed(
|
||||
"curl -fsS 'http://localhost/%28c%29git/some-repo/plain/date.txt?id=master' | diff -u reference/date.txt -"
|
||||
)
|
||||
|
||||
# test list settings by greping for the fallback readme
|
||||
server.succeed(
|
||||
"curl -fsS 'http://localhost/%28c%29git/some-repo/about/' | grep -F 'cgit NixOS Test at'"
|
||||
)
|
||||
# test http clone
|
||||
server.succeed(
|
||||
"git clone http://localhost/%28c%29git/some-repo && diff -u reference/date.txt some-repo/date.txt"
|
||||
)
|
||||
|
||||
# add real readme
|
||||
server.succeed("sudo -u cgit ${pkgs.writeShellScript "cgit-commit-readme" ''
|
||||
set -e
|
||||
echo '# cgit NixOS test README' > reference/README.md
|
||||
git -C reference add README.md
|
||||
git -C reference -c user.name=test -c user.email=test@localhost commit -m 'add readme'
|
||||
git -C reference push
|
||||
''}")
|
||||
# test list settings by greping for the fallback readme
|
||||
server.succeed(
|
||||
"curl -fsS 'http://localhost/%28c%29git/some-repo/about/' | grep -F 'cgit NixOS Test at'"
|
||||
)
|
||||
|
||||
# test list settings by greping for the real readme
|
||||
server.succeed(
|
||||
"curl -fsS 'http://localhost/%28c%29git/some-repo/about/' | grep -F '# cgit NixOS test README'"
|
||||
)
|
||||
server.fail(
|
||||
"curl -fsS 'http://localhost/%28c%29git/some-repo/about/' | grep -F 'cgit NixOS Test at'"
|
||||
)
|
||||
'';
|
||||
}
|
||||
)
|
||||
# add real readme
|
||||
server.succeed("sudo -u cgit ${pkgs.writeShellScript "cgit-commit-readme" ''
|
||||
set -e
|
||||
echo '# cgit NixOS test README' > reference/README.md
|
||||
git -C reference add README.md
|
||||
git -C reference -c user.name=test -c user.email=test@localhost commit -m 'add readme'
|
||||
git -C reference push
|
||||
''}")
|
||||
|
||||
# test list settings by greping for the real readme
|
||||
server.succeed(
|
||||
"curl -fsS 'http://localhost/%28c%29git/some-repo/about/' | grep -F '# cgit NixOS test README'"
|
||||
)
|
||||
server.fail(
|
||||
"curl -fsS 'http://localhost/%28c%29git/some-repo/about/' | grep -F 'cgit NixOS Test at'"
|
||||
)
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -1,28 +1,26 @@
|
||||
import ./make-test-python.nix (
|
||||
{ lib, ... }:
|
||||
{
|
||||
name = "homepage-dashboard";
|
||||
meta.maintainers = with lib.maintainers; [ jnsgruk ];
|
||||
{ lib, ... }:
|
||||
{
|
||||
name = "homepage-dashboard";
|
||||
meta.maintainers = with lib.maintainers; [ jnsgruk ];
|
||||
|
||||
nodes.machine = _: {
|
||||
services.homepage-dashboard = {
|
||||
enable = true;
|
||||
settings.title = "test title rodUsEagid"; # something random/unique
|
||||
};
|
||||
nodes.machine = _: {
|
||||
services.homepage-dashboard = {
|
||||
enable = true;
|
||||
settings.title = "test title rodUsEagid"; # something random/unique
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
# Ensure the services are started on managed machine
|
||||
machine.wait_for_unit("homepage-dashboard.service")
|
||||
machine.wait_for_open_port(8082)
|
||||
machine.succeed("curl --fail http://localhost:8082/")
|
||||
testScript = ''
|
||||
# Ensure the services are started on managed machine
|
||||
machine.wait_for_unit("homepage-dashboard.service")
|
||||
machine.wait_for_open_port(8082)
|
||||
machine.succeed("curl --fail http://localhost:8082/")
|
||||
|
||||
# Ensure /etc/homepage-dashboard is created.
|
||||
machine.succeed("test -d /etc/homepage-dashboard")
|
||||
# Ensure /etc/homepage-dashboard is created.
|
||||
machine.succeed("test -d /etc/homepage-dashboard")
|
||||
|
||||
# Ensure that we see the custom title *only in the managed config*
|
||||
page = machine.succeed("curl --fail http://localhost:8082/")
|
||||
assert "test title rodUsEagid" in page, "Custom title not found"
|
||||
'';
|
||||
}
|
||||
)
|
||||
# Ensure that we see the custom title *only in the managed config*
|
||||
page = machine.succeed("curl --fail http://localhost:8082/")
|
||||
assert "test title rodUsEagid" in page, "Custom title not found"
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -66,6 +66,7 @@ import ../make-test-python.nix (
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("incus.service")
|
||||
machine.wait_for_unit("incus-preseed.service")
|
||||
|
||||
# Check that the INCUS_UI environment variable is populated in the systemd unit
|
||||
machine.succeed("systemctl cat incus.service | grep 'INCUS_UI'")
|
||||
@@ -73,6 +74,9 @@ import ../make-test-python.nix (
|
||||
# Ensure the endpoint returns an HTML page with 'Incus UI' in the title
|
||||
machine.succeed("curl -kLs https://localhost:8443/ui | grep '<title>Incus UI</title>'")
|
||||
|
||||
# Ensure the documentation is rendering correctly
|
||||
machine.succeed("curl -kLs https://localhost:8443/documentation/ | grep '<title>Incus documentation</title>'")
|
||||
|
||||
# Ensure the application is actually rendered by the Javascript
|
||||
machine.succeed("PYTHONUNBUFFERED=1 selenium-script")
|
||||
'';
|
||||
|
||||
@@ -638,6 +638,7 @@ let
|
||||
clevisTest ? false,
|
||||
clevisFallbackTest ? false,
|
||||
disableFileSystems ? false,
|
||||
selectNixPackage ? pkgs: pkgs.nixStable,
|
||||
}:
|
||||
let
|
||||
isEfi = bootLoader == "systemd-boot" || (bootLoader == "grub" && grubUseEfi);
|
||||
@@ -701,6 +702,7 @@ let
|
||||
virtualisation.rootDevice = "/dev/vdb";
|
||||
|
||||
hardware.enableAllFirmware = mkForce false;
|
||||
nix.package = selectNixPackage pkgs;
|
||||
|
||||
# The test cannot access the network, so any packages we
|
||||
# need must be included in the VM.
|
||||
@@ -1101,6 +1103,9 @@ in
|
||||
# The (almost) simplest partitioning scheme: a swap partition and
|
||||
# one big filesystem partition.
|
||||
simple = makeInstallerTest "simple" simple-test-config;
|
||||
lix-simple = makeInstallerTest "simple" simple-test-config // {
|
||||
selectNixPackage = pkgs: pkgs.lix;
|
||||
};
|
||||
|
||||
switchToFlake = makeInstallerTest "switch-to-flake" simple-test-config-flake;
|
||||
|
||||
|
||||
+88
-90
@@ -1,106 +1,104 @@
|
||||
import ./make-test-python.nix (
|
||||
{ pkgs, lib, ... }:
|
||||
{ pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
api_token = "f87f42114e44b63ad1b9e3c3d33d6fbe"; # random md5 hash
|
||||
wrong_api_token = "e68ba041fcf1eab923a7a6de3af5f726"; # another random md5 hash
|
||||
in
|
||||
{
|
||||
name = "librenms";
|
||||
meta.maintainers = lib.teams.wdz.members;
|
||||
let
|
||||
api_token = "f87f42114e44b63ad1b9e3c3d33d6fbe"; # random md5 hash
|
||||
wrong_api_token = "e68ba041fcf1eab923a7a6de3af5f726"; # another random md5 hash
|
||||
in
|
||||
{
|
||||
name = "librenms";
|
||||
meta.maintainers = lib.teams.wdz.members;
|
||||
|
||||
nodes.librenms = {
|
||||
time.timeZone = "Europe/Berlin";
|
||||
nodes.librenms = {
|
||||
time.timeZone = "Europe/Berlin";
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
curl
|
||||
jq
|
||||
];
|
||||
environment.systemPackages = with pkgs; [
|
||||
curl
|
||||
jq
|
||||
];
|
||||
|
||||
services.librenms = {
|
||||
enable = true;
|
||||
hostname = "librenms";
|
||||
database = {
|
||||
createLocally = true;
|
||||
host = "localhost";
|
||||
database = "librenms";
|
||||
username = "librenms";
|
||||
passwordFile = pkgs.writeText "librenms-db-pass" "librenmsdbpass";
|
||||
};
|
||||
nginx = {
|
||||
default = true;
|
||||
};
|
||||
enableOneMinutePolling = true;
|
||||
settings = {
|
||||
enable_billing = true;
|
||||
};
|
||||
services.librenms = {
|
||||
enable = true;
|
||||
hostname = "librenms";
|
||||
database = {
|
||||
createLocally = true;
|
||||
host = "localhost";
|
||||
database = "librenms";
|
||||
username = "librenms";
|
||||
passwordFile = pkgs.writeText "librenms-db-pass" "librenmsdbpass";
|
||||
};
|
||||
|
||||
# systemd oneshot to create a dummy admin user and a API token for testing
|
||||
systemd.services.lnms-api-init = {
|
||||
description = "LibreNMS API init";
|
||||
after = [ "librenms-setup.service" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
User = "root";
|
||||
Group = "root";
|
||||
};
|
||||
script = ''
|
||||
API_USER_NAME=api
|
||||
API_TOKEN=${api_token} # random md5 hash
|
||||
|
||||
# seeding database to get the admin roles
|
||||
${pkgs.librenms}/artisan db:seed --force --no-interaction
|
||||
|
||||
# we don't need to know the password, it just has to exist
|
||||
API_USER_PASS=$(${pkgs.pwgen}/bin/pwgen -s 64 1)
|
||||
${pkgs.librenms}/artisan user:add $API_USER_NAME -r admin -p $API_USER_PASS
|
||||
API_USER_ID=$(${pkgs.mariadb}/bin/mysql -D librenms -N -B -e "SELECT user_id FROM users WHERE username = '$API_USER_NAME';")
|
||||
|
||||
${pkgs.mariadb}/bin/mysql -D librenms -e "INSERT INTO api_tokens (user_id, token_hash, description) VALUES ($API_USER_ID, '$API_TOKEN', 'API User')"
|
||||
'';
|
||||
nginx = {
|
||||
default = true;
|
||||
};
|
||||
enableOneMinutePolling = true;
|
||||
settings = {
|
||||
enable_billing = true;
|
||||
};
|
||||
};
|
||||
|
||||
nodes.snmphost = {
|
||||
|
||||
services.snmpd = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
|
||||
configText = ''
|
||||
com2sec readonly default public
|
||||
|
||||
group MyROGroup v2c readonly
|
||||
view all included .1 80
|
||||
access MyROGroup "" any noauth exact all none none
|
||||
|
||||
syslocation Testcity, Testcountry
|
||||
syscontact Testi mc Test <test@example.com>
|
||||
'';
|
||||
|
||||
# systemd oneshot to create a dummy admin user and a API token for testing
|
||||
systemd.services.lnms-api-init = {
|
||||
description = "LibreNMS API init";
|
||||
after = [ "librenms-setup.service" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
User = "root";
|
||||
Group = "root";
|
||||
};
|
||||
script = ''
|
||||
API_USER_NAME=api
|
||||
API_TOKEN=${api_token} # random md5 hash
|
||||
|
||||
# seeding database to get the admin roles
|
||||
${pkgs.librenms}/artisan db:seed --force --no-interaction
|
||||
|
||||
# we don't need to know the password, it just has to exist
|
||||
API_USER_PASS=$(${pkgs.pwgen}/bin/pwgen -s 64 1)
|
||||
${pkgs.librenms}/artisan user:add $API_USER_NAME -r admin -p $API_USER_PASS
|
||||
API_USER_ID=$(${pkgs.mariadb}/bin/mysql -D librenms -N -B -e "SELECT user_id FROM users WHERE username = '$API_USER_NAME';")
|
||||
|
||||
${pkgs.mariadb}/bin/mysql -D librenms -e "INSERT INTO api_tokens (user_id, token_hash, description) VALUES ($API_USER_ID, '$API_TOKEN', 'API User')"
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
nodes.snmphost = {
|
||||
|
||||
snmphost.wait_for_unit("snmpd.service")
|
||||
services.snmpd = {
|
||||
enable = true;
|
||||
openFirewall = true;
|
||||
|
||||
librenms.wait_for_unit("lnms-api-init.service")
|
||||
librenms.wait_for_open_port(80)
|
||||
configText = ''
|
||||
com2sec readonly default public
|
||||
|
||||
# Test that we can authenticate against the API
|
||||
librenms.succeed("curl --fail -H 'X-Auth-Token: ${api_token}' http://localhost/api/v0")
|
||||
librenms.fail("curl --fail -H 'X-Auth-Token: ${wrong_api_token}' http://localhost/api/v0")
|
||||
group MyROGroup v2c readonly
|
||||
view all included .1 80
|
||||
access MyROGroup "" any noauth exact all none none
|
||||
|
||||
# add snmphost as a device
|
||||
librenms.succeed("curl --fail -X POST -d '{\"hostname\":\"snmphost\",\"version\":\"v2c\",\"community\":\"public\"}' -H 'X-Auth-Token: ${api_token}' http://localhost/api/v0/devices")
|
||||
syslocation Testcity, Testcountry
|
||||
syscontact Testi mc Test <test@example.com>
|
||||
'';
|
||||
|
||||
# wait until snmphost gets polled
|
||||
librenms.wait_until_succeeds("test $(curl -H 'X-Auth-Token: ${api_token}' http://localhost/api/v0/devices/snmphost | jq -Mr .devices[0].last_polled) != 'null'")
|
||||
'';
|
||||
}
|
||||
)
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
|
||||
snmphost.wait_for_unit("snmpd.service")
|
||||
|
||||
librenms.wait_for_unit("lnms-api-init.service")
|
||||
librenms.wait_for_open_port(80)
|
||||
|
||||
# Test that we can authenticate against the API
|
||||
librenms.succeed("curl --fail -H 'X-Auth-Token: ${api_token}' http://localhost/api/v0")
|
||||
librenms.fail("curl --fail -H 'X-Auth-Token: ${wrong_api_token}' http://localhost/api/v0")
|
||||
|
||||
# add snmphost as a device
|
||||
librenms.succeed("curl --fail -X POST -d '{\"hostname\":\"snmphost\",\"version\":\"v2c\",\"community\":\"public\"}' -H 'X-Auth-Token: ${api_token}' http://localhost/api/v0/devices")
|
||||
|
||||
# wait until snmphost gets polled
|
||||
librenms.wait_until_succeeds("test $(curl -H 'X-Auth-Token: ${api_token}' http://localhost/api/v0/devices/snmphost | jq -Mr .devices[0].last_polled) != 'null'")
|
||||
'';
|
||||
}
|
||||
|
||||
+20
-22
@@ -1,25 +1,23 @@
|
||||
import ./make-test-python.nix (
|
||||
{ lib, pkgs, ... }:
|
||||
{
|
||||
name = "lighttpd";
|
||||
meta.maintainers = with lib.maintainers; [ bjornfor ];
|
||||
{ lib, pkgs, ... }:
|
||||
{
|
||||
name = "lighttpd";
|
||||
meta.maintainers = with lib.maintainers; [ bjornfor ];
|
||||
|
||||
nodes = {
|
||||
server = {
|
||||
services.lighttpd.enable = true;
|
||||
services.lighttpd.document-root = pkgs.runCommand "document-root" { } ''
|
||||
mkdir -p "$out"
|
||||
echo "hello nixos test" > "$out/file.txt"
|
||||
'';
|
||||
};
|
||||
nodes = {
|
||||
server = {
|
||||
services.lighttpd.enable = true;
|
||||
services.lighttpd.document-root = pkgs.runCommand "document-root" { } ''
|
||||
mkdir -p "$out"
|
||||
echo "hello nixos test" > "$out/file.txt"
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
server.wait_for_unit("lighttpd.service")
|
||||
res = server.succeed("curl --fail http://localhost/file.txt")
|
||||
assert "hello nixos test" in res, f"bad server response: '{res}'"
|
||||
server.succeed("systemctl reload lighttpd")
|
||||
'';
|
||||
}
|
||||
)
|
||||
testScript = ''
|
||||
start_all()
|
||||
server.wait_for_unit("lighttpd.service")
|
||||
res = server.succeed("curl --fail http://localhost/file.txt")
|
||||
assert "hello nixos test" in res, f"bad server response: '{res}'"
|
||||
server.succeed("systemctl reload lighttpd")
|
||||
'';
|
||||
}
|
||||
|
||||
+21
-23
@@ -1,26 +1,24 @@
|
||||
import ./make-test-python.nix (
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
name = "moodle";
|
||||
meta.maintainers = [ lib.maintainers.aanderse ];
|
||||
{ lib, ... }:
|
||||
{
|
||||
name = "moodle";
|
||||
meta.maintainers = [ lib.maintainers.aanderse ];
|
||||
|
||||
nodes.machine =
|
||||
{ ... }:
|
||||
{
|
||||
services.moodle.enable = true;
|
||||
services.moodle.virtualHost.hostName = "localhost";
|
||||
services.moodle.virtualHost.adminAddr = "root@example.com";
|
||||
services.moodle.initialPassword = "correcthorsebatterystaple";
|
||||
nodes.machine =
|
||||
{ ... }:
|
||||
{
|
||||
services.moodle.enable = true;
|
||||
services.moodle.virtualHost.hostName = "localhost";
|
||||
services.moodle.virtualHost.adminAddr = "root@example.com";
|
||||
services.moodle.initialPassword = "correcthorsebatterystaple";
|
||||
|
||||
# Ensure the virtual machine has enough memory to avoid errors like:
|
||||
# Fatal error: Out of memory (allocated 152047616) (tried to allocate 33554440 bytes)
|
||||
virtualisation.memorySize = 2000;
|
||||
};
|
||||
# Ensure the virtual machine has enough memory to avoid errors like:
|
||||
# Fatal error: Out of memory (allocated 152047616) (tried to allocate 33554440 bytes)
|
||||
virtualisation.memorySize = 2000;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
machine.wait_for_unit("phpfpm-moodle.service", timeout=1800)
|
||||
machine.wait_until_succeeds("curl http://localhost/ | grep 'You are not logged in'")
|
||||
'';
|
||||
}
|
||||
)
|
||||
testScript = ''
|
||||
start_all()
|
||||
machine.wait_for_unit("phpfpm-moodle.service", timeout=1800)
|
||||
machine.wait_until_succeeds("curl http://localhost/ | grep 'You are not logged in'")
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -29,6 +29,8 @@
|
||||
package = patchedPareto;
|
||||
};
|
||||
|
||||
networking.firewall.enable = true;
|
||||
|
||||
};
|
||||
|
||||
nodes.dashboard =
|
||||
@@ -64,6 +66,12 @@
|
||||
services.displayManager.autoLogin = {
|
||||
enable = true;
|
||||
user = "alice";
|
||||
|
||||
};
|
||||
|
||||
virtualisation.resolution = {
|
||||
x = 640;
|
||||
y = 480;
|
||||
};
|
||||
|
||||
environment.systemPackages = [ pkgs.xdotool ];
|
||||
@@ -94,7 +102,6 @@
|
||||
+ " --skip 21830a4e-84f1-48fe-9c5b-beab436b2cdb" # Disk encryption
|
||||
+ " --skip 44e4754a-0b42-4964-9cc2-b88b2023cb1e" # Pareto Security is up to date
|
||||
+ " --skip f962c423-fdf5-428a-a57a-827abc9b253e" # Password manager installed
|
||||
+ " --skip 2e46c89a-5461-4865-a92e-3b799c12034a" # Firewall is enabled
|
||||
+ "'"
|
||||
)
|
||||
|
||||
@@ -117,7 +124,7 @@
|
||||
]:
|
||||
status, out = xfce.systemctl("is-enabled " + unit, "alice")
|
||||
assert status == 0, f"Unit {unit} is not enabled (status: {status}): {out}"
|
||||
xfce.succeed("xdotool mousemove 850 10")
|
||||
xfce.succeed("xdotool mousemove 460 10")
|
||||
xfce.wait_for_text("Pareto Security")
|
||||
xfce.succeed("xdotool click 1")
|
||||
xfce.wait_for_text("Run Checks")
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
import ./make-test-python.nix (
|
||||
{ lib, ... }:
|
||||
|
||||
{
|
||||
name = "pocket-id";
|
||||
meta.maintainers = with lib.maintainers; [
|
||||
gepbird
|
||||
ymstnt
|
||||
];
|
||||
|
||||
nodes = {
|
||||
machine =
|
||||
{ ... }:
|
||||
{
|
||||
services.pocket-id = {
|
||||
enable = true;
|
||||
settings = {
|
||||
PORT = 10001;
|
||||
INTERNAL_BACKEND_URL = "http://localhost:10002";
|
||||
BACKEND_PORT = 10002;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
let
|
||||
inherit (nodes.machine.services.pocket-id) settings;
|
||||
inherit (builtins) toString;
|
||||
in
|
||||
''
|
||||
machine.wait_for_unit("pocket-id-backend.service")
|
||||
machine.wait_for_open_port(${toString settings.BACKEND_PORT})
|
||||
machine.wait_for_unit("pocket-id-frontend.service")
|
||||
machine.wait_for_open_port(${toString settings.PORT})
|
||||
|
||||
backend_status = machine.succeed("curl -L -o /tmp/backend-output -w '%{http_code}' http://localhost:${toString settings.BACKEND_PORT}/api/users/me")
|
||||
assert backend_status == "401"
|
||||
machine.succeed("grep 'You are not signed in' /tmp/backend-output")
|
||||
|
||||
frontend_status = machine.succeed("curl -L -o /tmp/frontend-output -w '%{http_code}' http://localhost:${toString settings.PORT}")
|
||||
assert frontend_status == "200"
|
||||
machine.succeed("grep 'Sign in to Pocket ID' /tmp/frontend-output")
|
||||
'';
|
||||
}
|
||||
)
|
||||
+45
-47
@@ -1,53 +1,51 @@
|
||||
import ./make-test-python.nix (
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
name = "starship";
|
||||
meta.maintainers = pkgs.starship.meta.maintainers;
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
name = "starship";
|
||||
meta.maintainers = pkgs.starship.meta.maintainers;
|
||||
|
||||
nodes.machine = {
|
||||
programs = {
|
||||
fish.enable = true;
|
||||
zsh.enable = true;
|
||||
nodes.machine = {
|
||||
programs = {
|
||||
fish.enable = true;
|
||||
zsh.enable = true;
|
||||
|
||||
starship = {
|
||||
enable = true;
|
||||
settings.format = "<starship>";
|
||||
};
|
||||
starship = {
|
||||
enable = true;
|
||||
settings.format = "<starship>";
|
||||
};
|
||||
|
||||
environment.systemPackages =
|
||||
map
|
||||
(
|
||||
shell:
|
||||
pkgs.writeScriptBin "expect-${shell}" ''
|
||||
#!${pkgs.expect}/bin/expect -f
|
||||
|
||||
spawn env TERM=xterm ${shell} -i
|
||||
|
||||
expect "<starship>" {
|
||||
send "exit\n"
|
||||
} timeout {
|
||||
send_user "\n${shell} failed to display Starship\n"
|
||||
exit 1
|
||||
}
|
||||
|
||||
expect eof
|
||||
''
|
||||
)
|
||||
[
|
||||
"bash"
|
||||
"fish"
|
||||
"zsh"
|
||||
];
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
machine.wait_for_unit("default.target")
|
||||
environment.systemPackages =
|
||||
map
|
||||
(
|
||||
shell:
|
||||
pkgs.writeScriptBin "expect-${shell}" ''
|
||||
#!${pkgs.expect}/bin/expect -f
|
||||
|
||||
machine.succeed("expect-bash")
|
||||
machine.succeed("expect-fish")
|
||||
machine.succeed("expect-zsh")
|
||||
'';
|
||||
}
|
||||
)
|
||||
spawn env TERM=xterm ${shell} -i
|
||||
|
||||
expect "<starship>" {
|
||||
send "exit\n"
|
||||
} timeout {
|
||||
send_user "\n${shell} failed to display Starship\n"
|
||||
exit 1
|
||||
}
|
||||
|
||||
expect eof
|
||||
''
|
||||
)
|
||||
[
|
||||
"bash"
|
||||
"fish"
|
||||
"zsh"
|
||||
];
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
machine.wait_for_unit("default.target")
|
||||
|
||||
machine.succeed("expect-bash")
|
||||
machine.succeed("expect-fish")
|
||||
machine.succeed("expect-zsh")
|
||||
'';
|
||||
}
|
||||
|
||||
+23
-27
@@ -1,29 +1,25 @@
|
||||
import ./make-test-python.nix (
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
name = "tuxguitar";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ ];
|
||||
{ ... }:
|
||||
{
|
||||
name = "tuxguitar";
|
||||
meta.maintainers = [ ];
|
||||
|
||||
nodes.machine =
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./common/x11.nix
|
||||
];
|
||||
|
||||
services.xserver.enable = true;
|
||||
|
||||
environment.systemPackages = [ pkgs.tuxguitar ];
|
||||
};
|
||||
|
||||
nodes.machine =
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./common/x11.nix
|
||||
];
|
||||
|
||||
services.xserver.enable = true;
|
||||
|
||||
environment.systemPackages = [ pkgs.tuxguitar ];
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_x()
|
||||
machine.succeed("tuxguitar >&2 &")
|
||||
machine.wait_for_window("TuxGuitar - Untitled.tg")
|
||||
machine.sleep(1)
|
||||
machine.screenshot("tuxguitar")
|
||||
'';
|
||||
}
|
||||
)
|
||||
testScript = ''
|
||||
machine.wait_for_x()
|
||||
machine.succeed("tuxguitar >&2 &")
|
||||
machine.wait_for_window("TuxGuitar - Untitled.tg")
|
||||
machine.sleep(1)
|
||||
machine.screenshot("tuxguitar")
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libmt32emu";
|
||||
version = "2.7.1";
|
||||
version = "2.7.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "munt";
|
||||
repo = "munt";
|
||||
rev = "${pname}_${lib.replaceStrings [ "." ] [ "_" ] version}";
|
||||
sha256 = "sha256-zY1AFcm8uvFkrKUZHsqtKY2CYTY4bWmkTJ7bZPqXoxk=";
|
||||
sha256 = "sha256-wXIvdGoup/AOQggkeXvtbi3pXhyKUKWmyt/ZbGzufds=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
|
||||
@@ -5038,8 +5038,8 @@ let
|
||||
mktplcRef = {
|
||||
name = "uiua-vscode";
|
||||
publisher = "uiua-lang";
|
||||
version = "0.0.61";
|
||||
hash = "sha256-cKiIva4nzROp+bbwkMxBvguLMXVe/9uGcdhVhLxmae0=";
|
||||
version = "0.0.62";
|
||||
hash = "sha256-Fq3NmCL17QVAmOmFWSkxc0qRwCRDsRbkeRzwyP02Nq4=";
|
||||
};
|
||||
meta = {
|
||||
description = "VSCode language extension for Uiua";
|
||||
|
||||
@@ -4,8 +4,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "mongodb-vscode";
|
||||
publisher = "mongodb";
|
||||
version = "1.12.1";
|
||||
hash = "sha256-jbR6NGYgDYArCHqMHKPXuht7UViw0Ii3Uc8IqTGTe8k=";
|
||||
version = "1.13.0";
|
||||
hash = "sha256-xOwffd2//P7wS+uuUmuIU0ITOH1pj35h53F1HhvGNMo=";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -7,8 +7,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "ms-python";
|
||||
name = "isort";
|
||||
version = "2023.13.13171013";
|
||||
hash = "sha256-UBV9i3LPVv60+toy+kJvESAuJHRmH/uEIwjTidYUXLc=";
|
||||
version = "2025.0.0";
|
||||
hash = "sha256-nwt9Pv084jt9nWvxSXLIWu7981UGSbCgVRTrFfJA6q4=";
|
||||
};
|
||||
meta = with lib; {
|
||||
description = "Import sorting extension for Visual Studio Code using isort";
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
qtsvg,
|
||||
qttools,
|
||||
libsecret,
|
||||
libwebp,
|
||||
|
||||
# optional client deps
|
||||
giflib,
|
||||
@@ -51,6 +52,7 @@ let
|
||||
qtsvg
|
||||
qttools
|
||||
libsecret
|
||||
libwebp
|
||||
# optional:
|
||||
giflib # gif animation export support
|
||||
kdnssd # local server discovery with Zeroconf
|
||||
@@ -67,18 +69,18 @@ let
|
||||
in
|
||||
mkDerivation rec {
|
||||
pname = "drawpile";
|
||||
version = "2.2.1";
|
||||
version = "2.2.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "drawpile";
|
||||
repo = "drawpile";
|
||||
rev = version;
|
||||
sha256 = "sha256-NS1aQlWpn3f+SW0oUjlYwHtOS9ZgbjFTrE9grjK5REM=";
|
||||
sha256 = "sha256-xcutcSpbFt+pb7QP1E/RG6iNnZwpfhIZTxr+1usLKHc=";
|
||||
};
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoVendor {
|
||||
inherit src;
|
||||
hash = "sha256-rY4zWSCBfVXvl6p9GvtDg/PFZfLkWTl8FTYdlKTzWYM=";
|
||||
hash = "sha256-VUX6J7TfxWpa07HPFZ8JzpltIwJUYAl5TABIpBmGYYo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -787,27 +787,27 @@
|
||||
}
|
||||
},
|
||||
"ungoogled-chromium": {
|
||||
"version": "134.0.6998.165",
|
||||
"version": "135.0.7049.52",
|
||||
"deps": {
|
||||
"depot_tools": {
|
||||
"rev": "e42fac3e9c1726ab14a61a25e6291d9ccc49e688",
|
||||
"hash": "sha256-BvEkk15Rm4nSoV/uWiwmQW/+gg2vpLQ187TbBAHl9Rk="
|
||||
"rev": "85ec2718b5a29990c7eb67778348c9f76a00f392",
|
||||
"hash": "sha256-eWlHnSRfLFcd3OoyCTIFewDf0eC9KQowScQOnphgfg8="
|
||||
},
|
||||
"gn": {
|
||||
"rev": "ed1abc107815210dc66ec439542bee2f6cbabc00",
|
||||
"hash": "sha256-EqbwCLkseND1v3UqM+49N7GuoXJ3PlJjWOes4OijQ3U="
|
||||
"rev": "4a8016dc391553fa1644c0740cc04eaac844121e",
|
||||
"hash": "sha256-8NynNvLNCHxy8EYmsnPovKhXu9DcDcYBhg4A6d2QIfY="
|
||||
},
|
||||
"ungoogled-patches": {
|
||||
"rev": "134.0.6998.165-1",
|
||||
"hash": "sha256-Uia8tI3ZpryD+YVV9duH6sAmB/gKvsFg9RZVKYo/HX0="
|
||||
"rev": "135.0.7049.52-1",
|
||||
"hash": "sha256-i7fSJsbuXgzDvh/4RJwHvVEalS134SoRzvcJZbYsIIo="
|
||||
},
|
||||
"npmHash": "sha256-oVoTruhxTymYiGkELd2Oa1wOfjGLtChQZozP4GzOO1A="
|
||||
"npmHash": "sha256-wNrZaugdKJCyV1WchkKXzr/I1OW1AtjiC2p7qTZZOqU="
|
||||
},
|
||||
"DEPS": {
|
||||
"src": {
|
||||
"url": "https://chromium.googlesource.com/chromium/src.git",
|
||||
"rev": "fd886e2cb29dd984c13deec032832dee68d8abe3",
|
||||
"hash": "sha256-xD06hGSrccTGB6fUGw0b7RrGNBQjNmdGKPaRqhXVVOY=",
|
||||
"rev": "9ba7e609d28c509a8ce9265c2247065d8d251173",
|
||||
"hash": "sha256-PjvfckdlaMq9HWefGxFppgBumlqh7xoCoxYFwk/r630=",
|
||||
"recompress": true
|
||||
},
|
||||
"src/third_party/clang-format/script": {
|
||||
@@ -817,23 +817,23 @@
|
||||
},
|
||||
"src/third_party/libc++/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git",
|
||||
"rev": "2e25154d49c29fa9aa42c30ad4a027bd30123434",
|
||||
"hash": "sha256-QxEbtsEKCs2Xgulq7nVWtAeOGkIYFOy/L1ROfXa5u8U="
|
||||
"rev": "7f8b68f91ca8b192375f5e71cd81fb3ed9650ef3",
|
||||
"hash": "sha256-1P+p5MPXm0WkeYgzIxG2SBKZVPWplUlEo7xYI//Y0uw="
|
||||
},
|
||||
"src/third_party/libc++abi/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git",
|
||||
"rev": "634228a732a1d9ae1a6d459556e8fc58707cf961",
|
||||
"hash": "sha256-ln/DCNYJXVksbwdDBnxCfc4VwtjQlJXF7ktl/NxLupg="
|
||||
"rev": "94c5d7a8edc09f0680aee57548c0b5d400c2840d",
|
||||
"hash": "sha256-wMMfj3E2AQJxovoSEIuT2uTyrcGBurS1HrHZOmP36+g="
|
||||
},
|
||||
"src/third_party/libunwind/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git",
|
||||
"rev": "e55d8cf51c6db1fdd4bb56c158945ec59772c8ee",
|
||||
"hash": "sha256-JazjgI+ch9RgnsDgu6p4cT4UmCBor4x4sRi1ClLISAY="
|
||||
"rev": "62e217a12ee1133833d9890b2f7adde900e4efbd",
|
||||
"hash": "sha256-FBMrvCCVwm0mmaQHDvKXljxxLwthpsFqhPE8yqBx5Aw="
|
||||
},
|
||||
"src/third_party/llvm-libc/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git",
|
||||
"rev": "6d0c8ee02e2fd44e69ac30e721e13be463035ee5",
|
||||
"hash": "sha256-bF4hV9fY0GLYAHUnxSXkCxdZLMKR3wYWaqYJaM9aQiE="
|
||||
"rev": "a02de4d0d992b110c8b180fdec91258e7b60265f",
|
||||
"hash": "sha256-LtxaimMmnman7BKLKpSR8rJtbEvHsmGVeHvzEukB4EY="
|
||||
},
|
||||
"src/chrome/test/data/perf/canvas_bench": {
|
||||
"url": "https://chromium.googlesource.com/chromium/canvas_bench.git",
|
||||
@@ -852,8 +852,8 @@
|
||||
},
|
||||
"src/docs/website": {
|
||||
"url": "https://chromium.googlesource.com/website.git",
|
||||
"rev": "600fc3a0b121d5007b4bb97b001e756625e6d418",
|
||||
"hash": "sha256-f3Tdz0ykxQ2FHbNweJwPdAZHA8eVpjPuxqRpxwhYtRM="
|
||||
"rev": "441c86221443f48e818335d51f84cf1880c35aa4",
|
||||
"hash": "sha256-nMLn2wTAr+3U1VpqWWq93zJHrlT+f1Yky8ONKk0kWjg="
|
||||
},
|
||||
"src/media/cdm/api": {
|
||||
"url": "https://chromium.googlesource.com/chromium/cdm.git",
|
||||
@@ -862,8 +862,8 @@
|
||||
},
|
||||
"src/net/third_party/quiche/src": {
|
||||
"url": "https://quiche.googlesource.com/quiche.git",
|
||||
"rev": "e7d001c82ee5bead5140481671828d5e156a525a",
|
||||
"hash": "sha256-5YFqWgkyQ/PUKTkk1j3mAFD8JMbI+E4XRdSq34HFMWA="
|
||||
"rev": "25a56e315359eaebb2ff4213771016a4978a346d",
|
||||
"hash": "sha256-ZkrAaNgCqG09CufQN35wFi09TVxvbf/U4jGNNMRLY0M="
|
||||
},
|
||||
"src/testing/libfuzzer/fuzzers/wasm_corpus": {
|
||||
"url": "https://chromium.googlesource.com/v8/fuzzer_wasm_corpus.git",
|
||||
@@ -877,13 +877,13 @@
|
||||
},
|
||||
"src/third_party/angle": {
|
||||
"url": "https://chromium.googlesource.com/angle/angle.git",
|
||||
"rev": "914c97c116e09ef01a99fbbbe9cd28cda56552c7",
|
||||
"hash": "sha256-Y4eX8YHwVXiXW4U8KGbFd4fTU/v/EAUpfwv6lB127Y4="
|
||||
"rev": "079266db445215380befce453b1ab3bbdfeaf73d",
|
||||
"hash": "sha256-Bcm9wxlLqp/ANg+cPvsuwAlaxVmef6g+12L5ZE4uCGA="
|
||||
},
|
||||
"src/third_party/angle/third_party/glmark2/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2",
|
||||
"rev": "cb550a25c75a99ae0def91a02e16ae29d73e6d1e",
|
||||
"hash": "sha256-kqBpWHCxUl1ekmrbdPn6cL2y75nK4FxECJ5mo83Zgf4="
|
||||
"rev": "6edcf02205fd1e8979dc3f3964257a81959b80c8",
|
||||
"hash": "sha256-VebUALLFKwEa4+oE+jF8mBSzhJd6aflphPmcK1Em8bw="
|
||||
},
|
||||
"src/third_party/angle/third_party/rapidjson/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson",
|
||||
@@ -892,8 +892,8 @@
|
||||
},
|
||||
"src/third_party/angle/third_party/VK-GL-CTS/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS",
|
||||
"rev": "48e7f3020f52ef9adc31aa0f5db01dc42cc487cd",
|
||||
"hash": "sha256-g59uC7feByGR1Ema8LqUCr5XWKpDMeXXvlS2thOo5Ks="
|
||||
"rev": "ba86fb95004331f2cf571dd9adefe2458290ee11",
|
||||
"hash": "sha256-wl/T/WxVNctM4m4VSFFqqtJ0xkEBiuILYywAylqa0Oo="
|
||||
},
|
||||
"src/third_party/anonymous_tokens/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git",
|
||||
@@ -907,13 +907,13 @@
|
||||
},
|
||||
"src/third_party/dav1d/libdav1d": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git",
|
||||
"rev": "42b2b24fb8819f1ed3643aa9cf2a62f03868e3aa",
|
||||
"hash": "sha256-qcs9QoZ/uWEQ8l1ChZ8nYctZnnWJ0VvCw1q2rEktC9g="
|
||||
"rev": "7d4b789f55389dad1820d6caf6a650038dad06e2",
|
||||
"hash": "sha256-O6WOm6qTSgRmDR+yY2wH6t+7ob+TtZIA5Gax1ysEZh0="
|
||||
},
|
||||
"src/third_party/dawn": {
|
||||
"url": "https://dawn.googlesource.com/dawn.git",
|
||||
"rev": "7056f50fdefc6bc46aa442e720d0336e2855b570",
|
||||
"hash": "sha256-aYlcplXSGjFov9dqql6d+a1PxJWtZJNQaaezof0u9QQ="
|
||||
"rev": "bdc68b25b620d7302a955e2c38c548ebfe74ef31",
|
||||
"hash": "sha256-R9SQiKUjLkLmPJwuWpw7fcibrWxSlXWkDsCra7Ci0UQ="
|
||||
},
|
||||
"src/third_party/dawn/third_party/glfw": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/glfw/glfw",
|
||||
@@ -922,8 +922,8 @@
|
||||
},
|
||||
"src/third_party/dawn/third_party/dxc": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler",
|
||||
"rev": "c2ed9ad4ee775f3de903ce757c994aecc59a5306",
|
||||
"hash": "sha256-jecGwARtdSr2OEC68749mpFUAHuYP/IzYUZyj23CwJE="
|
||||
"rev": "0a1143572d107c8b6980df092b84a79190ec1fbd",
|
||||
"hash": "sha256-sUSQTOi0EuIHX9h27RXb5HnbcdfkG/U1K6EbBdjSto8="
|
||||
},
|
||||
"src/third_party/dawn/third_party/dxheaders": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers",
|
||||
@@ -942,8 +942,8 @@
|
||||
},
|
||||
"src/third_party/dawn/third_party/webgpu-cts": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts",
|
||||
"rev": "24d5dfa7725d6ece31941c3f3343ba6362986d6b",
|
||||
"hash": "sha256-AEGYE2rSsPcRzJSm97DGsrPVbhCH+lyVI61Z4qavKc8="
|
||||
"rev": "ce91fc1d085136f9c7ddca684d1764689d49b337",
|
||||
"hash": "sha256-SsxohjLb+uoN5cMXU5DJDrtF1QVk8EWK/qvTLxCleUI="
|
||||
},
|
||||
"src/third_party/highway/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/highway.git",
|
||||
@@ -957,8 +957,8 @@
|
||||
},
|
||||
"src/third_party/boringssl/src": {
|
||||
"url": "https://boringssl.googlesource.com/boringssl.git",
|
||||
"rev": "ea42fe28775844ec8fe0444fc421398be42d51fe",
|
||||
"hash": "sha256-g9i5v11uZy/3Smn8zSCFmC27Gdp5VP2b0ROrj+VmP1k="
|
||||
"rev": "673e61fc215b178a90c0e67858bbf162c8158993",
|
||||
"hash": "sha256-8Dl6Aol33o2FYID3oIw9grB0jY9VJnnnhmiNdyycTlU="
|
||||
},
|
||||
"src/third_party/breakpad/breakpad": {
|
||||
"url": "https://chromium.googlesource.com/breakpad/breakpad.git",
|
||||
@@ -967,13 +967,13 @@
|
||||
},
|
||||
"src/third_party/cast_core/public/src": {
|
||||
"url": "https://chromium.googlesource.com/cast_core/public",
|
||||
"rev": "fbc5e98031e1271a0a566fcd4d9092b2d3275d05",
|
||||
"hash": "sha256-o5/Lbhh6HHSWCVCEyDwDCgs+PLm67si981w0HuIWY7c="
|
||||
"rev": "dcb3d2e87cebe20b6dda06d8b29abb9af27ca422",
|
||||
"hash": "sha256-e8+rQhEU5+FfwjyEE1TM6emO0cUntuS4GN7y/BuC/U8="
|
||||
},
|
||||
"src/third_party/catapult": {
|
||||
"url": "https://chromium.googlesource.com/catapult.git",
|
||||
"rev": "d5166861902b565df446e15181eba270fe168275",
|
||||
"hash": "sha256-xkvz743+w0xsI0w4reAo2rfC4J7opl1biA3eNYuRn+o="
|
||||
"rev": "93e56257a5089dc49f1dfd1240c527f5fe1b237f",
|
||||
"hash": "sha256-K5sOlXx72YmXlm7cc7jWf3lKmHcMdVHTwVueJo5CoHY="
|
||||
},
|
||||
"src/third_party/ced/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git",
|
||||
@@ -982,8 +982,8 @@
|
||||
},
|
||||
"src/third_party/chromium-variations": {
|
||||
"url": "https://chromium.googlesource.com/chromium-variations.git",
|
||||
"rev": "84c18c7a0205fbd0a27b0214b16ded7fc44dc062",
|
||||
"hash": "sha256-zXAmoKyj104BaIe4Rug18WbVKkyAsyWPCTPPEerinVo="
|
||||
"rev": "270a25f8795caf0a798ebf5a7d69284e3d830d19",
|
||||
"hash": "sha256-ZkETD+Pka5vItN70nhlGQelycFAEnb1Qfv9k2aDXZSE="
|
||||
},
|
||||
"src/third_party/cld_3/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/cld_3.git",
|
||||
@@ -1002,8 +1002,8 @@
|
||||
},
|
||||
"src/third_party/cpuinfo/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git",
|
||||
"rev": "8a1772a0c5c447df2d18edf33ec4603a8c9c04a6",
|
||||
"hash": "sha256-dKmZ5YXLhvVdxaJ4PefR+SWlh+MTFHNxOMeM6Vj7Gvo="
|
||||
"rev": "aaac07ee499895770c89163ce0920ef8bb41ed23",
|
||||
"hash": "sha256-A86nAbKs7trVwwa1HFUNbV//6O1minvlHTpZR3vabrU="
|
||||
},
|
||||
"src/third_party/crc32c/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git",
|
||||
@@ -1012,23 +1012,23 @@
|
||||
},
|
||||
"src/third_party/cros_system_api": {
|
||||
"url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git",
|
||||
"rev": "ea21b22629965105426f3df5e58190513e95a17e",
|
||||
"hash": "sha256-xUaGf4MaEXg2RHgrGS1Uuz97vq5Vbt4HFV/AXYB4lCA="
|
||||
"rev": "b8d797a61689892adb182c9bec457c9bd24b26d2",
|
||||
"hash": "sha256-44bD1nG7CRrvBcd9NbU4yksn7Ly9WYsWETXat/L3f0I="
|
||||
},
|
||||
"src/third_party/crossbench": {
|
||||
"url": "https://chromium.googlesource.com/crossbench.git",
|
||||
"rev": "0391f0d11cbf3cf3c5bcf82e19e9d9839b1936ed",
|
||||
"hash": "sha256-EL+lOTe1Vzg4JW2q7t3UoXzHHiEmLjf7khH9fXdplbo="
|
||||
"rev": "bf8d1d3aaf469343576db89f81df26aeb16bd62b",
|
||||
"hash": "sha256-XscXxoCUSVGsBCB8xymEsaLc4WgzZPXu6zkRbv8ZQZw="
|
||||
},
|
||||
"src/third_party/depot_tools": {
|
||||
"url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git",
|
||||
"rev": "e42fac3e9c1726ab14a61a25e6291d9ccc49e688",
|
||||
"hash": "sha256-BvEkk15Rm4nSoV/uWiwmQW/+gg2vpLQ187TbBAHl9Rk="
|
||||
"rev": "85ec2718b5a29990c7eb67778348c9f76a00f392",
|
||||
"hash": "sha256-eWlHnSRfLFcd3OoyCTIFewDf0eC9KQowScQOnphgfg8="
|
||||
},
|
||||
"src/third_party/devtools-frontend/src": {
|
||||
"url": "https://chromium.googlesource.com/devtools/devtools-frontend",
|
||||
"rev": "65b3f414b81ffe4df49202af6fc75bc26a3cb109",
|
||||
"hash": "sha256-rdBpJWdQ5VtFnIfbr/Vq1q1euSvkbY8iIqyuTMAS2KM="
|
||||
"rev": "ad4e2fc82183b1463ac870818c28680bbc3de889",
|
||||
"hash": "sha256-HS5O+r0GFe3Dfh+86JQlsEC+5Gcs1xmUkDyZ7qixqXw="
|
||||
},
|
||||
"src/third_party/dom_distiller_js/dist": {
|
||||
"url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git",
|
||||
@@ -1037,8 +1037,8 @@
|
||||
},
|
||||
"src/third_party/eigen3/src": {
|
||||
"url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git",
|
||||
"rev": "2a35a917be47766a895be610bedd66006980b7e6",
|
||||
"hash": "sha256-WG7uiduuMnXrvEpXJNGksrYkBsim+l7eiu5N+mx0Yr0="
|
||||
"rev": "4c38131a16803130b66266a912029504f2cf23cd",
|
||||
"hash": "sha256-dOq8RJ/V8kulSMK0OUWzHruiwJSP3f/86ih5gk2MMWQ="
|
||||
},
|
||||
"src/third_party/farmhash/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git",
|
||||
@@ -1052,8 +1052,8 @@
|
||||
},
|
||||
"src/third_party/ffmpeg": {
|
||||
"url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git",
|
||||
"rev": "d10a0f8bf5ddcce572df95105152bc74041cae0c",
|
||||
"hash": "sha256-OXumpRb9XB38dOCJmL3jDcabiJ08wAvydVlJwMgpCoQ="
|
||||
"rev": "fbce2a76c00cd2e5aeffe3c2e71d44c284ec52d6",
|
||||
"hash": "sha256-bGa0BCvzNxEKu9VZEwJ1NLt+b2KKWUxshpKSN2FHNEM="
|
||||
},
|
||||
"src/third_party/flac": {
|
||||
"url": "https://chromium.googlesource.com/chromium/deps/flac.git",
|
||||
@@ -1080,15 +1080,10 @@
|
||||
"rev": "13d57703abca3005d97b19df1f2db731607a7dc2",
|
||||
"hash": "sha256-O5wD8wxgis0qYMaY+xZ21GBDVQFphMRvInCOswS6inA="
|
||||
},
|
||||
"src/third_party/grpc/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/grpc/grpc.git",
|
||||
"rev": "a363b6c001139b9c8ffb7cd63f60a72f15349c3b",
|
||||
"hash": "sha256-RKGZWtH2JmP2mXN+4ln/nCJvOyzynrYcfrxSY8k1vVg="
|
||||
},
|
||||
"src/third_party/freetype/src": {
|
||||
"url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git",
|
||||
"rev": "b1f47850878d232eea372ab167e760ccac4c4e32",
|
||||
"hash": "sha256-YxWz3O9see1dktqZnC551V12yU5jcOERTB1Hn1lwUNM="
|
||||
"rev": "5d4e649f740c675426fbe4cdaffc53ee2a4cb954",
|
||||
"hash": "sha256-DxLHuzIvw7WIKKMCRBz4ne97j9DufoohXQZV6yZ5zfY="
|
||||
},
|
||||
"src/third_party/freetype-testing/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/freetype/freetype2-testing.git",
|
||||
@@ -1102,8 +1097,8 @@
|
||||
},
|
||||
"src/third_party/harfbuzz-ng/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git",
|
||||
"rev": "6d8035a99c279e32183ad063f0de201ef1b2f05c",
|
||||
"hash": "sha256-isQvwaVdL4cM465A8Gs06VioAu8RvZFrwXDsXhfOoFo="
|
||||
"rev": "8efd2d85c78fbba6ca09a3e454f77525f3b296ce",
|
||||
"hash": "sha256-/WNGrvyvJ+FGqoIoHapaux1iu63zjID0yR30HYPpxaw="
|
||||
},
|
||||
"src/third_party/ink/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/ink.git",
|
||||
@@ -1137,8 +1132,8 @@
|
||||
},
|
||||
"src/third_party/googletest/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/googletest.git",
|
||||
"rev": "e235eb34c6c4fed790ccdad4b16394301360dcd4",
|
||||
"hash": "sha256-jpXIcz5Uy6fDEvxTq8rTFx/M+0+SQ6TCDaqnp7nMtng="
|
||||
"rev": "24a9e940d481f992ba852599c78bb2217362847b",
|
||||
"hash": "sha256-oLknxClUh7l72ZAx7sxNDM6dUhMT0vUE2IdDjRLDKtk="
|
||||
},
|
||||
"src/third_party/hunspell_dictionaries": {
|
||||
"url": "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries.git",
|
||||
@@ -1167,8 +1162,8 @@
|
||||
},
|
||||
"src/third_party/fuzztest/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git",
|
||||
"rev": "44ac6c2594a880edbb9cb1e4e197c2b53d078130",
|
||||
"hash": "sha256-AKXKxXqOMUb3APf5r15NmIMyhJ4ZmW5+t7y5XdgdZkw="
|
||||
"rev": "a32ca113e3b050693e4bb379525dfae519ebd0d9",
|
||||
"hash": "sha256-eoV+g/QVzcI7PqDmAic5Ra9K/ba4IV1wXE4RFecuMuk="
|
||||
},
|
||||
"src/third_party/domato/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/googleprojectzero/domato.git",
|
||||
@@ -1182,18 +1177,18 @@
|
||||
},
|
||||
"src/third_party/libaom/source/libaom": {
|
||||
"url": "https://aomedia.googlesource.com/aom.git",
|
||||
"rev": "3990233fc06a35944d6d33797e63931802122a95",
|
||||
"hash": "sha256-4NOQug0MlWZ18527V3IDuGcxGEJ4b+mZZbdzugWoBgQ="
|
||||
"rev": "99fcd816eeaa7da46688bc4b9f4f9e71be13c2e8",
|
||||
"hash": "sha256-SOIvGkR3k7TAs9KFA3mFbBSq5h4eJghKo38IVioOK3U="
|
||||
},
|
||||
"src/third_party/crabbyavif/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/webmproject/CrabbyAvif.git",
|
||||
"rev": "c5938b119ef52f9ff628436c1e66c9a5322ece83",
|
||||
"hash": "sha256-+6339vcd0KJj5V11dvJvs0YpQpTxsLmDuBoYVzyn9Ec="
|
||||
"rev": "a75457c637a365910508f3c2c2b986a701b03a2e",
|
||||
"hash": "sha256-v3+Rj3jS/lCYZNjjAXB6zohdvM45PKayB43jX37ntsU="
|
||||
},
|
||||
"src/third_party/nearby/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git",
|
||||
"rev": "97690c6996f683a6f3e07d75fc4557958c55ac7b",
|
||||
"hash": "sha256-d1D9/6d7a1+27nD8VijhzRMglE2PqvAMK8+GbMeesSQ="
|
||||
"rev": "45d6317a64aad3d5060b800db267f7cea3f27198",
|
||||
"hash": "sha256-SmU+c9YveQ4N13bteuhtmo0uvySeCnmZYpC5NYiMJuo="
|
||||
},
|
||||
"src/third_party/beto-core/src": {
|
||||
"url": "https://beto-core.googlesource.com/beto-core.git",
|
||||
@@ -1210,21 +1205,26 @@
|
||||
"rev": "d6b5ffea959ad31e231c203d7446bf8b39e987ce",
|
||||
"hash": "sha256-lCwGk4Q+OXwO8vOlOQrkgygYqLrwpku/PkR03oEdX3Y="
|
||||
},
|
||||
"src/third_party/speedometer/v3.1": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git",
|
||||
"rev": "cc9ee085ae18f05961ff3dfa1ee1a90d67b7f8ee",
|
||||
"hash": "sha256-28vGPZLaD9xSwursTRRK1xndedeBUZ5TF/4hdy0RjFc="
|
||||
},
|
||||
"src/third_party/speedometer/v3.0": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git",
|
||||
"rev": "8d67f28d0281ac4330f283495b7f48286654ad7d",
|
||||
"hash": "sha256-qMQ4naX+4uUu3vtzzinjkhxX9/dNoTwj6vWCu4FdQmU="
|
||||
},
|
||||
"src/third_party/speedometer/v2.0": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git",
|
||||
"rev": "732af0dfe867f8815e662ac637357e55f285dbbb",
|
||||
"hash": "sha256-p7WUS8gZUaS+LOm7pNmRkwgxjx+V8R6yy7bbaEHaIs4="
|
||||
},
|
||||
"src/third_party/speedometer/v2.1": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git",
|
||||
"rev": "8bf7946e39e47c875c00767177197aea5727e84a",
|
||||
"hash": "sha256-0z5tZlz32fYh9I1ALqfLm2WWO8HiRBwt0hcmgKQhaeM="
|
||||
},
|
||||
"src/third_party/speedometer/v2.0": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git",
|
||||
"rev": "732af0dfe867f8815e662ac637357e55f285dbbb",
|
||||
"hash": "sha256-p7WUS8gZUaS+LOm7pNmRkwgxjx+V8R6yy7bbaEHaIs4="
|
||||
},
|
||||
"src/third_party/ukey2/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/ukey2.git",
|
||||
"rev": "0275885d8e6038c39b8a8ca55e75d1d4d1727f47",
|
||||
@@ -1232,8 +1232,8 @@
|
||||
},
|
||||
"src/third_party/cros-components/src": {
|
||||
"url": "https://chromium.googlesource.com/external/google3/cros_components.git",
|
||||
"rev": "1f1c782f06956a2deb5d33f09c466e4852099c71",
|
||||
"hash": "sha256-80WqSMP5Vlc4OY+gfpU3SRGavs7fJbTQVW1AIhq6jmE="
|
||||
"rev": "97dc8c7a1df880206cc54d9913a7e9d73677072a",
|
||||
"hash": "sha256-CT9c4LqTwhldsxoEny8MesULwQC4k95F4tfCtRZErGM="
|
||||
},
|
||||
"src/third_party/libdrm/src": {
|
||||
"url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git",
|
||||
@@ -1267,8 +1267,8 @@
|
||||
},
|
||||
"src/third_party/libprotobuf-mutator/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/libprotobuf-mutator.git",
|
||||
"rev": "a304ec48dcf15d942607032151f7e9ee504b5dcf",
|
||||
"hash": "sha256-ZyPweW+V5foxFQwjjMLkaRUo+FNV+kEDGIH/4oRV614="
|
||||
"rev": "7bf98f78a30b067e22420ff699348f084f802e12",
|
||||
"hash": "sha256-EaEC6R7SzqLw4QjEcWXFXhZc84lNBp6RSa9izjGnWKE="
|
||||
},
|
||||
"src/third_party/libsrtp": {
|
||||
"url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git",
|
||||
@@ -1287,8 +1287,8 @@
|
||||
},
|
||||
"src/third_party/libvpx/source/libvpx": {
|
||||
"url": "https://chromium.googlesource.com/webm/libvpx.git",
|
||||
"rev": "7b3fa8114cf8ef23cbf91e50c368c1ca768d95d5",
|
||||
"hash": "sha256-2FgBb0HzgMihGsWbEtQqyN2EXZs/y5+ToWL1ZXG35W0="
|
||||
"rev": "2bfb9f9e0a9cca18cd5a0045e931b49dac390c79",
|
||||
"hash": "sha256-BWid6iU7CDEElh8j13a+S767vwnO8qQg26Vp5nQGEHc="
|
||||
},
|
||||
"src/third_party/libwebm/source": {
|
||||
"url": "https://chromium.googlesource.com/webm/libwebm.git",
|
||||
@@ -1302,8 +1302,8 @@
|
||||
},
|
||||
"src/third_party/libyuv": {
|
||||
"url": "https://chromium.googlesource.com/libyuv/libyuv.git",
|
||||
"rev": "5a9a6ea936085310f3b9fbd4a774868e6a984ec4",
|
||||
"hash": "sha256-E5ePVHrEXMM8mS1qaUwPTqYO0BdP7TYuUhfX+BCiq/0="
|
||||
"rev": "ccdf870348764e4b77fa3b56accb2a896a901bad",
|
||||
"hash": "sha256-8sH11psWPXLMy3Q0tAizCZ/woUWvTCCUf44jcr2C4Xs="
|
||||
},
|
||||
"src/third_party/lss": {
|
||||
"url": "https://chromium.googlesource.com/linux-syscall-support.git",
|
||||
@@ -1332,18 +1332,18 @@
|
||||
},
|
||||
"src/third_party/openh264/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/cisco/openh264",
|
||||
"rev": "33f7f48613258446decb33b3575fc0a3c9ed14e3",
|
||||
"hash": "sha256-lZlZjX8GCJOc77VJ9i1fSWn63pfVOEcwwlzh0UpIgy4="
|
||||
"rev": "652bdb7719f30b52b08e506645a7322ff1b2cc6f",
|
||||
"hash": "sha256-tf0lnxATCkoq+xRti6gK6J47HwioAYWnpEsLGSA5Xdg="
|
||||
},
|
||||
"src/third_party/openscreen/src": {
|
||||
"url": "https://chromium.googlesource.com/openscreen",
|
||||
"rev": "38d1445b41d1eb597fcd100688dbaff98aa072ed",
|
||||
"hash": "sha256-KGVFyGp7ItKeapub3Bd+htXH/gMaaBd+k8iC7hLtvl0="
|
||||
"rev": "b756f3c04ba53983a94cd12eb29b7f22e472fd58",
|
||||
"hash": "sha256-P6vAoVF1/geM6MjihcEBQtbf8CxE8sPSKTRLz8/c2yE="
|
||||
},
|
||||
"src/third_party/openscreen/src/buildtools": {
|
||||
"url": "https://chromium.googlesource.com/chromium/src/buildtools",
|
||||
"rev": "56013b77b6c0a650d00bde40e750e7c3b7c6bc3d",
|
||||
"hash": "sha256-Dz7wMYQHVR7sjCGaQe2nxIxZsAxsK6GGDNpDvypPefo="
|
||||
"rev": "00459762409cb29cecf398a23cdb0cae918b7515",
|
||||
"hash": "sha256-QXGJRGyyuN0EPDAF7CAzcTSbjHkz8FRjhqd1JEFF/1o="
|
||||
},
|
||||
"src/third_party/openscreen/src/third_party/tinycbor/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/intel/tinycbor.git",
|
||||
@@ -1352,23 +1352,23 @@
|
||||
},
|
||||
"src/third_party/pdfium": {
|
||||
"url": "https://pdfium.googlesource.com/pdfium.git",
|
||||
"rev": "12f7715a6390050c5cffb7e4c9b2be1c2f2956d0",
|
||||
"hash": "sha256-/u+HYjmxSIX2GlriEWYZQJ8TDFNfzSufATGq1j9zx9w="
|
||||
"rev": "9afffebfa895ea6cdcc05516908c50bd7fe72797",
|
||||
"hash": "sha256-89rJdhwUJtJCMO7FvVoTYO80swFRkoWUB/ZYs1tOLzE="
|
||||
},
|
||||
"src/third_party/perfetto": {
|
||||
"url": "https://android.googlesource.com/platform/external/perfetto.git",
|
||||
"rev": "0d78d85c2bfb993ab8dd9a85b6fee6caa6a0f357",
|
||||
"hash": "sha256-bjgSwq4LPz9qN9rVqIJUTHetRguCx67Uq5oe1ksPqGE="
|
||||
"rev": "aa4d8267bafad6782a1f2c8d979104f2aaa622a0",
|
||||
"hash": "sha256-smVQykQVZdhybEUz7BlRLc+FVNH0UyGh+0eSxP8Jzrc="
|
||||
},
|
||||
"src/third_party/protobuf-javascript/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/protocolbuffers/protobuf-javascript",
|
||||
"rev": "e34549db516f8712f678fcd4bc411613b5cc5295",
|
||||
"hash": "sha256-TmP6xftUVTD7yML7UEM/DB8bcsL5RFlKPyCpcboD86U="
|
||||
"rev": "426b2e025aa59c23a1b6e19fbacd6b4a11bfad16",
|
||||
"hash": "sha256-5uieIE6ygM4Ooz9xbu1NVKCHHsPn6Ekz6OzqfWiA7/M="
|
||||
},
|
||||
"src/third_party/pthreadpool/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/pthreadpool.git",
|
||||
"rev": "e1469417238e13eebaa001779fa031ed25c59def",
|
||||
"hash": "sha256-cFRELaRtWspZaqtmdKmVPqM7HVskHlFMAny+Zv/Zflw="
|
||||
"rev": "f94ab76fe99754960035d520dce28e15b647e8cf",
|
||||
"hash": "sha256-NdKKMnXZ6rYOC2wA6a1bPNStxpemzGckN6PPWom6mFA="
|
||||
},
|
||||
"src/third_party/pyelftools": {
|
||||
"url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git",
|
||||
@@ -1387,8 +1387,8 @@
|
||||
},
|
||||
"src/third_party/re2/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/re2.git",
|
||||
"rev": "6dcd83d60f7944926bfd308cc13979fc53dd69ca",
|
||||
"hash": "sha256-IeANwJlJl45yf8iu/AZNDoiyIvTCZIeK1b74sdCfAIc="
|
||||
"rev": "c84a140c93352cdabbfb547c531be34515b12228",
|
||||
"hash": "sha256-f/k2rloV2Nwb0KuJGUX4SijFxAx69EXcsXOG4vo+Kis="
|
||||
},
|
||||
"src/third_party/ruy/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/ruy.git",
|
||||
@@ -1397,13 +1397,13 @@
|
||||
},
|
||||
"src/third_party/search_engines_data/resources": {
|
||||
"url": "https://chromium.googlesource.com/external/search_engines_data.git",
|
||||
"rev": "6dc3b54b420e6e03a34ee7259fcd2b1978fac5f3",
|
||||
"hash": "sha256-8RY3AU2V4iZKEmVwT7Z1Q3QlcTXDIdeyYwnQoyJcAUY="
|
||||
"rev": "48ba13bfb5488755a5d72aa60ff4a47069be498f",
|
||||
"hash": "sha256-//z0HlMOkGTcp1IjbS0m+0dmgVYsG7EkfCiK2vvG2wU="
|
||||
},
|
||||
"src/third_party/skia": {
|
||||
"url": "https://skia.googlesource.com/skia.git",
|
||||
"rev": "aefbd9403c1b3032ad4cd0281ef312ed262c7125",
|
||||
"hash": "sha256-tP6DnMeOoVqfTSn6bYXMLiCb4wg5f9uB28KzYMAeBUw="
|
||||
"rev": "b99f146a03d3c98049768fd91c2bbe6594b02b2c",
|
||||
"hash": "sha256-tl1GDmcStkuKMmzzsYuRG6Nrk4xDqgYYBoa1VsQNOwY="
|
||||
},
|
||||
"src/third_party/smhasher/src": {
|
||||
"url": "https://chromium.googlesource.com/external/smhasher.git",
|
||||
@@ -1422,8 +1422,8 @@
|
||||
},
|
||||
"src/third_party/swiftshader": {
|
||||
"url": "https://swiftshader.googlesource.com/SwiftShader.git",
|
||||
"rev": "86cf34f50cbe5a9f35da7eedad0f4d4127fb8342",
|
||||
"hash": "sha256-PSkIU8zC+4AVcYu0vaYo6I1SSykrHgcgGVMBJanux8o="
|
||||
"rev": "c12c13839d689f411911326b1f72e96eb525686c",
|
||||
"hash": "sha256-C8y5ShwMffNZpFuILYNw3WOMVJp/jPen/wNbFl1vqBY="
|
||||
},
|
||||
"src/third_party/text-fragments-polyfill/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git",
|
||||
@@ -1432,18 +1432,18 @@
|
||||
},
|
||||
"src/third_party/tflite/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git",
|
||||
"rev": "51c6eed226abcfeeb46864e837d01563cc5b907b",
|
||||
"hash": "sha256-qXHENS/6NwHAr1/16eb079XzmwAnpLtVZuva8uGCf+8="
|
||||
"rev": "d120e39920c0e61cc1227bc1abe50fd6ecd3ce66",
|
||||
"hash": "sha256-9p0/tR3bPvCJn+6eofmQXKbyfzxfbeVexdvuHpn50wk="
|
||||
},
|
||||
"src/third_party/vulkan-deps": {
|
||||
"url": "https://chromium.googlesource.com/vulkan-deps",
|
||||
"rev": "2e4b45a53a0e2e66bcb6540ae384c53a517218d0",
|
||||
"hash": "sha256-9ebWETg/fsS4MYZg74XHs/Nz3nX6BXBNVRN2PmyWXWM="
|
||||
"rev": "c1c31f4d17a9e4b2af40d85c89d573eb43187e0d",
|
||||
"hash": "sha256-uEsy4PBhO3EBJF6YdWj32GmMabgKWQJUeW3cWInAinE="
|
||||
},
|
||||
"src/third_party/glslang/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
|
||||
"rev": "0549c7127c2fbab2904892c9d6ff491fa1e93751",
|
||||
"hash": "sha256-LwspMo771iaV5YeEJWgdb8xi37KMa0rsSdvO3uqMOAI="
|
||||
"rev": "8b822ee8ac2c3e52926820f46ad858532a895951",
|
||||
"hash": "sha256-hPd5roeHOgMiz2VUx13bUsKKDSvgQAXRdk7wfdi6e48="
|
||||
},
|
||||
"src/third_party/spirv-cross/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross",
|
||||
@@ -1452,38 +1452,38 @@
|
||||
},
|
||||
"src/third_party/spirv-headers/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
|
||||
"rev": "e7294a8ebed84f8c5bd3686c68dbe12a4e65b644",
|
||||
"hash": "sha256-/p7kBW7mwpG/Uz0goMM7L3zjpOMBzGiuN+0ZBEOpORo="
|
||||
"rev": "54a521dd130ae1b2f38fef79b09515702d135bdd",
|
||||
"hash": "sha256-PScDq8HhQPFUs78N75QyL9oEykmjZmAhdxCAqQ0LJds="
|
||||
},
|
||||
"src/third_party/spirv-tools/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools",
|
||||
"rev": "ce37fd67f83cd1e8793b988d2e4126bbf72b19dd",
|
||||
"hash": "sha256-SJcxmKdzOjg6lOJk/3m8qo7puvtci1YEU6dXKjthx0Q="
|
||||
"rev": "f289d047f49fb60488301ec62bafab85573668cc",
|
||||
"hash": "sha256-2Wv0dxVQ8NvuDRTcsXkH1GKmuA6lsIuwTl0j6kbTefo="
|
||||
},
|
||||
"src/third_party/vulkan-headers/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers",
|
||||
"rev": "39f924b810e561fd86b2558b6711ca68d4363f68",
|
||||
"hash": "sha256-twJJVBfnZbH/8Wn273h45K3BOnlAicqL2zJl6OfLm2E="
|
||||
"rev": "952f776f6573aafbb62ea717d871cd1d6816c387",
|
||||
"hash": "sha256-LfJ7um+rzc4HdkJerHWkuPWeEc7ZFSBafbP+svAjklk="
|
||||
},
|
||||
"src/third_party/vulkan-loader/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader",
|
||||
"rev": "0508dee4ff864f5034ae6b7f68d34cb2822b827d",
|
||||
"hash": "sha256-QqFC3Iyhw9Pq6TwBHxa0Ss7SW0bHo0Uz5N18oxl2ROg="
|
||||
"rev": "809941a4ca137df69dc9c6e8eb456bd70309197c",
|
||||
"hash": "sha256-FPXAofnMfgUkwwRGh8rqtXrmLjouP5A8umXV1pHm1ck="
|
||||
},
|
||||
"src/third_party/vulkan-tools/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools",
|
||||
"rev": "c52931f012cb7b48e42bbf2050a7fb2183b76406",
|
||||
"hash": "sha256-nIzrishMMxWzOuD3aX8B6Iuq2kPsUF0Uuvz7GijTulY="
|
||||
"rev": "fb8f5a5d69f4590ff1f5ecacb5e3957b6d11daee",
|
||||
"hash": "sha256-fO6fkWOMYbf/um7gKFyjtrFE21g1kYx3lLvPv4gY7qw="
|
||||
},
|
||||
"src/third_party/vulkan-utility-libraries/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries",
|
||||
"rev": "fe7a09b13899c5c77d956fa310286f7a7eb2c4ed",
|
||||
"hash": "sha256-zI3y5aoP4QcYp677Oxj5Ef7lJyJwOMdGsaRBe+X9vpI="
|
||||
"rev": "2d8f273ebd4b843c402d9ee881616895b854e42f",
|
||||
"hash": "sha256-nD/WTBTwCnfZdwdNKldDVpcuirSghCIeJRBeX+uQXBk="
|
||||
},
|
||||
"src/third_party/vulkan-validation-layers/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers",
|
||||
"rev": "a30aa23cfaff4f28f039c025c159128a6c336a7e",
|
||||
"hash": "sha256-foa5hzqf1hPwOj3k57CloCe/j0qXW3zCQ4mwCT4epF4="
|
||||
"rev": "4e7b0c905b1a0401e24333800937cc8792efa037",
|
||||
"hash": "sha256-CCpfWpyGki9klgHInjs6gAhw5shPXlzmFgccCHNfGQY="
|
||||
},
|
||||
"src/third_party/vulkan_memory_allocator": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git",
|
||||
@@ -1492,8 +1492,8 @@
|
||||
},
|
||||
"src/third_party/wasm_tts_engine/src": {
|
||||
"url": "https://chromium.googlesource.com/chromium/wasm-tts-engine",
|
||||
"rev": "7a91dbfddd93afa096a69fb7d292e22d4afecad2",
|
||||
"hash": "sha256-bV+1YFEtCyTeZujsZtZiexT/aUTN3MaVerR2UdkUPBY="
|
||||
"rev": "6ab3e63276a2d66ba3e7db4f87c5b7cb00e22130",
|
||||
"hash": "sha256-ZcnKKnHsN1UyztAXClc2EUwfeX3yuLtMM2Zjwpnh62U="
|
||||
},
|
||||
"src/third_party/wayland/src": {
|
||||
"url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland.git",
|
||||
@@ -1527,8 +1527,8 @@
|
||||
},
|
||||
"src/third_party/webgpu-cts/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git",
|
||||
"rev": "fb2b951ac3c23e453335edf35c9b3bad431d9009",
|
||||
"hash": "sha256-tjY5ADd5tMFsYHk6xT+TXwsDYV5eI2oOywmyTjjAxYc="
|
||||
"rev": "dcfb0d153f1e19905b0af26e640470c9ec5578e7",
|
||||
"hash": "sha256-726p6OfKAzHtnjz/8WtMcsRxuq4wqyJv3+DHOHDTeYY="
|
||||
},
|
||||
"src/third_party/webpagereplay": {
|
||||
"url": "https://chromium.googlesource.com/webpagereplay.git",
|
||||
@@ -1537,8 +1537,8 @@
|
||||
},
|
||||
"src/third_party/webrtc": {
|
||||
"url": "https://webrtc.googlesource.com/src.git",
|
||||
"rev": "8d78f5de6c27b2c793039989ea381f1428fb0100",
|
||||
"hash": "sha256-IsjTrEnxIqINYYjWJmDp7rlubl5dJ2YMpJf/DrG/mRM="
|
||||
"rev": "04413d62f754a7b1a3a2d8c3df23bcde040112b2",
|
||||
"hash": "sha256-sFoBgpPeMJQNSjNp8dDEUlB/7lJUpIXTpu0eRq94cGk="
|
||||
},
|
||||
"src/third_party/wuffs/src": {
|
||||
"url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git",
|
||||
@@ -1557,18 +1557,18 @@
|
||||
},
|
||||
"src/third_party/xnnpack/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git",
|
||||
"rev": "0824e2965f6edc2297e55c8dff5a8ac4cb12aaad",
|
||||
"hash": "sha256-eb9B9lXPB2GiC4qehB/HOU36W1e9RZ0N2oEbIifyrHE="
|
||||
"rev": "7702e723fa25102db8b633ead4e3c221a5121487",
|
||||
"hash": "sha256-n3FxY4HESzNyccQLENbuisU29v79c2x+7fYOsUrQnFg="
|
||||
},
|
||||
"src/third_party/zstd/src": {
|
||||
"url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git",
|
||||
"rev": "ea0aa030cdf31f7897c5bfc153f0d36e92768095",
|
||||
"hash": "sha256-UJsuaSzR4V8alLdtxzpla1v9WYHPKPp13YrgA4Y6/yA="
|
||||
"rev": "ef2bf5781112a4cd6b62ac1817f7842bbdc7ea8f",
|
||||
"hash": "sha256-hDDNrUXGxG/o1oZnypAnuLyIeM16Hy6x1KacGu9Hhmw="
|
||||
},
|
||||
"src/v8": {
|
||||
"url": "https://chromium.googlesource.com/v8/v8.git",
|
||||
"rev": "4f282ae4acae85cdcc8c167cbc296a86d24c1cf6",
|
||||
"hash": "sha256-wpz9W/ZurpCT/dGIHGpmdkI3dsXbP8TPNeee2w9zBU8="
|
||||
"rev": "e2591684c45463aa1e46ebefc3fd35deee63f37c",
|
||||
"hash": "sha256-tbGzFdqmkoSiVGk1WMRroWC3NR5GaHRuMwGzPhVodxk="
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -405,10 +405,12 @@ let
|
||||
+ lib.optionalString isDarwin ''
|
||||
cd "${appPath}"
|
||||
|
||||
# These files have to be copied and not symlinked, otherwise tabs crash.
|
||||
# The omni.ja files have to be copied and not symlinked, otherwise tabs crash.
|
||||
# Maybe related to how omni.ja file is mmapped into memory. See:
|
||||
# https://github.com/mozilla/gecko-dev/blob/b1662b447f306e6554647914090d4b73ac8e1664/modules/libjar/nsZipArchive.cpp#L204
|
||||
for file in $(find . -type l -name "omni.ja"); do
|
||||
#
|
||||
# The *.dylib files are copied, otherwise some basic functionality, e.g. Crypto API, is broken.
|
||||
for file in $(find . -name "omni.ja" -o -name "*.dylib"); do
|
||||
rm "$file"
|
||||
cp "${browser}/${appPath}/$file" "$file"
|
||||
done
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-move-transition";
|
||||
version = "3.1.1";
|
||||
version = "3.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "exeldro";
|
||||
repo = "obs-move-transition";
|
||||
rev = version;
|
||||
sha256 = "sha256-kCiRgfpcFdxoK6e8jtrtzkBD4w5B/ilO1YyBHCG13gg=";
|
||||
sha256 = "sha256-BCivYK18T4b+lRo6Qf9qFwmjAyjCPZDekQVi03QBLHc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
}:
|
||||
mkHyprlandPlugin hyprland rec {
|
||||
pluginName = "hyprsplit";
|
||||
version = "0.48.0";
|
||||
version = "0.48.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "shezdy";
|
||||
repo = "hyprsplit";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-FTp5mkrrgo/plCFHuFnx+EtDnQQoChq0mdKpb2a4LrQ=";
|
||||
hash = "sha256-MN7eipww5r/I4tlEPTN6U+RZAkXPyf1YYx/YSCqVmoU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -8,17 +8,17 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "ab-av1";
|
||||
version = "0.9.3";
|
||||
version = "0.9.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "alexheretic";
|
||||
repo = "ab-av1";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-rj02Opkwi4M249Ya4uBl4u1l8Mx+FBcRcxDgD6ng9kg=";
|
||||
hash = "sha256-dDD0hnKov5cgNoc1m/0rG/cx2ZaB7TmLfcXdm8myRUQ=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-Vi38eNn+SnhQx7Gp1T2RPIBeu3bUAZ74dr0mMG5Mha0=";
|
||||
cargoHash = "sha256-01tH5uvfrPIKRv+iYJWm/5QyQZtz1d/nEtN/tmGXD14=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "all-the-package-names";
|
||||
version = "2.0.2117";
|
||||
version = "2.0.2128";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nice-registry";
|
||||
repo = "all-the-package-names";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-jcExEGUtBMeKesdYVkkJSlJ59HhHZUAqhVvXkJVZp8g=";
|
||||
hash = "sha256-x//g+TetH8wT6RP3W4f+exPOpiTBMTfEIJr2SgxyrmE=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-2SrPy3OybchYATCs0bmU1dZGBCKGhto1M1fPk68V/h8=";
|
||||
npmDepsHash = "sha256-MUDeXJk+WqKGEuUlEqb3SUdh3P/gQMWgF78SboksJ2M=";
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
|
||||
@@ -9,19 +9,19 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "1.2.0";
|
||||
version = "1.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "archtika";
|
||||
repo = "archtika";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-ba9da7LqCE/e2lhRVHD7GOhwOj1fNTBbN/pARPMzIg4=";
|
||||
hash = "sha256-GffYAtLs12v2Lt1WoKJOG5dZsmzDcySZKFBQwCT9nnY=";
|
||||
};
|
||||
|
||||
web = buildNpmPackage {
|
||||
name = "web-app";
|
||||
src = "${src}/web-app";
|
||||
npmDepsHash = "sha256-RTyo7K/Hr1hBGtcBKynrziUInl91JqZl84NkJg16ufA=";
|
||||
npmDepsHash = "sha256-2udi8vLLvdoZxIyRKLOCfEpEMsooxsIrM1wiua1QPAI=";
|
||||
npmFlags = [ "--legacy-peer-deps" ];
|
||||
installPhase = ''
|
||||
mkdir -p $out/web-app
|
||||
@@ -50,7 +50,10 @@ symlinkJoin {
|
||||
api
|
||||
];
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
passthru = {
|
||||
inherit src web;
|
||||
updateScript = nix-update-script { };
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Modern, performant and lightweight CMS";
|
||||
|
||||
@@ -26,14 +26,14 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "2.70.0";
|
||||
version = "2.71.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
name = "azure-cli-${version}-src";
|
||||
owner = "Azure";
|
||||
repo = "azure-cli";
|
||||
rev = "azure-cli-${version}";
|
||||
hash = "sha256-vvX/LkG8qA53AxVlvq7FSTqbVblvE5xbDq4V0SINCAk=";
|
||||
hash = "sha256-vtuDgj3UJCmKxYg0OgG59ezQh7HlscNywz61BHDzJF8=";
|
||||
};
|
||||
|
||||
# put packages that needs to be overridden in the py package scope
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "azurehound";
|
||||
version = "2.3.0";
|
||||
version = "2.3.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "SpecterOps";
|
||||
repo = "AzureHound";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-BbwQ3u1SD4AjNjHzT6QB0x7QJAZ59m1DtvhjZapLIx4=";
|
||||
hash = "sha256-12ae0y3hjeNPwB33J+XP26h+JfFN5M8+bF8CSon1jp4=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-FG3207OTzkMEoSvQsTH7Ky9T3ur7glG7k0ERfd12SO0=";
|
||||
|
||||
@@ -0,0 +1,78 @@
|
||||
{
|
||||
stdenvNoCC,
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
bash,
|
||||
which,
|
||||
versionCheckHook,
|
||||
coreutils,
|
||||
makeBinaryWrapper,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "bashunit";
|
||||
version = "0.19.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "TypedDevs";
|
||||
repo = "bashunit";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-EoCCqESzmCW12AuAqA3qh2VcE8gyUPIGJEoCcZhMA/Y=";
|
||||
forceFetchGit = true; # needed to include the tests directory for the check phase
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||
|
||||
postConfigure = ''
|
||||
patchShebangs src tests build.sh bashunit
|
||||
substituteInPlace Makefile \
|
||||
--replace-fail "SHELL=/bin/bash" "SHELL=${lib.getExe bash}"
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
./build.sh
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
install -m755 -D bin/bashunit $out/bin/bashunit
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
# some tests are currently broken on linux and it is not easy to disable them
|
||||
# reenable them after https://github.com/TypedDevs/bashunit/pull/397 has been merged
|
||||
doCheck = false;
|
||||
nativeCheckInputs = [ which ];
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
make test
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
wrapProgram $out/bin/bashunit \
|
||||
--prefix PATH : "${
|
||||
lib.makeBinPath [
|
||||
coreutils
|
||||
which
|
||||
]
|
||||
}"
|
||||
'';
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
doInstallCheck = true;
|
||||
versionCheckProgramArg = "--version";
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Simple testing framework for bash scripts";
|
||||
homepage = "https://bashunit.typeddevs.com";
|
||||
changelog = "https://github.com/TypedDevs/bashunit/releases/tag/${finalAttrs.version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ tricktron ];
|
||||
mainProgram = "bashunit";
|
||||
};
|
||||
})
|
||||
@@ -22,7 +22,7 @@
|
||||
asciidoctor,
|
||||
texliveFull,
|
||||
which,
|
||||
makeWrapper,
|
||||
makeBinaryWrapper,
|
||||
cctools,
|
||||
targetPackages,
|
||||
# install -m 644 lib/libstp.dylib /private/tmp/nix-build-bluespec-2024.07.drv-5/source/inst/lib/SAT
|
||||
@@ -160,15 +160,17 @@ stdenv.mkDerivation rec {
|
||||
[
|
||||
automake
|
||||
autoconf
|
||||
asciidoctor
|
||||
bison
|
||||
flex
|
||||
ghcWithPackages
|
||||
perl
|
||||
pkg-config
|
||||
texliveFull
|
||||
tcl
|
||||
makeWrapper
|
||||
makeBinaryWrapper
|
||||
]
|
||||
++ lib.optionals withDocs [
|
||||
texliveFull
|
||||
asciidoctor
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
# https://github.com/B-Lang-org/bsc/blob/main/src/comp/bsc.hs#L1838
|
||||
@@ -212,12 +214,16 @@ stdenv.mkDerivation rec {
|
||||
|
||||
postFixup = ''
|
||||
# https://github.com/B-Lang-org/bsc/blob/65e3a87a17f6b9cf38cbb7b6ad7a4473f025c098/src/comp/bsc.hs#L1839
|
||||
wrapProgram $out/bin/bsc --prefix PATH : ${
|
||||
lib.makeBinPath (if stdenv.hostPlatform.isDarwin then [ cctools ] else [ targetPackages.stdenv.cc ])
|
||||
}
|
||||
# `/bin/bsc` is a bash script which the script name to call the binary in the `/bin/core` directory
|
||||
# thus wrapping `/bin/bsc` messes up the scriptname detection in it.
|
||||
wrapProgram $out/bin/core/bsc \
|
||||
--prefix PATH : ${
|
||||
lib.makeBinPath (if stdenv.hostPlatform.isDarwin then [ cctools ] else [ targetPackages.stdenv.cc ])
|
||||
}
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
doInstallCheck = true;
|
||||
|
||||
# TODO To fix check-suite:
|
||||
# On darwin
|
||||
@@ -276,6 +282,13 @@ stdenv.mkDerivation rec {
|
||||
)
|
||||
'';
|
||||
|
||||
installCheckPhase = ''
|
||||
output="$($out/bin/bsc 2>&1 || true)"
|
||||
echo "bsc output:"
|
||||
echo "$output"
|
||||
echo "$output" | grep -q "to get help"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Toolchain for the Bluespec Hardware Definition Language";
|
||||
homepage = "https://github.com/B-Lang-org/bsc";
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "cariddi";
|
||||
version = "1.3.5";
|
||||
version = "1.3.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "edoardottt";
|
||||
repo = "cariddi";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-mRrUTRknax3b4hs3frQMzg0GyB3WjMDZJk0RQSAC88U=";
|
||||
hash = "sha256-ixjHPO0FXKbWOfjMVz1YD+wWpL8wcn2CCO46KF1zb0U=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-ML1aLbrYhs2IxnN2ywKFOpvAV6yuYb8GI+dtoxwJl4A=";
|
||||
vendorHash = "sha256-7v92+iDAYG0snJjVCX35rLKV/ZEzaVX2au4HOwa/ILU=";
|
||||
|
||||
ldflags = [
|
||||
"-w"
|
||||
|
||||
@@ -9,17 +9,17 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "cobalt";
|
||||
version = "0.19.8";
|
||||
version = "0.19.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cobalt-org";
|
||||
repo = "cobalt.rs";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-neOJ3UqRisCcyarRIXfHyl9nAe2Wl9IXVDNwIYEQYys=";
|
||||
hash = "sha256-T88XyrMVCLfhsz3RWD85ErHxAmuTXprOAiS5B8GkH9s=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-j2xmEoMV7lVhqj4lKWA3QdEDEGUpRlZc4ikZoDQJlB8=";
|
||||
cargoHash = "sha256-0BJAbxBbw6wfnDcZkOic13iuWTBEslJ2mQ9nfq+/RXc=";
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
versionCheckProgramArg = "--version";
|
||||
|
||||
@@ -17,13 +17,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "concessio";
|
||||
version = "0.1.9";
|
||||
version = "0.1.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ronniedroid";
|
||||
repo = "concessio";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-XH+4oEZSKa6lAS0zXxdlCsVJcGDglKSgaD+zoRM6Pws=";
|
||||
hash = "sha256-GDiwpErxz6GiYajcRBOnX0RO1jeaSmpLLxqEsB3nJLA=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
buildFHSEnv,
|
||||
fetchzip,
|
||||
nix-update-script,
|
||||
}:
|
||||
@@ -24,8 +25,24 @@ let
|
||||
}
|
||||
."${stdenvNoCC.hostPlatform.system}"
|
||||
or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}");
|
||||
in
|
||||
|
||||
executableName = "copilot-language-server";
|
||||
fhs =
|
||||
{ package }:
|
||||
buildFHSEnv {
|
||||
name = package.meta.mainProgram;
|
||||
version = package.version;
|
||||
targetPkgs = pkgs: [ pkgs.stdenv.cc.cc.lib ];
|
||||
runScript = lib.getExe package;
|
||||
|
||||
meta = package.meta // {
|
||||
description =
|
||||
package.meta.description
|
||||
+ " (FHS-wrapped, expand package details for further information when to use it)";
|
||||
longDescription = "Use this version if you encounter an error like `Could not start dynamically linked executable` or `SyntaxError: Invalid or unexpected token` (see nixpkgs issue [391730](https://github.com/NixOS/nixpkgs/issues/391730)).";
|
||||
};
|
||||
};
|
||||
in
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "copilot-language-server";
|
||||
version = "1.294.0";
|
||||
@@ -36,18 +53,20 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-PLX/mN7xu8gMh2BkkyTncP3+rJ3nBmX+pHxl0ONXbe4=";
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -Dt "$out"/bin "${os}-${arch}"/copilot-language-server
|
||||
install "${os}-${arch}/${executableName}" -Dm755 -t "$out"/bin
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
fhs = fhs { package = finalAttrs.finalPackage; };
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Use GitHub Copilot with any editor or IDE via the Language Server Protocol";
|
||||
@@ -60,7 +79,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
shortName = "GitHub Copilot License";
|
||||
url = "https://github.com/customer-terms/github-copilot-product-specific-terms";
|
||||
};
|
||||
mainProgram = "copilot-language-server";
|
||||
mainProgram = executableName;
|
||||
platforms = [
|
||||
"x86_64-linux"
|
||||
"aarch64-linux"
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "cozette";
|
||||
version = "1.27.0";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/slavfox/Cozette/releases/download/v.${version}/CozetteFonts-v-${
|
||||
builtins.replaceStrings [ "." ] [ "-" ] version
|
||||
}.zip";
|
||||
hash = "sha256-L/C1fohaLSVbrxAr4v3R83x1/Yt8fI3Lo+c84cZvEHY=";
|
||||
hash = "sha256-KxlChsydFtm26CFugbWqeJi5DQP0BxONSz5mOcyiE28=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
||||
@@ -14,14 +14,14 @@ let
|
||||
|
||||
hashes = {
|
||||
linux-aarch64-unknown-linux-gnu = "sha256-i6XsOK8csrJ/9TDzltA7mGjdutLZONFiYGV5tqSCy8o=";
|
||||
linux-x86_64-unknown-linux-gnu = "sha256-gBIzG0LaP9qxivkr47JpBu1z9km7o/1Wppk/6k2WslE=";
|
||||
linux-x86_64-unknown-linux-gnu = "sha256-XK3DPWIdPDoIL10EATa8p1bnlpZaOzOdU0LnuKbj++E=";
|
||||
macos-aarch64-apple-darwin = "sha256-8e5duQYDVFyZejMjuZPuWhg1on3CBku9eBuilG5p1BY=";
|
||||
macos-x86_64-apple-darwin = "sha256-dnouUBUUAkMr1h+IJWYamxmk8IC7JdeIUS9/YI0GzOU=";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "erlang-language-platform";
|
||||
version = "2025-02-13";
|
||||
version = "2025-04-02";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/WhatsApp/erlang-language-platform/releases/download/${version}/elp-${release}-otp-26.2.tar.gz";
|
||||
|
||||
@@ -8,11 +8,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fabric-installer";
|
||||
version = "1.0.1";
|
||||
version = "1.0.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://maven.fabricmc.net/net/fabricmc/fabric-installer/${version}/fabric-installer-${version}.jar";
|
||||
sha256 = "sha256-Yu3xcL3MQe3qhdM6zz64VHQlhpmz1B+UGNKGyDbLCI0=";
|
||||
sha256 = "sha256-OKqCqx74KbeqPyFD/Mk7unBqjhiDW+cx0P3yMdJ0sH8=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
let
|
||||
version = "1.9.0";
|
||||
version = "1.9.2";
|
||||
in
|
||||
python3.pkgs.buildPythonApplication {
|
||||
pname = "fangfrisch";
|
||||
@@ -15,7 +15,7 @@ python3.pkgs.buildPythonApplication {
|
||||
owner = "rseichter";
|
||||
repo = "fangfrisch";
|
||||
tag = version;
|
||||
hash = "sha256-B2fVXVYzrtWMh/WjgFBOqrq8Jt+jqudbtpY/w4rJG08=";
|
||||
hash = "sha256-8upIh9Z+ismvuKcuEe+gJ4W9NLw/Wq15zjFpy8X9yVo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "go-judge";
|
||||
version = "1.9.2";
|
||||
version = "1.9.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "criyle";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-4KBMDqHw8EJGSDK9+jCZvaxkQymhw4RRGByrFngiIug=";
|
||||
hash = "sha256-AmbhfCKUpvZt/me73EhBQqw8yDnItn1zKiemf/JRz24=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-FnX3u6DLB9qPE4+Hy/+00mD4U/6Pa+CsZoEroi7cNO0=";
|
||||
vendorHash = "sha256-eUtkelLucf11ANT6vkWuBOaL5bgb+9D8YsVsZTMMjmg=";
|
||||
|
||||
tags = [
|
||||
"nomsgpack"
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
fetchFromGitHub,
|
||||
testers,
|
||||
gojq,
|
||||
installShellFiles,
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
@@ -24,6 +25,12 @@ buildGoModule rec {
|
||||
"-w"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
postInstall = ''
|
||||
installShellCompletion --cmd gojq --zsh _gojq
|
||||
'';
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = gojq;
|
||||
};
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gosec";
|
||||
version = "2.22.2";
|
||||
version = "2.22.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "securego";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-j9MRMtINGPn4Hn9Z3+19/Q+Weu277WVONXKtJf9x5Cc=";
|
||||
hash = "sha256-MQ/dDK2t9H7bSsr5MMtlKySLAJIDimRbpATHyOYxrBo=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-lZFTmf4/J3NDdawfp2WpPoaVxepbyazIyC8ahOwPcZo=";
|
||||
vendorHash = "sha256-R1w+dHx3Aond6DmwCHRVZXmUABWfpsbLgcDW67Ukz0E=";
|
||||
|
||||
subPackages = [
|
||||
"cmd/gosec"
|
||||
|
||||
@@ -12,14 +12,14 @@
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
version = "3.4.2";
|
||||
version = "3.4.3";
|
||||
pname = "grafana-loki";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "grafana";
|
||||
repo = "loki";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-GE92NlFCOk6qFtrgeBvLDI0OkmWaJ1j07Q14+jgi9+w=";
|
||||
hash = "sha256-1tI9X2eIKuWEWJBbN4UAw8yeRrjgfqcenJyTNMk5rqU=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
||||
@@ -14,13 +14,13 @@
|
||||
}:
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "hyprprop";
|
||||
version = "0.1-unstable-2025-03-17";
|
||||
version = "0.1-unstable-2025-03-31";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hyprwm";
|
||||
repo = "contrib";
|
||||
rev = "bd81329944be53b0ffb99e05864804b95f1d7c65";
|
||||
hash = "sha256-I8JVdQRu8eWvY5W8XWYZkdd5pojDHkxeqQV7mMIsbhs=";
|
||||
rev = "bc2ad24e0b2e66c3e164994c4897cd94a933fd10";
|
||||
hash = "sha256-YItzk1pj8Kz+b7VlC9zN1pSZ6CuX35asYy3HuMQ3lBQ=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/hyprprop";
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
diff --git i/doc/conf.py w/doc/conf.py
|
||||
index 8d042818b..b4f0572bd 100644
|
||||
--- i/doc/conf.py
|
||||
+++ w/doc/conf.py
|
||||
@@ -8,10 +8,6 @@ import yaml
|
||||
from git import Repo
|
||||
import filecmp
|
||||
|
||||
-# Download and link swagger-ui files
|
||||
-if not os.path.isdir('.sphinx/deps/swagger-ui'):
|
||||
- Repo.clone_from('https://github.com/swagger-api/swagger-ui', '.sphinx/deps/swagger-ui', depth=1)
|
||||
-
|
||||
os.makedirs('.sphinx/_static/swagger-ui/', exist_ok=True)
|
||||
|
||||
if not os.path.islink('.sphinx/_static/swagger-ui/swagger-ui-bundle.js'):
|
||||
@@ -151,10 +147,6 @@ if os.path.exists("./related_topics.yaml"):
|
||||
with open("./related_topics.yaml", "r") as fd:
|
||||
myst_substitutions.update(yaml.safe_load(fd.read()))
|
||||
|
||||
-intersphinx_mapping = {
|
||||
- 'cloud-init': ('https://cloudinit.readthedocs.io/en/latest/', None)
|
||||
-}
|
||||
-
|
||||
if ("LOCAL_SPHINX_BUILD" in os.environ) and (os.environ["LOCAL_SPHINX_BUILD"] == "True"):
|
||||
swagger_url_scheme = "/api/#{{path}}"
|
||||
else:
|
||||
@@ -13,6 +13,7 @@
|
||||
buildGoModule,
|
||||
fetchFromGitHub,
|
||||
acl,
|
||||
buildPackages,
|
||||
cowsql,
|
||||
incus-ui-canonical,
|
||||
libcap,
|
||||
@@ -27,11 +28,30 @@
|
||||
|
||||
let
|
||||
pname = "incus${lib.optionalString lts "-lts"}";
|
||||
docsPython = buildPackages.python3.withPackages (
|
||||
py: with py; [
|
||||
furo
|
||||
gitpython
|
||||
linkify-it-py
|
||||
canonical-sphinx-extensions
|
||||
myst-parser
|
||||
pyspelling
|
||||
sphinx
|
||||
sphinx-autobuild
|
||||
sphinx-copybutton
|
||||
sphinx-design
|
||||
sphinx-notfound-page
|
||||
sphinx-remove-toctrees
|
||||
sphinx-reredirects
|
||||
sphinx-tabs
|
||||
sphinxcontrib-jquery
|
||||
sphinxext-opengraph
|
||||
]
|
||||
);
|
||||
in
|
||||
|
||||
buildGoModule rec {
|
||||
buildGoModule (finalAttrs: {
|
||||
inherit
|
||||
patches
|
||||
pname
|
||||
vendorHash
|
||||
version
|
||||
@@ -40,15 +60,18 @@ buildGoModule rec {
|
||||
outputs = [
|
||||
"out"
|
||||
"agent_loader"
|
||||
"doc"
|
||||
];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lxc";
|
||||
repo = "incus";
|
||||
rev = "refs/tags/v${version}";
|
||||
tag = "v${version}";
|
||||
inherit hash;
|
||||
};
|
||||
|
||||
patches = [ ./docs.patch ] ++ patches;
|
||||
|
||||
excludedPackages = [
|
||||
# statically compile these
|
||||
"cmd/incus-agent"
|
||||
@@ -61,6 +84,7 @@ buildGoModule rec {
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
pkg-config
|
||||
docsPython
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
@@ -82,6 +106,13 @@ buildGoModule rec {
|
||||
CGO_LDFLAGS_ALLOW = "(-Wl,-wrap,pthread_create)|(-Wl,-z,now)";
|
||||
|
||||
postBuild = ''
|
||||
# build docs
|
||||
mkdir -p .sphinx/deps
|
||||
ln -s ${buildPackages.python3.pkgs.swagger-ui-bundle.src} .sphinx/deps/swagger-ui
|
||||
substituteInPlace Makefile --replace-fail '. $(SPHINXENV) ; ' ""
|
||||
make doc-incremental
|
||||
|
||||
# build some static executables
|
||||
make incus-agent incus-migrate
|
||||
'';
|
||||
|
||||
@@ -111,18 +142,20 @@ buildGoModule rec {
|
||||
cp internal/server/instance/drivers/agent-loader/systemd/incus-agent.service $agent_loader/etc/systemd/system/
|
||||
cp internal/server/instance/drivers/agent-loader/systemd/incus-agent.rules $agent_loader/lib/udev/rules.d/99-incus-agent.rules
|
||||
substituteInPlace $agent_loader/etc/systemd/system/incus-agent.service --replace-fail 'TARGET/systemd' "$agent_loader/bin"
|
||||
|
||||
mkdir $doc
|
||||
cp -R doc/html $doc/
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
client = callPackage ./client.nix {
|
||||
inherit
|
||||
lts
|
||||
meta
|
||||
patches
|
||||
src
|
||||
vendorHash
|
||||
version
|
||||
;
|
||||
inherit (finalAttrs) meta src;
|
||||
};
|
||||
|
||||
tests = if lts then nixosTests.incus-lts.all else nixosTests.incus.all;
|
||||
@@ -143,4 +176,4 @@ buildGoModule rec {
|
||||
platforms = lib.platforms.linux;
|
||||
mainProgram = "incus";
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -2,39 +2,38 @@
|
||||
lib,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
stdenv,
|
||||
darwin,
|
||||
versionCheckHook,
|
||||
nix-update-script,
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "jnv";
|
||||
version = "0.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ynqa";
|
||||
repo = "jnv";
|
||||
rev = "v${version}";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-HKZ+hF5Y7vTA4EODSAd9xYJHaipv5YukTl470ejPLtM=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-VLVoURqmUhhekNZ0a75bwjvSiLfaQ79IlltbmWVyBrI=";
|
||||
|
||||
buildInputs = lib.optional stdenv.hostPlatform.isDarwin (
|
||||
with darwin.apple_sdk.frameworks;
|
||||
[
|
||||
CoreGraphics
|
||||
AppKit
|
||||
]
|
||||
);
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
versionCheckProgramArg = "--version";
|
||||
doInstallCheck = true;
|
||||
|
||||
meta = with lib; {
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Interactive JSON filter using jq";
|
||||
mainProgram = "jnv";
|
||||
homepage = "https://github.com/ynqa/jnv";
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [
|
||||
license = with lib.licenses; [ mit ];
|
||||
maintainers = with lib.maintainers; [
|
||||
nealfennimore
|
||||
nshalman
|
||||
];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -12,17 +12,17 @@
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "kanata";
|
||||
version = "1.8.0";
|
||||
version = "1.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jtroo";
|
||||
repo = "kanata";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-RTFP063NGNfjlOlZ4wghpcUQEmmj73Xlu3KPIxeUI/I=";
|
||||
sha256 = "sha256-w/PeSqj51gJOWmAV5UPMprntdzinX/IL49D2ZUMfeSM=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-/r4u7pM7asCvG3LkbuP1Y63WVls1uZtV/L3cSOzUXr4=";
|
||||
cargoHash = "sha256-T9fZxv3aujYparzVphfYBJ+5ti/T1VkeCeCqWPyllY8=";
|
||||
|
||||
buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
apple-sdk_13
|
||||
|
||||
@@ -1,45 +1,74 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
pkg-config,
|
||||
perl,
|
||||
udev,
|
||||
openssl,
|
||||
gitMinimal,
|
||||
writableTmpDirAsHomeHook,
|
||||
installShellFiles,
|
||||
versionCheckHook,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "koji";
|
||||
version = "2.2.0";
|
||||
version = "3.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "its-danny";
|
||||
owner = "cococonscious";
|
||||
repo = "koji";
|
||||
rev = version;
|
||||
hash = "sha256-2kBjHX7izo4loJ8oyPjE9FtCvUODC3Sm4T8ETIdeGZM=";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-+xtq4btFbOfiyFMDHXo6riSBMhAwTLQFuE91MUHtg5Q=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-ZHti7nMfHiYur1kjxj+ySIF4/l0UU9q2urabUWZyk6E=";
|
||||
cargoHash = "sha256-WiFXDXLJc2ictv29UoRFRpIpAqeJlEBEOvThXhLXLJA=";
|
||||
|
||||
OPENSSL_NO_VENDOR = 1;
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
perl
|
||||
udev
|
||||
installShellFiles
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
openssl.dev
|
||||
openssl
|
||||
] ++ lib.optionals stdenv.hostPlatform.isLinux [ udev ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
gitMinimal
|
||||
writableTmpDirAsHomeHook
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
preCheck = ''
|
||||
git config --global user.name 'nix-user'
|
||||
git config --global user.email 'nix-user@example.com'
|
||||
'';
|
||||
|
||||
postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
|
||||
installShellCompletion --cmd koji \
|
||||
--bash <($out/bin/koji completions bash) \
|
||||
--fish <($out/bin/koji completions fish) \
|
||||
--zsh <($out/bin/koji completions zsh)
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
versionCheckProgram = "${placeholder "out"}/bin/${finalAttrs.meta.mainProgram}";
|
||||
|
||||
meta = {
|
||||
description = "Interactive CLI for creating conventional commits";
|
||||
homepage = "https://github.com/its-danny/koji";
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ ByteSudoer ];
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [
|
||||
ByteSudoer
|
||||
WeetHet
|
||||
];
|
||||
mainProgram = "koji";
|
||||
platforms = platforms.unix;
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "krep";
|
||||
version = "0.3.4";
|
||||
version = "0.3.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "davidesantangelo";
|
||||
repo = "krep";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-kAsOAcEFjfxlJs6fJvB0viCMxGFCG1BUs9qPgGMvBpM=";
|
||||
hash = "sha256-wfMNyqZgqoEkp51gompWUn65kaeVZIMfvo0VStW4EPA=";
|
||||
};
|
||||
|
||||
makeFlags = [
|
||||
|
||||
@@ -34,11 +34,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lighttpd";
|
||||
version = "1.4.78";
|
||||
version = "1.4.79";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.lighttpd.net/lighttpd/releases-${lib.versions.majorMinor version}.x/${pname}-${version}.tar.xz";
|
||||
sha256 = "sha256-PAc56Lx1yen8HPqJ4cME3UsOSruHrcZGodILxqLbKj4=";
|
||||
sha256 = "sha256-OymmJbOtiHAtH+pPX0K7fYdIjy5O/Jd9fxhTKcpghL0=";
|
||||
};
|
||||
|
||||
separateDebugInfo = true;
|
||||
|
||||
@@ -19,24 +19,28 @@
|
||||
cargo,
|
||||
rustPlatform,
|
||||
rustc,
|
||||
libunistring,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lnav";
|
||||
version = "0.12.3";
|
||||
version = "0.12.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tstack";
|
||||
repo = "lnav";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-m0r7LAo9pYFpS+oimVCNCipojxPzMMsLLjhjkitEwow=";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-XS3/km2sJwRnWloLKu9X9z07+qBFRfUsaRpZVYjoclI=";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
separateDebugInfo = true;
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoconf
|
||||
automake
|
||||
@@ -47,6 +51,7 @@ stdenv.mkDerivation rec {
|
||||
rustPlatform.cargoSetupHook
|
||||
rustc
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
[
|
||||
bzip2
|
||||
@@ -56,14 +61,15 @@ stdenv.mkDerivation rec {
|
||||
sqlite
|
||||
curl
|
||||
libarchive
|
||||
libunistring
|
||||
]
|
||||
++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
|
||||
gpm
|
||||
];
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoVendor {
|
||||
src = "${src}/src/third-party/prqlc-c";
|
||||
hash = "sha256-jfmr6EuNW2mEHTEVHn6YnBDMzKxKI097vEFHXC4NT2Y=";
|
||||
src = "${finalAttrs.src}/src/third-party/prqlc-c";
|
||||
hash = "sha256-svi+C3ELw6Ly0mtji8xOv+DDqR0z5shFNazHa3kDQVg=";
|
||||
};
|
||||
|
||||
cargoRoot = "src/third-party/prqlc-c";
|
||||
@@ -74,7 +80,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
homepage = "https://github.com/tstack/lnav";
|
||||
description = "Logfile Navigator";
|
||||
longDescription = ''
|
||||
@@ -87,14 +93,13 @@ stdenv.mkDerivation rec {
|
||||
will allow the user to quickly and efficiently zero in on problems.
|
||||
'';
|
||||
downloadPage = "https://github.com/tstack/lnav/releases";
|
||||
license = licenses.bsd2;
|
||||
maintainers = with maintainers; [
|
||||
license = lib.licenses.bsd2;
|
||||
maintainers = with lib.maintainers; [
|
||||
dochang
|
||||
symphorien
|
||||
pcasaretto
|
||||
];
|
||||
platforms = platforms.unix;
|
||||
platforms = lib.platforms.unix;
|
||||
mainProgram = "lnav";
|
||||
};
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "lokalise2-cli";
|
||||
version = "3.1.1";
|
||||
version = "3.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lokalise";
|
||||
repo = "lokalise-cli-2-go";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-CFZB1nELQOBNOuISTjes4vhXMr8Pjq4Rj83nq/FfpMY=";
|
||||
sha256 = "sha256-R8vzHuWkNznq/eeXUVHm9SJJmRV2B2WXKQFEHil+HiY=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-sM4v1EWxXPUFKFWcl9EBc8ZTmm2STOVoeGH9Zv+KEng=";
|
||||
vendorHash = "sha256-thD8NtG9uVI4KwNQiNsVCUdyUcgAmnr+szsUQ2Ika1c=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
||||
@@ -25,13 +25,13 @@
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "mangojuice";
|
||||
version = "0.8.2";
|
||||
version = "0.8.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "radiolamp";
|
||||
repo = "mangojuice";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-NpNsYwktcce9R1LpoIL2vh5UzsgDqdPyS0D3mhM3F0w=";
|
||||
hash = "sha256-373Ws+U7fuwWLrKOnj1dD9gIJPKOd1b6I78VWOtOjTM=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -80,6 +80,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
meta = {
|
||||
description = "Convenient alternative to GOverlay for setting up MangoHud";
|
||||
homepage = "https://github.com/radiolamp/mangojuice";
|
||||
changelog = "https://github.com/radiolamp/mangojuice/releases/tag/${finalAttrs.version}";
|
||||
license = with lib.licenses; [ gpl3Only ];
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [
|
||||
|
||||
@@ -1,26 +1,27 @@
|
||||
{
|
||||
lib,
|
||||
python3,
|
||||
fetchFromGitHub,
|
||||
|
||||
python3Packages,
|
||||
}:
|
||||
|
||||
with python3.pkgs;
|
||||
buildPythonApplication rec {
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "mapproxy";
|
||||
version = "3.1.3";
|
||||
version = "4.0.1";
|
||||
disabled = python3Packages.pythonOlder "3.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mapproxy";
|
||||
repo = "mapproxy";
|
||||
tag = version;
|
||||
hash = "sha256-Dltr4JlgE1aJfSybTbAxlUyjqkfaobupNNSj90j9taE=";
|
||||
hash = "sha256-bqM25exBPUB7hFtseWMw4Q1W6IeHLx+JrplOkZVEIl0=";
|
||||
};
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace mapproxy/util/ext/serving.py --replace "args = [sys.executable] + sys.argv" "args = sys.argv"
|
||||
'';
|
||||
|
||||
dependencies = [
|
||||
dependencies = with python3Packages; [
|
||||
boto3 # needed for caches service
|
||||
future
|
||||
jsonschema
|
||||
@@ -33,13 +34,10 @@ buildPythonApplication rec {
|
||||
setuptools
|
||||
werkzeug
|
||||
];
|
||||
|
||||
# Tests are disabled:
|
||||
# 1) Dependency list is huge.
|
||||
# https://github.com/mapproxy/mapproxy/blob/master/requirements-tests.txt
|
||||
#
|
||||
# 2) There are security issues with package Riak
|
||||
# https://github.com/NixOS/nixpkgs/issues/33876
|
||||
# https://github.com/NixOS/nixpkgs/pull/56480
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -3,17 +3,20 @@
|
||||
stdenv,
|
||||
fetchurl,
|
||||
makeWrapper,
|
||||
jdk11,
|
||||
jre_headless,
|
||||
nixosTests,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
let
|
||||
jre = jre_headless;
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "metabase";
|
||||
version = "0.52.8";
|
||||
version = "0.54.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://downloads.metabase.com/v${version}/metabase.jar";
|
||||
hash = "sha256-Z14BuKaSAMzlgdtqppc/3ItCxVZwE4E1EQUVMVR6JwQ=";
|
||||
url = "https://downloads.metabase.com/v${finalAttrs.version}/metabase.jar";
|
||||
hash = "sha256-gHLugoL3wCvlCzN2fNJtCt+1iSW+kKPzWPpqqHAn/D0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
@@ -22,12 +25,12 @@ stdenv.mkDerivation rec {
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
makeWrapper ${jdk11}/bin/java $out/bin/metabase --add-flags "-jar $src"
|
||||
makeWrapper ${lib.getExe jre} $out/bin/metabase --add-flags "-jar $src"
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Easy, open source way for everyone in your company to ask questions and learn from data";
|
||||
description = "Business Intelligence and Embedded Analytics tool";
|
||||
homepage = "https://metabase.com";
|
||||
sourceProvenance = with sourceTypes; [ binaryBytecode ];
|
||||
license = licenses.agpl3Only;
|
||||
@@ -42,4 +45,4 @@ stdenv.mkDerivation rec {
|
||||
passthru.tests = {
|
||||
inherit (nixosTests) metabase;
|
||||
};
|
||||
}
|
||||
})
|
||||
@@ -8,11 +8,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "mill";
|
||||
version = "0.12.9";
|
||||
version = "0.12.10";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://repo1.maven.org/maven2/com/lihaoyi/mill-dist/${finalAttrs.version}/mill-dist-${finalAttrs.version}-assembly.jar";
|
||||
hash = "sha256-Ntqzivy8dfsRlBclPNsWOZ4h1Xk7D3UJV7GLVGIEcAU=";
|
||||
hash = "sha256-TESwISFz4Xf/F4kgnaTQbi/uVrc75bearih8mydPqHM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
@@ -12,13 +12,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "moosefs";
|
||||
version = "4.57.5";
|
||||
version = "4.57.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "moosefs";
|
||||
repo = "moosefs";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-5sVnr+bUbmIc4qYC/h+d/s1ow3cxeL2Yo/JitCs6cbE=";
|
||||
sha256 = "sha256-vCwRM6UIcT71e6u5QZzcTW6LK/VNlVG/19XxsHnn2a8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -6,57 +6,55 @@
|
||||
nix-prefetch-git,
|
||||
nixpkgs-review,
|
||||
python3Packages,
|
||||
nix-update,
|
||||
}:
|
||||
|
||||
let
|
||||
self = python3Packages.buildPythonApplication {
|
||||
pname = "nix-update";
|
||||
version = "1.10.0";
|
||||
pyproject = true;
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "nix-update";
|
||||
version = "1.11.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Mic92";
|
||||
repo = "nix-update";
|
||||
tag = self.version;
|
||||
hash = "sha256-fGs/EdCEoDA9N5gPtHU6CaDZo9e/aqW6pm6atsjK7PI=";
|
||||
};
|
||||
|
||||
build-system = [ python3Packages.setuptools ];
|
||||
|
||||
makeWrapperArgs = [
|
||||
"--prefix"
|
||||
"PATH"
|
||||
":"
|
||||
(lib.makeBinPath [
|
||||
nix
|
||||
nix-prefetch-git
|
||||
nixpkgs-review
|
||||
])
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
|
||||
$out/bin/nix-update --help >/dev/null
|
||||
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
nix-update-script = callPackage ./nix-update-script.nix { nix-update = self; };
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Swiss-knife for updating nix packages";
|
||||
homepage = "https://github.com/Mic92/nix-update/";
|
||||
changelog = "https://github.com/Mic92/nix-update/releases/tag/${self.version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [
|
||||
figsoda
|
||||
mic92
|
||||
];
|
||||
mainProgram = "nix-update";
|
||||
};
|
||||
src = fetchFromGitHub {
|
||||
owner = "Mic92";
|
||||
repo = "nix-update";
|
||||
tag = version;
|
||||
hash = "sha256-G5YehePEMhTgxCnLp8Dg+bDHvOe+QltlCkQHVwMtYx0=";
|
||||
};
|
||||
in
|
||||
self
|
||||
|
||||
build-system = [ python3Packages.setuptools ];
|
||||
|
||||
makeWrapperArgs = [
|
||||
"--prefix"
|
||||
"PATH"
|
||||
":"
|
||||
(lib.makeBinPath [
|
||||
nix
|
||||
nix-prefetch-git
|
||||
nixpkgs-review
|
||||
])
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
|
||||
$out/bin/nix-update --help >/dev/null
|
||||
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
nix-update-script = callPackage ./nix-update-script.nix { inherit nix-update; };
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Swiss-knife for updating nix packages";
|
||||
homepage = "https://github.com/Mic92/nix-update/";
|
||||
changelog = "https://github.com/Mic92/nix-update/releases/tag/${version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [
|
||||
figsoda
|
||||
mic92
|
||||
];
|
||||
mainProgram = "nix-update";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1 +1 @@
|
||||
2025-03-03
|
||||
2025-04-04
|
||||
|
||||
@@ -25,8 +25,8 @@ mkDerivation {
|
||||
pname = "nixfmt";
|
||||
version = "0.6.0";
|
||||
src = fetchzip {
|
||||
url = "https://github.com/nixos/nixfmt/archive/3261d1016ecc753c59ff92767a257f91b587e705.tar.gz";
|
||||
sha256 = "0jk6mgp710iwxyc7wa5kzz0p0rpcwbbs21smnv14cyii0jniz42s";
|
||||
url = "https://github.com/nixos/nixfmt/archive/65af4b69133d19f534d97746c97c2d5b464f43b4.tar.gz";
|
||||
sha256 = "0l0w3janvss1n1j7qkcml97zndm2jm2gbrzzs9d8l0ixnrw0cd5r";
|
||||
};
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
|
||||
@@ -61,9 +61,9 @@ let
|
||||
mkdir -p var/lib/onlyoffice/ var/www/onlyoffice/documentserver/fonts/
|
||||
|
||||
# see usr/bin/documentserver-flush-cache.sh
|
||||
cp var/www/onlyoffice/documentserver/web-apps/apps/api/documents/api.js.tpl var/www/onlyoffice/documentserver/web-apps/apps/api/documents/api.js
|
||||
HASH=$(basename $out | cut -d '-' -f 1)
|
||||
sed -i "s/{{HASH_POSTFIX}}/$HASH/g" var/www/onlyoffice/documentserver/web-apps/apps/api/documents/api.js
|
||||
cp var/www/onlyoffice/documentserver/web-apps/apps/api/documents/api.js{.tpl,}
|
||||
substituteInPlace var/www/onlyoffice/documentserver/web-apps/apps/api/documents/api.js \
|
||||
--replace-fail '{{HASH_POSTFIX}}' "$(basename $out | cut -d '-' -f 1)"
|
||||
|
||||
mv * $out/
|
||||
'';
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
fetchpatch,
|
||||
cmake,
|
||||
ninja,
|
||||
rapidjson,
|
||||
tcl,
|
||||
tk,
|
||||
libGL,
|
||||
@@ -48,9 +49,11 @@ stdenv.mkDerivation rec {
|
||||
libXext
|
||||
libXmu
|
||||
libXi
|
||||
rapidjson
|
||||
] ++ lib.optional stdenv.hostPlatform.isDarwin darwin.apple_sdk.frameworks.Cocoa;
|
||||
|
||||
NIX_CFLAGS_COMPILE = [ "-fpermissive" ];
|
||||
cmakeFlags = [ "-DUSE_RAPIDJSON=ON" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Open CASCADE Technology, libraries for 3D modeling and numerical simulation";
|
||||
|
||||
@@ -9,16 +9,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "paretosecurity";
|
||||
version = "0.0.96";
|
||||
version = "0.1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ParetoSecurity";
|
||||
repo = "agent";
|
||||
rev = version;
|
||||
hash = "sha256-SyeIGSDvrnOvyOJ0zC8CulpaMa+iZeRaMTJUSydz2tw=";
|
||||
hash = "sha256-ovyfHqLCf5U3UR1HfoA+UQhqLZ6IaILcpqptPRQsb60=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-O/OF3Y6HiiikMxf657k9eIM7UfkicIImAUxVVf/TgR8=";
|
||||
vendorHash = "sha256-7mKAFkKGpBOjXc3J/sfF3k3pJF53tFybXZgbfJInuSY=";
|
||||
proxyVendor = true;
|
||||
|
||||
ldflags = [
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "plemoljp-hs";
|
||||
version = "2.0.3";
|
||||
version = "2.0.4";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/yuru7/PlemolJP/releases/download/v${version}/PlemolJP_HS_v${version}.zip";
|
||||
hash = "sha256-rKWZMIK6TP6IV6KjFGuZE2S6IiMtjtHZeWM44tULduk=";
|
||||
hash = "sha256-+pRbMgRaIbsXo8e7rQre377F8LhbK9rBjG/vYrdeFQM=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "plemoljp";
|
||||
version = "2.0.3";
|
||||
version = "2.0.4";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/yuru7/PlemolJP/releases/download/v${version}/PlemolJP_v${version}.zip";
|
||||
hash = "sha256-cT2BpD2PoAd38uYCQlq5fv9NYgwInblrYdK/XDEmOWI=";
|
||||
hash = "sha256-pajE86IK05mm3Z507bvoMGy8JJwuGWZnUiSrXndiBTk=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
||||
@@ -0,0 +1,119 @@
|
||||
{
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
buildGoModule,
|
||||
buildNpmPackage,
|
||||
fetchurl,
|
||||
makeWrapper,
|
||||
nodejs,
|
||||
stdenvNoCC,
|
||||
nixosTests,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
let
|
||||
version = "0.45.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "pocket-id";
|
||||
repo = "pocket-id";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-x5Y3ArkIPxiE6avk9DNyFdfkc/pY6h3JH3PZCS8U/GM=";
|
||||
};
|
||||
|
||||
backend = buildGoModule {
|
||||
pname = "pocket-id-backend";
|
||||
inherit version src;
|
||||
|
||||
sourceRoot = "${src.name}/backend";
|
||||
|
||||
vendorHash = "sha256-mqpBP+A2X5ome1Ppg/Kki0C+A77jFtWzUjI/RN+ZCzg=";
|
||||
|
||||
preFixup = ''
|
||||
mv $out/bin/cmd $out/bin/pocket-id-backend
|
||||
'';
|
||||
};
|
||||
|
||||
frontend = buildNpmPackage (finalAttrs: {
|
||||
pname = "pocket-id-frontend";
|
||||
inherit version src;
|
||||
|
||||
sourceRoot = "${src.name}/frontend";
|
||||
|
||||
npmDepsHash = "sha256-cpmZzlz+wusfRLN4iIGdk+I4SWrX/gk2fbhg+Gg3paw=";
|
||||
npmFlags = [ "--legacy-peer-deps" ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
# even though vite build creates most of the minified js files,
|
||||
# it still needs a few packages from node_modules, try to strip that
|
||||
npm prune --omit=dev --omit=optional $npmFlags
|
||||
# larger seemingly unused packages
|
||||
rm -r node_modules/{lucide-svelte,bits-ui,jiti,@swc,.bin}
|
||||
# unused file types
|
||||
for pattern in '*.map' '*.map.js' '*.ts'; do
|
||||
find . -type f -name "$pattern" -exec rm {} +
|
||||
done
|
||||
|
||||
mkdir -p $out/{bin,lib/pocket-id-frontend}
|
||||
cp -r build $out/lib/pocket-id-frontend/dist
|
||||
cp -r node_modules $out/lib/pocket-id-frontend/node_modules
|
||||
makeWrapper ${lib.getExe nodejs} $out/bin/pocket-id-frontend \
|
||||
--add-flags $out/lib/pocket-id-frontend/dist/index.js
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
});
|
||||
|
||||
in
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "pocket-id";
|
||||
inherit
|
||||
version
|
||||
src
|
||||
backend
|
||||
frontend
|
||||
;
|
||||
|
||||
dontUnpack = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin
|
||||
ln -s ${backend}/bin/pocket-id-backend $out/bin/pocket-id-backend
|
||||
ln -s ${frontend}/bin/pocket-id-frontend $out/bin/pocket-id-frontend
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
tests = {
|
||||
inherit (nixosTests) pocket-id;
|
||||
};
|
||||
updateScript = nix-update-script {
|
||||
extraArgs = [
|
||||
"--subpackage"
|
||||
"backend"
|
||||
"--subpackage"
|
||||
"frontend"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "OIDC provider with passkeys support";
|
||||
homepage = "https://pocket-id.org";
|
||||
changelog = "https://github.com/pocket-id/pocket-id/releases/tag/v${version}";
|
||||
license = lib.licenses.bsd2;
|
||||
maintainers = with lib.maintainers; [
|
||||
gepbird
|
||||
ymstnt
|
||||
];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
@@ -42,12 +42,12 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rabbitmq-server";
|
||||
version = "4.0.7";
|
||||
version = "4.0.8";
|
||||
|
||||
# when updating, consider bumping elixir version in all-packages.nix
|
||||
src = fetchurl {
|
||||
url = "https://github.com/rabbitmq/rabbitmq-server/releases/download/v${version}/${pname}-${version}.tar.xz";
|
||||
hash = "sha256-ScqNRa1itxawGyRruNihA60xbltw7Lek36SP9Nd+LfI=";
|
||||
hash = "sha256-FWB5riSCb8WsGLfNJO6SZRtQxvHpwea+YosvvU8iqng=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -8,16 +8,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "rain";
|
||||
version = "1.21.0";
|
||||
version = "1.22.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aws-cloudformation";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-2yb965fDzNgrPXT2xMRdqD/inyvlwdKlkMj16YSFHBk=";
|
||||
sha256 = "sha256-0FjJXOmLHM0At0TJdcsYTafgDbw+C37BH11ft+UjEl0=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-TlS9SfqMJa5w+JMUx+7ZMF0xk/VsnjOScSGXEw1dVkU=";
|
||||
vendorHash = "sha256-A+fQCiA2jArnhxbKxNmRQB6wY5mcmrY+fMtZQX5aBmU=";
|
||||
|
||||
subPackages = [ "cmd/rain" ];
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
curl,
|
||||
cmake,
|
||||
ninja,
|
||||
deterministic-host-uname,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
@@ -29,6 +30,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
ninja
|
||||
# cross: build system uses uname to determine host system
|
||||
deterministic-host-uname
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
|
||||
@@ -34,7 +34,7 @@ in
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "refine";
|
||||
version = "0.5.5";
|
||||
version = "0.5.6";
|
||||
pyproject = false; # uses meson
|
||||
|
||||
src = fetchFromGitLab {
|
||||
@@ -42,7 +42,7 @@ python3Packages.buildPythonApplication rec {
|
||||
owner = "TheEvilSkeleton";
|
||||
repo = "Refine";
|
||||
tag = version;
|
||||
hash = "sha256-b2dNhd5UJqH/l5BOEgcOUZrhCZa8ErdBzNw5g4VjtM8=";
|
||||
hash = "sha256-cIJWTzeLm2YP8Pm/nzcYHIGzBOmQlPe0lQ+b6BufIMg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
}:
|
||||
let
|
||||
pname = "remnote";
|
||||
version = "1.18.49";
|
||||
version = "1.19.8";
|
||||
src = fetchurl {
|
||||
url = "https://download2.remnote.io/remnote-desktop2/RemNote-${version}.AppImage";
|
||||
hash = "sha256-LSjPQbRYl61c7I/TT0ePSoXkXqiVuCD8RdaFFJsK02M=";
|
||||
hash = "sha256-xMr+UftIWxtlYzzdOtidCJWisSwJd+xEtaKyoZnyVXc=";
|
||||
};
|
||||
appimageContents = appimageTools.extractType2 { inherit pname version src; };
|
||||
in
|
||||
|
||||
@@ -10,16 +10,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "rmfakecloud";
|
||||
version = "0.0.23";
|
||||
version = "0.0.24";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ddvk";
|
||||
repo = "rmfakecloud";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-XlKqh6GKGreWLPjS8XfEUJCMMxiOw8pP2qX8otD+RCo=";
|
||||
hash = "sha256-ZsYq1+Bb6SyMGdbiy5UzanDiUiFOt4uhttiPKC0ESis=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-9tfxE03brUvCYusmewiqNpCkKyIS9qePqylrzDWrJLY=";
|
||||
vendorHash = "sha256-S2P80uhX86IVUVEoR4tZ7e6qMe7CK+6bmmjBgjXGZmo=";
|
||||
|
||||
# if using webUI build it
|
||||
# use env because of https://github.com/NixOS/nixpkgs/issues/358844
|
||||
|
||||
+2
-2
@@ -9,13 +9,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rssguard";
|
||||
version = "4.8.1";
|
||||
version = "4.8.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "martinrotter";
|
||||
repo = pname;
|
||||
tag = version;
|
||||
sha256 = "sha256-qWxcjGl4EaLXZ0q6RVy+IKyBcqlx/yYojlGivSXy5Io=";
|
||||
sha256 = "sha256-C5iA5qK8+FhCUeFtyskY/vd4evaYS3TY1SHAc83/36w=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
@@ -6,15 +6,15 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "svd2rust";
|
||||
version = "0.36.0";
|
||||
version = "0.36.1";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit pname version;
|
||||
hash = "sha256-HdE4XWAM1e25kRwryMzGqo2sUpzgwk2aiWsi+qXZ7bU=";
|
||||
hash = "sha256-+wVcUpSlJsd6GAZgBor7eAu6IYnlfJwzZDYKqUKpa9M=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-JiGTGdrudmDCNmJOtHgIBwTVCLB3m4RCqxlypa2KdDQ=";
|
||||
cargoHash = "sha256-rZusngSIwdDfNe7tIA2WtIzzje6UBxyz/hfeRLqJHUY=";
|
||||
|
||||
# error: linker `aarch64-linux-gnu-gcc` not found
|
||||
postPatch = ''
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "tagparser";
|
||||
version = "12.4.0";
|
||||
version = "12.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Martchus";
|
||||
repo = "tagparser";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-wVdE1lgSQsH4g10/lxa8bZlYT141Vd7gRhefxyz8kRM=";
|
||||
hash = "sha256-Xu6pvqyBWew3xD0nD5k7QKUOEpDchF1FiuSN7oHfYME=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
@@ -5,16 +5,16 @@
|
||||
}:
|
||||
buildGoModule rec {
|
||||
pname = "tfswitch";
|
||||
version = "1.4.2";
|
||||
version = "1.4.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "warrensbox";
|
||||
repo = "terraform-switcher";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-y9MoDtF0104HRjDqpRuMfBbsNqseynq2azKnXNdRhso=";
|
||||
sha256 = "sha256-5Zyu0SLF+xjemFKInzRKCcDZs72gwAJN7bacO+5StMg=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-m3QzNSAcUrI4Pg7LMDZftlBbk4Uhjirc6eNSrQxxwLA=";
|
||||
vendorHash = "sha256-EjbS+1osM6Qauoi95JHLOdxeLOz0Jgz6ZaTFtfs6IgM=";
|
||||
|
||||
# Disable tests since it requires network access and relies on the
|
||||
# presence of release.hashicorp.com
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "tippecanoe";
|
||||
version = "2.75.1";
|
||||
version = "2.77.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "felt";
|
||||
repo = "tippecanoe";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-rBuk34lOrp9aW7yK0LOTRqFJg3J8IogR01kcFhgK12Y=";
|
||||
hash = "sha256-7yRrUn1U0iERlix/8/oaMaizlpzqdiSIHj298ykaJjE=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
||||
@@ -8,18 +8,18 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "trdl-client";
|
||||
version = "0.8.7";
|
||||
version = "0.9.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "werf";
|
||||
repo = "trdl";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-4RN2vrTP4horjDvuuFJbQhToL/4boIuaG+efoTbmebI=";
|
||||
hash = "sha256-f7gyGGClMk/5+FCivuLasiIG/Ty17yeJ8qQ/GVEbC14=";
|
||||
};
|
||||
|
||||
sourceRoot = "${src.name}/client";
|
||||
|
||||
vendorHash = "sha256-f7FPeR+us3WvwqzcSQLbkKv905CCIAAm+HNV2FFF8OY=";
|
||||
vendorHash = "sha256-veSgWyk1ytHRNHuuZJBV+1rqGDsdEb01CImm+EexFCk=";
|
||||
|
||||
subPackages = [ "cmd/trdl" ];
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
rec {
|
||||
version = "0.14.1";
|
||||
version = "0.15.0";
|
||||
tag = version;
|
||||
hash = "sha256-+FiJYxB2Lb1B7l9QEuB/XzdEYgJZmYAQpKimRIhWwhc=";
|
||||
cargoHash = "sha256-bDj7pvZORP1cc2PXd1W9TWptWCvIKW9TXzaQAmni6hg=";
|
||||
hash = "sha256-XjU8XPi8jTydJ439X6hjyZhXho2zbtt4Fqq3uIQg09M=";
|
||||
cargoHash = "sha256-tMNIk52nq4dYfJU+nP2IKW21ex13YdrDvrEm2GSAAF4=";
|
||||
updateScript = ./update-stable.sh;
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
rec {
|
||||
version = "0.15.0-rc.2";
|
||||
version = "0.15.0";
|
||||
tag = version;
|
||||
hash = "sha256-nGuSofBDstaBJNRS6MHdSD6nXyUqkGE/rcnAjaJICtk=";
|
||||
cargoHash = "sha256-FzO5YOYrnwfcdrQHMJR5dR2qdFNL3Jfmyqpu1iPeN2o=";
|
||||
hash = "sha256-XjU8XPi8jTydJ439X6hjyZhXho2zbtt4Fqq3uIQg09M=";
|
||||
cargoHash = "sha256-tMNIk52nq4dYfJU+nP2IKW21ex13YdrDvrEm2GSAAF4=";
|
||||
updateScript = ./update-unstable.sh;
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "vale";
|
||||
version = "3.11.0";
|
||||
version = "3.11.1";
|
||||
|
||||
subPackages = [ "cmd/vale" ];
|
||||
|
||||
@@ -19,7 +19,7 @@ buildGoModule rec {
|
||||
owner = "errata-ai";
|
||||
repo = "vale";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-NJ8QmF2ZGlbkHhc0OQSVl11pQDHO88KL/MLr+8ABLYs=";
|
||||
hash = "sha256-UPbeml7W90ICmbDjvNIy+DmolAAYF6Tci4R/kZa5cr8=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-Zhhp/qbwGTQEZ28S+p7GJodwQcnkFNqNU7WCZKdeoz0=";
|
||||
|
||||
@@ -12,13 +12,13 @@ let
|
||||
in
|
||||
buildDotnetModule (finalAttrs: {
|
||||
pname = "yafc-ce";
|
||||
version = "2.10.0";
|
||||
version = "2.11.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "shpaass";
|
||||
repo = "yafc-ce";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-AFFu4yqnBq0OD3XY1V97zxAIfZuXswT9KOJzU8GqQuU";
|
||||
hash = "sha256-jWJOJ00VXBaHogm3xUsV9Shvv9islRA+Z4fkln5VuWM=";
|
||||
};
|
||||
|
||||
projectFile = [ "Yafc/Yafc.csproj" ];
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
stdenv,
|
||||
darwin,
|
||||
mpv,
|
||||
youtube-dl,
|
||||
yt-dlp,
|
||||
makeBinaryWrapper,
|
||||
}:
|
||||
|
||||
@@ -49,7 +49,7 @@ rustPlatform.buildRustPackage rec {
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/ytui_music \
|
||||
--prefix PATH : ${lib.makeBinPath [ youtube-dl ]}
|
||||
--prefix PATH : ${lib.makeBinPath [ yt-dlp ]}
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
|
||||
@@ -16,18 +16,18 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "zigbee2mqtt";
|
||||
version = "2.2.0";
|
||||
version = "2.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Koenkk";
|
||||
repo = "zigbee2mqtt";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-Tkfly1icG/T/szkziXABtG0tvvgq/evJ3qN7ShYtdAM=";
|
||||
hash = "sha256-hct761D92PqgiXUtclk/X2ifySSSta7dgDQEibqPBaM=";
|
||||
};
|
||||
|
||||
pnpmDeps = pnpm.fetchDeps {
|
||||
inherit (finalAttrs) pname version src;
|
||||
hash = "sha256-uFFLXEByK9fpMQone7hodrQyAtRBc5Tk3u+Jtq0MkyA=";
|
||||
hash = "sha256-0ophLiyTbdYEZcm4nO63OCRxENr5X2CXepHkfy1+QJM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
bison,
|
||||
flex,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "zrc";
|
||||
version = "2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Edd12321";
|
||||
repo = "zrc";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-prUbuXyhIJczCvjqwm9pp2n75LY10+6SzYaOHd+S748=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
bison
|
||||
flex
|
||||
];
|
||||
|
||||
makeFlags = [ "PREFIX=$(out)" ];
|
||||
|
||||
meta = {
|
||||
description = "UNIX shell and scripting language with syntax similar to Tcl";
|
||||
homepage = "https://github.com/Edd12321/zrc";
|
||||
license = lib.licenses.bsd2;
|
||||
maintainers = with lib.maintainers; [ fgaz ];
|
||||
mainProgram = "zrc";
|
||||
platforms = lib.platforms.all;
|
||||
broken = stdenv.hostPlatform.isDarwin;
|
||||
};
|
||||
})
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user