Skip to content

dev_codeStructure

Xmetalfanx edited this page Mar 31, 2023 · 3 revisions

dir/folder structure

note: (May 2022: this may need to be updated)

  • /function
    • arch - arch-based distro code
      • /aurRelated
        • (combining these two may be a good idea)
        • f_aurHelperGeneral.cfg - functions related to the AUR, reading settings (if the AUR helper is set), and things of that nature
        • f_aurHelperInstall.cfg - actual functions to install trizen or yay
      • arch.cfg
        • Add Sound and Archive support additions
        • Add Virtualbox
      • archmenus.cfg - contains menus for stuff like adding AUR support with Trizen or Yay
      • manjaro.cfg - code specific to manjaro and not arch
    • /check
      • fcommandChecks.cfg
        • wget and curl check
        • lsb related checks on the current distro
      • f_debianCheck.cfg, f_fedoraCheck.cfg, f_openSUSEChecks.cfg, f_ubuntuCheck.cfg - checks distro info to determine if the distro is EOL or supported
    • /debian - Debian based distro
      • debian specific code
        • includes what (?? my phrasing here ... like "non-free" and "contrib") is set in sources.list
    • /fedora
      • f_fedora.cfg - general/'catch all" file for Fedora related code
      • f_fedoraMenu.cfg - The Fedora menus
      • f_fedoraTheming.cfg - code related to theming specifically in Fedora
      • f_fedyTasks.cfg - tasks related to Fedy
    • /gitRelated
      • gitfunctions.cfg - code related to getting software or packages from git
    • /info
      • /specific
        • f_getGTKInfo.cfg - functions to get GTK related info
        • getPlasmaInfo.cfg - functions to get info about the Plasma 5 DE
      • /support
        • distrosEOL_supported.cfg
        • distrosEOL.not_support.cfg
      • f_DEInfo.cfg - functions to get info about the desktop environment being used
      • f_generalInfo.cfg -
        • functions and code that uses various methods (LSB related and the os_release file included) to get bits of information about the running system
        • counts some checks for wget and curl on first run
      • f_infoOutput.cfg - functions to display various output back to the user, concerning what the scripts are detecting, for example
    • /opensuse
      • f_openSUSECinnamon.cfg - code related to installing Cinnamon (no live media for Cinnamon for openSUSE)
        • this doesn't count the spin "Gecko Linux"
      • f_openSUSEMultimedia.cfg - functions related to getting multimedia working on OpenSUSE
    • /screenfetch - code related to (copy and pasted likely) from Screenfetch
    • /solus
      • f_solus.cfg - Solus specific functions
    • /ubuntu
      • /menu
        • f_ubuntu_menus.cfg - specific menus for ubuntu based distros
          • this is only for elementary for now ... ubuntu mate related code i had years ago was no longer needed
      • /PPAs
        • f_multimedia_ppas.cfg
        • f_ppa_maintance.cfg
        • f_ubuntu_ppas.cfg
      • /tic - (Theme, Icon, Cursors)
        • f_ubuntu_bionic_theming - a few functions SPECIFIC to Bionic (Ubuntu 18.04)
        • f_ubuntu_theming - sort of a catch-all file with functions for various ubuntu bases (theme related)
      • f_ubuntu.cfg - function
      • f_ubuntuSoftware.cfg -
    • /universal -
      • all the files/folders below are "universal" ... aka they have code for various distro bases andd are NOT specific to any one base
      • /menus - f_universal_submenus.cfg - submenus for the scripts off of the main menu
      • /pmanagement -
        • /archbased -
          • archBasedPMan.cfg
            • note to self: consider renaming this file better
        • /thirdparty
          • /universalApps - function files more specific than f_universalApps.cfg
            • note to self: should i move f_universalApps.cfg into here?
            • f_flatpak_menus.cfg - various menus giving the user the chance to install the flatpaks they want for some popular software
            • f_flatpak_software.cfg - like a var file, who's contents are used by other flatpak related functions
            • f_flatpak_xmetal.cfg - functions for me that mass install the flatpaks that I use (or think I will) - this uses other functions
            • f_flatpak.cfg
            • f_snap.cfg - functions related to Snap packages
          • f_thirdParty.cfg
          • f_thirdPartyRepo.cfg
          • f_universalApps.cfg - functions related to universal apps including snaps, flatpaks, appimages
            • right now only has code related to appimage
      • /software -
        • /multimedia
        • /wine
        • f_browsers.cfg
        • f_cli_related.cfg
        • f_multimediaSoftware.cfg
        • f_productivitySoftware.cfg
        • f_universalSoftware.cfg
      • /tic -
        • /themes -
    • f_common.cfg
    • f_createMenuItems.cfg
    • f_mainSubMenu.cfg
    • f_timeVariables.cfg
    • f_variables.cfg
    • includeBasicConfig.cfg
    • includeSpecificDistroCfg.cfg
Clone this wiki locally