first push

This commit is contained in:
Erik Dubois 2021-01-26 13:21:38 +01:00
commit 8497676e20
77 changed files with 2355 additions and 0 deletions

15
README.md Normal file
View file

@ -0,0 +1,15 @@
# ArcoLinuxIso Carli-9
Start building your own carli version with
sudo ./build.sh -v
To be able to build you install this package
sudo pacman -S archiso
To do : next - change name Arch Linux to Carli
Do check out the archiso.readme.
Use the correct version of archiso.

3
airootfs/etc/hostname Normal file
View file

@ -0,0 +1,3 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
carli

4
airootfs/etc/locale.conf Normal file
View file

@ -0,0 +1,4 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
LANG=en_US.UTF-8

1
airootfs/etc/localtime Symbolic link
View file

@ -0,0 +1 @@
/usr/share/zoneinfo/UTC

View file

@ -0,0 +1,70 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
# vim:set ft=sh
# MODULES
# The following modules are loaded before any boot hooks are
# run. Advanced users may wish to specify all system modules
# in this array. For instance:
# MODULES=(piix ide_disk reiserfs)
MODULES=()
# BINARIES
# This setting includes any additional binaries a given user may
# wish into the CPIO image. This is run last, so it may be used to
# override the actual binaries included by a given hook
# BINARIES are dependency parsed, so you may safely ignore libraries
BINARIES=()
# FILES
# This setting is similar to BINARIES above, however, files are added
# as-is and are not parsed in any way. This is useful for config files.
FILES=()
# HOOKS
# This is the most important setting in this file. The HOOKS control the
# modules and scripts added to the image, and what happens at boot time.
# Order is important, and it is recommended that you do not change the
# order in which HOOKS are added. Run 'mkinitcpio -H <hook name>' for
# help on a given hook.
# 'base' is _required_ unless you know precisely what you are doing.
# 'udev' is _required_ in order to automatically load modules
# 'filesystems' is _required_ unless you specify your fs modules in MODULES
# Examples:
## This setup specifies all modules in the MODULES setting above.
## No raid, lvm2, or encrypted root is needed.
# HOOKS=(base)
#
## This setup will autodetect all modules for your system and should
## work as a sane default
# HOOKS=(base udev autodetect block filesystems)
#
## This setup will generate a 'full' image which supports most systems.
## No autodetection is done.
# HOOKS=(base udev block filesystems)
#
## This setup assembles a pata mdadm array with an encrypted root FS.
## Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
# HOOKS=(base udev block mdadm encrypt filesystems)
#
## This setup loads an lvm2 volume group on a usb device.
# HOOKS=(base udev block lvm2 filesystems)
#
## NOTE: If you have /usr on a separate partition, you MUST include the
# usr, fsck and shutdown hooks.
HOOKS=(base udev modconf memdisk archiso_shutdown archiso archiso_loop_mnt archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs archiso_kms block filesystems keyboard)
# COMPRESSION
# Use this to compress the initramfs image. By default, gzip compression
# is used. Use 'cat' to create an uncompressed image.
#COMPRESSION="gzip"
#COMPRESSION="bzip2"
#COMPRESSION="lzma"
COMPRESSION="xz"
#COMPRESSION="lzop"
#COMPRESSION="lz4"
#COMPRESSION="zstd"
# COMPRESSION_OPTIONS
# Additional options for the compressor
#COMPRESSION_OPTIONS=()

View file

@ -0,0 +1,14 @@
# mkinitcpio preset file for the 'linux' package on archiso
PRESETS=('default' 'fallback')
ALL_kver='/boot/vmlinuz-linux'
ALL_config='/etc/mkinitcpio.conf'
#default_config="/etc/mkinitcpio.conf"
default_image="/boot/initramfs-linux.img"
#default_options=""
#fallback_config="/etc/mkinitcpio.conf"
fallback_image="/boot/initramfs-linux-fallback.img"
fallback_options="-S autodetect"

View file

@ -0,0 +1,11 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
# mkinitcpio preset file for the 'linux' package on archiso
PRESETS=('archiso')
ALL_kver='/boot/vmlinuz-linux'
ALL_config='/etc/mkinitcpio.conf'
archiso_image="/boot/initramfs-linux.img"

View file

@ -0,0 +1,7 @@
# The broadcom-wl package requires some modules to be disabled in order to use
# wl. Since the ISO image needs to cover many hardware cases, this file
# overrides the default blacklist in /usr/lib/modprobe.d/
#
# If you need to use wl, you may need to delete this file, then `rmmod` any
# already-loaded modules that are now blacklisted before proceeding to modprobe
# wl itself.

9
airootfs/etc/motd Normal file
View file

@ -0,0 +1,9 @@
To install Arch Linux follow the installation guide:
https://wiki.archlinux.org/index.php/Installation_guide
For Wi-Fi, authenticate to the wireless network using the iwctl utility.
Ethernet and Wi-Fi connections using DHCP should work automatically.
After connecting to the internet, the installation guide can be accessed
via the convenience script Installation_guide.

106
airootfs/etc/pacman.conf Normal file
View file

@ -0,0 +1,106 @@
#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives
#
# SPDX-License-Identifier: GPL-3.0-or-later
#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir = /
#DBPath = /var/lib/pacman/
#CacheDir = /var/cache/pacman/pkg/
#LogFile = /var/log/pacman.log
#GPGDir = /etc/pacman.d/gnupg/
#HookDir = /etc/pacman.d/hooks/
HoldPkg = pacman glibc
#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled
Architecture = auto
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg =
#IgnoreGroup =
#NoUpgrade =
#NoExtract =
# Misc options
#UseSyslog
#Color
#TotalDownload
# We cannot check disk space from within a chroot environment
#CheckSpace
#VerbosePkgLists
# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
#RemoteFileSigLevel = Required
# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official Arch Linux
# packagers with `pacman-key --populate archlinux`.
#
# REPOSITORIES
# - can be defined here or included from another file
# - pacman will search repositories in the order defined here
# - local/custom mirrors can be added here or in separate files
# - repositories listed first will take precedence when packages
# have identical names, regardless of version number
# - URLs will have $repo replaced by the name of the current repo
# - URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
# [repo-name]
# Server = ServerName
# Include = IncludePath
#
# The header [repo-name] is crucial - it must be present and
# uncommented to enable the repo.
#
# The testing repositories are disabled by default. To enable, uncomment the
# repo name header and Include lines. You can add preferred servers immediately
# after the header, and they will be used before the default mirrors.
#[testing]
#Include = /etc/pacman.d/mirrorlist
[core]
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
#[community-testing]
#Include = /etc/pacman.d/mirrorlist
[community]
Include = /etc/pacman.d/mirrorlist
# If you want to run 32 bit applications on your x86_64 system,
# enable the multilib repositories as required here.
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist
#[multilib]
#Include = /etc/pacman.d/mirrorlist
# An example of a custom package repository. See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs
[carli_repo]
SigLevel = Required DatabaseOptional
Server = https://arcolinuxiso.github.io/$repo/$arch

