aboutsummaryrefslogtreecommitdiffhomepage
path: root/hyprpm
diff options
context:
space:
mode:
Diffstat (limited to 'hyprpm')
-rw-r--r--hyprpm/src/core/PluginManager.cpp2
-rw-r--r--hyprpm/src/core/PluginManager.hpp3
-rw-r--r--hyprpm/src/main.cpp10
3 files changed, 10 insertions, 5 deletions
diff --git a/hyprpm/src/core/PluginManager.cpp b/hyprpm/src/core/PluginManager.cpp
index e8c6e251..848b9cab 100644
--- a/hyprpm/src/core/PluginManager.cpp
+++ b/hyprpm/src/core/PluginManager.cpp
@@ -427,7 +427,7 @@ bool CPluginManager::updateHeaders(bool force) {
progress.printMessageAbove(std::string{Colors::YELLOW} + "!" + Colors::RESET + " Cloning https://github.com/hyprwm/hyprland, this might take a moment.");
- const bool bShallow = HLVER.branch == "main" || HLVER.branch == "";
+ const bool bShallow = (HLVER.branch == "main" || HLVER.branch == "") && !m_bNoShallow;
// let us give a bit of leg-room for shallowing
// due to timezones, etc.
diff --git a/hyprpm/src/core/PluginManager.hpp b/hyprpm/src/core/PluginManager.hpp
index a87240e3..13ea5b12 100644
--- a/hyprpm/src/core/PluginManager.hpp
+++ b/hyprpm/src/core/PluginManager.hpp
@@ -58,7 +58,8 @@ class CPluginManager {
bool hasDeps();
- bool m_bVerbose = false;
+ bool m_bVerbose = false;
+ bool m_bNoShallow = false;
// will delete recursively if exists!!
bool createSafeDirectory(const std::string& path);
diff --git a/hyprpm/src/main.cpp b/hyprpm/src/main.cpp
index 38b32c83..4f00f708 100644
--- a/hyprpm/src/main.cpp
+++ b/hyprpm/src/main.cpp
@@ -26,6 +26,7 @@ const std::string HELP = R"#(┏ hyprpm, a Hyprland Plugin Manager
┣ --help | -h → Show this menu
┣ --verbose | -v → Enable too much logging
┣ --force | -f → Force an operation ignoring checks (e.g. update -f)
+┣ --no-shallow | -s → Disable shallow cloning of Hyprland sources
)#";
@@ -41,7 +42,7 @@ int main(int argc, char** argv, char** envp) {
}
std::vector<std::string> command;
- bool notify = false, verbose = false, force = false;
+ bool notify = false, verbose = false, force = false, noShallow = false;
for (int i = 1; i < argc; ++i) {
if (ARGS[i].starts_with("-")) {
@@ -52,6 +53,8 @@ int main(int argc, char** argv, char** envp) {
notify = true;
} else if (ARGS[i] == "--verbose" || ARGS[i] == "-v") {
verbose = true;
+ } else if (ARGS[i] == "--no-shallow" || ARGS[i] == "-s") {
+ noShallow = true;
} else if (ARGS[i] == "--force" || ARGS[i] == "-f") {
force = true;
std::cout << Colors::RED << "!" << Colors::RESET << " Using --force, I hope you know what you are doing.\n";
@@ -69,8 +72,9 @@ int main(int argc, char** argv, char** envp) {
return 0;
}
- g_pPluginManager = std::make_unique<CPluginManager>();
- g_pPluginManager->m_bVerbose = verbose;
+ g_pPluginManager = std::make_unique<CPluginManager>();
+ g_pPluginManager->m_bVerbose = verbose;
+ g_pPluginManager->m_bNoShallow = noShallow;
if (command[0] == "add") {
if (command.size() < 2) {