96fcb9ab5e
Rework .agents/, Claude/Codex config, CI workflows, lint gates and lint-rule tests, and the release/changelog tooling. The 5% comment density gate stays diff-scoped inside git hooks, where GIT_DIR outranks the -C the gate uses to locate the repository. The tray icon generator writes multi-size ICO files from the SVG sources into the per-platform tray asset directories. The custom code-review subagents are gone: the built-in /code-review never dispatched them, and the subagent model now lives in a user-level setting outside the repository. The Makefile, build_config.yaml and CI hand the Core and Helper builds to the setup build hook, so the buildkit launchers go, and setup.dart packages AppImage and rpm on arm64 with flutter_distributor pinned to the fork tag that normalizes packaging permissions. Changelog: skip
45 lines
1.3 KiB
Dart
45 lines
1.3 KiB
Dart
import 'dart:io';
|
|
|
|
import 'package:flutter_test/flutter_test.dart';
|
|
import 'package:yaml/yaml.dart';
|
|
|
|
void main() {
|
|
group('Linux packaging teardown', () {
|
|
for (final format in ['deb', 'rpm']) {
|
|
test('$format removes the Helper unit only on a real uninstall', () {
|
|
final config =
|
|
loadYaml(
|
|
File(
|
|
'linux/packaging/$format/make_config.yaml',
|
|
).readAsStringSync(),
|
|
)
|
|
as YamlMap;
|
|
final scripts = (config['postuninstall_scripts'] as YamlList)
|
|
.cast<String>();
|
|
|
|
expect(scripts.first, contains('exit 0'));
|
|
expect(
|
|
scripts,
|
|
contains('rm -f /etc/systemd/system/flclash-helper.service'),
|
|
);
|
|
expect(
|
|
scripts.any((script) => script.contains('systemctl daemon-reload')),
|
|
isTrue,
|
|
);
|
|
});
|
|
}
|
|
});
|
|
|
|
test('rpm keeps the Core bytes the Helper was built against', () {
|
|
final config =
|
|
loadYaml(
|
|
File('linux/packaging/rpm/make_config.yaml').readAsStringSync(),
|
|
)
|
|
as YamlMap;
|
|
final macros = (config['spec_macros'] as YamlList).cast<String>();
|
|
|
|
expect(macros, contains('%global debug_package %{nil}'));
|
|
expect(macros, contains('%global __os_install_post %{nil}'));
|
|
});
|
|
}
|