mirror of
https://github.com/kevadesu/TylkoLinux.git
synced 2025-03-09 16:51:57 +01:00
Added dependency check and empty installer file :3
This commit is contained in:
parent
0ee879e74b
commit
8bb1f149c0
3 changed files with 103 additions and 0 deletions
0
Einrichter-CLI.sh
Normal file
0
Einrichter-CLI.sh
Normal file
13
README.md
13
README.md
|
@ -1,2 +1,15 @@
|
||||||
# TylkoLinux
|
# TylkoLinux
|
||||||
TylkoLinux, an LFS system
|
TylkoLinux, an LFS system
|
||||||
|
|
||||||
|
## Status
|
||||||
|
LFS v12.2-systemd book chapter: 2.2.
|
||||||
|
|
||||||
|
## To do
|
||||||
|
```md
|
||||||
|
[ ] Make a package manager
|
||||||
|
[X] Finish the project in the first place
|
||||||
|
```
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
I don't know what else to type lol just open a PR when this project is done
|
||||||
|
### What would also help is to report any security vulnerability and/or bugs found on https://www.linuxfromscratch.org/lfs/errata/12.2-systemd/ in the Issues tab
|
90
version-check.sh
Executable file
90
version-check.sh
Executable file
|
@ -0,0 +1,90 @@
|
||||||
|
#!/bin/bash
|
||||||
|
# A script to list version numbers of critical development tools
|
||||||
|
|
||||||
|
# If you have tools installed in other directories, adjust PATH here AND
|
||||||
|
# in ~lfs/.bashrc (section 4.4) as well.
|
||||||
|
|
||||||
|
LC_ALL=C
|
||||||
|
PATH=/usr/bin:/bin
|
||||||
|
|
||||||
|
bail() { echo "FATAL: $1"; exit 1; }
|
||||||
|
grep --version > /dev/null 2> /dev/null || bail "grep does not work"
|
||||||
|
sed '' /dev/null || bail "sed does not work"
|
||||||
|
sort /dev/null || bail "sort does not work"
|
||||||
|
|
||||||
|
ver_check()
|
||||||
|
{
|
||||||
|
if ! type -p $2 &>/dev/null
|
||||||
|
then
|
||||||
|
echo "ERROR: Cannot find $2 ($1)"; return 1;
|
||||||
|
fi
|
||||||
|
v=$($2 --version 2>&1 | grep -E -o '[0-9]+\.[0-9\.]+[a-z]*' | head -n1)
|
||||||
|
if printf '%s\n' $3 $v | sort --version-sort --check &>/dev/null
|
||||||
|
then
|
||||||
|
printf "OK: %-9s %-6s >= $3\n" "$1" "$v"; return 0;
|
||||||
|
else
|
||||||
|
printf "ERROR: %-9s is TOO OLD ($3 or later required)\n" "$1";
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
ver_kernel()
|
||||||
|
{
|
||||||
|
kver=$(uname -r | grep -E -o '^[0-9\.]+')
|
||||||
|
if printf '%s\n' $1 $kver | sort --version-sort --check &>/dev/null
|
||||||
|
then
|
||||||
|
printf "OK: Linux Kernel $kver >= $1\n"; return 0;
|
||||||
|
else
|
||||||
|
printf "ERROR: Linux Kernel ($kver) is TOO OLD ($1 or later required)\n" "$kver";
|
||||||
|
return 1;
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Coreutils first because --version-sort needs Coreutils >= 7.0
|
||||||
|
ver_check Coreutils sort 8.1 || bail "Coreutils too old, stop"
|
||||||
|
ver_check Bash bash 3.2
|
||||||
|
ver_check Binutils ld 2.13.1
|
||||||
|
ver_check Bison bison 2.7
|
||||||
|
ver_check Diffutils diff 2.8.1
|
||||||
|
ver_check Findutils find 4.2.31
|
||||||
|
ver_check Gawk gawk 4.0.1
|
||||||
|
ver_check GCC gcc 5.2
|
||||||
|
ver_check "GCC (C++)" g++ 5.2
|
||||||
|
ver_check Grep grep 2.5.1a
|
||||||
|
ver_check Gzip gzip 1.3.12
|
||||||
|
ver_check M4 m4 1.4.10
|
||||||
|
ver_check Make make 4.0
|
||||||
|
ver_check Patch patch 2.5.4
|
||||||
|
ver_check Perl perl 5.8.8
|
||||||
|
ver_check Python python3 3.4
|
||||||
|
ver_check Sed sed 4.1.5
|
||||||
|
ver_check Tar tar 1.22
|
||||||
|
ver_check Texinfo texi2any 5.0
|
||||||
|
ver_check Xz xz 5.0.0
|
||||||
|
ver_kernel 4.19
|
||||||
|
|
||||||
|
if mount | grep -q 'devpts on /dev/pts' && [ -e /dev/ptmx ]
|
||||||
|
then echo "OK: Linux Kernel supports UNIX 98 PTY";
|
||||||
|
else echo "ERROR: Linux Kernel does NOT support UNIX 98 PTY"; fi
|
||||||
|
|
||||||
|
alias_check() {
|
||||||
|
if $1 --version 2>&1 | grep -qi $2
|
||||||
|
then printf "OK: %-4s is $2\n" "$1";
|
||||||
|
else printf "ERROR: %-4s is NOT $2\n" "$1"; fi
|
||||||
|
}
|
||||||
|
echo "Aliases:"
|
||||||
|
alias_check awk GNU
|
||||||
|
alias_check yacc Bison
|
||||||
|
alias_check sh Bash
|
||||||
|
|
||||||
|
echo "Compiler check:"
|
||||||
|
if printf "int main(){}" | g++ -x c++ -
|
||||||
|
then echo "OK: g++ works";
|
||||||
|
else echo "ERROR: g++ does NOT work"; fi
|
||||||
|
rm -f a.out
|
||||||
|
|
||||||
|
if [ "$(nproc)" = "" ]; then
|
||||||
|
echo "ERROR: nproc is not available or it produces empty output"
|
||||||
|
else
|
||||||
|
echo "OK: nproc reports $(nproc) logical cores are available"
|
||||||
|
fi
|
Loading…
Add table
Reference in a new issue