The officially official Devuan Forum!

You are not logged in.

#1 Re: Hardware & System Configuration » [SOLVED] zramswap script won't start » 2025-05-19 00:24:33

you could also give my https://github.com/eylles/zram-service script a try, it just works perfectly on my machine, also i'm planning to make it have some feature parity with what the rust-systemd-zram-generator so that it can also do mounts not just a single zram device as zramswap.

#2 Re: News & Announcements » Chrome based browsers and uBlock Origin » 2025-05-17 17:36:29

brave, it just works, brave's own adblock is inspired on uBlockOrigin if i remember correctly to the point you should be able to use the same filters in brave brave://settings/shields/filters enable developer mode and you can enter your own custom filters and scriptlets

as for firefox... do not use firefox, use librewolf or try to build gnu icecat, unfortunately some years ago debian dropped the iceweasel project when firefox relaxed their trademark policies, a new fork of firefox really needs to come up but that is a different can of worms...

#3 Re: Documentation » How to generate thumbnails of GIMP .xcf files in your file-manager » 2025-04-23 21:12:15

well taking inspiration from https://docs.xfce.org/xfce/tumbler/available_plugins with the webp thumbnailer i decided to check and turns out that yes, this once again imagemagick comes to the rescue as it can properly understand the xcf format.

just one small caveat, xcf files are multi-layer and while imagemagick can understand multi-frame, multi-page and multi-layer just fine however a simple convert image.xcf image.png will produce

image-0.png
image-1.png
...
image-n.png

for every layer of the xcf file, so a dirty solution if your xcf files got low layer counts is to use /usr/bin/convert "$1[0]" -thumbnail "$2" "$3" to hardcode layer 0, otherwise you got to extract every single layer and compose them in the correct position.

#4 Re: Documentation » How to: Devuan 5 Daedalus an pipewire » 2025-04-23 06:47:31

well, after reading some i have a very uh "quick and dirty" solution of sorts at the time for shed to be able to run along a desktop's session manager, mind you this is far from a proper solution but until i implement a better version of this into shed it will have to do...

#!/bin/sh

mon_pid=$(loginctl show-session "$XDG_SESSION_ID" | awk -F '=' '/Leader/{print $2}')

proc_com=$(ps ax -o'cmd' -q "$mon_pid" | tail -n 1)

NO_CONTINUE=0

outHandler () {
    echo "exiting on signal: $1"
    NO_CONTINUE=1
}

trap 'sigHandler "HUP"' HUP
trap 'sigHandler "USR1"' USR1
trap 'outHandler "EXIT"' EXIT
trap 'outHandler "TERM"' TERM
trap 'outHandler "INT"' INT
trap 'outHandler "QUIT"' QUIT

# 5 cycles per second, 60 seconds per minute, 60 minutes
INTERVAL=$(( 5 * 60 * 60 ))
# 5 cycles per second, 20 seconds
cyc=$(( 5 * 20 ))
while [ "$NO_CONTINUE" -eq 0 ]; do
    # is the count of cycle iterations the same as the interval?
    if [ "$count" = "$INTERVAL" ]; then
        # reset the count to 0
        count=0
    fi
    # check if we need to run shedc logout
    if [ $(( count % cyc )) -eq 0 ]; then
        if ! kill -0 "$mon_pid" 2>/dev/null; then
            shedc logout
        else
            curr_proc_com=$(ps ax -o'cmd' -q "$mon_pid" | tail -n 1)
            if [ "$curr_proc_com" != "$proc_com" ]; then
                shedc logout
            fi
        fi
    fi
    # increment the count
    count=$(( count + 1 ))
    # the duty cycle of this daemon is 5 iterations per second
    # this is fast enough to feel responsive to signals, yet not hog
    # resources, mainly cpu
    sleep 0.2
done

development of shed is a slow grind tbh as it is quite the change going from cobbling something that is to eventually be a suitable program to provide the x-session-manager spec as defined by debian to also having the same program be able to provide just user services and not the session manager, as really in an ideal world every session-manager type program should also provide user services not just the rather "incomplete" xdg-autostart spec, but that is more a rant so neither here nor there really

#5 Re: Off-topic » Lightweight system without (too) bloated software » 2025-04-22 19:47:14

for image viewing i use nsxiv, may be biased in that i sometimes contribute to the repo and have helped cobble some scripts to extend the functionality tho

