* Create declarative module scaffolding * Added ram module (WIP) * Updates to options, styling and more. * Added function for styling custom modules. * Added utility functions and cleaned up code * Type and fn name updates. * Update module utils to handle absent values. * Added icon color in style2 that was missing. * Linted utils.ts * Add CPU module and update RAM module to use /proc/meminfo. * Added disk storage module. * Consolidate code * Added netstat module and removed elements from systray default ignore list. * Added keyboard layout module. * Fix hook types and move module to customModules directory * Added updates modules. * Spacing updates * Added weather module. * Added power menu and power module in bar. Increased update default interval to 6 ours. * Updated styling of bar buttons, made power menu label toggleable, etc. * Consolidate code and add dynamic tooltips based on data being used. * Make default custom mogules matugen compatible * Update base theme * Fix custom module background coloring * Remove testing opacity. * Update themes to account for new modules * Update nix stuff for libgtop (Need someone to test this) * Update nix * Update fractions to multiplications * Move styling in style directory * Implement a polling framework for variables that can dynamically adjust polling intervals. * Netstat module updates when interface name is changed. * Readme update
24 lines
670 B
TypeScript
24 lines
670 B
TypeScript
// @ts-expect-error
|
|
import GTop from 'gi://GTop';
|
|
|
|
const defaultCpuData: number = 0;
|
|
|
|
let previousCpuData = new GTop.glibtop_cpu();
|
|
GTop.glibtop_get_cpu(previousCpuData);
|
|
|
|
export const computeCPU = () => {
|
|
const currentCpuData = new GTop.glibtop_cpu();
|
|
GTop.glibtop_get_cpu(currentCpuData);
|
|
|
|
// Calculate the differences from the previous to current data
|
|
const totalDiff = currentCpuData.total - previousCpuData.total;
|
|
const idleDiff = currentCpuData.idle - previousCpuData.idle;
|
|
|
|
const cpuUsagePercentage = totalDiff > 0 ? ((totalDiff - idleDiff) / totalDiff) * 100 : 0;
|
|
|
|
previousCpuData = currentCpuData;
|
|
|
|
return cpuUsagePercentage;
|
|
}
|
|
|