Compare commits

...

27 Commits

Author SHA1 Message Date
Linus Dierheimer 8404ae8e70 Merge pull request #212 from ceamac/bugs/install-presets
Fix installation of presets/ directory
2022-08-12 21:50:49 +02:00
Viorel d75f72c8fe Fix installation of presets/ directory 2022-08-12 22:35:31 +03:00
Linus Dierheimer 9fa00081e3 Release 1.6.2 2022-08-12 16:01:52 +02:00
Linus Dierheimer fca37b59c8 Print xbps package count once again
#209
2022-08-12 09:40:02 +02:00
Linus Dierheimer 2fe7476c67 Better xbps package count
#209
2022-08-07 19:42:16 +02:00
Linus Dierheimer 03cbd64d8a Merge pull request #208 from hervyqa/langitketujuh
Add LangitKetujuh Linux logo
2022-08-03 13:03:06 +02:00
Hervy Qurrotul Ainur Rozi f65aeed96f Add LangitKetujuh Linux logo 2022-08-03 16:46:14 +07:00
Linus Dierheimer b63f419cde Merge pull request #207 from draumaz/master
Add KISS Linux logo
2022-08-02 15:14:41 +02:00
draumaz 99aa2f7b45 swap order 2022-08-02 12:29:44 +00:00
draumaz b251c32c12 fix colors, update README 2022-08-02 12:24:15 +00:00
draumaz 034e23d7e3 Merge branch 'LinusDierheimer:master' into master 2022-08-02 05:13:30 -07:00
Linus Dierheimer bba912d42e Add missing include 2022-08-02 10:24:54 +02:00
draumaz 597652c35a one more backslash 2022-08-02 05:56:20 +00:00
draumaz 7f67846ad9 add KISS Linux logo 2022-08-02 05:51:15 +00:00
Linus Dierheimer bc2e292e22 Update issue templates 2022-07-31 17:44:07 +02:00
Linus Dierheimer 75dc228120 Update issue templates 2022-07-31 17:39:54 +02:00
Linus Dierheimer bc783f6efd Update issue templates 2022-07-31 17:33:03 +02:00
Linus Dierheimer 85e1d2b40c Add logo request template 2022-07-31 17:31:30 +02:00
Linus Dierheimer 3338189354 Rosa Linux logo 2022-07-31 17:22:03 +02:00
Linus Dierheimer d4c836fd25 Handle empty xdg env vars better 2022-07-30 23:30:46 +02:00
Linus Dierheimer 6787f1eba8 Merge branches 'master' and 'master' of github.com:LinusDierheimer/fastfetch 2022-07-27 21:56:42 +02:00
Linus Dierheimer eedc277bcf Respect target dir config during installation 2022-07-27 21:56:28 +02:00
Linus Dierheimer d4b32eaaec Merge pull request #205 from licy183/fix-android-header
Fix build error on Android
2022-07-27 19:31:29 +02:00
Linus Dierheimer 910f63f0ad Update changelog 2022-07-27 19:31:14 +02:00
Linus Dierheimer 9a0aa2ac72 Fix compilation issues
1) when building for android
2) when building without wayland
2022-07-27 19:28:55 +02:00
Chongyun Lee dce81055fe Release 1.6.1 2022-07-28 01:28:17 +08:00
Chongyun Lee 66a4fc1600 Fix build error on Android
host.c has an #elif, but actually #else is needed.
2022-07-27 22:50:11 +08:00
13 changed files with 183 additions and 25 deletions
-1
View File
@@ -41,4 +41,3 @@ Output of `fastfetch --list-features`:
If you get the following error: `Error: couldn't find config: [...]`, copy the files in [presets](../../presets/) to `/usr/share/fastfetch/presets/` or `~/.local/share/fastfetch/presets/`.
If this isn't possible (or too much work) for you, post the output of `fastfetch --show-errors --recache --multithreading false --disable-linewrap false`.
-->
+18
View File
@@ -0,0 +1,18 @@
---
name: Logo request
about: Request a new logo
title: ''
labels: logo request
assignees: ''
---
# OS
```
paste content of /etc/os-release here. If this file doesn't exist, describe a way to identify the distro.
```
# Ascii
```
paste ascii art here. If you leave this empty, i will try to find the logo myself.
```
+23
View File
@@ -1,3 +1,26 @@
# 1.6.3
Fixes installing presets in their own directory (#212)
# 1.6.2
Releasing this, so void linux can package fastfetch.
Logos:
* Rosa linux (#206)
* KISS linux (@draumaz, #207)
* LangitKetujuh (@hervyqa, #208)
Bugfixes:
* Using musl as libc does work now (#210)
* XBPS packages are once again printed (#209)
* configured target dirs are applied to install directories too
* empty XDG_* env vars don't cause a crash anymore
# 1.6.1
Fixes build on android (#205)
# 1.6.0
Features:
+17 -13
View File
@@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 3.12.0) # target_link_libraries with OBJECT libs
project(fastfetch
VERSION 1.6.0
VERSION 1.6.3
LANGUAGES C
)
@@ -493,37 +493,42 @@ endif()
# install target #
##################
#https://cmake.org/cmake/help/latest/variable/CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT.html
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
set(CMAKE_INSTALL_PREFIX "${TARGET_DIR_USR}" CACHE PATH "..." FORCE)
endif()
if(NOT CMAKE_INSTALL_SYSCONFDIR)
set(CMAKE_INSTALL_SYSCONFDIR "/etc")
set(CMAKE_INSTALL_SYSCONFDIR "${TARGET_DIR_ROOT}/etc")
endif()
include(GNUInstallDirs)
install(
TARGETS fastfetch flashfetch
DESTINATION ${CMAKE_INSTALL_BINDIR}
DESTINATION "${CMAKE_INSTALL_BINDIR}"
)
install(
FILES src/data/config_system.txt
DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/${CMAKE_PROJECT_NAME}
FILES "${CMAKE_SOURCE_DIR}/src/data/config_system.txt"
DESTINATION "${CMAKE_INSTALL_SYSCONFDIR}/${CMAKE_PROJECT_NAME}"
RENAME "config.conf"
)
install(
FILES completions/bash
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/bash-completion/completions
RENAME ${CMAKE_PROJECT_NAME}
FILES "${CMAKE_SOURCE_DIR}/completions/bash"
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/bash-completion/completions"
RENAME "${CMAKE_PROJECT_NAME}"
)
install(
DIRECTORY presets
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${CMAKE_PROJECT_NAME}
DIRECTORY "${CMAKE_SOURCE_DIR}/presets"
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/${CMAKE_PROJECT_NAME}"
)
install(
FILES ./LICENSE
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/licenses/${CMAKE_PROJECT_NAME}
FILES "${CMAKE_SOURCE_DIR}/LICENSE"
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/licenses/${CMAKE_PROJECT_NAME}"
)
##################
@@ -531,7 +536,6 @@ install(
##################
set(CPACK_GENERATOR "DEB;RPM;TGZ;ZIP")
set(CPACK_PACKAGING_INSTALL_PREFIX "/usr")
set(CPACK_SET_DESTDIR ON)
set(CPACK_PACKAGE_CONTACT "Linus Dierheimer <Linus@Dierheimer.de>")
+1 -1
View File
@@ -50,7 +50,7 @@ Title, Separator, OS, Host, Kernel, Uptime, Processes, Packages, Shell, Resoluti
##### Logos
```
Alpine, Android, Arch, Arco, Artix, Bedrock, CachyOS, CentOS, Debian, Devuan, Deepin, Endeavour, Fedora, Garuda, Gentoo, KDE Neon, Kubuntu, Linux, Manjaro, Mint, NixOS, OpenSUSE, OpenSUSE Tumbleweed, OpenSUSE LEAP, Pop!_OS, RebornOS, RedstarOS, Rocky, Ubuntu, Void, Zorin
Alpine, Android, Arch, Arco, Artix, Bedrock, CachyOS, CentOS, Debian, Devuan, Deepin, Endeavour, Fedora, Garuda, Gentoo, KDE Neon, KISS, Kubuntu, LangitKetujuh, Linux, Manjaro, Mint, NixOS, OpenSUSE, OpenSUSE Tumbleweed, OpenSUSE LEAP, Pop!_OS, RebornOS, RedstarOS, Rocky, Rosa, Ubuntu, Void, Zorin
```
* Most of the logos have a small variant. Access it by appending _small to the logo name.
* Some logos have an old variant. Access it by appending _old to the logo name.
+8 -1
View File
@@ -1,5 +1,6 @@
#include "fastfetch.h"
#include "common/caching.h"
#include "common/parsing.h"
#include "detection/qt.h"
#include "detection/gtk.h"
#include "detection/displayserver.h"
@@ -20,7 +21,7 @@ static void initConfigDirs(FFstate* state)
ffListInit(&state->configDirs, sizeof(FFstrbuf));
const char* xdgConfigHome = getenv("XDG_CONFIG_HOME");
if(xdgConfigHome != NULL)
if(ffStrSet(xdgConfigHome))
{
FFstrbuf* buffer = (FFstrbuf*) ffListAdd(&state->configDirs);
ffStrbufInitA(buffer, 64);
@@ -54,6 +55,12 @@ static void initConfigDirs(FFstate* state)
uint32_t colonIndex = ffStrbufNextIndexC(&xdgConfigDirs, startIndex, ':');
xdgConfigDirs.chars[colonIndex] = '\0';
if(!ffStrSet(xdgConfigDirs.chars + startIndex))
{
startIndex = colonIndex + 1;
continue;
}
FFstrbuf* buffer = (FFstrbuf*) ffListAdd(&state->configDirs);
ffStrbufInitA(buffer, 64);
ffStrbufAppendS(buffer, xdgConfigDirs.chars + startIndex);
+1
View File
@@ -2,6 +2,7 @@
#include "common/networking.h"
#include <unistd.h>
#include <sys/time.h>
#include <sys/socket.h>
#include <netdb.h>
+2
View File
@@ -160,6 +160,8 @@ void ffdsConnectWayland(const FFinstance* instance, FFDisplayServerResult* resul
#ifdef FF_HAVE_WAYLAND
if(detectWayland(instance, result))
return;
#else
FF_UNUSED(instance);
#endif
const char* xdgSessionType = getenv("XDG_SESSION_TYPE");
-5
View File
@@ -107,11 +107,6 @@ static void detectGTKFromConfigFile(const char* filename, FFGTKResult* result)
static void detectGTKFromConfigDir(FFstrbuf* configDir, const char* version, FFGTKResult* result)
{
//In case of an empty env variable
ffStrbufTrim(configDir, ' ');
if(configDir->length == 0)
return;
uint32_t configDirLength = configDir->length;
// <configdir>/gtk-<version>.0/settings.ini
+3 -1
View File
@@ -7,7 +7,9 @@
#include <stdlib.h>
#include <pthread.h>
#if !defined(__ANDROID__)
#if __ANDROID__
#include "common/settings.h"
#else
static bool parseFile(const char* fileName, FFOSResult* result)
{
+82
View File
@@ -775,6 +775,27 @@ static const FFlogo* getLogoKDENeon()
FF_LOGO_RETURN
}
static const FFlogo* getLogoKISSLinux()
{
FF_LOGO_INIT
FF_LOGO_NAMES("kiss", "kiss-linux", "kisslinux")
FF_LOGO_LINES(
" $3 ___ \n"
" ($2.· $3| \n"
" ($1<> $3| \n"
" / $2__$3 \\ \n"
" ( $1/ \\ $3/| \n"
"$1_$3/\\ $2__)$3/$1_$3) \n"
"$1\\/$3-____$1\\/$2 \n"
)
FF_LOGO_COLORS(
"35", //magenta
"37", //white
"34" //blue
)
FF_LOGO_RETURN
}
static const FFlogo* getLogoKubuntu()
{
FF_LOGO_INIT
@@ -808,6 +829,32 @@ static const FFlogo* getLogoKubuntu()
FF_LOGO_RETURN
}
static const FFlogo* getLogoLangitKetujuh()
{
FF_LOGO_INIT
FF_LOGO_NAMES("l7", "langitketujuh", "LangitKetujuh")
FF_LOGO_LINES(
"\n"
"\n"
" $2. '7L7L7L7L7L7L7L7L7L7L7L7L7L7L7L7L7L7\n"
" $2L7. '7L7L7L7L7L7L7L7L7L7L7L7L7L7L7L7\n"
" $2L7L7L 7L7L7L7L7L7L7L7L7L7L7L7L7L7\n"
" $2L7L7L7 L7L7L7\n"
" $2L7L7L7 'L7L7L7L7L7L7L7L7L7L7\n"
" $2L7L7L7 'L7L7L7L7L7L7L7L7\n"
" $2L7L7L7 'L7L7L7L7L7L7\n"
" $2L7L7L7 L7L7L7\n"
" $2L7L7L7L7L7L7L7L7L7L7LL7L7L7. '7L7L7\n"
" $2L7L7L7L7L7L7L7L7L7L7L7L7L7L7L7L. 'L7\n"
" $2L7L7L7L7L7L7L7L7L7L7L7L7L7L7L7L7L7. '\n"
)
FF_LOGO_COLORS(
"34", //blue
"37" //white
)
FF_LOGO_RETURN
}
static const FFlogo* getLogoLinux()
{
FF_LOGO_INIT
@@ -1358,6 +1405,38 @@ static const FFlogo* getLogoRockyLinux()
FF_LOGO_RETURN
}
static const FFlogo* getLogoRosaLinux()
{
FF_LOGO_INIT
FF_LOGO_NAMES("rosa", "rosa-linux", "rosalinux")
FF_LOGO_LINES(
" ROSAROSAROSAROSAR\n"
" ROSA AROS\n"
" ROS SAROSAROSAROSAR AROS\n"
" RO ROSAROSAROSAROSAROSAR RO\n"
" ARO AROSAROSAROSARO AROS ROS\n"
" ARO ROSAROS OSAR ROSA ROS\n"
" RO AROSA ROSAROSAROSA ROSAR RO\n"
"RO ROSAR ROSAROSAROSAR R ROSARO RO\n"
"RO ROSA AROSAROSAROSA AR ROSARO AR\n"
"RO AROS ROSAROSAROSA ROS AROSARO AR\n"
"RO AROS ROSAROSARO ROSARO ROSARO AR\n"
"RO ROS AROSAROS ROSAROSA AROSAR AR\n"
"RO ROSA ROS ROSAROSAR ROSARO RO\n"
" RO ROS AROSAROSAROSA ROSARO AR\n"
" ARO ROSA ROSAROSAROS AROSAR ARO\n"
" ARO OROSA R ROSAROS ROS\n"
" RO AROSAROS AROSAROSAR RO\n"
" AROS AROSAROSAROSARO AROS\n"
" ROSA SARO\n"
" ROSAROSAROSAROSAR"
)
FF_LOGO_COLORS(
"34" //blue
)
FF_LOGO_RETURN
}
static const FFlogo* getLogoUbuntu()
{
FF_LOGO_INIT
@@ -1520,7 +1599,9 @@ GetLogoMethod* ffLogoBuiltinGetAll()
getLogoGentoo,
getLogoGentooSmall,
getLogoKDENeon,
getLogoKISSLinux,
getLogoKubuntu,
getLogoLangitKetujuh,
getLogoLinux,
getLogoManjaro,
getLogoManjaroSmall,
@@ -1541,6 +1622,7 @@ GetLogoMethod* ffLogoBuiltinGetAll()
getLogoRedHatEnterpriseLinux,
getLogoRedstarOS,
getLogoRockyLinux,
getLogoRosaLinux,
getLogoUbuntu,
getLogoUbuntuSmall,
getLogoVoid,
+1 -1
View File
@@ -9,7 +9,7 @@
#ifndef __ANDROID__
#include "common/io.h"
#elif
#else
#include <ctype.h>
#endif
+27 -2
View File
@@ -195,6 +195,30 @@ static uint32_t getRpmFromLibrpm(const FFinstance* instance)
}
#endif
static uint32_t getXBPS(FFstrbuf* baseDir)
{
DIR* dir = opendir(baseDir->chars);
if(dir == NULL)
return 0;
uint32_t result = 0;
struct dirent *entry;
while((entry = readdir(dir)) != NULL)
{
if(entry->d_type != DT_REG || strncasecmp(entry->d_name, "pkgdb-", 6) != 0)
continue;
ffStrbufAppendC(baseDir, '/');
ffStrbufAppendS(baseDir, entry->d_name);
result = getNumStrings(baseDir->chars, "<string>installed</string>");
break;
}
closedir(dir);
return result;
}
static void getPackageCounts(const FFinstance* instance, FFstrbuf* baseDir, PackageCounts* packageCounts)
{
uint32_t baseDirLength = baseDir->length;
@@ -221,7 +245,7 @@ static void getPackageCounts(const FFinstance* instance, FFstrbuf* baseDir, Pack
//xps
ffStrbufAppendS(baseDir, "/var/db/xbps");
packageCounts->xbps += getNumElements(baseDir->chars, DT_REG);
packageCounts->xbps += getXBPS(baseDir);
ffStrbufSubstrBefore(baseDir, baseDirLength);
//flatpak
@@ -313,7 +337,7 @@ void ffPrintPackages(FFinstance* instance)
ffStrbufDestroy(&baseDir);
uint32_t all = counts.dpkg + counts.emerge + counts.flatpak + counts.nixSystem + counts.nixDefault + nixUser + counts.pacman + counts.rpm + counts.snap + counts.xbps;
uint32_t all = counts.pacman + counts.dpkg + counts.rpm + counts.emerge + counts.xbps + counts.nixSystem + nixUser + counts.nixDefault + counts.flatpak + counts.snap;
if(all == 0)
{
ffPrintError(instance, FF_PACKAGES_MODULE_NAME, 0, &instance->config.packages, "No packages from known package managers found");
@@ -344,6 +368,7 @@ void ffPrintPackages(FFinstance* instance)
FF_PRINT_PACKAGE(dpkg)
FF_PRINT_PACKAGE(rpm)
FF_PRINT_PACKAGE(emerge)
FF_PRINT_PACKAGE(xbps)
if(counts.nixSystem > 0)
{