xkcd-gtk

module
v1.7.4-0...-490b905 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 29, 2026 License: GPL-3.0

README

Comic Sticks

Comic Sticks (xkcd-gtk) is a simple xkcd comic viewer written in Go using GTK+3.

screenshot

Install

Get it on AppCenter Download on Flathub

Building from source

Go Reference CI Go Report Card

Requirements

To build this program, you will need Go (version >= 1.23, something like golang or go) and GTK+ development files (version >= 3.20, something like libgtk-3-dev or gtk3-devel).

Building

Just run make from the root of the repo:

$ make
Testing

Run tests with:

$ make test
Running static analysis

In addition to the regular build requirements, running static analysis requires the following tools:

  • staticcheck (go install honnef.co/go/tools/cmd/staticcheck@latest)
  • shellcheck (apt: shellcheck)
  • xmllint (apt: libxml2-utils)
  • yamllint (apt: yamllint)
  • appstreamcli (apt: appstream)

Run static analysis with:

$ make check
Installing from source

After you have compiled the application, you can install it.

To install for all users:

$ sudo make install prefix=/usr/local

To install for the current user only (you may need to add $HOME/.local/bin to your $PATH):

$ make install prefix="$HOME/.local"
Uninstalling from source

To uninstall for all users:

$ sudo make uninstall prefix=/usr/local

To uninstall for the current user:

$ make uninstall prefix="$HOME/.local"

License

This program comes with absolutely no warranty. See the GNU General Public License, version 3 or later for details.

Directories

Path Synopsis
cmd
xkcd-gtk command
xkcd-gtk is a xkcd comic viewer app written in Go with GTK+3 (using the gotk3 bindings).
xkcd-gtk is a xkcd comic viewer app written in Go with GTK+3 (using the gotk3 bindings).
internal
app
Package app implements the xkcd-gtk application.
Package app implements the xkcd-gtk application.
bookmarks
Package bookmarks implements an efficient list for holding a numerically sorted list of user bookmarks.
Package bookmarks implements an efficient list for holding a numerically sorted list of user bookmarks.
build
Package build provides access to compile-time build information.
Package build provides access to compile-time build information.
cache
Package cache provides a cached interface to the xkcd server.
Package cache provides a cached interface to the xkcd server.
log
Package log provides functions for logging fatal errors, warnings, and debug info.
Package log provides functions for logging fatal errors, warnings, and debug info.
paths
Package paths provides information on where to find and store files.
Package paths provides information on where to find and store files.
search
Package search provides an index that allows searching through xkcd comic metadata.
Package search provides an index that allows searching through xkcd comic metadata.
state
Package state provides data structures for storing user state.
Package state provides data structures for storing user state.
style
Package style provides custom application CSS as well as other styling utilities.
Package style provides custom application CSS as well as other styling utilities.
widget
Package widget provides custom GTK+ widgets.
Package widget provides custom GTK+ widgets.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL