TMP_NKcYUEoM7kXg4qYe

joined 2 years ago
[–] [email protected] 2 points 1 day ago

You can tell Open Interpreter to run commands based on you human-language input. If you want local only LLM, you can pair it with Ollama. It works for "interactive" use where you're asked for confirmation before a command is run.

I set this up in a VM because I wanted a full automatic coding "agent" which can run commands without my intervention and I did not want it to blow up main system. It did not really work though because as far as I know Open Interpreter does not have a way to "pipe" a command's output back into the LLM so that it could create feedback with linters and stuff.

Another issue was that Starcoder2, which is the only LLM trained on permissive licensed code I could find, only has a 15B "human-like" model. The smaller models only speak code so I don't know how that would work for agentic usage and the 15B is really slow running on DDR4 CPU. I think agents are cool though so I would like to try Aider which is a supposedly good open source agent and unlike Open Interpreter is not abandonware.

Thanks for coming to my blabering talk, hope this might be useful for someone.

[–] [email protected] 11 points 1 month ago* (last edited 1 month ago) (1 children)

Fair enough. I guess I imagined someone hosting all the selfhosted web apps that get posted to this forum, when most people likely just host only the few they need on the go, so it isn't really that burdensome.

Edit: Forgot to add: I always though that it could be useful to just set up Apache Guacamole, so that instead of the hosted services, my family members could just use remote desktop apps but I never got around to it.

[–] [email protected] 5 points 1 month ago (1 children)

Yep my thoughts. New selfhosters think the hard part of selfhosting is command line but that's "kinda" like thinking that the hard part of math is writing numbers on paper. Terminal is just the medium, not the complex part. Navigating filesystem and editing files is easier on the desktop but changing permissions and managing services would be be extremely difficult for a newbie without using the terminal because (almost) every online tutorial uses terminal. OP would have to learn how to translate the terminal command to its desktop counterpart at which point they might as well use the terminal.

OP also has an XY problem. They asked for a system which does not require terminal usage but they should have actually asked for an easy to set up system. People are recommending things like Yunohost though, so it's fine in the end.

[–] [email protected] 102 points 1 month ago (26 children)

It's nice there's a front end for all these tools but I kinda don't get why is everything "hosted". This could have just been a desktop app. I guess it can be useful when you want to convert something on your phone but to me it just seems like unnecessary server maintenance burden.

1
submitted 1 month ago* (last edited 1 month ago) by [email protected] to c/[email protected]
 

EDIT: The bad solution is to unblock UDP port 5353 but the port has to be source port, not destination port. (--sport flag) See the now modified rules. The issue is that this is very insecure (see this stackexchange question and comments) but obviously better than no firewall at all because at least I'm blocking TCP traffic.

The proper solution (other than using glibc and installing nss-mdns package) is to open a port with netcat (nc) in the background (using &) and then listen with dig on that port using the -b flag.

port="42069"
nc -l -p "$port" > /dev/null || exit 1 &
dig somehostname.local @224.0.0.241 -p 5353 -b "0.0.0.0#${port}"

Then we need to remember to kill the background process. The DNS reply will now be sent to port 42069, so we can just open it with this iptables rule:

-A INPUT -p udp -m udp --dport 42069 -j ACCEPT

---->END OF EDIT.

I want to setup iptables firewall but if I do that, it blocks multicast DNS which I need. I am using command

dig "somehostname.local" @224.0.0.251 -p 5353

to get the IP through mDNS and these are my iptables rules (from superuser.com):

*filter

# drop forwarded traffic. you only need it of you are running a router
:FORWARD DROP [0:0]

# Accept all outgoing traffic
:OUTPUT ACCEPT [623107326:1392470726908]


# Block all incoming traffic, all protocols (tcp, udp, icmp, ...) everything.
# This is the base rule we can define exceptions from.
:INPUT DROP [11486:513044]

# do not block already running connections (important for outgoing)
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

# do not block localhost
-A INPUT -i lo -j ACCEPT

# do not block icmp for ping and network diagnostics. Remove if you do not want this
# note that -p icmp has no effect on ipv6, so we need an extra ipv6 rule
-4 -A INPUT -p icmp -j ACCEPT
-6 -A INPUT -p ipv6-icmp -j ACCEPT

# allow some incoming ports for services that should be public available
# -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
# -A INPUT -p udp -m udp --dport 5353 -j ACCEPT # does not help
-A OUTPUT -p udp -m udp --sport 5353 -j ACCEPT # SOLVES THE ISSUE BUT IS INSECURE - not recommended


# commit changes
COMMIT

Any help is welcome :)

[–] [email protected] 1 points 5 months ago* (last edited 5 months ago) (1 children)

