30 Commits
Author SHA1 Message Date
melfely 93cc353730 fixes: Updates cargo Sort to use the workspace flag
Crossplatform Linting && Build / Linting (pull_request) Failing after 1m21s
Crossplatform Linting && Build / Build (pull_request) Skipped
Crossplatform Linting && Build / Cross-Build (pull_request) Skipped
Crossplatform Linting && Build / Test (pull_request) Skipped
2026-09-10 10:05:37 -05:00
melfely 48d0cfc807 fixes: changed to cargo workspace rather than single project folder
Crossplatform Linting && Build / Linting (pull_request) Failing after 1m20s
Crossplatform Linting && Build / Build (pull_request) Skipped
Crossplatform Linting && Build / Cross-Build (pull_request) Skipped
Crossplatform Linting && Build / Test (pull_request) Skipped
2026-09-10 09:57:37 -05:00
melfely 2ecbc9823c fixes: Installs rust in the Cross-Build Action
Crossplatform Linting && Build / Linting (push) Successful in 1m22s
Crossplatform Linting && Build / Build (push) Successful in 1m1s
Crossplatform Linting && Build / Test (push) Successful in 1m2s
Crossplatform Linting && Build / Cross-Build (push) Successful in 4m46s
2026-09-10 09:39:27 -05:00
melfely 6a47aa4d75 fixes: Test and Cross-Build were indeneted to much
Crossplatform Linting && Build / Linting (push) Successful in 1m19s
Crossplatform Linting && Build / Build (push) Successful in 56s
Crossplatform Linting && Build / Cross-Build (push) Failing after 17s
Crossplatform Linting && Build / Test (push) Successful in 1m3s
2026-09-10 09:33:39 -05:00
melfely 14e59d2ed2 feat: Added Linux Tests, and Cross Builds via Cargo Cross
Crossplatform Linting && Build / Linting (push) Successful in 1m33s
Crossplatform Linting && Build / Build (push) Successful in 55s
These "might" work, going to have to work at it. Actions are strange.
2026-09-09 13:50:02 -05:00
melfely 78d1a65bef :fixes Removed Debian apt call, apparently unreliable in CI/CD 2026-09-09 13:49:23 -05:00
melfely 8c529f7e8b fixes: Added Debian package registry update step
Crossplatform Linting && Build / Linting (push) Failing after 1m7s
Crossplatform Linting && Build / Build (push) Skipped
2026-09-09 11:57:31 -05:00
melfely bc3b902d04 fixes: Removed massive cargo cache block, that should now be unused 2026-09-09 11:55:49 -05:00
melfely 0f22adbff4 fixes: Syntax issue with installing of cargo sort and machete
Crossplatform Linting && Build / Linting (push) Failing after 2m12s
Crossplatform Linting && Build / Build (push) Skipped
2026-09-09 11:54:52 -05:00
melfely 9810cdc208 fixes: Changes install actions used for rust tools
Crossplatform Linting && Build / Linting (push) Failing after 0s
Crossplatform Linting && Build / Build (push) Skipped
Replaces the compilation+cache based cargo installer with a binary file based one.
2026-09-09 11:48:21 -05:00
melfely d90404741d fixes: Removed Cross compile against aarch64 from main build
Crossplatform Linting && Build / Linting (push) Failing after 2m8s
Crossplatform Linting && Build / Build (push) Skipped
Cross compiling will be moved into an optional "nice to have" rather than something that is required for the tooling to move on.
2026-09-09 11:46:06 -05:00
melfely 094d50553f fixes: Replaced binary file (main.rs) with Library (lib.rs) 2026-09-09 11:44:15 -05:00
melfely 50ecad1842 fixes: Fixed argument ordering for cargo-cross
Crossplatform Linting && Build / Linting (push) Failing after 2m9s
Crossplatform Linting && Build / Build (push) Skipped
2026-09-09 11:06:03 -05:00
melfely 9bcfd7d966 feat: reduced number of steps. Updated tool versions
Properly uses the action workflow tools that were in use before. By using the rust installer action, to also install the tools I need.

Setup to use the cargo-cache installer for cargo-cross rather than a manual install, this should allow caching between runs
2026-09-09 11:03:41 -05:00
melfely 7f8b28bf95 fixes: changed rust isntaller to stable rather than 1.90
Crossplatform Linting && Build / Linting (push) Successful in 1m27s
Crossplatform Linting && Build / Build (push) Failing after 2m23s
2026-09-09 10:58:45 -05:00
melfely f4367506a8 fixes: Removed --locked from cargo-cross install
Crossplatform Linting && Build / Linting (push) Successful in 1m19s
Crossplatform Linting && Build / Build (push) Failing after 2m9s
2026-09-09 10:43:17 -05:00
melfely ae44e16b7b fixes: Corrected cross to cargo-cross for build
Crossplatform Linting && Build / Linting (push) Successful in 1m16s
Crossplatform Linting && Build / Build (push) Failing after 2m9s
2026-09-09 10:35:43 -05:00
melfely 793dec3b7e repo: Added .cargo/config.toml file for the Gitea Cargo Registry. 2026-09-09 10:34:02 -05:00
melfely 9ac27dc546 fixes: Fixed Ordering of CLI args in build.
Crossplatform Linting && Build / Linting (push) Successful in 1m15s
Crossplatform Linting && Build / Build (push) Failing after 1m30s
I had ordered the CLI arguments in the build script incorrectly, which caused... issues.
2026-09-08 17:59:23 -05:00
melfely 7fbc05d521 fixes: readded x86-64 musl linux target
Crossplatform Linting && Build / Build (push) Failing after 1m30s
Crossplatform Linting && Build / Linting (push) Successful in 1m28s
2026-09-08 17:49:26 -05:00
melfely d2f008ad5f fixes: Removes Windows and Mac Builds. Replaces build with cross for non-native builds
Apparently Cross Compiling to MacOS is basically impossible.

