Basic Information:
Printer Model:
MCU / Printerboard:
Host / SBC
klippy.log
Fill out above information and in all cases attach your klippy.log file (use zip to compress it, if too big). Pasting your printer.cfg is not needed
Be sure to check our “Knowledge Base” Category first. Most relevant items, e.g. error messages, are covered there
Describe your issue:
…
(Maybe this question is more about managing kiauh and the repos, instead of be more related to klipper itself, but i hope somebody can help)
Well, I already asked for this some time ago in this post How to install an specific and custom version of klipper?
I’m still trying to do this again in a proper way in order to have a specific custom version of these services in all my machines. I mean, a fast way to install the software in my machines, and later, update them properly.
The main diference from this post to that other, is that; before, i had only one repo which contains all other repos as submodules, but now, I have all of them as different repos (the normal way to do it, basically, like a fork but not a fork as i want them to be private)
My main problem is that when I install the software in my controllers, it comes when an old version, and then I have two things to do: Or to update normally (original repo) with kiauh and try to merge in that moment all my changes (wich leads to have diferent versions in every machine which is an absolute discontrol for future updates,etc), or to try to install my repo version (not success for now), so i cant fully control the version of all my machines (the goal is to have only an specific and stable version of the code for all of them, i think it is the logicall thing).
For now, I just clone my repos, but it doesnt work as it think it is neccessary sometimes to update the env or install some requirements, idk …
I’m trying to achieve this via kiauh (basically by specifying my repo instead of the original but i really don’t know if it is working or not.
As @Sineos mentioned, kiauh/default.kiauh.cfg at master · dw-0/kiauh · GitHub i have tried to modify this file so it looks for my repo,
[kiauh]
backup_before_update: False
[klipper]
repositories:
https://github.com/JuanR3D/IDENTITY_klipper, main
[moonraker]
optional_speedups: True
repositories:
https://github.com/JuanR3D/IDENTITY_moonraker, main
[mainsail]
port: 80
unstable_releases: False
repositories:
https://github.com/JuanR3D/IDENTITY_mainsail, main
[mainsail_config]
repositories:
https://github.com/JuanR3D/IDENTITY_mainsail_config, main
[klipperscreen]
repositories:
https://github.com/JuanR3D/IDENTITY_klipperscreen, main
[sonar]
repositories:
https://github.com/JuanR3D/IDENTITY_sonar, main
[printer_data]
repositories:
https://github.com/JuanR3D/IDENTITY_printer_data, main
(as you can see, my idea is ideally is to manage all these repos so i have controll on the specific version of them and just update them whenever I’m ready)
but for example, when I try to do update I got this:
| a) [Update all] | | | | | Installed: | Latest: | | Klipper & API: |---------------|--------------| fatal: Not a valid object name origin/master | 1) [Klipper] | 17624412 | | fatal: Not a valid object name origin/master | 2) [Moonraker] | stable | | | | | |
(stable is the version i have defined for the status of my klipper repo right now), and its branch is main
Also, as you can see, i’d like to manage all repos, and i don’t know if it will be possible to do it correctly with kiauh as all I can see in the original default kiauh file is the option to specify klipper and moonraker repos.
I have tried to modify it too in the components files, for example, in kiauh/components/KlipperScreen/init.py modifying th repo:#
======================================================================= #
# Copyright (C) 2020 - 2025 Dominik Willner <th33xitus@gmail.com> #
# #
# This file is part of KIAUH - Klipper Installation And Update Helper #
# https://github.com/dw-0/kiauh #
# #
# This file may be distributed under the terms of the GNU GPLv3 license #
# ======================================================================= #
from pathlib import Path
from core.backup_manager import BACKUP_ROOT_DIR
from core.constants import SYSTEMD
# repo
KLIPPERSCREEN_REPO = "https://github.com/JuanR3D/IDENTITY/KlipperScreen.git"
# names
KLIPPERSCREEN_SERVICE_NAME = "KlipperScreen.service"
KLIPPERSCREEN_UPDATER_SECTION_NAME = "update_manager KlipperScreen"
KLIPPERSCREEN_LOG_NAME = "KlipperScreen.log"
# directories
KLIPPERSCREEN_DIR = Path.home().joinpath("KlipperScreen")
KLIPPERSCREEN_ENV_DIR = Path.home().joinpath(".KlipperScreen-env")
KLIPPERSCREEN_BACKUP_DIR = BACKUP_ROOT_DIR.joinpath("klipperscreen-backups")
# files
KLIPPERSCREEN_REQ_FILE = KLIPPERSCREEN_DIR.joinpath(
"scripts/KlipperScreen-requirements.txt"
)
KLIPPERSCREEN_INSTALL_SCRIPT = KLIPPERSCREEN_DIR.joinpath(
"scripts/KlipperScreen-install.sh"
)
KLIPPERSCREEN_SERVICE_FILE = SYSTEMD.joinpath(KLIPPERSCREEN_SERVICE_NAME)
And done this in other files but i feel like this is like hacking the system and I really don’t think this is the proper way to do it…
All this is about kiauh, but… does moonraker update manager try to install the env and everything if needed, or just clones the repo to the latest version? (Supposing that the problem is the env)
Well, I dunno if i’ve been clear, but i guess somebody can understand what i say…I really need help to mantain the specific version of code i want,
Also, about updates, for now i don’t mind to update every service one by one, but i’d like to reach a point where for example the UI says: A new version of software is avaliable - update (and it updates whatever it needs to update, klipper, klipperscreen… to the version I have managed to merge..) but well, that would be an extra, for now just to manage the code is enough.
Thanks in advance