qdiskinfo: add themes
This commit is contained in:
parent
abb8d1c8ed
commit
8761a97cc9
@ -3,10 +3,39 @@
|
||||
stdenv,
|
||||
smartmontools,
|
||||
fetchFromGitHub,
|
||||
fetchzip,
|
||||
cmake,
|
||||
qt6,
|
||||
theme ? "",
|
||||
customBgDark ? "",
|
||||
customBgLight ? "",
|
||||
customStatusPath ? "",
|
||||
customSrc ? "",
|
||||
customRightCharacter ? false,
|
||||
}:
|
||||
|
||||
let
|
||||
isTheme = theme != null && theme != "";
|
||||
|
||||
rightCharacter =
|
||||
(builtins.elem theme [
|
||||
"aoi"
|
||||
"shizukuTeaBreak"
|
||||
])
|
||||
|| customRightCharacter;
|
||||
themeSources = import ./sources.nix { inherit fetchzip; };
|
||||
themes = import ./themes.nix {
|
||||
inherit
|
||||
customBgDark
|
||||
customBgLight
|
||||
customSrc
|
||||
customStatusPath
|
||||
lib
|
||||
themeSources
|
||||
;
|
||||
};
|
||||
in
|
||||
assert !isTheme || lib.attrsets.hasAttrByPath [ theme ] themes;
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "qdiskinfo";
|
||||
version = "0.3";
|
||||
@ -31,10 +60,32 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
cmakeBuildType = "MinSizeRel";
|
||||
|
||||
cmakeFlags = [
|
||||
cmakeFlags =
|
||||
[
|
||||
"-DQT_VERSION_MAJOR=6"
|
||||
];
|
||||
]
|
||||
++ lib.optionals isTheme [ "-DINCLUDE_OPTIONAL_RESOURCES=ON" ]
|
||||
++ (if rightCharacter then [ "-DCHARACTER_IS_RIGHT=ON" ] else [ "-DCHARACTER_IS_RIGHT=OFF" ]);
|
||||
|
||||
postUnpack = ''
|
||||
cp -r $sourceRoot $TMPDIR/src
|
||||
sourceRoot=$TMPDIR/src
|
||||
'';
|
||||
patchPhase = lib.optionalString isTheme ''
|
||||
export SRCPATH=${themes."${theme}".src}/CdiResource/themes/
|
||||
export DESTPATH=$sourceRoot/dist/theme/
|
||||
mkdir -p $DESTPATH
|
||||
if [ -n "${themes."${theme}".paths.bgDark}" ]; then
|
||||
cp $SRCPATH/${themes."${theme}".paths.bgDark} $DESTPATH/bg_dark.png
|
||||
fi
|
||||
if [ -n "${themes."${theme}".paths.bgLight}" ]; then
|
||||
cp $SRCPATH/${themes."${theme}".paths.bgLight} $DESTPATH/bg_light.png
|
||||
fi
|
||||
cp $SRCPATH/${themes."${theme}".paths.status}/SDdiskStatusBad-300.png $DESTPATH/bad.png
|
||||
cp $SRCPATH/${themes."${theme}".paths.status}/SDdiskStatusCaution-300.png $DESTPATH/caution.png
|
||||
cp $SRCPATH/${themes."${theme}".paths.status}/SDdiskStatusGood-300.png $DESTPATH/good.png
|
||||
cp $SRCPATH/${themes."${theme}".paths.status}/SDdiskStatusUnknown-300.png $DESTPATH/unknown.png
|
||||
'';
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/QDiskInfo \
|
||||
--suffix PATH : ${smartmontools}/bin
|
||||
|
18
pkgs/by-name/qd/qdiskinfo/sources.nix
Normal file
18
pkgs/by-name/qd/qdiskinfo/sources.nix
Normal file
@ -0,0 +1,18 @@
|
||||
{ fetchzip }:
|
||||
{
|
||||
aoi = fetchzip {
|
||||
url = "https://pilotfiber.dl.sourceforge.net/project/crystaldiskinfo/9.3.2/CrystalDiskInfo9_3_2Aoi.zip?viasf=1#cdi.zip";
|
||||
hash = "sha256-yldOX/aQYK1Fsd+BpD0SdcyfnHxtwB5rmZHU1nY7Ov8=";
|
||||
stripRoot = false;
|
||||
};
|
||||
kureikei = fetchzip {
|
||||
url = "https://pilotfiber.dl.sourceforge.net/project/crystaldiskinfo/9.3.2/CrystalDiskInfo9_3_2KureiKei.zip?viasf=1#cdi.zip";
|
||||
hash = "sha256-mzV3wHKczsh5NOsUxA3kGYSBZyVNJZUWkZdjiJA8+Po=";
|
||||
stripRoot = false;
|
||||
};
|
||||
shizuku = fetchzip {
|
||||
url = "https://pilotfiber.dl.sourceforge.net/project/crystaldiskinfo/9.3.2/CrystalDiskInfo9_3_2Shizuku.zip?viasf=1#cdi.zip";
|
||||
hash = "sha256-4dVeOHXWUVjfSssJKpcSBQ7OTMaYmgF15M4ROD3SBDA=";
|
||||
stripRoot = false;
|
||||
};
|
||||
}
|
403
pkgs/by-name/qd/qdiskinfo/themes.nix
Normal file
403
pkgs/by-name/qd/qdiskinfo/themes.nix
Normal file
@ -0,0 +1,403 @@
|
||||
{
|
||||
customBgDark,
|
||||
customBgLight,
|
||||
customSrc,
|
||||
customStatusPath,
|
||||
lib,
|
||||
themeSources,
|
||||
}:
|
||||
|
||||
{
|
||||
aoi = {
|
||||
src = themeSources.aoi;
|
||||
paths = {
|
||||
bgDark = "AoiNight/AoiBackground-300.png";
|
||||
bgLight = "Aoi/AoiBackground-300.png";
|
||||
status = "Aoi";
|
||||
};
|
||||
};
|
||||
custom = {
|
||||
src = themeSources."${customSrc}";
|
||||
paths = {
|
||||
bgDark = customBgDark;
|
||||
bgLight = customBgLight;
|
||||
status = customStatusPath;
|
||||
};
|
||||
};
|
||||
kureikei = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiBikini = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiBikini/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiHomebuiltComputer = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiHomebuiltComputer~Kronotokage/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiPresent = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiPresent/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiRecoding = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiRecoding/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiRecodingKimiya = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiRecoding~KIMIYA/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiSummerKimono = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiSummerKimono/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiUniform = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKeiUniform/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiAsyuihira = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~AsYuihira/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiHasumikaoru = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~hasumikaoru/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiKohakumuro = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~kohakumuro/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiKosake = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~kosake/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiKunimi = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~kunimi/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiMaru = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~maru/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiMugya = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~mugya/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiNanatunatu = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~nanatunatu/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiNekopan = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~nekopan/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiNyamco = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~nyamco/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiPoyoyonchihiro = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~poyoyonchihiro/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiShitimiNanami = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~ShitimiNanami/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiTakiOuno = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~TakiOuno/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiTori = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~tori/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
kureikeiYoite = {
|
||||
src = themeSources.kureikei;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "KureiKei~yoite/KureiKeiBackground-300.png";
|
||||
status = "KureiKei";
|
||||
};
|
||||
};
|
||||
shizuku = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "Shizuku/ShizukuBackground-300.png";
|
||||
status = "Shizuku";
|
||||
};
|
||||
};
|
||||
shizuku5thAnniversary = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "Shizuku5thAnniversary/ShizukuBackground-300.png";
|
||||
status = "Shizuku5thAnniversary";
|
||||
};
|
||||
};
|
||||
shizuku7thAnniversary = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "Shizuku7thAnniversary/ShizukuBackground-300.png";
|
||||
status = "Shizuku";
|
||||
};
|
||||
};
|
||||
shizukuDate = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuDate/ShizukuBackground-300.png";
|
||||
status = "ShizukuDate";
|
||||
};
|
||||
};
|
||||
shizukuHanabi = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "ShizukuHanabi/ShizukuBackground-300.png";
|
||||
bgLight = "";
|
||||
status = "ShizukuHanabi";
|
||||
};
|
||||
};
|
||||
shizukuHaregi = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuHaregi/ShizukuBackground-300.png";
|
||||
status = "ShizukuHaregi";
|
||||
};
|
||||
};
|
||||
shizukuHeianKomachi = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuHeianKomachi/ShizukuBackground-300.png";
|
||||
status = "ShizukuHeianKomachi";
|
||||
};
|
||||
};
|
||||
shizukuHotaru = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "ShizukuHotaru/ShizukuBackground-300.png";
|
||||
bgLight = "";
|
||||
status = "Shizuku";
|
||||
};
|
||||
};
|
||||
shizukuIdol = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuIdol/ShizukuBackground-300.png";
|
||||
status = "ShizukuIdol";
|
||||
};
|
||||
};
|
||||
shizukuKotatsu = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuKotatsu/ShizukuBackground-300.png";
|
||||
status = "ShizukuKotatsu";
|
||||
};
|
||||
};
|
||||
shizukuKotatsuNight = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuKotatsuNight/ShizukuBackground-300.png";
|
||||
status = "ShizukuKotatsu";
|
||||
};
|
||||
};
|
||||
shizukuLiteratureGirl = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuLiteratureGirl/ShizukuBackground-300.png";
|
||||
status = "ShizukuLiteratureGirl";
|
||||
};
|
||||
};
|
||||
shizukuLiteratureGirlWithGlasses = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuLiteratureGirlwithGlasses/ShizukuBackground-300.png";
|
||||
status = "ShizukuLiteratureGirlwithGlasses";
|
||||
};
|
||||
};
|
||||
shizukuMaidCool = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuMaidCool/ShizukuBackground-300.png";
|
||||
status = "ShizukuMaidCool";
|
||||
};
|
||||
};
|
||||
shizukuMaidCute = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuMaidCute/ShizukuBackground-300.png";
|
||||
status = "ShizukuMaidCute";
|
||||
};
|
||||
};
|
||||
shizukuMeijiMizugi = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuMeijiMizugi/ShizukuBackground-300.png";
|
||||
status = "ShizukuMeijiMizugi";
|
||||
};
|
||||
};
|
||||
shizukuMermaid = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuMermaid/ShizukuBackground-300.png";
|
||||
status = "ShizukuMermaid";
|
||||
};
|
||||
};
|
||||
shizukuMiko = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "ShizukuMikoNight/ShizukuBackground-300.png";
|
||||
bgLight = "ShizukuMiko/ShizukuBackground-300.png";
|
||||
status = "ShizukuMiko";
|
||||
};
|
||||
};
|
||||
shizukuOffice = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuOffice/ShizukuBackground-300.png";
|
||||
status = "Shizuku";
|
||||
};
|
||||
};
|
||||
shizukuSakura = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "ShizukuSakuraNight/ShizukuBackground-300.png";
|
||||
bgLight = "ShizukuSakura/ShizukuBackground-300.png";
|
||||
status = "ShizukuSakura";
|
||||
};
|
||||
};
|
||||
shizukuTaishoRoman = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuTaishoRoman/ShizukuBackground-300.png";
|
||||
status = "ShizukuTaishoRoman";
|
||||
};
|
||||
};
|
||||
shizukuTeaBreak = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuTeaBreak/ShizukuBackground-300.png";
|
||||
status = "Shizuku";
|
||||
};
|
||||
};
|
||||
shizukuWebRadio = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuWebRadio/ShizukuBackground-300.png";
|
||||
status = "ShizukuWebRadio";
|
||||
};
|
||||
};
|
||||
shizukuWinterLamp = {
|
||||
src = themeSources.shizuku;
|
||||
paths = {
|
||||
bgDark = "";
|
||||
bgLight = "ShizukuWinterLamp/ShizukuBackground-300.png";
|
||||
status = "ShizukuWinterLamp";
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Reference in New Issue
Block a user