for a fetch program i use neofetch which i've been tempted to take maintenance of for a while but have not (i mean i've been maintaining a fork of pywal since 2021)

for screenshotting i like flameshot since it already packs everything i need to do the light editing of screenshots, but is not like i could not use maim with imagemagick like i was doing before.

for clipboard manager i have found nothing better than copyq, it just works, supports images and has vi-like bindings by default

for window management i personally like awesome tho i'm not the biggest fan of lua tho i did re-write my neovim config in lua a while ago...

for file management i use both thunar and vifm, most stuff i do in vifm but having thunar as the default is my preference for when the browser opens a file dir

i use webmail but lately i've been thinking of installing thunderbird, used neomutt for a while but it wasn't doing it for me tho, even using luke smith's muttwizard script to set up neomutt it didn't feel "complete" enough so i went back to using webmail

#6 Re: Documentation » How to: Devuan 5 Daedalus an pipewire » 2025-04-14 23:58:22

yeh the problem is that to logout with shed in it's current state you need to run

shedc logout

which is not ideal but i have to do quite some refactoring to fix that...

#7 Re: Documentation » How to: Devuan 5 Daedalus an pipewire » 2025-04-10 18:41:02

i did start a thread about shed at https://dev1galaxy.org/viewtopic.php?id=5160 but besides Head_on_a_Stick it got no traction it seems, got a little more traction on the artix forum with a moderator, a seasoned user and an artix developer providing feedback to improve the design of shed: https://forum.artixlinux.org/index.php/ … 410.0.html

currently i want to implement some needed features for v0.3.0 but got stuck into refactor purgatory where all my lazy coding and design decisions come to bite me and prevent the addition of more features until the code is more modular and uses less global variables...

shed is something i've been cobbling together for my own use since maybe june or july of 2022 but only pushed the first commit of a usable version to github back in august of 2022, wasn't until the development cycle of v0.2.0 that i decided to adapt the design and code of shed from just being something i wanted for myself towards the roadmap of eventually becoming a full fledged session process for posix that can manage the session's processes in more than just starting every component but actually managing them from a daemon, ensure nothing dangles and lingers across logouts and logins by also taking care of doing logout (well, this means i eventually need to make shed play well with elogind's terminate-session and kill-session), and with enough hope set up a standar that shames the session processes for different desktop environments being utterly unable to implement the minimum of proper management over their session components and autostart programs when something written in shell script just can.

once shed is on the state of "can just work as session process for x11 and wayland" (likely not rn for v0.3.0 but probably for v0.4.0) then i intend to work on submitting a package to debian so that it just becomes part of the pool of packages inherited by every debian derivate, then make the pitch to devuan so that shed is the tool to reccomend not just to provide a session process for stand alone window managers but user services with sysvinit.

#8 Re: Documentation » How to: Devuan 5 Daedalus an pipewire » 2025-04-06 20:36:47

wish the code to talk ratio was better tho...

#9 Re: Documentation » How to: Devuan 5 Daedalus an pipewire » 2025-04-05 19:05:40

Talk is cheap.

extremely cheap

This isn't going to go away, so which solution do we want?
* Extend sysvinit.
* Switch to an init system that isn't quite so crusty.
* Adopt something else to manage user daemons, such as the examples I mentioned earlier.
* Maintain fragile semi-functional shell hacks for each package that needs this, and deal with the inevitable bugs/jank as they arise.
* Bury our heads in the sand, and let the users figure it out. *status quo*

i wrote my own solution to manage user level services in pure posix shell script very much inspired by my understanding of sysvinit, it works well enough for me but is still 2, well 3 major feature sets (if you want XDG_AUTOSTART to just work seamlessly) away from being a proper session-manager/session-process that is also completely agnostic to the environment (x11, wayland, tty, ssh, whatever) other than requiring a posix shell interpreter and core utils (all which can so far be provided by busybox), but the project has gained basically no traction, so far i've only got some comments and feedback from like 5 or 6 people so my work on the project has been sporadic, i mainly work on the project when I need a new feature or have foolishly done work before applying to a coding job, mind you without results... if anyone's interested (likely not) the link is here: https://github.com/eylles/shed

#10 Re: Off-topic » curated pico-distributions (aka curated workflows) » 2025-03-24 23:47:01

