Compare commits

...

10 Commits

Author SHA1 Message Date
david-swift 8811c923f4 Update to latest Meta changes 2024-10-08 12:35:29 +02:00
david-swift b6b4188bc1 Remove action for now 2024-10-07 17:35:58 +02:00
david-swift 83b7b4c388 Fix action: executable file "node" not found 2024-10-07 17:35:13 +02:00
david-swift 3d7aaf79b6 Use CI container for GNOME 46 2024-10-07 17:25:11 +02:00
david-swift 7b22de81e7 Migrate to the Aparoksha Gitea instance 2024-10-07 17:05:31 +02:00
david-swift 29d928c6ad Add about dialog 2024-09-08 08:48:17 +02:00
david-swift f17f13786d Add Flatpak CI 2024-08-27 07:04:05 +02:00
david-swift c0a9098bec Add strip command 2024-07-19 16:00:40 +02:00
david-swift d199204a53
Merge pull request #5 from stevestreza/vscode
Add support for Visual Studio Code with a dev container
2024-06-14 09:42:07 +02:00
Steve Streza 5d8da6198b More readme notes 2024-06-14 00:32:43 -07:00
7 changed files with 91 additions and 27 deletions

View File

@ -1,4 +1,4 @@
// swift-tools-version: 5.8
// swift-tools-version: 6.0
// The swift-tools-version declares the minimum version of Swift required to build this package.
import PackageDescription
@ -9,23 +9,24 @@ let package = Package(
.macOS(.v13)
],
dependencies: [
.package(url: "https://github.com/AparokshaUI/Adwaita", from: "0.2.0"),
.package(url: "https://github.com/AparokshaUI/Localized", from: "0.2.0")
.package(url: "https://git.aparoksha.dev/aparoksha/adwaita-swift", branch: "main"),
.package(url: "https://git.aparoksha.dev/aparoksha/localized", branch: "main")
],
targets: [
.executableTarget(
name: "AdwaitaTemplate",
dependencies: [
.product(name: "Adwaita", package: "Adwaita"),
.product(name: "Localized", package: "Localized")
.product(name: "Adwaita", package: "adwaita-swift"),
.product(name: "Localized", package: "localized")
],
path: "Sources",
resources: [
.process("Localized.yml")
],
plugins: [
.plugin(name: "GenerateLocalized", package: "Localized")
.plugin(name: "GenerateLocalized", package: "localized")
]
)
]
],
swiftLanguageModes: [.v5]
)

View File

