52 lines
1.4 KiB
C
52 lines
1.4 KiB
C
#ifndef _FETCH_H
|
|
#define _FETCH_H
|
|
|
|
#include <time.h>
|
|
#include <sys/utsname.h>
|
|
|
|
#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);
|
|
int GetBattery(const char *title, const FETCH fetch);
|
|
|
|
#endif
|