1
airootfs/etc/passwd Normal file
View file

@ -0,0 +1 @@
root:x:0:0:root:/root:/usr/bin/zsh

1
airootfs/etc/resolv.conf Symbolic link
View file

@ -0,0 +1 @@
/run/systemd/resolve/stub-resolv.conf

View file

@ -0,0 +1,7 @@
[Autologin]
Relogin=false
User=liveuser
Session=plasma
[Theme]
Current=breeze

1
airootfs/etc/shadow Normal file
View file

@ -0,0 +1 @@
root::14871::::::

View file

@ -0,0 +1,116 @@
# $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $
# This is the sshd server system-wide configuration file. See
# sshd_config(5) for more information.
# This sshd was compiled with PATH=/usr/local/sbin:/usr/local/bin:/usr/bin
# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented. Uncommented options override the
# default value.
#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
#HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_ecdsa_key
#HostKey /etc/ssh/ssh_host_ed25519_key
# Ciphers and keying
#RekeyLimit default none
# Logging
#SyslogFacility AUTH
#LogLevel INFO
# Authentication:
#LoginGraceTime 2m
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10
#PubkeyAuthentication yes
# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
# but this is overridden so installations will only check .ssh/authorized_keys
AuthorizedKeysFile .ssh/authorized_keys
#AuthorizedPrincipalsFile none
#AuthorizedKeysCommand none
#AuthorizedKeysCommandUser nobody
# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes
# To disable tunneled clear text passwords, change to no here!
#PasswordAuthentication yes
#PermitEmptyPasswords no
# Change to no to disable s/key passwords
ChallengeResponseAuthentication no
# Kerberos options
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosGetAFSToken no
# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes
# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication. Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
UsePAM yes
#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
#X11Forwarding no
#X11DisplayOffset 10
#X11UseLocalhost yes
#PermitTTY yes
PrintMotd no # pam does that
#PrintLastLog yes
#TCPKeepAlive yes
#PermitUserEnvironment no
#Compression delayed
#ClientAliveInterval 0
#ClientAliveCountMax 3
#UseDNS no
#PidFile /run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none
# no default banner path
#Banner none
# override default of no subsystems
Subsystem sftp /usr/lib/ssh/sftp-server
# Example of overriding settings on a per-user basis
#Match User anoncvs
# X11Forwarding no
# AllowTcpForwarding no
# PermitTTY no
# ForceCommand cvs server

View file

@ -0,0 +1 @@
%wheel ALL=(ALL) NOPASSWD: ALL

View file

@ -0,0 +1,5 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
[Journal]
Storage=volatile

View file

@ -0,0 +1,7 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
[Login]
HandleSuspendKey=ignore
HandleHibernateKey=ignore
HandleLidSwitch=ignore

View file

@ -0,0 +1,13 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
[Match]
Name=en*
Name=eth*
[Network]
DHCP=yes
IPv6PrivacyExtensions=yes
[DHCP]
RouteMetric=512

View file

@ -0,0 +1,13 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
[Match]
Name=wlp*
Name=wlan*
[Network]
DHCP=yes
IPv6PrivacyExtensions=yes
[DHCP]
RouteMetric=1024

View file

@ -0,0 +1,13 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
[Unit]
Description=Choose mirror from the kernel command line
ConditionKernelCommandLine=mirror
[Service]
Type=oneshot
ExecStart=/usr/local/bin/choose-mirror
[Install]
WantedBy=multi-user.target

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-networkd.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-resolved.service

View file

@ -0,0 +1,11 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
[Unit]
Description=Temporary /etc/pacman.d/gnupg directory
[Mount]
What=tmpfs
Where=/etc/pacman.d/gnupg
Type=tmpfs
Options=mode=0755

View file

@ -0,0 +1,6 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin root --noclear %I 38400 linux

View file

@ -0,0 +1,16 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
[Unit]
Description=Unmute All Sound Card Controls For Use With The Live Arch Environment
# This needs to run after the audio device becomes available.
Wants=systemd-udev-settle.service
After=systemd-udev-settle.service sound.target
ConditionKernelCommandLine=accessibility=on
[Service]
Type=oneshot
ExecStart=/usr/local/bin/livecd-sound -u
[Install]
WantedBy=sound.target

View file

@ -0,0 +1,23 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
[Unit]
Description=Screen reader service
After=livecd-alsa-unmuter.service
Before=getty@tty1.service
ConditionKernelCommandLine=accessibility=on
[Service]
Type=oneshot
TTYPath=/dev/tty13
ExecStartPre=/usr/bin/chvt 13
ExecStart=/usr/local/bin/livecd-sound -p
ExecStartPost=/usr/bin/chvt 1
ExecStartPost=systemctl start espeakup.service
StandardInput=tty
TTYVHangup=yes
TTYVTDisallocate=yes
RemainAfterExit=true
[Install]
WantedBy=multi-user.target

View file

@ -0,0 +1 @@
../choose-mirror.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/iwd.service

View file

@ -0,0 +1 @@
/etc/systemd/system/livecd-talk.service

View file

@ -0,0 +1 @@
../pacman-init.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/reflector.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-networkd.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-resolved.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-networkd-wait-online.service

View file

@ -0,0 +1,19 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
[Unit]
Description=Initializes Pacman keyring
Wants=haveged.service
After=haveged.service
Requires=etc-pacman.d-gnupg.mount
After=etc-pacman.d-gnupg.mount
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/pacman-key --init
ExecStart=/usr/bin/pacman-key --populate archlinux carli
ExecStart=/usr/bin/pacman-key --lsign-key 4030B8368D944C9C
[Install]
WantedBy=multi-user.target

View file

@ -0,0 +1,6 @@
[Unit]
ConditionKernelCommandLine=!mirror
[Service]
Restart=on-failure
RestartSec=10

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-networkd.socket

View file

@ -0,0 +1 @@
../livecd-alsa-unmuter.service

View file

@ -0,0 +1,6 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
[Service]
ExecStart=
ExecStart=/usr/lib/systemd/systemd-networkd-wait-online --any

View file

@ -0,0 +1,6 @@
# Reflector configuration file for the systemd service.
--save /etc/pacman.d/mirrorlist
--protocol https
--latest 70
--sort rate

View file