Crossing Compiling to Windows is painful but doable, not setting it up here ngl
2026-09-08 17:46:39 -05:00
melfely 8de78b6e1a fixes: Cargo.Lock file update to date
Crossplatform Linting && Build / Linting (push) Successful in 1m30s
Crossplatform Linting && Build / Build (push) Failing after 1m18s
2026-09-08 17:25:23 -05:00
melfely 2846cdbcc5 fixes: Removed Linting of multiple targets.
Crossplatform Linting && Build / Linting (push) Successful in 1m22s
Crossplatform Linting && Build / Build (push) Failing after 1m13s
Fixes improper target for build of aarch-64 to aarch64
2026-09-08 17:16:38 -05:00
melfely 16d0a21b8c fixes: Installs Missing Cargo Clippy for Linting
Crossplatform Linting && Build / Linting (push) Failing after 1m40s
Crossplatform Linting && Build / Build (push) Skipped
2026-09-08 17:12:12 -05:00
melfely 864ff9f044 fixes: Installes Required rustfmt
Crossplatform Linting && Build / Linting (push) Failing after 1m45s
Crossplatform Linting && Build / Build (push) Skipped
2026-09-08 17:08:01 -05:00
melfely c45bc81bf8 fixes: Fixed x86-64 to the correct x86_64 for --target
Crossplatform Linting && Build / Linting (push) Failing after 2m39s
Crossplatform Linting && Build / Build (push) Skipped
2026-09-08 17:03:23 -05:00
melfely 123c9a1da8 fixes: Fixed the build job not requiring the lint job to complete first 2026-09-08 17:01:30 -05:00
melfely f2c0af5775 feat: Added base level rust project.
Crossplatform Linting && Build / Build (push) Failing after 56s
Crossplatform Linting && Build / Linting (push) Failing after 1m0s
2026-09-08 16:59:26 -05:00
melfely b408028c87 fix: fixed a issue with the syntax of the lint.yml file
Reworked the multiple line linux builds and lints(since they build both musl and gnu)
2026-09-08 16:46:32 -05:00
melfely 5a4191bb60 feat: Added lint.yml which tests for linting and build on multiple platforms 2026-09-08 16:43:50 -05:00
8 changed files with 149 additions and 0 deletions
+2
View File
@@ -0,0 +1,2 @@
[registries.gitea]
index = "sparse+https://gitea.example.com/api/packages/crates/cargo/"
+104
View File
@@ -0,0 +1,104 @@
name: Crossplatform Linting && Build
on:
push:
branches: [ main, master ]
pull_request:
jobs:
lint:
name: Linting
runs-on: ubuntu-latest
steps:
- name: Checkout Project
uses: actions/checkout@v5
- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt, clippy
- name: Install cargo sort
uses: taiki-e/install-action@v2
with:
tool: cargo-sort
- name: Install cargo machete
uses: taiki-e/install-action@v2
with:
tool: cargo-machete
- name: Check formatting
run: cargo fmt --check
- name: Check import sorting
run: cargo sort --workspace --grouped --check --check-format
- name: Check for unused dependencies
run: cargo machete
- name: Clippy for Linux x86 (GNU ONLY)
run: |
cargo clippy --target x86_64-unknown-linux-gnu -- -D warnings
build:
name: Build
runs-on: ubuntu-latest
needs: lint
steps:
- name: Checkout Project
uses: actions/checkout@v5
- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
with:
targets: x86_64-unknown-linux-musl
- name: Build for Linux x86 (GNU and MUSL)
run: |
cargo build --target x86_64-unknown-linux-gnu --release --locked
cargo build --target x86_64-unknown-linux-musl --release --locked
cross_build:
name: Cross-Build
runs-on: ubuntu-latest
needs: [lint, build]
steps:
- name: Checkout Project
uses: actions/checkout@v5
- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
- name: Crosscompile for aarch64 linux, windows, macos
uses: zijiren233/cargo-cross@v1
with:
targets: |
aarch64-unknown-linux-musl
aarch64-unknown-linux-gnu
x86_64-pc-windows-gnu
aarch64-apple-darwin
test:
name: Test
runs-on: ubuntu-latest
needs: [build, lint]
steps:
- name: Checkout Project
uses: actions/checkout@v5
- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
with:
targets: x86_64-unknown-linux-musl
- name: Test for Linux x86 (GNU and MUSL)
run: |
cargo test --target x86_64-unknown-linux-gnu --release --locked
cargo test --target x86_64-unknown-linux-musl --release --locked
Generated
+11
View File
@@ -0,0 +1,11 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 4
[[package]]
name = "example_bin"
version = "0.1.0"
[[package]]
name = "example_lib"
version = "0.1.0"
+3
View File
@@ -0,0 +1,3 @@
[workspace]
resolver = "3"
members = ["example_bin","example_lib"]
+6
View File
@@ -0,0 +1,6 @@
[package]
name = "example_bin"
version = "0.1.0"
edition = "2024"
[dependencies]
+3
View File
@@ -0,0 +1,3 @@
fn main() {
println!("Hello, world!");
}
+6
View File
@@ -0,0 +1,6 @@
[package]
name = "example_lib"
version = "0.1.0"
edition = "2024"
[dependencies]
+14
View File
@@ -0,0 +1,14 @@
pub fn add(left: u64, right: u64) -> u64 {
left + right
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn it_works() {
let result = add(2, 2);
assert_eq!(result, 4);
}
}