/AdwaitaTemplate

A template application repository for the Adwaita library

Primary LanguageSwiftGNU General Public License v3.0GPL-3.0

Adwaita Template Icon

Adwaita Template

Adwaita Template is a template application for the Adwaita for Swift package.

Table of Contents

Installation

Install the GNOME Builder IDE.

For designing an app icon, App Icon Preview and Inkscape are recommended.

Note

You do not have to install any dependencies of Adwaita for Swift, including Swift, on your system. The Adwaita template runs in a Flatpak. The GNOME Builder will automatically download dependencies from Flathub.

Usage

  1. Open this project in the GNOME Builder. It will start downloading the dependencies.
  2. Build and run the application using the "run" icon in the toolbar.
  3. Change the app's name and other information about the application in the following files (and file names):
    • README.md
    • Package.swift
    • io.github.AparokshaUI.AdwaitaTemplate.json
    • Sources/AdwaitaTemplate.swift
    • data/io.github.AparokshaUI.AdwaitaTemplate.metainfo.xml
    • data/io.github.AparokshaUI.AdwaitaTemplate.desktop
    • data/icons/io.github.AparokshaUI.AdwaitaTemplate.Source.svg
    • data/icons/io.github.AparokshaUI.AdwaitaTemplate.svg
    • data/icons/io.github.AparokshaUI.AdwaitaTemplate-symbolic.svg
  4. Edit the code. Help is available here, ask questions in the discussions.
  5. You can edit the app's icons using the previously installed tools according to this tutorial.
  6. In GNOME Builder, click on the dropdown next to the hammer and then on Export. Wait until the file manager appears, open the .flatpak file and install the app on your device!
  7. If you want to publish your app, replace debug in the following build commands by release:
"swift build -c debug --static-swift-stdlib",
"install -Dm755 .build/debug/AdwaitaTemplate /app/bin/AdwaitaTemplate",

Flatpak SPM Generator

If you want to e.g. publish your app on Flathub where no internet connection is allowed while running the build commands, you can use this tool that lets you generate a Flatpak manifest JSON from a Swift package.

Thanks

Dependencies