updated base

This commit is contained in:
2023-04-28 21:50:37 +05:30
parent 23a5e434f8
commit eef1cc7f56
102 changed files with 1262 additions and 814 deletions

21
LICENSE
View File

@ -1,21 +0,0 @@
MIT License
Copyright (c) 2017 Appletneo
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -1,3 +0,0 @@
# tuxOS
64-bit source code for the tuxOS

View File

@ -1,105 +0,0 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>monospace</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Droid Sans Mono</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Droid Sans Mono Slashed</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Droid Sans Mono Dotted</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>DejaVu Sans Mono</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>DejaVu Sans Mono</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Envy Code R</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Inconsolata</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Lucida Console</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Monaco</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Pragmata</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>PragmataPro</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Menlo</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Source Code Pro</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Consolas</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Anonymous pro</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Bitstream Vera Sans Mono</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Liberation Mono</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Ubuntu Mono</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Meslo LG L</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Meslo LG L DZ</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Meslo LG M</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Meslo LG M DZ</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Meslo LG S</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
<alias>
<family>Meslo LG S DZ</family>
<prefer><family>PowerlineSymbols</family></prefer>
</alias>
</fontconfig>

View File

18
airootfs/etc/group Normal file
View File

@ -0,0 +1,18 @@
root:x:0:root
sys:x:3:bin,liveuser
network:x:90:liveuser
power:x:98:liveuser
adm:x:999:liveuser
lp:x:992:liveuser
wheel:x:998:liveuser
uucp:x:987:liveuser
optical:x:990:liveuser
scanner:x:991:liveuser
rfkill:x:983:liveuser
video:x:986:liveuser
storage:x:988:liveuser
audio:x:995:liveuser
users:x:985:liveuser
nopasswdlogin:x:966:liveuser
autologin:x:967:liveuser
liveuser:x:1000:

18
airootfs/etc/gshadow Normal file
View File

@ -0,0 +1,18 @@
root:::root
sys:!!::liveuser
network:!!::liveuser
power:!!::liveuser
adm:!!::liveuser
lp:!!::liveuser
wheel:!!::liveuser
uucp:!!::liveuser
optical:!!::liveuser
scanner:!!::liveuser
rfkill:!!::liveuser
video:!!::liveuser
storage:!!::liveuser
audio:!!::liveuser
users:!!::liveuser
nopasswdlogin:!::liveuser
autologin:!::liveuser
liveuser:!::

View File

@ -1 +1 @@
tuxOS archiso

View File

@ -1 +1 @@
LANG=en_US.UTF-8 LANG=C.UTF-8

1
airootfs/etc/localtime Symbolic link
View File

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

View File

@ -0,0 +1,67 @@
# 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 kms archiso archiso_loop_mnt 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,8 @@
# 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.

11
airootfs/etc/motd Normal file
View File

@ -0,0 +1,11 @@
To install Arch Linux follow the installation guide:
https://wiki.archlinux.org/title/Installation_guide
For Wi-Fi, authenticate to the wireless network using the iwctl utility.
For mobile broadband (WWAN) modems, connect with the mmcli utility.
Ethernet, WLAN and WWAN interfaces using DHCP should work automatically.
After connecting to the internet, the installation guide can be accessed
via the convenience script Installation_guide.
                                          

View File

@ -0,0 +1,13 @@
# remove from airootfs!
[Trigger]
Operation = Install
Operation = Upgrade
Type = Package
Target = pacman-mirrorlist
[Action]
Description = Uncommenting all mirrors in /etc/pacman.d/mirrorlist...
When = PostTransaction
Depends = pacman-mirrorlist
Depends = sed
Exec = /usr/bin/sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist

View File

@ -0,0 +1,18 @@
# remove from airootfs!
# As a workaround for https://bugs.archlinux.org/task/49347 , remove pacman hooks specific to the ISO build process.
# If not, they would be used when pacstrap is run in the live environment.
[Trigger]
Operation = Install
Operation = Upgrade
Operation = Remove
Type = Package
Target = *
[Action]
Description = Work around FS#49347 by removing custom pacman hooks that are only required during ISO build...
When = PostTransaction
Depends = sh
Depends = coreutils
Depends = grep
Exec = /bin/sh -c "rm -- $(grep -Frl 'remove from airootfs' /etc/pacman.d/hooks/)"

2
airootfs/etc/passwd Normal file
View File

@ -0,0 +1,2 @@
root:x:0:0:root:/root:/usr/bin/zsh
liveuser:x:1000:1000::/home/liveuser:/usr/bin/zsh

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

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

2
airootfs/etc/shadow Normal file
View File

@ -0,0 +1,2 @@
root::14871::::::
liveuser:$6$f9ezDgQ0TRc20Drh$V/xFYNZyiKRKJ2wKm17HJ0TZOEesT0Xa/GZ8oyJaXOlhMzEHp.MTC2nBIxSfKPZcyXLm6tnIhUoqr0kXSWUJV/:14871::::::

View File

