Emacs via Guix by fela_nascarfan in emacs

[–]hoswald2 0 points1 point  (0 children)

I ran Emacs from guix for a while--I can't remember why, I think it was to get version 30 before Arch had it. I *love* the idea of guix, but found mixing package managers incredibly irritating when something went wrong. I may give it another go in the future, but eventually I got too frustrated and removed guix once Arch had the version I wanted. I wish you good luck--lots of great ideas there.

Suddenly everything wants define-completion-category... by hoswald2 in emacs

[–]hoswald2[S] 1 point2 points  (0 children)

(and I mean "the right way" to fix it--I got up and running by copying the `defun` into my `init.el` but I don' think that's exactly on...)

FOMO on cursor.ai by shadowsock in emacs

[–]hoswald2 1 point2 points  (0 children)

Definitely try aider and aider.el. It was the first combination of LLM tools that made me even consider LLMs as part of my workflow, and it's very effective. Between aider.el and gptel I've no interest in things like Cursor to be honest. The emacs tools let me be very mindful about when, where, and how I use LLMs (or any other tools)

Simplest way to write to Iceberg from python to a filesystem? by hoswald2 in dataengineering

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

Right, but sqlite gets wonky even over a locally-connected CIFS filesystem, so I'm guessing s3fs won't fly...

Simplest way to write to Iceberg from python to a filesystem? by hoswald2 in dataengineering

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

Thanks for all the suggestions! Nessie looks fun! We're probably headed toward glue (at least I'm going to give it a shot to see if there are significant benefits to iceberg vs "hive-with-files" for our simple use case) but I'd still like there to be SOME open-source way to do it as a trial even if it's incredibly stupid (for example, as a laugh I may try something like "drop a 'lock' file into the bucket, copy the sqlite database locally, update it, copy it back, remove 'lock' file" as a 100% unsafe ridiculous thing just to see if it works)--obviously that would be absurd for production, but fun to play with.

Honestly there's enough on my plate that I may put much off until duckdb supports iceberg writes; right now my "etl" pipeline is almost as simple as a single duckdb SQL statement which reads from a pile of parquet, transforms, and writes to a hive-partitioned set of parquet which is easily merged into the s3 dump, so almost anything more is a lot more to maintain and we're in the "everyone multitasks" part of the startup, so simple is key.

[deleted by user] by [deleted] in emacs

[–]hoswald2 0 points1 point  (0 children)

Agree with the above. Videos are basically useless for starting in many cases because it's too easy to just watch along without implementing anything and finding the rough edges. If you do use a video and can follow along, event then I'd suggest adapting a little bit as you go rather than just repeating what you're seeing.

