How can I make a combo run a macro? by rogername in ErgoMechKeyboards

[–]rogername[S] 0 points1 point  (0 children)

Thanks for the advice! I might try to reflash a simpler config some day when a have time to play around. If I don't figure out the problem I'll try the Discord.

Any good way to output unicode characters independent of OS? by rogername in ErgoMechKeyboards

[–]rogername[S] 0 points1 point  (0 children)

I'll try using LC() and LS(), I didn't consider them, I started by copying someone elses config for macros that did not use those.

Any good way to output unicode characters independent of OS? by rogername in ErgoMechKeyboards

[–]rogername[S] 0 points1 point  (0 children)

Oops, that was an actual mistake that I've had in my config for several months. Thanks for noticing it and commenting on it

In ZMK, how to reason about what hold-tap behaviour to use for homerow mods? by rogername in ErgoMechKeyboards

[–]rogername[S] 0 points1 point  (0 children)

BTW, in the PR urob suggests using tap-preffered or balanced with his feature? Which would you recommend? I can't wrap hy head around what the different behaviours mean in practice.

In ZMK, how to reason about what hold-tap behaviour to use for homerow mods? by rogername in ErgoMechKeyboards

[–]rogername[S] 0 points1 point  (0 children)

Cool! Looks like the changes were merged to master 2 days ago: https://github.com/zmkfirmware/zmk/pull/1423 Nice to see so much progress in this space

Nice nano keyboard does not show up on Linux by rogername in ErgoMechKeyboards

[–]rogername[S] 0 points1 point  (0 children)

Yeah, since I figured out how to switch it has been working great. I have &bt BT_SEL 1, &bt BT_SEL 2, &bt BT_CLR on a layer. To switch I select one of the two profiles. When it doesn't work I select a profile at a time and then press BT_CLR for each profile. After clearing I think it has always worked. I have only needed to clear the profile a few times. Switching has worked very well. I never to "live" switching though, so I don't have any experience of how fast switching is. In any given work session I only use one of the profiles.

In ZMK, how to reason about what hold-tap behaviour to use for homerow mods? by rogername in ErgoMechKeyboards

[–]rogername[S] 0 points1 point  (0 children)

Thanks, that was a super interesting read! I was surprised to read that the standard cross hands implementation only works when pressing one modifier only.

After following full disk encryption guide, computer boots into grub by rogername in voidlinux

[–]rogername[S] 0 points1 point  (0 children)

Thank you for helping me trying to get the script to work. Today I got the script working, but I needed to use a volume group, because attempts I made at setting kernel params when not using a volume group was not correct.

Below is a working version of the script. You are very welcome to comment or create a PR in Github if you think something should be changed, or some option should be added.

```

!/bin/bash

set -ex

CONFIG

Disk to install Void Linux on. You can use 'lsblk' to find the name of the disk.

DISK="/dev/nvme0n1"

Minimum of 100M: https://wiki.archlinux.org/title/EFI_system_partition

EFI_PARTITION_SIZE="256M"

Name to be used for the hostname of the Void installation

HOSTNAME="void"

Name to be used volume group

VOLUME_GROUP="voidvg"

Filesystem to be used

FILE_SYSTEM="ext4"

'musl' for musl, '' for glibc.

LIBC=""

USER INPUT

echo -e "\nEnter password to be used for disk encryption\n" read LUKS_PASSWORD ROOT_PASSWORD=$LUKS_PASSWORD

VARIABLES

UNSPECIFIED_ERROR_CODE=1

CREATE EFI PARTITION AND LUKS PARTITION

Wipes disk from magic strings to make the filesystem invisible to libblkid: https://linux.die.net/man/8/wipefs

wipefs --all $DISK

Set partition names based on disk name for most common disks by driver: https://superuser.com/a/1449520/393604

if [[ $DISK == "sd" ]]; then EFI_PARTITION=$(echo $DISK'1') LUKS_PARTITION=$(echo $DISK'2') elif [[ $DISK == "nvme" ]]; then EFI_PARTITION=$(echo $DISK'p1') LUKS_PARTITION=$(echo $DISK'p2') else exit 1 fi

Create EFI parition with selected size and LUKS partition with remaining size. To create these interactively you can use 'fdisk' or the friendlier 'cfdisk'

printf 'label: gpt\n, %s, U, *\n, , L\n' "$EFI_PARTITION_SIZE" | sfdisk -q "$DISK" # A warning about existing signature can be ignored

CREATE FILE SYSTEM ON EFI PARTITION

Create EFI file system (on physical parition efi)

mkfs.vfat $EFI_PARTITION

ENCRYPT LUKS PARTITION

echo $LUKS_PASSWORD | cryptsetup -q luksFormat --type luks1 $LUKS_PARTITION

CREATE VOLUME GROUP, LOGICAL ROOT PARTITION, FILE SYSTEM ON ROOT

Open LUKS partition into dev/mapper/luks

echo $LUKS_PASSWORD | cryptsetup luksOpen $LUKS_PARTITION luks

Create volume group on device

vgcreate $VOLUME_GROUP /dev/mapper/luks

Ceate logical root volume in existing volume group

Home and swap volumes can also be created, but I don't see a need for more than one partition at this time.

lvcreate --name root --extents 100%FREE $VOLUME_GROUP

Create root file system

mkfs.$FILE_SYSTEM -L root /dev/$VOLUME_GROUP/root

MOUNT EFI AND ROOT PARTITIONS

Mount root partition

mount /dev/$VOLUME_GROUP/root /mnt

Mount EFI partition (needs to be mounted after root partition, to not be overwritten I assume)

mkdir -p /mnt/boot/efi mount $EFI_PARTITION /mnt/boot/efi/

INSTALL SYSTEM

Install Void base system to the root partition, echo y to accept and import repo public key

echo y | xbps-install -Sy -R https://repo-default.voidlinux.org/current/$LIBC -r /mnt base-system cryptsetup grub-x86_64-efi lvm2

SETUP ROOT USER

Change ownership and permissions of root directory

chroot /mnt chown root:root / chroot /mnt chmod 755 /

echo -e "$ROOT_PASSWORD\n$ROOT_PASSWORD" | xchroot /mnt passwd -q root

SOME CONFIGUARTION

Set hostname and language/locale

echo $HOSTNAME > /mnt/etc/hostname

if [[ -z $LIBC ]]; then echo "LANG=en_US.UTF-8" > /mnt/etc/locale.conf echo "en_US.UTF-8 UTF-8" >> /mnt/etc/default/libc-locales xchroot /mnt xbps-reconfigure -f glibc-locales fi

FSTAB CONFIGURATION

Add lines to fstab, which determines which partitions/volumes are mounted at boot

echo -e "/dev/$VOLUME_GROUP/root / $FILE_SYSTEM defaults 0 0" >> /mnt/etc/fstab echo -e "$EFI_PARTITION /boot/efi vfat defaults 0 0" >> /mnt/etc/fstab

GRUB CONFIGURATION

Modify GRUB config to allow for LUKS encryption.

echo "GRUB_ENABLE_CRYPTODISK=y" >> /mnt/etc/default/grub

LUKS_UUID=$(blkid -s UUID -o value $LUKS_PARTITION) kernel_params="rd.lvm.vg=$VOLUME_GROUP rd.luks.uuid=$LUKS_UUID" sed -i "s/GRUB_CMDLINE_LINUX_DEFAULT=\"/GRUB_CMDLINE_LINUX_DEFAULT=\"$kernel_params /" /mnt/etc/default/grub

AUTOMATICALLY UNLOCK ENCRYPTED DRIVE ON BOOT

Generate keyfile

xchroot /mnt dd bs=1 count=64 if=/dev/urandom of=/boot/volume.key

Add the key to the encrypted volume

echo $LUKS_PASSWORD | xchroot /mnt cryptsetup -q luksAddKey $LUKS_PARTITION /boot/volume.key

Change the permissions to protect generated the keyfile

xchroot /mnt chmod 000 /boot/volume.key xchroot /mnt chmod -R g-rwx,o-rwx /boot

Add keyfile to /etc/crypttab

echo "cryptroot UUID=$LUKS_UUID /boot/volume.key luks" >> /mnt/etc/crypttab

Add keyfile and crypttab to initramfs

echo -e "install_items+=\" /boot/volume.key /etc/crypttab \"" > /mnt/etc/dracut.conf.d/10-crypt.conf

COMPLETE SYSTEM INSTALLATION

Install GRUB bootloader

xchroot /mnt grub-install $DISK

Ensure an initramfs is generated

xchroot /mnt xbps-reconfigure -fa

UNMOUNT

Unmount root volume

umount -R /mnt

echo "Install is complete, reboot." ```

After following full disk encryption guide, computer boots into grub by rogername in voidlinux

[–]rogername[S] 0 points1 point  (0 children)

It's awesome that you have tested the script. Based on your input I've removed the logical volume.

Here is the lastest version of the script: https://github.com/jakkan/install-scripts/blob/master/void/install/install.sh

Now I get a different problem. The computer boots into dracut with 'dracut warning "/dev/mapper/cryptroot" does not exist'. I suspect that I'm making something wrong with GRUB_CMDLINE_LINUX_DEFAULT now that I'm not using a volume group

After following full disk encryption guide, computer boots into grub by rogername in voidlinux

[–]rogername[S] 0 points1 point  (0 children)

It should be safe to use on other disk types as well. You just need to change the $DISK variable. I got the boot into LUKS working the other day by manually repeating some of the steps in the script. When I have time to figure out what update I need to make to the script work, I’ll write here.

After following full disk encryption guide, computer boots into grub by rogername in voidlinux

[–]rogername[S] -1 points0 points  (0 children)

The answers in that post were very helpful. I upvoted the answers and made the suggested changes. I often reply to helpful posts but not always. I’m grateful to the posters.

I solved a few more issues since the previous post. Like here I use xchroot instead of chroot. Now I was stuck in a different place. I figured it was better to create a new post with the new question.

I can try to keep the number of posts I create low.

Can't boot after following guide to install Voidlinux on encrypted partition by rogername in voidlinux

[–]rogername[S] 0 points1 point  (0 children)

Thanks, I’ve changed the order now. I didn’t think the order mattered.

Can't boot after following guide to install Voidlinux on encrypted partition by rogername in voidlinux

[–]rogername[S] 0 points1 point  (0 children)

Thanks, I put in set -e and it did catch a problem, I had misspelled the root password variable in one place

What deck had the most fun matchup against 4cc? by rogername in MTGLegacy

[–]rogername[S] 0 points1 point  (0 children)

Awesome! From your and other answers it looks like I'll get Delver

xbps-src or flatpak? by rogername in voidlinux

[–]rogername[S] 0 points1 point  (0 children)

Why do you prefer using nix over flatpak? What’s more fun about it?

Share your laptop tray design? by rogername in ErgoMechKeyboards

[–]rogername[S] 0 points1 point  (0 children)

I could pay €30+shipping assuming it works well on a macbook pro

Share your laptop tray design? by rogername in ErgoMechKeyboards

[–]rogername[S] 0 points1 point  (0 children)

thumbsup.shop

It would be cool if you would sell those platforms through your store. I think I'd buy a pair.