TL;DR
- FreeLinX 1.0.0은 NetBSD 사용자 공간(userland), musl C 라이브러리와 LLVM 툴체인을 사용하며, 이미지와 저장소의 어떤 파일도 GCC로 빌드하거나 glibc에 링크하지 않는 독립 Linux 배포판임.
- x86_64용 약 500MB ISO를 제공하며 BIOS와 UEFI를 지원하고, 이미지나 패키지 공개 전 모든 ELF 파일을 검사함.
- Openbox 데스크톱, Firefox ESR 153, 그래픽 설치 프로그램과 약 400개 패키지를 갖추며, 패키지 관리자는 서명 검증·원자적 설치·충돌 탐지 기능을 제공함.
- 저장 장치, 무선 네트워크, Bluetooth, 오디오, 그래픽, 입력 장치 및 여러 파일 시스템을 지원하며, 커널은 Linux 6.6.21 LTS임.
- 최소 2GB RAM과 설치용 디스크 12GB가 필요하며, AMD GCN 이상 및 가상 머신의 OpenGL 가속과 하드웨어 동영상 디코딩은 지원하지 않음.
FreeLinX 1.0.0
- FreeLinX는 NetBSD 사용자 공간, musl C 라이브러리와 LLVM 툴체인을 사용하는 독립 Linux 배포판임.
- 이미지와 패키지 저장소의 어떤 파일도 GCC로 빌드하거나 glibc에 링크하지 않으며, 이미지나 패키지를 공개하기 전에 모든 ELF 파일을 검사함.
- 다운로드 파일은
freelinx-1.0.0-x86_64.iso이며 BIOS와 UEFI를 지원하고 크기는 약 500MB임. - SHA256SUMS로 다운로드 파일을 검증할 수 있음.
주요 기능
- Openbox 데스크톱에 실행기, 창 목록, 시간대 표시 시계가 있는 패널과 마우스 오른쪽 클릭 메뉴가 포함됨.
- Intel 그래픽(iris, crocus, i915)과 NVIDIA 그래픽(nouveau)에서 OpenGL 가속을 제공함. 그 밖의 환경은 가상 머신을 포함해 실제 KMS 모드와 CPU 렌더링을 사용함.
- FreeLinX Web은 musl용으로 clang을 사용해 빌드한 Firefox ESR 153을 제공하며, JavaScript, H.264/AAC 동영상(FFmpeg LGPL 빌드), VP9와 AV1을 지원함.
- 그래픽 설치 프로그램에서 언어, 키보드, 시간대, 호스트 이름, root 비밀번호, 사용자 계정, Wi-Fi와 디스크를 설정할 수 있음.
- 설치 프로그램은 Limine을 사용해 BIOS·UEFI 시스템을 설치하며,
/usr,/etc,/var를 영구적으로 유지하고/home을 별도 구성함. flxpkg패키지와xpkg 1.0은 서명된 저장소에서 약 400개 패키지를 제공함. 패키지에는 NetBSD 사용자 공간, 개발 도구, 게임과 Xorg·Mesa·GTK·브라우저·Bluetooth를 포함한 데스크톱 구성 요소가 포함됨.xpkg upgrade로 데스크톱도 업데이트할 수 있음.- 패키지 관리 기능은 다음과 같음.
- Ed25519 서명 인덱스, 인증서 검증을 포함한 TLS, 인덱스 대조를 통한 다운로드 파일 검증
- 파일을 임시 위치에 쓴 뒤 이름을 변경하고 데이터베이스 트랜잭션을 한 번 실행하는 원자적 설치
- 파일 충돌 탐지, 의존성 인식 제거, 자동 제거
- 편집된 설정 파일을 덮어쓰지 않고
.xpkgnew파일로 보존 - 이미지에 포함된 패키지도 등록하며,
xpkg list,xpkg verify,xpkg upgrade로 실행 중인 시스템을 확인·관리 - 로그인 화면은 greetd와 tuigreet을 사용하며, 콘솔 로그인은 getty를 사용함.
- 네트워크 관리자는 유선 네트워크와 WPA2/WPA3 Wi-Fi를 지원함. 명령줄에서
flxwifi와flxnet을 사용할 수 있으며, 시간 동기화에는 OpenNTPD를 사용함. - Bluetooth는
bluetoothctl을 사용함.
하드웨어 지원
- 저장 장치: NVMe, SATA/AHCI, USB 대용량 저장 장치(UAS), Realtek 리더기를 포함한 SD/MMC
- Wi-Fi: Intel(iwlwifi), Qualcomm Atheros(ath9k/10k/11k/12k), Realtek(rtw88/rtw89), MediaTek(MT7921/7922), Broadcom
- Bluetooth: Intel, Realtek, MediaTek, Qualcomm, Broadcom(USB), UART
- 오디오: Intel SOF/SoundWire(2018년 이후 노트북), HDA 코덱, AMD ACP, USB 오디오
- 그래픽: Intel, NVIDIA(nouveau), AMD(amdgpu/radeon), virtio, simpledrm
- 입력 장치: I2C-HID 터치패드, Wacom, Xbox·PlayStation·Switch 컨트롤러
- 기타: UVC 웹캠, USB4/Thunderbolt, amd-pstate
- 파일 시스템: ext4, exFAT, NTFS(ntfs3), FAT, ISO 9660, UDF, squashfs
- 펌웨어는 zstd 압축된 linux-firmware 20260916 및 Sound Open Firmware 2026.09.1임.
내부 구성
- 커널: clang/LLD 21.1.8로 빌드한 Linux 6.6.21 LTS
- libc: musl 1.2.5
- C++ 런타임: LLVM libc++/libc++abi/libunwind 21.1.8
- 사용자 공간: NetBSD 10.1;
ps,top,free,pgrep,getty,login에는 toybox 사용 - 초기화 시스템: runit와 mdevd
- 그래픽: Xorg 21.1.24, Mesa 24.0.9, GTK 3.24, cairo, pango, harfbuzz
- 인증: Linux-PAM 1.7, doas
- 시간대 데이터: IANA tzdata 2026d
- 패키지 관리자: xpkg 1.0
- Rust 프로그램인 greetd와 tuigreet은 소스에서 빌드한 Rust 표준 라이브러리를 사용하므로, rustup이 GCC로 빌드한 musl 객체 파일은 이미지에 포함되지 않음.
요구 사항
- x86_64 CPU와 BIOS 또는 UEFI가 필요함.
- RAM은 최소 2GB, 권장 4GB임. 라이브 시스템과 설치된 OS 이미지가 RAM에서 실행됨.
- 설치에는 12GB 이상의 디스크 공간이 필요함.
알려진 제한 사항
- AMD GCN 및 이후 그래픽에서는 OpenGL 가속을 제공하지 않음. radeonsi에는 LLVM으로 빌드한 Mesa가 필요함.
- 가상 머신에서도 OpenGL 가속을 제공하지 않으며 CPU로 렌더링함.
- 하드웨어 동영상 디코딩(VA-API)은 지원하지 않아 동영상을 CPU로 디코딩함.
- QEMU/KVM에서 라이브 부팅, 디스크 설치, 그래픽 로그인, 일반 사용자 계정으로 브라우저 실행, 패키지 사용, 가상 무선 장치를 이용한 Wi-Fi, Bluetooth까지 전 과정을 테스트함.
- 실제 하드웨어에서 Wi-Fi, Bluetooth, 오디오와 GPU를 사용한 보고를 요청함.
- 커널과 펌웨어는 xpkg가 아니라 새 이미지 릴리스로 업데이트됨.
- 라이브 세션은 root 계정으로 로그인함.
문제 보고
- https://github.com/FreeLinX/FreeLinX/issues
- 문제 보고에는
uname -a와xpkg --version의 출력을 포함해야 하며, 하드웨어 문제라면dmesg출력도 포함해야 함.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요