diff options
Diffstat (limited to '')
28 files changed, 114 insertions, 0 deletions
diff --git a/filamento/.cargo/config.toml b/filamento/.cargo/config.toml index 319101a..6166dc4 100644 --- a/filamento/.cargo/config.toml +++ b/filamento/.cargo/config.toml @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +# +# SPDX-License-Identifier: AGPL-3.0-or-later + [build] rustflags = [ # LLD (shipped with the Rust toolchain) is used as the default linker diff --git a/filamento/.gitignore b/filamento/.gitignore index 52acf71..bcab57c 100644 --- a/filamento/.gitignore +++ b/filamento/.gitignore @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +# +# SPDX-License-Identifier: AGPL-3.0-or-later + filamento.db ./files/ .sqlx/ diff --git a/filamento/Cargo.toml b/filamento/Cargo.toml index dea1c79..246ee13 100644 --- a/filamento/Cargo.toml +++ b/filamento/Cargo.toml @@ -1,3 +1,7 @@ +# SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +# +# SPDX-License-Identifier: AGPL-3.0-or-later + [package] name = "filamento" version = "0.1.0" diff --git a/filamento/README.md b/filamento/README.md index 57b4135..ba906b2 100644 --- a/filamento/README.md +++ b/filamento/README.md @@ -1,3 +1,9 @@ +<!-- +SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> + +SPDX-License-Identifier: AGPL-3.0-or-later +--> + # filament a high-level xmpp chat client using luz diff --git a/filamento/examples/example.rs b/filamento/examples/example.rs index 65fe166..c330459 100644 --- a/filamento/examples/example.rs +++ b/filamento/examples/example.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + // use std::{path::Path, str::FromStr, sync::Arc, time::Duration}; // use filamento::{Client, db::Db, files::FileStore}; diff --git a/filamento/migrations/1.sql b/filamento/migrations/1.sql index ec574fc..1b40d89 100644 --- a/filamento/migrations/1.sql +++ b/filamento/migrations/1.sql @@ -1,3 +1,7 @@ +-- SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +-- +-- SPDX-License-Identifier: AGPL-3.0-or-later + PRAGMA foreign_keys = on; -- a user jid will never change, only a chat user will change diff --git a/filamento/src/avatar.rs b/filamento/src/avatar.rs index a6937df..df30a6a 100644 --- a/filamento/src/avatar.rs +++ b/filamento/src/avatar.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + #[derive(Clone, Debug)] pub struct Metadata { pub bytes: u32, diff --git a/filamento/src/caps.rs b/filamento/src/caps.rs index e0587ff..305c9b7 100644 --- a/filamento/src/caps.rs +++ b/filamento/src/caps.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use std::str::FromStr; use base64::{Engine, prelude::BASE64_STANDARD}; diff --git a/filamento/src/chat.rs b/filamento/src/chat.rs index 07577fd..687da82 100644 --- a/filamento/src/chat.rs +++ b/filamento/src/chat.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use std::fmt::{Display, Write}; use chrono::{DateTime, Utc}; diff --git a/filamento/src/db.rs b/filamento/src/db.rs index 7a1307e..b9858db 100644 --- a/filamento/src/db.rs +++ b/filamento/src/db.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use core::fmt::Display; use std::ffi::c_int; use std::{collections::HashSet, ops::Deref, path::Path, sync::Arc}; diff --git a/filamento/src/disco.rs b/filamento/src/disco.rs index 580f647..f9a51b1 100644 --- a/filamento/src/disco.rs +++ b/filamento/src/disco.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use jid::JID; use stanza::xep_0030::{info, items}; diff --git a/filamento/src/error.rs b/filamento/src/error.rs index fb7d778..be7af92 100644 --- a/filamento/src/error.rs +++ b/filamento/src/error.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use std::{num::TryFromIntError, string::FromUtf8Error, sync::Arc}; use base64::DecodeError; diff --git a/filamento/src/files.rs b/filamento/src/files.rs index dcc9cd2..bd8daba 100644 --- a/filamento/src/files.rs +++ b/filamento/src/files.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use std::{ collections::HashMap, convert::Infallible, diff --git a/filamento/src/files/opfs.rs b/filamento/src/files/opfs.rs index 0bcce35..41acc71 100644 --- a/filamento/src/files/opfs.rs +++ b/filamento/src/files/opfs.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use std::path::Path; use thiserror::Error; diff --git a/filamento/src/lib.rs b/filamento/src/lib.rs index cb3d820..40a2867 100644 --- a/filamento/src/lib.rs +++ b/filamento/src/lib.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use std::{ collections::HashMap, ops::{Deref, DerefMut}, diff --git a/filamento/src/logic/abort.rs b/filamento/src/logic/abort.rs index 3588b13..1de905a 100644 --- a/filamento/src/logic/abort.rs +++ b/filamento/src/logic/abort.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use lampada::error::ReadError; use crate::files::FileStore; diff --git a/filamento/src/logic/connect.rs b/filamento/src/logic/connect.rs index 6e392f1..a4d6f72 100644 --- a/filamento/src/logic/connect.rs +++ b/filamento/src/logic/connect.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use lampada::{Connected, Logic, error::WriteError}; use tokio::sync::oneshot; use tracing::debug; diff --git a/filamento/src/logic/connection_error.rs b/filamento/src/logic/connection_error.rs index 36c1cef..7cb39b6 100644 --- a/filamento/src/logic/connection_error.rs +++ b/filamento/src/logic/connection_error.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use lampada::error::ConnectionError; use crate::files::FileStore; diff --git a/filamento/src/logic/disconnect.rs b/filamento/src/logic/disconnect.rs index ebcfd4f..bbff8be 100644 --- a/filamento/src/logic/disconnect.rs +++ b/filamento/src/logic/disconnect.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use lampada::Connected; use stanza::client::Stanza; diff --git a/filamento/src/logic/local_only.rs b/filamento/src/logic/local_only.rs index 7f3a2e6..5dc8793 100644 --- a/filamento/src/logic/local_only.rs +++ b/filamento/src/logic/local_only.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use jid::{BareJID, JID}; use uuid::Uuid; diff --git a/filamento/src/logic/mod.rs b/filamento/src/logic/mod.rs index ddf0343..7ae0235 100644 --- a/filamento/src/logic/mod.rs +++ b/filamento/src/logic/mod.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use std::{collections::HashMap, sync::Arc}; use jid::{BareJID, JID}; diff --git a/filamento/src/logic/offline.rs b/filamento/src/logic/offline.rs index 3b0d1c9..1d79f86 100644 --- a/filamento/src/logic/offline.rs +++ b/filamento/src/logic/offline.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use std::process::id; use chrono::Utc; diff --git a/filamento/src/logic/online.rs b/filamento/src/logic/online.rs index 2368eff..d49a844 100644 --- a/filamento/src/logic/online.rs +++ b/filamento/src/logic/online.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use std::{io::Cursor, time::Duration}; use base64::{prelude::BASE64_STANDARD, Engine}; diff --git a/filamento/src/logic/process_stanza.rs b/filamento/src/logic/process_stanza.rs index 5f180b9..dab475d 100644 --- a/filamento/src/logic/process_stanza.rs +++ b/filamento/src/logic/process_stanza.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use std::str::FromStr; use base64::{Engine, prelude::BASE64_STANDARD}; diff --git a/filamento/src/pep.rs b/filamento/src/pep.rs index 3cd243f..4985eeb 100644 --- a/filamento/src/pep.rs +++ b/filamento/src/pep.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use crate::avatar::{Data as AvatarData, Metadata as AvatarMetadata}; #[derive(Clone, Debug)] diff --git a/filamento/src/presence.rs b/filamento/src/presence.rs index de4dd7c..5ebf8af 100644 --- a/filamento/src/presence.rs +++ b/filamento/src/presence.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use chrono::{DateTime, Utc}; use rusqlite::{ ToSql, diff --git a/filamento/src/roster.rs b/filamento/src/roster.rs index 0498278..70f5bca 100644 --- a/filamento/src/roster.rs +++ b/filamento/src/roster.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use std::{collections::HashSet, fmt::Display}; use jid::BareJID; diff --git a/filamento/src/user.rs b/filamento/src/user.rs index f962a4c..dc632ea 100644 --- a/filamento/src/user.rs +++ b/filamento/src/user.rs @@ -1,3 +1,7 @@ +// SPDX-FileCopyrightText: 2025 cel <cel@bunny.garden> +// +// SPDX-License-Identifier: AGPL-3.0-or-later + use jid::BareJID; #[derive(Debug, Clone, PartialEq, Eq)] |
