@@ -52,7 +52,29 @@ FF_MAYBE_UNUSED static void getUbuntuFlavour(FFOSResult* result)
5252 if (!ffStrSet (xdgConfigDirs ))
5353 return ;
5454
55- if (ffStrbufStartsWithS (& result -> prettyName , "Linux Lite " ))
55+ if (ffStrbufStartsWithS (& result -> prettyName , "Armbian " )) // Armbian 24.11 noble
56+ {
57+ ffStrbufSetS (& result -> name , "Armbian" );
58+ ffStrbufSetS (& result -> id , "armbian" );
59+ ffStrbufSetS (& result -> idLike , "ubuntu" );
60+ ffStrbufClear (& result -> versionID );
61+ uint32_t versionStart = ffStrbufFirstIndexC (& result -> prettyName , ' ' ) + 1 ;
62+ uint32_t versionEnd = ffStrbufNextIndexC (& result -> prettyName , versionStart , ' ' );
63+ ffStrbufSetNS (& result -> versionID , versionEnd - versionStart , result -> prettyName .chars + versionStart );
64+ return ;
65+ }
66+ else if (ffStrbufStartsWithS (& result -> prettyName , "Armbian-unofficial " )) // Unofficial Armbian image built from source
67+ {
68+ ffStrbufSetS (& result -> name , "Armbian (custom build)" );
69+ ffStrbufSetS (& result -> id , "armbian" );
70+ ffStrbufSetS (& result -> idLike , "ubuntu" );
71+ ffStrbufClear (& result -> versionID );
72+ uint32_t versionStart = ffStrbufFirstIndexC (& result -> prettyName , ' ' ) + 1 ;
73+ uint32_t versionEnd = ffStrbufNextIndexC (& result -> prettyName , versionStart , ' ' );
74+ ffStrbufSetNS (& result -> versionID , versionEnd - versionStart , result -> prettyName .chars + versionStart );
75+ return ;
76+ }
77+ else if (ffStrbufStartsWithS (& result -> prettyName , "Linux Lite " ))
5678 {
5779 ffStrbufSetS (& result -> name , "Linux Lite" );
5880 ffStrbufSetS (& result -> id , "linuxlite" );
0 commit comments