initial commit, if you read this you where prob REALLY bored or I never changed some file idk

Main
Johannes Hendrik Gerard van der Weide 2024-04-12 01:16:21 +02:00
parent a0c2bcaca6
commit 4748653e75
4 changed files with 94 additions and 1 deletions

6
Cargo.toml Normal file
View File

@ -0,0 +1,6 @@
[package]
name = "hermit-chat"
version = "0.1.0"
edition = "2021"
[dependencies]

View File

@ -1,3 +1,7 @@
# HermitChat # HermitChat
This program is written in a fit of range agaist fucking around with IRC deamons.
There is no TLS, there is no bullshit features from other shit, the existance of this program is a momentairy lapse of reason.
You dare use it? go ahead the license allows you to do whatever just don't bother me about it alright?
Hermitchat is a chat server and client without any bullshit, it just fucking works as it should. Bastard program.
Anyhow good luck you'll need it.

57
flake.nix Normal file
View File

@ -0,0 +1,57 @@
{
description = "Hertog's rust dev env";
# Flake inputs
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs"; # also valid: "nixpkgs"
rust-overlay.url = "github:oxalica/rust-overlay"; # A helper for Rust + Nix
};
# Flake outputs
outputs = { self, nixpkgs, rust-overlay }:
let
# Overlays enable you to customize the Nixpkgs attribute set
overlays = [
# Makes a `rust-bin` attribute available in Nixpkgs
(import rust-overlay)
# Provides a `rustToolchain` attribute for Nixpkgs that we can use to
# create a Rust environment
(self: super: {
rustToolchain = super.rust-bin.stable.latest.default;
})
];
# Systems supported
allSystems = [
"x86_64-linux" # 64-bit Intel/AMD Linux
"aarch64-linux" # 64-bit ARM Linux
"x86_64-darwin" # 64-bit Intel macOS
"aarch64-darwin" # 64-bit ARM macOS
];
# Helper to provide system-specific attributes
forAllSystems = f: nixpkgs.lib.genAttrs allSystems (system: f {
pkgs = import nixpkgs { inherit overlays system; };
});
in
{
# Development environment output
devShells = forAllSystems ({ pkgs }: {
default = pkgs.mkShell {
# The Nix packages provided in the environment
packages = (with pkgs; [
# Fluff
cargo-mommy
onefetch
# The package provided by our custom overlay. Includes cargo, Clippy, cargo-fmt,
# rustdoc, rustfmt, and other tools.
rustToolchain
]) ++ pkgs.lib.optionals pkgs.stdenv.isDarwin (with pkgs; [ libiconv ]);
shellHook = ''
onefetch
'';
};
});
};
}

26
src/main.rs Normal file
View File

@ -0,0 +1,26 @@
fn main() {
let args: Vec<String> = env::args().collect();
let query = &args[args.len() - 1];
if query == "--server" {
launch_server();
} else if query == "--bridge"{
launch_bridge();
} else {
}
}
// Yup thats uh a "server" uhuh it sure serves it's purpose I think I hope
fn launch_server() {
}
// A bridge is basically the same as a client but can also be connected to on the local computer
// unless one of you fuckers forwards it, that would be funny I think. Great for hiveminds!
fn launch_bridge() {
}
//I can yap in comments all I want if you want to complain use this function to talk to me on my
//hermitchat server k thx
fn launch_client() {
}