about summary refs log tree commit diff
path: root/pkgs/data
diff options
context:
space:
mode:
authormichaelBelsanti <quasigod-io@protonmail.com>2023-06-17 19:28:28 -0400
committermichaelBelsanti <quasigod-io@protonmail.com>2023-06-18 16:37:25 -0400
commitd699a144aecce6ca64271e505efaa9af90902bb5 (patch)
tree6453f440a603e5e57f27fc838bfe0926dab6a903 /pkgs/data
parent7062e5519bdeae9f3535787f5f8a225ccc231b11 (diff)
catppuccin-kde: fix install script
Diffstat (limited to 'pkgs/data')
-rwxr-xr-xpkgs/data/themes/catppuccin-kde/color.sh61
-rw-r--r--pkgs/data/themes/catppuccin-kde/default.nix15
-rwxr-xr-xpkgs/data/themes/catppuccin-kde/install.sh263
3 files changed, 73 insertions, 266 deletions
diff --git a/pkgs/data/themes/catppuccin-kde/color.sh b/pkgs/data/themes/catppuccin-kde/color.sh
new file mode 100755
index 0000000000000..6d3976a0e1ee4
--- /dev/null
+++ b/pkgs/data/themes/catppuccin-kde/color.sh
@@ -0,0 +1,61 @@
+echo $FLAVOUR $ACCENT $WINDECSTYLE
+
+FLAVOURNAME=${FLAVOUR^}
+ACCENTNAME=${ACCENT^}
+WINDECSTYLENAME=${WINDECSTYLE^}
+
+if [[ $FLAVOURNAME == "Mocha" ]]; then
+    FLAVOUR="1";
+elif [[ $FLAVOURNAME == "Macchiato" ]]; then
+    FLAVOUR="2";
+elif [[ $FLAVOURNAME == "Frappe" ]]; then
+    FLAVOUR="3";
+elif [[ $FLAVOURNAME == "Latte" ]]; then
+    FLAVOUR="4";
+fi
+if [[ $FLAVOURNAME == "Mocha" ]]; then
+    FLAVOUR="1";
+elif [[ $FLAVOURNAME == "Macchiato" ]]; then
+    FLAVOUR="2";
+elif [[ $FLAVOURNAME == "Frappe" ]]; then
+    FLAVOUR="3";
+elif [[ $FLAVOURNAME == "Latte" ]]; then
+    FLAVOUR="4";
+fi
+
+
+if [[ $ACCENTNAME == "Rosewater" ]]; then
+    ACCENT="1"
+elif [[ $ACCENTNAME == "Flamingo" ]]; then
+    ACCENT="2"
+elif [[ $ACCENTNAME == "Pink" ]]; then
+    ACCENT="3"
+elif [[ $ACCENTNAME == "Mauve" ]]; then
+    ACCENT="4"
+elif [[ $ACCENTNAME == "Red" ]]; then
+    ACCENT="5"
+elif [[ $ACCENTNAME == "Maroon" ]]; then
+    ACCENT="6"
+elif [[ $ACCENTNAME == "Peach" ]]; then
+    ACCENT="7"
+elif [[ $ACCENTNAME == "Yellow" ]]; then
+    ACCENT="8"
+elif [[ $ACCENTNAME == "Green" ]]; then
+    ACCENT="9"
+elif [[ $ACCENTNAME == "Teal" ]]; then
+    ACCENT="10"
+elif [[ $ACCENTNAME == "Sky" ]]; then
+    ACCENT="11"
+elif [[ $ACCENTNAME == "Sapphire" ]]; then
+    ACCENT="12"
+elif [[ $ACCENTNAME == "Blue" ]]; then
+    ACCENT="13"
+elif [[ $ACCENTNAME == "Lavender" ]]; then
+    ACCENT="14"
+fi
+
+if [[ $WINDECSTYLENAME == "Modern" ]]; then
+    WINDECSTYLE=1
+elif [[ $WINDECSTYLENAME == "Classic" ]]; then
+    WINDECSTYLE=2
+fi
diff --git a/pkgs/data/themes/catppuccin-kde/default.nix b/pkgs/data/themes/catppuccin-kde/default.nix
index 9ce72c9b2ef81..8dac978a64dc5 100644
--- a/pkgs/data/themes/catppuccin-kde/default.nix
+++ b/pkgs/data/themes/catppuccin-kde/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenvNoCC
 , fetchFromGitHub
