diff --git a/README.md b/README.md index dc2fdeb4..0ecf2d8e 100644 --- a/README.md +++ b/README.md @@ -55,6 +55,7 @@ The following features make gossip different than most other nostr clients so fa - [x] NIP-21 - nostr: URL scheme - [x] NIP-22 - Event created_at Limits - [ ] NIP-23 - Long-form Content [Optional viewing, but not creating] +- [ ] NIP-24 - Extra metadata fields and tags - [x] NIP-25 - Reactions - [x] NIP-26 - Delegated Event Signing - [x] NIP-27 - Text Note References @@ -137,10 +138,10 @@ The output will be a binary executable in `target/release/gossip` This binary should be portable to similar systems with similar hardware and operating system. -If you want a binary optimized for your exact processor with the newest features enabled: +If you want a binary optimized for your exact processor with the newest CPU features enabled, and all gossip features enabled: ````bash -RUSTFLAGS="-C target-cpu=native --cfg tokio_unstable" cargo build --release +RUSTFLAGS="-C target-cpu=native --cfg tokio_unstable" cargo build --features=lang-cjk,video-ffmpeg --release ```` Everything gossip needs (fonts, icons) is baked into this executable. It doesn't need to find assets. So you can move it and run it from anywhere. diff --git a/gossip-bin/Cargo.toml b/gossip-bin/Cargo.toml index 58afa0a1..4269685a 100644 --- a/gossip-bin/Cargo.toml +++ b/gossip-bin/Cargo.toml @@ -18,7 +18,7 @@ rustls-tls = [ "gossip-lib/rustls-tls" ] [dependencies] bech32 = "0.9" -eframe = { git = "https://github.com/mikedilger/egui", rev = "50393e4f34ac6246b8c2424e42fbe5b95e4b4452", features = [ "persistence" ] } +eframe = { git = "https://github.com/mikedilger/egui", rev = "50393e4f34ac6246b8c2424e42fbe5b95e4b4452", features = [ "persistence", "wayland" ] } egui-winit = { git = "https://github.com/mikedilger/egui", rev = "50393e4f34ac6246b8c2424e42fbe5b95e4b4452", features = [ "default" ] } egui-video = { git = "https://github.com/mikedilger/egui-video", rev = "81cc3ee58818754272582397161cc55ff11bde18", features = [ "from_bytes" ], optional = true } gossip-relay-picker = { git = "https://github.com/mikedilger/gossip-relay-picker", rev = "39f9c14b1c201842c512754920f4da4987cd68b6" } diff --git a/gossip-bin/build.rs b/gossip-bin/build.rs new file mode 100644 index 00000000..d2fd4645 --- /dev/null +++ b/gossip-bin/build.rs @@ -0,0 +1,8 @@ +fn main() { + // link to bundled libraries + #[cfg(target_os = "macos")] + println!("cargo:rustc-link-arg=-Wl,-rpath,@loader_path"); + + #[cfg(target_os = "linux")] + println!("cargo:rustc-link-arg=-Wl,-rpath,$ORIGIN"); +} diff --git a/gossip-bin/src/ui/mod.rs b/gossip-bin/src/ui/mod.rs index 617f5d8e..6c29a161 100644 --- a/gossip-bin/src/ui/mod.rs +++ b/gossip-bin/src/ui/mod.rs @@ -61,6 +61,8 @@ pub fn run() -> Result<(), Error> { let (icon_width, icon_height) = icon.dimensions(); let options = eframe::NativeOptions { + #[cfg(target_os = "linux")] + app_id: Some("gossip".to_string()), decorated: true, #[cfg(target_os = "macos")] fullsize_content: true, diff --git a/gossip-lib/build.rs b/gossip-lib/build.rs index 01037e71..39c42977 100644 --- a/gossip-lib/build.rs +++ b/gossip-lib/build.rs @@ -6,11 +6,4 @@ fn main() { .unwrap(); let git_hash = String::from_utf8(output.stdout).unwrap(); println!("cargo:rustc-env=GIT_HASH={git_hash}"); - - // link to bundled libraries - #[cfg(target_os = "macos")] - println!("cargo:rustc-link-arg=-Wl,-rpath,@loader_path"); - - #[cfg(target_os = "linux")] - println!("cargo:rustc-link-arg=-Wl,-rpath,$ORIGIN"); }