From fc4c722502f9910e2fa43f61818afc41d49b96c7 Mon Sep 17 00:00:00 2001 From: augiedoggie Date: Thu, 27 Jan 2022 11:26:19 -0700 Subject: [PATCH] git-cola: add recipe for 3.12.0 (#6576) --- .../additional-files/git_cola.rdef.in | 131 +++++++++ dev-vcs/git_cola/git_cola-3.12.0.recipe | 95 ++++++ .../git_cola/patches/git_cola-3.12.0.patchset | 276 ++++++++++++++++++ 3 files changed, 502 insertions(+) create mode 100644 dev-vcs/git_cola/additional-files/git_cola.rdef.in create mode 100644 dev-vcs/git_cola/git_cola-3.12.0.recipe create mode 100644 dev-vcs/git_cola/patches/git_cola-3.12.0.patchset diff --git a/dev-vcs/git_cola/additional-files/git_cola.rdef.in b/dev-vcs/git_cola/additional-files/git_cola.rdef.in new file mode 100644 index 000000000..1ad795a3b --- /dev/null +++ b/dev-vcs/git_cola/additional-files/git_cola.rdef.in @@ -0,0 +1,131 @@ +resource app_signature "application/x-vnd.git-cola"; + +resource app_flags B_SINGLE_LAUNCH; + +resource app_version { + major = @MAJOR@, + middle = @MIDDLE@, + minor = @MINOR@, + + variety = B_APPV_FINAL, + internal = 0, + + short_info = "The highly caffeinated Git GUI", + long_info = "The highly caffeinated Git GUI" +}; + +resource vector_icon array { + $"6E6369660403F05133054405FF03423F370E021ECAD3BEB9CAD3BEB9C779BB60" + $"C0C6B4ADC420B806C032B418BEADB4ADBF41B418BDFBB55FBC97B6C3BD49B611" + $"BD79B7A5BF3DB969BE5BB887BFDAB933C10CB9D4C08FB957C18BBA53C177BBA7" + $"C1AEBB09C251BC81C405BE34C32BBD5AC4A2BDFEC5D7BE9FC559BE21C688BF50" + $"C5D7C11EC688C06DC526C1CEC358C11EC409C1CEC2D4C099C2F6BF32C2B3BFD6" + $"C22BBE67C095BCD2C160BD9CC095BEE8C095C314C095C0FEC0C0C32AC10CC36A" + $"C0E9C346C1BCC41AC10CC5E8C1BCC538C05CC6993DC5E8BF3EC699BDDDC5383D" + $"C36ABDDDC41ABEB9C33EBF22C307BEECC31DBF22C0ECBF22BCB6BF22BED1BEEC" + $"BC9F3DBC53BEBABC7FBE08BBCEBE2DBA65BDE8BB09BD4EB987BB91B7C9BC6FB8" + $"A8B945BA15B4ADBEADB6F9BC61B418BF42B4ADC0C6B418C032B806C41FBEB9CA" + $"D3BB60C779BF4DCB66C0D2CAD3C03ECB66C428C77DCAD3C0D2C77DC427CB66C0" + $"3ECAD3BEB9CB66BF4DCAD3BEB9CAD3BEB9CAD3BEB9CAD3BEB9021ECAD3BEB9CA" + $"D3BEB9C779BB60C0C6B4ADC420B806C032B418BEADB4ADBF41B418BDFBB55FBC" + $"97B6C3BD49B611BD79B7A5BF3DB969BE5BB887BFDAB933C10CB9D4C08FB957C1" + $"8BBA53C177BBA7C1AEBB09C251BC81C405BE34C32BBD5AC4A2BDFEC5D7BE9FC5" + $"59BE21C688BF50C5D7C11EC688C06DC526C1CEC358C11EC409C1CEC2D4C099C2" + $"F6BF32C2B3BFD6C22BBE67C095BCD2C160BD9CC095BEE8C095C314C095C0FEC0" + $"C0C32AC10CC36AC0E9C346C1BCC41AC10CC5E8C1BCC538C05CC6993DC5E8BF3E" + $"C699BDDDC5383DC36ABDDDC41ABEB9C33EBF22C307BEECC31DBF22C0ECBF22BC" + $"B6BF22BED1BEECBC9F3DBC53BEBABC7FBE08BBCEBE2DBA65BDE8BB09BD4EB987" + $"BB91B7C9BC6FB8A8B945BA15B4ADBEADB6F9BC61B418BF42B4ADC0C6B418C032" + $"B806C41FBEB9CAD3BB60C779BF4DCB66C0D2CAD3C03ECB66C428C77DCAD3C0D2" + $"C77DC427CB66C03ECAD3BEB9CB66BF4DCAD3BEB9CAD3BEB9CAD3BEB9CAD3BEB9" + $"001DB938BE85B938BE85B92EBE8FB911BEA7B921BE9AB901BEB2B8DABEC8B8EF" + $"BEBDB8D3BEB9B8BEBE94B8CABEA7B8B2BE81B897BE62B8A5BE70B88ABE56B86A" + $"BE46B87BBE4CB85BBE402DBE47B847BE40B816BE4EB7D4BE76B7F8BE5DB7B1BE" + $"8FB752BEE8B785BEB5B72CBF0FB6F6BF4DB70DBF30B6DEBF69B6C4BF99B6CEBF" + $"83B6BBBFB0B6BDBFD8B6B9BFC5B6C3BFEAB6E0C00EB6CEBFFCB6EFC01CB713C0" + $"36B700C02AB727C043B749C051B739C04CB73CC066B726C087B731C078B71CC0" + $"94B706C0ACB711C0A0B6EFC0C2B6A7C0B8B6D0C0C6B67FC0AAB62BC062B656C0" + $"8DB608C040B5DFBFFBB5EFC01DB5CFBFD9B5D3BF8CB5CBBFB4B5DBBF64B613BF" + $"03B5F0BF36B638BED0B6B3BE4EB66DBE94B703BDFEB788BDA4B74ABDC5B7C6BD" + $"82B82DBD6DB7FDBD70B85EBD6AB8ACBD89B888BD74B8D1BD9EB90DBDD1B8F1BD" + $"B6B92EBDF2B94ABE35B942BE14B953BE55B938BE85B94DBE70B938BE85001DB9" + $"38BE85B938BE85B92EBE8FB911BEA7B921BE9AB901BEB2B8DABEC8B8EFBEBDB8" + $"D3BEB9B8BEBE94B8CABEA7B8B2BE81B897BE62B8A5BE70B88ABE56B86ABE46B8" + $"7BBE4CB85BBE402DBE47B847BE40B816BE4EB7D4BE76B7F8BE5DB7B1BE8FB752" + $"BEE8B785BEB5B72CBF0FB6F6BF4DB70DBF30B6DEBF69B6C4BF99B6CEBF83B6BB" + $"BFB0B6BDBFD8B6B9BFC5B6C3BFEAB6E0C00EB6CEBFFCB6EFC01CB713C036B700" + $"C02AB727C043B749C051B739C04CB73CC066B726C087B731C078B71CC094B706" + $"C0ACB711C0A0B6EFC0C2B6A7C0B8B6D0C0C6B67FC0AAB62BC062B656C08DB608" + $"C040B5DFBFFBB5EFC01DB5CFBFD9B5D3BF8CB5CBBFB4B5DBBF64B613BF03B5F0" + $"BF36B638BED0B6B3BE4EB66DBE94B703BDFEB788BDA4B74ABDC5B7C6BD82B82D" + $"BD6DB7FDBD70B85EBD6AB8ACBD89B888BD74B8D1BD9EB90DBDD1B8F1BDB6B92E" + $"BDF2B94ABE35B942BE14B953BE55B938BE85B94DBE70B938BE850011B8D5C04D" + $"B8D5C04DB8A0C082B85BC0CDB877C0ADB840C0EDB821C119B82DC106B816C12D" + $"B814C147B812C13CB817C151B825C163B81DC15BB82BC169B83DC170B833C16E" + $"B848C172B86BC163B857C16EB87FC157B8BAC129B89AC144B8DCC10EB93BC0B3" + $"B907C0E7B96BC083B9ABC03DB991C05CB9C7C020B9E5BFF4B9DAC007B9F1BFE1" + $"B9F4BFC7B9F6BFD2B9F2BFBDB9E2BFA8B9ECBFB2B9DBBFA1B9C5BF9BB9D1BF9D" + $"B9BABF99B997BFA8B9ABBF9EB984BFB3B94BBFDFB96ABFC6B92CBFF9B8D5C04D" + $"B904C01EB8D5C04D000FB82FBFAAB82FBFAAB8A8BF30B970BEDBB913BEEBB9CE" + $"BECABA68BF2DBA21BEE6BA8CBF51BAB5BF9ABAA6BF75BAC6BFBEBAC1C011BACA" + $"BFE6BAB8C03CBA7EC09FBAA2C06BBA5BC0D4B9E4C154BA28C110B9A3C195B930" + $"C1EAB967C1C72FC20EB898C22FB8C8C225B86BC239B816C228B840C236B7EEC2" + $"19B7A4C1DC2CC1FFB780C1B7B753C16FB765C193B741C14DB741C0FDB73BC127" + $"B749C0D3B784C06CB760C0A3B7ABC036B82FBFAAB7E3BFF5B82FBFAA0011B8D5" + $"C04DB8D5C04DB8A0C082B85BC0CDB877C0ADB840C0EDB821C119B82DC106B816" + $"C12DB814C147B812C13CB817C151B825C163B81DC15BB82BC169B83DC170B833" + $"C16EB848C172B86BC163B857C16EB87FC157B8BAC129B89AC144B8DCC10EB93B" + $"C0B3B907C0E7B96BC083B9ABC03DB991C05CB9C7C020B9E5BFF4B9DAC007B9F1" + $"BFE1B9F4BFC7B9F6BFD2B9F2BFBDB9E2BFA8B9ECBFB2B9DBBFA1B9C5BF9BB9D1" + $"BF9DB9BABF99B997BFA8B9ABBF9EB984BFB3B94BBFDFB96ABFC6B92CBFF9B8D5" + $"C04DB904C01EB8D5C04D000FB82FBFAAB82FBFAAB8A8BF30B970BEDBB913BEEB" + $"B9CEBECABA68BF2DBA21BEE6BA8CBF51BAB5BF9ABAA6BF75BAC6BFBEBAC1C011" + $"BACABFE6BAB8C03CBA7EC09FBAA2C06BBA5BC0D4B9E4C154BA28C110B9A3C195" + $"B930C1EAB967C1C72FC20EB898C22FB8C8C225B86BC239B816C228B840C236B7" + $"EEC219B7A4C1DC2CC1FFB780C1B7B753C16FB765C193B741C14DB741C0FDB73B" + $"C127B749C0D3B784C06CB760C0A3B7ABC036B82FBFAAB7E3BFF5B82FBFAA000B" + $"B97FC365B97FC365B977C36CB96CC373B971C371B966C374B952C369B95EC371" + $"B948C361B923C340B939C353B910C32CB8CEC2EAB8F3C30FBA00C1B7BC65BF52" + $"BB33C085BC75BF4238BF32BC84BF37BC9EBF2DBCBABF36BCABBF2FBCCABF3DBC" + $"F1BF5DBCDCBF4ABD05BF70BD3DBFA7BD1FBF88BBFEC0E6B97FC365BABEC226B9" + $"7FC365000BB97FC365B97FC365B977C36CB96CC373B971C371B966C374B952C3" + $"69B95EC371B948C361B923C340B939C353B910C32CB8CEC2EAB8F3C30FBA00C1" + $"B7BC65BF52BB33C085BC75BF4238BF32BC84BF37BC9EBF2DBCBABF36BCABBF2F" + $"BCCABF3DBCF1BF5DBCDCBF4ABD05BF70BD3DBFA7BD1FBF88BBFEC0E6B97FC365" + $"BABEC226B97FC365000DBBC3C38EBBC3C38EBBC3C385BBB9C375BBC0C37DBBB5" + $"C36DBBABC361BBB0C366BB9BC352BB72C353BB89C34DBB5CC35ABB10C39DBB3B" + $"C372BAF0C3BDBAD3C3EBBADCC3D7BACCC3FFBAE14BBAD0C411BAE8C428BAF7C4" + $"32BAEFC42DBB01C436BB13C439BB0AC439BB1BC432BB33C41BBB26C429BB42C4" + $"0EBB62C3EFBB52C3FFBB72C3DFBB94C3BDBB83C3CEBBA5C3ACBBC3C38EBBB4C3" + $"9DBBC3C38E001FBC03C173BC03C173BC0BC16BBC21C15EBC15C164BC2E44BC45" + $"C157BC3AC155BC56C15ABCA0C182BC74C168BCCDC19BBD33C1F8BCFEC1C3BD71" + $"C236BD91C29EBD90C26DBD93C2D0BD39C345BD76C308BD24C35ABCFAC384BD0F" + $"C36FBCD3C3AABC84C3FABCACC3D1BC5C4BBC0EC46DBC34C448BBE8C493BBA3C4" + $"D636C4B5BB81C4F6BB47C529BB62C511BB23C51FBAD4C4F3BAFCC50DBAACC4DB" + $"BA5BC493BA84C4BBBA42C479BA1AC44332C45FBA08C429B9FAC3EBB9FDC40BB9" + $"F7C3CCBA0FC382B9FEC3A9BA20C35CBA6EC303BA40C331BA9CC2D5BAEAC2A0BA" + $"C5C2B4BB10C28BBB51C27EBB32C280BB6FC27CBBA3C290BB8AC282BBBCC29CBB" + $"E6C2C0BBD2C2ACBBEFC2CABC0AC2ECBBFBC2D8BC19C301BC27C32ABC23C315BC" + $"46C30BBC84C2CDBC65C2ECBC96C2BBBC9CC29ABC9EC2AABC9C47BC7DC263BC92" + $"C278BC64C24ABC22C218BC46C231BBFFC200BBC0C1DFBBDEC1EDBBC7C1C7BBDF" + $"C1A0BBD1C1B2BBECC18DBC03C173BBF8C17EBC03C173000DBBC3C38EBBC3C38E" + $"BBC3C385BBB9C375BBC0C37DBBB5C36DBBABC361BBB0C366BB9BC352BB72C353" + $"BB89C34DBB5CC35ABB10C39DBB3BC372BAF0C3BDBAD3C3EBBADCC3D7BACCC3FF" + $"BAE14BBAD0C411BAE8C428BAF7C432BAEFC42DBB01C436BB13C439BB0AC439BB" + $"1BC432BB33C41BBB26C429BB42C40EBB62C3EFBB52C3FFBB72C3DFBB94C3BDBB" + $"83C3CEBBA5C3ACBBC3C38EBBB4C39DBBC3C38E001FBC03C173BC03C173BC0BC1" + $"6BBC21C15EBC15C164BC2E44BC45C157BC3AC155BC56C15ABCA0C182BC74C168" + $"BCCDC19BBD33C1F8BCFEC1C3BD71C236BD91C29EBD90C26DBD93C2D0BD39C345" + $"BD76C308BD24C35ABCFAC384BD0FC36FBCD3C3AABC84C3FABCACC3D1BC5C4BBC" + $"0EC46DBC34C448BBE8C493BBA3C4D636C4B5BB81C4F6BB47C529BB62C511BB23" + $"C51FBAD4C4F3BAFCC50DBAACC4DBBA5BC493BA84C4BBBA42C479BA1AC44332C4" + $"5FBA08C429B9FAC3EBB9FDC40BB9F7C3CCBA0FC382B9FEC3A9BA20C35CBA6EC3" + $"03BA40C331BA9CC2D5BAEAC2A0BAC5C2B4BB10C28BBB51C27EBB32C280BB6FC2" + $"7CBBA3C290BB8AC282BBBCC29CBBE6C2C0BBD2C2ACBBEFC2CABC0AC2ECBBFBC2" + $"D8BC19C301BC27C32ABC23C315BC46C30BBC84C2CDBC65C2ECBC96C2BBBC9CC2" + $"9ABC9EC2AABC9C47BC7DC263BC92C278BC64C24ABC22C218BC46C231BBFFC200" + $"BBC0C1DFBBDEC1EDBBC7C1C7BBDFC1A0BBD1C1B2BBECC18DBC03C173BBF8C17E" + $"BC03C1730A0A000100000A0101011001178000040A020102000A030103100117" + $"8000040A02020405000A030206071001178000040A020108000A030109100117" + $"8000040A02020A0B000A03020C0D100117800004" +}; diff --git a/dev-vcs/git_cola/git_cola-3.12.0.recipe b/dev-vcs/git_cola/git_cola-3.12.0.recipe new file mode 100644 index 000000000..445a78b1a --- /dev/null +++ b/dev-vcs/git_cola/git_cola-3.12.0.recipe @@ -0,0 +1,95 @@ +SUMMARY="The highly caffeinated Git GUI" +DESCRIPTION="git-cola is a powerful Git GUI with a slick and intuitive user interface." +HOMEPAGE="https://git-cola.github.io/" +COPYRIGHT="2007-2020 David Aguilar and contributors" +LICENSE="GNU GPL v2" +REVISION="1" +SOURCE_URI="https://github.com/git-cola/git-cola/archive/refs/tags/v$portVersion.tar.gz" +CHECKSUM_SHA256="ec1167ea9a472214bf18f5537d96e137c724f3d28a85b3642f07dba35f04b24a" +SOURCE_DIR="git-cola-$portVersion" +PATCHES="git_cola-$portVersion.patchset" +ADDITIONAL_FILES="git_cola.rdef.in" + +ARCHITECTURES="all !x86_gcc2" +SECONDARY_ARCHITECTURES="x86" + +PYTHON_VERSION="3.8" + +PROVIDES=" + git_cola$secondaryArchSuffix = $portVersion + app:Git_Cola + app:Git_Dag + cmd:git_cola_sequence_editor + " +REQUIRES=" + haiku$secondaryArchSuffix + cmd:git + cmd:python$PYTHON_VERSION + pyqt5_python${PYTHON_VERSION/./} + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + pyqt5_python${PYTHON_VERSION/./} + " +BUILD_PREREQUIRES=" + cmd:gcc$secondaryArchSuffix + cmd:msgfmt + cmd:python$PYTHON_VERSION + cmd:sed + " + +BUILD() +{ + python$PYTHON_VERSION setup.py build +} + +INSTALL() +{ + python$PYTHON_VERSION setup.py install \ + --prefix=$prefix \ + --no-private-libs + + mkdir -p $appsDir + mv $prefix/bin/git-cola $appsDir/Git\ Cola + mv $prefix/bin/git-dag $appsDir/Git\ DAG + + # compile our version and icon resources + local MAJOR="`echo "$portVersion" | cut -d. -f1`" + local MIDDLE="`echo "$portVersion" | cut -d. -f2`" + local MINOR="`echo "$portVersion" | cut -d. -f3 | cut -d~ -f1`" + if [ -z "$MINOR" ]; then MINOR=0; fi + + sed \ + -e "s|@MAJOR@|$MAJOR|" \ + -e "s|@MIDDLE@|$MIDDLE|" \ + -e "s|@MINOR@|$MINOR|" \ + $portDir/additional-files/git_cola.rdef.in > $sourceDir/build/git_cola.rdef + + rc $sourceDir/build/git_cola.rdef + + # add resources to Git Cola + settype -t application/x-vnd.Be-elfexecutable $appsDir/Git\ Cola + resattr -o $appsDir/Git\ Cola $sourceDir/build/git_cola.rsrc + mimeset -f $appsDir/Git\ Cola + addAppDeskbarSymlink $appsDir/Git\ Cola + + # add resources to Git DAG + settype -t application/x-vnd.Be-elfexecutable $appsDir/Git\ DAG + resattr -o $appsDir/Git\ DAG $sourceDir/build/git_cola.rsrc + mimeset -f $appsDir/Git\ DAG + addAppDeskbarSymlink $appsDir/Git\ DAG + + # cleanup + mkdir -p $documentationDir + mv $prefix/share/doc/git-cola $documentationDir + + # move the icons, scripts, etc... + mv $prefix/share/git-cola/* $dataDir/git-cola + + #TODO fix locale support + #mv $prefix/share/locale $dataDir/locale + + rm -rf $prefix/share + +} diff --git a/dev-vcs/git_cola/patches/git_cola-3.12.0.patchset b/dev-vcs/git_cola/patches/git_cola-3.12.0.patchset new file mode 100644 index 000000000..a45b8942e --- /dev/null +++ b/dev-vcs/git_cola/patches/git_cola-3.12.0.patchset @@ -0,0 +1,276 @@ +From 523b7ad575ac01df6b72a8e3e883ebd6da317aeb Mon Sep 17 00:00:00 2001 +From: Chris Roberts +Date: Thu, 27 Jan 2022 10:32:49 -0700 +Subject: adjust settings paths for Haiku + + +diff --git a/cola/gitcfg.py b/cola/gitcfg.py +index af12a70..d317fca 100644 +--- a/cola/gitcfg.py ++++ b/cola/gitcfg.py +@@ -21,6 +21,7 @@ _USER_CONFIG = core.expanduser(join('~', '.gitconfig')) + _USER_XDG_CONFIG = core.expanduser( + join(core.getenv('XDG_CONFIG_HOME', join('~', '.config')), 'git', 'config') + ) ++_USER_HAIKU_CONFIG = '/boot/home/config/settings/git/config' + + + def create(context): +@@ -34,6 +35,7 @@ def _stat_info(git): + ('system', '/etc/gitconfig'), + ('user', _USER_XDG_CONFIG), + ('user', _USER_CONFIG), ++ ('user', _USER_HAIKU_CONFIG), + ] + config = git.git_path('config') + if config: +@@ -54,6 +56,7 @@ def _cache_key(git): + '/etc/gitconfig', + _USER_XDG_CONFIG, + _USER_CONFIG, ++ _USER_HAIKU_CONFIG, + ] + config = git.git_path('config') + if config: +diff --git a/cola/resources.py b/cola/resources.py +index e8a74f1..ac3faa2 100644 +--- a/cola/resources.py ++++ b/cola/resources.py +@@ -15,6 +15,7 @@ _modpath = core.abspath(core.realpath(__file__)) + if ( + os.path.join('share', 'git-cola', 'lib') in _modpath + or os.path.join('site-packages', 'cola') in _modpath ++ or utils.is_haiku() + ): + # this is the release tree + # __file__ = '$prefix/share/git-cola/lib/cola/__file__.py' +@@ -111,7 +112,10 @@ def icon_dir(theme): + + + def config_home(*args): +- config = core.getenv( +- 'XDG_CONFIG_HOME', os.path.join(core.expanduser('~'), '.config') +- ) ++ if utils.is_haiku(): ++ config = '/boot/home/config/settings' ++ else: ++ config = core.getenv( ++ 'XDG_CONFIG_HOME', os.path.join(core.expanduser('~'), '.config') ++ ) + return os.path.join(config, 'git-cola', *args) +diff --git a/cola/utils.py b/cola/utils.py +index 1c97084..8144757 100644 +--- a/cola/utils.py ++++ b/cola/utils.py +@@ -312,6 +312,11 @@ def is_win32(): + return sys.platform == 'win32' or sys.platform == 'cygwin' + + ++def is_haiku(): ++ """Return True on Haiku""" ++ return sys.platform.startswith('haiku') ++ ++ + def expandpath(path): + """Expand ~user/ and environment $variables""" + path = os.path.expandvars(path) +-- +2.30.2 + + +From 92791f2cf1d210a6f0641e8fbd6ede4a0f2acd9f Mon Sep 17 00:00:00 2001 +From: Chris Roberts +Date: Thu, 27 Jan 2022 10:33:47 -0700 +Subject: adjust Terminal and open commands on Haiku + + +diff --git a/cola/cmds.py b/cola/cmds.py +index 68a38d3..6a06ae1 100644 +--- a/cola/cmds.py ++++ b/cola/cmds.py +@@ -1670,7 +1670,7 @@ class OpenDefaultApp(ContextCommand): + + def __init__(self, context, filenames): + super(OpenDefaultApp, self).__init__(context) +- if utils.is_darwin(): ++ if utils.is_darwin() or utils.is_haiku(): + launcher = 'open' + else: + launcher = 'xdg-open' +diff --git a/cola/gitcfg.py b/cola/gitcfg.py +index d317fca..566358e 100644 +--- a/cola/gitcfg.py ++++ b/cola/gitcfg.py +@@ -473,6 +473,8 @@ class GitConfig(observable.Observable): + if os.path.isfile(candidate): + return candidate + return None ++ elif utils.is_haiku(): ++ return 'Terminal -w' + else: + candidates = ('xfce4-terminal', 'konsole', 'gnome-terminal') + for basename in candidates: +-- +2.30.2 + + +From 2e2b0b6f4b42bb8dde1c5c2faf0ecf3fef79db2d Mon Sep 17 00:00:00 2001 +From: Chris Roberts +Date: Thu, 27 Jan 2022 10:35:20 -0700 +Subject: path adjustments for building as a Haiku package + + +diff --git a/bin/git-cola b/bin/git-cola +index 15098fe..100cea9 100755 +--- a/bin/git-cola ++++ b/bin/git-cola +@@ -26,6 +26,7 @@ def setup_environment(): + prefix = os.path.dirname(os.path.dirname(os.path.realpath(abspath))) + install_lib = os.path.join(prefix, str('share'), str('git-cola'), str('lib')) + win_pkgs = os.path.join(prefix, str('pkgs')) ++ haiku_pkg = os.path.join(prefix, str('data'), str('git-cola'), str('lib')) + # Use the private modules from share/git-cola/lib when they exist. + # It is assumed that that our modules to be present in sys.path through python's + # site-packages directory when the private modules do not exist. +@@ -33,6 +34,8 @@ def setup_environment(): + sys.path.insert(1, install_lib) + elif os.path.exists(win_pkgs): + sys.path.insert(1, win_pkgs) ++ elif os.path.exists(haiku_pkg): ++ sys.path.insert(1, haiku_pkg) + + + if __name__ == '__main__': +diff --git a/bin/git-cola-sequence-editor b/bin/git-cola-sequence-editor +index c4155da..fb6b5db 100755 +--- a/bin/git-cola-sequence-editor ++++ b/bin/git-cola-sequence-editor +@@ -26,6 +26,7 @@ def setup_environment(): + prefix = os.path.dirname(os.path.dirname(os.path.realpath(abspath))) + install_lib = os.path.join(prefix, str('share'), str('git-cola'), str('lib')) + win_pkgs = os.path.join(prefix, str('pkgs')) ++ haiku_pkg = os.path.join(prefix, str('data'), str('git-cola'), str('lib')) + # Use the private modules from share/git-cola/lib when they exist. + # It is assumed that that our modules to be present in sys.path through python's + # site-packages directory when the private modules do not exist. +@@ -33,6 +34,8 @@ def setup_environment(): + sys.path.insert(1, install_lib) + elif os.path.exists(win_pkgs): + sys.path.insert(1, win_pkgs) ++ elif os.path.exists(haiku_pkg): ++ sys.path.insert(1, haiku_pkg) + + + if __name__ == '__main__': +diff --git a/bin/git-dag b/bin/git-dag +index c96880e..3ef54e1 100755 +--- a/bin/git-dag ++++ b/bin/git-dag +@@ -26,6 +26,7 @@ def setup_environment(): + prefix = os.path.dirname(os.path.dirname(os.path.realpath(abspath))) + install_lib = os.path.join(prefix, str('share'), str('git-cola'), str('lib')) + win_pkgs = os.path.join(prefix, str('pkgs')) ++ haiku_pkg = os.path.join(prefix, str('data'), str('git-cola'), str('lib')) + # Use the private modules from share/git-cola/lib when they exist. + # It is assumed that that our modules to be present in sys.path through python's + # site-packages directory when the private modules do not exist. +@@ -33,6 +34,8 @@ def setup_environment(): + sys.path.insert(1, install_lib) + elif os.path.exists(win_pkgs): + sys.path.insert(1, win_pkgs) ++ elif os.path.exists(haiku_pkg): ++ sys.path.insert(1, haiku_pkg) + + + if __name__ == '__main__': +diff --git a/cola/resources.py b/cola/resources.py +index ac3faa2..68f0fa7 100644 +--- a/cola/resources.py ++++ b/cola/resources.py +@@ -6,6 +6,7 @@ import webbrowser + + from . import core + from . import compat ++from . import utils + + + # Default git-cola icon theme +@@ -58,7 +59,10 @@ def command(name): + + def doc(*args): + """Return a path relative to cola's /usr/share/doc/ directory""" +- return os.path.join(_prefix, 'share', 'doc', 'git-cola', *args) ++ if utils.is_haiku(): ++ return os.path.join(_prefix, 'documentation', 'git-cola', *args) ++ else: ++ return os.path.join(_prefix, 'share', 'doc', 'git-cola', *args) + + + def html_docs(): +@@ -80,7 +84,10 @@ def show_html_docs(): + + def share(*args): + """Return a path relative to cola's /usr/share/ directory""" +- return prefix('share', 'git-cola', *args) ++ if utils.is_haiku(): ++ return prefix('data', 'git-cola', *args) ++ else: ++ return prefix('share', 'git-cola', *args) + + + def icon_dir(theme): +diff --git a/setup.py b/setup.py +index b8d8c39..e218f37 100755 +--- a/setup.py ++++ b/setup.py +@@ -135,7 +135,10 @@ def _package(package, subdirs=None): + + + def _lib_path(*dirs): +- return os.path.join('share', 'git-cola', 'lib', *dirs) ++ if sys.platform.startswith('haiku'): ++ return os.path.join('data', 'git-cola', 'lib', *dirs) ++ else: ++ return os.path.join('share', 'git-cola', 'lib', *dirs) + + + def _app_path(dirname, entry): +-- +2.30.2 + + +From e187bd2386755b710aa71a916c471f75e5d63083 Mon Sep 17 00:00:00 2001 +From: Chris Roberts +Date: Thu, 27 Jan 2022 10:35:51 -0700 +Subject: fullscreen windows are annoying + + +diff --git a/cola/widgets/main.py b/cola/widgets/main.py +index a3b1dc8..109e4eb 100644 +--- a/cola/widgets/main.py ++++ b/cola/widgets/main.py +@@ -873,7 +873,7 @@ class MainView(standard.MainWindow): + def set_initial_size(self): + # Default size; this is thrown out when save/restore is used + width, height = qtutils.desktop_size() +- self.resize((width * 3) // 4, height) ++ self.resize((width * 3) // 4, (height * 3) // 4) + self.statuswidget.set_initial_size() + self.commiteditor.set_initial_size() + +diff --git a/cola/widgets/standard.py b/cola/widgets/standard.py +index d15ca23..0667627 100644 +--- a/cola/widgets/standard.py ++++ b/cola/widgets/standard.py +@@ -46,6 +46,8 @@ class WidgetMixin(object): + height = desktop.height() + if utils.is_darwin(): + self.resize(width, height) ++ elif utils.is_haiku(): ++ self.resize((width * 3) // 4, (height * 3) // 4) + else: + shown = self.isVisible() + # earlier show() fools Windows focus stealing prevention. the main +-- +2.30.2 +