Merge master into staging-next
This commit is contained in:
commit
03e2e79ded
@ -9395,6 +9395,12 @@
|
||||
githubId = 9425955;
|
||||
name = "Jean-François Labonté";
|
||||
};
|
||||
jemand771 = {
|
||||
email = "willy@jemand771.net";
|
||||
github = "jemand771";
|
||||
githubId = 19669567;
|
||||
name = "Willy";
|
||||
};
|
||||
jensbin = {
|
||||
email = "jensbin+git@pm.me";
|
||||
github = "jensbin";
|
||||
|
@ -327,7 +327,7 @@ in
|
||||
hdfs = 295;
|
||||
mapred = 296;
|
||||
hadoop = 297;
|
||||
hydron = 298;
|
||||
#hydron = 298; # removed 2024-08-03
|
||||
cfssl = 299;
|
||||
cassandra = 300;
|
||||
qemu-libvirtd = 301;
|
||||
@ -637,7 +637,7 @@ in
|
||||
hdfs = 295;
|
||||
mapred = 296;
|
||||
hadoop = 297;
|
||||
hydron = 298;
|
||||
#hydron = 298; # removed 2024-08-03
|
||||
cfssl = 299;
|
||||
cassandra = 300;
|
||||
qemu-libvirtd = 301;
|
||||
|
@ -1501,7 +1501,6 @@
|
||||
./services/web-servers/fcgiwrap.nix
|
||||
./services/web-servers/garage.nix
|
||||
./services/web-servers/hitch/default.nix
|
||||
./services/web-servers/hydron.nix
|
||||
./services/web-servers/jboss/default.nix
|
||||
./services/web-servers/keter
|
||||
./services/web-servers/lighttpd/cgit.nix
|
||||
|
@ -67,6 +67,7 @@ in
|
||||
(mkRemovedOptionModule [ "services" "fprot" ] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [ "services" "frab" ] "The frab module has been removed")
|
||||
(mkRemovedOptionModule [ "services" "homeassistant-satellite"] "The `services.homeassistant-satellite` module has been replaced by `services.wyoming-satellite`.")
|
||||
(mkRemovedOptionModule [ "services" "hydron" ] "The `services.hydron` module has been removed as the project has been archived upstream since 2022 and is affected by a severe remote code execution vulnerability.")
|
||||
(mkRemovedOptionModule [ "services" "ihatemoney" ] "The ihatemoney module has been removed for lack of downstream maintainer")
|
||||
(mkRemovedOptionModule [ "services" "kippo" ] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [ "services" "mailpile" ] "The corresponding package was removed from nixpkgs.")
|
||||
|
@ -28,19 +28,30 @@ with lib;
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf config.services.goxlr-utility.enable
|
||||
{
|
||||
config =
|
||||
let
|
||||
goxlr-autostart = pkgs.stdenv.mkDerivation {
|
||||
name = "autostart-goxlr-daemon";
|
||||
priority = 5;
|
||||
|
||||
buildCommand = ''
|
||||
mkdir -p $out/etc/xdg/autostart
|
||||
cp ${cfg.package}/share/applications/goxlr-utility.desktop $out/etc/xdg/autostart/goxlr-daemon.desktop
|
||||
chmod +w $out/etc/xdg/autostart/goxlr-daemon.desktop
|
||||
echo "X-KDE-autostart-phase=2" >> $out/etc/xdg/autostart/goxlr-daemon.desktop
|
||||
substituteInPlace $out/etc/xdg/autostart/goxlr-daemon.desktop \
|
||||
--replace-fail goxlr-launcher goxlr-daemon
|
||||
'';
|
||||
};
|
||||
in
|
||||
mkIf config.services.goxlr-utility.enable {
|
||||
services.udev.packages = [ cfg.package ];
|
||||
|
||||
xdg.autostart.enable = mkIf cfg.autoStart.xdg true;
|
||||
environment.systemPackages = mkIf cfg.autoStart.xdg
|
||||
[
|
||||
cfg.package
|
||||
(pkgs.makeAutostartItem
|
||||
{
|
||||
name = "goxlr-utility";
|
||||
package = cfg.package;
|
||||
})
|
||||
goxlr-autostart
|
||||
];
|
||||
};
|
||||
|
||||
|
@ -1,7 +1,8 @@
|
||||
{ config
|
||||
, pkgs
|
||||
, lib
|
||||
, ...
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
@ -32,26 +33,27 @@ in
|
||||
environment = {
|
||||
systemPackages = cfg.packages;
|
||||
|
||||
pathsToLink = [
|
||||
"/share/ayatana"
|
||||
];
|
||||
pathsToLink = [ "/share/ayatana" ];
|
||||
};
|
||||
|
||||
# libayatana-common's ayatana-indicators.target with explicit Wants & Before to bring up requested indicator services
|
||||
systemd.user.targets."ayatana-indicators" =
|
||||
systemd.user.targets =
|
||||
let
|
||||
indicatorServices = lib.lists.flatten
|
||||
(map
|
||||
(pkg:
|
||||
(map (ind: "${ind}.service") pkg.passthru.ayatana-indicators))
|
||||
cfg.packages);
|
||||
indicatorServices = lib.lists.flatten (
|
||||
map (pkg: (map (ind: "${ind}.service") pkg.passthru.ayatana-indicators)) cfg.packages
|
||||
);
|
||||
in
|
||||
{
|
||||
description = "Target representing the lifecycle of the Ayatana Indicators. Each indicator should be bound to it in its individual service file";
|
||||
partOf = [ "graphical-session.target" ];
|
||||
wants = indicatorServices;
|
||||
before = indicatorServices;
|
||||
};
|
||||
lib.attrsets.mapAttrs
|
||||
(_: desc: {
|
||||
description = "Target representing the lifecycle of the ${desc}. Each indicator should be bound to it in its individual service file";
|
||||
partOf = [ "graphical-session.target" ];
|
||||
wants = indicatorServices;
|
||||
before = indicatorServices;
|
||||
})
|
||||
{
|
||||
ayatana-indicators = "Ayatana Indicators";
|
||||
lomiri-indicators = "Ayatana/Lomiri Indicators that shall be run in Lomiri";
|
||||
};
|
||||
};
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ OPNA2608 ];
|
||||
|
@ -3,10 +3,6 @@
|
||||
with lib;
|
||||
|
||||
let
|
||||
package = if cfg.allowAuxiliaryImperativeNetworks
|
||||
then pkgs.wpa_supplicant_ro_ssids
|
||||
else pkgs.wpa_supplicant;
|
||||
|
||||
cfg = config.networking.wireless;
|
||||
opt = options.networking.wireless;
|
||||
|
||||
@ -106,7 +102,7 @@ let
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
stopIfChanged = false;
|
||||
|
||||
path = [ package ];
|
||||
path = [ pkgs.wpa_supplicant ];
|
||||
# if `userControl.enable`, the supplicant automatically changes the permissions
|
||||
# and owning group of the runtime dir; setting `umask` ensures the generated
|
||||
# config file isn't readable (except to root); see nixpkgs#267693
|
||||
|
@ -1,164 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.services.hydron;
|
||||
in with lib; {
|
||||
options.services.hydron = {
|
||||
enable = mkEnableOption "hydron";
|
||||
|
||||
dataDir = mkOption {
|
||||
type = types.path;
|
||||
default = "/var/lib/hydron";
|
||||
example = "/home/okina/hydron";
|
||||
description = "Location where hydron runs and stores data.";
|
||||
};
|
||||
|
||||
interval = mkOption {
|
||||
type = types.str;
|
||||
default = "weekly";
|
||||
example = "06:00";
|
||||
description = ''
|
||||
How often we run hydron import and possibly fetch tags. Runs by default every week.
|
||||
|
||||
The format is described in
|
||||
{manpage}`systemd.time(7)`.
|
||||
'';
|
||||
};
|
||||
|
||||
password = mkOption {
|
||||
type = types.str;
|
||||
default = "hydron";
|
||||
example = "dumbpass";
|
||||
description = "Password for the hydron database.";
|
||||
};
|
||||
|
||||
passwordFile = mkOption {
|
||||
type = types.path;
|
||||
default = "/run/keys/hydron-password-file";
|
||||
example = "/home/okina/hydron/keys/pass";
|
||||
description = "Password file for the hydron database.";
|
||||
};
|
||||
|
||||
postgresArgs = mkOption {
|
||||
type = types.str;
|
||||
description = "Postgresql connection arguments.";
|
||||
example = ''
|
||||
{
|
||||
"driver": "postgres",
|
||||
"connection": "user=hydron password=dumbpass dbname=hydron sslmode=disable"
|
||||
}
|
||||
'';
|
||||
};
|
||||
|
||||
postgresArgsFile = mkOption {
|
||||
type = types.path;
|
||||
default = "/run/keys/hydron-postgres-args";
|
||||
example = "/home/okina/hydron/keys/postgres";
|
||||
description = "Postgresql connection arguments file.";
|
||||
};
|
||||
|
||||
listenAddress = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "127.0.0.1:8010";
|
||||
description = "Listen on a specific IP address and port.";
|
||||
};
|
||||
|
||||
importPaths = mkOption {
|
||||
type = types.listOf types.path;
|
||||
default = [];
|
||||
example = [ "/home/okina/Pictures" ];
|
||||
description = "Paths that hydron will recursively import.";
|
||||
};
|
||||
|
||||
fetchTags = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = "Fetch tags for imported images and webm from gelbooru.";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
services.hydron.passwordFile = mkDefault (pkgs.writeText "hydron-password-file" cfg.password);
|
||||
services.hydron.postgresArgsFile = mkDefault (pkgs.writeText "hydron-postgres-args" cfg.postgresArgs);
|
||||
services.hydron.postgresArgs = mkDefault ''
|
||||
{
|
||||
"driver": "postgres",
|
||||
"connection": "user=hydron password=${cfg.password} host=/run/postgresql dbname=hydron sslmode=disable"
|
||||
}
|
||||
'';
|
||||
|
||||
services.postgresql = {
|
||||
enable = true;
|
||||
ensureDatabases = [ "hydron" ];
|
||||
ensureUsers = [
|
||||
{ name = "hydron";
|
||||
ensureDBOwnership = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"d '${cfg.dataDir}' 0750 hydron hydron - -"
|
||||
"d '${cfg.dataDir}/.hydron' - hydron hydron - -"
|
||||
"d '${cfg.dataDir}/images' - hydron hydron - -"
|
||||
"Z '${cfg.dataDir}' - hydron hydron - -"
|
||||
|
||||
"L+ '${cfg.dataDir}/.hydron/db_conf.json' - - - - ${cfg.postgresArgsFile}"
|
||||
];
|
||||
|
||||
systemd.services.hydron = {
|
||||
description = "hydron";
|
||||
after = [ "network.target" "postgresql.service" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
User = "hydron";
|
||||
Group = "hydron";
|
||||
ExecStart = "${pkgs.hydron}/bin/hydron serve"
|
||||
+ optionalString (cfg.listenAddress != null) " -a ${cfg.listenAddress}";
|
||||
};
|
||||
};
|
||||
|
||||
systemd.services.hydron-fetch = {
|
||||
description = "Import paths into hydron and possibly fetch tags";
|
||||
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
User = "hydron";
|
||||
Group = "hydron";
|
||||
ExecStart = "${pkgs.hydron}/bin/hydron import "
|
||||
+ optionalString cfg.fetchTags "-f "
|
||||
+ (escapeShellArg cfg.dataDir) + "/images " + (escapeShellArgs cfg.importPaths);
|
||||
};
|
||||
};
|
||||
|
||||
systemd.timers.hydron-fetch = {
|
||||
description = "Automatically import paths into hydron and possibly fetch tags";
|
||||
after = [ "network.target" "hydron.service" ];
|
||||
wantedBy = [ "timers.target" ];
|
||||
|
||||
timerConfig = {
|
||||
Persistent = true;
|
||||
OnCalendar = cfg.interval;
|
||||
};
|
||||
};
|
||||
|
||||
users = {
|
||||
groups.hydron.gid = config.ids.gids.hydron;
|
||||
|
||||
users.hydron = {
|
||||
description = "hydron server service user";
|
||||
home = cfg.dataDir;
|
||||
group = "hydron";
|
||||
uid = config.ids.uids.hydron;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
imports = [
|
||||
(mkRenamedOptionModule [ "services" "hydron" "baseDir" ] [ "services" "hydron" "dataDir" ])
|
||||
];
|
||||
|
||||
meta.maintainers = with maintainers; [ Madouura ];
|
||||
}
|
@ -537,7 +537,7 @@ in {
|
||||
lxd = pkgs.recurseIntoAttrs (handleTest ./lxd { inherit handleTestOn; });
|
||||
lxd-image-server = handleTest ./lxd-image-server.nix {};
|
||||
#logstash = handleTest ./logstash.nix {};
|
||||
lomiri = handleTest ./lomiri.nix {};
|
||||
lomiri = discoverTests (import ./lomiri.nix);
|
||||
lomiri-calculator-app = runTest ./lomiri-calculator-app.nix;
|
||||
lomiri-camera-app = runTest ./lomiri-camera-app.nix;
|
||||
lomiri-clock-app = runTest ./lomiri-clock-app.nix;
|
||||
|
@ -1,363 +1,496 @@
|
||||
import ./make-test-python.nix ({ pkgs, lib, ... }: let
|
||||
let
|
||||
makeTest = import ./make-test-python.nix;
|
||||
# Just to make sure everything is the same, need it for OCR & navigating greeter
|
||||
user = "alice";
|
||||
description = "Alice Foobar";
|
||||
password = "foobar";
|
||||
in {
|
||||
name = "lomiri";
|
||||
in
|
||||
{
|
||||
greeter = makeTest (
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
name = "lomiri-greeter";
|
||||
|
||||
meta = {
|
||||
maintainers = lib.teams.lomiri.members;
|
||||
};
|
||||
meta = {
|
||||
maintainers = lib.teams.lomiri.members;
|
||||
};
|
||||
|
||||
nodes.machine = { config, ... }: {
|
||||
imports = [
|
||||
./common/user-account.nix
|
||||
];
|
||||
nodes.machine =
|
||||
{ config, ... }:
|
||||
{
|
||||
imports = [ ./common/user-account.nix ];
|
||||
|
||||
users.users.${user} = {
|
||||
inherit description password;
|
||||
};
|
||||
virtualisation.memorySize = 2047;
|
||||
|
||||
# To control mouse via scripting
|
||||
programs.ydotool.enable = true;
|
||||
|
||||
services.desktopManager.lomiri.enable = lib.mkForce true;
|
||||
services.displayManager.defaultSession = lib.mkForce "lomiri";
|
||||
|
||||
# Help with OCR
|
||||
fonts.packages = [ pkgs.inconsolata ];
|
||||
|
||||
environment = {
|
||||
# Help with OCR
|
||||
etc."xdg/alacritty/alacritty.yml".text = lib.generators.toYAML { } {
|
||||
font = rec {
|
||||
normal.family = "Inconsolata";
|
||||
bold.family = normal.family;
|
||||
italic.family = normal.family;
|
||||
bold_italic.family = normal.family;
|
||||
size = 16;
|
||||
};
|
||||
colors = rec {
|
||||
primary = {
|
||||
foreground = "0x000000";
|
||||
background = "0xffffff";
|
||||
users.users.${user} = {
|
||||
inherit description password;
|
||||
};
|
||||
normal = {
|
||||
green = primary.foreground;
|
||||
|
||||
services.desktopManager.lomiri.enable = lib.mkForce true;
|
||||
services.displayManager.defaultSession = lib.mkForce "lomiri";
|
||||
|
||||
# Help with OCR
|
||||
fonts.packages = [ pkgs.inconsolata ];
|
||||
};
|
||||
|
||||
enableOCR = true;
|
||||
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
start_all()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
# Lomiri in greeter mode should work & be able to start a session
|
||||
with subtest("lomiri greeter works"):
|
||||
machine.wait_for_unit("display-manager.service")
|
||||
machine.wait_until_succeeds("pgrep -u lightdm -f 'lomiri --mode=greeter'")
|
||||
|
||||
# Start page shows current time
|
||||
machine.wait_for_text(r"(AM|PM)")
|
||||
machine.screenshot("lomiri_greeter_launched")
|
||||
|
||||
# Advance to login part
|
||||
machine.send_key("ret")
|
||||
machine.wait_for_text("${description}")
|
||||
machine.screenshot("lomiri_greeter_login")
|
||||
|
||||
# Login
|
||||
machine.send_chars("${password}\n")
|
||||
machine.wait_until_succeeds("pgrep -u ${user} -f 'lomiri --mode=full-shell'")
|
||||
|
||||
# Output rendering from Lomiri has started when it starts printing performance diagnostics
|
||||
machine.wait_for_console_text("Last frame took")
|
||||
# Look for datetime's clock, one of the last elements to load
|
||||
machine.wait_for_text(r"(AM|PM)")
|
||||
machine.screenshot("lomiri_launched")
|
||||
'';
|
||||
}
|
||||
);
|
||||
|
||||
desktop = makeTest (
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
name = "lomiri-desktop";
|
||||
|
||||
meta = {
|
||||
maintainers = lib.teams.lomiri.members;
|
||||
};
|
||||
|
||||
nodes.machine =
|
||||
{ config, ... }:
|
||||
{
|
||||
imports = [
|
||||
./common/auto.nix
|
||||
./common/user-account.nix
|
||||
];
|
||||
|
||||
virtualisation.memorySize = 2047;
|
||||
|
||||
users.users.${user} = {
|
||||
inherit description password;
|
||||
# polkit agent test
|
||||
extraGroups = [ "wheel" ];
|
||||
};
|
||||
|
||||
test-support.displayManager.auto = {
|
||||
enable = true;
|
||||
inherit user;
|
||||
};
|
||||
|
||||
# To control mouse via scripting
|
||||
programs.ydotool.enable = true;
|
||||
|
||||
services.desktopManager.lomiri.enable = lib.mkForce true;
|
||||
services.displayManager.defaultSession = lib.mkForce "lomiri";
|
||||
|
||||
# Help with OCR
|
||||
fonts.packages = [ pkgs.inconsolata ];
|
||||
|
||||
environment = {
|
||||
# Help with OCR
|
||||
etc."xdg/alacritty/alacritty.yml".text = lib.generators.toYAML { } {
|
||||
font = rec {
|
||||
normal.family = "Inconsolata";
|
||||
bold.family = normal.family;
|
||||
italic.family = normal.family;
|
||||
bold_italic.family = normal.family;
|
||||
size = 16;
|
||||
};
|
||||
colors = rec {
|
||||
primary = {
|
||||
foreground = "0x000000";
|
||||
background = "0xffffff";
|
||||
};
|
||||
normal = {
|
||||
green = primary.foreground;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
variables = {
|
||||
# So we can test what content-hub is working behind the scenes
|
||||
CONTENT_HUB_LOGGING_LEVEL = "2";
|
||||
};
|
||||
|
||||
systemPackages = with pkgs; [
|
||||
# For a convenient way of kicking off content-hub peer collection
|
||||
lomiri.content-hub.examples
|
||||
|
||||
# Forcing alacritty to run as an X11 app when opened from the starter menu
|
||||
(symlinkJoin {
|
||||
name = "x11-${alacritty.name}";
|
||||
|
||||
paths = [ alacritty ];
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/alacritty \
|
||||
--set WINIT_UNIX_BACKEND x11 \
|
||||
--set WAYLAND_DISPLAY ""
|
||||
'';
|
||||
|
||||
inherit (alacritty) meta;
|
||||
})
|
||||
];
|
||||
};
|
||||
|
||||
# Help with OCR
|
||||
systemd.tmpfiles.settings =
|
||||
let
|
||||
white = "255, 255, 255";
|
||||
black = "0, 0, 0";
|
||||
colorSection = color: {
|
||||
Color = color;
|
||||
Bold = true;
|
||||
Transparency = false;
|
||||
};
|
||||
terminalColors = pkgs.writeText "customized.colorscheme" (
|
||||
lib.generators.toINI { } {
|
||||
Background = colorSection white;
|
||||
Foreground = colorSection black;
|
||||
Color2 = colorSection black;
|
||||
Color2Intense = colorSection black;
|
||||
}
|
||||
);
|
||||
terminalConfig = pkgs.writeText "terminal.ubports.conf" (
|
||||
lib.generators.toINI { } {
|
||||
General = {
|
||||
colorScheme = "customized";
|
||||
fontSize = "16";
|
||||
fontStyle = "Inconsolata";
|
||||
};
|
||||
}
|
||||
);
|
||||
confBase = "${config.users.users.${user}.home}/.config";
|
||||
userDirArgs = {
|
||||
mode = "0700";
|
||||
user = user;
|
||||
group = "users";
|
||||
};
|
||||
in
|
||||
{
|
||||
"10-lomiri-test-setup" = {
|
||||
"${confBase}".d = userDirArgs;
|
||||
"${confBase}/terminal.ubports".d = userDirArgs;
|
||||
"${confBase}/terminal.ubports/customized.colorscheme".L.argument = "${terminalColors}";
|
||||
"${confBase}/terminal.ubports/terminal.ubports.conf".L.argument = "${terminalConfig}";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
enableOCR = true;
|
||||
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
def toggle_maximise():
|
||||
"""
|
||||
Maximise the current window.
|
||||
"""
|
||||
machine.send_key("ctrl-meta_l-up")
|
||||
|
||||
# For some reason, Lomiri in these VM tests very frequently opens the starter menu a few seconds after sending the above.
|
||||
# Because this isn't 100% reproducible all the time, and there is no command to await when OCR doesn't pick up some text,
|
||||
# the best we can do is send some Escape input after waiting some arbitrary time and hope that it works out fine.
|
||||
machine.sleep(5)
|
||||
machine.send_key("esc")
|
||||
machine.sleep(5)
|
||||
|
||||
def mouse_click(xpos, ypos):
|
||||
"""
|
||||
Move the mouse to a screen location and hit left-click.
|
||||
"""
|
||||
|
||||
# Need to reset to top-left, --absolute doesn't work?
|
||||
machine.execute("ydotool mousemove -- -10000 -10000")
|
||||
machine.sleep(2)
|
||||
|
||||
# Move
|
||||
machine.execute(f"ydotool mousemove -- {xpos} {ypos}")
|
||||
machine.sleep(2)
|
||||
|
||||
# Click (C0 - left button: down & up)
|
||||
machine.execute("ydotool click 0xC0")
|
||||
machine.sleep(2)
|
||||
|
||||
def open_starter():
|
||||
"""
|
||||
Open the starter, and ensure it's opened.
|
||||
"""
|
||||
|
||||
# Using the keybind has a chance of instantly closing the menu again? Just click the button
|
||||
mouse_click(20, 30)
|
||||
|
||||
start_all()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
# The session should start, and not be stuck in i.e. a crash loop
|
||||
with subtest("lomiri starts"):
|
||||
machine.wait_until_succeeds("pgrep -u ${user} -f 'lomiri --mode=full-shell'")
|
||||
# Output rendering from Lomiri has started when it starts printing performance diagnostics
|
||||
machine.wait_for_console_text("Last frame took")
|
||||
# Look for datetime's clock, one of the last elements to load
|
||||
machine.wait_for_text(r"(AM|PM)")
|
||||
machine.screenshot("lomiri_launched")
|
||||
|
||||
# Working terminal keybind is good
|
||||
with subtest("terminal keybind works"):
|
||||
machine.send_key("ctrl-alt-t")
|
||||
machine.wait_for_text(r"(${user}|machine)")
|
||||
machine.screenshot("terminal_opens")
|
||||
|
||||
# lomiri-terminal-app has a separate VM test to test its basic functionality
|
||||
|
||||
# for the LSS content-hub test to work reliably, we need to kick off peer collecting
|
||||
machine.send_chars("content-hub-test-importer\n")
|
||||
machine.wait_for_text(r"(/build/source|hub.cpp|handler.cpp|void|virtual|const)") # awaiting log messages from content-hub
|
||||
machine.send_key("ctrl-c")
|
||||
|
||||
# Doing this here, since we need an in-session shell & separately starting a terminal again wastes time
|
||||
with subtest("polkit agent works"):
|
||||
machine.send_chars("pkexec touch /tmp/polkit-test\n")
|
||||
# There's an authentication notification here that gains focus, but we struggle with OCRing it
|
||||
# Just hope that it's up after a short wait
|
||||
machine.sleep(10)
|
||||
machine.screenshot("polkit_agent")
|
||||
machine.send_chars("${password}")
|
||||
machine.sleep(2) # Hopefully enough delay to make sure all the password characters have been registered? Maybe just placebo
|
||||
machine.send_chars("\n")
|
||||
machine.wait_for_file("/tmp/polkit-test", 10)
|
||||
|
||||
machine.send_key("alt-f4")
|
||||
|
||||
# We want the ability to launch applications
|
||||
with subtest("starter menu works"):
|
||||
open_starter()
|
||||
machine.screenshot("starter_opens")
|
||||
|
||||
# Just try the terminal again, we know that it should work
|
||||
machine.send_chars("Terminal\n")
|
||||
machine.wait_for_text(r"(${user}|machine)")
|
||||
machine.send_key("alt-f4")
|
||||
|
||||
# We want support for X11 apps
|
||||
with subtest("xwayland support works"):
|
||||
open_starter()
|
||||
machine.send_chars("Alacritty\n")
|
||||
machine.wait_for_text(r"(${user}|machine)")
|
||||
machine.screenshot("alacritty_opens")
|
||||
machine.send_key("alt-f4")
|
||||
|
||||
# Morph is how we go online
|
||||
with subtest("morph browser works"):
|
||||
open_starter()
|
||||
machine.send_chars("Morph\n")
|
||||
machine.wait_for_text(r"(Bookmarks|address|site|visited any)")
|
||||
machine.screenshot("morph_open")
|
||||
|
||||
# morph-browser has a separate VM test, there isn't anything new we could test here
|
||||
|
||||
machine.send_key("alt-f4")
|
||||
|
||||
# LSS provides DE settings
|
||||
with subtest("system settings open"):
|
||||
open_starter()
|
||||
machine.send_chars("System Settings\n")
|
||||
machine.wait_for_text("Rotation Lock")
|
||||
machine.screenshot("settings_open")
|
||||
|
||||
# lomiri-system-settings has a separate VM test, only test Lomiri-specific content-hub functionalities here
|
||||
|
||||
# Make fullscreen, can't navigate to Background plugin via keyboard unless window has non-phone-like aspect ratio
|
||||
toggle_maximise()
|
||||
|
||||
# Load Background plugin
|
||||
machine.send_key("tab")
|
||||
machine.send_key("tab")
|
||||
machine.send_key("tab")
|
||||
machine.send_key("tab")
|
||||
machine.send_key("tab")
|
||||
machine.send_key("tab")
|
||||
machine.send_key("ret")
|
||||
machine.wait_for_text("Background image")
|
||||
|
||||
# Try to load custom background
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("ret")
|
||||
|
||||
# Peers should be loaded
|
||||
machine.wait_for_text("Morph") # or Gallery, but Morph is already packaged
|
||||
machine.screenshot("settings_content-hub_peers")
|
||||
|
||||
# Select Morph as content source
|
||||
mouse_click(370, 100)
|
||||
|
||||
# Expect Morph to be brought into the foreground, with its Downloads page open
|
||||
machine.wait_for_text("No downloads")
|
||||
|
||||
# If content-hub encounters a problem, it may have crashed the original application issuing the request.
|
||||
# Check that it's still alive
|
||||
machine.succeed("pgrep -u ${user} -f lomiri-system-settings")
|
||||
|
||||
machine.screenshot("content-hub_exchange")
|
||||
|
||||
# Testing any more would require more applications & setup, the fact that it's already being attempted is a good sign
|
||||
machine.send_key("esc")
|
||||
|
||||
machine.sleep(2) # sleep a tiny bit so morph can close & the focus can return to LSS
|
||||
machine.send_key("alt-f4")
|
||||
'';
|
||||
}
|
||||
);
|
||||
|
||||
desktop-ayatana-indicators = makeTest (
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
name = "lomiri-desktop-ayatana-indicators";
|
||||
|
||||
meta = {
|
||||
maintainers = lib.teams.lomiri.members;
|
||||
};
|
||||
|
||||
variables = {
|
||||
# So we can test what content-hub is working behind the scenes
|
||||
CONTENT_HUB_LOGGING_LEVEL = "2";
|
||||
};
|
||||
nodes.machine =
|
||||
{ config, ... }:
|
||||
{
|
||||
imports = [
|
||||
./common/auto.nix
|
||||
./common/user-account.nix
|
||||
];
|
||||
|
||||
systemPackages = with pkgs; [
|
||||
# For a convenient way of kicking off content-hub peer collection
|
||||
lomiri.content-hub.examples
|
||||
virtualisation.memorySize = 2047;
|
||||
|
||||
# Forcing alacritty to run as an X11 app when opened from the starter menu
|
||||
(symlinkJoin {
|
||||
name = "x11-${alacritty.name}";
|
||||
users.users.${user} = {
|
||||
inherit description password;
|
||||
};
|
||||
|
||||
paths = [ alacritty ];
|
||||
test-support.displayManager.auto = {
|
||||
enable = true;
|
||||
inherit user;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
# To control mouse via scripting
|
||||
programs.ydotool.enable = true;
|
||||
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/alacritty \
|
||||
--set WINIT_UNIX_BACKEND x11 \
|
||||
--set WAYLAND_DISPLAY ""
|
||||
'';
|
||||
services.desktopManager.lomiri.enable = lib.mkForce true;
|
||||
services.displayManager.defaultSession = lib.mkForce "lomiri";
|
||||
|
||||
inherit (alacritty) meta;
|
||||
})
|
||||
|
||||
# Polkit requests eventually time out.
|
||||
# Keep triggering them until we signal detection success
|
||||
(writeShellApplication {
|
||||
name = "lpa-check";
|
||||
text = ''
|
||||
while [ ! -f /tmp/lpa-checked ]; do
|
||||
pkexec echo a
|
||||
done
|
||||
'';
|
||||
})
|
||||
# Signal detection success
|
||||
(writeShellApplication {
|
||||
name = "lpa-signal";
|
||||
text = ''
|
||||
touch /tmp/lpa-checked
|
||||
'';
|
||||
})
|
||||
];
|
||||
};
|
||||
|
||||
# Help with OCR
|
||||
systemd.tmpfiles.settings = let
|
||||
white = "255, 255, 255";
|
||||
black = "0, 0, 0";
|
||||
colorSection = color: {
|
||||
Color = color;
|
||||
Bold = true;
|
||||
Transparency = false;
|
||||
};
|
||||
terminalColors = pkgs.writeText "customized.colorscheme" (lib.generators.toINI {} {
|
||||
Background = colorSection white;
|
||||
Foreground = colorSection black;
|
||||
Color2 = colorSection black;
|
||||
Color2Intense = colorSection black;
|
||||
});
|
||||
terminalConfig = pkgs.writeText "terminal.ubports.conf" (lib.generators.toINI {} {
|
||||
General = {
|
||||
colorScheme = "customized";
|
||||
fontSize = "16";
|
||||
fontStyle = "Inconsolata";
|
||||
# Help with OCR
|
||||
fonts.packages = [ pkgs.inconsolata ];
|
||||
};
|
||||
});
|
||||
confBase = "${config.users.users.${user}.home}/.config";
|
||||
userDirArgs = {
|
||||
mode = "0700";
|
||||
user = user;
|
||||
group = "users";
|
||||
};
|
||||
in {
|
||||
"10-lomiri-test-setup" = {
|
||||
"${confBase}".d = userDirArgs;
|
||||
"${confBase}/terminal.ubports".d = userDirArgs;
|
||||
"${confBase}/terminal.ubports/customized.colorscheme".L.argument = "${terminalColors}";
|
||||
"${confBase}/terminal.ubports/terminal.ubports.conf".L.argument = "${terminalConfig}";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
enableOCR = true;
|
||||
enableOCR = true;
|
||||
|
||||
testScript = { nodes, ... }: ''
|
||||
def toggle_maximise():
|
||||
"""
|
||||
Maximise the current window.
|
||||
"""
|
||||
machine.send_key("ctrl-meta_l-up")
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
def mouse_click(xpos, ypos):
|
||||
"""
|
||||
Move the mouse to a screen location and hit left-click.
|
||||
"""
|
||||
|
||||
# For some reason, Lomiri in these VM tests very frequently opens the starter menu a few seconds after sending the above.
|
||||
# Because this isn't 100% reproducible all the time, and there is no command to await when OCR doesn't pick up some text,
|
||||
# the best we can do is send some Escape input after waiting some arbitrary time and hope that it works out fine.
|
||||
machine.sleep(5)
|
||||
machine.send_key("esc")
|
||||
machine.sleep(5)
|
||||
# Need to reset to top-left, --absolute doesn't work?
|
||||
machine.execute("ydotool mousemove -- -10000 -10000")
|
||||
machine.sleep(2)
|
||||
|
||||
def mouse_click(xpos, ypos):
|
||||
"""
|
||||
Move the mouse to a screen location and hit left-click.
|
||||
"""
|
||||
# Move
|
||||
machine.execute(f"ydotool mousemove -- {xpos} {ypos}")
|
||||
machine.sleep(2)
|
||||
|
||||
# Need to reset to top-left, --absolute doesn't work?
|
||||
machine.execute("ydotool mousemove -- -10000 -10000")
|
||||
machine.sleep(2)
|
||||
# Click (C0 - left button: down & up)
|
||||
machine.execute("ydotool click 0xC0")
|
||||
machine.sleep(2)
|
||||
|
||||
# Move
|
||||
machine.execute(f"ydotool mousemove -- {xpos} {ypos}")
|
||||
machine.sleep(2)
|
||||
start_all()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
# Click (C0 - left button: down & up)
|
||||
machine.execute("ydotool click 0xC0")
|
||||
machine.sleep(2)
|
||||
# The session should start, and not be stuck in i.e. a crash loop
|
||||
with subtest("lomiri starts"):
|
||||
machine.wait_until_succeeds("pgrep -u ${user} -f 'lomiri --mode=full-shell'")
|
||||
# Output rendering from Lomiri has started when it starts printing performance diagnostics
|
||||
machine.wait_for_console_text("Last frame took")
|
||||
# Look for datetime's clock, one of the last elements to load
|
||||
machine.wait_for_text(r"(AM|PM)")
|
||||
machine.screenshot("lomiri_launched")
|
||||
|
||||
def open_starter():
|
||||
"""
|
||||
Open the starter, and ensure it's opened.
|
||||
"""
|
||||
# The ayatana indicators are an important part of the experience, and they hold the only graphical way of exiting the session.
|
||||
# There's a test app we could use that also displays their contents, but it's abit inconsistent.
|
||||
with subtest("ayatana indicators work"):
|
||||
mouse_click(735, 0) # the cog in the top-right, for the session indicator
|
||||
machine.wait_for_text(r"(Notifications|Rotation|Battery|Sound|Time|Date|System)")
|
||||
machine.screenshot("indicators_open")
|
||||
|
||||
# Using the keybind has a chance of instantly closing the menu again? Just click the button
|
||||
mouse_click(20, 30)
|
||||
# Indicator order within the menus *should* be fixed based on per-indicator order setting
|
||||
# Session is the one we clicked, but the last we should test (logout). Go as far left as we can test.
|
||||
machine.send_key("left")
|
||||
machine.send_key("left")
|
||||
machine.send_key("left")
|
||||
machine.send_key("left")
|
||||
machine.send_key("left")
|
||||
# Notifications are usually empty, nothing to check there
|
||||
|
||||
start_all()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
with subtest("ayatana indicator display works"):
|
||||
# We start on this, don't go right
|
||||
machine.wait_for_text("Lock")
|
||||
machine.screenshot("indicators_display")
|
||||
|
||||
# Lomiri in greeter mode should work & be able to start a session
|
||||
with subtest("lomiri greeter works"):
|
||||
machine.wait_for_unit("display-manager.service")
|
||||
machine.wait_until_succeeds("pgrep -u lightdm -f 'lomiri --mode=greeter'")
|
||||
with subtest("lomiri indicator network works"):
|
||||
machine.send_key("right")
|
||||
machine.wait_for_text(r"(Flight|Wi-Fi)")
|
||||
machine.screenshot("indicators_network")
|
||||
|
||||
# Start page shows current time
|
||||
machine.wait_for_text(r"(AM|PM)")
|
||||
machine.screenshot("lomiri_greeter_launched")
|
||||
with subtest("ayatana indicator sound works"):
|
||||
machine.send_key("right")
|
||||
machine.wait_for_text(r"(Silent|Volume)")
|
||||
machine.screenshot("indicators_sound")
|
||||
|
||||
# Advance to login part
|
||||
machine.send_key("ret")
|
||||
machine.wait_for_text("${description}")
|
||||
machine.screenshot("lomiri_greeter_login")
|
||||
with subtest("ayatana indicator power works"):
|
||||
machine.send_key("right")
|
||||
machine.wait_for_text(r"(Charge|Battery settings)")
|
||||
machine.screenshot("indicators_power")
|
||||
|
||||
# Login
|
||||
machine.send_chars("${password}\n")
|
||||
machine.wait_until_succeeds("pgrep -u ${user} -f 'lomiri --mode=full-shell'")
|
||||
with subtest("ayatana indicator datetime works"):
|
||||
machine.send_key("right")
|
||||
machine.wait_for_text("Time and Date Settings")
|
||||
machine.screenshot("indicators_timedate")
|
||||
|
||||
# The session should start, and not be stuck in i.e. a crash loop
|
||||
with subtest("lomiri starts"):
|
||||
# Output rendering from Lomiri has started when it starts printing performance diagnostics
|
||||
machine.wait_for_console_text("Last frame took")
|
||||
# Look for datetime's clock, one of the last elements to load
|
||||
machine.wait_for_text(r"(AM|PM)")
|
||||
machine.screenshot("lomiri_launched")
|
||||
with subtest("ayatana indicator session works"):
|
||||
machine.send_key("right")
|
||||
machine.wait_for_text("Log Out")
|
||||
machine.screenshot("indicators_session")
|
||||
|
||||
# Working terminal keybind is good
|
||||
with subtest("terminal keybind works"):
|
||||
machine.send_key("ctrl-alt-t")
|
||||
machine.wait_for_text(r"(${user}|machine)")
|
||||
machine.screenshot("terminal_opens")
|
||||
# We should be able to log out and return to the greeter
|
||||
mouse_click(720, 280) # "Log Out"
|
||||
mouse_click(400, 240) # confirm logout
|
||||
machine.wait_until_fails("pgrep -u ${user} -f 'lomiri --mode=full-shell'")
|
||||
'';
|
||||
}
|
||||
);
|
||||
|
||||
# lomiri-terminal-app has a separate VM test to test its basic functionality
|
||||
|
||||
# for the LSS content-hub test to work reliably, we need to kick off peer collecting
|
||||
machine.send_chars("content-hub-test-importer\n")
|
||||
machine.wait_for_text(r"(/build/source|hub.cpp|handler.cpp|void|virtual|const)") # awaiting log messages from content-hub
|
||||
machine.send_key("ctrl-c")
|
||||
|
||||
# Doing this here, since we need an in-session shell & separately starting a terminal again wastes time
|
||||
with subtest("polkit agent works"):
|
||||
machine.send_chars("exec lpa-check\n")
|
||||
machine.wait_for_text(r"(Elevated permissions|Login)")
|
||||
machine.screenshot("polkit_agent")
|
||||
machine.execute("lpa-signal")
|
||||
|
||||
# polkit test will quit terminal when agent request times out after OCR success
|
||||
machine.wait_until_fails("pgrep -u ${user} -f lomiri-terminal-app")
|
||||
|
||||
# We want the ability to launch applications
|
||||
with subtest("starter menu works"):
|
||||
open_starter()
|
||||
machine.screenshot("starter_opens")
|
||||
|
||||
# Just try the terminal again, we know that it should work
|
||||
machine.send_chars("Terminal\n")
|
||||
machine.wait_for_text(r"(${user}|machine)")
|
||||
machine.send_key("alt-f4")
|
||||
|
||||
# We want support for X11 apps
|
||||
with subtest("xwayland support works"):
|
||||
open_starter()
|
||||
machine.send_chars("Alacritty\n")
|
||||
machine.wait_for_text(r"(${user}|machine)")
|
||||
machine.screenshot("alacritty_opens")
|
||||
machine.send_key("alt-f4")
|
||||
|
||||
# Morph is how we go online
|
||||
with subtest("morph browser works"):
|
||||
open_starter()
|
||||
machine.send_chars("Morph\n")
|
||||
machine.wait_for_text(r"(Bookmarks|address|site|visited any)")
|
||||
machine.screenshot("morph_open")
|
||||
|
||||
# morph-browser has a separate VM test, there isn't anything new we could test here
|
||||
|
||||
machine.send_key("alt-f4")
|
||||
|
||||
# LSS provides DE settings
|
||||
with subtest("system settings open"):
|
||||
open_starter()
|
||||
machine.send_chars("System Settings\n")
|
||||
machine.wait_for_text("Rotation Lock")
|
||||
machine.screenshot("settings_open")
|
||||
|
||||
# lomiri-system-settings has a separate VM test, only test Lomiri-specific content-hub functionalities here
|
||||
|
||||
# Make fullscreen, can't navigate to Background plugin via keyboard unless window has non-phone-like aspect ratio
|
||||
toggle_maximise()
|
||||
|
||||
# Load Background plugin
|
||||
machine.send_key("tab")
|
||||
machine.send_key("tab")
|
||||
machine.send_key("tab")
|
||||
machine.send_key("tab")
|
||||
machine.send_key("tab")
|
||||
machine.send_key("tab")
|
||||
machine.send_key("ret")
|
||||
machine.wait_for_text("Background image")
|
||||
|
||||
# Try to load custom background
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("shift-tab")
|
||||
machine.send_key("ret")
|
||||
|
||||
# Peers should be loaded
|
||||
machine.wait_for_text("Morph") # or Gallery, but Morph is already packaged
|
||||
machine.screenshot("settings_content-hub_peers")
|
||||
|
||||
# Select Morph as content source
|
||||
mouse_click(370, 100)
|
||||
|
||||
# Expect Morph to be brought into the foreground, with its Downloads page open
|
||||
machine.wait_for_text("No downloads")
|
||||
|
||||
# If content-hub encounters a problem, it may have crashed the original application issuing the request.
|
||||
# Check that it's still alive
|
||||
machine.succeed("pgrep -u ${user} -f lomiri-system-settings")
|
||||
|
||||
machine.screenshot("content-hub_exchange")
|
||||
|
||||
# Testing any more would require more applications & setup, the fact that it's already being attempted is a good sign
|
||||
machine.send_key("esc")
|
||||
|
||||
machine.sleep(2) # sleep a tiny bit so morph can close & the focus can return to LSS
|
||||
machine.send_key("alt-f4")
|
||||
|
||||
# The ayatana indicators are an important part of the experience, and they hold the only graphical way of exiting the session.
|
||||
# There's a test app we could use that also displays their contents, but it's abit inconsistent.
|
||||
with subtest("ayatana indicators work"):
|
||||
mouse_click(735, 0) # the cog in the top-right, for the session indicator
|
||||
machine.wait_for_text(r"(Notifications|Rotation|Battery|Sound|Time|Date|System)")
|
||||
machine.screenshot("indicators_open")
|
||||
|
||||
# Indicator order within the menus *should* be fixed based on per-indicator order setting
|
||||
# Session is the one we clicked, but the last we should test (logout). Go as far left as we can test.
|
||||
machine.send_key("left")
|
||||
machine.send_key("left")
|
||||
machine.send_key("left")
|
||||
machine.send_key("left")
|
||||
machine.send_key("left")
|
||||
# Notifications are usually empty, nothing to check there
|
||||
|
||||
with subtest("ayatana indicator display works"):
|
||||
# We start on this, don't go right
|
||||
machine.wait_for_text("Lock")
|
||||
machine.screenshot("indicators_display")
|
||||
|
||||
with subtest("lomiri indicator network works"):
|
||||
machine.send_key("right")
|
||||
machine.wait_for_text(r"(Flight|Wi-Fi)")
|
||||
machine.screenshot("indicators_network")
|
||||
|
||||
with subtest("ayatana indicator sound works"):
|
||||
machine.send_key("right")
|
||||
machine.wait_for_text(r"(Silent|Volume)")
|
||||
machine.screenshot("indicators_sound")
|
||||
|
||||
with subtest("ayatana indicator power works"):
|
||||
machine.send_key("right")
|
||||
machine.wait_for_text(r"(Charge|Battery settings)")
|
||||
machine.screenshot("indicators_power")
|
||||
|
||||
with subtest("ayatana indicator datetime works"):
|
||||
machine.send_key("right")
|
||||
machine.wait_for_text("Time and Date Settings")
|
||||
machine.screenshot("indicators_timedate")
|
||||
|
||||
with subtest("ayatana indicator session works"):
|
||||
machine.send_key("right")
|
||||
machine.wait_for_text("Log Out")
|
||||
machine.screenshot("indicators_session")
|
||||
|
||||
# We should be able to log out and return to the greeter
|
||||
mouse_click(720, 280) # "Log Out"
|
||||
mouse_click(400, 240) # confirm logout
|
||||
machine.wait_until_fails("pgrep -u ${user} -f 'lomiri --mode=full-shell'")
|
||||
machine.wait_until_succeeds("pgrep -u lightdm -f 'lomiri --mode=greeter'")
|
||||
'';
|
||||
})
|
||||
}
|
||||
|
@ -1,9 +1,9 @@
|
||||
{
|
||||
"version" = "1.11.72";
|
||||
"version" = "1.11.73";
|
||||
"hashes" = {
|
||||
"desktopSrcHash" = "sha256-eNK63Q3fWnc7+hQAKkvsjJ2DUL7AmtexvGTOox0dVVs=";
|
||||
"desktopSrcHash" = "sha256-o6uXn+ArwSneDMtS4AfVmSqQfAl0Gygvoj2suKI+VqU=";
|
||||
"desktopYarnHash" = "10a409klzzvm6dm27803c2cgwpx1aj035ad1mdnsqyhnd4nsigpw";
|
||||
"webSrcHash" = "sha256-ZLSCbt00R3azFz2lOuj8yqaLFyobnmGmQKYOYLHCA1w=";
|
||||
"webYarnHash" = "13w3j5k48540sr7rgcj0b3kma4b4bybw56k58ral0d7izs7dgmgc";
|
||||
"webSrcHash" = "sha256-/PS/hEuSKXKRwS2zmH7Q8IIE20kPnOKU3PHXGSLhZZE=";
|
||||
"webYarnHash" = "1j43rbn3sc6bnnf81p8y0b1jcck57d6yh07zpxlkgni1qkly809d";
|
||||
};
|
||||
}
|
||||
|
@ -1,9 +0,0 @@
|
||||
# Generated by ./update.sh - do not update manually!
|
||||
# Last updated: 2024-06-17
|
||||
{
|
||||
version = "3.2.10";
|
||||
amd64_url = "https://dldir1.qq.com/qqfile/qq/QQNT/944f8942/linuxqq_3.2.10-25234_amd64.deb";
|
||||
arm64_url = "https://dldir1.qq.com/qqfile/qq/QQNT/944f8942/linuxqq_3.2.10-25234_arm64.deb";
|
||||
arm64_hash = "sha256-UY9UFbwQjXBd0+52iron1LZQWP/ncUZwylrtDzm5lW8=";
|
||||
amd64_hash = "sha256-CHVX5tBV/w//At2wBjLqgTzayi4NI5i06IDgyW++ha4=";
|
||||
}
|
@ -9,6 +9,7 @@
|
||||
, buildPackages
|
||||
, c-ares
|
||||
, cmake
|
||||
, fixDarwinDylibNames
|
||||
, flex
|
||||
, gettext
|
||||
, glib
|
||||
@ -49,7 +50,9 @@
|
||||
, withQt ? true
|
||||
, qt6 ? null
|
||||
}:
|
||||
|
||||
let
|
||||
isAppBundle = withQt && stdenv.isDarwin;
|
||||
in
|
||||
assert withQt -> qt6 != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -86,6 +89,8 @@ stdenv.mkDerivation rec {
|
||||
] ++ lib.optionals withQt [
|
||||
qt6.wrapQtAppsHook
|
||||
wrapGAppsHook3
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
fixDarwinDylibNames
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
@ -139,7 +144,7 @@ stdenv.mkDerivation rec {
|
||||
"-DBUILD_wireshark=${if withQt then "ON" else "OFF"}"
|
||||
# Fix `extcap` and `plugins` paths. See https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=16444
|
||||
"-DCMAKE_INSTALL_LIBDIR=lib"
|
||||
"-DENABLE_APPLICATION_BUNDLE=${if withQt && stdenv.isDarwin then "ON" else "OFF"}"
|
||||
"-DENABLE_APPLICATION_BUNDLE=${if isAppBundle then "ON" else "OFF"}"
|
||||
"-DLEMON_C_COMPILER=cc"
|
||||
] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
|
||||
"-DHAVE_C99_VSNPRINTF_EXITCODE__TRYRUN_OUTPUT="
|
||||
@ -163,14 +168,20 @@ stdenv.mkDerivation rec {
|
||||
|
||||
postInstall = ''
|
||||
cmake --install . --prefix "''${!outputDev}" --component Development
|
||||
'' + lib.optionalString (stdenv.isDarwin && withQt) ''
|
||||
'' + lib.optionalString isAppBundle ''
|
||||
mkdir -p $out/Applications
|
||||
mv $out/bin/Wireshark.app $out/Applications/Wireshark.app
|
||||
'' + lib.optionalString stdenv.isDarwin ''
|
||||
local flags=()
|
||||
for file in $out/lib/*.dylib; do
|
||||
flags+=(-change @rpath/"$(basename "$file")" "$file")
|
||||
done
|
||||
|
||||
for f in $(find $out/Applications/Wireshark.app/Contents/PlugIns -name "*.so"); do
|
||||
for dylib in $(otool -L $f | awk '/^\t*lib/ {print $1}'); do
|
||||
install_name_tool -change "$dylib" "$out/lib/$dylib" "$f"
|
||||
done
|
||||
for file in $out/lib/wireshark/extcap/*; do
|
||||
if [ -L "$file" ]; then continue; fi
|
||||
echo "$file: fixing dylib references"
|
||||
# note that -id does nothing on binaries
|
||||
install_name_tool -id "$file" "''${flags[@]}" "$file"
|
||||
done
|
||||
'';
|
||||
|
||||
@ -178,6 +189,15 @@ stdenv.mkDerivation rec {
|
||||
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
|
||||
'';
|
||||
|
||||
# This is done to remove some binary wrappers that wrapQtApps adds in *.app directories.
|
||||
# Copying because unfortunately pointing Wireshark (when built as an appbundle) at $out/lib instead is nontrivial.
|
||||
postFixup = lib.optionalString isAppBundle ''
|
||||
rm -rf $out/Applications/Wireshark.app/Contents/MacOS/extcap $out/Applications/Wireshark.app/Contents/PlugIns
|
||||
mkdir -p $out/Applications/Wireshark.app/Contents/PlugIns/wireshark
|
||||
cp -r $out/lib/wireshark/plugins/4-2 $out/Applications/Wireshark.app/Contents/PlugIns/wireshark/4-2
|
||||
cp -r $out/lib/wireshark/extcap $out/Applications/Wireshark.app/Contents/MacOS/extcap
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Powerful network protocol analyzer";
|
||||
longDescription = ''
|
||||
|
@ -129,7 +129,7 @@ let
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "mujoco";
|
||||
version = "3.2.1";
|
||||
version = "3.2.2";
|
||||
|
||||
# Bumping version? Make sure to look though the MuJoCo's commit
|
||||
# history for bumped dependency pins!
|
||||
@ -137,7 +137,7 @@ in stdenv.mkDerivation rec {
|
||||
owner = "google-deepmind";
|
||||
repo = "mujoco";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-Il1ZZdHXsBcamIILfae8n51W8wJ78a/H3gQx2/+n9kQ=";
|
||||
hash = "sha256-UUPB7AY6OYWaK5uBu92kmoIE116AfFa34sYmF943AOU=";
|
||||
};
|
||||
|
||||
patches = [ ./mujoco-system-deps-dont-fetch.patch ];
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "git-town";
|
||||
version = "14.2.2";
|
||||
version = "15.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "git-town";
|
||||
repo = "git-town";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-bYCE3Ik0UbbjlZV8EY6pVRZzrTBp2uiZLJjO4UxfGE8=";
|
||||
hash = "sha256-Gp2X9DCnueSVbeqFBNxLfvlXh4PzlybVdh8xKjaFICQ=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
@ -32,6 +32,9 @@ buildGoModule rec {
|
||||
|
||||
preCheck = ''
|
||||
HOME=$(mktemp -d)
|
||||
|
||||
# this runs tests requiring local operations
|
||||
rm main_test.go
|
||||
'';
|
||||
|
||||
checkFlags =
|
||||
|
@ -296,8 +296,8 @@ rec {
|
||||
|
||||
docker_25 = callPackage dockerGen rec {
|
||||
version = "25.0.6";
|
||||
cliRev = "v25.0.5";
|
||||
cliHash = "sha256-CACMi3bXUN6oGc2f/Z+lNQqMgQ4llRWPRKgijdpiPGg=";
|
||||
cliRev = "v${version}";
|
||||
cliHash = "sha256-7ZKjlONL5RXEJZrvssrL1PQMNANP0qTw4myGKdtd19U=";
|
||||
mobyRev = "v${version}";
|
||||
mobyHash = "sha256-+zkhUMeVD3HNq8WrWQmLskq+HykvD5kzSACmf67YbJE=";
|
||||
runcRev = "v1.1.12";
|
||||
|
@ -1,23 +1,20 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
python3Packages,
|
||||
podman,
|
||||
fetchPypi,
|
||||
buildPythonPackage,
|
||||
pythonOlder,
|
||||
ansible-lint,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "ansible-navigator";
|
||||
version = "24.7.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.10";
|
||||
disabled = python3Packages.pythonOlder "3.10";
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "ansible_navigator";
|
||||
inherit version;
|
||||
pname = "ansible_navigator";
|
||||
hash = "sha256-XMwJzDxo/VZ+0qy5MLg/Kw/7j3V594qfV+T6jeVEWzg=";
|
||||
};
|
||||
|
||||
@ -26,15 +23,16 @@ buildPythonPackage rec {
|
||||
setuptools-scm
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
dependencies = with python3Packages; [
|
||||
ansible-builder
|
||||
ansible-runner
|
||||
podman
|
||||
pkgs.ansible-lint
|
||||
jinja2
|
||||
jsonschema
|
||||
tzdata
|
||||
pyyaml
|
||||
onigurumacffi
|
||||
ansible-lint
|
||||
podman
|
||||
];
|
||||
|
||||
# Tests want to run in tmux
|
||||
@ -42,11 +40,11 @@ buildPythonPackage rec {
|
||||
|
||||
pythonImportsCheck = [ "ansible_navigator" ];
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Text-based user interface (TUI) for Ansible";
|
||||
homepage = "https://ansible.readthedocs.io/projects/navigator/";
|
||||
changelog = "https://github.com/ansible/ansible-navigator/releases/tag/v${version}";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ melkor333 ];
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ melkor333 ];
|
||||
};
|
||||
}
|
33
pkgs/by-name/cn/cnsprcy/package.nix
Normal file
33
pkgs/by-name/cn/cnsprcy/package.nix
Normal file
@ -0,0 +1,33 @@
|
||||
{
|
||||
lib,
|
||||
fetchFromSourcehut,
|
||||
rustPlatform,
|
||||
sqlite,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cnsprcy";
|
||||
version = "0.2.0";
|
||||
|
||||
src = fetchFromSourcehut {
|
||||
owner = "~xaos";
|
||||
repo = pname;
|
||||
rev = "v0.2.0";
|
||||
hash = "sha256-f+DauSU4bT3EljY8/ig7jLnUgyDPEo2NSBQcPN0iKx0=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-e9+nMz/FCtd5pnHSHA1RenWzrgIHyCf5eEDO4xMxGHk=";
|
||||
|
||||
RUSTC_BOOTSTRAP = true;
|
||||
|
||||
buildInputs = [ sqlite ];
|
||||
|
||||
meta = {
|
||||
description = "End to end encrypted connections between trusted devices";
|
||||
homepage = "https://git.sr.ht/~xaos/cnsprcy";
|
||||
license = lib.licenses.gpl3;
|
||||
maintainers = with lib.maintainers; [ supinie ];
|
||||
mainProgram = "cnspr";
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -125,6 +125,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
kdePackages.qtnetworkauth
|
||||
kdePackages.qtscxml
|
||||
kdePackages.qtsvg
|
||||
kdePackages.qtwayland
|
||||
kdePackages.qtwebengine
|
||||
kdePackages.qt5compat
|
||||
kdePackages.qtmultimedia
|
||||
|
@ -6,11 +6,11 @@
|
||||
}:
|
||||
appimageTools.wrapType2 rec {
|
||||
pname = "dopamine";
|
||||
version = "3.0.0-preview.27";
|
||||
version = "3.0.0-preview.29";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/digimezzo/dopamine/releases/download/v${version}/Dopamine-${version}.AppImage";
|
||||
hash = "sha256-OTnpFtkdCVoyrDoLdKD382+ZD4FJYSDTBgRoB6YAKHE=";
|
||||
hash = "sha256-VBqnqDMLDC5XJIXygENWagXllq1P090EtumADDd2I8w=";
|
||||
};
|
||||
|
||||
extraInstallCommands =
|
||||
|
@ -20,14 +20,14 @@
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "gearlever";
|
||||
version = "2.0.1";
|
||||
version = "2.0.6";
|
||||
pyproject = false; # Built with meson
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mijorus";
|
||||
repo = "gearlever";
|
||||
rev = version;
|
||||
hash = "sha256-f4rQXenJCZiDC9MRQkjy0mOiNkWzOPSS05GXHXlhUao=";
|
||||
hash = "sha256-+JuF0SL+2yVgkKPItt9Vq6SLcnxaMSWxIeVhY9XLX28=";
|
||||
};
|
||||
|
||||
postPatch =
|
||||
@ -37,14 +37,6 @@ python3Packages.buildPythonApplication rec {
|
||||
substituteInPlace build-aux/meson/postinstall.py \
|
||||
--replace-fail 'gtk-update-icon-cache' 'gtk4-update-icon-cache'
|
||||
''
|
||||
# Some attempts to overcome flatpak assumptions
|
||||
+ ''
|
||||
substituteInPlace src/lib/utils.py \
|
||||
--replace-fail '/run/host/os-release' '/etc/os-release'
|
||||
|
||||
substituteInPlace src/lib/terminal.py \
|
||||
--replace-fail "cmd = ['flatpak-spawn', '--host', *command]" "cmd = [*command]"
|
||||
''
|
||||
# Use gtk4 instead of gtk3 to get smaller closure size
|
||||
+ ''
|
||||
substituteInPlace src/providers/AppImageProvider.py \
|
||||
|
27
pkgs/by-name/ku/kubectl-df-pv/package.nix
Normal file
27
pkgs/by-name/ku/kubectl-df-pv/package.nix
Normal file
@ -0,0 +1,27 @@
|
||||
{ buildGoModule
|
||||
, fetchFromGitHub
|
||||
, lib
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kubectl-df-pv";
|
||||
version = "0.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "yashbhutwala";
|
||||
repo = "kubectl-df-pv";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-FxKqkxLMNfCXuahKTMod6kWKZ/ucYeIEFcS8BmpbLWg=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-YkDPgN7jBvYveiyU8N+3Ia52SEmlzC0TGBQjUuIAaw0=";
|
||||
|
||||
meta = {
|
||||
description = "df (disk free)-like utility for persistent volumes on kubernetes";
|
||||
mainProgram = "df-pv";
|
||||
homepage = "https://github.com/yashbhutwala/kubectl-df-pv";
|
||||
changelog = "https://github.com/yashbhutwala/kubectl-df-pv/releases/tag/v${version}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ jemand771 ];
|
||||
};
|
||||
}
|
@ -10,16 +10,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "md-tui";
|
||||
version = "0.8.3";
|
||||
version = "0.8.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "henriklovhaug";
|
||||
repo = "md-tui";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-21h1r6rhjFTOhebMS9PO3/OLKKEeFPVpWThFdgxKhh4=";
|
||||
hash = "sha256-J1UtyxDT8+UmBwayUMtcPOtnVVkRZLg6ECXnqDSJ2Ew=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-wONvublKzJnVVUjf1z9V4RwSkHg+HSoTGYvnMdslAYg=";
|
||||
cargoHash = "sha256-wb5XF6KdroLbQOQg9bPrJjqLOluq/EH2dJzp2icNUIc=";
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
|
28
pkgs/by-name/mi/microfetch/package.nix
Normal file
28
pkgs/by-name/mi/microfetch/package.nix
Normal file
@ -0,0 +1,28 @@
|
||||
{
|
||||
lib,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "microfetch";
|
||||
version = "0.3.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "NotAShelf";
|
||||
repo = "microfetch";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-iBfnui7xrx31euYnQxoJf1xXFYFiJnDMadLRAiRCN04=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-J+S6XIMUcWj4jXABQinEDx6dRG5Byc2UxJoKj2y1tQU=";
|
||||
|
||||
meta = {
|
||||
description = "Microscopic fetch script in Rust, for NixOS systems";
|
||||
homepage = "https://github.com/NotAShelf/microfetch";
|
||||
license = lib.licenses.gpl3Only;
|
||||
maintainers = with lib.maintainers; [ nydragon ];
|
||||
mainProgram = "microfetch";
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -1,20 +1,27 @@
|
||||
{ lib
|
||||
, rustPlatform
|
||||
, fetchFromGitHub
|
||||
, pkg-config
|
||||
, openssl
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "openapi-tui";
|
||||
version = "0.5.0";
|
||||
version = "0.9.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zaghaghi";
|
||||
repo = "openapi-tui";
|
||||
rev = version;
|
||||
hash = "sha256-flxQ5+nLacQAkrxJafw9D3iXYTFpHcmTshEySmFJ0Cc=";
|
||||
hash = "sha256-y8A43FV3PfYHaMMHE3uGRBaftga/pVSivCfV4iwUROA=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-vfEDbUrIXc498QnMJJlMGyTUDvlHgquB5GpWTe7yCvM=";
|
||||
cargoHash = "sha256-I1eTJDtQM9WKluOZJGfQT4Wn9TFyTu6ZcPFuh8wZIWI=";
|
||||
|
||||
OPENSSL_NO_VENDOR = true;
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ openssl ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Terminal UI to list, browse and run APIs defined with openapi spec";
|
||||
@ -24,4 +31,3 @@ rustPlatform.buildRustPackage rec {
|
||||
mainProgram = "openapi-tui";
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "powerjoular";
|
||||
version = "1.0.1";
|
||||
version = "1.0.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "joular";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-1XNXe5EZHB1kK2C5oyRt4TzfjZivW9DOEvS1MxJHC8E=";
|
||||
hash = "sha256-zcG/R8isL7WcwsIFovnRKZ5DCtZu4vJWOximFY9ARuE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -29,13 +29,13 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
version = "2024.2.0";
|
||||
version = "2024.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pretalx";
|
||||
repo = "pretalx";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-2HkxFS+T/lN/8EvAL3S4iVYn30y0OPmaUSneEPEA62k=";
|
||||
hash = "sha256-D0ju9aOVy/new9GWqyFalZYCisdmM7irWSbn2TVCJYQ=";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
|
9
pkgs/by-name/qq/qq/sources.nix
Normal file
9
pkgs/by-name/qq/qq/sources.nix
Normal file
@ -0,0 +1,9 @@
|
||||
# Generated by ./update.sh - do not update manually!
|
||||
# Last updated: 2024-08-05
|
||||
{
|
||||
version = "3.2.12-26740";
|
||||
amd64_url = "https://dldir1.qq.com/qqfile/qq/QQNT/769073aa/linuxqq_3.2.12-26740_amd64.deb";
|
||||
arm64_url = "https://dldir1.qq.com/qqfile/qq/QQNT/769073aa/linuxqq_3.2.12-26740_arm64.deb";
|
||||
arm64_hash = "sha256-y2qWXNtqIinXB91nvIT0FC8fM1r71qX5fXjrBAjZxzA=";
|
||||
amd64_hash = "sha256-SQQ6biLr1ZCpBq+2TzKpjipoCb1aFkxlr0CZYKmA8Zg=";
|
||||
}
|
@ -27,26 +27,18 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lomiri-clock-app";
|
||||
version = "4.0.3";
|
||||
version = "4.0.4";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "ubports";
|
||||
repo = "development/apps/lomiri-clock-app";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-q/hdnwHO97bhL0W3VsdHwjPvGs6GhWbDiVLCx4NiR50=";
|
||||
hash = "sha256-IWNLMYrebYQe5otNwZtRUs4YGPo/5OFic3Nh2pWxROs=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Fix dispatching to clock app via LUD
|
||||
# Remove when version > 4.0.3
|
||||
(fetchpatch {
|
||||
name = "0001-lomiri-clock-app-Fix-non-click-lomiri-url-dispatcher-support.patch";
|
||||
url = "https://gitlab.com/ubports/development/apps/lomiri-clock-app/-/commit/493888b41489b360415d1a0d0e431754afdee2b0.patch";
|
||||
hash = "sha256-sI7YDrWjV0bSAq0vdSvNcWCLhmEEb10T7jd2kYfSfZU=";
|
||||
})
|
||||
|
||||
# Fix GNUInstallDirs variables usage
|
||||
# Remove when https://gitlab.com/ubports/development/apps/lomiri-clock-app/-/merge_requests/215 merged & in release
|
||||
# Remove when version > 4.0.4
|
||||
(fetchpatch {
|
||||
name = "0002-lomiri-clock-app-Fix-GNUInstallDirs-variable-concatenations-in-CMake.patch";
|
||||
url = "https://gitlab.com/ubports/development/apps/lomiri-clock-app/-/commit/33c62d0382f69462de0567628d7a6ef162944e12.patch";
|
||||
@ -54,7 +46,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
})
|
||||
|
||||
# Fix installation of splash icon
|
||||
# Remove when https://gitlab.com/ubports/development/apps/lomiri-clock-app/-/merge_requests/216 merged & in release
|
||||
# Remove when version > 4.0.4
|
||||
(fetchpatch {
|
||||
name = "0003-lomiri-clock-app-Fix-splash-file-installation-in-non-clock-mode.patch";
|
||||
url = "https://gitlab.com/ubports/development/apps/lomiri-clock-app/-/commit/97fd6fd91ee787dfe107bd36bc895f2ff234b5e3.patch";
|
||||
@ -85,7 +77,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
})
|
||||
|
||||
# Don't ignore PATH when looking for qmltestrunner, saves us a patch for hardcoded fallback
|
||||
# Remove when https://gitlab.com/ubports/development/apps/lomiri-clock-app/-/merge_requests/218 merged & in release
|
||||
# Remove when version > 4.0.4
|
||||
(fetchpatch {
|
||||
name = "0008-lomiri-clock-app-tests-Drop-NO_DEFAULT_PATH.patch";
|
||||
url = "https://gitlab.com/ubports/development/apps/lomiri-clock-app/-/commit/190ef47e2efaaf139920d0556e0522f95479ea95.patch";
|
||||
@ -102,10 +94,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# Part of 493888b41489b360415d1a0d0e431754afdee2b0 patch, but neither fetchpatch nor fetchpatch2 can handle a rename-only change to a file
|
||||
# Remove when version > 4.0.3
|
||||
mv clock.ubports_clock.url-dispatcher lomiri-clock-app.url-dispatcher
|
||||
|
||||
# QT_IMPORTS_DIR returned by qmake -query is broken
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace-fail 'qmake -query QT_INSTALL_QML' 'echo ''${CMAKE_INSTALL_PREFIX}/${qtbase.qtQmlPrefix}' \
|
||||
|
@ -1,57 +1,59 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitLab
|
||||
, fetchpatch
|
||||
, fetchpatch2
|
||||
, gitUpdater
|
||||
, testers
|
||||
, accountsservice
|
||||
, ayatana-indicator-datetime
|
||||
, cmake
|
||||
, cmake-extras
|
||||
, content-hub
|
||||
, dbus
|
||||
, deviceinfo
|
||||
, geonames
|
||||
, gettext
|
||||
, glib
|
||||
, gnome-desktop
|
||||
, gsettings-qt
|
||||
, gtk3
|
||||
, icu
|
||||
, intltool
|
||||
, json-glib
|
||||
, libqofono
|
||||
, libqtdbustest
|
||||
, libqtdbusmock
|
||||
, lomiri-indicator-network
|
||||
, lomiri-schemas
|
||||
, lomiri-settings-components
|
||||
, lomiri-ui-toolkit
|
||||
, maliit-keyboard
|
||||
, pkg-config
|
||||
, python3
|
||||
, qmenumodel
|
||||
, qtbase
|
||||
, qtdeclarative
|
||||
, qtmultimedia
|
||||
, ubports-click
|
||||
, upower
|
||||
, validatePkgConfig
|
||||
, wrapGAppsHook3
|
||||
, wrapQtAppsHook
|
||||
, xvfb-run
|
||||
{
|
||||
stdenv,
|
||||
lib,
|
||||
fetchFromGitLab,
|
||||
gitUpdater,
|
||||
testers,
|
||||
accountsservice,
|
||||
ayatana-indicator-datetime,
|
||||
biometryd,
|
||||
cmake,
|
||||
cmake-extras,
|
||||
content-hub,
|
||||
dbus,
|
||||
deviceinfo,
|
||||
geonames,
|
||||
gettext,
|
||||
glib,
|
||||
gnome-desktop,
|
||||
gsettings-qt,
|
||||
gtk3,
|
||||
icu,
|
||||
intltool,
|
||||
json-glib,
|
||||
libqofono,
|
||||
libqtdbustest,
|
||||
libqtdbusmock,
|
||||
lomiri-indicator-network,
|
||||
lomiri-schemas,
|
||||
lomiri-settings-components,
|
||||
lomiri-ui-toolkit,
|
||||
maliit-keyboard,
|
||||
pkg-config,
|
||||
polkit,
|
||||
python3,
|
||||
qmenumodel,
|
||||
qtbase,
|
||||
qtdeclarative,
|
||||
qtmultimedia,
|
||||
trust-store,
|
||||
ubports-click,
|
||||
upower,
|
||||
validatePkgConfig,
|
||||
wrapGAppsHook3,
|
||||
wrapQtAppsHook,
|
||||
xvfb-run,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lomiri-system-settings-unwrapped";
|
||||
version = "1.1.0";
|
||||
version = "1.2.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "ubports";
|
||||
repo = "development/core/lomiri-system-settings";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-Po5eArO7zyaGatTf6kqci3DdzFDJSZakeglbiMx9kR8=";
|
||||
hash = "sha256-dWaXPr9Z5jz5SbwLSd3jVqjK0E5BdcKVeF15p8j47uM=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
@ -59,55 +61,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"dev"
|
||||
];
|
||||
|
||||
patches = [
|
||||
# Remove when https://gitlab.com/ubports/development/core/lomiri-system-settings/-/merge_requests/433 merged & in release
|
||||
(fetchpatch {
|
||||
name = "0001-lomiri-system-settings-plugins-language-Fix-linking-against-accountsservice.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-system-settings/-/commit/75763ae2f9669f5f7f29aec3566606e6f6cb7478.patch";
|
||||
hash = "sha256-2CE0yizkaz93kK82DhaaFjKmGnMoaikrwFj4k7RN534=";
|
||||
})
|
||||
|
||||
# Remove when https://gitlab.com/ubports/development/core/lomiri-system-settings/-/merge_requests/434 merged & in release
|
||||
(fetchpatch {
|
||||
name = "0002-lomiri-system-settings-GNUInstallDirs-and-fix-absolute-path-handling.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-system-settings/-/commit/93ee84423f3677a608ef73addcd3ddcbe7dc1d32.patch";
|
||||
hash = "sha256-lSKAhtE3oSSv7USvDbbcfBZWAtWMmuKneWawKQABIiM=";
|
||||
})
|
||||
|
||||
# Fixes tests with very-recent python-dbusmock
|
||||
# Remove when version > 1.1.0
|
||||
(fetchpatch {
|
||||
name = "0003-lomiri-system-settings-Revert-Pass-missing-parameter-to-dbusmock-bluez-PairDevice-function.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-system-settings/-/commit/67d9e28ebab8bdb9473d5bf8da2b7573e6848fa2.patch";
|
||||
hash = "sha256-pFWNne2UH3R5Fz9ayHvIpDXDQbXPs0k4b/oRg0fzi+s=";
|
||||
})
|
||||
|
||||
(fetchpatch2 {
|
||||
name = "0004-lomiri-system-settings-QOfono-namespace-change.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-system-settings/-/commit/c0b5b007d77993fabdd95be5ccbbba5151f0f165.patch";
|
||||
hash = "sha256-HB7qdlbY0AVG6X3hL3IHf0Z7rm1G0wfdqo5MXtY7bfE=";
|
||||
})
|
||||
] ++ [
|
||||
|
||||
./2000-Support-wrapping-for-Nixpkgs.patch
|
||||
|
||||
# Make it work with regular accountsservice
|
||||
# https://gitlab.com/ubports/development/core/lomiri-system-settings/-/issues/341
|
||||
(fetchpatch {
|
||||
name = "2001-lomiri-system-settings-disable-current-language-switching.patch";
|
||||
url = "https://sources.debian.org/data/main/l/lomiri-system-settings/1.0.1-2/debian/patches/2001_disable-current-language-switching.patch";
|
||||
hash = "sha256-ZOFYwxS8s6+qMFw8xDCBv3nLBOBm86m9d/VhbpOjamY=";
|
||||
})
|
||||
];
|
||||
patches = [ ./2000-Support-wrapping-for-Nixpkgs.patch ];
|
||||
|
||||
postPatch = ''
|
||||
# Part of 0004-lomiri-system-settings-QOfono-namespace-change.patch, fetchpatch2 cannot handle rename-only changes
|
||||
for unmovedThing in tests/mocks/MeeGo/QOfono/*; do
|
||||
mv "$unmovedThing" "tests/mocks/QOfono/$(basename "$unmovedThing")"
|
||||
done
|
||||
rmdir tests/mocks/MeeGo/QOfono
|
||||
rmdir tests/mocks/MeeGo
|
||||
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace-fail "\''${CMAKE_INSTALL_LIBDIR}/qt5/qml" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtQmlPrefix}" \
|
||||
|
||||
@ -155,7 +111,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
gtk3
|
||||
icu
|
||||
json-glib
|
||||
polkit
|
||||
qtbase
|
||||
trust-store
|
||||
ubports-click
|
||||
upower
|
||||
];
|
||||
@ -163,6 +121,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
# QML components and schemas the wrapper needs
|
||||
propagatedBuildInputs = [
|
||||
ayatana-indicator-datetime
|
||||
biometryd
|
||||
content-hub
|
||||
libqofono
|
||||
lomiri-indicator-network
|
||||
@ -177,9 +136,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
nativeCheckInputs = [
|
||||
dbus
|
||||
(python3.withPackages (ps: with ps; [
|
||||
python-dbusmock
|
||||
]))
|
||||
(python3.withPackages (ps: with ps; [ python-dbusmock ]))
|
||||
xvfb-run
|
||||
];
|
||||
|
||||
@ -194,19 +151,21 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "ENABLE_LIBDEVICEINFO" true)
|
||||
(lib.cmakeBool "ENABLE_TESTS" finalAttrs.finalPackage.doCheck)
|
||||
(lib.cmakeFeature "CMAKE_CTEST_ARGUMENTS" (lib.concatStringsSep ";" [
|
||||
# Exclude tests
|
||||
"-E" (lib.strings.escapeShellArg "(${lib.concatStringsSep "|" [
|
||||
# Hits OpenGL context issue inside lomiri-ui-toolkit, see derivation of that on details
|
||||
"^testmouse"
|
||||
"^tst_notifications"
|
||||
]})")
|
||||
]))
|
||||
(lib.cmakeFeature "CMAKE_CTEST_ARGUMENTS" (
|
||||
lib.concatStringsSep ";" [
|
||||
# Exclude tests
|
||||
"-E"
|
||||
(lib.strings.escapeShellArg "(${
|
||||
lib.concatStringsSep "|" [
|
||||
# Hits OpenGL context issue inside lomiri-ui-toolkit, see derivation of that on details
|
||||
"^testmouse"
|
||||
"^tst_notifications"
|
||||
]
|
||||
})")
|
||||
]
|
||||
))
|
||||
];
|
||||
|
||||
# CMake option had to be excluded from earlier patchset
|
||||
env.NIX_CFLAGS_COMPILE = lib.optionalString (lib.strings.versionOlder python3.pkgs.python-dbusmock.version "0.30.1") "-DMODERN_PYTHON_DBUSMOCK";
|
||||
|
||||
# The linking for this normally ignores missing symbols, which is inconvenient for figuring out why subpages may be
|
||||
# failing to load their library modules. Force it to report them at linktime instead of runtime.
|
||||
env.NIX_LDFLAGS = "--unresolved-symbols=report-all";
|
||||
@ -218,7 +177,16 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
preCheck = ''
|
||||
export QT_PLUGIN_PATH=${lib.getBin qtbase}/${qtbase.qtPluginPrefix}
|
||||
export QML2_IMPORT_PATH=${lib.makeSearchPathOutput "bin" qtbase.qtQmlPrefix ([ qtdeclarative lomiri-ui-toolkit lomiri-settings-components ] ++ lomiri-ui-toolkit.propagatedBuildInputs)}
|
||||
export QML2_IMPORT_PATH=${
|
||||
lib.makeSearchPathOutput "bin" qtbase.qtQmlPrefix (
|
||||
[
|
||||
qtdeclarative
|
||||
lomiri-ui-toolkit
|
||||
lomiri-settings-components
|
||||
]
|
||||
++ lomiri-ui-toolkit.propagatedBuildInputs
|
||||
)
|
||||
}
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
@ -244,8 +212,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
mainProgram = "lomiri-system-settings";
|
||||
maintainers = teams.lomiri.members;
|
||||
platforms = platforms.linux;
|
||||
pkgConfigModules = [
|
||||
"LomiriSystemSettings"
|
||||
];
|
||||
pkgConfigModules = [ "LomiriSystemSettings" ];
|
||||
};
|
||||
})
|
||||
|
@ -1,94 +0,0 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitLab
|
||||
, biometryd
|
||||
, cmake
|
||||
, libqtdbusmock
|
||||
, libqtdbustest
|
||||
, lomiri-system-settings-unwrapped
|
||||
, pkg-config
|
||||
, polkit
|
||||
, python3
|
||||
, qtbase
|
||||
, qtdeclarative
|
||||
, trust-store
|
||||
, xvfb-run
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lomiri-system-settings-security-privacy";
|
||||
version = "1.0.2";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "ubports";
|
||||
repo = "development/core/lomiri-system-settings-security-privacy";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-d7OgxV362gJ3t5N+DEFgwyK+m6Ij6juRPuxfmbCg68Y=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
# CMake pkg_get_variable cannot replace prefix variable yet
|
||||
for pcvar in plugin_manifest_dir plugin_private_module_dir plugin_qml_dir; do
|
||||
pcvarname=$(echo $pcvar | tr '[:lower:]' '[:upper:]')
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace-fail "pkg_get_variable($pcvarname LomiriSystemSettings $pcvar)" "set($pcvarname $(pkg-config LomiriSystemSettings --define-variable=prefix=$out --define-variable=libdir=$out/lib --variable=$pcvar))"
|
||||
done
|
||||
|
||||
# Compatibility with newer libqofono
|
||||
substituteInPlace plugins/security-privacy/{Ofono,PageComponent,SimPin}.qml \
|
||||
--replace-fail 'import MeeGo.QOfono' 'import QOfono'
|
||||
'';
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
python3
|
||||
qtdeclarative
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
lomiri-system-settings-unwrapped
|
||||
polkit
|
||||
qtbase
|
||||
qtdeclarative
|
||||
trust-store
|
||||
];
|
||||
|
||||
# QML components and schemas the wrapper needs
|
||||
propagatedBuildInputs = [
|
||||
biometryd
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
xvfb-run
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
libqtdbusmock
|
||||
libqtdbustest
|
||||
];
|
||||
|
||||
# Plugin library & modules for LSS
|
||||
dontWrapQtApps = true;
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "ENABLE_TESTS" finalAttrs.finalPackage.doCheck)
|
||||
];
|
||||
|
||||
doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform;
|
||||
|
||||
preCheck = ''
|
||||
export QT_PLUGIN_PATH=${lib.getBin qtbase}/${qtbase.qtPluginPrefix}
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Security and privacy settings plugin for Lomiri system settings";
|
||||
homepage = "https://gitlab.com/ubports/development/core/lomiri-system-settings-security-privacy";
|
||||
changelog = "https://gitlab.com/ubports/development/core/lomiri-system-settings-security-privacy/-/blob/${finalAttrs.version}/ChangeLog";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = teams.lomiri.members;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
})
|
@ -1,13 +1,13 @@
|
||||
{ stdenvNoCC
|
||||
, lib
|
||||
, nixosTests
|
||||
, glib
|
||||
, lndir
|
||||
, lomiri-system-settings-unwrapped
|
||||
, lomiri-system-settings-security-privacy
|
||||
, wrapGAppsHook3
|
||||
, wrapQtAppsHook
|
||||
, plugins ? [ lomiri-system-settings-security-privacy ]
|
||||
{
|
||||
stdenvNoCC,
|
||||
lib,
|
||||
nixosTests,
|
||||
glib,
|
||||
lndir,
|
||||
lomiri-system-settings-unwrapped,
|
||||
wrapGAppsHook3,
|
||||
wrapQtAppsHook,
|
||||
plugins ? [ ],
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
|
@ -1,90 +1,82 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitLab
|
||||
, fetchpatch
|
||||
, fetchpatch2
|
||||
, gitUpdater
|
||||
, linkFarm
|
||||
, nixosTests
|
||||
, ayatana-indicator-datetime
|
||||
, bash
|
||||
, biometryd
|
||||
, boost
|
||||
, cmake
|
||||
, cmake-extras
|
||||
, coreutils
|
||||
, dbus
|
||||
, dbus-test-runner
|
||||
, deviceinfo
|
||||
, geonames
|
||||
, glib
|
||||
, glm
|
||||
, gnome-desktop
|
||||
, gsettings-qt
|
||||
, gtk3
|
||||
, hfd-service
|
||||
, libevdev
|
||||
, libqtdbustest
|
||||
, libqtdbusmock
|
||||
, libusermetrics
|
||||
, libuuid
|
||||
, lightdm_qt
|
||||
, lomiri-api
|
||||
, lomiri-app-launch
|
||||
, lomiri-download-manager
|
||||
, lomiri-indicator-network
|
||||
, lomiri-ui-toolkit
|
||||
, lomiri-settings-components
|
||||
, lomiri-system-settings-unwrapped
|
||||
, lomiri-schemas
|
||||
, lomiri-notifications
|
||||
, lomiri-thumbnailer
|
||||
, maliit-keyboard
|
||||
, mir_2_15
|
||||
, nixos-icons
|
||||
, pam
|
||||
, pkg-config
|
||||
, properties-cpp
|
||||
, protobuf
|
||||
, python3
|
||||
, qmenumodel
|
||||
, qtbase
|
||||
, qtdeclarative
|
||||
, qtmir
|
||||
, qtmultimedia
|
||||
, qtsvg
|
||||
, telephony-service
|
||||
, wrapGAppsHook3
|
||||
, wrapQtAppsHook
|
||||
, xwayland
|
||||
{
|
||||
stdenv,
|
||||
lib,
|
||||
fetchFromGitLab,
|
||||
fetchpatch,
|
||||
fetchpatch2,
|
||||
gitUpdater,
|
||||
linkFarm,
|
||||
nixosTests,
|
||||
ayatana-indicator-datetime,
|
||||
bash,
|
||||
biometryd,
|
||||
boost,
|
||||
cmake,
|
||||
cmake-extras,
|
||||
coreutils,
|
||||
dbus,
|
||||
dbus-test-runner,
|
||||
deviceinfo,
|
||||
geonames,
|
||||
glib,
|
||||
glm,
|
||||
gnome-desktop,
|
||||
gsettings-qt,
|
||||
gtk3,
|
||||
hfd-service,
|
||||
libevdev,
|
||||
libqtdbustest,
|
||||
libqtdbusmock,
|
||||
libusermetrics,
|
||||
libuuid,
|
||||
lightdm_qt,
|
||||
lomiri-api,
|
||||
lomiri-app-launch,
|
||||
lomiri-download-manager,
|
||||
lomiri-indicator-network,
|
||||
lomiri-ui-toolkit,
|
||||
lomiri-settings-components,
|
||||
lomiri-system-settings-unwrapped,
|
||||
lomiri-schemas,
|
||||
lomiri-notifications,
|
||||
lomiri-thumbnailer,
|
||||
maliit-keyboard,
|
||||
mir_2_15,
|
||||
nixos-icons,
|
||||
pam,
|
||||
pkg-config,
|
||||
properties-cpp,
|
||||
protobuf,
|
||||
python3,
|
||||
qmenumodel,
|
||||
qtbase,
|
||||
qtdeclarative,
|
||||
qtmir,
|
||||
qtmultimedia,
|
||||
qtsvg,
|
||||
telephony-service,
|
||||
wrapGAppsHook3,
|
||||
wrapQtAppsHook,
|
||||
xwayland,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lomiri";
|
||||
version = "0.2.1";
|
||||
version = "0.3.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "ubports";
|
||||
repo = "development/core/lomiri";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-V5Lt870eHgmJ63OF8bTiNFLAFrxdgNihkd7aodSO3v8=";
|
||||
hash = "sha256-Godl/SQ0+NkI6kwH85SXHPQ5GRlih3xvCyeYxwiqH/s=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Remove when version > 0.2.1
|
||||
# Remove when version > 0.3.0
|
||||
(fetchpatch {
|
||||
name = "0001-lomiri-Fix-overwriting-INCLUDE_DIRECTORIES-variable.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri/-/commit/53190bf2f03c8a35491efb26222b8d67ff6caa34.patch";
|
||||
hash = "sha256-sbwqOqpTf5OlEB4NZZZTFNXyKq4rTQAxJ6U8YP/DT5s=";
|
||||
})
|
||||
|
||||
# fetchpatch2 for renames
|
||||
# Use GNUInstallDirs variables better, replace more /usr references
|
||||
# Remove when https://gitlab.com/ubports/development/core/lomiri/-/merge_requests/137 merged & in release
|
||||
(fetchpatch2 {
|
||||
name = "0002-lomiri-Make-less-FHS-assumptions.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri/-/commit/817ae1d8ed927e661fbc006851163ba99c46ae13.patch";
|
||||
hash = "sha256-NLvpzI2MtjKcGrgTn6PbLXSy3/Jg8KxdSvVYO9KYu9g=";
|
||||
name = "0001-lomiri-Fix-accountsservice-test.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri/-/commit/353153c4ebc40ffcc7702af42205d2075fc81503.patch";
|
||||
hash = "sha256-J9ySZgWd7KR7aU1cCRu5iirq7bi3NdLR9SZs9Pd1I8w=";
|
||||
})
|
||||
|
||||
# Fix greeter & related settings
|
||||
@ -116,62 +108,51 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
hash = "sha256-guq/Ykcq4WcuXxNKO1eA4sJFyGSpZo0gtyFTdeK/GeE=";
|
||||
})
|
||||
|
||||
# fetchpatch2 for renames
|
||||
# Remove when version > 0.2.1
|
||||
(fetchpatch2 {
|
||||
name = "1010-lomiri-QOfono-namespace.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri/-/commit/d0397dadb5f05097f916c5b39e6d9b95d4ab9e4d.patch";
|
||||
hash = "sha256-wIkHlz2vYxF9eeH/sYYEdD9f8m4ylHEXXnX/DFG3HXg=";
|
||||
})
|
||||
|
||||
./9901-lomiri-Disable-Wizard.patch
|
||||
./9902-lomiri-Check-NIXOS_XKB_LAYOUTS.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# Part of greeter fix, applies separately due to merge conflicts
|
||||
substituteInPlace data/lomiri-greeter.desktop.in.in \
|
||||
--replace-fail '@CMAKE_INSTALL_FULL_BINDIR@/lomiri-greeter-wrapper @CMAKE_INSTALL_FULL_BINDIR@/lomiri --mode=greeter' '@CMAKE_INSTALL_FULL_BINDIR@/lomiri --mode=greeter' \
|
||||
--replace-fail 'X-LightDM-Session-Type=mir' 'X-LightDM-Session-Type=wayland'
|
||||
postPatch =
|
||||
''
|
||||
# Part of greeter fix, applies separately due to merge conflicts
|
||||
substituteInPlace data/lomiri-greeter.desktop.in.in \
|
||||
--replace-fail '@CMAKE_INSTALL_FULL_BINDIR@/lomiri-greeter-wrapper @CMAKE_INSTALL_FULL_BINDIR@/lomiri --mode=greeter' '@CMAKE_INSTALL_FULL_BINDIR@/lomiri --mode=greeter' \
|
||||
--replace-fail 'X-LightDM-Session-Type=mir' 'X-LightDM-Session-Type=wayland'
|
||||
|
||||
# Part of QOfono namespace patch, fetchpatch2 cannot handle rename-only changes
|
||||
for unmovedThing in tests/mocks/MeeGo/QOfono/*; do
|
||||
mv "$unmovedThing" "tests/mocks/QOfono/$(basename "$unmovedThing")"
|
||||
done
|
||||
rmdir tests/mocks/MeeGo/QOfono
|
||||
rmdir tests/mocks/MeeGo
|
||||
# Written with a different qtmir branch in mind, but different branch breaks compat with some patches
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace-fail 'qt5mir2server' 'qtmirserver'
|
||||
|
||||
# Need to replace prefix
|
||||
substituteInPlace data/systemd-user/CMakeLists.txt \
|
||||
--replace-fail 'pkg_get_variable(SYSTEMD_USERUNITDIR systemd systemduserunitdir)' 'pkg_get_variable(SYSTEMD_USERUNITDIR systemd systemduserunitdir DEFINE_VARIABLES prefix=''${CMAKE_INSTALL_PREFIX})'
|
||||
# Need to replace prefix
|
||||
substituteInPlace data/systemd-user/CMakeLists.txt \
|
||||
--replace-fail 'pkg_get_variable(SYSTEMD_USER_UNIT_DIR systemd systemd_user_unit_dir)' 'pkg_get_variable(SYSTEMD_USER_UNIT_DIR systemd systemd_user_unit_dir DEFINE_VARIABLES prefix=''${CMAKE_INSTALL_PREFIX})'
|
||||
|
||||
# Don't embed full paths into regular desktop files (but do embed them into lightdm greeter one)
|
||||
substituteInPlace data/{indicators-client,lomiri}.desktop.in.in \
|
||||
--replace-fail '@CMAKE_INSTALL_FULL_BINDIR@/' ""
|
||||
# Don't embed full paths into regular desktop files (but do embed them into lightdm greeter one)
|
||||
substituteInPlace data/{indicators-client,lomiri}.desktop.in.in \
|
||||
--replace-fail '@CMAKE_INSTALL_FULL_BINDIR@/' ""
|
||||
|
||||
# Exclude tests that don't compile (Mir headers these relied on were removed in mir 2.9)
|
||||
# fatal error: mirtest/mir/test/doubles/stub_surface.h: No such file or directory
|
||||
substituteInPlace tests/mocks/CMakeLists.txt \
|
||||
--replace-fail 'add_subdirectory(QtMir/Application)' ""
|
||||
# Exclude tests that don't compile (Mir headers these relied on were removed in mir 2.9)
|
||||
# fatal error: mirtest/mir/test/doubles/stub_surface.h: No such file or directory
|
||||
substituteInPlace tests/mocks/CMakeLists.txt \
|
||||
--replace-fail 'add_subdirectory(QtMir/Application)' ""
|
||||
|
||||
#substituteInPlace plugins/AccountsService/CMakeLists.txt \
|
||||
# --replace-fail 'CMAKE_INSTALL_DATADIR' 'CMAKE_INSTALL_FULL_DATADIR'
|
||||
# NixOS-ify
|
||||
|
||||
# NixOS-ify
|
||||
# Use Nix flake instead of Canonical's Ubuntu logo
|
||||
rm qml/Launcher/graphics/home.svg
|
||||
ln -s ${nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake-white.svg qml/Launcher/graphics/home.svg
|
||||
|
||||
# Use Nix flake instead of Canonical's Ubuntu logo
|
||||
rm qml/Launcher/graphics/home.svg
|
||||
ln -s ${nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake-white.svg qml/Launcher/graphics/home.svg
|
||||
|
||||
# Look up default wallpaper in current system
|
||||
substituteInPlace plugins/Utils/constants.cpp \
|
||||
--replace-fail '/usr/share/backgrounds' '/run/current-system/sw/share/wallpapers'
|
||||
'' + lib.optionalString finalAttrs.finalPackage.doCheck ''
|
||||
patchShebangs tests/whitespace/check_whitespace.py
|
||||
'';
|
||||
# Look up default wallpaper in current system
|
||||
substituteInPlace plugins/Utils/constants.cpp \
|
||||
--replace-fail '/usr/share/backgrounds' '/run/current-system/sw/share/wallpapers'
|
||||
''
|
||||
+ lib.optionalString finalAttrs.finalPackage.doCheck ''
|
||||
patchShebangs tests/whitespace/check_whitespace.py
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
dbus-test-runner
|
||||
glib # populates GSETTINGS_SCHEMAS_PATH
|
||||
pkg-config
|
||||
wrapGAppsHook3 # XDG_DATA_DIRS wrapper flags for schemas
|
||||
@ -224,11 +205,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
telephony-service
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
(python3.withPackages (ps: with ps; [
|
||||
python-dbusmock
|
||||
]))
|
||||
];
|
||||
nativeCheckInputs = [ (python3.withPackages (ps: with ps; [ python-dbusmock ])) ];
|
||||
|
||||
checkInputs = [
|
||||
libqtdbustest
|
||||
@ -243,6 +220,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "NO_TESTS" (!finalAttrs.finalPackage.doCheck))
|
||||
(lib.cmakeBool "WITH_MIR2" true)
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
@ -266,7 +244,14 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
wrapQtApp $out/bin/lomiri-mock-indicator-service
|
||||
|
||||
wrapProgram $out/bin/lomiri-greeter-wrapper \
|
||||
--prefix PATH : ${lib.makeBinPath [ coreutils dbus deviceinfo glib ]} \
|
||||
--prefix PATH : ${
|
||||
lib.makeBinPath [
|
||||
coreutils
|
||||
dbus
|
||||
deviceinfo
|
||||
glib
|
||||
]
|
||||
} \
|
||||
--set LOMIRI_BINARY "$out/bin/lomiri"
|
||||
|
||||
wrapProgram $out/libexec/Xwayland.lomiri \
|
||||
@ -277,12 +262,16 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
tests.lomiri = nixosTests.lomiri;
|
||||
tests = {
|
||||
inherit (nixosTests.lomiri) greeter desktop desktop-ayatana-indicators;
|
||||
};
|
||||
updateScript = gitUpdater { };
|
||||
greeter = linkFarm "lomiri-greeter" [{
|
||||
path = "${finalAttrs.finalPackage}/share/lightdm/greeters/lomiri-greeter.desktop";
|
||||
name = "lomiri-greeter.desktop";
|
||||
}];
|
||||
greeter = linkFarm "lomiri-greeter" [
|
||||
{
|
||||
path = "${finalAttrs.finalPackage}/share/lightdm/greeters/lomiri-greeter.desktop";
|
||||
name = "lomiri-greeter.desktop";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -1,26 +1,18 @@
|
||||
From 30b5391c3f20180fe7427fe179ba26f846200d96 Mon Sep 17 00:00:00 2001
|
||||
From fa705235cafbeb4a016bdcb0067218b29506eb84 Mon Sep 17 00:00:00 2001
|
||||
From: OPNA2608 <opna2608@protonmail.com>
|
||||
Date: Mon, 3 Jun 2024 20:50:03 +0200
|
||||
Date: Fri, 19 Jul 2024 16:22:07 +0200
|
||||
Subject: [PATCH] Unset QT_QPA_PLATFORMTHEME
|
||||
|
||||
gtk3 value breaks Lomiri startup
|
||||
---
|
||||
lomiri-session | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
lomiri-session.in | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/lomiri-session b/lomiri-session
|
||||
index 9d68249..b103840 100755
|
||||
--- a/lomiri-session
|
||||
+++ b/lomiri-session
|
||||
@@ -47,6 +47,7 @@ fi
|
||||
|
||||
# Set some envs
|
||||
export QT_QPA_PLATFORM=wayland
|
||||
+export QT_QPA_PLATFORMTHEME=
|
||||
export QT_IM_MODULE=maliit
|
||||
export MALIIT_FORCE_DBUS_CONNECTION=1
|
||||
export UITK_ICON_THEME=suru
|
||||
@@ -55,6 +56,7 @@ dbus-update-activation-environment --systemd MALIIT_FORCE_DBUS_CONNECTION=1
|
||||
diff --git a/lomiri-session.in b/lomiri-session.in
|
||||
index 50dd4cb..ffc20c4 100755
|
||||
--- a/lomiri-session.in
|
||||
+++ b/lomiri-session.in
|
||||
@@ -55,6 +55,7 @@ dbus-update-activation-environment --systemd MALIIT_FORCE_DBUS_CONNECTION=1
|
||||
dbus-update-activation-environment --systemd QT_IM_MODULE=maliit
|
||||
dbus-update-activation-environment --systemd GTK_IM_MODULE=maliit
|
||||
dbus-update-activation-environment --systemd QT_QPA_PLATFORM=wayland
|
||||
|
@ -1,153 +1,40 @@
|
||||
{ stdenvNoCC
|
||||
, lib
|
||||
, fetchFromGitLab
|
||||
, fetchpatch
|
||||
, fetchpatch2
|
||||
, gitUpdater
|
||||
, nixosTests
|
||||
, bash
|
||||
, cmake
|
||||
, dbus
|
||||
, deviceinfo
|
||||
, inotify-tools
|
||||
, lomiri
|
||||
, makeWrapper
|
||||
, pkg-config
|
||||
, runtimeShell
|
||||
, systemd
|
||||
{
|
||||
stdenvNoCC,
|
||||
lib,
|
||||
fetchFromGitLab,
|
||||
gitUpdater,
|
||||
nixosTests,
|
||||
bash,
|
||||
cmake,
|
||||
dbus,
|
||||
deviceinfo,
|
||||
inotify-tools,
|
||||
lomiri,
|
||||
makeWrapper,
|
||||
pkg-config,
|
||||
runtimeShell,
|
||||
systemd,
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "lomiri-session";
|
||||
version = "0.2";
|
||||
version = "0.3";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "ubports";
|
||||
repo = "development/core/lomiri-session";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-1ZpAn1tFtlXIfeejG0TnrJBRjf3tyz7CD+riWo+sd0s=";
|
||||
hash = "sha256-XduE3tPUjw/wIjFCACasxtN33KO4bDLWrpl7pZcYaAA=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Properly gate of UBtouch-specific code
|
||||
# Otherwise session won't launch, errors out on a removed Mir setting
|
||||
# Remove when version > 0.2
|
||||
(fetchpatch {
|
||||
name = "0001-lomiri-session-Properly-differentiate-between-Ubuntu-Touch-and-Lomiri-Desktop-session.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/780c19d8b4f18ce24ceb64b8abfae70018579dce.patch";
|
||||
hash = "sha256-eFiagFEpH43WpVGA6xkI1IiQ99HHizonhXYg1wYAhwU=";
|
||||
})
|
||||
|
||||
# Export Lomiri-prefixed stop envvar
|
||||
# Remove when version > 0.2
|
||||
(fetchpatch {
|
||||
name = "0002-lomiri-session-Use-LOMIRI_MIR_EMITS_SIGSTOP.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/452e38b489b5893aac3481410d708f4397b1fa1c.patch";
|
||||
hash = "sha256-w/kifBLfDm8+CBliVjm4o8JtjaOByHf97XyPhVk6Gho=";
|
||||
})
|
||||
|
||||
# Removes broken first-time wizard check
|
||||
# Remove when version > 0.2
|
||||
(fetchpatch {
|
||||
name = "0003-lomiri-session-Drop-old-wizard-has-run-check.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/c16ae87d8848f9909850072f7728c03c894b1a47.patch";
|
||||
hash = "sha256-AIwgztFOGwG2zUsaUen/Z3Mes9m7VgbvNKWp/qYp4g4=";
|
||||
})
|
||||
|
||||
# Fix quoting on ps check
|
||||
# Remove when version > 0.2
|
||||
(fetchpatch {
|
||||
name = "0004-lomiri-session-Put-evaluation-of-ps-call-in-quotes.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/2d7368eae99f07200c814c840636206b9eaa485d.patch";
|
||||
hash = "sha256-6LqurJqi/I+Qw64hWTrvA8uA/EIRZbcS6TRRXK+9s1s=";
|
||||
})
|
||||
|
||||
# Check for Xwayland presense to determine X11 support
|
||||
# Remove when version > 0.2
|
||||
(fetchpatch {
|
||||
name = "0005-lomiri-session-Check-for-Xwayland-presence.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/707e43d3b1a6200535b7682e63817265a8e4ee7e.patch";
|
||||
hash = "sha256-sI00P31QVF7ZKdwNep2r+0MetNGg/bbrd2YfEzZPLFI=";
|
||||
})
|
||||
|
||||
# Fix systemd service startup things, drop upstart hacks
|
||||
# Remove when https://gitlab.com/ubports/development/core/lomiri-session/-/merge_requests/13 merged & in release
|
||||
(fetchpatch {
|
||||
name = "0100-lomiri-session-Drop-Before-Wants-for-App-Indicator-targets.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/ccebdc1c47d7411a9cf4ad2e529471fb0403433a.patch";
|
||||
hash = "sha256-vGFvcCjbwcuLrAUIsL5y/QmoOR5i0560LNv01ZT9OOg=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "0101-lomiri-session-Start-lal-application-end.target-on-stop-restart.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/9a945b09feff0c1d2b3203caaf3cec5230481e80.patch";
|
||||
hash = "sha256-1vD+I5YDEh2wF7UDn6ZxPTBRrdUvwWVXt5x5QdkIAkY=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "0102-lomiri-session-Drop-manual-Xwayland-start-logic.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/6aee0d6cfd76ab1904876f4166621f9f6d833056.patch";
|
||||
hash = "sha256-iW/Ko+Xm2ZuJuNE7ATeuMTSHby0fXD+D5nWjX6LLLwU=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "0103-lomiri-session-Set-SyslogIdentifier.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/09d378728685411a04333040279cdaef487dedc8.patch";
|
||||
hash = "sha256-minJSxrn2d0+FBlf7bdN3ddSvsn6YWdeH6ZuCW7qbII=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "0104-lomiri-session-Use-LOMIRI_AS_SYSTEMD_UNIT-to-launch-session.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/9bd2552c2638c139a0abff527fda99f2ef94cc42.patch";
|
||||
hash = "sha256-7ipsGrQRJ98uVSRp2e0U4q3iTuyeUalqZIohbxXpT9k=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "0105-lomiri-session-Allow-sd_notify-calls-for-NOTIFY_SOCKET.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/2157bfc472f2d35e7c81002a924a1f6aa85f7395.patch";
|
||||
hash = "sha256-qtArOG4gysFWGnXbz3KpXEppaZ1PGDQKEGqnJvU6/RE=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "0106-lomiri-session-Change-envvar-for-1-time-binary.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/0cd1dbd30f3d5c6e50bce79146e8511e0ee56153.patch";
|
||||
hash = "sha256-b8/Mrs36JPJE6l6/Dc/PN+zNV8Oq37HOFx+zMQvWPBY=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "0107-lomiri-session-Drag-lomiri-process-under-umbrella-of-wrapper-script.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/d8212b1862924eb283fd1ee7ea390a144d5ee97e.patch";
|
||||
hash = "sha256-UJzV0pYEBBrXSpYxdFoBoMRzPeIQtvtPzDW2/Ljz+uI=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "0108-lomiri-session-Dont-hide-exit-code-from-systemd.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/9ac78d736caa891a4923be8d040fe8224e335215.patch";
|
||||
hash = "sha256-yPg1K0IfaGYKqg9536i9AFCLTcAENlsJNdHjrElSeZ4=";
|
||||
})
|
||||
|
||||
# Don't require a C & C++ compiler, nothing to compile
|
||||
# Remove when https://gitlab.com/ubports/development/core/lomiri-session/-/merge_requests/14 merged & in release
|
||||
(fetchpatch {
|
||||
name = "0200-lomiri-session-Dont-require-a-compiler.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/6915a5678e09e5dbcb26d29a8e5585d032a19186.patch";
|
||||
hash = "sha256-2SWiOLDLsdTjRHaJcnZe/WKcFMFmHtpZsuj7bQCtB4A=";
|
||||
})
|
||||
|
||||
# Use GNUInstallDirs for install locations, find_program() for locations of used binaries
|
||||
# fetchpatch2 due to renames, need to resolve merge conflict manually in postPatch
|
||||
# Remove when https://gitlab.com/ubports/development/core/lomiri-session/-/merge_requests/15 merged & in release
|
||||
(fetchpatch2 {
|
||||
name = "0201-lomiri-session-Hardcode-less-locations.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri-session/-/commit/d5b93ecaf08ba776a79c69e8a9dd05d0b6181947.patch";
|
||||
excludes = [ "systemd/lomiri.service" ];
|
||||
hash = "sha256-BICb6ZwU/sUBzmM4udsOndIgw1A03I/UEG000YvMZ9Y=";
|
||||
})
|
||||
|
||||
./1001-Unset-QT_QPA_PLATFORMTHEME.patch
|
||||
];
|
||||
patches = [ ./1001-Unset-QT_QPA_PLATFORMTHEME.patch ];
|
||||
|
||||
postPatch = ''
|
||||
# Resolving merge conflict
|
||||
mv systemd/lomiri.service{,.in}
|
||||
substituteInPlace systemd/lomiri.service.in \
|
||||
--replace-fail '/usr/bin/lomiri-session' '@CMAKE_INSTALL_FULL_BINDIR@/lomiri-session' \
|
||||
--replace-fail '/usr/bin/dbus-update-activation-environment' '@DUAE_BIN@'
|
||||
|
||||
substituteInPlace lomiri-session \
|
||||
substituteInPlace lomiri-session.in \
|
||||
--replace-fail '/usr/libexec/Xwayland.lomiri' '${lib.getBin lomiri}/libexec/Xwayland.lomiri'
|
||||
|
||||
substituteInPlace systemd/CMakeLists.txt \
|
||||
--replace-fail 'pkg_get_variable(SYSTEMD_USER_DIR systemd systemduserunitdir)' 'pkg_get_variable(SYSTEMD_USER_DIR systemd systemduserunitdir DEFINE_VARIABLES prefix=''${CMAKE_INSTALL_PREFIX})'
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -173,7 +60,13 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
postInstall = ''
|
||||
patchShebangs $out/bin/lomiri-session
|
||||
wrapProgram $out/bin/lomiri-session \
|
||||
--prefix PATH : ${lib.makeBinPath [ deviceinfo inotify-tools lomiri ]}
|
||||
--prefix PATH : ${
|
||||
lib.makeBinPath [
|
||||
deviceinfo
|
||||
inotify-tools
|
||||
lomiri
|
||||
]
|
||||
}
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
|
@ -1,65 +1,72 @@
|
||||
{ lib
|
||||
, pkgs
|
||||
, libsForQt5
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
libsForQt5,
|
||||
}:
|
||||
|
||||
let
|
||||
packages = self: let
|
||||
inherit (self) callPackage;
|
||||
in {
|
||||
#### Core Apps
|
||||
lomiri = callPackage ./applications/lomiri { };
|
||||
lomiri-calculator-app = callPackage ./applications/lomiri-calculator-app { };
|
||||
lomiri-camera-app = callPackage ./applications/lomiri-camera-app { };
|
||||
lomiri-clock-app = callPackage ./applications/lomiri-clock-app { };
|
||||
lomiri-filemanager-app = callPackage ./applications/lomiri-filemanager-app { };
|
||||
lomiri-system-settings-unwrapped = callPackage ./applications/lomiri-system-settings { };
|
||||
lomiri-system-settings-security-privacy = callPackage ./applications/lomiri-system-settings/plugins/lomiri-system-settings-security-privacy.nix { };
|
||||
lomiri-system-settings = callPackage ./applications/lomiri-system-settings/wrapper.nix { };
|
||||
lomiri-terminal-app = callPackage ./applications/lomiri-terminal-app { };
|
||||
morph-browser = callPackage ./applications/morph-browser { };
|
||||
teleports = callPackage ./applications/teleports { };
|
||||
packages =
|
||||
self:
|
||||
let
|
||||
inherit (self) callPackage;
|
||||
in
|
||||
{
|
||||
#### Core Apps
|
||||
lomiri = callPackage ./applications/lomiri { };
|
||||
lomiri-calculator-app = callPackage ./applications/lomiri-calculator-app { };
|
||||
lomiri-camera-app = callPackage ./applications/lomiri-camera-app { };
|
||||
lomiri-clock-app = callPackage ./applications/lomiri-clock-app { };
|
||||
lomiri-filemanager-app = callPackage ./applications/lomiri-filemanager-app { };
|
||||
lomiri-system-settings-unwrapped = callPackage ./applications/lomiri-system-settings { };
|
||||
lomiri-system-settings = callPackage ./applications/lomiri-system-settings/wrapper.nix { };
|
||||
lomiri-terminal-app = callPackage ./applications/lomiri-terminal-app { };
|
||||
morph-browser = callPackage ./applications/morph-browser { };
|
||||
teleports = callPackage ./applications/teleports { };
|
||||
|
||||
#### Data
|
||||
lomiri-schemas = callPackage ./data/lomiri-schemas { };
|
||||
lomiri-session = callPackage ./data/lomiri-session { };
|
||||
lomiri-sounds = callPackage ./data/lomiri-sounds { };
|
||||
lomiri-wallpapers = callPackage ./data/lomiri-wallpapers { };
|
||||
suru-icon-theme = callPackage ./data/suru-icon-theme { };
|
||||
#### Data
|
||||
lomiri-schemas = callPackage ./data/lomiri-schemas { };
|
||||
lomiri-session = callPackage ./data/lomiri-session { };
|
||||
lomiri-sounds = callPackage ./data/lomiri-sounds { };
|
||||
lomiri-wallpapers = callPackage ./data/lomiri-wallpapers { };
|
||||
suru-icon-theme = callPackage ./data/suru-icon-theme { };
|
||||
|
||||
#### Development tools / libraries
|
||||
cmake-extras = callPackage ./development/cmake-extras { };
|
||||
deviceinfo = callPackage ./development/deviceinfo { };
|
||||
geonames = callPackage ./development/geonames { };
|
||||
gmenuharness = callPackage ./development/gmenuharness { };
|
||||
libusermetrics = callPackage ./development/libusermetrics { };
|
||||
lomiri-api = callPackage ./development/lomiri-api { };
|
||||
lomiri-app-launch = callPackage ./development/lomiri-app-launch { };
|
||||
qtmir = callPackage ./development/qtmir { };
|
||||
trust-store = callPackage ./development/trust-store { };
|
||||
u1db-qt = callPackage ./development/u1db-qt { };
|
||||
#### Development tools / libraries
|
||||
cmake-extras = callPackage ./development/cmake-extras { };
|
||||
deviceinfo = callPackage ./development/deviceinfo { };
|
||||
geonames = callPackage ./development/geonames { };
|
||||
gmenuharness = callPackage ./development/gmenuharness { };
|
||||
libusermetrics = callPackage ./development/libusermetrics { };
|
||||
lomiri-api = callPackage ./development/lomiri-api { };
|
||||
lomiri-app-launch = callPackage ./development/lomiri-app-launch { };
|
||||
qtmir = callPackage ./development/qtmir { };
|
||||
trust-store = callPackage ./development/trust-store { };
|
||||
u1db-qt = callPackage ./development/u1db-qt { };
|
||||
|
||||
#### QML / QML-related
|
||||
lomiri-action-api = callPackage ./qml/lomiri-action-api { };
|
||||
lomiri-notifications = callPackage ./qml/lomiri-notifications { };
|
||||
lomiri-push-qml = callPackage ./qml/lomiri-push-qml { };
|
||||
lomiri-settings-components = callPackage ./qml/lomiri-settings-components { };
|
||||
lomiri-ui-extras = callPackage ./qml/lomiri-ui-extras { };
|
||||
lomiri-ui-toolkit = callPackage ./qml/lomiri-ui-toolkit { };
|
||||
qqc2-suru-style = callPackage ./qml/qqc2-suru-style { };
|
||||
#### QML / QML-related
|
||||
lomiri-action-api = callPackage ./qml/lomiri-action-api { };
|
||||
lomiri-notifications = callPackage ./qml/lomiri-notifications { };
|
||||
lomiri-push-qml = callPackage ./qml/lomiri-push-qml { };
|
||||
lomiri-settings-components = callPackage ./qml/lomiri-settings-components { };
|
||||
lomiri-ui-extras = callPackage ./qml/lomiri-ui-extras { };
|
||||
lomiri-ui-toolkit = callPackage ./qml/lomiri-ui-toolkit { };
|
||||
qqc2-suru-style = callPackage ./qml/qqc2-suru-style { };
|
||||
|
||||
#### Services
|
||||
biometryd = callPackage ./services/biometryd { };
|
||||
content-hub = callPackage ./services/content-hub { };
|
||||
hfd-service = callPackage ./services/hfd-service { };
|
||||
history-service = callPackage ./services/history-service { };
|
||||
lomiri-download-manager = callPackage ./services/lomiri-download-manager { };
|
||||
lomiri-indicator-network = callPackage ./services/lomiri-indicator-network { };
|
||||
lomiri-polkit-agent = callPackage ./services/lomiri-polkit-agent { };
|
||||
lomiri-thumbnailer = callPackage ./services/lomiri-thumbnailer { };
|
||||
lomiri-url-dispatcher = callPackage ./services/lomiri-url-dispatcher { };
|
||||
mediascanner2 = callPackage ./services/mediascanner2 { };
|
||||
telephony-service = callPackage ./services/telephony-service { };
|
||||
};
|
||||
#### Services
|
||||
biometryd = callPackage ./services/biometryd { };
|
||||
content-hub = callPackage ./services/content-hub { };
|
||||
hfd-service = callPackage ./services/hfd-service { };
|
||||
history-service = callPackage ./services/history-service { };
|
||||
lomiri-download-manager = callPackage ./services/lomiri-download-manager { };
|
||||
lomiri-indicator-network = callPackage ./services/lomiri-indicator-network { };
|
||||
lomiri-polkit-agent = callPackage ./services/lomiri-polkit-agent { };
|
||||
lomiri-thumbnailer = callPackage ./services/lomiri-thumbnailer { };
|
||||
lomiri-url-dispatcher = callPackage ./services/lomiri-url-dispatcher { };
|
||||
mediascanner2 = callPackage ./services/mediascanner2 { };
|
||||
telephony-service = callPackage ./services/telephony-service { };
|
||||
};
|
||||
in
|
||||
lib.makeScope libsForQt5.newScope packages
|
||||
lib.makeScope libsForQt5.newScope packages
|
||||
// lib.optionalAttrs config.allowAliases {
|
||||
lomiri-system-settings-security-privacy = lib.warn "`lomiri-system-settings-security-privacy` upstream was merged into `lomiri-system-settings`. Please use `pkgs.lomiri.lomiri-system-settings-unwrapped` if you need to directly access the plugins that belonged to this project." pkgs.lomiri.lomiri-system-settings-unwrapped; # Added on 2024-08-08
|
||||
}
|
||||
|
@ -136,11 +136,16 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
# Exclude tests
|
||||
"-E" (lib.strings.escapeShellArg "(${lib.concatStringsSep "|" [
|
||||
# Flaky, randomly failing to launch properly & stuck until test timeout
|
||||
# https://gitlab.com/ubports/development/core/lomiri-telephony-service/-/issues/70
|
||||
"^HandlerTest"
|
||||
"^OfonoAccountEntryTest"
|
||||
"^TelepathyHelperSetupTest"
|
||||
"^AuthHandlerTest"
|
||||
"^ChatManagerTest"
|
||||
"^AccountEntryTest"
|
||||
"^AccountEntryFactoryTest"
|
||||
"^PresenceRequestTest"
|
||||
"^CallEntryTest"
|
||||
]})")
|
||||
]))
|
||||
];
|
||||
|
4
pkgs/development/interpreters/spidermonkey/128.nix
Normal file
4
pkgs/development/interpreters/spidermonkey/128.nix
Normal file
@ -0,0 +1,4 @@
|
||||
import ./common.nix {
|
||||
version = "128.1.0";
|
||||
hash = "sha512-gFWn+DrPDKthJLpYCa/xwILoGg0w/zGOxxn4/T9K+apg4glMGr1smBGT11EHWpVpNwF24g5Q88GVn+J6FVETiA==";
|
||||
}
|
@ -0,0 +1,37 @@
|
||||
From a26bb162d9403138d64b84e8fa4f0471084c45b2 Mon Sep 17 00:00:00 2001
|
||||
From: "Kirill A. Korinsky" <kirill@korins.ky>
|
||||
Date: Fri, 8 Jul 2022 21:21:25 +0200
|
||||
Subject: [PATCH] Allow system's nspr and icu on bootstrapped sysroot
|
||||
|
||||
This patch partially reverts https://github.com/mozilla/gecko-dev/commit/9aa3587bbf0416dd2eb5b614f7b301c71c64286b
|
||||
---
|
||||
build/moz.configure/nspr.configure | 2 +-
|
||||
js/moz.configure | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/build/moz.configure/nspr.configure b/build/moz.configure/nspr.configure
|
||||
index bc6d62982b87a..8346f08b86923 100644
|
||||
--- a/build/moz.configure/nspr.configure
|
||||
+++ b/build/moz.configure/nspr.configure
|
||||
@@ -19,7 +19,7 @@ def enable_nspr_build(enable):
|
||||
return enable
|
||||
|
||||
|
||||
-system_lib_option(
|
||||
+option(
|
||||
"--with-system-nspr",
|
||||
help="Use system NSPR",
|
||||
when=use_pkg_config,
|
||||
diff --git a/js/moz.configure b/js/moz.configure
|
||||
index 8fb51095876fa..7629b29d33c8f 100644
|
||||
--- a/js/moz.configure
|
||||
+++ b/js/moz.configure
|
||||
@@ -1296,7 +1296,7 @@ set_define(
|
||||
|
||||
# ECMAScript Internationalization API Support (uses ICU)
|
||||
# ======================================================
|
||||
-system_lib_option(
|
||||
+option(
|
||||
"--with-system-icu",
|
||||
help="Use system ICU",
|
||||
when=use_pkg_config,
|
@ -0,0 +1,22 @@
|
||||
From 9d3f6e9ff5e66af90a5d187d902f7893fb91c24b Mon Sep 17 00:00:00 2001
|
||||
From: "Kirill A. Korinsky" <kirill@korins.ky>
|
||||
Date: Fri, 1 Jul 2022 12:23:37 +0200
|
||||
Subject: [PATCH] Always check for pkg-config
|
||||
|
||||
---
|
||||
build/moz.configure/pkg.configure | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletions(-)
|
||||
|
||||
diff --git a/build/moz.configure/pkg.configure b/build/moz.configure/pkg.configure
|
||||
index 418331b874f47..09cc40eda03fa 100644
|
||||
--- a/build/moz.configure/pkg.configure
|
||||
+++ b/build/moz.configure/pkg.configure
|
||||
@@ -12,7 +12,7 @@ def pkg_config(prefixes):
|
||||
|
||||
@depends(compile_environment, target)
|
||||
def use_pkg_config(compile_environment, target):
|
||||
- return compile_environment and target.os not in ("WINNT", "OSX", "Android")
|
||||
+ return compile_environment
|
||||
|
||||
|
||||
pkg_config = check_prog(
|
@ -15,6 +15,8 @@
|
||||
, python3
|
||||
, python39
|
||||
, python311
|
||||
, rust-cbindgen
|
||||
, rustPlatform
|
||||
, rustc
|
||||
, which
|
||||
, zip
|
||||
@ -59,10 +61,14 @@ stdenv.mkDerivation (finalAttrs: rec {
|
||||
# - https://hg.mozilla.org/mozilla-central/rev/ec48f15d085c
|
||||
# - https://hg.mozilla.org/mozilla-central/rev/6803dda74d33
|
||||
./add-riscv64-support.patch
|
||||
] ++ lib.optionals (lib.versionAtLeast version "102") [
|
||||
] ++ lib.optionals (lib.versionAtLeast version "102" && lib.versionOlder version "128") [
|
||||
# use pkg-config at all systems
|
||||
./always-check-for-pkg-config.patch
|
||||
./allow-system-s-nspr-and-icu-on-bootstrapped-sysroot.patch
|
||||
] ++ lib.optionals (lib.versionAtLeast version "128") [
|
||||
# rebased version of the above 2 patches
|
||||
./always-check-for-pkg-config-128.patch
|
||||
./allow-system-s-nspr-and-icu-on-bootstrapped-sysroot-128.patch
|
||||
] ++ lib.optionals (lib.versionAtLeast version "91" && stdenv.hostPlatform.system == "i686-linux") [
|
||||
# Fixes i686 build, https://bugzilla.mozilla.org/show_bug.cgi?id=1729459
|
||||
./fix-float-i686.patch
|
||||
@ -94,6 +100,9 @@ stdenv.mkDerivation (finalAttrs: rec {
|
||||
rustc.llvmPackages.llvm # for llvm-objdump
|
||||
which
|
||||
zip
|
||||
] ++ lib.optionals (lib.versionAtLeast version "128") [
|
||||
rust-cbindgen
|
||||
rustPlatform.bindgenHook
|
||||
] ++ lib.optionals (lib.versionOlder version "91") [
|
||||
autoconf213
|
||||
yasm # to buid icu? seems weird
|
||||
@ -161,7 +170,9 @@ stdenv.mkDerivation (finalAttrs: rec {
|
||||
"class JS_PUBLIC_API SharedArrayRawBufferRefs {"
|
||||
'';
|
||||
|
||||
preConfigure = lib.optionalString (lib.versionOlder version "91") ''
|
||||
preConfigure = lib.optionalString (lib.versionAtLeast version "128") ''
|
||||
export MOZBUILD_STATE_PATH=$TMPDIR/mozbuild
|
||||
'' + lib.optionalString (lib.versionOlder version "91") ''
|
||||
export CXXFLAGS="-fpermissive"
|
||||
'' + ''
|
||||
export LIBXUL_DIST=$out
|
||||
|
@ -19,13 +19,13 @@
|
||||
}@inputs:
|
||||
(if cudaSupport then cudaPackages.backendStdenv else inputs.stdenv).mkDerivation rec {
|
||||
pname = "dlib";
|
||||
version = "19.24.4";
|
||||
version = "19.24.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "davisking";
|
||||
repo = "dlib";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-1A/9u+ThtUtmmSwnFSn8S65Yavucl2X+o3bNYgew0Oc=";
|
||||
sha256 = "sha256-ge35ZytgEbUVG2IWEPp6o9qhQ6z8UnuBR1k7sMRr4j0=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -250,14 +250,14 @@ buildLuarocksPackage {
|
||||
commons-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
|
||||
buildLuarocksPackage {
|
||||
pname = "commons.nvim";
|
||||
version = "18.0.0-1";
|
||||
version = "19.0.0-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/commons.nvim-18.0.0-1.rockspec";
|
||||
sha256 = "073cmh0a1kqzw71ckir8rk6nrhi14rc96vmxzhl4zbfyr3ji05r7";
|
||||
url = "mirror://luarocks/commons.nvim-19.0.0-1.rockspec";
|
||||
sha256 = "0ispimmwx2zh8jpdhdqk0r837y6959l9r2y8iri6l67dnfy7j4ky";
|
||||
}).outPath;
|
||||
src = fetchzip {
|
||||
url = "https://github.com/linrongbin16/commons.nvim/archive/75407685b543cdb2263e92366bc4f3c828f4ad69.zip";
|
||||
sha256 = "0zm0kjch5rzdkv6faksw16lmhxkil2sdhfl7xvdyc0z830d1k2km";
|
||||
url = "https://github.com/linrongbin16/commons.nvim/archive/ab59d5ab57d02bcb2b29234637c79ff74d7693b6.zip";
|
||||
sha256 = "0n7dpwhs1f6rmxvjhqj1vs29apmmcbdwcifjjxi13vdxmx1zn2dq";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
@ -363,22 +363,22 @@ buildLuarocksPackage {
|
||||
};
|
||||
}) {};
|
||||
|
||||
cyan = callPackage({ argparse, buildLuarocksPackage, fetchFromGitHub, fetchurl, luafilesystem, tl }:
|
||||
cyan = callPackage({ argparse, buildLuarocksPackage, fetchFromGitHub, fetchurl, luafilesystem, luasystem, tl }:
|
||||
buildLuarocksPackage {
|
||||
pname = "cyan";
|
||||
version = "0.3.0-1";
|
||||
version = "0.3.1-2";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/cyan-0.3.0-1.rockspec";
|
||||
sha256 = "1bs5gwgdhibj2gm8y3810b0hh6s9n00fgij8nnjag9kpqrd80vsj";
|
||||
url = "mirror://luarocks/cyan-0.3.1-2.rockspec";
|
||||
sha256 = "1fsz3a05blm45qv690w51fa7scqc7l7f3fcj8s8isax89gjbqvgy";
|
||||
}).outPath;
|
||||
src = fetchFromGitHub {
|
||||
owner = "teal-language";
|
||||
repo = "cyan";
|
||||
rev = "992e573ca58e55ae33c420ea0f620b2daf5fa9c0";
|
||||
hash = "sha256-vuRB+0gmwUmFnt+A6m6aa0c54dPZSY4EohHjTcRQRZs=";
|
||||
rev = "v0.3.1";
|
||||
hash = "sha256-cqQoWR4lIvYAWp5o9jivpjiILO1ECFhCyXG1+vc2yIM=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ argparse luafilesystem tl ];
|
||||
propagatedBuildInputs = [ argparse luafilesystem luasystem tl ];
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/teal-language/cyan";
|
||||
@ -422,7 +422,7 @@ buildLuarocksPackage {
|
||||
}).outPath;
|
||||
src = fetchurl {
|
||||
url = "http://dkolf.de/dkjson-lua/dkjson-2.8.tar.gz";
|
||||
hash = "sha256-JOjNO+uRwchh63uz+8m9QYu/+a1KpdBHGBYlgjajFTI=";
|
||||
sha256 = "0js9z5ja3ws1i9gj2m673459rwm0gadxbf86mcif7d8286h61yh9";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1" || luaAtLeast "5.5";
|
||||
@ -434,23 +434,25 @@ buildLuarocksPackage {
|
||||
};
|
||||
}) {};
|
||||
|
||||
fennel = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
|
||||
fennel = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
|
||||
buildLuarocksPackage {
|
||||
pname = "fennel";
|
||||
version = "1.4.2-1";
|
||||
version = "1.5.0-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/fennel-1.4.2-1.rockspec";
|
||||
sha256 = "17ygacyqdvplyz3046ay3xr4z83sdjrxkcl21mklpxx29j8p0bv1";
|
||||
url = "mirror://luarocks/fennel-1.5.0-1.rockspec";
|
||||
sha256 = "0h3a8pinazcp3r3pwkm5inh0aynq9iizljhpk6sj8zhhp0s0bi4g";
|
||||
}).outPath;
|
||||
src = fetchurl {
|
||||
url = "https://fennel-lang.org/downloads/fennel-1.4.2.tar.gz";
|
||||
sha256 = "1inhy8rrywx8svdzhy1yaaa0cfyrmi21ckj7h8xmd7yqaw66ma86";
|
||||
src = fetchFromGitHub {
|
||||
owner = "bakpakin";
|
||||
repo = "Fennel";
|
||||
rev = "1.5.0";
|
||||
hash = "sha256-4jF22lpfapxQvwH/vQh/ePiEfOc8pP2b7roOzPXZRTQ=";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
|
||||
meta = {
|
||||
homepage = "https://fennel-lang.org/";
|
||||
homepage = "https://fennel-lang.org";
|
||||
description = "A lisp that compiles to Lua";
|
||||
maintainers = with lib.maintainers; [ misterio77 ];
|
||||
license.fullName = "MIT";
|
||||
@ -553,14 +555,14 @@ buildLuarocksPackage {
|
||||
fzf-lua = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
|
||||
buildLuarocksPackage {
|
||||
pname = "fzf-lua";
|
||||
version = "0.0.1349-1";
|
||||
version = "0.0.1415-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/fzf-lua-0.0.1349-1.rockspec";
|
||||
sha256 = "0v9frrq896d3k3xvz0ch51r2chrw4kalp5d2jb365wpnk4zda1lj";
|
||||
url = "mirror://luarocks/fzf-lua-0.0.1415-1.rockspec";
|
||||
sha256 = "039hy10ml25z2kvm5xiayvswx42rj4di119vgl2ncrfvlr5lnxdf";
|
||||
}).outPath;
|
||||
src = fetchzip {
|
||||
url = "https://github.com/ibhagwan/fzf-lua/archive/1ec6eeda11c3a3dcd544e1c61ad4b8c9b49903c4.zip";
|
||||
sha256 = "0iw3khl164qvypm7v591gyncjfpmwx6wy45a80zz922iiifgjfgd";
|
||||
url = "https://github.com/ibhagwan/fzf-lua/archive/e9413dc2b6e8ab7f62385c972df1dceba483492d.zip";
|
||||
sha256 = "09bh0rjx9g96vz0zfnpi4ych64qawrj1rgrpznkjn1cph8qayj35";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
@ -604,8 +606,8 @@ buildLuarocksPackage {
|
||||
src = fetchFromGitHub {
|
||||
owner = "lewis6991";
|
||||
repo = "gitsigns.nvim";
|
||||
rev = "17e8fd66182c9ad79dc129451ad015af3d27529c";
|
||||
hash = "sha256-Mq3NC/DpEEOZlgKctjQqa1RMJHVSAy6jfL4IitObgzs=";
|
||||
rev = "562dc47189ad3c8696dbf460d38603a74d544849";
|
||||
hash = "sha256-NNoqXn24Fzkopx1/Xwcv41EpqHwpcMPrQWLfXcPtha4=";
|
||||
};
|
||||
|
||||
disabled = lua.luaversion != "5.1";
|
||||
@ -634,7 +636,7 @@ buildLuarocksPackage {
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/mrcjkb/haskell-tools.nvim";
|
||||
description = "Supercharge your Haskell experience in neovim!";
|
||||
description = " 🦥 Supercharge your Haskell experience in neovim!";
|
||||
maintainers = with lib.maintainers; [ mrcjkb ];
|
||||
license.fullName = "GPL-2.0";
|
||||
};
|
||||
@ -1348,16 +1350,16 @@ buildLuarocksPackage {
|
||||
lua-resty-openssl = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl }:
|
||||
buildLuarocksPackage {
|
||||
pname = "lua-resty-openssl";
|
||||
version = "1.4.0-1";
|
||||
version = "1.5.1-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/lua-resty-openssl-1.4.0-1.rockspec";
|
||||
sha256 = "027fqpbhq0ygh9z7za2hv7wm6ylll8km4czvjfclscm4p55bj10q";
|
||||
url = "mirror://luarocks/lua-resty-openssl-1.5.1-1.rockspec";
|
||||
sha256 = "1xqwsh3r9dmasc46c3dwili7g9p427yh7xdvcpiz7pr25y35saps";
|
||||
}).outPath;
|
||||
src = fetchFromGitHub {
|
||||
owner = "fffonion";
|
||||
repo = "lua-resty-openssl";
|
||||
rev = "1.4.0";
|
||||
hash = "sha256-gmsKpt42hgjqhzibYXbdWyj2MqOyC8FlhMY7xiXdtFQ=";
|
||||
rev = "1.5.1";
|
||||
hash = "sha256-wkc/9t2jXM2yPEd9ozAMcNe3WsS3MbN01OQ/9sI37Eg=";
|
||||
};
|
||||
|
||||
|
||||
@ -2039,21 +2041,21 @@ buildLuarocksPackage {
|
||||
luarocks-build-rust-mlua = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl }:
|
||||
buildLuarocksPackage {
|
||||
pname = "luarocks-build-rust-mlua";
|
||||
version = "0.2.0-1";
|
||||
version = "0.2.2-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/luarocks-build-rust-mlua-0.2.0-1.rockspec";
|
||||
sha256 = "0mpxj2wpzgqffic1j6agisaawbfhh16gis29x6y60kyjq446mv0z";
|
||||
url = "mirror://luarocks/luarocks-build-rust-mlua-0.2.2-1.rockspec";
|
||||
sha256 = "0y9ms0cf0jp4b26m6qbxsj4s4ng4z112qq4wc79q7xm7zw9dha4p";
|
||||
}).outPath;
|
||||
src = fetchFromGitHub {
|
||||
owner = "khvzak";
|
||||
owner = "mlua-rs";
|
||||
repo = "luarocks-build-rust-mlua";
|
||||
rev = "0.2.0";
|
||||
hash = "sha256-f6trXv2/gzbitLXwHHrZnowEA/V5Yjb3Q9YlYr+9NBw=";
|
||||
rev = "0.2.2";
|
||||
hash = "sha256-vyFX5LFGrC+RXjmwLgBdmVawOCNatJva53MFvKa7ozM=";
|
||||
};
|
||||
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/khvzak/luarocks-build-rust-mlua";
|
||||
homepage = "https://github.com/mlua-rs/luarocks-build-rust-mlua";
|
||||
description = "A LuaRocks build backend for Lua modules written in Rust using mlua";
|
||||
maintainers = with lib.maintainers; [ mrcjkb ];
|
||||
license.fullName = "MIT";
|
||||
@ -2066,11 +2068,11 @@ buildLuarocksPackage {
|
||||
version = "4.1.0-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/luarocks-build-treesitter-parser-4.1.0-1.rockspec";
|
||||
sha256 = "0r3r8dvjn9zvpj06932ijqwypq636zv2vpq5pcj83xfvvi3fd2rw";
|
||||
sha256 = "sha256-PIvmRtzb9YEkuwXfLfY3w+DrOZZRjGSAvPsnK3dDeWQ=";
|
||||
}).outPath;
|
||||
src = fetchzip {
|
||||
url = "https://github.com/nvim-neorocks/luarocks-build-treesitter-parser/archive/v4.1.0.zip";
|
||||
sha256 = "1838q30n2xjb8cmhlzxax0kzvxhsdrskkk4715kkca8zk6i3zm98";
|
||||
sha256 = "sha256-KNU/opkfKTZnCYfMOXVuGvb9J+iqfworQ0t2YcHAaKA=";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
@ -2210,16 +2212,16 @@ buildLuarocksPackage {
|
||||
luasystem = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
|
||||
buildLuarocksPackage {
|
||||
pname = "luasystem";
|
||||
version = "0.4.0-1";
|
||||
version = "0.4.2-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/luasystem-0.4.0-1.rockspec";
|
||||
sha256 = "0brvqqxfz1w4l4nzaxds1d17flq7rx6lw8pjb565fyb2jhg39qc9";
|
||||
url = "mirror://luarocks/luasystem-0.4.2-1.rockspec";
|
||||
sha256 = "15z4n7pbggg1wy397k9mx0jls31snvw0dgr9yklwi4sayfcva3ip";
|
||||
}).outPath;
|
||||
src = fetchFromGitHub {
|
||||
owner = "lunarmodules";
|
||||
repo = "luasystem";
|
||||
rev = "v0.4.0";
|
||||
hash = "sha256-I1dG6ccOQAwpe18DjiYijKjerk+yDRic6fEERSte2Ks=";
|
||||
rev = "v0.4.2";
|
||||
hash = "sha256-xYfHK/OtOFtGHAZTPDp/BTywAcCqJIx8+zt3/HPon0w=";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
@ -2358,8 +2360,8 @@ buildLuarocksPackage {
|
||||
src = fetchFromGitHub {
|
||||
owner = "rktjmp";
|
||||
repo = "lush.nvim";
|
||||
rev = "7c0e27f50901481fe83b974493c4ea67a4296aeb";
|
||||
hash = "sha256-GVGIZPBrunaWexwdnkbc0LxM3xMHslrwON2FunN3TDE=";
|
||||
rev = "6a254139d077ad53be7e4f3602c8da0c84447fd9";
|
||||
hash = "sha256-gutr36WJRktDxmRjNo0v5tn030nMsAe8vRWx/vKFa2o=";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1" || luaAtLeast "5.4";
|
||||
@ -2404,7 +2406,7 @@ buildLuarocksPackage {
|
||||
}).outPath;
|
||||
src = fetchurl {
|
||||
url = "https://github.com/luvit/luv/releases/download/1.48.0-2/luv-1.48.0-2.tar.gz";
|
||||
sha256 = "2c3a1ddfebb4f6550293a40ee789f7122e97647eede51511f57203de48c03b7a";
|
||||
sha256 = "0yivq14dw0vjyl8ibrgdgrj9fbhjyy4yf3m4jc15bxmlxggisfic";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
@ -2625,14 +2627,14 @@ buildLuarocksPackage {
|
||||
neotest = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, nvim-nio, plenary-nvim }:
|
||||
buildLuarocksPackage {
|
||||
pname = "neotest";
|
||||
version = "5.3.3-1";
|
||||
version = "5.4.0-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/neotest-5.3.3-1.rockspec";
|
||||
sha256 = "0bji9bfh129l9find3asakr97pxq76gdjp96gyibv02m4j0hgqjz";
|
||||
url = "mirror://luarocks/neotest-5.4.0-1.rockspec";
|
||||
sha256 = "0bk5z3p2v6m2nwxh82xk0xsqb23xa9i13vfgnd9h9qy3r42jqmmj";
|
||||
}).outPath;
|
||||
src = fetchzip {
|
||||
url = "https://github.com/nvim-neotest/neotest/archive/f30bab1faef13d47f3905e065215c96a42d075ad.zip";
|
||||
sha256 = "04jsfxq9xs751wspqbi850bwykyzf0d4fw4ar5gqwij34zja19h7";
|
||||
url = "https://github.com/nvim-neotest/neotest/archive/32ff2ac21135a372a42b38ae131e531e64833bd3.zip";
|
||||
sha256 = "144wzzadhrg48fkihffk6jf9c0ij8dg9gng6mcxq5z8mdcvz0124";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
@ -2701,8 +2703,8 @@ buildLuarocksPackage {
|
||||
src = fetchFromGitHub {
|
||||
owner = "hrsh7th";
|
||||
repo = "nvim-cmp";
|
||||
rev = "a110e12d0b58eefcf5b771f533fc2cf3050680ac";
|
||||
hash = "sha256-7tEfEjWH5pneI10jLYpenoysRQPa2zPGLTNcbMX3x2I=";
|
||||
rev = "ae644feb7b67bf1ce4260c231d1d4300b19c6f30";
|
||||
hash = "sha256-NcodgUp8obTsjgc+5j2dKr0f3FelYikQTJngfZXRZzo=";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1" || luaAtLeast "5.4";
|
||||
@ -2717,14 +2719,14 @@ buildLuarocksPackage {
|
||||
nvim-nio = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
|
||||
buildLuarocksPackage {
|
||||
pname = "nvim-nio";
|
||||
version = "1.9.4-1";
|
||||
version = "1.10.0-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/nvim-nio-1.9.4-1.rockspec";
|
||||
sha256 = "05xccwawl82xjwxmpihb6v4l7sp0msc6hhgs8mgzbsclznf78052";
|
||||
url = "mirror://luarocks/nvim-nio-1.10.0-1.rockspec";
|
||||
sha256 = "1dkspn96vvk38l809c7bl2gnjxkj8yj4aj6s5859pz4pxvxzs8p6";
|
||||
}).outPath;
|
||||
src = fetchzip {
|
||||
url = "https://github.com/nvim-neotest/nvim-nio/archive/7969e0a8ffabdf210edd7978ec954a47a737bbcc.zip";
|
||||
sha256 = "0ip31k5rnmv47rbka1v5mhljmff7friyj4gcqzz4hqj1yccfl1l0";
|
||||
url = "https://github.com/nvim-neotest/nvim-nio/archive/a428f309119086dc78dd4b19306d2d67be884eee.zip";
|
||||
sha256 = "0n40q6znpy1xzywd1hwyivx7y1n0i0fcp3m7jp0vgipm6qssda4b";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
@ -2880,14 +2882,14 @@ buildLuarocksPackage {
|
||||
rocks-config-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, rocks-nvim }:
|
||||
buildLuarocksPackage {
|
||||
pname = "rocks-config.nvim";
|
||||
version = "2.0.0-1";
|
||||
version = "2.2.0-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/rocks-config.nvim-2.0.0-1.rockspec";
|
||||
sha256 = "0vkzhz6szbm6cy4301c103kck36zgk8ig2ssipclca392cq36716";
|
||||
url = "mirror://luarocks/rocks-config.nvim-2.2.0-1.rockspec";
|
||||
sha256 = "129zvspn6ln9yzsxfcgai8vyz7jysxvdf08yy19zdqj0q7swh1iq";
|
||||
}).outPath;
|
||||
src = fetchzip {
|
||||
url = "https://github.com/nvim-neorocks/rocks-config.nvim/archive/v2.0.0.zip";
|
||||
sha256 = "1gzpcvb79s8a0mxq331fhwgik4bkaj254avri50wm1y5qxb4n3nx";
|
||||
url = "https://github.com/nvim-neorocks/rocks-config.nvim/archive/v2.2.0.zip";
|
||||
sha256 = "0vchi7274j4yhs0mv1j2na8k1240xj42kz6787s0vf05xcnywbh6";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
@ -2904,14 +2906,14 @@ buildLuarocksPackage {
|
||||
rocks-dev-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, nvim-nio, rocks-nvim, rtp-nvim }:
|
||||
buildLuarocksPackage {
|
||||
pname = "rocks-dev.nvim";
|
||||
version = "1.2.3-1";
|
||||
version = "1.3.0-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/rocks-dev.nvim-1.2.3-1.rockspec";
|
||||
sha256 = "0xhl0rmklhhlcsn268brj7hhl5lk2djhkllzna2rnjaq80cwsh5j";
|
||||
url = "mirror://luarocks/rocks-dev.nvim-1.3.0-1.rockspec";
|
||||
sha256 = "0s8k4kvd7j72ja6qwwxdsqjffkja8pdp95vml5wy9mqwxgvcb5c6";
|
||||
}).outPath;
|
||||
src = fetchzip {
|
||||
url = "https://github.com/nvim-neorocks/rocks-dev.nvim/archive/v1.2.3.zip";
|
||||
sha256 = "17sv49wl366jxriy0cxy3b1z8vans58jmjg4ap5dc9fmg6687jgs";
|
||||
url = "https://github.com/nvim-neorocks/rocks-dev.nvim/archive/v1.3.0.zip";
|
||||
sha256 = "1fhd4mjbwizszxq3wrcdsczljgssgswqi4ibi8kdmnd9biyvbx65";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
@ -2928,14 +2930,14 @@ buildLuarocksPackage {
|
||||
rocks-git-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, nvim-nio, rocks-nvim }:
|
||||
buildLuarocksPackage {
|
||||
pname = "rocks-git.nvim";
|
||||
version = "1.5.1-1";
|
||||
version = "2.0.1-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/rocks-git.nvim-1.5.1-1.rockspec";
|
||||
sha256 = "0if5vaxggf4ryik5szm1p5dv324sybm9h3jbpl78ydd1kf0702m6";
|
||||
url = "mirror://luarocks/rocks-git.nvim-2.0.1-1.rockspec";
|
||||
sha256 = "0r341vg7x49lnmx77smab5hpjpzwih7jmchfh24xhnv6319d70yx";
|
||||
}).outPath;
|
||||
src = fetchzip {
|
||||
url = "https://github.com/nvim-neorocks/rocks-git.nvim/archive/v1.5.1.zip";
|
||||
sha256 = "05g31js2k2jjrz0a633vdfz21ji1a2by79yrfhi6wdmp167a5w99";
|
||||
url = "https://github.com/nvim-neorocks/rocks-git.nvim/archive/v2.0.1.zip";
|
||||
sha256 = "121x32915sr8il95jjpza2awvh4jknhgb99c091sb4vmdkg3pj24";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
@ -2952,14 +2954,14 @@ buildLuarocksPackage {
|
||||
rocks-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, fidget-nvim, fzy, luaOlder, luarocks, nvim-nio, rtp-nvim, toml-edit }:
|
||||
buildLuarocksPackage {
|
||||
pname = "rocks.nvim";
|
||||
version = "2.31.3-1";
|
||||
version = "2.36.1-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/rocks.nvim-2.31.3-1.rockspec";
|
||||
sha256 = "1rrsshsi6c5njcyaibz1mdvhyjl4kf2973kwahyk84j52fmwzwjv";
|
||||
url = "mirror://luarocks/rocks.nvim-2.36.1-1.rockspec";
|
||||
sha256 = "165kij3rk0inh9g3d3jpczhji9bjc7biz5r30xgw9q5xnafy4q38";
|
||||
}).outPath;
|
||||
src = fetchzip {
|
||||
url = "https://github.com/nvim-neorocks/rocks.nvim/archive/v2.31.3.zip";
|
||||
sha256 = "07500g0jvicbxqmsqdb3dcjpmvd6wgwk8g34649f94nhqk3lglx5";
|
||||
url = "https://github.com/nvim-neorocks/rocks.nvim/archive/v2.36.1.zip";
|
||||
sha256 = "0zsrvngwwj9qxsxfbfgfin73aacs763sygixgiibq8rrl6gannxs";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
@ -2999,21 +3001,21 @@ buildLuarocksPackage {
|
||||
rustaceanvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
|
||||
buildLuarocksPackage {
|
||||
pname = "rustaceanvim";
|
||||
version = "5.0.0-1";
|
||||
version = "5.2.0-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/rustaceanvim-5.0.0-1.rockspec";
|
||||
sha256 = "0rabhsya9qx4lybd47b6s95yh6y7nnngpfpqxf2h8pf492790yxc";
|
||||
url = "mirror://luarocks/rustaceanvim-5.2.0-1.rockspec";
|
||||
sha256 = "15pz9m5livp0n2bhal8wmg8hbhvyb6195ayzjcm3xsivplc4drns";
|
||||
}).outPath;
|
||||
src = fetchzip {
|
||||
url = "https://github.com/mrcjkb/rustaceanvim/archive/5.0.0.zip";
|
||||
sha256 = "07a0r6lhwxsk3asrnwmj39j51kqaz33qi3kv9788nms3mpvplxc1";
|
||||
url = "https://github.com/mrcjkb/rustaceanvim/archive/5.2.0.zip";
|
||||
sha256 = "1mswi4fy0ggikl3cpwhx1lar5pb8zcfp9az8zb9cn00cmzf749s4";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/mrcjkb/rustaceanvim";
|
||||
description = "Supercharge your Rust experience in Neovim! A heavily modified fork of rust-tools.nvim";
|
||||
description = "🦀 Supercharge your Rust experience in Neovim! A heavily modified fork of rust-tools.nvim";
|
||||
maintainers = with lib.maintainers; [ mrcjkb ];
|
||||
license.fullName = "GPL-2.0";
|
||||
};
|
||||
@ -3218,8 +3220,8 @@ buildLuarocksPackage {
|
||||
src = fetchFromGitHub {
|
||||
owner = "nvim-telescope";
|
||||
repo = "telescope.nvim";
|
||||
rev = "f2bfde705ac752c52544d5cfa8b0aee0a766c1ed";
|
||||
hash = "sha256-0fS3RYO/9gwmdK2H9Y/4Z/P++4aEHTHJqR2mH0vWAFY=";
|
||||
rev = "3b1600d0fd5172ad9fae00987362ca0ef3d8895d";
|
||||
hash = "sha256-F5TGzfPSDQY+AOzaDXStswHjkGQvnLeTWW5/xdBalpo=";
|
||||
};
|
||||
|
||||
disabled = lua.luaversion != "5.1";
|
||||
@ -3286,14 +3288,14 @@ buildLuarocksPackage {
|
||||
toml-edit = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, luarocks-build-rust-mlua }:
|
||||
buildLuarocksPackage {
|
||||
pname = "toml-edit";
|
||||
version = "0.3.6-1";
|
||||
version = "0.4.1-1";
|
||||
knownRockspec = (fetchurl {
|
||||
url = "mirror://luarocks/toml-edit-0.3.6-1.rockspec";
|
||||
sha256 = "18fw256vzvfavfwrnzm507k4h3x2lx9l93ghr1ggsi4mhsnjki46";
|
||||
url = "mirror://luarocks/toml-edit-0.4.1-1.rockspec";
|
||||
sha256 = "180zdqrzffr7jr9xls895gj5hrx6pfs98rlxwzg71382jy1n79qi";
|
||||
}).outPath;
|
||||
src = fetchzip {
|
||||
url = "https://github.com/vhyrro/toml-edit.lua/archive/v0.3.6.zip";
|
||||
sha256 = "19v6axraj2n22lmilfr4x9nr40kcjb6wnpsfhf1mh2zy9nsd6ji6";
|
||||
url = "https://github.com/vhyrro/toml-edit.lua/archive/v0.4.1.zip";
|
||||
sha256 = "1322p490p6yza3lczfzmwf5nkfj4ra6m9g6hvr2qgay405wnpgy7";
|
||||
};
|
||||
|
||||
disabled = luaOlder "5.1";
|
||||
|
@ -143,15 +143,6 @@ in
|
||||
'';
|
||||
});
|
||||
|
||||
fennel = prev.fennel.overrideAttrs(oa: {
|
||||
nativeBuildInputs = oa.nativeBuildInputs ++ [
|
||||
installShellFiles
|
||||
];
|
||||
postInstall = ''
|
||||
installManPage fennel.1
|
||||
'';
|
||||
});
|
||||
|
||||
# Until https://github.com/swarn/fzy-lua/pull/8 is merged,
|
||||
# we have to invoke busted manually
|
||||
fzy = prev.fzy.overrideAttrs(oa: {
|
||||
@ -511,6 +502,9 @@ in
|
||||
|
||||
propagatedBuildInputs = oa.propagatedBuildInputs ++ [ cargo rustPlatform.cargoSetupHook ];
|
||||
|
||||
# ld: symbol(s) not found for architecture arm64
|
||||
# clang-16: error: linker command failed with exit code 1 (use -v to see invocation)
|
||||
meta.broken = stdenv.isDarwin;
|
||||
});
|
||||
|
||||
lush-nvim = prev.lush-nvim.overrideAttrs (drv: {
|
||||
@ -810,7 +804,7 @@ in
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
src = oa.src;
|
||||
hash = "sha256-2P+mokkjdj2PccQG/kAGnIoUPVnK2FqNfYpHPhsp8kw=";
|
||||
hash = "sha256-PLihirhJshcUQI3L1eTcnQiZvocDl29eQHhdBwJQRU8=";
|
||||
};
|
||||
|
||||
NIX_LDFLAGS = lib.optionalString stdenv.isDarwin
|
||||
|
@ -13,7 +13,7 @@
|
||||
pytest-aiohttp,
|
||||
pytest-asyncio,
|
||||
pytestCheckHook,
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
pythonOlder,
|
||||
yarl,
|
||||
}:
|
||||
@ -50,7 +50,7 @@ buildPythonPackage rec {
|
||||
aresponses
|
||||
pytest-aiohttp
|
||||
pytest-asyncio
|
||||
pytest-cov
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
|
@ -4,46 +4,49 @@
|
||||
fetchFromGitHub,
|
||||
buildPythonPackage,
|
||||
python,
|
||||
pythonOlder,
|
||||
pytestCheckHook,
|
||||
assertpy,
|
||||
mock,
|
||||
path,
|
||||
pyhamcrest,
|
||||
pytest-html,
|
||||
glibcLocales,
|
||||
colorama,
|
||||
cucumber-tag-expressions,
|
||||
parse,
|
||||
parse-type,
|
||||
setuptools,
|
||||
six,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "behave";
|
||||
version = "1.2.7.dev2";
|
||||
format = "setuptools";
|
||||
version = "1.2.7.dev5";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "behave";
|
||||
repo = pname;
|
||||
repo = "behave";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-B8PUN1Q4UAsDWrHjPZDlpaPjCKjI/pAogCSI+BQnaWs=";
|
||||
hash = "sha256-G1o0a57MRczwjGLl/tEYC+yx3nxpk6+E58RvR9kVJpA=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
assertpy
|
||||
mock
|
||||
path
|
||||
pyhamcrest
|
||||
pytest-html
|
||||
];
|
||||
|
||||
# upstream tests are failing, so instead we only check if we can import it
|
||||
doCheck = false;
|
||||
doCheck = pythonOlder "3.12";
|
||||
|
||||
pythonImportsCheck = [ "behave" ];
|
||||
|
||||
buildInputs = [ glibcLocales ];
|
||||
propagatedBuildInputs = [
|
||||
dependencies = [
|
||||
colorama
|
||||
cucumber-tag-expressions
|
||||
parse
|
||||
@ -60,15 +63,13 @@ buildPythonPackage rec {
|
||||
disabledTests = lib.optionals stdenv.isDarwin [ "test_step_decorator_async_run_until_complete" ];
|
||||
|
||||
postCheck = ''
|
||||
export LANG="en_US.UTF-8"
|
||||
export LC_ALL="en_US.UTF-8"
|
||||
|
||||
${python.interpreter} bin/behave -f progress3 --stop --tags='~@xfail' features/
|
||||
${python.interpreter} bin/behave -f progress3 --stop --tags='~@xfail' tools/test-features/
|
||||
${python.interpreter} bin/behave -f progress3 --stop --tags='~@xfail' issue.features/
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
changelog = "https://github.com/behave/behave/blob/${src.rev}/CHANGES.rst";
|
||||
homepage = "https://github.com/behave/behave";
|
||||
description = "behaviour-driven development, Python style";
|
||||
mainProgram = "behave";
|
||||
|
@ -7,7 +7,7 @@
|
||||
requests,
|
||||
websocket-client,
|
||||
# dependencies for tests
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
pytest,
|
||||
sure,
|
||||
responses,
|
||||
@ -35,7 +35,7 @@ buildPythonPackage rec {
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-cov
|
||||
pytest-cov-stub
|
||||
pytest
|
||||
sure
|
||||
responses
|
||||
|
@ -2,7 +2,7 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
pytestCheckHook,
|
||||
requests,
|
||||
}:
|
||||
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
||||
propagatedBuildInputs = [ requests ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-cov
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
lib,
|
||||
pytest,
|
||||
pytest-asyncio,
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
pytest-rerunfailures,
|
||||
pytestCheckHook,
|
||||
redis,
|
||||
@ -46,7 +46,7 @@ buildPythonPackage rec {
|
||||
hypothesis
|
||||
pytest
|
||||
pytest-asyncio
|
||||
pytest-cov
|
||||
pytest-cov-stub
|
||||
pytest-rerunfailures
|
||||
pytestCheckHook
|
||||
];
|
||||
|
@ -9,7 +9,7 @@
|
||||
pykwalify,
|
||||
jsonschema,
|
||||
pytestCheckHook,
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
@ -34,11 +34,9 @@ buildPythonPackage rec {
|
||||
jsonschema
|
||||
];
|
||||
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
|
||||
checkInputs = [
|
||||
# addopts uses --no-cov
|
||||
pytest-cov
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
pytest-cov-stub
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
|
@ -1,14 +1,17 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchPypi,
|
||||
glyphslib,
|
||||
setuptools-scm,
|
||||
ufo2ft,
|
||||
fonttools,
|
||||
fetchFromGitHub,
|
||||
pytestCheckHook,
|
||||
fontmath,
|
||||
lxml,
|
||||
fonttools,
|
||||
glyphslib,
|
||||
setuptools,
|
||||
setuptools-scm,
|
||||
skia-pathops,
|
||||
ttfautohint-py,
|
||||
ufo2ft,
|
||||
ufolib2,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
@ -16,28 +19,45 @@ buildPythonPackage rec {
|
||||
version = "3.9.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-KrfT0fvE1fhaM2RH4LqRUda7yMHg2T59UdGi3SSZP7s=";
|
||||
extension = "zip";
|
||||
src = fetchFromGitHub {
|
||||
owner = "googlefonts";
|
||||
repo = "fontmake";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-q6ul9MYbq85RpZE0ozHOCBNAR4r9InIjumadT1GyJ6k=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ setuptools-scm ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
glyphslib
|
||||
ufo2ft
|
||||
fonttools
|
||||
fontmath
|
||||
lxml
|
||||
build-system = [
|
||||
setuptools
|
||||
setuptools-scm
|
||||
];
|
||||
|
||||
dependencies =
|
||||
[
|
||||
fontmath
|
||||
fonttools
|
||||
glyphslib
|
||||
ufo2ft
|
||||
ufolib2
|
||||
]
|
||||
++ fonttools.optional-dependencies.ufo
|
||||
++ fonttools.optional-dependencies.lxml
|
||||
++ fonttools.optional-dependencies.unicode;
|
||||
|
||||
optional-dependencies = {
|
||||
pathops = [ skia-pathops ];
|
||||
autohint = [ ttfautohint-py ];
|
||||
json = ufolib2.optional-dependencies.json;
|
||||
repacker = fonttools.optional-dependencies.repacker;
|
||||
};
|
||||
|
||||
nativeCheckInputs = [ pytestCheckHook ] ++ optional-dependencies.autohint;
|
||||
|
||||
pythonImportsCheck = [ "fontmake" ];
|
||||
|
||||
meta = {
|
||||
description = "Compiles fonts from various sources (.glyphs, .ufo, designspace) into binaries formats (.otf, .ttf)";
|
||||
homepage = "https://github.com/googlefonts/fontmake";
|
||||
changelog = "https://github.com/googlefonts/fontmake/releases/tag/v${version}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = [ lib.maintainers.BarinovMaxim ];
|
||||
};
|
||||
|
@ -3,7 +3,7 @@
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
pytest-asyncio,
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
requests,
|
||||
@ -27,7 +27,7 @@ buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
pytest-cov
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
requests
|
||||
requests-mock
|
||||
|
@ -4,7 +4,7 @@
|
||||
fetchPypi,
|
||||
isPy27,
|
||||
pytest,
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
nbval,
|
||||
jupyter-packaging,
|
||||
ipywidgets,
|
||||
@ -38,7 +38,7 @@ buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest
|
||||
pytest-cov
|
||||
pytest-cov-stub
|
||||
nbval
|
||||
];
|
||||
|
||||
|
@ -5,26 +5,34 @@
|
||||
isPy3k,
|
||||
lib,
|
||||
mkdocs,
|
||||
poetry-core,
|
||||
livereload,
|
||||
tornado,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mkdocs-drawio-exporter";
|
||||
version = "0.9.1";
|
||||
format = "setuptools";
|
||||
pyproject = true;
|
||||
|
||||
disabled = !isPy3k;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
pname = "mkdocs_drawio_exporter";
|
||||
inherit version;
|
||||
hash = "sha256-x8X8hvN/tL8C6VhgMCEHDh2hILjBoyLgQfsFD1+qXgo=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
dependencies = [
|
||||
mkdocs
|
||||
drawio-headless
|
||||
livereload
|
||||
tornado
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "mkdocsdrawioexporter" ];
|
||||
pythonImportsCheck = [ "mkdocs_drawio_exporter" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Exports your Draw.io diagrams at build time for easier embedding into your documentation";
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "motionblinds";
|
||||
version = "0.6.23";
|
||||
version = "0.6.24";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -18,14 +18,14 @@ buildPythonPackage rec {
|
||||
owner = "starkillerOG";
|
||||
repo = "motion-blinds";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-f5R58p6tMVqmXAjybae8qjeNI3vxtGJ7qxZOl9H5iKw=";
|
||||
hash = "sha256-4ao0FalOFrr4or7iUqx5aAw93yqI2i3/uF4rdHOsa7M=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ setuptools ];
|
||||
build-system = [ setuptools ];
|
||||
|
||||
propagatedBuildInputs = [ pycryptodomex ];
|
||||
dependencies = [ pycryptodomex ];
|
||||
|
||||
# Project has no tests
|
||||
# Module has no tests
|
||||
doCheck = false;
|
||||
|
||||
pythonImportsCheck = [ "motionblinds" ];
|
||||
|
@ -28,7 +28,7 @@ buildPythonPackage rec {
|
||||
# in the project's CI.
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-fLo4sQryDNNutDiNqWYHHNwS/bEBg4iQ/jwgyx1+ZsU=";
|
||||
hash = "sha256-HDN6KA2JYDZqad/MybsX1oV/VvXPshb0mi0UBZq47Qs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
# tests
|
||||
hypothesis,
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
pytestCheckHook,
|
||||
}:
|
||||
|
||||
@ -31,7 +31,7 @@ buildPythonPackage rec {
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pytest.ini \
|
||||
--replace "--cov=ndindex/ --cov-report=term-missing --flakes" ""
|
||||
--replace "--flakes" ""
|
||||
'';
|
||||
|
||||
passthru.optional-dependencies.arrays = [ numpy ];
|
||||
@ -40,7 +40,7 @@ buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
hypothesis
|
||||
pytest-cov # uses cov markers
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
] ++ passthru.optional-dependencies.arrays;
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
typing-extensions,
|
||||
pytestCheckHook,
|
||||
pytest-benchmark,
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
pydantic,
|
||||
}:
|
||||
|
||||
@ -39,7 +39,7 @@ buildPythonPackage rec {
|
||||
pydantic
|
||||
pytestCheckHook
|
||||
pytest-benchmark
|
||||
pytest-cov
|
||||
pytest-cov-stub
|
||||
];
|
||||
|
||||
pytestFlagsArray = [ "--benchmark-disable" ];
|
||||
|
@ -9,7 +9,7 @@
|
||||
pyexcel-xls,
|
||||
psutil,
|
||||
pytestCheckHook,
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
setuptools,
|
||||
}:
|
||||
|
||||
@ -43,7 +43,7 @@ buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
pytest-cov
|
||||
pytest-cov-stub
|
||||
pyexcel
|
||||
pyexcel-xls
|
||||
psutil
|
||||
|
@ -7,7 +7,7 @@
|
||||
metar,
|
||||
pytest-aiohttp,
|
||||
pytest-asyncio,
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
setuptools,
|
||||
@ -45,7 +45,7 @@ buildPythonPackage rec {
|
||||
freezegun
|
||||
pytest-aiohttp
|
||||
pytest-asyncio
|
||||
pytest-cov
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
] ++ lib.flatten (lib.attrValues optional-dependencies);
|
||||
|
||||
|
@ -6,6 +6,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pytest-cov-stub";
|
||||
# please use pythonRemoveDeps rather than change this version
|
||||
version = (lib.importTOML ./src/pyproject.toml).project.version;
|
||||
pyproject = true;
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
poetry-core,
|
||||
pytest-cov,
|
||||
pytest-cov-stub,
|
||||
pytest-asyncio,
|
||||
pytest-timeout,
|
||||
responses,
|
||||
@ -30,7 +30,7 @@ buildPythonPackage rec {
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
pytest-timeout
|
||||
pytest-cov
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
responses
|
||||
];
|
||||
|
@ -21,7 +21,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "softlayer";
|
||||
version = "6.2.2";
|
||||
version = "6.2.4";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -29,8 +29,8 @@ buildPythonPackage rec {
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = "softlayer-python";
|
||||
rev = "refs/tags/v.${version}";
|
||||
hash = "sha256-xlfVxQFsBKKpEsVmPlxn0sSyePNEmhly6wS/lTvP3DA=";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-Hl3nW31EoqjziYMeeHip/Ieq8eYLa7//qrENThPa7ns=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -11,14 +11,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "trimesh";
|
||||
version = "4.4.3";
|
||||
version = "4.4.4";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-pBEK1oMtI8z03zKHKjgE7uohZCE1KRPRUU7Z2tIAHV4=";
|
||||
hash = "sha256-XFP2/gHi+uNXrTO3ltv9tOr+shFDVPRs85YIgGEU7Pg=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
54
pkgs/development/python-modules/ttfautohint-py/default.nix
Normal file
54
pkgs/development/python-modules/ttfautohint-py/default.nix
Normal file
@ -0,0 +1,54 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
pytestCheckHook,
|
||||
setuptools,
|
||||
setuptools-scm,
|
||||
distutils,
|
||||
ttfautohint,
|
||||
fonttools,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "ttfautohint-py";
|
||||
version = "0.5.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fonttools";
|
||||
repo = "ttfautohint-py";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-NTog461RpyHKo/Qpicj3tflehaKj9LlZEN9qeCMM6JQ=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/python/ttfautohint/__init__.py \
|
||||
--replace-fail 'find_library("ttfautohint")' '"${lib.getLib ttfautohint}/lib/libttfautohint.so"'
|
||||
'';
|
||||
|
||||
env.TTFAUTOHINTPY_BUNDLE_DLL = false;
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
setuptools-scm
|
||||
distutils
|
||||
];
|
||||
|
||||
buildInputs = [ ttfautohint ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
fonttools
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "ttfautohint" ];
|
||||
|
||||
meta = {
|
||||
description = "Command line utility and Python library that merges two UFO source format fonts into a single file";
|
||||
homepage = "https://github.com/fonttools/ttfautohint-py";
|
||||
changelog = "https://github.com/fonttools/ttfautohint-py/releases/tag/v${version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ jopejoe1 ];
|
||||
};
|
||||
}
|
@ -7,6 +7,7 @@
|
||||
, fetchFromGitHub
|
||||
, gradle
|
||||
, jdk17
|
||||
, zenity
|
||||
|
||||
# for arc
|
||||
, SDL2
|
||||
@ -189,6 +190,7 @@ stdenv.mkDerivation {
|
||||
mkdir -p $out/bin
|
||||
makeWrapper ${jdk}/bin/java $out/bin/mindustry \
|
||||
--add-flags "-jar $out/share/mindustry.jar" \
|
||||
${lib.optionalString stdenv.isLinux "--suffix PATH : ${lib.makeBinPath [zenity]}"} \
|
||||
--suffix LD_LIBRARY_PATH : ${lib.makeLibraryPath [libpulseaudio alsa-lib libjack2]} \
|
||||
--set ALSA_PLUGIN_DIR ${alsa-plugins}/lib/alsa-lib/'' + optionalString enableWayland '' \
|
||||
--set SDL_VIDEODRIVER wayland \
|
||||
|
@ -1,362 +1,362 @@
|
||||
{
|
||||
"attica": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/attica-6.4.0.tar.xz",
|
||||
"hash": "sha256-w/ZuLALvMT+iQPWqv7ytOWn9/HiMlgTRz35OCJP7V0A="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/attica-6.5.0.tar.xz",
|
||||
"hash": "sha256-bOgGGNxSp6LEikJWFxYexGtxJtBeyyMHbmVf3h1gEOY="
|
||||
},
|
||||
"baloo": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/baloo-6.4.0.tar.xz",
|
||||
"hash": "sha256-B0dK6ixAek+wHNJkBYmpPouq2wT4uhmubY9AKTxMRpk="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/baloo-6.5.0.tar.xz",
|
||||
"hash": "sha256-2ARstuffHVuDEK7U5Nxx7IN5tgJ0S5DQj6nxS9pHpq8="
|
||||
},
|
||||
"bluez-qt": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/bluez-qt-6.4.0.tar.xz",
|
||||
"hash": "sha256-0tCu6fQrUBwAcRVlwuvofGCK5MB4bZAThvxVxlA5sWs="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/bluez-qt-6.5.0.tar.xz",
|
||||
"hash": "sha256-8CNHZvwa+UEHCNCIbu8wQXWwmluZxIwOuHeoD+xqpl4="
|
||||
},
|
||||
"breeze-icons": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/breeze-icons-6.4.0.tar.xz",
|
||||
"hash": "sha256-a2wMguG9ogI67q4jWXZSKkIJ73YYGSiwUpSKdr4fGgA="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/breeze-icons-6.5.0.tar.xz",
|
||||
"hash": "sha256-ym6PrvhIkXUOvCQNC5n0JBTl9kNnjVsa6UvLrVUasMQ="
|
||||
},
|
||||
"extra-cmake-modules": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/extra-cmake-modules-6.4.0.tar.xz",
|
||||
"hash": "sha256-ztPyB0HdrSQYXcEoCgwNkXG6JQj4R2JBfXSAhWEpWt0="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/extra-cmake-modules-6.5.0.tar.xz",
|
||||
"hash": "sha256-jzwsoeUCmQYp87aFBxifwPkS88qyebUA2ske5wMaSc8="
|
||||
},
|
||||
"frameworkintegration": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/frameworkintegration-6.4.0.tar.xz",
|
||||
"hash": "sha256-RoLRXDouSXhe2o9sMJ5fMNgv9qW8w5IoVEN0xkGZ73E="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/frameworkintegration-6.5.0.tar.xz",
|
||||
"hash": "sha256-xXtVdC5gLSyFyQAhWOiP4HfToWTGjtUMd2cqdOEaDfQ="
|
||||
},
|
||||
"kapidox": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kapidox-6.4.0.tar.xz",
|
||||
"hash": "sha256-HGDRJ4pajH/UtlRVCpRzM3jpLcCrElD6/fojICaE+yM="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kapidox-6.5.0.tar.xz",
|
||||
"hash": "sha256-8lQvIiEUdJh5mJActIrSIC7lFWzzmYBYhOFEnZhgo6E="
|
||||
},
|
||||
"karchive": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/karchive-6.4.0.tar.xz",
|
||||
"hash": "sha256-vOTQY4SWDGx8GMhpCLLXTBjYYAgWxvFcKSAwOkgG2rs="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/karchive-6.5.0.tar.xz",
|
||||
"hash": "sha256-5VMCU8cN4CSSbhmFFU+RFfAq9Qx9mYqHSjF1tARETnk="
|
||||
},
|
||||
"kauth": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kauth-6.4.0.tar.xz",
|
||||
"hash": "sha256-BZjiBd7cZwrzoHe6AhEKRNsvnV5V31ADsPwkkKwv8c4="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kauth-6.5.0.tar.xz",
|
||||
"hash": "sha256-GvUXpQnaHF3bRCDXQwiUt1FWLgfMTBNKvg3LYGNY05Q="
|
||||
},
|
||||
"kbookmarks": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kbookmarks-6.4.0.tar.xz",
|
||||
"hash": "sha256-E8crDEfjM62mCkZlr3gpkQ9cg91u1XeJ+jIpymitMoA="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kbookmarks-6.5.0.tar.xz",
|
||||
"hash": "sha256-l9q86uWw6sEQfEnFDR19mn0muSRsmrU9EjmQUlxV++w="
|
||||
},
|
||||
"kcalendarcore": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kcalendarcore-6.4.0.tar.xz",
|
||||
"hash": "sha256-YDWbHtMxYRP/A5jD//yESTmAdZf30aszF7Y0uYW9qlc="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kcalendarcore-6.5.0.tar.xz",
|
||||
"hash": "sha256-baWZ9e0V9s5UwvkoAm7i9k7dL+DVIDtPULv4mosh9SI="
|
||||
},
|
||||
"kcmutils": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kcmutils-6.4.0.tar.xz",
|
||||
"hash": "sha256-WbEpP/5nE0zrow+3znQYicVPha0MkNFVaIvdDfyPMb4="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kcmutils-6.5.0.tar.xz",
|
||||
"hash": "sha256-64R07FrmIONh5u+XHj7BSsaAe+LfjgLSfn2K6brcqZM="
|
||||
},
|
||||
"kcodecs": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kcodecs-6.4.0.tar.xz",
|
||||
"hash": "sha256-LKPnBjToEW3TJgHFUeCSz5lB6h0ZrlAe7Z5Ud+KYv9Q="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kcodecs-6.5.0.tar.xz",
|
||||
"hash": "sha256-6Wwi9UcOOVkazbsB6FID5dLxecgLGMKlmRln4Wr5Hgg="
|
||||
},
|
||||
"kcolorscheme": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kcolorscheme-6.4.0.tar.xz",
|
||||
"hash": "sha256-XHSvR2s2/JmyRtF/ow+Mm5SA95J3+gd5COdaj8Fxgow="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kcolorscheme-6.5.0.tar.xz",
|
||||
"hash": "sha256-MjtV3TfcQIzMFY3yzlyKRrYo+TVdKneRbkVlr86QtCs="
|
||||
},
|
||||
"kcompletion": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kcompletion-6.4.0.tar.xz",
|
||||
"hash": "sha256-8I4q9QRqe6WjJOR1qfEHKUs7g+ReFNcOQi+Z3aFFnVE="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kcompletion-6.5.0.tar.xz",
|
||||
"hash": "sha256-d4r4DlAV9Jzh4d3mGAv1EWeh9d+xLQfHMha1+oBO7fk="
|
||||
},
|
||||
"kconfig": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kconfig-6.4.0.tar.xz",
|
||||
"hash": "sha256-+7PQb95OoZlVz9vLzsA954pG+MIo9B1OeqbOuI3BFt0="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kconfig-6.5.0.tar.xz",
|
||||
"hash": "sha256-5I5TFdNJHd+4eKvxJKbhSIamMXhX+mP0EezXINqKXRM="
|
||||
},
|
||||
"kconfigwidgets": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kconfigwidgets-6.4.0.tar.xz",
|
||||
"hash": "sha256-mPfp4RVX0tHbWXEQUqO0y0+FcjFu/2QhRZuQtdQ5OYM="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kconfigwidgets-6.5.0.tar.xz",
|
||||
"hash": "sha256-pIBGg/wEd/tQXEEERBZL8oA//CFtIhYJoL5YQoA+VhI="
|
||||
},
|
||||
"kcontacts": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kcontacts-6.4.0.tar.xz",
|
||||
"hash": "sha256-ubctO9GmTAAWtxIueeZXNYIm0jn68xaZ1nANleUr1Z0="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kcontacts-6.5.0.tar.xz",
|
||||
"hash": "sha256-txHgmEaaWCEES/mb100KFrgEcxo0fPU2CaS9G1+l/cQ="
|
||||
},
|
||||
"kcoreaddons": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kcoreaddons-6.4.0.tar.xz",
|
||||
"hash": "sha256-xc0yE1C8oRk9DOhsjt5wxpAqK6A8V3Y3tKpTf82M4rg="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kcoreaddons-6.5.0.tar.xz",
|
||||
"hash": "sha256-Xg4dKdzU4E50WE3xV3066f+9R8zbhO5WItHtI3Pl75g="
|
||||
},
|
||||
"kcrash": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kcrash-6.4.0.tar.xz",
|
||||
"hash": "sha256-ARIVvJUqQwwdCTsL9c2tcFfJqQmNhhFuacbdEABWdpc="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kcrash-6.5.0.tar.xz",
|
||||
"hash": "sha256-hwxs4VEyzDBAvFk0RxJe08JWtpi6Izt1hDD05yUxm/M="
|
||||
},
|
||||
"kdav": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kdav-6.4.0.tar.xz",
|
||||
"hash": "sha256-z0KJNRWJhEQ/wHNiUs8ucXBlt2py5qQoZMDb51gQOOw="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kdav-6.5.0.tar.xz",
|
||||
"hash": "sha256-kA+7i2MtlGzTXoJuZPUFBzRhUfG1+0ATeJCrwolu788="
|
||||
},
|
||||
"kdbusaddons": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kdbusaddons-6.4.0.tar.xz",
|
||||
"hash": "sha256-IS+mvkGUqBnw+0jzxv0rWIRrqRFhK3PpfcfpD2EEyYc="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kdbusaddons-6.5.0.tar.xz",
|
||||
"hash": "sha256-r6z5/116LdKUUgcYUI0z6t8/Y6lXCR0wpopFqx7wqP4="
|
||||
},
|
||||
"kdeclarative": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kdeclarative-6.4.0.tar.xz",
|
||||
"hash": "sha256-u0e1IaTIQ/az3njUb+Qw3hWIZZjG2J05vZHHZ/QPaoU="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kdeclarative-6.5.0.tar.xz",
|
||||
"hash": "sha256-s8QVLJcuPVNkXxyIdXp4zltm+/Tst25Nad940qs4z4M="
|
||||
},
|
||||
"kded": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kded-6.4.0.tar.xz",
|
||||
"hash": "sha256-vlriHPm0Nur+ScqL51AlmJncgDUBxH7kNtja1tM7+5w="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kded-6.5.0.tar.xz",
|
||||
"hash": "sha256-KSypQazGnEQ/R4lep4RJOwj9Vzr+D06Z9fQrigKZVLA="
|
||||
},
|
||||
"kdesu": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kdesu-6.4.0.tar.xz",
|
||||
"hash": "sha256-8nrlh+tfk7sYkLQU7j62OyVAT5b229AEhCa2DgrKy1o="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kdesu-6.5.0.tar.xz",
|
||||
"hash": "sha256-A8CNC7z3HvEi6+PJexCQkq2ehxnSDTQdhRBge9qas5M="
|
||||
},
|
||||
"kdnssd": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kdnssd-6.4.0.tar.xz",
|
||||
"hash": "sha256-C8Y5pBs77t7NCQDKp1f/hk4pNX41gvkVAJK+DlVYzBI="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kdnssd-6.5.0.tar.xz",
|
||||
"hash": "sha256-N/0lTDm2b8obUviYwEXzIqDqMXfJJ5QZecy3ubmOv/0="
|
||||
},
|
||||
"kdoctools": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kdoctools-6.4.0.tar.xz",
|
||||
"hash": "sha256-Y+ES+QcRjK/UWEzo6zFJ01V6f56aQAXRDEDMz0bSTcI="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kdoctools-6.5.0.tar.xz",
|
||||
"hash": "sha256-eB4a4iLuHlTMYxBBLDcJ4MM+HE/4JHDSlg1uXapgAd0="
|
||||
},
|
||||
"kfilemetadata": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kfilemetadata-6.4.0.tar.xz",
|
||||
"hash": "sha256-Rf9DMFS+TF7xSiqoQjc8BnnWMqrP23jfupifc4jExe0="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kfilemetadata-6.5.0.tar.xz",
|
||||
"hash": "sha256-V0QZgj1/44nfxrwUGwqRUf2tpnFbmFyCaSk8DAT9wPQ="
|
||||
},
|
||||
"kglobalaccel": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kglobalaccel-6.4.0.tar.xz",
|
||||
"hash": "sha256-DWonS+OJG5yt9l48H8fJV1tuaLU3OIj1T52J35HNqKY="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kglobalaccel-6.5.0.tar.xz",
|
||||
"hash": "sha256-iDoc9I/EuM4iq58UO2vdVGrDD74pyQ1ANfsq3zijOaQ="
|
||||
},
|
||||
"kguiaddons": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kguiaddons-6.4.0.tar.xz",
|
||||
"hash": "sha256-4cJd8LgJW+JJfSBB5xzIQ+r3WmcH9lsc10OG/jJizxE="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kguiaddons-6.5.0.tar.xz",
|
||||
"hash": "sha256-cZP6kwuF+m5/2jqF8eUvNi7NPhEOgAVdkITur66sSAc="
|
||||
},
|
||||
"kholidays": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kholidays-6.4.0.tar.xz",
|
||||
"hash": "sha256-EgD6tr0VRvAWaIWX7vbBDJSPmZ1O6rHo6qyjRczSrc0="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kholidays-6.5.0.tar.xz",
|
||||
"hash": "sha256-hKAwhf+vqwbNKKMhVLD+RpT1izfSHxRogYtf7CxkPco="
|
||||
},
|
||||
"ki18n": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/ki18n-6.4.0.tar.xz",
|
||||
"hash": "sha256-wGnlWeOjEb+XfxNtd3MsXz5CU3Ut7/m6mZpqjXtK4lU="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/ki18n-6.5.0.tar.xz",
|
||||
"hash": "sha256-eHPTaorkUnRdWBAOfNoGfq5jLHh8H8WjxjpwcqrPp/w="
|
||||
},
|
||||
"kiconthemes": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kiconthemes-6.4.0.tar.xz",
|
||||
"hash": "sha256-1aUsM47D96ke2MVSgw3WiL3wQGUa0sSnlMGO7ksWH0c="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kiconthemes-6.5.0.tar.xz",
|
||||
"hash": "sha256-zcTFeI4LP4jyWqR01R1DSW5MdCd3+IAl7y+mBvJyEzE="
|
||||
},
|
||||
"kidletime": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kidletime-6.4.0.tar.xz",
|
||||
"hash": "sha256-Ti4EVagD3tK+501XNwHS2VNZ6u0veWTyMKQOMFioTCw="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kidletime-6.5.0.tar.xz",
|
||||
"hash": "sha256-ttx9bq22QiSAAPFlFVpy0t+rbBqT4BMPj4M5SnYo6vY="
|
||||
},
|
||||
"kimageformats": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kimageformats-6.4.0.tar.xz",
|
||||
"hash": "sha256-/XvauI57zMszOHnrKN7fNYQsEQwFf/TH0/p3cI5UEpY="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kimageformats-6.5.0.tar.xz",
|
||||
"hash": "sha256-xkq3NkdyZPigzkQY8L5imtDxegeBYbJ3NwDTuWynUCI="
|
||||
},
|
||||
"kio": {
|
||||
"version": "6.4.1",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kio-6.4.1.tar.xz",
|
||||
"hash": "sha256-i/H8bJk1EKFs2PcHebAjcB+XFHHTafVlqEBvSw07kFk="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kio-6.5.0.tar.xz",
|
||||
"hash": "sha256-nIv4NTRXejItRjPSQdl3C8i6ikViTi8EHhuNvbwZihM="
|
||||
},
|
||||
"kirigami": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kirigami-6.4.0.tar.xz",
|
||||
"hash": "sha256-7KIM2c5y0O61e9X7o5TyDYO7RhKsSkwj+4ynSpMYjDc="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kirigami-6.5.0.tar.xz",
|
||||
"hash": "sha256-Q6c7Fh4chdo+rcY+fMbBs8aGqlaVGw0OLfSizBM0dZw="
|
||||
},
|
||||
"kitemmodels": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kitemmodels-6.4.0.tar.xz",
|
||||
"hash": "sha256-lggxLFVkJ5tiTEll++GYv7LSaASpFc9RpGjjG7mYLWE="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kitemmodels-6.5.0.tar.xz",
|
||||
"hash": "sha256-NuwEs/0lJJoc6c/QiCTywuQO9NVCJOEY4G+iHF+aT3Y="
|
||||
},
|
||||
"kitemviews": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kitemviews-6.4.0.tar.xz",
|
||||
"hash": "sha256-QoC5vNxSeXmzZO0SLRUudZUf94/YAdRszOLeZgjVZEA="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kitemviews-6.5.0.tar.xz",
|
||||
"hash": "sha256-B/OziAWXmVqbvDybxH26K82STsUDtCPthWbn6AXLtpw="
|
||||
},
|
||||
"kjobwidgets": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kjobwidgets-6.4.0.tar.xz",
|
||||
"hash": "sha256-ImIaUsxpUypUlcfoVJ0mrx3dO4Uy6aoNPBCJUBFN1WU="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kjobwidgets-6.5.0.tar.xz",
|
||||
"hash": "sha256-Z8XasRka5oMNRSdRdn6UmRs0/q9CKPGKsELCwSCRCtg="
|
||||
},
|
||||
"knewstuff": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/knewstuff-6.4.0.tar.xz",
|
||||
"hash": "sha256-rvb1CFrewx3Anwc/OISTUVb3+SdsyOehsdhGw5zYEm8="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/knewstuff-6.5.0.tar.xz",
|
||||
"hash": "sha256-gVWJpmC5pTofwYJouVkUY2EktvPzGTyUBOCVn4tzjHk="
|
||||
},
|
||||
"knotifications": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/knotifications-6.4.0.tar.xz",
|
||||
"hash": "sha256-d+m2gAZtxJyNXiOsYpH7ugUyjdoyfVw0yjFB4f/rJdw="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/knotifications-6.5.0.tar.xz",
|
||||
"hash": "sha256-PXPcaCF2E4y6mVtpVO6v3UUHCXMT8bIQKk1e2QWj7uY="
|
||||
},
|
||||
"knotifyconfig": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/knotifyconfig-6.4.0.tar.xz",
|
||||
"hash": "sha256-2O9BS2jAmmSfL4nULRQrB5Z85Ze2b7s/hd0CIjw88ng="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/knotifyconfig-6.5.0.tar.xz",
|
||||
"hash": "sha256-+yrWv/tU5qBfq03IcYl76roDpG1C+ikLVu4fy7LuBZQ="
|
||||
},
|
||||
"kpackage": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kpackage-6.4.0.tar.xz",
|
||||
"hash": "sha256-ukoWq7e9UnxC0SxXYx5ReLj9D/vwHM93WKDrarGtwAg="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kpackage-6.5.0.tar.xz",
|
||||
"hash": "sha256-zzRSwXGREgR/mjvQCrLh5ZuntrT+YgpDU4hTCFCNt3M="
|
||||
},
|
||||
"kparts": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kparts-6.4.0.tar.xz",
|
||||
"hash": "sha256-/zDFHTt8Y/lUIPqvfJphrTprWTcyiky9Vq1SWwIemY0="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kparts-6.5.0.tar.xz",
|
||||
"hash": "sha256-TrVBeyZ/d8FshUgvkZrftbdxSpUjl3HEqvv+uQ5KNx8="
|
||||
},
|
||||
"kpeople": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kpeople-6.4.0.tar.xz",
|
||||
"hash": "sha256-ShOFt/yi+oBO16ARH5xsWiW6mMe/gR51wb8d0/tHKWQ="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kpeople-6.5.0.tar.xz",
|
||||
"hash": "sha256-ECzXrTJgsNEL0uwDMMg5gm6jJMXNhlgBY9g2TTNwpsI="
|
||||
},
|
||||
"kplotting": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kplotting-6.4.0.tar.xz",
|
||||
"hash": "sha256-T5x3DIFHSPl6HRTg7JxFLy5AZXT7UahecYJO6Bpx/Hc="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kplotting-6.5.0.tar.xz",
|
||||
"hash": "sha256-AhaXxNQgAvrUnbDSg1UqK0DoH5aHY9h7OtR+w/WA2UM="
|
||||
},
|
||||
"kpty": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kpty-6.4.0.tar.xz",
|
||||
"hash": "sha256-aGJnidy3nZ/Rs6TFUBZ0cmAIW6TGj3tAil8dGQzKRiM="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kpty-6.5.0.tar.xz",
|
||||
"hash": "sha256-3JNlukqDuUioMm8vddRtTeqDJ7wGte4hkDBsv4/fUkE="
|
||||
},
|
||||
"kquickcharts": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kquickcharts-6.4.0.tar.xz",
|
||||
"hash": "sha256-pBYpyu84d84DxznAlQ8JSJD1sqIKBB3TOL3rJAxkAd4="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kquickcharts-6.5.0.tar.xz",
|
||||
"hash": "sha256-xamlzCBv3SqGhUKEsIGxZXX2OLuyi2WAZWd7RH2MkAI="
|
||||
},
|
||||
"krunner": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/krunner-6.4.0.tar.xz",
|
||||
"hash": "sha256-qsSY8dMTv8GoOI/0dhfmjFBBPaFadEo4oFxHM3gxb7w="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/krunner-6.5.0.tar.xz",
|
||||
"hash": "sha256-VnSv7yP+Z0eqqLBsQFpTpOQPd7okU10ggNUSYCsDYDA="
|
||||
},
|
||||
"kservice": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kservice-6.4.0.tar.xz",
|
||||
"hash": "sha256-zbnX48b/o/faj/M6ez7Lle+EUb3vuXvLeUUvoD59ih8="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kservice-6.5.0.tar.xz",
|
||||
"hash": "sha256-SM3SBLyfuSgsN7a8wjZPfbwSQFdUfdtrFHGYi0ZM+L0="
|
||||
},
|
||||
"kstatusnotifieritem": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kstatusnotifieritem-6.4.0.tar.xz",
|
||||
"hash": "sha256-MnkBEXQUgoRK4ZAcN9tWg0bvwq5o9xLOzGuaXBy6gbk="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kstatusnotifieritem-6.5.0.tar.xz",
|
||||
"hash": "sha256-Xe9eGoYthdDzJcTxlzlnvPj6lzU/4dNhocr7BnAZhAM="
|
||||
},
|
||||
"ksvg": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/ksvg-6.4.0.tar.xz",
|
||||
"hash": "sha256-M5HHT8MVJuf/JlliLQDpO1zYZnOXYR1WdgYuSzLYZTA="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/ksvg-6.5.0.tar.xz",
|
||||
"hash": "sha256-riAkvU1+aVDJK1kk3s7V1VthAXSdY1eZsk/trGDLJs0="
|
||||
},
|
||||
"ktexteditor": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/ktexteditor-6.4.0.tar.xz",
|
||||
"hash": "sha256-gl4aeVSdZvIE1Qhp8d+7yKFKuW52s+jD6JmyNu3M1tQ="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/ktexteditor-6.5.0.tar.xz",
|
||||
"hash": "sha256-m7uIdaaMa2J/OZnC2rL5H+FVcOKkPDsqqRSeW5jbuME="
|
||||
},
|
||||
"ktexttemplate": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/ktexttemplate-6.4.0.tar.xz",
|
||||
"hash": "sha256-dDAP6A/X0OhySzgdj4hTRdkfR640EAPUZV6CsNq2v5A="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/ktexttemplate-6.5.0.tar.xz",
|
||||
"hash": "sha256-KVo/h/8Irxf4NJb9ZrP2NJF7ysZGbHm+H0y2eG7LBMY="
|
||||
},
|
||||
"ktextwidgets": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/ktextwidgets-6.4.0.tar.xz",
|
||||
"hash": "sha256-CLxpRhremUTTXlBV973dUxN3TXpsZyfxKmjljR0/znA="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/ktextwidgets-6.5.0.tar.xz",
|
||||
"hash": "sha256-qZ3xxjSDHp0B9wQAnJUTeBCDNKQlitW2T2D1XlV3AhI="
|
||||
},
|
||||
"kunitconversion": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kunitconversion-6.4.0.tar.xz",
|
||||
"hash": "sha256-MOlpRny28gyX4mPlOBNx6tRYUXdYEoAiFB1SJypmBHQ="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kunitconversion-6.5.0.tar.xz",
|
||||
"hash": "sha256-x9UhQjx0Q9MFgD4vYG6N/1j6nhx8c7Cbzo3Thi6ZL+Q="
|
||||
},
|
||||
"kuserfeedback": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kuserfeedback-6.4.0.tar.xz",
|
||||
"hash": "sha256-TMQsRDPIBEGuwhiDiZgW6BJRjo8sjBDI2K3Z53RTglc="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kuserfeedback-6.5.0.tar.xz",
|
||||
"hash": "sha256-M0jS8puS5lUkm3UP13+1a8RRG6O6dDmb0/skQIIaKSo="
|
||||
},
|
||||
"kwallet": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kwallet-6.4.0.tar.xz",
|
||||
"hash": "sha256-sohaCI5fcHVFEcwd2wpDTBpteTnZx3/8NulUg0kfnkA="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kwallet-6.5.0.tar.xz",
|
||||
"hash": "sha256-nrnvUKEDGa/fjdurBrt2wF9D2NQJVIPy2O/tdS1dgVo="
|
||||
},
|
||||
"kwidgetsaddons": {
|
||||
"version": "6.4.1",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kwidgetsaddons-6.4.1.tar.xz",
|
||||
"hash": "sha256-010hmP8aRYHn1zOdW0IS5ezwXEheI0C+ILqEJg8o8js="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kwidgetsaddons-6.5.0.tar.xz",
|
||||
"hash": "sha256-zzq8xAphkYPH1GJdyWGgtlrlk8bEGv4KqkUOkLXQ/gk="
|
||||
},
|
||||
"kwindowsystem": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kwindowsystem-6.4.0.tar.xz",
|
||||
"hash": "sha256-xOh0LL3SlNVqaJ1mpzsDpmBwIDesRiQvF8wBsk8BSlk="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kwindowsystem-6.5.0.tar.xz",
|
||||
"hash": "sha256-yq6G4WvybpGnIv3461iIIk98ds6HB0PaSlm8cA2HO8Y="
|
||||
},
|
||||
"kxmlgui": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/kxmlgui-6.4.0.tar.xz",
|
||||
"hash": "sha256-BJUrx/nq78elXHYtd+ZYiKKnHmONP8cSZXbf5kVWSws="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/kxmlgui-6.5.0.tar.xz",
|
||||
"hash": "sha256-dVSd1Urns+C/AcbYLr4tzHlxla3iI7aYbd6daIxc2QM="
|
||||
},
|
||||
"modemmanager-qt": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/modemmanager-qt-6.4.0.tar.xz",
|
||||
"hash": "sha256-8rwqqRa84+pYw43vmEw1+tol6HVq3UABMXgr/GLe7p0="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/modemmanager-qt-6.5.0.tar.xz",
|
||||
"hash": "sha256-dsKxjJxcXZw2AoKgMf6q6WYCkyLxneBQ2R05IHzVcXs="
|
||||
},
|
||||
"networkmanager-qt": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/networkmanager-qt-6.4.0.tar.xz",
|
||||
"hash": "sha256-PSyQXdnHRFxEAj7PBkbdG2/NyDlo9W36diKWsNFelJg="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/networkmanager-qt-6.5.0.tar.xz",
|
||||
"hash": "sha256-ql8rMsgXjuic86THWwn5nvgb4y/22ZpCWu4XTFAwG2w="
|
||||
},
|
||||
"prison": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/prison-6.4.0.tar.xz",
|
||||
"hash": "sha256-3W6wtkDgJjaoduafji26QEPI5ESmYw6yBIh1T19X6o0="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/prison-6.5.0.tar.xz",
|
||||
"hash": "sha256-u8F9zPtxmIr0HnARC2Y1Mj4X2O1IwI9zgI+fIg+wZ7o="
|
||||
},
|
||||
"purpose": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/purpose-6.4.0.tar.xz",
|
||||
"hash": "sha256-MYFp8gFUjqo8inbm6wDZsQ9Rhy1/kcf5dJ/LUYaZ5Q4="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/purpose-6.5.0.tar.xz",
|
||||
"hash": "sha256-QPgKBKc39bedmYC6q9ylTIIEVrswrdBEeSVykcYqwnQ="
|
||||
},
|
||||
"qqc2-desktop-style": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/qqc2-desktop-style-6.4.0.tar.xz",
|
||||
"hash": "sha256-mxMwVmOKEbmYiD7f8NkHjoaMCXJYaL2u6Ocz/eMI8Ps="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/qqc2-desktop-style-6.5.0.tar.xz",
|
||||
"hash": "sha256-iIY4d1pMi7f4DhDoeP2SOIDHXyqm44eNUsEqd/PakyE="
|
||||
},
|
||||
"solid": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/solid-6.4.0.tar.xz",
|
||||
"hash": "sha256-Vnk7cdT7n0r47Ir5KTt3fsyv3Br3V/WWJCnwsfk1lcM="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/solid-6.5.0.tar.xz",
|
||||
"hash": "sha256-6CN8bJYXvvS/X8dEYbt0F8pXr+FdT1SHjP6MgG5walw="
|
||||
},
|
||||
"sonnet": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/sonnet-6.4.0.tar.xz",
|
||||
"hash": "sha256-lUIFmJ2l00Q7/CVvizHgXiPv+4NvGBCJTW+5zJ0M3ak="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/sonnet-6.5.0.tar.xz",
|
||||
"hash": "sha256-foa2+Ct5UcPoHOp195uveooPiE/LAk8CphU6Rno94ao="
|
||||
},
|
||||
"syndication": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/syndication-6.4.0.tar.xz",
|
||||
"hash": "sha256-1WN+ryVcTT4RB2XS7Vq6BsmUVggB5ObEsGmKzFOVTcs="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/syndication-6.5.0.tar.xz",
|
||||
"hash": "sha256-za/FHJJxsAFQuNY78lDW0ED3vIxWkHr2HcWaRMlsZ04="
|
||||
},
|
||||
"syntax-highlighting": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/syntax-highlighting-6.4.0.tar.xz",
|
||||
"hash": "sha256-H4Ja+nyglJN/G401euayzTfliszwCSkDQeutoojFFQU="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/syntax-highlighting-6.5.0.tar.xz",
|
||||
"hash": "sha256-PhiD3VGjJn5WzTrOOGIAlKFa5tuuzdGNM7fU+i8Yw3g="
|
||||
},
|
||||
"threadweaver": {
|
||||
"version": "6.4.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.4/threadweaver-6.4.0.tar.xz",
|
||||
"hash": "sha256-oxetW04K6N7n/ZUCaj3z9fwcLlOuxtXMut3fx1PClZg="
|
||||
"version": "6.5.0",
|
||||
"url": "mirror://kde/stable/frameworks/6.5/threadweaver-6.5.0.tar.xz",
|
||||
"hash": "sha256-rnDQk2xDjr9KP3sqcI77nNMLWkFH2bcK5dRDfbsgveg="
|
||||
}
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, fetchurl, openssl, pkg-config, libnl
|
||||
{ lib, stdenv, fetchurl, fetchpatch, openssl, pkg-config, libnl
|
||||
, nixosTests, wpa_supplicant_gui
|
||||
, dbusSupport ? !stdenv.hostPlatform.isStatic, dbus
|
||||
, withReadline ? true, readline
|
||||
@ -16,6 +16,15 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "sha256-kS6gb3TjCo42+7aAZNbN/yGNjVkdsPxddd7myBrH/Ao=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "revert-change-breaking-auth-broadcom.patch";
|
||||
url = "https://w1.fi/cgit/hostap/patch/?id=41638606054a09867fe3f9a2b5523aa4678cbfa5";
|
||||
hash = "sha256-X6mBbj7BkW66aYeSCiI3JKBJv10etLQxaTRfRgwsFmM=";
|
||||
revert = true;
|
||||
})
|
||||
];
|
||||
|
||||
# TODO: Patch epoll so that the dbus actually responds
|
||||
# TODO: Figure out how to get privsep working, currently getting SIGBUS
|
||||
extraConfig = ''
|
||||
|
@ -1,37 +0,0 @@
|
||||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, gitUpdater
|
||||
, pkg-config
|
||||
, ffmpeg_4
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "hydron";
|
||||
version = "3.3.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bakape";
|
||||
repo = "hydron";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-Q1pZf5FPQw+pHItcZyOGx0N+iHmz9rW0+ANFsketh6E=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-hKF2RCGnk/5hNS65vGoDdF1OUPSLe4PDegYlKTeqJDM=";
|
||||
proxyVendor = true;
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ ffmpeg_4 ];
|
||||
|
||||
passthru.updateScript = gitUpdater {
|
||||
rev-prefix = "v";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/bakape/hydron";
|
||||
description = "High performance media tagger and organizer";
|
||||
license = with licenses; [ lgpl3Plus ];
|
||||
knownVulnerabilities = [ "CVE-2023-4863" ]; # Via https://github.com/chai2010/webp dep
|
||||
maintainers = with maintainers; [ Madouura ];
|
||||
};
|
||||
}
|
751
pkgs/servers/teleport/15/Cargo.lock
generated
751
pkgs/servers/teleport/15/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -1,22 +1,22 @@
|
||||
{ wasm-bindgen-cli, ... }@args:
|
||||
import ../generic.nix (args // {
|
||||
version = "15.3.7";
|
||||
hash = "sha256-d+lfM1yt0xAWBqAqBCdEFcOHz32VT0EI4LybVbmjW0o=";
|
||||
vendorHash = "sha256-pM6wy1tuMmUg8iNfeSmg8dW1cvP7G3fXa3vYuSEEdOc=";
|
||||
yarnHash = "sha256-eWrR06FVkFxCrk+Z7BrY4dJjvEnUYzYrhSeD8ir3a08=";
|
||||
version = "15.4.11";
|
||||
hash = "sha256-vmJ76aRAsbSGXZ2HcuryOlUYrUOPMP6MaI8OjxxyiZ4=";
|
||||
vendorHash = "sha256-oJo8Ga6TAUz1xSYiRckzq8zZvgIZFCeEwZbiyyVOdkI=";
|
||||
yarnHash = "sha256-5ppgBa5CyQ49FSFhdWDbTcCTdt0vsXAzNTeyG4r7crg=";
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"boring-4.4.0" = "sha256-4wdl2kIA5oHQ0H6IddKQ+B5kRwrTeMbKe1+tAYZt2uw=";
|
||||
"ironrdp-async-0.1.0" = "sha256-NpBzPsvopu5Te6Ljln5rp1Wxc6O6mRB4lLh0JVnN+Xc=";
|
||||
"ironrdp-async-0.1.0" = "sha256-nE5O/wRJ3vJqJG5zdYmpVkhx6JC6Yb92pR4EKSWSdkA=";
|
||||
"sspi-0.10.1" = "sha256-fkclC/plTh2d8zcmqthYmr5yXqbPTeFxI1VuaPX5vxk=";
|
||||
};
|
||||
};
|
||||
|
||||
# wasm-bindgen-cli version must match the version of wasm-bindgen in Cargo.lock
|
||||
wasm-bindgen-cli = wasm-bindgen-cli.override {
|
||||
version = "0.2.91";
|
||||
hash = "sha256-f/RK6s12ItqKJWJlA2WtOXtwX4Y0qa8bq/JHlLTAS3c=";
|
||||
cargoHash = "sha256-3vxVI0BhNz/9m59b+P2YEIrwGwlp7K3pyPKt4VqQuHE=";
|
||||
version = "0.2.92";
|
||||
hash = "sha256-1VwY8vQy7soKEgbki4LD+v259751kKxSxmo/gqE6yV0=";
|
||||
cargoHash = "sha256-aACJ+lYNEU8FFBs158G1/JG8sc6Rq080PeKCMnwdpH0=";
|
||||
};
|
||||
})
|
||||
|
3018
pkgs/tools/audio/goxlr-utility/Cargo.lock
generated
3018
pkgs/tools/audio/goxlr-utility/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -5,27 +5,27 @@
|
||||
, pkg-config
|
||||
, libpulseaudio
|
||||
, dbus
|
||||
, openssl
|
||||
, speechd-minimal
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "goxlr-utility";
|
||||
version = "1.1.1";
|
||||
version = "1.1.1-unstable-2024-08-06";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "GoXLR-on-Linux";
|
||||
repo = "goxlr-utility";
|
||||
# v1.1.1 was released with broken Cargo.lock so we'll use later commit where it was fixed
|
||||
rev = "26a818366e7f28802592baa463bb57fc9eccbe27";
|
||||
hash = "sha256-tUAZSfoC9bp7gK884nVGumtcLb2LAw+zQRSoVS8r+QI=";
|
||||
rev = "dcd4454a2634f5a2af10f00c1cbcb016241ce2cb";
|
||||
hash = "sha256-kWfCFsk0GhqX+pYOTeJd7XHlcWOX4D6fmIU/4nylU3Y=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"ksni-0.2.1" = "sha256-cq3PAqkiYEv4MW5CtT7eau38Mf4uxdJ1C2fw640RXzI=";
|
||||
"tasklist-0.2.13" = "sha256-DMaVOo1TSIyjspybok1y07oNxGjHaPSC6qe4NmDfNgE=";
|
||||
"xpc-connection-sys-0.1.1" = "sha256-bzxzzTwPwa7flt8Jm9OcoBLwp3zn/V5WS2hTZjXV1/M=";
|
||||
"tasklist-0.2.15" = "sha256-YVAXqXuE4azxYi0ObOq4c9ZeMKFa2KjwwjjQlAeIPro=";
|
||||
"xpc-connection-sys-0.1.1" = "sha256-VYZyf271sDjnvgIv4iDA6bcPt9dm4Tp8rRxr682iWwU=";
|
||||
};
|
||||
};
|
||||
|
||||
@ -33,6 +33,7 @@ rustPlatform.buildRustPackage rec {
|
||||
libpulseaudio
|
||||
dbus
|
||||
speechd-minimal
|
||||
openssl
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -45,14 +46,12 @@ rustPlatform.buildRustPackage rec {
|
||||
|
||||
postInstall = ''
|
||||
install -Dm644 "50-goxlr.rules" "$out/etc/udev/rules.d/50-goxlr.rules"
|
||||
|
||||
install -Dm644 "daemon/resources/goxlr-utility.png" "$out/share/icons/hicolor/48x48/apps/goxlr-utility.png"
|
||||
install -Dm644 "daemon/resources/goxlr-utility.svg" "$out/share/icons/hicolor/scalable/apps/goxlr-utility.svg"
|
||||
install -Dm644 "daemon/resources/goxlr-utility-large.png" "$out/share/pixmaps/goxlr-utility.png"
|
||||
install -Dm644 "daemon/resources/goxlr-utility.desktop" "$out/share/applications/goxlr-utility.desktop"
|
||||
substituteInPlace $out/share/applications/goxlr-utility.desktop \
|
||||
--replace /usr/bin $out/bin \
|
||||
--replace goxlr-launcher goxlr-daemon
|
||||
--replace-fail /usr/bin $out/bin
|
||||
|
||||
completions_dir=$(dirname $(find target -name 'goxlr-client.bash' | head -n 1))
|
||||
installShellCompletion --bash $completions_dir/goxlr-client.bash
|
||||
|
@ -6,14 +6,14 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "knowsmore";
|
||||
version = "0.1.38";
|
||||
version = "0.1.43";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "helviojunior";
|
||||
repo = "knowsmore";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-A68JuzlWvq3OAtgq6uAFcTTYKmL7xjKWZ0HQfVXKt4k=";
|
||||
hash = "sha256-rLESaedhEHTMYVbITr3vjyE6urhwl/g1/iTMZ4ruE1c=";
|
||||
};
|
||||
|
||||
pythonRelaxDeps = [
|
||||
@ -21,11 +21,8 @@ python3.pkgs.buildPythonApplication rec {
|
||||
"urllib3"
|
||||
];
|
||||
|
||||
pythonRemoveDeps = [ "bs4" ];
|
||||
|
||||
build-system = with python3.pkgs; [ setuptools ];
|
||||
|
||||
|
||||
dependencies = with python3.pkgs; [
|
||||
aioconsole
|
||||
ansi2image
|
||||
|
@ -10,16 +10,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "bottom";
|
||||
version = "0.9.7";
|
||||
version = "0.10.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ClementTsang";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-WZf6BR0D7VDdRu9mCVd2dwPraQ8IYXQcgblwL5wqHYQ=";
|
||||
hash = "sha256-hm0Xfd/iW+431HflvZErjzeZtSdXVb/ReoNIeETJ5Ik=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-F0T9jbgfdu6rimIq+3ijYlkFRMkhuuQchy0o4xhCoXE=";
|
||||
cargoHash = "sha256-FQbJx6ijX8kE4qxT7OQ7FwxLKJB5/moTKhBK0bfvBas=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
@ -645,6 +645,8 @@ mapAliases ({
|
||||
hll2390dw-cups = throw "The hll2390dw-cups package was dropped since it was unmaintained."; # Added 2024-06-21
|
||||
ht-rust = xh; # Added 2021-02-13
|
||||
hydra-unstable = hydra_unstable; # added 2022-05-10
|
||||
hydron = throw "hydron has been removed as the project has been archived upstream since 2022 and is affected by a severe remote code execution vulnerability";
|
||||
|
||||
hyper-haskell = throw "'hyper-haskell' has been removed. reason: has been broken for a long time and depends on an insecure electron version"; # Added 2024-03-14
|
||||
hyper-haskell-server-with-packages = throw "'hyper-haskell-server-with-packages' has been removed. reason: has been broken for a long time"; # Added 2024-03-14
|
||||
|
||||
|
@ -17118,15 +17118,26 @@ with pkgs;
|
||||
|
||||
sparkleshare = callPackage ../applications/version-management/sparkleshare { };
|
||||
|
||||
spidermonkey_78 = callPackage ../development/interpreters/spidermonkey/78.nix {
|
||||
inherit (darwin) libobjc;
|
||||
};
|
||||
spidermonkey_91 = callPackage ../development/interpreters/spidermonkey/91.nix {
|
||||
inherit (darwin) libobjc;
|
||||
};
|
||||
spidermonkey_115 = callPackage ../development/interpreters/spidermonkey/115.nix {
|
||||
inherit (darwin) libobjc;
|
||||
};
|
||||
inherit
|
||||
({
|
||||
spidermonkey_78 = callPackage ../development/interpreters/spidermonkey/78.nix {
|
||||
inherit (darwin) libobjc;
|
||||
};
|
||||
spidermonkey_91 = callPackage ../development/interpreters/spidermonkey/91.nix {
|
||||
inherit (darwin) libobjc;
|
||||
};
|
||||
spidermonkey_115 = callPackage ../development/interpreters/spidermonkey/115.nix {
|
||||
inherit (darwin) libobjc;
|
||||
};
|
||||
spidermonkey_128 = callPackage ../development/interpreters/spidermonkey/128.nix {
|
||||
inherit (darwin) libobjc;
|
||||
};
|
||||
})
|
||||
spidermonkey_78
|
||||
spidermonkey_91
|
||||
spidermonkey_115
|
||||
spidermonkey_128
|
||||
;
|
||||
|
||||
starlark-rust = callPackage ../development/interpreters/starlark-rust { };
|
||||
|
||||
@ -17339,8 +17350,6 @@ with pkgs;
|
||||
|
||||
ansible-doctor = callPackage ../tools/admin/ansible/doctor.nix { };
|
||||
|
||||
ansible-navigator = with python3Packages; toPythonApplication ansible-navigator;
|
||||
|
||||
dbus-test-runner = callPackage ../development/tools/dbus-test-runner { };
|
||||
|
||||
doq = callPackage ../development/tools/misc/doq { };
|
||||
@ -25181,8 +25190,6 @@ with pkgs;
|
||||
|
||||
https-dns-proxy = callPackage ../servers/dns/https-dns-proxy { };
|
||||
|
||||
hydron = callPackage ../servers/hydron { };
|
||||
|
||||
ic-keysmith = callPackage ../tools/security/ic-keysmith { };
|
||||
|
||||
icecream = callPackage ../servers/icecream { };
|
||||
@ -36261,8 +36268,6 @@ with pkgs;
|
||||
|
||||
pysolfc = python3Packages.callPackage ../games/pysolfc { };
|
||||
|
||||
qq = callPackage ../applications/networking/instant-messengers/qq { };
|
||||
|
||||
qqwing = callPackage ../games/qqwing { };
|
||||
|
||||
quake3wrapper = callPackage ../games/quake3/wrapper { };
|
||||
|
@ -49,6 +49,7 @@ mapAliases ({
|
||||
ansible-doctor = throw "ansible-doctor has been promoted to a top-level attribute name: `pkgs.ansible-doctor`"; # Added 2023-05-16
|
||||
ansible-later = throw "ansible-later has been promoted to a top-level attribute name: `pkgs.ansible-later`"; # Added 2023-05-16
|
||||
ansible-lint = throw "ansible-lint has been promoted to a top-level attribute name: `pkgs.ansible-lint`"; # Added 2023-05-16
|
||||
ansible-navigator = throw "ansible-navigator has been promoted to a top-level attribute name: pkgs.ansible-navigator"; # Added 2024-08-07
|
||||
anyjson = throw "anyjson has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18
|
||||
apache-airflow = throw "apache-airflow has been moved out of pythonPackages and is available as a standalone package"; # added 2023-06-05
|
||||
argon2_cffi = argon2-cffi; # added 2022-05-09
|
||||
|
@ -613,8 +613,6 @@ self: super: with self; {
|
||||
|
||||
ansible-kernel = callPackage ../development/python-modules/ansible-kernel { };
|
||||
|
||||
ansible-navigator = callPackage ../development/python-modules/ansible-navigator { };
|
||||
|
||||
ansible-pylibssh = callPackage ../development/python-modules/ansible-pylibssh { };
|
||||
|
||||
ansible-runner = callPackage ../development/python-modules/ansible-runner { };
|
||||
@ -15936,6 +15934,8 @@ self: super: with self; {
|
||||
|
||||
ttach = callPackage ../development/python-modules/ttach { };
|
||||
|
||||
ttfautohint-py = callPackage ../development/python-modules/ttfautohint-py { };
|
||||
|
||||
ttls = callPackage ../development/python-modules/ttls { };
|
||||
|
||||
ttn-client = callPackage ../development/python-modules/ttn-client { };
|
||||
|
Loading…
Reference in New Issue
Block a user