well the "sudio" metapackage would certainly be the more complex and hard to create package but something like a "bunsen desktop" would be an easier package to create, after all it would require to package in devuan is a diver for thunar https://github.com/BunsenLabs/bunsen-th … r.postinst and set of configs https://github.com/BunsenLabs/bunsen-configs

again that is purely as an example.

#11 Re: Off-topic » curated pico-distributions (aka curated workflows) » 2025-03-24 01:25:16

maybe the wording of "workflows" is worse than "pico-distributions" and the term chomwitt was searching for is "flavours" a-la ubuntu or "respins" a la manjaro.

to give an example some such respin could be an openbox + thunar + tint2 + jgmenu to provide an alternative to the xfce, gnome and kde desktops, call the metapackage something like "bunsen desktop" as those 4 component are what bunsenlabs linux builds their desktop with, another metapackage could be an equivalent of the "ubuntu studio", something like a "devuan studio" package that pulls other 4 metapackages for "audio" "graphics" "photography" and "video"

to such an assortment of metapackages we could then come and define multiple community maintained metapackages to provide various desktop experiences and workflows.

tho there would require some standarization to have all this metapackages depend on standar xdg-destktop features so that there won't be a package that "implodes and doesn't work" unless someone goes out of the way to do something super custom, at which point installing these "workflows" and "pico-distro" metapackages would be counterproductive.

#12 Re: Off-topic » Note taking » 2025-02-19 14:00:24

i'm currently using vimwiki inside neovim, used to use joplin notes but i really had no use for the encryption of the notes nor was really notetaking on the phone.

#13 Re: Off-topic » Do you guys have girlfriends or boyfriends? » 2025-02-08 22:49:01

you are on a forum for a niche linux distro, why niche? 'cuz a lotta users don't care what happens in between the press of the power button and the login screen showing up on their display.

as for the users on the forum my bet is a good lot of us are on the "20 to 30 and has never had an actual date" demographic.

#14 Re: Devuan » Devuan and gaming, any benefits? » 2025-02-08 22:25:04

yes, it can be relaxing after hours of debugging your code cuz it doesn't work as intended.

#15 Re: Installation » .xinitrc like in wayland ? » 2025-02-06 06:33:35

you could give this thing i made a shot, it was originally made with the x11 achitecture in mind but it is written in pure posix shell and should be flexible enough to work with wayland, tho i still got to add some more stuff to differentiate the managed daemons in groups other than the current session service group

https://github.com/eylles/shed

#16 Re: Devuan » pam warns about cedeing another feature to systemd by default » 2025-02-06 01:41:21

