style: format code

This commit is contained in:
tux
2026-09-11 02:10:39 +05:30
parent f2268f65e7
commit 352eb99568
2 changed files with 102 additions and 107 deletions

111
flake.nix
View File

@@ -15,66 +15,63 @@
};
};
outputs =
{
self,
nixpkgs,
quickshell,
treefmt-nix,
}:
let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
outputs = {
self,
nixpkgs,
quickshell,
treefmt-nix,
}: let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
quickshellWithModules = quickshell.packages.${system}.default.withModules [
pkgs.qt6.qtbase
pkgs.qt6.qtdeclarative
pkgs.qt6.qtmultimedia
pkgs.qt6.qttranslations
];
quickshellWithModules = quickshell.packages.${system}.default.withModules [
pkgs.qt6.qtbase
pkgs.qt6.qtdeclarative
pkgs.qt6.qtmultimedia
pkgs.qt6.qttranslations
];
treefmtEval = treefmt-nix.lib.evalModule pkgs {
projectRootFile = "flake.nix";
treefmtEval = treefmt-nix.lib.evalModule pkgs {
projectRootFile = "flake.nix";
programs = {
nixfmt.enable = true;
qmlformat.enable = true;
clang-format.enable = true;
};
};
in
rec {
formatter.${system} = treefmtEval.config.build.wrapper;
packages.${system} = {
tshell = pkgs.callPackage ./package.nix {
inherit quickshellWithModules;
};
default = packages.${system}.tshell;
};
devShells.${system}.default = pkgs.mkShell {
packages = [
quickshellWithModules
pkgs.cava
pkgs.wallust
pkgs.dbus
pkgs.cmake
pkgs.ninja
pkgs.qt6.qtbase
pkgs.qt6.qtdeclarative
];
shellHook = ''
if [ -d "$PWD/plugin/dist/lib/qt-6/qml" ]; then
export NIXPKGS_QT6_QML_IMPORT_PATH="$PWD/plugin/dist/lib/qt-6/qml''${NIXPKGS_QT6_QML_IMPORT_PATH:+:$NIXPKGS_QT6_QML_IMPORT_PATH}"
export QML2_IMPORT_PATH="$PWD/plugin/dist/lib/qt-6/qml''${QML2_IMPORT_PATH:+:$QML2_IMPORT_PATH}"
else
echo "gpu plugin is not built; run from the repo root to enable 'import Tshell.Cardwire':"
echo " cmake -S plugin -B plugin/dist -DCMAKE_INSTALL_PREFIX=\$PWD/plugin/dist"
echo " cmake --build plugin/dist --target install"
fi
'';
programs = {
alejandra.enable = true;
qmlformat.enable = true;
clang-format.enable = true;
};
};
in rec {
formatter.${system} = treefmtEval.config.build.wrapper;
packages.${system} = {
tshell = pkgs.callPackage ./package.nix {
inherit quickshellWithModules;
};
default = packages.${system}.tshell;
};
devShells.${system}.default = pkgs.mkShell {
packages = [
quickshellWithModules
pkgs.cava
pkgs.wallust
pkgs.dbus
pkgs.cmake
pkgs.ninja
pkgs.qt6.qtbase
pkgs.qt6.qtdeclarative
];
shellHook = ''
if [ -d "$PWD/plugin/dist/lib/qt-6/qml" ]; then
export NIXPKGS_QT6_QML_IMPORT_PATH="$PWD/plugin/dist/lib/qt-6/qml''${NIXPKGS_QT6_QML_IMPORT_PATH:+:$NIXPKGS_QT6_QML_IMPORT_PATH}"
export QML2_IMPORT_PATH="$PWD/plugin/dist/lib/qt-6/qml''${QML2_IMPORT_PATH:+:$QML2_IMPORT_PATH}"
else
echo "gpu plugin is not built; run from the repo root to enable 'import Tshell.Cardwire':"
echo " cmake -S plugin -B plugin/dist -DCMAKE_INSTALL_PREFIX=\$PWD/plugin/dist"
echo " cmake --build plugin/dist --target install"
fi
'';
};
};
}

View File

@@ -10,73 +10,71 @@
cava,
wallust,
nerd-fonts,
extraRuntimeDeps ? [ ],
}:
let
extraRuntimeDeps ? [],
}: let
version = "0.1.0";
runtimeDeps = [
cava
wallust
]
++ extraRuntimeDeps;
runtimeDeps =
[
cava
wallust
]
++ extraRuntimeDeps;
fontconfig = makeFontsConf {
fontDirectories = [ nerd-fonts.fira-code ];
fontDirectories = [nerd-fonts.fira-code];
};
# Unlike lib.fileset, this keeps untracked files (the flake only sees
# git-tracked paths) while dropping build artifacts.
src = lib.cleanSourceWith {
src = lib.cleanSource ./.;
filter =
path: _:
let
name = baseNameOf path;
in
filter = path: _: let
name = baseNameOf path;
in
!(name == "dist" || name == "result" || name == "result-bin" || lib.hasPrefix "build" name);
};
in
stdenv.mkDerivation {
inherit version src;
pname = "tshell";
stdenv.mkDerivation {
inherit version src;
pname = "tshell";
dontWrapQtApps = true;
dontWrapQtApps = true;
preConfigure = ''
cd plugin
'';
preConfigure = ''
cd plugin
'';
nativeBuildInputs = [
cmake
ninja
makeWrapper
];
buildInputs = [
qt6.qtbase
qt6.qtdeclarative
];
propagatedBuildInputs = runtimeDeps;
nativeBuildInputs = [
cmake
ninja
makeWrapper
];
buildInputs = [
qt6.qtbase
qt6.qtdeclarative
];
propagatedBuildInputs = runtimeDeps;
postInstall = ''
mkdir -p $out/bin $out/share/tshell
postInstall = ''
mkdir -p $out/bin $out/share/tshell
for entry in shell.qml assets config modules services ui windows; do
cp -r "$src/$entry" $out/share/tshell/
done
for entry in shell.qml assets config modules services ui windows; do
cp -r "$src/$entry" $out/share/tshell/
done
makeWrapper ${quickshellWithModules}/bin/qs $out/bin/tshell \
--prefix PATH : "${lib.makeBinPath runtimeDeps}" \
--set FONTCONFIG_FILE "${fontconfig}" \
--suffix NIXPKGS_QT6_QML_IMPORT_PATH : "$out/lib/qt-6/qml" \
--add-flags "-p $out/share/tshell"
'';
makeWrapper ${quickshellWithModules}/bin/qs $out/bin/tshell \
--prefix PATH : "${lib.makeBinPath runtimeDeps}" \
--set FONTCONFIG_FILE "${fontconfig}" \
--suffix NIXPKGS_QT6_QML_IMPORT_PATH : "$out/lib/qt-6/qml" \
--add-flags "-p $out/share/tshell"
'';
meta = {
description = "tux's widgets for wayland";
homepage = "https://github.com/tuxdotrs/tshell";
license = lib.licenses.gpl3Only;
mainProgram = "tshell";
platforms = lib.platforms.linux;
};
}
meta = {
description = "tux's widgets for wayland";
homepage = "https://github.com/tuxdotrs/tshell";
license = lib.licenses.gpl3Only;
mainProgram = "tshell";
platforms = lib.platforms.linux;
};
}