My Ubuntu environment
 
 
Go to file
Anthony Axenov 2c9af9b1c5
editorconfig
2022-08-19 20:57:45 +08:00
install ntfy 2022-07-21 22:04:08 +08:00
packs php + composer pack and fixes 2022-07-12 23:20:11 +08:00
tools Scripts -> tools + fresh backup script 2022-07-10 14:42:40 +08:00
.dockerignore Initial docker sandbox 2022-07-04 23:25:31 +08:00
.editorconfig editorconfig 2022-08-19 20:57:45 +08:00
.gitignore Makefile instead of start.sh + generator 2022-07-04 17:56:45 +08:00
Dockerfile Initial docker sandbox 2022-07-04 23:25:31 +08:00
LICENSE Small fixes + WTFPLv2 2022-07-04 23:53:39 +08:00
Makefile php + canon ppa 2022-07-15 22:59:45 +08:00
README.md Small updates 2022-07-05 10:53:41 +08:00
gen-makefile Small updates 2022-07-05 10:53:41 +08:00

README.md

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 help

I do not recommend to run make without arguments since then ALL goals will be started in their order.

Use make help to look around.

Selective straightforward installation

# from remote file
wget -qO - https://git.axenov.dev/anthony/my-env/raw/branch/master/install/apt | bash

# from locally cloned repo
./install/apt

How to add a new software script?

  1. Create new ./install/* script.
    At the beggining of a file you must write these two lines:
    #!/bin/bash
    ##makedesc: Your description for Makefile
    
  2. Test your script
  3. Run ./gen-makefile to generate new ./Makefile

How to create packs?

You can create new file inside ./packs dir.

Syntax is same as classic makefile with one important and necessary addition -- a comment started with ##:

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

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

where:

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

Note that this is almost useless way to test since you'll meet errors in many cases because dockerized OS is not fully-functional and will never be.

You can use docker to test something really simple, e.g. to check general script steps or install cli tools.

In other cases you need virtualized Ubuntu instead of dockerized one, so I strongly recommend you to use VirtualBox or your host machine.

# switch to repo dir
cd my-env

# build and run container 
docker build -t myenv . && docker run -it myenv

# or oneliner
docker run -it $(docker build -q .)

Now you can play around with scripts.

TODO

License

WTFPLv2