Skip to content

Commit cd6a3ea

Browse files
committed
feat: add build scripts for electron application and include electron-builder dependency
1 parent 1cdc512 commit cd6a3ea

File tree

6 files changed

+13669
-9011
lines changed

6 files changed

+13669
-9011
lines changed

.github/workflows/ci.yml

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
workflow_dispatch:
99

1010
env:
11-
NODE_VERSION: 22
11+
NODE_VERSION: 20
1212
ELECTRON_CACHE: ~/.cache/electron
1313
ELECTRON_BUILDER_CACHE: ~/.cache/electron-builder
1414

@@ -37,7 +37,7 @@ jobs:
3737
run: npm run lint:markdown
3838

3939
- name: Check for duplicate code
40-
run: npx jscpd apps/
40+
run: npx jscpd .
4141

4242
- name: License check
4343
run: npx license-checker --summary
@@ -113,27 +113,33 @@ jobs:
113113
restore-keys: |
114114
${{ runner.os }}-electron-
115115
116+
- name: Setup Linux dependencies
117+
if: matrix.platform == 'linux'
118+
run: |
119+
sudo apt-get update
120+
sudo apt-get install -y xvfb
121+
116122
- name: Build Electron app (Linux)
117123
if: matrix.platform == 'linux'
118124
run: |
119125
cd apps
120-
npx electron-builder --linux tar.gz --x64 --publish=never
126+
xvfb-run -a npx electron-builder --linux tar.gz --x64 --publish=never --config electron-builder.json
121127
env:
122128
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
123129

124130
- name: Build Electron app (Windows)
125131
if: matrix.platform == 'win'
126132
run: |
127133
cd apps
128-
npx electron-builder --win portable --x64 --publish=never
134+
npx electron-builder --win portable --x64 --publish=never --config electron-builder.json
129135
env:
130136
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
131137

132138
- name: Build Electron app (macOS)
133139
if: matrix.platform == 'mac'
134140
run: |
135141
cd apps
136-
npx electron-builder --mac dmg --x64 --publish=never
142+
npx electron-builder --mac dmg --x64 --publish=never --config electron-builder.json
137143
env:
138144
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
139145
CSC_IDENTITY_AUTO_DISCOVERY: false

apps/.gitignore

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Electron build output
2+
dist/
3+
build/
4+
5+
# Node modules
6+
node_modules/
7+
8+
# OS generated files
9+
.DS_Store
10+
Thumbs.db
11+
12+
# IDE files
13+
.vscode/
14+
.idea/
15+
16+
# Logs
17+
*.log
18+
npm-debug.log*
19+
20+
# Cache
21+
.npm
22+
.cache/

apps/package.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"name": "hackariens-electron-app",
3+
"version": "1.0.0",
4+
"description": "Electron app template from Hackariens",
5+
"main": "main.js",
6+
"scripts": {
7+
"start": "electron .",
8+
"build": "electron-builder --config electron-builder.json",
9+
"build:linux": "electron-builder --linux --config electron-builder.json",
10+
"build:win": "electron-builder --win --config electron-builder.json",
11+
"build:mac": "electron-builder --mac --config electron-builder.json"
12+
},
13+
"keywords": ["electron", "template", "hackariens"],
14+
"author": "hackariens",
15+
"license": "MIT",
16+
"devDependencies": {
17+
"electron": "^28.0.0",
18+
"electron-builder": "^24.13.3"
19+
}
20+
}

0 commit comments

Comments
 (0)