diff --git a/CHANGELOG.md b/CHANGELOG.md index 25bd8b2..00b4489 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,15 +2,17 @@ Added: - Ability to hide album name and year in playbar (#85) - Ability to change Sidebar gap sizes (#90) - Ability to toggle playbar shadow (#92) +- Uninstall script for MacOs/Linux Fixed: -- Some sidebar items hawing wrong width on hover [(this)](https://github.com/JulienMaille/dribbblish-dynamic-theme/issues/87#issuecomment-954305428) +- Some sidebar items having wrong width on hover [(this)](https://github.com/JulienMaille/dribbblish-dynamic-theme/issues/87#issuecomment-954305428) - Broken sidebar hover effect with unsticked items (#69) - `Sidebar config` buttons being below the text - "Liked Songs" having an playing indicator wich looks bad (#87) - Queue icon is hidden (#73) (Temporary until a better solution is found) - Playbar album name is now white again -Improved: +Improved: - Background image now dosen't leak out of the main center area -- Sidebar playlist icon images are now properly displayed and won't look stretched anymore \ No newline at end of file +- Sidebar playlist icon images are now properly displayed and won't look stretched anymore +- Better install script for MacOs/Linux diff --git a/README.md b/README.md index 265236a..9eac884 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,8 @@ curl -fsSL https://raw.githubusercontent.com/JulienMaille/dribbblish-dynamic-the 1. Download the latest [DribbblishDynamic_vX.X.X.zip](https://github.com/JulienMaille/dribbblish-dynamic-theme/releases/latest) 2. Extract the files to your [Spicetify/Themes folder](https://github.com/khanhas/spicetify-cli/wiki/Customization#themes) 3. Copy `dribbblish-dynamic.js` to your [Spicetify/Extensions folder](https://github.com/khanhas/spicetify-cli/wiki/Extensions#installing) -4. Run: +4. Add the 2 lines in Patch section of the config file (see details below) +5. Run: ``` spicetify config extensions dribbblish-dynamic.js spicetify config current_theme DribbblishDynamic @@ -55,7 +56,7 @@ From Spotify > v1.1.62, in sidebar, they use an adaptive render mechanic to acti ```ini [Patch] xpui.js_find_8008 = ,(\w+=)32, -xpui.js_repl_8008 = ,${1}56, +xpui.js_repl_8008 = ,${1}58, ``` ## Hide Window Controls @@ -74,6 +75,11 @@ In addition to `--transparent-window-controls` you can set `Windows Top Bars` to Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/JulienMaille/dribbblish-dynamic-theme/master/uninstall.ps1" | Invoke-Expression ``` +### Linux/MacOS (Bash) +```bash +curl -fsSL https://raw.githubusercontent.com/JulienMaille/dribbblish-dynamic-theme/master/uninstall.sh | sh +``` + ### Manual Uninstall 1. Remove Patch lines you added in config file earlier. 2. Run: diff --git a/install.ps1 b/install.ps1 index 8a938f9..dc2eb36 100644 --- a/install.ps1 +++ b/install.ps1 @@ -7,7 +7,7 @@ param ( $PSMinVersion = 3 if ($v) { - $version = $v + $version = $v } # Helper functions for pretty terminal output. @@ -32,8 +32,8 @@ if ($PSVersionTable.PSVersion.Major -gt $PSMinVersion) { $checkSpice = Get-Command spicetify -ErrorAction Silent if ($null -eq $checkSpice) { - Write-Host -ForegroundColor Red "Spicetify not found" - Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/khanhas/spicetify-cli/master/install.ps1" | Invoke-Expression + Write-Host -ForegroundColor Red "Spicetify not found" + Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/khanhas/spicetify-cli/master/install.ps1" | Invoke-Expression } if (-not $version) { @@ -91,31 +91,38 @@ if ($PSVersionTable.PSVersion.Major -gt $PSMinVersion) { Write-Part "INSTALLING"; cd $sp_dot_dir Copy-Item dribbblish-dynamic.js ..\..\Extensions - spicetify config extensions default-dynamic.js- extensions dribbblish-dynamic.js- extensions dribbblish.js- extensions Vibrant.min.js- - spicetify config extensions dribbblish-dynamic.js + spicetify config extensions default-dynamic.js- extensions dribbblish.js- extensions Vibrant.min.js- extensions dribbblish-dynamic.js spicetify config current_theme DribbblishDynamic spicetify config color_scheme base spicetify config inject_css 1 replace_colors 1 overwrite_assets 1 - spicetify apply Write-Done # Add patch Write-Part "PATCHING "; Write-Emphasized "config-xpui.ini" $configFile = Get-Content "$spicePath\config-xpui.ini" if (-not ($configFile -match "xpui.js_find_8008")) { - $rep = @" + $rep = @" [Patch] xpui.js_find_8008=,(\w+=)32, -xpui.js_repl_8008=,`${1}56, +xpui.js_repl_8008=,`${1}58, "@ - # In case missing Patch section - if (-not ($configFile -match "\[Patch\]")) { - $configFile += "`n[Patch]`n" - } - $configFile = $configFile -replace "\[Patch\]",$rep - Set-Content "$spicePath\config-xpui.ini" $configFile + # In case missing Patch section + if (-not ($configFile -match "\[Patch\]")) { + $configFile += "`n[Patch]`n" + } + $configFile = $configFile -replace "\[Patch\]",$rep + Set-Content "$spicePath\config-xpui.ini" $configFile } Write-Done + + Write-Part "APPLYING"; + $backupVer = $configFile -match "^version" + $version = ConvertFrom-StringData $backupVer[0] + if ($version.version.Length -gt 0) { + spicetify apply + } else { + spicetify backup apply + } } else { Write-Part "`nYour Powershell version is less than "; Write-Emphasized "$PSMinVersion"; diff --git a/install.sh b/install.sh index f447b4f..5931edb 100644 --- a/install.sh +++ b/install.sh @@ -51,9 +51,20 @@ echo "INSTALLING" cd "$(dirname "$(spicetify -c)")/Themes/DribbblishDynamic" mkdir -p ../../Extensions cp dribbblish-dynamic.js ../../Extensions/. -spicetify config extensions default-dynamic.js- extensions dribbblish-dynamic.js- extensions dribbblish.js- extensions Vibrant.min.js- -spicetify config extensions dribbblish-dynamic.js +spicetify config extensions default-dynamic.js- extensions dribbblish.js- extensions Vibrant.min.js- extensions dribbblish-dynamic.js spicetify config current_theme DribbblishDynamic spicetify config color_scheme base spicetify config inject_css 1 replace_colors 1 overwrite_assets 1 -spicetify apply + +echo "PATCHING" +PATCH='[Patch] +xpui.js_find_8008 = ,(\\w+=)32, +xpui.js_repl_8008 = ,\${1}58,' +if cat config-xpui.ini | grep -o '\[Patch\]'; then + perl -i -0777 -pe "s/\[Patch\].*?($|(\r*\n){2})/$PATCH\n\n/s" config-xpui.ini +else + echo -e "\n$PATCH" >> config-xpui.ini +fi + +echo "APPLYING" +spicetify apply \ No newline at end of file diff --git a/uninstall.sh b/uninstall.sh new file mode 100644 index 0000000..dd60cf9 --- /dev/null +++ b/uninstall.sh @@ -0,0 +1,16 @@ +#!/bin/sh +# Copyright 2019 khanhas. GPL license. +# Edited from project Denoland install script (https://github.com/denoland/deno_install) + +set -e + +echo "UN-INSTALLING" +cd "$(dirname "$(spicetify -c)")/Themes/DribbblishDynamic" +spicetify config current_theme " " extensions dribbblish-dynamic.js- + +echo "UN-PATCHING" +if cat config-xpui.ini | grep -o '\[Patch\]'; then + perl -i -0777 -pe "s/\[Patch\].*?($|(\r*\n){2})//s" config-xpui.ini +fi + +spicetify apply