@ -0,0 +1,34 @@
#!/usr/bin/env bash
script_cmdline ()
{
local param
for param in $(< /proc/cmdline); do
case "${param}" in
script=*) echo "${param#*=}" ; return 0 ;;
esac
done
}
automated_script ()
{
local script rt
script="$(script_cmdline)"
if [[ -n "${script}" && ! -x /tmp/startup_script ]]; then
if [[ "${script}" =~ ^((http|https|ftp)://) ]]; then
curl "${script}" --retry-connrefused -s -o /tmp/startup_script >/dev/null
rt=$?
else
cp "${script}" /tmp/startup_script
rt=$?
fi
if [[ ${rt} -eq 0 ]]; then
chmod +x /tmp/startup_script
/tmp/startup_script
fi
fi
}
if [[ $(tty) == "/dev/tty1" ]]; then
automated_script
fi

6
airootfs/root/.zlogin Normal file
View file

@ -0,0 +1,6 @@
# fix for screen readers
if grep -Fq 'accessibility=' /proc/cmdline &> /dev/null; then
setopt SINGLE_LINE_ZLE
fi
~/.automated_script.sh

View file

@ -0,0 +1,43 @@
#!/usr/bin/env bash
#
# SPDX-License-Identifier: GPL-3.0-or-later
set -e -u
# Warning: customize_airootfs.sh is deprecated! Support for it will be removed in a future archiso version.
sed -i 's/#\(en_US\.UTF-8\)/\1/' /etc/locale.gen
locale-gen
ln -sf /usr/share/zoneinfo/UTC /etc/localtime
usermod -s /usr/bin/zsh root
cp -aT /etc/skel/ /root/
chmod 700 /root
# unset the root password
passwd -d root
sed -i 's/#\(PermitRootLogin \).\+/\1yes/' /etc/ssh/sshd_config
sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist
sed -i 's/#\(Storage=\)auto/\1volatile/' /etc/systemd/journald.conf
sed -i 's/#\(HandleSuspendKey=\)suspend/\1ignore/' /etc/systemd/logind.conf
sed -i 's/#\(HandleHibernateKey=\)hibernate/\1ignore/' /etc/systemd/logind.conf
sed -i 's/#\(HandleLidSwitch=\)suspend/\1ignore/' /etc/systemd/logind.conf
systemctl enable pacman-init.service choose-mirror.service systemd-networkd.service systemd-resolved.service
systemctl set-default graphical.target
systemctl enable sddm.service
pacman-key --init
pacman-key --populate archlinux carli
pacman-key --lsign-key 7B01FA17CA801345
groupscarli="adm,audio,disk,floppy,log,network,optical,rfkill,storage,video,wheel,sys"
useradd -m -g users -G $groupscarli -s /bin/bash liveuser
passwd -d liveuser
#set permissions
chmod 750 /etc/sudoers.d
chmod 750 /etc/polkit-1/rules.d
chgrp polkitd /etc/polkit-1/rules.d

View file

@ -0,0 +1,5 @@
#!/bin/sh
#
# SPDX-License-Identifier: GPL-3.0-or-later
exec lynx 'https://wiki.archlinux.org/index.php/Installation_guide'

View file

@ -0,0 +1,28 @@
#!/bin/bash
#
# SPDX-License-Identifier: GPL-3.0-or-later
get_cmdline() {
local param
for param in $(< /proc/cmdline); do
case "${param}" in
$1=*) echo "${param##*=}";
return 0
;;
esac
done
}
mirror=$(get_cmdline mirror)
[[ $mirror = auto ]] && mirror=$(get_cmdline archiso_http_srv)
[[ $mirror ]] || exit 0
mv /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.orig
cat >/etc/pacman.d/mirrorlist << EOF
#
# Arch Linux repository mirrorlist
# Generated by archiso
#
Server = ${mirror%%/}/\$repo/os/\$arch
EOF

View file

@ -0,0 +1,248 @@
#!/usr/bin/env bash
#
# SPDX-License-Identifier: GPL-3.0-or-later
usage() {
cat <<- _EOF_
live cd sound helper script.
Usage: livecdsound [OPTION]
OPTIONS
-u, --unmute unmute all sound cards
-p, --pick select a card for speetch output
-h, --help Show this usage message
_EOF_
}
bugout () {
printf "/usr/local/bin/livecdsound: programming error"
stat_fail
}
echo_card_indices()
{
if [ -f /proc/asound/cards ] ; then
sed -n -e's/^[[:space:]]*\([0-7]\)[[:space:]].*/\1/p' /proc/asound/cards
fi
}
# The following functions try to set many controls.
# No card has all the controls and so some of the attempts are bound to fail.
# Because of this, the functions can't return useful status values.
# $1 <card id>
# $2 <control>
# $3 <level>
unmute_and_set_level(){
{ [ "$3" ] &&[ "$2" ] && [ "$1" ] ; } || bugout
systemd-cat -t "livecdsound" printf "Setting: %s on card: %s to %s\n" "$2" "$1" "$3"
systemd-cat -t "livecdsound" amixer -c "$1" set "$2" "$3" unmute
return 0
}
# $1 <card id>
# $2 <control>
mute_and_zero_level()
{
{ [ "$1" ] && [ "$2" ] ; } || bugout
systemd-cat -t "livecdsound" printf "Muting control: %s on card: %s\n" "$2" "$1"
systemd-cat -t "livecdsound" amixer -c "$1" set "$2" "0%" mute
return 0
}
# $1 <card ID>
# $2 <control>
# $3 "on" | "off"
switch_control()
{
{ [ "$3" ] && [ "$1" ] ; } || bugout
systemd-cat -t "livecdsound" printf "Switching control: %s on card: %s to %s\n" "$2" "$1" "$3"
systemd-cat -t "livecdsound" amixer -c "$1" set "$2" "$3"
return 0
}
# $1 <card ID>
sanify_levels_on_card()
{
unmute_and_set_level "$1" "Front" "80%"
unmute_and_set_level "$1" "Master" "80%"
unmute_and_set_level "$1" "Master Mono" "80%"
unmute_and_set_level "$1" "Master Digital" "80%" # E.g., cs4237B
unmute_and_set_level "$1" "Playback" "80%"
unmute_and_set_level "$1" "Headphone" "100%"
unmute_and_set_level "$1" "PCM" "80%"
unmute_and_set_level "$1" "PCM,1" "80%" # E.g., ess1969
unmute_and_set_level "$1" "DAC" "80%" # E.g., envy24, cs46xx
unmute_and_set_level "$1" "DAC,0" "80%" # E.g., envy24
unmute_and_set_level "$1" "DAC,1" "80%" # E.g., envy24
unmute_and_set_level "$1" "Synth" "80%"
unmute_and_set_level "$1" "CD" "80%"
unmute_and_set_level "$1" "PC Speaker" "100%"
mute_and_zero_level "$1" "Mic"
mute_and_zero_level "$1" "IEC958" # Ubuntu #19648
# Intel P4P800-MX
switch_control "$1" "Master Playback Switch" on
switch_control "$1" "Master Surround" on
# Trident/YMFPCI/emu10k1:
unmute_and_set_level "$1" "Wave" "80%"
unmute_and_set_level "$1" "Music" "80%"
unmute_and_set_level "$1" "AC97" "80%"
# DRC:
unmute_and_set_level "$1" "Dynamic Range Compression" "80%"
# Required for HDA Intel (hda-intel):
unmute_and_set_level "$1" "Front" "80%"
# Required for SB Live 7.1/24-bit (ca0106):
unmute_and_set_level "$1" "Analog Front" "80%"
# Required at least for Via 823x hardware on DFI K8M800-MLVF Motherboard
switch_control "$1" "IEC958 Capture Monitor" off
# Required for hardware allowing toggles for AC97 through IEC958,
# valid values are 0, 1, 2, 3. Needs to be set to 0 for PCM1.
unmute_and_set_level "$1" "IEC958 Playback AC97-SPSA" "0"
# Required for newer Via hardware
unmute_and_set_level "$1" "VIA DXS,0" "80%"
unmute_and_set_level "$1" "VIA DXS,1" "80%"
unmute_and_set_level "$1" "VIA DXS,2" "80%"
unmute_and_set_level "$1" "VIA DXS,3" "80%"
# Required on some notebooks with ICH4:
switch_control "$1" "Headphone Jack Sense" off
switch_control "$1" "Line Jack Sense" off
# Some machines need one or more of these to be on;
# others need one or more of these to be off:
switch_control "$1" "Audigy Analog/Digital Output Jack" on
switch_control "$1" "SB Live Analog/Digital Output Jack" on
# D1984 -- Thinkpad T61/X61
switch_control "$1" "Speaker" on
switch_control "$1" "Headphone" on
# HDA-Intel w/ "Digital" capture mixer (See Ubuntu #193823)
unmute_and_set_level "$1" "Digital" "80%"
return 0
}
# $1 <card ID> | "all"
sanify_levels()
{
local ttsdml_returnstatus=0
local card
case "$1" in
all)
for card in $(echo_card_indices) ; do
sanify_levels_on_card "$card" || ttsdml_returnstatus=1
done
;;
*)
sanify_levels_on_card "$1" || ttsdml_returnstatus=1
;;
esac
return $ttsdml_returnstatus
}
# List all cards that *should* be usable for PCM audio. In my experience,
# the console speaker (handled by the pcsp driver) isn't a suitable playback
# device, so we'll exclude it.
list_non_pcsp_cards()
{
for card in $(echo_card_indices); do
local cardfile="/proc/asound/card${card}/id"
if [ -r "$cardfile" ] && [ -f "$cardfile" ] && \
[ "$(cat "$cardfile")" != pcsp ]; then
echo "$card"
fi
done
}
# Properly initialize the sound card so that we have audio at boot.
unmute_all_cards()
{
sanify_levels all
}
is_numeric() {
local str=$1
[[ "$str" =~ ^[0-9]+$ ]]
}
set_default_card() {
local card=$1
sed -e "s/%card%/$card/g" < /usr/local/share/livecd-sound/asound.conf.in \
> /etc/asound.conf
}
play_on_card() {
local card=$1 file=$2
aplay -q "-Dplughw:$card,0" "$file"
}
# If there are multiple usable sound cards, prompt the user to choose one,
# using auditory feedback.
pick_a_card()
{
set -f
usable_cards="$(list_non_pcsp_cards)"
num_usable_cards="$(wc -w <<< "$usable_cards")"
if [ "$num_usable_cards" -eq 1 ]; then
systemd-cat -t "livecdsound" printf "Only one sound card is detected\n"
exit 0
fi
systemd-cat -t "livecdsound" printf "multiple sound cards detected\n"
for card in $usable_cards; do
if ! is_numeric "$card"; then
continue
fi
play_on_card "$card" /usr/share/livecd-sounds/pick-a-card.wav&
done
wait
sleep 1
for card in $usable_cards; do
if ! is_numeric "$card"; then
continue
fi
play_on_card "$card" /usr/share/livecd-sounds/beep.wav
if read -r -t 10; then
systemd-cat -t "livecdsound" printf "Selecting %s sound card as default\n" "$card"
set_default_card "$card"
break
fi
done
}
if [[ $# -eq 0 ]]; then
echo "error: No argument passed."
exit 1
fi
while [[ "${1}" != "" ]]; do
case ${1} in
-h|--help)
usage
exit
;;
-u|--unmute)
systemd-cat -t "livecdsound" printf "Unmuting all cards"
unmute_all_cards
;;
-p|--pick)
pick_a_card
;;
*)
echo "error: Unsupported argument"
usage
exit 1
;;
esac
shift
done

View file

@ -0,0 +1,3 @@
Defaults node
defaults.ctl.card %card%;
defaults.pcm.card %card%;

28
archiso.readme Normal file
View file

@ -0,0 +1,28 @@
You can build these isos if you have the right version of Archiso.
Archiso is a package supplied by Arch Linux that is recently undergoing some major changes.
You can follow up the versions via this link.
https://www.archlinux.org/packages/extra/any/archiso/
We are now using this version
archiso-version=50-1.1
sudo pacman -Q archiso and you will know your version
Downgrade to this version via a command in the terminal if you have a higher version.
downgrade archiso
and choose the right version.
Add it to the ignore list of pacman.
If you have a lower version then update your system. Check to see if archiso is not added to
your /etc/pacman.conf in the list of ignores. Delete it if it is in there. Then update.

7
build.sh Executable file
View file

@ -0,0 +1,7 @@
#!/usr/bin/env bash
#
# SPDX-License-Identifier: GPL-3.0-or-later
#printf '\n[%s] WARNING: %s\n\n' "mkarchiso" "build.sh scripts are deprecated! Please use mkarchiso directly." >&2
_buildsh_path="$(realpath -- "$0")"
exec mkarchiso "$@" "${_buildsh_path%/*}"

23
cleanup-v1.sh Executable file
View file

@ -0,0 +1,23 @@
#!/bin/bash
#set -e
##################################################################################################################
# Author : Erik Dubois
# Website : https://www.erikdubois.be
# Website : https://www.arcolinux.info
# Website : https://www.arcolinux.com
# Website : https://www.arcolinuxd.com
# Website : https://www.arcolinuxforum.com
##################################################################################################################
#
# DO NOT JUST RUN THIS. EXAMINE AND JUDGE. RUN AT YOUR OWN RISK.
#
##################################################################################################################
# change into your name and email.
sudo rm -r out/
sudo rm -r work/
echo "################################################################"
echo "################### T H E E N D ######################"
echo "################################################################"

View file

@ -0,0 +1,9 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
title Carli Linux install medium (x86_64, UEFI)
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
initrd /%INSTALL_DIR%/boot/intel-ucode.img
initrd /%INSTALL_DIR%/boot/amd-ucode.img
initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
options archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%

View file

@ -0,0 +1,9 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
title Arch Linux install medium (x86_64, UEFI) with speech
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
initrd /%INSTALL_DIR%/boot/intel-ucode.img
initrd /%INSTALL_DIR%/boot/amd-ucode.img
initrd /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
options archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% accessibility=on

View file

@ -0,0 +1,5 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
timeout 15
default archiso-x86_64-linux.conf

45
git-v2.sh Executable file
View file

