Jump to content
Read the Funtoo Newsletter: Summer 2023 ×

causes

Members
  • Posts

    5
  • Joined

  • Last visited

Posts posted by causes

  1. Does anyone have a shell command or script that will delete *.tar.foo files out of /usr/portage/distfiles with the exception of those that relate to currently merged packages?

     

    Such a command would be fantastic for recovering storage space while at the same time avoiding the repeated downloading of existing packages (for example, when a USE flag is changed).

     

    eclean -d distfiles

    Does the job for me.

  2. I would like to learn to write bash completion modules. The available documentation is poor. So i would like to get help writing completion for cpupower. I already have completion for first argument working. Next i would like to get completion for -g <governor> working. Please reply if you can help me :-).

     

    Here is what i have already:

    /usr/share/bash-completion/completions/cpupower

     

    _cpupower() {
        # pointer to current and prev completion word
        local cur prev
        # completion options
        local opts
    
        # array storing the possible completions
        COMPREPLY=()
    
        # define cur and prev
        cur="${COMP_WORDS[COMP_CWORD]}"
        prev="${COMP_WORDS[COMP_CWORD-1]}"
    
        opts="frequency-info frequency-set idle-info idle-set set info monitor help"
    
        COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
    }
    
    complete -F _cpupower cpupower
    
  3. this isn't covered by synaptics?  https://wiki.gentoo.org/wiki/Synaptics <--- eh?

    Evdev has option "EmulateWheelButton" to emulate mouse wheel when middle button is pressed. It doesn't work on new thinkpads where trackpoint buttons are integrated to touchpad because synaptics and evdev are two different drivers and can't communicate.

     

    Here is the related bug report:

    https://bugs.freedesktop.org/show_bug.cgi?id=70780

     

    Picture of new thinkpad trackpoint:

    http://www.lenovo.com/images/gallery/1060x596/lenovo-laptop-thinkPad-t431s-keyboard-closeup-4.jpg

  4. Hi. Here is ebuild that supports wheel emulation for new trackpoints where trackpoint buttons are integrated into touchpad:

    https://github.com/causes-/causelay/tree/master/x11-drivers/xf86-input-evdev-trackpoint

     

    This issue in freedesktop bugzilla:

    https://bugs.freedesktop.org/show_bug.cgi?id=70780

     

    Install:

    # layman -a causelay

    # emerge -av xf86-input-evdev-trackpoint

  5. I got it fixed with:

    src_configure(){
            python_foreach_impl cmake-utils_src_configure
    }
    

     

    But now it fails like this:

     

    In file included from /var/tmp/portage/media-gfx/screencloud-1.1.6/work/screencloud-1.1.6/screencloud/src/audionotifier
    .cpp:15:0:
    /var/tmp/portage/media-gfx/screencloud-1.1.6/work/screencloud-1.1.6/screencloud/src/audionotifier.h:19:24: fatal error:
     QAudioOutput: No such file or directory
     #include <QAudioOutput>
                            ^
    compilation terminated.
    CMakeFiles/screencloud.dir/build.make:930: recipe for target 'CMakeFiles/screencloud.dir/src/audionotifier.cpp.o' faile
    d
    make[2]: *** [CMakeFiles/screencloud.dir/src/audionotifier.cpp.o] Error 1
    make[2]: *** Waiting for unfinished jobs....
    In file included from /var/tmp/portage/media-gfx/screencloud-1.1.6/work/screencloud-1.1.6/screencloud/src/systemtrayico
    n.h:40:0,
                     from /var/tmp/portage/media-gfx/screencloud-1.1.6/work/screencloud-1.1.6/screencloud/src/systemtrayico
    n.cpp:15:
    /var/tmp/portage/media-gfx/screencloud-1.1.6/work/screencloud-1.1.6/screencloud/src/audionotifier.h:19:24: fatal error:
     QAudioOutput: No such file or directory
     #include <QAudioOutput>
                            ^
    compilation terminated.
    CMakeFiles/screencloud.dir/build.make:907: recipe for target 'CMakeFiles/screencloud.dir/src/systemtrayicon.cpp.o' fail
    ed
    make[2]: *** [CMakeFiles/screencloud.dir/src/systemtrayicon.cpp.o] Error 1
    make[2]: Leaving directory '/var/tmp/portage/media-gfx/screencloud-1.1.6/work/screencloud-1.1.6/screencloud-python2_7'
    CMakeFiles/Makefile2:60: recipe for target 'CMakeFiles/screencloud.dir/all' failed
    make[1]: *** [CMakeFiles/screencloud.dir/all] Error 2
    make[1]: Leaving directory '/var/tmp/portage/media-gfx/screencloud-1.1.6/work/screencloud-1.1.6/screencloud-python2_7'
    Makefile:117: recipe for target 'all' failed
    make: *** [all] Error 2
    

     

    :-(

  6. I'm trying to write ebuild for screencloud[1]. I have already dependencies solved and with source the configuration succeeds:

     

    Found PythonLibs: /usr/lib64/libpython2.7.so (found version "2.7.8")

     

    While emerging the ebuild i get this error:

     

    CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:136 (message):
      Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS)
      (Required is at least version "2.6")
    Call Stack (most recent call first):
      /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:343 (_FPHSA_FAILURE_MESSAGE)
      /usr/share/cmake/Modules/FindPythonLibs.cmake:210 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
      CMakeLists.txt:222 (find_package)

     

    Here is the current ebuild:

     

    # Distributed under the terms of the GNU General Public License v2
    
    EAPI=5
    PYTHON_COMPAT=( python{2_6,2_7} )
    
    inherit cmake-utils python-r1
    
    DESCRIPTION="screenshot sharing tool"
    HOMEPAGE="https://github.com/olav-st/screencloud"
    SRC_URI="https://github.com/olav-st/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
    
    LICENSE="GPL-2"
    SLOT="0"
    KEYWORDS="~x86 ~amd64"
    IUSE=""
    
    DEPEND="
            dev-libs/quazip
            x11-libs/libqxt
            dev-python/PyQtMobility
    "
    RDEPEND="${DEPEND}"
    
    S="${WORKDIR}/${P}/${PN}"
    

     

    How can i fix the python configure step?

     

    [1] https://github.com/olav-st/screencloud

     
  7. Post here useful commandline tools.

     

     

    *  app-arch/atool
          Latest version available: 0.39.0
          Latest version installed: 0.39.0
          Size of files: 116 kB
          Homepage:      http://www.nongnu.org/atool/
          Description:   a script for managing file archives of various types
          License:       GPL-2
    
    *  app-misc/screenfetch
          Latest version available: 9999
          Latest version installed: 9999
          Size of files: 0 kB
          Homepage:      https://github.com/KittyKatt/screenFetch
          Description:   A Bash Screenshot Information Tool
          License:       GPL-3
     
    *  app-text/wgetpaste
          Latest version available: 2.25-r2
          Latest version installed: 2.25-r2
          Size of files: 10 kB
          Homepage:      http://wgetpaste.zlin.dk/
          Description:   Command-line interface to various pastebins
          License:       public-domain
     
    *  net-analyzer/nbwmon
          Latest version available: 9999
          Latest version installed: 9999
          Size of files: 0 kB
          Homepage:      https://github.com/causes-/nbwmon
          Description:   ncurses bandwidth monitor
          License:       MIT
     
    *  media-sound/ncmpcpp
          Latest version available: 0.6_beta4
          Latest version installed: 0.6_beta4
          Size of files: 406 kB
          Homepage:      http://ncmpcpp.rybczak.net/
          Description:   featureful ncurses based MPD client inspired by ncmpc
          License:       GPL-2
     
    *  net-news/newsbeuter
          Latest version available: 2.8
          Latest version installed: 2.8
          Size of files: 421 kB
          Homepage:      http://www.newsbeuter.org/index.html
          Description:   A RSS/Atom feed reader for the text console
          License:       MIT
     
    *  sys-power/powertop
          Latest version available: 2.6
          Latest version installed: 2.6
          Size of files: 2,953 kB
          Homepage:      https://01.org/powertop/
          Description:   tool that helps you find what software is using the most power
          License:       GPL-2
    
  8. Smdev

    Smdev is simple device manager. It's alternative to udev, eudev and mdev. I maintain smdev ebuilds on my overlay[1]. I have working keyboard, mouse, touchpad, trackpoint, sound, graphics, wifi, hotplug and module autoloading with the default config and initscript that comes with the ebuild.

     

    [1] https://github.com/causes-/causelay/blob/master/sys-fs/smdev/smdev-0.2.2.ebuild

     

    Migrate guide from eudev

    Here is migrate guide away from eudev.

     

    First you need to disable udev and gudev use flags.

    /etc/portage/make.conf

    USE="$USE -udev -gudev"

     

    Then enable keyboard, mouse and synaptics INPUT_DEVICES instead of evdev.

    /etc/portage/make.conf

    INPUT_DEVICES="keyboard mouse synaptics"

     

    Rebuild world.

    # emerge -uavDN @world

    # emerge -av --depclean

     

    Configure X.Org to use keyboard/kbd, mouse and synaptics instead of evdev. Use "InputDevice" instead of "InputClass".

    /etc/X11/xorg.conf.d/30-keyboard.conf

    Section "InputDevice"
            Identifier "keyboard0"
            Driver "kbd"
            option "AutoServerLayout" "on"
            Option "XkbLayout" "fi"
    EndSection
     

    /etc/X11/xorg.conf.d/40-touchpad.conf
    Section "InputDevice"
            Identifier "touchpad0"
            Driver "synaptics"
            option "AutoServerLayout" "on"

            Option "HorizTwoFingerScroll" "1"
            Option "VertTwoFingerScroll" "1"

            Option "SoftButtonAreas" "65% 0 0 20% 45% 60% 0 20%"
            Option "AreaTopEdge" "20%"
    EndSection
     

    /etc/X11/xorg.conf.d/50-mouse.conf
    Section "InputDevice"
            identifier "Mouse0"
            driver "mouse"
            option "AutoServerLayout" "on"
            option "device" "/dev/input/mice"
    EndSection

     

    Add smdev to sysinit runlevel.

    rc-update del udev sysinit
    rc-update del udev-mount sysinit
    rc-update del udev-postmount boot
    rc-update add smdev sysinit

     

    Now you are ready to reboot.

×
×
  • Create New...