1
0
mirror of https://codeberg.org/kiss-community/kiss synced 2024-07-02 14:02:26 +00:00
Commit Graph

1271 Commits

Author SHA1 Message Date
Dylan Araps
284897af22
kiss: Support relative input to the install action.
This adds support for relative paths when passing tarballs to kiss
directly and removes a prevents a misleading and confusing error
message from appearing (a false 'file not found').
2020-07-24 18:30:53 +03:00
Dylan Araps
528b3023a9
kiss: Don't return from pkg_clean
This fixes an issue where a build failure alongside KISS_DEBUG
having a value of '1' prevented the package manager from aborting.
2020-07-24 17:51:07 +03:00
Dylan Araps
b1bd880c07
kiss: Fixes to post-install output. 2020-07-24 02:03:36 +03:00
Dylan Araps
c7b32e6531 Merge branch 'master' of github.com:kisslinux/kiss 2020-07-24 01:44:58 +03:00
Dylan Araps
863f79ca38
kiss: Add environment variable to toggle stripping.
This commit adds KISS_STRIP to allow stripping to be controlled at
runtime for all staged packages. This is also handy when temporarily
needing debugging symbols for a given piece of software.

Defaults to '1', set to '0' to disable stripping.

Example:

KISS_STRIP=0 kiss b zlib
2020-07-24 01:42:04 +03:00
muevoid
27bfa92521
Add submodule support to kiss.
Simple pr that adds support for submodules basically adds no time to repos that dont have submodules as far as I can tell.
2020-07-21 04:59:19 +00:00
Dylan Araps
8848d3f1d3
kiss: Fix bug with empty post-install messages.
This never truly worked as the post-install message would always
ensure that file size is '> 0' despite there being nothing to show
the user.

We now store the output to a variable, ensure it isn't empty and
go on our merry way.
2020-07-18 19:42:14 +03:00
Dylan Araps
47190ffc08
kiss: Hide post-install output and only log at the end.
This prevents duplicate output and output which will just zoom
past alongside the endless scroll of software compilation.
2020-07-18 19:31:36 +03:00
Dylan Araps
b608d15033
docs: update 2020-07-09 14:43:38 +03:00
Dylan Araps
3607d64300
kiss: bump to 3.1.0 2020-07-08 18:39:18 +03:00
Dylan Araps
9912bb07c0
kiss: Don't set LC_ALL=C to fix qt5 (and potentially others) build errors. 2020-07-08 00:52:23 +03:00
Dylan Araps
d808b15c68
docs: update 2020-07-08 00:51:40 +03:00
Dylan Araps
52eb07fe82
kiss: Don't complain about make dependencies during install 2020-06-30 10:14:32 +03:00
Dylan Araps
dcb5cd4d4f
kiss: Swap to git pulls for updates 2020-06-28 10:00:46 +03:00
Dylan Araps
2f918ca372 Merge branch 'master' of github.com:kisslinux/kiss 2020-06-25 11:40:35 +03:00
Dylan Araps
a1ceb62d89
docs: update 2020-06-25 11:40:06 +03:00
Michael Czigler
ce333b5839
kiss: remove unsupported glyph
*** Background

Liberation Mono, which is the "default" font set in the core repo, does not support the "✓" glyph. 

*** Change
Suggested removing unsupported glyph(s).

*** Alternative Solution
Add additional or patched font to support more glyphs or add alternative font set (e.g. Terminus) to main repository for better unicode and glyph support.

*** Source 
https://fonts2u.com/liberation-mono.font
2020-06-24 10:33:52 -04:00
Dylan Araps
67512f756a Merge branch 'master' of github.com:kisslinux/kiss 2020-06-21 18:09:09 +03:00
Dylan Araps
c41f7b2e0b
kiss: Remove up to 3 trailing slashes from KISS_ROOT. Closes #165 2020-06-21 18:08:56 +03:00
Kevin Brebanov
f7b85cf400 kiss: Don't create empty post-install log file 2020-06-21 10:57:11 -04:00
Dylan Araps
bfec038740
docs: update 2020-06-13 00:25:17 +03:00
Dylan Araps
249c5a2c43
kiss-help: New utility 2020-06-13 00:00:58 +03:00
Dylan Araps
9df12bce11
kiss: bump to 3.0.1 2020-06-12 18:22:12 +03:00
Dylan Araps
bdfaf95e49
kiss: Minor nitpick 2020-06-12 18:13:18 +03:00
Dylan Araps
c6472156d7
kiss: Check that there are conflicts prior to choice creation 2020-06-12 18:12:02 +03:00
Dylan Araps
d25fe5841a
kiss: simplify part of pkg_build() 2020-06-11 11:30:11 +03:00
Dylan Araps
177588c713
kiss: Drop special case. Alternatives / Hooks can handle this easily 2020-06-11 11:23:29 +03:00
Dylan Araps
3fdee15f60
kiss: squish loops 2020-06-11 11:17:12 +03:00
Dylan Araps
ad8ad409c8
kiss: minor clean up 2020-06-11 11:06:43 +03:00
Dylan Araps
aa4cbae5f9
kiss: bump to 3.0.0 2020-06-11 10:55:12 +03:00
Dylan Araps
2cdc994e41
kiss: Further simplify git source handling 2020-06-11 10:34:53 +03:00
Dylan Araps
c1bdf283f2
kiss: Add shallow commit cloning 2020-06-11 09:44:32 +03:00
Dylan Araps
a39e9d2410
kiss: Clean up as_root() 2020-06-11 08:51:35 +03:00
Dylan Araps
b0a460fcf6
kiss: Clean up pkg_install() 2020-06-10 11:23:34 +03:00
Dylan Araps
2ca86ee2c0
kiss: Simplify pkg_depends and pkg_install() dependency checking. 2020-06-10 11:07:58 +03:00
Dylan Araps
ae8a48cd30
kiss: Fix spacing 2020-06-10 10:48:48 +03:00
Dylan Araps
4f75bda942
kiss: Simplify pkg_remove_files() 2020-06-10 10:42:13 +03:00
Dylan Araps
04730c9be6
kiss: Clean up checksum generation 2020-06-10 10:38:42 +03:00
Dylan Araps
3733eeacab
kiss: Minor clean up 2020-06-10 10:28:53 +03:00
Dylan Araps
028652c45f
kiss: Fix ordering of help output 2020-06-10 10:18:47 +03:00
Dylan Araps
81170f6cbb
kiss: Added d|download to pre-download package sources. 2020-06-10 10:15:56 +03:00
Dylan Araps
5acaff9bdc
kiss: Use $pid instead of $$ 2020-06-10 09:45:46 +03:00
Dylan Araps
ad5532671e
kiss: drop stray space 2020-06-10 06:50:18 +03:00
Dylan Araps
5d92df7a8b
kiss: Simplify package installation 2020-06-10 06:42:23 +03:00
Dylan Araps
ba18694b80
docs: update 2020-06-09 10:03:13 +03:00
Dylan Araps
4efddd0410
kiss: Fix pkg_swap failure. Closes #162 2020-06-09 10:02:52 +03:00
Dylan Araps
d8beb34aa5
version: bump 2020-06-08 08:08:25 +03:00
Dylan Araps
427dc39a16
kiss: Move all git source support to pkg_extract()
This reduces the overall code size as we no longer do an
"extraction" early in pkg_sources(). Also comes with less
network usage when a source points to a specific commit.
2020-06-06 17:07:10 +03:00
Dylan Araps
90f1057bf1
docs: update 2020-06-06 08:59:12 +03:00
Dylan Araps
556617fcfb
kiss: Define KISS_TMPDIR if unset 2020-06-06 08:06:40 +03:00
Dylan Araps
8fc5b5c85e
kiss: Added pre-extract hook.
This is handy for manipulating the package manager internals prior
to source extraction. I currently use this to conditionally run the
source extraction, build and tarball creation in memory (tmpfs).

    pre-extract)
        case $PKG in
            # Reset the directories to their default values.
            firefox*|rust|llvm|clang)
                mak_dir=${KISS_TMPDIR:-$cac_dir}/build-${pid:=$$}
                pkg_dir=${KISS_TMPDIR:-$cac_dir}/pkg-$pid
            ;;

            # Package is not in the above list, do everything in
            # memory. Really nice speedups.
            *)
                log "$PKG" "Activating tmpfs"

                mak_dir=/tmp/build-$pid
                pkg_dir=/tmp/pkg-$pid
            ;;
        esac

        mkdir -p "$mak_dir" "$pkg_dir/$PKG/var/db/kiss/installed"
    ;;
2020-06-06 07:33:50 +03:00
Dylan Araps
bf3bc4a546
docs: update 2020-06-03 19:24:01 +03:00
Dylan Araps
b671d44a5d
kiss: Workaround -bin/-esr packages in fixdeps().
Not ideal of course. This does however fix the issue. A proper fix
will come shortly.
2020-06-03 19:23:01 +03:00
Dylan Araps
b07a418ab8
docs: update 2020-06-02 11:57:12 +03:00
Dylan Araps
6e7e3f5226
kiss: Temporary workaround for incorrect fixdeps() output in rare cases. 2020-06-02 11:56:21 +03:00
Dylan Araps
46b48e4003
kiss: minor changes 2020-05-30 13:18:29 +03:00
Dylan Araps
79fec5bf70
docs: update 2020-05-29 19:09:43 +03:00
Dylan Araps
7a936123f6
kiss: Fix fixdeps() bug. 2020-05-29 19:09:17 +03:00
Dylan Araps
5c813b3609
KISS_FORCE: Check value: 2020-05-28 17:32:06 +03:00
Dylan Araps
c5bf1664cc
kiss: Added post-package hook. Stop printing hook message 2020-05-26 20:07:58 +03:00
Dylan Araps
1bc455f80a
docs: update 2020-05-26 18:09:01 +03:00
Dylan Araps
a6934118af
kiss: Change KISS_NOPROMPT to KISS_PROMPT 2020-05-26 18:08:18 +03:00
Dylan Araps
259a2e9f2b
kiss: Drop final touch 2020-05-25 19:16:16 +03:00
Dylan Araps
1741a04968
kiss: Add missing environment variables to as_root() 2020-05-25 18:40:58 +03:00
Dylan Araps
14a1bd3638
kiss: More portable od usage 2020-05-25 18:37:57 +03:00
Dylan Araps
6134d5d02f
kiss: Correctly quote $\# 2020-05-25 12:50:42 +03:00
Dylan Araps
8366eb5e19
docs: update 2020-05-25 08:35:59 +03:00
Dylan Araps
6f820b9dbf
kiss: Fix shellcheck 2020-05-25 08:35:34 +03:00
Dylan Araps
f1c8fb5b1b
kiss: Simplify pkg_remove_files() 2020-05-25 08:26:14 +03:00
Dylan Araps
23a0e14aaa
kiss: bump to 2.1.1 2020-05-25 08:23:52 +03:00
Dylan Araps
d375e42d8e
kiss: Drop 'ls -ld' file symlink resolution as it is unsafe/unneeded 2020-05-25 08:21:49 +03:00
Dylan Araps
922d27f6d2
kiss: Drop unneeded space. 2020-05-25 07:46:19 +03:00
Dylan Araps
4375b8d4dc
kiss: Quote unquoted 0 blocks 2020-05-25 07:45:55 +03:00
Dylan Araps
3df43ed52f
kiss: Minor fixes from Crestwave. 2020-05-25 07:43:33 +03:00
Dylan Araps
566fdbdf24
kiss: Bye bye ternary 2020-05-24 21:05:13 +03:00
Dylan Araps
fc1734c36c
kiss: Bye bye ternary 2020-05-24 21:04:33 +03:00
Dylan Araps
fd91d64169
docs: update 2020-05-24 19:54:02 +03:00
Dylan Araps
55471c0cba
docs: update 2020-05-24 19:42:44 +03:00
Dylan Araps
276849b9e8
pkg_strip: Minor fixes 2020-05-24 19:34:05 +03:00
Dylan Araps
39f0009507
pkg_strip: Check for ELF and !<arch> 2020-05-24 19:22:13 +03:00
Dylan Araps
4881e7a668
docs: update 2020-05-24 17:50:28 +03:00
Dylan Araps
c7d05235c0
kiss: Drop --strip-unneeded as it's... unneeded (This also adds compatibility for elfutils strip). 2020-05-24 17:48:42 +03:00
Dylan Araps
d1e926ddab
kiss: Drop printing strip information for the 10th time 2020-05-24 17:00:56 +03:00
Dylan Araps
c1b98b4f3b
kiss: Drop readelf dependency. 2020-05-24 16:56:30 +03:00
Dylan Araps
18c304951d
pkg_strip: Clean up 2020-05-24 11:42:56 +03:00
Dylan Araps
0c805343b0
kiss: Minor clean up 2020-05-23 10:05:19 +03:00
Dylan Araps
74ed4988c9
docs: update 2020-05-23 09:30:45 +03:00
Dylan Araps
14695e2bf8
kiss: Minor clean up 2020-05-23 09:25:41 +03:00
Dylan Araps
2c19349a09
kiss: Remove need for external sort of extension list 2020-05-22 14:00:38 +03:00
Dylan Araps
e9fbcc6f13
kiss: Simplify listing of extensions 2020-05-22 13:52:22 +03:00
Dylan Araps
368484b24a
kiss: Drop line break 2020-05-22 13:43:27 +03:00
Dylan Araps
9f162fd4d0
kiss: Final clean up of pkg_checksums() 2020-05-22 13:42:30 +03:00
Dylan Araps
e7eb498d34
kiss: Remove dead code 2020-05-22 13:41:05 +03:00
Dylan Araps
061d90fc78
kiss: Drop unneeded line 2020-05-22 13:39:31 +03:00
Dylan Araps
b5ece9e225
kiss: Further simplify pkg_checksums 2020-05-22 13:39:01 +03:00
Dylan Araps
0ca739aafb
kiss: Simplify pkg_checksums 2020-05-22 13:31:32 +03:00
Dylan Araps
426607b4fc
kiss: Remove pointless comment 2020-05-22 13:19:33 +03:00
Dylan Araps
ee8f85495c
kiss: Drop pointless strip change 2020-05-22 13:15:12 +03:00
Dylan Araps
33f9c811c6
kiss: Clean up fixdeps() 2020-05-22 13:13:22 +03:00
Dylan Araps
07cd3613db
kiss: Pass KISS_CHOICE to env 2020-05-22 12:58:55 +03:00
Dylan Araps
c154233aa4
kiss: clean up pkg_conflicts() 2020-05-22 12:53:40 +03:00
Dylan Araps
a747565ef4
kiss: Clean up fixdeps() 2020-05-22 12:40:09 +03:00
Dylan Araps
87cc8c726e Merge branch 'master' of github.com:kisslinux/kiss 2020-05-22 12:11:50 +03:00
Dylan Araps
99f4c99d78
kiss: Strip some extra sections from binaries 2020-05-22 12:11:38 +03:00
Ethan Sommer
79ae82bd30 kiss: remove non-POSIX printf * field width specifier
POSIX doesn't specify %*s for the printf command, with the rationale
that one can just put the variable there in place, do that.
2020-05-21 20:07:25 -04:00
Dylan Araps
a02ad08ba0
kiss: Revert strip change. 2020-05-21 18:06:32 +03:00
Dylan Araps
7ec23086af
kiss: Hide strip errors once again. 2020-05-21 17:36:33 +03:00
Dylan Araps
11707b7ff4
kiss: Fix minor issue. Also test bare strip 2020-05-21 17:34:35 +03:00
Dylan Araps
ddf11917f3
kiss: minor cleanups 2020-05-21 17:28:33 +03:00
Dylan Araps
1a38d4f64f
kiss: clean up 2020-05-21 11:47:13 +03:00
Dylan Araps
4fe69427b7
kiss: Clean up temp files 2020-05-21 11:42:33 +03:00
Dylan Araps
8558099bb3
kiss: Clean up 2020-05-21 11:32:32 +03:00
Dylan Araps
0c9d1b7c3b
kiss: Silently skip fixdeps() if dependencies not available 2020-05-21 11:11:10 +03:00
Dylan Araps
228e52f1ca
kiss: Silently skip stripping if dependencies aren't available. 2020-05-21 11:09:31 +03:00
Dylan Araps
eaa4f3410c
kiss: clean up 2020-05-21 11:04:48 +03:00
Dylan Araps
f6e47939d0
kiss: clean up 2020-05-21 11:03:13 +03:00
Dylan Araps
f4d061b22d
kiss: Remove duplicate removal code 2020-05-21 10:55:29 +03:00
Dylan Araps
8a6a6a6ba8
kiss: Wrap comments longer 2020-05-21 10:38:07 +03:00
Dylan Araps
d99fc72ec1
kiss: Solaris sha256 checksum support 2020-05-19 23:27:09 +03:00
Dylan Araps
622f3617a8
kiss: Added submodule support to repositories. 2020-05-19 13:22:53 +03:00
Dylan Araps
278de80b25
kiss: Fix KISS_COLOR support for help output 2020-05-19 12:55:10 +03:00
Dylan Araps
f154c427e4
kiss: Simplify argument parsing for remove/install 2020-05-19 12:47:27 +03:00
Dylan Araps
b1d54112dd
kiss: Simplify removal arg stuff 2020-05-19 12:38:54 +03:00
Dylan Araps
f5c2777787
kiss: Big cleanup of as_root() usage.
1. The same as_root() function is used for all elevation now. The
   environment can be fully controlled when calling the function.

2. Removal of mixed tabs/spaces due to heredoc fuckery thanks to
   'set -- $(cmd)'.

3. Moved file owner code to a function and added safety measure
   against non-existent UIDs.

4. Fixed bugs when generating checksums via as_root(). Permissions
   are now checked on a file basis instead of a directory one.
2020-05-19 12:28:08 +03:00
Dylan Araps
724d393bb1
kiss: minor changes 2020-05-19 10:37:30 +03:00
Dylan Araps
0abc6be41d
kiss: Drop _tar() portability function. Thanks everyone. 2020-05-18 22:55:57 +03:00
Dylan Araps
d4e6e14324
kiss: Move error supression to where the error is 2020-05-18 12:03:19 +03:00
Dylan Araps
9aa8687a98
docs: update 2020-05-18 11:45:15 +03:00
Dylan Araps
f41a014104
kiss: CRUX style usage fixes 2020-05-18 11:44:24 +03:00
Dylan Araps
d224ccad0a
docs: update 2020-05-18 10:43:09 +03:00
Dylan Araps
c55374a52b
as_root(): Strict environment.
Running a portion of the script as root will now use a stricter
environment. The root user will only inherit a small and fixed
white-list of environment variables.

- HOME/XDG_CACHE_HOME
  - To make use of the non-root user's package
    cache for the purposes of installation.

- KISS_PATH
  - To make use of the non-root user's set repositories
    during installation.

- KISS_FORCE
  - To carry over KISS_FORCE if passed as non-root.

The 'sudo' and 'su' commands were also changed to run as
"login shells". This allows environment variables to be set
solely for the root account (KISS_HOOK, etc) via '.profile' or
etc. As for 'doas', this has to happen via doas.conf.
2020-05-18 10:29:25 +03:00
Dylan Araps
e711f76296
kiss: Don't run user hook as root when sudo/doas are set to keep environment. Closes #157 2020-05-18 09:08:04 +03:00
Dylan Araps
61804b81e8
kiss: bump version 2020-05-17 10:16:24 +03:00
Dylan Araps
6fc4f9ef78
kiss: bump version 2020-05-17 10:10:56 +03:00
Dylan Araps
99f007c24f
kiss: Don't hardcode path to charset.alias 2020-05-17 09:26:00 +03:00
Dylan Araps
33b8ef33bb
docs: update 2020-05-16 19:00:44 +03:00
Dylan Araps
d98d3a02a8
kiss: minor cleanup of etcsums 2020-05-16 15:20:53 +03:00
Dylan Araps
cc0ab4d072
kiss: drop esc() 2020-05-16 09:49:05 +03:00
Dylan Araps
d0a45c4437
kiss: Drop pop() 2020-05-16 09:36:07 +03:00
Dylan Araps
a08b796f79
kiss: Minor clean up 2020-05-16 09:26:34 +03:00
Dylan Araps
507143ad21
docs: update 2020-05-16 08:18:28 +03:00
Dylan Araps
510a7c1cdb
kiss: Minor clean up 2020-05-16 08:10:37 +03:00
Dylan Araps
c666d415ba
kiss: drop unneeded check 2020-05-16 07:57:49 +03:00
Dylan Araps
9433fcd7c3
kiss: clean up 2020-05-15 10:49:42 +03:00
Dylan Araps
7b4e0439da
kiss: minor change 2020-05-15 10:37:57 +03:00
Dylan Araps
28afd9d7c5
kiss: No longer automatically pick a grep 2020-05-14 17:34:27 +03:00
Dylan Araps
de87f5b164
kiss: Minor fixes from illiliti 2020-05-14 17:17:48 +03:00
Dylan Araps
d73cb5b463
docs: update 2020-05-14 10:20:01 +03:00
Dylan Araps
1a8a43ec62
kiss: POSIX find usage. Closes #154 2020-05-14 10:18:51 +03:00
Dylan Araps
1c6dd610e4
docs: update 2020-05-13 17:48:37 +03:00
Dylan Araps
8d6e4b4ce7
kiss: Print log() messages to stderr 2020-05-13 17:44:50 +03:00
Dylan Araps
6f4bb626a5
docs: update 2020-05-13 14:11:47 +03:00
Dylan Araps
6620f5c674
kiss: Better tar compatibility 2020-05-13 14:10:28 +03:00
Dylan Araps
985068abe7
docs: update 2020-05-13 10:40:58 +03:00
Dylan Araps
9052d5cc3b
sha: Simplify function 2020-05-13 10:28:16 +03:00
Dylan Araps
b2b55e5cdb
sha: Fix issue with specific implementation and '*' 2020-05-13 10:09:55 +03:00
Dylan Araps
87c4f2afc1
kiss: Drop $tar 2020-05-13 09:45:40 +03:00
Dylan Araps
68cbb2b68d
kiss: Provide a default post-build hook 2020-05-12 13:02:40 +03:00
Dylan Araps
f095e9fb98
kiss: Added KISS_TMPDIR 2020-05-12 12:37:40 +03:00
Dylan Araps
f5d0fe0a5f
kiss: Added KISS_COLOR to control color output 2020-05-12 12:03:13 +03:00
Dylan Araps
dd825b0a14
kiss: Added ability to disable prompts 2020-05-12 11:49:27 +03:00
Dylan Araps
66cea7ce2c
docs: update 2020-05-12 11:46:14 +03:00
Dylan Araps
4cc633bc57
docs: update 2020-05-12 11:44:57 +03:00
Dylan Araps
5d370fa33a
docs: update 2020-05-12 11:41:07 +03:00
Dylan Araps
d91820834a
kiss: Log and queue post-install messages 2020-05-12 11:37:24 +03:00
Dylan Araps
7c43cceaf1
kiss: Make KISS_ROOT and alternatives work together 2020-05-12 11:13:43 +03:00
Dylan Araps
e049f468ec
kiss: Allow full rootless use via KISS_ROOT 2020-05-12 11:02:08 +03:00
Dylan Araps
f49e575b64
kiss: Don't hardcode root 2020-05-12 10:51:12 +03:00
Dylan Araps
14b54e0c61
kiss: More KISS_ROOT fixes 2020-05-12 10:50:05 +03:00
Dylan Araps
c320af4ebb
kiss: Install fixes when using KISS_ROOT 2020-05-12 10:42:54 +03:00
Dylan Araps
60b279731c
kiss: Use host cache for KISS_ROOT 2020-05-12 10:38:38 +03:00
Dylan Araps
534afc16a6
kiss: minor fixes 2020-05-12 10:36:18 +03:00
Dylan Araps
670ecb5ea9
kiss: Revert recent pkg_clean() changes 2020-05-12 10:08:54 +03:00
Dylan Araps
a6da44f5d3
kiss: Ensure deleted directories exist 2020-05-12 10:00:29 +03:00
Dylan Araps
5d731dcec3
kiss: Silently clear cache 2020-05-12 09:27:11 +03:00
Dylan Araps
c3725beaad
docs: update 2020-05-12 08:49:11 +03:00
Dylan Araps
16e40cb0fa
kiss: tarball must be full path. Closes #149' 2020-05-12 08:11:11 +03:00
Dylan Araps
970301805c
kiss: sort swap changes 2020-05-11 17:38:24 +03:00
Dylan Araps
a73b7278ac
kiss: Tar .txz support 2020-05-11 17:34:57 +03:00
Dylan Araps
cc665bf849
kiss: Don't send release to build files 2020-05-11 14:07:08 +03:00
Dylan Araps
2e2eb3c860
kiss: Fix firefox depends on firefox-bin 2020-05-11 10:26:27 +03:00
Dylan Araps
df379e835f
kiss: Make package version available to build scripts via $2 2020-05-11 10:17:33 +03:00
Dylan Araps
03c801fd66
kiss: Don't allow invalid characters via PWD 2020-05-11 09:41:37 +03:00
Dylan Araps
f42043cdce
kiss: Move shebang options to main() 2020-05-09 21:25:38 +03:00
Dylan Araps
62d038e719
kiss: Drop final install command. Thanks E5ten 2020-05-09 21:20:38 +03:00
Dylan Araps
10477f280f
kiss: Swap from install to mkdir. Thanks E5ten 2020-05-09 21:02:47 +03:00
Dylan Araps
f18a4c339d
kiss: Show warning when sources file is missing 2020-05-09 20:49:58 +03:00
Dylan Araps
3e004b193a
kiss: Support packages without sources files 2020-05-09 20:38:25 +03:00
Dylan Araps
df05ed582d
kiss: Fix typo 2020-05-09 19:39:27 +03:00
Dylan Araps
d4ac10b37b
kiss: Support a bunch of sha256 utilities. 2020-05-09 19:35:57 +03:00
Dylan Araps
29d019a56b
kiss: Drop sha256sum_sh for now 2020-05-09 19:05:23 +03:00
Dylan Araps
b415d18b9e
docs: update 2020-05-09 18:21:13 +03:00
Dylan Araps
a5d963a644
kiss: Drop readlink 2020-05-09 18:18:52 +03:00
Dylan Araps
d33360548d
docs: update 2020-05-09 12:24:15 +03:00
Dylan Araps
08eae0366a
kiss: Make ldd, readelf and strip optional 2020-05-09 12:11:40 +03:00
Dylan Araps
4dd4af5ac0
docs: update 2020-05-09 00:47:39 +03:00
Dylan Araps
ca705d8911
kiss: Fix issues with naming conflicts in source extraction 2020-05-09 00:42:39 +03:00
Dylan Araps
5bbc7f9945
kiss: Update portability comment 2020-05-08 22:21:49 +03:00
Dylan Araps
104c54b10a
kiss: Fix typos 2020-05-08 22:19:06 +03:00
Dylan Araps
8cab612d2f
kiss: Fix trailing white-space 2020-05-08 22:15:16 +03:00
Dylan Araps
bbb1873f6e
kiss: Full tar portability. Closes #143 2020-05-08 22:12:27 +03:00
Dylan Araps
0c2893b9dc
kiss: Split KISS_PATH/PATH usage 2020-05-08 18:48:16 +03:00
Dylan Araps
4fa90584b5
kiss: bump version 2020-05-08 11:22:02 +03:00
Dylan Araps
cffaaa63a0
kiss: Remove forgotten cache file 2020-05-08 11:12:27 +03:00
Dylan Araps
c3ead91f81
kiss: bump to 1.13.3 2020-05-07 18:18:34 +03:00
Dylan Araps
caeb6a6d08
kiss: lzip support 2020-05-07 18:17:12 +03:00
Dylan Araps
407a6b722b
kiss: lz is lzip, not lzma 2020-05-07 17:25:35 +03:00
Dylan Araps
bd28b306a2
kiss: bump to 1.13.2 2020-05-07 17:18:20 +03:00
Dylan Araps
754cb72ec8
kiss: Sort compression methods 2020-05-07 16:25:53 +03:00
Dylan Araps
931b2e13f3
kiss: Added lzma support to sources and tarballs 2020-05-07 16:25:18 +03:00
Dylan Araps
6415605174
kiss: Fix error messages 2020-05-07 14:46:50 +03:00
Dylan Araps
69a4a5d255
kiss: bump version 2020-05-07 14:42:52 +03:00
Dylan Araps
c72a6c34db
kiss: Fix openssl sha256sum fallback 2020-05-07 14:42:27 +03:00
Dylan Araps
8a51e76de9
kiss: Fix /etc/ handling bug.
The shell implementations of readlink and sha256sum were being
used always (instead of as a fallback). This commit ensures that
the real utilities are used where possible.

This also means that there is a bug in the openssl fallback of
sha256sum which will be fixed in the following commit.
2020-05-07 14:39:44 +03:00
Dylan Araps
7df8acc0f1
kiss: Faster conflict resolution. 2020-05-06 22:31:54 +03:00
Dylan Araps
e0a44771de
kiss: bump version 2020-05-06 00:51:18 +03:00
Dylan Araps
1c31b264df
kiss: support uncompressed tar archives 2020-05-06 00:48:11 +03:00
Dylan Araps
1933a19e10
kiss: Drop tar's p flag as it's not needed. 2020-05-05 23:08:14 +03:00
Dylan Araps
f10cdb1938
kiss: readlink(), run in subshell 2020-05-02 10:00:59 +03:00
Dylan Araps
881c6114b9
docs: update 2020-05-01 23:44:19 +03:00
Dylan Araps
1712618765
kiss: Remove trailing white-space 2020-05-01 19:26:36 +03:00
Dylan Araps
3cbcab11f3
kiss: Portable shasums 2020-05-01 09:47:01 +03:00
Dylan Araps
99025df126
kiss: Swap back to sha256sum 2020-04-30 19:57:38 +03:00
Dylan Araps
8d2f470295
kiss: Various portability fixes.
- Added POSIX shell implementation of the 'readlink' utility for
  use _only_ when the 'readlink' utility is not available.

- Made tar usage more portable. All that is left now is the removal
  of --strip-components 1 for full (presumed) portability.

- Swapped from sha256sum to shasum as it's more portable. This is
  still not a full solution.

Here's a checklist of where we currently are:

POSIX Core utilities (depends coreutils)
- [x] sh        (POSIX)
- [x] find      (POSIX) -type f, -type d, -exec {} [+;], -o, -print, !
- [x] ls        (POSIX) -l, -d
- [x] sed       (POSIX) -n, s/<search>/<replace>/g, /<delete>/d
- [x] grep      (POSIX) -l, -F, -x, -f, -q, -v
- [x] sort      (POSIX) -r, -u, -k
- [x] tee       (POSIX)
- [x] date      (POSIX)
- [x] mkdir     (POSIX) -p
- [x] rm        (POSIX) -f, -r
- [x] rmdir     (POSIX)
- [x] cp        (POSIX) -f, -P, -p, -L, -R
- [x] mv        (POSIX) -f
- [x] chown     (POSIX) -h
- [x] diff      (POSIX) -U

BSD utilities
- [x] install   (BSD, not POSIX) (still portable) -o, -g, -m, -d

Misc
- [x] readlink  (NOT POSIX) (fallback shell implementation)
- [x] su*       (sudo, doas, su) (in order, optional)
- [x] git       (downloads from git) (must link to curl)

Compiler/libc utilities (depends cc & libc)
- [x] readelf   (Part of compiler toolchain) (GNU, LLVM or elfutils)
- [x] strip     (Part of compiler toolchain) (GNU, LLVM or elfutils)
- [x] ldd       (Part of libc)

Tarball compression
- [ ] tar       (must have --strip-components) (busybox, GNU, libarchive))
- [x] bzip2     (widely used) -d, -z
- [x] xz        (widely used) -d, -z, -c, -T
- [x] gzip      (widely used) -d, -6
- [x] zstd      (optional)    -d, -z, -c
- [x] unzip     (optional)
- [ ] shasum    (checksums) (NO standard. Portable across Linux/BSD)
2020-04-30 19:38:37 +03:00
Dylan Araps
3e4e38d002
kiss: Swap to more portable shasum generation 2020-04-30 17:17:41 +03:00
Dylan Araps
62ee15db43
kiss: Use diff instead of cmp 2020-04-30 16:59:25 +03:00
Dylan Araps
400bc8e83e
kiss: Add message for checksums 2020-04-29 16:22:57 +03:00
Dylan Araps
1ad4076c0d
docs: update 2020-04-29 10:12:55 +03:00
Dylan Araps
23c0278f5b
kiss: Use mak_dir to store the file 2020-04-29 10:12:09 +03:00
dylan
5f00b925c8
Merge pull request #141 from E5ten/posix-sed
kiss: replace sed -i with redirection to a temp file
2020-04-29 10:05:16 +03:00
Dylan Araps
79f6f30e8b
kiss: Use war() for other warnings 2020-04-28 18:40:59 +03:00
Dylan Araps
888e9e06d5
kiss: Add print function for warnings 2020-04-28 18:36:53 +03:00
Dylan Araps
1a89e0b0a2
kiss: warn if package only exists in /var/db/kiss/installed 2020-04-28 18:30:57 +03:00
Ethan Sommer
be793fb1f7 kiss: replace sed -i with redirection to a temp file 2020-04-28 02:18:36 -04:00
Dylan Araps
d46bbf517d
kiss: swap to rm instead of unlink 2020-04-28 08:39:59 +03:00
Dylan Araps
d0100b03a1
kiss: Swap to ls -l instead of stat 2020-04-28 07:43:54 +03:00
Dylan Araps
278c222902
kiss: Swap to ls -l for user name 2020-04-28 06:26:36 +03:00
Dylan Araps
4e196bb09c
kiss: Fix directory permissions 2020-04-26 11:00:28 +03:00
Dylan Araps
adc4c99a19
kiss: Add back die 2020-04-26 09:29:48 +03:00
dylan
d7e251ef02
Merge branch 'master' into kiss-fix-cd 2020-04-26 09:06:41 +03:00
Cliford Sab
7b6ed9bafd kiss: Use suggested primary 2020-04-26 10:38:16 +08:00
Cliford Sab
7e3f208199 kiss: Actually hide an error + whitespace cleanup 2020-04-26 10:31:09 +08:00
Dylan Araps
d4a82ec0f1
docs: update 2020-04-25 14:03:51 +03:00
Dylan Araps
6bc7deb64b
kiss: Add support for KISS_ROOT to install 2020-04-25 14:03:34 +03:00
Dylan Araps
da605670e0
kiss: look in / 2020-04-25 14:01:05 +03:00
Dylan Araps
1b30642474
kiss: Add case for symlinks which would overwrite a dir 2020-04-25 13:58:51 +03:00
Dylan Araps
83b097bef8
docs: update 2020-04-25 09:56:01 +03:00
Dylan Araps
56a63c4742
Merge branch 'master' of github.com:kisslinux/kiss 2020-04-25 09:01:25 +03:00
Dylan Araps
d66ba59b01
kiss: Silent stripping once again 2020-04-25 08:59:44 +03:00
Cliford Sab
f059e16494 kiss: Cleanup 2020-04-24 16:41:32 +08:00
Dylan Araps
e924bb2ec2
kiss: More portable cp flags 2020-04-22 20:08:47 +03:00
Dylan Araps
132ce20099
kiss: Use pkg_manifest to properly update manifest files 2020-04-22 20:03:39 +03:00
Dylan Araps
40d57d4948
kiss: Clean up install 2020-04-22 19:35:17 +03:00
Dylan Araps
8a4c642d4b
kiss: Use install for installation 2020-04-22 19:29:55 +03:00
Dylan Araps
6ce01392bd
kiss: Use sort to reverse the manifest 2020-04-22 17:51:42 +03:00
Dylan Araps
6f31468c94
kiss: Fix symlink permissions bug 2020-04-22 17:47:13 +03:00
Dylan Araps
16097a5b98
kiss: oops 2020-04-22 17:42:57 +03:00
Dylan Araps
f2f2f643f2
kiss: Fix broken symlink handling (runit stuff) 2020-04-22 17:32:08 +03:00
Dylan Araps
285b271dee
kiss: ensure that the owner actually exists 2020-04-22 15:02:28 +03:00
dylan
93ea92ee8e
Merge pull request #136 from kisslinux/no_rsync
kiss: Drop rsync
2020-04-22 14:13:02 +03:00
Dylan Araps
b271605467
kiss: Add KISS_FORCE to bypass manifest checks. Fix bug in manifest checker 2020-04-22 14:00:40 +03:00
Dylan Araps
57e27f73cc
kiss: Set permissions for all non dirs 2020-04-22 13:50:02 +03:00
Dylan Araps
c542169997
kiss: Add install output 2020-04-22 09:37:46 +03:00
Dylan Araps
33cdc64803
kiss: Add comments to new install function 2020-04-22 09:23:19 +03:00
Dylan Araps
6e3064d0f8
kiss: Remove func subshell use 2020-04-22 09:18:12 +03:00
Dylan Araps
c8029d6a71
kiss: Move new install method to function 2020-04-22 09:06:43 +03:00
Dylan Araps
8a49cd6911
kiss: Skip /etc/ 2020-04-22 08:48:16 +03:00
Dylan Araps
776c3f5590
kiss: Drop rsync 2020-04-22 08:41:59 +03:00
Dylan Araps
80f50ca20b
kiss: Abort install if file missing in manifest 2020-04-22 07:45:58 +03:00
Dylan Araps
e67bb8e6b8
kiss: Fix shellcheck 2020-04-21 13:05:28 +03:00
Dylan Araps
9ace6a1b83
kiss: Fix IFS fix 2020-04-20 12:14:25 +03:00
Dylan Araps
c13a48dec2
kiss: minor fixes 2020-04-20 11:07:48 +03:00
Dylan Araps
27e1a65b2b
kiss: Add back LANG=C 2020-04-20 09:56:20 +03:00
Dylan Araps
dc9f40b517
kiss: Fix dumb test 2020-04-20 09:29:53 +03:00
Dylan Araps
fa86269ae5
kiss: Drop LANG= 2020-04-20 09:28:27 +03:00
Dylan Araps
b80df1a12e
kiss: Drop old_ifs 2020-04-20 09:27:57 +03:00
Dylan Araps
1d15a04fe1
docs: update 2020-04-20 09:05:19 +03:00
Dylan Araps
26599066ce
kiss: Smaller ternary 2020-04-20 08:59:13 +03:00
Dylan Araps
0e367daf53
kiss: Case remove UB 2020-04-20 08:58:25 +03:00
Cem Keylan
866860eac7 kiss: use '-x' and '-d' flags in pkg_find instead of '-e'
'-e' flag applies to everything that exists, which is not ideal.
This can, for example, also show README files on personal repositories.
Since our target is user-scripts and package directories, checking
if the target is executable is the best overall solutions as most
directories are also marked executable. This change makes sure we
get what we want while keeping other files out of pkg_find.

Signed-off-by: Dylan Araps <dylan.araps@gmail.com>
2020-04-20 08:55:12 +03:00
Cem Keylan
df6c55e439 Reset arguments on 'kiss help' function
This removes the previous arguments when calling kiss help so that
they are not listed as extensions. This is not a big issue, but
someone can type

    kiss help please

and 'please' would be shown as an available extension.

Signed-off-by: Dylan Araps <dylan.araps@gmail.com>
2020-04-20 08:54:46 +03:00
Dylan Araps
772f6beae3
docs: update 2020-04-19 16:51:30 +03:00
Dylan Araps
3b73381613
kiss: Swap back to prior search behavior 2020-04-19 16:51:01 +03:00
Cem Keylan
65d2d45a8c kiss: fix checksum mistake when checksums file doesn't exist.
If the checksums file doesn't exist on the package directory, kiss
used as_root regardless of permissions. This checks whether the directory
is writable instead of the checksums file, which should provide proper
permissions.

This patch ignores if the directory has weird permissions. If the
directory is writable but the checksums file isn't, kiss will exit
with error. This ignorance is intentional as ideally a package dir
should have identical permissions.

Signed-off-by: Dylan Araps <dylan.araps@gmail.com>
2020-04-19 15:00:19 +03:00
Dylan Araps
ad79c6ea7e
kiss: Fix comment 2020-04-19 09:29:26 +03:00
dylan
7c7aa83710
Merge pull request #135 from clifordsab/kiss-fix-diff
kiss: pkg_fixdeps(): Make diff work across diff-erent implementations
2020-04-18 15:51:25 +03:00
Cliford Sab
36568ec045 kiss: pkg_fixdeps(): More portable diff 2020-04-18 17:57:30 +08:00
Dylan Araps
bcbdd99e5c
kiss: Allow partial matches for extensions.
It is now possible to do 'kiss f' instead of 'kiss fork' to give
a simple example. In the case where there is a conflict in single
lettering, the first match will be used.

This extends to 'kiss fo', 'kiss for' and so on.
2020-04-18 12:48:48 +03:00
Dylan Araps
6786d2ca0a
kiss: Unify usage outputs for all contrib scripts.
Seeing as how these utilities are now better integrated,
more effort should go into the overall interface between
what should be the "benchmark" or example kiss scripts.
2020-04-18 12:11:56 +03:00
Dylan Araps
fdf2775640
kiss: Integrate with user scripts.
kiss' help output will now include all executables found in $PATH
which begin with kiss-*. A comment string is optionally usable via
setting the second line of the script to a string.

Example:

...

This also means that 'kiss <script name>' is also possible now.
If I have a script in my $PATH called kiss-depends, I can now use
it via kiss with 'kiss depends'.
2020-04-18 11:39:37 +03:00
Dylan Araps
afda171053
kiss: Supress error in pkg_install() as we have our own 2020-04-18 10:26:29 +03:00
Dylan Araps
75c9785d39
kiss: Rationale for installation process.
People seem to have the odd belief that little to no thought has
gone into the installation process of the package manager. The
reality is of course the opposite.

This commit adds comments to the pkg_install() function hopefully
giving insight into _why_ it works as it does.

Additional rationale for rsync is that it allowed us to drop
fakeroot from the repositories and package system entirely.
2020-04-18 10:21:33 +03:00
Dylan Araps
8fef13c48b
kiss: Squish build to match its size. 2020-04-18 09:56:21 +03:00
Dylan Araps
764c21426f
kiss: Make 'kiss s' usage saner for scripting.
Changes 'kiss s' to only show the first match if run from a
subshell. Here's a simple example:

-> kiss s zlib
/home/dylan/projects/repo/core/zlib
/var/db/kiss/installed/zlib
-> echo $(kiss s zlib)
/home/dylan/projects/repo/core/zlib
->
2020-04-18 09:54:05 +03:00
Dylan Araps
21caebdfc5
kiss: Hide read error message as we have our own 2020-04-18 09:39:34 +03:00
Dylan Araps
1c059e8139
kiss: Elevate permissions if needed during checksum generation.
This simply modifies as_root() to allow running commands as any
given user and generates checksums according to the owner of the
checksums file and the current user's write permissions.
2020-04-18 09:35:38 +03:00
Dylan Araps
4e7184e20c
kiss: fixdeps(), remove depends file if empty 2020-04-16 08:31:26 +03:00
Dylan Araps
bb9293c629
kiss: Fix shellcheck 2020-04-15 16:13:33 +03:00
Cem Keylan
a0f0b8b5ad kiss: fix possible KISS_ROOT usage
If the user defines KISS_ROOT to / or anything that ends
with '/', some functions will not work as intended (like fixdeps).
This removes the '/' at the very end, if it exists.

