Difference between revisions of "Projects:PinePhone Daily Driver with Sway"
Jump to navigation
Jump to search
| Line 2: | Line 2: | ||
=== Components === | === Components === | ||
| − | * | + | * [[postmarketOS]] with [[swayWM|postmarketos-ui-sway]] |
| − | + | * System packages: [[bemenu]] [[networkmanager]] [[termite]] termite-terminfo [[bluez]] | |
| − | * System packages: | + | * App packages: [[vim]] [[firefox]] [[galculator]] [[thunderbird]] [[gajim]] [[audacious]] audacious-plugins |
| − | |||
| − | |||
| − | |||
| − | * App packages: | ||
| − | |||
=== Setup === | === Setup === | ||
| Line 71: | Line 66: | ||
==== TODOs ==== | ==== TODOs ==== | ||
| − | + | {{todo|Complete these TODOs!}} | |
| − | ** Custom input device? [https://python-evdev.readthedocs.io/en/latest/tutorial.html] | + | # power saving (so that I can leave the battery in the device when I'm not using it) |
| − | * | + | #* hibernation / suspend command |
| − | * | + | #* shortcut to enter suspend |
| − | * | + | # Install and test essential apps & workflows |
| − | * | + | ## Terminal: [[termite]] |
| + | ## Web browser: [[Firefox]] | ||
| + | ## Passwords manager: [[KeepassXC]]) | ||
| + | ## Personal Information Manager with [[WebDAV]] sync support for calendar, contacts | ||
| + | ## Email client: [[thunderbird]] | ||
| + | ## Calculator: [[galculator]] | ||
| + | ## Alarm: ? | ||
| + | ## IM clients | ||
| + | ##* XMPP: ? | ||
| + | ##* Matrix: ? | ||
| + | ##* Slack: ? | ||
| + | ## Music player: [[audacious]] | ||
| + | ## Camera & Video recorder: ? | ||
| + | ## VPN client: [[NetworkManager]]? | ||
| + | # Support for non-essential apps & workflows | ||
| + | #* RSS client: ? | ||
| + | #* OTP generator: ? | ||
| + | #* Ebook reader: ? | ||
| + | #* Weather forecast: ? | ||
| + | #* Maps, navigation: ? | ||
| + | #* Calls & Texts: ? | ||
| + | # Touch gestures and controls | ||
| + | #* [[sxmo#lisgd]] | ||
| + | #* [[twofing]] | ||
| + | #* [[easystroke]] (abandoned) | ||
| + | #* [[wmctrl]], [[xdotool]], [[xte]], ... | ||
| + | #* Custom input device? [https://python-evdev.readthedocs.io/en/latest/tutorial.html] | ||
| + | # tweaking | ||
| + | #* Configure [[Firefox]] for touch: [https://wiki.postmarketos.org/wiki/Firefox]? | ||
| + | #* ''acpi'' for battery monitoring? | ||
| + | #* ... | ||
| + | # non-essential userspace apps | ||
| + | #* ... | ||
| + | |||
== Rejected solutions == | == Rejected solutions == | ||
Revision as of 18:54, 25 May 2020
Implementation of Projects:PinePhone Daily Driver using swayWM.
Contents
Components
- postmarketOS with postmarketos-ui-sway
- System packages: bemenu networkmanager termite termite-terminfo bluez
- App packages: vim firefox galculator thunderbird gajim audacious audacious-plugins
Setup
TODO: Move some of this setup into a repository
lisgd
~/build/lisgd/lisgd.h/* Commands to execute upon recieving a swipe gesture */
Gesture gestures[] = {
/* fingers start end command */
{ 1, Left, Right, "swaymsg workspace prev" },
{ 1, Right, Left, "swaymsg workspace next" },
{ 2, Left, Right, "xdotool key --clearmodifiers Alt+e" },
{ 2, Right, Left, "xdotool key --clearmodifiers Alt+r" },
{ 2, Down, Up, "swayphone_keyboard_show" },
{ 2, Up, Down, "swayphone_keyboard_hide" },
{ 3, Down, Up, "sxmo_vol.sh up" },
{ 3, Up, Down, "sxmo_vol.sh down" },
{ 4, Down, Up, "sxmo_brightness.sh up" },
{ 4, Up, Down, "sxmo_brightness.sh down" },
};
TODO: Finish updating this
# TODO: cloning and building the app
cp ~/build/lisgd/lisgd /usr/local/bin/lisgd
swayWM
- Copy
/etc/sway/configto~/.config/sway/config - Edit:
~/.config/sway/config xargs swaymsg exec --
[...]
# Kill focused window
bindsym $mod+q kill
[...]
- Default scaling for the touchscreen
output DSI-1 scale 2
- Initial utility apps
exec squeekboard
exec lisgd
Bluetooth
- Enable the service on boot:
rc-update add bluetooth - Enable the controller by default:
/etc/bluetooth/main.conf[Policy]
AutoEnable=true
TODOs
TODO: Complete these TODOs!
- power saving (so that I can leave the battery in the device when I'm not using it)
- hibernation / suspend command
- shortcut to enter suspend
- Install and test essential apps & workflows
- Terminal: termite
- Web browser: Firefox
- Passwords manager: KeepassXC)
- Personal Information Manager with WebDAV sync support for calendar, contacts
- Email client: thunderbird
- Calculator: galculator
- Alarm: ?
- IM clients
- XMPP: ?
- Matrix: ?
- Slack: ?
- Music player: audacious
- Camera & Video recorder: ?
- VPN client: NetworkManager?
- Support for non-essential apps & workflows
- RSS client: ?
- OTP generator: ?
- Ebook reader: ?
- Weather forecast: ?
- Maps, navigation: ?
- Calls & Texts: ?
- Touch gestures and controls
- sxmo#lisgd
- twofing
- easystroke (abandoned)
- wmctrl, xdotool, xte, ...
- Custom input device? [1]
- tweaking
- non-essential userspace apps
- ...
Rejected solutions
under Wayland
- libinput-gestures
- twofing
- onboard virtual keyboard