From 23a7f3baa33265519840609dc54e950615ec39b1 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Fri, 3 Jan 2020 18:04:08 +0200 Subject: Merge some QoL improvements from staging branch - Build executable in top-level buildroot - Use meson sourceset - Pull in poi-crash and poi-update from staging - Remove extraneous scripts in tools/ - Pull in configure scripts in scripts/ --- linux/.config | 105 ------------------------------------------------- linux/makepkg/PKGBUILD | 25 +++++------- linux/meson.build | 30 ++++++++++++++ 3 files changed, 40 insertions(+), 120 deletions(-) delete mode 100644 linux/.config create mode 100644 linux/meson.build (limited to 'linux') diff --git a/linux/.config b/linux/.config deleted file mode 100644 index eea58d5..0000000 --- a/linux/.config +++ /dev/null @@ -1,105 +0,0 @@ -# Generated by Kconfiglib (https://github.com/ulfalizer/Kconfiglib) - -# -# Application -# -CONFIG_POI_NAME="smolbote" -CONFIG_POI_ICON=":/icon.svg" -CONFIG_POI_CFG_PATH="~/.config/smolbote/smolbote.cfg" -# end of Application - -# -# Keyboard shortcuts -# - -# -# Main Window shortcuts -# -CONFIG_shortcuts.session.save="Ctrl+S,S" -CONFIG_shortcuts.session.open="Ctrl+S,O" -CONFIG_shortcuts.window.newgroup="Ctrl+G" -CONFIG_shortcuts.window.newwindow="Ctrl+N" -CONFIG_shortcuts.window.about="Ctrl+H" -CONFIG_shortcuts.window.quit="Ctrl+Q" -CONFIG_shortcuts.window.search="F3" -CONFIG_shortcuts.window.bookmarks.show="Ctrl+B" -CONFIG_shortcuts.window.downloads.show="Ctrl+D" - -# -# Navigation Bar shortcuts -# -CONFIG_shortcuts.navigation.back="Ctrl+Left" -CONFIG_shortcuts.navigation.backmenu="Ctrl+Down" -CONFIG_shortcuts.navigation.forward="Ctrl+Right" -CONFIG_shortcuts.navigation.forwardmenu="Ctrl+Up" -CONFIG_shortcuts.navigation.refresh="F5" -CONFIG_shortcuts.navigation.reload="Ctrl+F5" -CONFIG_shortcuts.navigation.home="Ctrl+Home" - -# -# Address Bar shortcuts -# -CONFIG_shortcuts.address.focus="F4" -CONFIG_shortcuts.address.menu="F2" - -# -# Subwindow shortcuts -# -CONFIG_shortcuts.subwindow.menu="F1" -CONFIG_shortcuts.subwindow.tile="F9" -CONFIG_shortcuts.subwindow.cascade="F10" -CONFIG_shortcuts.subwindow.fullscreen="F11" -CONFIG_shortcuts.subwindow.newtab="Ctrl+T" -CONFIG_shortcuts.subwindow.closetab="Ctrl+X" -CONFIG_shortcuts.subwindow.restoretab="Ctrl+Shift+T" -CONFIG_shortcuts.subwindow.tableft="Ctrl+O" -CONFIG_shortcuts.subwindow.movetableft="Ctrl+Shift+O" -CONFIG_shortcuts.subwindow.tabright="Ctrl+P" -CONFIG_shortcuts.subwindow.movetabright="Ctrl+Shift+P" -# end of Keyboard shortcuts - -# -# Main Window -# -CONFIG_mainwindow.title="smolbote" -CONFIG_mainwindow.width=1280 -CONFIG_mainwindow.height=720 -# end of Main Window - -# -# Profile Settings -# -CONFIG_profile.path="~/.config/smolbote/profiles.d" -CONFIG_profile.default="" -CONFIG_profile.search="https://duckduckgo.com/?q=%1&ia=web" -CONFIG_profile.homepage="about:blank" -CONFIG_profile.newtab="about:blank" -# end of Profile Settings - -CONFIG_USEPLUGINS=y - -# -# Plugin Settings -# -CONFIG_plugins.path="~/.config/smolbote/plugins.d" -# CONFIG_PLUGIN_SIGNATURE_IGNORED is not set -CONFIG_PLUGIN_SIGNATURE_CHECKED=y -# CONFIG_PLUGIN_SIGNATURE_ENFORCED is not set -CONFIG_PLUGIN_SIGNATURE_HASH="SHA256" -# end of Plugin Settings - -# -# Default paths -# -CONFIG_filter.path="~/.config/smolbote/hosts.d" -CONFIG_bookmarks.path="~/.config/smolbote/bookmarks.xbel" -CONFIG_downloads.path="~/Downloads" -CONFIG_session.path="~/.config/smolbote/session.d" -# CONFIG_USEPLASMA is not set -# CONFIG_USEBREAKPAD is not set - -# -# Workarounds -# -CONFIG_QTBUG_65223=y -# end of Workarounds diff --git a/linux/makepkg/PKGBUILD b/linux/makepkg/PKGBUILD index 9243405..debf2f1 100644 --- a/linux/makepkg/PKGBUILD +++ b/linux/makepkg/PKGBUILD @@ -2,8 +2,7 @@ pkgname=smolbote-git pkgdesc='Yet another no-frills browser' - -pkgver=r0 +pkgver=0 pkgrel=1 url="https://neueland.iserlohn-fortress.net/gitea/smolbote" @@ -16,7 +15,7 @@ depends=('qt5-webengine>=5.11.0' 'spdlog') optdepends=('firejail: launch a sandboxed instance') makedepends=('git' 'meson' 'python-kconfiglib' 'openssl' 'qt5-tools' 'scdoc') -# this is the central repository +# use git+file:///path/to/your/repo to build from a local repo source=("git+https://neueland.iserlohn-fortress.net/gitea/aqua/smolbote.git" "git+https://github.com/itay-grudev/SingleApplication.git" "git+https://github.com/Taywee/args") @@ -25,14 +24,9 @@ sha512sums=('SKIP' 'SKIP' 'SKIP') -#validgpgkeys=(# Aqua-sama -# BB1C090188E3E32B375C13FD095DE26BC16D2E98) +#validgpgkeys=(BB1C090188E3E32B375C13FD095DE26BC16D2E98) # Aqua-sama ## Build Options - -# Run menuconfig -#_menuconfig= - # Enable plugin signing: # meson/ninja will generate the privateKey.pem and publicKey.pem in the $builddir # Because this embeds the public key into the executable, enabling this option will break reproducible builds. @@ -52,9 +46,6 @@ pkgver() { cd smolbote # Without version tag echo r$(git rev-list --count HEAD)-$(git rev-parse --short HEAD) | sed 's/\([^-]*-g\)/r\1/;s/-/./g' - - # With version tag - #git describe --long | sed 's/\([^-]*-g\)/r\1/;s/-/./g' } build() { @@ -72,17 +63,21 @@ build() { # --auto-features=disabled - features should be explicitly enabled # b_pie: Build executables as position independent # b_lto: Use link time optimization - meson --buildtype=plain --prefix=/usr/local --auto-features=disabled \ + meson --buildtype=plain --wrap-mode=nodownload \ + --prefix=/usr/local --auto-features=disabled \ -Db_pie=true -Db_lto=true -Dcpp_link_args="-fuse-ld=gold" \ -Dmanpage=enabled \ $srcdir/build + # uncomment to enable crashhandler + #meson configure -Dcrashhandler=enabled $srcdir/build + #KCONFIG_CONFIG=linux/.config setconfig USEBREAKPAD=y + # Run menuconfig #KCONFIG_CONFIG=linux/.config menuconfig # Build - cd $srcdir/build - ninja + ninja -C $srcdir/build } package() { diff --git a/linux/meson.build b/linux/meson.build new file mode 100644 index 0000000..5b5c79e --- /dev/null +++ b/linux/meson.build @@ -0,0 +1,30 @@ +# application icon +install_data('../data/poi.svg', install_dir: get_option('datadir') / 'icons/hicolor/scalable/apps') + +# firejail profile +install_data('firejail/poi.profile', install_dir: get_option('libdir') / 'smolbote') + +# .desktop files +conf = configuration_data({ + 'exec_poi': get_option('prefix')/get_option('bindir')/get_option('poi'), + 'firejail': get_option('firejail'), + 'firejail_profile': get_option('prefix')/get_option('libdir')/'smolbote/poi.profile' +}) +desktop_files = ['poi.desktop', 'poi_firejail.desktop', 'poi_picksession.desktop'] +desktop_dir = get_option('datadir')/'applications' +foreach f : desktop_files + configure_file(input: f + '.in', output: f, configuration: conf, install_dir: desktop_dir) +endforeach + +# producing debug symbols +if get_option('crashhandler').enabled() +custom_target('poi-sym', + input: poi_exe, + output: 'poi.sym', + capture: true, + command: [ find_program('dump_syms'), '@INPUT@' ], + build_by_default: false, +# install_dir: symbols/poi/$(head -n1 linux/poi.sym | awk '{ print $(NF-1) }') +) +endif + -- cgit v1.2.1