diff --git a/README.md b/README.md
index 0a4af9d..a81e1dd 100644
--- a/README.md
+++ b/README.md
@@ -44,18 +44,28 @@ On [this repository](https://github.com/JuanRodenas/Pihole_list) you can find a
## Generate production build
+ -
+ Prerequisites
+
+ - Open
pubspec.yaml
and change the version name and the version number.
+ - Run
flutter clean
.
+ - Run
flutter pub get
.
+
+
+ -
+ Android
+
+ - Make sure you have your
key.properties
file at android/
, with all the required values of your signing key correctly set up.
+ - Make sure you have your keystore file at
android/app
.
+ - Run
flutter build apk --release
to compile the APK.
+ - The .apk package is located at
build/app/outputs/flutter-apk/app-release.apk
.
+
+
-
macOS
- - flutter clean
- - flutter pub get
- - flutter build macos --release
- - Open macos/Runner.xcworkspace on Xcode
- - Make sure all the pods have the minimum deployment version at 10.14
- - Select Runner > Targets Runner
- - Make sure the Version and Build numbers are correct
- - Click on Product menu and on Archive
- - Select the first on the list and click on Distribute app, select Copy App and click on Next
+ - Run
flutter build macos --release
to compile the production build.
+ - The .app package is located at
build/macos/Build/Products/Release/AdGuard Home Manager.app
.
-
@@ -67,24 +77,22 @@ On [this repository](https://github.com/JuanRodenas/Pihole_list) you can find a
Build
- - Open debian.yaml file inside debian/ and update the version number
+ - Open
debian.yaml
file inside debian/ and update the version number
- run
rps build linux
- - The .tar.gz is at build/linux/x64/release/bundle
- - The .deb package is at debian/packages
+ - The .tar.gz is at
build/linux/x64/release/bundle
+ - The .deb package is at
debian/packages
Windows
- - flutter clean
- - flutter pub get
- - flutter build windows
+ - Run
flutter build windows --release
.
- Open Inno Setup Compiler application and load the script
- - The script is located at windows/innosetup_installer_builder.iss
+ - The script is located at
windows/innosetup_installer_builder.iss
- Update the version number and save the changes
- Click on the Compile button
- - The installer will be generated at build/windows/aghm_installer.exe
+ - The installer will be generated at
build/windows/aghm_installer.exe
.
diff --git a/android/key.properties.sample b/android/key.properties.sample
new file mode 100644
index 0000000..b51dc2c
--- /dev/null
+++ b/android/key.properties.sample
@@ -0,0 +1,4 @@
+storePassword= # keystore password #
+keyPassword= # keystore key password #
+keyAlias= # key alias #
+storeFile= # ./keystore-file-name.jks #
\ No newline at end of file
diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb
index 6bf0c27..3778a60 100644
--- a/lib/l10n/app_en.arb
+++ b/lib/l10n/app_en.arb
@@ -725,5 +725,6 @@
"nameInvalid": "Name is required",
"oneIdentifierRequired": "At least one identifier is required",
"dnsCacheNumber": "DNS cache size must be a number",
- "errors": "Errors"
+ "errors": "Errors",
+ "redirectHttpsWarning": "If you have enabled \"Redirect to HTTPS automatically\" on your AdGuard Home server, you must select an HTTPS connection and use the HTTPS port of your server."
}
\ No newline at end of file
diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb
index a6a222b..03e3440 100644
--- a/lib/l10n/app_es.arb
+++ b/lib/l10n/app_es.arb
@@ -725,5 +725,6 @@
"nameInvalid": "Se requiere un nombre",
"oneIdentifierRequired": "Se require al menos un identificador",
"dnsCacheNumber": "El tamaño de caché de DNS debe ser un número",
- "errors": "Errores"
+ "errors": "Errores",
+ "redirectHttpsWarning": "Si tienes activado \"Redireccionar a HTTPS automáticamente\" en tu servidor AdGuard Home, debes seleccionar una conexión HTTPS y utilizar el puerto de HTTPS de tu servidor."
}
\ No newline at end of file
diff --git a/lib/providers/dns_provider.dart b/lib/providers/dns_provider.dart
index c5809af..84b86cd 100644
--- a/lib/providers/dns_provider.dart
+++ b/lib/providers/dns_provider.dart
@@ -119,7 +119,7 @@ class DnsProvider with ChangeNotifier {
if (result.successful == true) {
DnsInfo data = dnsInfo!;
- data.bootstrapDns = List.from(value['fallback_dns']);
+ data.fallbackDns = List.from(value['fallback_dns']);
setDnsInfoData(data);
return result;
}
diff --git a/lib/screens/logs/logs.dart b/lib/screens/logs/logs.dart
index 757c949..560db9c 100644
--- a/lib/screens/logs/logs.dart
+++ b/lib/screens/logs/logs.dart
@@ -21,7 +21,7 @@ class _LogsState extends State {
Widget build(BuildContext context) {
return LayoutBuilder(
builder: (context, constraints) {
- if (constraints.maxWidth > 1000) {
+ if (constraints.maxWidth > 800) {
return Material(
color: Colors.transparent,
child: Row(
diff --git a/lib/screens/settings/dns/fallback_dns.dart b/lib/screens/settings/dns/fallback_dns.dart
index 4df30c9..dcae0a2 100644
--- a/lib/screens/settings/dns/fallback_dns.dart
+++ b/lib/screens/settings/dns/fallback_dns.dart
@@ -34,11 +34,7 @@ class _FallbackDnsScreenState extends State {
}
void checkValidValues() {
- if (
- fallbackControllers.isNotEmpty &&
- fallbackControllers.every((element) => element['controller'].text != '') &&
- fallbackControllers.every((element) => element['error'] == null)
- ) {
+ if (fallbackControllers.every((element) => element['error'] == null)) {
setState(() => validValues = true);
}
else {
diff --git a/lib/widgets/add_server/add_server_modal.dart b/lib/widgets/add_server/add_server_modal.dart
index e30d1e0..ac7d4a1 100644
--- a/lib/widgets/add_server/add_server_modal.dart
+++ b/lib/widgets/add_server/add_server_modal.dart
@@ -127,6 +127,7 @@ class _AddServerModalState extends State {
if (status == AuthStatus.manyAttepts) return AppLocalizations.of(context)!.tooManyAttempts;
if (status == AuthStatus.socketException || status == AuthStatus.timeoutException) return AppLocalizations.of(context)!.cantReachServer;
if (status == AuthStatus.serverError) return AppLocalizations.of(context)!.serverError;
+ if (status == AuthStatus.handshakeException) return AppLocalizations.of(context)!.sslError;
return AppLocalizations.of(context)!.unknownError;
}
@@ -429,6 +430,24 @@ class _AddServerModalState extends State {
horizontal: 24,
),
),
+ Card(
+ margin: const EdgeInsets.only(
+ top: 16, left: 24, right: 24
+ ),
+ child: Padding(
+ padding: const EdgeInsets.all(16),
+ child: Row(
+ children: [
+ Icon(
+ Icons.warning_rounded,
+ color: Theme.of(context).colorScheme.onSurfaceVariant,
+ ),
+ const SizedBox(width: 16),
+ Flexible(child: Text(AppLocalizations.of(context)!.redirectHttpsWarning))
+ ],
+ ),
+ ),
+ ),
if (connectionType == ConnectionType.https) Card(
margin: const EdgeInsets.only(
top: 16, left: 24, right: 24
@@ -437,7 +456,10 @@ class _AddServerModalState extends State {
padding: const EdgeInsets.all(16),
child: Row(
children: [
- const Icon(Icons.info_rounded),
+ Icon(
+ Icons.info_rounded,
+ color: Theme.of(context).colorScheme.onSurfaceVariant,
+ ),
const SizedBox(width: 16),
Flexible(child: Text(AppLocalizations.of(context)!.sslWarning))
],
diff --git a/macos/Podfile.lock b/macos/Podfile.lock
index 32c37ec..9d30918 100644
--- a/macos/Podfile.lock
+++ b/macos/Podfile.lock
@@ -9,13 +9,13 @@ PODS:
- FMDB/standard (2.7.5)
- package_info_plus (0.0.1):
- FlutterMacOS
- - Sentry/HybridSDK (8.15.2):
- - SentryPrivate (= 8.15.2)
+ - Sentry/HybridSDK (8.17.2):
+ - SentryPrivate (= 8.17.2)
- sentry_flutter (0.0.1):
- Flutter
- FlutterMacOS
- - Sentry/HybridSDK (= 8.15.2)
- - SentryPrivate (8.15.2)
+ - Sentry/HybridSDK (= 8.17.2)
+ - SentryPrivate (8.17.2)
- sqflite (0.0.2):
- FlutterMacOS
- FMDB (>= 2.7.5)
@@ -83,9 +83,9 @@ SPEC CHECKSUMS:
FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a
package_info_plus: 02d7a575e80f194102bef286361c6c326e4c29ce
- Sentry: 6f5742b4c47c17c9adcf265f6f328cf4a0ed1923
- sentry_flutter: 2c309a1d4b45e59d02cfa15795705687f1e2081b
- SentryPrivate: b2f7996f37781080f04a946eb4e377ff63c64195
+ Sentry: 64a9f9c3637af913adcf53deced05bbe452d1410
+ sentry_flutter: 57912cf425e09398bdf47f38842a1fcb9836f1be
+ SentryPrivate: 024c6fed507ac39ae98e6d087034160f942920d5
sqflite: a5789cceda41d54d23f31d6de539d65bb14100ea
sqlite3: 6e2d4a4879854d0ec86b476bf3c3e30870bac273
sqlite3_flutter_libs: a25f3a0f522fdcd8fef6a4a50a3d681dd43d8dea
diff --git a/pubspec.lock b/pubspec.lock
index 963ce6f..cf61106 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -13,10 +13,10 @@ packages:
dependency: "direct main"
description:
name: animations
- sha256: "708e4b68c23228c264b038fe7003a2f5d01ce85fc64d8cae090e86b27fcea6c5"
+ sha256: d3d6dcfb218225bbe68e87ccf6378bbb2e32a94900722c5f81611dad089911cb
url: "https://pub.dev"
source: hosted
- version: "2.0.10"
+ version: "2.0.11"
ansicolor:
dependency: transitive
description:
@@ -29,10 +29,10 @@ packages:
dependency: transitive
description:
name: archive
- sha256: "7b875fd4a20b165a3084bd2d210439b22ebc653f21cea4842729c0c30c82596b"
+ sha256: "22600aa1e926be775fa5fe7e6894e7fb3df9efda8891c73f70fb3262399a432d"
url: "https://pub.dev"
source: hosted
- version: "3.4.9"
+ version: "3.4.10"
args:
dependency: transitive
description:
@@ -77,10 +77,10 @@ packages:
dependency: transitive
description:
name: cli_util
- sha256: b8db3080e59b2503ca9e7922c3df2072cf13992354d5e944074ffa836fba43b7
+ sha256: c05b7406fdabc7a49a3929d4af76bcaccbbffcbcdcf185b082e1ae07da323d19
url: "https://pub.dev"
source: hosted
- version: "0.4.0"
+ version: "0.4.1"
clock:
dependency: transitive
description:
@@ -157,10 +157,10 @@ packages:
dependency: "direct main"
description:
name: dynamic_color
- sha256: "8b8bd1d798bd393e11eddeaa8ae95b12ff028bf7d5998fc5d003488cd5f4ce2f"
+ sha256: a866f1f8947bfdaf674d7928e769eac7230388a2e7a2542824fad4bb5b87be3b
url: "https://pub.dev"
source: hosted
- version: "1.6.8"
+ version: "1.6.9"
equatable:
dependency: transitive
description:
@@ -201,14 +201,22 @@ packages:
url: "https://pub.dev"
source: hosted
version: "7.0.0"
+ fixnum:
+ dependency: transitive
+ description:
+ name: fixnum
+ sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1"
+ url: "https://pub.dev"
+ source: hosted
+ version: "1.1.0"
fl_chart:
dependency: "direct main"
description:
name: fl_chart
- sha256: "5a74434cc83bf64346efb562f1a06eefaf1bcb530dc3d96a104f631a1eff8d79"
+ sha256: fe6fec7d85975a99c73b9515a69a6e291364accfa0e4a5b3ce6de814d74b9a1c
url: "https://pub.dev"
source: hosted
- version: "0.65.0"
+ version: "0.66.0"
flutter:
dependency: "direct main"
description: flutter
@@ -263,18 +271,18 @@ packages:
dependency: "direct main"
description:
name: flutter_markdown
- sha256: "35108526a233cc0755664d445f8a6b4b61e6f8fe993b3658b80b4a26827fc196"
+ sha256: "30088ce826b5b9cfbf9e8bece34c716c8a59fa54461dcae1e4ac01a94639e762"
url: "https://pub.dev"
source: hosted
- version: "0.6.18+2"
+ version: "0.6.18+3"
flutter_native_splash:
dependency: "direct dev"
description:
name: flutter_native_splash
- sha256: "141b20f15a2c4fe6e33c49257ca1bc114fc5c500b04fcbc8d75016bb86af672f"
+ sha256: "9cdb5d9665dab5d098dc50feab74301c2c228cd02ca25c9b546ab572cebcd6af"
url: "https://pub.dev"
source: hosted
- version: "2.3.8"
+ version: "2.3.9"
flutter_reorderable_list:
dependency: "direct main"
description:
@@ -346,10 +354,10 @@ packages:
dependency: transitive
description:
name: image
- sha256: "028f61960d56f26414eb616b48b04eb37d700cbe477b7fb09bf1d7ce57fd9271"
+ sha256: "004a2e90ce080f8627b5a04aecb4cdfac87d2c3f3b520aa291260be5a32c033d"
url: "https://pub.dev"
source: hosted
- version: "4.1.3"
+ version: "4.1.4"
intl:
dependency: "direct main"
description:
@@ -490,18 +498,18 @@ packages:
dependency: transitive
description:
name: plugin_platform_interface
- sha256: f4f88d4a900933e7267e2b353594774fc0d07fb072b47eedcd5b54e1ea3269f8
+ sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02"
url: "https://pub.dev"
source: hosted
- version: "2.1.7"
+ version: "2.1.8"
pointycastle:
dependency: transitive
description:
name: pointycastle
- sha256: "7c1e5f0d23c9016c5bbd8b1473d0d3fb3fc851b876046039509e18e0c7485f2c"
+ sha256: "43ac87de6e10afabc85c445745a7b799e04de84cebaa4fd7bf55a5e1e9604d29"
url: "https://pub.dev"
source: hosted
- version: "3.7.3"
+ version: "3.7.4"
provider:
dependency: "direct main"
description:
@@ -522,18 +530,18 @@ packages:
dependency: transitive
description:
name: sentry
- sha256: e7ded42974bac5f69e4ca4ddc57d30499dd79381838f24b7e8fd9aa4139e7b79
+ sha256: "89e426587b0879e53c46a0aae0eb312696d9d2d803ba14b252a65cc24b1416a2"
url: "https://pub.dev"
source: hosted
- version: "7.13.2"
+ version: "7.14.0"
sentry_flutter:
dependency: "direct main"
description:
name: sentry_flutter
- sha256: d6f55ec7a1f681784165021f749007712a72ff57eadf91e963331b6ae326f089
+ sha256: fd089ee4e75a927be037c56815a0a54af5a519f52b803a5ffecb589bb36e2401
url: "https://pub.dev"
source: hosted
- version: "7.13.2"
+ version: "7.14.0"
sky_engine:
dependency: transitive
description: flutter
@@ -567,26 +575,26 @@ packages:
dependency: transitive
description:
name: sqflite_common
- sha256: bb4738f15b23352822f4c42a531677e5c6f522e079461fd240ead29d8d8a54a6
+ sha256: "76db4d324c8cbb16ca5b60ad2f3d25cec953107c93ae65aafa480d3e6fb69f14"
url: "https://pub.dev"
source: hosted
- version: "2.5.0+2"
+ version: "2.5.2-1"
sqflite_common_ffi:
dependency: "direct main"
description:
name: sqflite_common_ffi
- sha256: "873677ee78738a723d1ded4ccb23980581998d873d30ee9c331f6a81748663ff"
+ sha256: d0e3f0d04fdf668e57db8db1df758f56c4193cb429092c708e7bfcc6ab04b27e
url: "https://pub.dev"
source: hosted
- version: "2.3.1"
+ version: "2.3.2"
sqlite3:
dependency: transitive
description:
name: sqlite3
- sha256: "8922805564b78eb7aa9386c10056d377a541ac7270dc6a1589176277ebb4d15d"
+ sha256: c4a4c5a4b2a32e2d0f6837b33d7c91a67903891a5b7dbe706cf4b1f6b0c798c5
url: "https://pub.dev"
source: hosted
- version: "2.2.0"
+ version: "2.3.0"
sqlite3_flutter_libs:
dependency: "direct main"
description:
@@ -631,10 +639,10 @@ packages:
dependency: transitive
description:
name: synchronized
- sha256: "5fcbd27688af6082f5abd611af56ee575342c30e87541d0245f7ff99faa02c60"
+ sha256: "539ef412b170d65ecdafd780f924e5be3f60032a1128df156adad6c5b373d558"
url: "https://pub.dev"
source: hosted
- version: "3.1.0"
+ version: "3.1.0+1"
term_glyph:
dependency: transitive
description:
@@ -671,34 +679,34 @@ packages:
dependency: "direct main"
description:
name: url_launcher
- sha256: e9aa5ea75c84cf46b3db4eea212523591211c3cf2e13099ee4ec147f54201c86
+ sha256: d25bb0ca00432a5e1ee40e69c36c85863addf7cc45e433769d61bed3fe81fd96
url: "https://pub.dev"
source: hosted
- version: "6.2.2"
+ version: "6.2.3"
url_launcher_android:
dependency: transitive
description:
name: url_launcher_android
- sha256: "31222ffb0063171b526d3e569079cf1f8b294075ba323443fdc690842bfd4def"
+ sha256: "507dc655b1d9cb5ebc756032eb785f114e415f91557b73bf60b7e201dfedeb2f"
url: "https://pub.dev"
source: hosted
- version: "6.2.0"
+ version: "6.2.2"
url_launcher_ios:
dependency: transitive
description:
name: url_launcher_ios
- sha256: bba3373219b7abb6b5e0d071b0fe66dfbe005d07517a68e38d4fc3638f35c6d3
+ sha256: "75bb6fe3f60070407704282a2d295630cab232991eb52542b18347a8a941df03"
url: "https://pub.dev"
source: hosted
- version: "6.2.1"
+ version: "6.2.4"
url_launcher_linux:
dependency: transitive
description:
name: url_launcher_linux
- sha256: "9f2d390e096fdbe1e6e6256f97851e51afc2d9c423d3432f1d6a02a8a9a8b9fd"
+ sha256: ab360eb661f8879369acac07b6bb3ff09d9471155357da8443fd5d3cf7363811
url: "https://pub.dev"
source: hosted
- version: "3.1.0"
+ version: "3.1.1"
url_launcher_macos:
dependency: transitive
description:
@@ -711,58 +719,58 @@ packages:
dependency: transitive
description:
name: url_launcher_platform_interface
- sha256: "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50"
+ sha256: a932c3a8082e118f80a475ce692fde89dc20fddb24c57360b96bc56f7035de1f
url: "https://pub.dev"
source: hosted
- version: "2.2.0"
+ version: "2.3.1"
url_launcher_web:
dependency: transitive
description:
name: url_launcher_web
- sha256: "7286aec002c8feecc338cc33269e96b73955ab227456e9fb2a91f7fab8a358e9"
+ sha256: fff0932192afeedf63cdd50ecbb1bc825d31aed259f02bb8dba0f3b729a5e88b
url: "https://pub.dev"
source: hosted
- version: "2.2.2"
+ version: "2.2.3"
url_launcher_windows:
dependency: transitive
description:
name: url_launcher_windows
- sha256: "7754a1ad30ee896b265f8d14078b0513a4dba28d358eabb9d5f339886f4a1adc"
+ sha256: ecf9725510600aa2bb6d7ddabe16357691b6d2805f66216a97d1b881e21beff7
url: "https://pub.dev"
source: hosted
- version: "3.1.0"
+ version: "3.1.1"
uuid:
dependency: "direct main"
description:
name: uuid
- sha256: df5a4d8f22ee4ccd77f8839ac7cb274ebc11ef9adcce8b92be14b797fe889921
+ sha256: cd210a09f7c18cbe5a02511718e0334de6559871052c90a90c0cca46a4aa81c8
url: "https://pub.dev"
source: hosted
- version: "4.2.1"
+ version: "4.3.3"
vector_graphics:
dependency: transitive
description:
name: vector_graphics
- sha256: "0f0c746dd2d6254a0057218ff980fc7f5670fd0fcf5e4db38a490d31eed4ad43"
+ sha256: "18f6690295af52d081f6808f2f7c69f0eed6d7e23a71539d75f4aeb8f0062172"
url: "https://pub.dev"
source: hosted
- version: "1.1.9+1"
+ version: "1.1.9+2"
vector_graphics_codec:
dependency: transitive
description:
name: vector_graphics_codec
- sha256: "0edf6d630d1bfd5589114138ed8fada3234deacc37966bec033d3047c29248b7"
+ sha256: "531d20465c10dfac7f5cd90b60bbe4dd9921f1ec4ca54c83ebb176dbacb7bb2d"
url: "https://pub.dev"
source: hosted
- version: "1.1.9+1"
+ version: "1.1.9+2"
vector_graphics_compiler:
dependency: transitive
description:
name: vector_graphics_compiler
- sha256: d24333727332d9bd20990f1483af4e09abdb9b1fc7c3db940b56ab5c42790c26
+ sha256: "03012b0a33775c5530576b70240308080e1d5050f0faf000118c20e6463bc0ad"
url: "https://pub.dev"
source: hosted
- version: "1.1.9+1"
+ version: "1.1.9+2"
vector_math:
dependency: transitive
description:
@@ -783,10 +791,10 @@ packages:
dependency: transitive
description:
name: win32
- sha256: b0f37db61ba2f2e9b7a78a1caece0052564d1bc70668156cf3a29d676fe4e574
+ sha256: "464f5674532865248444b4c3daca12bd9bf2d7c47f759ce2617986e7229494a8"
url: "https://pub.dev"
source: hosted
- version: "5.1.1"
+ version: "5.2.0"
win32_registry:
dependency: transitive
description:
diff --git a/pubspec.yaml b/pubspec.yaml
index 5edc2c7..e4dbaa8 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -17,7 +17,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
# In Windows, build-name is used as the major, minor, and patch parts
# of the product and file versions while build-number is used as the build suffix.
-version: 2.14.0+119
+version: 2.14.1+120
environment:
sdk: '>=2.18.1 <3.0.0'
@@ -48,7 +48,7 @@ dependencies:
device_info_plus: ^9.1.1
uuid: ^4.2.1
expandable: ^5.0.1
- fl_chart: ^0.65.0
+ fl_chart: ^0.66.0
flutter_web_browser: ^0.17.1
flutter_svg: ^2.0.9
percent_indicator: ^4.2.3