Skip to content

Commit 74623ec

Browse files
Bump version
Add version gating, apt source list editing to configure.py Update ethcer docs to use 0.4.8 image
1 parent 57c2fff commit 74623ec

4 files changed

Lines changed: 34 additions & 5 deletions

File tree

CHANGELOG.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,16 @@
11
# AmpliPi Software Releases
22

33
# Future Release
4+
5+
6+
## 0.4.10
7+
48
* Web App
59
* Fixed internet radio search functionality
10+
* System
11+
* Changed apt source from `http://raspbian.raspberrypi.org/raspbian/` to `http://archive.raspberrypi.org/raspbian/`
612

7-
# 0.4.9
13+
## 0.4.9
814

915
* System
1016
* Update our spotify provider `go-librespot` to `0.5.2` to accomodate spotify's API update

docs/imaging_etcher.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,12 @@
55
* A micro USB cable
66
* Your AmpliPi
77

8+
## Optional Step: Preserve your config
9+
Assuming you're not reflashing due to a corrupted config, you can make sure to save your configuration file for later upload to save yourself the manual setup post-flash. You can get your configuration file by going to Settings -> Configuration -> Download Config. If you can't reach the app, you can also access it by SSHing in using the credentials on the screen on the front of your unit (username: pi@{IP} ; password: {4 word string on front display}) or through the USB connection that will be achieved in steps 1 , 2, and 4 and then mounting the connected drive.
10+
Once you're in, the config file is at **/home/pi/.config/amplipi/house.json**
11+
812
## 1. Get the Latest AmpliPi Image
9-
Download the latest AmpliPi image from [here](https://storage.googleapis.com/amplipi-img/amplipi_0.3.1.img.xz) ([md5sum](https://storage.googleapis.com/amplipi-img/CHECKSUMS), [.sig](https://storage.googleapis.com/amplipi-img/CHECKSUMS.sig)) and save it to your computer.
13+
Download the latest AmpliPi image from [here](https://storage.googleapis.com/amplipi-img/amplipi_0.4.8.img.xz) ([md5sum](https://storage.googleapis.com/amplipi-img/CHECKSUMS), [.sig](https://storage.googleapis.com/amplipi-img/CHECKSUMS.sig)) and save it to your computer.
1014

1115
## 2. Get RPIBoot
1216
Download and install the latest version of RPIBoot from [here](https://github.com/raspberrypi/usbboot/raw/master/win32/rpiboot_setup.exe) on windows, otherwise refer to the instructions for [building RPIBoot](https://github.com/raspberrypi/usbboot#building).
@@ -17,7 +21,7 @@ Download and install (if necessary) the latest version of Etcher from [etcher.io
1721
## 4. Connect your AmpliPi to your computer
1822

1923
**VERY IMPORTANT:** Please connect the USB cable to your computer FIRST before connecting the other side of the cable to the service port of the AmpliPro. Certain older units with TFT displays (not EINK) were susceptible to ESD damage on the USB service port. Connecting the cable to the computer first will mitigate this risk.
20-
24+
2125
Unplug your AmpliPi from power and then connect your AmpliPi to your computer via the service port using the micro USB cable. Once connected, plug your AmpliPi back into power.
2226

2327
![connected to service port](imgs/flashing/plugged_sp.jpg)

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "amplipi"
3-
version = "0.4.9"
3+
version = "0.4.10"
44
description = "A Pi-based whole house audio controller"
55
authors = [
66
"Lincoln Lorenz <lincoln@micro-nova.com>",

scripts/configure.py

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -459,11 +459,21 @@ def print_progress(tasks):
459459
progress(tasks)
460460
return tasks
461461
tasks = []
462+
463+
# Comment out deb http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi from /etc/apt/sources.list to avoid hitting up a now empty apt source
464+
tasks += print_progress([Task('Deactivate apt updates for outdated OS',
465+
args='file=/etc/apt/sources.list; '
466+
'if grep -q "buster" "$file" && [ "$(head -c 1 "$file")" != "#" ]; then ' # If file is for rasbian buster and the first line isn't already commented out, comment out the first line
467+
' sudo sed -i "s@^deb http://raspbian.raspberrypi.org/raspbian/ buster@#deb http://raspbian.raspberrypi.org/raspbian/ buster@g" "$file"; '
468+
'fi',
469+
shell=True
470+
).run()])
471+
462472
# TODO: add extra apt repos
463473
# find latest apt packages. --allow-releaseinfo-change automatically allows the following change:
464474
# Repository 'http://raspbian.raspberrypi.org/raspbian buster InRelease' changed its 'Suite' value from 'stable' to 'oldstable'
465475
tasks += print_progress([Task('get latest debian packages',
466-
'sudo apt-get update --allow-releaseinfo-change'.split()).run()])
476+
'sudo apt-get update --allow-releaseinfo-change'.split()).run()])
467477

468478
# Upgrade current packages
469479
print_progress(
@@ -1201,6 +1211,15 @@ def failed():
12011211
return True
12021212
return False
12031213

1214+
# Find the version number line, break off the version= portion, then split on the decimals to separate major, middle, and minor revisions
1215+
version = re.search(r'version=(\d+\.\d+\.\d+)', str(_check_version('http://0.0.0.0/api').output)).group(1).split(".")
1216+
# Example output:
1217+
# using: http://0.0.0.0/api
1218+
# version=0.3.1
1219+
if int(version[0]) == 0 and int(version[1]) < 4: # Is the version less than version 0.4.0?
1220+
print("Your version is too old to update automatically, please update manually using this guide: https://github.com/micro-nova/AmpliPi/blob/main/docs/imaging_etcher.md")
1221+
return False
1222+
12041223
env = _check_and_setup_platform(development, ci_mode)
12051224
if not env['platform_supported'] and not development:
12061225
tasks[0].output = f'untested platform: {platform.platform()}. Please fix this script and make a PR to github.com/micro-nova/AmpliPi'

0 commit comments

Comments
 (0)