aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* core/head: Fix a tiny typo (that introduced a bug) and a segmentation faultFerass El Hafidi2023-03-031-2/+2
| | | | | | | | | | | | | | | | | | | | Those bugs were basically introduced by typos... First bug --------- `head` was checking if argc was less than 2, which is incorrect because after getopt() is ran, argc would be equal to 1 if ran this way: $ head file As such, it would read standard input, then the file, which is a bug. Second bug ---------- The file got closed after the first line was read. When trying to read the (now closed) file it returns a segmentation fault. Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/[: Check argv[0], don't use basename()Ferass El Hafidi2023-03-031-2/+1
| | | | | | | | | | | | | | | POSIX says this: > Applications using the exec() family of functions to execute > these utilities shall ensure that the argument passed in arg0 > or argv[0] is '[' when executing the [ utility and has a > basename of "test" when executing the test utility. Which basically means (in pseudo-code if you will): if argv[0] is "[" -> behave like the POSIX [ else -> behave like the POSIX test [ used to compare with the basename of argv[0], which is POSIXly incorrect. Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/[: Use lstat() instead of stat()Ferass El Hafidi2023-03-021-1/+1
| | | | | | | That fixes a bug where [/test always returns 1 when used with `-L` or `-h`. Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/wc: Fix bug -- see descriptionFerass El Hafidi2023-03-021-1/+1
| | | | | | | | wc used to always return 'total %d %d %d %s\n' (in pseudo-printf here) regardless of if one or multiple files were specified. Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/cat: Fix bug - see descriptionFerass El Hafidi2023-03-021-1/+2
| | | | | | | | | | | | `cat` used to not concatenate at all when ran like this: $ cat It did read standard input, but did not output anything to standard output. fdopen() was used on STDIN_FILENO when it shouldn't. Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/uname: Fix argument parsingFerass El Hafidi2023-03-011-11/+7
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* man/: tee.1Ferass El Hafidi2023-02-271-0/+38
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/: teeFerass El Hafidi2023-02-272-0/+54
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* Makefile: Fix box not compiling && man/: cmp.1Ferass El Hafidi2023-02-224-3/+42
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/: cmpFerass El Hafidi2023-02-212-0/+55
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* man/: tty.1Ferass El Hafidi2023-02-191-0/+27
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/: ttyFerass El Hafidi2023-02-192-0/+22
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* box/Makefile: Be able to not include core utilitiesFerass El Hafidi2023-02-193-85/+11
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* Makefile: Fix error when running 'make' or 'make all'Ferass El Hafidi2023-02-192-1/+9
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* all: use SPDX identifiers and add a new MAINTAINERS file.Ferass El Hafidi2023-02-1644-1097/+81
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* sh: shorten commentsFerass El Hafidi2023-02-022-22/+5
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/ls: Use OPERANDS instead of (char *)params in getopt() and remove the ↵Ferass El Hafidi2023-01-281-8/+2
| | | | | | -R option. Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* common/common.c: Just say fases && extras/errno: Refactor (use strerrno and ↵Ferass El Hafidi2023-01-113-255/+8
| | | | | | print_usage() ) Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/common.*: Move them somewhere else so they can be used by non-POSIX utilsFerass El Hafidi2023-01-1125-59/+59
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/: Properly use getopt()Ferass El Hafidi2023-01-1114-107/+86
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/mv: Fix error handlingFerass El Hafidi2023-01-081-2/+3
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* Makefiles: Remove useless `echo`es and don't compile in a subdirectoryFerass El Hafidi2023-01-075-16/+175
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* core/ls: Fix compiler errors in Alpine LinuxFerass El Hafidi2023-01-061-1/+1
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* Makefile: Fix fases box compiling errorsFerass El Hafidi2023-01-062-7/+10
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* config.mk: typoFerass El Hafidi2023-01-061-1/+1
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* Remove useless fileFerass El Hafidi2023-01-061-0/+0
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* make: Set CORE to the currently-implemented utils insteadFerass El Hafidi2023-01-063-135/+5
| | | | Signed-off-by: Ferass El Hafidi <vitali64pmemail@protonmail.com>
* *: Update Copyright date #2Ferass 'Vitali64' EL HAFIDI2023-01-052-2/+2
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* *: Update Copyright dateFerass 'Vitali64' EL HAFIDI2023-01-0531-31/+31
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* core/Makefile, config.mk: Add all POSIX utilities and ignore those who ↵Ferass 'Vitali64' EL HAFIDI2023-01-052-166/+138
| | | | | | aren't implemented Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* (happy new year!) sh: Fix compiler errors && core/: Move print_usage to ↵Ferass 'Vitali64' EL HAFIDI2023-01-0527-128/+145
| | | | | | common.h and add errprint() Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* branding: Rename 'Ferass' Base System' to just 'fases'.Ferass 'Vitali64' EL HAFIDI2022-12-2511-20/+20
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* core/, Makefile, box: Get rid of version.h and use -DVERSION in CFLAGS instead.Ferass 'Vitali64' EL HAFIDI2022-12-2526-159/+40
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* */Makefile && config.mk: Simplify and remove unnecessary echoes.Ferass 'Vitali64' EL HAFIDI2022-12-254-66/+59
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* docs/: Remove all documentation #2Ferass 'Vitali64' EL HAFIDI2022-12-172-219/+1
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* docs/: Remove all documentationFerass 'Vitali64' EL HAFIDI2022-12-179-355/+11
| | | | | | | There's now a brand new website containing all documentation. <https://utils.vitali64.duckdns.org> Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* docs/: CONTRIBUTE.mdFerass 'Vitali64' EL HAFIDI2022-12-162-0/+75
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* core/wc: Error handling.Ferass 'Vitali64' EL HAFIDI2022-12-101-1/+7
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* core/wc: Add support for `wc file1 file2`Ferass 'Vitali64' EL HAFIDI2022-12-101-13/+26
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* core/wc: Remove unneeded #includesFerass 'Vitali64' EL HAFIDI2022-12-101-4/+0
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* README: Remove trailing spaceFerass 'Vitali64' EL HAFIDI2022-12-101-2/+1
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* README: Put the GIF to the bottom.Ferass 'Vitali64' EL HAFIDI2022-12-101-2/+2
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* core: wcFerass 'Vitali64' EL HAFIDI2022-12-102-2/+87
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* Silent please.Ferass 'Vitali64' EL HAFIDI2022-12-052-5/+19
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* box: Fix compiler errorsFerass 'Vitali64' EL HAFIDI2022-12-055-26/+13
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* Makefile: Add more utilities in CORE && core/: Use one single function for ↵Ferass 'Vitali64' EL HAFIDI2022-12-0425-193/+186
| | | | | | printing usage. Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* Makefile: Fix bugs in the test suite.Ferass 'Vitali64' EL HAFIDI2022-12-031-3/+1
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* Makefile: Make it more compact and add a test suite && README: New XMPP channelFerass 'Vitali64' EL HAFIDI2022-12-033-197/+208
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* core/: No more compiler warnings! (Threat all warnings as errors)Ferass 'Vitali64' EL HAFIDI2022-11-2614-23/+10
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>
* Makefile: Fix compiler errorsFerass 'Vitali64' EL HAFIDI2022-11-251-1/+1
| | | | Signed-off-by: Ferass 'Vitali64' EL HAFIDI <vitali64pmemail@protonmail.com>