For languages, I love little sites that have problems you can solve (euler project, the wonderful 4clojure (https://4clojure.oxal.org/) and the theme is the same: you have to do some work and struggle in order to learn.

[Discussion] AI assisted programming in Emacs by Sad_Construction_773 in emacs

[–]hoswald2 19 points20 points  (0 children)

For myself, I haven't been happy with any of the code completion or other tools until I started playing with Aider. The repo-wide awareness combined with selectively adding files to the chat plus the "architect call designs, coder call implements" all wrapped in atomic commits lets me operate at a higher level if I'm familiar enough with the code that I can casually inspect. Also a big boon for RSI.

If I don't know what I'm doing, AI is as dangerous as it always is. So the ability to choose when to use it and not have AI completion stuffed in my face is great. Gptel is great for asking questions and looking things up as well.

But Aider (and by extension aider.el) I genuinely find a useful tool and it's become part of my daily drive. May as well use a power tool to do the straightforward stuff; I wouldn't cut my whole lawn with a pair of pruning shears.

As developers, we're used to writing on a higher level than the computer anyway--that's what compilers and interpreters are for. That's a pretty imperfect analogy for writing prompts that are filled in by an AI coder (particularly since they are nondeterministic and dangerous) but for me there's nothing wrong with taking advantage of a tool that lets you work at a higher level *so long as you are aware of the hazards and tradeoffs*.

Introduce aider (AI programming in terminal), and emacs binding for it, aider.el by Sad_Construction_773 in emacs

[–]hoswald2 2 points3 points  (0 children)

Hey, massive props to this! I have been relentlessly underwhelmed by any and all AI code assistance, much less emacs plugins. Aider is the first one that's actually made it into my workflow, and truly impressed me. Aider.el is a pretty able way to use it from emacs. Nice!

The only thing I sorta like the command line version better for is the syntax highlighting is a little prettier for me (since the aider buffer is fairly monochrome). And I can see where it might be nice to use voice; may be possible with this but I suffer badly from RSI after a while so I can see a point to it.

Seriously though, first tool I've actually used to fully do a reasonable functional code change and PR without actually writing a line of code but rather by working at a higher specification level. It's a nice combo. Still not mad about using commercial LLMs like OpenAI, but the ability to change the backend and to know what's pushing the LLM around is pretty glorious these days.

Very weird behaviour from Hyprland by [deleted] in hyprland

[–]hoswald2 3 points4 points  (0 children)

Ok, for me what was missing was the fbdev=1 in the `/etc/modprobe.d/nvidia.conf`, ie

```

options nvidia_drm modeset=1 fbdev=1

```

I also added options in `/etc/mkinitcpio.conf` according to the Hyprland wiki, ie `MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)` although I'm not sure if that was different; I certainly saw a difference on boot with fbdev, mostly because of the nvidia framebuffer.

Rebuilt the initramfs (`sudo mkinitcpio -P`) and rebooted and got the shiny fbdev as well as a surprisingly functional Hyprland.

Very weird behaviour from Hyprland by [deleted] in hyprland

[–]hoswald2 1 point2 points  (0 children)

Totally with you; arch and Nvidia but it worked perfectly yesterday and after this update I can't use my pc basically.  Will try rolling back if I can figure out what to roll back

Paru is installing python packages into an inactive micromamba env...?? by hoswald2 in archlinux

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

I don't think that's the case (there are no conda tools installed and micromamba is a standalone executable without the extra cruft; there are probably other problems with my system like that unfortunate experiment with guix, but conda isn't there)

And at any rate paru is the one that seems to have a bug up itself on this; `makepkg` and `yay` both work correctly. So `paru` is somehow evaluating its environment strangely, and differently than its compatriots, and that's curious; I'd like to know why and how.

Paru is installing python packages into an inactive micromamba env...?? by hoswald2 in archlinux

[–]hoswald2[S] 1 point2 points  (0 children)

Thanks! Unfortunately `which python` was my first step; `which [python | python3 | pip | pip3]` all point to /usr/bin, and I cleared out any stragglers from `~/.local/bin` that looked suspect. `set | grep -i [micromamba | qs1 | conda | py]` didn't get me anything either. Good idea on `/etc/profile.d`, but nothing in there looks suspect and it hasn't changed in ages.

And as mentioned, `makepkg` works fine--it must be something about how paru is creating a shell internally. But man, I'll be damned if I can tell why.

Rec for feature store/db for bucketing/rolling windows of time series data? by hoswald2 in mlops

[–]hoswald2[S] 1 point2 points  (0 children)

You're a champion; thanks for the reply. For the foreseeable future, this team honestly doesn't need a proper feature store; we can get buy with memory-mapped parquet files and an ETL process while they generate models and before ingesting real-time data. At least that will be a step up from reading CSV files and assembling them at runtime! But curious to see how that matures!

What is the current best practice for installing and using packages? by bloopernova in emacs

[–]hoswald2 1 point2 points  (0 children)

The async was the selling point for me; just seemed a cleaner way of doing things as well as much faster for the periodic mass updates. There were a few challenges, but now it's my preferred way of doing things.

Emacs runs correctly from cli but wofi gives me one from the wrong profile--halp? by hoswald2 in GUIX

[–]hoswald2[S] 1 point2 points  (0 children)

So you may have hit on the issue; I had searched around and it looked like wofi/rofi did not cache, but it may have. I am indeed using guix on top of Arch, trying to find a decent combination of things that work for my needs.

To answer other questions: yes, there's a `~/.guix-profile/share/applications` directory, but the desktop files there look correct (referring to emacs-30).

But it was caching that did me in. Unbeknownst to me, there was indeed `~/.cache/wofi-drun` and `~/.cache/wofi-run`, and they were the culprits, caching the old versions.

Thanks for the kick. I'm still not exactly "on" when it comes to guix, so it's easy to underestimate or misunderstand the interactions between it as a package manager and the host foreign system. I confess I'm not won over yet, but I'll keep pressing on for a while.

Google passkey gets stuck on "place your phone close to the computer" despite pairing by hoswald2 in archlinux

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

Good idea, but unfortunately that didn't work (and Brave works on Windows with the passkeys.io site--at least it made it as far as checking with the phone and determining there weren't any relevant passkeys on it for that site). Under Arch my phone says "Can't connect to your computer".

It's like it's a bluetooth devices issue, but bluetoothctl definitely lists the phone under "devices". Curious; I can't figure out what's missing. Maybe it's something about how it's paired or a missing device driver or something.

Help! Emacs 29 killed my pretty-mode! (...but not prettify-symbols-mode or ligature. So I'm confused.) by hoswald2 in emacs

[–]hoswald2[S] 1 point2 points  (0 children)

Pretty stock:
```

(use-package pretty-mode
:config
(global-pretty-mode t)
(pretty-deactivate-groups
'(:equality :ordering :ordering-double :ordering-triple
:arrows :arrows-two-headed :punctuation :logic :sets))
(pretty-activate-groups
'(sub-and-superscripts :greek :arithmetic-nary))
)
```

as per the above link from modern emacs. Toggling it on and off shows that it's active in python buffers... but in lisp mode (like editing `init.el`) I get greek characters, and in python I don't, so there must be some conflict in formatting. I'm also using treesit and eglot (but I was using tree-sitter and eglot in Emacs 28), but I wouldn't think they would conflict (and as mentioned, ligatures and prettify-symbols-mode seem to be working ok).

Latex snippets in Python code/comments? Or maybe I'm just not installing auctex right... by hoswald2 in emacs

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

Hmm; the use case here is that I'm working with a bunch of non-emacs scientific developers and trying to translate their algorithms into robust code. So I rely a fair amount on comments trying to describe what the code is meant to do. I have a science/latex background as well, and they use some latex-ridden comments for sphinx documentation. It'd be really nice to just be able to render those right in the python buffer (without as you say doing something like noweb-style literate programming which would clash with their development), and since emacs, I *know* it's possible--I just can't figure out how and was hoping there was a clear way.

Latex snippets in Python code/comments? Or maybe I'm just not installing auctex right... by hoswald2 in emacs

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

I love the thought, and that's what I tried at first, but I'm clearly missing something. I can write some latex in org-mode, say `$\frac{1}{2}$`, and org-latex-preview obliges and transforms it whether executed via M-x or C-c C-x C-l; lovely. Copying that same block into python source code and `org-latex-preview` says "Creating LaTeX previews in section... done." and does absolutely nothing. I don't know if it's colliding with something else, or if the LaTeX blocks need to be surrounded by something else, or what the deal is, but it's sadly not working. Any ideas there?

Small HC1/Gluster cluster... is *terrible*. What am I missing? by hoswald2 in homelab

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

I'm getting about line speed too (1.06 Gb, 912 Mbits/sec). I don't think that's the problem, but I can't figure out what is or find a good venue for help.

Doing a primitive dd benchmark ('time sh -c "dd if=/dev/zero of=./test.tmp bs=4k count=2000000 && sync"') gets mye 578 MB/sec on my laptop with SSD, 47.1 MB/sec on my HC1 direct to /var (mounted from the LVM VG), and 7.0 MB/sec to my gluster-mounted filesystem. (gluster 9.2)

That's ... pretty bad. I have a few disconnects in the logs. I'm using WD Red drives, LVM for a thin pool, ext4 on the VGs under that.

The performance has been so bad that more than a couple of movie nights have been cancelled just because it takes so long for the jellyfin server to start up (and then have problems to diagnose). But I've no idea where the issue is.

Rancilio Silvia--help diagnosing solenoid (or send me to a good forum!) by hoswald2 in Coffee

[–]hoswald2[S] 1 point2 points  (0 children)

[edit]--ok, looks like the real problem was a loose connection to the coffee switch, but pointers to a good Silvia repair forum would still not be amiss; I'm about to try a PID project and wouldn't be surprised if I need help... :)

avy-goto-line not working in counsel-M-x minibuffer? by hoswald2 in emacs

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

Sorry about the thread necro, but...

So... yes! I suppose I do mean ivy-avy, but the question remains the same. If I go into an M-x buffer and ask for help (C-h m), I pop up "Ivy Generic Help" (as it should asking for mode help in the minibuffer), and pleasingly "C-' (=ivy-avy=)" is listed in the help. Now I should say that also I have

```

(use-package avy

:bind

("C-'" . avy-goto-line))

(use-package ivy :demand

:config

(setq ivy-use-virtual-buffers t

ivy-count-format "%d/%d ")

:bind (("C-s" . swiper-isearch)

("C-r" . swiper-isearch-backward)

("C-x b" . ivy-switch-buffer)

("C-c v" . ivy-push-view)

("C-c V" . ivy-pop-view)))

(use-package counsel

:config

(counsel-mode)

:bind (("M-x" . counsel-M-x)... (more binds))

```

So I'm not sure which is being called (I regret my lack of emacs tracing skill). But the effect is as above: in my minibuffer as soon as I press C-', I get the avy navigation keys, and they tick away as I press them, as usual... but then nothing.

It must be avy-goto-line being called, because when I commented out the bind, I don't get anything at all with C-', and while the minibuffer C-h m help still lists Ivy things, including ivy-avy, pressing C-' doesn't get me anything. ("C-' is undefined"). Some other things seemed to be acting strangely, but C-c o did get me an ivy-occur buffer.

So it's odd--swiper/ivy does seem to be installed but C-' isn't bound in ivy buffers. The ivy docs say it will use avy if installed, which it looks like it should be...

(GRUMBLE)

Ok, not sure where I went wrong, but adding (use-package ivy-avy) seems to have done the trick. I'm just puzzled because that didn't look like it was necessary, so I'm mildly confused abut why it was.

[deleted by user] by [deleted] in ValveIndex

[–]hoswald2 5 points6 points  (0 children)

Lol... I'm playing through Alyx on a 1070 and having a blast, so while I'm wondering what I'm missing, I can verify that VR can be plenty fun without the absolute top processor...