Spyke

Posts

Remote desktop, not sharing desktop, how ?! [solved]

Hi,

I'm trying, without success so far, to initiate (or reconnect to an existing one) a remote desktop session (xfce here)

I've tried rustdesk, but this is sharing desktop1

I've tried nomachine, but even if it's look like it can do Remote desktop2 I see the login screen, and screen of the active user :/ not the one I give crendential for...

Xrdp fail.. plain and simple..

Is that possible or am I dreaming ?

Thanks.

Footnotes

  1. an active user (in front of the computer) can share his desktop with someone remotly, both are seeing the same. Generally the all screen is sended to the remote user trough video compress.

  2. a remote user can connect this his desktop session held (or not) open on the server. A user sitting in front of the acced computer and the remote user, do not see the same ! like tty

View original on programming.dev
14

Need help with **initramfs-tools/hook-functions**

Hi,

I'm currently busy with this project: MX_Linux_Respin_RPI_SysVinit

I want to enable luks encryption on the main (aka root) partition

I'm forking / portage https://github.com/gitbls/sdm/blob/master/sdm-cryptconfig to do so.

But there is a bug with copy_file from /usr/share/initramfs-tools/hook-functions see at : https://github.com/gitbls/sdm/discussions/352#discussioncomment-14997358

I don't understand WhyTF the function copy_file report $DESTDIR/sdmcryptfs as already existing while is being tested before, and it's not existing...

Any ideas ?

Thanks.

View original on programming.dev
11

Crontab problems... 😤 [solved]

Hi

When I setup a cron job like this crontab -e

*/1 * * * * echo $A_VARIABLE > /home/user/Desktop/test.txt

no problem, the file is created whether the variable exist or not.

BUT doing

*/1 * * * * cd /Path/To/Script && Script.sh
#The Script.sh
echo $A_VARIABLE > /home/user/Desktop/test.txt

Do not generate the file ! and The CRON log give me

(CRON) info (No MTA installed, discaring ouput)

and yes, the  Script.sh has the execution bit.

Any ideas ?

Thanks.

View original on programming.dev
19

Remote Desktop over SSH ?

Hi,

I'm using the LITE version of Raspberry PI OS. ( so without desktop environment and other stuff, but unfortunately not systemd free... )

When I use this raspberry locally I don't need a desktop, but remotely I might...

I've found an interesting link:
https://www.xmodulo.com/remote-control-raspberry-pi.html
   see Method Three: X11 Forwarding for Desktop over SSH

I see that xinit is not installed by default with LITE ( and it make sense ) so do you think if I install it, and follow the rest of instruction it will work ?

If I understand well the mechanism I do not need to install a desktop environment on the server ( the rpi ) but only on the client right ?

Or do you know a better way do achieve this ?

View original on programming.dev
19

Forward packets Wireguard to local subnet, with Nftables.

cross-posted from: https://programming.dev/post/24356655

Hi,

I would like to forward packets that come from a wireguard connection to a local subnet

environment
  • Client: connected to server trough wireguard IP 192.168.X.2
  • server: connected to Client trough wireguard IP 192.168.X.1 and 192.168.Y.1 ( it's not systemd free ¯\(ツ)/¯  )
  • aMachine: on the same subnet as server IP 192.168.Y.2

   

on the server I've done

#I don't know if this is necessary ?
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl --system

I've added the following rule to my nftables config but it seem the packet get lost ?

#added inside existing table `table ip Tip {}`
chain chPreRoute {
type nat hook prerouting priority 0; policy accept;
iif wg0 icmp type echo-request dnat to 192.168.Y.2
}
View original on programming.dev
7

Forward packets Wireguard to local subnet, with Nftables. [ solved ]

Hi,

I would like to forward packets that come from a wireguard connection to a local subnet

environment
  • Client: connected to server trough wireguard IP 192.168.X.2
  • server: connected to Client trough wireguard IP 192.168.X.1 and 192.168.Y.1 ( it's not systemd free ¯\(ツ)/¯  )
  • aMachine: on the same subnet as server IP 192.168.Y.2

   

on the server I've done

#I don't know if this is necessary ?
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl --system

I've added the following rule to the nftables config on server but it seem the packet get lost ?

#added inside existing table `table ip Tip {}`
chain chPreRoute {
type nat hook prerouting priority 0; policy accept;
iif wg0 icmp type echo-request dnat to 192.168.Y.2
}
View original on programming.dev
14

Use arguments in shell script with apt

Hi,

I would like to pass the arguments to apt trough a .sh script.

apt install "${1}/opensnitch_${1}_amd64.deb" "${1}/python3-opensnitch-ui_${1}_all.deb"

so for example if I launch test.sh 1.6.5 the script should run apt install 1.6.5/opensnitch_1.6.5_amd64.deb 1.6.5/python3-opensnitch-ui_1.6.5_all.deb

but it's not wokring it pass to apt only 1.6.5 and not the rest of the string... any ideas ?

View original on programming.dev
13

Why my nftables do not block DHCP ?

Hi,

On my Debian 12 Bookworm ( raspberry pi )

My nftables do not block DHCP packets ! according to this basic rules

nft -y list rulesset

table ip Tip {

	chain chIN {
		type filter hook input priority 0; policy drop;
		ct state established,related accept
	}
	chain chFW {
		type filter hook forward priority 0; policy drop;
	}
	chain chOUT {
		type filter hook output priority 0; policy drop;
		udp dport 67 drop #DHCP
		udp dport 53 accept
		tcp dport { 80, 443} accept
		ct state established,related accept
	}

}

DHCP should be blocked... but it's not as I get an IP from it..

Any ideas ?

Thanks.

View original on programming.dev
18

problem with `mkinitramfs` after compiling new kernel :'(

cross-posted from: https://programming.dev/post/23945016

Hi,

I've recompiled my kernel1 of my raspberry pi 4 than run under Devuan rpi

::: spoiler some of the command used on the rpi to compile

apt install build-essential libncurses-dev bison flex libssl-dev libelf-dev
mkdir /RaspKernel_6_1_y && cd /RaspKernel_6_1_y
git clone --depth=1 --branch rpi-6.1.y https://github.com/raspberrypi/linux
cd linux
cp /boot/config-6.1.93 /RaspKernel_6_1_y/linux/.config
KERNEL=kernel8
make menuconfig
time make -j$((`nproc` - 2)) Image.gz modules dtbs
make -j$((`nproc` - 2)) modules_install
cp arch/arm64/boot/Image.gz /boot/broadcom/$KERNEL.img
cp arch/arm64/boot/dts/broadcom/*.dtb /boot/broadcom/
cp arch/arm64/boot/dts/overlays/*.dtb* /boot/firmware/overlays/
cp arch/arm64/boot/dts/overlays/README /boot/firmware/overlays/
reboot
apt install cryptsetup

:::
In addition to have enabled some cipher/algorithm in the kernel config I have set a string ( TESTversionA ) in CONFIG_LOCALVERSION , may be I shouldn't have :/ ?

I'm currently following this guide LUKS on Raspberry Pi ( for context my related lemmy post )

So now that the kernel has been updated, the cryptsetup benchmark -c xchacha20,aes-adiantum-plain64 command is successful

So in order to enable luks in initramfs I'm following the preparing-linux section of this guide.

we can read:

initramfs has to be recreated

I followed the guidance and edited the initramfs-rebuild file to match my setup

::: spoiler initramfs-rebuild file

#!/bin/sh -e

# Rebuild initrd.gz after kernel upgrade to include new kernel's modules.
# https://github.com/Robpol86/robpol86.com/blob/master/docs/_static/initramfs-rebuild.sh
# Save as (chmod +x): /etc/kernel/postinst.d/initramfs-rebuild

# Remove splash from cmdline.
if grep -q '\bsplash\b' /boot/cmdline.txt; then
  sed -i 's/ \?splash \?/ /' /boot/cmdline.txt
fi

# Exit if not building kernel for this Raspberry Pi's hardware version.
version="$1"
current_version="$(uname -r)"
case "${current_version}" in
  *-v7+)
    case "${version}" in
      *-v7+) ;;
      *) exit 0
    esac
  ;;
  *+)
    case "${version}" in
      *-v7+) exit 0 ;;
    esac
  ;;
esac

# Exit if rebuild cannot be performed or not needed.
[ -x /usr/sbin/mkinitramfs ] || exit 0
[ -f /boot/broadcom/initrd.gz ] || exit 0
lsinitramfs /boot/broadcom/initrd.gz |grep -q "/$version$" && exit 0  # Already in initramfs.

# Rebuild.
mkinitramfs -o /boot/broadcom/initrd.gz "$version"

:::
and when I run mkinitramfs -o /boot/broadcom/initrd.gz I got

grep: /boot/config-6.1.93TEST+: No such file or directory

I've did

cp /RaspKernel_6_1_y/linux/.config /boot/config-6.1.93TEST+
mkinitramfs -o /boot/broadcom/initrd.gz

and it seemed worked. I've edit the remaining files

  • /boot/broadcom/cmdline.txt
  • /etc/fstab
  • /etc/crypttab

rebooted. Landed in the initramfs shell as expected

but benchmark -c xchacha20,aes-adiantum-plain64 is no longer successful :'(

Cipher xchacha20,aes-adiantum-plain64 (with 256 bit key) is not available

Any ideas where might lay the problem ?

Thanks.

Footnotes

  1. --branch rpi-6.1.y https://github.com/raspberrypi/linux

View original on programming.dev
3

problem with `mkinitramfs` after compiling new kernel :'(

Hi,

I've recompiled my kernel1 of my raspberry pi 4 that run under Devuan rpi

::: spoiler some of the command used on the rpi to compile

apt install build-essential libncurses-dev bison flex libssl-dev libelf-dev
mkdir /RaspKernel_6_1_y && cd /RaspKernel_6_1_y
git clone --depth=1 --branch rpi-6.1.y https://github.com/raspberrypi/linux
cd linux
cp /boot/config-6.1.93 /RaspKernel_6_1_y/linux/.config
KERNEL=kernel8
make menuconfig
time make -j$((`nproc` - 2)) Image.gz modules dtbs
make -j$((`nproc` - 2)) modules_install
cp arch/arm64/boot/Image.gz /boot/broadcom/$KERNEL.img
cp arch/arm64/boot/dts/broadcom/*.dtb /boot/broadcom/
cp arch/arm64/boot/dts/overlays/*.dtb* /boot/firmware/overlays/
cp arch/arm64/boot/dts/overlays/README /boot/firmware/overlays/
reboot
apt install cryptsetup

:::
In addition to have enabled some cipher/algorithm in the kernel config I have set a string ( TESTversionA ) in CONFIG_LOCALVERSION , may be I shouldn't have :/ ?

I'm currently following this guide LUKS on Raspberry Pi ( for context my related lemmy post )

So now that the kernel has been updated, the cryptsetup benchmark -c xchacha20,aes-adiantum-plain64 command is successful

So in order to enable luks in initramfs I'm following the preparing-linux section of this guide.

we can read:

initramfs has to be recreated

I followed the guidance and edited the initramfs-rebuild file to match my setup

::: spoiler initramfs-rebuild file

#!/bin/sh -e

# Rebuild initrd.gz after kernel upgrade to include new kernel's modules.
# https://github.com/Robpol86/robpol86.com/blob/master/docs/_static/initramfs-rebuild.sh
# Save as (chmod +x): /etc/kernel/postinst.d/initramfs-rebuild

# Remove splash from cmdline.
if grep -q '\bsplash\b' /boot/cmdline.txt; then
  sed -i 's/ \?splash \?/ /' /boot/cmdline.txt
fi

# Exit if not building kernel for this Raspberry Pi's hardware version.
version="$1"
current_version="$(uname -r)"
case "${current_version}" in
  *-v7+)
    case "${version}" in
      *-v7+) ;;
      *) exit 0
    esac
  ;;
  *+)
    case "${version}" in
      *-v7+) exit 0 ;;
    esac
  ;;
esac

# Exit if rebuild cannot be performed or not needed.
[ -x /usr/sbin/mkinitramfs ] || exit 0
[ -f /boot/broadcom/initrd.gz ] || exit 0
lsinitramfs /boot/broadcom/initrd.gz |grep -q "/$version$" && exit 0  # Already in initramfs.

# Rebuild.
mkinitramfs -o /boot/broadcom/initrd.gz "$version"

:::
and when I run mkinitramfs -o /boot/broadcom/initrd.gz I got

grep: /boot/config-6.1.93TEST+: No such file or directory

I've did

cp /RaspKernel_6_1_y/linux/.config /boot/config-6.1.93TEST+
mkinitramfs -o /boot/broadcom/initrd.gz

and it seemed worked. I've edit the remaining files

  • /boot/broadcom/cmdline.txt
  • /etc/fstab
  • /etc/crypttab

rebooted. Landed in the initramfs shell as expected

but benchmark -c xchacha20,aes-adiantum-plain64 is no longer successful :'(

Cipher xchacha20,aes-adiantum-plain64 (with 256 bit key) is not available

Any ideas where might lay the problem ?

Thanks.

Footnotes

  1. --branch rpi-6.1.y https://github.com/raspberrypi/linux

View original on programming.dev
12

boot on LUKS encrypted drive ( initramfs Vs initrd ) ?

Hi,

I'm trying to encrypt the root filesystem / of a raspberry pi 4 device running under Devuan rpi ( custom kernel )

I'm following LUKS on Raspberry Pi 2021 guide

That explain step by step how achieve this.

But the guide use initramfs and my distro seem to use initrd

So the question, is: should I migrate to initramfs ? and how check whats is inside my current initrd

or keep-up with initrd but then how insert the necessary to enable LUKS drive to be mounted by it ( initrd ) ?

Thanks.

View original on programming.dev
21

I cannot enable `HAVE_KPROBES_ON_FTRACE` - Kernel compile

Hi,

I have a great piece of software, that apparently need HAVE_KPROBES_ON_FTRACE

To config the kernel option I'm using :

make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- menuconfig

The Kernel is Linux/arm64 6.6.63

When I'm doing a search inside menuconfig i get:

Symbol: HAVE_KPROBES_ON_FTRACE [=n]
Type  : bool
Defined at arch/Kconfig:223


Symbol: KPROBES_ON_FTRACE [=n]
Type  : bool
Defined at arch/Kconfig:117
 Depends on: KPROBES [=y] && HAVE_KPROBES_ON_FTRACE [=n] && DYNAMIC_FTRACE_WITH_REGS [=n]

But I found it no where in the menu... and if I add it mannuly in the .config file, then make some more other adapations in menuconfig my manual entry disappear..

Any ideas ?

Maybe HAVE_KPROBES_ON_FTRACE is not supported in 6.6.63 ?

Thanks

View original on programming.dev
11

Boot on LUKS drive ( Rapsberry pi 4 )

Hi,

The SBC Raspberry Pi 4 boot on an sdcard with two partition /boot and /

So I managed to encrypt the partition / with cryptsetup

Here the partition of my sd-card

deviceFILESYSLABELUUID
sdb1vfatBOOT( 9 characters )
sdb2crrypto_LUKS( 36 characters )

I've modified the /boot/cmdline.txt

to ( on one line )

console=serial0,115200
console=tty1
root=UUID=#If I try the UUID of sdb2 it fail and also the UUID when I use `cryptsetup luksOpen /dev/sdb2 b2open`
rootfstype=ext4
fsck.repair=yes
loglevel=5
net.ifnames=0
firmware_class.path=/lib/firmware/updates/brcm
rootwait
cryptdevice=UUID=#I dont know which one:b2open

any ideas ?

Thanks.

View original on programming.dev
13

How install a package/program with all the dependencies tree to an offline devices ?

Hi,

I have an air gaped1 device. ( Devuan )

How do you manage to install packages/software on off-line1 device ?

I've heard of apt-offline but it seem to bug and I don't know if it's still maintained (last release two years ago)

of course I've tried manually but the dependencies relations are too crazy to do that fully manually

::: spoiler Dependence tree (not complete even) to install for example apt-offline

├── Depends
│   ├── Depends
│   │   ├── Depends
│   │   │   ├── Depends
│   │   │   │   └── python3-dbg_3.9.2-3_amd64.deb
│   │   │   ├── libcurl4-gnutls-dev_7.74.0-1.3+deb11u14_amd64.deb
│   │   │   ├── python3-pycurl-dbg_7.43.0.6-5_amd64.deb
│   │   │   └── python-pycurl-doc_7.43.0.6-5_all.deb
│   │   ├── python3-httplib2_0.18.1-3_all.deb
│   │   └── python3-pycurl_7.43.0.6-5_amd64.deb
│   ├── iso-codes_4.6.0-1_all.deb
│   ├── python3-pysimplesoap_1.16.2-3_all.deb
│   └── python-apt-common_2.2.1_all.deb
├── python3-apt_2.2.1_amd64.deb
└── python3-debianbts_3.1.0_all.deb

:::

Any ideas ?

Thanks.

Footnotes

  1. air gaped, off-line
    https://en.wikipedia.org/wiki/Air_gap_(networking) 2

View original on programming.dev
17
softwareoptions·Software recommendationsbySpongeB0B

Images to animated GIF offline and FLOSS ( Linux )

cross-posted from: https://programming.dev/post/18448635

Hi,

I was a very long time I didn't need to created a animated gif... I had a program before to take a static images (.jpg, .png etc..) and convert then into an animated gif..

All the web search engine push for online (aka SaaSS) tool 🤮

Do you know a program that do that ( Linux )

Thanks.

View original on programming.dev
6
frontend·Frontend Web DevelopmentbySpongeB0B

Create a `clip-path` animated ?

cross-posted from: https://programming.dev/post/18448206

Hi,

I would like to use a rectangle that move (left to right) to reveal an element / image

like this

The white box shall be the image to display

But I'm already block at my svg animation

<svg viewBox="0 0 265.135 68.642" xmlns="http://www.w3.org/2000/svg">
<g x="-55.790085" y="0.79151762">
    <rect
       style="fill:#ffcc00;stroke-width:2.46513;stroke-linecap:round;stroke-linejoin:round;paint-order:stroke fill markers;stop-color:#000000"
       width="55.465603"
       height="151.60599"       
       transform="rotate(45)" />
       <animate
      attributeName="x"
      values="-55.790085;265"
      dur="5s"
      repeatCount="indefinite" />
  </g>
</svg>

Because the rectangle is not moving :'(

Any ideas ?

Thanks.

View original on programming.dev
4
webdev·Web DevelopmentbySpongeB0B

Create a `clip-path` animated ?

Hi,

I would like to use a rectangle that move (left to right) to reveal an element / image

like this

The white box shall be the image to display

But I'm already block at my svg animation

<svg viewBox="0 0 265.135 68.642" xmlns="http://www.w3.org/2000/svg">
<g x="-55.790085" y="0.79151762">
    <rect
       style="fill:#ffcc00;stroke-width:2.46513;stroke-linecap:round;stroke-linejoin:round;paint-order:stroke fill markers;stop-color:#000000"
       width="55.465603"
       height="151.60599"       
       transform="rotate(45)" />
       <animate
      attributeName="x"
      values="-55.790085;265"
      dur="5s"
      repeatCount="indefinite" />
  </g>
</svg>

Because the rectangle is not moving :'(

Any ideas ?

Thanks.

View original on programming.dev
6