Compare commits
10 Commits
431b843e4a
...
8811c923f4
Author | SHA1 | Date |
---|---|---|
|
8811c923f4 | |
|
b6b4188bc1 | |
|
83b7b4c388 | |
|
3d7aaf79b6 | |
|
7b22de81e7 | |
|
29d928c6ad | |
|
f17f13786d | |
|
c0a9098bec | |
|
d199204a53 | |
|
5d8da6198b |
|
@ -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]
|
||||
)
|
||||
|
|
10
README.md
10
README.md
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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")!
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -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",
|
||||
|
|
Loading…
Reference in New Issue