forked from Browsers-software/browsers
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
128 lines (96 loc) · 4.5 KB
/
Copy pathCargo.toml
File metadata and controls
128 lines (96 loc) · 4.5 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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
[package]
name = "browsers"
version = "0.4.1"
authors = ["Madis Liias <madisliias@gmail.com>"]
edition = "2021"
description = "Browsers"
homepage = "https://browsers.software/"
repository = "https://github.com/Browsers-software/browsers"
license = "MIT OR Apache-2.0"
build = "build.rs"
[dependencies]
# command-line argument parser
clap = "4.3.19"
# logging library
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["fmt", "std", "time", "local-time"] }
tracing-appender = "0.2"
# Official remote
#rolling-file = "0.2.0"
# Chrono-less fork, so doesn't pull in old time crate 0.1
rolling-file = { git = "https://github.com/browsers-software/rolling-file-rs.git", branch = "browsers" }
dirs = "5.0.1"
serde_json = "1.0"
serde = { version = "1.0", features = ["derive"] }
# UI library
# official remote
#druid = { git = "https://github.com/linebender/druid.git", features = ["png", "jpeg", "image"] }
# for local development
#druid = { path = "../druid/druid", features = ["png", "jpeg", "image"] }
# jpeg is required to process downloaded Chrome profile images
druid = { git = "https://github.com/browsers-software/druid.git", branch = "browsers", features = ["png", "jpeg", "image"] }
# parse urls
url = "2.4.0"
# parse url rules
globset = "0.4.12"
# Parse .ini files (e.g Firefox profiles.ini)
configparser = "3.0.2"
# Hash Firefox path with cityhash64, to map it to
# locked installation in profiles.ini
naive-cityhash = "0.2.0"
# To create lazy static variables
lazy_static = "1.4.0"
# When running a new instance of Browsers, new instances will check if existing instance is already running
single-instance = "0.3.3"
# When running a new instance of Browsers, new instances will send arguments
# to existing process via this library (and then close itself)
interprocess = "1.2.1"
# macOS Core Foundation bindings
# small selection of Core Foundation libs I happen to need
[target.'cfg(target_os = "macos")'.dependencies]
core-foundation = "0.9.3"
cocoa-foundation = "0.1.1"
objc = "0.2.7"
libc = "0.2"
[target.'cfg(target_os = "linux")'.dependencies]
xdg-mime = "^0.3.3"
# to find default registered icons
glib = { version = "0.16.6", package = "gio" }
# to find icon theme and icon; (should be same version of gtk as druid is using)
gtk = { version = "0.16.2" }
# Helps parsing commands that are in Exec field in .desktop files
shell-words = "1.1.0"
[target.'cfg(target_os = "windows")'.dependencies]
winreg = "0.50.0"
# same version as druid-shell uses
winapi = { version = "0.3.9", features = ["ntdef"] }
# Helps parsing commands that are in windows registry for different apps
# Same as `shell-words` but for Windows, i.e supporting \ in paths
winsplit = "0.1"
# Replacement for fs::canonicalize, but returns normal path instead of the `\\?` prefixed path
dunce = "1.0.4"
[target.'cfg(target_os = "windows")'.build-dependencies]
# To embed .ico into .exe
# Requires rc.exe from the Windows SDK (or windres.exe and ar.exe from minGW64)
winres = "0.1.12"
#[profile.dev]
#lto = true
[profile.release]
#opt-level = 'z' # Optimize for size.
lto = true # Enable Link Time Optimization
#codegen-units = 1 # Reduce number of codegen units to increase optimizations.
#panic = 'abort' # Abort on panic
# Base image is ubuntu:20.04, see https://github.com/cross-rs/cross/blob/main/docker/Dockerfile.x86_64-unknown-linux-gnu
# Unfortunately https://github.com/cross-rs/cross/pull/591 is not yet in stable version,
# so update from main to specific version once released https://github.com/cross-rs/cross/pkgs/container/x86_64-unknown-linux-gnu/versions?filters%5Bversion_type%5D=tagged
# Additionally install some libraries we need
[package.metadata.cross.target.x86_64-unknown-linux-gnu]
image = "browsers.software/x86_64-unknown-linux-gnu-gtk:local"
#image = "ghcr.io/cross-rs/x86_64-unknown-linux-gnu:main"
#pre-build = ["DEBIAN_FRONTEND=noninteractive apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends install libpango-1.0-0 libpango1.0-dev libgtk-3-dev"]
[package.metadata.cross.target.aarch64-unknown-linux-gnu]
image = "browsers.software/aarch64-unknown-linux-gnu-gtk:local"
#image = "ghcr.io/cross-rs/aarch64-unknown-linux-gnu:main"
#pre-build = ["dpkg --add-architecture arm64 && DEBIAN_FRONTEND=noninteractive apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends install libpango-1.0-0:arm64 libpango1.0-dev:arm64 libgtk-3-dev:arm64"]
[package.metadata.cross.target.armv7-unknown-linux-gnueabihf]
image = "browsers.software/armv7-unknown-linux-gnueabihf-gtk:local"