219 lines
4.7 KiB
TOML
219 lines
4.7 KiB
TOML
####################
|
|
# Package Metadata #
|
|
####################
|
|
|
|
[package]
|
|
name = "lilac"
|
|
version = "0.3.3"
|
|
authors = ["cata cata@distruzione.org"]
|
|
edition = "2024"
|
|
description = "Manage your own distro"
|
|
homepage = "https://git.gay/cata/lilac"
|
|
repository = "https://git.gay/cata/lilac"
|
|
license = "MIT"
|
|
publish = false
|
|
|
|
autolib = false
|
|
autobins = false
|
|
autoexamples = false
|
|
autotests = false
|
|
autobenches = false
|
|
|
|
#################
|
|
# Build Targets #
|
|
#################
|
|
|
|
[lib]
|
|
doctest = false
|
|
name = "lilac"
|
|
|
|
[[bin]]
|
|
name = "lac"
|
|
path = "cli/main.rs"
|
|
required-features = ["cli"]
|
|
|
|
############
|
|
# Features #
|
|
############
|
|
|
|
[features]
|
|
default = [
|
|
"src-http",
|
|
"src-git",
|
|
|
|
"builder",
|
|
"cli",
|
|
|
|
# "unsafe",
|
|
]
|
|
# Lilac CLI Interface
|
|
cli = [
|
|
"env_logger",
|
|
"owo-colors",
|
|
"encode",
|
|
"clap",
|
|
"glob",
|
|
"toml",
|
|
]
|
|
# Enable encoding and decoding pool to bytes
|
|
encode = [
|
|
"rmp-serde",
|
|
"serde",
|
|
]
|
|
# Enable building packages from recipes
|
|
builder = [
|
|
"walkdir",
|
|
"serde",
|
|
"glob",
|
|
"mlua",
|
|
"encode",
|
|
"bubblewrap",
|
|
]
|
|
# Enable git sources for builder
|
|
src-git = [
|
|
"_src-any",
|
|
"builder", # required logically, not practically
|
|
"git2",
|
|
"url",
|
|
]
|
|
# Enable http(s) sources for builder
|
|
src-http = [
|
|
"_src-any",
|
|
"builder", # required logically, not practically
|
|
"ureq",
|
|
"url",
|
|
"hex",
|
|
]
|
|
# Internal use only
|
|
unsafe = []
|
|
_src-any = []
|
|
|
|
################
|
|
# Dependencies #
|
|
################
|
|
|
|
[dependencies]
|
|
|
|
# Required
|
|
sha1 = "0.10.6"
|
|
fs-err = "3.1"
|
|
log = "0.4"
|
|
|
|
# Optional
|
|
toml = { optional = true, default-features = false, features = ["std", "serde", "parse"], version = "0.9"}
|
|
ureq = { optional = true, default-features = false, features = ["gzip", "native-tls"], version = "3.1"}
|
|
mlua = { optional = true, features = ["lua54", "serde"], version = "0.11" }
|
|
bubblewrap = { optional = true, git = "https://git.gay/cata/bubblewrap" }
|
|
serde = { optional = true, features = ["derive"], version = "1.0" }
|
|
clap = { optional = true, features = ["derive"], version = "4.5" }
|
|
env_logger = { optional = true, version = "0.11" }
|
|
owo-colors = { optional = true, version = "4.2" }
|
|
rmp-serde = { optional = true, version = "1.3" }
|
|
walkdir = { optional = true, version = "2.5" }
|
|
git2 = { optional = true, version = "0.20" }
|
|
glob = { optional = true, version = "0.3" }
|
|
hex = { optional = true, version = "0.4" }
|
|
url = { optional = true, version = "2.5" }
|
|
|
|
[dev-dependencies]
|
|
|
|
[patch.crates-io]
|
|
# https://github.com/3Hren/msgpack-rust/pull/366
|
|
rmp = { git = "https://github.com/Jake-Shadle/msgpack-rust", rev = "31fe7eedc57930fa9084bbfe83e83f6e9c4a84e6" }
|
|
|
|
##################
|
|
# Build Profiles #
|
|
##################
|
|
|
|
[profile.dev]
|
|
debug = false
|
|
|
|
[profile.release]
|
|
lto = true
|
|
codegen-units = 1
|
|
panic = "abort"
|
|
|
|
[profile.tiny]
|
|
inherits = "release"
|
|
opt-level = "z"
|
|
debug = false
|
|
strip = true
|
|
codegen-units = 1
|
|
incremental = false
|
|
panic = "abort"
|
|
|
|
#######################
|
|
# Lints Configuration #
|
|
#######################
|
|
|
|
[lints.rust]
|
|
absolute-paths-not-starting-with-crate = "deny"
|
|
elided-lifetimes-in-paths = "warn"
|
|
explicit-outlives-requirements = "warn"
|
|
linker-messages = "deny"
|
|
# missing-copy-implementations = "warn"
|
|
missing-docs = "deny"
|
|
non-ascii-idents = "deny"
|
|
redundant-imports = "warn"
|
|
redundant-lifetimes = "warn"
|
|
single-use-lifetimes = "warn"
|
|
# supertrait-item-shadowing-definition = "deny"
|
|
# supertrait-item-shadowing-usage = "deny"
|
|
unit-bindings = "warn"
|
|
unnameable-types = "warn"
|
|
# unqualified-local-imports = "warn"
|
|
unreachable-pub = "warn"
|
|
unsafe-code = "forbid"
|
|
# unstable-features = "deny"
|
|
unused-lifetimes = "warn"
|
|
unused-qualifications = "warn"
|
|
variant-size-differences = "warn"
|
|
|
|
[lints.clippy]
|
|
# cargo
|
|
cargo = { priority = -1, level = "warn" }
|
|
multiple_crate_versions = "allow"
|
|
# complexity
|
|
# correctness
|
|
# nursery
|
|
nursery = { priority = -1, level = "warn" }
|
|
option_if_let_else = "allow"
|
|
uninhabited_references = "allow"
|
|
redundant_pub_crate = "allow"
|
|
# pedantic
|
|
pedantic = { priority = -1, level = "warn" }
|
|
doc_markdown = "allow"
|
|
missing_panics_doc = "allow"
|
|
missing_errors_doc = "allow"
|
|
large_stack_arrays = "allow"
|
|
# perf
|
|
# restriction
|
|
allow_attributes = "deny"
|
|
arithmetic_side_effects = "warn"
|
|
as_conversions = "warn"
|
|
assertions_on_result_states = "warn"
|
|
cfg_not_test = "deny"
|
|
empty_enum_variants_with_brackets = "warn"
|
|
empty_structs_with_brackets = "warn"
|
|
float_arithmetic = "deny"
|
|
float_cmp_const = "deny"
|
|
get_unwrap = "warn"
|
|
infinite_loop = "deny"
|
|
let_underscore_must_use = "warn"
|
|
pathbuf_init_then_push = "warn"
|
|
precedence_bits = "warn"
|
|
renamed_function_params = "deny"
|
|
rest_pat_in_fully_bound_structs = "warn"
|
|
return_and_then = "warn"
|
|
semicolon_inside_block = "warn"
|
|
shadow_same = "warn"
|
|
shadow_unrelated = "warn"
|
|
str_to_string = "warn"
|
|
string_add = "deny"
|
|
string_lit_chars_any = "warn"
|
|
tests_outside_test_module = "deny"
|
|
unused_result_ok = "warn"
|
|
# style
|
|
new_without_default = "allow"
|
|
# suspicious
|
|
|