Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add link to AUR package #98

Merged
merged 1 commit into from
Dec 15, 2017
Merged

Conversation

wilzbach
Copy link
Contributor

Hi Jon,

As I use your great tools from time to time, I added an ArchLinux AUR package for it. That's the community-maintained package build repository for ArchLinux.
As ArchLinux seems to be quite popular in the D community, this might also be interesting to others.
I wasn't sure what t

See also: https://aur.archlinux.org/packages/tsv-utils

@jondegenhardt
Copy link
Contributor

Wow, thanks for putting this together! The update to the README is probably better off a couple paragraphs above, after the ### Prebuilt binaries section (line 213). If you don't want to move it let me know and I'll merge and move it next time I do an update.

I don't know how ArchLinux packages work. I took a look at the PKGBUILD file you created and have a couple questions and comments. In this block:

build ()
{
    cd $srcdir/$_pkgname
    make DCOMPILER=ldc2
    dub upgrade
    dub build
}
  • What do the dub upgrade and dub build commands do in this context? The make DCOMPILER=ldc2 command should fully build the binaries.
  • An FYI: The very fastest binaries turn on LDC's LTO support. This would be done using: make DCOMPILER=ldc2 LDC_BUILD_RUNTIME=1. I'm not suggesting doing this yet, as the LTO technology is relatively new. I use it when building pre-built binaries on Travis-CI that are available from GitHub. However, on Travis I get to run the full test suite as part of the build. And it requires LDC 1.5. But some point might want to turn this on. For more info: Building with LTO
  • Another thing people might like is the bash completion. I don't if there a standard way to install on ArchLinux, I just include it in the packaged binaries and provide instructions for how to install. However if you know how to install on ArchLinux that might be useful. The key file is bash_completion/tsv-utils-dlang in the repo. For more info see: Tips & Tricks: Enable bash completion

@wilzbach
Copy link
Contributor Author

The update to the README is probably better off a couple paragraphs above, after the ### Prebuilt binaries section (line 213). If you don't want to move it let me know and I'll merge and move it next time I do an update.

I thought about this too, but wasn't sure about it and thus choose politely the end of the document.
Glad you share my opinion here -> moved.

The very fastest binaries turn on LDC's LTO support.

Yeah, I'm aware and I would love to use LDC's LTO, but ldc-build-runtime is explicitly removed from the Arch LDC package:

https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/ldc#n79

I asked @Vild (D's ArchLinux official package maintainer) about the possibility of including it in the ldc package.

What do the dub upgrade and dub build commands do in this context?

Oh sorry. Those were leftovers.

Another thing people might like is the bash completion. I don't if there a standard way to install on ArchLinux,

Hehe. I use zsh, but there's a standard way to install them. Done.

@jondegenhardt
Copy link
Contributor

@wilzbach @Vild Regarding the LTO support via ldc-build-runtime: Performance improvements up to 40%. See slide 9 from this deck: Silicon Valley D meetup, Dec 14 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants