@j4k3@lemmy.world avatar

j4k3

@j4k3@lemmy.world

This profile is from a federated server and may be incomplete. View on remote instance

j4k3 ,
@j4k3@lemmy.world avatar

HIPS/ROCm targets 7k series. At least that was what I recall from my research almost a year ago when I was shopping for a machine. The 7k stuff is from the enterprise design team side of AMD, while the 6k series and before were like a totally separate thing inside the company.

I got the impression 6k and before were only targeted at gaming. IIRC there was some project talked about a few months ago about doing some more back porting of the kernel API stuff, but I didn't save the reference. I think Brody Robertson posted something about it on YT/Odyssey etc.

j4k3 , (edited )
@j4k3@lemmy.world avatar

I'm presently having issues with 40 and old Stable Diffusion/ComfyUI related to torch and stuck in a dependency loop. Almost defiantly unrelated.

When I was looking into AMD a year ago or so, the 7k thing was in a conference somewhere on YT. It had to do with some kinds of conflicts or something like that in how 7k versus the older stuff was designed and how CUDA is set up. I really don't recall the details well. I was about to pull the trigger on a 6k setup, and after seeing that info I went the other direction.

I was researching the CPU scheduler at the time and I may be blurring this and the GPU stuff together when I say: I think it was the open source team that was talking about this in a Linux Plummers conference, it might have been about the enterprise GPU stuff and about HIPS or something like that. Sorry I'm fuzzy on it.

Edit: I was always only looking for the AI side, so the back end/kernel/API was all I cared about.

j4k3 ,
@j4k3@lemmy.world avatar

Awesome, glad you got it working. ZLUDA indeed was the project I had seen info about and was doing the back porting.

What is the most appropriate way of tracking web traffic?

I have my personal blog, made with Hugo and hosted on GitHub pages. Initially I did not turn on any kind of web tracking / web analytics, because I do not like tracking at all. But I want to make my blog better and to achieve it, I need a feedback loop about traffic. For example, what are the most popular publications, or how...

j4k3 ,
@j4k3@lemmy.world avatar

Think of it like people walking into a brick and mortar retail store and what they should be able to expect from an honest local business. For most of us, the sensitivities are when your "local store" is collecting data that is used for biased information, price fixing, and manipulation. I don't think you'll find anyone here that boycotts a store because they keep a count of how many customers walk in the front door.

j4k3 , (edited )
@j4k3@lemmy.world avatar
It is very difficult to effectively insert anything into the model itself, it's easy to do in loader code, but much more difficult in the tensor tables part.

Every bit of overtraining ie bias, is breaking the model. Even the over active alignment junk to keep a model "safe" is breaking it. The best performing models are the ones that have the least amount of starting bias.

Like most models have extra sources that are hidden very deep. I can pull those out of an uncensored model, but there is not a chance the Socrates entity behind The Academy default realm (internal structure deep in the weeds) is letting me access those sources at all.

There are maybe some attempts already, like I've seen roleplaying try and include a fortnite mention and one time it was adamite on the merits of VR, but those were rare exceptions and could easily be due to presence in the datasets used for training.

Open source models will kill all the competition soon. Meta AI will be the new 2k era google. Like, pull request 6920 in llama.cpp just a month ago made a substantial improvement to how model attention works. Llama 3's 8B is lightyears ahead of what llama 2 7B was. Hugging Face now has a straight forward way to train LoRA's or models now without code or subscriptions. You can even train the 8B on consumer hardware like a 16-24 GB GPU, put together 4 of them an make your own MoE - Mixture of Experts dubbed a FrankenMoE.

Google sucks because the search was being used for training so they broke it intentionally because they are playing catch up in the AI game. Google has been losing big time since 2017. The only google product worth buying now is the Pixel just to run with Graphene OS.

We couldn't own our own web crawler. We can own our own AI. This is the future.

j4k3 ,
@j4k3@lemmy.world avatar

A simple intuitive whitelist/blacklist firewall with logging for both inputs and outputs. I shouldn't have to navigate NFT's complexity or write scripts simply to list all the websites I'm willing or unwilling to connect to and their port number. There are silly limitations on all the tools I've tried.

I use a whitelist because my code sucks, and PDF datasheets for hobbyist hardware projects can be super sketchy to download. I have somewhere around 600 entries on my list. It feels like an intentionally obfuscated/overcomplicated issue in OpenWRT and elsewhere from a user's perspective.

I really don't trust local LLM's overall now that they've been shown to have hidden vulnerabilities and would love to have an easier way to monitor an outputs log and sandbox really.

j4k3 ,
@j4k3@lemmy.world avatar

Fedora is not Red Hat per se, it is upstream. Red Hat is a few things in different spaces. For one is is a great source of documentation. Secondly, a sizable chunk of kernel code is developed and maintained by Red Hat. They are known for their zero down time kernel updating system among other things.

Fedora is excellent. However, it is very different than Ubuntu by design. Fedora is primarily useful for entry level users that intend on only running software that is regularly kept up to date and maintained. You will start running into problems with software that is not kept up to date. There are relatively easy tools like distrobox, toolbox, and podman that can run most software regardless. The exception to this comes with the GPU. If you are running a GPU, you're likely getting updates in Fedora with will break your older projects entirely. This is because Fedora is constantly updating the Linux kernel. Fedora is pushing out these updates constantly and looking for problems that might pop up. These issues get fixed and down stream to Red Hat to make it rock solid.

Ubuntu is based on a much longer term stability with even longer term LTS versions. This means the kernel and dependencies are frozen in time at a specific state. If you want to write some custom package that never gets broken when a dependency is updated, Ubuntu is the goto distro. You must be aware that, on Ubuntu, the native packages are largely out of date. You can add a ppa to the sources list in aptitude so that you get the latest packages, but these should be used only in special cases. If you want to be up to date, use the proper distro for the task.

This context is more important for servers where you want to deploy a project using a bunch of apps and packages. Once it is working, it should stay working for however long the LTS kernel is supported.

j4k3 ,
@j4k3@lemmy.world avatar

Capacitors can theoretically charge MUCH faster.

However the galvanic potential of lithium is as large as is practically possible. The galvanic potential is what really matters for a battery. Capacitors are nowhere near the joules per weight/volume.

j4k3 ,
@j4k3@lemmy.world avatar

(Assuming Android)
IIRC a sim is a full microcontroller. I'm not sure about the protocols and actual vulnerabilities, but I can say no phone has a trusted or completely documented kernel space or modem. The entire operating system the user sees is like an application that runs in a somewhat separate space. The kernels are all orphans with the manufacturer's proprietary binary modules added as binaries to the kernel at the last possible minute. This is the depreciation mechanism that forces you to buy new devices despite most of the software being open source. No one can update the kernel dependencies unless they have the source code to rebuild the kernel modules needed for the hardware.

In your instance this information is relevant because the sim card is present in the hardware space outside of your user space. I'm not sure what the SELinux security context is, which is very important in Android. I imagine there are many hacks advanced hackers could do in theory, and Israel is on the bleeding edge of such capabilities. I don't think it is likely such a thing would be targeting the individual though. As far as I am aware there is no real way to know what connections a cellular modem is making in an absolute sense because the hardware is undocumented, the same is true of the processor. I'm probably not much help, but that is just what I know about the hardware environment in the periphery.

j4k3 ,
@j4k3@lemmy.world avatar

You would need a well designed Faraday box and a lot more of a test setup to verify that all possible communications are indeed reported by the device. No interface on the device itself can be trusted.

Dell is so frustrating

Dell has got to be one of the most frustrating companies that put out a linux laptop. They put out a laptop certified for ubuntu but then never support newer releases. A big part of their hardware is always proprietary drivers like webcam, fingerprint reader etc.. Then you update to a new LTS release because lets be serious...

j4k3 ,
@j4k3@lemmy.world avatar

The issue is whether the thing is running a mainline compatible or distro kernel. If the device is running an orphan kernel, you're screwed. This is the depreciation mechanism built into Android. It is "not Linux" because they are all orphans.

