├── .github └── FUNDING.yml ├── LICENSE ├── README.md ├── WhiteSur-Tweaked.png ├── chrome ├── userChrome.css └── userContent.css ├── configuration └── user.js ├── installer32.bat ├── installer64.bat ├── isAppInstalled32.ps1 ├── isAppInstalled64.ps1 ├── isInstalled.bat ├── isNotInstalled32.bat ├── isNotInstalled64.bat ├── linux code.png └── script.ps1 /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] 4 | patreon: Firefoxcss 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: FirefoxCSSThemers 7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: https://gumroad.com/firefoxcss/membership 13 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 WhiteSur Developers, Firefox CSS Themers, AdamXweb 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # WhiteSur Firefox Theme 2 | > A Firefox theme made by Agnihotra Nath to simulate Safari on macOS Big Sur 11. Works best on Proton. 3 | > Based on [vinceliuice](https://github.com/vinceliuice)'s [WhiteSur-Gtk-Theme](https://github.com/vinceliuice/whitesur-gtk-theme), we have taken inspiration from his code, to implement certain features. A big shoutout to all the WhiteSur developers, without whom, WhiteSur wouldn't exist! 4 | 5 | [![Discord](https://discord.com/api/guilds/857425002727079940/widget.png)](https://discord.gg/d3Mw2PHCNk) 6 | [![Github All Releases](https://img.shields.io/github/downloads/firefoxcssthemers/whitesur-tweaked/total.svg?style=flat&logo=github)](https://github.com/mydockfinder//releases) 7 | [![GitHub release](https://img.shields.io/github/release/firefoxcssthemers/whitesur-tweaked.svg?style=flat&logo=github)](https://github.com/firefoxcssthemers/whitesur-tweaked/releases) 8 | 9 | ### Contributors 10 | > - Theme made by [**Agnihotra Nath**](https://github.com/AlfarexGuy2019) with inspiration from [**WhiteSur-Gtk-theme**](https://github.com/vinceliuice/whitesur-gtk-theme). 11 | > - Installation scripts made by [**Javier Latorre**](https://github.com/TheGamerPro0013) with the help of [**Lubzz**](https://github.com/Lubzz). 12 | > - Published by [**Javier Latorre**](https://github.com/TheGamerPro0013) and [**Agnihotra Nath**](https://github.com/AlfarexGuy2019). 13 | 14 | ### Screenshot 15 | ![image](https://user-images.githubusercontent.com/78948152/127859108-f447b7f4-552b-45b3-bff0-2eecd3e5664f.png) 16 | 17 | ### Version 18 | 3.0 19 | 20 | ### Compatibility 21 | > This release was tested on the following platforms (only supports Firefox 70+): 22 | > - Windows 10 (Home, Pro, Enterprise, LTSB, LTSC and Education) 23 | > - Untested on macOS and Linux. This doesn't mean it won't work on these Operating Systems, this just means it isn't tested yet. If you want to contribute, please test it on any of these and fill in an issue with the distro you use or the macOS version it was tested on, and obviously the results. 24 | 25 | ### Fix for Window Managers: 26 | > Paste the following into the `userChrome.css` file: 27 | 28 | ```css 29 | /* Headerbar */ 30 | #nav-bar { 31 | padding: 8px 16px !important; 32 | padding-left: 15px !important; 33 | } 34 | ``` 35 | 36 | ### Automated Installation Steps 37 | > Download the installer file for your architecture from the `Releases` tab (`installer64.bat` for 64-bit systems; `installer32.bat` for both 32-bit and 64-bit systems). 38 | 39 | #### Note about Automated Installation 40 | > The script is done, but it's not fully tested yet. If you find any issue, please fill in one on the `Issues` tab. 41 | 42 | ### Manual Installation Steps 43 | > Copy the `chrome` and `configuration` folders into your Firefox Profile directory. Here are the detailed install steps: 44 | > 1. Go to `about:support` in Firefox. 45 | > 2. Search for Application Basics, find Profile Directory and click on Open Directory. 46 | > 3. Copy the folders mentioned above into the Profile folder (usually has `-release` at the end). 47 | > 4. This step is crucial. If you do it wrong, you can brick your Firefox installation. 48 | > 1. Go to `about:config` in Firefox. 49 | > 2. Search for `toolkit.legacyUserProfileCustomizations.stylesheets` and set it to `true` by clicking on the arrow button. 50 | > 5. Restart Firefox. 51 | > 6. You're done! 52 | 53 | ### DISCLAIMER 54 | > All information in the Service is provided "as is", with no guarantee of completeness, accuracy, timeliness or of the results obtained from the use of this information, and without warranty of any kind, express or implied, including, but not limited to warranties of performance, merchantability and fitness for a particular purpose. 55 | > 56 | > The Company will not be liable to You or anyone else for any decision made or action taken in reliance on the information given by the Service or for any consequential, special or similar damages, even if advised of the possibility of such damages. 57 | 58 |
59 | 60 | ### Attributions: 61 | 62 | - [WhiteSurFirefoxThemeMacOS by AdamXweb](https://github.com/AdamXweb/WhiteSurFirefoxThemeMacOS/) 63 | - [WhiteSur-Gtk-Theme by vinceliuice](https://github.com/vinceliuice/whitesur-gtk-theme) 64 | -------------------------------------------------------------------------------- /WhiteSur-Tweaked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirefoxCSSThemers/WhiteSur-FirefoxTheme/31c2d16d8b988e06a625ba56e7403220e681add7/WhiteSur-Tweaked.png -------------------------------------------------------------------------------- /chrome/userChrome.css: -------------------------------------------------------------------------------- 1 | @import "userContent/NewTab.css"; 2 | @import "userContent/Preferences.css"; 3 | 4 | 5 | /* Import theme */ 6 | 7 | @import "WhiteSur/theme.css"; /**/ 8 | 9 | @import "customChrome.css"; /**/ 10 | 11 | /* Fix tab not centering while playing audio */ 12 | /* remove ":not([soundplaying]):not([muted]):not([activemediablocked])" from line 123 of taskbar.css it should look like this*/ 13 | .tabbrowser-tab .tab-close-button { 14 | margin-left: auto !important; 15 | } 16 | 17 | /* Fix menu button size */ 18 | /* margin-inline-start doesn't work for doing the same thing but without messing its size */ 19 | #PanelUI-menu-button { 20 | padding-inline-end: 2px !important; 21 | } 22 | 23 | /* Fix button at the left size */ 24 | /* margin-inline-start doesn't work for doing the same thing but without messing its size */ 25 | #nav-bar-customization-target > :is(toolbarbutton, toolbaritem):first-child, #nav-bar-customization-target > toolbarpaletteitem:first-child > :is(toolbarbutton, toolbaritem) { 26 | padding-inline-start: 2px !important; 27 | } 28 | 29 | /* Fix proton tabs */ 30 | .tab-background { 31 | margin-block: 0px !important; 32 | border-radius: 0px !important; 33 | } 34 | 35 | /* Fix proton arrows changing tab list size */ 36 | #tabbrowser-arrowscrollbox::part(scrollbutton-up), #tabbrowser-arrowscrollbox::part(scrollbutton-down) { 37 | border: 0px !important; 38 | } 39 | 40 | /* Fix reload button glitching (aka. remove animation) */ 41 | .toolbarbutton-animatable-box { 42 | display: none !important; 43 | } 44 | -------------------------------------------------------------------------------- /chrome/userContent.css: -------------------------------------------------------------------------------- 1 | @import "userContent/NewTab.css"; 2 | @import "userContent/Preferences.css"; 3 | -------------------------------------------------------------------------------- /configuration/user.js: -------------------------------------------------------------------------------- 1 | /* user.js 2 | * https://github.com/rafaelmardojai/firefox-gnome-theme/ 3 | */ 4 | 5 | // Enable customChrome.css 6 | user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true); 7 | 8 | // Enable CSD 9 | user_pref("browser.tabs.drawInTitlebar", true); 10 | 11 | // Set UI density to normal 12 | user_pref("browser.uidensity", 0); 13 | 14 | -------------------------------------------------------------------------------- /installer32.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | echo This script works for both 32-Bit and 64-Bit CPUs. If you want to download the 64-Bit version, go here: https://github.com/FirefoxCSSThemers/WhiteSur-Tweaked/raw/main/installer64.bat 3 | timeout 5 4 | echo Searching for already installed packages... 5 | cd C:\ 6 | PowerShell -Command "Invoke-WebRequest https://raw.githubusercontent.com/FirefoxCSSThemers/WhiteSur-Tweaked/main/isAppInstalled32.ps1 -Outfile isAppInstalled32.ps1" 7 | -------------------------------------------------------------------------------- /installer64.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | echo This script will only work with 64-Bit CPUs. If you downloaded this script by error, please press Ctrl+C within 5 seconds and hit 'y' to close it. 3 | timeout 5 > nul 4 | echo Searching for already installed packages... 5 | cd C:\ 6 | PowerShell -Command "Invoke-WebRequest https://raw.githubusercontent.com/FirefoxCSSThemers/WhiteSur-Tweaked/main/isAppInstalled64.ps1 -Outfile isAppInstalled64.ps1" -------------------------------------------------------------------------------- /isAppInstalled32.ps1: -------------------------------------------------------------------------------- 1 | $software = "PowerShell 7-x86"; 2 | $installed = (Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Where { $_.DisplayName -Match $software }) 3 | $installed.displayname 4 | if ($installed.displayName -match "PowerShell 7-x86") { 5 | Set-Location C:\ 6 | Invoke-WebRequest https://raw.githubusercontent.com/FirefoxCSSThemers/WhiteSur-Tweaked/main/isInstalled.bat -Outfile isInstalled.bat 7 | isInstalled.bat 8 | }else{ 9 | Set-Location C:\ 10 | Invoke-WebRequest https://raw.githubusercontent.com/FirefoxCSSThemers/WhiteSur-Tweaked/main/isNotInstalled32.bat -Outfile isNotInstalled32.bat 11 | isNotInstalled32.bat 12 | } -------------------------------------------------------------------------------- /isAppInstalled64.ps1: -------------------------------------------------------------------------------- 1 | $software = "PowerShell 7-x64"; 2 | $installed = (Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Where { $_.DisplayName -Match $software }) 3 | $installed.displayname 4 | if ($installed.displayName -match "PowerShell 7-x64") { 5 | Set-Location C:\ 6 | Invoke-WebRequest https://raw.githubusercontent.com/FirefoxCSSThemers/WhiteSur-Tweaked/main/isInstalled.bat -Outfile isInstalled.bat 7 | isInstalled.bat 8 | }else{ 9 | Set-Location C:\ 10 | Invoke-WebRequest https://raw.githubusercontent.com/FirefoxCSSThemers/WhiteSur-Tweaked/main/isNotInstalled64.bat -Outfile isNotInstalled64.bat 11 | isNotInstalled64.bat 12 | } -------------------------------------------------------------------------------- /isInstalled.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | echo Downloading the script... 3 | cd C:\ 4 | PowerShell -Command "Invoke-WebRequest https://raw.githubusercontent.com/FirefoxCSSThemers/WhiteSur-Tweaked/main/script.ps1 -Outfile script.ps1" 5 | echo Script downloaded! 6 | timeout 2 > nul 7 | echo Running script... 8 | timeout 1 > nul 9 | pwsh.exe -NoLogo -NoProfile -ExecutionPolicy Bypass -Command "& 'C:\script.ps1'" -------------------------------------------------------------------------------- /isNotInstalled32.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | echo No installed packages found! Downloading... 3 | cd C:\ 4 | PowerShell -Command "Invoke-WebRequest https://github.com/PowerShell/PowerShell/releases/download/v7.1.3/PowerShell-7.1.3-win-x86.msi -Outfile PowerShell32.msi" 5 | echo Installing PowerShell Core 7.1.3... 6 | start /wait msiexec.exe /i PowerShell32.msi /l*v pwsh32.log 7 | echo Downloading the script... 8 | PowerShell -Command "Invoke-WebRequest https://raw.githubusercontent.com/FirefoxCSSThemers/WhiteSur-Tweaked/main/script.ps1 -Outfile script.ps1" 9 | echo Script downloaded! 10 | timeout 2 > nul 11 | echo Running script... 12 | timeout 1 > nul 13 | pwsh.exe -NoLogo -NoProfile -ExecutionPolicy Bypass -Command "& 'C:\script.ps1'" -------------------------------------------------------------------------------- /isNotInstalled64.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | echo No installed packages found! Downloading... 3 | cd C:\ 4 | PowerShell -Command "Invoke-WebRequest https://github.com/PowerShell/PowerShell/releases/download/v7.1.3/PowerShell-7.1.3-win-x64.msi -Outfile PowerShell.msi" 5 | echo Installing PowerShell Core 7.1.3... 6 | start /wait msiexec.exe /i PowerShell.msi /l*v pwsh.log 7 | echo Downloading the script... 8 | PowerShell -Command "Invoke-WebRequest https://raw.githubusercontent.com/FirefoxCSSThemers/WhiteSur-Tweaked/main/script.ps1 -Outfile script.ps1" 9 | echo Script downloaded! 10 | timeout 2 > nul 11 | echo Running script... 12 | timeout 1 > nul 13 | pwsh.exe -NoLogo -NoProfile -ExecutionPolicy Bypass -Command "& 'C:\script.ps1'" -------------------------------------------------------------------------------- /linux code.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirefoxCSSThemers/WhiteSur-FirefoxTheme/31c2d16d8b988e06a625ba56e7403220e681add7/linux code.png -------------------------------------------------------------------------------- /script.ps1: -------------------------------------------------------------------------------- 1 | function Show-Menu 2 | { 3 | param ( 4 | [string]$Title = 'Firefox Theme Installer (WhiteSur Tweaked)' 5 | ) 6 | Clear-Host 7 | Write-Host "================ $Title ================" 8 | 9 | Write-Host "1: Press '1' to install the theme to Firefox." 10 | Write-Host "2: Press '2' to install the theme to Firefox Nightly." 11 | Write-Host "3: Press '3' to restart Firefox." 12 | Write-Host "Q: Press 'Q' to quit." 13 | } 14 | 15 | Show-Menu –Title 'Firefox Theme Installer (WhiteSur Tweaked)' 16 | $selection = Read-Host "Please make a selection" 17 | switch ($selection) 18 | { 19 | '1' { 20 | 'Setting location to your Firefox Profile...' 21 | Set-Location C:\%USERPROFILE%\AppData\Roaming\Mozilla\Firefox\Profiles\*.default-release 22 | 'Downloading the theme files...' 23 | Invoke-WebRequest -Uri https://github.com/FirefoxCSSThemers/WhiteSur-Tweaked/releases/latest/download/theme.zip -OutFile theme.zip 24 | 'Unzipping the archive...' 25 | Expand-Archive -Path theme.zip -DestinationPath C:\%USERPROFILE%\AppData\Roaming\Mozilla\Firefox\Profiles\*.default-release -Force 26 | 'Killing Firefox...' 27 | taskkill.exe /f /im firefox.exe 28 | 'Restarting Firefox...' 29 | Set-Location C:\Program` Files\Mozilla` Firefox 30 | ./firefox.exe 31 | 'Next Steps:' 32 | 'Go to about:config in Firefox, search for toolkit.legacyUserProfileCustomizations.stylesheets and set it to true.' 33 | 'Come back and restart Firefox.' 34 | } '2' { 35 | 'Setting location to your Firefox Profile...' 36 | Set-Location C:\%USERPROFILE%\AppData\Roaming\Mozilla\Firefox\Profiles\*.default-nightly 37 | 'Downloading the theme files...' 38 | Invoke-WebRequest -Uri https://github.com/FirefoxCSSThemers/WhiteSur-Tweaked/releases/latest/download/theme.zip -OutFile theme.zip 39 | 'Unzipping the archive...' 40 | Expand-Archive -Path theme.zip -DestinationPath C:\%USERPROFILE%\AppData\Roaming\Mozilla\Firefox\Profiles\*.default-nightly -Force 41 | 'Killing Firefox...' 42 | taskkill.exe /f /im firefox.exe 43 | 'Restarting Firefox...' 44 | Set-Location C:\Program` Files\Mozilla Firefox 45 | ./firefox.exe 46 | 'Next Steps:' 47 | 'Go to about:config in Firefox, search for toolkit.legacyUserProfileCustomizations.stylesheets and set it to true.' 48 | 'Come back and restart Firefox.' 49 | } '3' { 50 | 'Killing Firefox...' 51 | taskkill.exe /f /im firefox.exe 52 | 'Restarting Firefox...' 53 | Set-Location C:\Program` Files\Mozilla` Firefox 54 | ./firefox.exe 55 | 'Done!' 56 | } 'Q' { 57 | return 58 | } 59 | } 60 | --------------------------------------------------------------------------------