feat: Compile Plasma Bigscreen against the development repo as of February 13, 2026
This commit is contained in:
112
pkgs/plasma-bigscreen.nix
Normal file
112
pkgs/plasma-bigscreen.nix
Normal file
@@ -0,0 +1,112 @@
|
||||
# NOTE: from https://github.com/NixOS/nixpkgs/pull/428353#issuecomment-3498917203
|
||||
# more info in tv.nix nixos config
|
||||
{
|
||||
mkKdeDerivation,
|
||||
lib,
|
||||
fetchFromGitLab,
|
||||
pkg-config,
|
||||
ki18n,
|
||||
kdeclarative,
|
||||
kcmutils,
|
||||
knotifications,
|
||||
kio,
|
||||
kwayland,
|
||||
kwindowsystem,
|
||||
plasma-workspace,
|
||||
qtmultimedia,
|
||||
bluez-qt,
|
||||
qtwebengine,
|
||||
plasma-nano,
|
||||
plasma-nm,
|
||||
milou,
|
||||
kscreen,
|
||||
kdeconnect-kde,
|
||||
sdl3,
|
||||
libcec ? null
|
||||
}:
|
||||
mkKdeDerivation {
|
||||
pname = "plasma-bigscreen";
|
||||
version = "unstable-2026-02-13";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "invent.kde.org";
|
||||
owner = "plasma";
|
||||
repo = "plasma-bigscreen";
|
||||
rev = "1db19cdfc2ac1653cb129f403702addec2caf4c7";
|
||||
hash = "sha256-dfsR20dY1jtLmEpGRxvp9xwOHJFn3mVw+1RUGBJRLpQ=";
|
||||
};
|
||||
|
||||
extraNativeBuildInputs = [
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
ki18n
|
||||
kdeclarative
|
||||
kcmutils
|
||||
knotifications
|
||||
kio
|
||||
kwayland
|
||||
kwindowsystem
|
||||
plasma-workspace
|
||||
qtmultimedia
|
||||
bluez-qt
|
||||
qtwebengine
|
||||
plasma-nano
|
||||
plasma-nm
|
||||
milou
|
||||
kscreen
|
||||
kdeconnect-kde
|
||||
sdl3
|
||||
] ++ lib.optionals (libcec != null) [ libcec ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace bin/plasma-bigscreen-wayland.in \
|
||||
--replace-fail @KDE_INSTALL_FULL_LIBEXECDIR@ "${plasma-workspace}/libexec"
|
||||
|
||||
# Plasma version numbers are required to match, but we are building an
|
||||
# unreleased package against a stable Plasma release.
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace-fail 'set(PROJECT_VERSION "6.5.80")' 'set(PROJECT_VERSION "${plasma-workspace.version}")'
|
||||
|
||||
# Fix for Qt 6.10+ which requires explicit find_package of private targets
|
||||
# Reference: https://github.com/NixOS/nixpkgs/pull/461599/changes
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace-fail \
|
||||
'find_package(Qt6 ''${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
|
||||
Quick
|
||||
Core
|
||||
Qml
|
||||
DBus
|
||||
Network
|
||||
Multimedia
|
||||
WebEngineCore
|
||||
WebEngineQuick
|
||||
WaylandClient
|
||||
)' \
|
||||
'find_package(Qt6 ''${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
|
||||
Quick
|
||||
Core
|
||||
Qml
|
||||
QmlPrivate
|
||||
DBus
|
||||
Network
|
||||
Multimedia
|
||||
WebEngineCore
|
||||
WebEngineQuick
|
||||
WaylandClient
|
||||
)'
|
||||
'';
|
||||
|
||||
preFixup = ''
|
||||
wrapQtApp $out/bin/plasma-bigscreen-wayland
|
||||
'';
|
||||
|
||||
passthru.providedSessions = [
|
||||
"plasma-bigscreen-wayland"
|
||||
];
|
||||
|
||||
meta = {
|
||||
license = lib.licenses.gpl2Plus;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user