Branches and code hosting

I’ll try to get the PPA up and running this weekend. How do you see the collaboration going? PR + review or just committing straight to master?

1 Like

+1 for PR+review, it should also be easier to share the reason behind contributes and requested changes

In the gtk project, after sudo ninja install + F2 rt sometimes I don’t see immediately the change on already opened applications, but switching to another theme and then back to adwaita does the trick. If this doesn’t happen only to me, since to do it with the mouse is annoying , I’m using the following script to toggle the theme

gsettings set org.gnome.desktop.interface gtk-theme Adwaita
sleep 1
gsettings set org.gnome.desktop.interface gtk-theme Communitheme
1 Like

No problem. You can see all supported CSS properties in the inspector, but for something more detailed there’s also this document.

What icons are you looking for? From what I’ve seen, Ambiance’s window buttons icons are taken straight from the user set icon pack and only the background of the window control buttons are what’s styled. To use custom window button icons you have to set the close/min/max buttons color to transparent and then use background-image to set appropriate images for each. Chrome seems to switch over to an unmaximize/restore button which has a class name I haven’t figured out yet so you end up with a blank space where the icon should be, it’s why I think it’s best if we just stick to the regular, icon theme dependent icons.

I don’t know, honestly. Maybe push to a review branch? Like, one person can do X but if someone else thinks there’s a better way to do it upon review then they can make a change. Once everything’s okay then we can push to master. Would that be too complicated?

Cool. I made a script in my home folder so I just run “./gtk” whenever I open a terminal, but I still had to manually change the theme. I added those lines to it:

sudo ninja -C [path-to-communitheme]/gtk-communitheme/build/ install
gsettings set org.gnome.desktop.interface gtk-theme Adwaita
gsettings set org.gnome.desktop.interface gtk-theme Communitheme

Now it’s just to edit and run the script. :grin:


I’m sure I’ll end up with a keyboard combo for vim for this :smile:

State of the ppa

What’s done

What I’ll be doing this week

  • Fix the name of the gnome-shell package
  • Setup automatic builds for the gnome-shell package
  • Create a packages and automatic builds for the gtk and icon theme and the session
  • Test everything to see if the new session works correctly

So hopefully, in a few days, we’ll have a working ppa that installs the communitheme session

Edit: @khurshid-alam pointed out that you can make launchpad automatically mirror a github repo and build packages when commits are pushed to github; so I’m working on setting that up now.


Awesome! My launchpad ID is “c-lobrano”

Update on the ppa

Automatic daily builds for gnome-shell-communitheme and ubuntu-communitheme-session are up and running! Packages are being built for Artful and Bionic. These packages will be automatically built every day from the master branch of the gnome-shell-communitheme Github repo.

Members of ~communitheme on launchpad can trigger these builds manually on the gnome-shell-communitheme recipe. Click “build now” under “Recipe information”.


Next step: add GTK theme to ppa

I’ll update you when that’s up and running.

PSA: gnome-shell-communitheme name change!

There was some inconsistency in the naming of the gnome shell theme. In some places it was named ubuntu-communitheme, in some places it was named communitheme. I standardized everything to communitheme. This means the meson project name and some paths changed. Best to run sudo ninja uninstall in the build directory, remove the build directory, rerun sudo meson build --prefix=/usr. Shell theme files moved to /usr/share/gnome-shell/theme/communitheme.

PS: session is still ubuntu-communitheme since that session is the Ubuntu patches and dock + communitheme theme. We might want a communitheme session in the future that doesn’t have the Ubuntu patches, to test if communitheme works on upstream Gnome.


Update on the ppa

gtk-communitheme is added to the ppa, automatic builds enabled.

Members of ~communitheme on launchpad can trigger these builds manually.

  1. Trigger the mirror on launchpad to import:
  2. Trigger the recipe to build: Click “build now” under “Recipe information”.

Next step: icon theme


Update on the ppa

suru-icon-theme is now available from the ppa, automatic builds enabled.

This is a very early pre-release version of the icon theme. This package is intended for the Communitheme designers to get a sense of what works with the icons. Many icons are missing, some stuff is just a white squircle. You will find issues. This PPA shouldn’t be distributed to a wider audience!

Next steps

  • Figure out how dependencies work and check why we’re getting warnings about them in the builds
  • Test builds for 16.04 and possibly enable them
  • Add details of the ppa to the readme of each project
  • Check if the license info in the packages is correct

Thanks @merlijn-sebrechts for your great work!

I already have installed everything, shell and icons are working - the top panel and dock are still as usual. I guess they are not up to date?

Can’t wait until everything is up to date and running, to start testing :slight_smile:
Thank’s to all!

1 Like

Yes, top panel and dock haven’t been changed yet. I suspect @godlyranchdressing has a local branch with his changes, but he hasn’t pushed them yet to Github.

@godlyranchdressing feel free to push your changes, even if it’s a wip or if you’re testing stuff. I’m very curious to see what you’ve come up with and it makes it easier for us to collaborate.

Plus, then the designers can get a feel of what works on an actual desktop.


I just pushed some changes I made and opened a pull request. I wasn’t really working off of any one mockup yet. I was mostly trying to emulate Unity 8 and see if some stuff from “Finding Ubuntu” was possible. I guess if it’s just to get things started then it doesn’t really matter though.

The dash/dock modifications won’t work unless you get rid of the Ubuntu Dock’s stylesheet. I just backed mines up and replaced it with a blank “stylesheet.css” file.


I added some documentation based on @godlyranchdressing’s awesome guide. Feel free to let me know if stuff is wrong/missing, or fix it yourself and create a PR :wink:

How to install daily build of Communitheme

How to contribute to Communitheme


Just a short notice now that my changes are upstream in every PR is now tested with building a package for the 2 projects (shell & GTK theme).
We can be sure that way that there isn’t any typo (even if that didn’t happen yet ;)) in the sass syntax and that the next daily build should work!

Right now, the test build is on artful, but we can add a line for bionic easily! (Let’s see how stable it is before).
If we could get some storage somewhere integrated with travis, we can even publish those packages and attach them to the PR, but I don’t think abusing another git branch for the artefacts attaching binaries is great. The S3 free tier won’t be forever either. If you have any other suggestion… :slight_smile:


A small update:

The new sound theme is now set up on github and included in the communitheme ppa. The sound theme now also gets installed when you install ubuntu-communitheme-session and it is enabled by default for that session.

I also fixed a bug so you don’t have to manually choose the suru-icon-theme anymore; it is now also the default icon theme for the communitheme session.


@merlijn-sebrechts: as now the packages are not compatible with artful, but only bionic due to GNOME Shell 3.28 theme not being backward compatible, do you mind disabling the artful daily builds?

I stopped the daily builds for artful and I started a one-time build for artful from the last 3.26 commit to fix existing systems.