Skip to content
This repository was archived by the owner on Jun 2, 2024. It is now read-only.
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: catppuccin/gtk
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v.1.0.0
Choose a base ref
...
head repository: catppuccin/gtk
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v1.0.2
Choose a head ref

Commits on Dec 27, 2021

  1. 1.0.0 Version

    sadrach-cl committed Dec 27, 2021
    Copy the full SHA
    13c3943 View commit details
  2. update readme new source

    sadrach-cl committed Dec 27, 2021
    Copy the full SHA
    0752db4 View commit details
  3. update screenshot

    sadrach-cl committed Dec 27, 2021
    Copy the full SHA
    5e3e6c8 View commit details
  4. Copy the full SHA
    add466e View commit details
  5. Update README.md

    add blue default color
    sadrach-cl authored Dec 27, 2021
    Copy the full SHA
    1d9f1fb View commit details

Commits on Jan 4, 2022

  1. updated readme

    pocco81 committed Jan 4, 2022
    Copy the full SHA
    8b9f091 View commit details
  2. Copy the full SHA
    e4fc86c View commit details
  3. wrong path to ss

    pocco81 committed Jan 4, 2022
    Copy the full SHA
    3dcc194 View commit details
  4. added numbers to steps

    pocco81 committed Jan 4, 2022
    Copy the full SHA
    3974615 View commit details
  5. updated demo

    pocco81 committed Jan 4, 2022
    Copy the full SHA
    93dbc8f View commit details

Commits on Jan 5, 2022

  1. Copy the full SHA
    b53ddfc View commit details
  2. cut bottom part of demo

    pocco81 committed Jan 5, 2022
    Copy the full SHA
    4b95384 View commit details

Commits on Jan 15, 2022

  1. Added AUR link

    Sanjay Pavan committed Jan 15, 2022
    Copy the full SHA
    4227858 View commit details
  2. Merge pull request #4 from WitherCubes/main

    Added AUR link
    sadrach-cl authored Jan 15, 2022
    Copy the full SHA
    c4b5813 View commit details
  3. Adding License

    Sanjay Pavan committed Jan 15, 2022
    Copy the full SHA
    3461e24 View commit details
  4. Copy the full SHA
    7b144bb View commit details
  5. Copy the full SHA
    d3d9a66 View commit details
  6. fix: merge conflict on readme

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    87b5c6e View commit details
  7. Copy the full SHA
    934e68f View commit details
  8. added requirements

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    a6fa62c View commit details
  9. Copy the full SHA
    3b6df66 View commit details
  10. Copy the full SHA
    b9c6920 View commit details
  11. fix: makefile and gitignore

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    92cb249 View commit details
  12. Copy the full SHA
    1ad88ef View commit details
  13. fix: typo

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    06a7c9e View commit details
  14. Copy the full SHA
    f39c337 View commit details
  15. update _color-palette

    sadrach-cl authored and pocco81 committed Jan 15, 2022
    Copy the full SHA
    f1f5c03 View commit details
  16. update bg fg colors base

    sadrach-cl authored and pocco81 committed Jan 15, 2022
    Copy the full SHA
    6fb00f6 View commit details
  17. feat: build command

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    3132e3c View commit details
  18. chore: documented makefile

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    8904786 View commit details
  19. Copy the full SHA
    6d04a3b View commit details
  20. fix: wrong root dir

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    8902a2e View commit details
  21. fix: colors on build script

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    b282aa1 View commit details
  22. chore: updated sass colors

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    e056306 View commit details
  23. Copy the full SHA
    e6770d9 View commit details
  24. Copy the full SHA
    36f6824 View commit details
  25. fix: background

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    190a6b0 View commit details
  26. Copy the full SHA
    fceca38 View commit details
  27. fix: svgs

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    38831cc View commit details
  28. Copy the full SHA
    b081085 View commit details
  29. Copy the full SHA
    56ed3dd View commit details
  30. Copy the full SHA
    4a1b0f3 View commit details
  31. fix: typo

    pocco81 committed Jan 15, 2022
    Copy the full SHA
    ba1277f View commit details

Commits on Jan 28, 2022

  1. Copy the full SHA
    edcade0 View commit details
  2. update color bkg2

    sadrach-cl committed Jan 28, 2022
    Copy the full SHA
    5e84f9c View commit details
  3. Copy the full SHA
    8b8ce17 View commit details

Commits on Feb 2, 2022

  1. chore: added footer

    pocco81 committed Feb 2, 2022
    Copy the full SHA
    a23d6fc View commit details

Commits on Feb 20, 2022

  1. update sassc

    sadrach-cl committed Feb 20, 2022
    Copy the full SHA
    15b5c59 View commit details

Commits on Feb 24, 2022

  1. Copy the full SHA
    359c584 View commit details

Commits on Jun 20, 2022

  1. fix: June Clean-up issues

    pocco81 committed Jun 20, 2022
    Copy the full SHA
    bd39823 View commit details
Showing with 8,755 additions and 10,523 deletions.
  1. +34 −0 .editorconfig
  2. +1 −0 .envrc
  3. +59 −0 .github/ISSUE_TEMPLATE/bug.yml
  4. +5 −0 .github/ISSUE_TEMPLATE/config.yml
  5. +18 −0 .github/ISSUE_TEMPLATE/enhancement.yml
  6. +18 −0 .github/ISSUE_TEMPLATE/meta.yml
  7. +35 −0 .github/workflows/build.yml
  8. +50 −0 .github/workflows/release.yml
  9. +14 −0 .gitignore
  10. +3 −0 .gitmodules
  11. +3 −0 .release-please-manifest.json
  12. +74 −0 ARCHITECTURE.md
  13. +15 −0 CHANGELOG.md
  14. +70 −0 CONTRIBUTING.md
  15. +0 −10 Catppuccin-light/gnome-shell/assets/activities-white.svg
  16. +0 −10 Catppuccin-light/gnome-shell/assets/activities.svg
  17. BIN Catppuccin-light/gnome-shell/assets/background.png
  18. +0 −3 Catppuccin-light/gnome-shell/assets/calendar-arrow-left.svg
  19. +0 −3 Catppuccin-light/gnome-shell/assets/calendar-arrow-right.svg
  20. +0 −178 Catppuccin-light/gnome-shell/assets/calendar-today.svg
  21. +0 −4 Catppuccin-light/gnome-shell/assets/checkbox-off.svg
  22. +0 −19 Catppuccin-light/gnome-shell/assets/checkbox.svg
  23. +0 −4 Catppuccin-light/gnome-shell/assets/dash-placeholder.svg
  24. +0 −6 Catppuccin-light/gnome-shell/assets/more-results.svg
  25. +0 −78 Catppuccin-light/gnome-shell/assets/noise-texture.svg
  26. +0 −21 Catppuccin-light/gnome-shell/assets/toggle-off.svg
  27. +0 −20 Catppuccin-light/gnome-shell/assets/toggle-on.svg
  28. +0 −123 Catppuccin-light/gnome-shell/assets/view-app-grid.svg
  29. +0 −116 Catppuccin-light/gnome-shell/assets/window-close-active.svg
  30. +0 −137 Catppuccin-light/gnome-shell/assets/window-close-hover.svg
  31. +0 −58 Catppuccin-light/gnome-shell/assets/window-close-symbolic.svg
  32. +0 −119 Catppuccin-light/gnome-shell/assets/window-close.svg
  33. +0 −3,983 Catppuccin-light/gnome-shell/gnome-shell.css
  34. +0 −10 Catppuccin-light/gnome-shell/icons/scalable/actions/color-pick.svg
  35. +0 −7 Catppuccin-light/gnome-shell/icons/scalable/actions/pointer-double-click-symbolic.svg
  36. +0 −3 Catppuccin-light/gnome-shell/icons/scalable/actions/pointer-drag-symbolic.svg
  37. +0 −7 Catppuccin-light/gnome-shell/icons/scalable/actions/pointer-primary-click-symbolic.svg
  38. +0 −7 Catppuccin-light/gnome-shell/icons/scalable/actions/pointer-secondary-click-symbolic.svg
  39. +0 −36 Catppuccin-light/gnome-shell/icons/scalable/status/carousel-arrow-back-symbolic.svg
  40. +0 −36 Catppuccin-light/gnome-shell/icons/scalable/status/carousel-arrow-next-symbolic.svg
  41. +0 −6 Catppuccin-light/gnome-shell/icons/scalable/status/eye-not-looking-symbolic.svg
  42. +0 −6 Catppuccin-light/gnome-shell/icons/scalable/status/eye-open-negative-filled-symbolic.svg
  43. +0 −3 Catppuccin-light/gnome-shell/icons/scalable/status/keyboard-caps-lock-filled-symbolic.svg
  44. +0 −3 Catppuccin-light/gnome-shell/icons/scalable/status/keyboard-enter-symbolic.svg
  45. +0 −10 Catppuccin-light/gnome-shell/icons/scalable/status/keyboard-hide-symbolic.svg
  46. +0 −4 Catppuccin-light/gnome-shell/icons/scalable/status/keyboard-layout-filled-symbolic.svg
  47. +0 −5 Catppuccin-light/gnome-shell/icons/scalable/status/keyboard-shift-filled-symbolic.svg
  48. +0 −3 Catppuccin-light/gnome-shell/icons/scalable/status/message-indicator-symbolic.svg
  49. +0 −13 Catppuccin-light/gnome-shell/icons/scalable/status/window-close-symbolic.svg
  50. +0 −4 Catppuccin-light/gnome-shell/no-events.svg
  51. +0 −4 Catppuccin-light/gnome-shell/no-notifications.svg
  52. +0 −30 Catppuccin-light/gnome-shell/pad-osd.css
  53. +0 −72 Catppuccin-light/gnome-shell/process-working.svg
  54. +0 −1 Catppuccin-light/gtk-3.0/gtk-dark.css
  55. +0 −1 Catppuccin-light/gtk-3.0/gtk.css
  56. BIN Catppuccin-light/gtk-3.0/gtk.gresource
  57. +0 −1 Catppuccin-light/gtk-4.0/gtk-dark.css
  58. +0 −1 Catppuccin-light/gtk-4.0/gtk.css
  59. BIN Catppuccin-light/gtk-4.0/gtk.gresource
  60. +0 −10 Catppuccin-light/index.theme
  61. +0 −66 Catppuccin-light/plank/dock.theme
  62. +0 −10 Catppuccin/gnome-shell/assets/activities-white.svg
  63. +0 −10 Catppuccin/gnome-shell/assets/activities.svg
  64. BIN Catppuccin/gnome-shell/assets/background.png
  65. +0 −3 Catppuccin/gnome-shell/assets/calendar-arrow-left.svg
  66. +0 −3 Catppuccin/gnome-shell/assets/calendar-arrow-right.svg
  67. +0 −178 Catppuccin/gnome-shell/assets/calendar-today.svg
  68. +0 −4 Catppuccin/gnome-shell/assets/checkbox-off.svg
  69. +0 −19 Catppuccin/gnome-shell/assets/checkbox.svg
  70. +0 −4 Catppuccin/gnome-shell/assets/dash-placeholder.svg
  71. +0 −6 Catppuccin/gnome-shell/assets/more-results.svg
  72. +0 −78 Catppuccin/gnome-shell/assets/noise-texture.svg
  73. +0 −21 Catppuccin/gnome-shell/assets/toggle-off.svg
  74. +0 −20 Catppuccin/gnome-shell/assets/toggle-on.svg
  75. +0 −123 Catppuccin/gnome-shell/assets/view-app-grid.svg
  76. +0 −116 Catppuccin/gnome-shell/assets/window-close-active.svg
  77. +0 −137 Catppuccin/gnome-shell/assets/window-close-hover.svg
  78. +0 −58 Catppuccin/gnome-shell/assets/window-close-symbolic.svg
  79. +0 −119 Catppuccin/gnome-shell/assets/window-close.svg
  80. +0 −3,983 Catppuccin/gnome-shell/gnome-shell.css
  81. +0 −10 Catppuccin/gnome-shell/icons/scalable/actions/color-pick.svg
  82. +0 −7 Catppuccin/gnome-shell/icons/scalable/actions/pointer-double-click-symbolic.svg
  83. +0 −3 Catppuccin/gnome-shell/icons/scalable/actions/pointer-drag-symbolic.svg
  84. +0 −7 Catppuccin/gnome-shell/icons/scalable/actions/pointer-primary-click-symbolic.svg
  85. +0 −7 Catppuccin/gnome-shell/icons/scalable/actions/pointer-secondary-click-symbolic.svg
  86. +0 −36 Catppuccin/gnome-shell/icons/scalable/status/carousel-arrow-back-symbolic.svg
  87. +0 −36 Catppuccin/gnome-shell/icons/scalable/status/carousel-arrow-next-symbolic.svg
  88. +0 −6 Catppuccin/gnome-shell/icons/scalable/status/eye-not-looking-symbolic.svg
  89. +0 −6 Catppuccin/gnome-shell/icons/scalable/status/eye-open-negative-filled-symbolic.svg
  90. +0 −3 Catppuccin/gnome-shell/icons/scalable/status/keyboard-caps-lock-filled-symbolic.svg
  91. +0 −3 Catppuccin/gnome-shell/icons/scalable/status/keyboard-enter-symbolic.svg
  92. +0 −10 Catppuccin/gnome-shell/icons/scalable/status/keyboard-hide-symbolic.svg
  93. +0 −4 Catppuccin/gnome-shell/icons/scalable/status/keyboard-layout-filled-symbolic.svg
  94. +0 −5 Catppuccin/gnome-shell/icons/scalable/status/keyboard-shift-filled-symbolic.svg
  95. +0 −3 Catppuccin/gnome-shell/icons/scalable/status/message-indicator-symbolic.svg
  96. +0 −13 Catppuccin/gnome-shell/icons/scalable/status/window-close-symbolic.svg
  97. +0 −4 Catppuccin/gnome-shell/no-events.svg
  98. +0 −4 Catppuccin/gnome-shell/no-notifications.svg
  99. +0 −30 Catppuccin/gnome-shell/pad-osd.css
  100. +0 −72 Catppuccin/gnome-shell/process-working.svg
  101. +0 −1 Catppuccin/gtk-3.0/gtk-dark.css
  102. +0 −1 Catppuccin/gtk-3.0/gtk.css
  103. BIN Catppuccin/gtk-3.0/gtk.gresource
  104. BIN Catppuccin/gtk-3.0/thumbnail.png
  105. +0 −1 Catppuccin/gtk-4.0/gtk-dark.css
  106. +0 −1 Catppuccin/gtk-4.0/gtk.css
  107. BIN Catppuccin/gtk-4.0/gtk.gresource
  108. BIN Catppuccin/gtk-4.0/thumbnail.png
  109. +0 −10 Catppuccin/index.theme
  110. +0 −66 Catppuccin/plank/dock.theme
  111. +0 −18 Catppuccin/plank/hover.theme
  112. +674 −0 LICENSE
  113. +180 −23 README.md
  114. BIN assets/res.webp
  115. +636 −0 build.py
  116. +1 −0 colloid
  117. +27 −0 flake.lock
  118. +18 −0 flake.nix
  119. BIN images/screen.png
  120. +216 −0 install.py
  121. +13 −0 patches/colloid/fixes/alt-tab-background-color.patch
  122. +123 −0 patches/colloid/palette.tera
  123. +70 −0 patches/colloid/plank-dark.patch
  124. +70 −0 patches/colloid/plank-light.patch
  125. +93 −0 patches/colloid/sass-palette-frappe.patch
  126. +93 −0 patches/colloid/sass-palette-latte.patch
  127. +93 −0 patches/colloid/sass-palette-macchiato.patch
  128. +93 −0 patches/colloid/sass-palette-mocha.patch
  129. +46 −0 patches/colloid/theme-func.patch
  130. +2 −0 patches/xfwm4/.gitignore
  131. +1,509 −0 patches/xfwm4/assets-dark-normal.svg
  132. +1,281 −0 patches/xfwm4/assets-dark.svg
  133. +1,512 −0 patches/xfwm4/assets-light-normal.svg
  134. +1,321 −0 patches/xfwm4/assets-light.svg
  135. +247 −0 patches/xfwm4/generate_assets.py
  136. +15 −0 release-please-config.json
  137. BIN releases/catppuccin-gtk.tar.gz
  138. BIN releases/catppuccin-light-gtk.tar.gz
  139. +9 −0 renovate.json
  140. +1 −0 requirements.txt
  141. +13 −0 shell.nix
34 changes: 34 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# EditorConfig helps developers define and maintain consistent
# coding styles between different editors and IDEs
# EditorConfig is awesome: https://EditorConfig.org

root = true

[*]
charset = utf-8
indent_size = 2
indent_style = space
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true

# go
[*.go]
indent_style = tab
indent_size = 4

# python
[*.{ini,py,py.tpl,rst}]
indent_size = 4

# rust
[*.rs]
indent_size = 4

# documentation, utils
[*.{md,mdx,diff}]
trim_trailing_whitespace = false

# windows shell scripts
[*.{cmd,bat,ps1}]
end_of_line = crlf
1 change: 1 addition & 0 deletions .envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
use flake
59 changes: 59 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: Bug Report
description: Report your bugs with the theme here!
labels: [bug]
body:
- type: checkboxes
attributes:
label: Is there an existing issue outlining your problem?
description: Please search to see if an issue already exists for your problem.
options:
- label: I have searched the existing issues and they do not solve my problem.
required: true
- type: textarea
attributes:
label: Describe the bug.
description: Also tell us, what do you expect to see?
placeholder: The tabs are darker than they should be...
validations:
required: true
- type: textarea
attributes:
label: Attach screenshots.
description: If applicable, attach screenshots which clearly highlight the bug.
- type: dropdown
id: installation_method
attributes:
label: How did you install the theme?
options:
- From release (install.py)
- From release (manual installation)
- From source (build.py)
- Nix (nixpkgs / catppuccin/nix)
- AUR package
validations:
required: true
- type: checkboxes
attributes:
label: Are you running the latest release, and if not does the issue persist there?
description: "Our latest release can be found under the [GitHub releases](https://github.com/catppuccin/gtk/releases/latest)"
options:
- label: I am running on the latest release & the issue persists there
required: true
- type: checkboxes
attributes:
label: If using GTK4, have you symlinked the "gtk-4.0" folder?
description: "The instructions for symlinking are described at the bottom of the [Manual Installation guide](https://github.com/catppuccin/gtk/tree/663f6c61f8cf1fcbbeb72110bf6b0a0214755245?tab=readme-ov-file#manual-installation)."
options:
- label: I have symlinked the `gtk-4.0` folder.
required: false
- type: input
attributes:
label: What GNOME version are you seeing the bug on?
description: "Follow [GNOME's instructions](https://help.gnome.org/users/gnome-help/stable/gnome-version.html.en) to find out what version you are running."
placeholder: "GNOME Version 42.9"
validations:
required: true
- type: textarea
attributes:
label: Any additional comments?
description: Add any information that hasn't been covered in the previous sections!
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Community Discord
url: https://discord.com/servers/catppuccin-907385605422448742
about: Chat to other community members!
18 changes: 18 additions & 0 deletions .github/ISSUE_TEMPLATE/enhancement.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Enhancement Issue
description: Request improvements to the theme here!
labels: [enhancement]
body:
- type: checkboxes
attributes:
label: Is there an existing issue outlining your improvement?
description: Please search to see if your improvement has already been raised as an issue.
options:
- label: I have searched the existing issues and my improvement has not been raised yet.
required: true
- type: textarea
attributes:
label: What would you like to see added and/or changed?
description: Make sure to mention why you think this is an improvement!
placeholder: I'd like to have an extra configuration option for...
validations:
required: true
18 changes: 18 additions & 0 deletions .github/ISSUE_TEMPLATE/meta.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Meta Issue
description: Raise any issue regarding the repository here!
labels: [meta]
body:
- type: checkboxes
attributes:
label: Is there an existing issue outlining your problem?
description: Please search to see if an issue already exists for your problem.
options:
- label: I have searched the existing issues and they do not solve my problem.
required: true
- type: textarea
attributes:
label: Describe the issue.
description: Bugs should be raised under a [Bug Report](https://github.com/catppuccin/gtk/issues/new?assignees=&labels=bug&template=bug.yml).
placeholder: The README is missing crucial information such as...
validations:
required: true
35 changes: 35 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: "Generate test artifacts"

on:
pull_request:
types: [opened, reopened, synchronize]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: true
- uses: actions/setup-python@v5
with:
python-version: "3.11"
cache: "pip"
- name: Install dependencies
run: pip install -r requirements.txt
- name: Install colloid specific dependencies
run: sudo apt update && sudo apt install -y sassc inkscape optipng
- name: Generate themes
run: |
python patches/xfwm4/generate_assets.py
python ./build.py mocha --all-accents --zip -d $PWD/releases &&
python ./build.py macchiato --all-accents --zip -d $PWD/releases &&
python ./build.py frappe --all-accents --zip -d $PWD/releases &&
python ./build.py latte --all-accents --zip -d $PWD/releases
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: '${{ github.sha }}-artifacts'
path: ./releases/*.zip

50 changes: 50 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: release

on:
workflow_dispatch:
push:
branches: [main]

permissions:
contents: write
pull-requests: write

jobs:
release-please:
runs-on: ubuntu-latest
steps:
- uses: googleapis/release-please-action@v4
id: release
outputs:
release_created: ${{ steps.release.outputs.release_created }}
tag_name: ${{ steps.release.outputs.tag_name }}

release:
runs-on: ubuntu-latest
needs: release-please
if: ${{ needs.release-please.outputs.release_created }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: true
- uses: actions/setup-python@v5
with:
python-version: "3.11"
cache: "pip"
- name: Install dependencies
run: pip install -r requirements.txt
- name: Install colloid specific dependencies
run: sudo apt update && sudo apt install -y sassc inkscape optipng
- name: Generate themes
run: |
python patches/xfwm4/generate_assets.py
python ./build.py mocha --all-accents --zip -d $PWD/releases &&
python ./build.py macchiato --all-accents --zip -d $PWD/releases &&
python ./build.py frappe --all-accents --zip -d $PWD/releases &&
python ./build.py latte --all-accents --zip -d $PWD/releases
- name: Add zips to release
run: gh release upload ${{ needs.release-please.outputs.tag_name }} releases/*.zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
14 changes: 14 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
pkgs/
*-temp.scss
__pycache__
venv/
.venv
bin/
lib*/
*.cfg
.direnv
build/

# Releases folder
releases
chrome
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "colloid"]
path = colloid
url = https://github.com/vinceliuice/Colloid-gtk-theme.git
3 changes: 3 additions & 0 deletions .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
".": "1.0.2"
}
74 changes: 74 additions & 0 deletions ARCHITECTURE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
## Build pipeline

