wrapQtAppsHook: wrap Qt applications for runtime dependencies
This commit is contained in:
@@ -1,37 +1,39 @@
|
||||
{
|
||||
mkDerivation, lib, makeWrapper,
|
||||
mkDerivation, lib, config,
|
||||
|
||||
extra-cmake-modules, kdoctools,
|
||||
|
||||
karchive, kconfig, kcrash, kdbusaddons, ki18n, kiconthemes, kitemmodels,
|
||||
khtml, kio, kparts, kpty, kservice, kwidgetsaddons, libarchive,
|
||||
breeze-icons, karchive, kconfig, kcrash, kdbusaddons, ki18n,
|
||||
kiconthemes, kitemmodels, khtml, kio, kparts, kpty, kservice, kwidgetsaddons,
|
||||
|
||||
libarchive, libzip,
|
||||
|
||||
# Archive tools
|
||||
p7zip, unzip, zip,
|
||||
p7zip, lrzip,
|
||||
|
||||
# Unfree tools
|
||||
unfreeEnableUnrar ? false, unrar,
|
||||
}:
|
||||
|
||||
let
|
||||
extraTools = [ p7zip lrzip ] ++ lib.optional unfreeEnableUnrar unrar;
|
||||
in
|
||||
|
||||
mkDerivation {
|
||||
name = "ark";
|
||||
nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper ];
|
||||
propagatedBuildInputs = [
|
||||
karchive kconfig kcrash kdbusaddons khtml ki18n kiconthemes kio kitemmodels
|
||||
kparts kpty kservice kwidgetsaddons libarchive
|
||||
];
|
||||
outputs = [ "out" "dev" ];
|
||||
postFixup =
|
||||
let
|
||||
PATH =
|
||||
lib.makeBinPath
|
||||
([ p7zip unzip zip ] ++ lib.optional unfreeEnableUnrar unrar);
|
||||
in ''
|
||||
wrapProgram "$out/bin/ark" --prefix PATH : "${PATH}"
|
||||
'';
|
||||
meta = {
|
||||
license = with lib.licenses;
|
||||
[ gpl2 lgpl3 ] ++ lib.optional unfreeEnableUnrar unfree;
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
|
||||
buildInputs = [ libarchive libzip ] ++ extraTools;
|
||||
propagatedBuildInputs = [
|
||||
breeze-icons karchive kconfig kcrash kdbusaddons khtml ki18n kiconthemes kio
|
||||
kitemmodels kparts kpty kservice kwidgetsaddons
|
||||
];
|
||||
|
||||
qtWrapperArgs = [ "--prefix" "PATH" ":" (lib.makeBinPath extraTools) ];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user