-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
24 changed files
with
180 additions
and
64 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,68 +1,157 @@ | ||
name: "publish" | ||
|
||
name: Publish Release | ||
on: | ||
push: | ||
branches: | ||
- main | ||
tags: | ||
- "v*" | ||
branches: "*" | ||
workflow_dispatch: | ||
|
||
# This is the example from the readme. | ||
# On each push to the `release` branch it will create or update a GitHub release, build your app, and upload the artifacts to the release. | ||
env: | ||
APP_NAME: "Dester Desktop App" | ||
|
||
jobs: | ||
publish-tauri: | ||
permissions: | ||
contents: write | ||
changelog: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v4 | ||
|
||
- name: Build changelog | ||
id: build_changelog | ||
run: | | ||
# NOTE: if commits subjects are standardized, you can filter the git log based on feat: and fix: | ||
# and then replace "feat:" with "New: " and "fix:" with "Fixed " | ||
# when AI gets good, we can also summarized commits into a bullet point list | ||
PREV_TAG=$(git tag --list v* | tail -n2 | head -n1) | ||
echo "changelog=$(git log $PREV_TAG...${{ github.ref_name }} --pretty=format:"- %s")" >> $GITHUB_OUTPUT | ||
outputs: | ||
changelog: ${{ steps.build_changelog.outputs.changelog }} | ||
build-arm: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v4 | ||
- name: Setup ARM build environment | ||
run: | | ||
rustup target add aarch64-unknown-linux-gnu | ||
sudo apt install gcc-aarch64-linux-gnu | ||
sudo dpkg --add-architecture arm64 | ||
. /etc/os-release | ||
echo "using Ubuntu with codename $VERSION_CODENAME" | ||
echo "deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports $VERSION_CODENAME main restricted" | sudo tee -a /etc/apt/sources.list | ||
echo "deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports $VERSION_CODENAME-updates main restricted" | sudo tee -a /etc/apt/sources.list | ||
echo "deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports $VERSION_CODENAME universe" | sudo tee -a /etc/apt/sources.list | ||
echo "deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports $VERSION_CODENAME-updates universe" | sudo tee -a /etc/apt/sources.list | ||
echo "deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports $VERSION_CODENAME multiverse" | sudo tee -a /etc/apt/sources.list | ||
echo "deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports $VERSION_CODENAME-updates multiverse" | sudo tee -a /etc/apt/sources.list | ||
echo "deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports $VERSION_CODENAME-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | ||
echo "deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports $VERSION_CODENAME-security main restricted" | sudo tee -a /etc/apt/sources.list | ||
echo "deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports $VERSION_CODENAME-security universe" | sudo tee -a /etc/apt/sources.list | ||
echo "deb [arch=armhf,arm64] http://ports.ubuntu.com/ubuntu-ports $VERSION_CODENAME-security multiverse" | sudo tee -a /etc/apt/sources.list | ||
sudo apt update | ||
sudo apt upgrade -y | ||
sudo apt install libwebkit2gtk-4.0-dev:arm64 -y | ||
sudo apt install libssl-dev:arm64 -y | ||
export PKG_CONFIG_SYSROOT_DIR=/usr/aarch64-linux-gnu/ | ||
pnpm install | ||
pnpm rls --target aarch64-unknown-linux-gnu | ||
- name: Upload deb bundle | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: ARM Debian File | ||
path: src-tauri/target/release/bundle/deb/*arm64.deb | ||
release: | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
include: | ||
- platform: "macos-latest" # for Arm based macs (M1 and above). | ||
args: "--target aarch64-apple-darwin" | ||
- platform: "macos-latest" # for Intel based macs. | ||
args: "--target x86_64-apple-darwin" | ||
- platform: "ubuntu-22.04" # for Tauri v1 you could replace this with ubuntu-20.04. | ||
args: "" | ||
- platform: "windows-latest" | ||
args: "" | ||
|
||
platform: [macos-latest, ubuntu-latest, windows-latest] | ||
runs-on: ${{ matrix.platform }} | ||
needs: [changelog] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Checkout repository | ||
uses: actions/checkout@v4 | ||
|
||
- name: Setup pnpm | ||
uses: pnpm/action-setup@v3 | ||
# build the changelog based on the commit messages between the versioned tags | ||
- name: Install pnpm | ||
uses: pnpm/action-setup@v4 | ||
with: | ||
version: 8 | ||
version: 9 | ||
|
||
- name: setup node | ||
- name: Setup Node.js | ||
uses: actions/setup-node@v4 | ||
# NOTE: enterprise developers may hard code a version | ||
with: | ||
node-version: lts/* | ||
node-version: "lts/*" | ||
cache: pnpm | ||
# node-version-file: '.nvmrc' | ||
|
||
- name: Setup Rust | ||
run: | | ||
rustup update --no-self-update | ||
- name: install Rust stable | ||
uses: dtolnay/rust-toolchain@stable | ||
- name: Rust cache | ||
uses: swatinem/rust-cache@v2 | ||
with: | ||
# Those targets are only used on macos runners so it's in an `if` to slightly speed up windows and linux builds. | ||
targets: ${{ matrix.platform == 'macos-latest' && 'aarch64-apple-darwin,x86_64-apple-darwin' || '' }} | ||
workspaces: "./src-tauri -> target" | ||
|
||
- name: install dependencies (ubuntu only) | ||
if: matrix.platform == 'ubuntu-22.04' # This must match the platform value defined above. | ||
- name: Install Ubuntu dependencies | ||
if: matrix.platform == 'ubuntu-latest' | ||
run: | | ||
sudo apt-get update | ||
sudo apt-get install -y libwebkit2gtk-4.0-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf | ||
# webkitgtk 4.0 is for Tauri v1 - webkitgtk 4.1 is for Tauri v2. | ||
# You can remove the one that doesn't apply to your app to speed up the workflow a bit. | ||
sudo apt update | ||
xargs sudo apt install -y < environment/apt_packages.txt | ||
- name: install frontend dependencies | ||
run: pnpm install # change this to npm, pnpm or bun depending on which one you use. | ||
- name: Install frontend | ||
run: | | ||
pnpm install | ||
- name: CI Build | ||
if: ${{ github.ref_type == 'branch' }} | ||
run: | | ||
pnpm rls | ||
- name: CI Upload Windows | ||
if: ${{ github.ref_type == 'branch' && matrix.platform == 'windows-latest' }} | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: "Windows Installers" | ||
path: | | ||
src-tauri/release/bundle/msi/*.msi | ||
src-tauri/release/bundle/nsis/*.exe | ||
- name: CI Upload macOS | ||
if: ${{ github.ref_type == 'branch' && matrix.platform == 'macos-latest' }} | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: "macOS Installer" | ||
path: | | ||
src-tauri/release/bundle/dmg/*.dmg | ||
- name: CI Upload Linux | ||
if: ${{ github.ref_type == 'branch' && matrix.platform == 'ubuntu-latest' }} | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: "Linux Distributions" | ||
path: | | ||
src-tauri/target/release/bundle/deb/*.deb | ||
src-tauri/target/release/bundle/AppImage/*.AppImage | ||
- uses: tauri-apps/tauri-action@v0 | ||
# TODO: https://tauri.app/v1/guides/building/linux#cross-compiling-tauri-applications-for-arm-based-devices | ||
- name: Build Tauri app | ||
uses: tauri-apps/tauri-action@v0 | ||
if: ${{ github.ref_type == 'tag' }} | ||
# if u get Error: Resource not accessible by integration | ||
# go to repository Settings => Action => General => Workflow permissions => Switch to Read and Write permisions | ||
env: | ||
CI: true | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} | ||
TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }} | ||
with: | ||
tagName: app-v__VERSION__ # the action automatically replaces \_\_VERSION\_\_ with the app version. | ||
releaseName: "App v__VERSION__" | ||
releaseBody: "See the assets to download this version and install." | ||
# tauri-action replaces \_\_VERSION\_\_ with the app version | ||
tagName: ${{ github.ref_name }} | ||
releaseName: "${{ env.APP_NAME }} v__VERSION__" | ||
releaseBody: | | ||
${{needs.changelog.outputs.changelog}} | ||
See the assets to download this version and install. | ||
releaseDraft: true | ||
prerelease: false | ||
args: ${{ matrix.args }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
import type { Metadata } from "next"; | ||
import "../globals.css"; | ||
import Navbar from "@/lib/components/Navbar"; | ||
import Sidebar from "@/lib/components/Sidebar"; | ||
import Background from "@/lib/components/Background"; | ||
|
||
export const metadata: Metadata = { | ||
title: "Dester Desktop App", | ||
description: "An intuvitive way to see all your content library at one place", | ||
}; | ||
|
||
export default function AppLayout({ | ||
children, | ||
}: Readonly<{ | ||
children: React.ReactNode; | ||
}>) { | ||
return ( | ||
<div className="h-full w-full relative"> | ||
<Background /> | ||
<div className="flex h-full z-10 relative"> | ||
<Sidebar /> | ||
<div className="w-[calc(100%-68px)] h-screen"> | ||
<Navbar /> | ||
<div className="w-full h-[calc(100%-68px)] overflow-y-scroll rounded-lg pr-4"> | ||
{children} | ||
</div> | ||
</div> | ||
</div> | ||
</div> | ||
); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
import React from "react"; | ||
|
||
const Loading = () => { | ||
return <div>Loading</div>; | ||
}; | ||
|
||
export default Loading; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters