Skip to content

Commit 5abe6be

Browse files
feat: update to flutter v3.22.0
1 parent b50a707 commit 5abe6be

File tree

7 files changed

+1163
-224
lines changed

7 files changed

+1163
-224
lines changed

.github/workflows/flutter.yaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
strategy:
1717
matrix:
1818
arch: [x64]
19-
channel: [master]
19+
channel: [stable]
2020
runs-on: ubuntu-latest
2121
continue-on-error: true
2222
steps:
@@ -127,7 +127,7 @@ jobs:
127127
strategy:
128128
matrix:
129129
arch: [x64]
130-
channel: [master]
130+
channel: [stable]
131131
continue-on-error: true
132132
runs-on: ubuntu-latest
133133
container:
@@ -140,7 +140,7 @@ jobs:
140140
- name: Add dependencies
141141
run: |
142142
dnf update -y
143-
dnf install -y jq cmake ninja-build gtk3-devel clang appstream
143+
dnf install -y jq cmake ninja-build gtk3-devel clang appstream which
144144
dnf clean all
145145
- uses: subosito/flutter-action@v2
146146
with:
@@ -155,7 +155,7 @@ jobs:
155155
passphrase: ${{ secrets.FLATPAK_GPG_PASSPHRASE }}
156156
- name: Build Flutter
157157
run: |
158-
git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ matrix.channel }}-3.10.2-${{ matrix.arch }}
158+
git config --global --add safe.directory /opt/hostedtoolcache/flutter/${{ matrix.channel }}-3.22.0-${{ matrix.arch }}
159159
flutter config --enable-linux-desktop
160160
flutter build linux --build-number $GITHUB_RUN_NUMBER --dart-define=COMMIT_HASH=$GITHUB_SHA --dart-define=SENTRY_DSN=${{ secrets.SENTRY_DSN }}
161161
tar -czf com.expidusos.calculator-linux-${{ matrix.arch }}.tar.gz -C build/linux/${{ matrix.arch }}/release/bundle/ .
@@ -191,7 +191,7 @@ jobs:
191191
strategy:
192192
matrix:
193193
arch: [x64]
194-
channel: [master]
194+
channel: [stable]
195195
runs-on: macos-latest
196196
continue-on-error: true
197197
steps:
@@ -213,7 +213,7 @@ jobs:
213213
strategy:
214214
matrix:
215215
arch: [x64]
216-
channel: [master]
216+
channel: [stable]
217217
runs-on: windows-latest
218218
continue-on-error: true
219219
steps:

flake.lock

Lines changed: 20 additions & 57 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

flake.nix

Lines changed: 72 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -9,70 +9,96 @@
99
http2 = false;
1010
};
1111

