aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--README.md21
-rw-r--r--docs/manual/Building.md18
-rw-r--r--linux/makepkg/PKGBUILD.aqua58
-rw-r--r--linux/makepkg/PKGBUILD.generic (renamed from linux/makepkg/PKGBUILD)0
5 files changed, 83 insertions, 17 deletions
diff --git a/.gitignore b/.gitignore
index f692ec6..2d6b408 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,5 +4,8 @@ build*
# QtCreator .pro.user settings
*.user
+# clion
+.idea
+
# python
__pycache__
diff --git a/README.md b/README.md
index 4620bc3..d7bcd68 100644
--- a/README.md
+++ b/README.md
@@ -2,11 +2,15 @@
_It's yet another no-frills browser, poi!_
### What is this and why should I care?
-The aim is to create a small, clean and tweakable free-software web browser.
+The aim is to create a [KISS](kiss-principle) free-software web browser.
-* small is cute: do one thing and do it well
+* small: do one thing and do it well
* clean: a small codebase of human-readable code
-* tweakable: so you can change all the things
+* tweakable: you can change all the things
+
+This is free software. You can use it as you see fit, studay the source code
+and change it to suit your needs, and share the program, with or without
+modification. For more information, see LICENSE.md.
### What's up with the name?!
It's a small boat.
@@ -14,13 +18,12 @@ It's a small boat.
### Sounds dumb, how do I use it?
You make it yourself. Then you _poi_.
-Do you know what makepkg is? Then the PKGBUILD is in linux/makepkg/PKGBUILD.
+Do you know what makepkg is? Then take a look in linux/makepkg/.
-Do you know what a compiler is? Great, then configure qbs and run
-```sh
-qbs build -p poi profile:qt5 release
-```
+Do you know what a compiler is? Great, glance at docs/manual/Building.md for
+instructions.
### It doesn't work, what now?
-For the time being, refer complaints to /dev/null.
+Drop me an email at _aqua at iserlohn-fortress.net_.
+[kiss-principle]: https://en.wikipedia.org/wiki/KISS_principle
diff --git a/docs/manual/Building.md b/docs/manual/Building.md
index a0c6d94..5eee024 100644
--- a/docs/manual/Building.md
+++ b/docs/manual/Building.md
@@ -4,9 +4,8 @@
### Libraries
- [Qt](https://www.qt.io/)
- - at least 5.9 (codebase should largely work with Qt 5.7)
- - core, widgets
- - webengine, webenginewidgets
+ - an up-to-date version, even thought the codebase should largely work with Qt 5.7 or later
+ - WebEngine
- [libconfig](https://hyperrealm.github.io/libconfig/)
### Tools
@@ -17,16 +16,19 @@
- minimal version 3.1.0, but please use something up-to-date
## Compiling
+smolbote follows the generic cmake build template.
```
-cmake -DCMAKE_BUILD_TYPE=Release ../smolbote.git
+# generate makefile
+cmake -DCMAKE_BUILD_TYPE=Release -G "Unix Makefiles" ../smolbote.git
+# build
make -j 4
+# install
+make DESTDIR=/install/root/goes/here install
```
### Using libc++
-```text
-cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER=/usr/bin/clang++ -DUseLibCpp=On ../smolbote.git
-make -j 4
-```
+You can use libc++ over stdlibc++ by setting UseLibCpp to On. Requires clang.
+> -DCMAKE_CXX_COMPILER=/usr/bin/clang++ -DUseLibCpp=On
## Packaging
diff --git a/linux/makepkg/PKGBUILD.aqua b/linux/makepkg/PKGBUILD.aqua
new file mode 100644
index 0000000..5dfe35e
--- /dev/null
+++ b/linux/makepkg/PKGBUILD.aqua
@@ -0,0 +1,58 @@
+# Maintainer: Aqua-sama <aqua@iserlohn-fortress.net>
+
+pkgname=smolbote-git
+pkgver=0.0.0
+pkgrel=1
+pkgdesc='Yet another no-frills browser'
+url="https://neueland.iserlohn-fortress.net/smolbote"
+
+arch=('x86_64')
+license=('GPL3')
+
+depends=('qt5-base' 'qt5-webengine')
+makedepends=('git' 'cmake' 'ninja' 'libconfig' 'pkg-config')
+
+source=("smolbote-git::git+git://neueland.iserlohn-fortress.net/smolbote.git")
+sha512sums=('SKIP')
+
+# any patches go here
+#prepare() {
+#}
+
+pkgver() {
+ cd smolbote-git
+ echo "$(git describe --long --tags | tr - .)"
+}
+
+build() {
+ rm -rf "$pkgname-$pkgver"
+ mkdir "$pkgname-$pkgver"
+ cd "$pkgname-$pkgver"
+
+ # CMake Options
+ # build type
+ _cmake_options="-DCMAKE_BUILD_TYPE=Release"
+
+ # install prefix, or where should the binary be installed
+ _cmake_options="$_cmake_options -DCMAKE_INSTALL_PREFIX=$pkgdir/usr/local"
+
+ # compiler
+ _cmake_options="$_cmake_options -DCMAKE_CXX_COMPILER=/usr/bin/clang++"
+
+ # use libc++ instead of libstdc++
+ _cmake_options="$_cmake_options -DUseLibCpp=On"
+
+ # build system
+ _cmake_options="$_cmake_options -GNinja"
+
+ # Generate a makefile
+ cmake $_cmake_options "$srcdir/smolbote-git"
+
+ # build
+ ninja
+}
+
+package() {
+ cd "$pkgname-$pkgver"
+ ninja install
+}
diff --git a/linux/makepkg/PKGBUILD b/linux/makepkg/PKGBUILD.generic
index 9a17f9b..9a17f9b 100644
--- a/linux/makepkg/PKGBUILD
+++ b/linux/makepkg/PKGBUILD.generic