{"action":"created","issue":{"url":"https://api.github.com/repos/postmarketOS/pmbootstrap/issues/1343","repository_url":"https://api.github.com/repos/postmarketOS/pmbootstrap","labels_url":"https://api.github.com/repos/postmarketOS/pmbootstrap/issues/1343/labels{/name}","comments_url":"https://api.github.com/repos/postmarketOS/pmbootstrap/issues/1343/comments","events_url":"https://api.github.com/repos/postmarketOS/pmbootstrap/issues/1343/events","html_url":"https://github.com/postmarketOS/pmbootstrap/pull/1343","id":306189724,"number":1343,"title":"Package the touch keyboard onboard and polybar (for i3)","user":{"login":"michitux","id":198317,"avatar_url":"https://avatars3.githubusercontent.com/u/198317?v=4","gravatar_id":"","url":"https://api.github.com/users/michitux","html_url":"https://github.com/michitux","followers_url":"https://api.github.com/users/michitux/followers","following_url":"https://api.github.com/users/michitux/following{/other_user}","gists_url":"https://api.github.com/users/michitux/gists{/gist_id}","starred_url":"https://api.github.com/users/michitux/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michitux/subscriptions","organizations_url":"https://api.github.com/users/michitux/orgs","repos_url":"https://api.github.com/users/michitux/repos","events_url":"https://api.github.com/users/michitux/events{/privacy}","received_events_url":"https://api.github.com/users/michitux/received_events","type":"User","site_admin":false},"labels":[{"id":649630661,"url":"https://api.github.com/repos/postmarketOS/pmbootstrap/labels/dont_merge_pr","name":"dont_merge_pr","color":"b60205","default":false},{"id":640640781,"url":"https://api.github.com/repos/postmarketOS/pmbootstrap/labels/packaging","name":"packaging","color":"fef2c0","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2018-03-17T20:56:24Z","updated_at":"2018-04-08T12:13:57Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/postmarketOS/pmbootstrap/pulls/1343","html_url":"https://github.com/postmarketOS/pmbootstrap/pull/1343","diff_url":"https://github.com/postmarketOS/pmbootstrap/pull/1343.diff","patch_url":"https://github.com/postmarketOS/pmbootstrap/pull/1343.patch"},"body":"This adds the software required to replicate the [i3touchmenu](https://github.com/ssmolkin1/i3touchmenu/) setup that makes i3 quite usable on a tablet without a keyboard. With some modifications this might also be usable on a phone. The fonts are partially missing, unfortunately, so just copying the setup does not work. More specifically, I have packaged:\r\n\r\n* The [onboard](https://launchpad.net/onboard) keyboard. It offers different keyboard variants optimized for different display sizes, different themes, integration with gnome accessibility services (which can automatically launch the keyboard when an input field is focused) and it can be pinned to the screen edge. In i3 it also automatically resizes the windows to fit above the keyboard when it is pinned (this can be configured), in Xfce4 this unfortunately did not work for me (even though the option claims to have this effect). Unfortunately, it has a lot of dependencies that are required for it to work. I needed to add `py3-distutils-extra` and `py3-dbus` as new packages.\r\n* The [polybar](https://github.com/jaagr/polybar) status bar. It allows to configure a dynamic status bar e.g. for i3 with lots of different buttons. Buttons can be configured to be expanded into several buttons, this allows to create a nested menu structure as shown in [i3touchmenu](https://github.com/ssmolkin1/i3touchmenu/). This means it can be used to create custom menus e.g. for starting applications or for moving windows to different virtual desktops.\r\n\r\nSome questions:\r\n* Should this go into postmarketOS or directly into Alpine Linux?\r\n* I have added myself as contributor, should I also add myself as maintainer, if yes, what would be expected of me?\r\n* `onboard` uses the `error()` method of glibc. From the [manual](https://www.gnu.org/software/libc/manual/html_node/Error-Messages.html) I understood that the way it is used (`errnum=0`), this would only add the program name as prefix and then just print the rest similar to `printf`. Therefore, I have replaced them with `fprintf` to `stderr` which is not equivalent but at least shows the messages. Is there a better fix?\r\n* `onboard` does not require `py3-dbus`, but without `py3-dbus`, some functionality is missing like showing the keyboard instead of starting a second instance when running `onboard` again. As I think this is quite difficult to discover, I have just added `py3-dbus` as a dependency.\r\n* `py3-dbus` shares some files with `py-dbus`, that's why Arch Linux has a third package with the common files (see [PKGBUILD](https://git.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/dbus-python)). How is such a situation handled in Alpine Linux?\r\n* Some dependencies of `polybar` are actually optional (only required for certain modules) but the build system just added them as dependencies. As mentioned in the discussion in the [AUR](https://aur.archlinux.org/packages/polybar/), if the packages are not present during the build, they also cannot be enabled later, that's why I have added them as build dependencies. Should they be added as regular dependencies in the `APKBUILD`?\r\n* `polybar` has two git submodules, therefore a regular git archive does not work. I am now just using git directly. There are several alternatives though. Alpine Linux has an [example](https://wiki.alpinelinux.org/wiki/APKBUILD_examples:Git_checkout) how to create an archive manually (but I assume this does only work for packages built in their systems). One could also just download the archives of the submodules manually. Any opinions?"},"comment":{"url":"https://api.github.com/repos/postmarketOS/pmbootstrap/issues/comments/379545712","html_url":"https://github.com/postmarketOS/pmbootstrap/pull/1343#issuecomment-379545712","issue_url":"https://api.github.com/repos/postmarketOS/pmbootstrap/issues/1343","id":379545712,"user":{"login":"ollieparanoid","id":6033024,"avatar_url":"https://avatars1.githubusercontent.com/u/6033024?v=4","gravatar_id":"","url":"https://api.github.com/users/ollieparanoid","html_url":"https://github.com/ollieparanoid","followers_url":"https://api.github.com/users/ollieparanoid/followers","following_url":"https://api.github.com/users/ollieparanoid/following{/other_user}","gists_url":"https://api.github.com/users/ollieparanoid/gists{/gist_id}","starred_url":"https://api.github.com/users/ollieparanoid/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ollieparanoid/subscriptions","organizations_url":"https://api.github.com/users/ollieparanoid/orgs","repos_url":"https://api.github.com/users/ollieparanoid/repos","events_url":"https://api.github.com/users/ollieparanoid/events{/privacy}","received_events_url":"https://api.github.com/users/ollieparanoid/received_events","type":"User","site_admin":false},"created_at":"2018-04-08T12:13:57Z","updated_at":"2018-04-08T12:13:57Z","author_association":"OWNER","body":"Awesome :tada: \r\n\r\nOn a side note, Alpine [prefers squashed commits](https://github.com/alpinelinux/aports/search?q=%22please+squash%22&type=Issues) in their PRs."}}
{"actor":{"display_login":"ollieparanoid"}}