From 62cf4d0c7fd2bd585f79c1fda6033f9dee7f60b6 Mon Sep 17 00:00:00 2001 From: Juan Gilsanz Polo Date: Thu, 4 May 2023 18:23:01 +0200 Subject: [PATCH] Changed linux build method --- .gitignore | 2 ++ README.md | 21 +++++++++++++-------- assets/icon/icon-circle-256.png | Bin 0 -> 3246 bytes debian/debian.yaml | 2 +- linux/CMakeLists.txt | 2 +- linux/build-app.sh | 30 ++++++++++++++++++++++++++++++ linux/my_application.cc | 7 +++++++ pubspec.yaml | 5 +++++ 8 files changed, 59 insertions(+), 10 deletions(-) create mode 100644 assets/icon/icon-circle-256.png create mode 100755 linux/build-app.sh diff --git a/.gitignore b/.gitignore index 24476c5..0bc0e3e 100644 --- a/.gitignore +++ b/.gitignore @@ -42,3 +42,5 @@ app.*.map.json /android/app/debug /android/app/profile /android/app/release + +/debian/packages \ No newline at end of file diff --git a/README.md b/README.md index 293e8fb..1ee0985 100644 --- a/README.md +++ b/README.md @@ -60,14 +60,19 @@ On [this repository](https://github.com/JuanRodenas/Pihole_list) you can find a
  • Linux -
      -
    1. flutter clean
    2. -
    3. flutter pub get
    4. -
    5. flutter build linux --release
    6. -
    7. Open debian.yaml file inside debian/ and update the version number
    8. -
    9. Run flutter_to_debian
    10. -
    11. The .deb package is at debian/packages
    12. -
    +
  • Windows diff --git a/assets/icon/icon-circle-256.png b/assets/icon/icon-circle-256.png new file mode 100644 index 0000000000000000000000000000000000000000..517e26ac3758f378bacb2a24c96dbbb08f561955 GIT binary patch literal 3246 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 P-#wt)I@vt5_Kp1?2o~0B literal 0 HcmV?d00001 diff --git a/debian/debian.yaml b/debian/debian.yaml index ddc864c..df64eae 100644 --- a/debian/debian.yaml +++ b/debian/debian.yaml @@ -1,5 +1,5 @@ flutter_app: - command: adguard_home_manager + command: AdGuardHomeManager arch: x64 parent: /usr/local/lib diff --git a/linux/CMakeLists.txt b/linux/CMakeLists.txt index bf11fa4..273981d 100644 --- a/linux/CMakeLists.txt +++ b/linux/CMakeLists.txt @@ -4,7 +4,7 @@ project(runner LANGUAGES CXX) # The name of the executable created for the application. Change this to change # the on-disk name of your application. -set(BINARY_NAME "adguard_home_manager") +set(BINARY_NAME "AdGuardHomeManager") # The unique GTK application identifier for this application. See: # https://wiki.gnome.org/HowDoI/ChooseApplicationID set(APPLICATION_ID "com.jgeek00.adguard_home_manager") diff --git a/linux/build-app.sh b/linux/build-app.sh new file mode 100755 index 0000000..513fd3b --- /dev/null +++ b/linux/build-app.sh @@ -0,0 +1,30 @@ +#!/bin/bash + + +# Build the Flutter app and package into an archive. + + +# Exit if any command fails +set -e + +# Echo all commands for debug purposes +set -x + + +projectName=AdGuard-Home-Manager + +archiveName=$projectName-Linux.tar.gz +baseDir=$(pwd) + + +# ----------------------------- Build Flutter app ---------------------------- # + +flutter clean +flutter pub get +flutter build linux --release + +flutter_to_debian + +cd build/linux/x64/release/bundle || exit +mv "AdGuardHomeManager" "AdGuard Home Manager" +tar -czaf $archiveName ./* \ No newline at end of file diff --git a/linux/my_application.cc b/linux/my_application.cc index 1f79b20..49e0a92 100644 --- a/linux/my_application.cc +++ b/linux/my_application.cc @@ -51,6 +51,13 @@ static void my_application_activate(GApplication* application) { gtk_widget_show(GTK_WIDGET(window)); g_autoptr(FlDartProject) project = fl_dart_project_new(); + + g_autoptr(GError) error = nullptr; + gtk_window_set_icon_from_file(window, g_strconcat(fl_dart_project_get_assets_path(project), "/assets/icon/icon-circle-256.png", NULL), &error); + if (error != nullptr) { + g_warning("Failed to set icon: %s", error->message); + } + fl_dart_project_set_dart_entrypoint_arguments(project, self->dart_entrypoint_arguments); FlView* view = fl_view_new(project); diff --git a/pubspec.yaml b/pubspec.yaml index b9bc0cf..6d6f8ce 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -22,6 +22,10 @@ version: 2.0.0+53 environment: sdk: '>=2.18.1 <3.0.0' +scripts: + build: + linux: "./linux/build-app.sh" + # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions # consider running `flutter pub upgrade --major-versions`. Alternatively, @@ -121,6 +125,7 @@ flutter: - assets/icon/icon-splash.png - assets/icon/icon-macos.png - assets/icon/icon-circle.png + - assets/icon/icon-circle-256.png - assets/icon/icon1024-white-center.png - assets/other/get_google_play.png - assets/resources/github.svg