Getting started with editing dolphin

I am trying to get started with kde development. My first objective is to add a small feature to dolphin.

kde-builder dolphin and kde-builder --run dolphin work as expected. What I did next:

  1. I edited ~/kde/src/dolphin/src/... to my liking (I did not do anything with git). When I try to build, kde-builder dolphinignores my changes completely.

  2. I then followed the tutorial Building KDE software with kde-builder | Developer which tells me to fork dolphin on the kde gitlab instance and clone it.

If your project is a fork of an existing KDE project, you can build it with kde-builder. To do so, you need to clone it to ~/kde/src. For example, if you want to work on Dolphin:
git clone git@invent.kde.org:your-user/dolphin.git ~/kde/src/dolphin-fork
Then add a project at the end of your ~/.config/kde-builder.yaml:
project dolphin-fork:
no-src: true
After that, you can build the original project (only required to compile the dependencies), and lastly build your fork:
kde-builder dolphin
kde-builder dolphin-fork

I followed exactly the steps. But kde-builder dolphin-fork fails:

Building dolphin-fork (1/1)
	Source update complete for dolphin-fork: Skipped
	dolphin-fork does not seem to have a build system to use.
	Error log: 


<<<  PACKAGES FAILED TO BUILD  >>>
dolphin-fork - No log file

This does not seem to be addressed in the tutorial. What shall I do?

If you make changes to the source code you need to pass the --no-src flag (or the shortform -S) to kde-builder. Otherwise it will pull the changes from git master and overwrite your changes.

I also like to pass the --no-include-dependencies (or -D) flag so it only builds the project I make changes to, without recompiling all dependencies.

So I would use kde-builder -D -S dolphin if I had made changes to dolphin. Then you can use kde-builder --run dolphin to test your changes

3 Likes

Thanks for the quick answer! Sometimes it’s just about someone saying, it should have worked, you must have been doing something stupid. And I was… I was editing code in another directory that resulted from a previous attempt. So it was ignoring my changes.
(I still set you as solution because your answer really could have been that.)

3 Likes