The officially official Devuan Forum!

You are not logged in.

#976 Re: DIY » [SOLVED] how to randomly start audio file, via script, » 2021-06-21 12:55:42

zapper wrote:

  $HOME/Zeal/Music*/*.{opus}

I think bash doesn't handle braces around singleton option well; it only works well when there are options. And it also has to find some * match for every option otherwise it results in the glob string itself. Though, perhaps inserting a prior

shopt -s nullglob

changes that.

Thus, in effect, all those selections ending {opus} end up as "bad pathnames" when picked for the later play command.

In other words, remove the braces for all {opus} and insert that shopt command, and then it hopefully will work consistently.

#977 Re: DIY » [SOLVED] how to randomly start audio file, via script, » 2021-06-21 04:17:36

Expanded example with some more audio paths, and also that I added "$" for "$RANDOM" just for symmetry (although it shouldn't be needed) and removed the braces for $PICK (also not needed).

#!/bin/bash
AUDIO=( 
    $HOME/folder*/*.{wav,mp3,ogg}
    $HOME/with/some/path/*.mp3
    /usr/share/sounds/alsa/*.wav
)
LENGTH=${#AUDIO[@]}
PICK=$(( $RANDOM % $LENGTH ))
play ${AUDIO[$PICK]}

In detail,

  • the AUDIO assignment is the collection of possible audio files, which in this example includes any files with extensions wav, mp3 or ogg in any home folder whose name starts with "folder", plus any mp3 file in the folder path "with/some/path" from the home folder, plus any wav file in (system) folder "/usr/share/sounds/alsa/";

  • the LENGTH assignment is the number of pathnames in the AUDIO list;

  • the PICK assignment is an integer between 0 and LENGTH-1 picked from a uniform distribution between 0 and 32767, modulo the length (which makes it favour lower numbers); and

  • the play command is of the PICK:th pathname of AUDIO list

I'm sure you can edit the audio paths to suit your needs.

But, there's something funny going on if it doesn't pick at random; perhaps a misspelling? But if you used Copy-and-Paste then that wouldn't be the case. The other option is that the audio selection doesn't find more than one file.. You might check that by inserting

echo ${AUDIO[@]}

immediately after the assignment, and review that output....

#978 Re: DIY » [SOLVED] how to randomly start audio file, via script, » 2021-06-20 23:11:48

The script could be something simple, like

#!/bin/bash
AUDIO=( $HOME/folder*/*.{wav,mp3,ogg} )
LENGTH=${#AUDIO[@]}
PICK=$(( RANDOM % $LENGTH ))
play ${AUDIO[${PICK}]}

Then it depends on which display management you are using; with xfce4 you would go to "Settings":"Session and Startup" and add a new entry for "Application Autorstart" and there point at your executable script. That would set it up so that that script gets executed upon login.

If you want it tied to console login you might add it to your ".bashlogin", or similar depending on which shell you are using.

#979 Re: Other Issues » At the shut down menu screen I choose shut down, but it reboots. » 2021-06-12 00:38:33

There's a little bit of mismatch between:

VH wrote:

I am using Beowulf on a chromebook with Xfce desktop environment.

and:

VH wrote:
 500 [url]http://us.deb.devuan.org/merged[/url] ascii-updates/main amd64 Packages
     release v=2.0.0,o=Devuan,a=oldstable-updates,n=ascii-updates,l=Devuan,c=main,b=amd64
     origin us.deb.devuan.org
 500 [url]http://us.deb.devuan.org/merged[/url] ascii-security/main amd64 Packages
     release v=2.0,o=Devuan,a=oldstable-security,n=ascii-security,l=Devuan-Security,c=main,b=amd64
     origin us.deb.devuan.org
 500 [url]http://us.deb.devuan.org/merged[/url] ascii/main amd64 Packages
     release v=2.1,o=Devuan,a=oldstable,n=ascii,l=Devuan,c=main,b=amd64
     origin us.deb.devuan.org

Perhaps it's worth to deal with that first, and then see if the problem remains.

#980 Re: Desktop and Multimedia » Chromium + ALSA + jitzsi: mic problem after update » 2021-06-07 13:38:07

As @GlennW noted the kernel package is available in the alpha-20210503 ISO, which I could find from Devuan's backup, but that doesn't include the headers.

Possibly you could get them from the "orginal source" which I think would be
https://www.kernel.org/pub/linux/kernel … .28.tar.xz

.. but then there's the caveat that this might be well a "red herring"....

EDIT: Note that Debian has a couple of patches applied to header files. Though off the top they don't seem to concern graphics.

#981 Re: Desktop and Multimedia » Chromium + ALSA + jitzsi: mic problem after update » 2021-06-07 11:39:58

That might be right; and the corresponding linux-headers would be at least in the server and desktop isos.
Though, the chimaera alpha ISOs are rebuilt every Monday and might now hold only the 5.10.0-7 package(s).

You find linux-image-5.10.0-0 in beowulf-backports. That's kernel version 5.10.24 (as opposed to 5.10.40 that is packaged as linux-image-5.10.0-7 and kernel version 5.10.28 that was packaged into linux-image-5.10.0-6)

Links for direct download of the .deb(s) could be:
linux-image-5.10.0-0.bpo.5-amd64=5.10.24-1~bpo10+1
and
linux-headers-5.10.0-0.bpo.5-amd64=5.10.24-1~bpo10+1

#982 Re: Desktop and Multimedia » Chromium + ALSA + jitzsi: mic problem after update » 2021-06-07 09:13:54

Hmm that observation suggests it relates to the kernel version?
or is there some apparmor involved?

#983 Re: Desktop and Multimedia » Chromium + ALSA + jitzsi: mic problem after update » 2021-06-07 08:18:51

Yes it appears to be fully chromium's problem... are you sure it runs with your credentials rather than some "sandbox user" ?

#984 Re: Desktop and Multimedia » Chromium + ALSA + jitzsi: mic problem after update » 2021-06-07 07:59:35

You might try running

fuser -v /dev/snd/*

to see which if any (other) process "owns" the device.

#985 Re: Desktop and Multimedia » Chromium + ALSA + jitzsi: mic problem after update » 2021-06-07 05:42:35

You might try running

fuser -v /dev/snd/*

to see which if any (other) process "owns" the device.

#986 Re: Hardware & System Configuration » How to properly install and use Zram » 2021-06-03 22:59:12

There is a program and package fbcat for grabbing the frame buffer into ppm format. You'd need to arrange for that to be  available to the installer and run regularly to screenshotting.

E.g., set up a special USB stick that holds that program and has space to hold the succession of snapshots. Then, at the very first dialogue you shift over to VT2 to mount that USB and start the regular repeated snapshotting (example below), and then you shift back to VT1 and continue.  Making a snapshot every 5 seconds gather 12 snapshots a minute, each being (I think) ${number of pixels}x4 bytes in size, typically < 1Mb each. I.e. 1 Gb space handles about an hour of 5-second snapshots.

while sleep 5 ; do fbcat /dev/fb0 > snap-$(date +%s) ; done

Note that this would be for screenshotting the linux frame buffer. The "graphical mode" installers run tthisheir X servers which hold their screen images in memory (without using the linux frame buffer(s)), so screenshotting them is slightly different.

#987 Re: Other Issues » Tape drives » 2021-05-22 00:38:47

Based on a shallow look-around, it would seem you'll need to get the "st" module loaded.

Perhaps a plain

# modprobe st

is sufficient, or maybe it needs some more intricate incantation.

(Possibly it needs a tape loaded at the time)

Look up Documentation/scsi/st.rst in the kernel source for details of that module.

#988 Re: Other Issues » Tape drives » 2021-05-20 19:30:00

Did you try making /dev/tape a link to /dev/sdc? (though it might well need some API adapter between)

#989 Re: Installation » Kernel upgrade: apparmor and tomoyo » 2021-05-16 22:00:15

What is all this about?
Is it just me or am I seeing far too many (unrequired) Mandatory Access Control instances in the Linux kernel?

I would call it Way Too Many.

tomoyo-tools seems to be to be upstreamed from http://tomoyo.osdn.jp/ (and why that is enabled in debian's standard linux-image is unkown to me). Apparently adding security=none to the boot command should disable this one.

#990 Re: Installation » [SOLVED] How to change system to boot to text login instead of gui » 2021-05-03 23:13:15

I think debian configures all run-levels 2-5 the same, so you'll need to change one of them, say 3, to boot up without starting a display manager (slim).

There are many ways to do so. For example, you might install sysv-rc-conf and run that in a terminal so as to "untick" the box for slim at run level 3, and then reboot with grub set to use run level 3.

I haven't tried this myself but I believe it's sufficient to avoid slim at boot up.

#991 Re: Installation » WineHQ » 2021-05-02 07:12:14

Don't the instructions at https://wiki.winehq.org/Debian work for you?

I suppose, for a 64-bit Devuan beowulf, you will also need the prior

# dpkg --add-architecture i386

so as to enable "multiarch support".

Thereafter it's the usual 3 steps: download and add their key, add their "buster" repository sources.list point and update, and then install their package(s). (Though contrary to those instructions, I would always use --no-install-recommends for installing)

#992 Re: Desktop and Multimedia » Copy files from a playlist to a USB device » 2021-04-30 12:41:32

EDIT: I forgot the m3u ...

find /srv/Audio/CDs -name \*.wav -o -name \*.m3u -print0 | xargs -0 cp -t /media/usb_device

or perhaps

find /srv/Audio/CDs -type f -print0 | xargs -0 cp -t /media/usb_device

#993 Re: Installation » [SOLVED] WiFi doesn't autoconnect after Beowulf to Chimaera » 2021-04-30 12:15:04

@dice's advice is for registering the connection details for the particular ESSID and WPAKEY.

For a laptop, you might want a slightly more flexible configuration, and to use the wpa_gui to deal with new wireless access points.

First, enter the following at the top of /etc/wpa_supplicant/wpa_supplicant.conf:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
p2p_disabled=1

Secondly, bring down wlan0 (ifdown wlan0) before changing /etc/network/interfaces to have the follwing variant declaration:

auto wlan0
iface wlan0 inet manual
         wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet dhcp

You'll note the difference of having a manual stanza with wpa-roam rather than wpa-conf, and a seemingly extra stanza declaring use of a dhcp configuration for a virtual default interface. All that is in support of roaming with dhcp.

Next, install wpagui (that's the package name for the wpa_gui tool) as user management tool for connecting your wireless interface to available acccess point by choice. By virtue of the update_config=1 setting you may save accesspoint settings so wpa_supplicant can find them "automatically" later.

You might also need to re-login the user after ensuring the user is in the netdev group, as per that first configuration line which wpa_supplicant will use for its control sockets.

With that you should be all set. for completeness, the p2p_disabled=1 is needed in order to disable that function which otherwise causes wpa_supplicant to be confused.. I'm not sure about the details.

#994 Re: Hardware & System Configuration » [SOLVED] Need some support for setting up wifi correctly » 2021-04-28 22:29:00

@rolfie, if you really want eth0 and wlan0 configurations to be alternatives you might add the lines

pre-up ifdown wlan0 || true

to the eth0 configuration, and

pre-up ifdown eth0 || true

to the wlan0 configuration.

You must also remove the allow-hotplug lines to avoid that the automated management tries to bring them both up on boot and status change. Then bring the right one up manually, or via some software that understands the applicable cabling situation, like for example wicd, connman or network-manager.

Note that any of the latter will compete with your current networking setup, so you will need to clear that out if you use one of them.

Alternatively you take the DIY approach using ethtool and wpa_cli to discover the applicable cabling situation; this approach brings the great joy of further learning situations. (For example that  wlan0 must be brought up at link level without configuration in order to scan for access points and determine its "cabling" options, while eth0 is more physical)

#995 Re: Hardware & System Configuration » [SOLVED] Need some support for setting up wifi correctly » 2021-04-28 14:18:15

Firstly, you cannot easily have two interfaces configured for the same network. I.e., if you want eth0 down and wlan0 up, you'd need to do that, in that order:

# ifdown eth0 ; ifup wlan0

Secondly, the gateway for static configuration does the same as your post-up additions to the wlan0 confguration; i.e. remove the post-up lines.

Thirdly, with allow-hotplug rather than auto you declare that networking should be managed via hotplugging, in which case udev will try to configure the nominated interfaces. Both of them if there is a cable, and potentially with a bit of race between them; one first, then the other. Since you have gateway declarations for both configurations, there will be a competition where the first one wins.

Possibly your misapprehension is that you regard the configurations as alternatives while udev will treat them as "complementary" or "conjunctive" and apply them both. Afaict the network management via either allow-hotplug (/lib/udev/net.agent) or auto (/etc/init.d/networking) don't actually detect "presence of cable" to only apply configurations "as per available cabling". Instead it will configure all interfaces that it is set to configure, i.e., both eth0 and wlan0, including the possible race and competition about gateway (aka default route).

The problem with 2 interfaces on the same network is that return traffic will go through the first unless you in addition set up a source based routing rule, so that the kernel has different routing tables for outbound packets depending on what the source IP is. That can be done, but it's not an automatic function in the kernel's networking logic.

#996 Re: Hardware & System Configuration » [SOLVED] Need some support for setting up wifi correctly » 2021-04-28 01:44:31

You need to set the default route to be via the wlan0 interface

# ip route replace default via 10.5.5.1 dev wlan0

You also should rather not have localnet routes to 0.0.0.0; it doesn't really matter since the first matching rule (via wlan0) is used shadowing the other but it may bring confusion to the mind of the operator.

EDIT: actually I got confused; those are the "normal" net routes... but you should probably avoid net routes to unconnected interfaces. Remember that when there are multiple routes of same specificity, then the first in the list will be used.

#997 Re: Devuan » Devuan 4 Alpha Installer Iso's » 2021-04-18 14:06:44

it says beowulf but it is indeed chimaera

... well spotted, thanks.

#998 Re: Desktop and Multimedia » ssh-tabbed xfce4-terminal » 2021-04-05 10:55:25

Thanks. That's quite useful. Much of it valid! The script obviously is a "works-for-me" kind of script smile

The line 36 note is misconceived though as that line actually needs the globbing and word splitting; the other ones are good if not terribly important.

And line 29 should rather include a sed filtering to discard all but the lilne numbers; I'm not sure a while loop will work since bash runs those in sub processes(?); does a history command in the sub change the history list of the parent?

But in any case I'll leave those improvements as exercise.

EDIT: also, the grep at line 29 should rather be grep -nFx "$TABBED" "$HISTFILE" to match the input verbatim (i.e., to avoid that it gets interpreted as a pattern).

#999 Desktop and Multimedia » ssh-tabbed xfce4-terminal » 2021-04-05 03:55:25

ralph.ronnquist
Replies: 2

If you use xfc4-terminal for running different ssh in its tabs, then this little scriptlet might suit you.

I have it set up to run in a launcher on the panel, for starting an xfce-terminal that begins by asking for the ssh command line arguments before connecting like so; an empty argument line  starts a local shell tab. Then the same happens on every C-S-T tab in that terminal. Quite handy.

File /home/ralph/bin/remote.xfce4

#!/bin/bash
#
# Start an xfce4-terminal that runs ssh in each new tab, prompting for
# ssh command arguments, or drops to an interactive shell for empty
# arguments. Typically invoked by a launcher or a command line as
#     /whatever/the/path/remote.xfce4
# or with initial ssh arguments
#    /whatever/the/path/remote.xfce4 <arguments...>
#
# The script defines and uses the environment variable TABBED
# which gets cleared for a local shell.

if [ -z "$TABBED" ] ; then
    exec env TABBED="-" xfce4-terminal -e "$0 $1" || exit 1
fi
TABBED="$*"
if [ -z "$TABBED" ] ; then
    HISTFILE="$HOME/.$(basename $0)"
    history -r
    # The following line defaults to reusing the last ssh argument line
    TABBED="$(history -p "!!" )"
    read -e -r -i "$TABBED" -p "ssh: " TABBED
    if [ -z "$TABBED" ] ; then
	printf "\033]0;%s\007" "$(hostname)"
	[ -z "$SHELL" ] && SHELL=/bin/bash
	exec $SHELL -i || exit 1
    fi
    # The following 3 lines remove any prior duplicate ssh argument lines
    for N in $(grep -nFx "$TABBED" $HISTFILE | sed 's/:.*//' | sort -rn) ; do
	history -d $N
    done
    history -s "$TABBED"
    history -w
fi
printf "\033]0;%s\007" "${TABBED%% *}"
exec ssh $TABBED

Note that the history fiddling in the script, which makes the script look complicated, is not really required for the "tabbed ssh" functionality. It could be edited out, but it's there in order to make the ssh arguments input interaction "friendlier" by allowing for up/down arrow stepping through the history of such inputs.

Enjoy

EDIT: Note that the xfce4-terminal preferences also needs to be set up to run the script as custom command for tabs in order for the script (rather than shell) to be run for tabs.

EDIT 2: changed the code for bug fixing and to incorporate @Head_on_a_stick's touch up points (below). This might be a final verrsion smile

#1000 Re: Hardware & System Configuration » Devuan and OpenVPN » 2021-04-04 23:18:39

afaik you only need the openvpn package; the rest is just some GUI confusion overlay trying to make sure you don't know and understand what you are doing.

Then you need to generate a client key at the server end, and copy the client part to the client end.

And then you need the client configuration file to match up with the service. It's all well documented in man openvpn.

Board footer

Forum Software