@ -1,7 +0,0 @@
#
# ~/.bash_profile
#
[[ -f ~/.bashrc ]] && . ~/.bashrc
[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && exec startx

View File

@ -1,49 +0,0 @@
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
# environment variables
export EDITOR="$(if [[ -n $DISPLAY ]]; then echo 'leafpad'; else echo 'nano'; fi)" # leafpad, nano
PS1='\[\e[0;32m\]\u\[\e[m\] \[\e[1;34m\]\w\[\e[m\] \[\e[1;32m\]\$\[\e[m\] \[\e[1;37m\]'
# pacman aliases (if desired, adapt for your favourite AUR helper)
alias pac="sudo /usr/bin/pacman -S" # default action - install one or more packages
alias pacu="sudo /usr/bin/pacman -Syu" # '[u]pdate' - upgrade all packages to their newest version
alias pacr="sudo /usr/bin/pacman -Rns" # '[r]emove' - uninstall one or more packages
alias pacs="/usr/bin/pacman -Ss" # '[s]earch' - search for a package using one or more keywords
alias paci="/usr/bin/pacman -Si" # '[i]nfo' - show information about a package
alias paclo="/usr/bin/pacman -Qdt" # '[l]ist [o]rphans' - list all packages which are orphaned
alias pacc="sudo /usr/bin/pacman -Scc" # '[c]lean cache' - delete all not currently installed package files
alias paclf="/usr/bin/pacman -Ql" # '[l]ist [f]iles' - list all files installed by a given package
alias pacexpl="sudo /usr/bin/pacman -D --asexp" # 'mark as [expl]icit' - mark one or more packages as explicitly installed
alias pacimpl="sudo /usr/bin/pacman -D --asdep" # 'mark as [impl]icit' - mark one or more packages as non explicitly installed
# '[r]emove [o]rphans' - recursively remove ALL orphaned packages
alias pacro="/usr/bin/pacman -Qtdq > /dev/null && sudo /usr/bin/pacman -Rns \$(/usr/bin/pacman -Qtdq | sed -e ':a;N;$!ba;s/\n/ /g')"
# Custom
alias led='leafpad ~/.bashrc'
alias bsu='source ~/.bashrc'
alias psync='sudo pacman -Syy'
alias paco='sudo pacman -Sc && sudo pacman-optimize'
alias pcf='profile-cleaner f'
alias pcc='profile-cleaner c'
alias pcg='profile-cleaner gc'
alias yd='youtube-dl'
alias lcp='sudo localepurge'
alias lcc='sudo /usr/bin/localepurge-config'
alias speed='speedtest-cli'
alias q='exit'
alias md='sudo updatedb'
alias fig='sudo leafpad /etc/pacman.conf'
alias yrt='yaourt -S'
#powerline
powerline-daemon -q
POWERLINE_BASH_CONTINUATION=1
POWERLINE_BASH_SELECT=1
. /usr/lib/python3.6/site-packages/powerline/bindings/bash/powerline.sh

View File

@ -1,3 +0,0 @@
set rtp+=/usr/lib/python3.6/site-packages/powerline/bindings/vim/
set laststatus=2
set t_Co=256

View File

@ -1,15 +0,0 @@
#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)
if [ -d /etc/X11/xinit/xinitrc.d ]; then
for f in /etc/X11/xinit/xinitrc.d/*; do
[ -x "$f" ] && . "$f"
done
unset f
fi
exec i3

View File

@ -1,9 +0,0 @@
#!/bin/sh
#
# ~/.xsession
#
# Executed by xdm/gdm/kdm at login
#
/bin/bash --login -i ~/.xinitrc

View File

@ -0,0 +1,116 @@
# $OpenBSD: sshd_config,v 1.104 2021/07/02 05:11:21 dtucker 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
KbdInteractiveAuthentication 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 KbdInteractiveAuthentication and
# PasswordAuthentication. Depending on your PAM configuration,
# PAM authentication via KbdInteractiveAuthentication may bypass
# the setting of "PermitRootLogin prohibit-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and KbdInteractiveAuthentication to 'no'.
UsePAM yes
#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
#X11Forwarding no
#X11DisplayOffset 10
#X11UseLocalhost yes
#PermitTTY yes
PrintMotd no
#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,2 @@
[Journal]
Storage=volatile

View File

@ -0,0 +1,4 @@
[Login]
HandleSuspendKey=suspend
HandleHibernateKey=hibernate
HandleLidSwitch=suspend

View File

@ -0,0 +1,21 @@
[Match]
# Matching with "Type=ether" causes issues with containers because it also matches virtual Ethernet interfaces (veth*).
# See https://bugs.archlinux.org/task/70892
# Instead match by globbing the network interface name.
Name=en*
Name=eth*
[Network]
DHCP=yes
IPv6PrivacyExtensions=yes
# systemd-networkd does not set per-interface-type default route metrics
# https://github.com/systemd/systemd/issues/17698
# Explicitly set route metric, so that Ethernet is preferred over Wi-Fi and Wi-Fi is preferred over mobile broadband.
# Use values from NetworkManager. From nm_device_get_route_metric_default in
# https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/main/src/core/devices/nm-device.c
[DHCPv4]
RouteMetric=100
[IPv6AcceptRA]
RouteMetric=100

View File

@ -0,0 +1,17 @@
[Match]
Name=wl*
[Network]
DHCP=yes
IPv6PrivacyExtensions=yes
# systemd-networkd does not set per-interface-type default route metrics
# https://github.com/systemd/systemd/issues/17698
# Explicitly set route metric, so that Ethernet is preferred over Wi-Fi and Wi-Fi is preferred over mobile broadband.
# Use values from NetworkManager. From nm_device_get_route_metric_default in
# https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/main/src/core/devices/nm-device.c
[DHCPv4]
RouteMetric=600
[IPv6AcceptRA]
RouteMetric=600

View File

@ -0,0 +1,17 @@
[Match]
Name=ww*
[Network]
DHCP=yes
IPv6PrivacyExtensions=yes
# systemd-networkd does not set per-interface-type default route metrics
# https://github.com/systemd/systemd/issues/17698
# Explicitly set route metric, so that Ethernet is preferred over Wi-Fi and Wi-Fi is preferred over mobile broadband.
# Use values from NetworkManager. From nm_device_get_route_metric_default in
# https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/main/src/core/devices/nm-device.c
[DHCPv4]
RouteMetric=700
[IPv6AcceptRA]
RouteMetric=700

View File

@ -0,0 +1 @@
/dev/null

View File

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

View File

@ -0,0 +1,10 @@
[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/cloud-config.service

View File

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

View File

@ -0,0 +1 @@
/usr/lib/systemd/system/cloud-init-local.service

View File

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

View File

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

View File

@ -0,0 +1 @@
/usr/lib/systemd/system/ModemManager.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-timesyncd.service

View File

@ -0,0 +1 @@
/usr/lib/systemd/system/graphical.target

View File

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

View File

@ -0,0 +1,8 @@
[Unit]
Description=Temporary /etc/pacman.d/gnupg directory
[Mount]
What=ramfs
Where=/etc/pacman.d/gnupg
Type=ramfs
Options=mode=0755

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -0,0 +1 @@
/usr/lib/systemd/system/hv_vss_daemon.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/sshd.service

View File

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

View File

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

View File

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

View File

@ -0,0 +1 @@
/usr/lib/systemd/system/vmware-vmblock-fuse.service

View File

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

View File

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

View File

@ -0,0 +1,15 @@
[Unit]
Description=Initializes Pacman keyring
Requires=etc-pacman.d-gnupg.mount
After=etc-pacman.d-gnupg.mount time-sync.target
BindsTo=etc-pacman.d-gnupg.mount
Before=archlinux-keyring-wkd-sync.service
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/pacman-key --init
ExecStart=/usr/bin/pacman-key --populate
[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-time-wait-sync.service

View File

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

View File

@ -1 +0,0 @@
ACTION=="add", SUBSYSTEM=="net", ENV{INTERFACE}=="en*|eth*", ENV{SYSTEMD_WANTS}="dhcpcd@$name.service"

View File

@ -0,0 +1,8 @@
# Reflector configuration file for the systemd service.
--save /etc/pacman.d/mirrorlist
--ipv4
--ipv6
--protocol https
--latest 20
--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}" --location --retry-connrefused --retry 10 -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 -Fqa 'accessibility=' /proc/cmdline &> /dev/null; then
setopt SINGLE_LINE_ZLE
fi
~/.automated_script.sh

View File

@ -1,38 +0,0 @@
#!/bin/bash
set -e -u
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/bash root
cp -aT /etc/skel/ /root/
#Create Liveuser
useradd -m -p "" -g users -G "adm,audio,floppy,log,network,rfkill,scanner,storage,optical,power,wheel" -s /bin/bash liveuser
#chmod 700 /root
chown -R liveuser:users /home/liveuser
#Load Appletneo Configuration
#cd /usr/bin
#dconf load / < desktop.dconf
#cd -
#tuxOS Name
sed -i.bak 's/Arch Linux/tux OS/g' /usr/lib/os-release
sed -i.bak 's/ID=arch/ID=tux/g' /usr/lib/os-release
sed -i.bak 's/ID_LIKE=archlinux/ID_LIKE=tuxlinux/g' /usr/lib/os-release
sed -i.bak 's/www.archlinux.org/www.appletneo.com/g' /usr/lib/os-release
sed -i.bak 's/bbs.archlinux.org/www.appletneo.com/g' /usr/lib/os-release
sed -i.bak 's/bugs.archlinux.org/www.appletneo.com/g' /usr/lib/os-release
#cp /usr/lib/os-release /etc/os-release
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
systemctl set-default multi-user.target

View File

@ -0,0 +1,5 @@
#!/bin/sh
#
# SPDX-License-Identifier: GPL-3.0-or-later
exec lynx 'https://wiki.archlinux.org/title/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%;

View File

@ -0,0 +1,2 @@
arch-install-scripts
base

279
build.sh
View File

@ -1,279 +0,0 @@
#!/bin/bash
set -e -u
iso_name=tuxOS
iso_label="tuxOS_$(date +%Y%m)"
iso_version=$(date +%Y.%m.%d)
install_dir=arch
work_dir=work
out_dir=out
gpg_key=
arch=$(uname -m)
verbose=""
script_path=$(readlink -f ${0%/*})
_usage ()
{
echo "usage ${0} [options]"
echo
echo " General options:"
echo " -N <iso_name> Set an iso filename (prefix)"
echo " Default: ${iso_name}"
echo " -V <iso_version> Set an iso version (in filename)"
echo " Default: ${iso_version}"
echo " -L <iso_label> Set an iso label (disk label)"
echo " Default: ${iso_label}"
echo " -D <install_dir> Set an install_dir (directory inside iso)"
echo " Default: ${install_dir}"
echo " -w <work_dir> Set the working directory"
echo " Default: ${work_dir}"
echo " -o <out_dir> Set the output directory"
echo " Default: ${out_dir}"
echo " -v Enable verbose output"
echo " -h This help message"
exit ${1}
}
# Helper function to run make_*() only one time per architecture.
run_once() {
if [[ ! -e ${work_dir}/build.${1}_${arch} ]]; then
$1
touch ${work_dir}/build.${1}_${arch}
fi
}
# Setup custom pacman.conf with current cache directories.
make_pacman_conf() {
local _cache_dirs
_cache_dirs=($(pacman -v 2>&1 | grep '^Cache Dirs:' | sed 's/Cache Dirs:\s*//g'))
sed -r "s|^#?\\s*CacheDir.+|CacheDir = $(echo -n ${_cache_dirs[@]})|g" ${script_path}/pacman.conf > ${work_dir}/pacman.conf
}
# Base installation, plus needed packages (airootfs)
make_basefs() {
setarch ${arch} mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman.conf" -D "${install_dir}" init
setarch ${arch} mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman.conf" -D "${install_dir}" -p "haveged intel-ucode memtest86+ mkinitcpio-nfs-utils nbd zsh" install
}
# Additional packages (airootfs)
make_packages() {
setarch ${arch} mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman.conf" -D "${install_dir}" -p "$(grep -h -v ^# ${script_path}/packages.{both,${arch}})" install
}
# Needed packages for x86_64 EFI boot
make_packages_efi() {
setarch ${arch} mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman.conf" -D "${install_dir}" -p "efitools" install
}
# Copy mkinitcpio archiso hooks and build initramfs (airootfs)
make_setup_mkinitcpio() {
local _hook
mkdir -p ${work_dir}/${arch}/airootfs/etc/initcpio/hooks
mkdir -p ${work_dir}/${arch}/airootfs/etc/initcpio/install
for _hook in archiso archiso_shutdown archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs archiso_loop_mnt; do
cp /usr/lib/initcpio/hooks/${_hook} ${work_dir}/${arch}/airootfs/etc/initcpio/hooks
cp /usr/lib/initcpio/install/${_hook} ${work_dir}/${arch}/airootfs/etc/initcpio/install
done
sed -i "s|/usr/lib/initcpio/|/etc/initcpio/|g" ${work_dir}/${arch}/airootfs/etc/initcpio/install/archiso_shutdown
cp /usr/lib/initcpio/install/archiso_kms ${work_dir}/${arch}/airootfs/etc/initcpio/install
cp /usr/lib/initcpio/archiso_shutdown ${work_dir}/${arch}/airootfs/etc/initcpio
cp ${script_path}/mkinitcpio.conf ${work_dir}/${arch}/airootfs/etc/mkinitcpio-archiso.conf
gnupg_fd=
if [[ ${gpg_key} ]]; then
gpg --export ${gpg_key} >${work_dir}/gpgkey
exec 17<>${work_dir}/gpgkey
fi
ARCHISO_GNUPG_FD=${gpg_key:+17} setarch ${arch} mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman.conf" -D "${install_dir}" -r 'mkinitcpio -c /etc/mkinitcpio-archiso.conf -k /boot/vmlinuz-linux -g /boot/archiso.img' run
if [[ ${gpg_key} ]]; then
exec 17<&-
fi
}
# Customize installation (airootfs)
make_customize_airootfs() {
cp -af ${script_path}/airootfs ${work_dir}/${arch}
curl -o ${work_dir}/${arch}/airootfs/etc/pacman.d/mirrorlist 'https://www.archlinux.org/mirrorlist/?country=all&protocol=http&use_mirror_status=on'
lynx -dump -nolist 'https://wiki.archlinux.org/index.php/Installation_Guide?action=render' >> ${work_dir}/${arch}/airootfs/root/install.txt
setarch ${arch} mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman.conf" -D "${install_dir}" -r '/root/customize_airootfs.sh' run
rm ${work_dir}/${arch}/airootfs/root/customize_airootfs.sh
}
# Prepare kernel/initramfs ${install_dir}/boot/
make_boot() {
mkdir -p ${work_dir}/iso/${install_dir}/boot/${arch}
cp ${work_dir}/${arch}/airootfs/boot/archiso.img ${work_dir}/iso/${install_dir}/boot/${arch}/archiso.img
cp ${work_dir}/${arch}/airootfs/boot/vmlinuz-linux ${work_dir}/iso/${install_dir}/boot/${arch}/vmlinuz
}
# Add other aditional/extra files to ${install_dir}/boot/
make_boot_extra() {
cp ${work_dir}/${arch}/airootfs/boot/memtest86+/memtest.bin ${work_dir}/iso/${install_dir}/boot/memtest
cp ${work_dir}/${arch}/airootfs/usr/share/licenses/common/GPL2/license.txt ${work_dir}/iso/${install_dir}/boot/memtest.COPYING
cp ${work_dir}/${arch}/airootfs/boot/intel-ucode.img ${work_dir}/iso/${install_dir}/boot/intel_ucode.img
cp ${work_dir}/${arch}/airootfs/usr/share/licenses/intel-ucode/LICENSE ${work_dir}/iso/${install_dir}/boot/intel_ucode.LICENSE
}
# Prepare /${install_dir}/boot/syslinux
make_syslinux() {
mkdir -p ${work_dir}/iso/${install_dir}/boot/syslinux
for _cfg in ${script_path}/syslinux/*.cfg; do
sed "s|%ARCHISO_LABEL%|${iso_label}|g;
s|%INSTALL_DIR%|${install_dir}|g" ${_cfg} > ${work_dir}/iso/${install_dir}/boot/syslinux/${_cfg##*/}
done
cp ${script_path}/syslinux/splash.png ${work_dir}/iso/${install_dir}/boot/syslinux
cp ${work_dir}/${arch}/airootfs/usr/lib/syslinux/bios/*.c32 ${work_dir}/iso/${install_dir}/boot/syslinux
cp ${work_dir}/${arch}/airootfs/usr/lib/syslinux/bios/lpxelinux.0 ${work_dir}/iso/${install_dir}/boot/syslinux
cp ${work_dir}/${arch}/airootfs/usr/lib/syslinux/bios/memdisk ${work_dir}/iso/${install_dir}/boot/syslinux
mkdir -p ${work_dir}/iso/${install_dir}/boot/syslinux/hdt
gzip -c -9 ${work_dir}/${arch}/airootfs/usr/share/hwdata/pci.ids > ${work_dir}/iso/${install_dir}/boot/syslinux/hdt/pciids.gz
gzip -c -9 ${work_dir}/${arch}/airootfs/usr/lib/modules/*-ARCH/modules.alias > ${work_dir}/iso/${install_dir}/boot/syslinux/hdt/modalias.gz
}
# Prepare /isolinux
make_isolinux() {
mkdir -p ${work_dir}/iso/isolinux
sed "s|%INSTALL_DIR%|${install_dir}|g" ${script_path}/isolinux/isolinux.cfg > ${work_dir}/iso/isolinux/isolinux.cfg
cp ${work_dir}/${arch}/airootfs/usr/lib/syslinux/bios/isolinux.bin ${work_dir}/iso/isolinux/
cp ${work_dir}/${arch}/airootfs/usr/lib/syslinux/bios/isohdpfx.bin ${work_dir}/iso/isolinux/
cp ${work_dir}/${arch}/airootfs/usr/lib/syslinux/bios/ldlinux.c32 ${work_dir}/iso/isolinux/
}
# Prepare /EFI
make_efi() {
mkdir -p ${work_dir}/iso/EFI/boot
cp ${work_dir}/x86_64/airootfs/usr/share/efitools/efi/PreLoader.efi ${work_dir}/iso/EFI/boot/bootx64.efi
cp ${work_dir}/x86_64/airootfs/usr/share/efitools/efi/HashTool.efi ${work_dir}/iso/EFI/boot/
cp ${work_dir}/x86_64/airootfs/usr/lib/systemd/boot/efi/systemd-bootx64.efi ${work_dir}/iso/EFI/boot/loader.efi
mkdir -p ${work_dir}/iso/loader/entries
cp ${script_path}/efiboot/loader/loader.conf ${work_dir}/iso/loader/
cp ${script_path}/efiboot/loader/entries/uefi-shell-v2-x86_64.conf ${work_dir}/iso/loader/entries/
cp ${script_path}/efiboot/loader/entries/uefi-shell-v1-x86_64.conf ${work_dir}/iso/loader/entries/
sed "s|%ARCHISO_LABEL%|${iso_label}|g;
s|%INSTALL_DIR%|${install_dir}|g" \
${script_path}/efiboot/loader/entries/archiso-x86_64-usb.conf > ${work_dir}/iso/loader/entries/archiso-x86_64.conf
# EFI Shell 2.0 for UEFI 2.3+
curl -o ${work_dir}/iso/EFI/shellx64_v2.efi https://raw.githubusercontent.com/tianocore/edk2/master/ShellBinPkg/UefiShell/X64/Shell.efi
# EFI Shell 1.0 for non UEFI 2.3+
curl -o ${work_dir}/iso/EFI/shellx64_v1.efi https://raw.githubusercontent.com/tianocore/edk2/master/EdkShellBinPkg/FullShell/X64/Shell_Full.efi
}
# Prepare efiboot.img::/EFI for "El Torito" EFI boot mode
make_efiboot() {
mkdir -p ${work_dir}/iso/EFI/archiso
truncate -s 64M ${work_dir}/iso/EFI/archiso/efiboot.img
mkfs.fat -n ARCHISO_EFI ${work_dir}/iso/EFI/archiso/efiboot.img
mkdir -p ${work_dir}/efiboot
mount ${work_dir}/iso/EFI/archiso/efiboot.img ${work_dir}/efiboot
mkdir -p ${work_dir}/efiboot/EFI/archiso
cp ${work_dir}/iso/${install_dir}/boot/x86_64/vmlinuz ${work_dir}/efiboot/EFI/archiso/vmlinuz.efi
cp ${work_dir}/iso/${install_dir}/boot/x86_64/archiso.img ${work_dir}/efiboot/EFI/archiso/archiso.img
cp ${work_dir}/iso/${install_dir}/boot/intel_ucode.img ${work_dir}/efiboot/EFI/archiso/intel_ucode.img
mkdir -p ${work_dir}/efiboot/EFI/boot
cp ${work_dir}/x86_64/airootfs/usr/share/efitools/efi/PreLoader.efi ${work_dir}/efiboot/EFI/boot/bootx64.efi
cp ${work_dir}/x86_64/airootfs/usr/share/efitools/efi/HashTool.efi ${work_dir}/efiboot/EFI/boot/
cp ${work_dir}/x86_64/airootfs/usr/lib/systemd/boot/efi/systemd-bootx64.efi ${work_dir}/efiboot/EFI/boot/loader.efi
mkdir -p ${work_dir}/efiboot/loader/entries
cp ${script_path}/efiboot/loader/loader.conf ${work_dir}/efiboot/loader/
cp ${script_path}/efiboot/loader/entries/uefi-shell-v2-x86_64.conf ${work_dir}/efiboot/loader/entries/
cp ${script_path}/efiboot/loader/entries/uefi-shell-v1-x86_64.conf ${work_dir}/efiboot/loader/entries/
sed "s|%ARCHISO_LABEL%|${iso_label}|g;
s|%INSTALL_DIR%|${install_dir}|g" \
${script_path}/efiboot/loader/entries/archiso-x86_64-cd.conf > ${work_dir}/efiboot/loader/entries/archiso-x86_64.conf
cp ${work_dir}/iso/EFI/shellx64_v2.efi ${work_dir}/efiboot/EFI/
cp ${work_dir}/iso/EFI/shellx64_v1.efi ${work_dir}/efiboot/EFI/
umount -d ${work_dir}/efiboot
}
# Build airootfs filesystem image
make_prepare() {
cp -a -l -f ${work_dir}/${arch}/airootfs ${work_dir}
setarch ${arch} mkarchiso ${verbose} -w "${work_dir}" -D "${install_dir}" pkglist
setarch ${arch} mkarchiso ${verbose} -w "${work_dir}" -D "${install_dir}" ${gpg_key:+-g ${gpg_key}} prepare
rm -rf ${work_dir}/airootfs
# rm -rf ${work_dir}/${arch}/airootfs (if low space, this helps)
}
# Build ISO
make_iso() {
mkarchiso ${verbose} -w "${work_dir}" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-x86_64.iso"
}
if [[ ${EUID} -ne 0 ]]; then
echo "This script must be run as root."
_usage 1
fi
if [[ ${arch} != x86_64 ]]; then
echo "This script needs to be run on x86_64"
_usage 1
fi
while getopts 'N:V:L:D:w:o:g:vh' arg; do
case "${arg}" in
N) iso_name="${OPTARG}" ;;
V) iso_version="${OPTARG}" ;;
L) iso_label="${OPTARG}" ;;
D) install_dir="${OPTARG}" ;;
w) work_dir="${OPTARG}" ;;
o) out_dir="${OPTARG}" ;;
g) gpg_key="${OPTARG}" ;;
v) verbose="-v" ;;
h) _usage 0 ;;
*)
echo "Invalid argument '${arg}'"
_usage 1
;;
esac
done
mkdir -p ${work_dir}
run_once make_pacman_conf
# Do all stuff for each airootfs
for arch in x86_64; do
run_once make_basefs
run_once make_packages
done
run_once make_packages_efi
for arch in x86_64; do
run_once make_setup_mkinitcpio
run_once make_customize_airootfs
done
for arch in x86_64; do
run_once make_boot
done
# Do all stuff for "iso"
run_once make_boot_extra
run_once make_syslinux
run_once make_isolinux
run_once make_efi
run_once make_efiboot
for arch in x86_64; do
run_once make_prepare
done
run_once make_iso

View File

@ -0,0 +1,7 @@
title Boot tuxOS (x86_64, UEFI)
sort-key 01
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% cow_spacesize=5G copytoram=n module_blacklist=pcspkr,snd_pcsp

View File

@ -1,5 +0,0 @@
title Appletneo OS x86_64 UEFI CD
linux /EFI/archiso/vmlinuz.efi
initrd /EFI/archiso/intel_ucode.img
initrd /EFI/archiso/archiso.img
options archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%

View File

@ -1,5 +0,0 @@
title Appletneo OS x86_64 UEFI USB
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz
initrd /%INSTALL_DIR%/boot/intel_ucode.img
initrd /%INSTALL_DIR%/boot/x86_64/archiso.img
options archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%

View File

@ -1,2 +0,0 @@
title UEFI Shell x86_64 v1
efi /EFI/shellx64_v1.efi

View File

@ -1,2 +0,0 @@
title UEFI Shell x86_64 v2
efi /EFI/shellx64_v2.efi

View File

@ -1,2 +1,3 @@
timeout 3 timeout 15
default archiso-x86_64 default 01-tuxOS-iso-x86_64-linux.conf
beep on

81
grub/grub.cfg Normal file
View File

@ -0,0 +1,81 @@
# Load partition table and file system modules
insmod part_gpt
insmod part_msdos
insmod fat
insmod iso9660
insmod ntfs
insmod ntfscomp
insmod exfat
insmod udf
# Use graphics-mode output
insmod all_video
insmod font
if loadfont "${prefix}/fonts/unicode.pf2" ; then
set gfxmode="auto"
terminal_input console
terminal_output console
fi
# Enable serial console
if serial --unit=0 --speed=115200; then
terminal_input --append serial
terminal_output --append serial
fi
# Search for the ISO volume
if [ -z "${ARCHISO_UUID}" ]; then
if [ -z "${ARCHISO_HINT}" ]; then
regexp --set=1:ARCHISO_HINT '^\(([^)]+)\)' "${cmdpath}"
fi
search --no-floppy --set=root --file '%ARCHISO_SEARCH_FILENAME%' --hint "${ARCHISO_HINT}"
probe --set ARCHISO_UUID --fs-uuid "${root}"
fi
# Set default menu entry
default=tuxOS
timeout=15
timeout_style=menu
# GRUB init tune for accessibility
play 600 988 1 1319 4
# Menu entries
menuentry "Boot tuxOS (x86_64, UEFI)" --class arch --class gnu-linux --class gnu --class os --id 'tuxOS' {
set gfxpayload=keep
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisodevice=UUID=${ARCHISO_UUID}
initrd /%INSTALL_DIR%/boot/intel-ucode.img /%INSTALL_DIR%/boot/amd-ucode.img /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
}
if [ "${grub_platform}" == "efi" ]; then
if [ "${grub_cpu}" == "x86_64" ]; then
menuentry "Run Memtest86+ (RAM test)" --class memtest86 --class gnu --class tool {
set gfxpayload=800x600,1024x768
linux /boot/memtest86+/memtest.efi
}
menuentry "UEFI Shell" {
insmod chain
chainloader /shellx64.efi
}
elif [ "${grub_cpu}" == "i386" ]; then
menuentry "UEFI Shell" {
insmod chain
chainloader /shellia32.efi
}
fi
menuentry 'UEFI Firmware Settings' --id 'uefi-firmware' {
fwsetup
}
fi
menuentry "System shutdown" --class shutdown --class poweroff {
echo "System shutting down..."
halt
}
menuentry "System restart" --class reboot --class restart {
echo "System rebooting..."
reboot
}

View File

@ -1,6 +0,0 @@
PATH /%INSTALL_DIR%/boot/syslinux/
DEFAULT loadconfig
LABEL loadconfig
CONFIG /%INSTALL_DIR%/boot/syslinux/archiso.cfg
APPEND /%INSTALL_DIR%/

View File

@ -1,2 +0,0 @@
HOOKS="base udev memdisk archiso_shutdown archiso archiso_loop_mnt archiso_kms block pcmcia filesystems keyboard"
COMPRESSION="xz"

View File

@ -1,157 +0,0 @@
##xorg-Packages
xorg-fonts
xorg-server
xorg-server-common
xorg-xinit
xorg-xkill
boost
boost-libs
icu
libmtp
xz
xterm
##System
xf86-video-ati
xf86-video-dummy
xf86-video-fbdev
xf86-video-nouveau
xf86-video-openchrome
xf86-video-vesa
xf86-video-vmware
xf86-video-voodoo
xf86-input-libinput
xf86-input-synaptics
xf86-input-keyboard
xf86-input-vmmouse
xf86-input-mouse
laptop-detect
mlocate
reflector
tracker
linux-headers
broadcom-wl-dkms
lightdm
##VBox
virtualbox-guest-modules-arch
virtualbox-guest-utils
##GUI
i3
##Themes
numix-gtk-theme
arc-gtk-theme
arc-icon-theme
##Fonts
ttf-dejavu
ttf-liberation
cantarell-fonts
##Environment
bash-completion
ncdu
speedtest-cli
pulseaudio
pulseaudio-alsa
pavucontrol
volumeicon
powerline
python
##Applications
vlc
gparted
leafpad
youtube-dl
p7zip
python-pip
neofetch
##File-Management
xdg-user-dirs
gvfs
gamin
tumbler
##System-Packages
arch-install-scripts
b43-fwcutter
btrfs-progs
clonezilla
crda
darkhttpd
ddrescue
dhclient
dialog
dmraid
dnsmasq
dnsutils
dosfstools
elinks
ethtool
exfat-utils
f2fs-tools
fsarchiver
gnu-netcat
gpm
gptfdisk
grml-zsh-config
grub
hdparm
ipw2100-fw
ipw2200-fw
irssi
lftp
linux-atm
lsscsi
mc
mtools
ndisc6
nfs-utils
nilfs-utils
nmap
ntfs-3g
ntp
openconnect
openssh
openvpn
partclone
parted
partimage
ppp
pptpclient
refind-efi
rfkill
rp-pppoe
rsync
sdparm
sg3_utils
smartmontools
speedtouch
sudo
tcpdump
testdisk
usb_modeswitch
vim-minimal
vpnc
wget
wireless_tools
wpa_actiond
wvdial
xl2tpd
zd1211-firmware
make
m4
autoconf
automake
binutils
bison
fakeroot
flex
gcc
patch
perl-error
git

View File

View File

@ -0,0 +1,267 @@
# base
alsa-utils
amd-ucode
arch-install-scripts
archinstall
b43-fwcutter
base
bind
brltty
broadcom-wl
btrfs-progs
clonezilla
cloud-init
cryptsetup
darkhttpd
ddrescue
dhclient
dhcpcd
diffutils
dmidecode
dmraid
dnsmasq
dosfstools
e2fsprogs
edk2-shell
efibootmgr
espeakup
ethtool
exfatprogs
f2fs-tools
fatresize
fsarchiver
gnu-netcat
gpart
gpm
gptfdisk
grub
hdparm
hyperv
intel-ucode
irssi
iw
iwd
jfsutils
kitty-terminfo
less
lftp
libfido2
libusb-compat
linux
linux-atm
linux-firmware
linux-firmware-marvell
livecd-sounds
lsscsi
lvm2
lynx
man-db
man-pages
mc
mdadm
memtest86+
memtest86+-efi
mkinitcpio
mkinitcpio-archiso
mkinitcpio-nfs-utils
modemmanager
mtools
nano
nbd
ndisc6
nfs-utils
nilfs-utils
nmap
ntfs-3g
nvme-cli
open-iscsi
open-vm-tools
openconnect
openssh
openvpn
partclone
parted
partimage
pcsclite
ppp
pptpclient
pv
qemu-guest-agent
refind
reflector
reiserfsprogs
rp-pppoe
rsync
rxvt-unicode-terminfo
screen
sdparm
sg3_utils
smartmontools
sof-firmware
squashfs-tools
sudo
syslinux
systemd-resolvconf
tcpdump
terminus-font
testdisk
tmux
tpm2-tss
udftools
usb_modeswitch
usbmuxd
usbutils
vim
vpnc
wireless-regdb
wireless_tools
wpa_supplicant
wvdial
xfsprogs
xl2tpd
zsh
# System
base-devel
xorg
xdg-user-dirs
kitty
networkmanager
network-manager-applet
os-prober
go
nodejs-lts-hydrogen
xdg-desktop-portal
# tuxOS
tuxos-cursor
tuxos-hooks
tuxos-skel
tuxos-omz
tuxos-nvim
tuxos-bspwm
tuxos-pfetch
tuxos-calamares
tuxos-calamares-config
# AUR
picom-pijulius-git
ckbcomp
mkinitcpio-openswap
# WM/UI
sddm
polybar
ttf-firacode-nerd
# Audio
pipewire
wireplumber
pipewire-alsa
pipewire-pulse
pipewire-jack
pulsemixer
pavucontrol
gst-plugin-pipewire
# Bluetooth
bluez
bluez-utils
blueman
# Video
libde265
libdv
libmpeg2
schroedinger
libtheora
libvpx
x264
x265
xvidcore
gstreamer
ffmpeg
gst-libav
gst-plugins-good
gst-plugins-ugly
gst-plugins-bad
# Apps
discord
firefox
thunar-archive-plugin
thunar-media-tags-plugin
thunar-volman
file-roller
geany
geany-plugins
viewnior
atril
# Media
mpc
mpd
ncmpcpp
mplayer
# Files
gvfs
gvfs-mtp
gvfs-afc
gvfs-gphoto2
gvfs-smb
gvfs-google
highlight
trash-cli
ueberzug
xdg-user-dirs
xdg-user-dirs-gtk
# Archives
bzip2
gzip
lrzip
lz4
lzip
lzop
xz
zstd
p7zip
zip
unzip
unrar
unarchiver
xarchiver
# Utils
neofetch
arandr
dunst
nitrogen
picom
python-pywal
feh
ranger
exa
bat
zoxide
starship
neovim
neovide
ripgrep
lazygit
gdu
bottom
rofi
wget
nano
btop
# VM
virtualbox-guest-utils
qemu-guest-agent
open-vm-tools
xf86-input-vmmouse
xf86-video-vmware

View File

@ -14,11 +14,11 @@
#CacheDir = /var/cache/pacman/pkg/ #CacheDir = /var/cache/pacman/pkg/
#LogFile = /var/log/pacman.log #LogFile = /var/log/pacman.log
#GPGDir = /etc/pacman.d/gnupg/ #GPGDir = /etc/pacman.d/gnupg/
#HookDir = /etc/pacman.d/hooks/
HoldPkg = pacman glibc HoldPkg = pacman glibc
#XferCommand = /usr/bin/curl -C - -f %u > %o #XferCommand = /usr/bin/curl -L -C - -f -o %o %u
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u #XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled #CleanMethod = KeepInstalled
#UseDelta = 0.7
Architecture = auto Architecture = auto
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup # Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
@ -31,10 +31,11 @@ Architecture = auto
# Misc options # Misc options
#UseSyslog #UseSyslog
#Color #Color
#TotalDownload #NoProgressBar
# We cannot check disk space from within a chroot environment # We cannot check disk space from within a chroot environment
#CheckSpace #CheckSpace
#VerbosePkgLists #VerbosePkgLists
ParallelDownloads = 5
# By default, pacman accepts packages signed by keys that its local keyring # 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. # trusts (see pacman-key and its man page), as well as unsigned packages.
@ -84,5 +85,21 @@ Include = /etc/pacman.d/mirrorlist
[community] [community]
Include = /etc/pacman.d/mirrorlist Include = /etc/pacman.d/mirrorlist
[multilib] # If you want to run 32 bit applications on your x86_64 system,
Include = /etc/pacman.d/mirrorlist # 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
[tuxOS]
SigLevel = Optional TrustAll
Server = file:///home/tux/Projects/tuxOS/pkgs/$arch

27
profiledef.sh Normal file
View File

@ -0,0 +1,27 @@
#!/usr/bin/env bash
# shellcheck disable=SC2034
iso_name="tuxOS"
iso_label="tuxOS_$(date --date="@${SOURCE_DATE_EPOCH:-$(date +%s)}" +%Y%m)"
iso_publisher="tux <https://0xtux.sh>"
iso_application="tuxOS Live/Rescue CD"
iso_version="$(date --date="@${SOURCE_DATE_EPOCH:-$(date +%s)}" +%Y.%m.%d)"
install_dir="arch"
buildmodes=('iso')
bootmodes=('bios.syslinux.mbr' 'bios.syslinux.eltorito'
'uefi-ia32.grub.esp' 'uefi-x64.grub.esp'
'uefi-ia32.grub.eltorito' 'uefi-x64.grub.eltorito')
arch="x86_64"
pacman_conf="pacman.conf"
airootfs_image_type="squashfs"
airootfs_image_tool_options=('-comp' 'xz' '-Xbcj' 'x86' '-b' '1M' '-Xdict-size' '1M')
file_permissions=(
["/etc/shadow"]="0:0:400"
["/etc/gshadow"]="0:0:0400"
["/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"
)

View File

@ -1,11 +0,0 @@
DEFAULT select
LABEL select
COM32 boot/syslinux/whichsys.c32
APPEND -pxe- pxe -sys- sys -iso- sys
LABEL pxe
CONFIG boot/syslinux/archiso_pxe.cfg
LABEL sys
CONFIG boot/syslinux/archiso_sys.cfg

View File

@ -1,36 +0,0 @@
INCLUDE boot/syslinux/archiso_head.cfg
LABEL arch64_nbd
TEXT HELP
Boot the Appletneo OS (x86_64) live medium (Using NBD).
It allows you to install Arch Linux or perform system maintenance.
ENDTEXT
MENU LABEL Boot Appletneo OS (x86_64) (NBD)
LINUX boot/x86_64/vmlinuz
INITRD boot/intel_ucode.img,boot/x86_64/archiso.img
APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% archiso_nbd_srv=${pxeserver}
SYSAPPEND 3
LABEL arch64_nfs
TEXT HELP
Boot the Appletneo OS (x86_64) live medium (Using NFS).
It allows you to install Arch Linux or perform system maintenance.
ENDTEXT
MENU LABEL Boot Appletneo OS (x86_64) (NFS)
LINUX boot/x86_64/vmlinuz
INITRD boot/intel_ucode.img,boot/x86_64/archiso.img
APPEND archisobasedir=%INSTALL_DIR% archiso_nfs_srv=${pxeserver}:/run/archiso/bootmnt
SYSAPPEND 3
LABEL arch64_http
TEXT HELP
Boot the Appletneo OS (x86_64) live medium (Using HTTP).
It allows you to install Arch Linux or perform system maintenance.
ENDTEXT
MENU LABEL Boot Appletneo OS (x86_64) (HTTP)
LINUX boot/x86_64/vmlinuz
INITRD boot/intel_ucode.img,boot/x86_64/archiso.img
APPEND archisobasedir=%INSTALL_DIR% archiso_http_srv=http://${pxeserver}/
SYSAPPEND 3
INCLUDE boot/syslinux/archiso_tail.cfg

View File

@ -1,13 +0,0 @@
INCLUDE boot/syslinux/archiso_head.cfg
LABEL arch64
TEXT HELP
Boot the Appletneo OS (x86_64) live medium.
It allows you to install Arch Linux or perform system maintenance.
ENDTEXT
MENU LABEL Boot Appletneo OS (x86_64)
LINUX boot/x86_64/vmlinuz
INITRD boot/intel_ucode.img,boot/x86_64/archiso.img
APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%
INCLUDE boot/syslinux/archiso_tail.cfg

View File

@ -1,27 +0,0 @@
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 boot/syslinux/chain.c32
APPEND hd0 0
# http://www.memtest.org/
LABEL memtest
MENU LABEL Run Memtest86+ (RAM test)
LINUX boot/memtest
# http://hdt-project.org/
LABEL hdt
MENU LABEL Hardware Information (HDT)
COM32 boot/syslinux/hdt.c32
APPEND modules_alias=boot/syslinux/hdt/modalias.gz pciids=boot/syslinux/hdt/pciids.gz
LABEL reboot
MENU LABEL Reboot
COM32 boot/syslinux/reboot.c32
LABEL poweroff
MENU LABEL Power Off
COM32 boot/syslinux/poweroff.c32

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View File

@ -1,5 +1,11 @@
DEFAULT loadconfig DEFAULT select
LABEL loadconfig LABEL select
CONFIG archiso.cfg COM32 whichsys.c32
APPEND ../../ APPEND -pxe- pxe -sys- sys -iso- sys
LABEL pxe
CONFIG tuxOS_iso_pxe.cfg
LABEL sys
CONFIG tuxOS_iso_sys.cfg

View File

@ -1,7 +1,7 @@
SERIAL 0 38400 SERIAL 0 115200
UI boot/syslinux/vesamenu.c32 UI vesamenu.c32
MENU TITLE Appletneo OS MENU TITLE tuxOS
MENU BACKGROUND boot/syslinux/splash.png MENU BACKGROUND splash.png
MENU WIDTH 78 MENU WIDTH 78
MENU MARGIN 4 MENU MARGIN 4
@ -12,7 +12,7 @@ MENU CMDLINEROW 14
MENU HELPMSGROW 16 MENU HELPMSGROW 16
MENU HELPMSGENDROW 29 MENU HELPMSGENDROW 29
# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu # Refer to https://wiki.syslinux.org/wiki/index.php/Comboot/menu.c32
MENU COLOR border 30;44 #40ffffff #a0000000 std MENU COLOR border 30;44 #40ffffff #a0000000 std
MENU COLOR title 1;36;44 #9033ccff #a0000000 std MENU COLOR title 1;36;44 #9033ccff #a0000000 std
@ -23,3 +23,6 @@ MENU COLOR timeout_msg 37;40 #80ffffff #00000000 std
MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std
MENU COLOR msg07 37;40 #90ffffff #a0000000 std MENU COLOR msg07 37;40 #90ffffff #a0000000 std
MENU COLOR tabmsg 31;40 #30ffffff #00000000 std MENU COLOR tabmsg 31;40 #30ffffff #00000000 std
MENU CLEAR
MENU IMMEDIATE

View File

@ -0,0 +1,32 @@
LABEL arch64_nbd
TEXT HELP
Boot tuxOS install medium using NBD.
It allows you to install tuxOS or perform system maintenance.
ENDTEXT
MENU LABEL Boot tuxOS 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} cms_verify=y
SYSAPPEND 3
LABEL arch64_nfs
TEXT HELP
Boot tuxOS live medium using NFS.
It allows you to install tuxOS or perform system maintenance.
ENDTEXT
MENU LABEL Boot tuxOS 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 cms_verify=y
SYSAPPEND 3
LABEL arch64_http
TEXT HELP
Boot tuxOS live medium using HTTP.
It allows you to install tuxOS or perform system maintenance.
ENDTEXT
MENU LABEL Boot tuxOS 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}/ cms_verify=y
SYSAPPEND 3

View File

@ -0,0 +1,5 @@
INCLUDE tuxOS_iso_head.cfg
INCLUDE tuxOS_iso_pxe-linux.cfg
INCLUDE tuxOS_iso_tail.cfg

View File

@ -0,0 +1,9 @@
LABEL arch64
TEXT HELP
Boot tuxOS install medium on BIOS.
It allows you to install tuxOS or perform system maintenance.
ENDTEXT
MENU LABEL Boot tuxOS 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%

Some files were not shown because too many files have changed in this diff Show More