@ -0,0 +1,45 @@
#!/bin/bash
#set -e
##################################################################################################################
# Author : Erik Dubois
# Website : https://www.erikdubois.be
# Website : https://www.arcolinux.info
# Website : https://www.arcolinux.com
# Website : https://www.arcolinuxd.com
# Website : https://www.arcolinuxforum.com
##################################################################################################################
#
# DO NOT JUST RUN THIS. EXAMINE AND JUDGE. RUN AT YOUR OWN RISK.
#
##################################################################################################################
# change a commit comment
# git commit --amend -m "more info"
# git push --force origin
# checking if I have the latest files from github
echo "Checking for newer files online first"
git pull
# Below command will backup everything inside the project folder
git add --all .
# Give a comment to the commit if you want
echo "####################################"
echo "Write your commit comment!"
echo "####################################"
read input
# Committing to the local repository with a message containing the time details and commit text
git commit -m "$input"
# Push the local files to github
git push -u origin master
echo "################################################################"
echo "################### Git Push Done ######################"
echo "################################################################"

24
import-carli-key.sh Executable file
View file

@ -0,0 +1,24 @@
#!/bin/bash
#set -e
##################################################################################################################
# Author : Erik Dubois
# Website : https://www.erikdubois.be
# Website : https://www.arcolinux.info
# Website : https://www.arcolinux.com
# Website : https://www.arcolinuxd.com
# Website : https://www.arcolinuxforum.com
##################################################################################################################
#
# DO NOT JUST RUN THIS. EXAMINE AND JUDGE. RUN AT YOUR OWN RISK.
#
##################################################################################################################
echo "get the carli key in"
sudo pacman-key --recv-keys 7B01FA17CA801345 --keyserver hkp://ipv4.pool.sks-keyservers.net:11371
echo "Lsign the keys"
sudo pacman-key --lsign-key 7B01FA17CA801345
echo "################################################################"
echo "################### Done ######################"
echo "################################################################"

123
packages-cinnamon.x86_64 Normal file
View file

@ -0,0 +1,123 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
alsa-utils
amd-ucode
arch-install-scripts
b43-fwcutter
base
bind-tools
brltty
broadcom-wl
btrfs-progs
clonezilla
crda
darkhttpd
ddrescue
dhclient
dhcpcd
diffutils
dmraid
dnsmasq
dosfstools
edk2-shell
efibootmgr
espeakup
ethtool
exfatprogs
f2fs-tools
fatresize
fsarchiver
gnu-netcat
gpart
gpm
gptfdisk
grml-zsh-config
haveged
hdparm
intel-ucode
ipw2100-fw
ipw2200-fw
irssi
iwd
jfsutils
kitty-terminfo
lftp
linux
linux-atm
linux-firmware
livecd-sounds
lsscsi
lvm2
lynx
man-db
man-pages
mc
mdadm
memtest86+
mkinitcpio
mkinitcpio-archiso
mkinitcpio-nfs-utils
mtools
nano
nbd
ndisc6
nfs-utils
nilfs-utils
nmap
ntfs-3g
nvme-cli
openconnect
openssh
openvpn
partclone
parted
partimage
ppp
pptpclient
reflector
reiserfsprogs
rp-pppoe
rsync
rxvt-unicode-terminfo
sdparm
sg3_utils
smartmontools
squashfs-tools
sudo
syslinux
systemd-resolvconf
tcpdump
terminus-font
termite-terminfo
testdisk
tmux
udftools
usb_modeswitch
usbutils
vim
vpnc
wireless-regdb
wireless_tools
wpa_supplicant
wvdial
xfsprogs
xl2tpd
zsh
#Carli
sddm
cinnamon
nemo-fileroller
gnome-terminal
bash-completion
#Calamares
calamares
carli-calamares-config
grub
#Software
git
base-devel
yay-bin
neofetch

122
packages-deepin.x86_64 Normal file
View file

@ -0,0 +1,122 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
alsa-utils
amd-ucode
arch-install-scripts
b43-fwcutter
base
bind-tools
brltty
broadcom-wl
btrfs-progs
clonezilla
crda
darkhttpd
ddrescue
dhclient
dhcpcd
diffutils
dmraid
dnsmasq
dosfstools
edk2-shell
efibootmgr
espeakup
ethtool
exfatprogs
f2fs-tools
fatresize
fsarchiver
gnu-netcat
gpart
gpm
gptfdisk
grml-zsh-config
haveged
hdparm
intel-ucode
ipw2100-fw
ipw2200-fw
irssi
iwd
jfsutils
kitty-terminfo
lftp
linux
linux-atm
linux-firmware
livecd-sounds
lsscsi
lvm2
lynx
man-db
man-pages
mc
mdadm
memtest86+
mkinitcpio
mkinitcpio-archiso
mkinitcpio-nfs-utils
mtools
nano
nbd
ndisc6
nfs-utils
nilfs-utils
nmap
ntfs-3g
nvme-cli
openconnect
openssh
openvpn
partclone
parted
partimage
ppp
pptpclient
reflector
reiserfsprogs
rp-pppoe
rsync
rxvt-unicode-terminfo
sdparm
sg3_utils
smartmontools
squashfs-tools
sudo
syslinux
systemd-resolvconf
tcpdump
terminus-font
termite-terminfo
testdisk
tmux
udftools
usb_modeswitch
usbutils
vim
vpnc
wireless-regdb
wireless_tools
wpa_supplicant
wvdial
xfsprogs
xl2tpd
zsh
#Carli
sddm
deepin
deepin-extra
bash-completion
#Calamares
calamares
carli-calamares-config
grub
#Software
git
base-devel
yay-bin
neofetch

124
packages-gnome.x86_64 Normal file
View file

@ -0,0 +1,124 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
alsa-utils
amd-ucode
arch-install-scripts
b43-fwcutter
base
bind-tools
brltty
broadcom-wl
btrfs-progs
clonezilla
crda
darkhttpd
ddrescue
dhclient
dhcpcd
diffutils
dmraid
dnsmasq
dosfstools
edk2-shell
efibootmgr
espeakup
ethtool
exfatprogs
f2fs-tools
fatresize
fsarchiver
gnu-netcat
gpart
gpm
gptfdisk
grml-zsh-config
haveged
hdparm
intel-ucode
ipw2100-fw
ipw2200-fw
irssi
iwd
jfsutils
kitty-terminfo
lftp
linux
linux-atm
linux-firmware
livecd-sounds
lsscsi
lvm2
lynx
man-db
man-pages
mc
mdadm
memtest86+
mkinitcpio
mkinitcpio-archiso
mkinitcpio-nfs-utils
mtools
nano
nbd
ndisc6
nfs-utils
nilfs-utils
nmap
ntfs-3g
nvme-cli
openconnect
openssh
openvpn
partclone
parted
partimage
ppp
pptpclient
reflector
reiserfsprogs
rp-pppoe
rsync
rxvt-unicode-terminfo
sdparm
sg3_utils
smartmontools
squashfs-tools
sudo
syslinux
systemd-resolvconf
tcpdump
terminus-font
termite-terminfo
testdisk
tmux
udftools
usb_modeswitch
usbutils
vim
vpnc
wireless-regdb
wireless_tools
wpa_supplicant
wvdial
xfsprogs
xl2tpd
zsh
#Carli
sddm
gnome
dconf-editor
gnome-tweaks
guake
bash-completion
#Calamares
calamares
carli-calamares-config
grub
#Software
git
base-devel
yay-bin
neofetch

