프로젝트 소개
Linura는 인간의 목표를 선언적이고 정책에 의해 제어되며 검증된 기계 상태로 변환하는 것을 목표로 하는 실험적인 의도 기반 Linux 시스템 계층입니다. 자연어를 셸 명령으로 변환하는 대신, 지속적인 구조화된 의도를 포착하고, 기능과 충돌을 해결하며, 원하는 상태를 도출하고, 모든 관리되는 변경을 하나의 표준 권한 수명주기를 통해 라우팅합니다.
이 프로젝트는 두 가지 아이디어를 결합하면서도 신뢰 경계를 분리합니다. 권한/제어 평면은 유형화된 Linux 모델, 공급자, 11단계 변경 수명주기(요청/의도, 관찰, 계획, 검증, 승인, 준비, 실행, 확인, 커밋, 감사, 조정), 정책 및 승인 결정, 최소 권한, 독립적 검증, 충돌 안전 커밋, 조정 및 감사를 제공합니다. 지능 평면은 지속적인 사용자 의도, 재사용 가능한 설정, 로컬 우선 라이브러리, 시스템 그래프, 기능 구성, 종속성 및 충돌 해결, 의미론적 출처, 전문 에이전트 및 첫 부팅 UX를 추가합니다. 제어 평면은 AI 없이 사용할 수 있으며, 지능 평면은 권한 평면을 변경하지 않고 교체할 수 있습니다.
주요 개념에는 설정(예: rust-development 또는 postgresql-development와 같은 재사용 가능한 버전화된 의도 조각) 및 기계 프로필(전체 기계 구성)이 포함됩니다. 설정은 셸 기록이나 파일 시스템 스냅샷이 아닌 휴대용 의도, 구성 및 제약 조건을 저장합니다. 내보내기는 비밀 참조를 전달하며, 비밀 값은 절대 전달하지 않습니다. 설정을 재사용하면 항상 대상 기계를 다시 관찰하고, 기능을 다시 해결하며, 새로운 원하는 상태를 도출하고, 변경 전에 새 계획을 생성합니다. 정확한 스냅샷은 별도의 롤백/복구 메커니즘으로 유지됩니다.
명시된 불변 조건은 다음과 같습니다: linurad는 권한 없이 실행됩니다. 일반적인 권한 있는 셸 실행 API는 없습니다. 에이전트는 권한 있는 실행기 핸들을 받지 않습니다. 자연어는 실행 가능한 텍스트가 아닌 IntentProposal을 생성합니다. 관리되는 상태는 존재 이유를 설명하는 의미론적 출처를 유지합니다. 알 수 없거나 지원되지 않는 상태는 변경에 대해 실패 폐쇄됩니다. 실행기 성공은 결과 상태의 증명이 아닌 디스패치의 증거로 처리됩니다. 로컬 결정적 작업, 라이브러리 사용 및 복구는 네트워크나 모델 액세스 없이 작동합니다.
저장소는 Rust 워크스페이스로 구성되며, 코어, 의도, 그래프, 기능 SDK, 플래너, 출처, 에이전트 런타임, 정책, 프로토콜, 공급자 SDK, SDK 퍼사드, 제어, 수명주기, 부트스트랩, 마이그레이션 및 업데이트용 크레이트와 linurad, linuractl, 첫 부팅, 제어 센터, 에이전트 UI 및 Quickshell/QML 셸용 앱이 포함됩니다. 또한 바인딩, 기능, 워크플로우, 표면, 에이전트, 실행기, 인터페이스, 스키마, 프로필, 패키징 및 문서도 포함합니다.
상태는 v0.9.0이며, 실험적 첫 부팅 및 지원되는 참조 환경을 갖춘 실험적 단계로 설명됩니다. 불변 릴리스는 독립적으로 검증됩니다. 첫 번째 대화형 워크스테이션 프로필 대상은 의도적으로 좁게 설정되었습니다(Arch Linux, systemd, Wayland/Hyprland, NetworkManager, PipeWire, BlueZ, UDisks2, Polkit, Btrfs/Snapper). arch-hyprland-v1은 현재 지원 경계의 일부가 아닌 v0.10의 개발 후보로 위치합니다. 개발은 좁은 수직 슬라이스 순서를 따르며, 부트스트랩 품질 게이트는 Rust 1.98.0을 fmt, clippy, test 및 repository-check 명령과 함께 고정합니다. Apache 2.0에 따라 라이선스가 부여됩니다.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.