The GTK port has a fairly complicated build pipeline / system, chiefly stemming from our use of Colloid as a base theme.
We use Colloid as a base to reduce development overhead of creating our own theme from scratch, we look to replace this in the future
to give us more flexibility and control over the theme (see https://github.com/catppuccin/gtk/issues/164).

We have reimplemented Colloid's build system (previously implemented in Shell) in Python to make it easier to maintain, extend, and iterate on.
With this re-implementation, we have several distinct components in the system, described below:
1) Patching
2) SCSS
2) Assets

## Patching

We patch our colloid submodule to add additional functionality and (temporarily) fix bugs found in Colloid.
We do this through `.patch` files, applied with `git apply` when the build script boots up.
The build script will store some state in the submodule to ensure it does not get needlessly patched.

The patches are stored in `patches/colloid`, and currently have our palette, the Plank theme, and a modification to Colloid
to allow all of our accents to load. When we find issues in Colloid, they will be patched through this system before being submitted upstream.

## SCSS

[This section assumes the directory root is at `colliod/src/sass`]

The bulk of the theme is implemented here, in SCSS. This is by far the most modular part of Colloid out of the box, requiring minimal patching from our end to function.
To start, we move the Colloid submodule into its own temporary copy. This is to allow us to run multiple builds in parallel, which would be otherwise impossible due to the
file changes necessitated by each build, described below.

