Skip to content

Conversation

@Mayank-MSJ-Singh
Copy link
Collaborator

@Mayank-MSJ-Singh Mayank-MSJ-Singh commented Sep 8, 2025

Description

created a Klavis Debian Package

Type of change

  • Other (please specify)
    A Debian Package

How has this been tested?

klavis_debian_package.mp4

Klavis Directory

This Directory contains main files which were use to create executable file.
commads are in commands directory, and there is one directory called Registry.

The Problem was that if i hardcode every file image in this exe file like image for github, youtube and other servers, each time when we add new server, the user hase to update the debian package to see the update and install it using apt update klavis then klavis install <server> so what i did was i create a file called tool.json, and there we can just update that folder on our github,

What will happen is that, when we do klavis install youtube, it will go to the tools.json on the github repo, see there what is the image for that server, than will download it. By this method, user don't have to update klavis package.

Klavis-deb directory

this is the directory used to create the debian package, its sturcture is like this -

klavis-deb/
├── DEBIAN/
│   └── control
├── etc/
│   └── bash_completion.d/
│       └── klavis.bash
└── usr/
    ├── local/
    │   └── bin/
    │       └── klavis
    └── share/
        └── zsh/
            └── vendor-completions/
                └── _klavis

see the klavis in bin, this is executable file from first klavis directory

Installation

Just run this file - built.sh it will work fine.(Only For Debian)

Edit : I have created 3 files, klavis.exe, klavis-linux, and klavis-macos , you can use this and just pack it in whatever syntax is needed for different packages, like Debian, and it will work.

@zihaolin96
Copy link
Contributor

PTAL @xz-dev can you also take a look?

@Mayank-MSJ-Singh
Copy link
Collaborator Author

I have updated the cli tool, created 3 compiled file klavis-linux, klavis-macOS and klavis-windows and a complete package for debian OS.

For others, you can use the compiled files and create a package like debian one to create a package, example
this is structure of debian package-

klavis-deb/
├── DEBIAN/
│   └── control
├── etc/
│   └── bash_completion.d/
│       └── klavis.bash
└── usr/
    ├── local/
    │   └── bin/
    │       └── klavis
    └── share/
        └── zsh/
            └── vendor-completions/
                └── _klavis

here the klavis in bin is just klavis-linux, i just renamed it.
klavis.bash and _klavis is for auto completion,

If you are using Debian OS, and want to update this, i have created a built.sh file so you can just run the script and it will automatically compile file, and do all the copy pasting, bla bla bla...... and you can use it

you can see this.

Screencast.From.2025-09-11.18-31-57.mp4

@Mayank-MSJ-Singh Mayank-MSJ-Singh marked this pull request as ready for review September 11, 2025 13:54
@Mayank-MSJ-Singh Mayank-MSJ-Singh marked this pull request as draft September 11, 2025 13:55
@Mayank-MSJ-Singh Mayank-MSJ-Singh marked this pull request as ready for review September 17, 2025 13:54
@zihaolin96
Copy link
Contributor

PTAL @xz-dev

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants