programs/shell: Show new fields of the sf18.13 struct

Kfetch command now reports
 - kernel ABI,
 - git hash (aka commit id),
 - release offset,
 - debug tag.

No svn revision anymore.
This commit is contained in:
2025-03-14 06:36:19 +00:00
committed by Max Logaev
parent 63cd6f0ac8
commit 32466e31f4
6 changed files with 56 additions and 33 deletions

View File

@@ -1,20 +1,21 @@
#include "../system/kolibri.h"
void get_str_kernel_version(char *str, const char *fmt) {
char *kvbuf;
char *vA, *vB, *vC, *vD;
unsigned *Rev;
struct kernel_version kv;
kvbuf = malloc(16);
kol_get_kernel_ver(kvbuf);
vA = kvbuf+0;
vB = kvbuf+1;
vC = kvbuf+2;
vD = kvbuf+3;
Rev = (unsigned*)(kvbuf + 5);
kol_get_kernel_ver(&kv);
char str_offset[8] = {'\0'};
if (kv.offset)
sprintf(str_offset, "+%u", kv.offset);
char str_dbgtag[4] = {'\0'};
if (kv.dbgtag)
sprintf(str_dbgtag, "-%c", kv.dbgtag);
char str_cmtid[16] = {'\0'};
if (kv.cmtid)
sprintf(str_cmtid, " (%08x)", kv.cmtid);
sprintf (str, fmt, *vA, *vB, *vC, *vD, *Rev);
free(kvbuf);
sprintf(str, fmt, kv.osrel[0], kv.osrel[1], kv.osrel[2], kv.osrel[3],
str_offset, str_dbgtag, str_cmtid, kv.abimaj, kv.abimin);
}
void get_str_cpu_info(char *str) {