12-
inputs.expidus-sdk = {
13-
url = github:ExpidusOS/sdk;
14-
inputs.nixpkgs.follows = "nixpkgs";
12+
inputs = {
13+
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
14+
flake-utils.url = "github:numtide/flake-utils";
15+
flutter-v322.url = "github:ExpidusOS/nixpkgs/feat/flutter-3.22.0";
1516
};
1617

17-
inputs.nixpkgs.url = github:ExpidusOS/nixpkgs;
18-
19-
outputs = { self, expidus-sdk, nixpkgs }:
20-
with expidus-sdk.lib;
21-
flake-utils.eachSystem flake-utils.allSystems (system:
18+
outputs = {
19+
self,
20+
nixpkgs,
21+
flake-utils,
22+
flutter-v322,
23+
...
24+
}@inputs:
25+
flake-utils.lib.eachDefaultSystem (system:
2226
let
23-
pkgs = expidus-sdk.legacyPackages.${system};
24-
deps = builtins.fromJSON (readFile ./deps.json);
25-
shortRev = self.shortRev or (substring 7 7 fakeHash);
26-
shortRevCodes = map strings.charToInt (stringToCharacters shortRev);
27-
buildCode = foldr (a: b: "${toString a}${toString b}") "" shortRevCodes;
27+
pkgs = import nixpkgs { inherit system; };
28+
inherit (pkgs) lib;
29+
30+
shortRev = self.shortRev or (lib.substring 7 7 lib.fakeHash);
31+
shortRevCodes = map lib.strings.charToInt (lib.stringToCharacters shortRev);
32+
buildCode = lib.foldr (a: b: "${toString a}${toString b}") "" shortRevCodes;
2833

29-
shortVersion = builtins.elemAt (splitString "+" (builtins.elemAt deps 0).version) 0;
34+
shortVersion = "0.2.0";
3035
version = "${shortVersion}+${buildCode}";
31-
in {
32-
packages.default = pkgs.flutter.buildFlutterApplication {
33-
pname = "expidus-calculator";
34-
version = "${shortVersion}+git-${shortRev}";
3536

36-
src = cleanSource self;
37+
overlay = f: p: {
38+
expidus = p.expidus // {
39+
calculator = p.flutter.buildFlutterApplication {
40+
pname = "expidus-calculator";
41+
version = "${shortVersion}+git-${shortRev}";
42+
43+
src = lib.cleanSource self;
3744

38-
flutterBuildFlags = [
39-
"--dart-define=COMMIT_HASH=${shortRev}"
40-
];
45+
flutterBuildFlags = [
46+
"--dart-define=COMMIT_HASH=${shortRev}"
47+
];
4148

42-
depsListFile = ./deps.json;
43-
vendorHash = "sha256-SJtfW+UZSmCugAgLd/O0PxtE53Fe/pouYKsg9fPv06o=";
49+
pubspecLock = lib.importJSON ./pubspec.lock.json;
4450

45-
postInstall = ''
46-
rm $out/bin/calculator
47-
ln -s $out/app/calculator $out/bin/expidus-calculator
51+
gitHashes = {
52+
libtokyo = "sha256-Zn30UmppXnzhs+t+EQNwAhaTPjCCxoN0a+AbH6bietg=";
53+
libtokyo_flutter = "sha256-Zn30UmppXnzhs+t+EQNwAhaTPjCCxoN0a+AbH6bietg=";
54+
};
4855

49-
mkdir -p $out/share/applications
50-
mv $out/app/data/com.expidusos.calculator.desktop $out/share/applications
56+
postInstall = ''
57+
rm $out/bin/calculator
58+
ln -s $out/app/calculator $out/bin/expidus-calculator
5159
52-
mkdir -p $out/share/icons
53-
mv $out/app/data/com.expidusos.calculator.png $out/share/icons
60+
mkdir -p $out/share/applications
61+
mv $out/app/data/com.expidusos.calculator.desktop $out/share/applications
5462
55-
mkdir -p $out/share/metainfo
56-
mv $out/app/data/com.expidusos.calculator.metainfo.xml $out/share/metainfo
63+
mkdir -p $out/share/icons
64+
mv $out/app/data/com.expidusos.calculator.png $out/share/icons
5765
58-
substituteInPlace "$out/share/applications/com.expidusos.calculator.desktop" \
59-
--replace "Exec=calculator" "Exec=$out/bin/expidus-calculator" \
60-
--replace "Icon=com.expidusos.calculator" "Icon=$out/share/icons/com.expidusos.calculator.png"
61-
'';
66+
mkdir -p $out/share/metainfo
67+
mv $out/app/data/com.expidusos.calculator.metainfo.xml $out/share/metainfo
6268
63-
meta = {
64-
description = "ExpidusOS Calculator";
65-
homepage = "https://expidusos.com";
66-
license = licenses.gpl3;
67-
maintainers = with maintainers; [ RossComputerGuy ];
68-
platforms = [ "x86_64-linux" "aarch64-linux" ];
69+
substituteInPlace "$out/share/applications/com.expidusos.calculator.desktop" \
70+
--replace "Exec=calculator" "Exec=$out/bin/expidus-calculator" \
71+
--replace "Icon=com.expidusos.calculator" "Icon=$out/share/icons/com.expidusos.calculator.png"
72+
'';
73+
74+
meta = with lib; {
75+
description = "ExpidusOS Calculator";
76+
homepage = "https://expidusos.com";
77+
license = licenses.gpl3;
78+
maintainers = with maintainers; [ RossComputerGuy ];
79+
platforms = [ "x86_64-linux" "aarch64-linux" ];
80+
};
81+
};
6982
};
7083
};
71-
72-
devShells.default = pkgs.mkShell {
84+
in {
85+
legacyPackages = pkgs.appendOverlays [
86+
(f: p: rec {
87+
flutterPackages = p.recurseIntoAttrs (p.callPackages "${flutter-v322}/pkgs/development/compilers/flutter" {});
88+
flutter = flutterPackages.stable;
89+
flutter322 = flutterPackages.v3_22;
90+
})
91+
overlay
92+
];
93+
94+
packages.default = self.legacyPackages.${system}.expidus.calculator;
95+
96+
devShells.default = self.legacyPackages.${system}.mkShell {
7397
inherit (self.packages.${system}.default) pname version name;
7498

75-
packages = with pkgs; [ flutter ];
99+
inputsFrom = [ self.packages.${system}.default ];
100+
101+
packages = with self.legacyPackages.${system}; [ flutter yq ];
76102
};
77103
});
78104
}

macos/Flutter/GeneratedPluginRegistrant.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import url_launcher_macos
1414

1515
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
1616
BitsdojoWindowPlugin.register(with: registry.registrar(forPlugin: "BitsdojoWindowPlugin"))
17-
FLTPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlusPlugin"))
17+
FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin"))
1818
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
1919
SentryFlutterPlugin.register(with: registry.registrar(forPlugin: "SentryFlutterPlugin"))
2020
SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))

0 commit comments

Comments
 (0)