aboutsummaryrefslogtreecommitdiff
path: root/linux
diff options
context:
space:
mode:
authorAqua-sama <aqua@iserlohn-fortress.net>2020-01-03 18:04:08 +0200
committerAqua-sama <aqua@iserlohn-fortress.net>2020-01-03 20:24:29 +0200
commit23a7f3baa33265519840609dc54e950615ec39b1 (patch)
treeff2737f76b63a2acf5f8a9fffd5c15e3eb4c46c8 /linux
parentWebProfile refactoring (diff)
downloadsmolbote-23a7f3baa33265519840609dc54e950615ec39b1.tar.xz
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/
Diffstat (limited to 'linux')
-rw-r--r--linux/.config105
-rw-r--r--linux/makepkg/PKGBUILD25
-rw-r--r--linux/meson.build30
3 files changed, 40 insertions, 120 deletions
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 <aqua@iserlohn-fortress.net>
-# BB1C090188E3E32B375C13FD095DE26BC16D2E98)
+#validgpgkeys=(BB1C090188E3E32B375C13FD095DE26BC16D2E98) # Aqua-sama <aqua@iserlohn-fortress.net>
## 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
+