With our temporary copy established, we generate the 'tweaks' for the build. This sets up a file (`_tweaks-temp.scss`) which describes the various knobs and dials for the build:
```scss
@import 'color-palette-catppuccin-mocha';

$colorscheme: 'catppuccin';
$colortype: 'system';
$opacity: 'default';
$theme: 'mauve';
$compact: 'false';
$translucent: 'false';
$panel_opacity: 1.0;
$blackness: 'false';
$rimless: 'false';
$window_button: 'mac';
$float: 'false';
```
We edit in the correct palette import for the flavour we're building, and set the other variables based on user / build state input.

With the tweaks setup, we can now invoke `sassc` (the SCSS compiler) to build all of our CSS files. We run all of the SCSS builds in parallel, for performance.
With the SCSS complete, we have now finished most of the work required for the build.


## Assets

We build our own assets to ship with the theme, based on the processes used in Colloid.

We build assets for GTK, to include UI elements such as buttons, checkboxes,
etc. This is done through standard find-and-replace, as these assets are just SVGs. We do not support GTK2, so do not have to support the older PNG assets used there.

We also build assets for Xfce's Xfwm4, which are first patched from a source SVG, and then rendered through the `inkscape` CLI.
This operation is done once, at the start of a build process (e.g CI, to be reused for every subsequent build), or once until they change in the future for local development.
The script to generate these assets can be found at [`patches/xfwm4/generate_assets.py`](./patches/xfwm4/generate_assets.py)


## CI integration

The CI system utilizes the build system, as described above, but with some unique parallelization elements to improve performance.
We have chosen to only build a limited subset of possible tweaks in CI, to constrain the time it takes to run.

Currently, we build a matrix of:
- Flavor
- Accent

The CI will run all 4 flavours in parallel (see above for precautions taken to ensure this functions correctly), and build each accent serially.
We collate the logs for these runs into files so that they can be shown neatly at the end of the run.
15 changes: 15 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Changelog

## [1.0.2](https://github.com/catppuccin/gtk/compare/v1.0.1...v1.0.2) (2024-05-27)


### Bug Fixes

* alt tab menu ([#209](https://github.com/catppuccin/gtk/issues/209)) ([cae57c8](https://github.com/catppuccin/gtk/commit/cae57c80f81fd1cc40fab2655109b09fa97103b9))

## [1.0.1](https://github.com/catppuccin/gtk/compare/v1.0.0...v1.0.1) (2024-05-27)


### Bug Fixes

* alt tab menu ([#209](https://github.com/catppuccin/gtk/issues/209)) ([cae57c8](https://github.com/catppuccin/gtk/commit/cae57c80f81fd1cc40fab2655109b09fa97103b9))
Loading