Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
188 lines (188 loc) · 15.6 KB
/
Copy pathpackage.json
File metadata and controls
188 lines (188 loc) · 15.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
{
"name": "rosi",
"version": "4.4.1",
"private": true,
"description": "Electron GUI for yt-dlp",
"desktopName": "com.burnttoasters.rosi.desktop",
"keywords": [
"electron",
"yt-dlp",
"video-downloader",
"cross-platform"
],
"main": "dist/main/main.js",
"packageManager": "npm@11.10.1",
"engines": {
"node": ">=24",
"npm": ">=11"
},
"scripts": {
"gitprune": "node build-scripts/git-prune-local-branches.js",
"gitprune:dry": "node build-scripts/git-prune-local-branches.js --dry-run",
"gitprune:force": "node build-scripts/git-prune-local-branches.js --force",
"prepare": "node build-scripts/install-hooks.js",
"hooks:install": "node build-scripts/install-hooks.js",
"clean": "node build-scripts/dist-tools.js clean && node build-scripts/dist-tools.js clean-release",
"licenses": "npx --no-install license-checker --production --json --out licenses.json",
"ytdlp:check": "node build-scripts/check-ytdlp.js",
"ytdlp:check:generate": "node build-scripts/check-ytdlp.js --generate",
"compile:main": "tsc --project tsconfig.main.json",
"compile:renderer": "tsc --project tsconfig.renderer.json",
"compile": "node build-scripts/dist-tools.js clean && npm run compile:main && npm run compile:renderer && node build-scripts/dist-tools.js copy",
"get:ffmpeg": "node build-scripts/get-ffmpeg.js",
"get:ffmpeg:all": "node build-scripts/get-ffmpeg.js --all && node build-scripts/check-ffmpeg.js --all --generate-checksums",
"ffmpeg:check": "node build-scripts/check-ffmpeg.js --require-checksums",
"ffmpeg:check:all": "npm run ffmpeg:check -- --all",
"ffmpeg:check:current": "npm run ffmpeg:check -- --current",
"ffmpeg:check:win": "npm run ffmpeg:check -- --target win:x64 --target win:arm64",
"ffmpeg:check:win:x64": "npm run ffmpeg:check -- --target win:x64",
"ffmpeg:check:win:arm64": "npm run ffmpeg:check -- --target win:arm64",
"ffmpeg:check:mac:universal": "npm run ffmpeg:check -- --target mac:x64 --target mac:arm64",
"ffmpeg:check:linux": "npm run ffmpeg:check -- --target linux:x64 --target linux:arm64",
"ffmpeg:check:linux:x64": "npm run ffmpeg:check -- --target linux:x64",
"ffmpeg:check:linux:arm64": "npm run ffmpeg:check -- --target linux:arm64",
"prerelease:prepare": "node build-scripts/release-warning.js",
"prebuild:base": "npm run compile && node build-scripts/check-bridge-config.js src/main/v5bridge/config.json dist/main/v5bridge/config.json && npm run licenses && npm run ytdlp:check",
"prebuild": "npm run prebuild:base && npm run ffmpeg:check:current",
"prebuild:win": "npm run prebuild:base && npm run ffmpeg:check:win",
"prebuild:win:x64": "npm run prebuild:base && npm run ffmpeg:check:win:x64",
"prebuild:win:arm64": "npm run prebuild:base && npm run ffmpeg:check:win:arm64",
"prebuild:mac:universal": "npm run prebuild:base && npm run ffmpeg:check:mac:universal",
"prebuild:linux": "npm run prebuild:base && npm run ffmpeg:check:linux",
"prebuild:linux:x64": "npm run prebuild:base && npm run ffmpeg:check:linux:x64",
"prebuild:linux:arm64": "npm run prebuild:base && npm run ffmpeg:check:linux:arm64",
"typecheck:main": "tsc --noEmit --project tsconfig.main.json",
"typecheck:renderer": "tsc --noEmit --project tsconfig.renderer.json",
"typecheck": "npm run typecheck:main && npm run typecheck:renderer",
"smoke:runtime": "node build-scripts/smoke-runtime.js",
"smoke:runtime:fast": "node build-scripts/smoke-runtime.js --skip-compile",
"watch": "node build-scripts/watch.js",
"test": "vitest run",
"test:release-assets": "vitest run src/tests/buildScripts.postRelease.test.ts",
"vi": "node build-scripts/vi.js",
"b": "git fetch origin && git reset --hard && git clean -fd && git switch -C beta origin/beta && git reset --hard origin/beta && git clean -fd && npm run vi",
"r": "git fetch origin && git reset --hard && git clean -fd && git switch -C main origin/main && git reset --hard origin/main && git clean -fd && npm run vi && npm run gitprune:force",
"u": "npm update && npm run release:prepare && npm run format && npm run test:all",
"test:watch": "vitest",
"test:all": "node build-scripts/test-all.js",
"test:headless": "npm run test:all && npm run test:cov && npm run smoke:runtime:fast",
"test:cov": "vitest run --coverage && node build-scripts/check-coverage-thresholds.js",
"lint": "eslint src/ build-scripts/ && npm run lint:comments",
"lint:comments": "node build-scripts/lint-comments.mjs src build-scripts",
"lint:fix": "eslint src/ build-scripts/ --fix",
"format": "prettier --write src/",
"format:check": "prettier --check src/",
"start": "npm run clean && npm run compile && electron .",
"dev": "npm run compile && cross-env NODE_ENV=development electron . --dev",
"build": "npm run prebuild && electron-builder -c electron-builder.base.yml",
"build:win": "npm run prebuild:win && dotenv -e .env -- cross-env ELECTRON_BUILDER_WINDOWS_BASE_CONFIG=electron-builder.base.yml electron-builder -c build-scripts/electron-builder.windows.cjs --win --arm64 --x64 && node build-scripts/check-nsis-payload.js",
"build:win:x64": "npm run prebuild:win:x64 && dotenv -e .env -- cross-env ELECTRON_BUILDER_WINDOWS_BASE_CONFIG=electron-builder.base.yml electron-builder -c build-scripts/electron-builder.windows.cjs --win --x64 && node build-scripts/check-nsis-payload.js",
"build:win:arm64": "npm run prebuild:win:arm64 && dotenv -e .env -- cross-env ELECTRON_BUILDER_WINDOWS_BASE_CONFIG=electron-builder.base.yml electron-builder -c build-scripts/electron-builder.windows.cjs --win --arm64 && node build-scripts/check-nsis-payload.js",
"build:win:all": "npm run build:win && npm run build:win:x64 && npm run build:win:arm64",
"setup:win:artifact-signing": "powershell.exe -NoProfile -ExecutionPolicy Bypass -File build-scripts/setup-windows-artifact-signing.ps1",
"build:mac:universal": "npm run prebuild:mac:universal && dotenv -e .env -- electron-builder -c electron-builder.base.yml --mac --universal",
"mac:ssh:keychain": "bash build-scripts/mac-keychain-ssh.sh",
"build:linux": "npm run prebuild:linux && electron-builder -c electron-builder.base.yml --linux AppImage deb rpm --x64 --arm64",
"build:linux:x64": "npm run prebuild:linux:x64 && node build-scripts/build-with-restore.js --prepare build-scripts/prepare-linux-x64.js -- npx --no-install electron-builder -c electron-builder.base.yml --linux AppImage deb rpm --x64",
"build:linux:arm64": "npm run prebuild:linux:arm64 && node build-scripts/build-with-restore.js --prepare build-scripts/prepare-linux-arm64.js -- npx --no-install electron-builder -c electron-builder.base.yml --linux AppImage deb rpm --arm64",
"build:linux:all": "npm run build:linux:x64 && npm run build:linux:arm64",
"build:linux:native": "npm run build:linux:native:x64 && npm run build:linux:native:arm64",
"build:linux:native:x64": "npm run prebuild:linux:x64 && node build-scripts/build-with-restore.js --prepare build-scripts/prepare-linux-x64.js --env USE_SYSTEM_FPM=true -- npx --no-install electron-builder -c electron-builder.base.yml --linux AppImage deb rpm --x64",
"build:linux:native:arm64": "npm run prebuild:linux:arm64 && node build-scripts/build-with-restore.js --prepare build-scripts/prepare-linux-arm64.js --env USE_SYSTEM_FPM=true -- npx --no-install electron-builder -c electron-builder.base.yml --linux AppImage deb rpm --arm64",
"build:linux:native:all": "npm run build:linux:native:x64 && npm run build:linux:native:arm64",
"build:github": "npm run prebuild:win && dotenv -e .env -- cross-env CHANNEL=github ELECTRON_BUILDER_WINDOWS_BASE_CONFIG=electron-builder.github.yml electron-builder -c build-scripts/electron-builder.windows.cjs --win --arm64 --x64 && node build-scripts/check-nsis-payload.js",
"build:github:win": "npm run prebuild:win && dotenv -e .env -- cross-env CHANNEL=github ELECTRON_BUILDER_WINDOWS_BASE_CONFIG=electron-builder.github.yml electron-builder -c build-scripts/electron-builder.windows.cjs --win --arm64 --x64 && node build-scripts/check-nsis-payload.js",
"build:github:mac": "npm run prebuild:mac:universal && dotenv -e .env -- cross-env CHANNEL=github electron-builder -c electron-builder.github.yml --mac --universal",
"build:msstore:x64": "npm run prebuild:win:x64 && node build-scripts/build-with-restore.js --prepare build-scripts/prepare-x64.js --env CHANNEL=msstore -- npx --no-install electron-builder --win --x64 -c electron-builder.msstore.yml",
"build:msstore:arm64": "npm run prebuild:win:arm64 && node build-scripts/build-with-restore.js --prepare build-scripts/prepare-arm64.js --env CHANNEL=msstore -- npx --no-install electron-builder --win --arm64 -c electron-builder.msstore.yml",
"build:msstore": "npm run build:msstore:x64 && npm run build:msstore:arm64",
"restore-binaries": "node build-scripts/restore-binaries.js",
"sign:gpg": "dotenv -e .env -- node build-scripts/gpg-sign.js",
"sign:gpg:x64": "dotenv -e .env -- node build-scripts/gpg-sign.js --arch x64",
"sign:gpg:arm64": "dotenv -e .env -- node build-scripts/gpg-sign.js --arch arm64",
"release:deps": "npm ci",
"release:prepare": "npm run release:deps && node build-scripts/dist-tools.js clean-release && node build-scripts/update-metainfo.js",
"release:draft": "dotenv -e .env -- node build-scripts/ensure-draft-release.js",
"release:wait-draft": "dotenv -e .env -- node build-scripts/ensure-draft-release.js --wait",
"release:mirror": "dotenv -e .env -- node build-scripts/finalize-release-assets.js",
"release:finalize": "npm run release:mirror",
"release:win": "npm run release:prepare && npm run release:draft && npm run prebuild:win && dotenv -e .env -- cross-env CHANNEL=github ELECTRON_BUILDER_WINDOWS_BASE_CONFIG=electron-builder.github.yml electron-builder -c build-scripts/electron-builder.windows.cjs --win --arm64 --x64 --publish never && node build-scripts/check-nsis-payload.js && npm run sign:gpg && npm run release:finalize",
"release:win:x64": "npm run release:prepare && npm run release:draft && npm run prebuild:win:x64 && dotenv -e .env -- cross-env CHANNEL=github ELECTRON_BUILDER_WINDOWS_BASE_CONFIG=electron-builder.github.yml electron-builder -c build-scripts/electron-builder.windows.cjs --win --x64 --publish never && node build-scripts/check-nsis-payload.js && npm run sign:gpg && npm run release:finalize",
"release:win:arm64": "npm run release:prepare && npm run release:draft && npm run prebuild:win:arm64 && dotenv -e .env -- cross-env CHANNEL=github ELECTRON_BUILDER_WINDOWS_BASE_CONFIG=electron-builder.github.yml electron-builder -c build-scripts/electron-builder.windows.cjs --win --arm64 --publish never && node build-scripts/check-nsis-payload.js && npm run sign:gpg && npm run release:finalize",
"release:mac": "npm run release:prepare && npm run release:wait-draft && npm run prebuild:mac:universal && dotenv -e .env -- cross-env CHANNEL=github electron-builder -c electron-builder.github.yml --mac --universal --publish never && npm run sign:gpg && npm run release:finalize",
"release:mac:ssh": "npm run mac:ssh:keychain && npm run release:mac",
"release:linux:chain": "npm run release:linux:x64 && npm run release:linux:arm64",
"release:linux:chain:f": "npm run release:linux:native:x64 && npm run release:linux:native:arm64",
"release:linux": "npm run release:prepare && npm run release:wait-draft && npm run prebuild:linux && dotenv -e .env -- cross-env CHANNEL=github electron-builder -c electron-builder.github.yml --linux AppImage deb rpm --x64 --arm64 --publish never && npm run sign:gpg && npm run release:finalize",
"release:linux:x64": "npm run release:prepare && npm run release:wait-draft && npm run prebuild:linux:x64 && dotenv -e .env -- node build-scripts/build-with-restore.js --prepare build-scripts/prepare-linux-x64.js --env CHANNEL=github -- npx --no-install electron-builder -c electron-builder.github.yml --linux AppImage deb rpm --x64 --publish never && npm run sign:gpg:x64 && npm run release:finalize",
"release:linux:arm64": "npm run release:prepare && npm run release:wait-draft && npm run prebuild:linux:arm64 && dotenv -e .env -- node build-scripts/build-with-restore.js --prepare build-scripts/prepare-linux-arm64.js --env CHANNEL=github -- npx --no-install electron-builder -c electron-builder.github.yml --linux AppImage deb rpm --arm64 --publish never && npm run sign:gpg:arm64 && npm run release:finalize",
"release:linux:native:x64": "npm run release:prepare && npm run release:wait-draft && npm run prebuild:linux:x64 && dotenv -e .env -- node build-scripts/build-with-restore.js --prepare build-scripts/prepare-linux-x64.js --env USE_SYSTEM_FPM=true --env CHANNEL=github -- npx --no-install electron-builder -c electron-builder.github.yml --linux AppImage deb rpm --x64 --publish never && npm run sign:gpg:x64 && npm run release:finalize",
"release:linux:native:arm64": "npm run release:prepare && npm run release:wait-draft && npm run prebuild:linux:arm64 && dotenv -e .env -- node build-scripts/build-with-restore.js --prepare build-scripts/prepare-linux-arm64.js --env USE_SYSTEM_FPM=true --env CHANNEL=github -- npx --no-install electron-builder -c electron-builder.github.yml --linux AppImage deb rpm --arm64 --publish never && npm run sign:gpg:arm64 && npm run release:finalize",
"release:all": "npm run release:draft && npm run release:mac && npm run release:win && npm run release:linux",
"flatpak:setup": "sudo env \"PATH=$PATH\" node build-scripts/setup-flatpak.js",
"flatpak:build": "node build-scripts/flatpak.js build",
"flatpak:build:x64": "node build-scripts/flatpak.js build --x64",
"flatpak:build:arm64": "node build-scripts/flatpak.js build --arm64",
"flatpak:run": "flatpak run com.burnttoasters.rosi",
"flatpak:bundle": "node build-scripts/flatpak.js bundle",
"flatpak:bundle:x64": "node build-scripts/flatpak.js bundle --x64",
"flatpak:bundle:arm64": "node build-scripts/flatpak.js bundle --arm64",
"flatpak:clean": "node build-scripts/flatpak.js clean",
"setup:deb": "sudo apt update && sudo apt install -y build-essential libgtk-3-dev libnotify-dev libnss3-dev libxss-dev libxtst-dev libatspi2.0-dev uuid-dev libsecret-1-dev libx11-dev rpm flatpak flatpak-builder && sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo"
},
"overrides": {
"tar": "^7.5.8"
},
"repository": {
"type": "git",
"url": "git+https://github.com/BurntToasters/rosi.git"
},
"author": "BurntToasters <code@rosie.run>",
"license": "MPL-2.0",
"bugs": {
"url": "https://github.com/BurntToasters/rosi/issues"
},
"homepage": "https://github.com/BurntToasters/rosi#readme",
"devDependencies": {
"@eslint/js": "^10.0.1",
"@types/node": "^25.3.0",
"@vitest/coverage-v8": "^4.0.18",
"cross-env": "^10.1.0",
"dotenv": "^17.4.2",
"dotenv-cli": "^11.0.0",
"electron": "^43.0.0",
"electron-builder": "^26.7.0",
"eslint": "^10.3.0",
"eslint-plugin-no-unsanitized": "^4.1.2",
"husky": "^9.1.7",
"js-yaml": "^4.3.1",
"jsdom": "^29.1.1",
"license-checker": "^25.0.1",
"lint-staged": "^17.0.2",
"prettier": "^3.8.1",
"typescript": "^6.0.2",
"typescript-eslint": "^8.59.2",
"vitest": "^4.0.16"
},
"dependencies": {
"@noble/hashes": "2.4.0",
"electron-log": "^5.3.4",
"electron-updater": "^6.3.9",
"sanitize-filename": "^1.6.3"
},
"lint-staged": {
"src/**/*.ts": [
"eslint --fix",
"prettier --write"
],
"build-scripts/**/*.js": [
"prettier --write"
],
".github/workflows/*.{yml,yaml}": [
"prettier --write"
],
"*.{json,md,yml,yaml}": [
"prettier --write"
]
}
}