Multipurpose shell scripts and dotfiles
Go to file
2023-02-01 22:30:10 +08:00
dotfiles Merge branch 'master' of git.axenov.dev:anthony/my-env 2022-12-10 21:59:53 +08:00
install Merge branch 'master' of git.axenov.dev:anthony/my-env 2023-02-01 22:30:10 +08:00
packs Revert "Descriptions parsing improved" (c1150af9) + php tools fixes 2022-12-28 15:20:25 +08:00
tools ytdlcue fixes 2022-10-09 13:23:20 +08:00
uninstall vivaldi uninstall 2023-02-01 22:29:23 +08:00
upgrade Makefile generation improved 2022-08-26 08:25:55 +08:00
.editorconfig editorconfig 2022-08-19 20:57:45 +08:00
.gitignore inotifywait-cp 2022-09-28 07:41:07 +08:00
gen-makefile Revert "Descriptions parsing improved" (c1150af9) + php tools fixes 2022-12-28 15:20:25 +08:00
LICENSE Small fixes + WTFPLv2 2022-07-04 23:53:39 +08:00
Makefile Merge branch 'master' of git.axenov.dev:anthony/my-env 2023-02-01 22:30:10 +08:00
README.md Revert "Descriptions parsing improved" (c1150af9) + php tools fixes 2022-12-28 15:20:25 +08:00

My Ubuntu environment

make-ready bunch of scripts for easily installation of different software.

Requirements

  • Ubuntu >= 20.04 (not tested with version < 20)
  • bash, zsh or other sh-compatible shell
  • make (optional but recommended)
  • wget (necessary for some scripts)
  • git (necessary for some scripts)

If some dependecies are missed for some of these scripts it is enougth to run ./install/apt in most cases.

Usage

# if git is installed
git clone git@git.axenov.dev:anthony/my-env.git --depth=1

# if git is not installed
wget -qO - https://git.axenov.dev/anthony/my-env/archive/master.tar.gz | tar -zxf -

# switch to repo dir
cd my-env

# generate fresh ./Makefile and get full list of `make` goals
./gen-makefile

# get full list of `make` goals
make

Selective straightforward installation

# from remote file (you can meet interaction bugs this way!)
wget -qO - https://git.axenov.dev/anthony/my-env/raw/branch/master/install/apt | bash

# from locally cloned repo (except scripts from ./packs)
./install/apt

How to add my script?

  1. Create a new shell script in ./install, ./upgrade or ./uninstall directory.
    At the beggining of a file you must write these two lines:
    #!/bin/bash
    ##makedesc: Your description for Makefile
    
  2. Make this script executable, e.g.:
    sudo chmod a+x ./install/myscript
    
  3. Test your script
  4. Run make self to generate new ./Makefile

How to create a pack?

You can create new file inside ./packs dir.

Syntax is same as classic makefile. It is important to add a comment with short description:

##mypack1: Pack description
mypack1: goal1 goal2 goalX ...
   ...

##mypackX: Pack description
mypackX: goalA goalB
   @cp file1 file2
   ...
...

where:

  • mypack* is the pack name
  • goal* are script names in ./install

TODO

License

WTFPLv2