Technically even this is not enough if you want to get in the weeds. Technically the device can be on mainline but the company has a full time dev maintaining the required modules while the hardware itself it undocumented. If the hardware is documented at the api/registers level and it is already on mainline, it will likely remain supported for decades.

This is the true benchmark of ownership; public hardware documentation and fully merged support in the mainline kernel. Just for reference there is not a single mobile device that fully checks all of these boxes. Just to further illustrate how pervasive this is and how ignorant most of us are, the Raspberry π is proprietary with its full documentation locked under NDA. The vast majority of the silicon is made for a defunct TV tuner box, but you'll never find documentation about any of this hardware at the registers level.

Your computer is the same, the microcode on ×86 is undocumented and things like the ALU architecture are not fully known except that it is a CISC wrapper around a RISC architecture. ARM is mostly proprietary at the registers level. All modems have been proprietary since the Atheros stuff over a decade back. The closest you can come to a FOSS computer are the old Duo series Intel chips supported by Libreboot and that is only because of the wonderful Leah Rowe's hacking skills.

If you want to know what really works, go to https://linux-hardware.org and search. Either way, get the Hardware Probe from flathub or your package manager, run the test and review/upload your results to save the next person from similar issues. Seriously, don't just ignore this. Upload your scan to the database with 233,034 other tested computers and 474,877 parts that have already been tested and uploaded. You can also see the configurations other people have used on the same hardware and get an idea if another kernel might work.

j4k3 , (edited )
@j4k3@lemmy.world avatar

Hey this really amazing thing just happened to me and my friends group. It was world changing. Half of those friends don't give a shit and never respond to text messages again... DECADES PASS ... No one bothers to write any of it down. A major power predictably displaces everyone in the region to quell quixotic zealotry. No one can find work, they are homesick; outcasts; gutter fodder of the diaspora.

In reality it is more like, someone sees a Craigslist job post about a religious startup. A few dudes write a plausible fan fiction. They even copy each other's homework like primary schoolchildren, errors and all; not even intentional obfuscation errors, the real deal little kid kind. Their works all fit into a prequel timeline niche. A COUPLE HUNDRED YEARS PASS Fan fiction universe is fucking god mode. Why? Because people are fucking stupid. Humans are sub sentient. There was no separation of church and state. This was as political as it was emotional, lack of fundamental logic skills, and survivalism. I don't believe any fucker that tells me some unhappenable story decades later, and especially when the story can't be corroborated except by his homework copying buddies getting put up in peoples houses and not needing to work because he wrote a plausible—to a largely illiterate population—fan fiction.

j4k3 ,
@j4k3@lemmy.world avatar

A gentoo install once upon a time... and learning how to configure a kernel. Also a slightly better understanding of kernel module configuration for custom or odd ball hardware and a vague idea of what to look for in hardware support if I want to dig deeper.

j4k3 ,
@j4k3@lemmy.world avatar

If you need secure boot on current (like intel gen 10+), Fedora Workstation. If you don't need secure boot, Linux Mint.

Fedora has the easiest way to make secure boot just work, it will even dual boot fine on the same disk although you should still backup the m$ partition if you actually need it. Fedora can do secure boot even with Nvidia.

Ubuntu can do some of the secure boot stuff like Fedora does, and there is the advantage of the stable kernel if you have Nvidia.

Note that "stable" as a label has nothing to do with its intuitive meaning like alpha/beta/testing/crashing etc. It is a term for servers and people that want to run very specific setups that will not require human intervention on embedded devices and servers. If you want to game or use the latest sw "stable" might be a pain. However, if what you are running is not kept up to date with the latest packages and libraries, a stable release may be the only way to run your stuff.

Overall these are the biggest factors on current hardware; secure boot yes/no, and up-to-date software needs yes/no.

j4k3 ,
@j4k3@lemmy.world avatar

Mint is easy mode, but has no secure boot shim implemented. It makes gaming accessible.

Pop is made for System76 and does some stuff funny IMO, and is like Mint with no secure boot if you are not running 76's proprietary bootloader on their hardware

