mirror of
https://github.com/obsqrbtz/clrsync.git
synced 2026-04-08 20:19:04 +03:00
updated flake
This commit is contained in:
35
flake.nix
35
flake.nix
@@ -5,10 +5,13 @@
|
|||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, ... }: let
|
outputs =
|
||||||
|
{ self, nixpkgs, ... }:
|
||||||
|
let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
pkgs = nixpkgs.legacyPackages.${system};
|
pkgs = nixpkgs.legacyPackages.${system};
|
||||||
in {
|
in
|
||||||
|
{
|
||||||
packages.${system} = rec {
|
packages.${system} = rec {
|
||||||
clrsync = pkgs.stdenv.mkDerivation rec {
|
clrsync = pkgs.stdenv.mkDerivation rec {
|
||||||
pname = "clrsync";
|
pname = "clrsync";
|
||||||
@@ -21,6 +24,7 @@
|
|||||||
pkgs.git
|
pkgs.git
|
||||||
pkgs.pkg-config
|
pkgs.pkg-config
|
||||||
pkgs.makeWrapper
|
pkgs.makeWrapper
|
||||||
|
pkgs.wayland-protocols
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
@@ -85,12 +89,37 @@
|
|||||||
cmake
|
cmake
|
||||||
git
|
git
|
||||||
pkg-config
|
pkg-config
|
||||||
|
makeWrapper
|
||||||
|
ninja
|
||||||
|
stdenv.cc.cc.lib
|
||||||
|
clang-tools
|
||||||
|
gdb
|
||||||
|
|
||||||
glfw
|
glfw
|
||||||
freetype
|
freetype
|
||||||
fontconfig
|
fontconfig
|
||||||
xorg.libXcursor
|
|
||||||
mesa
|
mesa
|
||||||
|
xorg.libX11
|
||||||
|
xorg.libXrandr
|
||||||
|
xorg.libXi
|
||||||
|
xorg.libXinerama
|
||||||
|
xorg.libXcursor
|
||||||
|
libxkbcommon
|
||||||
|
zlib
|
||||||
|
bzip2
|
||||||
|
wayland
|
||||||
|
wayland-scanner
|
||||||
|
wayland-protocols
|
||||||
];
|
];
|
||||||
|
|
||||||
|
shellHook = ''
|
||||||
|
export CMAKE_GENERATOR="Ninja"
|
||||||
|
export CMAKE_EXPORT_COMPILE_COMMANDS=1
|
||||||
|
export CPLUS_INCLUDE_PATH="${pkgs.gcc.cc}/include/c++/${pkgs.gcc.cc.version}:${pkgs.gcc.cc}/include/c++/${pkgs.gcc.cc.version}/x86_64-unknown-linux-gnu:$CPLUS_INCLUDE_PATH"
|
||||||
|
export C_INCLUDE_PATH="${pkgs.gcc.cc}/include:$C_INCLUDE_PATH"
|
||||||
|
export PATH=${pkgs.wayland-protocols}/bin:$PATH
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
#include <iostream>
|
|
||||||
#include <cstdlib>
|
#include <cstdlib>
|
||||||
|
#include <iostream>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
#include <argparse/argparse.hpp>
|
#include <argparse/argparse.hpp>
|
||||||
|
|
||||||
#include <core/utils.hpp>
|
|
||||||
#include <core/config/config.hpp>
|
#include <core/config/config.hpp>
|
||||||
#include <core/io/toml_file.hpp>
|
#include <core/io/toml_file.hpp>
|
||||||
#include <core/palette/palette_file.hpp>
|
#include <core/palette/palette_file.hpp>
|
||||||
#include <core/palette/palette_manager.hpp>
|
#include <core/palette/palette_manager.hpp>
|
||||||
#include <core/theme/theme_template.hpp>
|
|
||||||
#include <core/theme/theme_renderer.hpp>
|
#include <core/theme/theme_renderer.hpp>
|
||||||
|
#include <core/theme/theme_template.hpp>
|
||||||
|
#include <core/utils.hpp>
|
||||||
#include <core/version.hpp>
|
#include <core/version.hpp>
|
||||||
|
|
||||||
void handle_show_vars()
|
void handle_show_vars()
|
||||||
@@ -21,8 +21,7 @@ void handle_show_vars()
|
|||||||
void handle_list_themes()
|
void handle_list_themes()
|
||||||
{
|
{
|
||||||
auto palette_manager = clrsync::core::palette_manager<clrsync::core::io::toml_file>();
|
auto palette_manager = clrsync::core::palette_manager<clrsync::core::io::toml_file>();
|
||||||
palette_manager.load_palettes_from_directory(
|
palette_manager.load_palettes_from_directory(clrsync::core::config::instance().palettes_path());
|
||||||
clrsync::core::config::instance().palettes_path());
|
|
||||||
|
|
||||||
const auto &palettes = palette_manager.palettes();
|
const auto &palettes = palette_manager.palettes();
|
||||||
std::cout << "Available themes:" << std::endl;
|
std::cout << "Available themes:" << std::endl;
|
||||||
@@ -70,28 +69,20 @@ void initialize_config(const std::string &config_path)
|
|||||||
|
|
||||||
void setup_argument_parser(argparse::ArgumentParser &program)
|
void setup_argument_parser(argparse::ArgumentParser &program)
|
||||||
{
|
{
|
||||||
program.add_argument("-a", "--apply")
|
program.add_argument("-a", "--apply").help("applies default theme").flag();
|
||||||
.help("applies default theme")
|
|
||||||
.flag();
|
|
||||||
|
|
||||||
program.add_argument("-c", "--config")
|
program.add_argument("-c", "--config")
|
||||||
.default_value(clrsync::core::get_default_config_path())
|
.default_value(clrsync::core::get_default_config_path())
|
||||||
.help("sets config file path")
|
.help("sets config file path")
|
||||||
.metavar("PATH");
|
.metavar("PATH");
|
||||||
|
|
||||||
program.add_argument("-l", "--list-themes")
|
program.add_argument("-l", "--list-themes").help("lists available themes").flag();
|
||||||
.help("lists available themes")
|
|
||||||
.flag();
|
|
||||||
|
|
||||||
program.add_argument("-s", "--show-vars")
|
program.add_argument("-s", "--show-vars").help("shows color keys").flag();
|
||||||
.help("shows color keys")
|
|
||||||
.flag();
|
|
||||||
|
|
||||||
auto &group = program.add_mutually_exclusive_group();
|
auto &group = program.add_mutually_exclusive_group();
|
||||||
group.add_argument("-t", "--theme")
|
group.add_argument("-t", "--theme").help("sets theme <theme_name> to apply");
|
||||||
.help("sets theme <theme_name> to apply");
|
group.add_argument("-p", "--path").help("sets theme file <path/to/theme> to apply");
|
||||||
group.add_argument("-p", "--path")
|
|
||||||
.help("sets theme file <path/to/theme> to apply");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
|
|||||||
Reference in New Issue
Block a user