Skip to content

Commit

Permalink
Merge branch 'main' into feat/zoom
Browse files Browse the repository at this point in the history
  • Loading branch information
Hacksore committed Aug 31, 2024
2 parents cd27dfa + aa5fd40 commit 139bae2
Show file tree
Hide file tree
Showing 112 changed files with 30,899 additions and 2,214 deletions.
60 changes: 55 additions & 5 deletions .github/workflows/canary.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ jobs:
toolchain: x86_64-pc-windows-msvc
bundles: nsis
os: windows
- host: ubuntu-latest
- host: ubuntu-22.04
target: x86_64-unknown-linux-gnu
toolchain: x86_64-unknown-linux-gnu
bundles: deb,appimage
Expand Down Expand Up @@ -98,10 +98,20 @@ jobs:
with:
workspaces: "apps/desktop/src-tauri/target"
- name: Install dependencies (ubuntu only)
if: matrix.settings.host == 'ubuntu-latest'
if: matrix.settings.host == 'ubuntu-22.04'
run: |
# https://tauri.app/v1/guides/building/linux/#limitations
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libappindicator3-dev librsvg2-dev patchelf
sudo apt install \
build-essential \
curl \
wget \
file \
libssl-dev \
libgtk-3-dev \
libayatana-appindicator3-dev \
libwebkit2gtk-4.1-dev \
librsvg2-dev
- name: Install dependencies
run: pnpm install
- name: Patch canary version
Expand All @@ -118,11 +128,51 @@ jobs:
args: --config "src-tauri/tauri.conf.canary.json" --target ${{ matrix.settings.target }} --bundles ${{ matrix.settings.bundles }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAURI_PRIVATE_KEY: "${{ secrets.TAURI_PRIVATE_KEY }}"
TAURI_PUBLIC_KEY: "${{ secrets.TAURI_PUBLIC_KEY }}"
TAURI_SIGNING_PRIVATE_KEY: "${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}"
TAURI_SIGNING_PUBLIC_KEY: "${{ secrets.TAURI_SIGNING_PUBLIC_KEY }}"
VITE_AXIOM_TOKEN: "${{ secrets.VITE_AXIOM_TOKEN }}"
- name: Upload canary ${{ matrix.setting.os }}
uses: actions/upload-artifact@v4
with:
name: "overlayed-canary-${{ matrix.settings.os }}"
path: "${{ join(fromJSON(steps.build_os.outputs.artifactPaths), '\n') }}"

upload-to-r2:
needs: build-tauri
runs-on: "ubuntu-latest"
steps:
- uses: actions/checkout@v4
with:
ref: ${{ inputs.branch }}
- name: Setup node
uses: actions/setup-node@v4
with:
node-version: 20
- uses: pnpm/action-setup@v3
with:
version: 9
- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
- uses: actions/cache@v4
name: Setup pnpm cache
with:
path: ${{ env.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- name: Install
run: pnpm install --filter=overlayed-root
- name: Upload Canary Binary to R2
uses: actions/github-script@v7
with:
script: |
const path = require("path");
const { script } = await import("file://" + path.resolve('./scripts/actions/upload-to-r2.js'));
await script({ github, context }, "canary" );
env:
R2_BUCKET: ${{ secrets.R2_BUCKET }}
R2_ACCOUNT_ID: ${{ secrets.R2_ACCOUNT_ID }}
R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }}
R2_SECRET_ACCESS_KEY: ${{ secrets.R2_SECRET_ACCESS_KEY }}
2 changes: 1 addition & 1 deletion .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ jobs:
if: matrix.settings.host == 'ubuntu-latest' && steps.changes.outputs.desktop == 'true'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libappindicator3-dev librsvg2-dev patchelf
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
- name: install frontend dependencies
if: steps.changes.outputs.desktop == 'true'
run: pnpm install
Expand Down
30 changes: 30 additions & 0 deletions .github/workflows/new-release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: "New Release"

on:
workflow_dispatch:
release:
types:
- published

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
upload-to-r2:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- name: Install
run: pnpm install --filter=overlayed-root
- name: Download draft binaries
uses: actions/github-script@v7
with:
script: |
const { script } = await import('${{ github.workspace }}/scripts/actions/upload-to-r2.js')
await script({ github, context }, "stable");
env:
# NOTE: we need this to download the bins
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
8 changes: 5 additions & 3 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ jobs:
return await script({ github, context });
build-tauri:
name: Build (${{ matrix.settings.os }})
needs: create-release
permissions:
contents: write
Expand Down Expand Up @@ -74,7 +75,7 @@ jobs:
if: matrix.settings.host == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libappindicator3-dev librsvg2-dev patchelf
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
- uses: pnpm/action-setup@v3
with:
version: 9
Expand All @@ -88,10 +89,11 @@ jobs:
APPLE_SIGNING_IDENTITY: "${{ secrets.APPLE_SIGNING_IDENTITY }}"
APPLE_CERTIFICATE: "${{ secrets.APPLE_CERTIFICATE }}"
APPLE_CERTIFICATE_PASSWORD: "${{ secrets.APPLE_CERTIFICATE_PASSWORD }}"
TAURI_PRIVATE_KEY: "${{ secrets.TAURI_PRIVATE_KEY }}"
TAURI_PUBLIC_KEY: "${{ secrets.TAURI_PUBLIC_KEY }}"
TAURI_SIGNING_PRIVATE_KEY: "${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}"
TAURI_SIGNING_PUBLIC_KEY: "${{ secrets.TAURI_SIGNING_PUBLIC_KEY }}"
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
VITE_AXIOM_TOKEN: "${{ secrets.VITE_AXIOM_TOKEN }}"
VITE_SENTRY_AUTH_TOKEN: "${{ secrets.VITE_SENTRY_AUTH_TOKEN }}"
with:
projectPath: "${{ env.APP_DIR }}"
releaseId: ${{ needs.create-release.outputs.release_id }}
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -44,3 +44,4 @@ binaries/
apps/desktop/src-tauri/*.txt

tsconfig.tsbuildinfo
assets
4 changes: 2 additions & 2 deletions .thing/hooks/github-canary-success.config.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"url": "http://localhost:8787/upload-canary-artifacts"
}
"url": "http://localhost:8787/webhook"
}
3 changes: 3 additions & 0 deletions .thing/hooks/github-stable-success.config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"url": "http://localhost:8787/webhook"
}
166 changes: 166 additions & 0 deletions .thing/hooks/github-stable-success.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
{
"action": "created",
"release": {
"url": "https://api.github.com/repos/overlayeddev/overlayed/releases/170366789",
"assets_url": "https://api.github.com/repos/overlayeddev/overlayed/releases/170366789/assets",
"upload_url": "https://uploads.github.com/repos/overlayeddev/overlayed/releases/170366789/assets{?name,label}",
"html_url": "https://github.com/overlayeddev/overlayed/releases/tag/v0.0.1",
"id": 170366789,
"author": {
"login": "Hacksore",
"id": 996134,
"node_id": "MDQ6VXNlcjk5NjEzNA==",
"avatar_url": "https://avatars.githubusercontent.com/u/996134?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/Hacksore",
"html_url": "https://github.com/Hacksore",
"followers_url": "https://api.github.com/users/Hacksore/followers",
"following_url": "https://api.github.com/users/Hacksore/following{/other_user}",
"gists_url": "https://api.github.com/users/Hacksore/gists{/gist_id}",
"starred_url": "https://api.github.com/users/Hacksore/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/Hacksore/subscriptions",
"organizations_url": "https://api.github.com/users/Hacksore/orgs",
"repos_url": "https://api.github.com/users/Hacksore/repos",
"events_url": "https://api.github.com/users/Hacksore/events{/privacy}",
"received_events_url": "https://api.github.com/users/Hacksore/received_events",
"type": "User",
"site_admin": false
},
"node_id": "RE_kwDOHDgTzs4KJ5dF",
"tag_name": "v0.0.1",
"target_commitish": "main",
"name": "v0.0.1",
"draft": false,
"prerelease": false,
"created_at": "2024-02-24T02:35:11Z",
"published_at": "2024-08-15T13:50:44Z",
"assets": [

],
"tarball_url": "https://api.github.com/repos/overlayeddev/overlayed/tarball/v0.0.1",
"zipball_url": "https://api.github.com/repos/overlayeddev/overlayed/zipball/v0.0.1",
"body": "test2"
},
"repository": {
"id": 473437134,
"node_id": "R_kgDOHDgTzg",
"name": "test",
"full_name": "overlayeddev/overlayed",
"private": false,
"owner": {
"login": "Hacksore",
"id": 996134,
"node_id": "MDQ6VXNlcjk5NjEzNA==",
"avatar_url": "https://avatars.githubusercontent.com/u/996134?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/Hacksore",
"html_url": "https://github.com/Hacksore",
"followers_url": "https://api.github.com/users/Hacksore/followers",
"following_url": "https://api.github.com/users/Hacksore/following{/other_user}",
"gists_url": "https://api.github.com/users/Hacksore/gists{/gist_id}",
"starred_url": "https://api.github.com/users/Hacksore/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/Hacksore/subscriptions",
"organizations_url": "https://api.github.com/users/Hacksore/orgs",
"repos_url": "https://api.github.com/users/Hacksore/repos",
"events_url": "https://api.github.com/users/Hacksore/events{/privacy}",
"received_events_url": "https://api.github.com/users/Hacksore/received_events",
"type": "User",
"site_admin": false
},
"html_url": "https://github.com/overlayeddev/overlayed",
"description": null,
"fork": false,
"url": "https://api.github.com/repos/overlayeddev/overlayed",
"forks_url": "https://api.github.com/repos/overlayeddev/overlayed/forks",
"keys_url": "https://api.github.com/repos/overlayeddev/overlayed/keys{/key_id}",
"collaborators_url": "https://api.github.com/repos/overlayeddev/overlayed/collaborators{/collaborator}",
"teams_url": "https://api.github.com/repos/overlayeddev/overlayed/teams",
"hooks_url": "https://api.github.com/repos/overlayeddev/overlayed/hooks",
"issue_events_url": "https://api.github.com/repos/overlayeddev/overlayed/issues/events{/number}",
"events_url": "https://api.github.com/repos/overlayeddev/overlayed/events",
"assignees_url": "https://api.github.com/repos/overlayeddev/overlayed/assignees{/user}",
"branches_url": "https://api.github.com/repos/overlayeddev/overlayed/branches{/branch}",
"tags_url": "https://api.github.com/repos/overlayeddev/overlayed/tags",
"blobs_url": "https://api.github.com/repos/overlayeddev/overlayed/git/blobs{/sha}",
"git_tags_url": "https://api.github.com/repos/overlayeddev/overlayed/git/tags{/sha}",
"git_refs_url": "https://api.github.com/repos/overlayeddev/overlayed/git/refs{/sha}",
"trees_url": "https://api.github.com/repos/overlayeddev/overlayed/git/trees{/sha}",
"statuses_url": "https://api.github.com/repos/overlayeddev/overlayed/statuses/{sha}",
"languages_url": "https://api.github.com/repos/overlayeddev/overlayed/languages",
"stargazers_url": "https://api.github.com/repos/overlayeddev/overlayed/stargazers",
"contributors_url": "https://api.github.com/repos/overlayeddev/overlayed/contributors",
"subscribers_url": "https://api.github.com/repos/overlayeddev/overlayed/subscribers",
"subscription_url": "https://api.github.com/repos/overlayeddev/overlayed/subscription",
"commits_url": "https://api.github.com/repos/overlayeddev/overlayed/commits{/sha}",
"git_commits_url": "https://api.github.com/repos/overlayeddev/overlayed/git/commits{/sha}",
"comments_url": "https://api.github.com/repos/overlayeddev/overlayed/comments{/number}",
"issue_comment_url": "https://api.github.com/repos/overlayeddev/overlayed/issues/comments{/number}",
"contents_url": "https://api.github.com/repos/overlayeddev/overlayed/contents/{+path}",
"compare_url": "https://api.github.com/repos/overlayeddev/overlayed/compare/{base}...{head}",
"merges_url": "https://api.github.com/repos/overlayeddev/overlayed/merges",
"archive_url": "https://api.github.com/repos/overlayeddev/overlayed/{archive_format}{/ref}",
"downloads_url": "https://api.github.com/repos/overlayeddev/overlayed/downloads",
"issues_url": "https://api.github.com/repos/overlayeddev/overlayed/issues{/number}",
"pulls_url": "https://api.github.com/repos/overlayeddev/overlayed/pulls{/number}",
"milestones_url": "https://api.github.com/repos/overlayeddev/overlayed/milestones{/number}",
"notifications_url": "https://api.github.com/repos/overlayeddev/overlayed/notifications{?since,all,participating}",
"labels_url": "https://api.github.com/repos/overlayeddev/overlayed/labels{/name}",
"releases_url": "https://api.github.com/repos/overlayeddev/overlayed/releases{/id}",
"deployments_url": "https://api.github.com/repos/overlayeddev/overlayed/deployments",
"created_at": "2022-03-24T03:00:14Z",
"updated_at": "2022-03-24T03:00:14Z",
"pushed_at": "2024-08-15T13:50:44Z",
"git_url": "git://github.com/overlayeddev/overlayed.git",
"ssh_url": "[email protected]:overlayeddev/overlayed.git",
"clone_url": "https://github.com/overlayeddev/overlayed.git",
"svn_url": "https://github.com/overlayeddev/overlayed",
"homepage": null,
"size": 62,
"stargazers_count": 0,
"watchers_count": 0,
"language": null,
"has_issues": true,
"has_projects": true,
"has_downloads": true,
"has_wiki": true,
"has_pages": false,
"has_discussions": false,
"forks_count": 5,
"mirror_url": null,
"archived": false,
"disabled": false,
"open_issues_count": 0,
"license": null,
"allow_forking": true,
"is_template": false,
"web_commit_signoff_required": false,
"topics": [

],
"visibility": "public",
"forks": 5,
"open_issues": 0,
"watchers": 0,
"default_branch": "main"
},
"sender": {
"login": "Hacksore",
"id": 996134,
"node_id": "MDQ6VXNlcjk5NjEzNA==",
"avatar_url": "https://avatars.githubusercontent.com/u/996134?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/Hacksore",
"html_url": "https://github.com/Hacksore",
"followers_url": "https://api.github.com/users/Hacksore/followers",
"following_url": "https://api.github.com/users/Hacksore/following{/other_user}",
"gists_url": "https://api.github.com/users/Hacksore/gists{/gist_id}",
"starred_url": "https://api.github.com/users/Hacksore/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/Hacksore/subscriptions",
"organizations_url": "https://api.github.com/users/Hacksore/orgs",
"repos_url": "https://api.github.com/users/Hacksore/repos",
"events_url": "https://api.github.com/users/Hacksore/events{/privacy}",
"received_events_url": "https://api.github.com/users/Hacksore/received_events",
"type": "User",
"site_admin": false
}
}
15 changes: 15 additions & 0 deletions LOCAL.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,21 @@ From the root of the monorepo run
pnpm start --filter=desktop
```

### Running the Web & API
Since the API uses github API you'll need to create a `apps/web/.dev.vars` that has a `GITHUB_TOKEN` (github personal access toke).

Then you'd run something like this to start both `api` and `web`.
```
pnpm start --filter=web --filter=api
```

If you want to use a mocked response you can run this command in the `apps/web` directory.

```
pnpm start:mocked
```

### 4. Building the latest version locally
```
pnpm build:desktop
Expand Down
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,12 @@ winget install OverlayedDev.Overlayed
brew install overlayed
```

#### Linux - Flathub

```
flatpak install flathub dev.overlayed.Overlayed
```

#### Guides for all Platforms

https://overlayed.dev/blog/installation-guide
Expand Down
Loading

0 comments on commit 139bae2

Please sign in to comment.