Categoría: ubuntu

  • Stremio is finally in the Debian archive


    Stremio was the first package I attempted to build when starting contributing to Debian as a regular contributor. It was quite a journey since the ones who have been following this blog know…

    First, I packaged the old stremio-qt5 (based in QT5 who is reaching its end of life soon, so all the patches that were needed and the weeks fighting to make it compile are now an adventure to tell to my grandchildren.

    Then, I packaged stremio-cef, the package based on Chromium Embedded Framework, that required to compile CEF itself as a library for Debian, a road that took me months to complete and was my introduction to contributing to the Debian Chromium team.

    As of 24 September 2026, Stremio is part of Debian itself:

    PackageWhereWhat it is
    stremio 1.2.0+ds-1Debian unstable, mainThe GTK4 / libadwaita / WebKitGTK 6 client
    stremio-server-installer 1Debian unstable, contribFetches the streaming server component at install time

    Ten new Rust crates went into Debian main as prerequisites along the way
    (webkit6, webkit6-sys, javascriptcore6, javascriptcore6-sys, epoxy, libmpv2, libmpv2-sys, byteorder-lite, piper, discord-rich-presence).

    If you are on unstable/sid, install Stremio from Debian, not from here.

    If you installed Stremio from my unofficial repository https://debian.vejeta.com/, read this

    This repository used to ship a package called stremio at version
    4.4.181+dfsg-1, which was the older Qt5 client. Debian’s package is 1.2.0+ds-1. Since 4.4.181 sorts above 1.2.0, apt treats Debian’s package as a downgrade and will not switch you over on its own. Two things are happening here, in two steps:

    Step 1 (now). The Qt5 client has been renamed to stremio-qt5, and this repository ships a small transitional stremio package that pulls it in. Nothing breaks: the app you had keeps working, just under the name stremio-qt5, and apt moves the “manually installed” mark over to it by itself, so apt autoremove will not take it away later.

    Note that plain apt upgrade will not do this: it is not allowed to
    install new packages, so it reports stremio as kept back. Use:

    sudo apt full-upgrade  
    

    (verified in a clean unstable chroot against the packages actually published here). After it runs, the leftover transitional stremio package shows up as no longer required, and sudo apt autoremove clears it.

    Step 2 (announced separately, later). This repository will stop shipping the stremio name entirely. From then on, stremio means Debian’s package, and you can switch with:

    sudo apt remove stremio # removes only the empty transitional package  
    sudo apt install stremio stremio-server-installer  
    

    You can do that today already if you prefer, with:

    sudo apt remove stremio  
    sudo apt install stremio/unstable stremio-server-installer/unstable  
    

    stremio-server-installer asks for confirmation and then downloads the streaming server component from Stremio’s own servers, verifying its checksum.

    It replaces the old stremio-server package from this repository (which was in non-free and shipped that component directly), and it is now the piece all the clients share: it installs server.js under /usr/share/stremio/, which both Debian’s stremio and this repository’s stremio-qt5 read from.

    If you use the CEF client, upgrade it before installing Debian’s stremio

    The version of stremio-gtk published here until now installs three files that Debian’s stremio package also installs:

    /usr/share/applications/com.stremio.Stremio.desktop  
    /usr/share/icons/hicolor/scalable/apps/com.stremio.Stremio.svg  
    /usr/share/metainfo/com.stremio.Stremio.metainfo.xml  
    

    With that version installed, dpkg would refuse to unpack Debian’s package.

    While this repository still serves the stremio name you will not hit it (apt gives you this repository’s package instead), but it becomes relevant as soon as you go for Debian’s. The new stremio-cef moves those files to com.stremio.Stremio.CEF.*, so sudo apt full-upgrade resolves it for you as part of moving you from stremio-gtk to stremio-cef.

    Verified in a clean chroot: after that upgrade, Debian’s stremio and the CEF client install side by side, as /usr/bin/stremio and /usr/bin/stremio-cef.

    What this repository still carries

    Debian does not have these, so they stay here:

    • stremio-cef (formerly stremio-gtk): the CEF-based client. Renamed because Debian’s own client is GTK4 too, so “-gtk” no longer distinguished anything; the real difference is the renderer. A transitional stremio-gtk package moves existing installs across.
    • stremio-qt5: the Qt5 client, formerly published here as stremio
    • stremio-qt6: the Qt6 port
    • brow6el: minimal CEF-based browser
    • libcef149, libcef150, libcef151, libcef-dev, libcef-common: Chromium Embedded Framework
    • librust-cef-dev, librust-cef-dll-sys-dev: Rust bindings to CEF

    Recommended: pin this repository below Debian

    Now that the official packages come from Debian, it is worth telling apt to prefer Debian for anything that exists in both. Create
    /etc/apt/preferences.d/99-vejeta:

    Package: *  
    Pin: origin debian.vejeta.com  
    Pin-Priority: 100  
    

    With priority 100 (below the default 500), packages from here are only used when Debian does not provide them, which is exactly what this repository is for from now on.

    Debian stable and testing

    Debian’s stremio is in unstable and will migrate to testing in the normal way and will eventually trickle down to Ubuntu and other Debian derivatives. Users of bookworm and trixie are not affected yet and can keep using this repository as before.

  • Soporte para los clickpad en HP Pavillion DV7 4160ES

    Estos son los componentes que trae el susodicho portátil:

    # lspci
    00:00.0 Host bridge: Intel Corporation Core Processor DRAM Controller (rev 02)
    00:01.0 PCI bridge: Intel Corporation Core Processor PCI Express x16 Root Port (rev 02)
    00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 02)
    00:16.0 Communication controller: Intel Corporation 5 Series/3400 Series Chipset HECI Controller (rev 06)
    00:1a.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05)
    00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 05)
    00:1c.0 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 (rev 05)
    00:1c.1 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 2 (rev 05)
    00:1d.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05)
    00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev a5)
    00:1f.0 ISA bridge: Intel Corporation Mobile 5 Series Chipset LPC Interface Controller (rev 05)
    00:1f.2 SATA controller: Intel Corporation 5 Series/3400 Series Chipset 4 port SATA AHCI Controller (rev 05)
    00:1f.3 SMBus: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller (rev 05)
    00:1f.6 Signal processing controller: Intel Corporation 5 Series/3400 Series Chipset Thermal Subsystem (rev 05)
    01:00.0 VGA compatible controller: ATI Technologies Inc Manhattan [Mobility Radeon HD 5000 Series]
    01:00.1 Audio device: ATI Technologies Inc Manhattan HDMI Audio [Mobility Radeon HD 5000 Series]
    02:00.0 Network controller: Atheros Communications Inc. AR9285 Wireless Network Adapter (PCI-Express) (rev 01)
    03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)
    7f:00.0 Host bridge: Intel Corporation Core Processor QuickPath Architecture Generic Non-core Registers (rev 02)
    7f:00.1 Host bridge: Intel Corporation Core Processor QuickPath Architecture System Address Decoder (rev 02)
    7f:02.0 Host bridge: Intel Corporation Core Processor QPI Link 0 (rev 02)
    7f:02.1 Host bridge: Intel Corporation Core Processor QPI Physical 0 (rev 02)
    7f:02.2 Host bridge: Intel Corporation Core Processor Reserved (rev 02)
    7f:02.3 Host bridge: Intel Corporation Core Processor Reserved (rev 02)

    Haciendo apt-pinning en Debian instalo algunos paquetes de la rama unstable en Squeeze.

    Instalo la última versión del kernel:

    # apt-get install linux-headers-2.6.38-1-amd64
    # apt-get install linux-image-2.6.38-1-amd64

    Instalo las últimas versiones de los componentes de xorg de la rama unstable.
    (Todos los componentes hasta que no falte ninguna dependencia)

    # apt-get install -t unstable xserver-xorg-input-synaptics xorg xserver-xorg

    Veo que hay bugs relacionados en el bugtracker de Debian:
    http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=597082
    http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=572842

    En el primero de ellos se hace referencia a este parche y lo descargamos en /usr/src/99-clickpad.patch:
    http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=26;filename=99-clickpad.patch;att=1;bug=597082

    Bajamos los fuentes de Debian unstable para xserver-xorg-input-synaptics:

    # apt-get source -t unstable xserver-xorg-input-synaptics

    Bajamos tambien las dependencias para poder recompilarlo:

    # apt-get -t unstable build-dep xserver-xorg-input-synaptics

    Vamos al directorio donde se han descargado y aplicamos el parche que bajamos antes.
    (En nuestro caso se ha bajado la versión 1.4.0)

    # cd /usr/src/xserver-xorg-input-synaptics-1.4.0 
    # cat /usr/src/99-clickpad.patch |patch -p1

    Recompilamos el paquete con el parche ya incluido.

    # dpkg-buildpackage -b

    Instalamos el paquete:

    # sudo dpkg -i ../xserver-xorg-input-synaptics-*version*.deb

    (En mi caso: xserver-xorg-input-synaptics_1.4.0-1_amd64.deb)

    Sólo nos basta las X-window y el soporte mejora considerablemente. Aunque quedan bastantes funcionalidades que iremos viendo implementadas muy pronto por los desarrolladores del kernel y de Xorg.

    Y con esto y un bizcocho, este desarrollador puede desarrollar tranquilamente.

Creative Commons License
Except where otherwise noted, the content on this site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.