Skip to content

Add Cross-Platform Support (macOS & Linux) #9

@vamsi-op

Description

@vamsi-op

Description

Currently, JARVIS only works on Windows (using start commands and Windows-specific apps). Make it cross-platform to work on macOS and Linux.

Current Issues

  • Application shortcuts are Windows-only (start chrome, start winword)
  • System commands use Windows syntax (shutdown /s /t 30)
  • File paths assume Windows structure

Implementation

  • Detect OS using platform.system()
  • Create platform-specific command dictionaries
  • Use subprocess instead of os.system() for better cross-platform support
  • Add macOS/Linux equivalent commands
  • Update documentation with platform-specific installation instructions

Example Structure

import platform
SYSTEM = platform.system()  # 'Windows', 'Darwin' (macOS), 'Linux'

APPLICATIONS = {
    'google': {
        'Windows': 'start chrome',
        'Darwin': 'open -a Google Chrome',
        'Linux': 'google-chrome'
    }
}

Benefits

  • Wider user base
  • Better project adoption
  • More contributors from different platforms

Priority

High

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions