# SPDX-FileCopyrightText: 2024 Christina Sørensen
# SPDX-License-Identifier: EUPL-1.2
[package]
name = "eza"
description = "A modern replacement for ls"
authors = ["Christina Sørensen <christina@cafkafk.com>"]
categories = ["command-line-utilities"]
edition = "2021"
rust-version = "1.74.0"
exclude = [
  "/docs/",
  "/devtools/",
  "/snap/",
  "/tests/",
  "/.config/",
  "/.github/",
  "/deb.asc",
  "/deny.toml",
  "/flake.*",
  "/justfile",
  "/powertest.yaml",
  "/rust-toolchain.toml",
  "/.envrc",
  "/.gitignore",
  "/.git-blame-ignore-revs",
  "/.pre-commit-config-non-nix.yaml",
]
readme = "README.md"
homepage = "https://github.com/eza-community/eza"
license = "EUPL-1.2"
repository = "https://github.com/eza-community/eza"
version = "0.20.18"


[package.metadata.deb]
license-file = ["LICENCE", "4"]
depends = "$auto"
extended-description = """
eza is a modern, maintained replacement for ls
"""
section = "utils"
priority = "optional"
assets = [
  [
    "target/release/eza",
    "/usr/bin/eza",
    "0755",
  ],
  [
    "target/release/../man/eza.1",
    "/usr/share/man/man1/eza.1",
    "0644",
  ],
  [
    "target/release/../man/eza_colors.5",
    "/usr/share/man/man5/eza_colors.5",
    "0644",
  ],
  [
    "target/release/../man/eza_colors-explanation.5",
    "/usr/share/man/man5/eza_colors-explanation.5",
    "0644",
  ],
  [
    "completions/bash/eza",
    "/usr/share/bash-completion/completions/eza",
    "0644",
  ],
  [
    "completions/zsh/_eza",
    "/usr/share/zsh/site-functions/_eza",
    "0644",
  ],
  [
    "completions/fish/eza.fish",
    "/usr/share/fish/vendor_completions.d/eza.fish",
    "0644",
  ],
]


[[bin]]
name = "eza"


[dependencies]
rayon = "1.10.0"
chrono = { version = "0.4.34", default-features = false, features = ["clock"] }
nu-ansi-term = { version = "0.50.1", features = [
  "serde",
  "derive_serde_style",
] }
glob = "0.3"
libc = "0.2"
locale = "0.2"
log = "0.4"
natord-plus-plus = "2.0"
path-clean = "1.0.1"
number_prefix = "0.4"
palette = { version = "0.7.6", default-features = false, features = ["std"] }
once_cell = "1.20.2"
percent-encoding = "2.3.1"
phf = { version = "0.11.2", features = ["macros"] }
plist = { version = "1.7.0", default-features = false }
uutils_term_grid = "0.6.0"
terminal_size = "0.4.1"
timeago = { version = "0.4.2", default-features = false }
unicode-width = "0.2"
zoneinfo_compiled = "0.5.1"
ansi-width = "0.1.0"
serde = { version = "1.0.215", features = ["derive"] }
dirs = "5.0.1"
serde_norway = "0.9"
backtrace = "0.3"

[dependencies.git2]
version = "0.20"
optional = true
default-features = false

[target.'cfg(target_os = "linux")'.dependencies]
proc-mounts = "0.3"

[target.'cfg(unix)'.dependencies]
uzers = "0.12.1"

[target.'cfg(target_os = "windows")'.dependencies]
windows-sys = { version = "0.59.0", features = [
  "Win32_System_Console",
  "Win32_Foundation",
] }

[build-dependencies]
chrono = { version = "0.4.34", default-features = false, features = ["clock"] }

[dev-dependencies]
criterion = { version = "0.5.1", features = ["html_reports"] }
trycmd = "0.15"

[features]
default = ["git"]
git = ["git2"]
vendored-openssl = ["git2/vendored-openssl"]
vendored-libgit2 = ["git2/vendored-libgit2"]
# Should only be used inside of flake.nix
nix = []
# Should only be used inside of flake.nix locally (not on CI)
nix-local = []
# Should only be used inside of flake.nix
# Shouldn't ever be used in CI (slow!)
powertest = []
nix-generated = []

# use LTO for smaller binaries (that take longer to build)
[profile.release]
lto = true
strip = true
opt-level = 3
codegen-units = 1
panic = 'abort'

[[bench]]
name = "my_benchmark"
harness = false
