Skip to main content Skip to navigation

Category: GSoC

Compiling Krita for ARM: an AppImage tale

Posted on .

The AppImage running on a Raspberry Pi 3B+. It's slow, but it works 😄

Someone on #krita, can’t remember their exact nick, asked if it was possible to run Krita on ARM-based computers, specifically the Raspberry Pi 3B+. AFAIK, no one has tried to do so, so I will tell you: yes, it is possible! (Although it will run as slow as a turtle!) This work took me the whole weekend, but it was an excellent experience as well as a wonderful way to test our infrastructure.

A key warning before moving on: DO NOT TRY THIS ON YOUR PI. It will be unbearably slow 😄 I built mine with a Ryzen 7 with 12 threads and it still took me two 12-hour shifts!

This post covers three steps: setting up the build environment, compiling the dependencies and Krita itself, and finally packaging the AppImages themselves. As per the official instructions, we’ll target Ubuntu 16.04 ARM. I chose the armhf port to match the Raspberry Pi’s default distro, Raspbian. I also tested aarch64 – see the last section for the necessary changes.

Status report: Week 1

Posted on .

Hey all! This is my first report of the project’s Coding Period.

The project’s objectives for this week are:

  • define the new generator
  • build SeExpr
  • and try calling it from within Krita

I had also promised in the previous post to:

  • dissect SeExpr
  • write up a list of the supported libraries in each OS.

Status report: Community Bonding

Posted on .

Good morning everyone!

I’m checking in today to let you know what I did in my GSoC project these past weeks. This Community Bonding period was really wonderful; although I’ve been more or less involved with the project since 2016, I’ve acquainted myself with the efforts of each of the members, and so far it’s been a wonderful experience.

During these past weeks, I’ve been preparing for the coding period by talking with Boudewijn and Wolthera about the particulars of Krita’s file format and build system. The objectives for the past two meetings were:

  • speccing the new layer
  • integrating SeExpr into Krita’s dependency build system
  • document the process

This post summarizes my efforts on each of these bits. I apologise for the late post; but this week I got to attend (virtually) my first Eurographics and LGM sessions, and with the homework load, it’s been some wild days.

Without further ado, let’s see how deep this rabbit hole goes.

What is SeExpr about?

Posted on .

Good morning everyone!

For this Community Bonding period post, I want to write about what this project is about. I’ve gotten some questions about its scope and how it will benefit the Krita community, so a full writeup may help clarify these bits. As I’m a Computer Graphics student, this post may be biased towards the math-y bits, but I hope it’s still clear.

Let’s get started!

Developing Krita in Visual Studio Code, part 3

Posted on .

Everyone uses deevad's pics for Krita's building instructions 😄 Credits: David Revoy, CC-BY-4.0

Hi again, everyone! This is the final post for this series, in which I’ll show you how to set Krita up in Visual Studio Code. For this post, we’ll cover the Windows operating system. I’ll show you how to take advantage of the same build scripts maintainers use for building the Windows releases.

Developing Krita in Visual Studio Code, part 2

Posted on .

Everyone uses deevad's pics for Krita's building instructions 😄 Credits: David Revoy, CC-BY-4.0

Hi again! This is the second installment of this series. Today’s post will cover how to set Krita up in Visual Studio Code, under macOS. I’ll show you how to take advantage of the same build scripts Iván and Boudewijn use for building the Mac releases.

Developing Krita in Visual Studio Code, part 1

Posted on .

Everyone uses deevad's pics for Krita's building instructions 😄 Credits: David Revoy, CC-BY-4.0

Hi all! As part of our Community Bonding period, I wanted to share my experience setting up a development environment for Krita. We already have David Revoy’s post and the official, updated documentation. However, they only cover the setup process in Linux.

I’ll show you how to set Krita up in Visual Studio Code, under the three major desktop OSes: Linux, Windows, and macOS. For the latter two, I’ll show you how to use the same build scripts maintainers use for building the releases. We’ll take advantage of Visual Studio Code’s Tasks, so you do the hard work once, and then you’ll be able to compile dependencies AND run Krita in a few keystrokes!

Today’s post will tell you how to set Visual Studio Code up in Linux.