-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
91 lines (74 loc) · 3.03 KB
/
Copy pathCargo.toml
File metadata and controls
91 lines (74 loc) · 3.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
[workspace]
members = ["wallr", "wallr-core"]
resolver = "2"
[workspace.package]
version = "0.2.5"
edition = "2024"
authors = ["Wallr Contributors"]
license = "MIT"
repository = "https://github.com/programmersd21/wallr"
description = "The wallpaper engine for Wayland — animated transitions, theme pipeline integration, and a package ecosystem."
homepage = "https://github.com/programmersd21/wallr"
categories = ["command-line-utilities", "rendering"]
keywords = ["wallpaper", "wayland", "wgpu", "daemon", "matugen"]
rust-version = "1.85"
# Optimized profile settings for faster compilation and better runtime performance
[profile.dev]
opt-level = 1 # Basic optimizations for faster dev builds
debug = true # Keep debug symbols
incremental = true # Enable incremental compilation
[profile.release]
opt-level = 3 # Full optimizations
lto = "thin" # Thin LTO for faster linking with good optimization
codegen-units = 1 # Better optimization, slower compile (worth it for release)
strip = true # Strip symbols for smaller binary
panic = "abort" # Smaller binary, faster panic handling
debug = false # No debug info in release
[profile.release-with-debug]
inherits = "release"
debug = true # Release build with debug symbols
strip = false
# Fast development builds
[profile.dev.package."*"]
opt-level = 2 # Optimize dependencies even in dev mode
[workspace.dependencies]
wallr-core = { path = "wallr-core", version = "0.2.5" }
# Core utilities
anyhow = "1"
thiserror = "2"
# Serialization
serde = { version = "1", features = ["derive"] }
serde_json = "1"
serde_yaml = "0.9"
# CLI
clap = { version = "4", features = ["derive", "env", "string"] }
colored = "3"
# Async runtime
tokio = { version = "1", default-features = false, features = ["rt-multi-thread", "sync", "io-util", "net", "time", "macros", "signal"] }
# Logging
tracing = "0.1"
tracing-subscriber = { version = "0.3", default-features = false, features = ["env-filter", "fmt", "ansi"] }
# Image processing
image = { version = "0.25", default-features = false, features = ["png", "jpeg", "gif", "webp"] }
# Graphics
wgpu = { version = "24", default-features = false, features = ["wgsl"] }
naga = { version = "24", features = ["wgsl-in"] }
raw-window-handle = "0.6"
winit = { version = "0.30", default-features = false, features = ["wayland", "wayland-dlopen", "wayland-csd-adwaita", "rwh_06"] }
pollster = "0.4"
# Wayland
wayland-client = "0.31"
smithay-client-toolkit = { version = "0.19", default-features = false, features = ["calloop"] }
wayland-backend = { version = "0.3", features = ["client_system"] }
# File operations
notify = { version = "7", default-features = false }
dirs = "6"
glob = "0.3"
which = "7"
# Crypto & utilities
sha2 = { version = "0.10", default-features = false }
hex = "0.4"
humansize = "2"
# Video support
ffmpeg-next = { version = "8.1", default-features = false, features = ["codec", "format", "software-resampling", "software-scaling"] }
crossbeam-channel = "0.5"