mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-27 01:13:05 +00:00
Merge master into haskell-updates
This commit is contained in:
commit
21588b3902
@ -10533,6 +10533,15 @@
|
||||
githubId = 70764075;
|
||||
name = "kud";
|
||||
};
|
||||
kugland = {
|
||||
email = "kugland@gmail.com";
|
||||
github = "kugland";
|
||||
githubId = 1173932;
|
||||
name = "André Kugland";
|
||||
keys = [{
|
||||
fingerprint = "6A62 5E60 E3FF FCAE B3AA 50DC 1DA9 3817 80CD D833";
|
||||
}];
|
||||
};
|
||||
kupac = {
|
||||
github = "Kupac";
|
||||
githubId = 8224569;
|
||||
|
@ -150,6 +150,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
|
||||
|
||||
- `paperless`' `services.paperless.extraConfig` setting has been removed and converted to the freeform type and option named `services.paperless.settings`.
|
||||
|
||||
- `services.homepage-dashboard` now takes it's configuration using native Nix expressions, rather than dumping templated configurations into `/var/lib/homepage-dashboard` where they were previously managed manually. There are now new options which allow the configuration of bookmarks, services, widgets and custom CSS/JS natively in Nix.
|
||||
|
||||
- The legacy and long deprecated systemd target `network-interfaces.target` has been removed. Use `network.target` instead.
|
||||
|
||||
- `services.frp.settings` now generates the frp configuration file in TOML format as [recommended by upstream](https://github.com/fatedier/frp#configuration-files), instead of the legacy INI format. This has also introduced other changes in the configuration file structure and options.
|
||||
|
@ -5,9 +5,6 @@ with lib;
|
||||
let
|
||||
cfg = config.services.etebase-server;
|
||||
|
||||
pythonEnv = pkgs.python3.withPackages (ps: with ps;
|
||||
[ etebase-server daphne ]);
|
||||
|
||||
iniFmt = pkgs.formats.ini {};
|
||||
|
||||
configIni = iniFmt.generate "etebase-server.ini" cfg.settings;
|
||||
@ -46,6 +43,13 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.python3.pkgs.etebase-server;
|
||||
defaultText = literalExpression "pkgs.python3.pkgs.etebase-server";
|
||||
description = lib.mdDoc "etebase-server package to use.";
|
||||
};
|
||||
|
||||
dataDir = mkOption {
|
||||
type = types.str;
|
||||
default = "/var/lib/etebase-server";
|
||||
@ -164,7 +168,7 @@ in
|
||||
(runCommand "etebase-server" {
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
} ''
|
||||
makeWrapper ${pythonEnv}/bin/etebase-server \
|
||||
makeWrapper ${cfg.package}/bin/etebase-server \
|
||||
$out/bin/etebase-server \
|
||||
--chdir ${escapeShellArg cfg.dataDir} \
|
||||
--prefix ETEBASE_EASY_CONFIG_PATH : "${configIni}"
|
||||
@ -178,8 +182,8 @@ in
|
||||
systemd.services.etebase-server = {
|
||||
description = "An Etebase (EteSync 2.0) server";
|
||||
after = [ "network.target" "systemd-tmpfiles-setup.service" ];
|
||||
path = [ cfg.package ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
path = [ pythonEnv ];
|
||||
serviceConfig = {
|
||||
User = cfg.user;
|
||||
Restart = "always";
|
||||
@ -187,24 +191,26 @@ in
|
||||
};
|
||||
environment = {
|
||||
ETEBASE_EASY_CONFIG_PATH = configIni;
|
||||
PYTHONPATH = cfg.package.pythonPath;
|
||||
};
|
||||
preStart = ''
|
||||
# Auto-migrate on first run or if the package has changed
|
||||
versionFile="${cfg.dataDir}/src-version"
|
||||
if [[ $(cat "$versionFile" 2>/dev/null) != ${pkgs.etebase-server} ]]; then
|
||||
if [[ $(cat "$versionFile" 2>/dev/null) != ${cfg.package} ]]; then
|
||||
etebase-server migrate --no-input
|
||||
etebase-server collectstatic --no-input --clear
|
||||
echo ${pkgs.etebase-server} > "$versionFile"
|
||||
echo ${cfg.package} > "$versionFile"
|
||||
fi
|
||||
'';
|
||||
script =
|
||||
let
|
||||
python = cfg.package.python;
|
||||
networking = if cfg.unixSocket != null
|
||||
then "-u ${cfg.unixSocket}"
|
||||
else "-b 0.0.0.0 -p ${toString cfg.port}";
|
||||
then "--uds ${cfg.unixSocket}"
|
||||
else "--host 0.0.0.0 --port ${toString cfg.port}";
|
||||
in ''
|
||||
cd "${pythonEnv}/lib/etebase-server";
|
||||
daphne ${networking} \
|
||||
${python.pkgs.uvicorn}/bin/uvicorn ${networking} \
|
||||
--app-dir ${cfg.package}/${cfg.package.python.sitePackages} \
|
||||
etebase_server.asgi:application
|
||||
'';
|
||||
};
|
||||
|
@ -6,6 +6,8 @@
|
||||
|
||||
let
|
||||
cfg = config.services.homepage-dashboard;
|
||||
# Define the settings format used for this program
|
||||
settingsFormat = pkgs.formats.yaml { };
|
||||
in
|
||||
{
|
||||
options = {
|
||||
@ -25,31 +27,217 @@ in
|
||||
default = 8082;
|
||||
description = lib.mdDoc "Port for Homepage to bind to.";
|
||||
};
|
||||
|
||||
environmentFile = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
description = ''
|
||||
The path to an environment file that contains environment variables to pass
|
||||
to the homepage-dashboard service, for the purpose of passing secrets to
|
||||
the service.
|
||||
|
||||
See the upstream documentation:
|
||||
|
||||
https://gethomepage.dev/latest/installation/docker/#using-environment-secrets
|
||||
'';
|
||||
default = "";
|
||||
};
|
||||
|
||||
customCSS = lib.mkOption {
|
||||
type = lib.types.lines;
|
||||
description = lib.mdDoc ''
|
||||
Custom CSS for styling Homepage.
|
||||
|
||||
See https://gethomepage.dev/latest/configs/custom-css-js/.
|
||||
'';
|
||||
default = "";
|
||||
};
|
||||
|
||||
customJS = lib.mkOption {
|
||||
type = lib.types.lines;
|
||||
description = lib.mdDoc ''
|
||||
Custom Javascript for Homepage.
|
||||
|
||||
See https://gethomepage.dev/latest/configs/custom-css-js/.
|
||||
'';
|
||||
default = "";
|
||||
};
|
||||
|
||||
bookmarks = lib.mkOption {
|
||||
inherit (settingsFormat) type;
|
||||
description = lib.mdDoc ''
|
||||
Homepage bookmarks configuration.
|
||||
|
||||
See https://gethomepage.dev/latest/configs/bookmarks/.
|
||||
'';
|
||||
# Defaults: https://github.com/gethomepage/homepage/blob/main/src/skeleton/bookmarks.yaml
|
||||
example = [
|
||||
{
|
||||
Developer = [
|
||||
{ Github = [{ abbr = "GH"; href = "https://github.com/"; }]; }
|
||||
];
|
||||
}
|
||||
{
|
||||
Entertainment = [
|
||||
{ YouTube = [{ abbr = "YT"; href = "https://youtube.com/"; }]; }
|
||||
];
|
||||
}
|
||||
];
|
||||
default = [ ];
|
||||
};
|
||||
|
||||
services = lib.mkOption {
|
||||
inherit (settingsFormat) type;
|
||||
description = lib.mdDoc ''
|
||||
Homepage services configuration.
|
||||
|
||||
See https://gethomepage.dev/latest/configs/services/.
|
||||
'';
|
||||
# Defaults: https://github.com/gethomepage/homepage/blob/main/src/skeleton/services.yaml
|
||||
example = [
|
||||
{
|
||||
"My First Group" = [
|
||||
{
|
||||
"My First Service" = {
|
||||
href = "http://localhost/";
|
||||
description = "Homepage is awesome";
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
"My Second Group" = [
|
||||
{
|
||||
"My Second Service" = {
|
||||
href = "http://localhost/";
|
||||
description = "Homepage is the best";
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
default = [ ];
|
||||
};
|
||||
|
||||
widgets = lib.mkOption {
|
||||
inherit (settingsFormat) type;
|
||||
description = lib.mdDoc ''
|
||||
Homepage widgets configuration.
|
||||
|
||||
See https://gethomepage.dev/latest/configs/service-widgets/.
|
||||
'';
|
||||
# Defaults: https://github.com/gethomepage/homepage/blob/main/src/skeleton/widgets.yaml
|
||||
example = [
|
||||
{
|
||||
resources = {
|
||||
cpu = true;
|
||||
memory = true;
|
||||
disk = "/";
|
||||
};
|
||||
}
|
||||
{
|
||||
search = {
|
||||
provider = "duckduckgo";
|
||||
target = "_blank";
|
||||
};
|
||||
}
|
||||
];
|
||||
default = [ ];
|
||||
};
|
||||
|
||||
kubernetes = lib.mkOption {
|
||||
inherit (settingsFormat) type;
|
||||
description = lib.mdDoc ''
|
||||
Homepage kubernetes configuration.
|
||||
|
||||
See https://gethomepage.dev/latest/configs/kubernetes/.
|
||||
'';
|
||||
default = { };
|
||||
};
|
||||
|
||||
docker = lib.mkOption {
|
||||
inherit (settingsFormat) type;
|
||||
description = lib.mdDoc ''
|
||||
Homepage docker configuration.
|
||||
|
||||
See https://gethomepage.dev/latest/configs/docker/.
|
||||
'';
|
||||
default = { };
|
||||
};
|
||||
|
||||
settings = lib.mkOption {
|
||||
inherit (settingsFormat) type;
|
||||
description = lib.mdDoc ''
|
||||
Homepage settings.
|
||||
|
||||
See https://gethomepage.dev/latest/configs/settings/.
|
||||
'';
|
||||
# Defaults: https://github.com/gethomepage/homepage/blob/main/src/skeleton/settings.yaml
|
||||
default = { };
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
systemd.services.homepage-dashboard = {
|
||||
description = "Homepage Dashboard";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
config =
|
||||
let
|
||||
# If homepage-dashboard is enabled, but none of the configuration values have been updated,
|
||||
# then default to "unmanaged" configuration which is manually updated in
|
||||
# var/lib/homepage-dashboard. This is to maintain backwards compatibility, and should be
|
||||
# deprecated in a future release.
|
||||
managedConfig = !(
|
||||
cfg.bookmarks == [ ] &&
|
||||
cfg.customCSS == "" &&
|
||||
cfg.customJS == "" &&
|
||||
cfg.docker == { } &&
|
||||
cfg.kubernetes == { } &&
|
||||
cfg.services == [ ] &&
|
||||
cfg.settings == { } &&
|
||||
cfg.widgets == [ ]
|
||||
);
|
||||
|
||||
environment = {
|
||||
HOMEPAGE_CONFIG_DIR = "/var/lib/homepage-dashboard";
|
||||
PORT = "${toString cfg.listenPort}";
|
||||
configDir = if managedConfig then "/etc/homepage-dashboard" else "/var/lib/homepage-dashboard";
|
||||
|
||||
msg = "using unmanaged configuration for homepage-dashboard is deprecated and will be removed"
|
||||
+ " in 24.05. please see the NixOS documentation for `services.homepage-dashboard' and add"
|
||||
+ " your bookmarks, services, widgets, and other configuration using the options provided.";
|
||||
in
|
||||
lib.mkIf cfg.enable {
|
||||
warnings = lib.optional (!managedConfig) msg;
|
||||
|
||||
environment.etc = lib.mkIf managedConfig {
|
||||
"homepage-dashboard/custom.css".text = cfg.customCSS;
|
||||
"homepage-dashboard/custom.js".text = cfg.customJS;
|
||||
|
||||
"homepage-dashboard/bookmarks.yaml".source = settingsFormat.generate "bookmarks.yaml" cfg.bookmarks;
|
||||
"homepage-dashboard/docker.yaml".source = settingsFormat.generate "docker.yaml" cfg.docker;
|
||||
"homepage-dashboard/kubernetes.yaml".source = settingsFormat.generate "kubernetes.yaml" cfg.kubernetes;
|
||||
"homepage-dashboard/services.yaml".source = settingsFormat.generate "services.yaml" cfg.services;
|
||||
"homepage-dashboard/settings.yaml".source = settingsFormat.generate "settings.yaml" cfg.settings;
|
||||
"homepage-dashboard/widgets.yaml".source = settingsFormat.generate "widgets.yaml" cfg.widgets;
|
||||
};
|
||||
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
DynamicUser = true;
|
||||
StateDirectory = "homepage-dashboard";
|
||||
ExecStart = "${lib.getExe cfg.package}";
|
||||
Restart = "on-failure";
|
||||
systemd.services.homepage-dashboard = {
|
||||
description = "Homepage Dashboard";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
environment = {
|
||||
HOMEPAGE_CONFIG_DIR = configDir;
|
||||
PORT = toString cfg.listenPort;
|
||||
LOG_TARGETS = lib.mkIf managedConfig "stdout";
|
||||
};
|
||||
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
DynamicUser = true;
|
||||
EnvironmentFile = lib.mkIf (cfg.environmentFile != null) cfg.environmentFile;
|
||||
StateDirectory = lib.mkIf (!managedConfig) "homepage-dashboard";
|
||||
ExecStart = lib.getExe cfg.package;
|
||||
Restart = "on-failure";
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall = lib.mkIf cfg.openFirewall {
|
||||
allowedTCPPorts = [ cfg.listenPort ];
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall = lib.mkIf cfg.openFirewall {
|
||||
allowedTCPPorts = [ cfg.listenPort ];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -6,7 +6,7 @@ let
|
||||
cfg = config.virtualisation.virtualbox.host;
|
||||
|
||||
virtualbox = cfg.package.override {
|
||||
inherit (cfg) enableHardening headless enableWebService;
|
||||
inherit (cfg) enableHardening headless enableWebService enableKvm;
|
||||
extensionPack = if cfg.enableExtensionPack then pkgs.virtualboxExtpack else null;
|
||||
};
|
||||
|
||||
@ -81,13 +81,24 @@ in
|
||||
Build VirtualBox web service tool (vboxwebsrv) to allow managing VMs via other webpage frontend tools. Useful for headless servers.
|
||||
'';
|
||||
};
|
||||
|
||||
enableKvm = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc ''
|
||||
Enable KVM support for VirtualBox. This increases compatibility with Linux kernel versions, because the VirtualBox kernel modules
|
||||
are not required.
|
||||
|
||||
This option is incompatible with `enableHardening` and `addNetworkInterface`.
|
||||
|
||||
Note: This is experimental. Please check https://github.com/cyberus-technology/virtualbox-kvm/issues.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable (mkMerge [{
|
||||
warnings = mkIf (pkgs.config.virtualbox.enableExtensionPack or false)
|
||||
["'nixpkgs.virtualbox.enableExtensionPack' has no effect, please use 'virtualisation.virtualbox.host.enableExtensionPack'"];
|
||||
boot.kernelModules = [ "vboxdrv" "vboxnetadp" "vboxnetflt" ];
|
||||
boot.extraModulePackages = [ kernelModules ];
|
||||
environment.systemPackages = [ virtualbox ];
|
||||
|
||||
security.wrappers = let
|
||||
@ -114,17 +125,43 @@ in
|
||||
|
||||
services.udev.extraRules =
|
||||
''
|
||||
KERNEL=="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0660", TAG+="systemd"
|
||||
KERNEL=="vboxdrvu", OWNER="root", GROUP="root", MODE="0666", TAG+="systemd"
|
||||
KERNEL=="vboxnetctl", OWNER="root", GROUP="vboxusers", MODE="0660", TAG+="systemd"
|
||||
SUBSYSTEM=="usb_device", ACTION=="add", RUN+="${virtualbox}/libexec/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass}"
|
||||
SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", RUN+="${virtualbox}/libexec/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass}"
|
||||
SUBSYSTEM=="usb_device", ACTION=="remove", RUN+="${virtualbox}/libexec/virtualbox/VBoxCreateUSBNode.sh --remove $major $minor"
|
||||
SUBSYSTEM=="usb", ACTION=="remove", ENV{DEVTYPE}=="usb_device", RUN+="${virtualbox}/libexec/virtualbox/VBoxCreateUSBNode.sh --remove $major $minor"
|
||||
'';
|
||||
} (mkIf cfg.enableKvm {
|
||||
assertions = [
|
||||
{
|
||||
assertion = !cfg.addNetworkInterface;
|
||||
message = "VirtualBox KVM only supports standard NAT networking for VMs. Please turn off virtualisation.virtualbox.host.addNetworkInferface.";
|
||||
}
|
||||
|
||||
{
|
||||
assertion = !cfg.enableHardening;
|
||||
message = "VirtualBox KVM is not compatible with hardening: Please turn off virtualisation.virtualbox.host.enableHardening.";
|
||||
}
|
||||
];
|
||||
|
||||
warnings = [
|
||||
''
|
||||
KVM support in VirtualBox is experimental. Not all security features are available yet.
|
||||
See: https://github.com/cyberus-technology/virtualbox-kvm/issues/12
|
||||
''
|
||||
];
|
||||
}) (mkIf (!cfg.enableKvm) {
|
||||
boot.kernelModules = [ "vboxdrv" "vboxnetadp" "vboxnetflt" ];
|
||||
boot.extraModulePackages = [ kernelModules ];
|
||||
|
||||
services.udev.extraRules =
|
||||
''
|
||||
KERNEL=="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0660", TAG+="systemd"
|
||||
KERNEL=="vboxdrvu", OWNER="root", GROUP="root", MODE="0666", TAG+="systemd"
|
||||
KERNEL=="vboxnetctl", OWNER="root", GROUP="vboxusers", MODE="0660", TAG+="systemd"
|
||||
'';
|
||||
|
||||
# Since we lack the right setuid/setcap binaries, set up a host-only network by default.
|
||||
} (mkIf cfg.addNetworkInterface {
|
||||
}) (mkIf cfg.addNetworkInterface {
|
||||
systemd.services.vboxnet0 =
|
||||
{ description = "VirtualBox vboxnet0 Interface";
|
||||
requires = [ "dev-vboxnetctl.device" ];
|
||||
|
@ -31,16 +31,12 @@ let
|
||||
|
||||
export REQUESTS_CA_BUNDLE="/etc/ssl/certs/ca-certificates.crt"
|
||||
|
||||
echo '${userPassword}' | ${pkgs.toot}/bin/toot login_cli -i "akkoma.nixos.test" -e "jamy@nixos.test"
|
||||
echo "y" | ${pkgs.toot}/bin/toot post "hello world Jamy here"
|
||||
|
||||
# Retrieving timeline with toot currently broken due to incompatible timestamp format
|
||||
# cf. <https://akkoma.dev/AkkomaGang/akkoma/issues/637> and <https://github.com/ihabunek/toot/issues/399>
|
||||
#echo "y" | ${pkgs.toot}/bin/toot timeline | grep -F -q "hello world Jamy here"
|
||||
${pkgs.toot}/bin/toot login_cli -i "akkoma.nixos.test" -e "jamy@nixos.test" -p '${userPassword}'
|
||||
${pkgs.toot}/bin/toot post "hello world Jamy here"
|
||||
${pkgs.toot}/bin/toot timeline -1 | grep -F -q "hello world Jamy here"
|
||||
|
||||
# Test file upload
|
||||
echo "y" | ${pkgs.toot}/bin/toot upload <(dd if=/dev/zero bs=1024 count=1024 status=none) \
|
||||
| grep -F -q "https://akkoma.nixos.test/media"
|
||||
${pkgs.toot}/bin/toot upload <(dd if=/dev/zero bs=1024 count=1024 status=none)
|
||||
'';
|
||||
|
||||
checkFe = pkgs.writers.writeBashBin "checkFe" ''
|
||||
|
@ -2,13 +2,35 @@ import ./make-test-python.nix ({ lib, ... }: {
|
||||
name = "homepage-dashboard";
|
||||
meta.maintainers = with lib.maintainers; [ jnsgruk ];
|
||||
|
||||
nodes.machine = { pkgs, ... }: {
|
||||
nodes.unmanaged_conf = { pkgs, ... }: {
|
||||
services.homepage-dashboard.enable = true;
|
||||
};
|
||||
|
||||
nodes.managed_conf = { pkgs, ... }: {
|
||||
services.homepage-dashboard = {
|
||||
enable = true;
|
||||
settings.title = "custom";
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("homepage-dashboard.service")
|
||||
machine.wait_for_open_port(8082)
|
||||
machine.succeed("curl --fail http://localhost:8082/")
|
||||
# Ensure the services are started on unmanaged machine
|
||||
unmanaged_conf.wait_for_unit("homepage-dashboard.service")
|
||||
unmanaged_conf.wait_for_open_port(8082)
|
||||
unmanaged_conf.succeed("curl --fail http://localhost:8082/")
|
||||
|
||||
# Ensure that /etc/homepage-dashboard doesn't exist, and boilerplate
|
||||
# configs are copied into place.
|
||||
unmanaged_conf.fail("test -d /etc/homepage-dashboard")
|
||||
unmanaged_conf.succeed("test -f /var/lib/private/homepage-dashboard/settings.yaml")
|
||||
|
||||
# Ensure the services are started on managed machine
|
||||
managed_conf.wait_for_unit("homepage-dashboard.service")
|
||||
managed_conf.wait_for_open_port(8082)
|
||||
managed_conf.succeed("curl --fail http://localhost:8082/")
|
||||
|
||||
# Ensure /etc/homepage-dashboard is created and unmanaged conf location isn't.
|
||||
managed_conf.succeed("test -d /etc/homepage-dashboard")
|
||||
managed_conf.fail("test -f /var/lib/private/homepage-dashboard/settings.yaml")
|
||||
'';
|
||||
})
|
||||
|
@ -3,6 +3,7 @@
|
||||
pkgs ? import ../.. { inherit system config; },
|
||||
debug ? false,
|
||||
enableUnfree ? false,
|
||||
enableKvm ? false,
|
||||
use64bitGuest ? true
|
||||
}:
|
||||
|
||||
@ -340,7 +341,7 @@ let
|
||||
testExtensionPack.vmFlags = enableExtensionPackVMFlags;
|
||||
};
|
||||
|
||||
mkVBoxTest = useExtensionPack: vms: name: testScript: makeTest {
|
||||
mkVBoxTest = vboxHostConfig: vms: name: testScript: makeTest {
|
||||
name = "virtualbox-${name}";
|
||||
|
||||
nodes.machine = { lib, config, ... }: {
|
||||
@ -349,14 +350,23 @@ let
|
||||
vmConfigs = mapAttrsToList mkVMConf vms;
|
||||
in [ ./common/user-account.nix ./common/x11.nix ] ++ vmConfigs;
|
||||
virtualisation.memorySize = 2048;
|
||||
virtualisation.qemu.options = ["-cpu" "kvm64,svm=on,vmx=on"];
|
||||
virtualisation.virtualbox.host.enable = true;
|
||||
|
||||
virtualisation.qemu.options = let
|
||||
# IvyBridge is reasonably ancient to be compatible with recent
|
||||
# Intel/AMD hosts and sufficient for the KVM flavor.
|
||||
guestCpu = if config.virtualisation.virtualbox.host.enableKvm then "IvyBridge" else "kvm64";
|
||||
in ["-cpu" "${guestCpu},svm=on,vmx=on"];
|
||||
|
||||
test-support.displayManager.auto.user = "alice";
|
||||
users.users.alice.extraGroups = let
|
||||
inherit (config.virtualisation.virtualbox.host) enableHardening;
|
||||
in lib.mkIf enableHardening (lib.singleton "vboxusers");
|
||||
virtualisation.virtualbox.host.enableExtensionPack = useExtensionPack;
|
||||
nixpkgs.config.allowUnfree = useExtensionPack;
|
||||
in lib.mkIf enableHardening [ "vboxusers" ];
|
||||
|
||||
virtualisation.virtualbox.host = {
|
||||
enable = true;
|
||||
} // vboxHostConfig;
|
||||
|
||||
nixpkgs.config.allowUnfree = config.virtualisation.virtualbox.host.enableExtensionPack;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
@ -390,7 +400,7 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
unfreeTests = mapAttrs (mkVBoxTest true vboxVMsWithExtpack) {
|
||||
unfreeTests = mapAttrs (mkVBoxTest { enableExtensionPack = true; } vboxVMsWithExtpack) {
|
||||
enable-extension-pack = ''
|
||||
create_vm_testExtensionPack()
|
||||
vbm("startvm testExtensionPack")
|
||||
@ -409,7 +419,24 @@ let
|
||||
'';
|
||||
};
|
||||
|
||||
in mapAttrs (mkVBoxTest false vboxVMs) {
|
||||
kvmTests = mapAttrs (mkVBoxTest {
|
||||
enableKvm = true;
|
||||
|
||||
# Once the KVM version supports these, we can enable them.
|
||||
addNetworkInterface = false;
|
||||
enableHardening = false;
|
||||
} vboxVMs) {
|
||||
kvm-headless = ''
|
||||
create_vm_headless()
|
||||
machine.succeed(ru("VBoxHeadless --startvm headless >&2 & disown %1"))
|
||||
wait_for_startup_headless()
|
||||
wait_for_vm_boot_headless()
|
||||
shutdown_vm_headless()
|
||||
destroy_vm_headless()
|
||||
'';
|
||||
};
|
||||
|
||||
in mapAttrs (mkVBoxTest {} vboxVMs) {
|
||||
simple-gui = ''
|
||||
# Home to select Tools, down to move to the VM, enter to start it.
|
||||
def send_vm_startup():
|
||||
@ -519,4 +546,6 @@ in mapAttrs (mkVBoxTest false vboxVMs) {
|
||||
destroy_vm_test1()
|
||||
destroy_vm_test2()
|
||||
'';
|
||||
} // (optionalAttrs enableUnfree unfreeTests)
|
||||
}
|
||||
// (optionalAttrs enableKvm kvmTests)
|
||||
// (optionalAttrs enableUnfree unfreeTests)
|
||||
|
@ -8,7 +8,7 @@
|
||||
, gtk3
|
||||
, gst_all_1
|
||||
, gobject-introspection
|
||||
, libhandy
|
||||
, libadwaita
|
||||
, libdazzle
|
||||
, python3Packages
|
||||
, cairo
|
||||
@ -22,13 +22,13 @@ python3Packages.buildPythonApplication rec {
|
||||
format = "other"; # no setup.py
|
||||
|
||||
pname = "cozy";
|
||||
version = "1.2.1";
|
||||
version = "1.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "geigi";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-cRqfLFLvje8lxUZ4S83UAFyYUX0vj1ZgLG0Y6gpCfmI=";
|
||||
hash = "sha256-oMgdz2dny0u1XV13aHu5s8/pcAz8z/SAOf4hbCDsdjw";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -44,8 +44,8 @@ python3Packages.buildPythonApplication rec {
|
||||
cairo
|
||||
gettext
|
||||
gnome.adwaita-icon-theme
|
||||
libadwaita
|
||||
libdazzle
|
||||
libhandy
|
||||
pantheon.granite
|
||||
] ++ (with gst_all_1; [
|
||||
gstreamer
|
||||
|
@ -63,6 +63,14 @@ let
|
||||
ncurses_static
|
||||
];
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "fix-CsigFFun-API-declaration.patch";
|
||||
url = "https://github.com/grame-cncm/faust/commit/10ce960e91a6237c7bff14a338e770757076ce9e.patch";
|
||||
hash = "sha256-WMFLpLGTZpG7ni3lhI5VJHsmJViWZf4pAFuhYmFVRCE=";
|
||||
})
|
||||
];
|
||||
|
||||
passthru = { inherit wrap wrapWithBuildEnv faust2ApplBase; };
|
||||
|
||||
preConfigure = ''
|
||||
|
@ -22,14 +22,14 @@ let
|
||||
keywords = [ "tracker" "music" ];
|
||||
};
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
in stdenv.mkDerivation (finalAttrs: {
|
||||
inherit pname;
|
||||
version = if isStereo
|
||||
then "2.77" # stereo
|
||||
else "2.76"; # normal
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/goattracker2/GoatTracker_${version}${lib.optionalString isStereo "_Stereo"}.zip";
|
||||
url = "mirror://sourceforge/goattracker2/GoatTracker_${finalAttrs.version}${lib.optionalString isStereo "_Stereo"}.zip";
|
||||
sha256 = if isStereo
|
||||
then "1hiig2d152sv9kazwz33i56x1c54h5sh21ipkqnp6qlnwj8x1ksy" # stereo
|
||||
else "0d7a3han4jw4bwiba3j87racswaajgl3pj4sb5lawdqdxicv3dn1"; # normal
|
||||
@ -43,10 +43,14 @@ in stdenv.mkDerivation rec {
|
||||
makeFlags = [ "PREFIX=$(out)/bin/" ];
|
||||
|
||||
# The zip contains some build artifacts.
|
||||
prePatch = "make clean";
|
||||
prePatch = ''
|
||||
make clean
|
||||
'';
|
||||
|
||||
# The destination does not get created automatically.
|
||||
preBuild = "mkdir -p $out/bin";
|
||||
preBuild = ''
|
||||
mkdir -p $out/bin
|
||||
'';
|
||||
|
||||
# Other files get installed during the build phase.
|
||||
installPhase = ''
|
||||
@ -54,6 +58,7 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
convert goattrk2.bmp goattracker.png
|
||||
install -Dm644 goattracker.png $out/share/icons/hicolor/32x32/apps/goattracker.png
|
||||
install -Dm644 ../linux/goattracker.1 -t $out/share/man/man1/goattracker.1
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
@ -66,7 +71,8 @@ in stdenv.mkDerivation rec {
|
||||
homepage = "https://cadaver.github.io/tools.html";
|
||||
downloadPage = "https://sourceforge.net/projects/goattracker2/";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
mainProgram = if isStereo then "gt2stereo" else "goattrk2";
|
||||
maintainers = with lib.maintainers; [ fgaz ];
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -6,21 +6,23 @@
|
||||
, SDL_image
|
||||
, SDL_ttf
|
||||
, gtk3
|
||||
, wrapGAppsHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "hivelytracker";
|
||||
version = "1.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pete-gordon";
|
||||
repo = "hivelytracker";
|
||||
rev = "V${lib.replaceStrings ["."] ["_"] version}";
|
||||
rev = "V${lib.replaceStrings ["."] ["_"] finalAttrs.version}";
|
||||
sha256 = "148p320sd8phcpmj4m85ns5zly2dawbp8kgx9ryjfdk24pa88xg6";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
@ -62,7 +64,8 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.all;
|
||||
mainProgram = "hivelytracker";
|
||||
maintainers = with maintainers; [ fgaz ];
|
||||
broken = stdenv.isDarwin; # TODO: try to use xcbuild
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -6,7 +6,7 @@
|
||||
, Foundation
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation {
|
||||
pname = "littlegptracker";
|
||||
version = "unstable-2020-11-26";
|
||||
|
||||
|
@ -1,17 +1,50 @@
|
||||
{ callPackage, faust, fontconfig, cmake, libvterm-neovim, libevdev, libglvnd, fira-code, ... } @ args:
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromSourcehut
|
||||
, pkg-config
|
||||
, cmake
|
||||
, meson
|
||||
, ninja
|
||||
, faust
|
||||
, fontconfig
|
||||
, glew
|
||||
, libvterm-neovim
|
||||
, lv2
|
||||
, lv2lint
|
||||
, sord
|
||||
, xorg
|
||||
}:
|
||||
|
||||
callPackage ./generic.nix (args // rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "mephisto";
|
||||
version = "0.16.0";
|
||||
version = "0.18.2";
|
||||
|
||||
sha256 = "0vgr3rsvdj4w0xpc5iqpvyqilk42wr9zs8bg26sfv3f2wi4hb6gx";
|
||||
src = fetchFromSourcehut {
|
||||
domain = "open-music-kontrollers.ch";
|
||||
owner = "~hp";
|
||||
repo = "mephisto.lv2";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-ab6OGt1XVgynKNdszzdXwJ/jVKJSzgSmAv6j1U3/va0=";
|
||||
};
|
||||
|
||||
additionalBuildInputs = [ faust fontconfig cmake libvterm-neovim libevdev libglvnd fira-code ];
|
||||
nativeBuildInputs = [ pkg-config meson ninja fontconfig cmake ];
|
||||
|
||||
# see: https://github.com/OpenMusicKontrollers/mephisto.lv2/issues/6
|
||||
postPatch = ''
|
||||
sed -i 's/llvm-c-dsp/llvm-dsp-c/g' mephisto.c
|
||||
'';
|
||||
buildInputs = [
|
||||
faust
|
||||
libvterm-neovim
|
||||
lv2
|
||||
sord
|
||||
xorg.libX11
|
||||
xorg.libXext
|
||||
glew
|
||||
lv2lint
|
||||
];
|
||||
|
||||
description = "A Just-in-time FAUST embedded in an LV2 plugin";
|
||||
meta = with lib; {
|
||||
description = "A Just-in-time FAUST embedded in an LV2 plugin";
|
||||
homepage = "https://git.open-music-kontrollers.ch/~hp/mephisto.lv2";
|
||||
license = licenses.artistic2;
|
||||
maintainers = [ maintainers.magnetophon ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
})
|
||||
|
@ -6,14 +6,14 @@
|
||||
, SDL2
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "pt2-clone";
|
||||
version = "1.66.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "8bitbubsy";
|
||||
repo = "pt2-clone";
|
||||
rev = "v${version}";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-j7VPC1sj1Q+wL2TBgv06uYLPqym8F57HG1SRvj0Ggeo=";
|
||||
};
|
||||
|
||||
@ -41,5 +41,4 @@ stdenv.mkDerivation rec {
|
||||
platforms = platforms.littleEndian;
|
||||
mainProgram = "pt2-clone";
|
||||
};
|
||||
}
|
||||
|
||||
})
|
||||
|
@ -9,12 +9,12 @@
|
||||
, wrapGAppsHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "sfxr";
|
||||
version = "1.2.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.drpetter.se/files/sfxr-sdl-${version}.tar.gz";
|
||||
url = "http://www.drpetter.se/files/sfxr-sdl-${finalAttrs.version}.tar.gz";
|
||||
sha256 = "0dfqgid6wzzyyhc0ha94prxax59wx79hqr25r6if6by9cj4vx4ya";
|
||||
};
|
||||
|
||||
@ -62,5 +62,4 @@ stdenv.mkDerivation rec {
|
||||
maintainers = with maintainers; [ fgaz ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
||||
})
|
||||
|
@ -12,7 +12,7 @@
|
||||
, libsndfile
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "soundtracker";
|
||||
version = "1.0.4";
|
||||
|
||||
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
||||
# Only the latest release is at the top level.
|
||||
# Nonetheless, only the name of the file seems to affect which file is
|
||||
# downloaded, so this path should be fine both for old and current releases.
|
||||
url = "mirror://sourceforge/soundtracker/soundtracker-${version}.tar.xz";
|
||||
url = "mirror://sourceforge/soundtracker/soundtracker-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-kNt0BSRaEQY+oa1xbuZ1l6nCqXhcktVugxzcC3ZDaX0=";
|
||||
};
|
||||
|
||||
@ -76,4 +76,4 @@ stdenv.mkDerivation rec {
|
||||
maintainers = with maintainers; [ fgaz ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -1,22 +1,13 @@
|
||||
diff --git a/src/borg/process.rs b/src/borg/process.rs
|
||||
index 63ea0ee..e3535e0 100644
|
||||
index 9af8da7..85bcbf8 100644
|
||||
--- a/src/borg/process.rs
|
||||
+++ b/src/borg/process.rs
|
||||
@@ -203,7 +203,7 @@ impl BorgCall {
|
||||
@@ -278,7 +278,7 @@ impl BorgCall {
|
||||
}
|
||||
|
||||
pub fn cmd(&self) -> Result<process::Command> {
|
||||
- let mut cmd = process::Command::new("borg");
|
||||
+ let mut cmd = process::Command::new("@borg@");
|
||||
|
||||
cmd.envs([self.set_password()?]);
|
||||
|
||||
@@ -221,7 +221,7 @@ impl BorgCall {
|
||||
}
|
||||
|
||||
pub fn cmd_async(&self) -> Result<async_process::Command> {
|
||||
pub(super) fn command(&self) -> Result<(async_process::Command, UnixStream)> {
|
||||
- let mut cmd = async_process::Command::new("borg");
|
||||
+ let mut cmd = async_process::Command::new("@borg@");
|
||||
|
||||
cmd.envs([self.set_password()?]);
|
||||
let unix_stream = self.stream_password(&mut cmd)?;
|
||||
|
||||
|
@ -21,26 +21,26 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pika-backup";
|
||||
version = "0.6.2";
|
||||
version = "0.7.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.gnome.org";
|
||||
owner = "World";
|
||||
repo = "pika-backup";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-RTeRlfRmA/fXBcdzP41mbs88ArKlbU49AA0lnW3xRlg=";
|
||||
hash = "sha256-WeFc/4TEIxw6uzLroJX1D/rEA419sghkjBt1nsPv2Ho=";
|
||||
};
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
inherit src;
|
||||
name = "${pname}-${version}";
|
||||
hash = "sha256-2B0N/Yq9A4LqKh8EKWmzNzTelwGE3Y9FL9IAqAgFSV8=";
|
||||
hash = "sha256-fgPgUZxye9YUyX9/+hTye3cUypgRAegZMUTKfPxVH4s=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./borg-path.patch;
|
||||
borg = "${borgbackup}/bin/borg";
|
||||
borg = lib.getExe borgbackup;
|
||||
})
|
||||
];
|
||||
|
||||
|
@ -44,8 +44,7 @@ stdenv.mkDerivation rec {
|
||||
tools/generate-wire.py \
|
||||
tools/update-mocks.sh \
|
||||
tools/mockup.sh \
|
||||
devtools/sql-rewrite.py \
|
||||
plugins/clnrest/clnrest.py
|
||||
devtools/sql-rewrite.py
|
||||
'' else ''
|
||||
substituteInPlace external/libwally-core/tools/autogen.sh --replace gsed sed && \
|
||||
substituteInPlace external/libwally-core/configure.ac --replace gsed sed
|
||||
@ -62,6 +61,11 @@ stdenv.mkDerivation rec {
|
||||
# char buf[CMSG_SPACE(sizeof(fd))];
|
||||
env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) "-Wno-error=gnu-folding-constant";
|
||||
|
||||
# The `clnrest` plugin requires a Python environment to run
|
||||
postInstall = ''
|
||||
rm -r $out/libexec/c-lightning/plugins/clnrest
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A Bitcoin Lightning Network implementation in C";
|
||||
longDescription = ''
|
||||
|
@ -27,14 +27,14 @@
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libresprite";
|
||||
version = "1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "LibreSprite";
|
||||
repo = "LibreSprite";
|
||||
rev = "v${version}";
|
||||
rev = "v${finalAttrs.version}";
|
||||
fetchSubmodules = true;
|
||||
sha256 = "sha256-d8GmVHYomDb74iSeEhJEVTHvbiVXggXg7xSqIKCUSzY=";
|
||||
};
|
||||
@ -118,4 +118,4 @@ stdenv.mkDerivation rec {
|
||||
# https://github.com/LibreSprite/LibreSprite/issues/308
|
||||
broken = stdenv.isDarwin;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -1,45 +0,0 @@
|
||||
{ branch
|
||||
, qt6Packages
|
||||
, fetchFromGitHub
|
||||
, fetchurl
|
||||
}:
|
||||
|
||||
let
|
||||
# Fetched from https://api.citra-emu.org/gamedb
|
||||
# Please make sure to update this when updating citra!
|
||||
compat-list = fetchurl {
|
||||
name = "citra-compat-list";
|
||||
url = "https://web.archive.org/web/20231111133415/https://api.citra-emu.org/gamedb";
|
||||
hash = "sha256-J+zqtWde5NgK2QROvGewtXGRAWUTNSKHNMG6iu9m1fU=";
|
||||
};
|
||||
in {
|
||||
nightly = qt6Packages.callPackage ./generic.nix rec {
|
||||
pname = "citra-nightly";
|
||||
version = "2088";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "citra-emu";
|
||||
repo = "citra-nightly";
|
||||
rev = "nightly-${version}";
|
||||
sha256 = "0l9w4i0zbafcv2s6pd1zqb11vh0i7gzwbqnzlz9al6ihwbsgbj3k";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
inherit branch compat-list;
|
||||
};
|
||||
|
||||
canary = qt6Packages.callPackage ./generic.nix rec {
|
||||
pname = "citra-canary";
|
||||
version = "2766";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "citra-emu";
|
||||
repo = "citra-canary";
|
||||
rev = "canary-${version}";
|
||||
sha256 = "1gm3ajphpzwhm3qnchsx77jyl51za8yw3r0j0h8idf9y1ilcjvi4";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
inherit branch compat-list;
|
||||
};
|
||||
}.${branch}
|
@ -1,149 +0,0 @@
|
||||
{ pname
|
||||
, version
|
||||
, src
|
||||
, branch
|
||||
, compat-list
|
||||
|
||||
, lib
|
||||
, stdenv
|
||||
, cmake
|
||||
, boost
|
||||
, pkg-config
|
||||
, catch2_3
|
||||
, cpp-jwt
|
||||
, cryptopp
|
||||
, enet
|
||||
, ffmpeg
|
||||
, fmt
|
||||
, gamemode
|
||||
, glslang
|
||||
, httplib
|
||||
, inih
|
||||
, libusb1
|
||||
, nlohmann_json
|
||||
, openal
|
||||
, openssl
|
||||
, SDL2
|
||||
, soundtouch
|
||||
, spirv-tools
|
||||
, zstd
|
||||
, vulkan-headers
|
||||
, vulkan-loader
|
||||
, enableSdl2Frontend ? true
|
||||
, enableQt ? true, qtbase, qtmultimedia, qtwayland, wrapQtAppsHook
|
||||
, enableQtTranslation ? enableQt, qttools
|
||||
, enableWebService ? true
|
||||
, enableCubeb ? true, cubeb
|
||||
, useDiscordRichPresence ? false, rapidjson
|
||||
}:
|
||||
stdenv.mkDerivation {
|
||||
inherit pname version src;
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
ffmpeg
|
||||
glslang
|
||||
] ++ lib.optionals enableQt [ wrapQtAppsHook ];
|
||||
|
||||
buildInputs = [
|
||||
boost
|
||||
catch2_3
|
||||
cpp-jwt
|
||||
cryptopp
|
||||
# intentionally omitted: dynarmic - prefer vendored version for compatibility
|
||||
enet
|
||||
fmt
|
||||
httplib
|
||||
inih
|
||||
libusb1
|
||||
nlohmann_json
|
||||
openal
|
||||
openssl
|
||||
SDL2
|
||||
soundtouch
|
||||
spirv-tools
|
||||
vulkan-headers
|
||||
# intentionally omitted: xbyak - prefer vendored version for compatibility
|
||||
zstd
|
||||
] ++ lib.optionals enableQt [ qtbase qtmultimedia qtwayland ]
|
||||
++ lib.optional enableQtTranslation qttools
|
||||
++ lib.optional enableCubeb cubeb
|
||||
++ lib.optional useDiscordRichPresence rapidjson;
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "USE_SYSTEM_LIBS" true)
|
||||
|
||||
(lib.cmakeBool "DISABLE_SYSTEM_DYNARMIC" true)
|
||||
(lib.cmakeBool "DISABLE_SYSTEM_GLSLANG" true) # The following imported targets are referenced, but are missing: SPIRV-Tools-opt
|
||||
(lib.cmakeBool "DISABLE_SYSTEM_LODEPNG" true) # Not packaged in nixpkgs
|
||||
(lib.cmakeBool "DISABLE_SYSTEM_VMA" true)
|
||||
(lib.cmakeBool "DISABLE_SYSTEM_XBYAK" true)
|
||||
|
||||
# We don't want to bother upstream with potentially outdated compat reports
|
||||
(lib.cmakeBool "CITRA_ENABLE_COMPATIBILITY_REPORTING" true)
|
||||
(lib.cmakeBool "ENABLE_COMPATIBILITY_LIST_DOWNLOAD" false) # We provide this deterministically
|
||||
|
||||
(lib.cmakeBool "ENABLE_SDL2_FRONTEND" enableSdl2Frontend)
|
||||
(lib.cmakeBool "ENABLE_QT" enableQt)
|
||||
(lib.cmakeBool "ENABLE_QT_TRANSLATION" enableQtTranslation)
|
||||
(lib.cmakeBool "ENABLE_WEB_SERVICE" enableWebService)
|
||||
(lib.cmakeBool "ENABLE_CUBEB" enableCubeb)
|
||||
(lib.cmakeBool "USE_DISCORD_PRESENCE" useDiscordRichPresence)
|
||||
];
|
||||
|
||||
# causes redefinition of _FORTIFY_SOURCE
|
||||
hardeningDisable = [ "fortify3" ];
|
||||
|
||||
postPatch = let
|
||||
branchCaptialized = (lib.toUpper (lib.substring 0 1 branch) + lib.substring 1 (-1) branch);
|
||||
in ''
|
||||
# Fix file not found when looking in var/empty instead of opt
|
||||
mkdir externals/dynarmic/src/dynarmic/ir/var
|
||||
ln -s ../opt externals/dynarmic/src/dynarmic/ir/var/empty
|
||||
|
||||
# Prep compatibilitylist
|
||||
ln -s ${compat-list} ./dist/compatibility_list/compatibility_list.json
|
||||
|
||||
# We already know the submodules are present
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace "check_submodules_present()" ""
|
||||
|
||||
# Add versions
|
||||
echo 'set(BUILD_FULLNAME "${branchCaptialized} ${version}")' >> CMakeModules/GenerateBuildInfo.cmake
|
||||
|
||||
# Add gamemode
|
||||
substituteInPlace externals/gamemode/include/gamemode_client.h --replace "libgamemode.so.0" "${lib.getLib gamemode}/lib/libgamemode.so.0"
|
||||
'';
|
||||
|
||||
postInstall = let
|
||||
libs = lib.makeLibraryPath [ vulkan-loader ];
|
||||
in lib.optionalString enableSdl2Frontend ''
|
||||
wrapProgram "$out/bin/citra" \
|
||||
--prefix LD_LIBRARY_PATH : ${libs}
|
||||
'' + lib.optionalString enableQt ''
|
||||
qtWrapperArgs+=(
|
||||
--prefix LD_LIBRARY_PATH : ${libs}
|
||||
)
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
broken = (stdenv.isLinux && stdenv.isAarch64);
|
||||
homepage = "https://citra-emu.org";
|
||||
description = "The ${branch} branch of an open-source emulator for the Nintendo 3DS";
|
||||
longDescription = ''
|
||||
A Nintendo 3DS Emulator written in C++
|
||||
Using the nightly branch is recommended for general usage.
|
||||
Using the canary branch is recommended if you would like to try out
|
||||
experimental features, with a cost of stability.
|
||||
'';
|
||||
mainProgram = if enableQt then "citra-qt" else "citra";
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [
|
||||
abbradar
|
||||
ashley
|
||||
ivar
|
||||
];
|
||||
};
|
||||
}
|
@ -1,84 +0,0 @@
|
||||
#! /usr/bin/env nix-shell
|
||||
#! nix-shell -i bash -p nix nix-prefetch-git coreutils curl jq gnused
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# Will be replaced with the actual branch when running this from passthru.updateScript
|
||||
BRANCH="@branch@"
|
||||
|
||||
if [[ ! "$(basename $PWD)" = "citra" ]]; then
|
||||
echo "error: Script must be ran from citra's directory!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
getLocalVersion() {
|
||||
pushd ../../../.. >/dev/null
|
||||
nix eval --raw -f default.nix "$1".version
|
||||
popd >/dev/null
|
||||
}
|
||||
|
||||
getLocalHash() {
|
||||
pushd ../../../.. >/dev/null
|
||||
nix eval --raw -f default.nix "$1".src.drvAttrs.outputHash
|
||||
popd >/dev/null
|
||||
}
|
||||
|
||||
updateNightly() {
|
||||
OLD_NIGHTLY_VERSION="$(getLocalVersion "citra-nightly")"
|
||||
OLD_NIGHTLY_HASH="$(getLocalHash "citra-nightly")"
|
||||
|
||||
NEW_NIGHTLY_VERSION="$(curl -s ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} \
|
||||
"https://api.github.com/repos/citra-emu/citra-nightly/releases?per_page=1" | jq -r '.[0].name' | cut -d"-" -f2 | cut -d" " -f2)"
|
||||
|
||||
if [[ "${OLD_NIGHTLY_VERSION}" = "${NEW_NIGHTLY_VERSION}" ]]; then
|
||||
echo "citra-nightly is already up to date!"
|
||||
|
||||
[ "$KEEP_GOING" ] && return || exit
|
||||
else
|
||||
echo "citra-nightly: ${OLD_NIGHTLY_VERSION} -> ${NEW_NIGHTLY_VERSION}"
|
||||
fi
|
||||
|
||||
echo " Fetching source code..."
|
||||
|
||||
NEW_NIGHTLY_HASH="$(nix-prefetch-git --quiet --fetch-submodules --rev "nightly-${NEW_NIGHTLY_VERSION}" "https://github.com/citra-emu/citra-nightly" | jq -r '.sha256')"
|
||||
|
||||
echo " Successfully fetched. hash: ${NEW_NIGHTLY_HASH}"
|
||||
|
||||
sed -i "s|${OLD_NIGHTLY_VERSION}|${NEW_NIGHTLY_VERSION}|" ./default.nix
|
||||
sed -i "s|${OLD_NIGHTLY_HASH}|${NEW_NIGHTLY_HASH}|" ./default.nix
|
||||
}
|
||||
|
||||
updateCanary() {
|
||||
OLD_CANARY_VERSION="$(getLocalVersion "citra-canary")"
|
||||
OLD_CANARY_HASH="$(getLocalHash "citra-canary")"
|
||||
|
||||
NEW_CANARY_VERSION="$(curl -s ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} \
|
||||
"https://api.github.com/repos/citra-emu/citra-canary/releases?per_page=1" | jq -r '.[0].name' | cut -d"-" -f2 | cut -d" " -f1)"
|
||||
|
||||
if [[ "${OLD_CANARY_VERSION}" = "${NEW_CANARY_VERSION}" ]]; then
|
||||
echo "citra-canary is already up to date!"
|
||||
|
||||
[ "$KEEP_GOING" ] && return || exit
|
||||
else
|
||||
echo "citra-canary: ${OLD_CANARY_VERSION} -> ${NEW_CANARY_VERSION}"
|
||||
fi
|
||||
|
||||
echo " Fetching source code..."
|
||||
|
||||
NEW_CANARY_HASH="$(nix-prefetch-git --quiet --fetch-submodules --rev "canary-${NEW_CANARY_VERSION}" "https://github.com/citra-emu/citra-canary" | jq -r '.sha256')"
|
||||
|
||||
echo " Successfully fetched. hash: ${NEW_CANARY_HASH}"
|
||||
|
||||
sed -i "s|${OLD_CANARY_VERSION}|${NEW_CANARY_VERSION}|" ./default.nix
|
||||
sed -i "s|${OLD_CANARY_HASH}|${NEW_CANARY_HASH}|" ./default.nix
|
||||
}
|
||||
|
||||
if [[ "$BRANCH" = "nightly" ]]; then
|
||||
updateNightly
|
||||
elif [[ "$BRANCH" = "early-access" ]]; then
|
||||
updateCanary
|
||||
else
|
||||
KEEP_GOING=1
|
||||
updateNightly
|
||||
updateCanary
|
||||
fi
|
@ -1,7 +1,6 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, alsa-lib
|
||||
, AudioUnit
|
||||
, autoreconfHook
|
||||
@ -28,30 +27,15 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "dosbox-x";
|
||||
version = "2023.10.06";
|
||||
version = "2024.03.01";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "joncampbell123";
|
||||
repo = "dosbox-x";
|
||||
rev = "dosbox-x-v${finalAttrs.version}";
|
||||
hash = "sha256-YNYtYqcpTOx4xS/LXI53h3S+na8JVpn4w8Dhf4fWNBQ=";
|
||||
hash = "sha256-EcAp7KyqXdBACEbPgkM1INoKeGVo7hMDUx97y2RcX+k=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# 2 patches which fix stack smashing when launching Windows 3.0
|
||||
# Remove when version > 2023.10.06
|
||||
(fetchpatch {
|
||||
name = "0001-dosbox-x-Attempt-to-fix-graphical-palette-issues-added-by-TTF-fix.patch";
|
||||
url = "https://github.com/joncampbell123/dosbox-x/commit/40bf135f70376b5c3944fe2e972bdb7143439bcc.patch";
|
||||
hash = "sha256-9whtqBkivYVYaPObyTODtwcfjaoK+rLqhCNZ7zVoiGI=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "0002-dosbox-x-Fix-Sid-Meiers-Civ-crash.patch";
|
||||
url = "https://github.com/joncampbell123/dosbox-x/compare/cdcfb554999572e758b81edf85a007d398626b78..ac91760d9353c301e1da382f93e596238cf6d336.patch";
|
||||
hash = "sha256-G7HbUhYEi6JJklN1z3JiOTnWLuWb27bMDyB/iGwywuY=";
|
||||
})
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -1,18 +0,0 @@
|
||||
{ stdenv, fetchFromGitHub, unstableGitUpdater }:
|
||||
stdenv.mkDerivation {
|
||||
pname = "yuzu-compatibility-list";
|
||||
version = "unstable-2024-02-26";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "flathub";
|
||||
repo = "org.yuzu_emu.yuzu";
|
||||
rev = "9c2032a3c7e64772a8112b77ed8b660242172068";
|
||||
hash = "sha256-ITh/W4vfC9w9t+TJnPeTZwWifnhTNKX54JSSdpgaoBk=";
|
||||
};
|
||||
|
||||
buildCommand = ''
|
||||
cp $src/compatibility_list.json $out
|
||||
'';
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {};
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
{ qt6Packages, makeScopeWithSplicing', generateSplicesForMkScope }:
|
||||
|
||||
makeScopeWithSplicing' {
|
||||
otherSplices = generateSplicesForMkScope "yuzuPackages";
|
||||
f = self: qt6Packages // {
|
||||
compat-list = self.callPackage ./compat-list.nix {};
|
||||
nx_tzdb = self.callPackage ./nx_tzdb.nix {};
|
||||
|
||||
mainline = self.callPackage ./mainline.nix {};
|
||||
early-access = self.callPackage ./early-access {};
|
||||
};
|
||||
}
|
@ -1,37 +0,0 @@
|
||||
{ mainline, fetchzip, fetchgit, runCommand, gnutar }:
|
||||
# The mirror repo for early access builds is missing submodule info,
|
||||
# but the Windows distributions include a source tarball, which in turn
|
||||
# includes the full git metadata. So, grab that and rehydrate it.
|
||||
# This has the unfortunate side effect of requiring two FODs, one
|
||||
# for the Windows download and one for the full repo with submodules.
|
||||
let
|
||||
sources = import ./sources.nix;
|
||||
|
||||
zip = fetchzip {
|
||||
name = "yuzu-ea-windows-dist";
|
||||
url = "https://github.com/pineappleEA/pineapple-src/releases/download/EA-${sources.version}/Windows-Yuzu-EA-${sources.version}.zip";
|
||||
hash = sources.distHash;
|
||||
};
|
||||
|
||||
gitSrc = runCommand "yuzu-ea-dist-unpacked" {
|
||||
src = zip;
|
||||
nativeBuildInputs = [ gnutar ];
|
||||
}
|
||||
''
|
||||
mkdir $out
|
||||
tar xf $src/*.tar.xz --directory=$out --strip-components=1
|
||||
'';
|
||||
|
||||
rehydratedSrc = fetchgit {
|
||||
name = "yuzu-ea-rehydrated";
|
||||
url = gitSrc;
|
||||
fetchSubmodules = true;
|
||||
hash = sources.fullHash;
|
||||
};
|
||||
in mainline.overrideAttrs(old: {
|
||||
pname = "yuzu-early-access";
|
||||
version = sources.version;
|
||||
src = rehydratedSrc;
|
||||
passthru.updateScript = ./update.sh;
|
||||
meta = old.meta // { description = old.meta.description + " - early access branch"; };
|
||||
})
|
@ -1,7 +0,0 @@
|
||||
# Generated by ./update.sh - do not update manually!
|
||||
# Last updated: 2024-02-27
|
||||
{
|
||||
version = "4174";
|
||||
distHash = "sha256:1hzwfsm4m2q29a2ihipk0ij0qakn4730283d6gwbrgr8lzmj8q49";
|
||||
fullHash = "sha256:1ayn7y595iz4smbxq10jjgip04ss35v4vrn8pa1mpnrmyikv79l9";
|
||||
}
|
@ -1,44 +0,0 @@
|
||||
#! /usr/bin/env nix-shell
|
||||
#! nix-shell -i bash -p nix nix-prefetch-git gnutar curl jq unzip
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
cd "$(dirname "$(readlink -f "$0")")"
|
||||
|
||||
log() {
|
||||
tput bold
|
||||
echo "#" "$@"
|
||||
tput sgr0
|
||||
}
|
||||
|
||||
oldVersion="$(nix --experimental-features nix-command eval -f sources.nix --raw version)"
|
||||
newVersion="$(curl "https://api.github.com/repos/pineappleEA/pineapple-src/releases?per_page=1" | jq -r '.[0].tag_name' | cut -d"-" -f2)"
|
||||
|
||||
if [ "$oldVersion" == "$newVersion" ]; then
|
||||
log "Already up to date"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
fetched="$(nix-prefetch-url --unpack --print-path "https://github.com/pineappleEA/pineapple-src/releases/download/EA-${newVersion}/Windows-Yuzu-EA-${newVersion}.zip")"
|
||||
|
||||
eaDistHash="$(echo "${fetched}" | head -n1)"
|
||||
eaDist="$(echo "${fetched}" | tail -n1)"
|
||||
|
||||
eaDistUnpacked="$(mktemp -d)"
|
||||
trap 'rm -rf "$eaDistUnpacked"' EXIT
|
||||
|
||||
log "Unpacking dist..."
|
||||
tar xf "$eaDist"/*.tar.xz --directory="$eaDistUnpacked" --strip-components=1
|
||||
|
||||
log "Rehydrating..."
|
||||
eaFullHash="$(nix-prefetch-git --fetch-submodules --quiet "$eaDistUnpacked" | jq -r '.sha256')"
|
||||
|
||||
cat >sources.nix <<EOF
|
||||
# Generated by ./update.sh - do not update manually!
|
||||
# Last updated: $(date +%F)
|
||||
{
|
||||
version = "$newVersion";
|
||||
distHash = "sha256:$eaDistHash";
|
||||
fullHash = "sha256:$eaFullHash";
|
||||
}
|
||||
EOF
|
@ -1,191 +0,0 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, nix-update-script
|
||||
, wrapQtAppsHook
|
||||
, autoconf
|
||||
, boost
|
||||
, catch2_3
|
||||
, cmake
|
||||
, compat-list
|
||||
, cpp-jwt
|
||||
, cubeb
|
||||
, discord-rpc
|
||||
, enet
|
||||
, fmt
|
||||
, glslang
|
||||
, libopus
|
||||
, libusb1
|
||||
, libva
|
||||
, lz4
|
||||
, nlohmann_json
|
||||
, nv-codec-headers-12
|
||||
, nx_tzdb
|
||||
, pkg-config
|
||||
, qtbase
|
||||
, qtmultimedia
|
||||
, qttools
|
||||
, qtwayland
|
||||
, qtwebengine
|
||||
, SDL2
|
||||
, vulkan-headers
|
||||
, vulkan-loader
|
||||
, yasm
|
||||
, zlib
|
||||
, zstd
|
||||
}:
|
||||
stdenv.mkDerivation(finalAttrs: {
|
||||
pname = "yuzu";
|
||||
version = "1727";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "yuzu-emu";
|
||||
repo = "yuzu-mainline";
|
||||
rev = "mainline-0-${finalAttrs.version}";
|
||||
hash = "sha256-DKIVXy3OGUfdw/mZtPzom40KU51CvXaV+KqRjQseDyk=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
glslang
|
||||
pkg-config
|
||||
qttools
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
# vulkan-headers must come first, so the older propagated versions
|
||||
# don't get picked up by accident
|
||||
vulkan-headers
|
||||
|
||||
boost
|
||||
catch2_3
|
||||
cpp-jwt
|
||||
cubeb
|
||||
discord-rpc
|
||||
# intentionally omitted: dynarmic - prefer vendored version for compatibility
|
||||
enet
|
||||
|
||||
# vendored ffmpeg deps
|
||||
autoconf
|
||||
yasm
|
||||
libva # for accelerated video decode on non-nvidia
|
||||
nv-codec-headers-12 # for accelerated video decode on nvidia
|
||||
# end vendored ffmpeg deps
|
||||
|
||||
fmt
|
||||
# intentionally omitted: gamemode - loaded dynamically at runtime
|
||||
# intentionally omitted: httplib - upstream requires an older version than what we have
|
||||
libopus
|
||||
libusb1
|
||||
# intentionally omitted: LLVM - heavy, only used for stack traces in the debugger
|
||||
lz4
|
||||
nlohmann_json
|
||||
qtbase
|
||||
qtmultimedia
|
||||
qtwayland
|
||||
qtwebengine
|
||||
# intentionally omitted: renderdoc - heavy, developer only
|
||||
SDL2
|
||||
# not packaged in nixpkgs: simpleini
|
||||
# intentionally omitted: stb - header only libraries, vendor uses git snapshot
|
||||
# not packaged in nixpkgs: vulkan-memory-allocator
|
||||
# intentionally omitted: xbyak - prefer vendored version for compatibility
|
||||
zlib
|
||||
zstd
|
||||
];
|
||||
|
||||
# This changes `ir/opt` to `ir/var/empty` in `externals/dynarmic/src/dynarmic/CMakeLists.txt`
|
||||
# making the build fail, as that path does not exist
|
||||
dontFixCmake = true;
|
||||
|
||||
cmakeFlags = [
|
||||
# actually has a noticeable performance impact
|
||||
"-DYUZU_ENABLE_LTO=ON"
|
||||
|
||||
# build with qt6
|
||||
"-DENABLE_QT6=ON"
|
||||
"-DENABLE_QT_TRANSLATION=ON"
|
||||
|
||||
# use system libraries
|
||||
# NB: "external" here means "from the externals/ directory in the source",
|
||||
# so "off" means "use system"
|
||||
"-DYUZU_USE_EXTERNAL_SDL2=OFF"
|
||||
"-DYUZU_USE_EXTERNAL_VULKAN_HEADERS=OFF"
|
||||
|
||||
# don't use system ffmpeg, yuzu uses internal APIs
|
||||
"-DYUZU_USE_BUNDLED_FFMPEG=ON"
|
||||
|
||||
# don't check for missing submodules
|
||||
"-DYUZU_CHECK_SUBMODULES=OFF"
|
||||
|
||||
# enable some optional features
|
||||
"-DYUZU_USE_QT_WEB_ENGINE=ON"
|
||||
"-DYUZU_USE_QT_MULTIMEDIA=ON"
|
||||
"-DUSE_DISCORD_PRESENCE=ON"
|
||||
|
||||
# We dont want to bother upstream with potentially outdated compat reports
|
||||
"-DYUZU_ENABLE_COMPATIBILITY_REPORTING=OFF"
|
||||
"-DENABLE_COMPATIBILITY_LIST_DOWNLOAD=OFF" # We provide this deterministically
|
||||
];
|
||||
|
||||
# Does some handrolled SIMD
|
||||
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isx86_64 "-msse4.1";
|
||||
|
||||
# Fixes vulkan detection.
|
||||
# FIXME: patchelf --add-rpath corrupts the binary for some reason, investigate
|
||||
qtWrapperArgs = [
|
||||
"--prefix LD_LIBRARY_PATH : ${vulkan-loader}/lib"
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
# see https://github.com/NixOS/nixpkgs/issues/114044, setting this through cmakeFlags does not work.
|
||||
cmakeFlagsArray+=(
|
||||
"-DTITLE_BAR_FORMAT_IDLE=${finalAttrs.pname} | ${finalAttrs.version} (nixpkgs) {}"
|
||||
"-DTITLE_BAR_FORMAT_RUNNING=${finalAttrs.pname} | ${finalAttrs.version} (nixpkgs) | {}"
|
||||
)
|
||||
|
||||
# provide pre-downloaded tz data
|
||||
mkdir -p build/externals/nx_tzdb
|
||||
ln -s ${nx_tzdb} build/externals/nx_tzdb/nx_tzdb
|
||||
'';
|
||||
|
||||
# This must be done after cmake finishes as it overwrites the file
|
||||
postConfigure = ''
|
||||
ln -sf ${compat-list} ./dist/compatibility_list/compatibility_list.json
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
install -Dm444 $src/dist/72-yuzu-input.rules $out/lib/udev/rules.d/72-yuzu-input.rules
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script {
|
||||
extraArgs = [ "--version-regex" "mainline-0-(.*)" ];
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://yuzu-emu.org";
|
||||
changelog = "https://yuzu-emu.org/entry";
|
||||
description = "An experimental Nintendo Switch emulator written in C++";
|
||||
longDescription = ''
|
||||
An experimental Nintendo Switch emulator written in C++.
|
||||
Using the mainline branch is recommended for general usage.
|
||||
Using the early-access branch is recommended if you would like to try out experimental features, with a cost of stability.
|
||||
'';
|
||||
mainProgram = "yuzu";
|
||||
platforms = [ "aarch64-linux" "x86_64-linux" ];
|
||||
license = with licenses; [
|
||||
gpl3Plus
|
||||
# Icons
|
||||
asl20 mit cc0
|
||||
];
|
||||
maintainers = with maintainers; [
|
||||
ashley
|
||||
ivar
|
||||
joshuafern
|
||||
sbruder
|
||||
k900
|
||||
];
|
||||
};
|
||||
})
|
@ -1,20 +0,0 @@
|
||||
{ stdenv, fetchurl, unzip, gitUpdater }:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "nx_tzdb";
|
||||
version = "221202";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/lat9nq/tzdb_to_nx/releases/download/${version}/${version}.zip";
|
||||
hash = "sha256-mRzW+iIwrU1zsxHmf+0RArU8BShAoEMvCz+McXFFK3c=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip ];
|
||||
|
||||
buildCommand = ''
|
||||
unzip $src -d $out
|
||||
'';
|
||||
|
||||
passthru.updateScript = gitUpdater {
|
||||
url = "https://github.com/lat9nq/tzdb_to_nx.git";
|
||||
};
|
||||
}
|
@ -1,7 +0,0 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p nix-update
|
||||
#shellcheck shell=bash
|
||||
nix-update -u yuzuPackages.nx_tzdb "$@"
|
||||
nix-update -u yuzuPackages.compat-list "$@"
|
||||
nix-update -u yuzuPackages.mainline "$@"
|
||||
nix-update -u yuzuPackages.early-access --override-filename pkgs/applications/emulators/yuzu/early-access/sources.nix "$@"
|
@ -12,14 +12,14 @@
|
||||
, impy
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "evilpixie";
|
||||
version = "0.3.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bcampbell";
|
||||
repo = "evilpixie";
|
||||
rev = "v${version}";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-+DdAN+xDOYxLgLHUlr75piTEPrWpuOyXvxckhBEl7yU=";
|
||||
};
|
||||
|
||||
@ -51,5 +51,4 @@ stdenv.mkDerivation rec {
|
||||
# https://github.com/bcampbell/evilpixie/issues/28
|
||||
stdenv.isAarch64;
|
||||
};
|
||||
}
|
||||
|
||||
})
|
||||
|
@ -18,7 +18,7 @@
|
||||
, Foundation
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "gnome-obfuscate";
|
||||
version = "0.0.9";
|
||||
|
||||
@ -26,13 +26,13 @@ stdenv.mkDerivation rec {
|
||||
domain = "gitlab.gnome.org";
|
||||
owner = "World";
|
||||
repo = "Obfuscate";
|
||||
rev = version;
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-aUhzact437V/bSsG2Ddu2mC03LbyXFg+hJiuGy5NQfQ=";
|
||||
};
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
inherit src;
|
||||
name = "${pname}-${version}";
|
||||
inherit (finalAttrs) src;
|
||||
name = "${finalAttrs.pname}-${finalAttrs.version}";
|
||||
hash = "sha256-HUQvdCmzjdmuJGDLtC/86yzbRimLzx+XbW29f+Ua48w=";
|
||||
};
|
||||
|
||||
@ -66,4 +66,4 @@ stdenv.mkDerivation rec {
|
||||
mainProgram = "obfuscate";
|
||||
maintainers = with maintainers; [ fgaz ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -1,14 +1,14 @@
|
||||
{ lib, stdenv, fetchFromGitHub, scons, pkg-config, wrapGAppsHook
|
||||
, glfw3, gtk3, libpng12 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "goxel";
|
||||
version = "0.14.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "guillaumechereau";
|
||||
repo = "goxel";
|
||||
rev = "v${version}";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-ueA0YW2n/DXd9AytDzfPtvtXbvuUm4VDwcdvHWObKxc=";
|
||||
};
|
||||
|
||||
@ -38,4 +38,4 @@ stdenv.mkDerivation rec {
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ tilpner fgaz ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "pdfcpu";
|
||||
version = "0.6.0";
|
||||
version = "0.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pdfcpu";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-New0+pWtKdEx/k69pNisNKYj6p998HoEjAhQEDugP/g=";
|
||||
hash = "sha256-FzlukSQSKeQY6H53UfWXwL8bXkOXRhaA92/Kgxh4oms=";
|
||||
# Apparently upstream requires that the compiled executable will know the
|
||||
# commit hash and the date of the commit. This information is also presented
|
||||
# in the output of `pdfcpu version` which we use as a sanity check in the
|
||||
|
@ -4,13 +4,13 @@
|
||||
|
||||
stdenv.mkDerivation (rec {
|
||||
pname = "pqiv";
|
||||
version = "2.12";
|
||||
version = "2.13";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "phillipberndt";
|
||||
repo = "pqiv";
|
||||
rev = version;
|
||||
sha256 = "18nvrqmlifh4m8nfs0d19sb9d1l3a95xc89qxqdr881jcxdsgflw";
|
||||
sha256 = "sha256-Jlc6sd9lRWUC1/2GZnJ0EmVRHxCXP8dTZNZEhJBS7oQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
@ -27,14 +27,14 @@
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "vengi-tools";
|
||||
version = "0.0.28";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mgerhardy";
|
||||
repo = "vengi";
|
||||
rev = "v${version}";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-UjSm/J/y7MUg3Exmw0P56+bcjiLxXdGS2brocdzgJ+c=";
|
||||
};
|
||||
|
||||
@ -107,4 +107,4 @@ stdenv.mkDerivation rec {
|
||||
maintainers = with maintainers; [ fgaz ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cobalt";
|
||||
version = "0.19.0";
|
||||
version = "0.19.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cobalt-org";
|
||||
repo = "cobalt.rs";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-cW9Pj4dTBZ0UmHvrWpx0SREBBaEIb2aaX2cdCUdlFLw=";
|
||||
sha256 = "sha256-W0XbNZDSeSK6oxOD1JeLNF+c6/6cy/WQrrmQbSKeqk4=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-/xkZuGyinQdUGWix/SRtJMJ5nmpXJu39/LxJoTHnT4Q=";
|
||||
cargoHash = "sha256-IM2SKovb8FYwA/c4R3N7M+oVuGfuc5sK+r6FP9YMk+I=";
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
|
||||
|
||||
|
@ -9,11 +9,11 @@
|
||||
}:
|
||||
let
|
||||
pname = "jetbrains-toolbox";
|
||||
version = "2.2.1.19765";
|
||||
version = "2.2.2.20062";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://download.jetbrains.com/toolbox/jetbrains-toolbox-${version}.tar.gz";
|
||||
sha256 = "sha256-53CsE1hmtys5hNY2V+tskgwKg9jDLrEsYF6iY2fJGHU=";
|
||||
sha256 = "sha256-wIO9QQa+YfNNqO5HlijVxBDOgVSsJhtGmfChKA8QpPo=";
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mediainfo";
|
||||
version = "23.11";
|
||||
version = "24.01.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
|
||||
hash = "sha256-gByxsNG//MEibeymISoe41Mi6LsSYwozu7B6kqioycM=";
|
||||
hash = "sha256-MupkbVyGxj1UQY0QsnNiYKtD5Lcn+B6N1ez16bXj/TQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook pkg-config ];
|
||||
|
@ -15,7 +15,7 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "numberstation";
|
||||
version = "1.3.0";
|
||||
version = "1.4.0";
|
||||
|
||||
format = "other";
|
||||
|
||||
@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||
owner = "~martijnbraam";
|
||||
repo = "numberstation";
|
||||
rev = version;
|
||||
hash = "sha256-l4ev47ofBZeUqjJjdhQOHX+mNL9nIHH0mfYdqZW1LMs=";
|
||||
hash = "sha256-0T/Dc2i6auuZiWjcPR72JT8yOrzmdEmbW2PS5YhmEwI=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
@ -60,6 +60,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
changelog = "https://git.sr.ht/~martijnbraam/numberstation/refs/${version}";
|
||||
description = "TOTP Authentication application for mobile";
|
||||
homepage = "https://sr.ht/~martijnbraam/numberstation/";
|
||||
license = licenses.gpl3Only;
|
||||
|
@ -10,14 +10,14 @@
|
||||
, wrapQtAppsHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "openrgb-plugin-effects";
|
||||
version = "0.9";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "OpenRGBDevelopers";
|
||||
repo = "OpenRGBEffectsPlugin";
|
||||
rev = "release_${version}";
|
||||
rev = "release_${finalAttrs.version}";
|
||||
hash = "sha256-8BnHifcFf7ESJgJi/q3ca38zuIVa++BoGlkWxj7gpog=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
@ -47,4 +47,4 @@ stdenv.mkDerivation rec {
|
||||
maintainers = with maintainers; [ fgaz ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -11,14 +11,14 @@
|
||||
, wrapQtAppsHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "openrgb-plugin-hardwaresync";
|
||||
version = "0.9";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "OpenRGBDevelopers";
|
||||
repo = "OpenRGBHardwareSyncPlugin";
|
||||
rev = "release_${version}";
|
||||
rev = "release_${finalAttrs.version}";
|
||||
hash = "sha256-3sQFiqmXhuavce/6v3XBpp6PAduY7t440nXfbfCX9a0=";
|
||||
};
|
||||
|
||||
@ -50,4 +50,4 @@ stdenv.mkDerivation rec {
|
||||
maintainers = with maintainers; [ fgaz ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -87,8 +87,9 @@ let
|
||||
enableFeatures = optionals enableVideoAcceleration [ "VaapiVideoDecoder" "VaapiVideoEncoder" ]
|
||||
++ optional enableVulkan "Vulkan";
|
||||
|
||||
disableFeatures = [ "OutdatedBuildDetector" ] # disable automatic updates
|
||||
# The feature disable is needed for VAAPI to work correctly: https://github.com/brave/brave-browser/issues/20935
|
||||
disableFeatures = optional enableVideoAcceleration "UseChromeOSDirectVideoDecoder";
|
||||
++ optionals enableVideoAcceleration [ "UseChromeOSDirectVideoDecoder" ];
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -3,10 +3,10 @@
|
||||
{
|
||||
firefox = buildMozillaMach rec {
|
||||
pname = "firefox";
|
||||
version = "123.0";
|
||||
version = "123.0.1";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||
sha512 = "a19567a13e1b663e538c4af17491146adad1f0ab977995e8da9ce9ed428008ad20902dee4efb82d54e1319a0e31768609696bc822563d75732b622760129d8bb";
|
||||
sha512 = "e9af61c1ca800edd16ab7a0d24c9a36bbb34813ed0a11ff62389aa38fa83deba394bca5d95cdaad55ad29ffa3c0e5d3dd15ac1099f7fa3649f4b6c835b7498c2";
|
||||
};
|
||||
|
||||
extraPatches = [
|
||||
|
@ -34,16 +34,16 @@ let
|
||||
in
|
||||
buildGoModule rec {
|
||||
pname = "argo";
|
||||
version = "3.5.4";
|
||||
version = "3.5.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "argoproj";
|
||||
repo = "argo";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-23O8YNnMONrlWcTj6gxXQ0xJw0s0pa/ZoY0OKhzEv5o=";
|
||||
hash = "sha256-SONi7GmFgBEA+5l8ftjFP3+hk55eZmhkLLuu5FfyVFo=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-bUCbrHr7N3IB0tnnQ0TlHjaW7tp4iIGFO28KoJEj2sg=";
|
||||
vendorHash = "sha256-XjwtgJdBk9YIro1WlunYmKkuZSrSJTN/BLXn7i3+9xY=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
@ -7,13 +7,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "arkade";
|
||||
version = "0.11.2";
|
||||
version = "0.11.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "alexellis";
|
||||
repo = "arkade";
|
||||
rev = version;
|
||||
hash = "sha256-G8zWPz5pTDjfZJ8DtY1DQRGYMOsGhNXWZEgFYKM/y6I=";
|
||||
hash = "sha256-nRA/3dJn6hUJDppS/tt/WRIoYrRTeuY7ULZXii3LC48=";
|
||||
};
|
||||
|
||||
CGO_ENABLED = 0;
|
||||
|
@ -6,16 +6,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "glooctl";
|
||||
version = "1.16.4";
|
||||
version = "1.16.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "solo-io";
|
||||
repo = "gloo";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-gLm9PEcNg/YeAjT97W9jDOi4ECBrmp2ZAuUTkhZNxyw=";
|
||||
hash = "sha256-pxF5X3fCBeWFLQj8S0xYDcQNRs375RJIrl62nGjZZr0=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-GTd38gSlCKTjfLkAW/Tz22oQJ4FhZB+9vpN/8q4JSCo=";
|
||||
vendorHash = "sha256-kbbgEnpqev7b4Sycmhs8xbu+yO4oMELh9xDmw7YyWYU=";
|
||||
|
||||
subPackages = [ "projects/gloo/cli/cmd" ];
|
||||
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kubeshark";
|
||||
version = "52.1.50";
|
||||
version = "52.1.63";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubeshark";
|
||||
repo = "kubeshark";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-Nefi/FgIrUqCu+46sedZSirrEEJJ2OnOE1PXTQM+y2o=";
|
||||
hash = "sha256-Ub8FsynnsAiLF4YwZHbhmQIJANAe/lCUgfq3ys/dtO8=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-SmvO9DYOXxnmN2dmHPPOguVwEbWSH/xNLBB+idpzopo=";
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "node-problem-detector";
|
||||
version = "0.8.15";
|
||||
version = "0.8.16";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubernetes";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-zuI34TBVN+ZOacn/TyTU1gVa4ujEuJfj3nKpcolH5Tg=";
|
||||
sha256 = "sha256-tuukO7y+aqgu/f1DBZNUkElRTbEeZn+zkfixnFwWWwY=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ lib, buildGoModule, fetchFromGitHub }:
|
||||
{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "popeye";
|
||||
@ -19,6 +19,15 @@ buildGoModule rec {
|
||||
|
||||
vendorHash = "sha256-ThldEPzAwMfNnhUEgHL5/asc+SETKxTrPIJt307tqsg=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
postInstall = ''
|
||||
installShellCompletion --cmd popeye \
|
||||
--bash <($out/bin/popeye completion bash) \
|
||||
--fish <($out/bin/popeye completion fish) \
|
||||
--zsh <($out/bin/popeye completion zsh)
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
installCheckPhase = ''
|
||||
$out/bin/popeye version | grep ${version} > /dev/null
|
||||
|
@ -10,13 +10,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "werf";
|
||||
version = "1.2.295";
|
||||
version = "1.2.296";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "werf";
|
||||
repo = "werf";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-oQDP2Tsxj4c5X2pfj4i+hfnsdjUBYcyF2p61OY04Ozg=";
|
||||
hash = "sha256-D0bWva6Y0x9uMdKMONsiGC3SV2ktGPzfMq9BELqgk3E=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-6q13vMxu0iQgaXS+Z6V0jjSIhxMscw6sLANzK07gAlI=";
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "signalbackup-tools";
|
||||
version = "20240227-1";
|
||||
version = "20240304";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bepaald";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-RW7FbFq201FrRyO+1E0vZ5nenp002E780pImdyUUMJY=";
|
||||
hash = "sha256-FvQaBGWPcewrvLaCzWgsn+cAe0Nye4d1s6IZu9JbcO0=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -19,18 +19,18 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "teams-for-linux";
|
||||
version = "1.4.12";
|
||||
version = "1.4.13";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "IsmaelMartinez";
|
||||
repo = "teams-for-linux";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-LrFF61D2b9+FWnVkb9MYxBJQxMtejuOmGTEtfSj1No4=";
|
||||
hash = "sha256-6e3AFfjm/ajC+StldG92FyC2C5usAOUoZSqihQC9fKw=";
|
||||
};
|
||||
|
||||
offlineCache = fetchYarnDeps {
|
||||
yarnLock = "${finalAttrs.src}/yarn.lock";
|
||||
hash = "sha256-Z2vnLr14F/Etuq9yWH7ygQwa54an7v99LbU3gPcEuII=";
|
||||
hash = "sha256-wyQi1F7TV4TQZFdqRLfo4f90pCaJeRrmNgU8UfY9FjQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ yarn prefetch-yarn-deps nodejs copyDesktopItems makeWrapper ];
|
||||
|
@ -3,7 +3,7 @@
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation {
|
||||
pname = "openrsync";
|
||||
version = "unstable-2022-05-08";
|
||||
|
||||
|
@ -12,12 +12,12 @@
|
||||
, gupnp_1_6
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "upnp-router-control";
|
||||
version = "0.3.4";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://launchpad.net/upnp-router-control/trunk/${version}/+download/upnp-router-control-${version}.tar.xz";
|
||||
url = "https://launchpad.net/upnp-router-control/trunk/${finalAttrs.version}/+download/upnp-router-control-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-28F/OB2fHemn7HLVFEDmefRA5AsEaQKy+Qbcv75z9w0=";
|
||||
};
|
||||
|
||||
@ -50,4 +50,4 @@ stdenv.mkDerivation rec {
|
||||
platforms = platforms.all;
|
||||
mainProgram = "upnp-router-control";
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -8,7 +8,7 @@
|
||||
, miniupnpc
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation {
|
||||
pname = "yaup";
|
||||
version = "unstable-2019-10-16";
|
||||
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "super-productivity";
|
||||
version = "8.0.0";
|
||||
version = "8.0.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/johannesjo/super-productivity/releases/download/v${version}/superProductivity-${version}.AppImage";
|
||||
sha256 = "sha256-VYyJ3tsCyabwNSxLXQsc3GBAmDmdgl50T8ZP2qkXTeM=";
|
||||
sha256 = "sha256-BW/4jP4lh3leAcdy3JHET/PUybN+0Cy9wxMSi57dAcw=";
|
||||
name = "${pname}-${version}.AppImage";
|
||||
};
|
||||
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gh";
|
||||
version = "2.44.1";
|
||||
version = "2.45.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cli";
|
||||
repo = "cli";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-ZcJY9XNkp1Glo0sQ0O9iadsvW4eterkogjlJmQeP+M4=";
|
||||
hash = "sha256-jztBWn/1bDTxR/q27RYJM6boFWyduTKAtIn5zIZK2tU=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-r1zcwBz/mJOv1RU4Ilgg73yH37xu7a/BmqgAkiODq0I=";
|
||||
vendorHash = "sha256-FprVBvYPGWLcUKlWg9JU7yy2KDa/3rceAEHUIYHN4f8=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "git-codereview";
|
||||
version = "1.9.0";
|
||||
version = "1.10.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "golang";
|
||||
repo = "review";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-Nnjo4MwkpFp1OTJZ+eeiJKboBGiRW520iWcJbu8cBnE=";
|
||||
hash = "sha256-aLvx9lYQJYUw2XBj+2P+yEJMboUjmHKzxP5QA3N93JA=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
@ -39,15 +39,15 @@ assert usbSupport -> !udevSupport; # libusb-compat-0_1 won't be used if udev is
|
||||
assert gbmSupport || waylandSupport || x11Support;
|
||||
|
||||
let
|
||||
kodiReleaseDate = "20240109";
|
||||
kodiVersion = "20.3";
|
||||
kodiReleaseDate = "20240302";
|
||||
kodiVersion = "20.5";
|
||||
rel = "Nexus";
|
||||
|
||||
kodi_src = fetchFromGitHub {
|
||||
owner = "xbmc";
|
||||
repo = "xbmc";
|
||||
rev = "${kodiVersion}-${rel}";
|
||||
hash = "sha256-OMm8WhTQiEZvu8jHOUp2zT4Xd4NU3svMobW2k8AAtNI=";
|
||||
hash = "sha256-R/tzk3ZarJ4BTR312p2lTLezeCEsqdQH54ROsNIoJZA=";
|
||||
};
|
||||
|
||||
# see https://github.com/xbmc/xbmc/blob/${kodiVersion}-${rel}/tools/depends/target/ to get suggested versions for all dependencies
|
||||
|
@ -17,9 +17,13 @@
|
||||
, headless ? false
|
||||
, enable32bitGuests ? true
|
||||
, enableWebService ? false
|
||||
, enableKvm ? false
|
||||
, extraConfigureFlags ? ""
|
||||
}:
|
||||
|
||||
# See https://github.com/cyberus-technology/virtualbox-kvm/issues/12
|
||||
assert enableKvm -> !enableHardening;
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
@ -27,6 +31,10 @@ let
|
||||
# Use maintainers/scripts/update.nix to update the version and all related hashes or
|
||||
# change the hashes in extpack.nix and guest-additions/default.nix as well manually.
|
||||
version = "7.0.14";
|
||||
|
||||
# The KVM build is not compatible to VirtualBox's kernel modules. So don't export
|
||||
# modsrc at all.
|
||||
withModsrc = !enableKvm;
|
||||
in stdenv.mkDerivation {
|
||||
pname = "virtualbox";
|
||||
inherit version;
|
||||
@ -36,7 +44,7 @@ in stdenv.mkDerivation {
|
||||
sha256 = "45860d834804a24a163c1bb264a6b1cb802a5bc7ce7e01128072f8d6a4617ca9";
|
||||
};
|
||||
|
||||
outputs = [ "out" "modsrc" ];
|
||||
outputs = [ "out" ] ++ optional withModsrc "modsrc";
|
||||
|
||||
nativeBuildInputs = [ pkg-config which docbook_xsl docbook_xml_dtd_43 yasm glslang ]
|
||||
++ optional (!headless) wrapQtAppsHook;
|
||||
@ -103,7 +111,17 @@ in stdenv.mkDerivation {
|
||||
++ optional (!headless && enableHardening) (substituteAll {
|
||||
src = ./qt-env-vars.patch;
|
||||
qtPluginPath = "${qtbase.bin}/${qtbase.qtPluginPrefix}:${qtsvg.bin}/${qtbase.qtPluginPrefix}:${qtwayland.bin}/${qtbase.qtPluginPrefix}";
|
||||
})
|
||||
})
|
||||
# While the KVM patch should not break any other behavior if --with-kvm is not specified,
|
||||
# we don't take any chances and only apply it if people actually want to use KVM support.
|
||||
++ optional enableKvm (fetchpatch
|
||||
(let
|
||||
patchVersion = "20240226";
|
||||
in {
|
||||
name = "virtualbox-${version}-kvm-dev-${patchVersion}.patch";
|
||||
url = "https://github.com/cyberus-technology/virtualbox-kvm/releases/download/dev-${patchVersion}/virtualbox-${version}-kvm-dev-${patchVersion}.patch";
|
||||
hash = "sha256-3YT1ZN/TwoNWNb2eqOcPF8GTrVGfOPaPb8vpGoPNISY=";
|
||||
}))
|
||||
++ [
|
||||
./qt-dependency-paths.patch
|
||||
# https://github.com/NixOS/nixpkgs/issues/123851
|
||||
@ -165,6 +183,7 @@ in stdenv.mkDerivation {
|
||||
${optionalString (!enable32bitGuests) "--disable-vmmraw"} \
|
||||
${optionalString enableWebService "--enable-webservice"} \
|
||||
${optionalString (open-watcom-bin != null) "--with-ow-dir=${open-watcom-bin}"} \
|
||||
${optionalString (enableKvm) "--with-kvm"} \
|
||||
${extraConfigureFlags} \
|
||||
--disable-kmods
|
||||
sed -e 's@PKG_CONFIG_PATH=.*@PKG_CONFIG_PATH=${libIDL}/lib/pkgconfig:${glib.dev}/lib/pkgconfig ${libIDL}/bin/libIDL-config-2@' \
|
||||
@ -224,7 +243,9 @@ in stdenv.mkDerivation {
|
||||
ln -sv $libexec/nls "$out/share/virtualbox"
|
||||
''}
|
||||
|
||||
cp -rv out/linux.*/${buildType}/bin/src "$modsrc"
|
||||
${optionalString withModsrc ''
|
||||
cp -rv out/linux.*/${buildType}/bin/src "$modsrc"
|
||||
''}
|
||||
|
||||
mkdir -p "$out/share/virtualbox"
|
||||
cp -rv src/VBox/Main/UnattendedTemplates "$out/share/virtualbox"
|
||||
|
@ -114,7 +114,6 @@ let
|
||||
then nugetDeps
|
||||
else mkNugetDeps {
|
||||
inherit name;
|
||||
nugetDeps = import nugetDeps;
|
||||
sourceFile = nugetDeps;
|
||||
}
|
||||
else throw "Defining the `nugetDeps` attribute is required, as to lock the NuGet dependencies. This file can be generated by running the `passthru.fetch-deps` script.";
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ linkFarmFromDrvs, fetchurl }:
|
||||
{ name, nugetDeps, sourceFile ? null }:
|
||||
{ name, nugetDeps ? import sourceFile, sourceFile ? null }:
|
||||
linkFarmFromDrvs "${name}-nuget-deps" (nugetDeps {
|
||||
fetchNuGet = { pname, version, sha256
|
||||
, url ? "https://www.nuget.org/api/v2/package/${pname}/${version}" }:
|
||||
|
@ -23,10 +23,17 @@ export DOTNET_CLI_TELEMETRY_OPTOUT=1
|
||||
|
||||
mapfile -t sources < <(dotnet nuget list source --format short | awk '/^E / { print $2 }')
|
||||
|
||||
declare -a remote_sources
|
||||
declare -A base_addresses
|
||||
|
||||
for index in "${sources[@]}"; do
|
||||
base_addresses[$index]=$(
|
||||
if [[ -d "$index" ]]; then
|
||||
continue
|
||||
fi
|
||||
|
||||
remote_sources+=($index)
|
||||
|
||||
base_addresses[$index]=$(
|
||||
curl --compressed --netrc -fsL "$index" | \
|
||||
jq -r '.resources[] | select(."@type" == "PackageBaseAddress/3.0.0")."@id"')
|
||||
done
|
||||
@ -35,6 +42,7 @@ echo "{ fetchNuGet }: ["
|
||||
|
||||
cd "$pkgs"
|
||||
for package in *; do
|
||||
[[ -d "$package" ]] || continue
|
||||
cd "$package"
|
||||
for version in *; do
|
||||
id=$(xq -r .package.metadata.id "$version"/*.nuspec)
|
||||
@ -44,7 +52,12 @@ for package in *; do
|
||||
fi
|
||||
|
||||
used_source="$(jq -r '.source' "$version"/.nupkg.metadata)"
|
||||
for source in "${sources[@]}"; do
|
||||
|
||||
if [[ -d "$used_source" ]]; then
|
||||
continue
|
||||
fi
|
||||
|
||||
for source in "${remote_sources[@]}"; do
|
||||
url="${base_addresses[$source]}$package/$version/$package.$version.nupkg"
|
||||
if [[ "$source" == "$used_source" ]]; then
|
||||
sha256="$(nix-hash --type sha256 --flat --base32 "$version/$package.$version".nupkg)"
|
||||
|
@ -83,28 +83,7 @@ composerInstallBuildHook() {
|
||||
|
||||
# Since this file cannot be generated in the composer-repository-hook.sh
|
||||
# because the file contains hardcoded nix store paths, we generate it here.
|
||||
composer-local-repo-plugin --no-ansi build-local-repo -m "${composerRepository}" .
|
||||
|
||||
# Remove all the repositories of type "composer" and "vcs"
|
||||
# from the composer.json file.
|
||||
jq -r -c 'del(try .repositories[] | select(.type == "composer" or .type == "vcs"))' composer.json | sponge composer.json
|
||||
|
||||
# Configure composer to disable packagist and avoid using the network.
|
||||
composer config repo.packagist false
|
||||
# Configure composer to use the local repository.
|
||||
composer config repo.composer composer file://"$PWD"/packages.json
|
||||
|
||||
# Since the composer.json file has been modified in the previous step, the
|
||||
# composer.lock file needs to be updated.
|
||||
composer \
|
||||
--lock \
|
||||
--no-ansi \
|
||||
--no-install \
|
||||
--no-interaction \
|
||||
${composerNoDev:+--no-dev} \
|
||||
${composerNoPlugins:+--no-plugins} \
|
||||
${composerNoScripts:+--no-scripts} \
|
||||
update
|
||||
composer-local-repo-plugin --no-ansi build-local-repo-lock -m "${composerRepository}" .
|
||||
|
||||
echo "Finished composerInstallBuildHook"
|
||||
}
|
||||
@ -112,26 +91,7 @@ composerInstallBuildHook() {
|
||||
composerInstallCheckHook() {
|
||||
echo "Executing composerInstallCheckHook"
|
||||
|
||||
if ! composer validate --strict --no-ansi --no-interaction --quiet; then
|
||||
if [ ! -z "${composerStrictValidation-}" ]; then
|
||||
echo
|
||||
echo -e "\e[31mERROR: composer files validation failed\e[0m"
|
||||
echo
|
||||
echo -e '\e[31mThe validation of the composer.json and composer.lock failed.\e[0m'
|
||||
echo -e '\e[31mMake sure that the file composer.lock is consistent with composer.json.\e[0m'
|
||||
echo
|
||||
exit 1
|
||||
else
|
||||
echo
|
||||
echo -e "\e[33mWARNING: composer files validation failed\e[0m"
|
||||
echo
|
||||
echo -e '\e[33mThe validation of the composer.json and composer.lock failed.\e[0m'
|
||||
echo -e '\e[33mMake sure that the file composer.lock is consistent with composer.json.\e[0m'
|
||||
echo
|
||||
echo -e '\e[33mThis check is not blocking, but it is recommended to fix the issue.\e[0m'
|
||||
echo
|
||||
fi
|
||||
fi
|
||||
checkComposerValidate
|
||||
|
||||
echo "Finished composerInstallCheckHook"
|
||||
}
|
||||
@ -151,9 +111,6 @@ composerInstallInstallHook() {
|
||||
${composerNoScripts:+--no-scripts} \
|
||||
install
|
||||
|
||||
# Remove packages.json, we don't need it in the store.
|
||||
rm packages.json
|
||||
|
||||
# Copy the relevant files only in the store.
|
||||
mkdir -p "$out"/share/php/"${pname}"
|
||||
cp -r . "$out"/share/php/"${pname}"/
|
||||
|
@ -63,7 +63,7 @@ composerRepositoryBuildHook() {
|
||||
# Build the local composer repository
|
||||
# The command 'build-local-repo' is provided by the Composer plugin
|
||||
# nix-community/composer-local-repo-plugin.
|
||||
composer-local-repo-plugin --no-ansi build-local-repo ${composerNoDev:+--no-dev} -r repository
|
||||
composer-local-repo-plugin --no-ansi build-local-repo-lock ${composerNoDev:+--no-dev} -r repository
|
||||
|
||||
echo "Finished composerRepositoryBuildHook"
|
||||
}
|
||||
@ -71,26 +71,7 @@ composerRepositoryBuildHook() {
|
||||
composerRepositoryCheckHook() {
|
||||
echo "Executing composerRepositoryCheckHook"
|
||||
|
||||
if ! composer validate --strict --no-ansi --no-interaction --quiet; then
|
||||
if [ ! -z "${composerStrictValidation-}" ]; then
|
||||
echo
|
||||
echo -e "\e[31mERROR: composer files validation failed\e[0m"
|
||||
echo
|
||||
echo -e '\e[31mThe validation of the composer.json and composer.lock failed.\e[0m'
|
||||
echo -e '\e[31mMake sure that the file composer.lock is consistent with composer.json.\e[0m'
|
||||
echo
|
||||
exit 1
|
||||
else
|
||||
echo
|
||||
echo -e "\e[33mWARNING: composer files validation failed\e[0m"
|
||||
echo
|
||||
echo -e '\e[33mThe validation of the composer.json and composer.lock failed.\e[0m'
|
||||
echo -e '\e[33mMake sure that the file composer.lock is consistent with composer.json.\e[0m'
|
||||
echo
|
||||
echo -e '\e[33mThis check is not blocking, but it is recommended to fix the issue.\e[0m'
|
||||
echo
|
||||
fi
|
||||
fi
|
||||
checkComposerValidate
|
||||
|
||||
echo "Finished composerRepositoryCheckHook"
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
declare version
|
||||
declare composerStrictValidation
|
||||
|
||||
setComposeRootVersion() {
|
||||
set +e # Disable exit on error
|
||||
@ -10,3 +11,26 @@ setComposeRootVersion() {
|
||||
|
||||
set -e
|
||||
}
|
||||
|
||||
checkComposerValidate() {
|
||||
if ! composer validate --strict --no-ansi --no-interaction; then
|
||||
if [ "1" == "${composerStrictValidation-}" ]; then
|
||||
echo
|
||||
echo -e "\e[31mERROR: composer files validation failed\e[0m"
|
||||
echo
|
||||
echo -e '\e[31mThe validation of the composer.json and composer.lock failed.\e[0m'
|
||||
echo -e '\e[31mMake sure that the file composer.lock is consistent with composer.json.\e[0m'
|
||||
echo
|
||||
exit 1
|
||||
else
|
||||
echo
|
||||
echo -e "\e[33mWARNING: composer files validation failed\e[0m"
|
||||
echo
|
||||
echo -e '\e[33mThe validation of the composer.json and composer.lock failed.\e[0m'
|
||||
echo -e '\e[33mMake sure that the file composer.lock is consistent with composer.json.\e[0m'
|
||||
echo
|
||||
echo -e '\e[33mThis check is not blocking, but it is recommended to fix the issue.\e[0m'
|
||||
echo
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
@ -29,13 +29,13 @@ let
|
||||
in
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "composer-local-repo-plugin";
|
||||
version = "1.0.3";
|
||||
version = "1.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nix-community";
|
||||
repo = "composer-local-repo-plugin";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-fLJlxcAQ7X28GDK8PVYKxJgTzbspfWxvgRmRK4NZRIA=";
|
||||
hash = "sha256-edbn07r/Uc1g0qOuVBZBs6N1bMN5kIfA1b4FCufdw5M=";
|
||||
};
|
||||
|
||||
COMPOSER_CACHE_DIR = "/dev/null";
|
||||
|
@ -5,16 +5,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "api-linter";
|
||||
version = "1.63.6";
|
||||
version = "1.64.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "googleapis";
|
||||
repo = "api-linter";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-v4giqOTfHVfrEZk/4zf19OFhXJ1n+kqe2Yeioi/VK5w=";
|
||||
hash = "sha256-fkO7wcWivQ1do+KYQJe3OX+WN/jS3cd4pYsZUHojfiU=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-1p7fcg6ZMHxwrk6+KwGhy3jdXX3FpgufbYIv1BIGNKk=";
|
||||
vendorHash = "sha256-RWB2sq3uNRrxGdBzKI03diaa5fF6LvglUV8L4Nz4fyk=";
|
||||
|
||||
subPackages = [ "cmd/api-linter" ];
|
||||
|
||||
|
@ -5,14 +5,14 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "audiness";
|
||||
version = "0.2.0";
|
||||
version = "0.2.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "audiusGmbH";
|
||||
repo = "audiness";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-FSZ3EyLGtTCmeIRg2aHB/U14yPa5CpTLdqIZ6eyRtXQ=";
|
||||
hash = "sha256-QznJdm9wSmxdWxaRYgiaUqFfRs2apLuQOIr226eFIGA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with python3.pkgs; [
|
||||
|
32
pkgs/by-name/cl/cloudrecon/package.nix
Normal file
32
pkgs/by-name/cl/cloudrecon/package.nix
Normal file
@ -0,0 +1,32 @@
|
||||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "cloudrecon";
|
||||
version = "1.0.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "g0ldencybersec";
|
||||
repo = "CloudRecon";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-SslHkwoMelvszrQZvNX28EokBgwnPDBbTUBA9jdJPro=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-hLEmRq7Iw0hHEAla0Ehwk1EfmpBv6ddBuYtq12XdhVc=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
"-w"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Tool to find assets from certificates";
|
||||
homepage = "https://github.com/g0ldencybersec/CloudRecon";
|
||||
changelog = "https://github.com/g0ldencybersec/CloudRecon/releases/tag/v${version}";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ fab ];
|
||||
mainProgram = "cloudrecon";
|
||||
};
|
||||
}
|
@ -10,13 +10,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "hugo";
|
||||
version = "0.123.6";
|
||||
version = "0.123.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gohugoio";
|
||||
repo = "hugo";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-gLow1AcUROid6skLDdaJ9E3mPi99KPoOO/ZFdLBineU=";
|
||||
hash = "sha256-uUE694xbu508vny/sbxndGlsFXnBz45fLhieuK4sX/c=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-V7YRrC+6fOIjXOu7E0kIOZZt++4oFLPhmHeWmOVU3Xw=";
|
||||
|
68
pkgs/by-name/kr/krr/package.nix
Normal file
68
pkgs/by-name/kr/krr/package.nix
Normal file
@ -0,0 +1,68 @@
|
||||
{ lib
|
||||
, python3
|
||||
, fetchFromGitHub
|
||||
, testers
|
||||
, krr
|
||||
}:
|
||||
|
||||
python3.pkgs.buildPythonPackage rec {
|
||||
pname = "krr";
|
||||
version = "1.7.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "robusta-dev";
|
||||
repo = "krr";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-8K97v/8lsLqr88MSOT3peOy0GZp1so9GaipG/t2uR88=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail 'aiostream = "^0.4.5"' 'aiostream = "*"' \
|
||||
--replace-fail 'kubernetes = "^26.1.0"' 'kubernetes = "*"' \
|
||||
--replace-fail 'pydantic = "1.10.7"' 'pydantic = "*"' \
|
||||
--replace-fail 'typer = { extras = ["all"], version = "^0.7.0" }' 'typer = { extras = ["all"], version = "*" }'
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
aiostream
|
||||
alive-progress
|
||||
kubernetes
|
||||
numpy
|
||||
poetry-core
|
||||
prometheus-api-client
|
||||
prometrix
|
||||
pydantic_1
|
||||
slack-sdk
|
||||
typer
|
||||
] ++ typer.optional-dependencies.all;
|
||||
|
||||
nativeCheckInputs = with python3.pkgs; [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"robusta_krr"
|
||||
];
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = krr;
|
||||
command = "krr version";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Prometheus-based Kubernetes resource recommendations";
|
||||
longDescription = ''
|
||||
Robusta KRR (Kubernetes Resource Recommender) is a CLI tool for optimizing
|
||||
resource allocation in Kubernetes clusters. It gathers Pod usage data from
|
||||
Prometheus and recommends requests and limits for CPU and memory. This
|
||||
reduces costs and improves performance.
|
||||
'';
|
||||
homepage = "https://github.com/robusta-dev/krr";
|
||||
changelog = "https://github.com/robusta-dev/krr/releases/tag/v${src.rev}";
|
||||
license = licenses.mit;
|
||||
maintainers = with lib.maintainers; [ azahi ];
|
||||
mainProgram = "krr";
|
||||
};
|
||||
}
|
@ -7,7 +7,7 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kubo";
|
||||
version = "0.26.0"; # When updating, also check if the repo version changed and adjust repoVersion below
|
||||
version = "0.27.0"; # When updating, also check if the repo version changed and adjust repoVersion below
|
||||
rev = "v${version}";
|
||||
|
||||
passthru.repoVersion = "15"; # Also update kubo-migrator when changing the repo version
|
||||
@ -15,7 +15,7 @@ buildGoModule rec {
|
||||
# Kubo makes changes to its source tarball that don't match the git source.
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ipfs/kubo/releases/download/${rev}/kubo-source.tar.gz";
|
||||
hash = "sha256-qvn5VqEPLkehFWamtPGRuDLJ06bd5bn1qZRp05jP2AY=";
|
||||
hash = "sha256-xWVV2AUpogZaMb3v0w/C+DXvR2rmbOj1Bpyb3on2hfY=";
|
||||
};
|
||||
|
||||
# tarball contains multiple files/directories
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
let
|
||||
pname = "lefthook";
|
||||
version = "1.6.4";
|
||||
version = "1.6.5";
|
||||
in
|
||||
buildGoModule {
|
||||
inherit pname version;
|
||||
@ -15,10 +15,10 @@ buildGoModule {
|
||||
owner = "evilmartians";
|
||||
repo = "lefthook";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-j4ejDL0QRpRUoUYYjYAlju0A9mHwtmBTRFQVYrh+xvU=";
|
||||
hash = "sha256-C76yQ9F4QSywGdihDbNh8KwSL2U+rUjb8VpWRByxzVk=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-FEicYJUyn+eT7IqoL4XqIsL6JhYJ8+2UOgc/PTMpuI4=";
|
||||
vendorHash = "sha256-yWT7IX1n8CQSyXAzoncyYHzvYvIr8WzolyvC8/Cuhlo=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
@ -1,23 +1,40 @@
|
||||
{ lib, stdenv, mkDerivation, fetchFromGitHub
|
||||
{ lib, stdenv, fetchFromGitHub
|
||||
, makeDesktopItem, copyDesktopItems, cmake
|
||||
, boost, libvorbis, libsndfile, minizip, gtest, qtwebkit }:
|
||||
, boost, cups, fmt, libvorbis, libsndfile, minizip, gtest, qt6 }:
|
||||
|
||||
mkDerivation rec {
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lsd2dsl";
|
||||
version = "0.5.4";
|
||||
version = "0.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nongeneric";
|
||||
repo = pname;
|
||||
repo = "lsd2dsl";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-PLgfsVVrNBTxI4J0ukEOFRoBkbmB55/sLNn5KyiHeAc=";
|
||||
hash = "sha256-0UsxDNpuWpBrfjh4q3JhZnOyXhHatSa3t/cApiG2JzM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ] ++ lib.optional stdenv.isLinux copyDesktopItems;
|
||||
postPatch = ''
|
||||
substituteInPlace CMakeLists.txt --replace "-Werror" ""
|
||||
'';
|
||||
|
||||
buildInputs = [ boost libvorbis libsndfile minizip gtest qtwebkit ];
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
qt6.wrapQtAppsHook
|
||||
] ++ lib.optional stdenv.isLinux copyDesktopItems;
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = "-Wno-error=unused-result -Wno-error=missing-braces";
|
||||
buildInputs = [
|
||||
boost
|
||||
cups
|
||||
fmt
|
||||
libvorbis
|
||||
libsndfile
|
||||
minizip
|
||||
gtest
|
||||
qt6.qt5compat
|
||||
qt6.qtwebengine
|
||||
];
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-int-conversion";
|
||||
|
||||
desktopItems = lib.singleton (makeDesktopItem {
|
||||
name = "lsd2dsl";
|
@ -2,18 +2,18 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "ludtwig";
|
||||
version = "0.8.2";
|
||||
version = "0.8.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "MalteJanz";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-nNr0iis+wBd+xKJYQL7OWlQnU1DhKztsPHCq3+tX79w=";
|
||||
hash = "sha256-nkyi6X9W92yLaSPCg3zk0z/Pwue6dGK09iCDmWliFeg=";
|
||||
};
|
||||
|
||||
checkType = "debug";
|
||||
|
||||
cargoHash = "sha256-Utho/foZOPz5K3WrOZjAkxvw7+J0RtbW0xvw/Txu/xk=";
|
||||
cargoHash = "sha256-CZOdxrQ/50xznc8cfvi+6QFmMpPOS1st+yVPtAkZ3/A=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Linter / Formatter for Twig template files which respects HTML and your time";
|
||||
|
50
pkgs/by-name/ma/marge-bot/package.nix
Normal file
50
pkgs/by-name/ma/marge-bot/package.nix
Normal file
@ -0,0 +1,50 @@
|
||||
{ lib
|
||||
, python3
|
||||
, fetchFromGitLab
|
||||
}:
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "marge-bot";
|
||||
version = "0.10.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "marge-org";
|
||||
repo = "marge-bot";
|
||||
rev = version;
|
||||
hash = "sha256-2L7c/NEKyjscwpyf/5GtWXr7Ig14IQlRR5IbDYxp8jA=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.cfg --replace "--flake8 --pylint --cov=marge" ""
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
python3.pkgs.setuptools
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
configargparse
|
||||
maya
|
||||
pyyaml
|
||||
requests
|
||||
];
|
||||
|
||||
nativeCheckInputs = with python3.pkgs; [ pytestCheckHook ];
|
||||
disabledTests = [
|
||||
# test broken when run under Nix:
|
||||
# "unittest.mock.InvalidSpecError: Cannot spec a Mock object."
|
||||
"test_get_mr_ci_status"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "marge" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A merge bot for GitLab";
|
||||
homepage = "https://gitlab.com/marge-org/marge-bot";
|
||||
changelog = "https://gitlab.com/marge-org/marge-bot/-/blob/${src.rev}/CHANGELOG.md";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ bcdarwin ];
|
||||
mainProgram = "marge.app";
|
||||
};
|
||||
}
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "mystmd";
|
||||
version = "1.1.44";
|
||||
version = "1.1.45";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "executablebooks";
|
||||
repo = "mystmd";
|
||||
rev = "mystmd@${version}";
|
||||
hash = "sha256-cNpnXEcG7XGQO17HtgRYA0nn1LV8BWEbbzoeeHfh50Q=";
|
||||
hash = "sha256-qHlgAc1ddSVevH/82QCVXjIlht/RMcypTUcY+A/gRRg=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-oflaxF4npCqS3k90G3kJkBkPy1xGL/orG5d4VMqMjlo=";
|
||||
npmDepsHash = "sha256-yEeATMpSEr20MJdzq8HWSSjRBd+rHEq2oMVOnKymWhY=";
|
||||
|
||||
dontNpmInstall = true;
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
assert use-nom -> nix-output-monitor != null;
|
||||
|
||||
let
|
||||
version = "3.5.2";
|
||||
version = "3.5.3";
|
||||
runtimeDeps = [ nvd ] ++ lib.optionals use-nom [ nix-output-monitor ];
|
||||
in
|
||||
rustPlatform.buildRustPackage {
|
||||
@ -25,7 +25,7 @@ rustPlatform.buildRustPackage {
|
||||
owner = "viperML";
|
||||
repo = "nh";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-TwCR7tZvrjsvz6SmgjWYOne7Qz7J2jn4Cr4Er0Yj+LA=";
|
||||
hash = "sha256-37BcFt67NZj4YQ9kqm69O+OJkgt+TXWTu53bvJvOtn8=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
@ -52,7 +52,7 @@ rustPlatform.buildRustPackage {
|
||||
${lib.optionalString use-nom "--set-default NH_NOM 1"}
|
||||
'';
|
||||
|
||||
cargoHash = "sha256-/mYEjIq4dtt9noRDzFWwLZ3CSz7cmlViEGubi6m9R1o=";
|
||||
cargoHash = "sha256-uRibycYznqzdf8QVX6bHfq3J3Imu8KnWCL0ZS1w4KFk=";
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
|
296
pkgs/by-name/pe/pest/composer.lock
generated
296
pkgs/by-name/pe/pest/composer.lock
generated
@ -4,20 +4,20 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "044366114136964b771d15be0e1a89ee",
|
||||
"content-hash": "393fa917247bc6e80a22f6f93d4871ea",
|
||||
"packages": [
|
||||
{
|
||||
"name": "brianium/paratest",
|
||||
"version": "v7.4.1",
|
||||
"version": "v7.4.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/paratestphp/paratest.git",
|
||||
"reference": "b2830e330011d59a799c0002e118f5b4bbdb9604"
|
||||
"reference": "64fcfd0e28a6b8078a19dbf9127be2ee645b92ec"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/paratestphp/paratest/zipball/b2830e330011d59a799c0002e118f5b4bbdb9604",
|
||||
"reference": "b2830e330011d59a799c0002e118f5b4bbdb9604",
|
||||
"url": "https://api.github.com/repos/paratestphp/paratest/zipball/64fcfd0e28a6b8078a19dbf9127be2ee645b92ec",
|
||||
"reference": "64fcfd0e28a6b8078a19dbf9127be2ee645b92ec",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -25,13 +25,13 @@
|
||||
"ext-pcre": "*",
|
||||
"ext-reflection": "*",
|
||||
"ext-simplexml": "*",
|
||||
"fidry/cpu-core-counter": "^1.0.0",
|
||||
"fidry/cpu-core-counter": "^1.1.0",
|
||||
"jean85/pretty-package-versions": "^2.0.5",
|
||||
"php": "~8.2.0 || ~8.3.0",
|
||||
"phpunit/php-code-coverage": "^10.1.11 || ^11.0.0",
|
||||
"phpunit/php-file-iterator": "^4.1.0 || ^5.0.0",
|
||||
"phpunit/php-timer": "^6.0.0 || ^7.0.0",
|
||||
"phpunit/phpunit": "^10.5.9 || ^11.0.2",
|
||||
"phpunit/phpunit": "^10.5.9 || ^11.0.3",
|
||||
"sebastian/environment": "^6.0.1 || ^7.0.0",
|
||||
"symfony/console": "^6.4.3 || ^7.0.3",
|
||||
"symfony/process": "^6.4.3 || ^7.0.3"
|
||||
@ -40,11 +40,11 @@
|
||||
"doctrine/coding-standard": "^12.0.0",
|
||||
"ext-pcov": "*",
|
||||
"ext-posix": "*",
|
||||
"phpstan/phpstan": "^1.10.57",
|
||||
"phpstan/phpstan": "^1.10.58",
|
||||
"phpstan/phpstan-deprecation-rules": "^1.1.4",
|
||||
"phpstan/phpstan-phpunit": "^1.3.15",
|
||||
"phpstan/phpstan-strict-rules": "^1.5.2",
|
||||
"squizlabs/php_codesniffer": "^3.8.1",
|
||||
"squizlabs/php_codesniffer": "^3.9.0",
|
||||
"symfony/filesystem": "^6.4.3 || ^7.0.3"
|
||||
},
|
||||
"bin": [
|
||||
@ -86,7 +86,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/paratestphp/paratest/issues",
|
||||
"source": "https://github.com/paratestphp/paratest/tree/v7.4.1"
|
||||
"source": "https://github.com/paratestphp/paratest/tree/v7.4.3"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -98,7 +98,7 @@
|
||||
"type": "paypal"
|
||||
}
|
||||
],
|
||||
"time": "2024-02-06T13:50:28+00:00"
|
||||
"time": "2024-02-20T07:24:02+00:00"
|
||||
},
|
||||
{
|
||||
"name": "doctrine/deprecations",
|
||||
@ -149,16 +149,16 @@
|
||||
},
|
||||
{
|
||||
"name": "fidry/cpu-core-counter",
|
||||
"version": "1.0.0",
|
||||
"version": "1.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/theofidry/cpu-core-counter.git",
|
||||
"reference": "85193c0b0cb5c47894b5eaec906e946f054e7077"
|
||||
"reference": "f92996c4d5c1a696a6a970e20f7c4216200fcc42"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/85193c0b0cb5c47894b5eaec906e946f054e7077",
|
||||
"reference": "85193c0b0cb5c47894b5eaec906e946f054e7077",
|
||||
"url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/f92996c4d5c1a696a6a970e20f7c4216200fcc42",
|
||||
"reference": "f92996c4d5c1a696a6a970e20f7c4216200fcc42",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -198,7 +198,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/theofidry/cpu-core-counter/issues",
|
||||
"source": "https://github.com/theofidry/cpu-core-counter/tree/1.0.0"
|
||||
"source": "https://github.com/theofidry/cpu-core-counter/tree/1.1.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -206,7 +206,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2023-09-17T21:38:23+00:00"
|
||||
"time": "2024-02-07T09:43:46+00:00"
|
||||
},
|
||||
{
|
||||
"name": "filp/whoops",
|
||||
@ -781,20 +781,21 @@
|
||||
},
|
||||
{
|
||||
"name": "phar-io/manifest",
|
||||
"version": "2.0.3",
|
||||
"version": "2.0.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phar-io/manifest.git",
|
||||
"reference": "97803eca37d319dfa7826cc2437fc020857acb53"
|
||||
"reference": "54750ef60c58e43759730615a392c31c80e23176"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53",
|
||||
"reference": "97803eca37d319dfa7826cc2437fc020857acb53",
|
||||
"url": "https://api.github.com/repos/phar-io/manifest/zipball/54750ef60c58e43759730615a392c31c80e23176",
|
||||
"reference": "54750ef60c58e43759730615a392c31c80e23176",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-dom": "*",
|
||||
"ext-libxml": "*",
|
||||
"ext-phar": "*",
|
||||
"ext-xmlwriter": "*",
|
||||
"phar-io/version": "^3.0.1",
|
||||
@ -835,9 +836,15 @@
|
||||
"description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
|
||||
"support": {
|
||||
"issues": "https://github.com/phar-io/manifest/issues",
|
||||
"source": "https://github.com/phar-io/manifest/tree/2.0.3"
|
||||
"source": "https://github.com/phar-io/manifest/tree/2.0.4"
|
||||
},
|
||||
"time": "2021-07-20T11:28:43+00:00"
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/theseer",
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-03T12:33:53+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phar-io/version",
|
||||
@ -1002,21 +1009,21 @@
|
||||
},
|
||||
{
|
||||
"name": "phpdocumentor/type-resolver",
|
||||
"version": "1.8.0",
|
||||
"version": "1.8.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpDocumentor/TypeResolver.git",
|
||||
"reference": "fad452781b3d774e3337b0c0b245dd8e5a4455fc"
|
||||
"reference": "153ae662783729388a584b4361f2545e4d841e3c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/fad452781b3d774e3337b0c0b245dd8e5a4455fc",
|
||||
"reference": "fad452781b3d774e3337b0c0b245dd8e5a4455fc",
|
||||
"url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/153ae662783729388a584b4361f2545e4d841e3c",
|
||||
"reference": "153ae662783729388a584b4361f2545e4d841e3c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"doctrine/deprecations": "^1.0",
|
||||
"php": "^7.4 || ^8.0",
|
||||
"php": "^7.3 || ^8.0",
|
||||
"phpdocumentor/reflection-common": "^2.0",
|
||||
"phpstan/phpdoc-parser": "^1.13"
|
||||
},
|
||||
@ -1054,22 +1061,22 @@
|
||||
"description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
|
||||
"support": {
|
||||
"issues": "https://github.com/phpDocumentor/TypeResolver/issues",
|
||||
"source": "https://github.com/phpDocumentor/TypeResolver/tree/1.8.0"
|
||||
"source": "https://github.com/phpDocumentor/TypeResolver/tree/1.8.2"
|
||||
},
|
||||
"time": "2024-01-11T11:49:22+00:00"
|
||||
"time": "2024-02-23T11:10:43+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpstan/phpdoc-parser",
|
||||
"version": "1.25.0",
|
||||
"version": "1.26.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpstan/phpdoc-parser.git",
|
||||
"reference": "bd84b629c8de41aa2ae82c067c955e06f1b00240"
|
||||
"reference": "231e3186624c03d7e7c890ec662b81e6b0405227"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/bd84b629c8de41aa2ae82c067c955e06f1b00240",
|
||||
"reference": "bd84b629c8de41aa2ae82c067c955e06f1b00240",
|
||||
"url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/231e3186624c03d7e7c890ec662b81e6b0405227",
|
||||
"reference": "231e3186624c03d7e7c890ec662b81e6b0405227",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -1101,22 +1108,22 @@
|
||||
"description": "PHPDoc parser with support for nullable, intersection and generic types",
|
||||
"support": {
|
||||
"issues": "https://github.com/phpstan/phpdoc-parser/issues",
|
||||
"source": "https://github.com/phpstan/phpdoc-parser/tree/1.25.0"
|
||||
"source": "https://github.com/phpstan/phpdoc-parser/tree/1.26.0"
|
||||
},
|
||||
"time": "2024-01-04T17:06:16+00:00"
|
||||
"time": "2024-02-23T16:05:55+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-code-coverage",
|
||||
"version": "10.1.11",
|
||||
"version": "10.1.12",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
|
||||
"reference": "78c3b7625965c2513ee96569a4dbb62601784145"
|
||||
"reference": "842f72662d6b9edda84c4b6f13885fd9cd53dc63"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/78c3b7625965c2513ee96569a4dbb62601784145",
|
||||
"reference": "78c3b7625965c2513ee96569a4dbb62601784145",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/842f72662d6b9edda84c4b6f13885fd9cd53dc63",
|
||||
"reference": "842f72662d6b9edda84c4b6f13885fd9cd53dc63",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -1173,7 +1180,7 @@
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
|
||||
"security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy",
|
||||
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/10.1.11"
|
||||
"source": "https://github.com/sebastianbergmann/php-code-coverage/tree/10.1.12"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -1181,7 +1188,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2023-12-21T15:38:30+00:00"
|
||||
"time": "2024-03-02T07:22:05+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-file-iterator",
|
||||
@ -1428,16 +1435,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit",
|
||||
"version": "10.5.9",
|
||||
"version": "10.5.11",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
||||
"reference": "0bd663704f0165c9e76fe4f06ffa6a1ca727fdbe"
|
||||
"reference": "0d968f6323deb3dbfeba5bfd4929b9415eb7a9a4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/0bd663704f0165c9e76fe4f06ffa6a1ca727fdbe",
|
||||
"reference": "0bd663704f0165c9e76fe4f06ffa6a1ca727fdbe",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/0d968f6323deb3dbfeba5bfd4929b9415eb7a9a4",
|
||||
"reference": "0d968f6323deb3dbfeba5bfd4929b9415eb7a9a4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -1509,7 +1516,7 @@
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
|
||||
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.9"
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.11"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -1525,7 +1532,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-22T14:35:40+00:00"
|
||||
"time": "2024-02-25T14:05:00+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/container",
|
||||
@ -1632,16 +1639,16 @@
|
||||
},
|
||||
{
|
||||
"name": "sebastian/cli-parser",
|
||||
"version": "2.0.0",
|
||||
"version": "2.0.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/cli-parser.git",
|
||||
"reference": "efdc130dbbbb8ef0b545a994fd811725c5282cae"
|
||||
"reference": "c34583b87e7b7a8055bf6c450c2c77ce32a24084"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/efdc130dbbbb8ef0b545a994fd811725c5282cae",
|
||||
"reference": "efdc130dbbbb8ef0b545a994fd811725c5282cae",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/c34583b87e7b7a8055bf6c450c2c77ce32a24084",
|
||||
"reference": "c34583b87e7b7a8055bf6c450c2c77ce32a24084",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -1676,7 +1683,8 @@
|
||||
"homepage": "https://github.com/sebastianbergmann/cli-parser",
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/cli-parser/issues",
|
||||
"source": "https://github.com/sebastianbergmann/cli-parser/tree/2.0.0"
|
||||
"security": "https://github.com/sebastianbergmann/cli-parser/security/policy",
|
||||
"source": "https://github.com/sebastianbergmann/cli-parser/tree/2.0.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -1684,7 +1692,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2023-02-03T06:58:15+00:00"
|
||||
"time": "2024-03-02T07:12:49+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/code-unit",
|
||||
@ -1934,16 +1942,16 @@
|
||||
},
|
||||
{
|
||||
"name": "sebastian/diff",
|
||||
"version": "5.1.0",
|
||||
"version": "5.1.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/diff.git",
|
||||
"reference": "fbf413a49e54f6b9b17e12d900ac7f6101591b7f"
|
||||
"reference": "c41e007b4b62af48218231d6c2275e4c9b975b2e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/fbf413a49e54f6b9b17e12d900ac7f6101591b7f",
|
||||
"reference": "fbf413a49e54f6b9b17e12d900ac7f6101591b7f",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/c41e007b4b62af48218231d6c2275e4c9b975b2e",
|
||||
"reference": "c41e007b4b62af48218231d6c2275e4c9b975b2e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -1951,7 +1959,7 @@
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^10.0",
|
||||
"symfony/process": "^4.2 || ^5"
|
||||
"symfony/process": "^6.4"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
@ -1989,7 +1997,7 @@
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/diff/issues",
|
||||
"security": "https://github.com/sebastianbergmann/diff/security/policy",
|
||||
"source": "https://github.com/sebastianbergmann/diff/tree/5.1.0"
|
||||
"source": "https://github.com/sebastianbergmann/diff/tree/5.1.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -1997,7 +2005,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2023-12-22T10:55:06+00:00"
|
||||
"time": "2024-03-02T07:15:17+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/environment",
|
||||
@ -2065,16 +2073,16 @@
|
||||
},
|
||||
{
|
||||
"name": "sebastian/exporter",
|
||||
"version": "5.1.1",
|
||||
"version": "5.1.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/exporter.git",
|
||||
"reference": "64f51654862e0f5e318db7e9dcc2292c63cdbddc"
|
||||
"reference": "955288482d97c19a372d3f31006ab3f37da47adf"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/64f51654862e0f5e318db7e9dcc2292c63cdbddc",
|
||||
"reference": "64f51654862e0f5e318db7e9dcc2292c63cdbddc",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/955288482d97c19a372d3f31006ab3f37da47adf",
|
||||
"reference": "955288482d97c19a372d3f31006ab3f37da47adf",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2131,7 +2139,7 @@
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/exporter/issues",
|
||||
"security": "https://github.com/sebastianbergmann/exporter/security/policy",
|
||||
"source": "https://github.com/sebastianbergmann/exporter/tree/5.1.1"
|
||||
"source": "https://github.com/sebastianbergmann/exporter/tree/5.1.2"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2139,20 +2147,20 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2023-09-24T13:22:09+00:00"
|
||||
"time": "2024-03-02T07:17:12+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/global-state",
|
||||
"version": "6.0.1",
|
||||
"version": "6.0.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/global-state.git",
|
||||
"reference": "7ea9ead78f6d380d2a667864c132c2f7b83055e4"
|
||||
"reference": "987bafff24ecc4c9ac418cab1145b96dd6e9cbd9"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/7ea9ead78f6d380d2a667864c132c2f7b83055e4",
|
||||
"reference": "7ea9ead78f6d380d2a667864c132c2f7b83055e4",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/987bafff24ecc4c9ac418cab1145b96dd6e9cbd9",
|
||||
"reference": "987bafff24ecc4c9ac418cab1145b96dd6e9cbd9",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2186,14 +2194,14 @@
|
||||
}
|
||||
],
|
||||
"description": "Snapshotting of global state",
|
||||
"homepage": "http://www.github.com/sebastianbergmann/global-state",
|
||||
"homepage": "https://www.github.com/sebastianbergmann/global-state",
|
||||
"keywords": [
|
||||
"global state"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/global-state/issues",
|
||||
"security": "https://github.com/sebastianbergmann/global-state/security/policy",
|
||||
"source": "https://github.com/sebastianbergmann/global-state/tree/6.0.1"
|
||||
"source": "https://github.com/sebastianbergmann/global-state/tree/6.0.2"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2201,7 +2209,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2023-07-19T07:19:23+00:00"
|
||||
"time": "2024-03-02T07:19:19+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/lines-of-code",
|
||||
@ -2547,16 +2555,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/console",
|
||||
"version": "v7.0.3",
|
||||
"version": "v7.0.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/console.git",
|
||||
"reference": "c5010d50f1ee4b25cfa0201d9915cf1b14071456"
|
||||
"reference": "6b099f3306f7c9c2d2786ed736d0026b2903205f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/console/zipball/c5010d50f1ee4b25cfa0201d9915cf1b14071456",
|
||||
"reference": "c5010d50f1ee4b25cfa0201d9915cf1b14071456",
|
||||
"url": "https://api.github.com/repos/symfony/console/zipball/6b099f3306f7c9c2d2786ed736d0026b2903205f",
|
||||
"reference": "6b099f3306f7c9c2d2786ed736d0026b2903205f",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -2620,7 +2628,7 @@
|
||||
"terminal"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/console/tree/v7.0.3"
|
||||
"source": "https://github.com/symfony/console/tree/v7.0.4"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -2636,7 +2644,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T15:02:46+00:00"
|
||||
"time": "2024-02-22T20:27:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/finder",
|
||||
@ -3022,16 +3030,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/process",
|
||||
"version": "v7.0.3",
|
||||
"version": "v7.0.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/process.git",
|
||||
"reference": "937a195147e0c27b2759ade834169ed006d0bc74"
|
||||
"reference": "0e7727191c3b71ebec6d529fa0e50a01ca5679e9"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/process/zipball/937a195147e0c27b2759ade834169ed006d0bc74",
|
||||
"reference": "937a195147e0c27b2759ade834169ed006d0bc74",
|
||||
"url": "https://api.github.com/repos/symfony/process/zipball/0e7727191c3b71ebec6d529fa0e50a01ca5679e9",
|
||||
"reference": "0e7727191c3b71ebec6d529fa0e50a01ca5679e9",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -3063,7 +3071,7 @@
|
||||
"description": "Executes commands in sub-processes",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/process/tree/v7.0.3"
|
||||
"source": "https://github.com/symfony/process/tree/v7.0.4"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3079,7 +3087,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T15:02:46+00:00"
|
||||
"time": "2024-02-22T20:27:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/service-contracts",
|
||||
@ -3165,16 +3173,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/string",
|
||||
"version": "v7.0.3",
|
||||
"version": "v7.0.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/string.git",
|
||||
"reference": "524aac4a280b90a4420d8d6a040718d0586505ac"
|
||||
"reference": "f5832521b998b0bec40bee688ad5de98d4cf111b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/string/zipball/524aac4a280b90a4420d8d6a040718d0586505ac",
|
||||
"reference": "524aac4a280b90a4420d8d6a040718d0586505ac",
|
||||
"url": "https://api.github.com/repos/symfony/string/zipball/f5832521b998b0bec40bee688ad5de98d4cf111b",
|
||||
"reference": "f5832521b998b0bec40bee688ad5de98d4cf111b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -3231,7 +3239,7 @@
|
||||
"utf8"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/string/tree/v7.0.3"
|
||||
"source": "https://github.com/symfony/string/tree/v7.0.4"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3247,7 +3255,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-29T15:41:16+00:00"
|
||||
"time": "2024-02-01T13:17:36+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ta-tikoma/phpunit-architecture-test",
|
||||
@ -3310,16 +3318,16 @@
|
||||
},
|
||||
{
|
||||
"name": "theseer/tokenizer",
|
||||
"version": "1.2.2",
|
||||
"version": "1.2.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/theseer/tokenizer.git",
|
||||
"reference": "b2ad5003ca10d4ee50a12da31de12a5774ba6b96"
|
||||
"reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/theseer/tokenizer/zipball/b2ad5003ca10d4ee50a12da31de12a5774ba6b96",
|
||||
"reference": "b2ad5003ca10d4ee50a12da31de12a5774ba6b96",
|
||||
"url": "https://api.github.com/repos/theseer/tokenizer/zipball/737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2",
|
||||
"reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -3348,7 +3356,7 @@
|
||||
"description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
|
||||
"support": {
|
||||
"issues": "https://github.com/theseer/tokenizer/issues",
|
||||
"source": "https://github.com/theseer/tokenizer/tree/1.2.2"
|
||||
"source": "https://github.com/theseer/tokenizer/tree/1.2.3"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -3356,7 +3364,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2023-11-20T00:12:19+00:00"
|
||||
"time": "2024-03-03T12:36:25+00:00"
|
||||
},
|
||||
{
|
||||
"name": "webmozart/assert",
|
||||
@ -3420,39 +3428,38 @@
|
||||
"packages-dev": [
|
||||
{
|
||||
"name": "ergebnis/phpstan-rules",
|
||||
"version": "2.1.0",
|
||||
"version": "2.2.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/ergebnis/phpstan-rules.git",
|
||||
"reference": "119e229c48688946450ccca9f1c57c9ca4fb6f02"
|
||||
"reference": "2e9946491d39ea1eb043738309895e08f025a7a0"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/ergebnis/phpstan-rules/zipball/119e229c48688946450ccca9f1c57c9ca4fb6f02",
|
||||
"reference": "119e229c48688946450ccca9f1c57c9ca4fb6f02",
|
||||
"url": "https://api.github.com/repos/ergebnis/phpstan-rules/zipball/2e9946491d39ea1eb043738309895e08f025a7a0",
|
||||
"reference": "2e9946491d39ea1eb043738309895e08f025a7a0",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-mbstring": "*",
|
||||
"nikic/php-parser": "^4.2.3",
|
||||
"nikic/php-parser": "^4.2.3 || ^5.0.0",
|
||||
"php": "~8.1.0 || ~8.2.0 || ~8.3.0",
|
||||
"phpstan/phpstan": "^1.10.21"
|
||||
},
|
||||
"require-dev": {
|
||||
"doctrine/orm": "^2.16.1",
|
||||
"ergebnis/composer-normalize": "^2.35.0",
|
||||
"ergebnis/license": "^2.1.0",
|
||||
"ergebnis/php-cs-fixer-config": "^5.13.0",
|
||||
"ergebnis/phpunit-slow-test-detector": "^2.3.0",
|
||||
"infection/infection": "~0.27.0",
|
||||
"nette/di": "^3.1.3",
|
||||
"doctrine/orm": "^3.0.0",
|
||||
"ergebnis/composer-normalize": "^2.42.0",
|
||||
"ergebnis/license": "^2.4.0",
|
||||
"ergebnis/php-cs-fixer-config": "^6.22.0",
|
||||
"ergebnis/phpunit-slow-test-detector": "^2.10.0",
|
||||
"nette/di": "^3.2.0",
|
||||
"phpstan/phpstan-deprecation-rules": "^1.1.4",
|
||||
"phpstan/phpstan-strict-rules": "^1.1.0",
|
||||
"phpunit/phpunit": "^10.3.2",
|
||||
"phpstan/phpstan-strict-rules": "^1.5.2",
|
||||
"phpunit/phpunit": "^10.5.10",
|
||||
"psalm/plugin-phpunit": "~0.18.4",
|
||||
"psr/container": "^1.1.2",
|
||||
"rector/rector": "~0.17.13",
|
||||
"vimeo/psalm": "^5.14.1"
|
||||
"psr/container": "^2.0.2",
|
||||
"rector/rector": "^1.0.0",
|
||||
"vimeo/psalm": "^5.21.1"
|
||||
},
|
||||
"type": "phpstan-extension",
|
||||
"extra": {
|
||||
@ -3474,34 +3481,35 @@
|
||||
"authors": [
|
||||
{
|
||||
"name": "Andreas Möller",
|
||||
"email": "am@localheinz.com"
|
||||
"email": "am@localheinz.com",
|
||||
"homepage": "https://localheinz.com"
|
||||
}
|
||||
],
|
||||
"description": "Provides additional rules for phpstan/phpstan.",
|
||||
"description": "Provides rules for phpstan/phpstan.",
|
||||
"homepage": "https://github.com/ergebnis/phpstan-rules",
|
||||
"keywords": [
|
||||
"PHPStan",
|
||||
"phpstan-extreme-rules",
|
||||
"phpstan-rules"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/ergebnis/phpstan-rules/issues",
|
||||
"security": "https://github.com/ergebnis/phpstan-rules/blob/main/.github/SECURITY.md",
|
||||
"source": "https://github.com/ergebnis/phpstan-rules"
|
||||
},
|
||||
"time": "2023-08-17T10:28:37+00:00"
|
||||
"time": "2024-02-07T17:49:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laravel/pint",
|
||||
"version": "v1.13.10",
|
||||
"version": "v1.14.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laravel/pint.git",
|
||||
"reference": "e2b5060885694ca30ac008c05dc9d47f10ed1abf"
|
||||
"reference": "6b127276e3f263f7bb17d5077e9e0269e61b2a0e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laravel/pint/zipball/e2b5060885694ca30ac008c05dc9d47f10ed1abf",
|
||||
"reference": "e2b5060885694ca30ac008c05dc9d47f10ed1abf",
|
||||
"url": "https://api.github.com/repos/laravel/pint/zipball/6b127276e3f263f7bb17d5077e9e0269e61b2a0e",
|
||||
"reference": "6b127276e3f263f7bb17d5077e9e0269e61b2a0e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -3512,13 +3520,13 @@
|
||||
"php": "^8.1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"friendsofphp/php-cs-fixer": "^3.47.1",
|
||||
"illuminate/view": "^10.41.0",
|
||||
"friendsofphp/php-cs-fixer": "^3.49.0",
|
||||
"illuminate/view": "^10.43.0",
|
||||
"larastan/larastan": "^2.8.1",
|
||||
"laravel-zero/framework": "^10.3.0",
|
||||
"mockery/mockery": "^1.6.7",
|
||||
"nunomaduro/termwind": "^1.15.1",
|
||||
"pestphp/pest": "^2.31.0"
|
||||
"pestphp/pest": "^2.33.6"
|
||||
},
|
||||
"bin": [
|
||||
"builds/pint"
|
||||
@ -3554,7 +3562,7 @@
|
||||
"issues": "https://github.com/laravel/pint/issues",
|
||||
"source": "https://github.com/laravel/pint"
|
||||
},
|
||||
"time": "2024-01-22T09:04:15+00:00"
|
||||
"time": "2024-02-20T17:38:05+00:00"
|
||||
},
|
||||
{
|
||||
"name": "nette/utils",
|
||||
@ -3777,16 +3785,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpstan/phpstan",
|
||||
"version": "1.10.57",
|
||||
"version": "1.10.59",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/phpstan/phpstan.git",
|
||||
"reference": "1627b1d03446904aaa77593f370c5201d2ecc34e"
|
||||
"reference": "e607609388d3a6d418a50a49f7940e8086798281"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/1627b1d03446904aaa77593f370c5201d2ecc34e",
|
||||
"reference": "1627b1d03446904aaa77593f370c5201d2ecc34e",
|
||||
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/e607609388d3a6d418a50a49f7940e8086798281",
|
||||
"reference": "e607609388d3a6d418a50a49f7940e8086798281",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -3835,7 +3843,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-24T11:51:34+00:00"
|
||||
"time": "2024-02-20T13:59:13+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpstan/phpstan-strict-rules",
|
||||
@ -4016,16 +4024,16 @@
|
||||
},
|
||||
{
|
||||
"name": "symfony/var-dumper",
|
||||
"version": "v6.4.3",
|
||||
"version": "v6.4.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/var-dumper.git",
|
||||
"reference": "0435a08f69125535336177c29d56af3abc1f69da"
|
||||
"reference": "b439823f04c98b84d4366c79507e9da6230944b1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/0435a08f69125535336177c29d56af3abc1f69da",
|
||||
"reference": "0435a08f69125535336177c29d56af3abc1f69da",
|
||||
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/b439823f04c98b84d4366c79507e9da6230944b1",
|
||||
"reference": "b439823f04c98b84d4366c79507e9da6230944b1",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -4081,7 +4089,7 @@
|
||||
"dump"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/var-dumper/tree/v6.4.3"
|
||||
"source": "https://github.com/symfony/var-dumper/tree/v6.4.4"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4097,20 +4105,20 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-23T14:53:30+00:00"
|
||||
"time": "2024-02-15T11:23:52+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symplify/phpstan-rules",
|
||||
"version": "12.4.7",
|
||||
"version": "12.4.8",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symplify/phpstan-rules.git",
|
||||
"reference": "7ebbcf2883c5e5ee3807c6580f7a9865970e83b7"
|
||||
"reference": "393656aaf9fd09d9dc40d658c57ef222dd1f082d"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symplify/phpstan-rules/zipball/7ebbcf2883c5e5ee3807c6580f7a9865970e83b7",
|
||||
"reference": "7ebbcf2883c5e5ee3807c6580f7a9865970e83b7",
|
||||
"url": "https://api.github.com/repos/symplify/phpstan-rules/zipball/393656aaf9fd09d9dc40d658c57ef222dd1f082d",
|
||||
"reference": "393656aaf9fd09d9dc40d658c57ef222dd1f082d",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@ -4140,7 +4148,7 @@
|
||||
"description": "Set of Symplify rules for PHPStan",
|
||||
"support": {
|
||||
"issues": "https://github.com/symplify/phpstan-rules/issues",
|
||||
"source": "https://github.com/symplify/phpstan-rules/tree/12.4.7"
|
||||
"source": "https://github.com/symplify/phpstan-rules/tree/12.4.8"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@ -4152,7 +4160,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2024-01-17T11:30:56+00:00"
|
||||
"time": "2024-02-09T21:23:31+00:00"
|
||||
},
|
||||
{
|
||||
"name": "thecodingmachine/phpstan-strict-rules",
|
||||
|
@ -2,17 +2,17 @@
|
||||
|
||||
php.buildComposerProject (finalAttrs: {
|
||||
pname = "pest";
|
||||
version = "2.33.4";
|
||||
version = "2.34.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pestphp";
|
||||
repo = "pest";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-9AJww0mynlacBsQvqb++vWn0vsapxFeXsA/tJJEQGFI=";
|
||||
hash = "sha256-499DHFrPcWl6TwycZidGzLqLztmVkgC3jzHZV69p7kE=";
|
||||
};
|
||||
|
||||
composerLock = ./composer.lock;
|
||||
vendorHash = "sha256-Z3vmHqySLU0zRqnDoVTt6FURxtJjVOyUXlURSsO6XE8=";
|
||||
vendorHash = "sha256-Ofz8v3gUuZryN5z6CBfxm+UQ8z0aTkkum1am5x1LicA=";
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/pestphp/pest/releases/tag/v${finalAttrs.version}";
|
||||
|
28
pkgs/by-name/py/pynitrokey/package.nix
Normal file
28
pkgs/by-name/py/pynitrokey/package.nix
Normal file
@ -0,0 +1,28 @@
|
||||
{ python3
|
||||
, fetchPypi
|
||||
, rustPlatform
|
||||
}:
|
||||
|
||||
let
|
||||
python = python3.override {
|
||||
packageOverrides = self: super: {
|
||||
# https://github.com/nxp-mcuxpresso/spsdk/issues/64
|
||||
cryptography = super.cryptography.overridePythonAttrs (old: rec {
|
||||
version = "41.0.7";
|
||||
src = fetchPypi {
|
||||
inherit (old) pname;
|
||||
inherit version;
|
||||
hash = "sha256-E/k86b6oAWwlOzSvxr1qdZk+XEBnLtVAWpyDLw1KALw=";
|
||||
};
|
||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
inherit src;
|
||||
sourceRoot = "${old.pname}-${version}/${old.cargoRoot}";
|
||||
name = "${old.pname}-${version}";
|
||||
hash = "sha256-VeZhKisCPDRvmSjGNwCgJJeVj65BZ0Ge+yvXbZw86Rw=";
|
||||
};
|
||||
patches = [ ];
|
||||
doCheck = false; # would require overriding cryptography-vectors
|
||||
});
|
||||
};
|
||||
};
|
||||
in with python.pkgs; toPythonApplication pynitrokey
|
@ -2,7 +2,7 @@
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "pyprland";
|
||||
version = "2.0.4";
|
||||
version = "2.0.5";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = python3Packages.pythonOlder "3.10";
|
||||
@ -11,7 +11,7 @@ python3Packages.buildPythonApplication rec {
|
||||
owner = "hyprland-community";
|
||||
repo = "pyprland";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-5N1kDD3ZDQMgO2mwggzfonUa/iXW19uBarrtzeWFS3I=";
|
||||
hash = "sha256-VaNJ6hSdcH23Vk7JJpmNV6Qxb7gK5xWK6WHdeyfjUvQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with python3Packages; [ poetry-core ];
|
||||
|
@ -7,10 +7,10 @@
|
||||
inherit buildUnstable;
|
||||
}).overrideAttrs (finalAttrs: _: {
|
||||
pname = "renode-unstable";
|
||||
version = "1.14.0+20240226git732d357b4";
|
||||
version = "1.14.0+20240305gitcec51e561";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://builds.renode.io/renode-${finalAttrs.version}.linux-portable.tar.gz";
|
||||
hash = "sha256-08xV/6ch6dWA4pwg8tuDywYhQ4ZIFRD5zegojDZtAHE=";
|
||||
hash = "sha256-dXT4C/s7Aygqhq0U6MiPsQL8ZvjPfTzKYuhA6aRQKlI=";
|
||||
};
|
||||
})
|
||||
|
@ -10,13 +10,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "sopwith";
|
||||
version = "2.3.0";
|
||||
version = "2.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fragglet";
|
||||
repo = "sdl-sopwith";
|
||||
rev = "refs/tags/sdl-sopwith-${version}";
|
||||
hash = "sha256-C0OpFA3q3K5lgoVe0F03/zXlNba/zW7YEIH+2BV/nCI=";
|
||||
hash = "sha256-7/xTg41NYxzeGNyt/ClbM/uHMTAE87wn6vc9Ai6P+30=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -6,16 +6,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "steamguard-cli";
|
||||
version = "0.12.6";
|
||||
version = "0.13.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dyc3";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-LKzN4bNhouwOiTx3pEOLw3bDqRAhKkPi25i0yP/n0PI=";
|
||||
hash = "sha256-+Lax9MaNyrsckgx7HtpXC1zBWcZNt16inY8qil0CVLQ=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-SLbT2538maN2gQAf8BdRHpDRcYjA9lkMgCpiEYOas28=";
|
||||
cargoHash = "sha256-4QyFNy7oGWKScKZXQc63TxsI3avyEVSlqJAmv+lg1GE=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
postInstall = ''
|
||||
|
51
pkgs/by-name/su/subtitlecomposer/package.nix
Normal file
51
pkgs/by-name/su/subtitlecomposer/package.nix
Normal file
@ -0,0 +1,51 @@
|
||||
{ lib
|
||||
, fetchFromGitLab
|
||||
, cmake
|
||||
, extra-cmake-modules
|
||||
, ffmpeg
|
||||
, openal
|
||||
, stdenv
|
||||
, libsForQt5
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "subtitlecomposer";
|
||||
version = "0.8.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "invent.kde.org";
|
||||
owner = "multimedia";
|
||||
repo = "subtitlecomposer";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-RKS3VTtpxnox0hzessMHmoGPpT+Ho0b3fxtQMGw9OrM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake extra-cmake-modules libsForQt5.wrapQtAppsHook ];
|
||||
buildInputs = [ ffmpeg openal ] ++ (with libsForQt5; [
|
||||
kcodecs
|
||||
kconfig
|
||||
kconfigwidgets
|
||||
kcoreaddons
|
||||
ki18n
|
||||
kio
|
||||
ktextwidgets
|
||||
kwidgetsaddons
|
||||
kxmlgui
|
||||
sonnet
|
||||
]);
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://apps.kde.org/subtitlecomposer";
|
||||
description = "An open source text-based subtitle editor";
|
||||
longDescription = ''
|
||||
An open source text-based subtitle editor that supports basic and
|
||||
advanced editing operations, aiming to become an improved version of
|
||||
Subtitle Workshop for every platform supported by Plasma Frameworks.
|
||||
'';
|
||||
changelog = "https://invent.kde.org/multimedia/subtitlecomposer/-/blob/master/ChangeLog";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ kugland ];
|
||||
mainProgram = "subtitlecomposer";
|
||||
platforms = with platforms; linux ++ freebsd ++ windows;
|
||||
};
|
||||
}
|
66
pkgs/by-name/uv/uv/Cargo.lock
generated
66
pkgs/by-name/uv/uv/Cargo.lock
generated
@ -421,15 +421,6 @@ dependencies = [
|
||||
"tempfile",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "camino"
|
||||
version = "1.1.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c"
|
||||
dependencies = [
|
||||
"serde",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "cargo-util"
|
||||
version = "0.2.9"
|
||||
@ -1276,29 +1267,6 @@ dependencies = [
|
||||
"scroll",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "gourgeist"
|
||||
version = "0.0.4"
|
||||
dependencies = [
|
||||
"anstream",
|
||||
"cachedir",
|
||||
"camino",
|
||||
"clap",
|
||||
"directories",
|
||||
"fs-err",
|
||||
"platform-host",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"tempfile",
|
||||
"thiserror",
|
||||
"tracing",
|
||||
"tracing-subscriber",
|
||||
"uv-cache",
|
||||
"uv-fs",
|
||||
"uv-interpreter",
|
||||
"which",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "h2"
|
||||
version = "0.3.24"
|
||||
@ -4133,7 +4101,7 @@ checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a"
|
||||
|
||||
[[package]]
|
||||
name = "uv"
|
||||
version = "0.1.13"
|
||||
version = "0.1.14"
|
||||
dependencies = [
|
||||
"anstream",
|
||||
"anyhow",
|
||||
@ -4152,7 +4120,6 @@ dependencies = [
|
||||
"flate2",
|
||||
"fs-err",
|
||||
"futures",
|
||||
"gourgeist",
|
||||
"indexmap 2.2.3",
|
||||
"indicatif",
|
||||
"indoc",
|
||||
@ -4199,6 +4166,7 @@ dependencies = [
|
||||
"uv-normalize",
|
||||
"uv-resolver",
|
||||
"uv-traits",
|
||||
"uv-virtualenv",
|
||||
"uv-warnings",
|
||||
"which",
|
||||
]
|
||||
@ -4218,7 +4186,6 @@ dependencies = [
|
||||
"anyhow",
|
||||
"distribution-types",
|
||||
"fs-err",
|
||||
"gourgeist",
|
||||
"indoc",
|
||||
"insta",
|
||||
"itertools 0.12.1",
|
||||
@ -4240,6 +4207,7 @@ dependencies = [
|
||||
"uv-fs",
|
||||
"uv-interpreter",
|
||||
"uv-traits",
|
||||
"uv-virtualenv",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -4322,7 +4290,6 @@ dependencies = [
|
||||
"distribution-types",
|
||||
"fs-err",
|
||||
"futures",
|
||||
"gourgeist",
|
||||
"indicatif",
|
||||
"install-wheel-rs",
|
||||
"itertools 0.12.1",
|
||||
@ -4358,6 +4325,7 @@ dependencies = [
|
||||
"uv-normalize",
|
||||
"uv-resolver",
|
||||
"uv-traits",
|
||||
"uv-virtualenv",
|
||||
"which",
|
||||
]
|
||||
|
||||
@ -4369,7 +4337,6 @@ dependencies = [
|
||||
"distribution-types",
|
||||
"fs-err",
|
||||
"futures",
|
||||
"gourgeist",
|
||||
"itertools 0.12.1",
|
||||
"pep508_rs",
|
||||
"platform-host",
|
||||
@ -4387,6 +4354,7 @@ dependencies = [
|
||||
"uv-interpreter",
|
||||
"uv-resolver",
|
||||
"uv-traits",
|
||||
"uv-virtualenv",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -4575,7 +4543,6 @@ dependencies = [
|
||||
"either",
|
||||
"fs-err",
|
||||
"futures",
|
||||
"gourgeist",
|
||||
"indexmap 2.2.3",
|
||||
"insta",
|
||||
"install-wheel-rs",
|
||||
@ -4609,6 +4576,7 @@ dependencies = [
|
||||
"uv-interpreter",
|
||||
"uv-normalize",
|
||||
"uv-traits",
|
||||
"uv-virtualenv",
|
||||
"uv-warnings",
|
||||
"zip",
|
||||
]
|
||||
@ -4630,6 +4598,28 @@ dependencies = [
|
||||
"uv-normalize",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "uv-virtualenv"
|
||||
version = "0.0.4"
|
||||
dependencies = [
|
||||
"anstream",
|
||||
"cachedir",
|
||||
"clap",
|
||||
"directories",
|
||||
"fs-err",
|
||||
"platform-host",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"tempfile",
|
||||
"thiserror",
|
||||
"tracing",
|
||||
"tracing-subscriber",
|
||||
"uv-cache",
|
||||
"uv-fs",
|
||||
"uv-interpreter",
|
||||
"which",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "uv-warnings"
|
||||
version = "0.0.1"
|
||||
|
@ -10,13 +10,13 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "uv";
|
||||
version = "0.1.13";
|
||||
version = "0.1.14";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "astral-sh";
|
||||
repo = "uv";
|
||||
rev = version;
|
||||
hash = "sha256-MPDzuk6pE+uKr9ic0Q9gIk1yByZ/FdcVZx6ZheECR8A=";
|
||||
hash = "sha256-2YqmqqkC6tnjuJ+bekf4WHRohxYS0nvJsH6AvLdCVKs=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
|
@ -2,17 +2,35 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "VictoriaMetrics";
|
||||
version = "1.97.1";
|
||||
version = "1.99.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-zaRXvktHqsM/pZd7DsCAXCSI2jaPZ3iKHLQqDILZ9pc=";
|
||||
hash = "sha256-IHUmxdCOzvA2JL06k/ei6/OTVWHTL1TiKKYZB1hgqyA=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
||||
subPackages = [
|
||||
"app/victoria-logs"
|
||||
"app/victoria-metrics"
|
||||
"app/vlinsert"
|
||||
"app/vlselect"
|
||||
"app/vlstorage"
|
||||
"app/vmagent"
|
||||
"app/vmalert-tool"
|
||||
"app/vmauth"
|
||||
"app/vmctl"
|
||||
"app/vminsert"
|
||||
"app/vmselect"
|
||||
"app/vmstorage"
|
||||
"app/vmbackup"
|
||||
"app/vmrestore"
|
||||
"app/vmui"
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# main module (github.com/VictoriaMetrics/VictoriaMetrics) does not contain package
|
||||
# github.com/VictoriaMetrics/VictoriaMetrics/app/vmui/packages/vmui/web
|
@ -5,16 +5,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "wit-bindgen";
|
||||
version = "0.20.0";
|
||||
version = "0.21.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bytecodealliance";
|
||||
repo = "wit-bindgen";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-8z6WgKahb01A9RAJsmavgGAeXkh6Hcr6qnzLhcfuHbw=";
|
||||
hash = "sha256-rSPxvEZf4bnQfLNCmyZV7oOuhG/hRAcDs1zPmfovJ8o=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-v14p4b2nUFtXs15b3zmYKAG1am+KDRfw2MfrjNQFjvw=";
|
||||
cargoHash = "sha256-oHSsbGLz8OcAfLeNA1yqVVRHa0ZkE8UoJn795t8xxGs=";
|
||||
|
||||
# Some tests fail because they need network access to install the `wasm32-unknown-unknown` target.
|
||||
# However, GitHub Actions ensures a proper build.
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "JuliaMono-ttf";
|
||||
version = "0.053";
|
||||
version = "0.054";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/cormullion/juliamono/releases/download/v${version}/${pname}.tar.gz";
|
||||
stripRoot = false;
|
||||
hash = "sha256-KvDyT0T8ecpSoNmqvsvDMooWNNe+z/PvxYj1Nd6qqfA=";
|
||||
hash = "sha256-DtvaFu3r2r5WmlFCbkbzqAk/Y2BNEnxR6hPDfKM+/aQ=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "sudo-font";
|
||||
version = "1.0";
|
||||
version = "1.1";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/jenskutilek/sudo-font/releases/download/v${version}/sudo.zip";
|
||||
hash = "sha256-XD+oLfPE8DD5DG5j/VN6nTVn+mhFE5qqyvjwDk2Dr/I=";
|
||||
hash = "sha256-acHeaA8WIkGNrjErbLCkkUpkIZvLbgaV+pvr56ku5tw=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
@ -3,14 +3,14 @@
|
||||
, fetchurl
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "twemoji-color-font";
|
||||
version = "14.0.2";
|
||||
|
||||
# We fetch the prebuilt font because building it takes 1.5 hours on hydra.
|
||||
# Relevant issue: https://github.com/NixOS/nixpkgs/issues/97871
|
||||
src = fetchurl {
|
||||
url = "https://github.com/eosrei/twemoji-color-font/releases/download/v${version}/TwitterColorEmoji-SVGinOT-Linux-${version}.tar.gz";
|
||||
url = "https://github.com/eosrei/twemoji-color-font/releases/download/v${finalAttrs.version}/TwitterColorEmoji-SVGinOT-Linux-${finalAttrs.version}.tar.gz";
|
||||
sha256 = "sha256-aCbiHqCNxd8myIeuTlYEaYfg9JCd+MAsc94FcUoDU8E=";
|
||||
};
|
||||
|
||||
@ -39,4 +39,4 @@ stdenv.mkDerivation rec {
|
||||
license = with licenses; [ cc-by-40 mit ];
|
||||
maintainers = [ maintainers.fgaz ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -8,11 +8,11 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "theme-obsidian2";
|
||||
version = "2.23";
|
||||
version = "2.24";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/madmaxms/theme-obsidian-2/releases/download/v${version}/obsidian-2-theme.tar.xz";
|
||||
sha256 = "sha256-yJoMS5XrHlMss+rdJ+xLJx0F9Hs1Cc+MFk+xyhRXaf0=";
|
||||
sha256 = "sha256-P+62cdYiCk8419S+u1w6EmzJL0rgHAh7G5eTuBOrAGY=";
|
||||
};
|
||||
|
||||
sourceRoot = ".";
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user