""" * Author: "PepDebian(peppermintosteam@proton.me)" * License: SPDX-License-Identifier: GPL-3.0-or-later * This file contains functions used for the Welcome Screen. """ import os import subprocess # Paths for the tools USER_HOME = os.path.expanduser("~") SPATH = os.path.join(USER_HOME, ".local/share/pmostools/peptools") def open_default_browser(url): """ Open a URL using the system's default browser. :param url: The URL to open. """ try: subprocess.run(["xdg-open", url], check=True) print(f"Opening: {url}") except FileNotFoundError: print("Error: 'xdg-open' not found. Please install xdg-utils.") except subprocess.CalledProcessError: print("Error: Unable to open the default browser. Is xdg-open configured?") def suggested_packages(): """Open the suggested packages script.""" script_path = os.path.join(SPATH, "suggested.py") try: subprocess.run(["python3", script_path], check=True) except FileNotFoundError: print(f"Error: {script_path} not found.") def about(): """Open the About page.""" open_default_browser("https://peppermintos.com/about/") ## SSB Functions ## def pep_docs(): """Open Peppermint Documentation.""" open_default_browser("https://peppermint_os.codeberg.page/html/") # Community Section def mastodon(): """Open Mastodon.""" open_default_browser("https://fosstodon.org/@peppermintos") def code_berg(): """Open Codeberg.""" open_default_browser("https://codeberg.org/Peppermint_OS") def matrix(): """Open Matrix.""" open_default_browser("https://matrix.to/#/!JhPtEbNexzFaoOkvGp:matrix.org?via=matrix.org") def source_forge(): """Open SourceForge.""" open_default_browser("https://sourceforge.net/p/peppermintos/pepos/") def build_date(): """Open BuildDate wiki.""" open_default_browser("https://sourceforge.net/p/peppermintos/pepwiki/BuildDate/")