Files
flutter_server_box/lib/data/model/server/dist.dart
2024-03-12 14:58:47 +08:00

39 lines
506 B
Dart

enum Dist {
debian,
ubuntu,
centos,
fedora,
opensuse,
kali,
wrt,
armbian,
arch,
alpine,
rocky,
deepin,
;
}
extension StringX on String {
Dist? get dist {
final lower = toLowerCase();
for (final dist in Dist.values) {
if (lower.contains(dist.name)) {
return dist;
}
}
for (final wrt in _wrts) {
if (lower.contains(wrt)) {
return Dist.wrt;
}
}
return null;
}
}
// Special rules
const _wrts = [
'istoreos',
];