Download raw body.
[NEW]: productivity/tickrs: Graph stock/fund/crypto prices in terminal UI
[NEW]: productivity/tickrs: Graph stock/fund/crypto prices in terminal UI
[NEW]: productivity/tickrs: Graph stock/fund/crypto prices in terminal UI
Rafael Sadowski <rafael@sizeofvoid.org> writes:
> On Mon Jul 28, 2025 at 08:52:23PM +0800, Chris Billington wrote:
>> Attached is a new proposed port productivity/tickrs, which graphs
>> stock, fund and crypto prices over various timeframes in a terminal UI.
>> Data is from Yahoo Finance and Coinbase.
>
> Tested on amd64. Works perfectly for me and I would be happy if we
> could import it.
Below a diff on top of the tarball to simplify the patching to remove
static linking of curl and ssl.
it only patches src/api/Cargo.toml (and regenerate Cargo.lock).
>> Patched to use base ssl/libz and net/curl rather than the vendored
>> versions in upstream.
>>
>> make lib-depends-check complains about extra WANTLIBS for the
>> base/system libraries: I don't know why. Can someone more knowedgeable
>> with Rust ports explain?
>
> Yeah maybe a ports rust guru can help here!?
it is 'make port-lib-depends-check' (and not 'make lib-depends-check').
I changed WANTLIB (and LIB_DEPENDS) to what is need.
$ make port-lib-depends-check
$ make show=WANTLIB
c pthread c++abi m curl
The tarball (updated) is reattached.
I would be ok for import it with these changes.
--
Sebastien Marie
Commit ID: a7e651c23fb139a52abaf2119339e80baa0f5635
Change ID: urzqznqmnqvxoypqnzwszkpkmpmqzyly
Author : Sebastien Marie <semarie@kapouay.eu.org> (2025-07-31 09:00:03)
Committer: Sebastien Marie <semarie@kapouay.eu.org> (2025-08-01 10:28:01)
(no description set)
diff --git a/productivity/tickrs/Makefile b/productivity/tickrs/Makefile
index adf8340a29..977be71009 100644
--- a/productivity/tickrs/Makefile
+++ b/productivity/tickrs/Makefile
@@ -13,13 +13,14 @@
# MIT License
PERMIT_PACKAGE = Yes
-WANTLIB += ${MODCARGO_WANTLIB} crypto ssl pthread m z curl \
- nghttp2 ngtcp2 ngtcp2_crypto_quictls
+WANTLIB += ${MODCARGO_WANTLIB} m curl
-LIB_DEPENDS = net/curl www/nghttp2 net/ngtcp2
+LIB_DEPENDS = net/curl
MODULES = devel/cargo
+MODCARGO_CRATES_UPDATE += tickrs-api
+
CONFIGURE_STYLE = cargo
USE_GMAKE = Yes
@@ -27,7 +28,7 @@
post-install:
${INSTALL_DATA_DIR} ${PREFIX}/share/examples/tickrs
@${SUBST_DATA} ${FILESDIR}/config.yml \
- ${PREFIX}/share/examples/tickrs/config.yml.sample
+ ${PREFIX}/share/examples/tickrs/config.yml.sample
.include "crates.inc"
diff --git a/productivity/tickrs/patches/patch-api_Cargo_toml b/productivity/tickrs/patches/patch-api_Cargo_toml
index 0d385c2793..d737d2c249 100644
--- a/productivity/tickrs/patches/patch-api_Cargo_toml
+++ b/productivity/tickrs/patches/patch-api_Cargo_toml
@@ -1,3 +1,6 @@
+- avoid "static-curl" feature (in default features)
+- avoid "static-ssl" feature
+
Index: api/Cargo.toml
--- api/Cargo.toml.orig
+++ api/Cargo.toml
@@ -6,7 +9,7 @@
futures = "0.3"
http = "0.2"
-isahc = { version = "1.7", features = ["static-ssl"] }
-+isahc = "1.7"
++isahc = { version = "1.7", default-features = false, features = ["http2", "text-decoding"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_urlencoded = "0.7"
diff --git a/productivity/tickrs/patches/patch-modcargo-crates_curl-0_4_46_Cargo_toml b/productivity/tickrs/patches/patch-modcargo-crates_curl-0_4_46_Cargo_toml
deleted file mode 100644
index 544da8c682..0000000000
--- a/productivity/tickrs/patches/patch-modcargo-crates_curl-0_4_46_Cargo_toml
+++ /dev/null
@@ -1,40 +0,0 @@
-Index: modcargo-crates/curl-0.4.46/Cargo.toml
---- modcargo-crates/curl-0.4.46/Cargo.toml.orig
-+++ modcargo-crates/curl-0.4.46/Cargo.toml
-@@ -86,7 +86,7 @@ default = ["ssl"]
- force-system-lib-on-osx = ["curl-sys/force-system-lib-on-osx"]
- http2 = ["curl-sys/http2"]
- mesalink = ["curl-sys/mesalink"]
--ntlm = ["curl-sys/ntlm"]
-+#ntlm = ["curl-sys/ntlm"]
- poll_7_68_0 = ["curl-sys/poll_7_68_0"]
- protocol-ftp = ["curl-sys/protocol-ftp"]
- rustls = ["curl-sys/rustls"]
-@@ -96,17 +96,17 @@ ssl = [
- "openssl-probe",
- "curl-sys/ssl",
- ]
--static-curl = ["curl-sys/static-curl"]
--static-ssl = ["curl-sys/static-ssl"]
-+#static-curl = ["curl-sys/static-curl"]
-+#static-ssl = ["curl-sys/static-ssl"]
- upkeep_7_62_0 = ["curl-sys/upkeep_7_62_0"]
--windows-static-ssl = [
-- "static-curl",
-- "curl-sys/windows-static-ssl",
--]
--zlib-ng-compat = [
-- "curl-sys/zlib-ng-compat",
-- "static-curl",
--]
-+#windows-static-ssl = [
-+# "static-curl",
-+# "curl-sys/windows-static-ssl",
-+#]
-+#zlib-ng-compat = [
-+# "curl-sys/zlib-ng-compat",
-+# "static-curl",
-+#]
-
- [target."cfg(all(unix, not(target_os = \"macos\")))".dependencies.openssl-probe]
- version = "0.1.2"
diff --git a/productivity/tickrs/patches/patch-modcargo-crates_curl-sys-0_4_72+curl-8_6_0_Cargo_toml b/productivity/tickrs/patches/patch-modcargo-crates_curl-sys-0_4_72+curl-8_6_0_Cargo_toml
deleted file mode 100644
index f67ac0d171..0000000000
--- a/productivity/tickrs/patches/patch-modcargo-crates_curl-sys-0_4_72+curl-8_6_0_Cargo_toml
+++ /dev/null
@@ -1,31 +0,0 @@
-Index: modcargo-crates/curl-sys-0.4.72+curl-8.6.0/Cargo.toml
---- modcargo-crates/curl-sys-0.4.72+curl-8.6.0/Cargo.toml.orig
-+++ modcargo-crates/curl-sys-0.4.72+curl-8.6.0/Cargo.toml
-@@ -54,20 +54,20 @@ default = ["ssl"]
- force-system-lib-on-osx = []
- http2 = ["libnghttp2-sys"]
- mesalink = []
--ntlm = []
-+#ntlm = []
- poll_7_68_0 = []
- protocol-ftp = []
- rustls = ["rustls-ffi"]
- spnego = []
- ssl = ["openssl-sys"]
--static-curl = []
--static-ssl = ["openssl-sys/vendored"]
-+#static-curl = []
-+#static-ssl = ["openssl-sys/vendored"]
- upkeep_7_62_0 = []
- windows-static-ssl = []
--zlib-ng-compat = [
-- "libz-sys/zlib-ng",
-- "static-curl",
--]
-+#zlib-ng-compat = [
-+# "libz-sys/zlib-ng",
-+# "static-curl",
-+#]
-
- [target."cfg(all(unix, not(target_os = \"macos\")))".dependencies.openssl-sys]
- version = "0.9.64"
diff --git a/productivity/tickrs/patches/patch-modcargo-crates_isahc-1_7_2_Cargo_toml b/productivity/tickrs/patches/patch-modcargo-crates_isahc-1_7_2_Cargo_toml
deleted file mode 100644
index 3db2ad4d6d..0000000000
--- a/productivity/tickrs/patches/patch-modcargo-crates_isahc-1_7_2_Cargo_toml
+++ /dev/null
@@ -1,23 +0,0 @@
-Index: modcargo-crates/isahc-1.7.2/Cargo.toml
---- modcargo-crates/isahc-1.7.2/Cargo.toml.orig
-+++ modcargo-crates/isahc-1.7.2/Cargo.toml
-@@ -172,7 +172,7 @@ version = ">=0.2.12, <0.4.0"
- cookies = ["httpdate"]
- default = [
- "http2",
-- "static-curl",
-+# "static-curl",
- "text-decoding",
- ]
- http2 = ["curl/http2"]
-@@ -187,8 +187,8 @@ psl = [
- "publicsuffix",
- ]
- spnego = ["curl-sys/spnego"]
--static-curl = ["curl/static-curl"]
--static-ssl = ["curl/static-ssl"]
-+#static-curl = ["curl/static-curl"]
-+#static-ssl = ["curl/static-ssl"]
- text-decoding = [
- "encoding_rs",
- "mime",
[NEW]: productivity/tickrs: Graph stock/fund/crypto prices in terminal UI
[NEW]: productivity/tickrs: Graph stock/fund/crypto prices in terminal UI
[NEW]: productivity/tickrs: Graph stock/fund/crypto prices in terminal UI