Merge staging-next-24.05 into staging-24.05

This commit is contained in:
github-actions[bot] 2024-06-08 00:15:58 +00:00 committed by GitHub
commit 074ea4eeac
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
31 changed files with 466 additions and 82 deletions

View File

@ -22,6 +22,7 @@ in {
libusermetrics
lomiri
lomiri-download-manager
lomiri-filemanager-app
lomiri-schemas # exposes some required dbus interfaces
lomiri-session # wrappers to properly launch the session
lomiri-sounds
@ -36,6 +37,10 @@ in {
suru-icon-theme
# telephony-service # currently broken: https://github.com/NixOS/nixpkgs/pull/314043
]);
variables = {
# To override the keyboard layouts in Lomiri
NIXOS_XKB_LAYOUTS = config.services.xserver.xkb.layout;
};
};
hardware.pulseaudio.enable = lib.mkDefault true;

View File

@ -202,7 +202,7 @@ in
startAt = cfg.interval;
serviceConfig = {
Type = "oneshot";
ExecStart = ''${lib.getExe pkgs.inadyn} -f ${configFile} --cache-dir ''${CACHE_DIRECTORY}/inadyn -1 --foreground -l ${cfg.logLevel}'';
ExecStart = ''${lib.getExe pkgs.inadyn} -f ${configFile} --cache-dir ''${CACHE_DIRECTORY} -1 --foreground -l ${cfg.logLevel}'';
LoadCredential = "config:${configFile}";
CacheDirectory = "inadyn";

View File

@ -516,6 +516,7 @@ in {
lxd-image-server = handleTest ./lxd-image-server.nix {};
#logstash = handleTest ./logstash.nix {};
lomiri = handleTest ./lomiri.nix {};
lomiri-filemanager-app = runTest ./lomiri-filemanager-app.nix;
lomiri-system-settings = handleTest ./lomiri-system-settings.nix {};
lorri = handleTest ./lorri/default.nix {};
maddy = discoverTests (import ./maddy { inherit handleTest; });

View File

@ -0,0 +1,48 @@
{ pkgs, lib, ... }:
{
name = "lomiri-filemanager-app-standalone";
meta.maintainers = lib.teams.lomiri.members;
nodes.machine =
{ config, pkgs, ... }:
{
imports = [ ./common/x11.nix ];
services.xserver.enable = true;
environment = {
systemPackages = with pkgs.lomiri; [
suru-icon-theme
lomiri-filemanager-app
];
variables = {
UITK_ICON_THEME = "suru";
};
};
i18n.supportedLocales = [ "all" ];
fonts.packages = with pkgs; [
# Intended font & helps with OCR
ubuntu_font_family
];
};
enableOCR = true;
testScript = ''
machine.wait_for_x()
with subtest("lomiri filemanager launches"):
machine.execute("lomiri-filemanager-app >&2 &")
machine.wait_for_text(r"(filemanager.ubports|alice|items|directories|files|folder)")
machine.screenshot("lomiri-filemanager_open")
machine.succeed("pkill -f lomiri-filemanager-app")
with subtest("lomiri filemanager localisation works"):
machine.execute("env LANG=de_DE.UTF-8 lomiri-filemanager-app >&2 &")
machine.wait_for_text(r"(Elemente|Verzeichnisse|Dateien|Ordner)")
machine.screenshot("lomiri-filemanager_localised")
'';
}

View File

@ -268,7 +268,7 @@ in {
machine.screenshot("settings_content-hub_peers")
# Select Morph as content source
mouse_click(300, 100)
mouse_click(370, 100)
# Expect Morph to be brought into the foreground, with its Downloads page open
machine.wait_for_text("No downloads")

View File

@ -63,14 +63,14 @@ let
in
stdenv.mkDerivation rec {
pname = "telegram-desktop";
version = "5.1.2";
version = "5.1.5";
src = fetchFromGitHub {
owner = "telegramdesktop";
repo = "tdesktop";
rev = "v${version}";
fetchSubmodules = true;
hash = "sha256-KTgID7pd0QSFi5t9cdIVEi4/oQirDgsf7tTcEEtRdY0=";
hash = "sha256-dlPt87SKP17v9QFiRZSSUtSLVGTGbeo05G/p05l2zVc=";
};
patches = [

View File

@ -1,4 +1,4 @@
{ mkDerivation, lib, fetchFromGitHub, fetchpatch, cmake, pkg-config
{ mkDerivation, lib, fetchFromGitHub, cmake, pkg-config
, qtbase, qtmultimedia, qtsvg, qttools, krdc
, libvncserver, libvirt, pcre, pixman, qtermwidget, spice-gtk, spice-protocol
, libselinux, libsepol, util-linux
@ -6,13 +6,13 @@
mkDerivation rec {
pname = "virt-manager-qt";
version = "0.72.97";
version = "0.72.99";
src = fetchFromGitHub {
owner = "F1ash";
repo = "qt-virt-manager";
rev = version;
sha256 = "0b2bx7ah35glcsiv186sc9cqdrkhg1vs9jz036k9byk61np0cb1i";
hash = "sha256-1aXlGlK+YPOe2X51xycWvSu8YC9uCywyL6ItiScFA04=";
};
cmakeFlags = [
@ -20,14 +20,6 @@ mkDerivation rec {
"-DQTERMWIDGET_INCLUDE_DIRS=${qtermwidget}/include/qtermwidget5"
];
patches = [
(fetchpatch {
# drop with next update
url = "https://github.com/F1ash/qt-virt-manager/commit/0d338b037ef58c376d468c1cd4521a34ea181edd.patch";
sha256 = "1wjqyc5wsnxfwwjzgqjr9hcqhd867amwhjd712qyvpvz8x7p2s24";
})
];
buildInputs = [
qtbase qtmultimedia qtsvg krdc
libvirt libvncserver pcre pixman qtermwidget spice-gtk spice-protocol

View File

@ -5,6 +5,7 @@
, coreutils
, getopt
, modDirVersion ? ""
, forPlatform ? stdenv.buildPlatform
}:
substituteAll {
@ -17,8 +18,8 @@ substituteAll {
inherit coreutils getopt;
uSystem = if stdenv.buildPlatform.uname.system != null then stdenv.buildPlatform.uname.system else "unknown";
inherit (stdenv.buildPlatform.uname) processor;
uSystem = if forPlatform.uname.system != null then forPlatform.uname.system else "unknown";
inherit (forPlatform.uname) processor;
# uname -o
# maybe add to lib/systems/default.nix uname attrset
@ -26,9 +27,9 @@ substituteAll {
# https://stackoverflow.com/questions/61711186/where-does-host-operating-system-in-uname-c-comes-from
# https://github.com/coreutils/gnulib/blob/master/m4/host-os.m4
operatingSystem =
if stdenv.buildPlatform.isLinux
if forPlatform.isLinux
then "GNU/Linux"
else if stdenv.buildPlatform.isDarwin
else if forPlatform.isDarwin
then "Darwin" # darwin isn't in host-os.m4 so where does this come from?
else "unknown";
@ -42,11 +43,12 @@ substituteAll {
mainProgram = "uname";
longDescription = ''
This package provides a replacement for `uname` whose output depends only
on `stdenv.buildPlatform`. It is meant to be used from within derivations.
Many packages' build processes run `uname` at compile time and embed its
output into the result of the build. Since `uname` calls into the kernel,
and the Nix sandbox currently does not intercept these calls, builds made
on different kernels will produce different results.
on `stdenv.buildPlatform`, or a configurable `forPlatform`. It is meant
to be used from within derivations. Many packages' build processes run
`uname` at compile time and embed its output into the result of the build.
Since `uname` calls into the kernel, and the Nix sandbox currently does
not intercept these calls, builds made on different kernels will produce
different results.
'';
license = [ licenses.mit ];
maintainers = with maintainers; [ artturin ];

View File

@ -0,0 +1,82 @@
{
lib,
stdenvNoCC,
fetchzip,
writeShellApplication,
curl,
gawk,
xmlstarlet,
common-updater-scripts,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "rewind-ai";
# Example version with explanation
# 1.5284 (Base version)
# 15284.1 (build number)
# dcd0176 (commit hash)
# 20240504 (pub date)
version = "1.5284-15284.1-dcd0176-20240504";
src = fetchzip {
url =
let
buildNumber = lib.elemAt (lib.splitString "-" finalAttrs.version) 1;
commitHash = lib.elemAt (lib.splitString "-" finalAttrs.version) 2;
in
"https://updates.rewind.ai/builds/main/b${buildNumber}-main-${commitHash}.zip";
hash = "sha256-Y7iAYHH/msZoXFzAZHJb6YoDz5fwMPHJx1kg7TqP5Gw=";
};
installPhase = ''
runHook preInstall
mkdir -p "$out/Applications/Rewind.app"
cp -R . "$out/Applications/Rewind.app"
runHook postInstall
'';
# Example response to use when modifing the script: https://pastebin.com/raw/90qU3n6H
# There is a real harsh limit on update checks, so DO NOT send any unnecessary update checks
# Wait at least 3 days since the last pub_date (you will find the date at the end of the version number)
# Example: 20240504 would be 2024/05/04, and that would mean that we want to check no earlier than on 2024/05/07 for any updates
passthru.updateScript = lib.getExe (writeShellApplication {
name = "${finalAttrs.pname}-update-script";
runtimeInputs = [
curl
gawk
xmlstarlet
common-updater-scripts
];
text = ''
xml_get () {
echo "$update_xml" | xmlstarlet sel -t -v "$1"
}
update_url="https://updates.rewind.ai/appcasts/main.xml"
update_xml=$(curl -s "$update_url")
version_base=$(xml_get "/rss/channel/item/sparkle:shortVersionString")
url=$(xml_get "/rss/channel/item/enclosure/@url")
pub_date=$(xml_get "/rss/channel/item/pubDate")
commit_id=$(echo "$url" | awk -F '-|\\.' '{ print $(NF - 1) }')
build_number=$(xml_get "/rss/channel/item/sparkle:version")
formatted_pub_date=$(date -d "$pub_date" +"%Y%m%d")
full_version="''${version_base}-''${build_number}-''${commit_id}-''${formatted_pub_date}"
update-source-version "rewind-ai" "$full_version" --version-key=version --file=./pkgs/by-name/re/rewind-ai/package.nix --print-changes
'';
});
meta = {
changelog = "https://www.rewind.ai/changelog";
description = "Rewind is a personalized AI powered by everything you've seen, said, or heard";
homepage = "https://www.rewind.ai/";
license = lib.licenses.unfree;
maintainers = with lib.maintainers; [ donteatoreo ];
platforms = [ "aarch64-darwin" ];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
};
})

View File

@ -0,0 +1,142 @@
{
stdenv,
lib,
fetchFromGitLab,
fetchpatch,
gitUpdater,
nixosTests,
biometryd,
cmake,
content-hub,
gettext,
lomiri-thumbnailer,
lomiri-ui-extras,
lomiri-ui-toolkit,
pkg-config,
python3,
qtbase,
qtdeclarative,
samba,
wrapQtAppsHook,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "lomiri-filemanager-app";
version = "1.0.4";
src = fetchFromGitLab {
owner = "ubports";
repo = "development/apps/lomiri-filemanager-app";
rev = "v${finalAttrs.version}";
hash = "sha256-vjGCTfXoqul1S7KUJXG6JwgZOc2etXWsdKbyQ/V3abA=";
};
patches = [
# This sets the *wrong* domain, but at least it sets *some* domain.
# Remove when version > 1.0.4
(fetchpatch {
name = "0001-lomiri-filemanager-app-Set-a-gettext-domain.patch";
url = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/commit/b310434d2c25a3b446d3d975f3755eb473a833e8.patch";
hash = "sha256-gzFFzZCIxedMGW4fp6sonnHj/HmwqdqU5fvGhXUsSOI=";
})
# Set the *correct* domain.
# Remove when version > 1.0.4
(fetchpatch {
name = "0002-lomiri-filemanager-app-Fix-gettext-domain.patch";
url = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/commit/2bb19aeef2baba8d12df1e4976becc08d7cf341d.patch";
hash = "sha256-wreOMMvBjf316N/XJv3VfI5f5N/VFiEraeadtgRStjA=";
})
# Bind domain to locale dir
# Remove when https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/merge_requests/112 merged & in release
(fetchpatch {
name = "0003-lomiri-filemanager-app-Call-i18n.bindtextdomain.patch";
url = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/commit/ac0ab681c52c691d464cf94707b013b39675ad2d.patch";
hash = "sha256-mwpcHwMT2FcNC6KIZNuSWU/bA8XP8rEQKHn7t5m6npM=";
})
# Stop using deprecated qt5_use_modules
# Remove when https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/merge_requests/113 merged & in release
(fetchpatch {
name = "0004-lomiri-filemanager-app-Stop-using-qt5_use_modules.patch";
url = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/commit/c2bfe927b16e660bf4730371b1e61e442e034780.patch";
hash = "sha256-wPOZP2FOaacEGj4SMS5Q/TO+/L11Qz7NTux4kA86Bcs=";
})
# Use pkg-config for smbclient flags
# Remove when https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/merge_requests/115 merged & in release
(fetchpatch {
name = "0005-lomiri-filemanager-app-Get-smbclient-flags-via-pkg-config.patch";
url = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/commit/aa791da5999719724e0b0592765e8fa2962305c6.patch";
hash = "sha256-fFAYKBR28ym/n7fhP9O6VE2owarLxK8cN9QeExHFbtU=";
})
];
postPatch = ''
# Use correct QML install path, don't pull in autopilot test code (we can't run that system)
# Remove absolute paths from desktop file, https://github.com/NixOS/nixpkgs/issues/308324
substituteInPlace CMakeLists.txt \
--replace-fail 'qmake -query QT_INSTALL_QML' 'echo ${placeholder "out"}/${qtbase.qtQmlPrefix}' \
--replace-fail 'add_subdirectory(tests)' '#add_subdirectory(tests)' \
--replace-fail 'ICON ''${CMAKE_INSTALL_PREFIX}/''${DATA_DIR}/''${ICON_FILE}' 'ICON lomiri-filemanager-app' \
--replace-fail 'SPLASH ''${CMAKE_INSTALL_PREFIX}/''${DATA_DIR}/''${SPLASH_FILE}' 'SPLASH lomiri-app-launch/splash/lomiri-filemanager-app.svg'
# In case this ever gets run, at least point it to a correct-ish path
substituteInPlace tests/autopilot/CMakeLists.txt \
--replace-fail 'python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())"' 'echo "${placeholder "out"}/${python3.sitePackages}/lomiri_filemanager_app"'
'';
strictDeps = true;
nativeBuildInputs = [
cmake
gettext
pkg-config
wrapQtAppsHook
];
buildInputs = [
qtbase
qtdeclarative
samba
# QML
biometryd
content-hub
lomiri-thumbnailer
lomiri-ui-extras
lomiri-ui-toolkit
];
cmakeFlags = [
(lib.cmakeBool "INSTALL_TESTS" false)
(lib.cmakeBool "CLICK_MODE" false)
];
# No tests we can actually run (just autopilot)
doCheck = false;
postInstall = ''
# Some misc files don't get installed to the correct paths for us
mkdir -p $out/share/{content-hub/peers,icons/hicolor/scalable/apps,lomiri-app-launch/splash}
ln -s $out/share/lomiri-filemanager-app/content-hub.json $out/share/content-hub/peers/lomiri-filemanager-app
ln -s $out/share/lomiri-filemanager-app/filemanager.svg $out/share/icons/hicolor/scalable/apps/lomiri-filemanager-app.svg
ln -s $out/share/lomiri-filemanager-app/splash.svg $out/share/lomiri-app-launch/splash/lomiri-filemanager-app.svg
'';
passthru = {
tests.vm = nixosTests.lomiri-filemanager-app;
updateScript = gitUpdater { rev-prefix = "v"; };
};
meta = {
description = "File Manager application for Ubuntu Touch devices";
homepage = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app";
changelog = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/blob/v${finalAttrs.version}/ChangeLog";
license = lib.licenses.gpl3Only;
mainProgram = "lomiri-filemanager-app";
maintainers = lib.teams.lomiri.members;
platforms = lib.platforms.linux;
};
})

View File

@ -0,0 +1,29 @@
From 640cab41986fac83742af39dd19877041a2ab8dc Mon Sep 17 00:00:00 2001
From: OPNA2608 <opna2608@protonmail.com>
Date: Sat, 1 Jun 2024 00:22:27 +0200
Subject: [PATCH] Check NIXOS_XKB_LAYOUTS for layouts before falling back to
"us"
---
plugins/AccountsService/AccountsService.cpp | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/plugins/AccountsService/AccountsService.cpp b/plugins/AccountsService/AccountsService.cpp
index bcf18246c..f4a7dfaa1 100644
--- a/plugins/AccountsService/AccountsService.cpp
+++ b/plugins/AccountsService/AccountsService.cpp
@@ -295,6 +295,11 @@ QStringList AccountsService::keymaps() const
return simplifiedMaps;
}
+ char* fallbackNixosLayouts = getenv("NIXOS_XKB_LAYOUTS");
+ if (fallbackNixosLayouts != NULL && fallbackNixosLayouts[0] != '\0') {
+ return QString(fallbackNixosLayouts).split(QLatin1Char(','), Qt::SkipEmptyParts);
+ }
+
return {QStringLiteral("us")};
}
--
2.42.0

View File

@ -117,6 +117,7 @@ stdenv.mkDerivation (finalAttrs: {
})
./9901-lomiri-Disable-Wizard.patch
./9902-lomiri-Check-NIXOS_XKB_LAYOUTS.patch
];
postPatch = ''

View File

@ -9,6 +9,7 @@ let
in {
#### Core Apps
lomiri = callPackage ./applications/lomiri { };
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 { };

View File

@ -0,0 +1,59 @@
From e4fe87427f24aa9b506c15c0f73f298e8909aabe Mon Sep 17 00:00:00 2001
From: OPNA2608 <opna2608@protonmail.com>
Date: Fri, 31 May 2024 21:31:46 +0200
Subject: [PATCH] Inject current-system PATH
---
liblomiri-app-launch/jobs-systemd.cpp | 16 ++++++++++++++++
liblomiri-app-launch/jobs-systemd.h | 1 +
2 files changed, 17 insertions(+)
diff --git a/liblomiri-app-launch/jobs-systemd.cpp b/liblomiri-app-launch/jobs-systemd.cpp
index e9be801..246bea8 100644
--- a/liblomiri-app-launch/jobs-systemd.cpp
+++ b/liblomiri-app-launch/jobs-systemd.cpp
@@ -574,6 +574,20 @@ void SystemD::copyEnvByPrefix(const std::string& prefix, std::list<std::pair<std
}
}
+/* We don't have a normal PATH, so we need to inject our special one as a fallback & propagate it */
+void SystemD::setupNixosPath(std::list<std::pair<std::string, std::string>>& env)
+{
+ std::string newPath { "/run/current-system/sw/bin" };
+ char* oldPath = getenv("PATH");
+ if (oldPath != NULL && oldPath[0] != '\0')
+ {
+ newPath.insert(0, 1, ':');
+ newPath.insert(0, oldPath);
+ }
+ setenv("PATH", newPath.c_str(), true);
+ copyEnv("PATH", env);
+}
+
std::shared_ptr<Application::Instance> SystemD::launch(
const AppID& appId,
const std::string& job,
@@ -625,6 +639,8 @@ std::shared_ptr<Application::Instance> SystemD::launch(
copyEnv("DISPLAY", env);
+ setupNixosPath(env);
+
for (const auto& prefix : {"DBUS_", "MIR_", "LOMIRI_APP_LAUNCH_"})
{
copyEnvByPrefix(prefix, env);
diff --git a/liblomiri-app-launch/jobs-systemd.h b/liblomiri-app-launch/jobs-systemd.h
index fe35932..19bf44e 100644
--- a/liblomiri-app-launch/jobs-systemd.h
+++ b/liblomiri-app-launch/jobs-systemd.h
@@ -136,6 +136,7 @@ private:
static void copyEnv(const std::string& envname, std::list<std::pair<std::string, std::string>>& env);
static void copyEnvByPrefix(const std::string& prefix, std::list<std::pair<std::string, std::string>>& env);
static int envSize(std::list<std::pair<std::string, std::string>>& env);
+ static void setupNixosPath(std::list<std::pair<std::string, std::string>>& env);
static std::vector<std::string> parseExec(std::list<std::pair<std::string, std::string>>& env);
static void application_start_cb(GObject* obj, GAsyncResult* res, gpointer user_data);
--
2.42.0

View File

@ -48,12 +48,15 @@ stdenv.mkDerivation (finalAttrs: {
};
patches = [
# Remove when https://gitlab.com/ubports/development/core/lomiri-app-launch/-/merge_requests/57 merged & in release
# Remove when version > 0.1.9
(fetchpatch {
name = "0001-lomiri-app-launch-Fix-typelib-gir-dependency.patch";
url = "https://gitlab.com/ubports/development/core/lomiri-app-launch/-/commit/0419b2592284f43ee5e76060948ea3d5f1c991fd.patch";
url = "https://gitlab.com/ubports/development/core/lomiri-app-launch/-/commit/8466e77914e73801499df224fcd4a53c4a0eab25.patch";
hash = "sha256-11pEhFi39Cvqb9Hg47kT8+5hq+bz6WmySqaIdwt1MVk=";
})
# Use /run/current-system/sw/bin fallback for desktop file Exec= lookups, propagate to launched applications
./2001-Inject-current-system-PATH.patch
];
postPatch = ''
@ -61,10 +64,10 @@ stdenv.mkDerivation (finalAttrs: {
# used pkg_get_variable, cannot replace prefix
substituteInPlace data/CMakeLists.txt \
--replace 'pkg_get_variable(SYSTEMD_USER_UNIT_DIR systemd systemduserunitdir)' 'set(SYSTEMD_USER_UNIT_DIR "''${CMAKE_INSTALL_PREFIX}/lib/systemd/user")'
--replace-fail 'pkg_get_variable(SYSTEMD_USER_UNIT_DIR systemd systemduserunitdir)' 'pkg_get_variable(SYSTEMD_USER_UNIT_DIR systemd systemduserunitdir DEFINE_VARIABLES prefix=''${CMAKE_INSTALL_PREFIX})'
substituteInPlace tests/jobs-systemd.cpp \
--replace '^(/usr)?' '^(/nix/store/\\w+-bash-.+)?'
--replace-fail '^(/usr)?' '^(/nix/store/\\w+-bash-.+)?'
'';
strictDeps = true;
@ -136,13 +139,13 @@ stdenv.mkDerivation (finalAttrs: {
updateScript = gitUpdater { };
};
meta = with lib; {
meta = {
description = "System and associated utilities to launch applications in a standard and confined way";
homepage = "https://gitlab.com/ubports/development/core/lomiri-app-launch";
changelog = "https://gitlab.com/ubports/development/core/lomiri-app-launch/-/blob/${finalAttrs.version}/ChangeLog";
license = licenses.gpl3Only;
maintainers = teams.lomiri.members;
platforms = platforms.linux;
license = lib.licenses.gpl3Only;
maintainers = lib.teams.lomiri.members;
platforms = lib.platforms.linux;
pkgConfigModules = [
"lomiri-app-launch-0"
];

View File

@ -47,11 +47,11 @@ stdenv.mkDerivation (finalAttrs: {
];
patches = [
# Remove when https://gitlab.com/ubports/development/core/content-hub/-/merge_requests/33 merged & in release
# Remove when version > 1.1.1
(fetchpatch {
name = "0001-content-hub-Migrate-to-GetConnectionCredentials.patch";
url = "https://gitlab.com/ubports/development/core/content-hub/-/commit/9c0eae42d856b4b6e24fa609ade0e674c7a84cfe.patch";
hash = "sha256-IWoCQKSCCk26n7133oG0Ht+iEjavn/IiOVUM+tCLX2U=";
url = "https://gitlab.com/ubports/development/core/content-hub/-/commit/9ec9df32f77383eec7994d8e3e6961531bc8464d.patch";
hash = "sha256-14dZosMTMa1FDGEMuil0r1Hz6vn+L9XC83NMAqC7Ol8=";
})
# Remove when https://gitlab.com/ubports/development/core/content-hub/-/merge_requests/34 merged & in release
@ -61,7 +61,7 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-T+6T9lXne6AhDFv9d7L8JNwdl8f0wjDmvSoNVPkHza4=";
})
# Remove when https://gitlab.com/ubports/development/core/content-hub/-/merge_requests/35 merged & in release
# Remove when version > 1.1.1
# fetchpatch2 due to renames, https://github.com/NixOS/nixpkgs/issues/32084
(fetchpatch2 {
name = "0003-content-hub-Add-more-better-GNUInstallDirs-variables-usage.patch";
@ -69,16 +69,18 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-kYN0eLwMyM/9yK+zboyEsoPKZMZ4SCXodVYsvkQr2F8=";
})
# Remove when https://gitlab.com/ubports/development/core/content-hub/-/merge_requests/37 merged & in release
# Remove when version > 1.1.1
(fetchpatch {
name = "0004-content-hub-Fix-generation-of-transfer_files.patch";
url = "https://gitlab.com/ubports/development/core/content-hub/-/commit/7ab3a4421356f83515f0deffb5f97a5b38601c13.patch";
hash = "sha256-MJZm3ny5t0/GX0bd5hGQbPM2k7M4KUvKqce/0cYYgvM=";
name = "0004-content-hub-Fix-generation-of-transfer_files-and-moc_test_harness.patch";
url = "https://gitlab.com/ubports/development/core/content-hub/-/commit/68899c75e77e1f34176b8a550d52794413e5070f.patch";
hash = "sha256-HAxePnzY/cL2c+o+Aw2N1pdr8rsbHGmRsH2EQkrBcHg=";
})
# Remove when https://gitlab.com/ubports/development/core/lomiri-content-hub/-/merge_requests/40 merged & in release
(fetchpatch {
name = "0005-content-hub-Fix-generation-of-moc_test_harness.patch";
url = "https://gitlab.com/ubports/development/core/content-hub/-/commit/6e30f4f10ef90e817ca01d32959b6c782de48955.patch";
hash = "sha256-TAbYn265RpHpulaRVaHy9XqNF+qoDE7YQIfFMPfqEhw=";
name = "0006-content-hub-Fix-AppArmor-less-transfer.patch";
url = "https://gitlab.com/ubports/development/core/content-hub/-/commit/b58e5c8babf00ad7c402555c96254ce0165adb9e.patch";
hash = "sha256-a7x/0NiUBmmFlq96jkHyLCL0f5NIFh5JR/H+FQ/2GqI=";
})
];
@ -175,7 +177,7 @@ stdenv.mkDerivation (finalAttrs: {
updateScript = gitUpdater { };
};
meta = with lib; {
meta = {
description = "Content sharing/picking service";
longDescription = ''
content-hub is a mediation service to let applications share content between them,
@ -183,10 +185,10 @@ stdenv.mkDerivation (finalAttrs: {
'';
homepage = "https://gitlab.com/ubports/development/core/content-hub";
changelog = "https://gitlab.com/ubports/development/core/content-hub/-/blob/${finalAttrs.version}/ChangeLog";
license = with licenses; [ gpl3Only lgpl3Only ];
license = with lib.licenses; [ gpl3Only lgpl3Only ];
mainProgram = "content-hub-service";
maintainers = teams.lomiri.members;
platforms = platforms.linux;
maintainers = lib.teams.lomiri.members;
platforms = lib.platforms.linux;
pkgConfigModules = [
"libcontent-hub"
"libcontent-hub-glib"

View File

@ -75,6 +75,11 @@ let
libfm-qt = libfm-qt_1_4;
inherit (pkgs.libsForQt5) qtbase qtsvg qttools libdbusmenu;
};
qtermwidget_1_4 = callPackage ./qtermwidget {
version = "1.4.0";
lxqt-build-tools = lxqt-build-tools_0_13;
inherit (pkgs.libsForQt5) qtbase qttools;
};
preRequisitePackages = [
kdePackages.kwindowsystem # provides some QT plugins needed by lxqt-panel

View File

@ -7,17 +7,21 @@
, lxqt-build-tools
, wrapQtAppsHook
, gitUpdater
, version ? "2.0.0"
}:
stdenv.mkDerivation rec {
pname = "qtermwidget";
version = "2.0.0";
inherit version;
src = fetchFromGitHub {
owner = "lxqt";
repo = pname;
rev = version;
hash = "sha256-kZS6D/wSJFRt/+Afq0zCCmNnJPpFT+1hd4zVPc+rJsE=";
hash = {
"1.4.0" = "sha256-wYUOqAiBjnupX1ITbFMw7sAk42V37yDz9SrjVhE4FgU=";
"2.0.0" = "sha256-kZS6D/wSJFRt/+Afq0zCCmNnJPpFT+1hd4zVPc+rJsE=";
}."${version}";
};
nativeBuildInputs = [

View File

@ -47,11 +47,11 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "go";
version = "1.21.10";
version = "1.21.11";
src = fetchurl {
url = "https://go.dev/dl/go${finalAttrs.version}.src.tar.gz";
hash = "sha256-kA4K/okAwe5lqKjE8MWjygLc+FwdHLE6ZSviLCE5k5Q=";
hash = "sha256-Qq7pvytpVsdaetaqPwpRtYIf/qxX9aLnM6LW6uHm2dI=";
};
strictDeps = true;

View File

@ -1,17 +1,9 @@
{ callPackage, fetchpatch, ... }@_args:
{ callPackage, ... }@_args:
let
base = callPackage ./generic.nix ((removeAttrs _args [ "fetchpatch" ]) // {
version = "8.1.28";
hash = "sha256-i+RQCW4BU8R9dThOfdWVzIl/HVPOAGBwjOlYm8wxQe4=";
extraPatches = [
# Fix build with libxml 2.12+.
# Patch from https://github.com/php/php-src/commit/0a39890c967aa57225bb6bdf4821aff7a3a3c082
(fetchpatch {
url = "https://github.com/php/php-src/commit/0a39890c967aa57225bb6bdf4821aff7a3a3c082.patch";
hash = "sha256-HvpTL7aXO9gr4glFdhqUWQPrG8TYTlvbNINq33M3zS0=";
})
];
base = callPackage ./generic.nix (_args // {
version = "8.1.29";
hash = "sha256-h6YDEyY/L1M/GA5xknLKXkfNmITU7DyTcgGY6v+uCCc=";
});
in
base.withExtensions ({ all, ... }: with all; ([

View File

@ -2,8 +2,8 @@
let
base = callPackage ./generic.nix (_args // {
version = "8.2.19";
hash = "sha256-PBj3zlG3x7JreX4flwedOGswNH6wToF/XmyOmydeKmo=";
version = "8.2.20";
hash = "sha256-Xexvphx7nEeqHXZma+ZR8mQu0rz2zYY4xX41cc4qrGE=";
});
in
base.withExtensions ({ all, ... }: with all; ([

View File

@ -2,8 +2,8 @@
let
base = callPackage ./generic.nix (_args // {
version = "8.3.7";
hash = "sha256-AcIM3hxaVpZlGHXtIvUHhJZ5+6dA+MQhYWt9Q9f3l9o=";
version = "8.3.8";
hash = "sha256-9KbLAFrhF6uobCBEkyz1Y4maLpd6wJeBqnSyFh3cVjs=";
});
in
base.withExtensions ({ all, ... }: with all; ([

View File

@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
sha256 = "03d4ikh29l38rl1wavb0icw7m5pp7yilnv7bb2k8qij1dinsymlx";
};
CFLAGS = "-std=gnu89";
# For the x86_64 GNU/Linux arch to be recognized by 'configure'
preConfigure = "cp ${libtool}/share/libtool/build-aux/config.sub .";

View File

@ -1,33 +1,34 @@
{
lib,
stdenv,
fetchFromGitHub,
buildPythonPackage,
fetchFromGitHub,
ncurses,
poetry-core,
procps,
pytest-rerunfailures,
pytestCheckHook,
procps,
tmux,
ncurses,
}:
buildPythonPackage rec {
pname = "libtmux";
version = "0.36.0";
version = "0.37.0";
pyproject = true;
src = fetchFromGitHub {
owner = "tmux-python";
repo = pname;
repo = "libtmux";
rev = "refs/tags/v${version}";
hash = "sha256-oJ2IGaPFMKA/amUEPZi1UO9vZtjPNQg3SIFjQWzUeSE=";
hash = "sha256-I0E6zkfQ6mx2svCaXEgKPhrrog3iLgXZ4E3CMMxPkIA=";
};
postPatch = ''
sed -i '/addopts/d' pyproject.toml
substituteInPlace pyproject.toml \
--replace-fail '"--doctest-docutils-modules",' ""
'';
nativeBuildInputs = [ poetry-core ];
build-system = [ poetry-core ];
nativeCheckInputs = [
procps
@ -53,7 +54,6 @@ buildPythonPackage rec {
disabledTestPaths = lib.optionals stdenv.isDarwin [
"tests/test_test.py"
"tests/legacy_api/test_test.py"
];
pythonImportsCheck = [ "libtmux" ];

View File

@ -4,6 +4,7 @@
pythonOlder,
hatchling,
opentelemetry-api,
opentelemetry-instrumentation,
opentelemetry-sdk,
opentelemetry-test-utils,
prometheus-client,
@ -13,7 +14,9 @@
buildPythonPackage {
inherit (opentelemetry-api) src;
pname = "opentelemetry-exporter-prometheus";
version = "0.44b0";
# This package is in the same repository as `opentelemetry-api`,
# but its version is synchronized with `opentelemetry-instrumentation` in another repository.
version = opentelemetry-instrumentation.version;
pyproject = true;
disabled = pythonOlder "3.8";

View File

@ -4,13 +4,16 @@
pythonOlder,
hatchling,
opentelemetry-api,
opentelemetry-instrumentation,
pytestCheckHook,
}:
buildPythonPackage {
inherit (opentelemetry-api) src;
pname = "opentelemetry-semantic-conventions";
version = "0.44b0";
# This package is in the same repository as `opentelemetry-api`,
# but its version is synchronized with `opentelemetry-instrumentation` in another repository.
version = opentelemetry-instrumentation.version;
pyproject = true;
disabled = pythonOlder "3.8";

View File

@ -5,13 +5,16 @@
asgiref,
hatchling,
opentelemetry-api,
opentelemetry-instrumentation,
opentelemetry-sdk,
}:
buildPythonPackage {
inherit (opentelemetry-api) src;
pname = "opentelemetry-test-utils";
version = "0.44b0";
# This package is in the same repository as `opentelemetry-api`,
# but its version is synchronized with `opentelemetry-instrumentation` in another repository.
version = opentelemetry-instrumentation.version;
pyproject = true;
disabled = pythonOlder "3.8";

View File

@ -30,5 +30,6 @@ buildPythonPackage rec {
mainProgram = "targetctl";
homepage = "https://github.com/open-iscsi/rtslib-fb";
license = licenses.asl20;
platforms = platforms.linux;
};
}

View File

@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ makeWrapper ncurses readline ronn ];
env.NIX_CFLAGS_COMPILE = "-std=gnu89";
postPatch = ''
substituteInPlace Makefile \
--replace '-ltermcap' '-lncurses' \

View File

@ -2,8 +2,8 @@
let
pname = "tmuxp";
version = "1.46.0";
hash = "sha256-+aXpsB4mjw9sZLalv3knW8okP+mh2P/nbZCiCwa3UBU=";
version = "1.47.0";
hash = "sha256-HYY6CEUPpZVvVK9kV4Ehw4wGk5YfIVSkZ0+qqf6Nz4c=";
in
python3Packages.buildPythonApplication {
inherit pname version;

View File

@ -3656,6 +3656,8 @@ with pkgs;
deterministic-uname = callPackage ../build-support/deterministic-uname { };
deterministic-host-uname = deterministic-uname.override { forPlatform = stdenv.hostPlatform; };
dfmt = callPackage ../tools/text/dfmt { };
diopser = callPackage ../applications/audio/diopser { };
@ -35209,7 +35211,7 @@ with pkgs;
};
virt-manager-qt = libsForQt5.callPackage ../applications/virtualization/virt-manager/qt.nix {
qtermwidget = lxqt.qtermwidget;
qtermwidget = lxqt.qtermwidget_1_4;
};
virtscreen = callPackage ../tools/admin/virtscreen { };