@ -3,7 +3,7 @@
<h1 align="center">Adwaita Template</h1>
</p>
_Adwaita Template_ is a template application for the [Adwaita for Swift package](https://github.com/AparokshaUI/Adwaita/).
_Adwaita Template_ is a template application for the [Adwaita for Swift package](https://adwaita-swift.aparoksha.dev/documentation/adwaita/).
## Table of Contents
@ -27,7 +27,7 @@ For designing an app icon, [App Icon Preview](https://flathub.org/apps/org.gnome
1. Open this project in the GNOME Builder. It will start downloading the dependencies.
- GNOME Builder will start downloading dependencies when opened.
- For Visual Studio Code, enable the [Dev Containers extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) and reopen the project window with the dev container. It may take a couple minutes to build.
- For Visual Studio Code, enable the [Dev Containers extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers), the [Swift extension](https://marketplace.visualstudio.com/items?itemName=sswg.swift-lang) and the [CodeLLDB extension](https://marketplace.visualstudio.com/items?itemName=vadimcn.vscode-lldb) and reopen the project window with the dev container. It may take a couple minutes to build.
2. Build and run the application.
- For GNOME Builder, use the "run" icon in the toolbar.
- For Visual Studio Code, select the "run and debug" tab in the leftmost sidebar, and then tap the run icon next to "Debug AdwaitaTemplate".
@ -41,7 +41,7 @@ For designing an app icon, [App Icon Preview](https://flathub.org/apps/org.gnome
- `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](https://david-swift.gitbook.io/adwaita/), ask questions in the [discussions](https://github.com/AparokshaUI/Adwaita/discussions/).
4. Edit the code. Help is available [here](https://adwaita-swift.aparoksha.dev/), ask questions in the [forums](https://forums.aparoksha.dev/).
5. You can edit the app's icons using the previously installed tools according to [this](https://blogs.gnome.org/tbernard/2019/12/30/designing-an-icon-for-your-app/) 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`:
@ -58,5 +58,5 @@ you can use [this tool](https://github.com/flatpak/flatpak-builder-tools/tree/ma
## Thanks
### Dependencies
- [Adwaita for Swift](https://github.com/AparokshaUI/Adwaita) licensed under the [MIT License](https://github.com/AparokshaUI/Adwaita/blob/main/LICENSE.md)
- [Localized](https://github.com/AparokshaUI/Localized) licensed under the [MIT License](https://github.com/AparokshaUI/Localized/blob/master/LICENSE.md)
- [Adwaita for Swift](https://git.aparoksha.dev/aparoksha/adwaita-swift) licensed under the [MIT License](https://git.aparoksha.dev/aparoksha/adwaita-swift/src/branch/main/LICENSE.md)
- [Localized](https://git.aparoksha.dev/aparoksha/localized) licensed under the [MIT License](https://git.aparoksha.dev/aparoksha/localized/src/branch/main/LICENSE.md)

View File

@ -6,8 +6,7 @@ import Adwaita
@main
struct AdwaitaTemplate: App {
let id = "io.github.AparokshaUI.AdwaitaTemplate"
var app: GTUIApp!
let app = AdwaitaApp(id: "io.github.AparokshaUI.AdwaitaTemplate")
var scene: Scene {
Window(id: "main") { window in

View File

@ -12,9 +12,9 @@ closeWindow:
en: Close Window
de: Fenster schliessen
quit:
en: Quit
de: Verlassen
about:
en: About AdwaitaTemplate
de: Info zu AdwaitaTemplate
mainMenu:
en: Main Menu

View File

@ -2,12 +2,13 @@ import Adwaita
struct ToolbarView: View {
var app: GTUIApp
var window: GTUIApplicationWindow
@State private var about = false
var app: AdwaitaApp
var window: AdwaitaWindow
var view: Body {
HeaderBar.end {
Menu(icon: .default(icon: .openMenu), app: app, window: window) {
Menu(icon: .default(icon: .openMenu)) {
MenuButton(Loc.newWindow, window: false) {
app.addWindow("main")
}
@ -17,14 +18,22 @@ struct ToolbarView: View {
}
.keyboardShortcut("w".ctrl())
MenuSection {
MenuButton(Loc.quit, window: false) {
app.quit()
MenuButton(Loc.about, window: false) {
about = true
}
.keyboardShortcut("q".ctrl())
}
}
.primary()
.tooltip(Loc.mainMenu)
.aboutDialog(
visible: $about,
app: "AdwaitaTemplate",
developer: "david-swift",
version: "dev",
icon: .custom(name: "io.github.AparokshaUI.AdwaitaTemplate"),
website: .init(string: "https://git.aparoksha.dev/aparoksha/adwaita-template")!,
issues: .init(string: "https://git.aparoksha.dev/aparoksha/adwaita-template/issues")!
)
}
}

View File

@ -0,0 +1,54 @@
{
"app-id": "io.github.AparokshaUI.AdwaitaTemplate",
"runtime": "org.gnome.Platform",
"runtime-version": "46",
"sdk": "org.gnome.Sdk",
"sdk-extensions": [
"org.freedesktop.Sdk.Extension.swift5"
],
"command": "AdwaitaTemplate",
"finish-args": [
"--share=ipc",
"--socket=fallback-x11",
"--device=dri",
"--socket=wayland"
],
"build-options": {
"append-path": "/usr/lib/sdk/swift5/bin",
"prepend-ld-library-path": "/usr/lib/sdk/swift5/lib"
},
"cleanup": [
"/include",
"/lib/pkgconfig",
"/man",
"/share/doc",
"/share/gtk-doc",
"/share/man",
"/share/pkgconfig",
"*.la",
"*.a"
],
"modules": [
{
"name": "AdwaitaTemplate",
"builddir": true,
"buildsystem": "simple",
"sources": [
{
"type": "dir",
"path": "."
}
],
"build-commands": [
"./setup-offline.sh",
"swift build -c release --static-swift-stdlib --skip-update",
"strip .build/release/AdwaitaTemplate",
"install -Dm755 .build/release/AdwaitaTemplate /app/bin/AdwaitaTemplate",
"install -Dm644 data/io.github.AparokshaUI.AdwaitaTemplate.metainfo.xml $DESTDIR/app/share/metainfo/io.github.AparokshaUI.AdwaitaTemplate.metainfo.xml",
"install -Dm644 data/io.github.AparokshaUI.AdwaitaTemplate.desktop $DESTDIR/app/share/applications/io.github.AparokshaUI.AdwaitaTemplate.desktop",
"install -Dm644 data/icons/io.github.AparokshaUI.AdwaitaTemplate.svg $DESTDIR/app/share/icons/hicolor/scalable/apps/io.github.AparokshaUI.AdwaitaTemplate.svg",
"install -Dm644 data/icons/io.github.AparokshaUI.AdwaitaTemplate-symbolic.svg $DESTDIR/app/share/icons/hicolor/symbolic/apps/io.github.AparokshaUI.AdwaitaTemplate-symbolic.svg"
]
}
]
}

View File

@ -1,10 +1,10 @@
{
"app-id": "io.github.AparokshaUI.AdwaitaTemplate",
"runtime": "org.gnome.Platform",
"runtime-version": "46",
"runtime-version": "47",
"sdk": "org.gnome.Sdk",
"sdk-extensions": [
"org.freedesktop.Sdk.Extension.swift5"
"org.freedesktop.Sdk.Extension.swift6"
],
"command": "AdwaitaTemplate",
"finish-args": [
@ -14,8 +14,8 @@
"--socket=wayland"
],
"build-options": {
"append-path": "/usr/lib/sdk/swift5/bin",
"prepend-ld-library-path": "/usr/lib/sdk/swift5/lib"
"append-path": "/usr/lib/sdk/swift6/bin",
"prepend-ld-library-path": "/usr/lib/sdk/swift6/lib"
},
"cleanup": [
"/include",
@ -41,6 +41,7 @@
],
"build-commands": [
"swift build -c debug --static-swift-stdlib",
"strip .build/debug/AdwaitaTemplate",
"install -Dm755 .build/debug/AdwaitaTemplate /app/bin/AdwaitaTemplate",
"install -Dm644 data/io.github.AparokshaUI.AdwaitaTemplate.metainfo.xml $DESTDIR/app/share/metainfo/io.github.AparokshaUI.AdwaitaTemplate.metainfo.xml",
"install -Dm644 data/io.github.AparokshaUI.AdwaitaTemplate.desktop $DESTDIR/app/share/applications/io.github.AparokshaUI.AdwaitaTemplate.desktop",