DevEx LogoMy App
Platform Support

Platform Support Overview

Complete overview of DevEx platform compatibility and installer support

Platform Support Overview

DevEx is designed to work across multiple operating systems and package managers, providing a unified development environment setup experience regardless of your platform.

Supported Platforms

DevEx automatically detects your platform and selects the best installer for your system.

Primary Support (Full Testing)

PlatformStatusPackage ManagersDesktop Environments
Ubuntu/Debian✅ PrimaryAPT, Flatpak, SnapGNOME, KDE, XFCE, Unity
Fedora/RHEL✅ ActiveDNF, RPM, FlatpakGNOME, KDE, XFCE
Arch Linux✅ ActivePacman, Yay, FlatpakGNOME, KDE, XFCE
macOS✅ ActiveHomebrew, Mac App StoreNative macOS

Secondary Support (Community Tested)

PlatformStatusPackage ManagersNotes
openSUSE🔄 BetaZypper, FlatpakLeap and Tumbleweed
Alpine Linux🔄 BetaAPKContainer-focused
Gentoo🔄 BetaEmergeSource-based
Void Linux🔄 BetaXBPSIndependent
Windows 10/11🚧 PlannedWinGet, Chocolatey, ScoopUnder development

Platform Detection

DevEx automatically detects your platform using several methods:

Operating System Detection

  • Linux: Reads /etc/os-release and distribution-specific files
  • macOS: Uses runtime detection for Darwin systems
  • Windows: Runtime detection (planned)

Distribution Detection (Linux)

# DevEx checks in order:
1. /etc/os-release (ID field)
2. Distribution-specific files:
   - /etc/ubuntu-release (Ubuntu)
   - /etc/debian_version (Debian)
   - /etc/fedora-release (Fedora)
   - /etc/arch-release (Arch)
   - /etc/manjaro-release (Manjaro)
   - /etc/SUSE-release (openSUSE)

Desktop Environment Detection (Linux)

DevEx detects your desktop environment for theme and configuration management:

  • GNOME: GNOME_DESKTOP_SESSION_ID or XDG_CURRENT_DESKTOP=GNOME
  • KDE: KDE_FULL_SESSION or XDG_CURRENT_DESKTOP=KDE
  • XFCE: XDG_CURRENT_DESKTOP=XFCE
  • Unity: XDG_CURRENT_DESKTOP=Unity
  • Cinnamon: DESKTOP_SESSION=cinnamon

Installer Priority System

DevEx automatically selects the best installer for your platform based on a priority system:

Linux (Debian/Ubuntu)

1. apt        (System package manager)
2. flatpak    (Universal Linux packages)
3. snap       (Ubuntu's universal packages)
4. mise       (Programming language manager)
5. curlpipe   (Direct downloads via curl)
6. download   (Manual downloads)

Linux (Fedora/RHEL)

1. dnf        (System package manager)
2. rpm        (Package files)
3. flatpak    (Universal Linux packages)
4. mise       (Programming language manager)
5. curlpipe   (Direct downloads via curl)
6. download   (Manual downloads)

Linux (Arch-based)

1. pacman     (System package manager)
2. yay        (AUR helper)
3. flatpak    (Universal Linux packages)
4. mise       (Programming language manager)
5. curlpipe   (Direct downloads via curl)
6. download   (Manual downloads)

macOS

1. brew       (Homebrew package manager)
2. mas        (Mac App Store CLI)
3. mise       (Programming language manager)
4. curlpipe   (Direct downloads via curl)
5. download   (Manual downloads)

Windows (Planned)

1. winget     (Windows Package Manager)
2. chocolatey (Community package manager)
3. scoop      (Command-line installer)
4. mise       (Programming language manager)
5. download   (Manual downloads)

Cross-Platform Applications

DevEx supports applications that have different installation methods per platform:

applications:
  development:
    - name: visual-studio-code
      description: 'Code editor by Microsoft'
      category: 'Development'
      default: true
      # macOS configuration
      macos:
        install_method: 'brew'
        install_command: '--cask visual-studio-code'
        official_support: true
      # Windows configuration  
      windows:
        install_method: 'winget'
        install_command: 'Microsoft.VisualStudioCode'
        official_support: true
      # Linux configuration
      linux:
        install_method: 'apt'
        install_command: 'code'
        official_support: true

Platform Requirements

Minimum System Requirements

ComponentRequirement
Memory512MB RAM
Storage100MB free space
NetworkInternet connection for downloads
ShellBash, Zsh, or Fish

Linux Requirements

  • Kernel: 3.10+ (most distributions)
  • glibc: 2.17+ (for binary compatibility)
  • systemd: Recommended for service management
  • sudo: Required for system package installation

macOS Requirements

  • Version: macOS 10.14+ (Mojave)
  • Xcode CLI Tools: Automatically installed if needed
  • Homebrew: Automatically installed if needed

Windows Requirements (Planned)

  • Version: Windows 10 1809+ or Windows 11
  • PowerShell: 5.1+ or PowerShell Core 7+
  • Windows Package Manager: Automatically installed if needed

Getting Started

  1. Check platform support: Run devex status to see detected platform
  2. View available installers: Run devex config list-installers
  3. Install applications: Run devex install to install default apps
  4. Customize: Edit configuration files in ~/.devex/

Use devex status --verbose to see detailed platform detection information including distribution, version, and desktop environment.

Platform-Specific Guides

Contributing Platform Support

Help us expand platform support:

  1. Test on your platform and report compatibility
  2. Submit installer implementations for new package managers
  3. Contribute platform detection improvements
  4. Document platform-specific issues and solutions

See our contribution guide for details.

On this page