VPN dependent.

  • 12 Posts
  • 31 Comments
Joined 1 year ago
cake
Cake day: June 30th, 2023

help-circle

  • Hard Fork: for keeping up with the biggest tech news. they do dissecting of potential impact if stuff.

    Lex Fridman: He interviews really interesting subjects. I'll listen to subjects I'm interested in based on who they are or the subject matter they are an expert in. Lot's interesting tech folks. My favorite episode so far is with John Carmack: Doom, Quake, VR, AGI, Programming, Video Games, and Rockets. Epsidoe is 5 f***king hours but broke it up into several sessions and Carmack is so good in articulating, it flew by.

    Huberman Lab: before software I liked biology and medicine. I like these occasionally because I get to learn how systems outside of software/hardware work. These I will watch/listen in a sitting as one would to a movie. It demands your attention to follow along. (I don't like when doctors have podcasts with all the "alternative medice" BS. But Huberman is an active researcher at Stanford and in charge of a lab that cranks out sweet research. Def credible dude and very methodic and tries to rule out bias).


  • I tried Logitech's wave keys at the store and I fell in love with them. I have several custom keyboards (including a HHKB with topre keys and WASD Code keeyboard) and this puts them to shame, unfortunetly. Can pick it up for $56 USD.

    https://www.logitech.com/en-us/products/keyboards/wave-keys.html

    • The shape is not those crazy ergo keyboards but the keys are very easy to reach, and you will not have to adjust to a new layout if you are comfortable with laptop keys.
    • The keys have more travel than laptop keys but less than mech keyboards (on average).
    • The Keys are also effortless to press but offer resistance.
    • Bluetooth and if you use wireless Logitech mouse you can use the same BT receiver.
    • They have them at Staples and Best Buy, so you can go and try it out.

    As for programming, I found the WASD Code keyboard to be pretty customizable with their hardware switches. I can flip a switch and boom, my Caps Lock is now another Ctrl, etc. But you can do that in the OS as well. They go around $99 and you can pick different keys. Not sure if they have any wireless ones

    https://www.wasdkeyboards.com/code-v3-87-key-mechanical-keyboard-cherry-mx-blue.html




  • I agree that by design Flatpak aims to provide a secure environment through sandboxing; in practice, the implementation has gaps that can lead to security risks, particularly when apps are granted extensive filesystem access. This can undermine the effectiveness of the sandbox and potentially expose systems to vulnerabilities. HOWEVER, being on an immutable system, these risks are mitigated to some degree.

    I'm particularly hopeful for Flatpak's promise of fine grained permissions. Flatpak is developing a fine-grained permission system with portals for external interactions, BUT this system relies on integration with toolkits like GTK, rather than app-specific APIs, complicating its implementation. There is more info in the linked article in the previous post, and here it is again.

    Admittedly I'm not familiar with distrobox, but my caution is for any approach that distributes containerized programs with their own runtimes; they proved to be a real headache on my "mutable" system and my nvidia GPU until I switched to rolling OS.

    I'm glad you found some candidates to potentially resolve your issue. What distro did you end up using? I'm curious to give it a go next chance I have some free time. Cheers.



  • TL;DR: If I were to choose an immutable OS to run on my propriety graphics cards I'd choose an immutable distribution with rolling releases or hardware enablement packages, which tend to do a better job of keeping these graphics libraries up-to-date for new hardware.

    I don't have a recommendation but I just learned about immutable Linux OSes from this post. I could see benefits of immutable OS files, but I've been skeptical about package distribution like flatpak and snap, at least in their current state.

    Dont get me wrong, the workflow of flatpack is great, but in my experience, apps from flatpack typically ship with their own runtime and don't rely on system runtimes (likely why you have GPU driver issues). As a software developer, I obviously prefer to ship with all dependencies and runtimes so I don't have to rely on the system to be updated but this comes with downsides:

    A major problem with alternate runtimes is drivers. New graphics hardware needs new graphics libraries which have a ton of dependencies. Mesa depends on LLVM for compiling shaders. The NVidia driver depends on a kernel module whose version must exactly match that of the library. All of these libraries have their own transitive dependencies like libdrm, libstdc++ and glibc. If you want new hardware to work, you need to be using new versions of all of these libraries.

    Linux distributions, especially those with rolling releases or hardware enablement packages, do a great job of keeping these libraries up-to-date for new hardware. Bundled runtimes do not. Source.

    I'd recommend checking out that article I linked as source. There are also security concerns of using apps, some of which are mitigated by having an immutable filesystem, but there are more points and this comment is long enough as it is.

    EDIT: I reread my comment and it comes off as "immutable bad, blah blah". Truth is I don't know much about these OSes but I wanted to point out that distributing apps in containers comes with its own challenges; which I gather is necessary for immutable OSes. So my TL;DR is to narrow down to a distribution that is immutable and has a rolling release or distributes hardware enablement packages.




  • When I was in college, two older classmates whom I respected got into a hilarious argument of why Gnome was awesome and now eats rocks (their views, I had no views).

    Their elaborate and very specific descriptions of functions and inconveniences drew up a picture of functionality and a e s t h e t i c I had never experienced on windows. So I proceeded to install a distro and take it for a ride




  • any utility in enforcing/suggesting a post template that address (for example)

    1. What task are you accomplishing with this code?
    2. How is it implemented (give an overview of your solution)?
    3. Why did you choose this approach (if several valid approaches exist)?
    4. What specifically, if anything, do you want suggestions on. Security, best practices, etc (Optional)


  • nothing wrong with being self taught, you could follow these basics topics before poking holes in firewall.

    1. VLANS: learn how to separate your LAN into networks with different security requirements. For wireless, try to make a "main" and "IoT" network so that IoT network that can't talk to your "main" network but "main" can reach IoT devices. For wired, try to have a Management network, and a "Dirty network" etc.
    2. Firewalls and Routing: You will need to be able to route between your VLANS and set firewall rules to allow certain traffic. Best practice is block everything and allow only what you need.
    3. NMAP: learn how to do NMAP scans of your network to discover hosts and their open ports/services. This is a similar approach that "hackers" and script kiddies use on the public internet to find vulnerae and open services. Being able to probe your own network is crutial in understanding how others might approach in penetrating it.
    4. Wireguard VPN: Learn to access your network remotely by setting up a wireguard VPN. Wireguard is preferred because it is "stealthy" and will not respond to unsolicited attempted to probe your network. Start small by using wireguard to access between VLANs so you don't run the risk of using the internet.
    5. NGINX and Reverse Proxy: If necessary, learn to expose your services or blog or website by only exposing nginx and proxying to your services. Many guides on securing NGINX exist. Try not to expose anything, but sometimes necessary if you want others to reach your website/blog/hosting etc.

    That's a rough outline that you can use to guide yourself and achieve milestones with hands on experience. In your pursuit you'll run into certificates and domain name hosting and stuff. But all this is on the web so let your curiosity (and paranoia) drive! Have fun!!