fix: Linux compatibility for Terminal, SignalManager, and AppStorage

- Replace #if os(Linux) with #if canImport(Glibc/Musl/Darwin) import guards
- Add TermFlag typealias to fix termios flag width mismatch (UInt vs UInt32)
- Add platform import guard to SignalManager for POSIX signal visibility
- Replace DispatchQueue.global with Task.detached in AppStorage
- Add XDG_CONFIG_HOME fallback for config directory resolution
- Add Linux Build & Test CI job (swift:6.0 container on ubuntu-latest)
This commit is contained in:
phranck
2026-01-30 16:40:45 +01:00
parent e481899753
commit 3ec23004b9
4 changed files with 70 additions and 17 deletions
+15
View File
@@ -30,6 +30,21 @@ jobs:
- name: Run SwiftLint
run: swiftlint
linux-build:
name: Linux Build & Test
runs-on: ubuntu-latest
container:
image: swift:6.0
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build
run: swift build
- name: Test
run: swift test
build-docs:
name: Build DocC
needs: lint