Skip to content
This repository was archived by the owner on Nov 26, 2025. It is now read-only.

jumpyvi/pilot-whale

 
 

Repository files navigation

Pilot Whale container manager

pilot-whale

Pilot your docker containers.

A fork of Whaler

List of Docker containers

Description

👥 Fork disclamers

This is a fork of Whaler by sdv43. This fork ports that project to GTK4 and libadwaita and adds some features.

💫 About

Pilot Whale provides basic functionality for managing Docker containers. The app can start and stop both standalone containers and docker-compose applications. Also, it supports container logs viewing.

It can also search images from DockerHub and pull images from anywhere.

The solution is perfect for those who are looking for a simple tool to perform some basic actions. For the app to run correctly, make sure that Docker is installed on your system.

📦 Installation

This app is only officially packaged for Flatpak, you can download the latest flatpak package in the releases.

To install it, simply do:

flatpak install pilot-whale-VERSION-ARCH.flatpak

This app has access to your Docker and Podman sockets by default

🚢 Usage with Podman

  1. Open Pilot Whale
  2. An error could appear (docker not detected), ignore it
  3. Click on the hamburger menu -> Preferences
  4. Replace the API socket path with something like /run/user/1000/podman/podman.sock

🛠️ Development

Development should be done in a devcontainer.
All dependencies are already present in the devcontainer.

Before setting up your IDE

  • The socket at /var/run/docker.sock must have its permissions set to 1000:docker.

  • You also need to enable xhost local connection with xhost +local:docker

  • To be able to test hyperlink in the app you can run just install-test-browser in the devcontainer

For VSCode

  1. Get VSCode, Docker and the devcontainer VSCode extension
  2. Open the project and run Dev Containers : Rebuild Container
  3. You can launch premade tasks from the VSCode task menu, this includes tasks for build and running the app.

For vim

  1. Get devcontainer-cli from linuxbrew, the aur or npm
  2. If you want to use your own VIM config uncomment Mounts for VIM config file in devcontainer.json
  3. From the project root run:
devcontainer up --workspace-folder $(pwd) && devcontainer exec --workspace-folder $(pwd) bash
  1. You can now run vim or install another editor
  2. You can launch premade tasks with just --choose, this includes tasks for build and running the app.

🏗️ Building locally, without the devcontainer

You'll need the following dependencies:

No need to manually download them if you use the devcontainer

  • gio-2.0
  • gtk4-devel
  • libgee-devel
  • gdk-pixbuf-2.0
  • json-glib-devel
  • libcurl
  • libadwaita-1
  • posix
  • meson
  • ninja
  • valac

You can also get these recommended, but optional tools for running tasks, code completion and generating doc:

  • just
  • fzf
  • valadoc
  • vala-language-server

Install all for Fedora 41/42

You will also need to get Docker for testing

sudo dnf install gtk4-devel ninja-build meson libadwaita-devel libgee-devel json-glib-devel desktop-file-utils libcurl-devel vala vala-language-server valadoc graphviz libglvnd just fzf

Install all for Arch

I recommand using paru or yay

paru -Syu gtk4 ninja meson libadwaita libgee json-glib desktop-file-utils curl libglvnd vala-language-server vala docker just fzf

🔨 Building and running

All the command must be ran from the project root

Requires just

Bild the project for the first time:

just init-build

Run ninja and launch the app

just ninja-run

(Re)install the app

just install

📚️ Generating doc

A pre-generated version of the doc is available here

just generate-valadoc

🧪 Running tests

Requires docker and an internet connection

just run-tests

License

This project is licensed under the GPL-3.0 License - see the LICENSE file for details.

About

Docker Container Management

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Vala 95.2%
  • Meson 2.8%
  • Other 2.0%