Package Details: abricotine 1.1.4-1

Git Clone URL: (read-only, click to copy)
Package Base: abricotine
Description: A markdown editor with inline preview
Upstream URL:
Licenses: GPL3
Submitter: heddson
Maintainer: seifferth
Last Packager: seifferth
Votes: 15
Popularity: 0.000023
First Submitted: 2016-02-24 09:47 (UTC)
Last Updated: 2022-06-09 18:24 (UTC)

Latest Comments

kgizdov commented on 2020-05-01 14:06 (UTC)

@seifferth, npm audit fix is just a suggestion. Hopefully, the app stops requiring python2 soon as Arch is aiming to drop that asap. Also, here's the issue I opened upstream - I do not per se agree with rephrasing the urgent need to move away from python2 as an 'enhancement', but I guess someone at least read it.

However, for your personal info, if curious, npm audit fix by default will not override requested versions and should not cause any such issues - it will only try to update "point" releases where possible. Moreover, even like it is now, your package produces a different build depending on the time of its build anyway. It has nothing to do with your setup, it's just how it is with packages and specifically npm. Distributable software is designed to work around this fact. ;) And finally, the github issue you mention does have a valid point, but about a different thing - they don't want their direct dependencies to be different for debugging purposes and forced that choice on their users. Not a great solution, but a solution to a problem nonetheless. You as a packager can make your own decisions about all of that differently if you wish. So it's up to you.

seifferth commented on 2020-04-30 14:17 (UTC)

Thanks, kgizdov, for the note concerning python2. I've added it to makedepends as you suggested.

I'm not sure about running npm audit fix, however, since that might introduce unpredictable build errors. See for an explanation on why abricotine doesn't use the latest version of its dependencies. Running npm audit fix would also mean that different builds of the same package version would produce different packages, depending on the time of the build, which doesn't seem right. I do appreciate the security implications of the current policy --- both mine and upstream ---, though, so I'd be happy to discuss the issue further, if you like.

kgizdov commented on 2020-04-30 13:28 (UTC) (edited on 2020-04-30 14:02 (UTC) by kgizdov)

This package does not build in a clean chroot - it's missing python2 in makedepends. Also consider running npm audit fix after the npm install command.

seifferth commented on 2020-04-29 18:40 (UTC) (edited on 2020-04-29 18:40 (UTC) by seifferth)

Looks like upstream has changed the contents of the 1.0.0 release after I made the update. Thanks for the fix, silvio.

silvio commented on 2020-04-29 17:49 (UTC)

Building of 1.0.0 breaks with a sha256sum problem. Also the patchnames are changed.

commit ac2c853f134901de4ce4b1364af7ef781ea29f37 (HEAD -> master)
Author: Silvio Fricke <>
Date:   Wed Apr 29 19:45:44 2020 +0200

    fix sha256 and naming of PKGFILE

diff --git a/.SRCINFO b/.SRCINFO
index b68146a..069c7e9 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
 pkgbase = abricotine
        pkgdesc = A markdown editor with inline preview
        pkgver = 1.0.0
-       pkgrel = 1
+       pkgrel = 2
        url =
        arch = x86_64
        license = GPL3
@@ -10,7 +10,7 @@ pkgbase = abricotine
        depends = libxss
        source = abricotine-1.0.0.tar.gz::
        source = abricotine.desktop
-       sha256sums = a762d53c1870a93179ddf1de8a24a30141975da84059295c40a99ae18d38e1b3
+       sha256sums = ed12ba3d518b87bbd965b09a25c931d827c2250deb6af0d6c5137ff3795a0575
        sha256sums = 164d0042ffe461ca0418709a59be29b433055589b661be4d6555c07df42b383c

 pkgname = abricotine
diff --git a/PKGBUILD b/PKGBUILD
index 3c4f10f..5ac7833 100644
@@ -3,7 +3,7 @@

 pkgdesc="A markdown editor with inline preview"
