mirror of
https://github.com/Dr-Blank/Vaani.git
synced 2025-12-06 02:59:28 +00:00
feat: deeplinks for linux (#84)
Some checks failed
Some checks failed
This commit is contained in:
parent
db20682004
commit
4619657f00
3 changed files with 76 additions and 4 deletions
45
docs/linux_build_guide.md
Normal file
45
docs/linux_build_guide.md
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
# Linux Build Guide
|
||||
|
||||
## Determining Package Size
|
||||
To determine the installed size for your Linux package configuration, you can use the following script:
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
|
||||
# Build the Linux app
|
||||
flutter build linux
|
||||
|
||||
# Get size in KB and add 17% buffer for runtime dependencies
|
||||
SIZE_KB=$(du -sk build/linux/x64/release/bundle | cut -f1)
|
||||
BUFFER_SIZE_KB=$(($SIZE_KB + ($SIZE_KB * 17 / 100)))
|
||||
|
||||
echo "Actual bundle size: $SIZE_KB KB"
|
||||
echo "Recommended installed_size (with 17% buffer): $BUFFER_SIZE_KB KB"
|
||||
```
|
||||
|
||||
Save this as `get_package_size.sh` in your project root and make it executable:
|
||||
```bash
|
||||
chmod +x get_package_size.sh
|
||||
```
|
||||
|
||||
### Usage
|
||||
1. Run the script:
|
||||
```bash
|
||||
./get_package_size.sh
|
||||
```
|
||||
2. Use the output value for `installed_size` in your `linux/packaging/deb/make_config.yaml` file:
|
||||
```yaml
|
||||
installed_size: 75700 # Replace with the value from the script
|
||||
```
|
||||
|
||||
### Why add a buffer?
|
||||
The 17% buffer is added to account for:
|
||||
- Runtime dependencies
|
||||
- Future updates
|
||||
- Potential additional assets
|
||||
- Prevent installation issues on systems with limited space
|
||||
|
||||
### Notes
|
||||
- The installed size should be specified in kilobytes (KB)
|
||||
- Always round up the buffer size to be safe
|
||||
- Re-run this script after significant changes to your app (new assets, dependencies, etc.)
|
||||
|
|
@ -17,6 +17,14 @@ G_DEFINE_TYPE(MyApplication, my_application, GTK_TYPE_APPLICATION)
|
|||
// Implements GApplication::activate.
|
||||
static void my_application_activate(GApplication* application) {
|
||||
MyApplication* self = MY_APPLICATION(application);
|
||||
|
||||
GList *windows = gtk_application_get_windows(GTK_APPLICATION(application));
|
||||
if (windows)
|
||||
{
|
||||
gtk_window_present(GTK_WINDOW(windows->data));
|
||||
return;
|
||||
}
|
||||
|
||||
GtkWindow* window =
|
||||
GTK_WINDOW(gtk_application_window_new(GTK_APPLICATION(application)));
|
||||
|
||||
|
|
@ -78,7 +86,7 @@ static gboolean my_application_local_command_line(GApplication* application, gch
|
|||
g_application_activate(application);
|
||||
*exit_status = 0;
|
||||
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Implements GApplication::startup.
|
||||
|
|
@ -119,6 +127,6 @@ static void my_application_init(MyApplication* self) {}
|
|||
MyApplication* my_application_new() {
|
||||
return MY_APPLICATION(g_object_new(my_application_get_type(),
|
||||
"application-id", APPLICATION_ID,
|
||||
"flags", G_APPLICATION_NON_UNIQUE,
|
||||
"flags", G_APPLICATION_HANDLES_COMMAND_LINE | G_APPLICATION_HANDLES_OPEN,
|
||||
nullptr));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,6 +15,20 @@ essential: false
|
|||
|
||||
icon: assets/icon/logo.png
|
||||
|
||||
description:
|
||||
short: Beautiful, Fast and Functional Audiobook Player for your Audiobookshelf server.
|
||||
long: |
|
||||
Vaani is a client for your (self-hosted) Audiobookshelf server.
|
||||
|
||||
Features:
|
||||
- Functional Player: Speed Control, Sleep Timer, Shake to Control Player
|
||||
- Save data with Offline listening and caching
|
||||
- Material Design
|
||||
- Extensive Settings to customize every tiny detail
|
||||
|
||||
Note: you need an Audiobookshelf server setup for this app to work.
|
||||
Please see https://www.audiobookshelf.org/ on how to setup one if not already.
|
||||
|
||||
postuninstall_scripts:
|
||||
- echo "Sorry to see you go."
|
||||
|
||||
|
|
@ -26,7 +40,12 @@ keywords:
|
|||
generic_name: Audiobook Player
|
||||
|
||||
categories:
|
||||
- Media
|
||||
- Utility
|
||||
- AudioVideo
|
||||
- Audio
|
||||
- Player
|
||||
|
||||
startup_notify: true
|
||||
|
||||
# https://github.com/llfbandit/app_links/blob/051f53fa6039cbfaef0fcde73df20fef9e248cab/doc/README_linux.md
|
||||
supported_mime_type:
|
||||
- x-scheme-handler/vaani
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue