Write up on LineageOS for Pixel 3a and fixes
This commit is contained in:
8
Makefile
8
Makefile
@@ -10,6 +10,10 @@ HUGO_IMAGE_NAME=bdebyl/hugo
|
||||
HUGO_IMAGE_TAG?=latest
|
||||
HUGO_IMAGE=$(HUGO_IMAGE_NAME):$(HUGO_IMAGE_TAG)
|
||||
|
||||
THUMBR_IMAGE_NAME=bdebyl/awscli
|
||||
THUMBR_IMAGE_TAG?=latest
|
||||
THUMBR_IMAGE?=$(THUMBR_IMAGE_NAME):$(THUMBR_IMAGE_TAG)
|
||||
|
||||
AWS_IMAGE_NAME=bdebyl/awscli
|
||||
AWS_IMAGE_TAG?=latest
|
||||
AWS_IMAGE=$(AWS_IMAGE_NAME):$(AWS_IMAGE_TAG)
|
||||
@@ -45,6 +49,10 @@ static-push:
|
||||
aws s3 sync --acl "public-read" --sse "AES256" ${STATIC_DIR}/ s3://${STATIC_BUCKET}
|
||||
.PHONY: static-push
|
||||
|
||||
static-images:
|
||||
@${DOCKER_RUN} ${THUMBR_IMAGE} ${STATIC_DIR}/static/img
|
||||
.PHONY: static-images
|
||||
|
||||
css-push:
|
||||
aws s3 cp --acl "public-read" --sse "AES256" public/dist/style.css s3://${WEB_BUCKET}/dist/style.css
|
||||
.PHONY: css-push
|
||||
|
||||
@@ -67,11 +67,18 @@ Below is the entire collection of all the photos taken of the subject at
|
||||
increasing aperture steps.
|
||||
|
||||
{{< thumbgallery >}}
|
||||
{{< thumb src="/static/img/aperture-study/f17.jpg" sub="f/1.7" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f20.jpg" sub="f/2.0" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f22.jpg" sub="f/2.2" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f25.jpg" sub="f/2.5" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f28.jpg" sub="f/2.8" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f32.jpg" sub="f/3.2" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f40.jpg" sub="f/4.0" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f17.jpg" sub="f/1.7"
|
||||
alt="Photograph showing photo at aperture f/1.7" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f20.jpg" sub="f/2.0"
|
||||
alt="Photograph showing photo at aperture f/2.0" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f22.jpg" sub="f/2.2"
|
||||
alt="Photograph showing photo at aperture f/2.2" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f25.jpg" sub="f/2.5"
|
||||
alt="Photograph showing photo at aperture f/2.5" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f28.jpg" sub="f/2.8"
|
||||
alt="Photograph showing photo at aperture f/2.8" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f32.jpg" sub="f/3.2"
|
||||
alt="Photograph showing photo at aperture f/3.2" >}}
|
||||
{{< thumb src="/static/img/aperture-study/f40.jpg" sub="f/4.0"
|
||||
alt="Photograph showing photo at aperture f/4.0" >}}
|
||||
{{< /thumbgallery >}}
|
||||
|
||||
@@ -3,7 +3,7 @@ title: "Auto-complete for libopencm3 in Emacs"
|
||||
date: 2019-10-18
|
||||
lastmod: 2019-10-18
|
||||
tags: ["emacs", "linux"]
|
||||
categories: ["Tutorials"]
|
||||
categories: ["Tutorial"]
|
||||
contentCopyright: true
|
||||
hideHeaderAndFooter: false
|
||||
---
|
||||
|
||||
111
content/post/lineageos_pixel3a.md
Normal file
111
content/post/lineageos_pixel3a.md
Normal file
@@ -0,0 +1,111 @@
|
||||
---
|
||||
title: "Installing LineageOS Unofficial on Pixel 3a"
|
||||
date: 2020-07-13
|
||||
lastmod: 2020-07-13
|
||||
draft: false
|
||||
tags: ["android", "security", "hacking"]
|
||||
categories: ["Tutorial"]
|
||||
contentCopyright: true
|
||||
hideHeaderAndFooter: false
|
||||
preview: "/static/img/lineageos-pixel3a/lineage-settings.png"
|
||||
---
|
||||
In this post I aim to highlight my findings in deciding to go through the
|
||||
process of installing LineageOS on my Pixel 3a. Currently, LineageOS does not
|
||||
officially support the Pixel 3a. However, InvisibleK (Dan Pasanen) does host
|
||||
updated versions of his unofficial LineageOS build for the Pixel 3a complete
|
||||
with a custom recovery to utilize for this purpose!
|
||||
|
||||
{{< thumbgallery >}}
|
||||
{{< thumb src="/static/img/lineageos-pixel3a/lineage-settings.png"
|
||||
alt="Screenshot showing the LineageOS version and other LineageOS settings on the Pixel 3a" >}}
|
||||
{{< thumb src="/static/img/lineageos-pixel3a/lineage-trust.png"
|
||||
alt="Screenshot showing the LineageOS Trust feature" >}}
|
||||
{{< /thumbgallery >}}
|
||||
|
||||
|
||||
<!--more-->
|
||||
# Thank You
|
||||
Before going on any further, I'd like to take a moment to give my sincere thanks
|
||||
to InvisibleK (Dan Pasanen). Having to set up the entire custom build for Pixel
|
||||
3a of LineageOS myself would add far more overhead in the overall simple task in
|
||||
trying to get LineageOS to work on a Pixel 3a!
|
||||
|
||||
# Preface
|
||||
There are plenty of guides out there on how to install and set up ADB and
|
||||
Fastboot on your host machine. For me, on Arch Linux, this was as simple as
|
||||
running `pacman -S android-tools`. However, should you be on MacOS or Windows
|
||||
you may have to find resources on how to go about this. I do not intend to go
|
||||
over this here -- __sorry_.
|
||||
|
||||
Additionally, this _guide_ also assumes the reader has some familiarity with ADB
|
||||
and/or Fastboot.
|
||||
|
||||
# Source Files
|
||||
If you, the reader, knows what you're doing and simply just require the files
|
||||
for your Pixel 3a they can be found here:
|
||||
- https://updater.invisiblek.org/sargo
|
||||
|
||||
# Installation
|
||||
{{< admonition warning "Warning!" >}}
|
||||
If it isn't abundantly clear by now, be aware that you **will be destroying all
|
||||
the data currently on your Pixel 3a** in the process of installing LineageOS on
|
||||
your device! Stop now and back up any files, 2FA codes, or other prior to
|
||||
proceeding.
|
||||
{{< /admonition >}}
|
||||
|
||||
## Note about TWRP
|
||||
As of writing this, TWRP[^1] (_a custom recovery commonly used in custom OS
|
||||
installation_) does not support Pixel 3a. However, if it does
|
||||
|
||||
## Flash to Stock
|
||||
Google is kind enough to provide a plethora of versions of the stock images for
|
||||
the Pixel devices. In my process of installing LineageOS, as it will be on
|
||||
Android 10, I made sure to flash to the latest stock version of Pixel 3a Android
|
||||
10. Do note that the versions are listed in reverse order, with the latest being
|
||||
found in the bottom-most row.
|
||||
- https://developers.google.com/android/images
|
||||
|
||||
Additionally, Google provides a helper script `flash-all` that I highly
|
||||
recommend running as-is to flash your Pixel 3a to stock. This will take some
|
||||
|
||||
## Flash Custom Recovery
|
||||
Using InvisibleK's build page, you'll find the required custom recovery image
|
||||
for flashing found at the bottom of the list of zip files marked with a lone
|
||||
"download" link.
|
||||
|
||||
Download, then flash it via the following:
|
||||
1. Reboot to recovery
|
||||
```bash
|
||||
$ adb reboot bootloader
|
||||
```
|
||||
1. Flash the custom recovery (_make sure to replace `N` with the version you
|
||||
downloaded, mine was '4'_)
|
||||
```bash
|
||||
$ fastboot flash boot sargo-recovery-eng-N.img
|
||||
```
|
||||
1. Boot the custom recovery either by re-entering recovery mode or fastboot --
|
||||
make sure to wait for it to enter Android Recovery after
|
||||
```bash
|
||||
$ fastboot boot sargo-recovery-eng-N.img
|
||||
```
|
||||
|
||||
## Install LineageOS
|
||||
Now that the custom recovery is set up and booted into, we're ready to install LineageOS!
|
||||
1. **Important!** Once in recovery, ensure to 'Wipe data/factory reset' prior to
|
||||
proceeding.
|
||||
1. Select 'Apply update from ADB'
|
||||
1. ADB Sideload the version, if not latest, of LineageOS you want for your Pixel
|
||||
3a
|
||||
```bash
|
||||
$ adb sideload lineage-17.1-2020517-UNOFFICIAL-sargo.zip
|
||||
```
|
||||
1. Wait for installation to complete then select 'Reboot system now' from the
|
||||
recovery menu
|
||||
1. Enjoy LineageOS!
|
||||
|
||||
## Verification
|
||||
Once in LineageOS, you can browse the settings to verify the installation and
|
||||
set up Trust the preferred way. Personally, I chose to leave the defaults.
|
||||
|
||||
|
||||
[^1]: [Team Win Recovery Project](https://twrp.me/)
|
||||
@@ -1,84 +0,0 @@
|
||||
#!/bin/sh
|
||||
{ usage="$(cat)"; }<<'EOF'
|
||||
USAGE
|
||||
make-thumbs.sh [OPTIONS] <path>
|
||||
|
||||
DESCRIPTION
|
||||
Recursively searches through the passed path, ignoring existing thumbnails,
|
||||
and generates thumbnails for images greater than 600px in width.
|
||||
|
||||
OPTIONS
|
||||
-h, --help Shows this help prompt
|
||||
-d, --dry-run Dry-run that will not create actual thumbnails
|
||||
EOF
|
||||
|
||||
die() {
|
||||
printf '%s\n' "$1" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
show_help() {
|
||||
printf '%s\n' "$usage"
|
||||
exit
|
||||
}
|
||||
|
||||
while :; do
|
||||
case $1 in
|
||||
-h|-\?|--help)
|
||||
show_help
|
||||
exit
|
||||
;;
|
||||
-d|--dry-run)
|
||||
DRYRUN=1
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
break
|
||||
;;
|
||||
-?*)
|
||||
printf 'WARN: Unknown option (ignored): %s\n' "$1" >&2
|
||||
;;
|
||||
*)
|
||||
if [ "$1" ]; then
|
||||
BROWSE_PATH=$1
|
||||
else
|
||||
break
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
shift
|
||||
done
|
||||
|
||||
if [ -z "$BROWSE_PATH" ]; then
|
||||
die 'ERROR: path not specified! (See -h/--help)'
|
||||
fi
|
||||
|
||||
CONVERT=$(command -v convert)
|
||||
if [ ! "$CONVERT" ]; then
|
||||
echo "ERROR: imagemagick must be installed!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
find "$BROWSE_PATH" -type f -not -path '*thumb*' | while read -r i; do
|
||||
THUMB_PATH="$(dirname "$i")/thumb"
|
||||
IMG_NAME="$(basename "$i")"
|
||||
|
||||
# Generate a thumbnail if the width is greater than 600px
|
||||
if [ "$(identify -format "%w" "$i")" -gt 600 ]; then
|
||||
# Create the thumbnail directory fo the image to be made
|
||||
if [ ! -d "$THUMB_PATH" ]; then
|
||||
if [ ! "$DRYRUN" ]; then
|
||||
mkdir -p "$THUMB_PATH"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Create the thumbnail image
|
||||
if [ ! -f "$THUMB_PATH/$IMG_NAME" ]; then
|
||||
printf "└─ Converting %s to thumbnail in %s \n" "$BROWSE_PATH/$IMG_NAME" "$THUMB_PATH"
|
||||
if [ ! "$DRYRUN" ]; then
|
||||
"$CONVERT" -resize 600x "$i" "$THUMB_PATH/$IMG_NAME";
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
done
|
||||
Reference in New Issue
Block a user