Signed-off-by: Dylan Araps <dylan.araps@gmail.com>
2020-04-15 16:08:20 +03:00
Dylan Araps
a6b79b79da
kiss: Ignore llvm in fixdeps. (May revert) 2020-04-15 10:38:18 +03:00
Dylan Araps
6ce63764cb
kiss: bump version 2020-04-15 12:02:12 +03:00
Dylan Araps
f9c0533280
kiss: Fix fixdeps() bugs. Closes #132 2020-04-15 11:58:01 +03:00
Dylan Araps
acb9398f62
kiss: Support CRUX-like usage 2020-04-15 08:39:03 +00:00
Dylan Araps
f11b6e39b6
kiss: zip source support. Closes #133 2020-04-14 14:52:39 +00:00
Dylan Araps
12f717265c
kiss: Fix removal bug. Closes #131 2020-04-14 14:48:36 +00:00
Dylan Araps
2f545dda68
kiss: Fix KISS_ROOT bug. Closes #130 2020-04-14 14:44:05 +00:00
Dylan Araps
041d8906c7
docs: update 2020-03-30 10:54:44 +03:00
Dylan Araps
9186e2105d
kiss: Follow symlinks when detecting dependencies 2020-03-30 10:53:56 +03:00
Dylan Araps
55c2de2af8
kiss: Fix update bug 2020-03-29 10:08:08 +03:00
Dylan Araps
f1d1ba204c
docs: update 2020-03-28 10:15:32 +02:00
Dylan Araps
c57210a71b
kiss: nitpick 2020-03-26 15:00:29 +02:00
Dylan Araps
8210e660a1
kiss: nitpicks 2020-03-26 14:53:03 +02:00
Dylan Araps
759dc1081a
kiss: Minor nitpicks 2020-03-26 12:45:22 +02:00
Dylan Araps
be5d87b3ff
kiss: Force C locale 2020-03-26 12:21:57 +02:00
Dylan Araps
1f9ab42fd6
kiss: Clean up pkg_remove 2020-03-26 12:15:05 +02:00
Dylan Araps
d3b988300a
kiss: Clean up leftover cache entries 2020-03-26 11:30:30 +02:00
Dylan Araps
0d5499f7b8
kiss: fixdeps clean up 2020-03-25 17:36:13 +02:00
Dylan Araps
4ff149bcd5
kiss: Remove newline 2020-03-25 17:22:06 +02:00
Dylan Araps
0fb84cccec
kiss: Clean up 2020-03-25 17:14:44 +02:00
Dylan Araps
8f111e0fc1
kiss: Clean up 2020-03-25 17:03:06 +02:00
Dylan Araps
f1b551db4e
kiss: Minor nitpicks 2020-03-25 13:11:22 +02:00
Dylan Araps
64d0ef3f90
kiss: Minor change 2020-03-25 12:36:55 +02:00
Dylan Araps
09fa052fe2
kiss: Move etc handling to function 2020-03-25 12:21:10 +02:00
Dylan Araps
58b0272574
kiss: Minor changes 2020-03-25 11:59:15 +02:00
Dylan Araps
c84472e531
kiss: simplify 2020-03-23 13:04:45 +02:00
Dylan Araps
d4d01a5512
kiss: Show context when using fixdeps 2020-03-23 12:45:51 +02:00
Dylan Araps
811808f881
kiss: simplify fixdeps 2020-03-23 12:40:38 +02:00
Dylan Araps
7f22697bdc
kiss: simplify 2020-03-23 12:05:54 +02:00
Dylan Araps
2db59e03db
kiss: simplify 2020-03-23 11:41:32 +02:00
Dylan Araps
44c6050a39
kiss: Simplfy pkg_find usage 2020-03-22 16:32:05 +02:00
Dylan Araps
3990e34dc0
kiss: Squish alternatives list 2020-03-22 16:26:08 +02:00
Dylan Araps
a2e36ead63
docs: update 2020-03-22 14:49:06 +02:00
Dylan Araps
d01ffde93c
kiss: zstd support 2020-03-22 14:46:38 +02:00
Dylan Araps
c570d24086
kiss: clean up 2020-03-21 13:54:48 +02:00
Dylan Araps
625d5f6855
kiss: Drop semi-colons 2020-03-21 13:48:05 +02:00
Dylan Araps
c19a20b32c
kiss: lint packages sooner 2020-03-21 13:44:43 +02:00
Dylan Araps
beee6c07f2
kiss: Squish some things together 2020-03-21 13:35:43 +02:00
Dylan Araps
e9bbe7be3e
kiss: Move error 2020-03-21 13:29:56 +02:00
Dylan Araps
2cf5b74c9b
docs: update 2020-03-17 10:14:56 +02:00
Dylan Araps
a2ad91ccb7
kiss: Fix #125 2020-03-17 10:12:43 +02:00
Dylan Araps
cb1f16a282
docs: update 2020-03-15 14:26:55 +02:00
Dylan Araps
fb319ef3c2
docs: update 2020-03-15 14:25:10 +02:00
Dylan Araps
0b4b4ddcd8
kiss: Tar changes.
- Sped up conflict resolution by removing a tar call.
- More portable tar usage in source extraction.
- The same decompressor detection is now used when
  extracting sources.
2020-03-15 14:15:32 +02:00
Dylan Araps
024cab7fb8
kiss: Keep default compression as gz 2020-03-15 13:04:35 +02:00
Dylan Araps
ad9cda2e34
kiss: Configurable and dynamic tarball compression.
This allows you to swap between gzip and xz compression via
the new environment variable ('KISS_COMPRESS'). As of this
commit, new builds will use xz compression (making use of
all cores on the machine).

Other compression methods can easily be added by adding two
simple lines to the script. Your existing package cache will
continue to be used as the package manager will use whatever
tarball is available (for the package and version it is
looking for).
2020-03-15 12:50:49 +02:00
Dylan Araps
1c3ede992e
docs: update 2020-03-13 16:01:19 +02:00
Dylan Araps
f590b5bc73
kiss: Revert build change. Needs more thought 2020-03-13 15:18:04 +02:00
Dylan Araps
58f5819af2
kiss: Allow hooks to modify build files 2020-03-13 13:01:13 +02:00
Dylan Araps
52893958d0
kiss: Added post-install hook 2020-03-13 11:37:28 +02:00
Dylan Araps
ba59821bb8
docs: update 2020-03-12 17:00:53 +02:00