HNHacker News
TopNewBestAskShowJobs

_ikke_

1,572 karma · joined May 31, 2011

Another random user
submissionscomments
_ikke_··on Runlike: Given an existing Docker container, prints the command line to run it
docker compose up -d --pull
_ikke_··on Sudoedit can edit arbitrary files
https://security.alpinelinux.org/vuln/CVE-2023-22809
_ikke_··on Go: Redefining For Loop Variable Semantics
The := both declares a new variable by an inferred type and assigns a value to it. Explicitly, this would be the same as

  var item *Item = item
It creates a locally scoped variable that shadows the existing one.
_ikke_··on Git’s database internals I: packed object store
> It stores the snapshot of changes in branch folders

No, gp is right. There is no snapshot of changes. Each unique version of a file is an object in the object store. That does mean each commit would only introduce new objects for files that have changed (these are already added to the object store when you use `git add`) .

But the pack files like the article explains (which are created regularly during gc/maintenance runs) is why the repo size can often be smaller then the working tree.

> Not only is each object compressed individually, they can also be compressed against each other to take advantage of common data.

_ikke_··on Falling for Kubernetes
With templating, you treat the yaml as text with a yaml-unaware templating engine (like golangs text/template). You need to make sure that the end result is valid yaml.

With rendering, you use something that is aware of yaml, and you feed it data and it outputs valid yaml.

_ikke_··on Considering Sourcehut
The issue is most users do not have the infrastructure to let others pull directly from their repositories, hence centralized hosts became popular.
_ikke_··on Multi-gitter – CLI to update multiple Git repositories in bulk
git itself has a command called for-each-repo[0], which you provide the name of a global config setting which contains a list of repository paths, and it will then run the specified command on each of those repositories.

Example from the man page:

  git for-each-repo --config=maintenance.repo maintenance run
[0]:https://gitirc.eu/git-for-each-repo.html
_ikke_··on We Put Half a Million Files in One Git Repository, Here’s What We Learned
You may want to set the '-diff' attribute for these files so that git will not show diffs for these, instead it will show 'Binary files differ'.

There is also '-merge', which will cause git to not attempt to merge the contents, but just ask you to pick a side.

The challenge however is then verifying the contents of these files in things like merge requests.

See https://gitirc.eu/gitattributes.html

_ikke_··on Code licensed under the AGPL must not be used at Google
No, it means that you as a client are allowed to request and should be given the source code for that server.
_ikke_··on Improving NGINX Performance with Kernel TLS and SSL_sendfile
A feature request to enable it: https://gitlab.alpinelinux.org/alpine/aports/-/issues/13664
_ikke_··on Show HN: Jless, a command-line JSON viewer
Yes, the same reason that programs remain slow, even though computers keep getting faster.
_ikke_··on Alpine Linux 3.15
This will be addressed though
_ikke_··on Writing a Linux-compatible kernel in Rust
Discussed extensively yesterday: https://news.ycombinator.com/item?id=28986229
_ikke_··on Flameshot – Simple, powerful screenshot tool for all major operating systems
For AwesomeWM, I have this in my rc.lua in the globalkeys table:

  awful.key({ }, "Print", function () awful.spawn("flameshot gui") end,
            {description = "Make a screenshot (relies on flameshot)", group = "clipboard"})
_ikke_··on Git Koans (2013)
And the counterpart to switch is restore:

https://git-scm.com/docs/git-restore

_ikke_··on Git is too hard
What you are missing is the difference between gits object model (with loose objects) and packfiles. The delta compression happens when you run `git gc` (git does this automatically as well on occasion), and packfiles is how git fetches and pushes history.

But when you create a new commit, that commit object is stored as a loose object, with any new file blobs and tree objects. This represents a complete snapshot of your working tree.

But git does not need to make a complete copy of the working tree on each commit. Because objects are referred to by the hash of their contents (with a git specific header), git only needs to store each version of a file once.

_ikke_··on How to publish Git repos that cannot be republished to GitHub
Note that it's only a _reference_ to a commit, not the commit object itself. So from a a github point of view, it would not even make sense to scan / trigger on this. As long as there are no commit objects with that hash, any reference is harmless.
_ikke_··on Wikimedia is moving to Gitlab
But the goal is to prevent spam in the first place. I don't think these bots will verify robots.txt to see if the spamming is effective. They just spam anything they can get their hands on.
_ikke_··on Type in the exact number of machines to proceed

  my_command() {
      command my_command "$@" --do-it
  }
_ikke_··on Voyagers Detect an Increase in the Density of Space Outside the Solar System
How long do we still expect data to come back from the voyagers? At some point the signal must be too weak to be able to pick up.
_ikke_··on Discord Desktop App RCE
I guess they mean launching webapps with --app=, which launces the page in a chromeless window.

Firefox recently learned --ssb (after you enable that in about:config), but it's use is much more limited, geared towards kiosks. Things like right mouse button and extensions are disabled, and you cannot open external links.

_ikke_··on Giving up on wlroots-rs (2019)
Previous discussions:

https://news.ycombinator.com/item?id=19778738 (2019)

_ikke_··on Look ma, no mouse: Vimium
Yes, exactly. It also allows you to specify keys that it should ignore per site (so that the webapp always receive them), or even completely disable vimium for a site (or just specific pages on a site). By default, it's not active on gmail for example.
_ikke_··on Linux 5.8-rc1
Note that you can provide -m multiple times to add multiple paragraphs to the commit message.
_ikke_··on GitHub was down
I've had 2 sd-cards go corrupt (read-only, any writes were lost). Had a mariadb instance running on it as well. It will hold for for some time, but eventually, the card will give up.
_ikke_··on Do notation considered harmful
For me, that's similar to writing

  if(var == true) {

  }
It's more verbose than necessary, but not wrong.
_ikke_··on X410 – X Server for Windows 10
<meta name="viewport" content="width=device-width, initial-scale=1" />

The "width=device-width" is the cause.

_ikke_··on Please stop recommending Gitflow
When people talk about squashing branches, it means squashing all commits into a single commit (git merge --squash, or using the squash feature of github / gitlab / hosted-git-solution).

The reason you use blame is to find the exact commit that changed a specific line, and hope to find the rational / decisions that lead up to this change, assuming people are disciplined enough to document that in their commit messages. If not, maybe you could even ask Josh if they still remember why they changed things a certain way.

Many developers commit append-only until their feature works, which means there are a lot of noise commits in between, which they don't (know how to) clean up. Rather than having all this noise, projects opt to squash the commits instead.

_ikke_··on Shit – An implementation of Git using POSIX shell
Do you know about git worktree? Because that sounds exactly what you want. Each worktree has its own index (staging area) and working tree.
_ikke_··on Shit – An implementation of Git using POSIX shell
The 'staging' area is implemented through the index. And the index is used for more things then just deciding what gets in the next commit. A lot of gits speed comes from caching Stat data of files so that it does not have to hash the complete working tree for each operation. That's not something you can just ignore.

Someone proposed splitting this up the other day, but even that would come at the cost of performance and an increase of complexity.

← PreviousPage 2 of 7Next →