TheHobbyist

joined 3 years ago
[–] TheHobbyist@lemmy.zip 5 points 1 week ago (1 children)

I have been following on and off, sorry if you've already covered it, but what makes it into your backlog? Do you daily select a game you feel like playing from your list of owned games, or do you have an objective of finishing select games before going to the next one?

[–] TheHobbyist@lemmy.zip 5 points 1 week ago (7 children)

Gruezi, I built my own steam machine, with the following specs:

  • AMD ryten 7 5800X cpu
  • 16GB DDR4 leftover memory (2666MHz)
  • AMD RX 9070 XT graphics card (they're a great deal at the moment compared to other graphic cards, great bang for bucks e.g. https://www.brack.ch/acer-grafikkarte-predator-bifrost-amd-rx-9070-xt-16g-oc-1841447)
  • Lian-Li A3-mITX case (can accomodate graphic cards up to at least 32cm)
  • asrock b550M pro-4
  • be quiet pure rock slim 3
  • lian - li edge gold 850W PSU (I bought this as it was advertised SFF on galaxus but it is in fact a regular ATX, which still fits but prevents graphic cards of 32cm or larger, mine just barely fit).

The main difference with the steam machine is that it is larger, does not have HDMI-CEC (which turns on your TV automatically when the pc turns on, but I don't mind), or the official valve support, but frankly, my experience with steamOS has been stellar, I've run it for multiple months and I really love it. But with the official steam controller (which I'm also waiting on) I'm sure my experience would be close enough to perfect for myself. Good luck!

[–] TheHobbyist@lemmy.zip 7 points 2 weeks ago

I know this is in the UK, but on this topic, in the EU, is it even legal to require to pay to avoid tracking? Tracking should require consent, but it should be non-forced, meaning, connecting the consent to some other condition, like paying, is likely not legal.

[–] TheHobbyist@lemmy.zip 4 points 3 weeks ago (1 children)

Sure, but that has not changed with this official enablement, or has it?

[–] TheHobbyist@lemmy.zip 1 points 3 weeks ago (3 children)

What's been janky about it? I have it installed on a custom build since like February, never had any hiccups, besides the same rare issues on my steam deck (some occasional sound issues when switching between desktop and game mode, recently now solved I think). It's otherwise been a flawless experience. Config is pure AMD : 5800X + 7600 XT 16GB with 16GB RAM. I was just hoping to get a steam controller but that proved harder than expected :(

[–] TheHobbyist@lemmy.zip 6 points 1 month ago

For people, businesses looking for an alternative there is XCPng + Xen Orchestra, by Vates, a French company selling support for their otherwise FOSS stack if I understand correctly. They've truly built something very well designed with an explicit migration path from vmware.

I'm not affiliated but I did explore it for my homelab. At the time they didn't yet have a stable ZFS support, which they do now, so I went a different route but it's really matured and they are good stewards of FOSS with monthly streams to discuss their changes and with a blog about their objectives.

https://www.youtube.com/channel/UCNjvBiVTxBt-madrH2Kt7iA

https://vates.tech/

https://xcp-ng.org/blog/

https://vates.tech/blog/migrating-from-vmware-or-hyper-v-to-vates-vms/

[–] TheHobbyist@lemmy.zip 4 points 2 months ago

I'm running the official steamOS on an AMD computer (cpu+gpu) and it works great. Sometimes switching between desktop and gaming mode messes up the audio (no audio) but I use desktop mode rarely so it's a non issue to me. I can always fix it by manually reconfiguring the audio output device or restarting the computer. It's a great experience otherwise :)

[–] TheHobbyist@lemmy.zip 8 points 2 months ago

It's standard research paper language. It is motivating the purpose for investigating liquid gears and in no ways implies liquid gears are problem free.

The iterative steps of research involves addressing these challenges bit by bit until the last one is "solved". It could be interesting to have many regular problems of standard gears a non-issue and only have to solve for the torque, the only thing remaining would be to see how much of a problem it is to solve. It could lead to niche applications too, not necessarily replace all existing gears everywhere.

[–] TheHobbyist@lemmy.zip 15 points 4 months ago (1 children)

I haven't watched the video but Futo collected a swipe dataset which is MIT licensed.

https://huggingface.co/datasets/futo-org/swipe.futo.org

[–] TheHobbyist@lemmy.zip 3 points 5 months ago (1 children)

I started the original Oblivion not long ago, been playing for some tens of hours. First time experiencing the Elder Scrolls, it's an interesting game with quite some depth. I got turned into a vampire and am doing a vampire quest and it's a bit tedious with not being able to stay in the sunlight but other than that it's a good game.

Oblivion doesn't feel too far from modern game mechanics, but what about morrowind?

 

Hi folks,

TL;DR: my remaining issue seems to be firefox specific, I've otherwise made it work on other browsers and other devices, so I'll consider this issue resolved. Thank you very much for all your replies and help! (Edit, this was also solved now in EDIT-4).

I'm trying to setup HTTPS for my local services on my home network. I'm gotten a domain name mydomain.tld and my homeserver is running at home on let's say 192.168.10.20. I've setup Nginx Proxy Manager and I can access it using its local ip address as I've forwarded ports 80 and 443 to it. Hence, when I navigate on my computer to http://192.168.10.20/ I am greeted with the NPM default Congratulations screen confirming that it's reachable. Great!

Next, I've setup an A record on my registrar pointing to 192.168.10.20. I think I've been able to confirm this works because when I check on an online DNS lookup tool like https://centralops.net/CO/Traceroute as it says 192.168.10.20 is a special address that is not allowed for this tool.. Great!

Now, what I'm having trouble with, is the following: make it such that when I navigate to http://mydomain.tld/ I get to the NPM welcome screen at http://192.168.10.20/. When I try this, I'm getting the firefox message:

Hmm. We’re having trouble finding that site.
We can’t connect to the server at mydomain.tld.

Strangely, whenever I try to navigate to http://mydomain.tld/ it redirects me to https://mydomain.tld/, so I've tried solving this using a certificate, using the DNS-01 challenge from NPM, and setting up a reverse proxy from https://mydomain.tld/ to http://192.168.10.20/ and with the wildcard certificate from the challenge, but it hasn't changed anything.

I'm unsure how to keep debugging from here? Any advice or help? I'm clearly missing something in my understanding of how this works. Thanks!

EDIT: It seems several are confused by my use of internal IP addresses in this way, yes it is entirely possible. There are multiple people reporting to use exactly this kind of setup, here are some examples.

EDIT-2: I've made progress. It seems I'm having two issues simultaneously. First one was that I was trying to test my NPM instance by attempting to reach the Congratulations page, served on port 80. That in itself was not working as it ended in an infinite-loop resolving loop, so trying to instead expose the admin page, default port 81, seems to work in some cases. And that's due to the next issue, which is that on some browsers / with some DNS, the endpoint can be reached but not on others. For some reason I'm unable to make it work on Firefox, but on Chromium (or even on Vanadium on my phone), it works just fine. I'm still trying to understand what's preventing it from working on Firefox, I've attempted multiple DNS settings, but it seems there's something else at play as well.

EDIT-3: While I have not made it work in all situations I wanted, I will consider this "solved", because I believe the remaining issue is a Firefox-specific one. My errors so far, which I've addressed are that I could not attempt at exposing the NPM congratulations page which was shown on port 80, because it lead to a resolution loop. Exposing the actual admin page on port 81 was a more realistic test to verify whether it worked. Then, setting up the forwarding of that page using something like https://npm.mydomain.tld/ and linking that to the internal IP address of my NPM instance, and port 81, while using the wildcard certificate for my public domain was then necessary. Finally, I was testing exclusively on Firefox. While I also made no progress when using dig, curl or host, as suggested in the commends (which are still useful tools in general!) I managed to access my NPM admin page using other browsers and other devices, all from my home network (the only use-case I was interested in). I'll keep digging to figure out what specific issue remains with my Firefox, I've verified multiple things, from changing the DNS on firefox (seems not to work, showing Status: Not active (TRR_BAD_URL) in the firefox DNS page (e.g. with base.dns.mullvad.dns). Yet LibreWolf works just fine when changing DNS. Go figure...

EDIT-4: I have now solved it in firefox too, thanks to @non_burglar@lemmy.world! So it turns out, firefox has setup a validation system for DNS settings, called TRR. You can read more about it here: https://wiki.mozilla.org/Trusted_Recursive_Resolver Firefox has a number of TRR configurations, preventing the complete customization of DNS, but also with specific defaults that prevent my use-case. By opening up the firefox config page at about:config, search for network.trr.allow-rfc1918 and set it to true. This now solved it for me. This allows the resolution of local IP addresses. You can read more about RFC1918 here: https://datatracker.ietf.org/doc/html/rfc1918 I'll probably still look to actually make other DNS usable, such as base.dns.mullvad.net which is impossible to use on Firefox by default...

1
submitted 1 year ago* (last edited 1 year ago) by TheHobbyist@lemmy.zip to c/skg@lemmy.dbzer0.com
 

The signing ups are skyrocketing and I may have found two culprits.

https://xcancel.com/elonmusk/status/1940020187362717978

This all happened in the last 24h it seems and the SKG campaign has skyrocketed even more since then, check it out here:

https://stopkillinggamestracker.pages.dev/datahistory

Exciting to see the progress though I would have preferred to not have this "personality" be associated with the goal of the initiative...

Edit: updated Twitter link to privacy respecting frontend.

8
submitted 1 year ago* (last edited 1 year ago) by TheHobbyist@lemmy.zip to c/amd@lemmy.ml
 

Yesterday Framework unveiled a small form factor desktop based on Halo Strix.

Halo strix seems to require memory with high bandwidth, specifically 256-bit LPDDR5x, according to the specs.

Allegedly, the company said they tried to find a solution to use modular memory (e.g. lpcamm) but it did not work out signal integrity wise (@36:10, from the unveiling video above and here.)

So I'm wondering exactly, why not?

It seems LPCAMM2, offers a 128-bits bus and can scale today up to 7500-8500 MT/s.

This would offer 7500 x 128 / 8 = 120GB/s. Would it not have been possible to simply place two LPCAMM2 modules, to cover the full extent of the 256-bit bus and reach the 256 GB/s, by using the 8000 MT/s configuration?

Did they reach integrity issues because they tried to reach the speeds using only one LPCAMM2 stick? That would indeed have been impossible. Maybe LPCAMM2 can not be combined (perhaps due to space as they are using the mini-ITX motherboard format)? Or am I missing something?

 

We’ve been hinting that this year is going to be huge, and we’re ready to share why… in two weeks on Feb 25th, at our Framework (2nd Gen) Event! We’re holding this launch event live in San Francisco and streaming to our YouTube channel at 10:30am Pacific that day. You can sign up now to get notified when the stream starts. The last time we held a live launch event was in March 2023, when we unveiled Framework Laptop 16 and two new versions of Framework Laptop 13. It’s been amazing seeing the interest in these products and the incredible ways the community has been using and extending on them. We’ve been heads down working for the last two years on an even bigger set of announcements.

For this event, in addition to bringing in press and partners, we’re opening a pool of invites to the Framework Community to attend the event in person, meet the team, and get hands on with our newest products. If you’re a current Framework fan and are in the San Francisco area (or are able to handle your own travel to us), you can apply to attend in this sign-up form. We expect we’ll see a lot more interest than we have available seats in our venue, so we’ll likely need to downselect from applicants.

We will be opening pre-orders on at least one new item that day, so if you’re in the market for repairable, upgradeable, long-lasting consumer electronics products, you may want to create an account ahead of time to be ready. We’ve scaled up our e-commerce infrastructure massively, but we expect the site will still be under heavy load.

Five years in, we’re confident that we’re on a fast path to achieving our mission to remake consumer electronics. We’re eager to continue supporting and scaling the ecosystems around our current products, and we’re ready to bring this mission and product philosophy to even more of the world, one category at a time. It’s going to be an awesome day, and all of us in the Framework team can’t wait for you to see what we’ve been working on!

For a hint at what we'll be announcing, head to the event page.

I can't make much sense from their hint, but I'm guessing this is related to when Nirav asked the community what category they should branch out to next, after laptops. I'll see if I can find the post again and link it here.

What are your guesses? In any case, this is a very exciting announcement!

Edit: framework community discussion here.

 

Just landed on this article by Phoronix on an AI accelerator in an m.2 drive format.

This one is from memryX and seems to be rather mature and capable though mostly low power.

I can't stop thinking that this may be a great usecase for the new expansion bay for the Framework laptop 16, with it's two additional full size m.2 slots. Would be very interesting to see whether two of these could be combined and used jointly and how much acceleration it provides compared to the AMD CPU alone.

Anyway, just sharing because I thought it was cool.

 

cross-posted from: https://lemmy.zip/post/27152897

Hi folks,

I had first written about my attempts here: https://lemmy.zip/post/24041939

I got to learn a lot thanks to some very helpful lemmyist (thank you @chameleon@fedia.io !), but I ran into a wall and tried to persist alone for a while.

While my initial goal is still the same, I'm right now focusing on seeing whether I can rebuild an initramfs myself, excluding any customizations.

My setup is the following:

  • OS: Alpine Linux
  • Bootloader: Grub
  • OpenRC (no systemd)
  • Root in a LUKS encrypted partition
  • EFI firmware

When booting using the default initramfs:

mytestalpine:~# lsblk -o NAME,FSTYPE,FSVER,LABEL,UUID,FSAVAIL,FSUSE%,MOUNTPOINTS
NAME     FSTYPE      FSVER LABEL UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
sda                                                                                  
├─sda1   vfat                    515E-70E4                             238.9M    20% /boot
├─sda2   swap                    667a53d2-dc82-4d2a-a121-63a75da51c24                [SWAP]
└─sda3   crypto_LUKS             73cada8c-5885-4334-b72b-b09b7f919d66                
  └─root ext4                    8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18      5G     3% /
sr0                                                                                  
mytestalpine:~# blkid
/dev/sda3: UUID="73cada8c-5885-4334-b72b-b09b7f919d66" TYPE="crypto_LUKS" PARTUUID="a900120b-4b78-4164-add8-f6a88eadb219"
/dev/sda1: UUID="515E-70E4" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="83a340a7-ec05-4452-a775-178b5d3ea96e"
/dev/sda2: UUID="667a53d2-dc82-4d2a-a121-63a75da51c24" TYPE="swap" PARTUUID="cdddf0ec-5b8d-448f-a1c6-c9a97af06709"
/dev/mapper/root: UUID="8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18" BLOCK_SIZE="4096" TYPE="ext4"

Where I'm at:

  • I've created a custom dracut configuration file /etc/dracut.conf.d/base-initramfs.conf containing:
add_dracutmodules+=" crypt dm rootfs-block "
kernel_cmdline+=" rd.luks.uuid=luks-73cada8c-5885-4334-b72b-b09b7f919d66 "
  • I ran dracut --regenerate-all --force which yielded the following initramfs: -rwxr-xr-x 1 root root 10734241 Nov 27 22:56 /boot/initramfs-6.6.58-0-lts.img
  • I did not touch /etc/default/grub which contains:
GRUB_TIMEOUT=2
GRUB_DISABLE_SUBMENU=y
GRUB_DISABLE_RECOVERY=true
GRUB_CMDLINE_LINUX_DEFAULT="modules=sd-mod,usb-storage,ext4 cryptroot=UUID=73cada8c-5885-4334-b72b-b09b7f919d66 cryptdm=root rootfstype=ext4"
  • I entered my custom boot entry in /etc/grub.d/40_custom:
mytestalpine:~# cat /etc/grub.d/40_custom
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry 'Dracut entry' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-lts-advanced-8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18' {
	load_video
	insmod gzio
	insmod part_gpt
	insmod fat
	set root='hd0,gpt1'

	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  515E-70E4
	else
	  search --no-floppy --fs-uuid --set=root 515E-70E4
	fi

	#search --no-floppy --fs-uuid --set=root 515E-70E4
	echo	'Loading Linux lts ...'
	linux	/vmlinuz-lts root=UUID=8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18 ro  modules=sd-mod,usb-storage,ext4 cryptroot=UUID=73cada8c-5885-4334-b72b-b09b7f919d66 cryptdm=root rootfstype=ext4 rd.shell rd.debug log_buf_len=1M 
	echo	'Loading initial ramdisk ...'
	initrd	/initramfs-6.6.58-0-lts.img
}

This was closely matched to the original boot entry.

  • I then ran grub-mkconfig -o /boot/grub/grub.cfg (at this point, not sure whether normal or not, I see mention of the original initramfs, but not mine:
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-lts
Found initrd image: /boot/initramfs-lts
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
Adding boot menu entry for UEFI Firmware Settings ...
done
  • When attempting to boot into my entry in grub, I get a blank screen which hangs indefinitely where the only text visible is:
Loading Linux lts ...
Loading initial ramdisk ...
_
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path

I've tried looking up the message but nothing seems to be giving hints at how I can fix it.

Is there something visibly wrong with what I'm doing? I've removed the quiet parameter and added debug flags to the kernel parameters but I'm doing able to get more information from the failed boot... Thanks!

Below is my entire grub conf:

/boot/grub/grub.cfg

mytestalpine:~# cat /boot/grub/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="0"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if loadfont unicode ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
fi
terminal_output gfxterm
if [ x$feature_timeout_style = xy ] ; then
  set timeout_style=menu
  set timeout=2
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
  set timeout=2
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Alpine Linux v3.20, with Linux lts' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-lts-advanced-8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18' {
	load_video
	insmod gzio
	insmod part_gpt
	insmod fat
	set root='hd0,gpt1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  515E-70E4
	else
	  search --no-floppy --fs-uuid --set=root 515E-70E4
	fi
	echo	'Loading Linux lts ...'
	linux	/vmlinuz-lts root=UUID=8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18 ro  modules=sd-mod,usb-storage,ext4 cryptroot=UUID=73cada8c-5885-4334-b72b-b09b7f919d66 cryptdm=root rootfstype=ext4
	echo	'Loading initial ramdisk ...'
	initrd	/initramfs-lts
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/25_bli ###
if [ "$grub_platform" = "efi" ]; then
  insmod bli
fi
### END /etc/grub.d/25_bli ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
if [ "$grub_platform" = "efi" ]; then
	menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
		fwsetup
	}
fi
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry 'Dracut entry' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-lts-advanced-8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18' {
	load_video
	insmod gzio
	insmod part_gpt
	insmod fat
	set root='hd0,gpt1'

	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  515E-70E4
	else
	  search --no-floppy --fs-uuid --set=root 515E-70E4
	fi

	#search --no-floppy --fs-uuid --set=root 515E-70E4
	echo	'Loading Linux lts ...'
	linux	/vmlinuz-lts root=UUID=8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18 ro  modules=sd-mod,usb-storage,ext4 cryptroot=UUID=73cada8c-5885-4334-b72b-b09b7f919d66 cryptdm=root rootfstype=ext4 rd.shell rd.debug log_buf_len=1M 
	echo	'Loading initial ramdisk ...'
	initrd	/initramfs-6.6.58-0-lts.img
}
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###

Edit: corrected tagged user & formatting

 

Hi folks,

I had first written about my attempts here: https://lemmy.zip/post/24041939

I got to learn a lot thanks to some very helpful lemmyist (thank you @chameleon@fedia.io !), but I ran into a wall and tried to persist alone for a while.

While my initial goal is still the same, I'm right now focusing on seeing whether I can rebuild an initramfs myself, excluding any customizations.

My setup is the following:

  • OS: Alpine Linux
  • Bootloader: Grub
  • OpenRC (no systemd)
  • Root in a LUKS encrypted partition
  • EFI firmware

When booting using the default initramfs:

mytestalpine:~# lsblk -o NAME,FSTYPE,FSVER,LABEL,UUID,FSAVAIL,FSUSE%,MOUNTPOINTS
NAME     FSTYPE      FSVER LABEL UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
sda                                                                                  
├─sda1   vfat                    515E-70E4                             238.9M    20% /boot
├─sda2   swap                    667a53d2-dc82-4d2a-a121-63a75da51c24                [SWAP]
└─sda3   crypto_LUKS             73cada8c-5885-4334-b72b-b09b7f919d66                
  └─root ext4                    8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18      5G     3% /
sr0                                                                                  
mytestalpine:~# blkid
/dev/sda3: UUID="73cada8c-5885-4334-b72b-b09b7f919d66" TYPE="crypto_LUKS" PARTUUID="a900120b-4b78-4164-add8-f6a88eadb219"
/dev/sda1: UUID="515E-70E4" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="83a340a7-ec05-4452-a775-178b5d3ea96e"
/dev/sda2: UUID="667a53d2-dc82-4d2a-a121-63a75da51c24" TYPE="swap" PARTUUID="cdddf0ec-5b8d-448f-a1c6-c9a97af06709"
/dev/mapper/root: UUID="8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18" BLOCK_SIZE="4096" TYPE="ext4"

Where I'm at:

  • I've created a custom dracut configuration file /etc/dracut.conf.d/base-initramfs.conf containing:
add_dracutmodules+=" crypt dm rootfs-block "
kernel_cmdline+=" rd.luks.uuid=luks-73cada8c-5885-4334-b72b-b09b7f919d66 "
  • I ran dracut --regenerate-all --force which yielded the following initramfs: -rwxr-xr-x 1 root root 10734241 Nov 27 22:56 /boot/initramfs-6.6.58-0-lts.img
  • I did not touch /etc/default/grub which contains:
GRUB_TIMEOUT=2
GRUB_DISABLE_SUBMENU=y
GRUB_DISABLE_RECOVERY=true
GRUB_CMDLINE_LINUX_DEFAULT="modules=sd-mod,usb-storage,ext4 cryptroot=UUID=73cada8c-5885-4334-b72b-b09b7f919d66 cryptdm=root rootfstype=ext4"
  • I entered my custom boot entry in /etc/grub.d/40_custom:
mytestalpine:~# cat /etc/grub.d/40_custom
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry 'Dracut entry' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-lts-advanced-8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18' {
	load_video
	insmod gzio
	insmod part_gpt
	insmod fat
	set root='hd0,gpt1'

	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  515E-70E4
	else
	  search --no-floppy --fs-uuid --set=root 515E-70E4
	fi

	#search --no-floppy --fs-uuid --set=root 515E-70E4
	echo	'Loading Linux lts ...'
	linux	/vmlinuz-lts root=UUID=8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18 ro  modules=sd-mod,usb-storage,ext4 cryptroot=UUID=73cada8c-5885-4334-b72b-b09b7f919d66 cryptdm=root rootfstype=ext4 rd.shell rd.debug log_buf_len=1M 
	echo	'Loading initial ramdisk ...'
	initrd	/initramfs-6.6.58-0-lts.img
}

This was closely matched to the original boot entry.

  • I then ran grub-mkconfig -o /boot/grub/grub.cfg (at this point, not sure whether normal or not, I see mention of the original initramfs, but not mine:
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-lts
Found initrd image: /boot/initramfs-lts
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
Adding boot menu entry for UEFI Firmware Settings ...
done
  • When attempting to boot into my entry in grub, I get a blank screen which hangs indefinitely where the only text visible is:
Loading Linux lts ...
Loading initial ramdisk ...
_
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path

I've tried looking up the message but nothing seems to be giving hints at how I can fix it.

Is there something visibly wrong with what I'm doing? I've removed the quiet parameter and added debug flags to the kernel parameters but I'm doing able to get more information from the failed boot... Thanks!

Below is my entire grub conf:

/boot/grub/grub.cfg

mytestalpine:~# cat /boot/grub/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="0"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if loadfont unicode ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
fi
terminal_output gfxterm
if [ x$feature_timeout_style = xy ] ; then
  set timeout_style=menu
  set timeout=2
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
  set timeout=2
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Alpine Linux v3.20, with Linux lts' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-lts-advanced-8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18' {
	load_video
	insmod gzio
	insmod part_gpt
	insmod fat
	set root='hd0,gpt1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  515E-70E4
	else
	  search --no-floppy --fs-uuid --set=root 515E-70E4
	fi
	echo	'Loading Linux lts ...'
	linux	/vmlinuz-lts root=UUID=8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18 ro  modules=sd-mod,usb-storage,ext4 cryptroot=UUID=73cada8c-5885-4334-b72b-b09b7f919d66 cryptdm=root rootfstype=ext4
	echo	'Loading initial ramdisk ...'
	initrd	/initramfs-lts
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/25_bli ###
if [ "$grub_platform" = "efi" ]; then
  insmod bli
fi
### END /etc/grub.d/25_bli ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
if [ "$grub_platform" = "efi" ]; then
	menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
		fwsetup
	}
fi
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry 'Dracut entry' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-lts-advanced-8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18' {
	load_video
	insmod gzio
	insmod part_gpt
	insmod fat
	set root='hd0,gpt1'

	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  515E-70E4
	else
	  search --no-floppy --fs-uuid --set=root 515E-70E4
	fi

	#search --no-floppy --fs-uuid --set=root 515E-70E4
	echo	'Loading Linux lts ...'
	linux	/vmlinuz-lts root=UUID=8613c4fe-dbc2-4a4e-9d41-3e7eaa8acf18 ro  modules=sd-mod,usb-storage,ext4 cryptroot=UUID=73cada8c-5885-4334-b72b-b09b7f919d66 cryptdm=root rootfstype=ext4 rd.shell rd.debug log_buf_len=1M 
	echo	'Loading initial ramdisk ...'
	initrd	/initramfs-6.6.58-0-lts.img
}
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###

Edit: corrected tagged user & formatting

 

cross-posted from: https://lemmy.world/post/21664063

Linux Mint and Framework Laptops Join Forces

The October 2024 edition of Linux Mint’s Monthly News brings exciting updates, including a significant announcement about collaboration with Framework Laptops, having potential to advance Mint’s compatibility with hardware designed with flexibility, repairability, and sustainability in mind.

For those unfamiliar, unlike most traditional laptops, which are often difficult or impossible to repair or upgrade, Framework laptops are built to be user-friendly, making it easy to replace or upgrade components. This modular approach extends the laptop’s lifespan and promotes sustainability by reducing e-waste.

 

I landed on this article today about how to configure vLLM for AMD GPUs and it contained this specific snippet:

Meta recently announced they’re running 100% of their live Llama 3.1 405B model traffic on AMD MI300X GPUs [...]

I thought that was an interesting piece of trivia and shows both how important it is for industrial partners to find alternatives to Nvidia and also how much AMD has improved its software suite to enable these use-cases.

27
submitted 2 years ago* (last edited 2 years ago) by TheHobbyist@lemmy.zip to c/linux@lemmy.ml
 

Hi folks,

I have Alpine Linux installed in an encrypted LUKS partition. I came across this tutorial which shows how to setup a key in a USB drive and when the drive is inserted and the computer booted, the LUKS partition auto-unlocks with the key on the USB drive.

https://askubuntu.com/questions/1414617/configure-ubuntu-22-04-zfs-for-automatic-luks-unlock-on-boot-via-usb-drive

I would like to setup the same thing but I do not have Alpine linux installed on ZFS, so I'm looking for ways to adapt the instructions.

So far, what I've done is:

  1. I've setup the key on the usb stick and I can unlock the LUKS partition with that key.
  2. create a /etc/mkinitfs/features.d/usb-unlock.sh script with the following content:

(the echo to /dev/kmesg was to check whether the script did indeed run at boot by trying to print to the kernel messages but I can't find anything in the kernel messages).

#!/bin/sh

echo "usb-unlock script starting..." > /dev/kmsg

USB_MOUNT="/mnt/my-usb-key" # The USB stick mounting point
LUKS_KEY_FILE="awesome.key"  # The name of your keyfile on the USB stick

# Search for the USB stick with the key
for device in $(ls /dev/disk/by-uuid/*); do
    mount $device $USB_MOUNT 2>/dev/null
    if [ -f "$USB_MOUNT/$LUKS_KEY_FILE" ]; then
        # Unlock the LUKS partition
        cryptsetup luksOpen /dev/sda3 cryptroot \
            --key-file "$USB_MOUNT/$LUKS_KEY_FILE" && exit 0
    fi
    umount $USB_MOUNT
done
echo "No USB key found, falling back to password prompt." # this message never appears, despite not having found the key on the usb stick

echo "usb-unlock script ending." > /dev/kmsg
  1. I added usb-unlock to the features in mkinitfs.conf:
mytestalpine:~# cat /etc/mkinitfs/mkinitfs.conf 
features="ata base ide scsi usb virtio ext4 cryptsetup keymap usb-unlock"
  1. run mkinitfs to rebuild the initramfs. Then reboot to test the implementation, which was unsuccessful.

What am I missing / doing wrong? Thank you for your help!

Edit: forgot to add step 4

 

Hi folks,

I'm seeing there are multiple services which externalise the task of "identity provider" (e.g. login with Facebook, google or what not).

In my case, I am curious about Tailscale, a VPN service which allows one to chose an identity provider/SSO between Google, Microsoft, Github, Apple and OIDC.

How can I find out what data is actually communicates to the identity provider? Their task should simply be to decide whether I am who I claim to be, nothing more. But I'm guessing there may be some subtleties.

In the case of Tailscale, would the identity provider know where I'm trying to connect? Or more?

Answers and insights much appreciated! The topic does not seem to have much information online.

 

Hi folks, I'm considering setting up an offsite backup server and am seeking recommendations for a smallish form factor PC. Mainly, are there some suitable popular second hand PCs which meet the following requirements:

  • fits 4x 3.5" HDD
  • Smaller than a regular tower (e.g. mATX or ITX)
  • Equipped with a 6th of 7th gen Intel CPU at least (for power efficiency and transcoding, in case I want it to actually to some transcoding) with video output.
  • Ideally with upgradeable RAM

Do you know of something which meets those specs and is rather common on the second hand market?

Thanks!

Edit: I'm looking for a prebuilt system, such as a dell optiplex or similar.

view more: next ›