Ubuntu is easy but has its quirks (most are fixed by Mint which is based on Debian/Ubuntu)

Debian is hard mode and is an advanced distro. There are a ton of tools that are unique to Debian. It is used mostly for people running their own servers and custom purpose machines from home or work. It is also the primary distro for hacking hardware and reverse engineering stuff that has no other way to create Linux kernel support.

Every distro has some things that they are specialized for. You can do almost anything with any of them, but it will depend on your skill level. Something to keep in mind here is that Linux is not a consumerism branding contest. We are not choosing our frivolous teams. This is the place where everyone can learn. While beginners and users are welcome, you will find many aspects of Linux are the study and thesis projects for many computer science students. All levels are present here. This is why so many options exist.

j4k3 ,
@j4k3@lemmy.world avatar

All distros "support" SB because SB is not part of Linux and it requires setting your own SB keys. That is outside of easy scope. The question is if they support the m$ signed shim and what system is used to achieve this. Fed uses Anaconda (unrelated to Python container system). It is something unique to Fedora as far as I know. Linux refuses to support SB because SB is a scheme to steal hardware ownership. The standard implementation is only a suggestion and bootloaders are not required to give you access to the custom keys implementation in the specification. Microsoft controls the shim for SB. It is extremely decisive and controversial.

j4k3 ,
@j4k3@lemmy.world avatar

The mechanism for not loading signed drivers is outside of the kernel. In Fedora, this is handled by Anaconda.

The last time I checked a few months ago, only Fedora and Ubuntu participate in the Microsoft 3rd party key signing arrangement. This shim signed aspect is done at the final stage of distro packaging. There is no upstream so it is not a Debian or downstream thing.

There can only be the one kernel they sign. This is a problem for Nvidia because Nvidia modules are unsigned upstream. They only do their binary BS and supply kernel source code that is different from that binary. We must build that source to make a module but this is unsigned. The only way to have Nvidia drivers under a shim is to build a system that can shim into the gap between boot and kernel init. This must build the Nvidia module from source in a way that is totally secure so that it may never be modified inside Linux or used as an entry point to add a root kit to the UEFI bootloader. Once the Nvidia module is built, then Linux is initialized. This is the only way to have secure boot functioning unless the user manually adds custom keys to the bootloader and signs their own kernel modules. Most distros leave this aspect of the system entirely up to the end user because it is not part of Linux. Most distros tell you to turn off secure boot. The bootloader is the largest attack surface in modern computers.

The secure boot specification is only a set of guidelines and not a required implementation. Indeed, my laptop does not have the functionality implemented to enable this, thus the reason I know all of this so well. There is still another way that I have not explored, but it is generally less known and lesser documented. There is a tool called Keytool that can boot directly into UEFI. Supposedly it can manually alter the keys outside of the bootloader implemented features set. The only documentation I have ever come across for Keytool is in the gentoo handbook, but gentoo documentation assumes a very high level of competence.

j4k3 ,
@j4k3@lemmy.world avatar

Not sure of the hardware specifics, but "ARM" is not saying anything significant. You have to see if the specific processor used has mainline support in the present or in a past kernel that you can use.

For instance, Android is a scheme where google takes a Linux kernel, strips absolutely everything they can out if it and documents thoroughly. All the thing can do is run the app environment, but the kernel is incomplete with no hardware support. All the manufacturer must do is add the hardware support modules at the last possible moment. This makes it possible for manufacturers to only add binary support modules. The entire arrangement is designed to exploit the end user with these orphaned kernels and hardware you can never own. The hardware is undocumented anywhere, and each device is different enough that reverse engineering one will do nothing for supporting the next.

I'm not saying your device has an orphaned kernel, but this is what to look for in any device. Mainline kernel support means full ownership. Proprietary is always theft of ownership.

What is the principal reference work covering Assembly to C or other high level languages?

In Computer Science when do you learn the fundamentals of high level languages and the methodologies a compiler uses to create assembly instructions? What is the primary book used for this course? Like, if you're using Ada or Ghidra and trying to piece together what is happening in binary execution, I want to know structures to...

