From 559082806b370a62ddd4c81520e3fa56b0d11b58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=80=9A=E6=B4=B2?= Date: Sun, 3 Aug 2025 22:50:56 +0800 Subject: [PATCH] Modules: export module info --- src/modules/battery/battery.c | 4 ++-- src/modules/battery/battery.h | 2 ++ src/modules/bios/bios.c | 4 ++-- src/modules/bios/bios.h | 2 ++ src/modules/bluetooth/bluetooth.c | 4 ++-- src/modules/bluetooth/bluetooth.h | 2 ++ src/modules/bluetoothradio/bluetoothradio.c | 4 ++-- src/modules/bluetoothradio/bluetoothradio.h | 2 ++ src/modules/board/board.c | 4 ++-- src/modules/board/board.h | 2 ++ src/modules/bootmgr/bootmgr.c | 4 ++-- src/modules/bootmgr/bootmgr.h | 2 ++ src/modules/break/break.c | 4 ++-- src/modules/break/break.h | 2 ++ src/modules/brightness/brightness.c | 4 ++-- src/modules/brightness/brightness.h | 2 ++ src/modules/btrfs/btrfs.c | 4 ++-- src/modules/btrfs/btrfs.h | 2 ++ src/modules/camera/camera.c | 4 ++-- src/modules/camera/camera.h | 2 ++ src/modules/chassis/chassis.c | 4 ++-- src/modules/chassis/chassis.h | 2 ++ src/modules/colors/colors.c | 4 ++-- src/modules/colors/colors.h | 2 ++ src/modules/command/command.c | 4 ++-- src/modules/command/command.h | 2 ++ src/modules/cpu/cpu.c | 4 ++-- src/modules/cpu/cpu.h | 2 ++ src/modules/cpucache/cpucache.c | 4 ++-- src/modules/cpucache/cpucache.h | 2 ++ src/modules/cpuusage/cpuusage.c | 4 ++-- src/modules/cpuusage/cpuusage.h | 2 ++ src/modules/cursor/cursor.c | 4 ++-- src/modules/cursor/cursor.h | 2 ++ src/modules/custom/custom.c | 4 ++-- src/modules/custom/custom.h | 2 ++ src/modules/datetime/datetime.c | 4 ++-- src/modules/datetime/datetime.h | 2 ++ src/modules/de/de.c | 4 ++-- src/modules/de/de.h | 2 ++ src/modules/disk/disk.c | 4 ++-- src/modules/disk/disk.h | 2 ++ src/modules/diskio/diskio.c | 4 ++-- src/modules/diskio/diskio.h | 2 ++ src/modules/display/display.c | 4 ++-- src/modules/display/display.h | 2 ++ src/modules/dns/dns.c | 4 ++-- src/modules/dns/dns.h | 2 ++ src/modules/editor/editor.c | 4 ++-- src/modules/editor/editor.h | 2 ++ src/modules/font/font.c | 4 ++-- src/modules/font/font.h | 2 ++ src/modules/gamepad/gamepad.c | 4 ++-- src/modules/gamepad/gamepad.h | 2 ++ src/modules/gpu/gpu.c | 4 ++-- src/modules/gpu/gpu.h | 2 ++ src/modules/host/host.c | 4 ++-- src/modules/host/host.h | 2 ++ src/modules/icons/icons.c | 4 ++-- src/modules/icons/icons.h | 2 ++ src/modules/initsystem/initsystem.c | 4 ++-- src/modules/initsystem/initsystem.h | 2 ++ src/modules/kernel/kernel.c | 4 ++-- src/modules/kernel/kernel.h | 2 ++ src/modules/keyboard/keyboard.c | 4 ++-- src/modules/keyboard/keyboard.h | 2 ++ src/modules/lm/lm.c | 4 ++-- src/modules/lm/lm.h | 2 ++ src/modules/loadavg/loadavg.c | 4 ++-- src/modules/loadavg/loadavg.h | 2 ++ src/modules/locale/locale.c | 4 ++-- src/modules/locale/locale.h | 2 ++ src/modules/localip/localip.c | 4 ++-- src/modules/localip/localip.h | 2 ++ src/modules/media/media.c | 4 ++-- src/modules/media/media.h | 2 ++ src/modules/memory/memory.c | 4 ++-- src/modules/memory/memory.h | 2 ++ src/modules/monitor/monitor.c | 4 ++-- src/modules/monitor/monitor.h | 2 ++ src/modules/mouse/mouse.c | 4 ++-- src/modules/mouse/mouse.h | 2 ++ src/modules/netio/netio.c | 6 +++--- src/modules/netio/netio.h | 2 ++ src/modules/opencl/opencl.c | 4 ++-- src/modules/opencl/opencl.h | 2 ++ src/modules/opengl/opengl.c | 4 ++-- src/modules/opengl/opengl.h | 2 ++ src/modules/os/os.c | 6 ++++-- src/modules/os/os.h | 2 ++ src/modules/packages/packages.c | 4 ++-- src/modules/packages/packages.h | 2 ++ src/modules/physicaldisk/physicaldisk.c | 4 ++-- src/modules/physicaldisk/physicaldisk.h | 2 ++ src/modules/physicalmemory/physicalmemory.c | 4 ++-- src/modules/physicalmemory/physicalmemory.h | 2 ++ src/modules/player/player.c | 4 ++-- src/modules/player/player.h | 2 ++ src/modules/poweradapter/poweradapter.c | 4 ++-- src/modules/poweradapter/poweradapter.h | 2 ++ src/modules/processes/processes.c | 4 ++-- src/modules/processes/processes.h | 2 ++ src/modules/publicip/publicip.c | 4 ++-- src/modules/publicip/publicip.h | 2 ++ src/modules/separator/separator.c | 4 ++-- src/modules/separator/separator.h | 2 ++ src/modules/shell/shell.c | 4 ++-- src/modules/shell/shell.h | 2 ++ src/modules/sound/sound.c | 4 ++-- src/modules/sound/sound.h | 2 ++ src/modules/swap/swap.c | 4 ++-- src/modules/swap/swap.h | 2 ++ src/modules/terminal/terminal.c | 4 ++-- src/modules/terminal/terminal.h | 2 ++ src/modules/terminalfont/terminalfont.c | 4 ++-- src/modules/terminalfont/terminalfont.h | 2 ++ src/modules/terminalsize/terminalsize.c | 4 ++-- src/modules/terminalsize/terminalsize.h | 2 ++ src/modules/terminaltheme/terminaltheme.c | 4 ++-- src/modules/terminaltheme/terminaltheme.h | 2 ++ src/modules/theme/theme.c | 4 ++-- src/modules/theme/theme.h | 2 ++ src/modules/title/title.c | 4 ++-- src/modules/title/title.h | 2 ++ src/modules/tpm/tpm.c | 4 ++-- src/modules/tpm/tpm.h | 2 ++ src/modules/uptime/uptime.c | 4 ++-- src/modules/uptime/uptime.h | 2 ++ src/modules/users/users.c | 4 ++-- src/modules/users/users.h | 2 ++ src/modules/version/version.c | 4 ++-- src/modules/version/version.h | 2 ++ src/modules/vulkan/vulkan.c | 4 ++-- src/modules/vulkan/vulkan.h | 2 ++ src/modules/wallpaper/wallpaper.c | 4 ++-- src/modules/wallpaper/wallpaper.h | 2 ++ src/modules/weather/weather.c | 4 ++-- src/modules/weather/weather.h | 2 ++ src/modules/wifi/wifi.c | 4 ++-- src/modules/wifi/wifi.h | 2 ++ src/modules/wm/wm.c | 4 ++-- src/modules/wm/wm.h | 2 ++ src/modules/wmtheme/wmtheme.c | 4 ++-- src/modules/wmtheme/wmtheme.h | 2 ++ src/modules/zpool/zpool.c | 4 ++-- src/modules/zpool/zpool.h | 2 ++ 146 files changed, 295 insertions(+), 147 deletions(-) diff --git a/src/modules/battery/battery.c b/src/modules/battery/battery.c index 27982c9b0..7d306accf 100644 --- a/src/modules/battery/battery.c +++ b/src/modules/battery/battery.c @@ -245,7 +245,7 @@ void ffGenerateBatteryJsonResult(FFBatteryOptions* options, yyjson_mut_doc* doc, } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffBatteryModuleInfo = { .name = FF_BATTERY_MODULE_NAME, .description = "Print battery capacity, status, etc", .initOptions = (void*) ffInitBatteryOptions, @@ -275,7 +275,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitBatteryOptions(FFBatteryOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffBatteryModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->temp = false; options->tempConfig = (FFColorRangeConfig) { 60, 80 }; diff --git a/src/modules/battery/battery.h b/src/modules/battery/battery.h index 60d0f1c89..9bde4f063 100644 --- a/src/modules/battery/battery.h +++ b/src/modules/battery/battery.h @@ -7,3 +7,5 @@ void ffPrintBattery(FFBatteryOptions* options); void ffInitBatteryOptions(FFBatteryOptions* options); void ffDestroyBatteryOptions(FFBatteryOptions* options); + +extern FFModuleBaseInfo ffBatteryModuleInfo; diff --git a/src/modules/bios/bios.c b/src/modules/bios/bios.c index bbf1a5f08..f2afa9c44 100644 --- a/src/modules/bios/bios.c +++ b/src/modules/bios/bios.c @@ -128,7 +128,7 @@ exit: ffStrbufDestroy(&bios.type); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffBiosModuleInfo = { .name = FF_BIOS_MODULE_NAME, .description = "Print information of 1st-stage bootloader (name, version, release date, etc)", .initOptions = (void*) ffInitBiosOptions, @@ -148,7 +148,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitBiosOptions(FFBiosOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffBiosModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/bios/bios.h b/src/modules/bios/bios.h index 14444c435..43c2a17e4 100644 --- a/src/modules/bios/bios.h +++ b/src/modules/bios/bios.h @@ -7,3 +7,5 @@ void ffPrintBios(FFBiosOptions* options); void ffInitBiosOptions(FFBiosOptions* options); void ffDestroyBiosOptions(FFBiosOptions* options); + +extern FFModuleBaseInfo ffBiosModuleInfo; diff --git a/src/modules/bluetooth/bluetooth.c b/src/modules/bluetooth/bluetooth.c index 4409b0a16..7df3ada40 100644 --- a/src/modules/bluetooth/bluetooth.c +++ b/src/modules/bluetooth/bluetooth.c @@ -163,7 +163,7 @@ void ffGenerateBluetoothJsonResult(FFBluetoothOptions* options, yyjson_mut_doc* } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffBluetoothModuleInfo = { .name = FF_BLUETOOTH_MODULE_NAME, .description = "List (connected) bluetooth devices", .initOptions = (void*) ffInitBluetoothOptions, @@ -184,7 +184,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitBluetoothOptions(FFBluetoothOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffBluetoothModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->showDisconnected = false; options->percent = (FFPercentageModuleConfig) { 50, 20, 0 }; diff --git a/src/modules/bluetooth/bluetooth.h b/src/modules/bluetooth/bluetooth.h index 20c3b6d81..448bebab1 100644 --- a/src/modules/bluetooth/bluetooth.h +++ b/src/modules/bluetooth/bluetooth.h @@ -7,3 +7,5 @@ void ffPrintBluetooth(FFBluetoothOptions* options); void ffInitBluetoothOptions(FFBluetoothOptions* options); void ffDestroyBluetoothOptions(FFBluetoothOptions* options); + +extern FFModuleBaseInfo ffBluetoothModuleInfo; diff --git a/src/modules/bluetoothradio/bluetoothradio.c b/src/modules/bluetoothradio/bluetoothradio.c index d55ab6c49..0a75e3205 100644 --- a/src/modules/bluetoothradio/bluetoothradio.c +++ b/src/modules/bluetoothradio/bluetoothradio.c @@ -166,7 +166,7 @@ void ffGenerateBluetoothRadioJsonResult(FF_MAYBE_UNUSED FFBluetoothRadioOptions* } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffBluetoothRadioModuleInfo = { .name = FF_BLUETOOTHRADIO_MODULE_NAME, .description = "List bluetooth radios width supported version and vendor", .initOptions = (void*) ffInitBluetoothRadioOptions, @@ -189,7 +189,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitBluetoothRadioOptions(FFBluetoothRadioOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffBluetoothRadioModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰐻"); } diff --git a/src/modules/bluetoothradio/bluetoothradio.h b/src/modules/bluetoothradio/bluetoothradio.h index ee9ef1195..d1371151f 100644 --- a/src/modules/bluetoothradio/bluetoothradio.h +++ b/src/modules/bluetoothradio/bluetoothradio.h @@ -7,3 +7,5 @@ void ffPrintBluetoothRadio(FFBluetoothRadioOptions* options); void ffInitBluetoothRadioOptions(FFBluetoothRadioOptions* options); void ffDestroyBluetoothRadioOptions(FFBluetoothRadioOptions* options); + +extern FFModuleBaseInfo ffBluetoothRadioModuleInfo; diff --git a/src/modules/board/board.c b/src/modules/board/board.c index 693b9b3cf..57cd52b3b 100644 --- a/src/modules/board/board.c +++ b/src/modules/board/board.c @@ -106,7 +106,7 @@ exit: ffStrbufDestroy(&board.serial); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffBoardModuleInfo = { .name = FF_BOARD_MODULE_NAME, .description = "Print motherboard name and other info", .initOptions = (void*) ffInitBoardOptions, @@ -125,7 +125,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitBoardOptions(FFBoardOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffBoardModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/board/board.h b/src/modules/board/board.h index 7fdbffe95..6760e736d 100644 --- a/src/modules/board/board.h +++ b/src/modules/board/board.h @@ -7,3 +7,5 @@ void ffPrintBoard(FFBoardOptions* options); void ffInitBoardOptions(FFBoardOptions* options); void ffDestroyBoardOptions(FFBoardOptions* options); + +extern FFModuleBaseInfo ffBoardModuleInfo; diff --git a/src/modules/bootmgr/bootmgr.c b/src/modules/bootmgr/bootmgr.c index 47c831350..d693acbaa 100644 --- a/src/modules/bootmgr/bootmgr.c +++ b/src/modules/bootmgr/bootmgr.c @@ -97,7 +97,7 @@ exit: ffStrbufDestroy(&bootmgr.firmware); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffBootmgrModuleInfo = { .name = FF_BOOTMGR_MODULE_NAME, .description = "Print information of 2nd-stage bootloader (name, firmware, etc)", .initOptions = (void*) ffInitBootmgrOptions, @@ -117,7 +117,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitBootmgrOptions(FFBootmgrOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffBootmgrModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/bootmgr/bootmgr.h b/src/modules/bootmgr/bootmgr.h index 31a3b7946..98b030602 100644 --- a/src/modules/bootmgr/bootmgr.h +++ b/src/modules/bootmgr/bootmgr.h @@ -7,3 +7,5 @@ void ffPrintBootmgr(FFBootmgrOptions* options); void ffInitBootmgrOptions(FFBootmgrOptions* options); void ffDestroyBootmgrOptions(FFBootmgrOptions* options); + +extern FFModuleBaseInfo ffBootmgrModuleInfo; diff --git a/src/modules/break/break.c b/src/modules/break/break.c index 978bff5c6..c2be5f5b0 100644 --- a/src/modules/break/break.c +++ b/src/modules/break/break.c @@ -21,7 +21,7 @@ void ffParseBreakJsonObject(FF_MAYBE_UNUSED FFBreakOptions* options, FF_MAYBE_UN } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffBreakModuleInfo = { .name = FF_BREAK_MODULE_NAME, .description = "Print a empty line", .initOptions = (void*) ffInitBreakOptions, @@ -32,7 +32,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitBreakOptions(FF_MAYBE_UNUSED FFBreakOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffBreakModuleInfo; } void ffDestroyBreakOptions(FF_MAYBE_UNUSED FFBreakOptions* options) diff --git a/src/modules/break/break.h b/src/modules/break/break.h index b651a503e..f436bfcbb 100644 --- a/src/modules/break/break.h +++ b/src/modules/break/break.h @@ -7,3 +7,5 @@ void ffPrintBreak(FFBreakOptions* options); void ffInitBreakOptions(FFBreakOptions* options); void ffDestroyBreakOptions(FFBreakOptions* options); + +extern FFModuleBaseInfo ffBreakModuleInfo; diff --git a/src/modules/brightness/brightness.c b/src/modules/brightness/brightness.c index cfd10aa10..4c93ea02f 100644 --- a/src/modules/brightness/brightness.c +++ b/src/modules/brightness/brightness.c @@ -187,7 +187,7 @@ void ffGenerateBrightnessJsonResult(FF_MAYBE_UNUSED FFBrightnessOptions* options } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffBrightnessModuleInfo = { .name = FF_BRIGHTNESS_MODULE_NAME, .description = "Print current brightness level of your monitors", .initOptions = (void*) ffInitBrightnessOptions, @@ -209,7 +209,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitBrightnessOptions(FFBrightnessOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffBrightnessModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰯪"); options->ddcciSleep = 10; diff --git a/src/modules/brightness/brightness.h b/src/modules/brightness/brightness.h index 36faaf304..0ee6b83c3 100644 --- a/src/modules/brightness/brightness.h +++ b/src/modules/brightness/brightness.h @@ -7,3 +7,5 @@ void ffPrintBrightness(FFBrightnessOptions* options); void ffInitBrightnessOptions(FFBrightnessOptions* options); void ffDestroyBrightnessOptions(FFBrightnessOptions* options); + +extern FFModuleBaseInfo ffBrightnessModuleInfo; diff --git a/src/modules/btrfs/btrfs.c b/src/modules/btrfs/btrfs.c index 0c96b7623..a2aab728b 100644 --- a/src/modules/btrfs/btrfs.c +++ b/src/modules/btrfs/btrfs.c @@ -200,7 +200,7 @@ void ffGenerateBtrfsJsonResult(FF_MAYBE_UNUSED FFBtrfsOptions* options, yyjson_m } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffBtrfsModuleInfo = { .name = FF_BTRFS_MODULE_NAME, .description = "Print Linux BTRFS volumes", .initOptions = (void*) ffInitBtrfsOptions, @@ -228,7 +228,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitBtrfsOptions(FFBtrfsOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffBtrfsModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󱑛"); options->percent = (FFPercentageModuleConfig) { 50, 80, 0 }; } diff --git a/src/modules/btrfs/btrfs.h b/src/modules/btrfs/btrfs.h index 25df25084..dbc31e0de 100644 --- a/src/modules/btrfs/btrfs.h +++ b/src/modules/btrfs/btrfs.h @@ -7,3 +7,5 @@ void ffPrintBtrfs(FFBtrfsOptions* options); void ffInitBtrfsOptions(FFBtrfsOptions* options); void ffDestroyBtrfsOptions(FFBtrfsOptions* options); + +extern FFModuleBaseInfo ffBtrfsModuleInfo; diff --git a/src/modules/camera/camera.c b/src/modules/camera/camera.c index 34155d207..39b643bdd 100644 --- a/src/modules/camera/camera.c +++ b/src/modules/camera/camera.c @@ -120,7 +120,7 @@ void ffGenerateCameraJsonResult(FF_MAYBE_UNUSED FFCameraOptions* options, yyjson } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffCameraModuleInfo = { .name = FF_CAMERA_MODULE_NAME, .description = "Print available cameras", .initOptions = (void*) ffInitCameraOptions, @@ -141,7 +141,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitCameraOptions(FFCameraOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffCameraModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰄀"); } diff --git a/src/modules/camera/camera.h b/src/modules/camera/camera.h index 47d2e1cc7..e1dc96839 100644 --- a/src/modules/camera/camera.h +++ b/src/modules/camera/camera.h @@ -7,3 +7,5 @@ void ffPrintCamera(FFCameraOptions* options); void ffInitCameraOptions(FFCameraOptions* options); void ffDestroyCameraOptions(FFCameraOptions* options); + +extern FFModuleBaseInfo ffCameraModuleInfo; diff --git a/src/modules/chassis/chassis.c b/src/modules/chassis/chassis.c index 827f9c507..e1cb72bb5 100644 --- a/src/modules/chassis/chassis.c +++ b/src/modules/chassis/chassis.c @@ -107,7 +107,7 @@ exit: ffStrbufDestroy(&result.serial); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffChassisModuleInfo = { .name = FF_CHASSIS_MODULE_NAME, .description = "Print chassis type (desktop, laptop, etc)", .initOptions = (void*) ffInitChassisOptions, @@ -126,7 +126,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitChassisOptions(FFChassisOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffChassisModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/chassis/chassis.h b/src/modules/chassis/chassis.h index f37358c94..ed6870cde 100644 --- a/src/modules/chassis/chassis.h +++ b/src/modules/chassis/chassis.h @@ -7,3 +7,5 @@ void ffPrintChassis(FFChassisOptions* options); void ffInitChassisOptions(FFChassisOptions* options); void ffDestroyChassisOptions(FFChassisOptions* options); + +extern FFModuleBaseInfo ffChassisModuleInfo; diff --git a/src/modules/colors/colors.c b/src/modules/colors/colors.c index 2eb180cae..22c8b639f 100644 --- a/src/modules/colors/colors.c +++ b/src/modules/colors/colors.c @@ -239,7 +239,7 @@ void ffGenerateColorsJsonConfig(FFColorsOptions* options, yyjson_mut_doc* doc, y } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffColorsModuleInfo = { .name = FF_COLORS_MODULE_NAME, .description = "Print some colored blocks", .initOptions = (void*) ffInitColorsOptions, @@ -251,7 +251,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitColorsOptions(FFColorsOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffColorsModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); ffStrbufSetStatic(&options->moduleArgs.key, " "); options->symbol = FF_COLORS_SYMBOL_BACKGROUND; diff --git a/src/modules/colors/colors.h b/src/modules/colors/colors.h index 8520f54b6..9d250dc8a 100644 --- a/src/modules/colors/colors.h +++ b/src/modules/colors/colors.h @@ -7,3 +7,5 @@ void ffPrintColors(FFColorsOptions* options); void ffInitColorsOptions(FFColorsOptions* options); void ffDestroyColorsOptions(FFColorsOptions* options); + +extern FFModuleBaseInfo ffColorsModuleInfo; diff --git a/src/modules/command/command.c b/src/modules/command/command.c index 22f5fd17c..b2045566f 100644 --- a/src/modules/command/command.c +++ b/src/modules/command/command.c @@ -120,7 +120,7 @@ void ffGenerateCommandJsonResult(FF_MAYBE_UNUSED FFCommandOptions* options, yyjs yyjson_mut_obj_add_strbuf(doc, module, "result", &result); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffCommandModuleInfo = { .name = FF_COMMAND_MODULE_NAME, .description = "Run custom shell scripts", .initOptions = (void*) ffInitCommandOptions, @@ -136,7 +136,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitCommandOptions(FFCommandOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffCommandModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); ffStrbufInitStatic(&options->shell, diff --git a/src/modules/command/command.h b/src/modules/command/command.h index 246412801..195de886b 100644 --- a/src/modules/command/command.h +++ b/src/modules/command/command.h @@ -7,3 +7,5 @@ void ffPrintCommand(FFCommandOptions* options); void ffInitCommandOptions(FFCommandOptions* options); void ffDestroyCommandOptions(FFCommandOptions* options); + +extern FFModuleBaseInfo ffCommandModuleInfo; diff --git a/src/modules/cpu/cpu.c b/src/modules/cpu/cpu.c index 5af82f82c..2c35bbe56 100644 --- a/src/modules/cpu/cpu.c +++ b/src/modules/cpu/cpu.c @@ -212,7 +212,7 @@ void ffGenerateCPUJsonResult(FFCPUOptions* options, yyjson_mut_doc* doc, yyjson_ ffStrbufDestroy(&cpu.vendor); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffCPUModuleInfo = { .name = FF_CPU_MODULE_NAME, .description = "Print CPU name, frequency, etc", .initOptions = (void*) ffInitCPUOptions, @@ -237,7 +237,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitCPUOptions(FFCPUOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffCPUModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->temp = false; options->tempConfig = (FFColorRangeConfig) { 60, 80 }; diff --git a/src/modules/cpu/cpu.h b/src/modules/cpu/cpu.h index 1db4efbf7..b8ffcded4 100644 --- a/src/modules/cpu/cpu.h +++ b/src/modules/cpu/cpu.h @@ -7,3 +7,5 @@ void ffPrintCPU(FFCPUOptions* options); void ffInitCPUOptions(FFCPUOptions* options); void ffDestroyCPUOptions(FFCPUOptions* options); + +extern FFModuleBaseInfo ffCPUModuleInfo; diff --git a/src/modules/cpucache/cpucache.c b/src/modules/cpucache/cpucache.c index 29a574afa..b46b7de18 100644 --- a/src/modules/cpucache/cpucache.c +++ b/src/modules/cpucache/cpucache.c @@ -208,7 +208,7 @@ exit: ffListDestroy(&result.caches[3]); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffCPUCacheModuleInfo = { .name = FF_CPUCACHE_MODULE_NAME, .description = "Print CPU cache sizes", .initOptions = (void*) ffInitCPUCacheOptions, @@ -225,7 +225,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitCPUCacheOptions(FFCPUCacheOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffCPUCacheModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->compact = false; diff --git a/src/modules/cpucache/cpucache.h b/src/modules/cpucache/cpucache.h index c6d5d8ef6..5a9fa164a 100644 --- a/src/modules/cpucache/cpucache.h +++ b/src/modules/cpucache/cpucache.h @@ -7,3 +7,5 @@ void ffPrintCPUCache(FFCPUCacheOptions* options); void ffInitCPUCacheOptions(FFCPUCacheOptions* options); void ffDestroyCPUCacheOptions(FFCPUCacheOptions* options); + +extern FFModuleBaseInfo ffCPUCacheModuleInfo; diff --git a/src/modules/cpuusage/cpuusage.c b/src/modules/cpuusage/cpuusage.c index c5a6f595d..d50a5cac1 100644 --- a/src/modules/cpuusage/cpuusage.c +++ b/src/modules/cpuusage/cpuusage.c @@ -174,7 +174,7 @@ void ffGenerateCPUUsageJsonResult(FFCPUUsageOptions* options, yyjson_mut_doc* do } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffCPUUsageModuleInfo = { .name = FF_CPUUSAGE_MODULE_NAME, .description = "Print CPU usage. Costs some time to collect data", .initOptions = (void*) ffInitCPUUsageOptions, @@ -197,7 +197,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitCPUUsageOptions(FFCPUUsageOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffCPUUsageModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰓅"); options->separate = false; options->percent = (FFPercentageModuleConfig) { 50, 80, 0 }; diff --git a/src/modules/cpuusage/cpuusage.h b/src/modules/cpuusage/cpuusage.h index bbd74f085..8e2b26091 100644 --- a/src/modules/cpuusage/cpuusage.h +++ b/src/modules/cpuusage/cpuusage.h @@ -9,3 +9,5 @@ void ffPrepareCPUUsage(); void ffPrintCPUUsage(FFCPUUsageOptions* options); void ffInitCPUUsageOptions(FFCPUUsageOptions* options); void ffDestroyCPUUsageOptions(FFCPUUsageOptions* options); + +extern FFModuleBaseInfo ffCPUUsageModuleInfo; diff --git a/src/modules/cursor/cursor.c b/src/modules/cursor/cursor.c index edec4b5c9..00b59003a 100644 --- a/src/modules/cursor/cursor.c +++ b/src/modules/cursor/cursor.c @@ -94,7 +94,7 @@ void ffGenerateCursorJsonResult(FF_MAYBE_UNUSED FFCursorOptions* options, yyjson ffStrbufDestroy(&result.size); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffCursorModuleInfo = { .name = FF_CURSOR_MODULE_NAME, .description = "Print cursor style name", .initOptions = (void*) ffInitCursorOptions, @@ -111,7 +111,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitCursorOptions(FFCursorOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffCursorModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰆿"); } diff --git a/src/modules/cursor/cursor.h b/src/modules/cursor/cursor.h index 939033682..b4fcc1e3b 100644 --- a/src/modules/cursor/cursor.h +++ b/src/modules/cursor/cursor.h @@ -7,3 +7,5 @@ void ffPrintCursor(FFCursorOptions* options); void ffInitCursorOptions(FFCursorOptions* options); void ffDestroyCursorOptions(FFCursorOptions* options); + +extern FFModuleBaseInfo ffCursorModuleInfo; diff --git a/src/modules/custom/custom.c b/src/modules/custom/custom.c index 4f3e706fa..0f5182cd7 100644 --- a/src/modules/custom/custom.c +++ b/src/modules/custom/custom.c @@ -30,7 +30,7 @@ void ffParseCustomJsonObject(FFCustomOptions* options, yyjson_val* module) } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffCustomModuleInfo = { .name = FF_CUSTOM_MODULE_NAME, .description = "Print a custom string, with or without key", .initOptions = (void*) ffInitCustomOptions, @@ -42,7 +42,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitCustomOptions(FFCustomOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffCustomModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); ffStrbufSetStatic(&options->moduleArgs.key, " "); } diff --git a/src/modules/custom/custom.h b/src/modules/custom/custom.h index 172fe9ea3..50611704c 100644 --- a/src/modules/custom/custom.h +++ b/src/modules/custom/custom.h @@ -7,3 +7,5 @@ void ffPrintCustom(FFCustomOptions* options); void ffInitCustomOptions(FFCustomOptions* options); void ffDestroyCustomOptions(FFCustomOptions* options); + +extern FFModuleBaseInfo ffCustomModuleInfo; diff --git a/src/modules/datetime/datetime.c b/src/modules/datetime/datetime.c index f90780a88..3bf57a7a9 100644 --- a/src/modules/datetime/datetime.c +++ b/src/modules/datetime/datetime.c @@ -143,7 +143,7 @@ void ffGenerateDateTimeJsonResult(FF_MAYBE_UNUSED FFDateTimeOptions* options, yy yyjson_mut_obj_add_strcpy(doc, module, "result", ffTimeToFullStr(ffTimeGetNow())); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffDateTimeModuleInfo = { .name = FF_DATETIME_MODULE_NAME, .description = "Print current date and time", .initOptions = (void*) ffInitDateTimeOptions, @@ -181,7 +181,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitDateTimeOptions(FFDateTimeOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffDateTimeModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/datetime/datetime.h b/src/modules/datetime/datetime.h index b169e73d1..2b5383b89 100644 --- a/src/modules/datetime/datetime.h +++ b/src/modules/datetime/datetime.h @@ -7,3 +7,5 @@ void ffPrintDateTime(FFDateTimeOptions* options); void ffInitDateTimeOptions(FFDateTimeOptions* options); void ffDestroyDateTimeOptions(FFDateTimeOptions* options); + +extern FFModuleBaseInfo ffDateTimeModuleInfo; diff --git a/src/modules/de/de.c b/src/modules/de/de.c index 4ec94aa77..4390544a1 100644 --- a/src/modules/de/de.c +++ b/src/modules/de/de.c @@ -91,7 +91,7 @@ void ffGenerateDEJsonResult(FF_MAYBE_UNUSED FFDEOptions* options, yyjson_mut_doc yyjson_mut_obj_add_strbuf(doc, obj, "version", &version); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffDEModuleInfo = { .name = FF_DE_MODULE_NAME, .description = "Print desktop environment name", .initOptions = (void*) ffInitDEOptions, @@ -109,7 +109,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitDEOptions(FFDEOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffDEModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->slowVersionDetection = false; diff --git a/src/modules/de/de.h b/src/modules/de/de.h index 01cc458aa..90b5a9662 100644 --- a/src/modules/de/de.h +++ b/src/modules/de/de.h @@ -7,3 +7,5 @@ void ffPrintDE(FFDEOptions* options); void ffInitDEOptions(FFDEOptions* options); void ffDestroyDEOptions(FFDEOptions* options); + +extern FFModuleBaseInfo ffDEModuleInfo; diff --git a/src/modules/disk/disk.c b/src/modules/disk/disk.c index a8b646ff0..0f8259722 100644 --- a/src/modules/disk/disk.c +++ b/src/modules/disk/disk.c @@ -412,7 +412,7 @@ void ffGenerateDiskJsonResult(FFDiskOptions* options, yyjson_mut_doc* doc, yyjso } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffDiskModuleInfo = { .name = FF_DISK_MODULE_NAME, .description = "Print partitions, space usage, file system, etc", .initOptions = (void*) ffInitDiskOptions, @@ -451,7 +451,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitDiskOptions(FFDiskOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffDiskModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); ffStrbufInit(&options->folders); diff --git a/src/modules/disk/disk.h b/src/modules/disk/disk.h index e21531eae..cf0ee3478 100644 --- a/src/modules/disk/disk.h +++ b/src/modules/disk/disk.h @@ -7,3 +7,5 @@ void ffPrintDisk(FFDiskOptions* options); void ffInitDiskOptions(FFDiskOptions* options); void ffDestroyDiskOptions(FFDiskOptions* options); + +extern FFModuleBaseInfo ffDiskModuleInfo; diff --git a/src/modules/diskio/diskio.c b/src/modules/diskio/diskio.c index 6bc13524e..5764aa1b8 100644 --- a/src/modules/diskio/diskio.c +++ b/src/modules/diskio/diskio.c @@ -170,7 +170,7 @@ void ffGenerateDiskIOJsonResult(FFDiskIOOptions* options, yyjson_mut_doc* doc, y } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffDiskIOModuleInfo = { .name = FF_DISKIO_MODULE_NAME, .description = "Print physical disk I/O throughput", .initOptions = (void*) ffInitDiskIOOptions, @@ -193,7 +193,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitDiskIOOptions(FFDiskIOOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffDiskIOModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰓅"); ffStrbufInit(&options->namePrefix); diff --git a/src/modules/diskio/diskio.h b/src/modules/diskio/diskio.h index b3fa27bde..3dca4949f 100644 --- a/src/modules/diskio/diskio.h +++ b/src/modules/diskio/diskio.h @@ -9,3 +9,5 @@ void ffPrepareDiskIO(FFDiskIOOptions* options); void ffPrintDiskIO(FFDiskIOOptions* options); void ffInitDiskIOOptions(FFDiskIOOptions* options); void ffDestroyDiskIOOptions(FFDiskIOOptions* options); + +extern FFModuleBaseInfo ffDiskIOModuleInfo; diff --git a/src/modules/display/display.c b/src/modules/display/display.c index ecefdbe91..40ebc3477 100644 --- a/src/modules/display/display.c +++ b/src/modules/display/display.c @@ -402,7 +402,7 @@ void ffGenerateDisplayJsonResult(FF_MAYBE_UNUSED FFDisplayOptions* options, yyjs } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffDisplayModuleInfo = { .name = FF_DISPLAY_MODULE_NAME, .description = "Print resolutions, refresh rates, etc", .initOptions = (void*) ffInitDisplayOptions, @@ -441,7 +441,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitDisplayOptions(FFDisplayOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffDisplayModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰍹"); options->compactType = FF_DISPLAY_COMPACT_TYPE_NONE; options->preciseRefreshRate = false; diff --git a/src/modules/display/display.h b/src/modules/display/display.h index 7479295cf..9c3950aea 100644 --- a/src/modules/display/display.h +++ b/src/modules/display/display.h @@ -7,3 +7,5 @@ void ffPrintDisplay(FFDisplayOptions* options); void ffInitDisplayOptions(FFDisplayOptions* options); void ffDestroyDisplayOptions(FFDisplayOptions* options); + +extern FFModuleBaseInfo ffDisplayModuleInfo; diff --git a/src/modules/dns/dns.c b/src/modules/dns/dns.c index 749aa8d90..4de82d78b 100644 --- a/src/modules/dns/dns.c +++ b/src/modules/dns/dns.c @@ -139,7 +139,7 @@ exit: } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffDNSModuleInfo = { .name = FF_DNS_MODULE_NAME, .description = "Print configured DNS servers", .initOptions = (void*) ffInitDNSOptions, @@ -155,7 +155,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitDNSOptions(FFDNSOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffDNSModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰇖"); options->showType = FF_DNS_TYPE_BOTH; diff --git a/src/modules/dns/dns.h b/src/modules/dns/dns.h index a26504d59..46bff8c13 100644 --- a/src/modules/dns/dns.h +++ b/src/modules/dns/dns.h @@ -7,3 +7,5 @@ void ffPrintDNS(FFDNSOptions* options); void ffInitDNSOptions(FFDNSOptions* options); void ffDestroyDNSOptions(FFDNSOptions* options); + +extern FFModuleBaseInfo ffDNSModuleInfo; diff --git a/src/modules/editor/editor.c b/src/modules/editor/editor.c index d6e08fda0..256a434fe 100644 --- a/src/modules/editor/editor.c +++ b/src/modules/editor/editor.c @@ -104,7 +104,7 @@ void ffGenerateEditorJsonResult(FF_MAYBE_UNUSED FFEditorOptions* options, yyjson ffStrbufDestroy(&result.version); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffEditorModuleInfo = { .name = FF_EDITOR_MODULE_NAME, .description = "Print information of the default editor ($VISUAL or $EDITOR)", .initOptions = (void*) ffInitEditorOptions, @@ -124,7 +124,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitEditorOptions(FFEditorOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffEditorModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󱞎"); } diff --git a/src/modules/editor/editor.h b/src/modules/editor/editor.h index c18c8f67d..0f597fffc 100644 --- a/src/modules/editor/editor.h +++ b/src/modules/editor/editor.h @@ -7,3 +7,5 @@ void ffPrintEditor(FFEditorOptions* options); void ffInitEditorOptions(FFEditorOptions* options); void ffDestroyEditorOptions(FFEditorOptions* options); + +extern FFModuleBaseInfo ffEditorModuleInfo; diff --git a/src/modules/font/font.c b/src/modules/font/font.c index f7d272615..4ec299478 100644 --- a/src/modules/font/font.c +++ b/src/modules/font/font.c @@ -88,7 +88,7 @@ void ffGenerateFontJsonResult(FF_MAYBE_UNUSED FFFontOptions* options, yyjson_mut ffStrbufDestroy(&font.fonts[i]); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffFontModuleInfo = { .name = FF_FONT_MODULE_NAME, .description = "Print system font names", .initOptions = (void*) ffInitFontOptions, @@ -108,7 +108,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitFontOptions(FFFontOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffFontModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/font/font.h b/src/modules/font/font.h index 01d78f0ec..0872ce7b1 100644 --- a/src/modules/font/font.h +++ b/src/modules/font/font.h @@ -7,3 +7,5 @@ void ffPrintFont(FFFontOptions* options); void ffInitFontOptions(FFFontOptions* options); void ffDestroyFontOptions(FFFontOptions* options); + +extern FFModuleBaseInfo ffFontModuleInfo; diff --git a/src/modules/gamepad/gamepad.c b/src/modules/gamepad/gamepad.c index 1558d5873..854098ea5 100644 --- a/src/modules/gamepad/gamepad.c +++ b/src/modules/gamepad/gamepad.c @@ -130,7 +130,7 @@ void ffGenerateGamepadJsonResult(FF_MAYBE_UNUSED FFGamepadOptions* options, yyjs } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffGamepadModuleInfo = { .name = FF_GAMEPAD_MODULE_NAME, .description = "List (connected) gamepads", .initOptions = (void*) ffInitGamepadOptions, @@ -149,7 +149,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitGamepadOptions(FFGamepadOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffGamepadModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰺵"); options->percent = (FFPercentageModuleConfig) { 50, 20, 0 }; } diff --git a/src/modules/gamepad/gamepad.h b/src/modules/gamepad/gamepad.h index 309edd0a7..7534fff68 100644 --- a/src/modules/gamepad/gamepad.h +++ b/src/modules/gamepad/gamepad.h @@ -7,3 +7,5 @@ void ffPrintGamepad(FFGamepadOptions* options); void ffInitGamepadOptions(FFGamepadOptions* options); void ffDestroyGamepadOptions(FFGamepadOptions* options); + +extern FFModuleBaseInfo ffGamepadModuleInfo; diff --git a/src/modules/gpu/gpu.c b/src/modules/gpu/gpu.c index e74eb3ccf..3b4813f8b 100644 --- a/src/modules/gpu/gpu.c +++ b/src/modules/gpu/gpu.c @@ -414,7 +414,7 @@ void ffGenerateGPUJsonResult(FFGPUOptions* options, yyjson_mut_doc* doc, yyjson_ } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffGPUModuleInfo = { .name = FF_GPU_MODULE_NAME, .description = "Print GPU names, graphic memory size, type, etc", .initOptions = (void*) ffInitGPUOptions, @@ -449,7 +449,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitGPUOptions(FFGPUOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffGPUModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰾲"); options->driverSpecific = false; diff --git a/src/modules/gpu/gpu.h b/src/modules/gpu/gpu.h index 36dbd441d..e112f740f 100644 --- a/src/modules/gpu/gpu.h +++ b/src/modules/gpu/gpu.h @@ -7,3 +7,5 @@ void ffPrintGPU(FFGPUOptions* options); void ffInitGPUOptions(FFGPUOptions* options); void ffDestroyGPUOptions(FFGPUOptions* options); + +extern FFModuleBaseInfo ffGPUModuleInfo; diff --git a/src/modules/host/host.c b/src/modules/host/host.c index 9d1c7e74b..08c7c36d2 100644 --- a/src/modules/host/host.c +++ b/src/modules/host/host.c @@ -131,7 +131,7 @@ exit: ffStrbufDestroy(&host.vendor); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffHostModuleInfo = { .name = FF_HOST_MODULE_NAME, .description = "Print product name of your computer", .initOptions = (void*) ffInitHostOptions, @@ -153,7 +153,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitHostOptions(FFHostOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffHostModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰌢"); } diff --git a/src/modules/host/host.h b/src/modules/host/host.h index 780849bf2..d684b2043 100644 --- a/src/modules/host/host.h +++ b/src/modules/host/host.h @@ -7,3 +7,5 @@ void ffPrintHost(FFHostOptions* options); void ffInitHostOptions(FFHostOptions* options); void ffDestroyHostOptions(FFHostOptions* options); + +extern FFModuleBaseInfo ffHostModuleInfo; diff --git a/src/modules/icons/icons.c b/src/modules/icons/icons.c index d8ebf7574..91225fdf1 100644 --- a/src/modules/icons/icons.c +++ b/src/modules/icons/icons.c @@ -86,7 +86,7 @@ void ffGenerateIconsJsonResult(FF_MAYBE_UNUSED FFIconsOptions* options, yyjson_m ffStrbufDestroy(&result.icons2); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffIconsModuleInfo = { .name = FF_ICONS_MODULE_NAME, .description = "Print icon style name", .initOptions = (void*) ffInitIconsOptions, @@ -103,7 +103,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitIconsOptions(FFIconsOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffIconsModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/icons/icons.h b/src/modules/icons/icons.h index d31a83a9a..6ec8b4ee8 100644 --- a/src/modules/icons/icons.h +++ b/src/modules/icons/icons.h @@ -7,3 +7,5 @@ void ffPrintIcons(FFIconsOptions* options); void ffInitIconsOptions(FFIconsOptions* options); void ffDestroyIconsOptions(FFIconsOptions* options); + +extern FFModuleBaseInfo ffIconsModuleInfo; diff --git a/src/modules/initsystem/initsystem.c b/src/modules/initsystem/initsystem.c index 1652838a1..19625dc17 100644 --- a/src/modules/initsystem/initsystem.c +++ b/src/modules/initsystem/initsystem.c @@ -98,7 +98,7 @@ exit: ffStrbufDestroy(&result.version); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffInitSystemModuleInfo = { .name = FF_INITSYSTEM_MODULE_NAME, .description = "Print init system (pid 1) name and version", .initOptions = (void*) ffInitInitSystemOptions, @@ -117,7 +117,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitInitSystemOptions(FFInitSystemOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffInitSystemModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰿄"); } diff --git a/src/modules/initsystem/initsystem.h b/src/modules/initsystem/initsystem.h index 718f6691b..0a021ff61 100644 --- a/src/modules/initsystem/initsystem.h +++ b/src/modules/initsystem/initsystem.h @@ -7,3 +7,5 @@ void ffPrintInitSystem(FFInitSystemOptions* options); void ffInitInitSystemOptions(FFInitSystemOptions* options); void ffDestroyInitSystemOptions(FFInitSystemOptions* options); + +extern FFModuleBaseInfo ffInitSystemModuleInfo; diff --git a/src/modules/kernel/kernel.c b/src/modules/kernel/kernel.c index 23b544d9c..21d1e0ad9 100644 --- a/src/modules/kernel/kernel.c +++ b/src/modules/kernel/kernel.c @@ -66,7 +66,7 @@ void ffGenerateKernelJsonResult(FF_MAYBE_UNUSED FFKernelOptions* options, yyjson yyjson_mut_obj_add_uint(doc, obj, "pageSize", info->pageSize); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffKernelModuleInfo = { .name = FF_KERNEL_MODULE_NAME, .description = "Print system kernel version", .initOptions = (void*) ffInitKernelOptions, @@ -87,7 +87,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitKernelOptions(FFKernelOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffKernelModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/kernel/kernel.h b/src/modules/kernel/kernel.h index c1a6be856..7e2c0c68d 100644 --- a/src/modules/kernel/kernel.h +++ b/src/modules/kernel/kernel.h @@ -7,3 +7,5 @@ void ffPrintKernel(FFKernelOptions* options); void ffInitKernelOptions(FFKernelOptions* options); void ffDestroyKernelOptions(FFKernelOptions* options); + +extern FFModuleBaseInfo ffKernelModuleInfo; diff --git a/src/modules/keyboard/keyboard.c b/src/modules/keyboard/keyboard.c index d024444ec..d60d6543b 100644 --- a/src/modules/keyboard/keyboard.c +++ b/src/modules/keyboard/keyboard.c @@ -96,7 +96,7 @@ void ffGenerateKeyboardJsonResult(FF_MAYBE_UNUSED FFKeyboardOptions* options, yy } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffKeyboardModuleInfo = { .name = FF_KEYBOARD_MODULE_NAME, .description = "List (connected) keyboards", .initOptions = (void*) ffInitKeyboardOptions, @@ -113,7 +113,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitKeyboardOptions(FFKeyboardOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffKeyboardModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/keyboard/keyboard.h b/src/modules/keyboard/keyboard.h index b54a3ccba..140faf3ad 100644 --- a/src/modules/keyboard/keyboard.h +++ b/src/modules/keyboard/keyboard.h @@ -7,3 +7,5 @@ void ffPrintKeyboard(FFKeyboardOptions* options); void ffInitKeyboardOptions(FFKeyboardOptions* options); void ffDestroyKeyboardOptions(FFKeyboardOptions* options); + +extern FFModuleBaseInfo ffKeyboardModuleInfo; diff --git a/src/modules/lm/lm.c b/src/modules/lm/lm.c index cba026452..34bd9a40b 100644 --- a/src/modules/lm/lm.c +++ b/src/modules/lm/lm.c @@ -99,7 +99,7 @@ exit: ffStrbufDestroy(&result.version); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffLMModuleInfo = { .name = FF_LM_MODULE_NAME, .description = "Print login manager (desktop manager) name and version", .initOptions = (void*) ffInitLMOptions, @@ -117,7 +117,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitLMOptions(FFLMOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffLMModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰧨"); } diff --git a/src/modules/lm/lm.h b/src/modules/lm/lm.h index f6e1569e1..1dbf6d355 100644 --- a/src/modules/lm/lm.h +++ b/src/modules/lm/lm.h @@ -7,3 +7,5 @@ void ffPrintLM(FFLMOptions* options); void ffInitLMOptions(FFLMOptions* options); void ffDestroyLMOptions(FFLMOptions* options); + +extern FFModuleBaseInfo ffLMModuleInfo; diff --git a/src/modules/loadavg/loadavg.c b/src/modules/loadavg/loadavg.c index b7aeb71a0..1b7cd4e44 100644 --- a/src/modules/loadavg/loadavg.c +++ b/src/modules/loadavg/loadavg.c @@ -150,7 +150,7 @@ void ffGenerateLoadavgJsonResult(FF_MAYBE_UNUSED FFLoadavgOptions* options, yyjs yyjson_mut_arr_add_real(doc, arr, result[i]); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffLoadavgModuleInfo = { .name = FF_LOADAVG_MODULE_NAME, .description = "Print system load averages", .initOptions = (void*) ffInitLoadavgOptions, @@ -168,7 +168,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitLoadavgOptions(FFLoadavgOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffLoadavgModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->percent = (FFPercentageModuleConfig) { 50, 80, 0 }; diff --git a/src/modules/loadavg/loadavg.h b/src/modules/loadavg/loadavg.h index 1d546f57b..b1cecb6f0 100644 --- a/src/modules/loadavg/loadavg.h +++ b/src/modules/loadavg/loadavg.h @@ -7,3 +7,5 @@ void ffPrintLoadavg(FFLoadavgOptions* options); void ffInitLoadavgOptions(FFLoadavgOptions* options); void ffDestroyLoadavgOptions(FFLoadavgOptions* options); + +extern FFModuleBaseInfo ffLoadavgModuleInfo; diff --git a/src/modules/locale/locale.c b/src/modules/locale/locale.c index fdcd045f1..cb8a4496d 100644 --- a/src/modules/locale/locale.c +++ b/src/modules/locale/locale.c @@ -63,7 +63,7 @@ void ffGenerateLocaleJsonResult(FF_MAYBE_UNUSED FFLocaleOptions* options, yyjson yyjson_mut_obj_add_strbuf(doc, module, "result", &locale); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffLocaleModuleInfo = { .name = FF_LOCALE_MODULE_NAME, .description = "Print system locale name", .initOptions = (void*) ffInitLocaleOptions, @@ -79,7 +79,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitLocaleOptions(FFLocaleOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffLocaleModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/locale/locale.h b/src/modules/locale/locale.h index c1fe3f8f7..3420a954c 100644 --- a/src/modules/locale/locale.h +++ b/src/modules/locale/locale.h @@ -7,3 +7,5 @@ void ffPrintLocale(FFLocaleOptions* options); void ffInitLocaleOptions(FFLocaleOptions* options); void ffDestroyLocaleOptions(FFLocaleOptions* options); + +extern FFModuleBaseInfo ffLocaleModuleInfo; diff --git a/src/modules/localip/localip.c b/src/modules/localip/localip.c index 72bab65a5..1feb6b6bc 100644 --- a/src/modules/localip/localip.c +++ b/src/modules/localip/localip.c @@ -385,7 +385,7 @@ void ffGenerateLocalIpJsonResult(FF_MAYBE_UNUSED FFLocalIpOptions* options, yyjs } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffLocalIPModuleInfo = { .name = FF_LOCALIP_MODULE_NAME, .description = "List local IP addresses (v4 or v6), MAC addresses, etc", .initOptions = (void*) ffInitLocalIpOptions, @@ -408,7 +408,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitLocalIpOptions(FFLocalIpOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffLocalIPModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰩟"); options->showType = FF_LOCALIP_TYPE_IPV4_BIT | FF_LOCALIP_TYPE_PREFIX_LEN_BIT diff --git a/src/modules/localip/localip.h b/src/modules/localip/localip.h index 1ac255979..9a2e3876e 100644 --- a/src/modules/localip/localip.h +++ b/src/modules/localip/localip.h @@ -7,3 +7,5 @@ void ffPrintLocalIp(FFLocalIpOptions* options); void ffInitLocalIpOptions(FFLocalIpOptions* options); void ffDestroyLocalIpOptions(FFLocalIpOptions* options); + +extern FFModuleBaseInfo ffLocalIPModuleInfo; diff --git a/src/modules/media/media.c b/src/modules/media/media.c index 8fb1555d4..290f6ec38 100644 --- a/src/modules/media/media.c +++ b/src/modules/media/media.c @@ -151,7 +151,7 @@ void ffGenerateMediaJsonResult(FF_MAYBE_UNUSED FFMediaOptions* options, yyjson_m yyjson_mut_obj_add_strbuf(doc, player, "url", &media->url); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffMediaModuleInfo = { .name = FF_MEDIA_MODULE_NAME, .description = "Print playing song name", .initOptions = (void*) ffInitMediaOptions, @@ -171,7 +171,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitMediaOptions(FFMediaOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffMediaModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/media/media.h b/src/modules/media/media.h index 7c010b1fe..3ddbbfdf7 100644 --- a/src/modules/media/media.h +++ b/src/modules/media/media.h @@ -7,3 +7,5 @@ void ffPrintMedia(FFMediaOptions* options); void ffInitMediaOptions(FFMediaOptions* options); void ffDestroyMediaOptions(FFMediaOptions* options); + +extern FFModuleBaseInfo ffMediaModuleInfo; diff --git a/src/modules/memory/memory.c b/src/modules/memory/memory.c index 7388c44cc..fa1fbbc9f 100644 --- a/src/modules/memory/memory.c +++ b/src/modules/memory/memory.c @@ -113,7 +113,7 @@ void ffGenerateMemoryJsonResult(FF_MAYBE_UNUSED FFMemoryOptions* options, yyjson yyjson_mut_obj_add_uint(doc, obj, "used", storage.bytesUsed); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffMemoryModuleInfo = { .name = FF_MEMORY_MODULE_NAME, .description = "Print system memory usage info", .initOptions = (void*) ffInitMemoryOptions, @@ -132,7 +132,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitMemoryOptions(FFMemoryOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffMemoryModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->percent = (FFPercentageModuleConfig) { 50, 80, 0 }; } diff --git a/src/modules/memory/memory.h b/src/modules/memory/memory.h index dcef5e50d..69dc76402 100644 --- a/src/modules/memory/memory.h +++ b/src/modules/memory/memory.h @@ -7,3 +7,5 @@ void ffPrintMemory(FFMemoryOptions* options); void ffInitMemoryOptions(FFMemoryOptions* options); void ffDestroyMemoryOptions(FFMemoryOptions* options); + +extern FFModuleBaseInfo ffMemoryModuleInfo; diff --git a/src/modules/monitor/monitor.c b/src/modules/monitor/monitor.c index 557db306b..36ddf337a 100644 --- a/src/modules/monitor/monitor.c +++ b/src/modules/monitor/monitor.c @@ -112,7 +112,7 @@ void ffGenerateMonitorJsonResult(FF_MAYBE_UNUSED FFMonitorOptions* options, yyjs yyjson_mut_obj_add_str(doc, module, "error", "Monitor module is an alias of Display module"); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffMonitorModuleInfo = { .name = FF_MONITOR_MODULE_NAME, .description = "Alias of Display module", .initOptions = (void*) ffInitMonitorOptions, @@ -139,7 +139,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitMonitorOptions(FFMonitorOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffMonitorModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰹑"); } diff --git a/src/modules/monitor/monitor.h b/src/modules/monitor/monitor.h index d928c2ffe..fc0f45c8d 100644 --- a/src/modules/monitor/monitor.h +++ b/src/modules/monitor/monitor.h @@ -7,3 +7,5 @@ void ffPrintMonitor(FFMonitorOptions* options); void ffInitMonitorOptions(FFMonitorOptions* options); void ffDestroyMonitorOptions(FFMonitorOptions* options); + +extern FFModuleBaseInfo ffMonitorModuleInfo; diff --git a/src/modules/mouse/mouse.c b/src/modules/mouse/mouse.c index 298bc02a3..e84db7ff1 100644 --- a/src/modules/mouse/mouse.c +++ b/src/modules/mouse/mouse.c @@ -96,7 +96,7 @@ void ffGenerateMouseJsonResult(FF_MAYBE_UNUSED FFMouseOptions* options, yyjson_m } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffMouseModuleInfo = { .name = FF_MOUSE_MODULE_NAME, .description = "List connected mouses", .initOptions = (void*) ffInitMouseOptions, @@ -113,7 +113,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitMouseOptions(FFMouseOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffMouseModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰍽"); } diff --git a/src/modules/mouse/mouse.h b/src/modules/mouse/mouse.h index d78a375ae..fbcef98e6 100644 --- a/src/modules/mouse/mouse.h +++ b/src/modules/mouse/mouse.h @@ -7,3 +7,5 @@ void ffPrintMouse(FFMouseOptions* options); void ffInitMouseOptions(FFMouseOptions* options); void ffDestroyMouseOptions(FFMouseOptions* options); + +extern FFModuleBaseInfo ffMouseModuleInfo; diff --git a/src/modules/netio/netio.c b/src/modules/netio/netio.c index 30e643a6a..7e648853b 100644 --- a/src/modules/netio/netio.c +++ b/src/modules/netio/netio.c @@ -190,7 +190,7 @@ void ffGenerateNetIOJsonResult(FFNetIOOptions* options, yyjson_mut_doc* doc, yyj } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffNetIOModuleInfo = { .name = FF_NETIO_MODULE_NAME, .description = "Print network I/O throughput", .initOptions = (void*) ffInitNetIOOptions, @@ -217,12 +217,12 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitNetIOOptions(FFNetIOOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffNetIOModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰾆"); ffStrbufInit(&options->namePrefix); options->defaultRouteOnly = - #if __ANDROID__ || __OpenBSD__ + #if __ANDROID__ false #else true diff --git a/src/modules/netio/netio.h b/src/modules/netio/netio.h index 5b94e4bf2..8b119cf63 100644 --- a/src/modules/netio/netio.h +++ b/src/modules/netio/netio.h @@ -9,3 +9,5 @@ void ffPrepareNetIO(FFNetIOOptions* options); void ffPrintNetIO(FFNetIOOptions* options); void ffInitNetIOOptions(FFNetIOOptions* options); void ffDestroyNetIOOptions(FFNetIOOptions* options); + +extern FFModuleBaseInfo ffNetIOModuleInfo; diff --git a/src/modules/opencl/opencl.c b/src/modules/opencl/opencl.c index d0a72ea80..341f04e5c 100644 --- a/src/modules/opencl/opencl.c +++ b/src/modules/opencl/opencl.c @@ -114,7 +114,7 @@ void ffGenerateOpenCLJsonResult(FF_MAYBE_UNUSED FFOpenCLOptions* options, yyjson } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffOpenCLModuleInfo = { .name = FF_OPENCL_MODULE_NAME, .description = "Print highest OpenCL version supported by the GPU", .initOptions = (void*) ffInitOpenCLOptions, @@ -132,7 +132,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitOpenCLOptions(FFOpenCLOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffOpenCLModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/opencl/opencl.h b/src/modules/opencl/opencl.h index f378e3f0b..a089821d7 100644 --- a/src/modules/opencl/opencl.h +++ b/src/modules/opencl/opencl.h @@ -7,3 +7,5 @@ void ffPrintOpenCL(FFOpenCLOptions* options); void ffInitOpenCLOptions(FFOpenCLOptions* options); void ffDestroyOpenCLOptions(FFOpenCLOptions* options); + +extern FFModuleBaseInfo ffOpenCLModuleInfo; diff --git a/src/modules/opengl/opengl.c b/src/modules/opengl/opengl.c index 1ee320fd9..d8ee5e5b6 100644 --- a/src/modules/opengl/opengl.c +++ b/src/modules/opengl/opengl.c @@ -127,7 +127,7 @@ void ffGenerateOpenGLJsonResult(FF_MAYBE_UNUSED FFOpenGLOptions* options, yyjson ffStrbufDestroy(&result.library); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffOpenGLModuleInfo = { .name = FF_OPENGL_MODULE_NAME, .description = "Print highest OpenGL version supported by the GPU", .initOptions = (void*) ffInitOpenGLOptions, @@ -147,7 +147,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitOpenGLOptions(FFOpenGLOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffOpenGLModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->library = FF_OPENGL_LIBRARY_AUTO; diff --git a/src/modules/opengl/opengl.h b/src/modules/opengl/opengl.h index 0f9d34735..2a8e19e52 100644 --- a/src/modules/opengl/opengl.h +++ b/src/modules/opengl/opengl.h @@ -7,3 +7,5 @@ void ffPrintOpenGL(FFOpenGLOptions* options); void ffInitOpenGLOptions(FFOpenGLOptions* options); void ffDestroyOpenGLOptions(FFOpenGLOptions* options); + +extern FFModuleBaseInfo ffOpenGLModuleInfo; diff --git a/src/modules/os/os.c b/src/modules/os/os.c index 6056de9b1..969fddd26 100644 --- a/src/modules/os/os.c +++ b/src/modules/os/os.c @@ -159,7 +159,7 @@ void ffGenerateOSJsonResult(FF_MAYBE_UNUSED FFOSOptions* options, yyjson_mut_doc yyjson_mut_obj_add_strbuf(doc, obj, "versionID", &os->versionID); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffOSModuleInfo = { .name = FF_OS_MODULE_NAME, .description = "Print operating system name and version", .initOptions = (void*) ffInitOSOptions, @@ -186,7 +186,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitOSOptions(FFOSOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffOSModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, #ifdef _WIN32 "" @@ -202,6 +202,8 @@ void ffInitOSOptions(FFOSOptions* options) "" #elif __OpenBSD__ "" + #elif __Haiku__ + "" #else "?" #endif diff --git a/src/modules/os/os.h b/src/modules/os/os.h index ff2aa787d..35deb41af 100644 --- a/src/modules/os/os.h +++ b/src/modules/os/os.h @@ -7,3 +7,5 @@ void ffPrintOS(FFOSOptions* options); void ffInitOSOptions(FFOSOptions* options); void ffDestroyOSOptions(FFOSOptions* options); + +extern FFModuleBaseInfo ffOSModuleInfo; diff --git a/src/modules/packages/packages.c b/src/modules/packages/packages.c index 23025404d..a3bb951d0 100644 --- a/src/modules/packages/packages.c +++ b/src/modules/packages/packages.c @@ -431,7 +431,7 @@ void ffGeneratePackagesJsonResult(FF_MAYBE_UNUSED FFPackagesOptions* options, yy yyjson_mut_obj_add_strbuf(doc, obj, "pacmanBranch", &counts.pacmanBranch); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffPackagesModuleInfo = { .name = FF_PACKAGES_MODULE_NAME, .description = "List installed package managers and count of installed packages", .initOptions = (void*) ffInitPackagesOptions, @@ -493,7 +493,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitPackagesOptions(FFPackagesOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffPackagesModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰏖"); options->disabled = FF_PACKAGES_DISABLE_LIST; diff --git a/src/modules/packages/packages.h b/src/modules/packages/packages.h index 97b8b4c91..7d2b7dd40 100644 --- a/src/modules/packages/packages.h +++ b/src/modules/packages/packages.h @@ -7,3 +7,5 @@ void ffPrintPackages(FFPackagesOptions* options); void ffInitPackagesOptions(FFPackagesOptions* options); void ffDestroyPackagesOptions(FFPackagesOptions* options); + +extern FFModuleBaseInfo ffPackagesModuleInfo; diff --git a/src/modules/physicaldisk/physicaldisk.c b/src/modules/physicaldisk/physicaldisk.c index b93bfe6ce..4c971ac0c 100644 --- a/src/modules/physicaldisk/physicaldisk.c +++ b/src/modules/physicaldisk/physicaldisk.c @@ -226,7 +226,7 @@ void ffGeneratePhysicalDiskJsonResult(FFPhysicalDiskOptions* options, yyjson_mut } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffPhysicalDiskModuleInfo = { .name = FF_PHYSICALDISK_MODULE_NAME, .description = "Print physical disk information", .initOptions = (void*) ffInitPhysicalDiskOptions, @@ -251,7 +251,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitPhysicalDiskOptions(FFPhysicalDiskOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffPhysicalDiskModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰋊"); ffStrbufInit(&options->namePrefix); diff --git a/src/modules/physicaldisk/physicaldisk.h b/src/modules/physicaldisk/physicaldisk.h index d8216c140..2ce2d05e6 100644 --- a/src/modules/physicaldisk/physicaldisk.h +++ b/src/modules/physicaldisk/physicaldisk.h @@ -7,3 +7,5 @@ void ffPrintPhysicalDisk(FFPhysicalDiskOptions* options); void ffInitPhysicalDiskOptions(FFPhysicalDiskOptions* options); void ffDestroyPhysicalDiskOptions(FFPhysicalDiskOptions* options); + +extern FFModuleBaseInfo ffPhysicalDiskModuleInfo; diff --git a/src/modules/physicalmemory/physicalmemory.c b/src/modules/physicalmemory/physicalmemory.c index cb6bcb918..7ab325050 100644 --- a/src/modules/physicalmemory/physicalmemory.c +++ b/src/modules/physicalmemory/physicalmemory.c @@ -139,7 +139,7 @@ void ffGeneratePhysicalMemoryJsonResult(FF_MAYBE_UNUSED FFPhysicalMemoryOptions* } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffPhysicalMemoryModuleInfo = { .name = FF_PHYSICALMEMORY_MODULE_NAME, .description = "Print system physical memory devices", .initOptions = (void*) ffInitPhysicalMemoryOptions, @@ -165,7 +165,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitPhysicalMemoryOptions(FFPhysicalMemoryOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffPhysicalMemoryModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰑭"); } diff --git a/src/modules/physicalmemory/physicalmemory.h b/src/modules/physicalmemory/physicalmemory.h index c9e0048d1..51d25206e 100644 --- a/src/modules/physicalmemory/physicalmemory.h +++ b/src/modules/physicalmemory/physicalmemory.h @@ -7,3 +7,5 @@ void ffPrintPhysicalMemory(FFPhysicalMemoryOptions* options); void ffInitPhysicalMemoryOptions(FFPhysicalMemoryOptions* options); void ffDestroyPhysicalMemoryOptions(FFPhysicalMemoryOptions* options); + +extern FFModuleBaseInfo ffPhysicalMemoryModuleInfo; diff --git a/src/modules/player/player.c b/src/modules/player/player.c index 555746a90..9811922a9 100644 --- a/src/modules/player/player.c +++ b/src/modules/player/player.c @@ -107,7 +107,7 @@ void ffGeneratePlayerJsonResult(FF_MAYBE_UNUSED FFMediaOptions* options, yyjson_ yyjson_mut_obj_add_str(doc, module, "error", "Player module is an alias of Media module"); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffPlayerModuleInfo = { .name = FF_PLAYER_MODULE_NAME, .description = "Print music player name", .initOptions = (void*) ffInitPlayerOptions, @@ -126,7 +126,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitPlayerOptions(FFPlayerOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffPlayerModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰥠"); } diff --git a/src/modules/player/player.h b/src/modules/player/player.h index 3912a3fe3..f70380c6d 100644 --- a/src/modules/player/player.h +++ b/src/modules/player/player.h @@ -8,3 +8,5 @@ void ffPrintPlayer(FFPlayerOptions* options); void ffInitPlayerOptions(FFPlayerOptions* options); void ffDestroyPlayerOptions(FFPlayerOptions* options); + +extern FFModuleBaseInfo ffPlayerModuleInfo; diff --git a/src/modules/poweradapter/poweradapter.c b/src/modules/poweradapter/poweradapter.c index abd3b4f85..0f57862c6 100644 --- a/src/modules/poweradapter/poweradapter.c +++ b/src/modules/poweradapter/poweradapter.c @@ -111,7 +111,7 @@ void ffGeneratePowerAdapterJsonResult(FF_MAYBE_UNUSED FFPowerAdapterOptions* opt } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffPowerAdapterModuleInfo = { .name = FF_POWERADAPTER_MODULE_NAME, .description = "Print power adapter name and charging watts", .initOptions = (void*) ffInitPowerAdapterOptions, @@ -132,7 +132,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitPowerAdapterOptions(FFPowerAdapterOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffPowerAdapterModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰚥"); } diff --git a/src/modules/poweradapter/poweradapter.h b/src/modules/poweradapter/poweradapter.h index 315c6e749..03d2c8946 100644 --- a/src/modules/poweradapter/poweradapter.h +++ b/src/modules/poweradapter/poweradapter.h @@ -7,3 +7,5 @@ void ffPrintPowerAdapter(FFPowerAdapterOptions* options); void ffInitPowerAdapterOptions(FFPowerAdapterOptions* options); void ffDestroyPowerAdapterOptions(FFPowerAdapterOptions* options); + +extern FFModuleBaseInfo ffPowerAdapterModuleInfo; diff --git a/src/modules/processes/processes.c b/src/modules/processes/processes.c index 5d8ab9d76..05b6c3df5 100644 --- a/src/modules/processes/processes.c +++ b/src/modules/processes/processes.c @@ -64,7 +64,7 @@ void ffGenerateProcessesJsonResult(FF_MAYBE_UNUSED FFProcessesOptions* options, yyjson_mut_obj_add_uint(doc, module, "result", result); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffProcessesModuleInfo = { .name = FF_PROCESSES_MODULE_NAME, .description = "Print number of running processes", .initOptions = (void*) ffInitProcessesOptions, @@ -80,7 +80,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitProcessesOptions(FFProcessesOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffProcessesModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/processes/processes.h b/src/modules/processes/processes.h index d2159ca0e..a8e733001 100644 --- a/src/modules/processes/processes.h +++ b/src/modules/processes/processes.h @@ -7,3 +7,5 @@ void ffPrintProcesses(FFProcessesOptions* options); void ffInitProcessesOptions(FFProcessesOptions* options); void ffDestroyProcessesOptions(FFProcessesOptions* options); + +extern FFModuleBaseInfo ffProcessesModuleInfo; diff --git a/src/modules/publicip/publicip.c b/src/modules/publicip/publicip.c index fce7ca18e..3a0f417f5 100644 --- a/src/modules/publicip/publicip.c +++ b/src/modules/publicip/publicip.c @@ -108,7 +108,7 @@ void ffGeneratePublicIpJsonResult(FFPublicIpOptions* options, yyjson_mut_doc* do ffStrbufDestroy(&result.location); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffPublicIPModuleInfo = { .name = FF_PUBLICIP_MODULE_NAME, .description = "Print your public IP address, etc", .initOptions = (void*) ffInitPublicIpOptions, @@ -125,7 +125,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitPublicIpOptions(FFPublicIpOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffPublicIPModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰩠"); ffStrbufInit(&options->url); diff --git a/src/modules/publicip/publicip.h b/src/modules/publicip/publicip.h index e54bab809..0d178e520 100644 --- a/src/modules/publicip/publicip.h +++ b/src/modules/publicip/publicip.h @@ -9,3 +9,5 @@ void ffPreparePublicIp(FFPublicIpOptions* options); void ffPrintPublicIp(FFPublicIpOptions* options); void ffInitPublicIpOptions(FFPublicIpOptions* options); void ffDestroyPublicIpOptions(FFPublicIpOptions* options); + +extern FFModuleBaseInfo ffPublicIPModuleInfo; diff --git a/src/modules/separator/separator.c b/src/modules/separator/separator.c index a8b9a86be..a8ddd1dbb 100644 --- a/src/modules/separator/separator.c +++ b/src/modules/separator/separator.c @@ -154,7 +154,7 @@ void ffGenerateSeparatorJsonConfig(FFSeparatorOptions* options, yyjson_mut_doc* yyjson_mut_obj_add_strbuf(doc, module, "string", &options->string); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffSeparatorModuleInfo = { .name = FF_SEPARATOR_MODULE_NAME, .description = "Print a separator line", .initOptions = (void*) ffInitSeparatorOptions, @@ -166,7 +166,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitSeparatorOptions(FFSeparatorOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffSeparatorModuleInfo; ffStrbufInitStatic(&options->string, "-"); ffStrbufInit(&options->outputColor); options->length = 0; diff --git a/src/modules/separator/separator.h b/src/modules/separator/separator.h index bca935521..804a76405 100644 --- a/src/modules/separator/separator.h +++ b/src/modules/separator/separator.h @@ -7,3 +7,5 @@ void ffPrintSeparator(FFSeparatorOptions* options); void ffInitSeparatorOptions(FFSeparatorOptions* options); void ffDestroySeparatorOptions(FFSeparatorOptions* options); + +extern FFModuleBaseInfo ffSeparatorModuleInfo; diff --git a/src/modules/shell/shell.c b/src/modules/shell/shell.c index df433ded9..638db6a43 100644 --- a/src/modules/shell/shell.c +++ b/src/modules/shell/shell.c @@ -88,7 +88,7 @@ void ffGenerateShellJsonResult(FF_MAYBE_UNUSED FFShellOptions* options, yyjson_m yyjson_mut_obj_add_null(doc, obj, "tty"); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffShellModuleInfo = { .name = FF_SHELL_MODULE_NAME, .description = "Print current shell name and version", .initOptions = (void*) ffInitShellOptions, @@ -111,7 +111,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitShellOptions(FFShellOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffShellModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/shell/shell.h b/src/modules/shell/shell.h index 01f9f17de..12fd2107b 100644 --- a/src/modules/shell/shell.h +++ b/src/modules/shell/shell.h @@ -7,3 +7,5 @@ void ffPrintShell(FFShellOptions* options); void ffInitShellOptions(FFShellOptions* options); void ffDestroyShellOptions(FFShellOptions* options); + +extern FFModuleBaseInfo ffShellModuleInfo; diff --git a/src/modules/sound/sound.c b/src/modules/sound/sound.c index 759f8fdf4..92adc266c 100644 --- a/src/modules/sound/sound.c +++ b/src/modules/sound/sound.c @@ -206,7 +206,7 @@ void ffGenerateSoundJsonResult(FF_MAYBE_UNUSED FFSoundOptions* options, yyjson_m } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffSoundModuleInfo = { .name = FF_SOUND_MODULE_NAME, .description = "Print sound devices, volume, etc", .initOptions = (void*) ffInitSoundOptions, @@ -227,7 +227,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitSoundOptions(FFSoundOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffSoundModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->soundType = FF_SOUND_TYPE_MAIN; diff --git a/src/modules/sound/sound.h b/src/modules/sound/sound.h index 35c3f2a7b..fa4e808ab 100644 --- a/src/modules/sound/sound.h +++ b/src/modules/sound/sound.h @@ -7,3 +7,5 @@ void ffPrintSound(FFSoundOptions* options); void ffInitSoundOptions(FFSoundOptions* options); void ffDestroySoundOptions(FFSoundOptions* options); + +extern FFModuleBaseInfo ffSoundModuleInfo; diff --git a/src/modules/swap/swap.c b/src/modules/swap/swap.c index 54265d90a..15d7fe916 100644 --- a/src/modules/swap/swap.c +++ b/src/modules/swap/swap.c @@ -189,7 +189,7 @@ void ffGenerateSwapJsonResult(FF_MAYBE_UNUSED FFSwapOptions* options, yyjson_mut } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffSwapModuleInfo = { .name = FF_SWAP_MODULE_NAME, .description = "Print swap (paging file) space usage", .initOptions = (void*) ffInitSwapOptions, @@ -209,7 +209,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitSwapOptions(FFSwapOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffSwapModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰓡"); options->percent = (FFPercentageModuleConfig) { 50, 80, 0 }; options->separate = false; diff --git a/src/modules/swap/swap.h b/src/modules/swap/swap.h index b44ae4df3..c7c61dff1 100644 --- a/src/modules/swap/swap.h +++ b/src/modules/swap/swap.h @@ -7,3 +7,5 @@ void ffPrintSwap(FFSwapOptions* options); void ffInitSwapOptions(FFSwapOptions* options); void ffDestroySwapOptions(FFSwapOptions* options); + +extern FFModuleBaseInfo ffSwapModuleInfo; diff --git a/src/modules/terminal/terminal.c b/src/modules/terminal/terminal.c index 9ddb3ae7f..1eb6dfba1 100644 --- a/src/modules/terminal/terminal.c +++ b/src/modules/terminal/terminal.c @@ -81,7 +81,7 @@ void ffGenerateTerminalJsonResult(FF_MAYBE_UNUSED FFTerminalOptions* options, yy yyjson_mut_obj_add_strbuf(doc, obj, "tty", &result->tty); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffTerminalModuleInfo = { .name = FF_TERMINAL_MODULE_NAME, .description = "Print current terminal name and version", .initOptions = (void*) ffInitTerminalOptions, @@ -104,7 +104,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitTerminalOptions(FFTerminalOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffTerminalModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/terminal/terminal.h b/src/modules/terminal/terminal.h index 9e1bbf75e..f397867f4 100644 --- a/src/modules/terminal/terminal.h +++ b/src/modules/terminal/terminal.h @@ -7,3 +7,5 @@ void ffPrintTerminal(FFTerminalOptions* options); void ffInitTerminalOptions(FFTerminalOptions* options); void ffDestroyTerminalOptions(FFTerminalOptions* options); + +extern FFModuleBaseInfo ffTerminalModuleInfo; diff --git a/src/modules/terminalfont/terminalfont.c b/src/modules/terminalfont/terminalfont.c index 43cab5610..e6b1dfe1e 100644 --- a/src/modules/terminalfont/terminalfont.c +++ b/src/modules/terminalfont/terminalfont.c @@ -106,7 +106,7 @@ void ffGenerateTerminalFontJsonResult(FF_MAYBE_UNUSED FFTerminalOptions* options ffFontDestroy(&result.fallback); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffTerminalFontModuleInfo = { .name = FF_TERMINALFONT_MODULE_NAME, .description = "Print font name and size used by current terminal", .initOptions = (void*) ffInitTerminalFontOptions, @@ -125,7 +125,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitTerminalFontOptions(FFTerminalFontOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffTerminalFontModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/terminalfont/terminalfont.h b/src/modules/terminalfont/terminalfont.h index 01eee0802..ff12829e1 100644 --- a/src/modules/terminalfont/terminalfont.h +++ b/src/modules/terminalfont/terminalfont.h @@ -7,3 +7,5 @@ void ffPrintTerminalFont(FFTerminalFontOptions* options); void ffInitTerminalFontOptions(FFTerminalFontOptions* options); void ffDestroyTerminalFontOptions(FFTerminalFontOptions* options); + +extern FFModuleBaseInfo ffTerminalFontModuleInfo; diff --git a/src/modules/terminalsize/terminalsize.c b/src/modules/terminalsize/terminalsize.c index 9b5a6f56b..1b3dfe029 100644 --- a/src/modules/terminalsize/terminalsize.c +++ b/src/modules/terminalsize/terminalsize.c @@ -76,7 +76,7 @@ void ffGenerateTerminalSizeJsonResult(FF_MAYBE_UNUSED FFTerminalOptions* options yyjson_mut_obj_add_uint(doc, obj, "height", result.height); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffTerminalSizeModuleInfo = { .name = FF_TERMINALSIZE_MODULE_NAME, .description = "Print current terminal size", .initOptions = (void*) ffInitTerminalSizeOptions, @@ -95,7 +95,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitTerminalSizeOptions(FFTerminalSizeOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffTerminalSizeModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰲎"); } diff --git a/src/modules/terminalsize/terminalsize.h b/src/modules/terminalsize/terminalsize.h index e88f8b6c7..eca007a48 100644 --- a/src/modules/terminalsize/terminalsize.h +++ b/src/modules/terminalsize/terminalsize.h @@ -7,3 +7,5 @@ void ffPrintTerminalSize(FFTerminalSizeOptions* options); void ffInitTerminalSizeOptions(FFTerminalSizeOptions* options); void ffDestroyTerminalSizeOptions(FFTerminalSizeOptions* options); + +extern FFModuleBaseInfo ffTerminalSizeModuleInfo; diff --git a/src/modules/terminaltheme/terminaltheme.c b/src/modules/terminaltheme/terminaltheme.c index dd7a256b4..74439f59e 100644 --- a/src/modules/terminaltheme/terminaltheme.c +++ b/src/modules/terminaltheme/terminaltheme.c @@ -89,7 +89,7 @@ void ffGenerateTerminalThemeJsonResult(FF_MAYBE_UNUSED FFTerminalOptions* option yyjson_mut_obj_add_bool(doc, bg, "dark", result.bg.dark); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffTerminalThemeModuleInfo = { .name = FF_TERMINALTHEME_MODULE_NAME, .description = "Print current terminal theme (foreground and background colors)", .initOptions = (void*) ffInitTerminalThemeOptions, @@ -108,7 +108,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitTerminalThemeOptions(FFTerminalThemeOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffTerminalThemeModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰔎"); } diff --git a/src/modules/terminaltheme/terminaltheme.h b/src/modules/terminaltheme/terminaltheme.h index fb5cbb58a..d44826eee 100644 --- a/src/modules/terminaltheme/terminaltheme.h +++ b/src/modules/terminaltheme/terminaltheme.h @@ -7,3 +7,5 @@ void ffPrintTerminalTheme(FFTerminalThemeOptions* options); void ffInitTerminalThemeOptions(FFTerminalThemeOptions* options); void ffDestroyTerminalThemeOptions(FFTerminalThemeOptions* options); + +extern FFModuleBaseInfo ffTerminalThemeModuleInfo; diff --git a/src/modules/theme/theme.c b/src/modules/theme/theme.c index daa93d9eb..3b1448b28 100644 --- a/src/modules/theme/theme.c +++ b/src/modules/theme/theme.c @@ -86,7 +86,7 @@ void ffGenerateThemeJsonResult(FF_MAYBE_UNUSED FFThemeOptions* options, yyjson_m ffStrbufDestroy(&result.theme2); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffThemeModuleInfo = { .name = FF_THEME_MODULE_NAME, .description = "Print current theme of desktop environment", .initOptions = (void*) ffInitThemeOptions, @@ -103,7 +103,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitThemeOptions(FFThemeOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffThemeModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰉼"); } diff --git a/src/modules/theme/theme.h b/src/modules/theme/theme.h index 6ead202bf..4b9c24f49 100644 --- a/src/modules/theme/theme.h +++ b/src/modules/theme/theme.h @@ -7,3 +7,5 @@ void ffPrintTheme(FFThemeOptions* options); void ffInitThemeOptions(FFThemeOptions* options); void ffDestroyThemeOptions(FFThemeOptions* options); + +extern FFModuleBaseInfo ffThemeModuleInfo; diff --git a/src/modules/title/title.c b/src/modules/title/title.c index 293e1f9dd..b80cae4cc 100644 --- a/src/modules/title/title.c +++ b/src/modules/title/title.c @@ -140,7 +140,7 @@ void ffGenerateTitleJsonResult(FF_MAYBE_UNUSED FFTitleOptions* options, yyjson_m yyjson_mut_obj_add_strbuf(doc, obj, "userShell", &instance.state.platform.userShell); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffTitleModuleInfo = { .name = FF_TITLE_MODULE_NAME, .description = "Print title, which contains your user name, hostname", .initOptions = (void*) ffInitTitleOptions, @@ -164,7 +164,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitTitleOptions(FFTitleOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffTitleModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); ffStrbufSetStatic(&options->moduleArgs.key, " "); diff --git a/src/modules/title/title.h b/src/modules/title/title.h index 83ddfa9b5..6b616ec31 100644 --- a/src/modules/title/title.h +++ b/src/modules/title/title.h @@ -7,3 +7,5 @@ void ffPrintTitle(FFTitleOptions* options); void ffInitTitleOptions(FFTitleOptions* options); void ffDestroyTitleOptions(FFTitleOptions* options); + +extern FFModuleBaseInfo ffTitleModuleInfo; diff --git a/src/modules/tpm/tpm.c b/src/modules/tpm/tpm.c index bd0c05f08..82eb04d51 100644 --- a/src/modules/tpm/tpm.c +++ b/src/modules/tpm/tpm.c @@ -81,7 +81,7 @@ void ffGenerateTPMJsonResult(FF_MAYBE_UNUSED FFTerminalOptions* options, yyjson_ ffStrbufDestroy(&result.description); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffTPMModuleInfo = { .name = FF_TPM_MODULE_NAME, .description = "Print info of Trusted Platform Module (TPM) Security Device", .initOptions = (void*) ffInitTPMOptions, @@ -98,7 +98,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitTPMOptions(FFTPMOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffTPMModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/tpm/tpm.h b/src/modules/tpm/tpm.h index 3356a46dc..fefcae96e 100644 --- a/src/modules/tpm/tpm.h +++ b/src/modules/tpm/tpm.h @@ -7,3 +7,5 @@ void ffPrintTPM(FFTPMOptions* options); void ffInitTPMOptions(FFTPMOptions* options); void ffDestroyTPMOptions(FFTPMOptions* options); + +extern FFModuleBaseInfo ffTPMModuleInfo; diff --git a/src/modules/uptime/uptime.c b/src/modules/uptime/uptime.c index 771e4b6da..9738d8ac0 100644 --- a/src/modules/uptime/uptime.c +++ b/src/modules/uptime/uptime.c @@ -93,7 +93,7 @@ void ffGenerateUptimeJsonResult(FF_MAYBE_UNUSED FFUptimeOptions* options, yyjson yyjson_mut_obj_add_strcpy(doc, obj, "bootTime", ffTimeToFullStr(result.bootTime)); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffUptimeModuleInfo = { .name = FF_UPTIME_MODULE_NAME, .description = "Print how long system has been running", .initOptions = (void*) ffInitUptimeOptions, @@ -118,7 +118,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitUptimeOptions(FFUptimeOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffUptimeModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/uptime/uptime.h b/src/modules/uptime/uptime.h index 17b6c1bc6..7ffddb694 100644 --- a/src/modules/uptime/uptime.h +++ b/src/modules/uptime/uptime.h @@ -7,3 +7,5 @@ void ffPrintUptime(FFUptimeOptions* options); void ffInitUptimeOptions(FFUptimeOptions* options); void ffDestroyUptimeOptions(FFUptimeOptions* options); + +extern FFModuleBaseInfo ffUptimeModuleInfo; diff --git a/src/modules/users/users.c b/src/modules/users/users.c index 71d2150a3..4f0fc4cfa 100644 --- a/src/modules/users/users.c +++ b/src/modules/users/users.c @@ -185,7 +185,7 @@ void ffGenerateUsersJsonResult(FFUsersOptions* options, yyjson_mut_doc* doc, yyj } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffUsersModuleInfo = { .name = FF_USERS_MODULE_NAME, .description = "Print users currently logged in", .initOptions = (void*) ffInitUsersOptions, @@ -213,7 +213,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitUsersOptions(FFUsersOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffUsersModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->compact = false; diff --git a/src/modules/users/users.h b/src/modules/users/users.h index 81d3dd3f5..c8c7f78e2 100644 --- a/src/modules/users/users.h +++ b/src/modules/users/users.h @@ -7,3 +7,5 @@ void ffPrintUsers(FFUsersOptions* options); void ffInitUsersOptions(FFUsersOptions* options); void ffDestroyUsersOptions(FFUsersOptions* options); + +extern FFModuleBaseInfo ffUsersModuleInfo; diff --git a/src/modules/version/version.c b/src/modules/version/version.c index e39036eeb..599978478 100644 --- a/src/modules/version/version.c +++ b/src/modules/version/version.c @@ -97,7 +97,7 @@ void ffGenerateVersionJsonResult(FF_MAYBE_UNUSED FFVersionOptions* options, yyjs } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffVersionModuleInfo = { .name = FF_VERSION_MODULE_NAME, .description = "Print Fastfetch version", .initOptions = (void*) ffInitVersionOptions, @@ -122,7 +122,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitVersionOptions(FFVersionOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffVersionModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/version/version.h b/src/modules/version/version.h index 1cab28d94..9228f99e8 100644 --- a/src/modules/version/version.h +++ b/src/modules/version/version.h @@ -7,3 +7,5 @@ void ffPrintVersion(FFVersionOptions* options); void ffInitVersionOptions(FFVersionOptions* options); void ffDestroyVersionOptions(FFVersionOptions* options); + +extern FFModuleBaseInfo ffVersionModuleInfo; diff --git a/src/modules/vulkan/vulkan.c b/src/modules/vulkan/vulkan.c index 3cd6e5fb9..f8740be65 100644 --- a/src/modules/vulkan/vulkan.c +++ b/src/modules/vulkan/vulkan.c @@ -128,7 +128,7 @@ void ffGenerateVulkanJsonResult(FF_MAYBE_UNUSED FFVulkanOptions* options, yyjson } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffVulkanModuleInfo = { .name = FF_VULKAN_MODULE_NAME, .description = "Print highest Vulkan version supported by the GPU", .initOptions = (void*) ffInitVulkanOptions, @@ -147,7 +147,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitVulkanOptions(FFVulkanOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffVulkanModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); } diff --git a/src/modules/vulkan/vulkan.h b/src/modules/vulkan/vulkan.h index 397c42093..0a42bdd84 100644 --- a/src/modules/vulkan/vulkan.h +++ b/src/modules/vulkan/vulkan.h @@ -7,3 +7,5 @@ void ffPrintVulkan(FFVulkanOptions* options); void ffInitVulkanOptions(FFVulkanOptions* options); void ffDestroyVulkanOptions(FFVulkanOptions* options); + +extern FFModuleBaseInfo ffVulkanModuleInfo; diff --git a/src/modules/wallpaper/wallpaper.c b/src/modules/wallpaper/wallpaper.c index 445cadb33..b69c75a61 100644 --- a/src/modules/wallpaper/wallpaper.c +++ b/src/modules/wallpaper/wallpaper.c @@ -73,7 +73,7 @@ void ffGenerateWallpaperJsonResult(FF_MAYBE_UNUSED FFWallpaperOptions* options, yyjson_mut_obj_add_strbuf(doc, module, "result", &fullpath); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffWallpaperModuleInfo = { .name = FF_WALLPAPER_MODULE_NAME, .description = "Print image file path of current wallpaper", .initOptions = (void*) ffInitWallpaperOptions, @@ -90,7 +90,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitWallpaperOptions(FFWallpaperOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffWallpaperModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰸉"); } diff --git a/src/modules/wallpaper/wallpaper.h b/src/modules/wallpaper/wallpaper.h index a2c804ae3..12876b481 100644 --- a/src/modules/wallpaper/wallpaper.h +++ b/src/modules/wallpaper/wallpaper.h @@ -7,3 +7,5 @@ void ffPrintWallpaper(FFWallpaperOptions* options); void ffInitWallpaperOptions(FFWallpaperOptions* options); void ffDestroyWallpaperOptions(FFWallpaperOptions* options); + +extern FFModuleBaseInfo ffWallpaperModuleInfo; diff --git a/src/modules/weather/weather.c b/src/modules/weather/weather.c index 3fad7d116..b86c687ee 100644 --- a/src/modules/weather/weather.c +++ b/src/modules/weather/weather.c @@ -91,7 +91,7 @@ void ffGenerateWeatherJsonResult(FFWeatherOptions* options, yyjson_mut_doc* doc, yyjson_mut_obj_add_strbuf(doc, module, "result", &result); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffWeatherModuleInfo = { .name = FF_WEATHER_MODULE_NAME, .description = "Print weather information", .initOptions = (void*) ffInitWeatherOptions, @@ -107,7 +107,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitWeatherOptions(FFWeatherOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffWeatherModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰖙"); ffStrbufInit(&options->location); diff --git a/src/modules/weather/weather.h b/src/modules/weather/weather.h index 1ec2f02a2..54c4bbde2 100644 --- a/src/modules/weather/weather.h +++ b/src/modules/weather/weather.h @@ -9,3 +9,5 @@ void ffPrepareWeather(FFWeatherOptions* options); void ffPrintWeather(FFWeatherOptions* options); void ffInitWeatherOptions(FFWeatherOptions* options); void ffDestroyWeatherOptions(FFWeatherOptions* options); + +extern FFModuleBaseInfo ffWeatherModuleInfo; diff --git a/src/modules/wifi/wifi.c b/src/modules/wifi/wifi.c index 799c9e547..f19e46f84 100644 --- a/src/modules/wifi/wifi.c +++ b/src/modules/wifi/wifi.c @@ -206,7 +206,7 @@ void ffGenerateWifiJsonResult(FF_MAYBE_UNUSED FFWifiOptions* options, yyjson_mut } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffWifiModuleInfo = { .name = FF_WIFI_MODULE_NAME, .description = "Print connected Wi-Fi info (SSID, connection and security protocol)", .initOptions = (void*) ffInitWifiOptions, @@ -234,7 +234,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitWifiOptions(FFWifiOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffWifiModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->percent = (FFPercentageModuleConfig) { 50, 20, 0 }; diff --git a/src/modules/wifi/wifi.h b/src/modules/wifi/wifi.h index bd23565d3..4e517b1e2 100644 --- a/src/modules/wifi/wifi.h +++ b/src/modules/wifi/wifi.h @@ -7,3 +7,5 @@ void ffPrintWifi(FFWifiOptions* options); void ffInitWifiOptions(FFWifiOptions* options); void ffDestroyWifiOptions(FFWifiOptions* options); + +extern FFModuleBaseInfo ffWifiModuleInfo; diff --git a/src/modules/wm/wm.c b/src/modules/wm/wm.c index 075176f0c..0838f380b 100644 --- a/src/modules/wm/wm.c +++ b/src/modules/wm/wm.c @@ -119,7 +119,7 @@ void ffGenerateWMJsonResult(FF_MAYBE_UNUSED FFWMOptions* options, yyjson_mut_doc yyjson_mut_obj_add_strbuf(doc, obj, "version", &version); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffWMModuleInfo = { .name = FF_WM_MODULE_NAME, .description = "Print window manager name and version", .initOptions = (void*) ffInitWMOptions, @@ -139,7 +139,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitWMOptions(FFWMOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffWMModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, ""); options->detectPlugin = false; } diff --git a/src/modules/wm/wm.h b/src/modules/wm/wm.h index 93edec8b4..181fa9360 100644 --- a/src/modules/wm/wm.h +++ b/src/modules/wm/wm.h @@ -7,3 +7,5 @@ void ffPrintWM(FFWMOptions* options); void ffInitWMOptions(FFWMOptions* options); void ffDestroyWMOptions(FFWMOptions* options); + +extern FFModuleBaseInfo ffWMModuleInfo; diff --git a/src/modules/wmtheme/wmtheme.c b/src/modules/wmtheme/wmtheme.c index 302e73322..d10adc73b 100644 --- a/src/modules/wmtheme/wmtheme.c +++ b/src/modules/wmtheme/wmtheme.c @@ -62,7 +62,7 @@ void ffGenerateWMThemeJsonResult(FF_MAYBE_UNUSED FFWMThemeOptions* options, yyjs yyjson_mut_obj_add_strbuf(doc, module, "result", &themeOrError); } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffWMThemeModuleInfo = { .name = FF_WMTHEME_MODULE_NAME, .description = "Print current theme of window manager", .initOptions = (void*) ffInitWMThemeOptions, @@ -78,7 +78,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitWMThemeOptions(FFWMThemeOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffWMThemeModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󰓸"); } diff --git a/src/modules/wmtheme/wmtheme.h b/src/modules/wmtheme/wmtheme.h index 9a2a24982..354e72728 100644 --- a/src/modules/wmtheme/wmtheme.h +++ b/src/modules/wmtheme/wmtheme.h @@ -7,3 +7,5 @@ void ffPrintWMTheme(FFWMThemeOptions* options); void ffInitWMThemeOptions(FFWMThemeOptions* options); void ffDestroyWMThemeOptions(FFWMThemeOptions* options); + +extern FFModuleBaseInfo ffWMThemeModuleInfo; diff --git a/src/modules/zpool/zpool.c b/src/modules/zpool/zpool.c index 68eebda09..49a6928c0 100644 --- a/src/modules/zpool/zpool.c +++ b/src/modules/zpool/zpool.c @@ -164,7 +164,7 @@ void ffGenerateZpoolJsonResult(FF_MAYBE_UNUSED FFZpoolOptions* options, yyjson_m } } -static FFModuleBaseInfo ffModuleInfo = { +FFModuleBaseInfo ffZpoolModuleInfo = { .name = FF_ZPOOL_MODULE_NAME, .description = "Print ZFS storage pools", .initOptions = (void*) ffInitZpoolOptions, @@ -187,7 +187,7 @@ static FFModuleBaseInfo ffModuleInfo = { void ffInitZpoolOptions(FFZpoolOptions* options) { - options->moduleInfo = ffModuleInfo; + options->moduleInfo = ffZpoolModuleInfo; ffOptionInitModuleArg(&options->moduleArgs, "󱑛"); options->percent = (FFPercentageModuleConfig) { 50, 80, 0 }; } diff --git a/src/modules/zpool/zpool.h b/src/modules/zpool/zpool.h index 03623e063..bdc88ba90 100644 --- a/src/modules/zpool/zpool.h +++ b/src/modules/zpool/zpool.h @@ -7,3 +7,5 @@ void ffPrintZpool(FFZpoolOptions* options); void ffInitZpoolOptions(FFZpoolOptions* options); void ffDestroyZpoolOptions(FFZpoolOptions* options); + +extern FFModuleBaseInfo ffZpoolModuleInfo;