@@ -55,12 +55,13 @@ def wrapper(*args):
5555PROFILES_DIR = os .path .join (ICE_DIR , "profiles" )
5656FIREFOX_PROFILES_DIR = os .path .join (ICE_DIR , "firefox" )
5757FIREFOX_FLATPAK_PROFILES_DIR = os .path .expanduser ("~/.var/app/org.mozilla.firefox/data/ice/firefox" )
58+ FIREFOX_SNAP_PROFILES_DIR = os .path .expanduser ("~/snap/firefox/common/.mozilla/firefox" )
5859LIBREWOLF_FLATPAK_PROFILES_DIR = os .path .expanduser ("~/.var/app/io.gitlab.librewolf-community/data/ice/librewolf" )
5960WATERFOX_FLATPAK_PROFILES_DIR = os .path .expanduser ("~/.var/app/net.waterfox.waterfox/data" )
6061EPIPHANY_PROFILES_DIR = os .path .join (ICE_DIR , "epiphany" )
6162FALKON_PROFILES_DIR = os .path .join (ICE_DIR , "falkon" )
6263ICONS_DIR = os .path .join (ICE_DIR , "icons" )
63- BROWSER_TYPE_FIREFOX , BROWSER_TYPE_FIREFOX_FLATPAK , BROWSER_TYPE_LIBREWOLF_FLATPAK , BROWSER_TYPE_WATERFOX_FLATPAK , BROWSER_TYPE_CHROMIUM , BROWSER_TYPE_EPIPHANY , BROWSER_TYPE_FALKON = range (7 )
64+ BROWSER_TYPE_FIREFOX , BROWSER_TYPE_FIREFOX_FLATPAK , BROWSER_TYPE_FIREFOX_SNAP , BROWSER_TYPE_LIBREWOLF_FLATPAK , BROWSER_TYPE_WATERFOX_FLATPAK , BROWSER_TYPE_CHROMIUM , BROWSER_TYPE_EPIPHANY , BROWSER_TYPE_FALKON = range (8 )
6465
6566class Browser :
6667
@@ -178,6 +179,7 @@ def get_supported_browsers():
178179 Browser (BROWSER_TYPE_FIREFOX , "Firefox Extended Support Release" , "firefox-esr" , "/usr/bin/firefox-esr" ),
179180 Browser (BROWSER_TYPE_FIREFOX_FLATPAK , "Firefox (Flatpak)" , "/var/lib/flatpak/exports/bin/org.mozilla.firefox" , "/var/lib/flatpak/exports/bin/org.mozilla.firefox" ),
180181 Browser (BROWSER_TYPE_FIREFOX_FLATPAK , "Firefox (Flatpak)" , ".local/share/flatpak/exports/bin/org.mozilla.firefox" , ".local/share/flatpak/exports/bin/org.mozilla.firefox" ),
182+ Browser (BROWSER_TYPE_FIREFOX_SNAP , "Firefox (Snap)" , "/snap/bin/firefox" , "/snap/bin/firefox" ),
181183 Browser (BROWSER_TYPE_CHROMIUM , "Brave" , "brave" , "/usr/bin/brave" ),
182184 Browser (BROWSER_TYPE_CHROMIUM , "Brave Browser" , "brave-browser" , "/usr/bin/brave-browser" ),
183185 Browser (BROWSER_TYPE_CHROMIUM , "Brave (Bin)" , "brave-bin" , "/usr/bin/brave-bin" ),
@@ -227,6 +229,8 @@ def get_supported_browsers():
227229
228230 def delete_webbapp (self , webapp ):
229231 shutil .rmtree (os .path .join (FIREFOX_PROFILES_DIR , webapp .codename ), ignore_errors = True )
232+ shutil .rmtree (os .path .join (FIREFOX_FLATPAK_PROFILES_DIR , webapp .codename ), ignore_errors = True )
233+ shutil .rmtree (os .path .join (FIREFOX_SNAP_PROFILES_DIR , webapp .codename ), ignore_errors = True )
230234 shutil .rmtree (os .path .join (PROFILES_DIR , webapp .codename ), ignore_errors = True )
231235 # first remove symlinks then others
232236 if os .path .exists (webapp .path ):
@@ -283,9 +287,14 @@ def create_webapp(self, name, url, icon, category, browser, custom_parameters, i
283287 pass
284288
285289 def get_exec_string (self , browser , codename , custom_parameters , icon , isolate_profile , navbar , privatewindow , url ):
286- if browser .browser_type in [BROWSER_TYPE_FIREFOX , BROWSER_TYPE_FIREFOX_FLATPAK ]:
290+ if browser .browser_type in [BROWSER_TYPE_FIREFOX , BROWSER_TYPE_FIREFOX_FLATPAK , BROWSER_TYPE_FIREFOX_SNAP ]:
287291 # Firefox based
288- firefox_profiles_dir = FIREFOX_PROFILES_DIR if browser .browser_type == BROWSER_TYPE_FIREFOX else FIREFOX_FLATPAK_PROFILES_DIR
292+ if browser .browser_type == BROWSER_TYPE_FIREFOX :
293+ firefox_profiles_dir = FIREFOX_PROFILES_DIR
294+ elif browser .browser_type == BROWSER_TYPE_FIREFOX_FLATPAK :
295+ firefox_profiles_dir = FIREFOX_FLATPAK_PROFILES_DIR
296+ else :
297+ firefox_profiles_dir = FIREFOX_SNAP_PROFILES_DIR
289298 firefox_profile_path = os .path .join (firefox_profiles_dir , codename )
290299 exec_string = ("sh -c 'XAPP_FORCE_GTKWINDOW_ICON=\" " + icon + "\" " + browser .exec_path +
291300 " --class WebApp-" + codename +
0 commit comments