From b13d9ec2bf2d2401c49f061cd1c7b94d1ebb5386 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.50.1 From c9ef343a0724d893a976303843749104de1a30ef 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 7f56eaf..7f017de 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.50.1 From 5a71b32a14defcda4aeb69447a71e5e89a028491 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 97ffef4..6fa81af 100644 --- a/config.c +++ b/config.c @@ -2680,6 +2680,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.50.1 From 6d006ee7f5a3281c7a197a87c2327e2b105ba784 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.50.1 From 2c19b3447b1800b6c7c250192dccfff610aa984c 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 6fa81af..ef0ebf0 100644 --- a/config.c +++ b/config.c @@ -1466,18 +1466,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.50.1 From ca3fa0463a6fc9967f43ac6ec2ca7d1b5196cf1b 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 757674e..98c5703 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.50.1 From 29a490ca6a49254df9fdd711d938e160abe10d4a 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 27bbe05..5dc7d03 100644 --- a/git-gui/Makefile +++ b/git-gui/Makefile @@ -54,7 +54,7 @@ INSTALL_R1 = INSTALL_X0 = $(INSTALL) -m 755 # space is required here INSTALL_X1 = 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 = @@ -81,7 +81,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.50.1 From dc19431a9394cec46c2116040d6ca30d0e7ec47b 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.50.1 From 87f6ef3916b644fb05b6b60374838c3c6da14768 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" <