Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| b1c702a033 | |||
| 6e9ef636b6 | |||
| 2cc6ac4667 |
@@ -0,0 +1,44 @@
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "*"
|
||||
branches:
|
||||
- "**"
|
||||
|
||||
jobs:
|
||||
build-and-release:
|
||||
name: Build App
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, windows-latest, macos-latest]
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Checkout assets
|
||||
run: git -c submodule."assets".update=checkout submodule update --init assets
|
||||
|
||||
- name: Install pnpm
|
||||
uses: pnpm/action-setup@v4
|
||||
with:
|
||||
run_install: false
|
||||
|
||||
- name: Install Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 22
|
||||
cache: "pnpm"
|
||||
|
||||
- name: Install dependencies
|
||||
run: pnpm install
|
||||
|
||||
- name: Build or Publish
|
||||
run: |
|
||||
if [[ "${{ startsWith(github.ref, 'refs/tags/') }}" == "true" ]]; then
|
||||
pnpm run publish
|
||||
else
|
||||
pnpm run make
|
||||
fi
|
||||
shell: bash
|
||||
Vendored
-1
@@ -1,7 +1,6 @@
|
||||
{
|
||||
"editor.formatOnSave": true,
|
||||
"files.exclude": {
|
||||
"**/.vite": true,
|
||||
"**/node_modules": true,
|
||||
"**/tsconfig.json": false
|
||||
},
|
||||
|
||||
+1
-1
Submodule assets updated: f60a38e137...628eb2f825
+11
-11
@@ -9,7 +9,8 @@ import { VitePlugin } from "@electron-forge/plugin-vite";
|
||||
import { PublisherGithub } from "@electron-forge/publisher-github";
|
||||
import type { ForgeConfig } from "@electron-forge/shared-types";
|
||||
import { FuseV1Options, FuseVersion } from "@electron/fuses";
|
||||
import { globSync } from "node:fs";
|
||||
|
||||
// import { globSync } from "node:fs";
|
||||
|
||||
const STRINGS = {
|
||||
author: "Revolt Platforms LTD",
|
||||
@@ -26,10 +27,10 @@ const config: ForgeConfig = {
|
||||
name: STRINGS.name,
|
||||
executableName: STRINGS.execName,
|
||||
icon: `${ASSET_DIR}/icon`,
|
||||
extraResource: [
|
||||
// include all the asset files
|
||||
...globSync(ASSET_DIR + "/**/*"),
|
||||
],
|
||||
// extraResource: [
|
||||
// // include all the asset files
|
||||
// ...globSync(ASSET_DIR + "/**/*"),
|
||||
// ],
|
||||
},
|
||||
rebuildConfig: {},
|
||||
makers: [
|
||||
@@ -42,8 +43,12 @@ const config: ForgeConfig = {
|
||||
authors: STRINGS.author,
|
||||
// todo: hoist this
|
||||
iconUrl: `https://stoat.chat/app/assets/icon-DUSNE-Pb.ico`,
|
||||
// todo: loadingGif
|
||||
setupIcon: `${ASSET_DIR}/icon.ico`,
|
||||
description: STRINGS.description,
|
||||
exe: `${STRINGS.execName}.exe`,
|
||||
setupExe: `${STRINGS.execName}-setup.exe`,
|
||||
copyright: "Copyright (C) 2025 Revolt Platforms LTD",
|
||||
}),
|
||||
new MakerZIP({}),
|
||||
new MakerFlatpak({
|
||||
@@ -130,12 +135,7 @@ const config: ForgeConfig = {
|
||||
target: "preload",
|
||||
},
|
||||
],
|
||||
renderer: [
|
||||
{
|
||||
name: "main_window",
|
||||
config: "vite.renderer.config.ts",
|
||||
},
|
||||
],
|
||||
renderer: [],
|
||||
}),
|
||||
// Fuses are used to enable/disable various Electron functionality
|
||||
// at package time, before code signing the application
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
import dbus from "@homebridge/dbus-native";
|
||||
import { resolve } from "node:path";
|
||||
|
||||
import { NativeImage, app, nativeImage } from "electron";
|
||||
|
||||
@@ -19,8 +18,10 @@ export async function setBadgeCount(count: number) {
|
||||
}
|
||||
|
||||
if (!nativeIcons[count])
|
||||
nativeIcons[count] = nativeImage.createFromPath(
|
||||
resolve(process.resourcesPath, `${Math.min(count, 10)}.ico`),
|
||||
nativeIcons[count] = nativeImage.createFromDataURL(
|
||||
await import(
|
||||
`../../assets/desktop/badges/${Math.min(count, 10)}.ico?asset`
|
||||
),
|
||||
);
|
||||
|
||||
mainWindow.setOverlayIcon(
|
||||
|
||||
+2
-5
@@ -1,7 +1,6 @@
|
||||
import { resolve } from "node:path";
|
||||
|
||||
import { Menu, Tray, nativeImage } from "electron";
|
||||
|
||||
import trayIconAsset from "../../assets/desktop/icon.png?asset";
|
||||
import { version } from "../../package.json";
|
||||
|
||||
import { mainWindow, quitApp } from "./window";
|
||||
@@ -10,9 +9,7 @@ import { mainWindow, quitApp } from "./window";
|
||||
let tray: Tray = null;
|
||||
|
||||
// load the tray icon
|
||||
const trayIcon = nativeImage.createFromPath(
|
||||
resolve(process.resourcesPath, "icon.png"),
|
||||
);
|
||||
const trayIcon = nativeImage.createFromDataURL(trayIconAsset);
|
||||
|
||||
// trayIcon.setTemplateImage(true);
|
||||
|
||||
|
||||
+7
-10
@@ -1,4 +1,4 @@
|
||||
import { join, resolve } from "node:path";
|
||||
import { join } from "node:path";
|
||||
|
||||
import {
|
||||
BrowserWindow,
|
||||
@@ -9,7 +9,8 @@ import {
|
||||
nativeImage,
|
||||
} from "electron";
|
||||
|
||||
import { setBadgeCount } from "./badges";
|
||||
import windowIconAsset from "../../assets/desktop/icon.png?asset";
|
||||
|
||||
import { config } from "./config";
|
||||
import { updateTrayMenu } from "./tray";
|
||||
|
||||
@@ -27,11 +28,7 @@ export const BUILD_URL = new URL(
|
||||
let shouldQuit = false;
|
||||
|
||||
// load the window icon
|
||||
const windowIcon = nativeImage.createFromPath(
|
||||
resolve(process.resourcesPath, "icon.png"),
|
||||
);
|
||||
|
||||
console.info(resolve(process.resourcesPath, "icon.png"));
|
||||
const windowIcon = nativeImage.createFromDataURL(windowIconAsset);
|
||||
|
||||
// windowIcon.setTemplateImage(true);
|
||||
|
||||
@@ -43,7 +40,7 @@ export function createMainWindow() {
|
||||
mainWindow = new BrowserWindow({
|
||||
minWidth: 300,
|
||||
minHeight: 300,
|
||||
width: 800,
|
||||
width: 1100,
|
||||
height: 600,
|
||||
backgroundColor: "#191919",
|
||||
frame: !config.customFrame,
|
||||
@@ -156,8 +153,8 @@ export function createMainWindow() {
|
||||
|
||||
// mainWindow.webContents.openDevTools();
|
||||
|
||||
let i = 0;
|
||||
setInterval(() => setBadgeCount((++i % 30) + 1), 1000);
|
||||
// let i = 0;
|
||||
// setInterval(() => setBadgeCount((++i % 30) + 1), 1000);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+2
-1
@@ -10,6 +10,7 @@
|
||||
"baseUrl": ".",
|
||||
"outDir": "dist",
|
||||
"moduleResolution": "node",
|
||||
"resolveJsonModule": true
|
||||
"resolveJsonModule": true,
|
||||
"types": ["electron-vite/node"]
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user