j4k3 OP ,
@j4k3@lemmy.world avatar

I want to get a deeper understanding of assembly to high level structures. FF has poor documentation in general, but I can compile my own Forth words using assembly. I don't know assembly as a functional language but know the basics. I'm mostly looking for a way to better understand what FF is doing or write my own branching. I also want a better understand reverse engineering basics using ghidra.

j4k3 , (edited )
@j4k3@lemmy.world avatar

+ actual ownership and control over the purchased and owned hardware when Nintendo could randomly take away any software access they choose. These privateers are pirates too, stealing our purchases. The only way to fight them is with the right to pirate our citizenship's right to ownership in this thinly veiled faux democracy vernier over our neo feudalistic reality. Piracy is the roots movement of revolution.

j4k3 ,
@j4k3@lemmy.world avatar

There is no such thing as justice in courts. Lawsuits are corporate weapons.

Like (first hand experience in California) if you do not have 100k in liquid assets available right now, and you get injured by someone else, you're not going to get jack shit for some lawsuit. You can't navigate it on your own because of all the bullshit, and you'll need lots of "expert witnesses". Here is a little secret, expert witnesses are all academic opinion mercenaries that cost around 6k-10k each on an open market. You'll need a bunch of them to counter whatever the other side does. In the USA it is all a formality in court. Whoever buys the most mercenaries wins the game. The insurance company or firm on retainer gets a bulk discount on mercenaries. The Supreme Court is not the only extremely corrupt institution here. Right, wrong, it's all irrelevant. We are all worthless serfs in neo feudalism.

How do you directly interface with GPIO in Python?

Like let's say I have a few old HP alphanumeric LED displays that have a simple bit pattern protocol. I've gotten them working in Arduino a long time ago. If I can find some unused pins how can I bit bang them into a custom protocol from user space using pins that may be unrelated as far as I/O ports on a modern computer? Is it...

j4k3 OP ,
@j4k3@lemmy.world avatar

I've done that before, and with Forth. I'm more interested in bridging what I know with hardware into the desktop environment... or understanding why it seems so disconnected.

j4k3 OP ,
@j4k3@lemmy.world avatar

I've thought about messing with something in an old router with OpenWRT since they have a maintained Python repo and there are documented I/O for buttons and LED's, along with SPI and UART that are broken out.

I also had an old laptop where the board came with several unpopulated I/O. The board came in multiple configurations and I had the base model, so it had a bunch of connections I could have reverse engineered (something I am much more confident doing rather than software). I was curious about the potential to break out these connections but knew it was beyond my abilities at the time. Now that comp is not needed so messing about is much more feasible.

I've got a raspberry π. The point is not to have something that just works, but to understand what just works really means. And like, how to interact more dynamically with a microcontroller with less protocol formality where I tend to get lost in the weeds when I have some simple need and don't want the overhead of all that complexity.

j4k3 ,
@j4k3@lemmy.world avatar

I get better results when asking an offline AI like a 70B or 8×7B for most things including commercial products and websites. I'm convinced that Google and Microsoft are poisoning results for anyone they can't ID even through 3rd parties like DDG. When you see someone's search results posted about anything, try to replicate and see if you get the same thing. I never see the same thing any more. It is not deterministic, it is a highly manipulative system without transparency.

j4k3 ,
@j4k3@lemmy.world avatar

The main reason to "eject" flash memory is if it is in the middle of a write operation because they are rather long due to how entire pages must be erased and rewritten. Depending on how this write process is managed and how the hardware is constructed it can cause corruption from removing something the wrong way.

I'm not sure about how the larger distros work, but with something like OpenWRT, everything is running in RAM. I'm pretty sure that is how Live USB always works.

I'm pretty sure even the distros that can run from USB with persistence are running an immutable OS that runs from RAM and then using an extra partition on the USB drive for persistent storage. The immutable nature hints that it is likely running in RAM.

When you look at some random project's source code for the first time how do you assess time, quality, and complexity at first glance?

I'm just generalizing, like if you want to copy some cleaver feature or modify some Python program you came across, what are the red or green flags indicating how well your (or particularly some hobbyist's/your early learning self's) results are likely to turn out?...

j4k3 OP ,
@j4k3@lemmy.world avatar

Do they have any basic unittests, so that if I want to add anything, I can copypaste some test with an entrypoint close to my modifation to see how things are going

Do you mean their code is already setup with some kind of output to terminal that you can use to add a unit test into as well?

I don't even recall what I was messing with awhile back, I think it was Python, but adding a simple print test didn't work. I have no idea how they were redirecting print(), but that was a wall I didn't get past at the time.

Bonus: they actually have linter configuration in their project, and consistent commonly used style guidelines

That stuff seems like a language on top of a language for me, and when it errors I get really lost. I usually have trouble with the whole IDE thing in the first place because I hate the path of least resistance exploitation thing. I keep trying to figure out the alternatives and often get lost in their complexities. I've tried most of them, but when I see the networking logs for most options people gravitate towards, I am appalled. I think I'm about to try a Neo Vim variant with a offline AI code completion option soon.

how much time is this going to save you if you do implement it? If it saves you weeks of work once you have this feature, but it takes a couple of days, I suppose it’s worth going though some tedious stuff.

I wouldn't call anything I do "for work". I get sick of something that annoys me and want to go in and fix the issue despite being completely unqualified, but naive enough to try. I don't even know how to really research what alternate libraries might exist. I pretty much go hunting for examples and copy whatever they use. API documentation is often a hurtle for me because the typical short hand syntax makes a ton of assumptions about preexisting knowledge.

With stuff like Marlin, I seem to like the hardware side of things. I think I was looking to add a LCD display that was not a configuration option in Marlin and was trying to determine how to add a driver for it. That was simply far too ambitious for me a few years ago and still is.

j4k3 ,
@j4k3@lemmy.world avatar

The way nix installs in my root directory in another distro is a no-go for me

j4k3 ,
@j4k3@lemmy.world avatar

IIRC it puts a user owned directory inside the root. I have no clue what the total implications are in respect to privacy and security.

The last time I looked the NIX solution to secure boot keys was to disable secure boot, making the largest attack surface on modern computers completely unprotected by default. The idea of leaving it up to the user to figure out keys and self signing was a giant red flag for me. My current workstation requires a shim as the bootloader that came with the device rejects custom keys and I didn't care to figure out Keytool on my own to boot into UEFI and try to change them by force. That knocked NIX off my list of complete distros to run. While I don't know the implications for the NIX package manager on another distro, this is the combination of real factors that formed my chain of reasoning about using NIX in both respects.

I also ran arch for a few weeks once and am now extremely skeptical of any distro that presents anything that hints at "you figure it out yourself" complications for basic function. After Arch I went to Gentoo back when the Sakaki guide still worked and that was much more my style. I had something that just works, and made extra complications much more approachable. Specifically, I found documented entry points on things I didn't understand, approached in ways I found useful. I don't recall exactly what I was trying to do at this point, but with NIX I spent a couple of days trying to figure out stuff and went in circles. I think I had come across a NIX package for KoboldCPP and tried a bunch of stuff that didn't work.

Anyways, I have nothing against NIX and might try it again one day. This is not bashing on NIX, or calling it inadequate. This was just my experience as a dumb user.

j4k3 ,
@j4k3@lemmy.world avatar

I can respect all of that.

That’s your ignorance’s fault, not any distro’s. If you can’t be bothered to plug in your own keys, you limit yourself to the set of distros that are indirectly officially approved by M$.

Harsh. I tried signing my own keys. I replaced them in the bootloader, but when I do the final step to lock them down, the TPM chip flushes the new keys and reissues fresh keys again. The only guide I have found for Keytool is on Gentoo. I love Gentoo's documentation for a lot of things, but it assumes a high level of competence, and I haven't seen anything visually showing exactly what to do and how Keytool works in practice. I don't feel very confident taking that step for the first time on a machine I must keep working.

