mirror of
https://github.com/marcoallegretti/WEFT_OS.git
synced 2026-03-26 17:03:09 +00:00
Initialize Rust workspace and repository metadata
This commit is contained in:
commit
8b65f81396
8 changed files with 121 additions and 0 deletions
1
.gitattributes
vendored
Normal file
1
.gitattributes
vendored
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
* text=auto eol=lf
|
||||||
5
.gitignore
vendored
Normal file
5
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
/target/
|
||||||
|
/.windsurf/
|
||||||
|
/docu_dev/
|
||||||
|
|
||||||
|
Thumbs.db
|
||||||
7
Cargo.lock
generated
Normal file
7
Cargo.lock
generated
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
# This file is automatically @generated by Cargo.
|
||||||
|
# It is not intended for manual editing.
|
||||||
|
version = 4
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "weft-build-meta"
|
||||||
|
version = "0.1.0"
|
||||||
11
Cargo.toml
Normal file
11
Cargo.toml
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
[workspace]
|
||||||
|
members = ["crates/weft-build-meta"]
|
||||||
|
resolver = "2"
|
||||||
|
|
||||||
|
[workspace.package]
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2024"
|
||||||
|
rust-version = "1.93"
|
||||||
|
|
||||||
|
[workspace.lints.rust]
|
||||||
|
unsafe_code = "forbid"
|
||||||
52
README.md
Normal file
52
README.md
Normal file
|
|
@ -0,0 +1,52 @@
|
||||||
|
# WEFT OS
|
||||||
|
|
||||||
|
WEFT OS is a Linux-based operating system effort built around a Smithay compositor, a Servo-rendered system shell, and a Wasmtime-based application runtime.
|
||||||
|
|
||||||
|
## Current repository scope
|
||||||
|
|
||||||
|
This repository currently contains:
|
||||||
|
|
||||||
|
- the baseline Rust workspace
|
||||||
|
- public engineering documentation derived from the authoritative blueprint
|
||||||
|
- initial design documents for the shell protocol boundary and the Wasm–Servo channel
|
||||||
|
- local and CI validation paths for repository bootstrap work
|
||||||
|
|
||||||
|
It does not yet contain a compositor, shell, or application runtime implementation.
|
||||||
|
|
||||||
|
## Source of truth
|
||||||
|
|
||||||
|
The authoritative technical reference for this repository is `docu_dev/WEFT-OS-COMPREHENSIVE-BLUEPRINT.md`.
|
||||||
|
|
||||||
|
Historical blueprint documents exist in `docu_dev/`, but they are not implementation authority where they conflict with the comprehensive blueprint.
|
||||||
|
|
||||||
|
## Privacy boundary
|
||||||
|
|
||||||
|
`docu_dev/` is a private coordination area used during development. It is intentionally ignored by git and is not part of the tracked public repository surface.
|
||||||
|
|
||||||
|
## Development model
|
||||||
|
|
||||||
|
- Primary development host: Windows workstation
|
||||||
|
- Primary runtime target: Linux VM or QEMU guest
|
||||||
|
- Core system language: Rust
|
||||||
|
|
||||||
|
## Validation
|
||||||
|
|
||||||
|
On Windows PowerShell:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
./infra/scripts/check.ps1
|
||||||
|
```
|
||||||
|
|
||||||
|
On Linux:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
./infra/scripts/check.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
## Repository layout
|
||||||
|
|
||||||
|
```text
|
||||||
|
crates/ Rust workspace members
|
||||||
|
docs/ Public engineering documentation
|
||||||
|
infra/ Validation scripts and VM workflow material
|
||||||
|
```
|
||||||
12
crates/weft-build-meta/Cargo.toml
Normal file
12
crates/weft-build-meta/Cargo.toml
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
[package]
|
||||||
|
name = "weft-build-meta"
|
||||||
|
version.workspace = true
|
||||||
|
edition.workspace = true
|
||||||
|
rust-version.workspace = true
|
||||||
|
publish = false
|
||||||
|
|
||||||
|
[lib]
|
||||||
|
path = "src/lib.rs"
|
||||||
|
|
||||||
|
[lints]
|
||||||
|
workspace = true
|
||||||
29
crates/weft-build-meta/src/lib.rs
Normal file
29
crates/weft-build-meta/src/lib.rs
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
|
||||||
|
pub struct WorkspaceMetadata {
|
||||||
|
pub package_name: &'static str,
|
||||||
|
pub package_version: &'static str,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[must_use]
|
||||||
|
pub const fn current() -> WorkspaceMetadata {
|
||||||
|
WorkspaceMetadata {
|
||||||
|
package_name: env!("CARGO_PKG_NAME"),
|
||||||
|
package_version: env!("CARGO_PKG_VERSION"),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#[cfg(test)]
|
||||||
|
mod tests {
|
||||||
|
use super::{WorkspaceMetadata, current};
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn reports_workspace_metadata() {
|
||||||
|
assert_eq!(
|
||||||
|
current(),
|
||||||
|
WorkspaceMetadata {
|
||||||
|
package_name: "weft-build-meta",
|
||||||
|
package_version: env!("CARGO_PKG_VERSION"),
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
4
rust-toolchain.toml
Normal file
4
rust-toolchain.toml
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
[toolchain]
|
||||||
|
channel = "1.93.0"
|
||||||
|
components = ["clippy", "rustfmt"]
|
||||||
|
profile = "minimal"
|
||||||
Loading…
Reference in a new issue