yeh, "centralizing" those configs under /etc/security/limits.conf for the global limits config and having the per program limits configs at /etc/security/limits.d/*.conf is a good thing, it sorta kinda follows the logic of /etc/sysctl.d/*.conf configs and makes setting the limits and max map count as easy as just writing 2 files.

#17 Re: Hardware & System Configuration » Bluetooth issue with Devuan 5 Daedalus » 2025-02-05 01:40:27

yeh i've been having problems with blueman on excalibur for a while so i've been doing everything through the bluetoothctl cli

#18 Re: Off-topic » Statement regarding X community » 2025-01-31 04:21:20

ah Xitter, i abandoned it back in hmmm 2017 or was it 2018? 
oh well don't remember exactly but using the fediverse is a much better experience than Xitter will ever be, for a start you curate your own timeline and the interactions go all the way from pics of cats and anime reviews to the latest AI stock market conspiracy theory all from the same guy, then you can also find yourself discuting with the free software absolutists on the licensing terms for a shell script that wraps a an MIT licensed binary all in the same hour, the old unhinged internet energy is refreshing to be honest you just gotta pick an instance that fits your taste.

#19 Re: Installation » [SOLVED]Can't access deb.devuan.org/* daedalus repositories » 2025-01-22 04:58:21

you can get mirror urls from https://www.devuan.org/get-devuan

if you don't feel like editing apt sources manually you can use https://github.com/eylles/devuan-script … mirrors.sh which is not really automatic but it allows you to simply put the bare urls inside a config file and let the script do the rest.

#20 Re: Installation » [SOLVED] /etc/cron.hourly/somejob starts a bash script as dash » 2025-01-13 05:30:54

another option is to use an inline script as a function with a heredoc.

here's an example of what is a posix compliant shell script that wraps the program nsxiv to add functionality but since there's no good way to decode a uri to a path with just the core utils a simple python script is used from a function, this sort of thing can be done with any interpreter for any language, say you want an awk script or a perl script, even a bash script the process would be all the same.

#!/bin/sh

TMPDIR="${TMPDIR:-/tmp}"
tmp="$TMPDIR/nsxiv_rifle_$$"

is_img_extension() {
    grep -iE '\.(jpe?g|png|gif|svg|jxl|webp|tiff|heif|avif|ico|bmp|pam|pbm|ppm|tga|qoi|ff|jpg_large)$'
}

listfiles() {
    if [ -n "$SORT_BY_TIME" ]; then
    find -L "$1" -maxdepth 1 -type f -printf '%T@\t%p\n' |
        sort -n | cut -f2 | is_img_extension | tee "$tmp"
    else
    find -L "$1" -maxdepth 1 -type f -print |
        is_img_extension | sort -Vfd | tee "$tmp"
    fi
}

open_img() {
    file="$1"; shift;
    # only go through listfiles() if the file has a valid img extension
    if echo "$file" | is_img_extension >/dev/null 2>&1; then
        trap 'rm -f $tmp' EXIT
        count="$(listfiles "///${file%/*}" | grep -nF "$file")"
    fi
    if [ -n "$count" ]; then
        nsxiv-env -i -n "${count%%:*}" "$@" -- < "$tmp"
    else
        # fallback incase file didn't have a valid extension, or we couldn't
        # find it inside the list
        nsxiv-env "$@" -- "$file"
    fi
}

uri2path() {
    python3 - "$@" <<'___HEREDOC'
from urllib.parse import unquote, urlparse
from sys import argv
for arg in argv[1:]:
    print(unquote(urlparse(arg).path))
___HEREDOC
}

[ "$1" = '--' ] && shift
case "$1" in
    "") echo "Usage: ${0##*/} PICTURES" >&2; exit 1 ;;
    /*) open_img "$1" ;;
    "~"/*) open_img "$HOME/${1#"~"/}" ;;
    file:///*) open_img "$(uri2path "$1")" ;;
    trash:///*)
        trash_dir="${XDG_DATA_HOME:-$HOME/.local/share}/Trash/files"
        open_img "${trash_dir}$(uri2path "$1")" -N "nsxiv_trash"
        ;;
    *) open_img "$PWD/$1" ;;
esac

another option is to have sub-scripts that may live in library paths, something like /usr/local/lib/mycronscript/module and then you run that module from inside your script as another executable.

#21 Re: Desktop and Multimedia » search something like logseq but lighter » 2025-01-07 18:17:56

well, terrible idea but if you are a vim/nvim user there's always vimwiki.

but if you want something more stand alone there's joplin https://joplinapp.org/

#22 Re: Installation » [SOLVED] Sources.list hates me! » 2025-01-01 06:58:15

use sudo but with -A and set your

$SUDO_ASKPASS

to

/usr/bin/ssh-askpass

just install

ssh-askpass-gnome

to provide the askpass.

#23 Re: Installation » [SOLVED] Sources.list hates me! » 2025-01-01 01:24:19

for editing config files there are also ways that don't involve running a text editor as root, but running it as a normal user and then using tee with sudo and an askpass program to create an authentication prompt so that the current buffer of the text editor (for example vim) is sent to tee and then tee which has root priviledges just writes the text onto the file.

other option is to make use of sudoedit

#24 Re: Installation » [SOLVED] Sources.list hates me! » 2024-12-31 04:19:38

nano works fine, so does vim for editing that sort of text files without adding other extraneous bits, bytes and chars that should not be there.

on the offhand you can also use something like the https://github.com/eylles/devuan-script … mirrors.sh script from devuan-scripts, which does some automation to set the sources.list correctly for the current suites.

#25 Re: Other Issues » [SOLVED] Question about update-rc.d » 2024-12-15 01:21:36

oh man i know that, got a couple rolls of sheet metal, some 1/8th spools of wire, some lenghts of industrial 4 conductor wire i gotta turn to extension cords one day and a good hold of pvc pipe that i keep telling myself i'll turn into a phone holder for an old tripod and the rest into a recurve bow... and that is just the stuff i've more or less thought about what to do with, then i got a good chunk of half written software i gotta sit down and polish

Board footer

Forum Software