#ifndef _FETCH_H #define _FETCH_H #include #include #if defined(CLOCK_BOOTTIME) #define CLOCK CLOCK_BOOTTIME #elif defined(CLOCK_UPTIME) #define CLOCK CLOCK_UPTIME #elif defined(__APPLE__) #define CLOCK CLOCK_MONOTONIC #endif #define OS_SIZE 128 #define MODEL_BUFF_SIZE 512 static const char *MODELS[] = { "/sys/devices/virtual/dmi/id/product_name", "/sys/devices/virtual/dmi/id/product_version", "/sys/firmware/devicetree/base/model" }; typedef struct { char os_name[OS_SIZE + 1]; struct utsname uts; char *pkg_cmd; char *color; char *font_color; size_t logo_size; char **logo; } FETCH; FETCH Init(void); int GetOs(char *os_name, size_t len); void GetArt(FETCH *fetch, int flag); int GetKernel(const char *title, const FETCH fetch); int PrintOs(const char *title, const FETCH fetch); int Blank(const char *title, const FETCH fetch); int GetUser(const char *title, const FETCH fetch); int GetUptime(const char *title, const FETCH fetch); int GetArch(const char *title, const FETCH fetch); int GetShell(const char *title, const FETCH fetch); int GetPkg(const char *title, const FETCH fetch); int GetMem(const char *title, const FETCH fetch); int GetModel(const char *title, const FETCH fetch); int GetHostname(const char *title, const FETCH fetch); int GetAVG(const char *title, const FETCH fetch); #endif