summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornic <ra@afu.re>2025-11-09 00:47:19 -0500
committernic <ra@afu.re>2025-11-09 00:47:19 -0500
commit2a9f3c7d5e71797c685b2677a584b5f9007c5fec (patch)
tree9959f916cdfca52301cb04edbd3c5b7706ad2057
parent89fc2b266218f2d0994dea22fad6eb1d2d573db9 (diff)
Auto from nzxt - Sun 09 Nov 2025 12:47:19 AM EST
-rw-r--r--Finance/Tickers/index.md2
-rw-r--r--Trading.md1
-rw-r--r--cs/Gentoo/index.md2
-rw-r--r--cs/Gentoo/tws on asahi arm.md95
4 files changed, 99 insertions, 1 deletions
diff --git a/Finance/Tickers/index.md b/Finance/Tickers/index.md
index 4198a59..8886042 100644
--- a/Finance/Tickers/index.md
+++ b/Finance/Tickers/index.md
@@ -66,6 +66,8 @@
[[RIG]]
+[[ROKU]]
+
[[SAH]]
[[SLAB]]
diff --git a/Trading.md b/Trading.md
index 7725893..58b7fa5 100644
--- a/Trading.md
+++ b/Trading.md
@@ -23,6 +23,7 @@
- U - 50-60 PT
- [[wiki4:DD|DD]] - buyback story - bullish
- [[wiki4:MNMD|MNMD]]
+- [[wiki4:ROKU|ROKU]]
diff --git a/cs/Gentoo/index.md b/cs/Gentoo/index.md
index 95669c7..f7abb23 100644
--- a/cs/Gentoo/index.md
+++ b/cs/Gentoo/index.md
@@ -9,7 +9,7 @@
[[gentoo-kernel-bin]]
-
+[[tws on asahi arm]]
diff --git a/cs/Gentoo/tws on asahi arm.md b/cs/Gentoo/tws on asahi arm.md
new file mode 100644
index 0000000..4a677cb
--- /dev/null
+++ b/cs/Gentoo/tws on asahi arm.md
@@ -0,0 +1,95 @@
+The key insight is that TWS is fundamentally a Java application with platform-agnostic JAR files. While the TWS installer is x86-only and won't run on ARM64, the compiled Java bytecode will run perfectly on any ARM64 Java Virtual Machine. The strategy is:
+
+- Install TWS on an x86-64 machine and extract the JAR files
+
+- Install native ARM64 Java on your Gentoo Asahi system
+
+- Copy the JAR files and launch TWS using the native JVM
+
+
+
+sudo emerge -av dev-java/openjdk-bin:11
+java -version
+eselect java-vm list
+
+tar -czf Jts.tar.gz Jts/
+
+scp username@x86machine:~/Jts.tar.gz ~/.local/
+
+tar -xzf Jts.tar.gz
+ls -la ~/.local/Jts/
+
+# create launch script
+
+vim .local/bin/ib-tws
+
+## 1
+#!/bin/bash
+set -euo pipefail
+
+# TWS Launch Script for ARM64 Native Java
+
+JTS_DIR="${HOME}/Jts"
+cd "${JTS_DIR}" || { echo "Directory $JTS_DIR does not exist!"; exit 1; }
+
+JTS_DIR="${HOME}/.local/Jts/1041/jars"
+CLASSPATH=$(printf ":%s" "${JTS_DIR}"/*.jar)
+CLASSPATH=${CLASSPATH:1}
+
+export HOME="$HOME" # For possible relative lookups
+JTS_DIR="$HOME/.local/Jts"
+cd "$JTS_DIR"
+
+# List of required JARs (adjust as needed for your version)
+JARS=(
+ jts.jar
+ total.jar
+ hsqldb.jar
+ jcommon-1.0.16.jar
+ jfreechart-1.0.13.jar
+ jhall.jar
+ other.jar
+ rss.jar
+ pluginsupport.jar
+)
+
+CLASSPATH=$(IFS=:; echo "${JARS[*]}")
+
+# Check that all JARs exist
+for JAR in "${JARS[@]}"; do
+ if [[ ! -f "$JAR" ]]; then
+ echo "Missing JAR file: $JAR"
+ exit 1
+ fi
+done
+
+echo "Launching TWS..."
+#Use : as the classpath separator on Linux (Windows uses ;)
+exec java \
+ -cp "${CLASSPATH}" \
+ -Dsun.java2d.noddraw=true \
+ -Dsun.java2d.xrender=false \
+ -Dswing.boldMetal=false \
+ -Dsun.locale.formatasdefault=true \
+ -Xmx1024M \
+ -XX:MaxPermSize=256M \
+ jclient.LoginFrame .
+
+
+### The exact JAR filenames (especially total.jar, jcommon-*.jar, jfreechart-*.jar) vary by TWS version - ls ~/Jts/*.jar
+
+# export GDK_BACKEND=x11 probably needed in script
+
+chmod +x
+
+## Dependencies
+
+# On Gentoo, ensure basic fonts are installed
+sudo emerge -av media-fonts/dejavu media-fonts/liberation-fonts
+# Rebuild font cache
+fc-cache -fv
+
+
+The default -Xmx1024M allocates 1GB heap. Adjust based on your needs and M2's 8GB total RAM:
+# For more intensive use
+-Xmx2048M -XX:MaxPermSize=512M