Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
7402bf8
C++ Template
nlogozzo Jan 9, 2025
b03b628
Update README.md
nlogozzo Jan 9, 2025
b20e54e
All - Add `cava` Dependency
nlogozzo Jan 10, 2025
62c91d8
Flatpak - Fix `iniparser` Building
nlogozzo Jan 10, 2025
3b43a82
Shared - Model Some Options
nlogozzo Jan 10, 2025
d1335b9
Flatpak - `cava` Patch
nlogozzo Jan 10, 2025
d76a144
Flatpak - `cava` patch
nlogozzo Jan 12, 2025
f50b4d3
Update org.nickvision.cavalier.gnome.json
nlogozzo Jan 12, 2025
825fe13
Update cava-iniparser.patch
nlogozzo Jan 12, 2025
4b6b523
Shared - Add `ColorProfile` Model
nlogozzo Jan 14, 2025
ae6371d
Shared - Add `BackgroundImage` Model
nlogozzo Jan 14, 2025
810f0d9
Shared - Add `Cava` Model
nlogozzo Jan 15, 2025
dacfba7
Shared - Cleanup Controller Code from Template
nlogozzo Jan 15, 2025
8037f39
All - Cleanup UI from Template
nlogozzo Jan 15, 2025
6587f37
feat: Fix Windows Update
nlogozzo Jan 17, 2025
be7b8f5
Shared - Fix Cava Crash
nlogozzo Jan 19, 2025
fe12179
Shared - Add New Options to `PreferencesViewController`
nlogozzo Jan 19, 2025
5e75b9a
feat: Add some options to GNOME preferences
nlogozzo Jan 19, 2025
da3e774
feat: Add some options to GNOME preferences
nlogozzo Jan 19, 2025
ecca5e0
fix: Flathub GitHub Action
nlogozzo Jan 31, 2025
5d51767
feat: More GNOME options
nlogozzo Jan 31, 2025
3842327
feat: Start `Renderer`
nlogozzo Jan 31, 2025
c6fd8ef
fix: Flatpak Qt GitHub Action
nlogozzo Jan 31, 2025
801a01d
feat: Hello February
nlogozzo Feb 2, 2025
2365c54
feat: Add more rendering code
nlogozzo Feb 3, 2025
20e72e4
feat: New Qt Interface
nlogozzo Feb 3, 2025
b2867c3
feat: More `Renderer` Code
nlogozzo Feb 4, 2025
aa60ffe
feat: Render Wave Box
nlogozzo Feb 4, 2025
45d58e8
feat: Add `Canvas` model
nlogozzo Feb 4, 2025
40736c5
feat: Build skia on flatpak
nlogozzo Feb 6, 2025
45f3dcb
fix: Missing `gn` flatpak dependency
nlogozzo Feb 6, 2025
333499e
Update org.nickvision.cavalier.qt.json
nlogozzo Feb 6, 2025
66d627b
feat: Build aarch64 flatpak too
nlogozzo Feb 6, 2025
1cfe6e1
fix: Flatpak `gn` build
nlogozzo Feb 6, 2025
1b9a602
fix: Use `gcc` for flatpak `gn` build
nlogozzo Feb 6, 2025
23dc64e
fix: Use `clang` for flatpak `gn` build
nlogozzo Feb 6, 2025
6228383
fix: Flatpak `skia` build
nlogozzo Feb 6, 2025
7ec9d18
fix: Flatpak `skia` build
nlogozzo Feb 6, 2025
c63a0c6
fix: Flatpak `skia` build
nlogozzo Feb 6, 2025
5004b68
Update org.nickvision.cavalier.gnome.json
nlogozzo Feb 6, 2025
c7fd730
fix: Drawing crash
nlogozzo Feb 7, 2025
3c408fb
feat: Use `PNG` image rendering
nlogozzo Feb 8, 2025
8ea69ea
fix: Better cava data reading
nlogozzo Feb 8, 2025
cd40e15
fix: Use `cava`'s built-in reverse function
nlogozzo Feb 8, 2025
46083a1
fix: Cava options for non-Windows systems
nlogozzo Feb 9, 2025
fa29d0d
feat: Increase maximum number of bars
nlogozzo Feb 9, 2025
51c9081
feat: Implement more GNOME preferences
nlogozzo Feb 9, 2025
110e536
feat: Add wave circle rendering
nlogozzo Feb 9, 2025
1a57369
feat: Basic rendering on Qt
nlogozzo Feb 9, 2025
f5b3167
feat: Update vcpkg
nlogozzo Feb 9, 2025
4a1bd6c
fix: Casting warnings
nlogozzo Feb 10, 2025
e053442
Merge branch 'main' into next
nlogozzo Feb 10, 2025
4825ada
docs: Update translations
nlogozzo Feb 10, 2025
bf15813
feat: Add levels box render
nlogozzo Feb 11, 2025
2127142
feat: Add levels circle render
nlogozzo Feb 11, 2025
9df5887
feat: Add particle renders
nlogozzo Feb 11, 2025
f854ffb
feat: Add bar renders
nlogozzo Feb 11, 2025
06122cc
feat: Add splitter render
nlogozzo Feb 11, 2025
67c9d1f
feat: Finish renderer implementation
nlogozzo Feb 11, 2025
2564614
feat: Better Canvas Size API
nlogozzo Feb 11, 2025
657fe87
fix: GNOME image rendering
nlogozzo Feb 11, 2025
3c84efd
fix: Only restart cava when options changed
nlogozzo Feb 11, 2025
6c3f397
fix: Mirror rendering
nlogozzo Feb 11, 2025
24f5409
deps: Update `cava`
nlogozzo Feb 13, 2025
cb7fedf
fix: Better `CavaOptions` comparison
nlogozzo Feb 14, 2025
1526bdb
fix: Windows build
nlogozzo Feb 14, 2025
1b4ecd4
feat(WIP): GNOME preferences
nlogozzo Feb 14, 2025
5d502b7
feat: Use GPU rendering when possible
nlogozzo Feb 14, 2025
8f1a7c5
fix: Let `Renderer` handle canvas
nlogozzo Feb 14, 2025
6e6bcdf
fix: Flatpak build
nlogozzo Feb 14, 2025
8d395d5
feat(GNOME): More preference dialog work
nlogozzo Feb 15, 2025
27914a3
feat: Show if using GPU for rendering in debug info
nlogozzo Feb 15, 2025
3692f1c
fix: Rendering background images
nlogozzo Feb 16, 2025
b93a068
feat(gnome): Background image management
nlogozzo Feb 16, 2025
98f29ac
Update preferencesviewcontroller.cpp
nlogozzo Feb 18, 2025
10e60c7
feat: Update deps
nlogozzo Apr 16, 2025
a4c94c3
fix: Dependencies
nlogozzo Apr 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 0 additions & 12 deletions .config/dotnet-tools.json

