Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/waldirborbajr/glink
glink - GOLang symlink manager
https://github.com/waldirborbajr/glink
Last synced: about 2 months ago
JSON representation
glink - GOLang symlink manager
- Host: GitHub
- URL: https://github.com/waldirborbajr/glink
- Owner: waldirborbajr
- License: mit
- Created: 2024-02-26T02:39:04.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2024-05-27T19:32:49.000Z (8 months ago)
- Last Synced: 2024-06-21T14:28:59.193Z (7 months ago)
- Language: Go
- Size: 128 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
glink - GOLang symlink manager
**BETA:** This project is in active development. Please check out the issues and contribute if you're interested in helping out.
## glink
`tl;dr:` `glink`, a.k.a GOlang Symbolic Link (symlink), is an open-source software built-in with the main aim of being a personal alternative to **GNU Stow**.As `GNU Stow`, `glink` is a symlink farm manager which takes distinct packages of software and/or data located in separate directories on the filesystem, and makes them appear to be installed in the same place.
With `glink` it is eeasy to track and manage configuration files in the user's home directory, especially when coupled with version control systems.
## How to install
### Homebrew
To install glink, run the following [homebrew](https://brew.sh/) command:
```sh
brew install waldirborbajr/glink/glink
```### Go
Alternatively, you can install glink using Go's go install command:
```sh
go install github.com/waldirborbajr/glink@latest
```This will download and install the latest version of glink. Make sure that your Go environment is properly set up.
**Note:** Do you want this on another package manager? [Create an issue](https://github.com/waldirborbajr/glink/issues/new) and let me know!
## How to use
The main goal of `glink` is to be as simple as that, `easy peasy lemon squeezy`, with few commands and straight to the target.
```sh
# To create a link to $HOMR
glink l# To force overwrite existing link : **TODO** not implemented
glink f -f# To remove (kill) all symblinks : **TODO** not implemented
glink k# To remove a specific symblinks : **TODO** not implemented
glink r symlink-name# To print all symlink created : **TODO** not implemented
glink p
```## .glink-ignore`
You can add files/directories to ignore list, so when execute `glink` the content will no be linked.
```sh
touch .glink-ignore
```## Contributing to glink
If you are interested in contributing to `glink`, we would love to have your help! You can start by checking out the [ open issues ](https://github.com/waldirborbajr/glink/issues) on our GitHub repository to see if there is anything you can help with. You can also suggest new features or feel free to create a new feature by opening a new issue.
To contribute code to `glink`, you will need to fork the repository and create a new branch for your changes. Once you have made your changes, you can submit a pull request for them to be reviewed and merged into the main codebase.
## Contributors
Made with [contrib.rocks](https://contrib.rocks).