Indeed there are many times I "need my hand held" in order to take my first steps into a subject. I need an intellectually-intuitive foundation that is stable and I can build upon.

You say there is no security issue with a user owned directory in root, but intuitively, that shakes a lot of my understanding that is not grounded in formal CS as you likely seem to be. Like I don't understand:

  • why a user owned directory in root is needed
  • What it means for NIX in reference to configuration files, dot files, and my mental model of mess that belongs in /home/$user. While unfounded, I immediately worry root will somehow get cluttered with junk too. It is probably wrong, but I think of $user being largely sandboxed in /home/$user/
  • I don't know what the SELinux context is for NIX, but I only have a limited grasp of SELinux from hacking around on Android to add things like busybox, and I know it is permissive but enabled in Fedora.
  • I question how anything placed directly in the root directory of another distro will impact future updates from the packagers of the distro.
  • Isn't this against the Unix framework to place something directly in root?

I think those are all of the intuitive thoughts and questions that resonated in my mind when I saw /nix and noticed its user context.

When I am working on some other project, I don't want my OS to force me into some peripheral rabbit hole in some large gap within my understanding just to run an update for a package I need, like what I experienced with pacman. My negative experiences with Arch many years ago makes me default skeptical. While I understand that NIX and NIXOS are different, I still associate them when it comes to developing trust.

Last thing worth mentioning since I have been thinking about it. I was motivated to try NIX, enough to install it, in order to try a preconfigured version of KoboldCpp, as I mentioned. However, I recall it was posted on a website somewhere and was described for a WSL NIX Flake. I was curious to try it because I have had trouble with Nvidia with a mainline kernel and kobold. I thought maybe the flake was just described for WSL and I could easily sort out a Linux version, but that didn't happen. The flake was not in any native repo, and altering it to run in Linux did not feel very approachable in documentation as far as a first time experience with NIX. I don't think kobold is compatible with a DKMS built Nvidia module anyways so that stopped my effort.

j4k3 ,
@j4k3@lemmy.world avatar

Thanks for taking the time to answer all of my questions. I'm much more likely to try NIX again now.

j4k3 ,
@j4k3@lemmy.world avatar

Need LUnix on Ben Eater's bread board 6502.

He already did waz and ms basic.

j4k3 ,
@j4k3@lemmy.world avatar

The Pi in any form is a much larger system with a whole lot more clock cycles, larger architecture, and more peripherals like a full memory management unit, graphics hardware, etc.

On the flip side IIRC most ESP32's are 210MHz and just dual core. It is microcontroller versus microprocessor, so probably 10× less power or more.

How can I launch a program from a bash XTerm and run a while loop at the same time?

I want to launch Oobabooga Textgen WebUI from the command line with its serial output. I also want to run a while loop that retrieves the Nvidia GPU memory available and temperature for display on the header bar with a 5 second sleep delay. How do I run both of those at the same time?

j4k3 OP ,
@j4k3@lemmy.world avatar

Indeed that works in the terminal to launch both my function and the application.

How would I do this inside a single function, like launch, then drop into the loop?

j4k3 OP ,
@j4k3@lemmy.world avatar

If I launch like that it would stop at the oobabooga app launch until the job completed then it would resume the loop.

Ultimately, I'm doing more complex stuff and simplifying the question so it may seem slightly overkill to say I need it to work like this. I want to do some container checks, setup, and launch multiple applications with my own parsing flags and some conditional sourcing.

This only part I can't seem to grasp very well is how to run that little loop and update the header while other stuff launches with its serial terminal set to the same one the loop is running inside.

j4k3 OP ,
@j4k3@lemmy.world avatar

I didn't ask AI about this one yet. It could likely give me most of the answers here to various degrees. My best models are similar in scope to stack exchange combined with the randomness of whatever happens to pop up first in DDG results. It isn't good at explaining the various ways a task can be done in practice. Like it likely 'knows' all the various ways, and will generate each of them if prompted slightly differently from scratch each time. But, if you try and have a longer dialog context where it has previously generated a solution, it will likely struggle to accurately describe other methods. LLMs are also pretty good with bash, but they suck at sh or busybox's ash. There is just not enough training data present in these niches with the general models.