Dunno whether they are transcoding or not nor why they have such a bizarre setup. But I would hope 16C/32T CPU from 2017 could handle software transcoding. Also peak power consumption while playing a movie does not really matter compared to idle power consumption. What matters more is that the motherboard is probably packed with pcie slots that consume a lot of power. But to OP it probably does not matter if they use a threadripper.

[–] [email protected] 4 points 5 months ago

I don't recommend it unless you just want it for storage or whatever else it does out of the box. It's basically impossible to tinker with it because it has so many layers of abstraction. At least that was my impression when I tried to edit their nginx config. It had like 2000 lines so I just gave up.

If you want a server that runs services that you download from the internet, don't buy it. Look at it as a box that does the thing that it promises to do, not as a computer. If you want it to do a different thing, buy a different box that does that. Kinda like a TV. It's technically a computer that runs some kind of linux but to the user it's a monitor that also shows videos from the internet.

Also it's perfectly fine to buy a "NAS black box" but maybe not something I'd buy if I wanted to get into selfhosting. I'd buy it if I wanted to have a NAS running at home with the least amount of "self" in "selfhosting" that's feasable.

[–] [email protected] 3 points 5 months ago

Proxmox is nice for beginners. This is a nice tutorial: https://youtube.com/playlist?list=PLT98CRl2KxKHnlbYhtABg6cF50bYa8Ulo

Proxmox has nice UI for managing Linux Containers (LXC). They act like a computer inside a computer with the advantage that you can clone them. So you can basically save and load them whenever you succeed or fail at something. Proxmox also allows you to install Turnkey Linux containers which have the software you want to run preconfigured in them so that's also good for beginners.

Only downside is that this is not declarative so it won't be as scalable as docker or nix. It might be more worth it to learn docker from the beginning but that would also be less friendly for a beginner.

[–] [email protected] 1 points 5 months ago

Yep any core i3 is fine even for desktop given an SSD and enough RAM. Once you delve into the core2 era, you start having problems because it lacks the compression and encryption instructions necessary for the day to day smoothness. In a server you might get away with core 2 duo as long as you don't use full disk encryption and get an SSD or at least use ram for caching. Though that would be kinda a bizarre setup on a computer with 512 MB of ram.

[–] [email protected] 1 points 5 months ago (3 children)

Ryzen is not recommended for transcoding because the Radeon integrated GPU's encoding accelerator is not as fast as in intel iGPUs. But this does not come into play if you A) have 16 cores and B) don't even have an integrated GPU.

And about idle power consumption: I don't think it's a point of interest if you are using a workstation class computer.

[–] [email protected] 4 points 5 months ago

I used to selfhost on a core 2 duo thinkpad R60i. It had a broken fan so I had to hide it into a storage room otherwise it would wake up people from sleep during the night making weird noises. It was pretty damn slow. Even opening proxmox UI in the remotely took time. KrISS feed worked pretty well tho.

I have since upgraded to... well, nothing. The fan is KO now and the laptop won't boot. It's a shame because not having access to radicale is making my life more difficult than it should be. I use CalDAV from disroot.org but it would be nice to share a calendar with my family too.

[–] [email protected] 2 points 8 months ago

Ok thanks for the reply. I will try that. I probably should have noticed the "this branch is 7 commits behind" notice lol.

9
submitted 8 months ago* (last edited 8 months ago) by [email protected] to c/[email protected]
 

Does anyone know how to set a custom mouse acceleration curve on Sway? man sway-input does mention mouse acceleration but unfortunately it's one of those "you won't learn anything new unless you already knew it before" type of manpage.

I also found this project https://github.com/N-R-K/leetmouse which I will probably use in the end but I would also like to hear if anyone of you has any experience with custom acceleration profile, in case there is a better way or whatever.

Edit: I will use leetmouse (different branch tho), because libinput's acceleration is not very good for gaming (see comments for sources)

https://github.com/systemofapwne/leetmouse

[–] [email protected] 1 points 8 months ago

What do you mean by not being arrested? I would say German police putting a black bag on your head and taking you to their station in the middle of the night is something one could consider an arrest.

 

My issue is that many of my remote desktop apps require knowing the IP adress of the other PC. I'm looking for a VPN that auto-discovers other devices on the same network. That way I could just "ssh" into the same IP every time, because it would be IP inside of a virtual network. Ideally I am looking a solution that does not require internet connection.

Thanks.

Edit: I should probably specify my usecase. I have a portable desktop and use VNC from a laptop to connect to it. To do that I need the IP of the desktop but that's different on a different network. This can be solved by using hostname.local as the "IP". (hostname is the "ubuntu" in "bob@ubuntu$:~/Documents") The solution is quite simple, I just haven't known about it.

 

