Log to the instance folder

This commit is contained in:
vaxerski 2022-06-03 17:48:07 +02:00
parent 6f3b004199
commit 9486a230c7
4 changed files with 12 additions and 10 deletions

View file

@ -3,6 +3,8 @@
CCompositor::CCompositor() { CCompositor::CCompositor() {
m_szInstanceSignature = GIT_COMMIT_HASH + std::string("_") + std::to_string(time(NULL)); m_szInstanceSignature = GIT_COMMIT_HASH + std::string("_") + std::to_string(time(NULL));
Debug::init(m_szInstanceSignature);
Debug::log(LOG, "Instance Signature: %s", m_szInstanceSignature.c_str()); Debug::log(LOG, "Instance Signature: %s", m_szInstanceSignature.c_str());
setenv("HYPRLAND_INSTANCE_SIGNATURE", m_szInstanceSignature.c_str(), true); setenv("HYPRLAND_INSTANCE_SIGNATURE", m_szInstanceSignature.c_str(), true);

View file

@ -1,14 +1,15 @@
#include "Log.hpp" #include "Log.hpp"
#include "../defines.hpp" #include "../defines.hpp"
#include "../Compositor.hpp"
#include <fstream> #include <fstream>
#include <iostream> #include <iostream>
void Debug::init() { void Debug::init(std::string IS) {
if (ISDEBUG) if (ISDEBUG)
logFile = "/tmp/hypr/hyprlandd-" + std::to_string(time(NULL)) + ".log"; logFile = "/tmp/hypr/" + IS + "/hyprlandd.log";
else else
logFile = "/tmp/hypr/hyprland-" + std::to_string(time(NULL)) + ".log"; logFile = "/tmp/hypr/" + IS + "/hyprland.log";
} }
void Debug::log(LogLevel level, const char* fmt, ...) { void Debug::log(LogLevel level, const char* fmt, ...) {

View file

@ -12,7 +12,7 @@ enum LogLevel {
}; };
namespace Debug { namespace Debug {
void init(); void init(std::string IS);
void log(LogLevel level, const char* fmt, ...); void log(LogLevel level, const char* fmt, ...);
inline std::string logFile; inline std::string logFile;

View file

@ -3,6 +3,7 @@
#include "Compositor.hpp" #include "Compositor.hpp"
#include "config/ConfigManager.hpp" #include "config/ConfigManager.hpp"
#include "init/initHelpers.hpp" #include "init/initHelpers.hpp"
#include <iostream>
// I am a bad bad boy and have used some global vars here, // I am a bad bad boy and have used some global vars here,
// just for this file // just for this file
@ -21,19 +22,17 @@ int main(int argc, char** argv) {
system("mkdir -p /tmp/hypr"); system("mkdir -p /tmp/hypr");
Debug::init();
if (!ignoreSudo) { if (!ignoreSudo) {
if (Init::isSudo()) { if (Init::isSudo()) {
Debug::log(CRIT, "Hyprland shall not be run as the root user. If you really want to, use the --i-am-really-stupid flag."); std::cout << "Hyprland shall not be run as the root user. If you really want to, use the --i-am-really-stupid flag.\n";
return 1; return 1;
} }
} else { } else {
Debug::log(WARN, "Running with ignored root checks, I surely hope you know what you're doing."); std::cout << "Running with ignored root checks, I surely hope you know what you're doing.\n";
sleep(1); sleep(1);
} }
Debug::log(LOG, "Welcome to Hyprland!"); std::cout << "Welcome to Hyprland!\n";
// let's init the compositor. // let's init the compositor.
// it initializes basic Wayland stuff in the constructor. // it initializes basic Wayland stuff in the constructor.