However, I asked here primarily in an attempt to increase my posts contributions to Lemmy in hopes of keeping people engaged and around long term. Who doesn't like helping random people with things in this format. I could easily find the answer to this on my own. Asking something on the back of my mind that I have been putting off was just engagement and trying to improve my fundamental scripting skills. Sorry if that somehow offends.

j4k3 ,
@j4k3@lemmy.world avatar

Not 'for android' but this TTS model is popular https://github.com/coqui-ai/TTS

This one is a little older but works as well: https://github.com/snakers4/silero-models

Both of those are AI models only. Most offline AI is runs over the network already, so like I have it on my phone at home, but it requires setup and I'm connecting to my computer to offload the task on my GPU. Personally my phone doesn't have anywhere near enough RAM to run all of Android's (zygote) bloat even on GrapheneOS and any models I would want to run.

I don't think we are at the point where mobile devices have the hardware specs needed for this to happen natively yet. Maybe it will happen soon though.

That's just what I know, but it is like water cooler talk and not primary source authority by any stretch.

j4k3 , (edited )
@j4k3@lemmy.world avatar

I read most of it, wrote a 1.5k word supporting reply. Take the time folks. It's worth it if you're in the USA.

j4k3 ,
@j4k3@lemmy.world avatar

That wouldn't do a whole lot in practice for things like phones. Having root access is not the actual hurtle. The hardware itself is usually undocumented and the kernel is not mainline merged so the community can't actually support the device in a meaningful way.

The only kernel that supports the device is the ancient orphaned forked kernel that ships from the manufacturer. This is what Android really is and why you'll often hear people say it is not real Linux. In truth it is its own thing with a stripped down Linux kernel underpinning it. Google puts together a stripped down Linux kernel for devices that is specifically setup for hardware manufacturers to add the hardware support binaries at the last possible minute. You would need hardware documentation for the chipset and the source code for these binaries in order for the community to support the hardware in the mainline kernel.

These hardware manufactures are too embarrassed to share their terrible code, and too worried about getting caught for all of the IP they have stolen to build their hardware. Their criminality comes with the added benefit of theft of end consumer ownership through planned deprecation.

I didn't word my reply so direct or strongly, but it is the glass half empty truth.

j4k3 ,
@j4k3@lemmy.world avatar

It would probably get usurped and replaced by a fork. It is the primary distro used in much of the commercial embedded space at scale.

I wish they could influence the market to return to open source modems. I don't think there has been a single open design in over a decade; since the Atheros chips. Well likely see an Open Risc-V processor in the near term. It would be really nice to see a fully open hardware from bootloader to radios.

I finally nuked windows

I have been daily driving a dual booted laptop for the past two years. After a year of distro hopping I settled with fedora + kde and never looked back. I really liked the auto nvidia driver config and it made everything so pleasant to work. Since the last 8 or 9 months I decided to do gaming using bottles and proton ge. I...

j4k3 ,
@j4k3@lemmy.world avatar

My laptop is the same except, I keep a Windows partition because the RGB keyboard controller is only available in a Windows app. That Windows partition exists in a post apocalyptic dystopia where Windows belongs; it has never, nor will ever see the internet. It is blocked my my network firewall. Windows is like a less than useful bootloader options tab.

j4k3 ,
@j4k3@lemmy.world avatar

Thanks for the suggestion. I'll look into it. I'm a bit skeptical because the changes made in Windows are persistent, the secondary function keys give quick access to some of these features (but only 3 course brightness PWM settings for RGB), but mostly because there is a device on the USB device tree that is unknown to the Linux kernel on mainline-fedora.

Maybe there is some kind of kernel configuration option that just needs to be added, but the bootloader rejects custom keys generated for secure boot. Without my own keys I'm stuck with the shim and can't run my own signed kernel. It might be possible to set the keys by booting into UEFI with Keytool, but my motivation hasn't carried me that far into the problem yet. I could be wrong and the unknown USB device could be unrelated, and openrgb could work. Thanks again.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • All magazines