Search Criteria
Package Details: ttylog 0.31-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/ttylog.git (read-only, click to copy) |
---|---|
Package Base: | ttylog |
Description: | A serial port logger |
Upstream URL: | https://github.com/rocasa/ttylog |
Licenses: | GPL2 |
Submitter: | ayekat |
Maintainer: | severach |
Last Packager: | severach |
Votes: | 3 |
Popularity: | 0.000000 |
First Submitted: | 2016-04-19 15:35 (UTC) |
Last Updated: | 2018-03-01 20:58 (UTC) |
Latest Comments
severach commented on 2018-03-02 20:42 (UTC) (edited on 2018-03-02 20:46 (UTC) by severach)
I consider files outside of PKGBUILD to be hidden. It’s frustrating look through a .spec or PKGBUILD to run across a patch that is nowhere to be found. All the lofty claims that AUR helpers are secure because they let you read the PKGBUILD don’t count for much if the nefarious patches are hidden outside of it. I bring anything into the PKGBUILD that doesn’t make things more messy. I use patch when I need to know if patched code is changed.
sbin
errors will be detected during install so there’s no need to know whether it it applies or not. sed will adapt the changes to any context and position. patch will need to be redone every so often. patch grows with the number of fixes. A single sed handles any number of fixes.The only reason -j isn’t breaking more PKGBUILDs is because noone uses -j. I know they don’t because if they did they would be demanding a switch on
make
tonice
it. I can take -j1 off of the make but -j1 is very necessary on make install. You do hardcode -j into PKGBUILD when you know the makefile is broken. That’s why I comment the reason for -j1.Sourceforge is down most of the time. Using Sourceforge as a download source results in a constant stream of complaints. I can change the upstream URL back but I avoid downloading from Sourceforge. Seems to me that SF developers are heading for the exits and I can help with that by publishing github instead of Sourceforge. When doing such a change I ensure the new files are the same as old and that there is reason to believe the developer is the same or just as good.
100.000% of all shell scripts should have
set -u
running including those that don’t have variables. I’ll keep turning it on until the Arch devs catch on and turn it on in makepkg for everyone. Not usingset -u
results in garbage shell code. It seems unimportant for this package but I’ve standardized on it in all packages so it’s there in the big packages where it is essential. It also helps catch bugs from previous packagers. Once in there’s no reason to take them out._verwatch is used by my AUR helper git-aurcheck to check for updates. I recognized right away that waiting for users to request updates results in packages that are years out of date and after about 10 packages manually checking for updates becomes impractical. I also knew that each package would have different rules. All current upstream update management scripts and systems are no good so I added the functionality into my utility and it works wonderfully. _vercheck customizes update checking for each package. Aspects of it need to be incorporated into the AUR servers with plenty of server based improvements. I used to parse the github release page directly then I found the RSS page which works much better. The comment is my reminder that the package is using the new RSS feed.
I keep the old source and url as a comment so others reading the PKGBUILD know about the other options. It’s also easy to switch back. I try to make my PKBUILD useful to everyone in every distro and future packagers, not just a few bumbling yaourt users.
git-aurcheck tells me what files need to be added and removed and even provides the commands for copy pasta. .gitignore and
git add *
is garbage technology by comparison.Always running
configure
orcmake
breaksmakepkg -ef
and makes a mess, not a clean build. I tried placing them inprepare()
but that turnsmakepkg -sCo
into a nightmare. Since makepkg won’t provide us aconfigure()
this is the only way I’ve found to make PKGBUILD work properly for developers. Usemakepkg -C
for a clean build. makepkg is highly developer friendly but not when most PKGBUILD are incorrectly written.My shell scripting follows extremely strict formatting standards. Almost always using quotes and ${} are two of them. For the reason let’s look at two variables, $FOO and $FOOBAR. I’d like to replace all occurrences of $FOO with $BAZ but you can see that this will result in $FOOBAR - > $BAZBAR which I don’t want. You might think that [x]WholeWordsOnly will fix that but all editors consider $ a word break character. This sucks in BASIC too. The solution is to use ${FOO} and ${FOOBAR} and now search and replace in any editor works properly, at least until we use ${FOO//bar/baz}.
I didn’t replace your PKGBUILD so you’re still a contributor. I maintain lots of PKGBUILD and many are huge so I apply the same methods to all of them with automated tools, even to small PKGBUILD like this one where they all seem unnecessary.
ayekat commented on 2018-03-02 10:15 (UTC)
Hi, thanks for adopting the package. I noticed a few odd things in the last change, though:
mkdir -p
. Not sure about whether running cmake only in one of the cases makes sense, but that's probably just an opinion (I prefer a clean build in all cases).It looks like you have simply replaced the entire PKGBUILD with another one you had lying around, so I guess you could remove me as "Contributor" - I would not mind.
By the way, I hadn't got around to reporting the sbin issue to upstream, so you could still do that someday. ttylog is perfectly able to run without being root, so even for systems that have bin and sbin separate, it makes no sense - and it is also not statically linked (the original purpose of sbin), so that argument wouldn't hold either. Upstream may still reject it on the base of "legacy reasons" or whatnot, so don't push too hard :-)