Compare commits

..

No commits in common. "58d4643523e766b6b93535bbbbf3f3bda8637b01" and "13aefb37d8853b067078c579c0bf13ade788e810" have entirely different histories.

18 changed files with 19 additions and 31 deletions

View file

@ -163,7 +163,7 @@ and ideas that need to be fleshed out.
-> currently implemented with `depends_HANDLER` files
### Planned
- detection mechanism for handler features
- detection mechanism for handlers and features
(e.g. batch-install support)
- Ability to use multiple repos, including remote ones
- Cope with missing versions in repositories of older OS versions
@ -171,22 +171,21 @@ and ideas that need to be fleshed out.
- helper/hook for adding packages to groups upon install
(at least for `pacman`)
- log installs for reuse
- Log Installs for reuse
### Issues
- Homebrew for Mac - partially implemented but resolution not working (e.g. docker automatically installing brew first)
### TODOs
- Somehow installing doom emacs has a dependency tree resolution issue
- Debug corner cases: Not working on Windows when run as Admin
- Handler preparation - update repos and cache last update time in /tmp
- Handler for downloaded scripts (e.g. passff-host, funkwhale)
- Enable services after install, e.g. syncthing and docker
#### Windows Offline Flow
#### Windows Flow
- Install choco and git offline
- Run in git bash
- TODO: Use choco-offline sources
### Flow v2
### Flow
This is a revamped concept
that would ease setting up new devices with different systems
by adding a mapping of functions to applications
@ -223,7 +222,7 @@ but the details still need to be fleshed out.
such as `yay` for arch and aur
+ how about `providers/<handler>/<provider>[_<ext>]`?
Same duplication issue, now spread out...
+ underscore extension might be superfluous through that, since `ext` was somewhat a proxy for a proper `provider` configuration
+ underscore extension might be superfluous through that, since `ext` was somewhat a proxy for a proper `provider` configuraion
- Use system subdirectories for handlers and groups,
which are used by default when system is detected
@ -246,7 +245,11 @@ but the details still need to be fleshed out.
- portable: base but with packages for installations on removable media
## Related Projects
### Handlers
...
## Notable Projects
- another universal package manager,
but without affecting the system:

View file

@ -1 +0,0 @@
docker

View file

@ -1,4 +1,2 @@
auto-cpufreq
tlp
fw-ectool-git
inputmodule-control

View file

@ -4,4 +4,3 @@ android-fs
android-tools
aafm-git
libguestfs
ifuse

View file

@ -15,10 +15,9 @@ export dir_home="$(dirname $(find "$INSTALEE_HOME" \
-maxdepth 1 -name "handlers.available*" 2>/dev/null | head -1))"
handlersfile="$dir_home/handlers.available"
dir_packages="$dir_home/packages"
which tac || alias tac="tail -r"
highlight() { ${2:-echo} "$1" >&2; }
destress() { ${2:-echo} "$1" >&2; }
highlight() { echo $2 "$1" >&2; }
destress() { echo $2 "$1" >&2; }
listhandlers() {
(
@ -99,7 +98,7 @@ installpkg() {
pkg_entry="$(find "$handler" -name "install") $1"
fi
else
destress " running unhandled" printf
destress " running unhandled" -n
fi
destress " $pkg_entry"
$pkg_entry
@ -194,9 +193,9 @@ if ! test -f "$handlersfile"
then
copy="$(case "$(uname)" in
(MINGW64*) echo "$dir_home/handlers.available.windows";;
(Darwin) echo "$dir_home/handlers.available.mac";;
(*) os="$({ cat /etc/os-release | grep -E '^ID(_LIKE)?=' || lsb_release -s -i; })" &&
ls "$dir_home/$(echo "$os" | tr 'A-Z' 'a-z' | cut -d= -f2 | sed 's/^/handlers.available./' | paste -d' ' -s)" 2>/dev/null | head -1;;
(DARWIN) echo "$dir_home/handlers.available.mac";;
(*) ls "$dir_home/$({ cat /etc/os-release | grep -E '^ID(_LIKE)?=' | cut -d= -f2 | grep . || lsb_release -s -i | tr 'A-Z' 'a-z'; } |
sed 's/^/handlers.available./' | paste -d' ' -s)" 2>/dev/null | head -1;;
esac)" &&
test -n "$copy" &&
echo "Bootstrapping available handlers from $copy" &&

View file

@ -1,2 +0,0 @@
#!/bin/bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

View file

@ -1 +0,0 @@
docker calima

View file

@ -1,4 +1,4 @@
#!/bin/sh
emacsd="${XDG_CONFIG_HOME:-$HOME/.config}/emacs"
git clone https://github.com/hlissner/doom-emacs "$emacsd"
$(command unbuffer) "$emacsd/bin/doom" --force install --env --no-hooks --install | head -19
unbuffer "$emacsd/bin/doom" --force install --env --no-hooks --install | head -19

View file

@ -1 +0,0 @@

View file

@ -1 +0,0 @@

View file

@ -1 +0,0 @@

View file

@ -1 +0,0 @@

View file

View file

@ -1,3 +0,0 @@
#!/bin/sh
# https://www.rust-lang.org/tools/install
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

View file

@ -1,3 +1,3 @@
#!/bin/sh -ex
gpg --keyserver keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
curl -sSL https://get.rvm.io | bash -s stable
\curl -sSL https://get.rvm.io | bash -s stable