+, fetchpatch
 , flavour ? [ "frappe" ]
 , accents ? [ "blue" ]
 , winDecStyles ? [ "modern" ]
@@ -11,7 +12,7 @@ let
   validAccents = [ "rosewater" "flamingo" "pink" "mauve" "red" "maroon" "peach" "yellow" "green" "teal" "sky" "sapphire" "blue" "lavender" ];
   validWinDecStyles = [ "modern" "classic" ];
 
-  installScript = ./install.sh;
+  colorScript = ./color.sh;
 in
 
   lib.checkListOfEnum "Invalid accent, valid accents are ${toString validAccents}" validAccents accents
@@ -29,14 +30,22 @@ stdenvNoCC.mkDerivation rec {
     hash = "sha256-w77lzeSisx/PPxctMJKIdRJenq0s8HwR8gLmgNh4SH8=";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/michaelBelsanti/catppuccin-kde/commit/81a8edb3c24bd6af896c92b5051e09af97d69c51.patch";
+      hash = "sha256-cb4/dQ52T+H8UqXEgExblmnMfxwO0Y1BrjMCay/EAkI=";
+    })
+  ];
+
   installPhase = ''
     runHook preInstall
-
     patchShebangs .
+
     for WINDECSTYLE in ${toString winDecStyles}; do
       for FLAVOUR in ${toString flavour}; do
         for ACCENT in ${toString accents}; do
-          FLAVOUR=$FLAVOUR ACCENT=$ACCENT WINDECSTYLE=$WINDECSTYLE bash ${installScript}
+          source ${colorScript}
+          ./install.sh $FLAVOUR $ACCENT $WINDECSTYLE
         done;
       done;
     done;
