# giteaDo

Perform basic reposirory related operations on a gitea instance

In order to use it for your own account you first have to create one over any gitea instance and create an access token according to the documentation [here](https://docs.gitea.io/en-us/api-usage/)

You should also download and configure [pass](https://www.passwordstore.org/) for a more secure token management although if you want to, you can just paste the plaintext token in the code

For convenience if you choose the right option you can watch [this](https://www.youtube.com/watch?v=sVkURNfxPd4) excellent tutorial by [Luke Smith](https://www.youtube.com/c/LukeSmithxyz)

## Installation

```
git clone https://git.konsthol.eu/konsthol/giteaDo
cd giteaDo
sudo cp giteaDo /usr/bin/
(Or cp giteaDo anywhere in your $PATH)
```

## Usage

`giteaDo [-h|-c|-i|-d|-l]`

> you can have many options in one run such as giteaDo -h -l -d

To get a help menu

```sh
giteaDo -h|--help
```

To create a new repository

```sh
giteaDo -c|--create
```

To create a new repository in current folder with a random commit message

If you don't want it to be random just change the message in something like "Initial commit"

```sh
giteaDo -i|--instant
```

To delete existing repository

```sh
giteaDo -d|--delete
```

To list all owned repositories

```sh
giteaDo -l|--list
```

## Screenshots

![](./assets/pic-window-02-05-22_00-47-10.png)

![](./assets/pic-window-02-05-22_00-47-24.png)

![](./assets/pic-window-02-05-22_00-47-40.png)

## Dependencies

* curl
* awk
* rofi (Optional, copy paste the read lines to have to type the name)
* fzf (Optional, for ssh connections)
* pass (Optional, paste plaintext token if you don't care about security)
* sed
* jq
* grep
* cat

## Credits go to 

* [Gitea](https://gitea.io/en-us/)

For being an awesome service and because this script uses their api to function

