Merge master into staging-next
This commit is contained in:
@@ -23731,6 +23731,11 @@
|
||||
githubId = 9870613;
|
||||
name = "Hubert Mühlhans";
|
||||
};
|
||||
tris203 = {
|
||||
email = "admin@snappeh.com";
|
||||
github = "tris203";
|
||||
githubId = 18444302;
|
||||
};
|
||||
trishtzy = {
|
||||
github = "trishtzy";
|
||||
githubId = 5356506;
|
||||
|
||||
@@ -308,6 +308,13 @@
|
||||
To keep the old behavior for a site `example.com`, set `services.caddy.virtualHosts."example.com".hostName = "http://example.com"`.
|
||||
If you set custom Caddy options for a DokuWiki site, migrate these options by removing `http://` from `services.caddy.virtualHosts."http://example.com"`.
|
||||
|
||||
- `open-policy-agent` has has been updated to 1.0.0+.
|
||||
This major release makes the `rego.v1` syntax the default.
|
||||
This is a breaking change for those using v0 Rego.
|
||||
See the [upgrade documentation](https://www.openpolicyagent.org/docs/v1.0.1/v0-upgrade/) for more details.
|
||||
For those unable to upgrade yet, there is a [v0 compatibility mode](https://www.openpolicyagent.org/docs/v1.0.1/v0-compatibility/)
|
||||
available too.
|
||||
|
||||
- `vscode-utils.buildVscodeExtension` now requires pname as an argument
|
||||
|
||||
- The behavior of `services.hostapd.radios.<name>.networks.<name>.authentication.enableRecommendedPairwiseCiphers` was changed to not include `CCMP-256` anymore.
|
||||
|
||||
+315
-239
@@ -5,6 +5,10 @@ let
|
||||
description = "Alice Foobar";
|
||||
password = "foobar";
|
||||
|
||||
wallpaperName = "wallpaper.jpg";
|
||||
# In case it ever shows up in the VM, we could OCR for it instead
|
||||
wallpaperText = "Lorem ipsum";
|
||||
|
||||
# tmpfiles setup to make OCRing on terminal output more reliable
|
||||
terminalOcrTmpfilesSetup =
|
||||
{
|
||||
@@ -50,6 +54,227 @@ let
|
||||
"${confBase}/terminal.ubports/customized.colorscheme".L.argument = "${terminalColors}";
|
||||
"${confBase}/terminal.ubports/terminal.ubports.conf".L.argument = "${terminalConfig}";
|
||||
};
|
||||
|
||||
wallpaperFile =
|
||||
pkgs:
|
||||
pkgs.runCommand wallpaperName
|
||||
{
|
||||
nativeBuildInputs = with pkgs; [
|
||||
(imagemagick.override { ghostscriptSupport = true; }) # produce OCR-able image
|
||||
];
|
||||
}
|
||||
''
|
||||
magick -size 640x480 canvas:white -pointsize 30 -fill black -annotate +100+100 '${wallpaperText}' $out
|
||||
'';
|
||||
# gsettings tool with access to wallpaper schema
|
||||
lomiri-gsettings =
|
||||
pkgs:
|
||||
pkgs.stdenv.mkDerivation {
|
||||
name = "lomiri-gsettings";
|
||||
dontUnpack = true;
|
||||
nativeBuildInputs = with pkgs; [
|
||||
glib
|
||||
wrapGAppsHook3
|
||||
];
|
||||
buildInputs = with pkgs; [
|
||||
# Not using the Lomiri-namespaced setting yet
|
||||
# lomiri.lomiri-schemas
|
||||
gsettings-desktop-schemas
|
||||
];
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/bin
|
||||
ln -s ${pkgs.lib.getExe' pkgs.glib "gsettings"} $out/bin/lomiri-gsettings
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
setLomiriWallpaperService =
|
||||
pkgs:
|
||||
let
|
||||
lomiriServices = [
|
||||
"lomiri.service"
|
||||
"lomiri-full-greeter.service"
|
||||
"lomiri-full-shell.service"
|
||||
"lomiri-greeter.service"
|
||||
"lomiri-shell.service"
|
||||
];
|
||||
in
|
||||
rec {
|
||||
description = "Set Lomiri wallpaper to something OCR-able";
|
||||
wantedBy = lomiriServices;
|
||||
before = lomiriServices;
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
# Not using the Lomiri-namespaed settings yet
|
||||
# ExecStart = "${lomiri-gsettings pkgs}/bin/lomiri-gsettings set com.lomiri.Shell background-picture-uri file://${wallpaperFile pkgs}";
|
||||
ExecStart = "${lomiri-gsettings pkgs}/bin/lomiri-gsettings set org.gnome.desktop.background picture-uri file://${wallpaperFile pkgs}";
|
||||
};
|
||||
};
|
||||
|
||||
sharedTestFunctions = ''
|
||||
def wait_for_text(text):
|
||||
"""
|
||||
Wait for on-screen text, and try to optimise retry count for slow hardware.
|
||||
"""
|
||||
|
||||
machine.sleep(30)
|
||||
machine.wait_for_text(text)
|
||||
|
||||
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)
|
||||
|
||||
'';
|
||||
|
||||
makeIndicatorTest =
|
||||
{
|
||||
name,
|
||||
left,
|
||||
ocr,
|
||||
extraCheck ? null,
|
||||
|
||||
titleOcr,
|
||||
}:
|
||||
|
||||
makeTest (
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
name = "lomiri-desktop-ayatana-indicator-${name}";
|
||||
|
||||
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;
|
||||
};
|
||||
|
||||
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";
|
||||
|
||||
# Not setting wallpaper, as it breaks indicator OCR(?)
|
||||
};
|
||||
|
||||
enableOCR = true;
|
||||
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
sharedTestFunctions
|
||||
+ ''
|
||||
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
|
||||
wait_for_text(r"(AM|PM)")
|
||||
machine.screenshot("lomiri_launched")
|
||||
|
||||
# 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.
|
||||
mouse_click(735, 0) # the cog in the top-right, for the session indicator
|
||||
wait_for_text(${titleOcr})
|
||||
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 it might not be the one we want to test right now.
|
||||
# Go as far left as necessary.
|
||||
${lib.strings.replicate left "machine.send_key(\"left\")\n"}
|
||||
|
||||
with subtest("ayatana indicator session works"):
|
||||
wait_for_text(r"(${lib.strings.concatStringsSep "|" ocr})")
|
||||
machine.screenshot("indicator_${name}")
|
||||
''
|
||||
+ lib.optionalString (extraCheck != null) extraCheck;
|
||||
}
|
||||
);
|
||||
|
||||
makeIndicatorTests =
|
||||
{
|
||||
titles,
|
||||
details,
|
||||
}:
|
||||
let
|
||||
titleOcr = "r\"(${builtins.concatStringsSep "|" titles})\"";
|
||||
in
|
||||
builtins.listToAttrs (
|
||||
builtins.map (
|
||||
{
|
||||
name,
|
||||
left,
|
||||
ocr,
|
||||
extraCheck ? null,
|
||||
}:
|
||||
{
|
||||
name = "desktop-ayatana-indicator-${name}";
|
||||
value = makeIndicatorTest {
|
||||
inherit
|
||||
name
|
||||
left
|
||||
ocr
|
||||
extraCheck
|
||||
titleOcr
|
||||
;
|
||||
};
|
||||
}
|
||||
) details
|
||||
);
|
||||
in
|
||||
{
|
||||
greeter = makeTest (
|
||||
@@ -85,14 +310,8 @@ in
|
||||
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
def wait_for_text(text):
|
||||
"""
|
||||
Wait for on-screen text, and try to optimise retry count for slow hardware.
|
||||
"""
|
||||
machine.sleep(10)
|
||||
machine.wait_for_text(text)
|
||||
|
||||
sharedTestFunctions
|
||||
+ ''
|
||||
start_all()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
@@ -157,7 +376,7 @@ in
|
||||
|
||||
environment = {
|
||||
# Help with OCR
|
||||
etc."xdg/alacritty/alacritty.yml".text = lib.generators.toYAML { } {
|
||||
etc."xdg/alacritty/alacritty.toml".source = (pkgs.formats.toml { }).generate "alacritty.toml" {
|
||||
font = rec {
|
||||
normal.family = "Inconsolata";
|
||||
bold.family = normal.family;
|
||||
@@ -176,6 +395,8 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
etc."${wallpaperName}".source = wallpaperFile pkgs;
|
||||
|
||||
systemPackages = with pkgs; [
|
||||
# Forcing alacritty to run as an X11 app when opened from the starter menu
|
||||
(symlinkJoin {
|
||||
@@ -200,45 +421,16 @@ in
|
||||
systemd.tmpfiles.settings = {
|
||||
"10-lomiri-test-setup" = terminalOcrTmpfilesSetup { inherit pkgs lib config; };
|
||||
};
|
||||
|
||||
systemd.user.services.set-lomiri-wallpaper = setLomiriWallpaperService pkgs;
|
||||
};
|
||||
|
||||
enableOCR = true;
|
||||
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
def wait_for_text(text):
|
||||
"""
|
||||
Wait for on-screen text, and try to optimise retry count for slow hardware.
|
||||
"""
|
||||
machine.sleep(10)
|
||||
machine.wait_for_text(text)
|
||||
|
||||
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)
|
||||
|
||||
sharedTestFunctions
|
||||
+ ''
|
||||
start_all()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
@@ -364,6 +556,8 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
etc."${wallpaperName}".source = wallpaperFile pkgs;
|
||||
|
||||
variables = {
|
||||
# So we can test what lomiri-content-hub is working behind the scenes
|
||||
LOMIRI_CONTENT_HUB_LOGGING_LEVEL = "2";
|
||||
@@ -379,58 +573,16 @@ in
|
||||
systemd.tmpfiles.settings = {
|
||||
"10-lomiri-test-setup" = terminalOcrTmpfilesSetup { inherit pkgs lib config; };
|
||||
};
|
||||
|
||||
systemd.user.services.set-lomiri-wallpaper = setLomiriWallpaperService pkgs;
|
||||
};
|
||||
|
||||
enableOCR = true;
|
||||
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
def wait_for_text(text):
|
||||
"""
|
||||
Wait for on-screen text, and try to optimise retry count for slow hardware.
|
||||
"""
|
||||
machine.sleep(10)
|
||||
machine.wait_for_text(text)
|
||||
|
||||
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)
|
||||
|
||||
sharedTestFunctions
|
||||
+ ''
|
||||
start_all()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
@@ -526,147 +678,6 @@ in
|
||||
}
|
||||
);
|
||||
|
||||
desktop-ayatana-indicators = makeTest (
|
||||
{ pkgs, lib, ... }:
|
||||
{
|
||||
name = "lomiri-desktop-ayatana-indicators";
|
||||
|
||||
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;
|
||||
};
|
||||
|
||||
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.systemPackages = with pkgs; [ qt5.qttools ];
|
||||
};
|
||||
|
||||
enableOCR = true;
|
||||
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
def wait_for_text(text):
|
||||
"""
|
||||
Wait for on-screen text, and try to optimise retry count for slow hardware.
|
||||
"""
|
||||
machine.sleep(10)
|
||||
machine.wait_for_text(text)
|
||||
|
||||
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)
|
||||
|
||||
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
|
||||
wait_for_text(r"(AM|PM)")
|
||||
machine.screenshot("lomiri_launched")
|
||||
|
||||
# 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
|
||||
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")
|
||||
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
|
||||
wait_for_text("Lock")
|
||||
machine.screenshot("indicators_display")
|
||||
|
||||
with subtest("ayatana indicator bluetooth works"):
|
||||
machine.send_key("right")
|
||||
wait_for_text("Bluetooth settings")
|
||||
machine.screenshot("indicators_bluetooth")
|
||||
|
||||
with subtest("lomiri indicator network works"):
|
||||
machine.send_key("right")
|
||||
wait_for_text(r"(Flight|Wi-Fi)")
|
||||
machine.screenshot("indicators_network")
|
||||
|
||||
with subtest("ayatana indicator sound works"):
|
||||
machine.send_key("right")
|
||||
wait_for_text(r"(Silent|Volume)")
|
||||
machine.screenshot("indicators_sound")
|
||||
|
||||
with subtest("ayatana indicator power works"):
|
||||
machine.send_key("right")
|
||||
wait_for_text(r"(Charge|Battery settings)")
|
||||
machine.screenshot("indicators_power")
|
||||
|
||||
with subtest("ayatana indicator datetime works"):
|
||||
machine.send_key("right")
|
||||
wait_for_text("Time and Date Settings")
|
||||
machine.screenshot("indicators_timedate")
|
||||
|
||||
with subtest("ayatana indicator session works"):
|
||||
machine.send_key("right")
|
||||
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'")
|
||||
'';
|
||||
}
|
||||
);
|
||||
|
||||
keymap =
|
||||
let
|
||||
pwInput = "qwerty";
|
||||
@@ -706,6 +717,10 @@ in
|
||||
"us"
|
||||
];
|
||||
|
||||
environment.etc."${wallpaperName}".source = wallpaperFile pkgs;
|
||||
|
||||
systemd.user.services.set-lomiri-wallpaper = setLomiriWallpaperService pkgs;
|
||||
|
||||
# Help with OCR
|
||||
systemd.tmpfiles.settings = {
|
||||
"10-lomiri-test-setup" = terminalOcrTmpfilesSetup { inherit pkgs lib config; };
|
||||
@@ -716,14 +731,8 @@ in
|
||||
|
||||
testScript =
|
||||
{ nodes, ... }:
|
||||
''
|
||||
def wait_for_text(text):
|
||||
"""
|
||||
Wait for on-screen text, and try to optimise retry count for slow hardware.
|
||||
"""
|
||||
machine.sleep(10)
|
||||
machine.wait_for_text(text)
|
||||
|
||||
sharedTestFunctions
|
||||
+ ''
|
||||
start_all()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
@@ -758,7 +767,7 @@ in
|
||||
machine.screenshot("terminal_opens")
|
||||
|
||||
machine.send_chars("touch ${pwInput}\n")
|
||||
machine.wait_for_file("/home/alice/${pwOutput}", 10)
|
||||
machine.wait_for_file("/home/alice/${pwOutput}", 90)
|
||||
|
||||
# Issues with this keybind: input leaks to focused surface, may open launcher
|
||||
# Don't have the keyboard indicator to handle this better
|
||||
@@ -782,10 +791,77 @@ in
|
||||
machine.send_key("backspace")
|
||||
|
||||
machine.send_chars("touch ${pwInput}\n")
|
||||
machine.wait_for_file("/home/alice/${pwInput}", 10)
|
||||
machine.wait_for_file("/home/alice/${pwInput}", 90)
|
||||
|
||||
machine.send_key("alt-f4")
|
||||
'';
|
||||
}
|
||||
);
|
||||
}
|
||||
// makeIndicatorTests {
|
||||
titles = [
|
||||
"Notifications" # messages
|
||||
"Rotation" # display
|
||||
"Battery" # power
|
||||
"Sound" # sound
|
||||
"Time" # datetime
|
||||
"Date" # datetime
|
||||
"System" # session
|
||||
];
|
||||
details = [
|
||||
# messages normally has no contents
|
||||
({
|
||||
name = "display";
|
||||
left = 6;
|
||||
ocr = [ "Lock" ];
|
||||
})
|
||||
({
|
||||
name = "bluetooth";
|
||||
left = 5;
|
||||
ocr = [ "Bluetooth" ];
|
||||
})
|
||||
({
|
||||
name = "network";
|
||||
left = 4;
|
||||
ocr = [
|
||||
"Flight"
|
||||
"Wi-Fi"
|
||||
];
|
||||
})
|
||||
({
|
||||
name = "sound";
|
||||
left = 3;
|
||||
ocr = [
|
||||
"Silent"
|
||||
"Volume"
|
||||
];
|
||||
})
|
||||
({
|
||||
name = "power";
|
||||
left = 2;
|
||||
ocr = [
|
||||
"Charge"
|
||||
"Battery"
|
||||
];
|
||||
})
|
||||
({
|
||||
name = "datetime";
|
||||
left = 1;
|
||||
ocr = [
|
||||
"Time"
|
||||
"Date"
|
||||
];
|
||||
})
|
||||
({
|
||||
name = "session";
|
||||
left = 0;
|
||||
ocr = [ "Log Out" ];
|
||||
extraCheck = ''
|
||||
# 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'")
|
||||
'';
|
||||
})
|
||||
];
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ in
|
||||
meta.maintainers = with lib.maintainers; [ nikstur ];
|
||||
|
||||
nodes.machine =
|
||||
{ pkgs, ... }:
|
||||
{ config, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
|
||||
@@ -36,8 +36,8 @@ in
|
||||
specialisation.new-generation = {
|
||||
inheritParentConfig = false;
|
||||
configuration = {
|
||||
nixpkgs.hostPlatform = {
|
||||
inherit (pkgs.stdenv.hostPlatform) system;
|
||||
nixpkgs = {
|
||||
inherit (config.nixpkgs) hostPlatform;
|
||||
};
|
||||
imports = [ common ];
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ in
|
||||
meta.maintainers = with lib.maintainers; [ nikstur ];
|
||||
|
||||
nodes.machine =
|
||||
{ pkgs, ... }:
|
||||
{ config, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
|
||||
@@ -32,8 +32,8 @@ in
|
||||
specialisation.new-generation = {
|
||||
inheritParentConfig = false;
|
||||
configuration = {
|
||||
nixpkgs.hostPlatform = {
|
||||
inherit (pkgs.stdenv.hostPlatform) system;
|
||||
nixpkgs = {
|
||||
inherit (config.nixpkgs) hostPlatform;
|
||||
};
|
||||
imports = [ common ];
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ in
|
||||
meta.maintainers = with lib.maintainers; [ nikstur ];
|
||||
|
||||
nodes.machine =
|
||||
{ pkgs, ... }:
|
||||
{ config, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
|
||||
@@ -36,8 +36,8 @@ in
|
||||
specialisation.new-generation = {
|
||||
inheritParentConfig = false;
|
||||
configuration = {
|
||||
nixpkgs.hostPlatform = {
|
||||
inherit (pkgs.stdenv.hostPlatform) system;
|
||||
nixpkgs = {
|
||||
inherit (config.nixpkgs) hostPlatform;
|
||||
};
|
||||
imports = [ common ];
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ in
|
||||
meta.maintainers = with lib.maintainers; [ nikstur ];
|
||||
|
||||
nodes.machine =
|
||||
{ pkgs, ... }:
|
||||
{ config, ... }:
|
||||
{
|
||||
imports = [ common ];
|
||||
|
||||
@@ -33,8 +33,8 @@ in
|
||||
specialisation.new-generation = {
|
||||
inheritParentConfig = false;
|
||||
configuration = {
|
||||
nixpkgs.hostPlatform = {
|
||||
inherit (pkgs.stdenv.hostPlatform) system;
|
||||
nixpkgs = {
|
||||
inherit (config.nixpkgs) hostPlatform;
|
||||
};
|
||||
imports = [ common ];
|
||||
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
{
|
||||
"airgap-images-amd64": {
|
||||
"url": "https://github.com/k3s-io/k3s/releases/download/v1.31.4%2Bk3s1/k3s-airgap-images-amd64.tar.zst",
|
||||
"sha256": "f7a94dc28b3a8da063a41360f480ace1de3040ffd9c9228283975c8dca74d3b7"
|
||||
"url": "https://github.com/k3s-io/k3s/releases/download/v1.31.5%2Bk3s1/k3s-airgap-images-amd64.tar.zst",
|
||||
"sha256": "94f127423c8dd3fe5834559d2c88f1afde7681ce36f139c82b5e46d0c2b33ba3"
|
||||
},
|
||||
"airgap-images-arm": {
|
||||
"url": "https://github.com/k3s-io/k3s/releases/download/v1.31.4%2Bk3s1/k3s-airgap-images-arm.tar.zst",
|
||||
"sha256": "75e5786bf0d1a4b3f80583a59b6fb5bdc730c5015ca20a212a7810849a4f907c"
|
||||
"url": "https://github.com/k3s-io/k3s/releases/download/v1.31.5%2Bk3s1/k3s-airgap-images-arm.tar.zst",
|
||||
"sha256": "34d4a83d69fe30d9bcf3c28a3d5a87e342d1b3b071241cebe585e8b9357b51b9"
|
||||
},
|
||||
"airgap-images-arm64": {
|
||||
"url": "https://github.com/k3s-io/k3s/releases/download/v1.31.4%2Bk3s1/k3s-airgap-images-arm64.tar.zst",
|
||||
"sha256": "02694da4fb6831757f8d198dd5d9f11fcc435bce468426a56109b9d94a025877"
|
||||
"url": "https://github.com/k3s-io/k3s/releases/download/v1.31.5%2Bk3s1/k3s-airgap-images-arm64.tar.zst",
|
||||
"sha256": "f848ede8c5e945312412efb46e1e02bf2bcbf5c190afcf7eb599c9ce11ede587"
|
||||
},
|
||||
"images-list": {
|
||||
"url": "https://github.com/k3s-io/k3s/releases/download/v1.31.4%2Bk3s1/k3s-images.txt",
|
||||
"sha256": "46c9c5393c0e6485e7dd78fa11b4df4800a7a66f6ace7eecd23011eebe5611bf"
|
||||
"url": "https://github.com/k3s-io/k3s/releases/download/v1.31.5%2Bk3s1/k3s-images.txt",
|
||||
"sha256": "695a3b9296c05a118955579c5dedfe4d8b2c4c9ccba347447d8e7a95f0f41d23"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
k3sVersion = "1.31.4+k3s1";
|
||||
k3sCommit = "a562d090b05cf8d55b6a8b57556787c24c8ce21a";
|
||||
k3sRepoSha256 = "1kgw3jnaqh8lnbljgdvyl14vdlyvy8gw2jsqqj3qv1kv1m3qqsjw";
|
||||
k3sVendorHash = "sha256-OtIQ3pmN4V3qJODF5/fSespbKvucvzi4ykdmGkRVlf4=";
|
||||
k3sVersion = "1.31.5+k3s1";
|
||||
k3sCommit = "56ec5dd4d012c1d77dc7f50f21f65183044c92e7";
|
||||
k3sRepoSha256 = "1926m0s380h2grqlar0pm7fyr71rjskq5wycrm1q97nypjxwpywh";
|
||||
k3sVendorHash = "sha256-EHHHrhRjvILDmNB/HxaqwwJTozvXyh/Py4t26xFc6bQ=";
|
||||
chartVersions = import ./chart-versions.nix;
|
||||
imagesVersions = builtins.fromJSON (builtins.readFile ./images-versions.json);
|
||||
k3sRootVersion = "0.14.1";
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
buildLua {
|
||||
pname = "mpv-webm";
|
||||
version = "0-unstable-2024-07-20";
|
||||
version = "0-unstable-2025-01-28";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ekisu";
|
||||
repo = "mpv-webm";
|
||||
rev = "64844ec52b7a17d621ddceacf77e1e933f856b3c";
|
||||
hash = "sha256-Unz8DQtm4sc/u0ciWoOdLcAEDZL+AjD+2T4q61Gzdns=";
|
||||
rev = "a84e6d71f002f28253cc0137a2347d99d599304e";
|
||||
hash = "sha256-sVzg0taY2EMkHLpuv7OcCk+e0aREKndfrCTuCwdHVFc=";
|
||||
};
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
# only "latest" tag pointing at HEAD
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "cli-tips";
|
||||
version = "0-unstable-2024-12-26";
|
||||
version = "0-unstable-2025-02-03";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cli-stuff";
|
||||
repo = "cli-tips";
|
||||
rev = "ddb654baa8ffda13e325e2d48f1089c64025153a";
|
||||
hash = "sha256-eRQcYoqDxhsfbOdWGcYABQMcwjwmYQXfAUzTKeKPW8I=";
|
||||
rev = "34e37224b51362003d1c5af2b0b6bc2a02b668d9";
|
||||
hash = "sha256-ZJQGa7gaR76zsdZOVoIf87h2wraFFOuonJEDy6J8ygQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
@@ -9,16 +9,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "dnscontrol";
|
||||
version = "4.15.5";
|
||||
version = "4.16.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "StackExchange";
|
||||
repo = "dnscontrol";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-pb2r9XBQmS1pcCV9qBzGEPLfIgMaOFLh+5oW6Wks/sc=";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-yFBKDb4XdCw5en/VN5IP8iCTdSRMqATVR8vV3G1gHJQ=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-x/FxspmR89Q2yZI0sP1D9OVUFEjMlpT/0IPusy5zHuo=";
|
||||
vendorHash = "sha256-4LDH1mJE0SJFvHYT14uCcgzy5CQ61V2gj1SfyHLEQXY=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
||||
@@ -16,18 +16,17 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "elan";
|
||||
version = "3.1.1-unstable-2024-08-02";
|
||||
version = "4.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "leanprover";
|
||||
repo = "elan";
|
||||
# commit "chore: update to build with rust 1.80 (leanprover/elan#134)"
|
||||
rev = "97ce78e0e6aecdf3e8d35dbf42b0614302efb250";
|
||||
hash = "sha256-7cwpHMyhpTxYXjZM4xbDK+epvA2kBf7jelvMaPGP1kU=";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-6/5yIIO0Avf6YpD7+7B30bnwtcPXi2k4RqWFO8hBaII=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-5JsLG5uwdIqjjPHGnemnM8odcnAMSadKYRECbKF7FSY=";
|
||||
cargoHash = "sha256-4HYRglFhEpEnRu8gPSNFFAT2v4/3ccwd02LZfNJUzbM=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
|
||||
@@ -21,14 +21,14 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "fnott";
|
||||
version = "1.7.0";
|
||||
version = "1.7.1";
|
||||
|
||||
src = fetchFromGitea {
|
||||
domain = "codeberg.org";
|
||||
owner = "dnkl";
|
||||
repo = "fnott";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-KVuBSpf6djf+ceb3LglC/RHAGWS1UAsAT46aPyd2fHQ=";
|
||||
hash = "sha256-C0GvpjOrcelk/KNNDQ7/02Ai7xy8FVzmLcuC2je5wYA=";
|
||||
};
|
||||
|
||||
PKG_CONFIG_DBUS_1_SESSION_BUS_SERVICES_DIR = "${placeholder "out"}/share/dbus-1/services";
|
||||
|
||||
@@ -20,7 +20,7 @@ let
|
||||
pname = "gitea-frontend";
|
||||
inherit (gitea) src version;
|
||||
|
||||
npmDepsHash = "sha256-xSJOEXDF/1Cc7ptNMLGE7RqqbxelI2XS/Mi9JZSWu/Y=";
|
||||
npmDepsHash = "sha256-5i3aB1QgH5NK5yDZySFlraVGU+Kh6J4Y2zvFqJX5kJs=";
|
||||
|
||||
# use webpack directly instead of 'make frontend' as the packages are already installed
|
||||
buildPhase = ''
|
||||
@@ -35,18 +35,18 @@ let
|
||||
in
|
||||
buildGoModule rec {
|
||||
pname = "gitea";
|
||||
version = "1.23.1";
|
||||
version = "1.23.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "go-gitea";
|
||||
repo = "gitea";
|
||||
rev = "v${gitea.version}";
|
||||
hash = "sha256-0/mzOKSRhXLhwmDnMHQCjkalP+4hkQR6kICsAj6+6zE=";
|
||||
tag = "v${gitea.version}";
|
||||
hash = "sha256-g7nrqSeMoAcfN8uexEKySZwY8SCosIpACtURRbUgb5c=";
|
||||
};
|
||||
|
||||
proxyVendor = true;
|
||||
|
||||
vendorHash = "sha256-qOntP6zBd21PjCAV5ZvksgwIV4zDTOYiVBBWkC6O7rk=";
|
||||
vendorHash = "sha256-nkg9uHAUqPJWWap0cTmDokcl2L2hT/b9I1+rNnA8bD0=";
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
|
||||
@@ -17,17 +17,17 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "grafana-alloy";
|
||||
version = "1.5.1";
|
||||
version = "1.6.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
rev = "v${version}";
|
||||
owner = "grafana";
|
||||
repo = "alloy";
|
||||
hash = "sha256-0aNEzEf7hbMZO2Nx+T1tXB7xuK3hsH7MCynC+i3Cnr4=";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-7NcSe+6MqS5Bxu64qaJKKxSsQYYEqeGGRgDpcag8t1I=";
|
||||
};
|
||||
|
||||
proxyVendor = true;
|
||||
vendorHash = "sha256-YreRPoAxPuuulsqtWix1ZumpKUJb32iTNe0ZiIBYhY0=";
|
||||
vendorHash = "sha256-DmSyEgEIJEMOOfOQxDZUGT81Iw6QO0gOhSkXSilL16g=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
fixup-yarn-lock
|
||||
@@ -70,7 +70,7 @@ buildGoModule rec {
|
||||
|
||||
yarnOfflineCache = fetchYarnDeps {
|
||||
yarnLock = "${src}/internal/web/ui/yarn.lock";
|
||||
hash = "sha256-309e799oSBtESmsbxvBWhAC8I717U032Xe/h09xQecA=";
|
||||
hash = "sha256-4vZr3mPvk5IXoqSPuqhzYobAuK2NDK0dceNZUIQILvI=";
|
||||
};
|
||||
|
||||
preBuild = ''
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "0.25.0";
|
||||
version = "0.26.0";
|
||||
in
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
@@ -32,7 +32,7 @@ rustPlatform.buildRustPackage {
|
||||
owner = "jj-vcs";
|
||||
repo = "jj";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-5J1ZfPNyniUK5D3Pt1aKuJ+/8vad3JPxCztBRY591N8=";
|
||||
hash = "sha256-jGy+0VDxQrgNhj+eX06FRhPP31V8QZVAM4j4yBosAGE=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
@@ -42,7 +42,7 @@ rustPlatform.buildRustPackage {
|
||||
./libgit2-1.9.0.patch
|
||||
];
|
||||
|
||||
cargoHash = "sha256-RiiIF9XFwXDgGSPvUMFOft4nH8PR1L3nZ+0s4QPobs8=";
|
||||
cargoHash = "sha256-CtyRekrbRwUvQq2HsFwNo46RCDEGwy9e4ZU8/TwGxSU=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
@@ -96,8 +96,8 @@ rustPlatform.buildRustPackage {
|
||||
jj = "${stdenv.hostPlatform.emulator buildPackages} $out/bin/jj";
|
||||
in
|
||||
lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) ''
|
||||
${jj} util mangen > ./jj.1
|
||||
installManPage ./jj.1
|
||||
mkdir -p $out/share/man
|
||||
${jj} util install-man-pages $out/share/man/
|
||||
|
||||
installShellCompletion --cmd jj \
|
||||
--bash <(COMPLETE=bash ${jj}) \
|
||||
|
||||
@@ -18,17 +18,17 @@ let
|
||||
in
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "lockbook-desktop";
|
||||
version = "0.9.17";
|
||||
version = "0.9.18";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lockbook";
|
||||
repo = "lockbook";
|
||||
tag = version;
|
||||
hash = "sha256-AwzescNVsHt1bJFX+TjHtIAxZGzbpGxxb2xSx0mAVQ8=";
|
||||
hash = "sha256-NHupo4YhkTI1RBts8p/0vaUeTxgvSJGF/igvlGbccw4=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-oWcGN3WtMCC9LPmVmljXQPQap9JskSTuUTV7XFYiOGI=";
|
||||
cargoHash = "sha256-AY4ZeCf31BOjjCMxwcHeyv8OwAAGbjKgAfYwIckYNXU=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
|
||||
@@ -7,17 +7,17 @@
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "lockbook";
|
||||
version = "0.9.17";
|
||||
version = "0.9.18";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lockbook";
|
||||
repo = "lockbook";
|
||||
tag = version;
|
||||
hash = "sha256-AwzescNVsHt1bJFX+TjHtIAxZGzbpGxxb2xSx0mAVQ8=";
|
||||
hash = "sha256-NHupo4YhkTI1RBts8p/0vaUeTxgvSJGF/igvlGbccw4=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-oWcGN3WtMCC9LPmVmljXQPQap9JskSTuUTV7XFYiOGI=";
|
||||
cargoHash = "sha256-AY4ZeCf31BOjjCMxwcHeyv8OwAAGbjKgAfYwIckYNXU=";
|
||||
|
||||
doCheck = false; # there are no cli tests
|
||||
cargoBuildFlags = [
|
||||
|
||||
-7602
File diff suppressed because it is too large
Load Diff
@@ -17,29 +17,25 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "matrix-authentication-service";
|
||||
version = "0.12.0";
|
||||
version = "0.13.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "element-hq";
|
||||
repo = "matrix-authentication-service";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-QLtyYxV2yXHJtwWgGcyi7gRcKypYoy9Z8bkEuTopVXc=";
|
||||
hash = "sha256-rFex6stw++xNrcCYnYn3N0HrUQd91DAw9QU0R2MUzyQ=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"sea-query-0.32.0-rc.1" = "sha256-Q/NFiIBu8L5rQj4jwcIo8ACmAhLBy4HSTcJv06UdK8E=";
|
||||
};
|
||||
};
|
||||
cargoHash = "sha256-0RqCgIiH7O4bAuzy1To0+8wfvZWnZ8irZNSCthaKqAk=";
|
||||
|
||||
npmDeps = fetchNpmDeps {
|
||||
name = "${pname}-${version}-npm-deps";
|
||||
src = "${src}/${npmRoot}";
|
||||
hash = "sha256-EfDxbdjzF0yLQlueIYKmdpU4v9dx7g8bltU63mIWfo0=";
|
||||
hash = "sha256-4tFE7za2bBOCtX0fSaLvvyD4UTGtvtJlgO30lHCv07Y=";
|
||||
};
|
||||
|
||||
npmRoot = "frontend";
|
||||
npmFlags = [ "--legacy-peer-deps" ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "mdds";
|
||||
version = "2.1.1";
|
||||
version = "3.0.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "mdds";
|
||||
repo = "mdds";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-a412LpgDiYM8TMToaUrTlHtblYS1HehzrDOwvIAAxiA=";
|
||||
hash = "sha256-XIfrbnjY3bpnbRBnE44dQNJm3lhL0Y1Mm0sayh3T2aY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook ];
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
{ python3Packages }: with python3Packages; toPythonApplication mike
|
||||
@@ -17,13 +17,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "mmsd-tng";
|
||||
version = "2.6.2";
|
||||
version = "2.6.3";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "kop316";
|
||||
repo = "mmsd";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-iusA5SXBulROBG6SmlYfw/FczLMnNeBb398+9cYx/A0=";
|
||||
hash = "sha256-kXl+T5A8Qw0PmJ47sned8dzTIYUmaWc8w6X6BLEdLIg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -14,13 +14,13 @@ assert
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "open-policy-agent";
|
||||
version = "0.70.0";
|
||||
version = "1.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "open-policy-agent";
|
||||
repo = "opa";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-7br0rxhVNH+lt+gWwFSuYCBmZMrejLatWJyVNcQ95NA=";
|
||||
hash = "sha256-D1OTFc74I9CCGQzzMygbDhalpvFrTexz+JOGdU2rIR0=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
@@ -59,7 +59,7 @@ buildGoModule rec {
|
||||
''
|
||||
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
# remove tests that have "too many open files"/"no space left on device" issues on darwin in hydra
|
||||
rm server/server_test.go
|
||||
rm v1/server/server_test.go
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
|
||||
@@ -2,29 +2,27 @@
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
php,
|
||||
testers,
|
||||
roave-backward-compatibility-check,
|
||||
versionCheckHook,
|
||||
}:
|
||||
|
||||
php.buildComposerProject2 (finalAttrs: {
|
||||
pname = "roave-backward-compatibility-check";
|
||||
version = "8.10.0";
|
||||
version = "8.13.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Roave";
|
||||
repo = "BackwardCompatibilityCheck";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-wOqF7FkwOnTxYe7OnAl8R7NyGkdJ37H0OIr5e/1Q03I=";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-bxjrk//n8HdHyYJpsW4qwgHptyeaNqCbiR3wWKJwPiM=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-Xd+SxqLbm5QCROwq4jDm4cWLxF2nraqA+xdrZxW3ILY=";
|
||||
vendorHash = "sha256-fhSByQzSwFrNCKr7KwJ7CYFt4zqbk4iW5JXK3iSVTnM=";
|
||||
|
||||
passthru = {
|
||||
tests.version = testers.testVersion {
|
||||
package = roave-backward-compatibility-check;
|
||||
version = finalAttrs.version;
|
||||
};
|
||||
};
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
];
|
||||
versionCheckProgramArg = [ "--version" ];
|
||||
doInstallCheck = true;
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/Roave/BackwardCompatibilityCheck/releases/tag/${finalAttrs.version}";
|
||||
|
||||
Generated
+1250
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,68 @@
|
||||
{
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
buildDotnetModule,
|
||||
dotnetCorePackages,
|
||||
jq,
|
||||
}:
|
||||
let
|
||||
pname = "rzls";
|
||||
dotnet-sdk =
|
||||
with dotnetCorePackages;
|
||||
sdk_9_0
|
||||
// {
|
||||
inherit (sdk_8_0)
|
||||
packages
|
||||
targetPackages
|
||||
;
|
||||
};
|
||||
dotnet-runtime = dotnetCorePackages.runtime_9_0;
|
||||
|
||||
in
|
||||
buildDotnetModule {
|
||||
inherit pname dotnet-sdk dotnet-runtime;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dotnet";
|
||||
repo = "razor";
|
||||
rev = "dd64bf78c16a7e8fa1900da060100e9338383dea";
|
||||
hash = "sha256-C5/Mc5HxxAVGLO6IPhyyBNLcjvjmF8sKg1KpIdN0/KQ=";
|
||||
};
|
||||
|
||||
version = "9.0.0-preview.25052.3";
|
||||
projectFile = "src/Razor/src/rzls/rzls.csproj";
|
||||
useDotnetFromEnv = true;
|
||||
nugetDeps = ./deps.json;
|
||||
|
||||
nativeBuildInputs = [ jq ];
|
||||
|
||||
postPatch = ''
|
||||
# Upstream uses rollForward = latestPatch, which pins to an *exact* .NET SDK version.
|
||||
jq '.sdk.rollForward = "latestMinor"' < global.json > global.json.tmp
|
||||
mv global.json.tmp global.json
|
||||
'';
|
||||
|
||||
dotnetFlags = [
|
||||
# this removes the Microsoft.WindowsDesktop.App.Ref dependency
|
||||
"-p:EnableWindowsTargeting=false"
|
||||
];
|
||||
|
||||
dotnetInstallFlags = [
|
||||
"-p:InformationalVersion=$version"
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = ./update.sh;
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/dotnet/razor";
|
||||
description = "Razor language server";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [
|
||||
bretek
|
||||
tris203
|
||||
];
|
||||
mainProgram = "rzls";
|
||||
};
|
||||
}
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#! /usr/bin/env nix-shell
|
||||
#! nix-shell -I nixpkgs=./. --pure -i bash -p curl cacert gnused jq common-updater-scripts dotnet-sdk_8 exiftool nix
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
cd "$(dirname "${BASH_SOURCE[0]}")"
|
||||
|
||||
old_rzls_version="$(sed -nE 's/\s*version = "(.*)".*/\1/p' ./package.nix)"
|
||||
apiUrl="https://feeds.dev.azure.com/azure-public/vside/_apis/packaging/Feeds/msft_consumption/packages/577084ea-e5be-4fad-951b-00d0b05fb170?api-version=7.2-preview.1"
|
||||
new_rzls_version="$(curl -s $apiUrl | jq -r '.versions[0].version')"
|
||||
|
||||
echo $old_rzls_version
|
||||
echo $new_rzls_version
|
||||
|
||||
if [[ "$new_rzls_version" == "$old_rzls_version" ]]; then
|
||||
echo "Already up to date!"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
buildDir=$(mktemp -d)
|
||||
|
||||
cat > $buildDir/Server.csproj <<EOF
|
||||
<Project Sdk="Microsoft.Build.NoTargets/1.0.80">
|
||||
<PropertyGroup>
|
||||
<RestorePackagesPath>out</RestorePackagesPath>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<DisableImplicitNuGetFallbackFolder>true</DisableImplicitNuGetFallbackFolder>
|
||||
<AutomaticallyUseReferenceAssemblyPackages>false</AutomaticallyUseReferenceAssemblyPackages>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<PackageDownload Include="rzls.linux-x64" version="[${new_rzls_version}]" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
EOF
|
||||
|
||||
dotnet restore -s "https://pkgs.dev.azure.com/azure-public/vside/_packaging/msft_consumption/nuget/v3/index.json" "$buildDir/Server.csproj"
|
||||
version_commit="$(exiftool -ProductVersion -s3 $buildDir/out/rzls.linux-x64/$new_rzls_version/content/LanguageServer/linux-x64/rzls.dll | grep -Po '(?<=\+).*')"
|
||||
|
||||
cd ../../../..
|
||||
update-source-version rzls "${new_rzls_version}" --rev=$version_commit
|
||||
|
||||
$(nix-build -A rzls.fetch-deps --no-out-link)
|
||||
@@ -6,11 +6,11 @@
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "signal-desktop";
|
||||
version = "7.40.0";
|
||||
version = "7.41.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://updates.signal.org/desktop/signal-desktop-mac-universal-${finalAttrs.version}.dmg";
|
||||
hash = "sha256-t1FyQes05NIUMrcrkC/Hcs7hHW5lcrgDbuSNV8up+ss=";
|
||||
hash = "sha256-0nolZgoTlmfsAUWUXITTa1FzBHyfHWTZRO2LjccdjNg=";
|
||||
};
|
||||
sourceRoot = ".";
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
callPackage ./generic.nix { } rec {
|
||||
pname = "signal-desktop";
|
||||
dir = "Signal";
|
||||
version = "7.40.0";
|
||||
version = "7.41.0";
|
||||
url = "https://updates.signal.org/desktop/apt/pool/s/signal-desktop/signal-desktop_${version}_amd64.deb";
|
||||
hash = "sha256-XwiLxbcOMTXa5okXi7hj7vZ+6meabLSEIZOJvCVBNyY=";
|
||||
hash = "sha256-au0a//9P0dNDZnh1LzuHhpimWAzKRj5oJmUHls5mSxU=";
|
||||
}
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "tootik";
|
||||
version = "0.15.1";
|
||||
version = "0.15.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dimkr";
|
||||
repo = "tootik";
|
||||
tag = version;
|
||||
hash = "sha256-uq0mDlJ5NPXw1fsNcoyTbqqpZsYDkX8OSdZ5ToO0rYQ=";
|
||||
hash = "sha256-vMCahLG03J3D7C+qSGE+h25GbTajUO1sisU+cO97L7E=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-p/pgoGzrukd4mzzoyLI9g6vL4k+lTnMZOha1KrYjHJ0=";
|
||||
|
||||
@@ -17,17 +17,17 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "uv";
|
||||
version = "0.5.27";
|
||||
version = "0.5.29";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "astral-sh";
|
||||
repo = "uv";
|
||||
tag = version;
|
||||
hash = "sha256-UqwXLAo99ZtvNNIfd5eO+IfdL2fksf0LTrRU2G1/j/8=";
|
||||
hash = "sha256-EWm1sjmDAmMQoGoRqgtFMlXwi8n/iCdahsoRERhhulc=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-TS823jBGtHNUZzeRJpir6G8F8Cgq7fuxw6pPk8RrE3o=";
|
||||
cargoHash = "sha256-gBygAspjCzZqDnjHH4J1WUsrIjpiB55Vr33qj1nv+FM=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
|
||||
@@ -11,11 +11,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "yabasic";
|
||||
version = "2.91.0";
|
||||
version = "2.91.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.yabasic.de/download/yabasic-${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-oPyuGzLT+fVUCBHE7d+j2GIC7SQW/w219WoJpg75X9c=";
|
||||
hash = "sha256-bZJbY4Cuycs5778XTGEhMKpv4y0HIYiJlaUPC9qdc2s=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
libXext,
|
||||
livekit-libwebrtc,
|
||||
testers,
|
||||
writableTmpDirAsHomeHook,
|
||||
|
||||
withGLES ? false,
|
||||
buildRemoteServer ? true,
|
||||
@@ -95,7 +96,7 @@ let
|
||||
in
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "zed-editor";
|
||||
version = "0.171.6";
|
||||
version = "0.172.8";
|
||||
|
||||
outputs = [ "out" ] ++ lib.optional buildRemoteServer "remote_server";
|
||||
|
||||
@@ -103,7 +104,7 @@ rustPlatform.buildRustPackage rec {
|
||||
owner = "zed-industries";
|
||||
repo = "zed";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-OQE/6bNGogcDpZOEUXq33E98/t1HKelTTX48X4wo2MI=";
|
||||
hash = "sha256-QHwMmngcUPBU+OE2/2+I4IaNvWCW25CxUtmYPzR6Tg8=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -123,7 +124,7 @@ rustPlatform.buildRustPackage rec {
|
||||
'';
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-lucQTqTc63a3HvqwWVosqxMzy4TgC+Mj77rFzVbwBR8=";
|
||||
cargoHash = "sha256-8+ylH8WmOLcT6nENQdtGPp5NG6NPoSBeV7XRX3CHIuw=";
|
||||
|
||||
nativeBuildInputs =
|
||||
[
|
||||
@@ -207,9 +208,9 @@ rustPlatform.buildRustPackage rec {
|
||||
wrapProgram $out/libexec/zed-editor --suffix PATH : ${lib.makeBinPath [ nodejs ]}
|
||||
'';
|
||||
|
||||
preCheck = ''
|
||||
export HOME=$(mktemp -d);
|
||||
'';
|
||||
nativeCheckInputs = [
|
||||
writableTmpDirAsHomeHook
|
||||
];
|
||||
|
||||
checkFlags =
|
||||
[
|
||||
|
||||
@@ -273,15 +273,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
passthru = {
|
||||
etcLayoutsFile = "lomiri/keymaps";
|
||||
tests = {
|
||||
inherit (nixosTests.lomiri)
|
||||
greeter
|
||||
desktop-basics
|
||||
desktop-appinteractions
|
||||
desktop-ayatana-indicators
|
||||
keymap
|
||||
;
|
||||
};
|
||||
tests = nixosTests.lomiri;
|
||||
updateScript = gitUpdater { };
|
||||
greeter = linkFarm "lomiri-greeter" [
|
||||
{
|
||||
|
||||
@@ -83,6 +83,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# 10s timeout for Mir startup is too tight for VM tests on weaker hardwre (aarch64)
|
||||
substituteInPlace src/platforms/mirserver/qmirserver_p.cpp \
|
||||
--replace-fail 'const int timeout = RUNNING_ON_VALGRIND ? 100 : 10' 'const int timeout = RUNNING_ON_VALGRIND ? 900 : 90' \
|
||||
--replace-fail 'const int timeout = 10' 'const int timeout = 90'
|
||||
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace-fail "\''${CMAKE_INSTALL_FULL_LIBDIR}/qt5/qml" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtQmlPrefix}" \
|
||||
--replace-fail "\''${CMAKE_INSTALL_FULL_LIBDIR}/qt5/plugins/platforms" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtPluginPrefix}/platforms" \
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ispc";
|
||||
version = "1.25.3";
|
||||
version = "1.26.0";
|
||||
|
||||
dontFixCmake = true; # https://github.com/NixOS/nixpkgs/pull/232522#issuecomment-2133803566
|
||||
|
||||
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-baTJNfhOSYfJJnrutkW06AIMXpVP3eBpEes0GSI1yGY=";
|
||||
sha256 = "sha256-PjETaRBrg3d86y6fguePTovq+3GaYw6eLqcY59+vIr8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
xarray,
|
||||
xarray-einstats,
|
||||
|
||||
# checks
|
||||
# tests
|
||||
bokeh,
|
||||
cloudpickle,
|
||||
emcee,
|
||||
@@ -33,6 +33,7 @@
|
||||
#, pystan (not packaged)
|
||||
pytestCheckHook,
|
||||
torchvision,
|
||||
writableTmpDirAsHomeHook,
|
||||
zarr,
|
||||
}:
|
||||
|
||||
@@ -79,14 +80,18 @@ buildPythonPackage rec {
|
||||
# pystan (not packaged)
|
||||
pytestCheckHook
|
||||
torchvision
|
||||
writableTmpDirAsHomeHook
|
||||
zarr
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
export HOME=$(mktemp -d);
|
||||
'';
|
||||
pytestFlagsArray = [
|
||||
"arviz/tests/base_tests/"
|
||||
|
||||
pytestFlagsArray = [ "arviz/tests/base_tests/" ];
|
||||
# AttributeError: module 'zarr.storage' has no attribute 'DirectoryStore'
|
||||
# https://github.com/arviz-devs/arviz/issues/2357
|
||||
"--deselect=arviz/tests/base_tests/test_data_zarr.py::TestDataZarr::test_io_function"
|
||||
"--deselect=arviz/tests/base_tests/test_data_zarr.py::TestDataZarr::test_io_method"
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
# Tests require network access
|
||||
@@ -94,6 +99,7 @@ buildPythonPackage rec {
|
||||
"test_plot_separation"
|
||||
"test_plot_trace_legend"
|
||||
"test_cov"
|
||||
|
||||
# countourpy is not available at the moment
|
||||
"test_plot_kde"
|
||||
"test_plot_kde_2d"
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
packaging,
|
||||
poetry-core,
|
||||
pydantic,
|
||||
requests,
|
||||
wrapt,
|
||||
}:
|
||||
|
||||
@@ -38,6 +39,7 @@ buildPythonPackage rec {
|
||||
idna
|
||||
packaging
|
||||
pydantic
|
||||
requests
|
||||
wrapt
|
||||
];
|
||||
|
||||
|
||||
@@ -2,59 +2,80 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
git,
|
||||
setuptools,
|
||||
importlib-metadata,
|
||||
importlib-resources,
|
||||
jinja2,
|
||||
mkdocs,
|
||||
pythonOlder,
|
||||
pyparsing,
|
||||
pyyaml,
|
||||
unittestCheckHook,
|
||||
pyyaml-env-tag,
|
||||
verspec,
|
||||
versionCheckHook,
|
||||
pytestCheckHook,
|
||||
git,
|
||||
shtab,
|
||||
stdenv,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mike";
|
||||
version = "unstable-2023-05-06";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
version = "2.1.3";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jimporter";
|
||||
repo = pname;
|
||||
rev = "300593c338b18f61f604d18457c351e166318020";
|
||||
hash = "sha256-Sjj2275IJDtLjG6uO9h4FbgxXTMgqD8c/rJj6iOxfuI=";
|
||||
repo = "mike";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-eGUkYcPTrXwsZPqyDgHJlEFXzhMnenoZsjeHVGO/9WU=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
build-system = [
|
||||
setuptools
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
importlib-metadata
|
||||
importlib-resources
|
||||
jinja2
|
||||
mkdocs
|
||||
pyparsing
|
||||
pyyaml
|
||||
pyyaml-env-tag
|
||||
verspec
|
||||
];
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
versionCheckProgramArg = "--version";
|
||||
doInstallCheck = true;
|
||||
|
||||
__darwinAllowLocalNetworking = true;
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
git
|
||||
unittestCheckHook
|
||||
mkdocs
|
||||
shtab
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
export PATH=$out/bin:$PATH
|
||||
'';
|
||||
|
||||
# Difficult to setup
|
||||
doCheck = false;
|
||||
preCheck =
|
||||
''
|
||||
export PATH=$out/bin:$PATH
|
||||
''
|
||||
# "stat" on darwin results in "not permitted" instead of "does not exists"
|
||||
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
substituteInPlace test/unit/test_git_utils.py \
|
||||
--replace-fail "/home/nonexist" "$(mktemp -d)"
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "mike" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Manage multiple versions of your MkDocs-powered documentation";
|
||||
mainProgram = "mike";
|
||||
meta = {
|
||||
description = "Manage multiple versions of your MkDocs-powered documentation via Git";
|
||||
homepage = "https://github.com/jimporter/mike";
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ ];
|
||||
changelog = "https://github.com/jimporter/mike/blob/v${version}/CHANGES.md";
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = with lib.maintainers; [ marcel ];
|
||||
mainProgram = "mike";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -120,6 +120,11 @@ buildPythonPackage rec {
|
||||
"${python.sitePackages}/numba/tests/test_usecases.py"
|
||||
];
|
||||
|
||||
disabledTests = lib.optionals (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) [
|
||||
# captured stderr: Fatal Python error: Segmentation fault
|
||||
"test_sum1d_pyobj"
|
||||
];
|
||||
|
||||
disabledTestPaths = lib.optionals (!testsWithoutSandbox) [
|
||||
# See NOTE near passthru.tests.withoutSandbox
|
||||
"${python.sitePackages}/numba/cuda/tests"
|
||||
|
||||
@@ -27,20 +27,21 @@
|
||||
google-cloud-logging,
|
||||
mock,
|
||||
optax,
|
||||
portpicker,
|
||||
pytest-xdist,
|
||||
pytestCheckHook,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "orbax-checkpoint";
|
||||
version = "0.11.0";
|
||||
version = "0.11.2";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "google";
|
||||
repo = "orbax";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-pVRXWJfiiqV2ZFM0CgXdwD6/lnRa1HFFPrfS5975mVA=";
|
||||
hash = "sha256-68mqz+4FJQr/mKR53L5CSenRB0SjV3dbBdtBylFW1y8=";
|
||||
};
|
||||
|
||||
sourceRoot = "${src.name}/checkpoint";
|
||||
@@ -68,6 +69,7 @@ buildPythonPackage rec {
|
||||
google-cloud-logging
|
||||
mock
|
||||
optax
|
||||
portpicker
|
||||
pytest-xdist
|
||||
pytestCheckHook
|
||||
];
|
||||
@@ -85,6 +87,12 @@ buildPythonPackage rec {
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
# E absl.flags._exceptions.DuplicateFlagError: The flag 'num_processes' is defined twice.
|
||||
# First from multiprocess_test, Second from orbax.checkpoint._src.testing.multiprocess_test.
|
||||
# Description from first occurrence: Number of processes to use.
|
||||
# https://github.com/google/orbax/issues/1580
|
||||
"orbax/checkpoint/experimental/emergency/"
|
||||
|
||||
# Circular dependency flax
|
||||
"orbax/checkpoint/_src/metadata/empty_values_test.py"
|
||||
"orbax/checkpoint/_src/metadata/tree_rich_types_test.py"
|
||||
|
||||
@@ -32,6 +32,10 @@ buildPythonPackage rec {
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
pythonRelaxDeps = [
|
||||
"portalocker"
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
grpcio
|
||||
grpcio-tools
|
||||
|
||||
+14
-13
@@ -1,22 +1,23 @@
|
||||
diff --git a/setup_onnxruntime.py b/setup_onnxruntime.py
|
||||
index cd698d1..c6e8a33 100644
|
||||
--- a/setup_onnxruntime.py
|
||||
+++ b/setup_onnxruntime.py
|
||||
diff --git i/setup_onnxruntime.py w/setup_onnxruntime.py
|
||||
index e9572e9..f5f3b32 100644
|
||||
--- i/setup_onnxruntime.py
|
||||
+++ w/setup_onnxruntime.py
|
||||
@@ -6,7 +6,6 @@ from pathlib import Path
|
||||
from typing import List, Union
|
||||
|
||||
|
||||
import setuptools
|
||||
-from get_pypi_latest_version import GetPyPiLatestVersion
|
||||
|
||||
|
||||
|
||||
|
||||
def read_txt(txt_path: Union[Path, str]) -> List[str]:
|
||||
@@ -26,16 +25,7 @@ def get_readme():
|
||||
|
||||
@@ -25,17 +24,7 @@ def get_readme():
|
||||
|
||||
|
||||
MODULE_NAME = "rapidocr_onnxruntime"
|
||||
|
||||
-
|
||||
-obtainer = GetPyPiLatestVersion()
|
||||
-latest_version = obtainer(MODULE_NAME)
|
||||
-VERSION_NUM = obtainer.version_add_one(latest_version)
|
||||
-VERSION_NUM = obtainer.version_add_one(latest_version, add_patch=True)
|
||||
-
|
||||
-if len(sys.argv) > 2:
|
||||
- match_str = " ".join(sys.argv[2:])
|
||||
@@ -25,6 +26,6 @@ index cd698d1..c6e8a33 100644
|
||||
- VERSION_NUM = matched_versions
|
||||
-sys.argv = sys.argv[:2]
|
||||
+VERSION_NUM = "@version@"
|
||||
|
||||
|
||||
project_urls = {
|
||||
"Documentation": "https://rapidai.github.io/RapidOCRDocs/docs/install_usage/rapidocr/usage/",
|
||||
"Documentation": "https://rapidai.github.io/RapidOCRDocs",
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
poetry-core,
|
||||
defusedxml,
|
||||
requests,
|
||||
mock,
|
||||
httpretty,
|
||||
@@ -12,18 +14,27 @@
|
||||
buildPythonPackage rec {
|
||||
pname = "youtube-transcript-api";
|
||||
version = "0.6.3";
|
||||
format = "setuptools";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jdepoix";
|
||||
repo = pname;
|
||||
repo = "youtube-transcript-api";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-ZoF9BOQLrq2GVCZ98I8C9qouUhwZKEPp0zlTAqyEoYk=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ requests ];
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
pythonRelaxDeps = [
|
||||
"defusedxml"
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
defusedxml
|
||||
requests
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
mock
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "apko";
|
||||
version = "0.22.6";
|
||||
version = "0.24.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "chainguard-dev";
|
||||
repo = pname;
|
||||
tag = "v${version}";
|
||||
hash = "sha256-vk8/GOWhYbqH6yOyOSVghRQjGQrXxL/QoT0PZSedl2Q=";
|
||||
hash = "sha256-yY2wQ4UhW95bpLxtNIsn2A1sANh6zSWv8iCqmU64fAg=";
|
||||
# populate values that require us to use git. By doing this in postFetch we
|
||||
# can delete .git afterwards and maintain better reproducibility of the src.
|
||||
leaveDotGit = true;
|
||||
@@ -25,7 +25,7 @@ buildGoModule rec {
|
||||
find "$out" -name .git -print0 | xargs -0 rm -rf
|
||||
'';
|
||||
};
|
||||
vendorHash = "sha256-wjbX8kQlp+akUB8XN3p0mGvydCMbGe2lQgwFMXXpaQI=";
|
||||
vendorHash = "sha256-J+7IPAu5FMm/yVnz9j5befnD+B8s6a2E9+HP/oIcFPM=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user