Profile Details

Toggle Sidebar
Recent updates
  • Fredrik Fornstad
    Fredrik Fornstad replied to a discussion, Domoticz 2022.1

    Patrick,
    Sorry, but I just cannot. I just checked my developer account in clearos.com and for some reason it is no longer connected to either app-servio nor app-domoticz. I have a feeling the backend is falling apart and there is just nobody home anymore. On top top of that the build system is broken and does not function without someone fixing it first.

    Hate to say it, but I have given up and moved on six months ago.

    /Fred

  • Fredrik Fornstad
    Fredrik Fornstad replied to a discussion, Domoticz 2022.1

    Hint: Look at the History.txt.patch

    Release builds will not accept xxxx.xxx if I remember right (translates into appversion)

    I guess the history file looks different now and you will need to modify the patch file

  • Fredrik Fornstad
    Fredrik Fornstad replied to a discussion, Domoticz 2022.1

    The index.html patch is not critical (it disables two meny items (restart and sw upgrade if I remember right) that do not work anyway in Clearos). So disabling that in the spec file should not affect a successful build.

    I tend to remember that one of the other patch files do however define appversion but I might be wrong. Look in my last post in the Serviio thread for some info on patches. You will have to go through the domoticz changes and adapt. This can take some time...

    /Fred

  • John,
    Since ClearOS is a ghost ship at the moment there is no way for me, as an outsider, to release an updated Serviio package since I need someone on the inside to get the build environment up and running and also to release the package into the ClearOS repos. So you are on your own.

    If you want you can build a new rpm package yourself. I do not think there are any major changes in the serviio source files, so most of it will likely compile OK without to many changes (you might need to adjust one or two of the patch files). If you have never done this it will probably take you a few hours. Below follows a brief instruction (from the top of my head, which means that I might have forgotten something...) of what is needed:

    1. I suggest you create a virtual machine on your normal PC to use as your development environment (VirtualBox is one alternative if you are using a Windows PC). Create a Linux 64 bit machine. (set the "network card" to run in bridge mode (not NAT), so that you can connect to it from a ssh terminal on your LAN). Download the ClearOS 7 DVD iso file to install ClearOS as the operating system on your virtual machine.
    2. When your ClearOS virtual machine is up and running, use ssh from your PC to connect to it (puTTy is a very good program)
    3. Follow the instructions here to "upgrade your virtual ClearOS machine so that it has all needed files to build rpms": If you have not used vim before for text editing, you can skip that part and maybe use nano instead, which I think is easier.
    4. Now you should have a folder called "rpm" in your home directory for your normal user (do NOT build stuff logged in as root).
    5. In your home directory create a folder called serviio. download the old source-rpm file:
    6. Unpack the source rpm: You should now have 2 folders:
    SPECS
    here your serviio.spec file should be

    SOURCES
    here the rest of the files should be

    7. You will likely need to download a few more files: The files listed in "sources.download" should be downloaded and put in the SOURCES folder. (use nano to open the sources.download file, there is one file on each row (ignore the sha256 checksum in the beginning of each line, but look at the url to the right). The file "sources.download" is not needed in the building process.
    8. edit the serviio.spec file in the SPECS folder with your favorite text editor. change the release version etc so that it matches the new serviio release rpm name/version. Save the file
    9. Copy both the SOURCES and SPECS folders with its content to the rpm folder
    10. go to the SPECS folder and try to build
    11. You might be missing a few packages, in such case you will get an error stating what is missing. Using your root account install the missing packages . Repeat step 10-11 until it starts building.
    12. You might also get an error that one of the patch files could not be applied. In that case the upstream (serviio) source files have changed so much so that the patch files needs to be adjusted. Google to find out how to create/modify patch files (tip: create two folders "org" and "mod", unpack the files to be patched from the serviio rpm and put them (with the correct folder tree) under the "org" folder. Copy the content of the "org" folder to the "mod" folder, edit the files under the "mod" folder (according to what you can see in the old patch files). Then use something like this. Then try to build again.
    13. After a successful buld, copy the rpm file (found under rpm/rpms/...) to your machine where you want to install serviio. You can try in your virtual development machine first if you like.

    /Fred

  • Fredrik Fornstad
    Fredrik Fornstad replied to a discussion, Domoticz 2022.1

    Patrick,
    The file "sources.download" is a special file needed for the Koji build system (it is the instruction to Koji where to download large sources). Your modification is not needed unless you are planning to use a similar build system (which I guess you do not have). Also, your suggested update is not complete, you need to generate a new SHA256 checksum (the "8282cb71c924b6ef92503976d50f966f2c785eab8f8cffa1136ac133f0241157" is for the old domoticz 2022.1 source).

    You need to download the source and then calculate the checksum by doing something like this:
    Then you copy the output and replace the old checksum in the sources.download. But as I said, when you build manually the file sources.download is not needed at all.

    Everything else is OK. The "old" patches should be there unless Domoticz upstream have changed those parts. Without the patches it will not work as intended. In fact, If the old patches work, you were "lucky" this time. There will come a time when the upstream code have changed so much so that the patches will need to be modified. In fact, the Domoticz upstream is not intended to run on such old Linux version as ClearOS 7 so it is just a matter of time until it can't be fixed unless you run Domoticz in a virtualized environment on top of ClearOS if you still like to stick to it.

    In addition, if you are running Z-wave: The upstream open-zwave is sort of dead, and even if it was not I do not think it is possible to compile newer version of it anylonger on ClearOS after they introduced the Supervision class last year. I have at least not been able to do it. That means that you will not find any support for new HW models that may enter the market. Domoticz and other home automation softwares have switched to ZwaveJS which have MUCH better support for the Z-wave protocol and is actively supported/developed. Unfortunately (if you ask me) it is not based on a "proper" programming language as C or C++ that can be compiled into a executable suitable for a rpm-package, but is based on Javascript/TypeScript which requires a NodeJS platform etc which in practice makes it a no go in a ClearOS environment (I tested it locally on clearOS and got it to work, but this is not the same thing as an uppgradable system ready for 24/7).

    Finally, my recommendation for an alternative "all-in-one" home server would be TrueNAS. At least if you can keep it within your LAN and do not need firewall etc. One of the real advantages is the ZFS file system and the monitoring that goes with it. They have 2 versions "TrueNAS core" and "TrueNAS scale". The core version is based on FreeBSD and is old and very stable. The "scale" version is based on Linux and is almost "too new". The TrueNAS scale is what I personally would use, but I could not: TrueNAS is a "closed environment" which means that you need to install any apps as docker containers which has many advantages, but also some disadvantages. My motherboard do not support "VT-D" hardware virtualization pass through(Both CPU and motherboard need to support it) which means that I cannot assign physical HW directly to my docker containers. With Z-wave USB-dongles etc this was a stopper for me.

    An alternative can be openmediavault as it is based on the normal Debian distribution which allows you to install applications such as Domoticz and openzwave directly on the host system. The operating system is also so modern that you can use the Domoticz installation files without the need for patches etc. Openmediavault also has the possibility to use ZFS through the omv-extras packages. However, any packages you install yourself on the host will not be maintained by the automated scripts etc, so this puts more responsibilities on the owner of the server...

    /Fred

  • Fredrik Fornstad
    Fredrik Fornstad replied to a discussion, Domoticz 2022.1

    Patrick, good you got it working. I am afraid that from here on you will be on your own...

    There is no way for me to maintain and update any of the ClearOS packages that I have created and supported for years (Domoticz, open-zwave, Serviio, ffmpeg, x264, x265, rtl433, frei0r-plugins, xvidcore, opencore-amr, lame, rtmpdump, vo-amrwbenc, vo-aacenc,vid.stab, dcadec and a few more) as since some time back the build system no longer recognizes my build requests and there is no one on the inside that can help me trigger the builds manually and release to the repos after Nick left.

    Also, and this was a killer for me, after July 2022 no ClearOS packages at all have been built/updated, which means that from my perspective that the ClearOS platform is no longer suitable for my use. I have therefore taken the decision to move on and have now my own server up and running on a complete different platform. This was a painful step to take that involved many hours of work, but for me this was neccessary.

    /Fred

  • Fredrik Fornstad
    Fredrik Fornstad replied to a discussion, Domoticz 2022.1

    Nick Howitt wrote:

    It was not with the correct options so I've manually tagged it into clearos-contribs-testing. Hopefully it will build correctly next time without the manual tagging. I can't test until there is a version bump.

    .
    Just to double check: Was it my spec file that you needed to tweak or was it Koji? If it was the Domoticz spec file (or any of the source files, then I rather do the change myself too, bump the revision and upload a new version...

    /Fred

  • Fredrik Fornstad
    Fredrik Fornstad replied to a discussion, Domoticz 2022.1

    That was a lot of python packages you pulled in... I think it was only the python3-devel that you actually needed.

    OK, I have now made a domoticz-2022.1-3 release. The only change is that at installation time it now will make sure python3 (incl python3-devel) is installed instead of python34. python3 defaults to 3.6, so it will mean that domoticz now should run python 3.6 even on a complete new system instead of 3.4.

    Since you have already installed python 3.6 (among other) in your system, there is no need to update.

    If you do want to update anyway, you either follow the original build instructions (for a new build-machine), or if you still have your build-machine around you can do this on it:


    After an hour or so the resulting file will be in /var/lib/mock/clearos-7-x86_64/

    copy the domoticz-2022.1-3.v7.x86_64.rpm file to the ClearOS machine where you want domoticz installed and on that machine (as root) type:

  • Fredrik Fornstad
    Fredrik Fornstad replied to a discussion, Domoticz 2022.1

    Patrick,
    In ClearOS/Centos there is no package called libpython3 to my knowledge, instead I think you mean python3-libs...
    Anyway, I will likely update my instruction above to do in the build machine before doing the rpmbuild -bs domoticz.spec command. I am not sure if it is needed, but it will at least take care of an error message. Also, I will try to update the spec-file itself to make sure python 3.6 is installed together with domoticz.

    Expect a domoticz-2022.1-3 update in a day or so.

    /Fred

  • Fredrik Fornstad
    Fredrik Fornstad started a new discussion, Domoticz 2022.1

    Domoticz 2022.1

    Domoticz 2022.1 is now possible to install in ClearOS 7.

    But, things are not as smooth as they should be unfortunately. The koji build system does not want to play along, and Nick has a bit of a backlog to handle which has higher priority. So for now, the only thing I can do is to offer those of you who like to use the latest stable version of Domoticz is an fairly detailed description on how you can build the package yourself.

    Hopefully Nick will have some time next month to look into the koji issue and fix it. In such case the instruction below is no longer needed. The instructions should be easy to follow even for someone that is not used to compile linux programs.

    ------------------------------
    My recommendation is that unless you already have a ClearOS developer environment setup that you will create a virtual machine on your normal PC or laptop, dedicated for just building this package (and any other ClearOS application it that is the case). If you are running Windows, Oracles VirtualBox is a good alternative and that is what I have used in the example below:

    On your PC/Laptop download the ClearOS installation iso: ClearOS-DVD-x86_64.iso

    In Oracle VM Virutual Box:
    Create new virtual machine, use the following settings:
    Type: Linux
    Version: Other Linux 64-bit
    Memory: 4096MB (or more)
    Storage size: Dynamic or Fixed at 8GB (minimum)
    Go to settings and adjust number of processors to maximum of the green indicator
    Under storage: "Attach" your downloaded ClearOS iso file to the virtual optical drive
    Under Network I prefer to use "Bridged Adapter" which will give your virtual machine an IP address on your normal DHCP LAN so you easily can ssh to it later on etc.
    Choose OK. Double click the new virtual machine to start it up. Select "Install ClearOS"

    Set language, keyboard, minimal install, select harddrive, start the network adapter (make sure it gets an IP address).
    Begin installation
    Set root password
    After the installation finish, reboot
    Connect to your machine on the IP address you can see with a web browser. Please note that you connect to port 81 (for instance https://192.168.0.10:81)
    Config:
    Private Server Mode
    Community edition is fine for this build-machine
    Register the machine with your account at Clear
    If it suggest you should update any package, do it.
    Do not install any apps (for now at least), select "Skip Wizard"

    Now, open a ssh terminal on your host computer or any other computer on your LAN (Putty is a good program on Windows) and connect to your build machine.
    Login with user "root" and your admin password you defined in the installation process.
    type the following commands:


    your ssh connection will now be lost. After that the virtual machine is up and running again connect again with your ssh terminal


    Enter your "normal" user-id that you want to use when you are working with the building machine
    Now, let the root-ssh window be aside for a while and open another ssh login.

    Login to your machine as the developer (non-root) user you configured in the clearos setup.
    download the domoticz package from my github account:

    Prepare a build directory, if you already have it since before, make sure it is empty:

    copy the files into place:

    download some other needed source files:

    Now all needed files should be in place and you should be able to start building. Note the mock command can easily take more than one hour to execute depending on your CPU.

    You now should have the domoticz rpm file available at: /var/lib/mock/clearos-7-x86_64/result/domoticz-2022.1-2.v7.x86_64.rpm

    copy your domoticz installation file to the machine(s) where you want to install it. (Depending on transfer method you need to install ftp, samba etc on your build-machine)

    For instance, from the web-interface you can access the Marketplace and install "Flexshares" and "Windows Networking(Samba)" and then use LDAP and "simple server". Then you need to add a user, my suggestion is to use the same name and password as you configured for the development user earlier. I tend to remember that the developer account should be setup before activating LDAP, so that is why I skiped to install these apps at the installation of the ClearOS operating system. However, I could be wrong.

    When you have transfered to domoticz rpm file it is time to shut down the build-machine:
    from the "root" ssh window to your build-machine, type "poweroff" to shut it down.

    ------------
    On the machine where you want to install/update domoticz do the following:

    login as root (command console, not the webinterface)
    make sure you have your domoticz rpm file you have built in the same directory where you are.

    Done!