This file was deleted.

7 changes: 2 additions & 5 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
[*.{sln,resx}]
indent_style = tab

[*.{cs,sh,py,json,page,cake}]
[*.{h,cpp,py,json,page,txt}]
indent_style = space
indent_size = 4

[*.{csproj,xml,css,md,blp,yml}]
[*.{xml,css,md,blp,yml}]
indent_style = space
indent_size = 2
4 changes: 1 addition & 3 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
# Auto detect text files and perform LF normalization
* text eol=lf
*.csproj eol=crlf
*.sln eol=crlf
*.png binary
*.jpg binary
*.ico binary
*.pdf binary
*.exe binary
*.exe binary
40 changes: 28 additions & 12 deletions .github/workflows/flatpak.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,31 +6,47 @@ on:
types: [ "review_requested", "ready_for_review" ]
workflow_dispatch:
name: Flatpak
permissions:
id-token: write
contents: read
jobs:
gnome-flatpak:
name: "GNOME on Flatpak"
runs-on: ubuntu-latest
if: ${{ github.event.pull_request.user.login != 'weblate' }}
container:
image: bilelmoussaoui/flatpak-github-actions:gnome-45
image: ghcr.io/flathub-infra/flatpak-github-actions:gnome-47
options: --privileged
strategy:
matrix:
# As of the time of writing (February 2023), GitHub Actions only provides x86_64 runners. While Flatpak does
# provide cross-building for other architectures, it uses QEMU to do so, and dotnet does not play well under
# QEMU for arm64. See below links for potential updates:
# - https://github.com/dotnet/runtime/issues/13648
# - https://github.com/actions/runner-images/issues/5631
arch: [x86_64]
fail-fast: false
steps:
- uses: actions/[email protected]
- uses: actions/checkout@v4
- uses: flathub-infra/flatpak-github-actions/flatpak-builder@master
with:
submodules: recursive
- uses: flatpak/flatpak-github-actions/[email protected]
bundle: org.nickvision.cavalier.gnome.flatpak
manifest-path: flatpak/org.nickvision.cavalier.gnome.json
cache-key: flatpak-builder-gnome-${{ github.sha }}
arch: ${{ matrix.arch }}
restore-cache: true
qt-flatpak:
name: "QT on Flatpak"
runs-on: ubuntu-latest
if: ${{ github.event.pull_request.user.login != 'weblate' }}
container:
image: ghcr.io/flathub-infra/flatpak-github-actions:kde-6.8
options: --privileged
strategy:
matrix:
arch: [x86_64]
fail-fast: false
steps:
- uses: actions/checkout@v4
- uses: flathub-infra/flatpak-github-actions/flatpak-builder@master
with:
bundle: org.nickvision.cavalier.flatpak
manifest-path: flatpak/org.nickvision.cavalier.json
cache-key: flatpak-builder-${{ github.sha }}
bundle: org.nickvision.cavalier.qt.flatpak
manifest-path: flatpak/org.nickvision.cavalier.qt.json
cache-key: flatpak-builder-qt-${{ github.sha }}
arch: ${{ matrix.arch }}
restore-cache: true
32 changes: 9 additions & 23 deletions .github/workflows/snap.yml
Original file line number Diff line number Diff line change
@@ -1,41 +1,27 @@
on:
push:
branches: [ "main" ]
branches: ["main"]
pull_request:
branches: [ "main" ]
types: [ "review_requested", "ready_for_review" ]
branches: ["main"]
types: ["review_requested", "ready_for_review"]
workflow_dispatch:
name: Snap
permissions:
id-token: write
contents: read
jobs:
snap:
gnome-snap:
name: "GNOME on Snap"
runs-on: ubuntu-latest
strategy:
matrix:
arch: [x86_64]
fail-fast: false
steps:
- name: Checkout Git repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: Build Snap
- uses: actions/checkout@v4
- name: Build
uses: snapcore/action-build@v1
id: snapcraft-build
with:
snapcraft-args: "-v"
snapcraft-args: "--verbosity debug"
snapcraft-channel: "edge"
- uses: actions/upload-artifact@v4
with:
name: ${{ steps.snapcraft-build.outputs.snap }}
name: cavalier-snap
path: ${{ steps.snapcraft-build.outputs.snap }}
- name: Upload and release Cavalier Snap
uses: snapcore/action-publish@v1
if: ${{ github.event_name != 'pull_request' }}
env:
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.STORE_LOGIN }}
with:
snap: ${{ steps.snapcraft-build.outputs.snap }}
release: ${{'edge'}}
4 changes: 2 additions & 2 deletions .github/workflows/spelling.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ jobs:
codespell:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- uses: codespell-project/actions-codespell@master
with:
check_filenames: true
skip: cargo-sources.json,.git,*.po,*.svg
skip: cargo-sources.json,.git,*.svg,*.html,*.js,*.po,*.pot,*.page,*.map,sqlite3.h,sqlite3.c,pch.h,CONTRIBUTING.md
ignore_words_list: gir
63 changes: 63 additions & 0 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
types: [ "review_requested", "ready_for_review" ]
workflow_dispatch:
name: Windows
permissions:
id-token: write
contents: read
env:
GITHUB_ACTIONS: true
VCPKG_ROOT: ${{github.workspace}}/vcpkg
jobs:
build:
name: "Build on x64"
runs-on: windows-latest
if: ${{ github.event.pull_request.user.login != 'weblate' }}
steps:
- name: "Checkout"
uses: actions/checkout@v4
with:
submodules: recursive
- name: "Setup Environment"
shell: pwsh
run: |
$ProgressPreference = 'SilentlyContinue'
mkdir build
Invoke-WebRequest https://github.com/mlocati/gettext-iconv-windows/releases/download/v0.21-v1.16/gettext0.21-iconv1.16-shared-64.zip -OutFile gettext.zip
Expand-Archive -Force 'gettext.zip'
move gettext\bin\* C:\Windows\System32
choco install innosetup
- name: "Vcpkg"
uses: johnwason/vcpkg-action@v6
id: vcpkg
with:
pkgs: glfw3 libnick skia[core,fontconfig,freetype,gl,harfbuzz,icu,vulkan] qtbase qtsvg qttools
triplet: x64-windows
revision: e946021fec2f993d6933f361e5b59e0433a750a7
token: ${{ secrets.GITHUB_TOKEN }}
github-binarycache: true
- name: "Build"
working-directory: ${{github.workspace}}/build
run: |
cmake -G "Visual Studio 17 2022" ..
cmake --build . --config Release
- name: "Create Installer"
working-directory: ${{github.workspace}}/inno
shell: pwsh
run: |
$ProgressPreference = 'SilentlyContinue'
Invoke-WebRequest https://aka.ms/vs/17/release/vc_redist.x64.exe -OutFile vc_redist.x64.exe
Invoke-WebRequest https://download.microsoft.com/download/1/6/B/16B06F60-3B20-4FF2-B699-5E9B7962F9AE/VSU_4/vcredist_x64.exe -OutFile vc_redist.2012.x64.exe
Invoke-WebRequest https://github.com/karlstav/cava/releases/download/0.10.4/cava_win.zip -OutFile cava.zip
Expand-Archive -Force 'cava.zip'
Remove-Item -Force cava\config
iscc setup.iss
- name: Upload
uses: actions/upload-artifact@v4
with:
path: ${{github.workspace}}/inno/NickvisionCavalierSetup.exe
name: Windows-x64-Release
Loading