ensured building on ubuntu 18.04

This commit is contained in:
2024-12-01 18:53:16 +03:00
parent b59b42a40c
commit 88d849bee9
11 changed files with 194 additions and 252 deletions

View File

@@ -3,18 +3,25 @@
#include "../net/net.h"
#include "../settings/settings.h"
#include "../utils/utils.h"
#include <filesystem>
#include <iostream>
#if __GNUC__ < 8
# include <experimental/filesystem>
using namespace std::experimental;
#else
# include <filesystem>
using std::filesystem;
#endif
Parser::Parser() {}
std::vector<std::string> Parser::search_modules() {
Settings s(get_path_relative_to_home(".local/share/checks_parser/settings.json"));
std::string path = get_path_relative_to_home(s.get_setting("stores_modules_dir"));//std::string(std::getenv("HOME")) + "/" + STORES_MODULES_DIR;
std::filesystem::directory_entry modules_dir(path);
filesystem::directory_entry modules_dir(path);
if (!modules_dir.exists()) {
std::filesystem::create_directories(path);
if (!exists(modules_dir)) {
filesystem::create_directories(path);
std::cout << "No modules directory found. Created one at " << path
<< std::endl;
std::cout << "Please, download modules to that directory from my git."
@@ -23,7 +30,7 @@ std::vector<std::string> Parser::search_modules() {
std::vector<std::string> modules_files;
for (auto file : std::filesystem::directory_iterator(path)) {
for (auto file : filesystem::directory_iterator(path)) {
modules_files.push_back(file.path());
}
@@ -67,12 +74,12 @@ std::vector<std::string> Parser::check_updates() {
std::vector<std::string> to_download;
std::vector<std::string> stored_modules;
std::filesystem::directory_entry modules_dir(path);
if (!modules_dir.exists()) {
std::filesystem::create_directories(path);
filesystem::directory_entry modules_dir(path);
if (!exists(modules_dir)) {
filesystem::create_directories(path);
}
for (const auto& file : std::filesystem::directory_iterator(path)) {
if (!file.is_regular_file()) continue;
for (const auto& file : filesystem::directory_iterator(path)) {
if (!is_regular_file(file)) continue;
stored_modules.push_back(file.path().filename());
std::cout << file.path().filename() << " detected store module" << std::endl;
}