mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 03:29:02 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			75 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| set -e  # Fail on any command error
 | |
| 
 | |
| # Debug output
 | |
| echo "Matrix Arch: $MATRIX_ARCH"
 | |
| 
 | |
| # Detect architecture from matrix input, fallback to system architecture
 | |
| if [ -n "$MATRIX_ARCH" ]; then
 | |
|     ARCH=$MATRIX_ARCH
 | |
| else
 | |
|     ARCH=$(uname -m)
 | |
|     # Convert system architecture to our naming convention
 | |
|     case $ARCH in
 | |
|         x86_64) ARCH="x64" ;;
 | |
|         aarch64) ARCH="arm64" ;;
 | |
|     esac
 | |
| fi
 | |
| 
 | |
| # Debug output
 | |
| echo "Selected Arch: $ARCH"
 | |
| 
 | |
| # Set Node.js version and architecture-specific filename
 | |
| NODE_VERSION=20.15.1
 | |
| NODE_ARCH=$ARCH
 | |
| 
 | |
| # Debug output
 | |
| echo "Node arch: $NODE_ARCH"
 | |
| 
 | |
| # Special case for x64 in Node.js downloads
 | |
| if [ "$NODE_ARCH" = "x64" ]; then
 | |
|     NODE_FILENAME="x64"
 | |
| elif [ "$NODE_ARCH" = "arm64" ]; then
 | |
|     NODE_FILENAME="arm64"
 | |
| fi
 | |
| 
 | |
| # Debug output
 | |
| echo "Node filename: $NODE_FILENAME"
 | |
| 
 | |
| PKG_DIR=dist/trilium-linux-${ARCH}-server
 | |
| echo "Package directory: $PKG_DIR"
 | |
| 
 | |
| if [ "$1" != "DONTCOPY" ]
 | |
| then
 | |
|     # Need to modify copy-trilium.sh to accept the target directory
 | |
|     ./bin/copy-trilium.sh "$PKG_DIR"
 | |
| fi
 | |
| 
 | |
| cd dist
 | |
| wget https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-${NODE_FILENAME}.tar.xz
 | |
| tar xfJ node-v${NODE_VERSION}-linux-${NODE_FILENAME}.tar.xz
 | |
| rm node-v${NODE_VERSION}-linux-${NODE_FILENAME}.tar.xz
 | |
| cd ..
 | |
| 
 | |
| mv dist/node-v${NODE_VERSION}-linux-${NODE_FILENAME} $PKG_DIR/node
 | |
| 
 | |
| rm -r $PKG_DIR/node/lib/node_modules/npm
 | |
| rm -r $PKG_DIR/node/include/node
 | |
| 
 | |
| rm -r $PKG_DIR/node_modules/electron*
 | |
| rm -r $PKG_DIR/electron*.js
 | |
| 
 | |
| printf "#!/bin/sh\n./node/bin/node src/main" > $PKG_DIR/trilium.sh
 | |
| chmod 755 $PKG_DIR/trilium.sh
 | |
| 
 | |
| cp bin/tpl/anonymize-database.sql $PKG_DIR/
 | |
| 
 | |
| cp -r translations $PKG_DIR/
 | |
| 
 | |
| VERSION=`jq -r ".version" package.json`
 | |
| 
 | |
| cd dist
 | |
| 
 | |
| tar cJf trilium-linux-${ARCH}-server-${VERSION}.tar.xz trilium-linux-${ARCH}-server
 | 