122
packages-mate.x86_64 Normal file
View file

@ -0,0 +1,122 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
alsa-utils
amd-ucode
arch-install-scripts
b43-fwcutter
base
bind-tools
brltty
broadcom-wl
btrfs-progs
clonezilla
crda
darkhttpd
ddrescue
dhclient
dhcpcd
diffutils
dmraid
dnsmasq
dosfstools
edk2-shell
efibootmgr
espeakup
ethtool
exfatprogs
f2fs-tools
fatresize
fsarchiver
gnu-netcat
gpart
gpm
gptfdisk
grml-zsh-config
haveged
hdparm
intel-ucode
ipw2100-fw
ipw2200-fw
irssi
iwd
jfsutils
kitty-terminfo
lftp
linux
linux-atm
linux-firmware
livecd-sounds
lsscsi
lvm2
lynx
man-db
man-pages
mc
mdadm
memtest86+
mkinitcpio
mkinitcpio-archiso
mkinitcpio-nfs-utils
mtools
nano
nbd
ndisc6
nfs-utils
nilfs-utils
nmap
ntfs-3g
nvme-cli
openconnect
openssh
openvpn
partclone
parted
partimage
ppp
pptpclient
reflector
reiserfsprogs
rp-pppoe
rsync
rxvt-unicode-terminfo
sdparm
sg3_utils
smartmontools
squashfs-tools
sudo
syslinux
systemd-resolvconf
tcpdump
terminus-font
termite-terminfo
testdisk
tmux
udftools
usb_modeswitch
usbutils
vim
vpnc
wireless-regdb
wireless_tools
wpa_supplicant
wvdial
xfsprogs
xl2tpd
zsh
#Carli
sddm
mate
mate-extra
bash-completion
#Calamares
calamares
carli-calamares-config
grub
#Software
git
base-devel
yay-bin
neofetch

131
packages-plasma.x86_64 Normal file
View file

@ -0,0 +1,131 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
alsa-utils
amd-ucode
arch-install-scripts
b43-fwcutter
base
bind-tools
brltty
broadcom-wl
btrfs-progs
clonezilla
crda
darkhttpd
ddrescue
dhclient
dhcpcd
diffutils
dmraid
dnsmasq
dosfstools
edk2-shell
efibootmgr
espeakup
ethtool
exfatprogs
f2fs-tools
fatresize
fsarchiver
gnu-netcat
gpart
gpm
gptfdisk
grml-zsh-config
haveged
hdparm
intel-ucode
ipw2100-fw
ipw2200-fw
irssi
iwd
jfsutils
kitty-terminfo
lftp
linux
linux-atm
linux-firmware
livecd-sounds
lsscsi
lvm2
lynx
man-db
man-pages
mc
mdadm
memtest86+
mkinitcpio
mkinitcpio-archiso
mkinitcpio-nfs-utils
mtools
nano
nbd
ndisc6
nfs-utils
nilfs-utils
nmap
ntfs-3g
nvme-cli
openconnect
openssh
openvpn
partclone
parted
partimage
ppp
pptpclient
reflector
reiserfsprogs
rp-pppoe
rsync
rxvt-unicode-terminfo
sdparm
sg3_utils
smartmontools
squashfs-tools
sudo
syslinux
systemd-resolvconf
tcpdump
terminus-font
termite-terminfo
testdisk
tmux
udftools
usb_modeswitch
usbutils
vim
vpnc
wireless-regdb
wireless_tools
wpa_supplicant
wvdial
xfsprogs
xl2tpd
zsh
#Carli
plasma-meta
#kde-applications-meta
packagekit-qt5
sddm
bash-completion
partitionmanager
#Calamares
calamares
carli-calamares-config
carli-system-installation
grub
#carli
carli-keyring
#Software
git
base-devel
yay-bin
neofetch
dolphin
konsole
kate

126
packages-xfce4.x86_64 Normal file
View file

@ -0,0 +1,126 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
alsa-utils
amd-ucode
arch-install-scripts
b43-fwcutter
base
bind-tools
brltty
broadcom-wl
btrfs-progs
clonezilla
crda
darkhttpd
ddrescue
dhclient
dhcpcd
diffutils
dmraid
dnsmasq
dosfstools
edk2-shell
efibootmgr
espeakup
ethtool
exfatprogs
f2fs-tools
fatresize
fsarchiver
gnu-netcat
gpart
gpm
gptfdisk
grml-zsh-config
haveged
hdparm
intel-ucode
ipw2100-fw
ipw2200-fw
irssi
iwd
jfsutils
kitty-terminfo
lftp
linux
linux-atm
linux-firmware
livecd-sounds
lsscsi
lvm2
lynx
man-db
man-pages
mc
mdadm
memtest86+
mkinitcpio
mkinitcpio-archiso
mkinitcpio-nfs-utils
mtools
nano
nbd
ndisc6
nfs-utils
nilfs-utils
nmap
ntfs-3g
nvme-cli
openconnect
openssh
openvpn
partclone
parted
partimage
ppp
pptpclient
reflector
reiserfsprogs
rp-pppoe
rsync
rxvt-unicode-terminfo
sdparm
sg3_utils
smartmontools
squashfs-tools
sudo
syslinux
systemd-resolvconf
tcpdump
terminus-font
termite-terminfo
testdisk
tmux
udftools
usb_modeswitch
usbutils
vim
vpnc
wireless-regdb
wireless_tools
wpa_supplicant
wvdial
xfsprogs
xl2tpd
zsh
#Carli
sddm
xfce4
xfce4-goodies
bash-completion
#Calamares
calamares
carli-calamares-config
carli-system-installation
grub
#carli
carli-keyring
#Software
git
base-devel
yay-bin
neofetch

132
packages.x86_64 Normal file
View file

@ -0,0 +1,132 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
alsa-utils
amd-ucode
arch-install-scripts
b43-fwcutter
base
bind-tools
brltty
broadcom-wl
btrfs-progs
clonezilla
crda
darkhttpd
ddrescue
dhclient
dhcpcd
diffutils
dmraid
dnsmasq
dosfstools
edk2-shell
efibootmgr
espeakup
ethtool
exfatprogs
f2fs-tools
fatresize
fsarchiver
gnu-netcat
gpart
gpm
gptfdisk
grml-zsh-config
haveged
hdparm
intel-ucode
ipw2100-fw
ipw2200-fw
irssi
iwd
jfsutils
kitty-terminfo
lftp
linux
linux-atm
linux-firmware
livecd-sounds
lsscsi
lvm2
lynx
man-db
man-pages
mc
mdadm
memtest86+
mkinitcpio
mkinitcpio-archiso
mkinitcpio-nfs-utils
mtools
nano
nbd
ndisc6
nfs-utils
nilfs-utils
nmap
ntfs-3g
nvme-cli
openconnect
openssh
openvpn
partclone
parted
partimage
ppp
pptpclient
reflector
reiserfsprogs
rp-pppoe
rsync
rxvt-unicode-terminfo
sdparm
sg3_utils
smartmontools
squashfs-tools
sudo
syslinux
systemd-resolvconf
tcpdump
terminus-font
termite-terminfo
testdisk
tmux
udftools
usb_modeswitch
usbutils
vim
vpnc
wireless-regdb
wireless_tools
wpa_supplicant
wvdial
xfsprogs
xl2tpd
zsh
#Carli
plasma-meta
#kde-applications-meta
packagekit-qt5
sddm
bash-completion
partitionmanager
#Calamares
calamares
carli-calamares-config
carli-system-installation
grub
os-prober
#carli
carli-keyring
#Software
git
base-devel
yay-bin
neofetch
dolphin
konsole
kate

106
pacman.conf Normal file
View file

@ -0,0 +1,106 @@
#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives
#
# SPDX-License-Identifier: GPL-3.0-or-later
#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir = /
#DBPath = /var/lib/pacman/
#CacheDir = /var/cache/pacman/pkg/
#LogFile = /var/log/pacman.log
#GPGDir = /etc/pacman.d/gnupg/
#HookDir = /etc/pacman.d/hooks/
HoldPkg = pacman glibc
#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled
Architecture = auto
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg =
#IgnoreGroup =
#NoUpgrade =
#NoExtract =
# Misc options
#UseSyslog
#Color
#TotalDownload
# We cannot check disk space from within a chroot environment
#CheckSpace
#VerbosePkgLists
# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
#RemoteFileSigLevel = Required
# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official Arch Linux
# packagers with `pacman-key --populate archlinux`.
#
# REPOSITORIES
# - can be defined here or included from another file
# - pacman will search repositories in the order defined here
# - local/custom mirrors can be added here or in separate files
# - repositories listed first will take precedence when packages
# have identical names, regardless of version number
# - URLs will have $repo replaced by the name of the current repo
# - URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
# [repo-name]
# Server = ServerName
# Include = IncludePath
#
# The header [repo-name] is crucial - it must be present and
# uncommented to enable the repo.
#
# The testing repositories are disabled by default. To enable, uncomment the
# repo name header and Include lines. You can add preferred servers immediately
# after the header, and they will be used before the default mirrors.
#[testing]
#Include = /etc/pacman.d/mirrorlist
[core]
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
#[community-testing]
#Include = /etc/pacman.d/mirrorlist
[community]
Include = /etc/pacman.d/mirrorlist
# If you want to run 32 bit applications on your x86_64 system,
# enable the multilib repositories as required here.
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist
#[multilib]
#Include = /etc/pacman.d/mirrorlist
# An example of a custom package repository. See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs
[carli_repo]
SigLevel = Required DatabaseOptional
Server = https://arcolinuxiso.github.io/$repo/$arch

22
profiledef.sh Normal file
View file

@ -0,0 +1,22 @@
#!/usr/bin/env bash
# shellcheck disable=SC2034
iso_name="carli"
iso_label="carli_$(date +%Y%m)"
iso_publisher="Carli Linux <https://www.arcolinuxiso.com>"
iso_application="Carli Linux Live/Rescue CD"
iso_version="$(date +%Y.%m.%d)"
install_dir="arch"
bootmodes=('bios.syslinux.mbr' 'bios.syslinux.eltorito' 'uefi-x64.systemd-boot.esp' 'uefi-x64.systemd-boot.eltorito')
arch="x86_64"
pacman_conf="pacman.conf"
#airootfs_image_tool_options=('-comp' 'xz' '-Xbcj' 'x86' '-b' '1M' '-Xdict-size' '1M')
airootfs_image_tool_options=('-comp' 'xz')
file_permissions=(
["/etc/shadow"]="0:0:400"
["/root"]="0:0:750"
["/root/.automated_script.sh"]="0:0:755"
["/usr/local/bin/choose-mirror"]="0:0:755"
["/usr/local/bin/Installation_guide"]="0:0:755"
["/usr/local/bin/livecd-sound"]="0:0:755"
)

147
setup-our-git-credentials.sh Executable file
View file

@ -0,0 +1,147 @@
#!/bin/bash
#
##################################################################################################################
# Written to be used on 64 bits computers
# Author : Erik Dubois
# Website : http://www.erikdubois.be
##################################################################################################################
##################################################################################################################
#
# DO NOT JUST RUN THIS. EXAMINE AND JUDGE. RUN AT YOUR OWN RISK.
#
##################################################################################################################
# Problem solving commands
# Read before using it.
# https://www.atlassian.com/git/tutorials/undoing-changes/git-reset
# git reset --hard orgin/master
# ONLY if you are very sure and no coworkers are on your github.
# Command that have helped in the past
# Force git to overwrite local files on pull - no merge
# git fetch all
# git push --set-upstream origin master
# git reset --hard orgin/master
#setting up git
#https://www.atlassian.com/git/tutorials/setting-up-a-repository/git-config
echo
tput setaf 1
echo "################################################################"
echo "##### Choose wisely - one time setup after clean install ####"
echo "################################################################"
tput sgr0
echo
echo "Select the correct desktop"
echo
echo "0. Do nothing"
echo "1. Erik"
echo "2. Marco"
echo "3. Raniel"
echo "4. John"
echo "5. Steve"
echo "6. Brad"
echo "7. fake1"
echo "8. fake2"
echo "9. fake3"
echo "10. fake4"
echo "Type the number..."
read CHOICE
case $CHOICE in
0 )
echo
echo "########################################"
echo "We did nothing as per your request"
echo "########################################"
echo
;;
1 )
git config --global pull.rebase false
git config --global push.default simple
git config --global user.name "Erik Dubois"
git config --global user.email "erik.dubois@gmail.com"
sudo git config --system core.editor nano
git config --global credential.helper cache
git config --global credential.helper 'cache --timeout=32000'
;;
2 )
git config --global pull.rebase false
git config --global push.default simple
git config --global user.name "Marco Obaid"
git config --global user.email "marco.obaid@gmail.com"
sudo git config --system core.editor nano
git config --global credential.helper cache
git config --global credential.helper 'cache --timeout=32000'
;;
3 )
git config --global pull.rebase false
git config --global push.default simple
git config --global user.name "Raniel Laguna"
git config --global user.email "avraniel@gmail.com"
sudo git config --system core.editor nano
git config --global credential.helper cache
git config --global credential.helper 'cache --timeout=32000'
;;
4 )
git config --global pull.rebase false
git config --global push.default simple
git config --global user.name "John Blevins"
git config --global user.email "samurailostinjapan@gmail.com"
sudo git config --system core.editor nano
git config --global credential.helper cache
git config --global credential.helper 'cache --timeout=32000'
;;
5 )
git config --global pull.rebase false
git config --global push.default simple
git config --global user.name "Steve Younger"
git config --global user.email "coritanie@gmail.com"
sudo git config --system core.editor nano
git config --global credential.helper cache
git config --global credential.helper 'cache --timeout=32000'
;;
6 )
git config --global pull.rebase false
git config --global push.default simple
git config --global user.name "Brad Heffernan"
git config --global user.email "ph3onix83@gmail.com"
sudo git config --system core.editor nano
git config --global credential.helper cache
git config --global credential.helper 'cache --timeout=32000'
;;
7 )
echo
;;
8 )
echo
;;
9 )
echo
;;
10 )
echo
;;
* )
echo "#################################"
echo "Choose the correct number"
echo "#################################"
;;
esac
echo "###########################################################"
echo "Github credentials have been set"
echo "Delete the ~/.cache/git folder if you made a mistake or"
echo "if you want to switch to your personal github"
echo "###########################################################"
echo "################################################################"
echo "################### T H E E N D ######################"
echo "################################################################"

