script to update tor-fetch script to latest published tor expert bundle; compress mac .dmg
This commit is contained in:
parent
570b3670f0
commit
acf3fcb648
|
@ -220,7 +220,7 @@ steps:
|
|||
- copy 'C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Redist\MSVC\14.36.32532\x64\Microsoft.VC143.CRT\msvcp140.dll' $Env:releasedir
|
||||
- copy README.md $Env:releasedir\
|
||||
- copy windows\*.bat $Env:releasedir\
|
||||
- powershell -command "Expand-Archive -Path tor.zip -DestinationPath $Env:releasedir\Tor"
|
||||
- Copy-Item -Path windows/tor -Destination $Env:releasedir" -recurse
|
||||
|
||||
- name: package-windows
|
||||
image: openpriv/nsis
|
||||
|
|
|
@ -69,7 +69,9 @@ analysis_options.yaml
|
|||
integration_test/env/default/tor
|
||||
integration_test/env/temp*
|
||||
linux/Tor
|
||||
linux/tor
|
||||
linux/tor.tar.gz
|
||||
macos/tor
|
||||
|
||||
coverage
|
||||
test/failures
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/sh
|
||||
|
||||
cd macos
|
||||
curl https://git.openprivacy.ca/openprivacy/buildfiles/raw/branch/master/tor/tor-macos-0.4.7.8.tar.gz --output tor.tar.gz
|
||||
curl https://archive.torproject.org/tor-package-archive/torbrowser/13.0.1/tor-expert-bundle-macos-aarch64-13.0.1.tar.gz --output tor.tar.gz
|
||||
tar -xzf tor.tar.gz
|
||||
chmod a+x Tor/tor.real
|
||||
chmod a+x tor/tor
|
||||
cd ..
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
|
||||
Invoke-WebRequest -Uri https://git.openprivacy.ca/openprivacy/buildfiles/raw/branch/master/tor/tor-win64-0.4.7.8.zip -OutFile tor.zip
|
||||
Invoke-WebRequest -Uri https://archive.torproject.org/tor-package-archive/torbrowser/13.0.1/tor-expert-bundle-windows-x86_64-13.0.1.tar.gz -OutFile tor.tar.gz
|
||||
|
||||
if ((Get-FileHash tor.zip -Algorithm sha512).Hash -ne '5b8f900a37f6e90d7a945b3903d769383c7478042cb43b2105d2374186e1a536f1a4758a2823d1d5be71d53a81dcfd8243293e04f82812d355983df322823cf4' ) { Write-Error 'tor.zip sha512sum mismatch' }
|
||||
# if ((Get-FileHash tor.tar.gz -Algorithm sha512).Hash -ne '5b8f900a37f6e90d7a945b3903d769383c7478042cb43b2105d2374186e1a536f1a4758a2823d1d5be71d53a81dcfd8243293e04f82812d355983df322823cf4' ) { Write-Error 'tor.zip sha512sum mismatch' }
|
||||
|
||||
Expand-Archive -Path tor.zip -DestinationPath Tor
|
||||
#Expand-Archive -Path tor.tar.gz -DestinationPath tor
|
||||
mkdir windows/tor
|
||||
tar -xzf tor.tar.gz -C windows/tor
|
||||
|
|
14
fetch-tor.sh
14
fetch-tor.sh
|
@ -1,14 +1,22 @@
|
|||
#!/bin/sh
|
||||
|
||||
cd linux
|
||||
wget https://git.openprivacy.ca/openprivacy/buildfiles/raw/branch/master/tor/tor-0.4.7.8-linux-x86_64.tar.gz -O tor.tar.gz
|
||||
wget https://archive.torproject.org/tor-package-archive/torbrowser/13.0.1/tor-expert-bundle-linux-x86_64-13.0.1.tar.gz -O tor.tar.gz
|
||||
tar -xzf tor.tar.gz
|
||||
cd ..
|
||||
|
||||
mkdir -p android/app/src/main/jniLibs/arm64-v8a
|
||||
wget https://git.openprivacy.ca/openprivacy/buildfiles/raw/branch/master/tor/tor-0.4.7.10-arm64 -O android/app/src/main/jniLibs/arm64-v8a/libtor.so
|
||||
wget https://archive.torproject.org/tor-package-archive/torbrowser/13.0.3/tor-expert-bundle-android-aarch64-13.0.3.tar.gz -O tor-aarch64.tar.gz
|
||||
mkdir tor-aarch64
|
||||
tar -xzf tor-aarch64.tar.gz -C tor-aarch64
|
||||
cp tor-aarch64/tor/libTor.so android/app/src/main/jniLibs/arm64-v8a/libtor.so
|
||||
chmod a+x android/app/src/main/jniLibs/arm64-v8a/libtor.so
|
||||
rm -r tor-aarch64
|
||||
|
||||
mkdir -p android/app/src/main/jniLibs/armeabi-v7a
|
||||
wget https://git.openprivacy.ca/openprivacy/buildfiles/raw/branch/master/tor/tor-0.4.7.10-arm7 -O android/app/src/main/jniLibs/armeabi-v7a/libtor.so
|
||||
wget https://archive.torproject.org/tor-package-archive/torbrowser/13.0.3/tor-expert-bundle-android-armv7-13.0.3.tar.gz -O tor-armv7.tar.gz
|
||||
mkdir tor-armv7
|
||||
tar -xzf tor-armv7.tar.gz -C tor-armv7
|
||||
cp tor-armv7/tor/libTor.so android/app/src/main/jniLibs/armeabi-v7a/libtor.so
|
||||
chmod a+x android/app/src/main/jniLibs/armeabi-v7a/libtor.so
|
||||
rm -r tor-armv7
|
|
@ -177,44 +177,44 @@ class CwtchFfi implements Cwtch {
|
|||
cwtchDir = envVars['CWTCH_HOME'] ?? path.join(envVars['HOME']!, ".cwtch");
|
||||
}
|
||||
|
||||
if (await File("linux/Tor/tor").exists()) {
|
||||
bundledTor = "linux/Tor/tor";
|
||||
} else if (await File("lib/Tor/tor").exists()) {
|
||||
bundledTor = "lib/Tor/tor";
|
||||
} else if (await File(path.join(home, ".local/lib/cwtch/Tor/tor")).exists()) {
|
||||
bundledTor = path.join(home, ".local/lib/cwtch/Tor/tor");
|
||||
} else if (await File("/usr/lib/cwtch/Tor/tor").exists()) {
|
||||
bundledTor = "/usr/lib/cwtch/Tor/tor";
|
||||
if (await File("linux/tor/tor").exists()) {
|
||||
bundledTor = "linux/tor/tor";
|
||||
} else if (await File("lib/tor/tor").exists()) {
|
||||
bundledTor = "lib/tor/tor";
|
||||
} else if (await File(path.join(home, ".local/lib/cwtch/tor/tor")).exists()) {
|
||||
bundledTor = path.join(home, ".local/lib/cwtch/tor/tor");
|
||||
} else if (await File("/usr/lib/cwtch/tor/tor").exists()) {
|
||||
bundledTor = "/usr/lib/cwtch/tor/tor";
|
||||
} else {
|
||||
bundledTor = "tor";
|
||||
}
|
||||
} else if (Platform.isWindows) {
|
||||
cwtchDir = envVars['CWTCH_DIR'] ?? path.join(envVars['UserProfile']!, ".cwtch");
|
||||
String currentTor = path.join(Directory.current.absolute.path, "Tor\\Tor\\tor.exe");
|
||||
String currentTor = path.join(Directory.current.absolute.path, "tor\\tor\\tor.exe");
|
||||
if (await File(currentTor).exists()) {
|
||||
bundledTor = currentTor;
|
||||
} else {
|
||||
String exeDir = path.dirname(Platform.resolvedExecutable);
|
||||
bundledTor = path.join(exeDir, "Tor\\Tor\\tor.exe");
|
||||
bundledTor = path.join(exeDir, "tor\\tor\\tor.exe");
|
||||
}
|
||||
} else if (Platform.isMacOS) {
|
||||
cwtchDir = envVars['CWTCH_HOME'] ?? path.join(envVars['HOME']!, "Library/Application Support/Cwtch");
|
||||
if (await File("Cwtch.app/Contents/MacOS/Tor/tor.real").exists()) {
|
||||
bundledTor = "Cwtch.app/Contents/MacOS/Tor/tor.real";
|
||||
} else if (await File("/Applications/Cwtch.app/Contents/MacOS/Tor/tor.real").exists()) {
|
||||
bundledTor = "/Applications/Cwtch.app/Contents/MacOS/Tor/tor.real";
|
||||
} else if (await File("/Volumes/Cwtch/Cwtch.app/Contents/MacOS/Tor/tor.real").exists()) {
|
||||
bundledTor = "/Volumes/Cwtch/Cwtch.app/Contents/MacOS/Tor/tor.real";
|
||||
} else if (await File("/Applications/Tor Browser.app/Contents/MacOS/Tor/tor.real").exists()) {
|
||||
bundledTor = "/Applications/Tor Browser.app/Contents/MacOS/Tor/tor.real";
|
||||
if (await File("Cwtch.app/Contents/MacOS/tor/tor").exists()) {
|
||||
bundledTor = "Cwtch.app/Contents/MacOS/tor/tor";
|
||||
} else if (await File("/Applications/Cwtch.app/Contents/MacOS/tor/tor").exists()) {
|
||||
bundledTor = "/Applications/Cwtch.app/Contents/MacOS/tor/tor";
|
||||
} else if (await File("/Volumes/Cwtch/Cwtch.app/Contents/MacOS/tor/tor").exists()) {
|
||||
bundledTor = "/Volumes/Cwtch/Cwtch.app/Contents/MacOS/tor/tor";
|
||||
} else if (await File("/Applications/Tor Browser.app/Contents/MacOS/tor/tor").exists()) {
|
||||
bundledTor = "/Applications/Tor Browser.app/Contents/MacOS/tor/tor";
|
||||
print("We couldn't find Tor in the Cwtch app directory, however we can fall back to the Tor Browser binary");
|
||||
} else {
|
||||
var splitPath = path.split(dirname(Platform.script.path));
|
||||
if (splitPath[0] == "/" && splitPath[1] == "Applications") {
|
||||
var appName = splitPath[2];
|
||||
print("We're running in /Applications in a non standard app name: $appName");
|
||||
if (await File("/Applications/$appName/Contents/MacOS/Tor/tor.real").exists()) {
|
||||
bundledTor = "/Applications/$appName/Contents/MacOS/Tor/tor.real";
|
||||
if (await File("/Applications/$appName/Contents/MacOS/tor/tor").exists()) {
|
||||
bundledTor = "/Applications/$appName/Contents/MacOS/tor/tor";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,4 +2,4 @@
|
|||
|
||||
# Script to run cwtch directly from package tarball directory
|
||||
|
||||
exec env LD_LIBRARY_PATH=./lib/:./lib/Tor ./lib/cwtch
|
||||
exec env LD_LIBRARY_PATH=./lib/:./lib/tor ./lib/cwtch
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
#!/bin/sh
|
||||
|
||||
exec env LD_LIBRARY_PATH=PREFIX/lib/cwtch/:PREFIX/lib/cwtch/Tor PREFIX/lib/cwtch/cwtch
|
||||
exec env LD_LIBRARY_PATH=PREFIX/lib/cwtch/:PREFIX/lib/cwtch/tor PREFIX/lib/cwtch/cwtch
|
||||
|
|
|
@ -9,4 +9,4 @@ cp linux/cwtch build/linux/x64/release/bundle/
|
|||
cp README.md build/linux/x64/release/bundle/
|
||||
cp linux/cwtch.png build/linux/x64/release/bundle/
|
||||
cp linux/libCwtch.so build/linux/x64/release/bundle/lib/
|
||||
cp -r linux/Tor build/linux/x64/release/bundle/lib
|
||||
cp -r linux/tor build/linux/x64/release/bundle/lib
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
cp libCwtch.x64.dylib build/macos/Build/Products/Release/Cwtch.app/Contents/Frameworks/
|
||||
cp libCwtch.arm64.dylib build/macos/Build/Products/Release/Cwtch.app/Contents/Frameworks/
|
||||
cp -r macos/Tor build/macos/Build/Products/Release/Cwtch.app/Contents/MacOS/
|
||||
cp -r macos/tor build/macos/Build/Products/Release/Cwtch.app/Contents/MacOS/
|
||||
|
||||
|
||||
|
||||
|
@ -16,7 +16,9 @@ cp -r "build/macos/Build/Products/Release/Cwtch.app" macos_dmg/
|
|||
cp macos/dmg/.DS_Store macos_dmg/
|
||||
cp macos/dmg/.VolumeIcon.icns macos_dmg/
|
||||
ln -s /Applications macos_dmg/Applications
|
||||
hdiutil create -fs HFS+ -volname Cwtch -srcfolder macos_dmg Cwtch.dmg
|
||||
hdiutil create -fs HFS+ -volname Cwtch -srcfolder macos_dmg Cwtch.tmp.dmg
|
||||
# compress
|
||||
hdiutil convert Cwtch.tmp.dmg -format UDZO -imagekey zlib-level=9 -o Cwtch.dmg
|
||||
|
||||
# create-dmg requires GUI and is therefore less suited to automated builds, preserving here for
|
||||
# manual runs to generate new .DS_Store and .VolumeIcon.icns for capture to the dmg dir for automated reuse
|
||||
|
|
|
@ -5,8 +5,8 @@ sed "s|featurePaths: REPLACED_BY_SCRIPT|featurePaths: <String>[$paths]|" integra
|
|||
flutter pub run build_runner clean
|
||||
flutter pub run build_runner build --delete-conflicting-outputs
|
||||
|
||||
PATH=$PATH:$PWD/linux/Tor
|
||||
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"$PWD/linux/":"$PWD/linux/Tor/"
|
||||
PATH=$PATH:$PWD/linux/tor
|
||||
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"$PWD/linux/":"$PWD/linux/tor/"
|
||||
PATH=$PATH LD_LIBRARY_PATH=$LD_LIBRARY_PATH LOG_FILE=test.log CWTCH_HOME=$PWD/integration_test/env/temp/ flutter test -d linux --dart-define TEST_MODE=true integration_test/gherkin_suite_test.dart
|
||||
#node index2.js
|
||||
#if [ "$HEADLESS" = "false" ]; then
|
||||
|
|
Loading…
Reference in New Issue