Commit Graph
7 Commits
Author SHA1 Message Date
Jatin K MalikandGitHub 2b498f0888 fix: Phase 1 - Critical cross-distribution compatibility fixes (#158)
* fix: Phase 1 - Critical cross-distribution compatibility fixes

This commit implements the first phase of cross-distribution compatibility
improvements for Vocalinux, addressing the most critical issues that prevent
the application from working on non-Ubuntu distributions.

## Changes

### install.sh
- Add detect_typelib_path() function that dynamically discovers GI_TYPELIB_PATH
  using pkg-config with fallback to distribution-specific paths
- Update wrapper scripts (vocalinux, vocalinux-gui) to use detected path
- Support for: x86_64, arm64, armhf, riscv64, powerpc64le, s390x architectures
- Specific paths for: Ubuntu multiarch, Fedora/RHEL (lib64), Arch (lib)

### src/vocalinux/speech_recognition/recognition_manager.py
- Add _get_system_model_paths() function for dynamic model path discovery
- Enhance ALSA library detection with multiple library name fallbacks:
  - libasound.so.2, libasound.so, libasound.so.0, asound
- Support XDG_DATA_DIRS environment variable for model paths
- Distribution-specific paths for Fedora/RHEL/CentOS/Rocky/AlmaLinux
- Arch-specific handling (excludes /usr/local)

### src/vocalinux/utils/resource_manager.py
- Enhanced _find_resources_dir() with more candidate paths
- Support for XDG_DATA_DIRS environment variable
- Add lib64 and lib paths for Fedora/RHEL distributions
- Add Flatpak-specific path (/app/share/vocalinux/resources)

## Testing

All 462 existing tests pass.

## Related Issues

Fixes #157 (partial - Phase 1 of 5)

* chore: Remove analysis docs from PR, add to .gitignore

* style: Apply black formatting to pass lint checks
2026-02-07 16:26:49 -08:00
Jatin K MalikandGitHub 653007618b docs: Clarify VOSK and Whisper dependency installation in README (#67) (#76)
* docs: Clarify VOSK and Whisper dependency installation in README (#67)

- VOSK: installs the vosk Python package from PyPI
- Whisper: installs openai-whisper package from PyPI, which also pulls in PyTorch

Closes #67

* chore: Add Claude workflow rules to gitignore
2026-01-27 23:38:29 -08:00
Jatin K MalikandGitHub 7426055336 Fix: Prevent horizontal scrolling on mobile for code blocks (#59)
* Fix: Prevent horizontal scrolling on mobile for code blocks [web]

- Wrap SyntaxHighlighter components in overflow-x-auto containers
- Add customStyle prop with maxWidth and overflowX for proper mobile handling
- Add min-w-0 to parent cards to prevent grid overflow
- Wrap uninstall command pre tag in overflow container
- Ensures code blocks scroll within their containers on mobile devices

* Style: Match uninstall command box with install sections [web]

- Use SyntaxHighlighter for uninstall command (consistent with install sections)
- Add red icon background to distinguish from install commands
- Add descriptive subtitle 'Clean removal in one command'
- Extract uninstallCommand as constant like install commands
- Maintain responsive overflow handling for mobile
2026-01-19 23:21:38 -08:00
jatinkrmalik b90d497f5a fix: add package-lock.json for GitHub Actions caching
- Allow web/package-lock.json in .gitignore for npm caching
- Add package-lock.json to enable GitHub Actions dependency caching
- This fixes the 'unable to cache dependencies' error in CI
2025-05-25 21:16:27 -05:00
jatinkrmalik 27471242c5 Update gitignore 2025-05-25 20:54:40 -05:00
Jatin K MalikandGitHub a28f55b72e Add pre-commit hooks to match GitHub CI pipeline (#7)
* Add pre-commit hooks to match CI pipeline linting rules

* Add pre-commit hooks that match GitHub CI pipeline exactly

* Ran lint check
2025-04-17 00:05:34 -05:00
jatinkrmalik 7ed83c36a5 Add fallback text injection for Wayland and improve installation script 2025-04-07 17:44:19 -05:00