diff --git a/pkgs/data/themes/catppuccin-kde/install.sh b/pkgs/data/themes/catppuccin-kde/install.sh
deleted file mode 100755
index dec90274b450b..0000000000000
--- a/pkgs/data/themes/catppuccin-kde/install.sh
+++ /dev/null
@@ -1,263 +0,0 @@
-COLORDIR=$out/share/color-schemes
-AURORAEDIR=$out/share/aurorae/themes
-LOOKANDFEELDIR=$out/share/plasma/look-and-feel
-DESKTOPTHEMEDIR=$out/share/plasma/desktoptheme
-
-FLAVOUR=${FLAVOUR^}
-ACCENT=${ACCENT^}
-WINDECSTYLE=${WINDECSTYLE^}
-
-echo "Creating theme directories.."
-mkdir -p $COLORDIR
-mkdir -p $AURORAEDIR
-mkdir -p $LOOKANDFEELDIR
-mkdir -p $DESKTOPTHEMEDIR
-mkdir ./dist
-
-# Sets accent based on the pallet selected (Best to fold this in your respective editor)
-if [[ $ACCENT == "Rosewater" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#f5e0dc
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#f4dbd6
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#f2d5cf
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#dc8a78
-    fi
-    echo "Accent Rosewater(1) was selected!"
-elif [[ $ACCENT == "Flamingo" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#f2cdcd
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#f0c6c6
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#eebebe
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#dd7878
-    fi
-    echo "Accent Flamingo(2) was selected!"
-    ACCENT="2"
-elif [[ $ACCENT == "Pink" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#f5c2e7
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#f5bde6
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#f4b8e4
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#ea76cb
-    fi
-    echo "Accent Pink(3) was selected!"
-elif [[ $ACCENT == "Mauve" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#cba6f7
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#c6a0f6
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#ca9ee6
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#8839ef
-    fi
-    echo "Accent Mauve(4) was selected!"
-elif [[ $ACCENT == "Red" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#f38ba8
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#ed8796
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#e78284
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#d20f39
-    fi
-    echo "Accent Red(5) was selected!"
-elif [[ $ACCENT == "Maroon" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#eba0ac
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#ee99a0
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#ea999c
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#e64553
-    fi
-    echo "Accent Maroon(6) was selected!"
-elif [[ $ACCENT == "Peach" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#fab387
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#f5a97f
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#ef9f76
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#fe640b
-    fi
-    echo "Accent Peach(7) was selected!"
-elif [[ $ACCENT == "Yellow" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#f9e2af
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#eed49f
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#e5c890
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#df8e1d
-    fi
-    echo "Accent Yellow(8) was selected!"
-elif [[ $ACCENT == "Green" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#a6e3a1
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#a6da95
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#a6d189
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#40a02b
-    fi
-    echo "Accent Green(9) was selected!"
-elif [[ $ACCENT == "Teal" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#94e2d5
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#8bd5ca
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#81c8be
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#179299
-    fi
-    echo "Accent Teal(10) was selected!"
-elif [[ $ACCENT == "Sky" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#89dceb
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#91d7e3
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#99d1db
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#04a5e5
-    fi
-    echo "Accent Sky(11) was selected!"
-elif [[ $ACCENT == "Sapphire" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#74c7ec
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#7dc4e4
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#85c1dc
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#209fb5
-    fi
-    echo "Accent Sapphire(12) was selected!"
-elif [[ $ACCENT == "Blue" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#89b4fa
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#8aadf4
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#8caaee
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#1e66f5
-    fi
-    echo "Accent Blue(13) was selected!"
-elif [[ $ACCENT == "Lavender" ]]; then
-    if [[ $FLAVOUR == "Mocha" ]]; then
-        ACCENTCOLOR=#b4befe
-    elif [[ $FLAVOUR == "Macchiato" ]]; then
-        ACCENTCOLOR=#b7bdf8
-    elif [[ $FLAVOUR == "Frappe" ]]; then
-        ACCENTCOLOR=#babbf1
-    elif [[ $FLAVOUR == "Latte" ]]; then
-        ACCENTCOLOR=#7287fd
-    fi
-    echo "Accent Lavender(14) was selected!"
-else echo "Not a valid accent" && exit
-fi
-
-if [[ $WINDECSTYLE == "Modern" ]]; then
-    WINDECSTYLECODE=__aurorae__svg__Catppuccin$FLAVOUR-Modern
-elif [[ $WINDECSTYLE == "Classic" ]]; then
-    WINDECSTYLECODE=__aurorae__svg__Catppuccin$FLAVOUR-Classic
-fi
-
-function ModifyLightlyPlasma {
-
-    rm -rf $DESKTOPTHEMEDIR/lightly-plasma-git/icons/*
-    rm -rf $DESKTOPTHEMEDIR/lightly-plasma-git/translucent
-    rm $DESKTOPTHEMEDIR/lightly-plasma-git/widgets/tabbar.svgz
-    rm $DESKTOPTHEMEDIR/lightly-plasma-git/dialogs/background.svgz
-
-    # Copy Patches
-    cp $DESKTOPTHEMEDIR/lightly-plasma-git/solid/* $DESKTOPTHEMEDIR/lightly-plasma-git -Rf
-    cp ./Patches/glowbar.svg $DESKTOPTHEMEDIR/lightly-plasma-git/widgets -rf
-    cp ./Patches/background.svg $DESKTOPTHEMEDIR/lightly-plasma-git/widgets -rf
-    cp ./Patches/panel-background.svgz $DESKTOPTHEMEDIR/lightly-plasma-git/widgets
-
-    # Modify description to state that it has been modified by the KDE Catppuccin Installer
-    sed -e s/A\ plasma\ style\ with\ close\ to\ the\ look\ of\ the\ newest\ Lightly./*MODIFIED\ BY\ CATPPUCCIN\ KDE\ INSTALLER*\ A\ plasma\ style\ with\ close\ to\ the\ look\ of\ the\ newest\ Lightly./g $DESKTOPTHEMEDIR/lightly-plasma-git/metadata.desktop >> $DESKTOPTHEMEDIR/lightly-plasma-git/newMetadata.desktop
-    cp -f $DESKTOPTHEMEDIR/metadata.desktop $DESKTOPTHEMEDIR/lightly-plasma-git/metadata.desktop && rm $DESKTOPTHEMEDIR/metadata.desktop
-}
-
-function AuroraeInstall {
-    if [[ $WINDECSTYLE == "Modern" ]]; then
-        cp ./Resources/aurorae/Catppuccin$FLAVOUR-Modern $AURORAEDIR -r;
-    elif [[ $WINDECSTYLE == "Classic" ]]; then
-        cp ./Resources/aurorae/Catppuccin$FLAVOUR-Classic $AURORAEDIR -r;
-    fi
-}
-
-function BuildColorscheme {
-    # Add Metadata & Replace Accent in colors file
-    sed -e s/--accentColor/$ACCENTCOLOR/g -e s/--flavour/$FLAVOUR/g -e s/--accentName/$ACCENT/g ./Resources/base.colors > ./dist/base.colors
-    # Hydrate Metadata with Pallet + Accent Info
-    sed -e s/--accentName/$ACCENT/g -e s/--flavour/$FLAVOUR/g ./Resources/metadata.desktop > ./dist/Catppuccin-$FLAVOUR-$ACCENT/metadata.desktop
-    # Modify 'defaults' to set the correct Aurorae Theme
-    sed -e s/--accentName/$ACCENT/g -e s/--flavour/$FLAVOUR/g -e s/--aurorae/$WINDECSTYLECODE/g ./Resources/defaults > ./dist/Catppuccin-$FLAVOUR-$ACCENT/contents/defaults
-    # Hydrate Dummy colors according to Pallet
-    FLAVOURNAME=$FLAVOUR ACCENTNAME=$ACCENT ./Installer/color-build.sh -o ./dist/Catppuccin$FLAVOUR$ACCENT.colors -s ./dist/base.colors
-}
-
-function BuildSplashScreen {
-    # Hydrate Dummy colors according to Pallet
-    FLAVOURNAME=$FLAVOUR ./Installer/color-build.sh -s ./Resources/splash/images/busywidget.svg -o ./dist/$GLOBALTHEMENAME/contents/splash/images/_busywidget.svg
-    # Replace Accent in colors file
-    sed ./dist/$GLOBALTHEMENAME/contents/splash/images/_busywidget.svg -e s/REPLACE--ACCENT/$ACCENTCOLOR/g > ./dist/$GLOBALTHEMENAME/contents/splash/images/busywidget.svg
-    # Cleanup temporary file
-    rm ./dist/$GLOBALTHEMENAME/contents/splash/images/_busywidget.svg
-    # Hydrate Dummy colors according to Pallet (QML file)
-    FLAVOURNAME=$FLAVOUR ./Installer/color-build.sh -s ./Resources/splash/Splash.qml -o ./dist/$GLOBALTHEMENAME/contents/splash/Splash.qml
-    # Add CTP Logo
-    # TODO: Switch between latte & mocha logo based on Pallet
-    cp ./Resources/splash/images/Logo.png ./dist/$GLOBALTHEMENAME/contents/splash/images
-}
-
-# Prepare Global Theme Folder
-GLOBALTHEMENAME="Catppuccin-$FLAVOUR-$ACCENT"
-cp -r ./Resources/Catppuccin-$FLAVOUR-Global ./dist/$GLOBALTHEMENAME
-mkdir -p ./dist/$GLOBALTHEMENAME/contents/splash/images
-
-# Build SplashScreen
-echo "Building SplashScreen.."
-BuildSplashScreen
-
-# Build Colorscheme
-echo "Building Colorscheme.."
-# Generate Color scheme
-BuildColorscheme
-
-# Install Colorscheme
-echo "Installing Colorscheme.."
-mv ./dist/Catppuccin$FLAVOUR$ACCENT.colors $COLORDIR
-
-# Install Global Theme.
-echo "Installing Global Theme.."
-cp -r ./dist/$GLOBALTHEMENAME $LOOKANDFEELDIR
-
-# echo "Modifying lightly plasma theme.."
-# ModifyLightlyPlasma
-
-echo "Installing aurorae theme.."
-AuroraeInstall
-
-# Cleanup
-echo "Cleaning up.."
-rm -rf ./dist