https://github.com/thin-edge/tedge-rpm-plugin
thin-edge.io software management plugin for rpm packages
https://github.com/thin-edge/tedge-rpm-plugin
community iot thin-edge
Last synced: 10 months ago
JSON representation
thin-edge.io software management plugin for rpm packages
- Host: GitHub
- URL: https://github.com/thin-edge/tedge-rpm-plugin
- Owner: thin-edge
- License: apache-2.0
- Created: 2023-12-22T01:13:22.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-22T22:28:06.000Z (over 2 years ago)
- Last Synced: 2025-06-28T13:02:11.269Z (12 months ago)
- Topics: community, iot, thin-edge
- Language: Shell
- Homepage: https://thin-edge.io
- Size: 36.1 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# tedge-rpm-plugin
## Plugin summary
Manage rpm packages on a device using thin-edge.io software management plugin api.
**Technical summary**
The following details the technical aspects of the plugin to get an idea what systems it supports.
|||
|--|--|
|**Languages**|`shell` (posix compatible)|
|**CPU Architectures**|`all/noarch`. Not CPU specific|
|**Supported init systems**|`N/A`|
|**Required Dependencies**|`dnf` or `microdnf` or `zypper`|
|**Optional Dependencies (feature specific)**|-|
### How to do I get it?
The following linux package formats are provided on the releases page and also in the [tedge-community](https://cloudsmith.io/~thinedge/repos/community/packages/) repository:
|Operating System|Repository link|
|--|--|
|RHEL/CentOS/Fedora/openSUSE|[](https://cloudsmith.io/~thinedge/repos/community/packages/detail/rpm/tedge-rpm-plugin/latest/a=noarch;d=any-distro%252Fany-version;t=binary/)|
### What will be deployed to the device?
* The following software management plugins which is called when installing and removing `rpm` packages via Cumulocity IoT
* `rpm` - Manage (list/install/remove) packages via an RPM base Package Manager (e.g. dnf/microdnf/zypper)
## Plugin Dependencies
The following packages are required to use the plugin:
* dnf or microdnf or zypper
## Development
The following tools are requires for local development. Please install them before following the instructions:
* [nfpm](https://nfpm.goreleaser.com/tips/) - Tool to build linux packages
* [go-c8y-cli](https://goc8ycli.netlify.app/) - A Cumulocity IoT CLI app
* [c8y-tedge extension](https://github.com/thin-edge/c8y-tedge) - go-c8y-cli extension for thin-edge.io to help with bootstrapping
### Start demo
1. Build the tedge-rpm-plugin package
```sh
just build
```
2. Start the demo
```sh
just up
```
3. Activate your Cumulocity IoT session in go-c8y-cli where you want to bootstrap the device to
```sh
set-session
```
`set-session` is part of [go-c8y-cli](https://goc8ycli.netlify.app/), check out the documentation for instructions on how to install and create your session if you don't already have one.
4. Bootstrap the device
```sh
just bootstrap
```
The bootstrap command used the [c8y-tedge extension](https://github.com/thin-edge/c8y-tedge).
### Stop demo
```sh
just down
```