@@ -12,18 +12,18 @@ depends=('libxss')
 makedepends=('npm' 'nodejs-lts-erbium')

 build() {
-  cd "${srcdir}/Abricotine-${pkgver}"
+  cd "${srcdir}/${pkgname}-${pkgver}"

   npm install --cache ../cache --devdir="${srcdir}/devdir"
   npm run packager

 package() {
-  cd "${srcdir}/Abricotine-${pkgver}"
+  cd "${srcdir}/${pkgname}-${pkgver}"

   install -d "${pkgdir}/opt/abricotine"
   cp -r dist/*/* "${pkgdir}/opt/abricotine"

seifferth commented on 2019-11-21 13:19 (UTC)

The build errors seem to be caused by node-spellchecker, which relies on features of nodejs that have been deprecated in recent versions. I added nodejs-lts-dubnium to makedepends, which should fix the build issues. Please let me know if you continue experiencing problems.

seifferth commented on 2019-11-20 19:02 (UTC)

Build errors seem to be related to the spellchecker library, which doesn't compile with the latest version of node. I can't get the current git version to compile with the latest version of node on Arch Linux either. Problems with that particular library are known upstream but haven't been completely solved yet. I'll look into it shortly, if I get time.

I also added an abricotine-bin package to the AUR that relies on pre-built binaries of the latest release, which are downloaded from the upstream github page. You may want to use that package until the issue has been solved.

stickmanChampion commented on 2019-11-19 18:05 (UTC)

I continue having various build errors.

seifferth commented on 2019-09-17 10:37 (UTC)

I pushed a workaround that fixes outdated dependencies in package.json during prepare(). I hope this fixes it for now. Could you try again and see if the errors persist?

evert commented on 2019-09-16 19:30 (UTC)

Various build errors.

Svenstaro commented on 2019-07-08 18:32 (UTC)

Disowning as the package has gone without updates for months and the author hasn't logged in since a year.

ClawOfLight commented on 2018-06-11 16:05 (UTC)

This appears to require python2 as makedep, and --python=/usr/bin/python2 as argument to the npm build command.

heddson commented on 2018-05-16 05:17 (UTC)

Yes, forgot to push abricotine.desktop. Should work now. Thanks!

appolyon commented on 2018-05-16 05:05 (UTC)

Tried updating today but it fails with abricotine.desktop not passing the validity check.

heddson commented on 2018-05-15 22:27 (UTC)

dependency and .desktop updated. thanks!

gho-st commented on 2018-05-12 23:00 (UTC)

please add libxss as a dependency

MatteoCampinoti9 commented on 2018-05-10 01:10 (UTC)

There is a small mistake in the .desktop file. It uses Category= instead of Categories=. This causes the program to be always categorized as 'Other' in app menus.

heddson commented on 2017-07-15 22:25 (UTC)

Thanks! Added gconf as a dependency.

MatteoCampinoti9 commented on 2017-07-01 16:42 (UTC) (edited on 2017-07-01 16:42 (UTC) by MatteoCampinoti9)

'gconf' should be added as dependency. Didn't have it installed and it outputted "abricotine: error while loading shared libraries: cannot open shared object file: No such file or directory"

dhead666 commented on 2017-01-22 08:17 (UTC)

@heddson you need to use the assignment operator with --devdir (e.g. --devdir="${srcdir}/devdir" ) in contrast to the --cache switch which requires space between variable to key, but it partially works, only for .electron-gyp while it supposed to put also the headers from.node-gyp there. I haven't confirmed it with the code but I remember reading in some pr comment that anything that npm doesn't understand it just pass and doesn't parse by itself, so I guess it is why the assignment sign is needed, to follow the variable passing format required by node-gyp (see Command Options in ).

heddson commented on 2017-01-22 00:58 (UTC)

Yeah, I couldn't get --devdir to work.. but NODE_GYP_BUILD_DIR looks promising! Updated the PKGBUILD.

dhead666 commented on 2017-01-21 16:54 (UTC)

@heddson use --cache command switch as it's specific npm variable, and doesn't affect/seeping to the built package. $HOME is too generic and might have undesired effect (though probably not but it's not a good packaging practice in my taste) in theory --devdir flag should set the .npm-gyp folder but it doesn't seem to work correctly. another related gh pr that worth keeping an eye on is

heddson commented on 2017-01-20 18:55 (UTC)

dhead666: Thanks for that tip! --cache works great. I tried to find a good way to remove the other dot-folders (.electron...). The only way I found was setting HOME="${srcdir}/cache" in the PKGBUILD. I suppose that's not very good packaging practice either, but it's effective :) . Removes everything. I acually don't get why makepkg uses the users home-dir.. What do you think would be best, --cache or setting HOME?

dhead666 commented on 2017-01-19 11:44 (UTC) (edited on 2017-01-19 11:53 (UTC) by dhead666)

please add --cache "${srcdir}/npm-cache" flag so as default the package won't let npm to litter $HOME with unnecessary thousand of files. we can manually set ~/.npmrc but I think it's a bad packaging practice to leave it like that. p.s. this still leaves ~/{.electron,.electron-gyp,.node-gyp}

heddson commented on 2016-09-18 21:54 (UTC)

gnacho: I updated the .desktop file. Reinstall the pkg and it should work. z3ntu: I read the comments on the github issue. Stange. Works fine here.. But I'm glad you found a workaround!

gnacho commented on 2016-09-16 15:37 (UTC)

How to use by default to open .md files? Gnome 3.22 doesn't show it in the list of programs... :(

z3ntu commented on 2016-07-08 08:32 (UTC) (edited on 2016-07-08 10:34 (UTC) by z3ntu)

python2 is a (build) dependency! gyp ERR! configure error gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable. gyp ERR! stack at failNoPython (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:449:14) gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:353:11 gyp ERR! stack at F (/usr/lib/node_modules/npm/node_modules/which/which.js:69:16) gyp ERR! stack at E (/usr/lib/node_modules/npm/node_modules/which/which.js:81:29) gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/which/which.js:90:16 gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/which/node_modules/isexe/index.js:44:5 gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/which/node_modules/isexe/access.js:8:5 gyp ERR! stack at FSReqWrap.oncomplete (fs.js:123:15) EDIT: After manually installing python2 (NOT python(3)!) I get the error in a completely clean chroot (where every build should work): See for more info. EDIT 2: I have found a workaround for now! Install (or "npm install -g electron-rebuild") and build this!

heddson commented on 2016-07-02 23:34 (UTC) (edited on 2016-07-02 23:47 (UTC) by heddson)

JohnRobson: Sorry I can't reproduce your issue. I'm running npm v3.10.3 and Linux 4.6.2-1-ARCH, but don't know if that makes any difference.. Abricotine just updated to 0.3.3, maybe that works for you.

JohnRobson commented on 2016-07-02 12:06 (UTC)

npm ERR! Linux 4.6.3-1-ARCH npm ERR! argv "/usr/bin/node" "/sbin/npm" "install" npm ERR! node v6.2.2 npm ERR! npm v3.10.2 npm ERR! code ELIFECYCLE npm ERR! nslog@3.0.0 install: `node-gyp rebuild` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the nslog@3.0.0 install script 'node-gyp rebuild'. npm ERR! Make sure you have the latest version of node.js and npm installed. npm ERR! If you do, this is most likely a problem with the nslog package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node-gyp rebuild npm ERR! You can get information on how to open an issue for this project with: npm ERR! npm bugs nslog npm ERR! Or if that isn't available, you can get their info via: npm ERR! npm owner ls nslog npm ERR! There is likely additional logging output above. npm ERR! Please include the following file with any support request: npm ERR! /tmp/yaourt-tmp-us/aur-abricotine/src/Abricotine-0.3.2/npm-debug.log ==> ERROR: A failure occurred in build(). Aborting... ==> ERROR: Makepkg was unable to build abricotine.

z3ntu commented on 2016-05-02 20:15 (UTC) (edited on 2016-05-02 20:17 (UTC) by z3ntu)

Builds now for me. Weird... EDIT: Maybe the /tmp partition was too small on my server and I expanded it... But probably not...

j1simon commented on 2016-04-14 10:33 (UTC)

It's solved to me but I have done so many things that I don't know what was really the problem. More info in issue:

heddson commented on 2016-04-14 08:20 (UTC)

z3ntu: I compaired your installed pkgs with mine. We have a lot of different pkgs and I couldn't figure out if we have some missing dependencies.. You should try and see if you're able to install from source (without the PKGBUILD), just like j1simon did. j1simon: Great that you opened an issue! Hopefully we'll see we're missing a dependency or maybe if it's a permission issue.

j1simon commented on 2016-04-13 13:03 (UTC)

The problem occurs too when I try to install the git version from sources. I have opened a issue:

j1simon commented on 2016-04-13 12:24 (UTC)

Same problem: ..... > Abricotine@0.3.2 postinstall /home/juan/bin/nodejs/lib/node_modules/Abricotine > electron-rebuild && bower install sh: electron-rebuild: command not found npm ERR! Linux 4.4.7-1-ck npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install" npm ERR! node v5.10.1 npm ERR! npm v3.8.6 npm ERR! file sh npm ERR! code ELIFECYCLE npm ERR! errno ENOENT npm ERR! syscall spawn npm ERR! Abricotine@0.3.2 postinstall: `electron-rebuild && bower install` npm ERR! spawn ENOENT npm ERR! npm ERR! Failed at the Abricotine@0.3.2 postinstall script 'electron-rebuild && bower install'. npm ERR! Make sure you have the latest version of node.js and npm installed. npm ERR! If you do, this is most likely a problem with the Abricotine package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! electron-rebuild && bower install npm ERR! You can get information on how to open an issue for this project with: npm ERR! npm bugs Abricotine npm ERR! Or if that isn't available, you can get their info via: npm ERR! npm owner ls Abricotine npm ERR! There is likely additional logging output above. npm ERR! Please include the following file with any support request: npm ERR! /tmp/makepkg/abricotine/src/Abricotine-0.3.2/npm-debug.log ==> ERROR: A failure occurred in build(). Aborting...

z3ntu commented on 2016-04-07 13:39 (UTC)

Actually this error happens on both my server and on my laptop. I have bower installed only on my laptop (not on my server) and there is no command "electron" on either. If you are interested in more info: pacman -Q: another build log after removing pkg/, src/, etc:

heddson commented on 2016-04-07 13:29 (UTC)

I tried different scenarios (like building for different architectures and so on..) but I'm still unable to get your error. Maybe it could be something with permissions? but I'm just guessing.. Another thing maybe worth noting is that I neither have bower or electron installed on my system. Do you have any of them installed? Maybe they conflict in some way, since npm installs them locally in the build dir.. I'm building on x64 with regular kernel.

z3ntu commented on 2016-04-07 12:38 (UTC)

@heddson Anything new?

z3ntu commented on 2016-04-05 06:04 (UTC) (edited on 2016-04-05 06:06 (UTC) by z3ntu)

With --verbose: . I can also add the npm-debug.log file, but there doesn't seem to be any other information.

heddson commented on 2016-04-04 21:03 (UTC)

I'm unable to recreate your error.. Maybe you could add '--verbose' to the npm commands in the PKGBUILD. I got the following output when adding it: Which architecture are you building on? Are you using your custom build script? If you are, do you get the same error when you're building it 'locally'?

heddson commented on 2016-04-04 09:31 (UTC)

Hmm yeah maybe it's bower, or perhaps electron.. I'll test it when I get home. Thanks for error message.

z3ntu commented on 2016-04-04 09:12 (UTC)

I get the following error while building:

heddson commented on 2016-03-24 22:03 (UTC)

Since the developer do not want to add a .desktop-file, I inclued one here :) .

heddson commented on 2016-03-23 22:18 (UTC)

Thanks for the notice! I commented on the github issue.

shen commented on 2016-03-23 18:31 (UTC)

@heddson plz, take a look at: Cheers Hitaro Shen

heddson commented on 2016-03-19 10:49 (UTC) (edited on 2016-03-19 11:49 (UTC) by heddson)

Updated the PKGBUILD for the filename. Hope that will work for you! Note that the zip file will now get another name, but the folder you (or makepkg) get when unziping it will still have the same old name without the pkgver (like Abricotine-linux-x64).

z3ntu commented on 2016-03-19 09:50 (UTC)

About the filename: Yes, I use a self-written python script (on my server) to automate the updating and building of AUR packages. About the .desktop file: I can try the file on my other computer, but I don't have access to it the next week or so.

heddson commented on 2016-03-19 09:32 (UTC)

hmm maybe somethings wrong with my system, I'll have to investigate it some more. But I don't feel comfortable adding stuff (to other peoples code) that I'm not 100% sure is working. Maybe you could make a PR upstream. Yeah no problem, I can save the zip-file with the version in the name. Just out of curiosity, when/how do you get this problem? Do you always use the same build dir or are you using an aur-helper with a special setting or something..

z3ntu commented on 2016-03-13 12:03 (UTC) (edited on 2016-03-13 12:16 (UTC) by z3ntu)

For me (arch, i3 & rofi) the .desktop file works. And can you do so that the file gets saved with the version as filename? Otherwise you have to manually delete the downloaded file for each new version.

heddson commented on 2016-02-23 15:07 (UTC)

I actually tried, but I get a loading/spinning icon (for a while) when I use it. So I didn't add it. I'm on a Gnome system. I used this one: You can try it and see if it works for you..

z3ntu commented on 2016-02-23 14:41 (UTC)

You should add a .desktop file to it, so that you can open it easily.