I cannot get sway to detect my tablet device on Void Linux installed on a Thinkpad X200 Tablet. Anyone knows how to fix it? I have both libwacom and xf86-input-wacom installed. It worked fine on Debian.

Now when I think about it, I don't have libwacom-32bit installed, because I'm using musl library which is 64bit only. That might be the issue considering how old my hardware is. I'm going to try to investigate but I'm going post this here anyways in case anybody knows more than me.

 

The manual mentions that by default you can pan by holding middle click but my tablet does not have one, so I would like to change it to left click. Anyone knows how to do it? Thanks.

 

Hi, I have trouble running Windows 10 in QEMU on an old af thinkpad x200t. The issue is that it that my GPU only supports opengl 2.0, so virtio does not work. The best I could do is use these options:

-vga qxl \

-device virtio-gpu \

-display sdl,gl=off

and like 30 more which are part of the default quickemu configuration. The three mentioned are ones I changed.

With these options QEMU uses "just" 85% of my CPU so I can still do something on the linux host. The issue is that Windows is basically unusable because the one core it has is constantly occupied by rendering graphics even when just idle on the desktop.

At this point I have accepted my faith that this laptop ain't usable for Windows virtualization but I thought that I would ask here before closing this case. So does anyone have a secret hack which makes pre core i series intel GPUs work with Windows guests in QEMU?

thanks for any tips

Edit: well considering the overwhelming amount of responses, I think I will conclude this as "Don't use a pre core i series laptop if you're expecting to run a Windows VM in it, dummie."

I'll probably use my ITX desktop as a portable work computer and use the thinkpad as a VNC client then.

1
submitted 1 year ago* (last edited 1 year ago) by [email protected] to c/[email protected]
 

Anyone managed to make it work? If I assign a core to the Windows VM, it's constantly at 100% even when idle. Obviously I expected crappy performance but I was hoping that it would at least work. It did pretty well on bare metal.

Is this a skill issue or a hardware problem? I tried both qxl and virtio, both sucked. I think it's the old GPU because today I tried quickemu instead of virt-manager and quick-emu refused to start because the iGPU does not support OpenGL 3.

Bonus paragraph: Windows 10 (and 11) refused to finish the installation in Virt-manager in KVM mode so I had to install it using emulated x64 cpu and then boot the qcow image from regular KVM. (aimed at those having the same issue in the future)

Edit: I think the problem was Windows updates running in the background. I had a similar problem on my x230 but I fixed it by only enabling security updates. (https://github.com/ChrisTitusTech/winutil) The problem is that this tool is broken on the X200T so I'm going to have to transfer the .qcow image from the X230 to the X200T and then see how bad the performance is. In case you want to know how it went, message me in like a month or two. It's likely I will forget to edit this post after I get through this tinkering.

Edit 2: Nope the issue is the old GPU. It only supports OpenGL 2.0, so Windows isn't really doing anything but rendering itself. I made a last effort to solve this here:

https://lemmy.world/post/11367355

 

Hi, I am looking for a SBC to self host stuff on. I would like it to be somewhat open hardware (manufacturer provides schematics and drivers are open source). Which is why I initially wanted to buy a banana-pi router but after reading a post in this /c/ I found that mainline linux support is fairly rare in these arm/riscv SBCs.

So I was hoping someone more knowledgeable would help me find some options. Here are my "wants":

  • Low power drain
  • Open source hardware and software
  • Mainline linux support
  • 2 ethernet ports, at least 1Gb
  • at least 2GB RAM - could do with 1GB I suppose
  • a reasonable way to connect 2 SSDs and 2 HDDs - ie. 4 sata ports or one pcie port (not through USB)
  • EU seller. Not required but I hate dealing with import taxes and I like guarantees
  • Finally I need it to have "wake on power", so that it can start automatically after power outage

The more I search the internet, the more it seems that this mythical computer does not exist but maybe someone knows more than me. Thanks for your replies.

Edit: I'm likely going to settle with the Visionfive 2 since it has official ubuntu support and I won't have to rely on some hacky linux image provided by the manufacturer. It has 2 LAN ports and an M.2 NVME which I'm gonna split into 4 SATAs. Also 8GB RAM is plenty for the lightweight stuff I want to host, maybe even Nextcloud won't be that painful.

Final note: I'm actually not sure how much is the Visionfive 2 open-source but it seems better than intel and AMD stuff so I'm willing to compromise since I actually want to buy something that exists. But anyone reading this in the future beware that I don't know whether it's really open source to the last logic gate. (likely not)

view more: next ›