{"id":1388,"date":"2024-06-17T12:00:00","date_gmt":"2024-06-17T19:00:00","guid":{"rendered":"https:\/\/letsbuildroboticswithshadow8472.com\/?p=1388"},"modified":"2024-08-16T17:26:39","modified_gmt":"2024-08-17T00:26:39","slug":"linux-phone-milestone-moving-in","status":"publish","type":"post","link":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/2024\/06\/17\/linux-phone-milestone-moving-in\/","title":{"rendered":"Linux Phone Milestone: Moving In"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Good Morning from my Robotics Lab! This is Shadow_8472 and today I am moving into my PinePhone. Let\u2019s get started!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Previously<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">After around four years of ownership, my PinePhone UBports Edition has PostmarketOS\/Phosh and is working on a network. Now that the big solar storm is over, it actually gets signal.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Password Adjustment<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Before I properly move into my phone, I have a couple more topics to explore first. One: I need a relatively short user password to unlock from sleep. At the same time, I also want to require a longer password for admin functions. Two: I set up Full Disk Encryption (FDE) while installing PostmarketOS, with testing in mind. I need something a bit less guessable.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The root password can be required in a number of ways from a special admin account to not having sudo. I tried the later, and dependencies insisted it stay. Online search results were frequently more into removing admin privileges entirely, but I did pick up on the history and intended context of sudo as being programmed to easily revoke root access when no longer needed \u2013 as well as log commands used so IT knows who did what and hopefully how to fix it. One detail of note was the wheel group (as in a car\u2019s steering wheel). Early Unix required wheel to su (Substitute User) into root, but it\u2019s not a universal standard.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Or I can configure sudo by editing \/etc\/sudoers. Using visudo is recommended to check syntax, but it dropped me into vi\/vim, which I\u2019m having none of. I installed nano, then tried\/failed to set it as system default text editor. Otherwise, I might have tried a configuration where sudo just asks for the root password. Instead, I commented out the line giving users with the wheel group sudo privileges. (NOTE: While finalizing this post, I found this may break app stores. Next post about PinePhone, I will try requiring the root password instead.)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With sudo hobbled, I learned more about FDE. As it just so happens, PostmarketOS was built for it. I got the name LUKS (Linux Unified Key Setup) and a hint that the boot partition might need to be left unencrypted by the time a community member on the Pine64 community gave me the exact command to change my key:<\/p>\n\n\n\n<pre class=\"wp-block-verse\">$ sudo cryptsetup luksChangeKey \/dev\/mmcblk2p2 -S 0<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">In my case, I double checked the partition name before performing it with su instead of sudo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Update on August 8, 2024: I disabled SSH password login, requiring key login instead.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Moving In<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Confident I had secured it to my skill level, I did some more \u201cnormal\u201d new phone\/computer behaviors, such as finding the dark theme, using AM\/PM, and adjusting automatic sleep times. My background image had to be moved over with scp (Secure CoPy) and it took a reboot before it showed up. I also moved my ringtone and notification sound over from my previous phone in the same way, installed them, and rebooted again. While it would have made things a little easier, I\u2019m forgoing on NFS access until my homelab servers are moved away from common LAN subnet addresses.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Moving my old contacts list wasn\u2019t too hard either, though I did get help from an automaton app on the Android side to export to .vcf format (Variant Call File). I then used an SD card to move them over. Phosh\u2019s default contacts app by The GNOME Project accepted it no problem. The longest part was weeding out stale contacts going back to high school.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The luck ended with WayDroid. One goal for this phone is demoing Android apps in on Linux. Waydroid looks like the best option. I installed it no problem, but initialization took a few attempts when the 2 minute sleep kept corrupting a large download. From there, I tried installing an F-Droid client, but I got an error in-terminal about the WayDroid session stopping.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Takeaway<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">My Linux phone is not completely stable by any stretch of the imagination. It keeps crashing, the battery feels like a joke \u2013 and overall, the thing feels slow no matter what I do. But remember that I have an early prototype aimed at developers and enthusiasts. Pine64 has production models released, and they aren\u2019t the only ones making phones to run Linux. I am just thankful they didn\u2019t make the screen so big they had to mutilate it to accommodate the camera.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Final Question<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Blunder! I just noticed the local app store hangs when trying to install\u2026 maybe? Probably because of my sudo configuration, but I will need more time with it as I build up a to-do list for another follow-up post. What all should that to-do list contain?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Good Morning from my Robotics Lab! This is Shadow_8472 and today I am moving into my PinePhone. Let\u2019s get started! Previously After around four years of ownership, my PinePhone UBports Edition has PostmarketOS\/Phosh and is working on a network. Now that the big solar storm is over, it actually gets signal. Password Adjustment Before I &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/2024\/06\/17\/linux-phone-milestone-moving-in\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Linux Phone Milestone: Moving In&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[2],"tags":[178,373,156,374],"class_list":["post-1388","post","type-post","status-publish","format-standard","hentry","category-linux","tag-linux-phone","tag-phosh","tag-pinephone","tag-postmarketos"],"_links":{"self":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/1388","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/comments?post=1388"}],"version-history":[{"count":3,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/1388\/revisions"}],"predecessor-version":[{"id":1409,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/posts\/1388\/revisions\/1409"}],"wp:attachment":[{"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/media?parent=1388"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/categories?post=1388"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/letsbuildroboticswithshadow8472.com\/index.php\/wp-json\/wp\/v2\/tags?post=1388"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}