You are not logged in.
hello ,
ia m on fresh install of Devuan jessie on this laptop and it wont update since it is old laptop with graphics not supported by newer systems i suppose,
so my question is how can i best install newer firefox-esr (without need of huge dependencies) for devuan jessie?
it is because i want to turn into alsa-only laptop that i am not wanting to use the official firefox-esr ftp repository;
is is understanding that all the firefox-esr from devuan is alsa-only enabled,thanks
Hi kapqa, I'm using the firefox-latest release 121 and I use alsa-utils but with pipewire & wireplumber for sound.
as for downloading, usually I wait until firefox alerts me to an upgrade, (that's why the script uses /home/glenn/Downloads.)
if you care to look, there are many other versions there too.
here is my install proceedure,
#!/bin/bash
# sh "/home/glenn/build/firefox-from-git.sh"
echo "installing firefox-121.0.tar.bz2"
# https://download-installer.cdn.mozilla.net/pub/firefox/releases/121.0/
#wget https://download-installer.cdn.mozilla.net/pub/firefox/releases/xy.z/linux-x86_64/en-US/firefox-xy.z.tar.bz2
cd /home/glenn/Downloads
wget https://download-installer.cdn.mozilla.net/pub/firefox/releases/121.0/linux-x86_64/en-GB/firefox-121.0.tar.bz2
mv /home/glenn/Downloads/firefox-121.0.tar.bz2 /home/glenn/local/archive/source/
# archived : /home/glenn/local/archive/source/firefox-121.0.tar.bz2
cd /opt
tar xfj /home/glenn/local/archive/source/firefox-121.0.tar.bz2
# remove the old firefox links
mv /usr/bin/firefox /usr/bin/firefoxold
# or after backup of bookmarks and passwordz
# apt remove firefox-esr
# create new link
ln -s /opt/firefox/firefox /usr/bin/firefox
# copy statusBar script.
#rsync -avh /home/glenn/build/userChrome.css /opt/firefox/browser/chrome/
chmod -R 755 /opt/firefoxbtw, I have firefox-esr installed as well, I just don't use it for much, internet-radio...
I hope this helps you.
I apologize for the offtopic.
This is not the first case of developers not caring about users. As a result, the distribution loses them (users). A commercial organization would have gone bankrupt long ago. Obviously there is no manager limiting the free flight of developers' imaginations and there is no incentive to make the distribution convenient for users.
I agree, seems like the "Quality Control" is up to the user, corporate fascism, it's the fashion!
ok i wanted to try and test
devuan_daedalus_5.0.0_amd64_desktop-live
but after boot there is black terminal screen and askin login and passwort.
is that normal?
normally the iso distros starts fully till i the the kde, xfce desktop.
The live-desktop passwords are in the a text file from the download page...
https://devuan.rosset.eu.org/devuan-fil … p-live.txt
You can burn the iso to DVD or use dd or cat to image a USB thumb drive.
User name: devuan Password: devuan
Admin name: root Password: toor
Maintained by fsmithred (key id 0xA73823D3094C5620 on pgp.mit.edu)
Built with the Devuan SDK, live-sdk module by jaromil and parazyd...Generally, You wont need to login as a user, it should boot all the way to the desktop without asking, only root needs a PW.
If it won't boot, ... did you verify the download before you wrote it to a usb?
All the best.
I disable ipv6 the same way for my vpn.
But I don't have that other reference to an image.
you could comment (#) the reference and put the ipv6 command before the initrd...
initrd is supposed to speed up the loading of the kernel, and it does a little bit.
If it breaks you system-boot, then re-edit and try again.
All the best.
Hi, I have tried similar methods to install packages to maximise my investment (in my multimedia-entertainment-system).
Check the package you want is available for off-line installation.
ls -la /var/cache/apt/archives/ | grep "package-name.deb"then you may (try to) use dpkg to force install with no-deps, but with firmware you may have to reboot to load it and see if it works.
checkout the --help for dpkg...
root@GamesBox:/root dpkg --help | grep depend
--predep-package Print pre-dependencies to unpack.
--ignore-depends=<package>[,...]
Ignore dependencies involving <package>.
root@GamesBox:/root dpkg --help | grep force
--force-help Show help on forcing.
--[no-]triggers Skip or force consequential trigger processing.
--force-<thing>[,...] Override problems (see --force-help).
--no-force-<thing>[,...] Stop when problems encountered.Must read...
dpkg --force-help
root@GamesBox:/root dpkg --force-help
dpkg forcing options - control behaviour when problems found:
warn but continue: --force-<thing>,<thing>,...
stop with error: --refuse-<thing>,<thing>,... | --no-force-<thing>,...
Forcing things:
[!] all Set all force options
[*] security-mac Use MAC based security if available
[*] downgrade Replace a package with a lower version
configure-any Configure any package which may help this one
hold Install or remove incidental packages even when on hold
not-root Try to (de)install things even when not root
bad-path PATH is missing important programs, problems likely
bad-verify Install a package even if it fails authenticity check
bad-version Process even packages with wrong versions
statoverride-add Overwrite an existing stat override when adding it
statoverride-remove Ignore a missing stat override when removing it
overwrite Overwrite a file from one package with another
overwrite-diverted Overwrite a diverted file with an undiverted version
[!] overwrite-dir Overwrite one package's directory with another's file
[!] unsafe-io Do not perform safe I/O operations when unpacking
[!] script-chrootless Do not chroot into maintainer script environment
[!] confnew Always use the new config files, don't prompt
[!] confold Always use the old config files, don't prompt
[!] confdef Use the default option for new config files if one
is available, don't prompt. If no default can be found,
you will be prompted unless one of the confold or
confnew options is also given
[!] confmiss Always install missing config files
[!] confask Offer to replace config files with no new versions
[!] architecture Process even packages with wrong or no architecture
[!] breaks Install even if it would break another package
[!] conflicts Allow installation of conflicting packages
[!] depends Turn all dependency problems into warnings
[!] depends-version Turn dependency version problems into warnings
[!] remove-reinstreq Remove packages which require installation
[!] remove-protected Remove a protected package
[!] remove-essential Remove an essential package
WARNING - use of options marked [!] can seriously damage your installation.
Forcing options marked [*] are enabled by default.
Currently enabled options:
security-mac,downgrade
root@GamesBox:/root I hope this helps.
Hi, thanks for taking the time to report on those issues.
I enjoy the read. rc = release candidate, and experimental is kinda the same but on a distro level.
I used to surf the caldron of magaiea and cooker of mandriva before that...
I found it quite exciting at times.
All the best.
Hi, thank you for the tidings, all the best to you and yours.
I don't know the answer. I use open-rc since I started using Devuan.
I find it easy to use, and services and daemons may be started and stopped, restarted with sysvinit service calls.
(so I can still use the same commands, but it's a bit simpler (for me).
I started using open-rc when I switched over from pclinux.
There's another new one peeps are talking about, but I have not tried it,
runit (i dont know it's real name).
by the way, you could try one and if you don't like it install an other one.
see how you go.
Hi, yes to all those questions.
The installer will go through some stages. you get the choice of desktop (kde, etc... I only use kde plasma)
The choice of init is near the end, I like open-rc as well.
The live usb version is not kde. (iirc)
we have beautiful theme colours as well.
I love using Devuan, I think you will too. :-)
happy hollidays!
I would check to see when it is better loaded and started.
with open-rc ...
rc-update gives a list of services and when it is launched.
I don't know about the other service starters like sysvinit...
maybe if you change it from sysinit to default it may start later, allowing the boot process to continue.
My only concern is that it may have dependants that start after it.
I don't think it matters, you'll just be a little late to the web on boot.
I start the web connection after The GUI starts and My phone is tethered to the pc.
so, I run them all late.
It might impact network-shared folders...
The main trouble that may occur with dpkg -i -G (-G = don't overwrite higher versions) absolute-path
Is that it won't find the deps if required, but should give a list, if any of dep packages can't be found.
When I do this I generally find the packages and put them all in one directory ready for install. ~/Downloads For web-browser downloads. then I keep running "dpkg -i -G *.deb" untill the deps are met.
This is also a very good way to find out what dependency-hell is like.
All the best.
Hi, The file to edit is
add these sources, comment (#) the dvd/cdrom source from the default list
/etc/apt/sources.list
deb http://deb.devuan.org/merged/ daedalus main non-free contrib
deb http://deb.devuan.org/merged/ daedalus-security main non-free contrib
deb http://deb.devuan.org/merged/ daedalus-updates main non-free contrib
deb http://deb.devuan.org/merged/ daedalus-backports main non-free contrib
deb http://deb.devuan.org/merged/ daedalus-proposed-updates main non-free contrib Plain text, but you may need root access to save any changes.
after you save it run,
apt-get update
and try again with the update.
Thank you.
I got into a game yesterday and with all the graphics settings max out for quality the game chugs a bit.
With the graphics settings set to default (best for my machine) it's not so bad, but when it worked before it was fluid.
Thanks for the link. :-)
I think it's a pain to wait for tens of minutes to play and that's before connecting with a server. (not that I do, I only play bots.)
I've reported, "the game is not ready to play". I have only tested the CS:2 that one time after the above adjustment.
I have had the game play first time, but never again numerous times, that's still to be exercised (checked).
Even though I have checked the "steam system analyze" logs quite a few times, but missed this specific error message.
I was also confounded by steam's help practice, only if you're paying (imho). No sound from them when dealing with Linux, or very quiet anyway, community forum is the best it gets.
Anyhow, I'll give the game a whirl this afternoon and report back. Thank you.
Hi, I'm glad to report that it works like a charm.
Counter Strike 2, game play.
I've been struggling with this game for a while.
The game is going through changes, and the errors were not apparent to me, at that time.
For quite sometime the game required building shader files and would crash after the sometimes 35min wait.
I deleted the game and reinstalled (3 times this quarter) but no play.
Then game would not start in steam.
Eventually I saw an error in the steam diagnostics (thank the devs for that).
The last 2 lines...
pressure-vessel-wrap[2596]: E: Diagnostic output:
bwrap: Creating new namespace failed: nesting depth or /proc/sys/user/max_*_namespaces exceeded (ENOSPC)I saw that the setting on my system was not set.
I looked at some of the other settings and presumed it needed the same range as the others.
I can insert the code required to set this parameter for the linux kernel.
echo "user.max_user_namespaces = 63505" > /etc/sysctl.d/max_user_namespaces.confReboot to set the namespaces parameter.
check the list with...
sysctl -aI hope this will help.
Regards Glenn
If you're using sddm as a login ... you get a choice, but it's hard to see without a colourful backdrop.
bottom left is a box to select wayward or X11
If you want an older package, install the old one.20230210-5 (feb10 2023)
If you want to update the package, get the newest.(june25 2023)
I think the issue is that May 2023 package has been removed.
safe adventures.
I used squid proxy server with iptables, I used it for reducing noise, there fore reducing bandwidth ($/month).
"Uber Linux Project" by Ashton Mills, (atomic magazine Australia)A Firewalled Gateway.
Mandrake was the model I setup with Mandriva. You might find it someplace (as a guide, dated).
Anyhow, I don't remember using squid for blocking dns, but I wouldn't be surprised if it did have the ability.
the way things are going, a statement like this could be an offence in a country near you in the near future.
"Ya know when I was young and naive, I used to recommend Linux to my family members as a "secure" alternative to virus malware
plagued windows for banking and other important personal work."
I've seen a few like this on forums... it's like phishing, the way it asks, assumes... does not reply to words, but replies to posts...
.xsessionrc is legacy (X11?) system, not used much, but if you make one it will be used.
Hi, as for grub, we're using grub2 unless you change it. It just called grub, still.
I hated it at first, I was used to lilo and knew how to get around it.
I think that ima: error, has something to do with your systems sensors (TPM chip) for Trusted Platform Modules (etc)
that could be due to bios version, firmware updates (search that topic here at Dev1 for apt source list, it changed with Devuan Daedalus)
You may be able to switch it off in bios, but maybe required for M$Win OS's validity!
all the best.
# systemd to sysvinit startup script conversion
# ref. https://dev1galaxy.org/viewtopic.php?pid=23309#p23309
...has this handy link to a converting script.
sysd2v-0.3.sh , over 500 lines, 15kb file not at the link in that post...
#!/bin/sh
# sysd2v v0.3 -- systemd unit to sysvinit script converter
# Copyright (C) 2019 Trek http://www.trek.eu.org/devel/sysd2v
# distributed under the terms of the GNU General Public License 3
nl="
"
# read a systemd unit file and set variables named ini_{section}_{key}
# usage: read_unit filename instance
# filename service unit configuration file, '-' to read from stdin
# instance instance name for template units
read_unit()
{
filename=$1
instance=$2
if [ "$filename" != - ]
then
inifile_unit_name=${filename##*/}
inifile_unit_name=${inifile_unit_name%.*}
fi
rm_comm='/^[#;]/d'
concat=':l; /\\$/ { N; s/[[:space:]]*\\\n/ /; tl }'
subst_inst="s/%[Ii]/$instance/g"
unit=$(
cat "$filename" |
sed "$rm_comm" |
sed "$concat;$subst_inst"
)
section_list=$(
printf %s "$unit" |
sed -n 's/^\[\([[:alnum:]]\+\)\].*/\1/p'
)
oldifs=$IFS
IFS=$nl
for section in $section_list
do
get_sect='/^\['"$section"'\]/,/^\[.\+\]/'
key_list=$(
printf %s "$unit" |
sed -n "$get_sect"'s/^\([[:alnum:]]\+\)[[:space:]]*=.*/\1/p' |
sort -u
)
for key in $key_list
do
val=$(
printf %s "$unit" |
sed -n "$get_sect"'s/^'"$key"'[[:space:]]*=[[:space:]]*\(.*\)/\1/p'
)
var=$(
echo "${section}_$key" |
tr '[:upper:]' '[:lower:]'
)
eval ini_$var=\$val
[ -n "$debug" ] && echo "ini_$var=$val" >&2
done
done
IFS=$oldifs
}
# read a systemd configuration value and write its prefix to stdout
# usage: get_prefix val
# val systemd configuration value
get_prefix () { printf %s "$1" | sed -n 's/^\([-@:+!|]*\).*/\1/p'; }
# read a boolean value and returns true or false
# usage: is_true val
# val boolean value
is_true () { case "$1" in 1|[Oo][Nn]|[Tt]*|[Yy]*) true;; *) false; esac }
# read systemd services list and write LSB facilities to stdout
# usage: get_provides services
# services list of service units
get_provides ()
{
lst=
for dep in $1
do
lst=${lst:+$lst }${dep%.service}
done
printf %s "$lst"
}
# read systemd units list and write LSB facilities to stdout
# usage: get_depends dependencies [ignores]
# dependencies list of required units
# ignores facilities to ignore
get_depends ()
{
lst=
for dep in $1
do
d=
case $dep in
local-fs-pre.target) d=mountkernfs;;
time-sync.target) d=\$time;;
systemd-modules-load.service) d=kmod;;
local-fs.target|network-pre.target) d=\$local_fs;;
systemd-sysctl.service) d=procps;;
network.target|network-online.target|systemd-networkd.service)
d=\$network;;
nss-lookup.target) d=\$named;;
rpcbind.target|remote-fs-pre.target) d=\$portmap;;
remote-fs.target|sysinit.target|basic.target) d=\$remote_fs;;
syslog.service) d=\$syslog;;
boot-complete.target|multi-user.target|default.target) d=\$all;;
*.service) d=${dep%.service};;
*) echo "WARNING: unsupported target '$dep'" >&2
esac
ign=${2:+$2 }$lst
[ -z "$ign" -o -n "${ign%%*"$d"*}" ] &&
lst=${lst:+$lst }$d
done
printf %s "$lst"
}
# read LSB facilities list and write runlevel to stdout
# usage: get_runlevel facilities
# facilities list of required facilities
get_runlevel ()
{
case $1 in
*\$remote_fs*) echo 2 3 4 5;;
*) echo S
esac
}
# write a list of environment files to be executed
# usage: write_env list
# list files separated by newlines, with prefix (-)
write_env ()
{
oldifs=$IFS
IFS=$nl
for env in $1
do
pre=$(get_prefix "$env")
noerr=
[ -n "$pre" -a -z "${pre%%*-*}" ] && noerr="[ -r ${env#$pre} ] && "
printf '%s\n' "$noerr. ${env#$pre}"
done
IFS=$oldifs
}
# write an environment variable containing paths
# usage: write_path name prefix list
# name name of the environment variable
# prefix path prefix to append directories
# list paths separated by spaces or newlines
write_path ()
{
lst=
for dir in $3
do
lst=${lst:+$lst:}$2/$dir
done
[ -z "$3" ] || printf '%s=%s\n' $1 $lst
}
# write a list of directories to be created
# usage: write_install prefix list [user [group [mode]]]
# prefix path prefix to append directories
# list paths separated by spaces or newlines
# user user ownership
# group group ownership
# mode permission mode
write_install ()
{
for dir in $2
do
printf ' install -d %s%s/%s || return 2\n' \
"${3:+-o $3 }${4:+-g $4 }${5:+-m $5 }" "$1" "$dir"
done
}
# write a list of commands applying systemd executable prefixes
# usage: write_commands list [run [runpriv]]
# list commands separated by newlines, with prefixes (-@:+!)
# run command line to run each command (nice, chrt, ...)
# runpriv command line to set privileges (runuser, ...)
write_commands ()
{
oldifs=$IFS
IFS=$nl
for cmd in $1
do
pre=$(get_prefix "$cmd")
beg=$3
end=' || return 2'
if [ -n "$pre" ]
then
[ -z "${pre%%*-*}" ] && end=
[ -z "${pre%%*[+!]*}" ] && beg=
[ -z "${pre%%*[@:]*}" ] &&
echo "WARNING: unsupported exec prefix '$pre'" >&2
fi
printf ' %s\n' "$2$beg${cmd#$pre}$end"
done
IFS=$oldifs
}
# read a list of commands separated by newlines and write an override function
# usage: write_function name [commands]
# name function name (start_cmd, stop_cmd, ...)
# commands list of commands, read from stdin if omitted
write_function ()
{
lst=${2-$(cat)}
[ -n "$lst" ] || return
[ "$lst" = : ] && printf "do_${1}_override () :\n\n" && return
end=' true\n'
[ -z "${lst%%*|| return [0-9]}" -o -z "${lst%%*|| return \$?}" ] && end=
printf "do_${1}_override ()\n{\n%s\n$end}\n\n" "$lst"
}
# write an init-d-script file starting from the ini_* vars (see read_unit)
# usage: write_init servicename instance
# servicename name of the service provided
# instance instance name for template units
write_init ()
{
name=$1
instance=$2
if [ "${name%@}" != "$name" ]
then
name=$name$instance
fi
daemon_pre=$(get_prefix "$ini_service_execstart")
daemon=${ini_service_execstart#$daemon_pre}
if [ "${daemon%%[[:space:]]*}" != "$daemon" ]
then
daemon_args=${daemon#*[[:space:]]}
daemon=${daemon%%[[:space:]]*}
fi
pidfile=$ini_service_pidfile
if [ -n "$ini_service_user" ]
then
start_args="--user $ini_service_user"
[ -n "$daemon_pre" -a -z "${daemon_pre%%*[+!]*}" ] ||
start_args="$start_args --chuid $ini_service_user"
stop_args="--user $ini_service_user"
runprivstart="runuser -u $ini_service_user -- "
is_true "$ini_service_permissionsstartonly" || runpriv=$runprivstart
fi
cls=$ini_service_ioschedulingclass
pri=$ini_service_ioschedulingpriority
[ -n "$cls$pri" ] &&
start_args="$start_args --iosched ${cls:-best-effort}${pri:+:$pri}" &&
run="ionice ${cls:+-c $cls }${pri:+-n $pri }"
pol=$ini_service_cpuschedulingpolicy
pri=$ini_service_cpuschedulingpriority
[ -n "$pol$pri" ] &&
start_args="$start_args --procsched ${pol:-other}${pri:+:$pri}" &&
run="${run}chrt ${pol:+--$pol }${pri:-0} "
[ -n "$ini_service_nice" ] &&
start_args="$start_args --nicelevel $ini_service_nice" &&
run="${run}nice -n $ini_service_nice "
pre=$(get_prefix "$ini_service_workingdirectory")
workdir=${ini_service_workingdirectory#$pre}
[ "$workdir" = '~' ] && workdir=\~$ini_service_user
[ -n "$workdir" ] &&
start_args="$start_args --chdir $workdir" &&
chdir="${pre}cd $workdir"
if [ -z "${service_type:=$ini_service_type}" ]
then
if [ -n "$ini_service_busname" ]
then
service_type=dbus
elif [ -n "$ini_service_execstart" ]
then
service_type=simple
else
service_type=oneshot
fi
fi
if [ "$service_type" != forking ]
then
start_args="$start_args --background"
[ -z "$pidfile" -a "$ini_service_killmode" != none ] &&
start_args="$start_args --make-pidfile" &&
pidfile="/var/run/$name-sysd2v.pid"
fi
if [ "$service_type" = notify ]
then
start_args="$start_args --notify-await"
timeout=${ini_service_timeoutstartsec:-$ini_service_timeoutsec}
timeout=${timeout%s}
[ -n "${timeout#60}" ] &&
start_args="$start_args --notify-timeout $timeout"
[ -n "$timeout" -a -z "${timeout%%*[^0-9]*}" ] &&
echo "WARNING: unsupported timeout '$timeout'" >&2
elif [ "$service_type" = dbus ]
then
: TODO
fi
signal=${ini_service_killsignal#SIG}
timeout=${ini_service_timeoutstopsec:-$ini_service_timeoutsec}
timeout=${timeout%s}
[ -n "${signal#TERM}" -o -n "${timeout#90}" ] &&
stop_args="$stop_args --retry=${signal:-TERM}/${timeout:-90}/KILL/5"
limitnofile=$ini_service_limitnofile
[ "$limitnofile" = infinity ] && limitnofile=unlimited
need_install=$ini_service_runtimedirectory
need_install=$need_install$ini_service_statedirectory
need_install=$need_install$ini_service_cachedirectory
need_install=$need_install$ini_service_logsdirectory
need_install=$need_install$ini_service_configurationdirectory
need_do_start=$ini_service_execstartpre$ini_service_execstartpost
need_do_start=$need_do_start$need_install
execstop=$ini_service_execstop
if [ "$service_type" != oneshot ]
then
[ "$pidfile" = "/var/run/${daemon##*/}.pid" ] && unset pidfile
[ "$name" = "${daemon##*/}" ] && unset name
[ -n "$daemon_args" -a -z "${daemon_args%%*[\"\\]*}" ] &&
echo "WARNING: DAEMON_ARGS needs to be escaped" >&2
errcheck=' || return $?'
if [ -n "$daemon_pre" ]
then
[ -z "${daemon_pre%%*-*}" ] && errcheck=
[ -z "${daemon_pre%%*[@:]*}" ] &&
echo "WARNING: unsupported exec prefix '$daemon_pre'" >&2
fi
# TODO: test if already running before start (pretest="+do_status_cmd")
[ -n "$need_do_start" -o -z "$errcheck" ] &&
execstart="-+do_start_cmd$errcheck"
errcheck=' || return $?'
[ -n "$execstop" ] && errcheck=
[ -n "$execstop$ini_service_execstoppost" -a \
"$ini_service_killmode" != none ] &&
killstop="-do_stop_cmd$errcheck"
[ -n "$timeout" -a -z "${timeout%%*[^0-9]*}" ] &&
echo "WARNING: unsupported timeout '$timeout'" >&2
else
daemon=none
pidfile=none
: ${name:=SERVICE_NAME}
unset daemon_args start_args stop_args
execstart=$ini_service_execstart
runstart=$run
fi
need_do_start=$need_do_start$execstart
start_args=${start_args# }
stop_args=${stop_args# }
aliases=$(get_provides "$ini_install_alias")
[ -z "$ini_unit_defaultdependencies" ] ||
is_true "$ini_unit_defaultdependencies" &&
defdep=sysinit.target
req_start=$(get_depends "$ini_unit_requires $defdep")
should_start=$(get_depends "$ini_unit_wants $ini_unit_after" "$req_start")
default_start=$(get_runlevel "$req_start $should_start")
[ "$default_start" = S ] && default_stop='0 6' || default_stop='0 1 6'
[ -z "$execstop$ini_service_execstoppost" ] &&
[ "$service_type" = oneshot -o "$ini_service_killmode" = none ] &&
default_stop=
[ "$default_start" = S ] && ignore=\$remote_fs
start_before=$(get_depends "$ini_unit_requiredby $ini_install_wantedby
$ini_unit_before" "$req_start $should_start \$all $ignore")
cat <<EOF
#!/bin/sh
# Generated by sysd2v v0.3 -- http://www.trek.eu.org/devel/sysd2v
# kFreeBSD do not accept scripts as interpreters, using #!/bin/sh and sourcing.
if [ true != "\$INIT_D_SCRIPT_SOURCED" ] ; then
set "\$0" "\$@"; INIT_D_SCRIPT_SOURCED=true . /lib/init/init-d-script
fi
### BEGIN INIT INFO
# Provides: ${name:-${daemon##*/}}${aliases:+ $aliases}
# Required-Start: $req_start
# Required-Stop: ${default_stop:+$req_start}
${should_start:+# Should-Start: $should_start
${default_stop:+# Should-Stop: $should_start
}}${start_before:+# X-Start-Before: $start_before
${default_stop:+# X-Stop-After: $start_before
}}# Default-Start: $default_start
# Default-Stop: $default_stop
# Description: ${ini_unit_description:-SERVICE_DESCRIPTION}
### END INIT INFO
EOF
if [ -n "$ini_service_environment$ini_service_environmentfile$need_install" ]
then
echo set -a
write_path RUNTIME_DIRECTORY /run "$ini_service_runtimedirectory"
write_path STATE_DIRECTORY /var/lib "$ini_service_statedirectory"
write_path CACHE_DIRECTORY /var/cache "$ini_service_cachedirectory"
write_path LOGS_DIRECTORY /var/log "$ini_service_logsdirectory"
write_path CONFIGURATION_DIRECTORY /etc \
"$ini_service_configurationdirectory"
printf '%s' "${ini_service_environment:+$ini_service_environment$nl}"
write_env "$ini_service_environmentfile"
printf 'set +a\n\n'
fi
cat <<EOF
${name:+DESC=\"$name\"
}DAEMON=$daemon
${daemon_args:+DAEMON_ARGS=\"$daemon_args\"
}${pidfile:+PIDFILE=$pidfile
}${start_args:+START_ARGS=\"$start_args\"
}${stop_args:+STOP_ARGS=\"$stop_args\"
}${limitnofile:+ulimit -n $limitnofile
}${ini_service_umask:+umask $ini_service_umask
}
EOF
if [ -n "$need_do_start" ]
then
{
write_install /run "$ini_service_runtimedirectory" \
"$ini_service_user" "$ini_service_group" \
"$ini_service_runtimedirectorymode"
write_install /var/lib "$ini_service_statedirectory" \
"$ini_service_user" "$ini_service_group" \
"$ini_service_statedirectorymode"
write_install /var/cache "$ini_service_cachedirectory" \
"$ini_service_user" "$ini_service_group" \
"$ini_service_cachedirectorymode"
write_install /var/log "$ini_service_logsdirectory" \
"$ini_service_user" "$ini_service_group" \
"$ini_service_logsdirectorymode"
write_install /etc "$ini_service_configurationdirectory" '' '' \
"$ini_service_configurationdirectorymode"
write_commands "$chdir"
write_commands "$ini_service_execstartpre" "$run" "$runpriv"
write_commands "$execstart" "$runstart" "$runprivstart"
write_commands "$ini_service_execstartpost" "$run" "$runpriv"
} | write_function start_cmd
else
[ "$service_type" = oneshot ] && write_function start :
fi
if [ -n "$execstop$ini_service_execstoppost" ]
then
{
write_commands "$chdir"
write_commands "$execstop" "$run" "$runpriv"
write_commands "$killstop"
write_commands "$ini_service_execstoppost" "$run" "$runpriv"
} | write_function stop_cmd
else
[ "$service_type" = oneshot -o "$ini_service_killmode" = none ] &&
write_function stop :
fi
if [ "$ini_service_execreload" = '/bin/kill -HUP $MAINPID' -a \
-z "$run$runpriv" ]
then
printf 'alias do_reload=do_reload_sigusr1\n\n'
elif [ -n "$ini_service_execreload" ]
then
{
write_commands "$chdir"
write_commands "$ini_service_execreload" "$run" "$runpriv"
} | write_function reload_cmd
cat <<"EOF"
do_reload ()
{
log_daemon_msg "Reloading $DESC configuration files" "$NAME"
MAINPID=$(cat $PIDFILE)
do_reload_cmd_override
log_end_msg $?
}
EOF
fi
[ "$service_type" = oneshot ] && write_function status :
}
# parse command line
while getopts di:n: opt
do
case $opt in
d) debug=1;;
i) instance=$OPTARG;;
n) name=$OPTARG;;
?) printf "Usage: %s [-d] [-i instance] [-n servicename] [filename]\n" \
"$0"
exit 2;;
esac
done
: ${instance=INSTANCE_NAME}
shift $(($OPTIND - 1))
# convert unit file
read_unit "${1:--}" "$instance"
write_init "${name-$inifile_unit_name}" "$instance"I have a copy... (not sure if I may post it here in code tags???)
happy to share.
Maybe it'll work for you. Just look out for start and stop levels being consistent with your system.
I wish I could leave Wayland out of my system.
I don't directly use Gnome, systemd, pulseaudio or wayland with kde5/Plasma.
I wonder Why it is packaged with those dependencies?
Somewhere I read the starting order was important... but mine looks different.
~.xsessionrc
# kill any existing pipewire instance to restore sound
pkill -u "$USER" -fx /usr/bin/pipewire-pulse 1>/dev/null 2>&1
pkill -u "$USER" -fx /usr/bin/wireplumber 1>/dev/null 2>&1
pkill -u "$USER" -fx /usr/bin/pipewire 1>/dev/null 2>&1
exec /usr/bin/pipewire &
# wait for pipewire to start before attempting to start related daemons
while [ "$(pgrep -f /usr/bin/pipewire)" = "" ] ; do
sleep 1
done
exec /usr/bin/wireplumber &
exec /usr/bin/pipewire-pulse &I arrived here by attempting to remove pulseaudio altogether, but too many things were silent.
I can't be certain, I think I got it from this forum. HoaS?
Services, rc-update only has alsa-utils at sysinit level.
The only pulse audio packages I have are the ones that would also take most of the install as well, usually libpulse0, plasma-pa, pipewire-pulse, libpulse-mainloop-glib0. But not apulse.
Just my 2cents worth, hoping this may help someone.
1984, disgusting book, well worth the second read 20 years later.
Today I'm reading 'Alan Watts - The Way of Zen'.
I don't know anything about it... wip