From 102f99f9d7cb64b395624382e61ef28e1145efc2 Mon Sep 17 00:00:00 2001 From: Oscar Lesta Date: Thu, 7 Aug 2025 00:10:27 -0300 Subject: git-web--browse.sh: use "open" on Haiku This is a squashed commit from previous ones from Ingo Weinhold and Adrien Destugues. diff --git a/git-web--browse.sh b/git-web--browse.sh index ae15253..0f95000 100755 --- a/git-web--browse.sh +++ b/git-web--browse.sh @@ -133,6 +133,11 @@ if test -z "$browser" ; then browser_candidates="cygstart $browser_candidates" fi + # BEINCLUDES indicates Haiku + if test -n "$BEINCLUDES"; then + browser_candidates="open $browser_candidates" + fi + for i in $browser_candidates; do init_browser_path $i if type "$browser_path" > /dev/null 2>&1; then -- 2.48.1 From 8563acff85b61f400ca5bdcc63018aae3079d0e9 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Mon, 19 Jan 2015 15:37:16 -0500 Subject: On Haiku use the user settings directory instead of HOME diff --git a/path.c b/path.c index 3b598b2..e3a9475 100644 --- a/path.c +++ b/path.c @@ -19,6 +19,11 @@ #include "lockfile.h" #include "exec-cmd.h" +#ifdef __HAIKU__ +#include +#include +#endif + static int get_st_mode_bits(const char *path, int *mode) { struct stat st; @@ -1641,11 +1646,19 @@ char *xdg_config_home_for(const char *subdir, const char *filename) { const char *home, *config_home; +#ifdef __HAIKU__ + char settingsPath[B_PATH_NAME_LENGTH]; + assert(filename); + if (find_directory(B_USER_SETTINGS_DIRECTORY, -1, true, settingsPath, + sizeof(settingsPath)) == B_OK) + return mkpathdup("%s/git/%s", settingsPath, filename); +#else assert(subdir); assert(filename); config_home = getenv("XDG_CONFIG_HOME"); if (config_home && *config_home) return mkpathdup("%s/%s/%s", config_home, subdir, filename); +#endif home = getenv("HOME"); if (home) -- 2.48.1 From 8f3679bb9f7473fa99fe4eefff653f112acce87d Mon Sep 17 00:00:00 2001 From: Oliver Tappe Date: Mon, 19 Jan 2015 15:50:09 -0500 Subject: Ensure config-directory exists before using it. diff --git a/config.c b/config.c index e2ee0cb..e05c2ca 100644 --- a/config.c +++ b/config.c @@ -3197,6 +3197,14 @@ int repo_config_set_multivar_in_file_gently(struct repository *r, if (!config_filename) config_filename = filename_buf = repo_git_path(r, "config"); + if (find_last_dir_sep(config_filename) != NULL) { + char *config_dir = xstrdup(config_filename); + * find_last_dir_sep(config_dir) = '\0'; + if (access(config_dir, F_OK) != 0) + mkdir(config_dir, 0755); + free(config_dir); + } + /* * The lock serves a purpose in addition to locking: the new * contents of .git/config will be written into it. -- 2.48.1 From ff1cbc99e6fe8aba815078b0d86f26a86492ec75 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 14 Feb 2016 10:32:12 +0100 Subject: Move credential cache to the config directory. Do not clutter the home dir. diff --git a/builtin/credential-cache.c b/builtin/credential-cache.c index 7f733cb..65319f5 100644 --- a/builtin/credential-cache.c +++ b/builtin/credential-cache.c @@ -121,7 +121,7 @@ static char *get_socket_path(void) { struct stat sb; char *old_dir, *socket; - old_dir = interpolate_path("~/.git-credential-cache", 0); + old_dir = xdg_config_home("credential-cache"); if (old_dir && !stat(old_dir, &sb) && S_ISDIR(sb.st_mode)) socket = xstrfmt("%s/socket", old_dir); else -- 2.48.1 From bb83687ff6879eb6d011ea248f70e940bdd10f7c Mon Sep 17 00:00:00 2001 From: Oscar Lesta Date: Fri, 24 May 2024 15:15:25 -0300 Subject: config: use "xdg_config" even if "user_config" does not exist Based on the previous patch by: sfanxiang diff --git a/config.c b/config.c index e05c2ca..14b9ffd 100644 --- a/config.c +++ b/config.c @@ -1984,18 +1984,12 @@ char *git_global_config(void) char *user_config, *xdg_config; git_global_config_paths(&user_config, &xdg_config); - if (!user_config) { - free(xdg_config); - return NULL; - } - - if (access_or_warn(user_config, R_OK, 0) && xdg_config && - !access_or_warn(xdg_config, R_OK, 0)) { - free(user_config); - return xdg_config; - } else { - free(xdg_config); + if (!xdg_config) return user_config; + else { + if (user_config) + free(user_config); + return xdg_config; } } -- 2.48.1 From 0ed9dc6e7aee57ec600c86f9111b1c39c2df3e0d Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Fri, 29 Nov 2019 21:46:54 +0100 Subject: ignore test failures. diff --git a/t/Makefile b/t/Makefile index 791e0a0..7929fdd 100644 --- a/t/Makefile +++ b/t/Makefile @@ -79,7 +79,7 @@ prove: pre-clean $(TEST_LINT) $(MAKE) clean-except-prove-cache $(T): - @echo "*** $@ ***"; '$(TEST_SHELL_PATH_SQ)' $@ $(GIT_TEST_OPTS) + - @echo "*** $@ ***"; '$(TEST_SHELL_PATH_SQ)' $@ $(GIT_TEST_OPTS) $(UNIT_TESTS): @echo "*** $@ ***"; $@ -- 2.48.1 From 91a39212e8d76177fe5342582937b599c62cdb21 Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Wed, 17 Nov 2021 18:11:17 -0500 Subject: git-gui: Use symbolic links. diff --git a/git-gui/Makefile b/git-gui/Makefile index 8672dd2..77cf3bd 100644 --- a/git-gui/Makefile +++ b/git-gui/Makefile @@ -57,7 +57,7 @@ INSTALL_X1 = INSTALL_A0 = find # space is required here INSTALL_A1 = | cpio -pud INSTALL_L0 = rm -f # space is required here -INSTALL_L1 = && ln # space is required here +INSTALL_L1 = && ln -s # space is required here INSTALL_L2 = INSTALL_L3 = @@ -86,7 +86,7 @@ ifndef V INSTALL_L0 = dst= INSTALL_L1 = && src= INSTALL_L2 = && dst= - INSTALL_L3 = && echo ' ' 'LINK ' `basename "$$dst"` '->' `basename "$$src"` && rm -f "$$dst" && ln "$$src" "$$dst" + INSTALL_L3 = && echo ' ' 'LINK ' `basename "$$dst"` '->' `basename "$$src"` && rm -f "$$dst" && ln -s "$$src" "$$dst" CLEAN_DST = echo ' ' UNINSTALL REMOVE_D0 = dir= -- 2.48.1 From ae1f13c6d2977776fbf3668c90d06b02461930f8 Mon Sep 17 00:00:00 2001 From: Oscar Lesta Date: Fri, 28 Feb 2025 15:50:56 -0300 Subject: Workaround for HaikuPorts issue #11131. diff --git a/gettext.c b/gettext.c index 8d08a61..3664663 100644 --- a/gettext.c +++ b/gettext.c @@ -118,8 +118,13 @@ void git_setup_gettext(void) } bindtextdomain("git", podir); +#ifdef __HAIKU__ + // See HaikuPorts issue #11131 + setlocale(LC_ALL, ""); +#else setlocale(LC_MESSAGES, ""); setlocale(LC_TIME, ""); +#endif init_gettext_charset("git"); textdomain("git"); -- 2.48.1 From be2345db2d9e2cfbdd2e82f1671907258b3f2acf Mon Sep 17 00:00:00 2001 From: Oscar Lesta Date: Wed, 6 Aug 2025 23:56:38 -0300 Subject: Use `python3` as hashbang for the generated gitweb.py. diff --git a/git-instaweb.sh b/git-instaweb.sh index 7b44f70..7da5219 100755 --- a/git-instaweb.sh +++ b/git-instaweb.sh @@ -615,7 +615,7 @@ python_conf() { # This assumes that python is in user's $PATH # This script is Python 2 and 3 compatible cat > "$fqgitdir/gitweb/gitweb.py" <