mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-01-24 13:32:50 -05:00
nix: add QML dependencies to dms-shell package (#967)
This commit is contained in:
@@ -23,8 +23,7 @@ in
|
|||||||
]
|
]
|
||||||
++ lib.optional cfg.enableDynamicTheming pkgs.matugen
|
++ lib.optional cfg.enableDynamicTheming pkgs.matugen
|
||||||
++ lib.optional cfg.enableAudioWavelength pkgs.cava
|
++ lib.optional cfg.enableAudioWavelength pkgs.cava
|
||||||
++ lib.optional cfg.enableCalendarEvents pkgs.khal
|
++ lib.optional cfg.enableCalendarEvents pkgs.khal;
|
||||||
++ lib.optional cfg.enableSystemSound pkgs.kdePackages.qtmultimedia;
|
|
||||||
|
|
||||||
plugins = lib.mapAttrs (name: plugin: {
|
plugins = lib.mapAttrs (name: plugin: {
|
||||||
source = plugin.src;
|
source = plugin.src;
|
||||||
|
|||||||
@@ -16,6 +16,9 @@ in
|
|||||||
imports = [
|
imports = [
|
||||||
(lib.mkRemovedOptionModule (path ++ [ "enableBrightnessControl" ]) builtInRemovedMsg)
|
(lib.mkRemovedOptionModule (path ++ [ "enableBrightnessControl" ]) builtInRemovedMsg)
|
||||||
(lib.mkRemovedOptionModule (path ++ [ "enableColorPicker" ]) builtInRemovedMsg)
|
(lib.mkRemovedOptionModule (path ++ [ "enableColorPicker" ]) builtInRemovedMsg)
|
||||||
|
(lib.mkRemovedOptionModule (
|
||||||
|
path ++ [ "enableSystemSound" ]
|
||||||
|
) "qtmultimedia is now included on dms-shell package.")
|
||||||
];
|
];
|
||||||
|
|
||||||
options.programs.dankMaterialShell = {
|
options.programs.dankMaterialShell = {
|
||||||
@@ -58,11 +61,6 @@ in
|
|||||||
default = true;
|
default = true;
|
||||||
description = "Add calendar events support via khal";
|
description = "Add calendar events support via khal";
|
||||||
};
|
};
|
||||||
enableSystemSound = lib.mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = true;
|
|
||||||
description = "Add needed dependencies to have system sound support";
|
|
||||||
};
|
|
||||||
quickshell = {
|
quickshell = {
|
||||||
package = lib.mkPackageOption dmsPkgs "quickshell" {
|
package = lib.mkPackageOption dmsPkgs "quickshell" {
|
||||||
extraDescription = "The quickshell package to use (defaults to be built from source, in the commit 26531f due to unreleased features used by DMS).";
|
extraDescription = "The quickshell package to use (defaults to be built from source, in the commit 26531f due to unreleased features used by DMS).";
|
||||||
|
|||||||
28
flake.nix
28
flake.nix
@@ -40,6 +40,16 @@
|
|||||||
(import path (args // { dmsPkgs = buildDmsPkgs pkgs; }))
|
(import path (args // { dmsPkgs = buildDmsPkgs pkgs; }))
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
mkQmlImportPath =
|
||||||
|
pkgs: qmlPkgs:
|
||||||
|
pkgs.lib.concatStringsSep ":" (map (o: "${o}/${pkgs.qt6.qtbase.qtQmlPrefix}") qmlPkgs);
|
||||||
|
|
||||||
|
qmlPkgs =
|
||||||
|
pkgs: with pkgs.kdePackages; [
|
||||||
|
kirigami.unwrapped
|
||||||
|
sonnet
|
||||||
|
qtmultimedia
|
||||||
|
];
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
packages = forEachSystem (
|
packages = forEachSystem (
|
||||||
@@ -96,7 +106,9 @@
|
|||||||
install -D ${rootSrc}/core/assets/danklogo.svg \
|
install -D ${rootSrc}/core/assets/danklogo.svg \
|
||||||
$out/share/hicolor/scalable/apps/danklogo.svg
|
$out/share/hicolor/scalable/apps/danklogo.svg
|
||||||
|
|
||||||
wrapProgram $out/bin/dms --add-flags "-c $out/share/quickshell/dms"
|
wrapProgram $out/bin/dms \
|
||||||
|
--add-flags "-c $out/share/quickshell/dms" \
|
||||||
|
--prefix "NIXPKGS_QT6_QML_IMPORT_PATH" ":" "${mkQmlImportPath pkgs (qmlPkgs pkgs)}"
|
||||||
|
|
||||||
install -Dm644 ${rootSrc}/assets/systemd/dms.service \
|
install -Dm644 ${rootSrc}/assets/systemd/dms.service \
|
||||||
$out/lib/systemd/user/dms.service
|
$out/lib/systemd/user/dms.service
|
||||||
@@ -143,15 +155,11 @@
|
|||||||
devShells = forEachSystem (
|
devShells = forEachSystem (
|
||||||
system: pkgs:
|
system: pkgs:
|
||||||
let
|
let
|
||||||
qmlPkgs = [
|
devQmlPkgs = [
|
||||||
quickshell.packages.${system}.default
|
quickshell.packages.${system}.default
|
||||||
|
pkgs.kdePackages.qtdeclarative
|
||||||
]
|
]
|
||||||
++ (with pkgs.kdePackages; [
|
++ (qmlPkgs pkgs);
|
||||||
qtdeclarative
|
|
||||||
kirigami.unwrapped
|
|
||||||
sonnet
|
|
||||||
qtmultimedia
|
|
||||||
]);
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
default = pkgs.mkShell {
|
default = pkgs.mkShell {
|
||||||
@@ -164,13 +172,13 @@
|
|||||||
go-tools
|
go-tools
|
||||||
gnumake
|
gnumake
|
||||||
]
|
]
|
||||||
++ qmlPkgs;
|
++ devQmlPkgs;
|
||||||
|
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
touch quickshell/.qmlls.ini 2>/dev/null
|
touch quickshell/.qmlls.ini 2>/dev/null
|
||||||
'';
|
'';
|
||||||
|
|
||||||
QML2_IMPORT_PATH = pkgs.lib.concatStringsSep ":" (map (o: "${o}/lib/qt-6/qml") qmlPkgs);
|
QML2_IMPORT_PATH = mkQmlImportPath pkgs devQmlPkgs;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user