Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installation 2.0 #2249

Draft
wants to merge 32 commits into
base: future3/develop
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
b713bac
Categorize install options
pabera Jan 9, 2024
3eb53d7
Move code for IVP6 into separate function; allow both enable/disable …
pabera Jan 9, 2024
a36ded9
Change folder location for options
pabera Jan 9, 2024
e99159f
[ipv6] remove unnecessary test
pabera Jan 9, 2024
f7aa58e
refactor: Allow to enable/disable bluetooth
pabera Jan 9, 2024
085ec43
refactor: Allow to enable/disable and set static ip
pabera Jan 10, 2024
5abd1ff
refactor: Keep raspi-config service alive
pabera Jan 10, 2024
04b84de
refactor: Allow to enable/disable and set boot screen
pabera Jan 10, 2024
ba53cbe
fix: Typo in boot_screen.sh
pabera Jan 10, 2024
188d544
Revert "refactor: Keep raspi-config service alive"
pabera Jan 10, 2024
735b699
fix: Add mixing verify_file_does_not_contain_string function
pabera Jan 10, 2024
c99ded4
fix: Do not depend on raspi-config for boot_screen
pabera Jan 10, 2024
8f6000a
Merge branch 'future3/develop' into future3/feature/installation
pabera Jan 16, 2024
22ef685
fix: Typo
pabera Jan 17, 2024
49cf4c5
Merge branch 'future3/develop' into future3/feature/installation
pabera Jan 22, 2024
b89435f
refactor: abstract boot_path function
pabera Jan 22, 2024
8e4ec13
refactor: outsource boot_logs and systemctl_services
pabera Jan 22, 2024
735063f
Remove option 'Disable on-chip audio' in favor of self-service
pabera Jan 23, 2024
334465e
Remove option 'Disable on-chip audio' in favor of self-service
pabera Jan 23, 2024
a1ebeed
rename: optimize_boot_time to optimized_defaults
pabera Jan 23, 2024
9451924
fix: make options scripts executable
pabera Jan 23, 2024
08cfcb7
refactor: introduce optimized defaults, opinionated improvements
pabera Jan 23, 2024
4ed3a9c
refactor: make ssh_qos.sh an option
pabera Jan 23, 2024
c4a7530
fix: remove unnecessary variable
pabera Jan 23, 2024
02b4bf0
fix: remove bluetooth from installation questionaire
pabera Jan 24, 2024
d812fc1
refactor: move former raspi-config changes into optimized_defaults
pabera Jan 24, 2024
26c5143
Merge branch 'future3/develop' into future3/feature/installation
pabera Feb 8, 2024
b55ca41
Merge branch 'future3/develop' into future3/feature/installation
pabera Mar 1, 2024
de693f7
Align new install script with NetworkManager update
pabera Mar 1, 2024
989571d
Do not disable IPv6 automatically in installation. Still keep functio…
pabera Mar 1, 2024
db609d6
Get back some functions from previous commits
pabera Mar 1, 2024
5684365
Delete set_raspi_config file
pabera Mar 2, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Move code for IVP6 into separate function; allow both enable/disable …
…options
  • Loading branch information
pabera committed Jan 9, 2024
commit 3eb53d7b648e8bc7bb7030cfd09524ae16b3c9cd
16 changes: 1 addition & 15 deletions installation/routines/optimize_boot_time.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
OPTIMIZE_DHCP_CONF="/etc/dhcpcd.conf"
OPTIMIZE_BOOT_CMDLINE_OPTIONS="consoleblank=1 logo.nologo quiet loglevel=0 plymouth.enable=0 vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fastboot noatime nodiratime noram"
OPTIMIZE_DHCP_CONF_HEADER="## Jukebox DHCP Config"
OPTIMIZE_IPV6_CONF_HEADER="## Jukebox IPV6 Config"
OPTIMIZE_BOOT_CONF_HEADER="## Jukebox Boot Config"

_optimize_disable_irrelevant_services() {
Expand Down Expand Up @@ -62,22 +61,9 @@ EOF
fi
}

# TODO: Allow both Enable and Disable
_optimize_ipv6_arp() {
if [ "$DISABLE_IPv6" = true ] ; then
print_lc " Disabling IPV6"
if grep -q "${OPTIMIZE_IPV6_CONF_HEADER}" "$OPTIMIZE_DHCP_CONF"; then
log " Skipping. Already set up!"
else
sudo tee -a $OPTIMIZE_DHCP_CONF <<-EOF

${OPTIMIZE_IPV6_CONF_HEADER}
noarp
ipv4only
noipv6

EOF
fi
./options/ipv6.sh disable
fi
}

Expand Down
41 changes: 41 additions & 0 deletions installation/routines/options/ipv6.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#!/usr/bin/env bash
source ../../includes/02_helpers.sh

if [ -z "$1" ] || { [ "$1" != "enable" ] && [ "$1" != "disable" ]; }; then
print_lc "Error: Invalid or no argument provided.
Usage: ./ipv6.sh <arg>
where <arg> can be 'enable' or 'disable'"
exit 1
fi

arg="$1"

DHCP_CONF_PATH="/etc/dhcpcd.conf"
START_MARKER="## Jukebox IPV6 Config Start"
END_MARKER="## Jukebox IPV6 Config End"

if [ "$arg" = "enable" ]; then
print_lc "Enabling IPv6..."
sed -i "/$START_MARKER/,/$END_MARKER/d" "$DHCP_CONF_PATH"
elif [ "$arg" = "disable" ]; then
print_lc "Disabling IPv6..."
cp "$DHCP_CONF_PATH" "${DHCP_CONF_PATH}.bak"

# Only disable if it is enabled
if ! grep -q "${START_MARKER}" "$DHCP_CONF_PATH"; then
sudo tee -a $DHCP_CONF_PATH <<-EOF
${START_MARKER}
noarp
ipv4only
noipv6
${END_MARKER}
EOF
fi
fi

# Test
if [ "$arg" = "enable" ]; then
verify_file_does_not_contain_string "${START_MARKER}" "${DHCP_CONF_PATH}"
elif [ "$arg" = "disable" ]; then
verify_file_contains_string_once "${START_MARKER}" "${DHCP_CONF_PATH}"
fi