31
syslinux/archiso_head.cfg Normal file
View file

@ -0,0 +1,31 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
SERIAL 0 38400
UI vesamenu.c32
MENU TITLE Carli Linux
MENU BACKGROUND splash.png
MENU WIDTH 78
MENU MARGIN 4
MENU ROWS 7
MENU VSHIFT 10
MENU TABMSGROW 14
MENU CMDLINEROW 14
MENU HELPMSGROW 16
MENU HELPMSGENDROW 29
# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu
MENU COLOR border 30;44 #40ffffff #a0000000 std
MENU COLOR title 1;36;44 #9033ccff #a0000000 std
MENU COLOR sel 7;37;40 #e0ffffff #20ffffff all
MENU COLOR unsel 37;44 #50ffffff #a0000000 std
MENU COLOR help 37;40 #c0ffffff #a0000000 std
MENU COLOR timeout_msg 37;40 #80ffffff #00000000 std
MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std
MENU COLOR msg07 37;40 #90ffffff #a0000000 std
MENU COLOR tabmsg 31;40 #30ffffff #00000000 std
MENU CLEAR
MENU IMMEDIATE

View file

@ -0,0 +1,35 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
LABEL arch64_nbd
TEXT HELP
Boot the Carli Linux install medium using NBD.
It allows you to install Carli Linux or perform system maintenance.
ENDTEXT
MENU LABEL Carli Linux install medium (x86_64, NBD)
LINUX /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
INITRD /%INSTALL_DIR%/boot/intel-ucode.img,/%INSTALL_DIR%/boot/amd-ucode.img,/%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% archiso_nbd_srv=${pxeserver} checksum verify
SYSAPPEND 3
LABEL arch64_nfs
TEXT HELP
Boot the Carli Linux live medium using NFS.
It allows you to install Carli Linux or perform system maintenance.
ENDTEXT
MENU LABEL Carli Linux install medium (x86_64, NFS)
LINUX /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
INITRD /%INSTALL_DIR%/boot/intel-ucode.img,/%INSTALL_DIR%/boot/amd-ucode.img,/%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
APPEND archisobasedir=%INSTALL_DIR% archiso_nfs_srv=${pxeserver}:/run/archiso/bootmnt checksum verify
SYSAPPEND 3
LABEL arch64_http
TEXT HELP
Boot the Carli Linux live medium using HTTP.
It allows you to install Carli Linux or perform system maintenance.
ENDTEXT
MENU LABEL Carli Linux install medium (x86_64, HTTP)
LINUX /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
INITRD /%INSTALL_DIR%/boot/intel-ucode.img,/%INSTALL_DIR%/boot/amd-ucode.img,/%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
APPEND archisobasedir=%INSTALL_DIR% archiso_http_srv=http://${pxeserver}/ checksum verify
SYSAPPEND 3

8
syslinux/archiso_pxe.cfg Normal file
View file

@ -0,0 +1,8 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
INCLUDE archiso_head.cfg
INCLUDE archiso_pxe-linux.cfg
INCLUDE archiso_tail.cfg

View file

@ -0,0 +1,23 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
LABEL arch64
TEXT HELP
Boot the Carli Linux install medium on BIOS.
It allows you to install Carli Linux or perform system maintenance.
ENDTEXT
MENU LABEL Carli Linux install medium (x86_64, BIOS)
LINUX /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
INITRD /%INSTALL_DIR%/boot/intel-ucode.img,/%INSTALL_DIR%/boot/amd-ucode.img,/%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%
# Accessibility boot option
LABEL arch64speech
TEXT HELP
Boot the Carli Linux install medium on BIOS with speakup screen reader.
It allows you to install Carli Linux or perform system maintenance with speech feedback.
ENDTEXT
MENU LABEL Carli Linux install medium (x86_64, BIOS) with ^speech
LINUX /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux
INITRD /%INSTALL_DIR%/boot/intel-ucode.img,/%INSTALL_DIR%/boot/amd-ucode.img,/%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% accessibility=on

11
syslinux/archiso_sys.cfg Normal file
View file

@ -0,0 +1,11 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
INCLUDE archiso_head.cfg
DEFAULT arch64
TIMEOUT 150
INCLUDE archiso_sys-linux.cfg
INCLUDE archiso_tail.cfg

38
syslinux/archiso_tail.cfg Normal file
View file

@ -0,0 +1,38 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
LABEL existing
TEXT HELP
Boot an existing operating system.
Press TAB to edit the disk and partition number to boot.
ENDTEXT
MENU LABEL Boot existing OS
COM32 chain.c32
APPEND hd0 0
# http://www.memtest.org/
LABEL memtest
MENU LABEL Run Memtest86+ (RAM test)
LINUX /%INSTALL_DIR%/boot/memtest
# http://hdt-project.org/
LABEL hdt
MENU LABEL Hardware Information (HDT)
COM32 hdt.c32
APPEND modules_alias=hdt/modalias.gz pciids=hdt/pciids.gz
LABEL reboot
TEXT HELP
Reboot computer.
The computer's firmware must support APM.
ENDTEXT
MENU LABEL Reboot
COM32 reboot.c32
LABEL poweroff
TEXT HELP
Power off computer.
The computer's firmware must support APM.
ENDTEXT
MENU LABEL Power Off
COM32 poweroff.c32

BIN
syslinux/splash-old.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

BIN
syslinux/splash-or.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

BIN
syslinux/splash.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

BIN
syslinux/splash.xcf Normal file

Binary file not shown.

14
syslinux/syslinux.cfg Normal file
View file

@ -0,0 +1,14 @@
#
# SPDX-License-Identifier: GPL-3.0-or-later
DEFAULT select
LABEL select
COM32 whichsys.c32
APPEND -pxe- pxe -sys- sys -iso- sys
LABEL pxe
CONFIG archiso_pxe.cfg
LABEL sys
CONFIG archiso_sys.cfg