diff --git a/.dir-locals.el b/.dir-locals.el
deleted file mode 100644
index a53c8aa6db54f6d2c9c86f13e1d74daaccf2ddbd..0000000000000000000000000000000000000000
--- a/.dir-locals.el
+++ /dev/null
@@ -1,8 +0,0 @@
-;;; Directory Local Variables
-;;; For more information see (info "(emacs) Directory Variables")
-
-((nil
- (bug-reference-bug-regexp . "\\(\\(?:[Ii]ssue \\|[Ff]ixe[ds] \\|[Rr]esolve[ds]? \\|[Cc]lose[ds]? \\|[Pp]\\(?:ull [Rr]equest\\|[Rr]\\) \\|(\\)#\\([0-9]+\\))?\\)")
- (bug-reference-url-format . "https://github.com/NixOS/nixpkgs/issues/%s"))
- (nix-mode
- (tab-width . 2)))
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 76fb19529b031166e9e60753388f89a5f4bf334a..ba6a3501e38f9b5cbb54ed4779ae32932d3f2ee1 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -12,7 +12,7 @@
# Libraries
/lib @edolstra @nbp
-/lib/systems @nbp @ericson2314
+/lib/systems @nbp @ericson2314 @matthewbauer
/lib/generators.nix @edolstra @nbp @Profpatsch
/lib/debug.nix @edolstra @nbp @Profpatsch
@@ -20,9 +20,11 @@
/default.nix @nbp
/pkgs/top-level/default.nix @nbp @Ericson2314
/pkgs/top-level/impure.nix @nbp @Ericson2314
-/pkgs/top-level/stage.nix @nbp @Ericson2314
-/pkgs/stdenv/generic @Ericson2314
-/pkgs/stdenv/cross @Ericson2314
+/pkgs/top-level/stage.nix @nbp @Ericson2314 @matthewbauer
+/pkgs/top-level/splice.nix @Ericson2314 @matthewbauer
+/pkgs/top-level/release-cross.nix @Ericson2314 @matthewbauer
+/pkgs/stdenv/generic @Ericson2314 @matthewbauer
+/pkgs/stdenv/cross @Ericson2314 @matthewbauer
/pkgs/build-support/cc-wrapper @Ericson2314 @orivej
/pkgs/build-support/bintools-wrapper @Ericson2314 @orivej
/pkgs/build-support/setup-hooks @Ericson2314
@@ -45,27 +47,35 @@
/nixos/doc/manual/man-nixos-option.xml @nbp
/nixos/modules/installer/tools/nixos-option.sh @nbp
+# NixOS modules
+/nixos/modules @Infinisil
+
# Python-related code and docs
/maintainers/scripts/update-python-libraries @FRidh
/pkgs/top-level/python-packages.nix @FRidh
/pkgs/development/interpreters/python @FRidh
/pkgs/development/python-modules @FRidh
-/doc/languages-frameworks/python.md @FRidh
+/doc/languages-frameworks/python.section.md @FRidh
# Haskell
-/pkgs/development/compilers/ghc @peti @ryantm @basvandijk
-/pkgs/development/haskell-modules @peti @ryantm @basvandijk
-/pkgs/development/haskell-modules/default.nix @peti @ryantm @basvandijk
-/pkgs/development/haskell-modules/generic-builder.nix @peti @ryantm @basvandijk
-/pkgs/development/haskell-modules/hoogle.nix @peti @ryantm @basvandijk
+/pkgs/development/compilers/ghc @basvandijk
+/pkgs/development/haskell-modules @basvandijk
+/pkgs/development/haskell-modules/default.nix @basvandijk
+/pkgs/development/haskell-modules/generic-builder.nix @basvandijk
+/pkgs/development/haskell-modules/hoogle.nix @basvandijk
+
+# Perl
+/pkgs/development/interpreters/perl @volth
+/pkgs/top-level/perl-packages.nix @volth
+/pkgs/development/perl-modules @volth
# R
/pkgs/applications/science/math/R @peti
/pkgs/development/r-modules @peti
# Ruby
-/pkgs/development/interpreters/ruby @zimbatm
-/pkgs/development/ruby-modules @zimbatm
+/pkgs/development/interpreters/ruby @alyssais @zimbatm
+/pkgs/development/ruby-modules @alyssais @zimbatm
# Rust
/pkgs/development/compilers/rust @Mic92 @LnL7
@@ -74,6 +84,14 @@
/pkgs/stdenv/darwin @NixOS/darwin-maintainers
/pkgs/os-specific/darwin @NixOS/darwin-maintainers
+# C compilers
+/pkgs/development/compilers/gcc @matthewbauer
+/pkgs/development/compilers/llvm @matthewbauer
+
+# Compatibility stuff
+/pkgs/top-level/unix-tools.nix @matthewbauer
+/pkgs/development/tools/xcbuild @matthewbauer
+
# Beam-related (Erlang, Elixir, LFE, etc)
/pkgs/development/beam-modules @gleber
/pkgs/development/interpreters/erlang @gleber
@@ -97,3 +115,27 @@
/pkgs/desktops/plasma-5 @ttuegel
/pkgs/development/libraries/kde-frameworks @ttuegel
/pkgs/development/libraries/qt-5 @ttuegel
+
+# PostgreSQL and related stuff
+/pkgs/servers/sql/postgresql @thoughtpolice
+/nixos/modules/services/databases/postgresql.xml @thoughtpolice
+/nixos/modules/services/databases/postgresql.nix @thoughtpolice
+/nixos/tests/postgresql.nix @thoughtpolice
+
+# Hardened profile & related modules
+/nixos/modules/profiles/hardened.nix @joachifm
+/nixos/modules/security/hidepid.nix @joachifm
+/nixos/modules/security/lock-kernel-modules.nix @joachifm
+/nixos/modules/security/misc.nix @joachifm
+/nixos/tests/hardened.nix @joachifm
+/pkgs/os-specific/linux/kernel/hardened-config.nix @joachifm
+
+# Dhall
+/pkgs/development/dhall-modules @Gabriel439 @Profpatsch
+/pkgs/development/interpreters/dhall @Gabriel439 @Profpatsch
+
+# Idris
+/pkgs/development/idris-modules @Infinisil
+
+# Bazel
+/pkgs/development/tools/build-managers/bazel @mboes @Profpatsch
diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
index 981036bf4a027b657c98485399fa001aca58189a..07eddc80c2531e2ef7e3982395113054d4392190 100644
--- a/.github/CONTRIBUTING.md
+++ b/.github/CONTRIBUTING.md
@@ -20,6 +20,8 @@ under the terms of [COPYING](../COPYING), which is an MIT-like license.
(Motivation for change. Additional information.)
```
+ For consistency, there should not be a period at the end of the commit message's summary line (the first line of the commit message).
+
Examples:
* nginx: init at 2.0.1
@@ -43,7 +45,7 @@ See the nixpkgs manual for more details on [standard meta-attributes](https://ni
## Writing good commit messages
-In addition to writing properly formatted commit messages, it's important to include relevant information so other developers can later understand *why* a change was made. While this information usually can be found by digging code, mailing list archives, pull request discussions or upstream changes, it may require a lot of work.
+In addition to writing properly formatted commit messages, it's important to include relevant information so other developers can later understand *why* a change was made. While this information usually can be found by digging code, mailing list/Discourse archives, pull request discussions or upstream changes, it may require a lot of work.
For package version upgrades and such a one-line commit message is usually sufficient.
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index ab1a50865f093b5e5607e1b6befaeb077417658a..834a2e81c13227c501c0814b489aa3ea044199d3 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1,3 +1,4 @@
+
###### Motivation for this change
@@ -11,10 +12,10 @@
- [ ] macOS
- [ ] other Linux distributions
- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
-- [ ] Tested compilation of all pkgs that depend on this change using `nix-shell -p nox --run "nox-review wip"`
+- [ ] Tested compilation of all pkgs that depend on this change using `nix-shell -p nix-review --run "nix-review wip"`
- [ ] Tested execution of all binary files (usually in `./result/bin/`)
- [ ] Determined the impact on package closure size (by running `nix path-info -S` before and after)
+- [ ] Assured whether relevant documentation is up to date
- [ ] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md).
---
-
diff --git a/.gitignore b/.gitignore
index dba957f766205f8a5729650e55d794712e4a6049..b3ae9e6ea863d213c35110b264068cf9dc8eadb0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,4 +13,5 @@ result-*
.DS_Store
/pkgs/development/libraries/qt-5/*/tmp/
-/pkgs/desktops/kde-5/*/tmp/
\ No newline at end of file
+/pkgs/desktops/kde-5/*/tmp/
+/pkgs/development/mobile/androidenv/xml/*
diff --git a/.version b/.version
index 770bde1f44b3d407b56396ef4614d70990bd08a1..ba19dc3bb41eab373afe125b2874aafd25e5027e 100644
--- a/.version
+++ b/.version
@@ -1 +1 @@
-18.09
+19.09
\ No newline at end of file
diff --git a/COPYING b/COPYING
index 198597a1b410bb3fc3c4c5a3f6c7a488af220891..9a73903d6df1c13050792807b6976a79d18488f5 100644
--- a/COPYING
+++ b/COPYING
@@ -1,4 +1,4 @@
-Copyright (c) 2003-2018 Eelco Dolstra and the Nixpkgs/NixOS contributors
+Copyright (c) 2003-2019 Eelco Dolstra and the Nixpkgs/NixOS contributors
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
@@ -18,12 +18,3 @@ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-======================================================================
-
-Note: the license above does not apply to the packages built by the
-Nix Packages collection, merely to the package descriptions (i.e., Nix
-expressions, build scripts, etc.). It also might not apply to patches
-included in Nixpkgs, which may be derivative works of the packages to
-which they apply. The aforementioned artifacts are all covered by the
-licenses of the respective packages.
diff --git a/README.md b/README.md
index 86bc8534b3c479f6e27949d1a28a562c5d364c89..8cdbb73595bf8cb4a3b612dd76f275dc3a821998 100644
--- a/README.md
+++ b/README.md
@@ -12,15 +12,15 @@ build daemon as so-called channels. To get channel information via git, add
```
For stability and maximum binary package support, it is recommended to maintain
-custom changes on top of one of the channels, e.g. `nixos-18.03` for the latest
+custom changes on top of one of the channels, e.g. `nixos-19.03` for the latest
release and `nixos-unstable` for the latest successful build of master:
```
% git remote update channels
-% git rebase channels/nixos-18.03
+% git rebase channels/nixos-19.03
```
-For pull-requests, please rebase onto nixpkgs `master`.
+For pull requests, please rebase onto nixpkgs `master`.
[NixOS](https://nixos.org/nixos/) Linux distribution source code is located inside
`nixos/` folder.
@@ -31,12 +31,17 @@ For pull-requests, please rebase onto nixpkgs `master`.
* [Manual (NixOS)](https://nixos.org/nixos/manual/)
* [Community maintained wiki](https://nixos.wiki/)
* [Continuous package builds for unstable/master](https://hydra.nixos.org/jobset/nixos/trunk-combined)
-* [Continuous package builds for 18.03 release](https://hydra.nixos.org/jobset/nixos/release-18.03)
+* [Continuous package builds for 19.03 release](https://hydra.nixos.org/jobset/nixos/release-19.03)
* [Tests for unstable/master](https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents)
-* [Tests for 18.03 release](https://hydra.nixos.org/job/nixos/release-18.03/tested#tabs-constituents)
+* [Tests for 19.03 release](https://hydra.nixos.org/job/nixos/release-19.03/tested#tabs-constituents)
Communication:
* [Discourse Forum](https://discourse.nixos.org/)
-* [Mailing list](https://groups.google.com/forum/#!forum/nix-devel)
* [IRC - #nixos on freenode.net](irc://irc.freenode.net/#nixos)
+
+Note: MIT license does not apply to the packages built by Nixpkgs, merely to
+the package descriptions (Nix expressions, build scripts, and so on). It also
+might not apply to patches included in Nixpkgs, which may be derivative works
+of the packages to which they apply. The aforementioned artifacts are all
+covered by the licenses of the respective packages.
diff --git a/default.nix b/default.nix
index 180815d4d6de90e35d846f35e05396f0c6f97bb8..a74a01719c737ca50e6f226e01eec12f0eaa6ebf 100644
--- a/default.nix
+++ b/default.nix
@@ -15,6 +15,12 @@ if ! builtins ? nixVersion || builtins.compareVersions requiredVersion builtins.
it is safe to upgrade by running it again:
curl https://nixos.org/nix/install | sh
+
+ For more information, please see the NixOS release notes at
+ https://nixos.org/nixos/manual or locally at
+ ${toString ./nixos/doc/manual/release-notes}.
+
+ If you need further help, see https://nixos.org/nixos/support.html
''
else
diff --git a/doc/.gitignore b/doc/.gitignore
index d0ba103fa9f1f47f51071c138404c71b43690db2..b5c58be03d150485cea560432ab36171e79ceab3 100644
--- a/doc/.gitignore
+++ b/doc/.gitignore
@@ -1,6 +1,8 @@
*.chapter.xml
*.section.xml
.version
-out
-manual-full.xml
+functions/library/generated
+functions/library/locations.xml
highlightjs
+manual-full.xml
+out
diff --git a/doc/Makefile b/doc/Makefile
index ba77be6678c41c2ea9dc2ce05051ae9cf1b96947..5badfe4138d43f41f111c709b2921603da6ab0fc 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -9,8 +9,10 @@ debug:
.PHONY: format
format:
- find . -iname '*.xml' -type f -print0 | xargs -0 -I{} -n1 \
- xmlformat --config-file "$$XMLFORMAT_CONFIG" -i {}
+ find . -iname '*.xml' -type f | while read f; do \
+ echo $$f ;\
+ xmlformat --config-file "$$XMLFORMAT_CONFIG" -i $$f ;\
+ done
.PHONY: fix-misc-xml
fix-misc-xml:
@@ -19,7 +21,7 @@ fix-misc-xml:
.PHONY: clean
clean:
- rm -f ${MD_TARGETS} .version manual-full.xml
+ rm -f ${MD_TARGETS} .version manual-full.xml functions/library/locations.xml functions/library/generated
rm -rf ./out/ ./highlightjs
.PHONY: validate
@@ -69,13 +71,22 @@ highlightjs:
cp -r "$$HIGHLIGHTJS/loader.js" highlightjs/
-manual-full.xml: ${MD_TARGETS} .version *.xml
+manual-full.xml: ${MD_TARGETS} .version functions/library/locations.xml functions/library/generated *.xml **/*.xml **/**/*.xml
xmllint --nonet --xinclude --noxincludenode manual.xml --output manual-full.xml
.version:
nix-instantiate --eval \
-E '(import ../lib).version' > .version
+functions/library/locations.xml:
+ nix-build ./lib-function-locations.nix \
+ --out-link $@
+
+functions/library/generated: functions/library/locations.xml
+ nix-build ./lib-function-docs.nix \
+ --arg locationsXml $< \
+ --out-link $@
+
%.section.xml: %.section.md
pandoc $^ -w docbook+smart \
-f markdown+smart \
diff --git a/doc/coding-conventions.xml b/doc/coding-conventions.xml
index b3f7f093835cd4e3fbe54565fe2854a763ac8cb7..58ce9c7e627c15f5d8202069b7d12a68b62f725e 100644
--- a/doc/coding-conventions.xml
+++ b/doc/coding-conventions.xml
@@ -56,25 +56,30 @@ foo { arg = ...; }
or list elements should be aligned:
# A long list.
-list =
- [ elem1
- elem2
- elem3
- ];
+list = [
+ elem1
+ elem2
+ elem3
+];
# A long attribute set.
-attrs =
- { attr1 = short_expr;
- attr2 =
- if true then big_expr else big_expr;
- };
-
-# Alternatively:
attrs = {
attr1 = short_expr;
attr2 =
if true then big_expr else big_expr;
};
+
+# Combined
+listOfAttrs = [
+ {
+ attr1 = 3;
+ attr2 = "fff";
+ }
+ {
+ attr1 = 5;
+ attr2 = "ggg";
+ }
+];
@@ -191,6 +196,17 @@ args.stdenv.mkDerivation (args // {
Package naming
+
+ The key words must, must not,
+ required, shall, shall
+ not, should, should
+ not, recommended, may,
+ and optional in this section are to be interpreted as
+ described in RFC
+ 2119. Only emphasized words are to be
+ interpreted in this way.
+
+
In Nixpkgs, there are generally three different names associated with a
package:
@@ -231,14 +247,15 @@ args.stdenv.mkDerivation (args // {
- Generally, try to stick to the upstream package name.
+ The name attribute should be
+ identical to the upstream package name.
- Don’t use uppercase letters in the name attribute
- — e.g., "mplayer-1.0rc2" instead of
- "MPlayer-1.0rc2".
+ The name attribute must not
+ contain uppercase letters — e.g., "mplayer-1.0rc2"
+ instead of "MPlayer-1.0rc2".
@@ -252,28 +269,29 @@ args.stdenv.mkDerivation (args // {
If a package is not a release but a commit from a repository, then the
version part of the name must be the date of that
- (fetched) commit. The date must be in "YYYY-MM-DD"
- format. Also append "unstable" to the name - e.g.,
+ (fetched) commit. The date must be in
+ "YYYY-MM-DD" format. Also append
+ "unstable" to the name - e.g.,
"pkgname-unstable-2014-09-23".
- Dashes in the package name should be preserved in new variable names,
- rather than converted to underscores or camel cased — e.g.,
- http-parser instead of http_parser
- or httpParser. The hyphenated style is preferred in
- all three package names.
+ Dashes in the package name should be preserved in
+ new variable names, rather than converted to underscores or camel cased
+ — e.g., http-parser instead of
+ http_parser or httpParser. The
+ hyphenated style is preferred in all three package names.
- If there are multiple versions of a package, this should be reflected in
- the variable names in all-packages.nix, e.g.
- json-c-0-9 and json-c-0-11. If
- there is an obvious “default” version, make an attribute like
- json-c = json-c-0-9;. See also
-
+ If there are multiple versions of a package, this
+ should be reflected in the variable names in
+ all-packages.nix, e.g. json-c-0-9
+ and json-c-0-11. If there is an obvious “default”
+ version, make an attribute like json-c = json-c-0-9;.
+ See also
@@ -791,8 +809,8 @@ args.stdenv.mkDerivation (args // {
There are multiple ways to fetch a package source in nixpkgs. The general
- guideline is that you should package sources with a high degree of
- availability. Right now there is only one fetcher which has mirroring
+ guideline is that you should package reproducible sources with a high degree
+ of availability. Right now there is only one fetcher which has mirroring
support and that is fetchurl. Note that you should also
prefer protocols which have a corresponding proxy environment variable.
@@ -842,14 +860,143 @@ src = fetchFromGitHub {
owner = "NixOS";
repo = "nix";
rev = "1f795f9f44607cc5bec70d1300150bfefcef2aae";
- sha256 = "04yri911rj9j19qqqn6m82266fl05pz98inasni0vxr1cf1gdgv9";
+ sha256 = "1i2yxndxb6yc9l6c99pypbd92lfq5aac4klq7y2v93c9qvx2cgpc";
}
+ Find the value to put as sha256 by running
+ nix run -f '<nixpkgs>' nix-prefetch-github -c
+ nix-prefetch-github --rev 1f795f9f44607cc5bec70d1300150bfefcef2aae NixOS
+ nix or nix-prefetch-url --unpack
+ https://github.com/NixOS/nix/archive/1f795f9f44607cc5bec70d1300150bfefcef2aae.tar.gz.
+
+ Obtaining source hash
+
+
+ Preferred source hash type is sha256. There are several ways to get it.
+
+
+
+
+
+ Prefetch URL (with nix-prefetch-XXX
+ URL, where
+ XXX is one of url,
+ git, hg, cvs,
+ bzr, svn). Hash is printed to
+ stdout.
+
+
+
+
+ Prefetch by package source (with nix-prefetch-url
+ '<nixpkgs>' -A PACKAGE.src,
+ where PACKAGE is package attribute name). Hash
+ is printed to stdout.
+
+
+ This works well when you've upgraded existing package version and want to
+ find out new hash, but is useless if package can't be accessed by
+ attribute or package has multiple sources (.srcs,
+ architecture-dependent sources, etc).
+
+
+
+
+ Upstream provided hash: use it when upstream provides
+ sha256 or sha512 (when upstream
+ provides md5, don't use it, compute
+ sha256 instead).
+
+
+ A little nuance is that nix-prefetch-* tools produce
+ hash encoded with base32, but upstream usually provides
+ hexadecimal (base16) encoding. Fetchers understand both
+ formats. Nixpkgs does not standardize on any one format.
+
+
+ You can convert between formats with nix-hash, for example:
+
+$ nix-hash --type sha256 --to-base32 HASH
+
+
+
+
+
+ Extracting hash from local source tarball can be done with
+ sha256sum. Use nix-prefetch-url
+ file:///path/to/tarball if you want base32 hash.
+
+
+
+
+ Fake hash: set fake hash in package expression, perform build and extract
+ correct hash from error Nix prints.
+
+
+ For package updates it is enough to change one symbol to make hash fake.
+ For new packages, you can use lib.fakeSha256,
+ lib.fakeSha512 or any other fake hash.
+
+
+ This is last resort method when reconstructing source URL is non-trivial
+ and nix-prefetch-url -A isn't applicable (for example,
+
+ one of kodi dependencies). The easiest way then
+ would be replace hash with a fake one and rebuild. Nix build will fail and
+ error message will contain desired hash.
+
+
+
+ This method has security problems. Check below for details.
+
+
+
+
+
+
+ Obtaining hashes securely
+
+
+ Let's say Man-in-the-Middle (MITM) sits close to your network. Then instead
+ of fetching source you can fetch malware, and instead of source hash you
+ get hash of malware. Here are security considerations for this scenario:
+
+
+
+
+
+ http:// URLs are not secure to prefetch hash from;
+
+
+
+
+ hashes from upstream (in method 3) should be obtained via secure
+ protocol;
+
+
+
+
+ https:// URLs are secure in methods 1, 2, 3;
+
+
+
+
+ https:// URLs are not secure in method 5. When
+ obtaining hashes with fake hash method, TLS checks are disabled. So
+ refetch source hash from several different networks to exclude MITM
+ scenario. Alternatively, use fake hash method to make Nix error, but
+ instead of extracting hash from error, extract
+ https:// URL and prefetch it with method 1.
+
+
+
+
+ Patches
diff --git a/doc/configuration.xml b/doc/configuration.xml
index c91f38f309300b2c4d0b7686d46c3cd4961ac31c..b497fa4e2722cafe5cd36f875dc69bdfd67fac72 100644
--- a/doc/configuration.xml
+++ b/doc/configuration.xml
@@ -132,13 +132,13 @@
- The difference between an a package being unsupported on some system and
- being broken is admittedly a bit fuzzy. If a program
- ought to work on a certain platform, but doesn't, the
- platform should be included in meta.platforms, but marked
- as broken with e.g. meta.broken =
- !hostPlatform.isWindows. Of course, this begs the question of what
- "ought" means exactly. That is left to the package maintainer.
+ The difference between a package being unsupported on some system and being
+ broken is admittedly a bit fuzzy. If a program ought to
+ work on a certain platform, but doesn't, the platform should be included in
+ meta.platforms, but marked as broken with e.g.
+ meta.broken = !hostPlatform.isWindows. Of course, this
+ begs the question of what "ought" means exactly. That is left to the package
+ maintainer.
@@ -175,11 +175,15 @@
- A more useful example, the following configuration allows only allows
- flash player and visual studio code:
+ For a more useful example, try the following. This configuration only
+ allows unfree packages named flash player and visual studio code:
{
- allowUnfreePredicate = (pkg: elem (builtins.parseDrvName pkg.name).name [ "flashplayer" "vscode" ]);
+ allowUnfreePredicate = (pkg: builtins.elem
+ (builtins.parseDrvName pkg.name).name [
+ "flashplayer"
+ "vscode"
+ ]);
}
@@ -286,8 +290,8 @@
You can define a function called packageOverrides in your
- local ~/.config/nixpkgs/config.nix to override nix
- packages. It must be a function that takes pkgs as an argument and return
+ local ~/.config/nixpkgs/config.nix to override Nix
+ packages. It must be a function that takes pkgs as an argument and returns a
modified set of packages.
{
@@ -321,11 +325,22 @@
packageOverrides = pkgs: with pkgs; {
myPackages = pkgs.buildEnv {
name = "my-packages";
- paths = [ aspell bc coreutils gdb ffmpeg nixUnstable emscripten jq nox silver-searcher ];
+ paths = [
+ aspell
+ bc
+ coreutils
+ gdb
+ ffmpeg
+ nixUnstable
+ emscripten
+ jq
+ nox
+ silver-searcher
+ ];
};
};
}
-
+
To install it into our environment, you can just run nix-env -iA
@@ -342,12 +357,23 @@
packageOverrides = pkgs: with pkgs; {
myPackages = pkgs.buildEnv {
name = "my-packages";
- paths = [ aspell bc coreutils gdb ffmpeg nixUnstable emscripten jq nox silver-searcher ];
+ paths = [
+ aspell
+ bc
+ coreutils
+ gdb
+ ffmpeg
+ nixUnstable
+ emscripten
+ jq
+ nox
+ silver-searcher
+ ];
pathsToLink = [ "/share" "/bin" ];
};
};
}
-
+
pathsToLink tells Nixpkgs to only link the paths listed
@@ -377,13 +403,23 @@
packageOverrides = pkgs: with pkgs; {
myPackages = pkgs.buildEnv {
name = "my-packages";
- paths = [ aspell bc coreutils ffmpeg nixUnstable emscripten jq nox silver-searcher ];
+ paths = [
+ aspell
+ bc
+ coreutils
+ ffmpeg
+ nixUnstable
+ emscripten
+ jq
+ nox
+ silver-searcher
+ ];
pathsToLink = [ "/share/man" "/share/doc" "/bin" ];
extraOutputsToInstall = [ "man" "doc" ];
};
};
}
-
+
This provides us with some useful documentation for using our packages.
@@ -395,15 +431,15 @@
{
packageOverrides = pkgs: with pkgs; rec {
myProfile = writeText "my-profile" ''
-export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
-export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
+ export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
+ export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
'';
myPackages = pkgs.buildEnv {
name = "my-packages";
paths = [
(runCommand "profile" {} ''
-mkdir -p $out/etc/profile.d
-cp ${myProfile} $out/etc/profile.d/my-profile.sh
+ mkdir -p $out/etc/profile.d
+ cp ${myProfile} $out/etc/profile.d/my-profile.sh
'')
aspell
bc
@@ -421,7 +457,7 @@ cp ${myProfile} $out/etc/profile.d/my-profile.sh
};
};
}
-
+
For this to work fully, you must also have this script sourced when you are
@@ -438,7 +474,7 @@ if [ -d $HOME/.nix-profile/etc/profile.d ]; then
fi
done
fi
-
+
Now just run source $HOME/.profile and you can starting
@@ -459,16 +495,16 @@ fi
{
packageOverrides = pkgs: with pkgs; rec {
myProfile = writeText "my-profile" ''
-export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
-export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
-export INFOPATH=$HOME/.nix-profile/share/info:/nix/var/nix/profiles/default/share/info:/usr/share/info
+ export PATH=$HOME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/sbin:/bin:/usr/sbin:/usr/bin
+ export MANPATH=$HOME/.nix-profile/share/man:/nix/var/nix/profiles/default/share/man:/usr/share/man
+ export INFOPATH=$HOME/.nix-profile/share/info:/nix/var/nix/profiles/default/share/info:/usr/share/info
'';
myPackages = pkgs.buildEnv {
name = "my-packages";
paths = [
(runCommand "profile" {} ''
-mkdir -p $out/etc/profile.d
-cp ${myProfile} $out/etc/profile.d/my-profile.sh
+ mkdir -p $out/etc/profile.d
+ cp ${myProfile} $out/etc/profile.d/my-profile.sh
'')
aspell
bc
@@ -485,17 +521,17 @@ cp ${myProfile} $out/etc/profile.d/my-profile.sh
pathsToLink = [ "/share/man" "/share/doc" "/share/info" "/bin" "/etc" ];
extraOutputsToInstall = [ "man" "doc" "info" ];
postBuild = ''
- if [ -x $out/bin/install-info -a -w $out/share/info ]; then
- shopt -s nullglob
- for i in $out/share/info/*.info $out/share/info/*.info.gz; do
- $out/bin/install-info $i $out/share/info/dir
- done
- fi
+ if [ -x $out/bin/install-info -a -w $out/share/info ]; then
+ shopt -s nullglob
+ for i in $out/share/info/*.info $out/share/info/*.info.gz; do
+ $out/bin/install-info $i $out/share/info/dir
+ done
+ fi
'';
};
};
}
-
+
postBuild tells Nixpkgs to run a command after building
diff --git a/doc/cross-compilation.xml b/doc/cross-compilation.xml
index a7b43aeec23f9fd763d64d1cc9e876db9bca2652..b7844da195d7f58f18f25ed5ce3aa72cc99bf366 100644
--- a/doc/cross-compilation.xml
+++ b/doc/cross-compilation.xml
@@ -7,15 +7,16 @@
"Cross-compilation" means compiling a program on one machine for another
- type of machine. For example, a typical use of cross compilation is to
+ type of machine. For example, a typical use of cross-compilation is to
compile programs for embedded devices. These devices often don't have the
computing power and memory to compile their own programs. One might think
- that cross-compilation is a fairly niche concern, but there are advantages
- to being rigorous about distinguishing build-time vs run-time environments
- even when one is developing and deploying on the same machine. Nixpkgs is
- increasingly adopting the opinion that packages should be written with
- cross-compilation in mind, and nixpkgs should evaluate in a similar way (by
- minimizing cross-compilation-specific special cases) whether or not one is
+ that cross-compilation is a fairly niche concern. However, there are
+ significant advantages to rigorously distinguishing between build-time and
+ run-time environments! Significant, because the benefits apply even when one
+ is developing and deploying on the same machine. Nixpkgs is increasingly
+ adopting the opinion that packages should be written with cross-compilation
+ in mind, and nixpkgs should evaluate in a similar way (by minimizing
+ cross-compilation-specific special cases) whether or not one is
cross-compiling.
@@ -30,30 +31,28 @@
Packaging in a cross-friendly manner
-
+ Platform parameters
Nixpkgs follows the
- common
- historical convention of GNU autoconf of distinguishing between 3
- types of platform: build,
+ conventions
+ of GNU autoconf. We distinguish between 3 types of platforms when
+ building a derivation: build,
host, and target. In
summary, build is the platform on which a package
is being built, host is the platform on which it
- is to run. The third attribute, target, is
- relevant only for certain specific compilers and build tools.
+ will run. The third attribute, target, is relevant
+ only for certain specific compilers and build tools.
In Nixpkgs, these three platforms are defined as attribute sets under the
names buildPlatform, hostPlatform,
- and targetPlatform. All three are always defined as
- attributes in the standard environment, and at the top level. That means
- one can get at them just like a dependency in a function that is imported
- with callPackage:
-{ stdenv, buildPlatform, hostPlatform, fooDep, barDep, .. }: ...buildPlatform...
- , or just off stdenv:
+ and targetPlatform. They are always defined as
+ attributes in the standard environment. That means one can access them
+ like:
{ stdenv, fooDep, barDep, .. }: ...stdenv.buildPlatform...
.
@@ -67,7 +66,7 @@
The "build platform" is the platform on which a package is built. Once
someone has a built package, or pre-built binary package, the build
- platform should not matter and be safe to ignore.
+ platform should not matter and can be ignored.
@@ -97,11 +96,11 @@
The build process of certain compilers is written in such a way that the
compiler resulting from a single build can itself only produce binaries
- for a single platform. The task specifying this single "target platform"
- is thus pushed to build time of the compiler. The root cause of this
- mistake is often that the compiler (which will be run on the host) and
- the the standard library/runtime (which will be run on the target) are
- built by a single build process.
+ for a single platform. The task of specifying this single "target
+ platform" is thus pushed to build time of the compiler. The root cause
+ of this is that the compiler (which will be run on the host) and the
+ standard library/runtime (which will be run on the target) are built by
+ a single build process.
There is no fundamental need to think about a single target ahead of
@@ -138,8 +137,10 @@
This is a two-component shorthand for the platform. Examples of this
would be "x86_64-darwin" and "i686-linux"; see
- lib.systems.doubles for more. This format isn't very
- standard, but has built-in support in Nix, such as the
+ lib.systems.doubles for more. The first component
+ corresponds to the CPU architecture of the platform and the second to
+ the operating system of the platform ([cpu]-[os]).
+ This format has built-in support in Nix, such as the
builtins.currentSystem impure string.
@@ -151,12 +152,13 @@
This is a 3- or 4- component shorthand for the platform. Examples of
- this would be "x86_64-unknown-linux-gnu" and "aarch64-apple-darwin14".
- This is a standard format called the "LLVM target triple", as they are
- pioneered by LLVM and traditionally just used for the
- targetPlatform. This format is strictly more
- informative than the "Nix host double", as the previous format could
- analogously be termed. This needs a better name than
+ this would be x86_64-unknown-linux-gnu and
+ aarch64-apple-darwin14. This is a standard format
+ called the "LLVM target triple", as they are pioneered by LLVM. In the
+ 4-part form, this corresponds to
+ [cpu]-[vendor]-[os]-[abi]. This format is strictly
+ more informative than the "Nix host double", as the previous format
+ could analogously be termed. This needs a better name than
config!
@@ -167,11 +169,9 @@
- This is a nix representation of a parsed LLVM target triple with
+ This is a Nix representation of a parsed LLVM target triple with
white-listed components. This can be specified directly, or actually
- parsed from the config. [Technically, only one need
- be specified and the others can be inferred, though the precision of
- inference may not be very good.] See
+ parsed from the config. See
lib.systems.parse for the exact representation.
@@ -196,7 +196,7 @@
These predicates are defined in lib.systems.inspect,
- and slapped on every platform. They are superior to the ones in
+ and slapped onto every platform. They are superior to the ones in
stdenv as they force the user to be explicit about
which platform they are inspecting. Please use these instead of those.
@@ -219,105 +219,132 @@
-
- Specifying Dependencies
+
+ Theory of dependency categorization
+
+
+
+ This is a rather philosophical description that isn't very
+ Nixpkgs-specific. For an overview of all the relevant attributes given to
+ mkDerivation, see
+ . For a description of how
+ everything is implemented, see
+ .
+
+
In this section we explore the relationship between both runtime and
- buildtime dependencies and the 3 Autoconf platforms.
+ build-time dependencies and the 3 Autoconf platforms.
- A runtime dependency between 2 packages implies that between them both the
- host and target platforms match. This is directly implied by the meaning of
- "host platform" and "runtime dependency": The package dependency exists
- while both packages are running on a single host platform.
+ A run time dependency between two packages requires that their host
+ platforms match. This is directly implied by the meaning of "host platform"
+ and "runtime dependency": The package dependency exists while both packages
+ are running on a single host platform.
- A build time dependency, however, implies a shift in platforms between the
- depending package and the depended-on package. The meaning of a build time
- dependency is that to build the depending package we need to be able to run
- the depended-on's package. The depending package's build platform is
- therefore equal to the depended-on package's host platform. Analogously,
- the depending package's host platform is equal to the depended-on package's
- target platform.
+ A build time dependency, however, has a shift in platforms between the
+ depending package and the depended-on package. "build time dependency"
+ means that to build the depending package we need to be able to run the
+ depended-on's package. The depending package's build platform is therefore
+ equal to the depended-on package's host platform.
- In this manner, given the 3 platforms for one package, we can determine the
- three platforms for all its transitive dependencies. This is the most
- important guiding principle behind cross-compilation with Nixpkgs, and will
- be called the sliding window principle.
+ If both the dependency and depending packages aren't compilers or other
+ machine-code-producing tools, we're done. And indeed
+ buildInputs and nativeBuildInputs
+ have covered these simpler build-time and run-time (respectively) changes
+ for many years. But if the dependency does produce machine code, we might
+ need to worry about its target platform too. In principle, that target
+ platform might be any of the depending package's build, host, or target
+ platforms, but we prohibit dependencies from a "later" platform to an
+ earlier platform to limit confusion because we've never seen a legitimate
+ use for them.
- Some examples will probably make this clearer. If a package is being built
- with a (build, host, target) platform triple of
- (foo, bar, bar), then its build-time dependencies would
- have a triple of (foo, foo, bar), and those
- packages' build-time dependencies would have triple of
- (foo, foo, foo). In other words, it should take two
- "rounds" of following build-time dependency edges before one reaches a
- fixed point where, by the sliding window principle, the platform triple no
- longer changes. Indeed, this happens with cross compilation, where only
- rounds of native dependencies starting with the second necessarily coincide
- with native packages.
+ Finally, if the depending package is a compiler or other
+ machine-code-producing tool, it might need dependencies that run at "emit
+ time". This is for compilers that (regrettably) insist on being built
+ together with their source langauges' standard libraries. Assuming build !=
+ host != target, a run-time dependency of the standard library cannot be run
+ at the compiler's build time or run time, but only at the run time of code
+ emitted by the compiler.
-
-
- The depending package's target platform is unconstrained by the sliding
- window principle, which makes sense in that one can in principle build
- cross compilers targeting arbitrary platforms.
-
-
-
- How does this work in practice? Nixpkgs is now structured so that
- build-time dependencies are taken from buildPackages,
- whereas run-time dependencies are taken from the top level attribute set.
- For example, buildPackages.gcc should be used at build
- time, while gcc should be used at run time. Now, for
- most of Nixpkgs's history, there was no buildPackages,
- and most packages have not been refactored to use it explicitly. Instead,
- one can use the six (gasp) attributes used for
- specifying dependencies as documented in
- . We "splice" together the
- run-time and build-time package sets with callPackage,
- and then mkDerivation for each of four attributes pulls
- the right derivation out. This splicing can be skipped when not cross
- compiling as the package sets are the same, but is a bit slow for cross
- compiling. Because of this, a best-of-both-worlds solution is in the works
- with no splicing or explicit access of buildPackages
- needed. For now, feel free to use either method.
+ Putting this all together, that means we have dependencies in the form
+ "host → target", in at most the following six combinations:
+
+
Possible dependency types
+
+
+
Dependency's host platform
+
Dependency's target platform
+
+
+
+
+
build
+
build
+
+
+
build
+
host
+
+
+
build
+
target
+
+
+
host
+
host
+
+
+
host
+
target
+
+
+
target
+
target
+
+
+
-
-
- There is also a "backlink" targetPackages, yielding a
- package set whose buildPackages is the current package
- set. This is a hack, though, to accommodate compilers with lousy build
- systems. Please do not use this unless you are absolutely sure you are
- packaging such a compiler and there is no other way.
-
-
+
+ Some examples will make this table clearer. Suppose there's some package
+ that is being built with a (build, host, target)
+ platform triple of (foo, bar, baz). If it has a
+ build-time library dependency, that would be a "host → build" dependency
+ with a triple of (foo, foo, *) (the target platform is
+ irrelevant). If it needs a compiler to be built, that would be a "build →
+ host" dependency with a triple of (foo, foo, *) (the
+ target platform is irrelevant). That compiler, would be built with another
+ compiler, also "build → host" dependency, with a triple of (foo,
+ foo, foo).
+
-
+ Cross packaging cookbook
- Some frequently problems when packaging for cross compilation are good to
- just spell and answer. Ideally the information above is exhaustive, so this
- section cannot provide any new information, but its ludicrous and cruel to
- expect everyone to spend effort working through the interaction of many
- features just to figure out the same answer to the same common problem.
- Feel free to add to this list!
+ Some frequently encountered problems when packaging for cross-compilation
+ should be answered here. Ideally, the information above is exhaustive, so
+ this section cannot provide any new information, but it is ludicrous and
+ cruel to expect everyone to spend effort working through the interaction of
+ many features just to figure out the same answer to the same common
+ problem. Feel free to add to this list!
-
+
What if my package's build system needs to build a C program to be run
@@ -331,7 +358,7 @@
-
+
My package fails to find ar.
@@ -347,7 +374,7 @@
-
+
My package's testsuite needs to run host platform code.
@@ -367,17 +394,9 @@
Cross-building packages
-
-
- More information needs to moved from the old wiki, especially
- , for this
- section.
-
-
-
Nixpkgs can be instantiated with localSystem alone, in
- which case there is no cross compiling and everything is built by and for
+ which case there is no cross-compiling and everything is built by and for
that system, or also with crossSystem, in which case
packages run on the latter, but all building happens on the former. Both
parameters take the same schema as the 3 (build, host, and target) platforms
@@ -394,7 +413,7 @@ nix-build <nixpkgs> --arg crossSystem '(import <nixpkgs/lib>).system
Eventually we would like to make these platform examples an unnecessary
convenience so that
-nix-build <nixpkgs> --arg crossSystem.config '<arch>-<os>-<vendor>-<abi>' -A whatever
+nix-build <nixpkgs> --arg crossSystem '{ config = "<arch>-<os>-<vendor>-<abi>"; }' -A whatever
works in the vast majority of cases. The problem today is dependencies on
other sorts of configuration which aren't given proper defaults. We rely on
the examples to crudely to set those configuration parameters in some
@@ -448,7 +467,7 @@ nix-build <nixpkgs> --arg crossSystem.config '<arch>-<os>-<
dependencies or buildPackages, the three platforms will
be defined as one of localSystem or
crossSystem, with the former replacing the latter as one
- traverses build-time dependencies. A last simple difference then is
+ traverses build-time dependencies. A last simple difference is that
crossSystem should be null when one doesn't want to
cross-compile, while the *Platforms are always non-null.
localSystem is always non-null.
@@ -458,21 +477,202 @@ nix-build <nixpkgs> --arg crossSystem.config '<arch>-<os>-<
Cross-compilation infrastructure
-
- To be written.
-
+
+ Implementation of dependencies
-
- If one explores nixpkgs, they will see derivations with names like
- gccCross. Such *Cross derivations is
- a holdover from before we properly distinguished between the host and
- target platforms —the derivation with "Cross" in the name covered the
- build = host != target case, while the other covered the
- host = target, with build platform the same or not based
- on whether one was using its .nativeDrv or
- .crossDrv. This ugliness will disappear soon.
+ The categorizes of dependencies developed in
+ are specified as
+ lists of derivations given to mkDerivation, as
+ documented in . In short,
+ each list of dependencies for "host → target" of "foo → bar" is called
+ depsFooBar, with exceptions for backwards
+ compatibility that depsBuildHost is instead called
+ nativeBuildInputs and depsHostTarget
+ is instead called buildInputs. Nixpkgs is now structured
+ so that each depsFooBar is automatically taken from
+ pkgsFooBar. (These pkgsFooBars are
+ quite new, so there is no special case for
+ nativeBuildInputs and buildInputs.)
+ For example, pkgsBuildHost.gcc should be used at
+ build-time, while pkgsHostTarget.gcc should be used at
+ run-time.
-
+
+
+ Now, for most of Nixpkgs's history, there were no
+ pkgsFooBar attributes, and most packages have not been
+ refactored to use it explicitly. Prior to those, there were just
+ buildPackages, pkgs, and
+ targetPackages. Those are now redefined as aliases to
+ pkgsBuildHost, pkgsHostTarget, and
+ pkgsTargetTarget. It is acceptable, even
+ recommended, to use them for libraries to show that the host platform is
+ irrelevant.
+
+
+
+ But before that, there was just pkgs, even though both
+ buildInputs and nativeBuildInputs
+ existed. [Cross barely worked, and those were implemented with some hacks
+ on mkDerivation to override dependencies.] What this
+ means is the vast majority of packages do not use any explicit package set
+ to populate their dependencies, just using whatever
+ callPackage gives them even if they do correctly sort
+ their dependencies into the multiple lists described above. And indeed,
+ asking that users both sort their dependencies, and
+ take them from the right attribute set, is both too onerous and redundant,
+ so the recommended approach (for now) is to continue just categorizing by
+ list and not using an explicit package set.
+
+
+
+ To make this work, we "splice" together the six
+ pkgsFooBar package sets and have
+ callPackage actually take its arguments from that. This
+ is currently implemented in pkgs/top-level/splice.nix.
+ mkDerivation then, for each dependency attribute, pulls
+ the right derivation out from the splice. This splicing can be skipped when
+ not cross-compiling as the package sets are the same, but still is a bit
+ slow for cross-compiling. We'd like to do something better, but haven't
+ come up with anything yet.
+
+
+
+
+ Bootstrapping
+
+
+ Each of the package sets described above come from a single bootstrapping
+ stage. While pkgs/top-level/default.nix, coordinates
+ the composition of stages at a high level,
+ pkgs/top-level/stage.nix "ties the knot" (creates the
+ fixed point) of each stage. The package sets are defined per-stage however,
+ so they can be thought of as edges between stages (the nodes) in a graph.
+ Compositions like pkgsBuildTarget.targetPackages can be
+ thought of as paths to this graph.
+
+
+
+ While there are many package sets, and thus many edges, the stages can also
+ be arranged in a linear chain. In other words, many of the edges are
+ redundant as far as connectivity is concerned. This hinges on the type of
+ bootstrapping we do. Currently for cross it is:
+
+
+
+ (native, native, native)
+
+
+
+
+ (native, native, foreign)
+
+
+
+
+ (native, foreign, foreign)
+
+
+
+ In each stage, pkgsBuildHost refers the the previous
+ stage, pkgsBuildBuild refers to the one before that, and
+ pkgsHostTarget refers to the current one, and
+ pkgsTargetTarget refers to the next one. When there is
+ no previous or next stage, they instead refer to the current stage. Note
+ how all the invariants regarding the mapping between dependency and depending
+ packages' build host and target platforms are preserved.
+ pkgsBuildTarget and pkgsHostHost are
+ more complex in that the stage fitting the requirements isn't always a
+ fixed chain of "prevs" and "nexts" away (modulo the "saturating"
+ self-references at the ends). We just special case each instead. All the primary
+ edges are implemented is in pkgs/stdenv/booter.nix,
+ and secondarily aliases in pkgs/top-level/stage.nix.
+
+
+
+
+ Note the native stages are bootstrapped in legacy ways that predate the
+ current cross implementation. This is why the the bootstrapping stages
+ leading up to the final stages are ignored inthe previous paragraph.
+
+
+
+
+ If one looks at the 3 platform triples, one can see that they overlap such
+ that one could put them together into a chain like:
+
+(native, native, native, foreign, foreign)
+
+ If one imagines the saturating self references at the end being replaced
+ with infinite stages, and then overlays those platform triples, one ends up
+ with the infinite tuple:
+
+(native..., native, native, native, foreign, foreign, foreign...)
+
+ On can then imagine any sequence of platforms such that there are bootstrap
+ stages with their 3 platforms determined by "sliding a window" that is the
+ 3 tuple through the sequence. This was the original model for
+ bootstrapping. Without a target platform (assume a better world where all
+ compilers are multi-target and all standard libraries are built in their
+ own derivation), this is sufficient. Conversely if one wishes to cross
+ compile "faster", with a "Canadian Cross" bootstraping stage where
+ build != host != target, more bootstrapping stages are
+ needed since no sliding window providess the pesky
+ pkgsBuildTarget package set since it skips the Canadian
+ cross stage's "host".
+
+
+
+
+ It is much better to refer to buildPackages than
+ targetPackages, or more broadly package sets that do
+ not mention "target". There are three reasons for this.
+
+
+ First, it is because bootstrapping stages do not have a unique
+ targetPackages. For example a (x86-linux,
+ x86-linux, arm-linux) and (x86-linux, x86-linux,
+ x86-windows) package set both have a (x86-linux,
+ x86-linux, x86-linux) package set. Because there is no canonical
+ targetPackages for such a native (build ==
+ host == target) package set, we set their
+ targetPackages
+
+
+ Second, it is because this is a frequent source of hard-to-follow
+ "infinite recursions" / cycles. When only package sets that don't mention
+ target are used, the package set forms a directed acyclic graph. This
+ means that all cycles that exist are confined to one stage. This means
+ they are a lot smaller, and easier to follow in the code or a backtrace. It
+ also means they are present in native and cross builds alike, and so more
+ likely to be caught by CI and other users.
+
+
+ Thirdly, it is because everything target-mentioning only exists to
+ accommodate compilers with lousy build systems that insist on the compiler
+ itself and standard library being built together. Of course that is bad
+ because bigger derivations means longer rebuilds. It is also problematic because
+ it tends to make the standard libraries less like other libraries than
+ they could be, complicating code and build systems alike. Because of the
+ other problems, and because of these innate disadvantages, compilers ought
+ to be packaged another way where possible.
+
+
+
+
+
+ If one explores Nixpkgs, they will see derivations with names like
+ gccCross. Such *Cross derivations is
+ a holdover from before we properly distinguished between the host and
+ target platforms—the derivation with "Cross" in the name covered the
+ build = host != target case, while the other covered
+ the host = target, with build platform the same or not
+ based on whether one was using its .nativeDrv or
+ .crossDrv. This ugliness will disappear soon.
+
+
+
diff --git a/doc/default.nix b/doc/default.nix
index 4c04128052bc570c93b8e6e103dd21a59d627cd9..7ceaec28af38b781a1a66acbd2266cc65a9d4093 100644
--- a/doc/default.nix
+++ b/doc/default.nix
@@ -1,8 +1,9 @@
+{ pkgs ? (import ./.. { }), nixpkgs ? { }}:
let
- pkgs = import ./.. { };
lib = pkgs.lib;
-in
-pkgs.stdenv.mkDerivation {
+ locationsXml = import ./lib-function-locations.nix { inherit pkgs nixpkgs; };
+ functionDocs = import ./lib-function-docs.nix { inherit locationsXml pkgs; };
+in pkgs.stdenv.mkDerivation {
name = "nixpkgs-manual";
buildInputs = with pkgs; [ pandoc libxml2 libxslt zip jing xmlformat ];
@@ -29,6 +30,9 @@ pkgs.stdenv.mkDerivation {
];
postPatch = ''
+ rm -rf ./functions/library/locations.xml
+ ln -s ${locationsXml} ./functions/library/locations.xml
+ ln -s ${functionDocs} ./functions/library/generated
echo ${lib.version} > .version
'';
diff --git a/doc/functions.xml b/doc/functions.xml
index 2a9cc44d5c5bb8b708eb04503045a30c7eec0b5c..1f2d00b9e1afa8690f6e519a292814ea6984a46a 100644
--- a/doc/functions.xml
+++ b/doc/functions.xml
@@ -1,796 +1,22 @@
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+ xml:id="chap-functions">
Functions reference
The nixpkgs repository has several utility functions to manipulate Nix
expressions.
-
- Overriding
-
-
- Sometimes one wants to override parts of nixpkgs, e.g.
- derivation attributes, the results of derivations or even the whole package
- set.
-
-
-
- <pkg>.override
-
-
- The function override is usually available for all the
- derivations in the nixpkgs expression (pkgs).
-
-
-
- It is used to override the arguments passed to a function.
-
-
-
- Example usages:
-pkgs.foo.override { arg1 = val1; arg2 = val2; ... }
-import pkgs.path { overlays = [ (self: super: {
- foo = super.foo.override { barSupport = true ; };
- })]};
-mypkg = pkgs.callPackage ./mypkg.nix {
- mydep = pkgs.mydep.override { ... };
- }
-
-
-
- In the first example, pkgs.foo is the result of a
- function call with some default arguments, usually a derivation. Using
- pkgs.foo.override will call the same function with the
- given new arguments.
-
-
-
-
- <pkg>.overrideAttrs
-
-
- The function overrideAttrs allows overriding the
- attribute set passed to a stdenv.mkDerivation call,
- producing a new derivation based on the original one. This function is
- available on all derivations produced by the
- stdenv.mkDerivation function, which is most packages in
- the nixpkgs expression pkgs.
-
-
-
- Example usage:
-helloWithDebug = pkgs.hello.overrideAttrs (oldAttrs: rec {
- separateDebugInfo = true;
- });
-
-
-
- In the above example, the separateDebugInfo attribute is
- overridden to be true, thus building debug info for
- helloWithDebug, while all other attributes will be
- retained from the original hello package.
-
-
-
- The argument oldAttrs is conventionally used to refer to
- the attr set originally passed to stdenv.mkDerivation.
-
-
-
-
- Note that separateDebugInfo is processed only by the
- stdenv.mkDerivation function, not the generated, raw
- Nix derivation. Thus, using overrideDerivation will not
- work in this case, as it overrides only the attributes of the final
- derivation. It is for this reason that overrideAttrs
- should be preferred in (almost) all cases to
- overrideDerivation, i.e. to allow using
- sdenv.mkDerivation to process input arguments, as well
- as the fact that it is easier to use (you can use the same attribute names
- you see in your Nix code, instead of the ones generated (e.g.
- buildInputs vs nativeBuildInputs,
- and involves less typing.
-
-
-
-
-
- <pkg>.overrideDerivation
-
-
-
- You should prefer overrideAttrs in almost all cases,
- see its documentation for the reasons why.
- overrideDerivation is not deprecated and will continue
- to work, but is less nice to use and does not have as many abilities as
- overrideAttrs.
-
-
-
-
-
- Do not use this function in Nixpkgs as it evaluates a Derivation before
- modifying it, which breaks package abstraction and removes error-checking
- of function arguments. In addition, this evaluation-per-function
- application incurs a performance penalty, which can become a problem if
- many overrides are used. It is only intended for ad-hoc customisation,
- such as in ~/.config/nixpkgs/config.nix.
-
-
-
-
- The function overrideDerivation creates a new derivation
- based on an existing one by overriding the original's attributes with the
- attribute set produced by the specified function. This function is
- available on all derivations defined using the
- makeOverridable function. Most standard
- derivation-producing functions, such as
- stdenv.mkDerivation, are defined using this function,
- which means most packages in the nixpkgs expression,
- pkgs, have this function.
-
-
-
- Example usage:
-mySed = pkgs.gnused.overrideDerivation (oldAttrs: {
- name = "sed-4.2.2-pre";
- src = fetchurl {
- url = ftp://alpha.gnu.org/gnu/sed/sed-4.2.2-pre.tar.bz2;
- sha256 = "11nq06d131y4wmf3drm0yk502d2xc6n5qy82cg88rb9nqd2lj41k";
- };
- patches = [];
- });
-
-
-
- In the above example, the name, src,
- and patches of the derivation will be overridden, while
- all other attributes will be retained from the original derivation.
-
-
-
- The argument oldAttrs is used to refer to the attribute
- set of the original derivation.
-
-
-
-
- A package's attributes are evaluated *before* being modified by the
- overrideDerivation function. For example, the
- name attribute reference in url =
- "mirror://gnu/hello/${name}.tar.gz"; is filled-in *before* the
- overrideDerivation function modifies the attribute set.
- This means that overriding the name attribute, in this
- example, *will not* change the value of the url
- attribute. Instead, we need to override both the name
- *and* url attributes.
-
-
-
-
-
- lib.makeOverridable
-
-
- The function lib.makeOverridable is used to make the
- result of a function easily customizable. This utility only makes sense for
- functions that accept an argument set and return an attribute set.
-
-
-
- Example usage:
-f = { a, b }: { result = a+b; }
- c = lib.makeOverridable f { a = 1; b = 2; }
-
-
-
- The variable c is the value of the f
- function applied with some default arguments. Hence the value of
- c.result is 3, in this example.
-
-
-
- The variable c however also has some additional
- functions, like c.override which
- can be used to override the default arguments. In this example the value of
- (c.override { a = 4; }).result is 6.
-
-
-
-
- Generators
-
-
- Generators are functions that create file formats from nix data structures,
- e. g. for configuration files. There are generators available for:
- INI, JSON and YAML
-
-
-
- All generators follow a similar call interface: generatorName
- configFunctions data, where configFunctions is an
- attrset of user-defined functions that format nested parts of the content.
- They each have common defaults, so often they do not need to be set
- manually. An example is mkSectionName ? (name: libStr.escape [ "[" "]"
- ] name) from the INI generator. It receives the
- name of a section and sanitizes it. The default
- mkSectionName escapes [ and
- ] with a backslash.
-
-
-
- Generators can be fine-tuned to produce exactly the file format required by
- your application/service. One example is an INI-file format which uses
- : as separator, the strings
- "yes"/"no" as boolean values and
- requires all string values to be quoted:
-
-
-
-with lib;
-let
- customToINI = generators.toINI {
- # specifies how to format a key/value pair
- mkKeyValue = generators.mkKeyValueDefault {
- # specifies the generated string for a subset of nix values
- mkValueString = v:
- if v == true then ''"yes"''
- else if v == false then ''"no"''
- else if isString v then ''"${v}"''
- # and delegats all other values to the default generator
- else generators.mkValueStringDefault {} v;
- } ":";
- };
-
-# the INI file can now be given as plain old nix values
-in customToINI {
- main = {
- pushinfo = true;
- autopush = false;
- host = "localhost";
- port = 42;
- };
- mergetool = {
- merge = "diff3";
- };
-}
-
-
-
- This will produce the following INI file as nix string:
-
-
-
-[main]
-autopush:"no"
-host:"localhost"
-port:42
-pushinfo:"yes"
-str\:ange:"very::strange"
-
-[mergetool]
-merge:"diff3"
-
-
-
-
- Nix store paths can be converted to strings by enclosing a derivation
- attribute like so: "${drv}".
-
-
-
-
- Detailed documentation for each generator can be found in
- lib/generators.nix.
-
-
-
- Debugging Nix Expressions
-
-
- Nix is a unityped, dynamic language, this means every value can potentially
- appear anywhere. Since it is also non-strict, evaluation order and what
- ultimately is evaluated might surprise you. Therefore it is important to be
- able to debug nix expressions.
-
-
-
- In the lib/debug.nix file you will find a number of
- functions that help (pretty-)printing values while evaluation is runnnig.
- You can even specify how deep these values should be printed recursively,
- and transform them on the fly. Please consult the docstrings in
- lib/debug.nix for usage information.
-
-
-
- buildFHSUserEnv
-
-
- buildFHSUserEnv provides a way to build and run
- FHS-compatible lightweight sandboxes. It creates an isolated root with bound
- /nix/store, so its footprint in terms of disk space
- needed is quite small. This allows one to run software which is hard or
- unfeasible to patch for NixOS -- 3rd-party source trees with FHS
- assumptions, games distributed as tarballs, software with integrity checking
- and/or external self-updated binaries. It uses Linux namespaces feature to
- create temporary lightweight environments which are destroyed after all
- child processes exit, without root user rights requirement. Accepted
- arguments are:
-
-
-
-
-
- name
-
-
-
- Environment name.
-
-
-
-
-
- targetPkgs
-
-
-
- Packages to be installed for the main host's architecture (i.e. x86_64 on
- x86_64 installations). Along with libraries binaries are also installed.
-
-
-
-
-
- multiPkgs
-
-
-
- Packages to be installed for all architectures supported by a host (i.e.
- i686 and x86_64 on x86_64 installations). Only libraries are installed by
- default.
-
-
-
-
-
- extraBuildCommands
-
-
-
- Additional commands to be executed for finalizing the directory
- structure.
-
-
-
-
-
- extraBuildCommandsMulti
-
-
-
- Like extraBuildCommands, but executed only on multilib
- architectures.
-
-
-
-
-
- extraOutputsToInstall
-
-
-
- Additional derivation outputs to be linked for both target and
- multi-architecture packages.
-
-
-
-
-
- extraInstallCommands
-
-
-
- Additional commands to be executed for finalizing the derivation with
- runner script.
-
-
-
-
-
- runScript
-
-
-
- A command that would be executed inside the sandbox and passed all the
- command line arguments. It defaults to bash.
-
-
-
-
-
-
- One can create a simple environment using a shell.nix
- like that:
-
-
- {} }:
-
-(pkgs.buildFHSUserEnv {
- name = "simple-x11-env";
- targetPkgs = pkgs: (with pkgs;
- [ udev
- alsaLib
- ]) ++ (with pkgs.xorg;
- [ libX11
- libXcursor
- libXrandr
- ]);
- multiPkgs = pkgs: (with pkgs;
- [ udev
- alsaLib
- ]);
- runScript = "bash";
-}).env
-]]>
-
-
- Running nix-shell would then drop you into a shell with
- these libraries and binaries available. You can use this to run
- closed-source applications which expect FHS structure without hassles:
- simply change runScript to the application path, e.g.
- ./bin/start.sh -- relative paths are supported.
-
-
-
- pkgs.dockerTools
-
-
- pkgs.dockerTools is a set of functions for creating and
- manipulating Docker images according to the
-
- Docker Image Specification v1.2.0 . Docker itself is not used to
- perform any of the operations done by these functions.
-
-
-
-
- The dockerTools API is unstable and may be subject to
- backwards-incompatible changes in the future.
-
-
-
-
- buildImage
-
-
- This function is analogous to the docker build command,
- in that can used to build a Docker-compatible repository tarball containing
- a single image with one or multiple layers. As such, the result is suitable
- for being loaded in Docker with docker load.
-
-
-
- The parameters of buildImage with relative example
- values are described below:
-
-
-
- Docker build
-
- buildImage {
- name = "redis";
- tag = "latest";
-
- fromImage = someBaseImage;
- fromImageName = null;
- fromImageTag = "latest";
-
- contents = pkgs.redis;
- runAsRoot = ''
- #!${stdenv.shell}
- mkdir -p /data
- '';
-
- config = {
- Cmd = [ "/bin/redis-server" ];
- WorkingDir = "/data";
- Volumes = {
- "/data" = {};
- };
- };
- }
-
-
-
-
- The above example will build a Docker image redis/latest
- from the given base image. Loading and running this image in Docker results
- in redis-server being started automatically.
-
-
-
-
-
- name specifies the name of the resulting image. This
- is the only required argument for buildImage.
-
-
-
-
- tag specifies the tag of the resulting image. By
- default it's null, which indicates that the nix output hash will be used as tag.
-
-
-
-
- fromImage is the repository tarball containing the
- base image. It must be a valid Docker image, such as exported by
- docker save. By default it's null,
- which can be seen as equivalent to FROM scratch of a
- Dockerfile.
-
-
-
-
- fromImageName can be used to further specify the base
- image within the repository, in case it contains multiple images. By
- default it's null, in which case
- buildImage will peek the first image available in the
- repository.
-
-
-
-
- fromImageTag can be used to further specify the tag of
- the base image within the repository, in case an image contains multiple
- tags. By default it's null, in which case
- buildImage will peek the first tag available for the
- base image.
-
-
-
-
- contents is a derivation that will be copied in the
- new layer of the resulting image. This can be similarly seen as
- ADD contents/ / in a Dockerfile.
- By default it's null.
-
-
-
-
- runAsRoot is a bash script that will run as root in an
- environment that overlays the existing layers of the base image with the
- new resulting layer, including the previously copied
- contents derivation. This can be similarly seen as
- RUN ... in a Dockerfile.
-
-
- Using this parameter requires the kvm device to be
- available.
-
-
-
-
-
-
- config is used to specify the configuration of the
- containers that will be started off the built image in Docker. The
- available options are listed in the
-
- Docker Image Specification v1.2.0 .
-
-
-
-
-
- After the new layer has been created, its closure (to which
- contents, config and
- runAsRoot contribute) will be copied in the layer
- itself. Only new dependencies that are not already in the existing layers
- will be copied.
-
-
-
- At the end of the process, only one new single layer will be produced and
- added to the resulting image.
-
-
-
- The resulting repository will only list the single image
- image/tag. In the case of
- it would be
- redis/latest.
-
-
-
- It is possible to inspect the arguments with which an image was built using
- its buildArgs attribute.
-
-
-
-
- If you see errors similar to getProtocolByName: does not exist
- (no such protocol name: tcp) you may need to add
- pkgs.iana-etc to contents.
-
-
-
-
-
- If you see errors similar to Error_Protocol ("certificate has
- unknown CA",True,UnknownCa) you may need to add
- pkgs.cacert to contents.
-
-
-
-
-
- pullImage
-
-
- This function is analogous to the docker pull command,
- in that can be used to pull a Docker image from a Docker registry. By
- default Docker Hub is
- used to pull images.
-
-
-
- Its parameters are described in the example below:
-
-
-
- Docker pull
-
- pullImage {
- imageName = "nixos/nix";
- imageDigest = "sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b";
- finalImageTag = "1.11";
- sha256 = "0mqjy3zq2v6rrhizgb9nvhczl87lcfphq9601wcprdika2jz7qh8";
- os = "linux";
- arch = "x86_64";
- }
-
-
-
-
-
-
- imageName specifies the name of the image to be
- downloaded, which can also include the registry namespace (e.g.
- nixos). This argument is required.
-
-
-
-
- imageDigest specifies the digest of the image to be
- downloaded. Skopeo can be used to get the digest of an image, with its
- inspect subcommand. Since a given imageName
- may transparently refer to a manifest list of images which support
- multiple architectures and/or operating systems, supply the `--override-os`
- and `--override-arch` arguments to specify exactly which image you
- want. By default it will match the OS and architecture of the host the
- command is run on.
-
- $ nix-shell --packages skopeo jq --command "skopeo --override-os linux --override-arch x86_64 inspect docker://docker.io/nixos/nix:1.11 | jq -r '.Digest'"
- sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b
-
- This argument is required.
-
-
-
-
- finalImageTag, if specified, this is the tag of the
- image to be created. Note it is never used to fetch the image since we
- prefer to rely on the immutable digest ID. By default it's
- latest.
-
-
-
-
- sha256 is the checksum of the whole fetched image.
- This argument is required.
-
-
-
-
- os, if specified, is the operating system of the fetched image.
- By default it's linux.
-
-
-
-
- arch, if specified, is the cpu architecture of the fetched image.
- By default it's x86_64.
-
-
-
-
-
-
- exportImage
-
-
- This function is analogous to the docker export command,
- in that can used to flatten a Docker image that contains multiple layers.
- It is in fact the result of the merge of all the layers of the image. As
- such, the result is suitable for being imported in Docker with
- docker import.
-
-
-
-
- Using this function requires the kvm device to be
- available.
-
-
-
-
- The parameters of exportImage are the following:
-
-
-
- Docker export
-
- exportImage {
- fromImage = someLayeredImage;
- fromImageName = null;
- fromImageTag = null;
-
- name = someLayeredImage.name;
- }
-
-
-
-
- The parameters relative to the base image have the same synopsis as
- described in , except
- that fromImage is the only required argument in this
- case.
-
-
-
- The name argument is the name of the derivation output,
- which defaults to fromImage.name.
-
-
-
-
- shadowSetup
-
-
- This constant string is a helper for setting up the base files for managing
- users and groups, only if such files don't exist already. It is suitable
- for being used in a runAsRoot
- script for cases like
- in the example below:
-
-
-
- Shadow base files
-
- buildImage {
- name = "shadow-basic";
-
- runAsRoot = ''
- #!${stdenv.shell}
- ${shadowSetup}
- groupadd -r redis
- useradd -r -g redis redis
- mkdir /data
- chown redis:redis /data
- '';
- }
-
-
-
-
- Creating base files like /etc/passwd or
- /etc/login.defs are necessary for shadow-utils to
- manipulate users and groups.
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/functions/appimagetools.xml b/doc/functions/appimagetools.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4205c6da38518af43b5bce80bc2ab81bae1c9e13
--- /dev/null
+++ b/doc/functions/appimagetools.xml
@@ -0,0 +1,118 @@
+
+ pkgs.appimageTools
+
+
+ pkgs.appimageTools is a set of functions for extracting
+ and wrapping AppImage files.
+ They are meant to be used if traditional packaging from source is infeasible,
+ or it would take too long. To quickly run an AppImage file,
+ pkgs.appimage-run can be used as well.
+
+
+
+
+ The appimageTools API is unstable and may be subject to
+ backwards-incompatible changes in the future.
+
+
+
+
+ AppImage formats
+
+
+ There are different formats for AppImages, see
+ the
+ specification for details.
+
+
+
+
+
+ Type 1 images are ISO 9660 files that are also ELF executables.
+
+
+
+
+ Type 2 images are ELF executables with an appended filesystem.
+
+
+
+
+
+ They can be told apart with file -k:
+
+
+
+$ file -k type1.AppImage
+type1.AppImage: ELF 64-bit LSB executable, x86-64, version 1 (SYSV) ISO 9660 CD-ROM filesystem data 'AppImage' (Lepton 3.x), scale 0-0,
+spot sensor temperature 0.000000, unit celsius, color scheme 0, calibration: offset 0.000000, slope 0.000000, dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.18, BuildID[sha1]=d629f6099d2344ad82818172add1d38c5e11bc6d, stripped\012- data
+
+$ file -k type2.AppImage
+type2.AppImage: ELF 64-bit LSB executable, x86-64, version 1 (SYSV) (Lepton 3.x), scale 232-60668, spot sensor temperature -4.187500, color scheme 15, show scale bar, calibration: offset -0.000000, slope 0.000000 (Lepton 2.x), scale 4111-45000, spot sensor temperature 412442.250000, color scheme 3, minimum point enabled, calibration: offset -75402534979642766821519867692934234112.000000, slope 5815371847733706829839455140374904832.000000, dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.18, BuildID[sha1]=79dcc4e55a61c293c5e19edbd8d65b202842579f, stripped\012- data
+
+
+
+ Note how the type 1 AppImage is described as an ISO 9660 CD-ROM
+ filesystem, and the type 2 AppImage is not.
+
+
+
+
+ Wrapping
+
+
+ Depending on the type of AppImage you're wrapping, you'll have to use
+ wrapType1 or wrapType2.
+
+
+
+appimageTools.wrapType2 { # or wrapType1
+ name = "patchwork";
+ src = fetchurl {
+ url = https://github.com/ssbc/patchwork/releases/download/v3.11.4/Patchwork-3.11.4-linux-x86_64.AppImage;
+ sha256 = "1blsprpkvm0ws9b96gb36f0rbf8f5jgmw4x6dsb1kswr4ysf591s";
+ };
+ extraPkgs = pkgs: with pkgs; [ ];
+}
+
+
+
+
+ name specifies the name of the resulting image.
+
+
+
+
+ src specifies the AppImage file to extract.
+
+
+
+
+ extraPkgs allows you to pass a function to include
+ additional packages inside the FHS environment your AppImage is going to
+ run in. There are a few ways to learn which dependencies an application
+ needs:
+
+
+
+ Looking through the extracted AppImage files, reading its scripts and
+ running patchelf and ldd on its
+ executables. This can also be done in appimage-run,
+ by setting APPIMAGE_DEBUG_EXEC=bash.
+
+
+
+
+ Running strace -vfefile on the wrapped executable,
+ looking for libraries that can't be found.
+
+
+
+
+
+
+
+
diff --git a/doc/functions/debug.xml b/doc/functions/debug.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c6b3611eea53dc43437418d6a4c062322e15047e
--- /dev/null
+++ b/doc/functions/debug.xml
@@ -0,0 +1,21 @@
+
+ Debugging Nix Expressions
+
+
+ Nix is a unityped, dynamic language, this means every value can potentially
+ appear anywhere. Since it is also non-strict, evaluation order and what
+ ultimately is evaluated might surprise you. Therefore it is important to be
+ able to debug nix expressions.
+
+
+
+ In the lib/debug.nix file you will find a number of
+ functions that help (pretty-)printing values while evaluation is runnnig. You
+ can even specify how deep these values should be printed recursively, and
+ transform them on the fly. Please consult the docstrings in
+ lib/debug.nix for usage information.
+
+
diff --git a/doc/functions/dockertools.xml b/doc/functions/dockertools.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e95ce1979ded5f608a3626e7e8fdf78caa39cc4d
--- /dev/null
+++ b/doc/functions/dockertools.xml
@@ -0,0 +1,590 @@
+
+ pkgs.dockerTools
+
+
+ pkgs.dockerTools is a set of functions for creating and
+ manipulating Docker images according to the
+
+ Docker Image Specification v1.2.0 . Docker itself is not used to
+ perform any of the operations done by these functions.
+
+
+
+
+ The dockerTools API is unstable and may be subject to
+ backwards-incompatible changes in the future.
+
+
+
+
+ buildImage
+
+
+ This function is analogous to the docker build command,
+ in that it can be used to build a Docker-compatible repository tarball
+ containing a single image with one or multiple layers. As such, the result
+ is suitable for being loaded in Docker with docker load.
+
+
+
+ The parameters of buildImage with relative example values
+ are described below:
+
+
+
+ Docker build
+
+buildImage {
+ name = "redis";
+ tag = "latest";
+
+ fromImage = someBaseImage;
+ fromImageName = null;
+ fromImageTag = "latest";
+
+ contents = pkgs.redis;
+ runAsRoot = ''
+ #!${pkgs.runtimeShell}
+ mkdir -p /data
+ '';
+
+ config = {
+ Cmd = [ "/bin/redis-server" ];
+ WorkingDir = "/data";
+ Volumes = {
+ "/data" = {};
+ };
+ };
+}
+
+
+
+
+ The above example will build a Docker image redis/latest
+ from the given base image. Loading and running this image in Docker results
+ in redis-server being started automatically.
+
+
+
+
+
+ name specifies the name of the resulting image. This is
+ the only required argument for buildImage.
+
+
+
+
+ tag specifies the tag of the resulting image. By
+ default it's null, which indicates that the nix output
+ hash will be used as tag.
+
+
+
+
+ fromImage is the repository tarball containing the base
+ image. It must be a valid Docker image, such as exported by
+ docker save. By default it's null,
+ which can be seen as equivalent to FROM scratch of a
+ Dockerfile.
+
+
+
+
+ fromImageName can be used to further specify the base
+ image within the repository, in case it contains multiple images. By
+ default it's null, in which case
+ buildImage will peek the first image available in the
+ repository.
+
+
+
+
+ fromImageTag can be used to further specify the tag of
+ the base image within the repository, in case an image contains multiple
+ tags. By default it's null, in which case
+ buildImage will peek the first tag available for the
+ base image.
+
+
+
+
+ contents is a derivation that will be copied in the new
+ layer of the resulting image. This can be similarly seen as ADD
+ contents/ / in a Dockerfile. By default
+ it's null.
+
+
+
+
+ runAsRoot is a bash script that will run as root in an
+ environment that overlays the existing layers of the base image with the
+ new resulting layer, including the previously copied
+ contents derivation. This can be similarly seen as
+ RUN ... in a Dockerfile.
+
+
+ Using this parameter requires the kvm device to be
+ available.
+
+
+
+
+
+
+ config is used to specify the configuration of the
+ containers that will be started off the built image in Docker. The
+ available options are listed in the
+
+ Docker Image Specification v1.2.0 .
+
+
+
+
+
+ After the new layer has been created, its closure (to which
+ contents, config and
+ runAsRoot contribute) will be copied in the layer itself.
+ Only new dependencies that are not already in the existing layers will be
+ copied.
+
+
+
+ At the end of the process, only one new single layer will be produced and
+ added to the resulting image.
+
+
+
+ The resulting repository will only list the single image
+ image/tag. In the case of
+ it would be
+ redis/latest.
+
+
+
+ It is possible to inspect the arguments with which an image was built using
+ its buildArgs attribute.
+
+
+
+
+ If you see errors similar to getProtocolByName: does not exist (no
+ such protocol name: tcp) you may need to add
+ pkgs.iana-etc to contents.
+
+
+
+
+
+ If you see errors similar to Error_Protocol ("certificate has
+ unknown CA",True,UnknownCa) you may need to add
+ pkgs.cacert to contents.
+
+
+
+
+ Impurely Defining a Docker Layer's Creation Date
+
+ By default buildImage will use a static date of one
+ second past the UNIX Epoch. This allows buildImage to
+ produce binary reproducible images. When listing images with
+ docker images, the newly created images will be listed
+ like this:
+
+
+
+ You can break binary reproducibility but have a sorted, meaningful
+ CREATED column by setting created to
+ now.
+
+
+
+ and now the Docker CLI will display a reasonable date and sort the images
+ as expected:
+
+ however, the produced images will not be binary reproducible.
+
+
+
+
+
+ buildLayeredImage
+
+
+ Create a Docker image with many of the store paths being on their own layer
+ to improve sharing between images.
+
+
+
+
+
+ name
+
+
+
+ The name of the resulting image.
+
+
+
+
+
+ tagoptional
+
+
+
+ Tag of the generated image.
+
+
+ Default: the output path's hash
+
+
+
+
+
+ contentsoptional
+
+
+
+ Top level paths in the container. Either a single derivation, or a list
+ of derivations.
+
+
+ Default:[]
+
+
+
+
+
+ configoptional
+
+
+
+ Run-time configuration of the container. A full list of the options are
+ available at in the
+
+ Docker Image Specification v1.2.0 .
+
+
+ Default:{}
+
+
+
+
+
+ createdoptional
+
+
+
+ Date and time the layers were created. Follows the same
+ now exception supported by
+ buildImage.
+
+
+ Default:1970-01-01T00:00:01Z
+
+
+
+
+
+ maxLayersoptional
+
+
+
+ Maximum number of layers to create.
+
+
+ Default:24
+
+
+
+
+
+
+ Behavior of contents in the final image
+
+
+ Each path directly listed in contents will have a
+ symlink in the root of the image.
+
+
+
+ For example:
+
+ will create symlinks for all the paths in the hello
+ package:
+ /nix/store/h1zb1padqbbb7jicsvkmrym3r6snphxg-hello-2.10/bin/hello
+/share/info/hello.info -> /nix/store/h1zb1padqbbb7jicsvkmrym3r6snphxg-hello-2.10/share/info/hello.info
+/share/locale/bg/LC_MESSAGES/hello.mo -> /nix/store/h1zb1padqbbb7jicsvkmrym3r6snphxg-hello-2.10/share/locale/bg/LC_MESSAGES/hello.mo
+]]>
+
+
+
+
+ Automatic inclusion of config references
+
+
+ The closure of config is automatically included in the
+ closure of the final image.
+
+
+
+ This allows you to make very simple Docker images with very little code.
+ This container will start up and run hello:
+
+
+
+
+
+ Adjusting maxLayers
+
+
+ Increasing the maxLayers increases the number of layers
+ which have a chance to be shared between different images.
+
+
+
+ Modern Docker installations support up to 128 layers, however older
+ versions support as few as 42.
+
+
+
+ If the produced image will not be extended by other Docker builds, it is
+ safe to set maxLayers to 128. However
+ it will be impossible to extend the image further.
+
+
+
+ The first (maxLayers-2) most "popular" paths will have
+ their own individual layers, then layer #maxLayers-1
+ will contain all the remaining "unpopular" paths, and finally layer
+ #maxLayers will contain the Image configuration.
+
+
+
+ Docker's Layers are not inherently ordered, they are content-addressable
+ and are not explicitly layered until they are composed in to an Image.
+
+
+
+
+
+ pullImage
+
+
+ This function is analogous to the docker pull command, in
+ that it can be used to pull a Docker image from a Docker registry. By
+ default Docker Hub is used
+ to pull images.
+
+
+
+ Its parameters are described in the example below:
+
+
+
+ Docker pull
+
+pullImage {
+ imageName = "nixos/nix";
+ imageDigest = "sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b";
+ finalImageName = "nix";
+ finalImageTag = "1.11";
+ sha256 = "0mqjy3zq2v6rrhizgb9nvhczl87lcfphq9601wcprdika2jz7qh8";
+ os = "linux";
+ arch = "x86_64";
+}
+
+
+
+
+
+
+ imageName specifies the name of the image to be
+ downloaded, which can also include the registry namespace (e.g.
+ nixos). This argument is required.
+
+
+
+
+ imageDigest specifies the digest of the image to be
+ downloaded. This argument is required.
+
+
+
+
+ finalImageName, if specified, this is the name of the
+ image to be created. Note it is never used to fetch the image since we
+ prefer to rely on the immutable digest ID. By default it's equal to
+ imageName.
+
+
+
+
+ finalImageTag, if specified, this is the tag of the
+ image to be created. Note it is never used to fetch the image since we
+ prefer to rely on the immutable digest ID. By default it's
+ latest.
+
+
+
+
+ sha256 is the checksum of the whole fetched image. This
+ argument is required.
+
+
+
+
+ os, if specified, is the operating system of the
+ fetched image. By default it's linux.
+
+
+
+
+ arch, if specified, is the cpu architecture of the
+ fetched image. By default it's x86_64.
+
+
+
+
+
+ nix-prefetch-docker command can be used to get required
+ image parameters:
+
+
+$ nix run nixpkgs.nix-prefetch-docker -c nix-prefetch-docker --image-name mysql --image-tag 5
+
+
+ Since a given imageName may transparently refer to a
+ manifest list of images which support multiple architectures and/or
+ operating systems, you can supply the and
+ arguments to specify exactly which image you want.
+ By default it will match the OS and architecture of the host the command is
+ run on.
+
+
+$ nix-prefetch-docker --image-name mysql --image-tag 5 --arch x86_64 --os linux
+
+
+ Desired image name and tag can be set using
+ and
+ arguments:
+
+
+$ nix-prefetch-docker --image-name mysql --image-tag 5 --final-image-name eu.gcr.io/my-project/mysql --final-image-tag prod
+
+
+
+
+
+ exportImage
+
+
+ This function is analogous to the docker export command,
+ in that it can be used to flatten a Docker image that contains multiple
+ layers. It is in fact the result of the merge of all the layers of the
+ image. As such, the result is suitable for being imported in Docker with
+ docker import.
+
+
+
+
+ Using this function requires the kvm device to be
+ available.
+
+
+
+
+ The parameters of exportImage are the following:
+
+
+
+ Docker export
+
+exportImage {
+ fromImage = someLayeredImage;
+ fromImageName = null;
+ fromImageTag = null;
+
+ name = someLayeredImage.name;
+}
+
+
+
+
+ The parameters relative to the base image have the same synopsis as
+ described in , except that
+ fromImage is the only required argument in this case.
+
+
+
+ The name argument is the name of the derivation output,
+ which defaults to fromImage.name.
+
+
+
+
+ shadowSetup
+
+
+ This constant string is a helper for setting up the base files for managing
+ users and groups, only if such files don't exist already. It is suitable for
+ being used in a runAsRoot
+ script for cases like
+ in the example below:
+
+
+
+ Shadow base files
+
+buildImage {
+ name = "shadow-basic";
+
+ runAsRoot = ''
+ #!${pkgs.runtimeShell}
+ ${shadowSetup}
+ groupadd -r redis
+ useradd -r -g redis redis
+ mkdir /data
+ chown redis:redis /data
+ '';
+}
+
+
+
+
+ Creating base files like /etc/passwd or
+ /etc/login.defs is necessary for shadow-utils to
+ manipulate users and groups.
+
+
+
diff --git a/doc/functions/fetchers.xml b/doc/functions/fetchers.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a736008c9d41817c1027c3d214da34815091ad50
--- /dev/null
+++ b/doc/functions/fetchers.xml
@@ -0,0 +1,194 @@
+
+ Fetcher functions
+
+
+ When using Nix, you will frequently need to download source code and other
+ files from the internet. Nixpkgs comes with a few helper functions that allow
+ you to fetch fixed-output derivations in a structured way.
+
+
+
+ The two fetcher primitives are fetchurl and
+ fetchzip. Both of these have two required arguments, a
+ URL and a hash. The hash is typically sha256, although
+ many more hash algorithms are supported. Nixpkgs contributors are currently
+ recommended to use sha256. This hash will be used by Nix
+ to identify your source. A typical usage of fetchurl is provided below.
+
+
+
+
+
+ The main difference between fetchurl and
+ fetchzip is in how they store the contents.
+ fetchurl will store the unaltered contents of the URL
+ within the Nix store. fetchzip on the other hand will
+ decompress the archive for you, making files and directories directly
+ accessible in the future. fetchzip can only be used with
+ archives. Despite the name, fetchzip is not limited to
+ .zip files and can also be used with any tarball.
+
+
+
+ fetchpatch works very similarly to
+ fetchurl with the same arguments expected. It expects
+ patch files as a source and and performs normalization on them before
+ computing the checksum. For example it will remove comments or other unstable
+ parts that are sometimes added by version control systems and can change over
+ time.
+
+
+
+ Other fetcher functions allow you to add source code directly from a VCS such
+ as subversion or git. These are mostly straightforward names based on the
+ name of the command used with the VCS system. Because they give you a working
+ repository, they act most like fetchzip.
+
+
+
+
+
+ fetchsvn
+
+
+
+ Used with Subversion. Expects url to a Subversion
+ directory, rev, and sha256.
+
+
+
+
+
+ fetchgit
+
+
+
+ Used with Git. Expects url to a Git repo,
+ rev, and sha256.
+ rev in this case can be full the git commit id (SHA1
+ hash) or a tag name like refs/tags/v1.0.
+
+
+
+
+
+ fetchfossil
+
+
+
+ Used with Fossil. Expects url to a Fossil archive,
+ rev, and sha256.
+
+
+
+
+
+ fetchcvs
+
+
+
+ Used with CVS. Expects cvsRoot, tag,
+ and sha256.
+
+
+
+
+
+ fetchhg
+
+
+
+ Used with Mercurial. Expects url,
+ rev, and sha256.
+
+
+
+
+
+
+ A number of fetcher functions wrap part of fetchurl and
+ fetchzip. They are mainly convenience functions intended
+ for commonly used destinations of source code in Nixpkgs. These wrapper
+ fetchers are listed below.
+
+
+
+
+
+ fetchFromGitHub
+
+
+
+ fetchFromGitHub expects four arguments.
+ owner is a string corresponding to the GitHub user or
+ organization that controls this repository. repo
+ corresponds to the name of the software repository. These are located at
+ the top of every GitHub HTML page as
+ owner/repo. rev
+ corresponds to the Git commit hash or tag (e.g v1.0)
+ that will be downloaded from Git. Finally, sha256
+ corresponds to the hash of the extracted directory. Again, other hash
+ algorithms are also available but sha256 is currently
+ preferred.
+
+
+
+
+
+ fetchFromGitLab
+
+
+
+ This is used with GitLab repositories. The arguments expected are very
+ similar to fetchFromGitHub above.
+
+
+
+
+
+ fetchFromBitbucket
+
+
+
+ This is used with BitBucket repositories. The arguments expected are very
+ similar to fetchFromGitHub above.
+
+
+
+
+
+ fetchFromSavannah
+
+
+
+ This is used with Savannah repositories. The arguments expected are very
+ similar to fetchFromGitHub above.
+
+
+
+
+
+ fetchFromRepoOrCz
+
+
+
+ This is used with repo.or.cz repositories. The arguments expected are very
+ similar to fetchFromGitHub above.
+
+
+
+
+
diff --git a/doc/functions/fhs-environments.xml b/doc/functions/fhs-environments.xml
new file mode 100644
index 0000000000000000000000000000000000000000..79682080be314a1d545d3429af06214ee1f5740d
--- /dev/null
+++ b/doc/functions/fhs-environments.xml
@@ -0,0 +1,142 @@
+
+ buildFHSUserEnv
+
+
+ buildFHSUserEnv provides a way to build and run
+ FHS-compatible lightweight sandboxes. It creates an isolated root with bound
+ /nix/store, so its footprint in terms of disk space
+ needed is quite small. This allows one to run software which is hard or
+ unfeasible to patch for NixOS -- 3rd-party source trees with FHS assumptions,
+ games distributed as tarballs, software with integrity checking and/or
+ external self-updated binaries. It uses Linux namespaces feature to create
+ temporary lightweight environments which are destroyed after all child
+ processes exit, without root user rights requirement. Accepted arguments are:
+
+
+
+
+
+ name
+
+
+
+ Environment name.
+
+
+
+
+
+ targetPkgs
+
+
+
+ Packages to be installed for the main host's architecture (i.e. x86_64 on
+ x86_64 installations). Along with libraries binaries are also installed.
+
+
+
+
+
+ multiPkgs
+
+
+
+ Packages to be installed for all architectures supported by a host (i.e.
+ i686 and x86_64 on x86_64 installations). Only libraries are installed by
+ default.
+
+
+
+
+
+ extraBuildCommands
+
+
+
+ Additional commands to be executed for finalizing the directory structure.
+
+
+
+
+
+ extraBuildCommandsMulti
+
+
+
+ Like extraBuildCommands, but executed only on multilib
+ architectures.
+
+
+
+
+
+ extraOutputsToInstall
+
+
+
+ Additional derivation outputs to be linked for both target and
+ multi-architecture packages.
+
+
+
+
+
+ extraInstallCommands
+
+
+
+ Additional commands to be executed for finalizing the derivation with
+ runner script.
+
+
+
+
+
+ runScript
+
+
+
+ A command that would be executed inside the sandbox and passed all the
+ command line arguments. It defaults to bash.
+
+
+
+
+
+
+ One can create a simple environment using a shell.nix like
+ that:
+
+
+ {} }:
+
+(pkgs.buildFHSUserEnv {
+ name = "simple-x11-env";
+ targetPkgs = pkgs: (with pkgs;
+ [ udev
+ alsaLib
+ ]) ++ (with pkgs.xorg;
+ [ libX11
+ libXcursor
+ libXrandr
+ ]);
+ multiPkgs = pkgs: (with pkgs;
+ [ udev
+ alsaLib
+ ]);
+ runScript = "bash";
+}).env
+]]>
+
+
+ Running nix-shell would then drop you into a shell with
+ these libraries and binaries available. You can use this to run closed-source
+ applications which expect FHS structure without hassles: simply change
+ runScript to the application path, e.g.
+ ./bin/start.sh -- relative paths are supported.
+
+
diff --git a/doc/functions/generators.xml b/doc/functions/generators.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e860b10e8979f090d5763c57b3cbd3ae7998b616
--- /dev/null
+++ b/doc/functions/generators.xml
@@ -0,0 +1,89 @@
+
+ Generators
+
+
+ Generators are functions that create file formats from nix data structures,
+ e. g. for configuration files. There are generators available for:
+ INI, JSON and YAML
+
+
+
+ All generators follow a similar call interface: generatorName
+ configFunctions data, where configFunctions is an
+ attrset of user-defined functions that format nested parts of the content.
+ They each have common defaults, so often they do not need to be set manually.
+ An example is mkSectionName ? (name: libStr.escape [ "[" "]" ]
+ name) from the INI generator. It receives the name
+ of a section and sanitizes it. The default mkSectionName
+ escapes [ and ] with a backslash.
+
+
+
+ Generators can be fine-tuned to produce exactly the file format required by
+ your application/service. One example is an INI-file format which uses
+ : as separator, the strings
+ "yes"/"no" as boolean values and
+ requires all string values to be quoted:
+
+
+
+with lib;
+let
+ customToINI = generators.toINI {
+ # specifies how to format a key/value pair
+ mkKeyValue = generators.mkKeyValueDefault {
+ # specifies the generated string for a subset of nix values
+ mkValueString = v:
+ if v == true then ''"yes"''
+ else if v == false then ''"no"''
+ else if isString v then ''"${v}"''
+ # and delegats all other values to the default generator
+ else generators.mkValueStringDefault {} v;
+ } ":";
+ };
+
+# the INI file can now be given as plain old nix values
+in customToINI {
+ main = {
+ pushinfo = true;
+ autopush = false;
+ host = "localhost";
+ port = 42;
+ };
+ mergetool = {
+ merge = "diff3";
+ };
+}
+
+
+
+ This will produce the following INI file as nix string:
+
+
+
+[main]
+autopush:"no"
+host:"localhost"
+port:42
+pushinfo:"yes"
+str\:ange:"very::strange"
+
+[mergetool]
+merge:"diff3"
+
+
+
+
+ Nix store paths can be converted to strings by enclosing a derivation
+ attribute like so: "${drv}".
+
+
+
+
+ Detailed documentation for each generator can be found in
+ lib/generators.nix.
+
+
diff --git a/doc/functions/library.xml b/doc/functions/library.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e6aedaa6efdd5e77b2c2c6113af709e5b687cb85
--- /dev/null
+++ b/doc/functions/library.xml
@@ -0,0 +1,29 @@
+
+ Nixpkgs Library Functions
+
+
+ Nixpkgs provides a standard library at pkgs.lib, or
+ through import <nixpkgs/lib>.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/functions/library/asserts.xml b/doc/functions/library/asserts.xml
new file mode 100644
index 0000000000000000000000000000000000000000..437850e408bc2194e96759daa5d552d7e18455c0
--- /dev/null
+++ b/doc/functions/library/asserts.xml
@@ -0,0 +1,117 @@
+
+ Assert functions
+
+
+ lib.asserts.assertMsg
+
+ assertMsg :: Bool -> String -> Bool
+
+
+
+
+
+ Print a trace message if pred is false.
+
+
+
+ Intended to be used to augment asserts with helpful error messages.
+
+
+
+
+
+ pred
+
+
+
+ Condition under which the msg should
+ not be printed.
+
+
+
+
+
+ msg
+
+
+
+ Message to print.
+
+
+
+
+
+
+ Printing when the predicate is false
+ trace: foo is not bar, silly
+stderr> assert failed
+]]>
+
+
+
+
+ lib.asserts.assertOneOf
+
+ assertOneOf :: String -> String ->
+ StringList -> Bool
+
+
+
+
+
+ Specialized asserts.assertMsg for checking if
+ val is one of the elements of xs.
+ Useful for checking enums.
+
+
+
+
+
+ name
+
+
+
+ The name of the variable the user entered val into,
+ for inclusion in the error message.
+
+
+
+
+
+ val
+
+
+
+ The value of what the user provided, to be compared against the values in
+ xs.
+
+
+
+
+
+ xs
+
+
+
+ The list of valid values.
+
+
+
+
+
+
+ Ensuring a user provided a possible value
+ false
+stderr> trace: sslLibrary must be one of "openssl", "libressl", but is: "bearssl"
+ ]]>
+
+
+
diff --git a/doc/functions/library/attrsets.xml b/doc/functions/library/attrsets.xml
new file mode 100644
index 0000000000000000000000000000000000000000..65d0b40e2e82728e4ec2b88abf9cfe8cdb4af779
--- /dev/null
+++ b/doc/functions/library/attrsets.xml
@@ -0,0 +1,1731 @@
+
+ Attribute-Set Functions
+
+
+ lib.attrset.attrByPath
+
+ attrByPath :: [String] -> Any -> AttrSet
+
+
+
+
+
+ Return an attribute from within nested attribute sets.
+
+
+
+
+
+ attrPath
+
+
+
+ A list of strings representing the path through the nested attribute set
+ set.
+
+
+
+
+
+ default
+
+
+
+ Default value if attrPath does not resolve to an
+ existing value.
+
+
+
+
+
+ set
+
+
+
+ The nested attributeset to select values from.
+
+
+
+
+
+
+ Extracting a value from a nested attribute set
+ 3
+]]>
+
+
+
+ No value at the path, instead using the default
+ 0
+]]>
+
+
+
+
+ lib.attrsets.hasAttrByPath
+
+ hasAttrByPath :: [String] -> AttrSet -> Bool
+
+
+
+
+
+ Determine if an attribute exists within a nested attribute set.
+
+
+
+
+
+ attrPath
+
+
+
+ A list of strings representing the path through the nested attribute set
+ set.
+
+
+
+
+
+ set
+
+
+
+ The nested attributeset to check.
+
+
+
+
+
+
+ A nested value does exist inside a set
+ true
+]]>
+
+
+
+
+ lib.attrsets.setAttrByPath
+
+ setAttrByPath :: [String] -> Any -> AttrSet
+
+
+
+
+
+ Create a new attribute set with value set at the nested
+ attribute location specified in attrPath.
+
+
+
+
+
+ attrPath
+
+
+
+ A list of strings representing the path through the nested attribute set.
+
+
+
+
+
+ value
+
+
+
+ The value to set at the location described by
+ attrPath.
+
+
+
+
+
+
+ Creating a new nested attribute set
+ { a = { b = 3; }; }
+]]>
+
+
+
+
+ lib.attrsets.getAttrFromPath
+
+ getAttrFromPath :: [String] -> AttrSet -> Value
+
+
+
+
+
+ Like except
+ without a default, and it will throw if the value doesn't exist.
+
+
+
+
+
+ attrPath
+
+
+
+ A list of strings representing the path through the nested attribute set
+ set.
+
+
+
+
+
+ set
+
+
+
+ The nested attribute set to find the value in.
+
+
+
+
+
+
+ Succesfully getting a value from an attribute set
+ 3
+]]>
+
+
+
+ Throwing after failing to get a value from an attribute set
+ error: cannot find attribute `x.y'
+]]>
+
+
+
+
+ lib.attrsets.attrVals
+
+ attrVals :: [String] -> AttrSet -> [Any]
+
+
+
+
+
+ Return the specified attributes from a set. All values must exist.
+
+
+
+
+
+ nameList
+
+
+
+ The list of attributes to fetch from set. Each
+ attribute name must exist on the attrbitue set.
+
+
+
+
+
+ set
+
+
+
+ The set to get attribute values from.
+
+
+
+
+
+
+ Getting several values from an attribute set
+ [ 1 2 3 ]
+]]>
+
+
+
+ Getting missing values from an attribute set
+
+
+
+
+
+ lib.attrsets.attrValues
+
+ attrValues :: AttrSet -> [Any]
+
+
+
+
+
+ Get all the attribute values from an attribute set.
+
+
+
+ Provides a backwards-compatible interface of
+ builtins.attrValues for Nix version older than 1.8.
+
+
+
+
+
+ attrs
+
+
+
+ The attribute set.
+
+
+
+
+
+
+
+ [ 1 2 3 ]
+]]>
+
+
+
+
+ lib.attrsets.catAttrs
+
+ catAttrs :: String -> AttrSet -> [Any]
+
+
+
+
+
+ Collect each attribute named `attr' from the list of attribute sets,
+ sets. Sets that don't contain the named attribute are
+ ignored.
+
+
+
+ Provides a backwards-compatible interface of
+ builtins.catAttrs for Nix version older than 1.9.
+
+
+
+
+
+ attr
+
+
+
+ Attribute name to select from each attribute set in
+ sets.
+
+
+
+
+
+ sets
+
+
+
+ The list of attribute sets to select attr from.
+
+
+
+
+
+
+ Collect an attribute from a list of attribute sets.
+
+ Attribute sets which don't have the attribute are ignored.
+
+ [ 1 2 ]
+ ]]>
+
+
+
+
+ lib.attrsets.filterAttrs
+
+ filterAttrs :: (String -> Any -> Bool) -> AttrSet -> AttrSet
+
+
+
+
+
+ Filter an attribute set by removing all attributes for which the given
+ predicate return false.
+
+
+
+
+
+ pred
+
+
+
+ String -> Any -> Bool
+
+
+ Predicate which returns true to include an attribute, or returns false to
+ exclude it.
+
+
+
+
+ name
+
+
+
+ The attribute's name
+
+
+
+
+
+ value
+
+
+
+ The attribute's value
+
+
+
+
+
+ Returns true to include the attribute,
+ false to exclude the attribute.
+
+
+
+
+
+ set
+
+
+
+ The attribute set to filter
+
+
+
+
+
+
+ Filtering an attributeset
+ { foo = 1; }
+]]>
+
+
+
+
+ lib.attrsets.filterAttrsRecursive
+
+ filterAttrsRecursive :: (String -> Any -> Bool) -> AttrSet -> AttrSet
+
+
+
+
+
+ Filter an attribute set recursively by removing all attributes for which the
+ given predicate return false.
+
+
+
+
+
+ pred
+
+
+
+ String -> Any -> Bool
+
+
+ Predicate which returns true to include an attribute, or returns false to
+ exclude it.
+
+
+
+
+ name
+
+
+
+ The attribute's name
+
+
+
+
+
+ value
+
+
+
+ The attribute's value
+
+
+
+
+
+ Returns true to include the attribute,
+ false to exclude the attribute.
+
+
+
+
+
+ set
+
+
+
+ The attribute set to filter
+
+
+
+
+
+
+ Recursively filtering an attribute set
+ {
+ levelA = {
+ example = "hi";
+ levelB = {
+ hello = "there";
+ this-one-is-present = { };
+ };
+ };
+ }
+ ]]>
+
+
+
+
+ lib.attrsets.foldAttrs
+
+ foldAttrs :: (Any -> Any -> Any) -> Any -> [AttrSets] -> Any
+
+
+
+
+
+ Apply fold function to values grouped by key.
+
+
+
+
+
+ op
+
+
+
+ Any -> Any -> Any
+
+
+ Given a value val and a collector
+ col, combine the two.
+
+
+
+
+ val
+
+
+
+ An attribute's value
+
+
+
+
+
+ col
+
+
+
+
+ The result of previous op calls with other values
+ and nul.
+
+
+
+
+
+
+
+
+ nul
+
+
+
+ The null-value, the starting value.
+
+
+
+
+
+ list_of_attrs
+
+
+
+ A list of attribute sets to fold together by key.
+
+
+
+
+
+
+ Combining an attribute of lists in to one attribute set
+ { a = [ 2 3 ]; b = [ 7 6 ]; }
+]]>
+
+
+
+
+ lib.attrsets.collect
+
+ collect :: (Any -> Bool) -> AttrSet -> [Any]
+
+
+
+
+
+ Recursively collect sets that verify a given predicate named
+ pred from the set attrs. The recursion
+ stops when pred returns true.
+
+
+
+
+
+ pred
+
+
+
+ Any -> Bool
+
+
+ Given an attribute's value, determine if recursion should stop.
+
+
+
+
+ value
+
+
+
+ The attribute set value.
+
+
+
+
+
+
+
+
+ attrs
+
+
+
+ The attribute set to recursively collect.
+
+
+
+
+
+
+ Collecting all lists from an attribute set
+ [["b"] [1]]
+]]>
+
+
+
+ Collecting all attribute-sets which contain the outPath attribute name.
+ [{ outPath = "a/"; } { outPath = "b/"; }]
+]]>
+
+
+
+
+ lib.attrsets.nameValuePair
+
+ nameValuePair :: String -> Any -> AttrSet
+
+
+
+
+
+ Utility function that creates a {name, value} pair as
+ expected by builtins.listToAttrs.
+
+
+
+
+
+ name
+
+
+
+ The attribute name.
+
+
+
+
+
+ value
+
+
+
+ The attribute value.
+
+
+
+
+
+
+ Creating a name value pair
+ { name = "some"; value = 6; }
+]]>
+
+
+
+
+ lib.attrsets.mapAttrs
+
+
+
+
+
+
+
+ Apply a function to each element in an attribute set, creating a new
+ attribute set.
+
+
+
+ Provides a backwards-compatible interface of
+ builtins.mapAttrs for Nix version older than 2.1.
+
+
+
+
+
+ fn
+
+
+
+ String -> Any -> Any
+
+
+ Given an attribute's name and value, return a new value.
+
+
+
+
+ name
+
+
+
+ The name of the attribute.
+
+
+
+
+
+ value
+
+
+
+ The attribute's value.
+
+
+
+
+
+
+
+
+
+ Modifying each value of an attribute set
+ { x = "x-foo"; y = "y-bar"; }
+]]>
+
+
+
+
+ lib.attrsets.mapAttrs'
+
+ mapAttrs' :: (String -> Any -> { name = String; value = Any }) -> AttrSet -> AttrSet
+
+
+
+
+
+ Like mapAttrs, but allows the name of each attribute to
+ be changed in addition to the value. The applied function should return both
+ the new name and value as a nameValuePair.
+
+
+
+
+
+ fn
+
+
+
+ String -> Any -> { name = String; value = Any }
+
+
+ Given an attribute's name and value, return a new
+ name
+ value pair.
+
+
+
+
+ name
+
+
+
+ The name of the attribute.
+
+
+
+
+
+ value
+
+
+
+ The attribute's value.
+
+
+
+
+
+
+
+
+ set
+
+
+
+ The attribute set to map over.
+
+
+
+
+
+
+ Change the name and value of each attribute of an attribute set
+ { foo_x = "bar-a"; foo_y = "bar-b"; }
+
+ ]]>
+
+
+
+
+ lib.attrsets.mapAttrsToList
+
+ mapAttrsToList :: (String -> Any -> Any) ->
+ AttrSet -> Any
+
+
+
+
+
+ Call fn for each attribute in the given
+ set and return the result in a list.
+
+
+
+
+
+ fn
+
+
+
+ String -> Any -> Any
+
+
+ Given an attribute's name and value, return a new value.
+
+
+
+
+ name
+
+
+
+ The name of the attribute.
+
+
+
+
+
+ value
+
+
+
+ The attribute's value.
+
+
+
+
+
+
+
+
+ set
+
+
+
+ The attribute set to map over.
+
+
+
+
+
+
+ Combine attribute values and names in to a list
+ [ "x=a" "y=b" ]
+]]>
+
+
+
+
+ lib.attrsets.mapAttrsRecursive
+
+ mapAttrsRecursive :: ([String] > Any -> Any) -> AttrSet -> AttrSet
+
+
+
+
+
+ Like mapAttrs, except that it recursively applies
+ itself to attribute sets. Also, the first argument of the argument function
+ is a list of the names of the containing attributes.
+
+
+
+
+
+ f
+
+
+
+ [ String ] -> Any -> Any
+
+
+ Given a list of attribute names and value, return a new value.
+
+
+
+
+ name_path
+
+
+
+ The list of attribute names to this value.
+
+
+ For example, the name_path for the
+ example string in the attribute set { foo
+ = { bar = "example"; }; } is [ "foo" "bar"
+ ].
+
+
+
+
+
+ value
+
+
+
+ The attribute's value.
+
+
+
+
+
+
+
+
+ set
+
+
+
+ The attribute set to recursively map over.
+
+
+
+
+
+
+ A contrived example of using lib.attrsets.mapAttrsRecursive
+ {
+ n = {
+ a = "n-a-A";
+ m = {
+ b = "n-m-b-B";
+ c = "n-m-c-C";
+ };
+ };
+ d = "d-D";
+ }
+ ]]>
+
+
+
+
+ lib.attrsets.mapAttrsRecursiveCond
+
+ mapAttrsRecursiveCond :: (AttrSet -> Bool) -> ([ String ] -> Any -> Any) -> AttrSet -> AttrSet
+
+
+
+
+
+ Like mapAttrsRecursive, but it takes an additional
+ predicate function that tells it whether to recursive into an attribute set.
+ If it returns false, mapAttrsRecursiveCond does not
+ recurse, but does apply the map function. It is returns true, it does
+ recurse, and does not apply the map function.
+
+
+
+
+
+ cond
+
+
+
+ (AttrSet -> Bool)
+
+
+ Determine if mapAttrsRecursive should recurse deeper
+ in to the attribute set.
+
+
+
+
+ attributeset
+
+
+
+ An attribute set.
+
+
+
+
+
+
+
+
+ f
+
+
+
+ [ String ] -> Any -> Any
+
+
+ Given a list of attribute names and value, return a new value.
+
+
+
+
+ name_path
+
+
+
+ The list of attribute names to this value.
+
+
+ For example, the name_path for the
+ example string in the attribute set { foo
+ = { bar = "example"; }; } is [ "foo" "bar"
+ ].
+
+
+
+
+
+ value
+
+
+
+ The attribute's value.
+
+
+
+
+
+
+
+
+ set
+
+
+
+ The attribute set to recursively map over.
+
+
+
+
+
+
+ Only convert attribute values to JSON if the containing attribute set is marked for recursion
+ {
+ dorecur = {
+ hello = "\"there\"";
+ recurse = "true";
+ };
+ dontrecur = "{\"converted-to\":\"json\"}";
+ }
+ ]]>
+
+
+
+
+ lib.attrsets.genAttrs
+
+ genAttrs :: [ String ] -> (String -> Any) -> AttrSet
+
+
+
+
+
+ Generate an attribute set by mapping a function over a list of attribute
+ names.
+
+
+
+
+
+ names
+
+
+
+ Names of values in the resulting attribute set.
+
+
+
+
+
+ f
+
+
+
+ String -> Any
+
+
+ Takes the name of the attribute and return the attribute's value.
+
+
+
+
+ name
+
+
+
+ The name of the attribute to generate a value for.
+
+
+
+
+
+
+
+
+
+ Generate an attrset based on names only
+ { foo = "x_foo"; bar = "x_bar"; }
+ ]]>
+
+
+
+
+ lib.attrsets.isDerivation
+
+ isDerivation :: Any -> Bool
+
+
+
+
+
+ Check whether the argument is a derivation. Any set with { type =
+ "derivation"; } counts as a derivation.
+
+
+
+
+
+ value
+
+
+
+ The value which is possibly a derivation.
+
+
+
+
+
+
+ A package is a derivation
+ {}).ruby
+=> true
+ ]]>
+
+
+
+ Anything else is not a derivation
+ false
+ ]]>
+
+
+
+
+ lib.attrsets.toDerivation
+
+ toDerivation :: Path -> Derivation
+
+
+
+
+
+ Converts a store path to a fake derivation.
+
+
+
+
+
+ path
+
+
+
+ A store path to convert to a derivation.
+
+
+
+
+
+
+
+ lib.attrsets.optionalAttrs
+
+ optionalAttrs :: Bool -> AttrSet
+
+
+
+
+
+ Conditionally return an attribute set or an empty attribute set.
+
+
+
+
+
+ cond
+
+
+
+ Condition under which the as attribute set is
+ returned.
+
+
+
+
+
+ as
+
+
+
+ The attribute set to return if cond is true.
+
+
+
+
+
+
+ Return the provided attribute set when cond is true
+ { my = "set"; }
+ ]]>
+
+
+
+ Return an empty attribute set when cond is false
+ { }
+ ]]>
+
+
+
+
+ lib.attrsets.zipAttrsWithNames
+
+ zipAttrsWithNames :: [ String ] -> (String -> [ Any ] -> Any) -> [ AttrSet ] -> AttrSet
+
+
+
+
+
+ Merge sets of attributes and use the function f to merge
+ attribute values where the attribute name is in names.
+
+
+
+
+
+ names
+
+
+
+ A list of attribute names to zip.
+
+
+
+
+
+ f
+
+
+
+ (String -> [ Any ] -> Any
+
+
+ Accepts an attribute name, all the values, and returns a combined value.
+
+
+
+
+ name
+
+
+
+ The name of the attribute each value came from.
+
+
+
+
+
+ vs
+
+
+
+ A list of values collected from the list of attribute sets.
+
+
+
+
+
+
+
+
+ sets
+
+
+
+ A list of attribute sets to zip together.
+
+
+
+
+
+
+ Summing a list of attribute sets of numbers
+ { a = "a 11"; b = "b 101"; }
+ ]]>
+
+
+
+
+ lib.attrsets.zipAttrsWith
+
+ zipAttrsWith :: (String -> [ Any ] -> Any) -> [ AttrSet ] -> AttrSet
+
+
+
+
+
+ Merge sets of attributes and use the function f to merge
+ attribute values. Similar to
+ where
+ all key names are passed for names.
+
+
+
+
+
+ f
+
+
+
+ (String -> [ Any ] -> Any
+
+
+ Accepts an attribute name, all the values, and returns a combined value.
+
+
+
+
+ name
+
+
+
+ The name of the attribute each value came from.
+
+
+
+
+
+ vs
+
+
+
+ A list of values collected from the list of attribute sets.
+
+
+
+
+
+
+
+
+ sets
+
+
+
+ A list of attribute sets to zip together.
+
+
+
+
+
+
+ Summing a list of attribute sets of numbers
+ { a = "a 11"; b = "b 101"; c = "c 1001"; }
+ ]]>
+
+
+
+
+ lib.attrsets.zipAttrs
+
+ zipAttrsWith :: [ AttrSet ] -> AttrSet
+
+
+
+
+
+ Merge sets of attributes and combine each attribute value in to a list.
+ Similar to
+ where the merge function returns a list of all values.
+
+
+
+
+
+ sets
+
+
+
+ A list of attribute sets to zip together.
+
+
+
+
+
+
+ Combining a list of attribute sets
+ { a = [ 1 10 ]; b = [ 1 100 ]; c = [ 1 1000 ]; }
+ ]]>
+
+
+
+
+ lib.attrsets.recursiveUpdateUntil
+
+ recursiveUpdateUntil :: ( [ String ] -> AttrSet -> AttrSet -> Bool ) -> AttrSet -> AttrSet -> AttrSet
+
+
+
+
+
+ Does the same as the update operator // except that
+ attributes are merged until the given predicate is verified. The predicate
+ should accept 3 arguments which are the path to reach the attribute, a part
+ of the first attribute set and a part of the second attribute set. When the
+ predicate is verified, the value of the first attribute set is replaced by
+ the value of the second attribute set.
+
+
+
+
+
+ pred
+
+
+
+ [ String ] -> AttrSet -> AttrSet -> Bool
+
+
+
+
+ path
+
+
+
+ The path to the values in the left and right hand sides.
+
+
+
+
+
+ l
+
+
+
+ The left hand side value.
+
+
+
+
+
+ r
+
+
+
+ The right hand side value.
+
+
+
+
+
+
+
+
+ lhs
+
+
+
+ The left hand attribute set of the merge.
+
+
+
+
+
+ rhs
+
+
+
+ The right hand attribute set of the merge.
+
+
+
+
+
+
+ Recursively merging two attribute sets
+ {
+ foo.bar = 1; # 'foo.*' from the second set
+ foo.quz = 2; #
+ bar = 3; # 'bar' from the first set
+ baz = 4; # 'baz' from the second set
+}
+ ]]>
+
+
+
+
+ lib.attrsets.recursiveUpdate
+
+ recursiveUpdate :: AttrSet -> AttrSet -> AttrSet
+
+
+
+
+
+ A recursive variant of the update operator //. The
+ recursion stops when one of the attribute values is not an attribute set, in
+ which case the right hand side value takes precedence over the left hand
+ side value.
+
+
+
+
+
+ lhs
+
+
+
+ The left hand attribute set of the merge.
+
+
+
+
+
+ rhs
+
+
+
+ The right hand attribute set of the merge.
+
+
+
+
+
+
+ Recursively merging two attribute sets
+ {
+ boot.loader.grub.enable = true;
+ boot.loader.grub.device = "";
+}
+]]>
+
+
+
diff --git a/doc/functions/nix-gitignore.xml b/doc/functions/nix-gitignore.xml
new file mode 100644
index 0000000000000000000000000000000000000000..9011570d1eaed005b66fc7359c71e01dd098701e
--- /dev/null
+++ b/doc/functions/nix-gitignore.xml
@@ -0,0 +1,84 @@
+
+ pkgs.nix-gitignore
+
+
+ pkgs.nix-gitignore is a function that acts similarly to
+ builtins.filterSource but also allows filtering with the
+ help of the gitignore format.
+
+
+
+ Usage
+
+
+ pkgs.nix-gitignore exports a number of functions, but
+ you'll most likely need either gitignoreSource or
+ gitignoreSourcePure. As their first argument, they both
+ accept either 1. a file with gitignore lines or 2. a string with gitignore
+ lines, or 3. a list of either of the two. They will be concatenated into a
+ single big string.
+
+
+ {} }:
+
+ nix-gitignore.gitignoreSource [] ./source
+ # Simplest version
+
+ nix-gitignore.gitignoreSource "supplemental-ignores\n" ./source
+ # This one reads the ./source/.gitignore and concats the auxiliary ignores
+
+ nix-gitignore.gitignoreSourcePure "ignore-this\nignore-that\n" ./source
+ # Use this string as gitignore, don't read ./source/.gitignore.
+
+ nix-gitignore.gitignoreSourcePure ["ignore-this\nignore-that\n", ~/.gitignore] ./source
+ # It also accepts a list (of strings and paths) that will be concatenated
+ # once the paths are turned to strings via readFile.
+ ]]>
+
+
+ These functions are derived from the Filter functions by
+ setting the first filter argument to (_: _: true):
+
+
+
+
+
+ Those filter functions accept the same arguments the
+ builtins.filterSource function would pass to its filters,
+ thus fn: gitignoreFilterSourcePure fn "" should be
+ extensionally equivalent to filterSource. The file is
+ blacklisted iff it's blacklisted by either your filter or the
+ gitignoreFilter.
+
+
+
+ If you want to make your own filter from scratch, you may use
+
+
+
+
+
+
+ gitignore files in subdirectories
+
+
+ If you wish to use a filter that would search for .gitignore files in
+ subdirectories, just like git does by default, use this function:
+
+
+
+
+
diff --git a/doc/functions/overrides.xml b/doc/functions/overrides.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1bd90d2a0c760276a5bc1975fbefaef31de46e80
--- /dev/null
+++ b/doc/functions/overrides.xml
@@ -0,0 +1,212 @@
+
+ Overriding
+
+
+ Sometimes one wants to override parts of nixpkgs, e.g.
+ derivation attributes, the results of derivations.
+
+
+
+ These functions are used to make changes to packages, returning only single
+ packages. Overlays, on the other
+ hand, can be used to combine the overridden packages across the entire
+ package set of Nixpkgs.
+
+
+
+ <pkg>.override
+
+
+ The function override is usually available for all the
+ derivations in the nixpkgs expression (pkgs).
+
+
+
+ It is used to override the arguments passed to a function.
+
+
+
+ Example usages:
+pkgs.foo.override { arg1 = val1; arg2 = val2; ... }
+
+
+import pkgs.path { overlays = [ (self: super: {
+ foo = super.foo.override { barSupport = true ; };
+ })]};
+
+
+mypkg = pkgs.callPackage ./mypkg.nix {
+ mydep = pkgs.mydep.override { ... };
+ }
+
+
+
+
+ In the first example, pkgs.foo is the result of a
+ function call with some default arguments, usually a derivation. Using
+ pkgs.foo.override will call the same function with the
+ given new arguments.
+
+
+
+
+ <pkg>.overrideAttrs
+
+
+ The function overrideAttrs allows overriding the
+ attribute set passed to a stdenv.mkDerivation call,
+ producing a new derivation based on the original one. This function is
+ available on all derivations produced by the
+ stdenv.mkDerivation function, which is most packages in
+ the nixpkgs expression pkgs.
+
+
+
+ Example usage:
+
+helloWithDebug = pkgs.hello.overrideAttrs (oldAttrs: rec {
+ separateDebugInfo = true;
+});
+
+
+
+
+ In the above example, the separateDebugInfo attribute is
+ overridden to be true, thus building debug info for
+ helloWithDebug, while all other attributes will be
+ retained from the original hello package.
+
+
+
+ The argument oldAttrs is conventionally used to refer to
+ the attr set originally passed to stdenv.mkDerivation.
+
+
+
+
+ Note that separateDebugInfo is processed only by the
+ stdenv.mkDerivation function, not the generated, raw Nix
+ derivation. Thus, using overrideDerivation will not work
+ in this case, as it overrides only the attributes of the final derivation.
+ It is for this reason that overrideAttrs should be
+ preferred in (almost) all cases to overrideDerivation,
+ i.e. to allow using stdenv.mkDerivation to process input
+ arguments, as well as the fact that it is easier to use (you can use the
+ same attribute names you see in your Nix code, instead of the ones
+ generated (e.g. buildInputs vs
+ nativeBuildInputs), and it involves less typing).
+
+
+
+
+
+ <pkg>.overrideDerivation
+
+
+
+ You should prefer overrideAttrs in almost all cases, see
+ its documentation for the reasons why.
+ overrideDerivation is not deprecated and will continue
+ to work, but is less nice to use and does not have as many abilities as
+ overrideAttrs.
+
+
+
+
+
+ Do not use this function in Nixpkgs as it evaluates a Derivation before
+ modifying it, which breaks package abstraction and removes error-checking
+ of function arguments. In addition, this evaluation-per-function
+ application incurs a performance penalty, which can become a problem if
+ many overrides are used. It is only intended for ad-hoc customisation, such
+ as in ~/.config/nixpkgs/config.nix.
+
+
+
+
+ The function overrideDerivation creates a new derivation
+ based on an existing one by overriding the original's attributes with the
+ attribute set produced by the specified function. This function is available
+ on all derivations defined using the makeOverridable
+ function. Most standard derivation-producing functions, such as
+ stdenv.mkDerivation, are defined using this function,
+ which means most packages in the nixpkgs expression,
+ pkgs, have this function.
+
+
+
+ Example usage:
+
+mySed = pkgs.gnused.overrideDerivation (oldAttrs: {
+ name = "sed-4.2.2-pre";
+ src = fetchurl {
+ url = ftp://alpha.gnu.org/gnu/sed/sed-4.2.2-pre.tar.bz2;
+ sha256 = "11nq06d131y4wmf3drm0yk502d2xc6n5qy82cg88rb9nqd2lj41k";
+ };
+ patches = [];
+});
+
+
+
+
+ In the above example, the name, src,
+ and patches of the derivation will be overridden, while
+ all other attributes will be retained from the original derivation.
+
+
+
+ The argument oldAttrs is used to refer to the attribute
+ set of the original derivation.
+
+
+
+
+ A package's attributes are evaluated *before* being modified by the
+ overrideDerivation function. For example, the
+ name attribute reference in url =
+ "mirror://gnu/hello/${name}.tar.gz"; is filled-in *before* the
+ overrideDerivation function modifies the attribute set.
+ This means that overriding the name attribute, in this
+ example, *will not* change the value of the url
+ attribute. Instead, we need to override both the name
+ *and* url attributes.
+
+
+
+
+
+ lib.makeOverridable
+
+
+ The function lib.makeOverridable is used to make the
+ result of a function easily customizable. This utility only makes sense for
+ functions that accept an argument set and return an attribute set.
+
+
+
+ Example usage:
+
+f = { a, b }: { result = a+b; };
+c = lib.makeOverridable f { a = 1; b = 2; };
+
+
+
+
+ The variable c is the value of the f
+ function applied with some default arguments. Hence the value of
+ c.result is 3, in this example.
+
+
+
+ The variable c however also has some additional
+ functions, like c.override which can
+ be used to override the default arguments. In this example the value of
+ (c.override { a = 4; }).result is 6.
+
+
+
diff --git a/doc/functions/prefer-remote-fetch.xml b/doc/functions/prefer-remote-fetch.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2ccad9218062c1cf6d097630d47fc9902c5f8c0c
--- /dev/null
+++ b/doc/functions/prefer-remote-fetch.xml
@@ -0,0 +1,25 @@
+
+ prefer-remote-fetch overlay
+
+
+ prefer-remote-fetch is an overlay that download sources
+ on remote builder. This is useful when the evaluating machine has a slow
+ upload while the builder can fetch faster directly from the source. To use
+ it, put the following snippet as a new overlay:
+
+ self: super:
+ (super.prefer-remote-fetch self super)
+
+ A full configuration example for that sets the overlay up for your own
+ account, could look like this
+
+ $ mkdir ~/.config/nixpkgs/overlays/
+ $ cat > ~/.config/nixpkgs/overlays/prefer-remote-fetch.nix <<EOF
+ self: super: super.prefer-remote-fetch self super
+ EOF
+
+
+
diff --git a/doc/functions/shell.xml b/doc/functions/shell.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e5031c9463c0676c94a1c172fecea137b1d090e4
--- /dev/null
+++ b/doc/functions/shell.xml
@@ -0,0 +1,26 @@
+
+ pkgs.mkShell
+
+
+ pkgs.mkShell is a special kind of derivation that is
+ only useful when using it combined with nix-shell. It will
+ in fact fail to instantiate when invoked with nix-build.
+
+
+
+ Usage
+
+ {} }:
+pkgs.mkShell {
+ # this will make all the build inputs from hello and gnutar
+ # available to the shell environment
+ inputsFrom = with pkgs; [ hello gnutar ];
+ buildInputs = [ pkgs.gnumake ];
+}
+]]>
+
+
diff --git a/doc/functions/trivial-builders.xml b/doc/functions/trivial-builders.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1fd92ecfe2627182cae6fdbd231b7fddd3c389d5
--- /dev/null
+++ b/doc/functions/trivial-builders.xml
@@ -0,0 +1,113 @@
+
+ Trivial builders
+
+
+ Nixpkgs provides a couple of functions that help with building derivations.
+ The most important one, stdenv.mkDerivation, has already
+ been documented above. The following functions wrap
+ stdenv.mkDerivation, making it easier to use in certain
+ cases.
+
+
+
+
+
+ runCommand
+
+
+
+ This takes three arguments, name,
+ env, and buildCommand.
+ name is just the name that Nix will append to the store
+ path in the same way that stdenv.mkDerivation uses its
+ name attribute. env is an attribute
+ set specifying environment variables that will be set for this derivation.
+ These attributes are then passed to the wrapped
+ stdenv.mkDerivation. buildCommand
+ specifies the commands that will be run to create this derivation. Note
+ that you will need to create $out for Nix to register
+ the command as successful.
+
+
+ An example of using runCommand is provided below.
+
+
+ (import <nixpkgs> {}).runCommand "my-example" {} ''
+ echo My example command is running
+
+ mkdir $out
+
+ echo I can write data to the Nix store > $out/message
+
+ echo I can also run basic commands like:
+
+ echo ls
+ ls
+
+ echo whoami
+ whoami
+
+ echo date
+ date
+ ''
+
+
+
+
+
+ runCommandCC
+
+
+
+ This works just like runCommand. The only difference is
+ that it also provides a C compiler in buildCommand’s
+ environment. To minimize your dependencies, you should only use this if
+ you are sure you will need a C compiler as part of running your command.
+
+
+
+
+
+ writeTextFile, writeText, writeTextDir, writeScript, writeScriptBin
+
+
+
+ These functions write text to the Nix store. This is
+ useful for creating scripts from Nix expressions.
+ writeTextFile takes an attribute set and expects two
+ arguments, name and text.
+ name corresponds to the name used in the Nix store
+ path. text will be the contents of the file. You can
+ also set executable to true to make this file have the
+ executable bit set.
+
+
+ Many more commands wrap writeTextFile including
+ writeText, writeTextDir,
+ writeScript, and writeScriptBin.
+ These are convenience functions over writeTextFile.
+
+
+
+
+
+ symlinkJoin
+
+
+
+ This can be used to put many derivations into the same directory
+ structure. It works by creating a new derivation and adding symlinks to
+ each of the paths listed. It expects two arguments,
+ name, and paths.
+ name is the name used in the Nix store path for the
+ created derivation. paths is a list of paths that will
+ be symlinked. These paths can be to Nix store derivations or any other
+ subdirectory contained within.
+
+
+
+
+
diff --git a/doc/languages-frameworks/android.section.md b/doc/languages-frameworks/android.section.md
new file mode 100644
index 0000000000000000000000000000000000000000..237f3441874f02d6fb7b2920b0636d1d2dd9407b
--- /dev/null
+++ b/doc/languages-frameworks/android.section.md
@@ -0,0 +1,240 @@
+---
+title: Android
+author: Sander van der Burg
+date: 2018-11-18
+---
+# Android
+
+The Android build environment provides three major features and a number of
+supporting features.
+
+Deploying an Android SDK installation with plugins
+--------------------------------------------------
+The first use case is deploying the SDK with a desired set of plugins or subsets
+of an SDK.
+
+```nix
+with import {};
+
+let
+ androidComposition = androidenv.composeAndroidPackages {
+ toolsVersion = "25.2.5";
+ platformToolsVersion = "27.0.1";
+ buildToolsVersions = [ "27.0.3" ];
+ includeEmulator = false;
+ emulatorVersion = "27.2.0";
+ platformVersions = [ "24" ];
+ includeSources = false;
+ includeDocs = false;
+ includeSystemImages = false;
+ systemImageTypes = [ "default" ];
+ abiVersions = [ "armeabi-v7a" ];
+ lldbVersions = [ "2.0.2558144" ];
+ cmakeVersions = [ "3.6.4111459" ];
+ includeNDK = false;
+ ndkVersion = "16.1.4479499";
+ useGoogleAPIs = false;
+ useGoogleTVAddOns = false;
+ includeExtras = [
+ "extras;google;gcm"
+ ];
+ };
+in
+androidComposition.androidsdk
+```
+
+The above function invocation states that we want an Android SDK with the above
+specified plugin versions. By default, most plugins are disabled. Notable
+exceptions are the tools, platform-tools and build-tools sub packages.
+
+The following parameters are supported:
+
+* `toolsVersion`, specifies the version of the tools package to use
+* `platformsToolsVersion` specifies the version of the `platform-tools` plugin
+* `buildToolsVersion` specifies the versions of the `build-tools` plugins to
+ use.
+* `includeEmulator` specifies whether to deploy the emulator package (`false`
+ by default). When enabled, the version of the emulator to deploy can be
+ specified by setting the `emulatorVersion` parameter.
+* `includeDocs` specifies whether the documentation catalog should be included.
+* `lldbVersions` specifies what LLDB versions should be deployed.
+* `cmakeVersions` specifies which CMake versions should be deployed.
+* `includeNDK` specifies that the Android NDK bundle should be included.
+ Defaults to: `false`.
+* `ndkVersion` specifies the NDK version that we want to use.
+* `includeExtras` is an array of identifier strings referring to arbitrary
+ add-on packages that should be installed.
+* `platformVersions` specifies which platform SDK versions should be included.
+
+For each platform version that has been specified, we can apply the following
+options:
+
+* `includeSystemImages` specifies whether a system image for each platform SDK
+ should be included.
+* `includeSources` specifies whether the sources for each SDK version should be
+ included.
+* `useGoogleAPIs` specifies that for each selected platform version the
+ Google API should be included.
+* `useGoogleTVAddOns` specifies that for each selected platform version the
+ Google TV add-on should be included.
+
+For each requested system image we can specify the following options:
+
+* `systemImageTypes` specifies what kind of system images should be included.
+ Defaults to: `default`.
+* `abiVersions` specifies what kind of ABI version of each system image should
+ be included. Defaults to: `armeabi-v7a`.
+
+Most of the function arguments have reasonable default settings.
+
+When building the above expression with:
+
+```bash
+$ nix-build
+```
+
+The Android SDK gets deployed with all desired plugin versions.
+
+We can also deploy subsets of the Android SDK. For example, to only the the
+`platform-tools` package, you can evaluate the following expression:
+
+```nix
+with import {};
+
+let
+ androidComposition = androidenv.composeAndroidPackages {
+ # ...
+ };
+in
+androidComposition.platform-tools
+```
+
+Using predefine Android package compositions
+--------------------------------------------
+In addition to composing an Android package set manually, it is also possible
+to use a predefined composition that contains all basic packages for a specific
+Android version, such as version 9.0 (API-level 28).
+
+The following Nix expression can be used to deploy the entire SDK with all basic
+plugins:
+
+```nix
+with import {};
+
+androidenv.androidPkgs_9_0.androidsdk
+```
+
+It is also possible to use one plugin only:
+
+```nix
+with import {};
+
+androidenv.androidPkgs_9_0.platform-tools
+```
+
+Building an Android application
+-------------------------------
+In addition to the SDK, it is also possible to build an Ant-based Android
+project and automatically deploy all the Android plugins that a project
+requires.
+
+```nix
+with import {};
+
+androidenv.buildApp {
+ name = "MyAndroidApp";
+ src = ./myappsources;
+ release = true;
+
+ # If release is set to true, you need to specify the following parameters
+ keyStore = ./keystore;
+ keyAlias = "myfirstapp";
+ keyStorePassword = "mykeystore";
+ keyAliasPassword = "myfirstapp";
+
+ # Any Android SDK parameters that install all the relevant plugins that a
+ # build requires
+ platformVersions = [ "24" ];
+
+ # When we include the NDK, then ndk-build is invoked before Ant gets invoked
+ includeNDK = true;
+}
+```
+
+Aside from the app-specific build parameters (`name`, `src`, `release` and
+keystore parameters), the `buildApp {}` function supports all the function
+parameters that the SDK composition function (the function shown in the
+previous section) supports.
+
+This build function is particularly useful when it is desired to use
+[Hydra](http://nixos.org/hydra): the Nix-based continuous integration solution
+to build Android apps. An Android APK gets exposed as a build product and can be
+installed on any Android device with a web browser by navigating to the build
+result page.
+
+Spawning emulator instances
+---------------------------
+For testing purposes, it can also be quite convenient to automatically generate
+scripts that spawn emulator instances with all desired configuration settings.
+
+An emulator spawn script can be configured by invoking the `emulateApp {}`
+function:
+
+```nix
+with import {};
+
+androidenv.emulateApp {
+ name = "emulate-MyAndroidApp";
+ platformVersion = "24";
+ abiVersion = "armeabi-v7a"; # mips, x86 or x86_64
+ systemImageType = "default";
+ useGoogleAPIs = false;
+}
+```
+
+It is also possible to specify an APK to deploy inside the emulator
+and the package and activity names to launch it:
+
+```nix
+with import {};
+
+androidenv.emulateApp {
+ name = "emulate-MyAndroidApp";
+ platformVersion = "24";
+ abiVersion = "armeabi-v7a"; # mips, x86 or x86_64
+ systemImageType = "default";
+ useGoogleAPIs = false;
+ app = ./MyApp.apk;
+ package = "MyApp";
+ activity = "MainActivity";
+}
+```
+
+In addition to prebuilt APKs, you can also bind the APK parameter to a
+`buildApp {}` function invocation shown in the previous example.
+
+Querying the available versions of each plugin
+----------------------------------------------
+When using any of the previously shown functions, it may be a bit inconvenient
+to find out what options are supported, since the Android SDK provides many
+plugins.
+
+A shell script in the `pkgs/development/mobile/androidenv/` sub directory can be used to retrieve all
+possible options:
+
+```bash
+sh ./querypackages.sh packages build-tools
+```
+
+The above command-line instruction queries all build-tools versions in the
+generated `packages.nix` expression.
+
+Updating the generated expressions
+----------------------------------
+Most of the Nix expressions are generated from XML files that the Android
+package manager uses. To update the expressions run the `generate.sh` script
+that is stored in the `pkgs/development/mobile/androidenv/` sub directory:
+
+```bash
+sh ./generate.sh
+```
diff --git a/doc/languages-frameworks/coq.xml b/doc/languages-frameworks/coq.xml
index d5f2574039f22e8b75d607e498c672d8c7dd688b..4314df5c9df29e602d4749c65e4cf2f1340a9d5f 100644
--- a/doc/languages-frameworks/coq.xml
+++ b/doc/languages-frameworks/coq.xml
@@ -11,10 +11,9 @@
- Some libraries require OCaml and sometimes also Camlp5 or findlib. The exact
- versions that were used to build Coq are saved in the
- coq.ocaml and coq.camlp5 and
- coq.findlib attributes.
+ Some extensions (plugins) might require OCaml and sometimes other OCaml
+ packages. The coq.ocamlPackages attribute can be used to
+ depend on the same package set Coq was built against.
diff --git a/doc/languages-frameworks/go.xml b/doc/languages-frameworks/go.xml
index ab4c9f0f7c8857f6d527b2dcbdc0e8e37c678f45..6f6e7925a1b5fe4a4ae717d13de684706ea978ce 100644
--- a/doc/languages-frameworks/go.xml
+++ b/doc/languages-frameworks/go.xml
@@ -3,12 +3,91 @@
xml:id="sec-language-go">
Go
-
- The function buildGoPackage builds standard Go programs.
-
+
+ Go modules
-
- buildGoPackage
+
+ The function buildGoModule builds Go programs managed
+ with Go modules. It builds a
+ Go
+ modules through a two phase build:
+
+
+
+ An intermediate fetcher derivation. This derivation will be used to fetch
+ all of the dependencies of the Go module.
+
+
+
+
+ A final derivation will use the output of the intermediate derivation to
+ build the binaries and produce the final output.
+
+
+
+
+
+
+ buildGoModule
+
+pet = buildGoModule rec {
+ name = "pet-${version}";
+ version = "0.3.4";
+
+ src = fetchFromGitHub {
+ owner = "knqyf263";
+ repo = "pet";
+ rev = "v${version}";
+ sha256 = "0m2fzpqxk7hrbxsgqplkg7h2p7gv6s1miymv3gvw0cz039skag0s";
+ };
+
+ modSha256 = "1879j77k96684wi554rkjxydrj8g3hpp0kvxz03sd8dmwr3lh83j";
+
+ subPackages = [ "." ];
+
+ meta = with lib; {
+ description = "Simple command-line snippet manager, written in Go";
+ homepage = https://github.com/knqyf263/pet;
+ license = licenses.mit;
+ maintainers = with maintainers; [ kalbasit ];
+ platforms = platforms.linux ++ platforms.darwin;
+ };
+}
+
+
+
+
+ is an example expression using
+ buildGoModule, the following arguments are of special significance to the
+ function:
+
+
+
+ modSha256 is the hash of the output of the
+ intermediate fetcher derivation.
+
+
+
+
+ subPackages limits the builder from building child
+ packages that have not been listed. If subPackages is
+ not specified, all child packages will be built.
+
+
+
+
+
+
+
+ Go legacy
+
+
+ The function buildGoPackage builds legacy Go programs,
+ not supporting Go modules.
+
+
+
+ buildGoPackage
deis = buildGoPackage rec {
name = "deis-${version}";
@@ -29,56 +108,56 @@ deis = buildGoPackage rec {
buildFlags = "--tags release";
}
-
-
-
- is an example expression using
- buildGoPackage, the following arguments are of special significance to the
- function:
-
-
-
- goPackagePath specifies the package's canonical Go
- import path.
-
-
-
-
- subPackages limits the builder from building child
- packages that have not been listed. If subPackages is
- not specified, all child packages will be built.
-
-
- In this example only github.com/deis/deis/client will
- be built.
-
-
-
-
- goDeps is where the Go dependencies of a Go program are
- listed as a list of package source identified by Go import path. It could
- be imported as a separate deps.nix file for
- readability. The dependency data structure is described below.
-
-
-
-
- buildFlags is a list of flags passed to the go build
- command.
-
-
-
-
-
-
- The goDeps attribute can be imported from a separate
- nix file that defines which Go libraries are needed and
- should be included in GOPATH for
- buildPhase.
-
-
-
- deps.nix
+
+
+
+ is an example expression using
+ buildGoPackage, the following arguments are of special significance to the
+ function:
+
+
+
+ goPackagePath specifies the package's canonical Go
+ import path.
+
+
+
+
+ subPackages limits the builder from building child
+ packages that have not been listed. If subPackages is
+ not specified, all child packages will be built.
+
+
+ In this example only github.com/deis/deis/client will
+ be built.
+
+
+
+
+ goDeps is where the Go dependencies of a Go program
+ are listed as a list of package source identified by Go import path. It
+ could be imported as a separate deps.nix file for
+ readability. The dependency data structure is described below.
+
+
+
+
+ buildFlags is a list of flags passed to the go build
+ command.
+
+
+
+
+
+
+ The goDeps attribute can be imported from a separate
+ nix file that defines which Go libraries are needed and
+ should be included in GOPATH for
+ buildPhase.
+
+
+
+ deps.nix
[
{
@@ -101,60 +180,62 @@ deis = buildGoPackage rec {
}
]
-
-
-
-
-
-
- goDeps is a list of Go dependencies.
-
-
-
-
- goPackagePath specifies Go package import path.
-
-
-
-
- fetch type that needs to be used to get package source.
- If git is used there should be url,
- rev and sha256 defined next to it.
-
-
-
-
-
-
- To extract dependency information from a Go package in automated way use
- go2nix. It can
- produce complete derivation and goDeps file for Go
- programs.
-
-
-
- buildGoPackage produces
- where
- bin includes program binaries. You can test build a Go
- binary as follows:
+
+
+
+
+
+
+ goDeps is a list of Go dependencies.
+
+
+
+
+ goPackagePath specifies Go package import path.
+
+
+
+
+ fetch type that needs to be used to get package
+ source. If git is used there should be
+ url, rev and
+ sha256 defined next to it.
+
+
+
+
+
+
+ To extract dependency information from a Go package in automated way use
+ go2nix. It can
+ produce complete derivation and goDeps file for Go
+ programs.
+
+
+
+ buildGoPackage produces
+ where
+ bin includes program binaries. You can test build a Go
+ binary as follows:
$ nix-build -A deis.bin
- or build all outputs with:
+ or build all outputs with:
$ nix-build -A deis.all
- bin output will be installed by default with
- nix-env -i or systemPackages.
-
+ bin output will be installed by default with
+ nix-env -i or systemPackages.
+
-
- You may use Go packages installed into the active Nix profiles by adding the
- following to your ~/.bashrc:
+
+ You may use Go packages installed into the active Nix profiles by adding the
+ following to your ~/.bashrc:
for p in $NIX_PROFILES; do
GOPATH="$p/share/go:$GOPATH"
done
-
+
+
diff --git a/doc/languages-frameworks/haskell.section.md b/doc/languages-frameworks/haskell.section.md
index 7677c366191fb54ecfc9146c3a498010ef424b4f..d832716c030821e31a78d7a5d82bc3fdebf82322 100644
--- a/doc/languages-frameworks/haskell.section.md
+++ b/doc/languages-frameworks/haskell.section.md
@@ -55,7 +55,7 @@ package `haskell-pandoc`, for example, installs both a library and an
application. You can install and use Haskell executables just like any other
program in Nixpkgs, but using Haskell libraries for development is a bit
trickier and we'll address that subject in great detail in section [How to
-create a development environment].
+create a development environment](#how-to-create-a-development-environment).
Attribute paths are deterministic inside of Nixpkgs, but the path necessary to
reach Nixpkgs varies from system to system. We dodged that problem by giving
@@ -127,7 +127,7 @@ Also, the attributes `haskell.compiler.ghcXYC` and
A simple development environment consists of a Haskell compiler and one or both
of the tools `cabal-install` and `stack`. We saw in section
-[How to install Haskell packages] how you can install those programs into your
+[How to install Haskell packages](#how-to-install-haskell-packages) how you can install those programs into your
user profile:
```shell
nix-env -f "" -iA haskellPackages.ghc haskellPackages.cabal-install
@@ -162,7 +162,7 @@ nix-shell -p haskell.compiler.ghc784
to bring GHC 7.8.4 into `$PATH`. Alternatively, you can use Stack instead of
`nix-shell` directly to select compiler versions and other build tools
per-project. It uses `nix-shell` under the hood when Nix support is turned on.
-See [How to build a Haskell project using Stack].
+See [How to build a Haskell project using Stack](#how-to-build-a-haskell-project-using-stack).
If you're using `cabal-install`, re-running `cabal configure` inside the spawned
shell switches your build to use that compiler instead. If you're working on
@@ -352,9 +352,9 @@ you want them to come from. Add the following to `configuration.nix`.
```nix
services.hoogle = {
-enable = true;
-packages = (hpkgs: with hpkgs; [text cryptonite]);
-haskellPackages = pkgs.haskellPackages;
+ enable = true;
+ packages = (hpkgs: with hpkgs; [text cryptonite]);
+ haskellPackages = pkgs.haskellPackages;
};
```
@@ -366,7 +366,7 @@ automatically select the right version of GHC and other build tools to build,
test and execute apps in an existing project downloaded from somewhere on the
Internet. Pass the `--nix` flag to any `stack` command to do so, e.g.
```shell
-git clone --recursive http://github.com/yesodweb/wai
+git clone --recursive https://github.com/yesodweb/wai
cd wai
stack --nix build
```
@@ -935,7 +935,7 @@ The implementation can be found in the
[integer-gmp](http://hackage.haskell.org/package/integer-gmp) package.
A potential problem with this is that GMP is licensed under the
-[GNU Lesser General Public License (LGPL)](http://www.gnu.org/copyleft/lesser.html),
+[GNU Lesser General Public License (LGPL)](https://www.gnu.org/copyleft/lesser.html),
a kind of "copyleft" license. According to the terms of the LGPL, paragraph 5,
you may distribute a program that is designed to be compiled and dynamically
linked with the library under the terms of your choice (i.e., commercially) but
diff --git a/doc/languages-frameworks/idris.section.md b/doc/languages-frameworks/idris.section.md
index 005ed3602851ccee3a0dba23da67976335751471..50979d76d98be98951fcee60f74ae0f2e4a52fe2 100644
--- a/doc/languages-frameworks/idris.section.md
+++ b/doc/languages-frameworks/idris.section.md
@@ -1,39 +1,115 @@
-Idris packages
-==============
+# Idris packages
-This directory contains build rules for idris packages. In addition,
-it contains several functions to build and compose those packages.
-Everything is exposed to the user via the `idrisPackages` attribute.
+## Installing Idris
-callPackage
-------------
+The easiest way to get a working idris version is to install the `idris` attribute:
-This is like the normal nixpkgs callPackage function, specialized to
-idris packages.
+```
+$ # On NixOS
+$ nix-env -i nixos.idris
+$ # On non-NixOS
+$ nix-env -i nixpkgs.idris
+```
-builtins
----------
+This however only provides the `prelude` and `base` libraries. To install additional libraries:
-This is a list of all of the libraries that come packaged with Idris
-itself.
+```
+$ nix-env -iE 'pkgs: pkgs.idrisPackages.with-packages (with pkgs.idrisPackages; [ contrib pruviloj ])'
+```
-build-idris-package
---------------------
+To see all available Idris packages:
+```
+$ # On NixOS
+$ nix-env -qaPA nixos.idrisPackages
+$ # On non-NixOS
+$ nix-env -qaPA nixpkgs.idrisPackages
+```
-A function to build an idris package. Its sole argument is a set like
-you might pass to `stdenv.mkDerivation`, except `build-idris-package`
-sets several attributes for you. See `build-idris-package.nix` for
-details.
+Similarly, entering a `nix-shell`:
+```
+$ nix-shell -p 'idrisPackages.with-packages (with idrisPackages; [ contrib pruviloj ])'
+```
-build-builtin-package
-----------------------
+## Starting Idris with library support
-A version of `build-idris-package` specialized to builtin libraries.
-Mostly for internal use.
+To have access to these libraries in idris, call it with an argument `-p ` for each library:
-with-packages
--------------
+```
+$ nix-shell -p 'idrisPackages.with-packages (with idrisPackages; [ contrib pruviloj ])'
+[nix-shell:~]$ idris -p contrib -p pruviloj
+```
-Bundle idris together with a list of packages. Because idris currently
-only supports a single directory in its library path, you must include
-all desired libraries here, including `prelude` and `base`.
\ No newline at end of file
+A listing of all available packages the Idris binary has access to is available via `--listlibs`:
+
+```
+$ idris --listlibs
+00prelude-idx.ibc
+pruviloj
+base
+contrib
+prelude
+00pruviloj-idx.ibc
+00base-idx.ibc
+00contrib-idx.ibc
+```
+
+## Building an Idris project with Nix
+
+As an example of how a Nix expression for an Idris package can be created, here is the one for `idrisPackages.yaml`:
+
+```nix
+{ build-idris-package
+, fetchFromGitHub
+, contrib
+, lightyear
+, lib
+}:
+build-idris-package {
+ name = "yaml";
+ version = "2018-01-25";
+
+ # This is the .ipkg file that should be built, defaults to the package name
+ # In this case it should build `Yaml.ipkg` instead of `yaml.ipkg`
+ # This is only necessary because the yaml packages ipkg file is
+ # different from its package name here.
+ ipkgName = "Yaml";
+ # Idris dependencies to provide for the build
+ idrisDeps = [ contrib lightyear ];
+
+ src = fetchFromGitHub {
+ owner = "Heather";
+ repo = "Idris.Yaml";
+ rev = "5afa51ffc839844862b8316faba3bafa15656db4";
+ sha256 = "1g4pi0swmg214kndj85hj50ccmckni7piprsxfdzdfhg87s0avw7";
+ };
+
+ meta = {
+ description = "Idris YAML lib";
+ homepage = https://github.com/Heather/Idris.Yaml;
+ license = lib.licenses.mit;
+ maintainers = [ lib.maintainers.brainrape ];
+ };
+}
+```
+
+Assuming this file is saved as `yaml.nix`, it's buildable using
+
+```
+$ nix-build -E '(import {}).idrisPackages.callPackage ./yaml.nix {}'
+```
+
+Or it's possible to use
+
+```nix
+with import {};
+
+{
+ yaml = idrisPackages.callPackage ./yaml.nix {};
+}
+```
+
+in another file (say `default.nix`) to be able to build it with
+
+```
+$ nix-build -A yaml
+```
diff --git a/doc/languages-frameworks/index.xml b/doc/languages-frameworks/index.xml
index f22984cb56b0aba028488f843539982ba6bb1d78..4564df98fe99b34187481e98fd441927bb48e4d8 100644
--- a/doc/languages-frameworks/index.xml
+++ b/doc/languages-frameworks/index.xml
@@ -10,15 +10,18 @@
Nixpkgs to easily build packages for other programming languages, such as
Perl or Haskell. These are described in this chapter.
+
+
+
@@ -26,6 +29,7 @@
+
diff --git a/doc/languages-frameworks/ios.section.md b/doc/languages-frameworks/ios.section.md
new file mode 100644
index 0000000000000000000000000000000000000000..6684b809ffe614e1318f235c8c3e0e6de4505152
--- /dev/null
+++ b/doc/languages-frameworks/ios.section.md
@@ -0,0 +1,219 @@
+---
+title: iOS
+author: Sander van der Burg
+date: 2018-11-18
+---
+# iOS
+
+This component is basically a wrapper/workaround that makes it possible to
+expose an Xcode installation as a Nix package by means of symlinking to the
+relevant executables on the host system.
+
+Since Xcode can't be packaged with Nix, nor we can publish it as a Nix package
+(because of its license) this is basically the only integration strategy
+making it possible to do iOS application builds that integrate with other
+components of the Nix ecosystem
+
+The primary objective of this project is to use the Nix expression language to
+specify how iOS apps can be built from source code, and to automatically spawn
+iOS simulator instances for testing.
+
+This component also makes it possible to use [Hydra](http://nixos.org/hydra),
+the Nix-based continuous integration server to regularly build iOS apps and to
+do wireless ad-hoc installations of enterprise IPAs on iOS devices through
+Hydra.
+
+The Xcode build environment implements a number of features.
+
+Deploying a proxy component wrapper exposing Xcode
+--------------------------------------------------
+The first use case is deploying a Nix package that provides symlinks to the Xcode
+installation on the host system. This package can be used as a build input to
+any build function implemented in the Nix expression language that requires
+Xcode.
+
+```nix
+let
+ pkgs = import {};
+
+ xcodeenv = import ./xcodeenv {
+ inherit (pkgs) stdenv;
+ };
+in
+xcodeenv.composeXcodeWrapper {
+ version = "9.2";
+ xcodeBaseDir = "/Applications/Xcode.app";
+}
+```
+
+By deploying the above expression with `nix-build` and inspecting its content
+you will notice that several Xcode-related executables are exposed as a Nix
+package:
+
+```bash
+$ ls result/bin
+lrwxr-xr-x 1 sander staff 94 1 jan 1970 Simulator -> /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app/Contents/MacOS/Simulator
+lrwxr-xr-x 1 sander staff 17 1 jan 1970 codesign -> /usr/bin/codesign
+lrwxr-xr-x 1 sander staff 17 1 jan 1970 security -> /usr/bin/security
+lrwxr-xr-x 1 sander staff 21 1 jan 1970 xcode-select -> /usr/bin/xcode-select
+lrwxr-xr-x 1 sander staff 61 1 jan 1970 xcodebuild -> /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild
+lrwxr-xr-x 1 sander staff 14 1 jan 1970 xcrun -> /usr/bin/xcrun
+```
+
+Building an iOS application
+---------------------------
+We can build an iOS app executable for the simulator, or an IPA/xcarchive file
+for release purposes, e.g. ad-hoc, enterprise or store installations, by
+executing the `xcodeenv.buildApp {}` function:
+
+```nix
+let
+ pkgs = import {};
+
+ xcodeenv = import ./xcodeenv {
+ inherit (pkgs) stdenv;
+ };
+in
+xcodeenv.buildApp {
+ name = "MyApp";
+ src = ./myappsources;
+ sdkVersion = "11.2";
+
+ target = null; # Corresponds to the name of the app by default
+ configuration = null; # Release for release builds, Debug for debug builds
+ scheme = null; # -scheme will correspond to the app name by default
+ sdk = null; # null will set it to 'iphonesimulator` for simulator builds or `iphoneos` to real builds
+ xcodeFlags = "";
+
+ release = true;
+ certificateFile = ./mycertificate.p12;
+ certificatePassword = "secret";
+ provisioningProfile = ./myprovisioning.profile;
+ signMethod = "ad-hoc"; # 'enterprise' or 'store'
+ generateIPA = true;
+ generateXCArchive = false;
+
+ enableWirelessDistribution = true;
+ installURL = "/installipa.php";
+ bundleId = "mycompany.myapp";
+ appVersion = "1.0";
+
+ # Supports all xcodewrapper parameters as well
+ xcodeBaseDir = "/Applications/Xcode.app";
+}
+```
+
+The above function takes a variety of parameters:
+* The `name` and `src` parameters are mandatory and specify the name of the app
+ and the location where the source code resides
+* `sdkVersion` specifies which version of the iOS SDK to use.
+
+It also possile to adjust the `xcodebuild` parameters. This is only needed in
+rare circumstances. In most cases the default values should suffice:
+
+* Specifies which `xcodebuild` target to build. By default it takes the target
+ that has the same name as the app.
+* The `configuration` parameter can be overridden if desired. By default, it
+ will do a debug build for the simulator and a release build for real devices.
+* The `scheme` parameter specifies which `-scheme` parameter to propagate to
+ `xcodebuild`. By default, it corresponds to the app name.
+* The `sdk` parameter specifies which SDK to use. By default, it picks
+ `iphonesimulator` for simulator builds and `iphoneos` for release builds.
+* The `xcodeFlags` parameter specifies arbitrary command line parameters that
+ should be propagated to `xcodebuild`.
+
+By default, builds are carried out for the iOS simulator. To do release builds
+(builds for real iOS devices), you must set the `release` parameter to `true`.
+In addition, you need to set the following parameters:
+
+* `certificateFile` refers to a P12 certificate file.
+* `certificatePassword` specifies the password of the P12 certificate.
+* `provisioningProfile` refers to the provision profile needed to sign the app
+* `signMethod` should refer to `ad-hoc` for signing the app with an ad-hoc
+ certificate, `enterprise` for enterprise certificates and `app-store` for App
+ store certificates.
+* `generateIPA` specifies that we want to produce an IPA file (this is probably
+ what you want)
+* `generateXCArchive` specifies thet we want to produce an xcarchive file.
+
+When building IPA files on Hydra and when it is desired to allow iOS devices to
+install IPAs by browsing to the Hydra build products page, you can enable the
+`enableWirelessDistribution` parameter.
+
+When enabled, you need to configure the following options:
+
+* The `installURL` parameter refers to the URL of a PHP script that composes the
+ `itms-services://` URL allowing iOS devices to install the IPA file.
+* `bundleId` refers to the bundle ID value of the app
+* `appVersion` refers to the app's version number
+
+To use wireless adhoc distributions, you must also install the corresponding
+PHP script on a web server (see section: 'Installing the PHP script for wireless
+ad hoc installations from Hydra' for more information).
+
+In addition to the build parameters, you can also specify any parameters that
+the `xcodeenv.composeXcodeWrapper {}` function takes. For example, the
+`xcodeBaseDir` parameter can be overridden to refer to a different Xcode
+version.
+
+Spawning simulator instances
+----------------------------
+In addition to building iOS apps, we can also automatically spawn simulator
+instances:
+
+```nix
+let
+ pkgs = import {};
+
+ xcodeenv = import ./xcodeenv {
+ inherit (pkgs) stdenv;
+ };
+in
+xcode.simulateApp {
+ name = "simulate";
+
+ # Supports all xcodewrapper parameters as well
+ xcodeBaseDir = "/Applications/Xcode.app";
+}
+```
+
+The above expression produces a script that starts the simulator from the
+provided Xcode installation. The script can be started as follows:
+
+```bash
+./result/bin/run-test-simulator
+```
+
+By default, the script will show an overview of UDID for all available simulator
+instances and asks you to pick one. You can also provide a UDID as a
+command-line parameter to launch an instance automatically:
+
+```bash
+./result/bin/run-test-simulator 5C93129D-CF39-4B1A-955F-15180C3BD4B8
+```
+
+You can also extend the simulator script to automatically deploy and launch an
+app in the requested simulator instance:
+
+```nix
+let
+ pkgs = import {};
+
+ xcodeenv = import ./xcodeenv {
+ inherit (pkgs) stdenv;
+ };
+in
+xcode.simulateApp {
+ name = "simulate";
+ bundleId = "mycompany.myapp";
+ app = xcode.buildApp {
+ # ...
+ };
+
+ # Supports all xcodewrapper parameters as well
+ xcodeBaseDir = "/Applications/Xcode.app";
+}
+```
+
+By providing the result of an `xcode.buildApp {}` function and configuring the
+app bundle id, the app gets deployed automatically and started.
diff --git a/doc/languages-frameworks/java.xml b/doc/languages-frameworks/java.xml
index 1acea6a7547a8fa357acbd4738adf5e3c45b3f8a..667a795a8d3ac50a558c4a4d01cee7d96f4de47a 100644
--- a/doc/languages-frameworks/java.xml
+++ b/doc/languages-frameworks/java.xml
@@ -16,18 +16,17 @@ stdenv.mkDerivation {
}
Note that jdk is an alias for the OpenJDK (self-built
- where available, or pre-built via Zulu).
- Platforms with OpenJDK not (yet) in Nixpkgs (Aarch32,
- Aarch64) point to the (unfree)
- oraclejdk.
-
+ where available, or pre-built via Zulu). Platforms with OpenJDK not (yet) in
+ Nixpkgs (Aarch32, Aarch64) point to the
+ (unfree) oraclejdk.
+
JAR files that are intended to be used by other packages should be installed
- in $out/share/java. JDKs have a stdenv setup hook
- that add any JARs in the share/java directories of the
- build inputs to the CLASSPATH environment variable. For
- instance, if the package libfoo installs a JAR named
+ in $out/share/java. JDKs have a stdenv setup hook that
+ add any JARs in the share/java directories of the build
+ inputs to the CLASSPATH environment variable. For instance, if
+ the package libfoo installs a JAR named
foo.jar in its share/java
directory, and another package declares the attribute
@@ -61,18 +60,17 @@ installPhase =
${jre}/bin/java instead of
${jdk}/bin/java, you prevent your package from depending
on the JDK at runtime.
-
+
-
+
Note all JDKs passthru home, so if your application
requires environment variables like JAVA_HOME being set, that
can be done in a generic fashion with the --set argument
of makeWrapper:
-
--set JAVA_HOME ${jdk.home}
-
+
It is possible to use a different Java compiler than javac
diff --git a/doc/languages-frameworks/node.section.md b/doc/languages-frameworks/node.section.md
index 17a203ed12befb2f34a70b1b2be1aa6f9a736339..c6dce04c7b8b00409e191b16b04c6cd679ef16d7 100644
--- a/doc/languages-frameworks/node.section.md
+++ b/doc/languages-frameworks/node.section.md
@@ -14,7 +14,7 @@ project.
The package set also provides support for multiple Node.js versions. The policy
is that a new package should be added to the collection for the latest stable LTS
-release (which is currently 6.x), unless there is an explicit reason to support
+release (which is currently 10.x), unless there is an explicit reason to support
a different release.
If your package uses native addons, you need to examine what kind of native
@@ -26,7 +26,7 @@ build system it uses. Here are some examples:
After you have identified the correct system, you need to override your package
expression while adding in build system as a build input. For example, `dat`
-requires `node-gyp-build`, so we override its expression in `default-v6.nix`:
+requires `node-gyp-build`, so we override its expression in `default-v10.nix`:
```nix
dat = nodePackages.dat.override (oldAttrs: {
@@ -36,14 +36,14 @@ dat = nodePackages.dat.override (oldAttrs: {
To add a package from NPM to nixpkgs:
- 1. Modify `pkgs/development/node-packages/node-packages-v6.json` to add, update
- or remove package entries. (Or `pkgs/development/node-packages/node-packages-v4.json`
- for packages depending on Node.js 4.x)
+ 1. Modify `pkgs/development/node-packages/node-packages-v10.json` to add, update
+ or remove package entries. (Or `pkgs/development/node-packages/node-packages-v8.json`
+ for packages depending on Node.js 8.x)
2. Run the script: `(cd pkgs/development/node-packages && ./generate.sh)`.
3. Build your new package to test your changes:
`cd /path/to/nixpkgs && nix-build -A nodePackages.`.
- To build against a specific Node.js version (e.g. 4.x):
- `nix-build -A nodePackages_4_x.`
+ To build against a specific Node.js version (e.g. 10.x):
+ `nix-build -A nodePackages_10_x.`
4. Add and commit all modified and generated files.
For more information about the generation process, consult the
diff --git a/doc/languages-frameworks/ocaml.xml b/doc/languages-frameworks/ocaml.xml
new file mode 100644
index 0000000000000000000000000000000000000000..0deadf2edd0367a57c1613d644f618d60163274f
--- /dev/null
+++ b/doc/languages-frameworks/ocaml.xml
@@ -0,0 +1,97 @@
+
+ OCaml
+
+
+ OCaml libraries should be installed in
+ $(out)/lib/ocaml/${ocaml.version}/site-lib/. Such
+ directories are automatically added to the $OCAMLPATH
+ environment variable when building another package that depends on them or
+ when opening a nix-shell.
+
+
+
+ Given that most of the OCaml ecosystem is now built with dune, nixpkgs
+ includes a convenience build support function called
+ buildDunePackage that will build an OCaml package using
+ dune, OCaml and findlib and any additional dependencies provided as
+ buildInputs or propagatedBuildInputs.
+
+
+
+ Here is a simple package example. It defines an (optional) attribute
+ minimumOCamlVersion that will be used to throw a
+ descriptive evaluation error if building with an older OCaml is attempted. It
+ uses the fetchFromGitHub fetcher to get its source. It
+ sets the doCheck (optional) attribute to
+ true which means that tests will be run with dune
+ runtest -p angstrom after the build (dune build -p
+ angstrom) is complete. It uses alcotest as a
+ build input (because it is needed to run the tests) and
+ bigstringaf and result as propagated
+ build inputs (thus they will also be available to libraries depending on this
+ library). The library will be installed using the
+ angstrom.install file that dune generates.
+
+
+
+{ stdenv, fetchFromGitHub, buildDunePackage, alcotest, result, bigstringaf }:
+
+buildDunePackage rec {
+ pname = "angstrom";
+ version = "0.10.0";
+
+ minimumOCamlVersion = "4.03";
+
+ src = fetchFromGitHub {
+ owner = "inhabitedtype";
+ repo = pname;
+ rev = version;
+ sha256 = "0lh6024yf9ds0nh9i93r9m6p5psi8nvrqxl5x7jwl13zb0r9xfpw";
+ };
+
+ buildInputs = [ alcotest ];
+ propagatedBuildInputs = [ bigstringaf result ];
+ doCheck = true;
+
+ meta = {
+ homepage = https://github.com/inhabitedtype/angstrom;
+ description = "OCaml parser combinators built for speed and memory efficiency";
+ license = stdenv.lib.licenses.bsd3;
+ maintainers = with stdenv.lib.maintainers; [ sternenseemann ];
+ };
+}
+
+
+
+ Here is a second example, this time using a source archive generated with
+ dune-release. It is a good idea to use this archive when
+ it is available as it will usually contain substituted variables such as a
+ %%VERSION%% field. This library does not depend on any
+ other OCaml library and no tests are run after building it.
+
+
+
+{ stdenv, fetchurl, buildDunePackage }:
+
+buildDunePackage rec {
+ pname = "wtf8";
+ version = "1.0.1";
+
+ minimumOCamlVersion = "4.01";
+
+ src = fetchurl {
+ url = "https://github.com/flowtype/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
+ sha256 = "1msg3vycd3k8qqj61sc23qks541cxpb97vrnrvrhjnqxsqnh6ygq";
+ };
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/flowtype/ocaml-wtf8;
+ description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates.";
+ license = licenses.mit;
+ maintainers = [ maintainers.eqyiel ];
+ };
+}
+
+
diff --git a/doc/languages-frameworks/python.section.md b/doc/languages-frameworks/python.section.md
index 93eb5af0f2cc08d19f87651f33a33381d8502d1e..b72616a75658a3513f026c9211626e946085adec 100644
--- a/doc/languages-frameworks/python.section.md
+++ b/doc/languages-frameworks/python.section.md
@@ -186,25 +186,24 @@ building Python libraries is `buildPythonPackage`. Let's see how we can build th
`toolz` package.
```nix
-{ # ...
+{ lib, buildPythonPackage, fetchPypi }:
- toolz = buildPythonPackage rec {
- pname = "toolz";
- version = "0.7.4";
+buildPythonPackage rec {
+ pname = "toolz";
+ version = "0.7.4";
- src = fetchPypi {
- inherit pname version;
- sha256 = "43c2c9e5e7a16b6c88ba3088a9bfc82f7db8e13378be7c78d6c14a5f8ed05afd";
- };
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "43c2c9e5e7a16b6c88ba3088a9bfc82f7db8e13378be7c78d6c14a5f8ed05afd";
+ };
- doCheck = false;
+ doCheck = false;
- meta = {
- homepage = "https://github.com/pytoolz/toolz/";
- description = "List processing tools and functional utilities";
- license = licenses.bsd3;
- maintainers = with maintainers; [ fridh ];
- };
+ meta = with lib; {
+ homepage = https://github.com/pytoolz/toolz;
+ description = "List processing tools and functional utilities";
+ license = licenses.bsd3;
+ maintainers = with maintainers; [ fridh ];
};
}
```
@@ -267,43 +266,43 @@ that we introduced with the `let` expression.
#### Handling dependencies
-Our example, `toolz`, does not have any dependencies on other Python
-packages or system libraries. According to the manual, `buildPythonPackage`
-uses the arguments `buildInputs` and `propagatedBuildInputs` to specify dependencies. If something is
-exclusively a build-time dependency, then the dependency should be included as a
-`buildInput`, but if it is (also) a runtime dependency, then it should be added
-to `propagatedBuildInputs`. Test dependencies are considered build-time dependencies.
+Our example, `toolz`, does not have any dependencies on other Python packages or
+system libraries. According to the manual, `buildPythonPackage` uses the
+arguments `buildInputs` and `propagatedBuildInputs` to specify dependencies. If
+something is exclusively a build-time dependency, then the dependency should be
+included as a `buildInput`, but if it is (also) a runtime dependency, then it
+should be added to `propagatedBuildInputs`. Test dependencies are considered
+build-time dependencies and passed to `checkInputs`.
The following example shows which arguments are given to `buildPythonPackage` in
order to build [`datashape`](https://github.com/blaze/datashape).
```nix
-{ # ...
+{ lib, buildPythonPackage, fetchPypi, numpy, multipledispatch, dateutil, pytest }:
- datashape = buildPythonPackage rec {
- pname = "datashape";
- version = "0.4.7";
+buildPythonPackage rec {
+ pname = "datashape";
+ version = "0.4.7";
- src = fetchPypi {
- inherit pname version;
- sha256 = "14b2ef766d4c9652ab813182e866f493475e65e558bed0822e38bf07bba1a278";
- };
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "14b2ef766d4c9652ab813182e866f493475e65e558bed0822e38bf07bba1a278";
+ };
- checkInputs = with self; [ pytest ];
- propagatedBuildInputs = with self; [ numpy multipledispatch dateutil ];
+ checkInputs = [ pytest ];
+ propagatedBuildInputs = [ numpy multipledispatch dateutil ];
- meta = {
- homepage = https://github.com/ContinuumIO/datashape;
- description = "A data description language";
- license = licenses.bsd2;
- maintainers = with maintainers; [ fridh ];
- };
+ meta = with lib; {
+ homepage = https://github.com/ContinuumIO/datashape;
+ description = "A data description language";
+ license = licenses.bsd2;
+ maintainers = with maintainers; [ fridh ];
};
}
```
We can see several runtime dependencies, `numpy`, `multipledispatch`, and
-`dateutil`. Furthermore, we have one `buildInput`, i.e. `pytest`. `pytest` is a
+`dateutil`. Furthermore, we have one `checkInputs`, i.e. `pytest`. `pytest` is a
test runner and is only used during the `checkPhase` and is therefore not added
to `propagatedBuildInputs`.
@@ -313,25 +312,24 @@ Python bindings to `libxml2` and `libxslt`. These libraries are only required
when building the bindings and are therefore added as `buildInputs`.
```nix
-{ # ...
+{ lib, pkgs, buildPythonPackage, fetchPypi }:
- lxml = buildPythonPackage rec {
- pname = "lxml";
- version = "3.4.4";
+buildPythonPackage rec {
+ pname = "lxml";
+ version = "3.4.4";
- src = fetchPypi {
- inherit pname version;
- sha256 = "16a0fa97hym9ysdk3rmqz32xdjqmy4w34ld3rm3jf5viqjx65lxk";
- };
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "16a0fa97hym9ysdk3rmqz32xdjqmy4w34ld3rm3jf5viqjx65lxk";
+ };
- buildInputs = with self; [ pkgs.libxml2 pkgs.libxslt ];
+ buildInputs = [ pkgs.libxml2 pkgs.libxslt ];
- meta = {
- description = "Pythonic binding for the libxml2 and libxslt libraries";
- homepage = https://lxml.de;
- license = licenses.bsd3;
- maintainers = with maintainers; [ sjourdois ];
- };
+ meta = with lib; {
+ description = "Pythonic binding for the libxml2 and libxslt libraries";
+ homepage = https://lxml.de;
+ license = licenses.bsd3;
+ maintainers = with maintainers; [ sjourdois ];
};
}
```
@@ -347,35 +345,34 @@ find each of them in a different folder, and therefore we have to set `LDFLAGS`
and `CFLAGS`.
```nix
-{ # ...
+{ lib, pkgs, buildPythonPackage, fetchPypi, numpy, scipy }:
- pyfftw = buildPythonPackage rec {
- pname = "pyFFTW";
- version = "0.9.2";
+buildPythonPackage rec {
+ pname = "pyFFTW";
+ version = "0.9.2";
- src = fetchPypi {
- inherit pname version;
- sha256 = "f6bbb6afa93085409ab24885a1a3cdb8909f095a142f4d49e346f2bd1b789074";
- };
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "f6bbb6afa93085409ab24885a1a3cdb8909f095a142f4d49e346f2bd1b789074";
+ };
- buildInputs = [ pkgs.fftw pkgs.fftwFloat pkgs.fftwLongDouble];
+ buildInputs = [ pkgs.fftw pkgs.fftwFloat pkgs.fftwLongDouble];
- propagatedBuildInputs = with self; [ numpy scipy ];
+ propagatedBuildInputs = [ numpy scipy ];
- # Tests cannot import pyfftw. pyfftw works fine though.
- doCheck = false;
+ # Tests cannot import pyfftw. pyfftw works fine though.
+ doCheck = false;
- preConfigure = ''
- export LDFLAGS="-L${pkgs.fftw.dev}/lib -L${pkgs.fftwFloat.out}/lib -L${pkgs.fftwLongDouble.out}/lib"
- export CFLAGS="-I${pkgs.fftw.dev}/include -I${pkgs.fftwFloat.dev}/include -I${pkgs.fftwLongDouble.dev}/include"
- '';
+ preConfigure = ''
+ export LDFLAGS="-L${pkgs.fftw.dev}/lib -L${pkgs.fftwFloat.out}/lib -L${pkgs.fftwLongDouble.out}/lib"
+ export CFLAGS="-I${pkgs.fftw.dev}/include -I${pkgs.fftwFloat.dev}/include -I${pkgs.fftwLongDouble.dev}/include"
+ '';
- meta = {
- description = "A pythonic wrapper around FFTW, the FFT library, presenting a unified interface for all the supported transforms";
- homepage = http://hgomersall.github.com/pyFFTW/;
- license = with licenses; [ bsd2 bsd3 ];
- maintainers = with maintainers; [ fridh ];
- };
+ meta = with lib; {
+ description = "A pythonic wrapper around FFTW, the FFT library, presenting a unified interface for all the supported transforms";
+ homepage = http://hgomersall.github.com/pyFFTW;
+ license = with licenses; [ bsd2 bsd3 ];
+ maintainers = with maintainers; [ fridh ];
};
}
```
@@ -403,7 +400,7 @@ Indeed, we can just add any package we like to have in our environment to `propa
```nix
with import {};
-with pkgs.python35Packages;
+with python35Packages;
buildPythonPackage rec {
name = "mypackage";
@@ -436,7 +433,7 @@ Let's split the package definition from the environment definition.
We first create a function that builds `toolz` in `~/path/to/toolz/release.nix`
```nix
-{ lib, pkgs, buildPythonPackage }:
+{ lib, buildPythonPackage }:
buildPythonPackage rec {
pname = "toolz";
@@ -448,7 +445,7 @@ buildPythonPackage rec {
};
meta = with lib; {
- homepage = "http://github.com/pytoolz/toolz/";
+ homepage = "https://github.com/pytoolz/toolz/";
description = "List processing tools and functional utilities";
license = licenses.bsd3;
maintainers = with maintainers; [ fridh ];
@@ -456,18 +453,17 @@ buildPythonPackage rec {
}
```
-It takes two arguments, `pkgs` and `buildPythonPackage`.
+It takes an argument `buildPythonPackage`.
We now call this function using `callPackage` in the definition of our environment
```nix
with import {};
( let
- toolz = pkgs.callPackage /path/to/toolz/release.nix {
- pkgs = pkgs;
- buildPythonPackage = pkgs.python35Packages.buildPythonPackage;
+ toolz = callPackage /path/to/toolz/release.nix {
+ buildPythonPackage = python35Packages.buildPythonPackage;
};
- in pkgs.python35.withPackages (ps: [ ps.numpy toolz ])
+ in python35.withPackages (ps: [ ps.numpy toolz ])
).env
```
@@ -478,18 +474,18 @@ don't explicitly define which `python` derivation should be used. In the above
example we use `buildPythonPackage` that is part of the set `python35Packages`,
and in this case the `python35` interpreter is automatically used.
-
-
## Reference
### Interpreters
-Versions 2.7, 3.4, 3.5, 3.6 and 3.7 of the CPython interpreter are available as
-respectively `python27`, `python34`, `python35` and `python36`. The PyPy interpreter
-is available as `pypy`. The aliases `python2` and `python3` correspond to respectively `python27` and
-`python35`. The default interpreter, `python`, maps to `python2`.
-The Nix expressions for the interpreters can be found in
-`pkgs/development/interpreters/python`.
+Versions 2.7, 3.5, 3.6 and 3.7 of the CPython interpreter are available as
+respectively `python27`, `python35`, `python36` and `python37`. The aliases
+`python2` and `python3` correspond to respectively `python27` and
+`python37`. The default interpreter, `python`, maps to `python2`. The PyPy
+interpreters compatible with Python 2.7 and 3 are available as `pypy27` and
+`pypy3`, with aliases `pypy2` mapping to `pypy27` and `pypy` mapping to
+`pypy2`. The Nix expressions for the interpreters can be
+found in `pkgs/development/interpreters/python`.
All packages depending on any Python interpreter get appended
`out/{python.sitePackages}` to `$PYTHONPATH` if such directory
@@ -508,13 +504,13 @@ Each interpreter has the following attributes:
- `buildEnv`. Function to build python interpreter environments with extra packages bundled together. See section *python.buildEnv function* for usage and documentation.
- `withPackages`. Simpler interface to `buildEnv`. See section *python.withPackages function* for usage and documentation.
- `sitePackages`. Alias for `lib/${libPrefix}/site-packages`.
-- `executable`. Name of the interpreter executable, e.g. `python3.4`.
+- `executable`. Name of the interpreter executable, e.g. `python3.7`.
- `pkgs`. Set of Python packages for that specific interpreter. The package set can be modified by overriding the interpreter and passing `packageOverrides`.
### Building packages and applications
Python libraries and applications that use `setuptools` or
-`distutils` are typically build with respectively the `buildPythonPackage` and
+`distutils` are typically built with respectively the `buildPythonPackage` and
`buildPythonApplication` functions. These two functions also support installing a `wheel`.
All Python packages reside in `pkgs/top-level/python-packages.nix` and all
@@ -530,7 +526,6 @@ attribute set is created for each available Python interpreter. The available
sets are
* `pkgs.python27Packages`
-* `pkgs.python34Packages`
* `pkgs.python35Packages`
* `pkgs.python36Packages`
* `pkgs.python37Packages`
@@ -539,7 +534,7 @@ sets are
and the aliases
* `pkgs.python2Packages` pointing to `pkgs.python27Packages`
-* `pkgs.python3Packages` pointing to `pkgs.python36Packages`
+* `pkgs.python3Packages` pointing to `pkgs.python37Packages`
* `pkgs.pythonPackages` pointing to `pkgs.python2Packages`
#### `buildPythonPackage` function
@@ -549,31 +544,31 @@ The `buildPythonPackage` function is implemented in
The following is an example:
```nix
+{ lib, buildPythonPackage, fetchPypi, hypothesis, setuptools_scm, attrs, py, setuptools, six, pluggy }:
buildPythonPackage rec {
- version = "3.3.1";
pname = "pytest";
-
- preCheck = ''
- # don't test bash builtins
- rm testing/test_argcomplete.py
- '';
+ version = "3.3.1";
src = fetchPypi {
inherit pname version;
sha256 = "cf8436dc59d8695346fcd3ab296de46425ecab00d64096cebe79fb51ecb2eb93";
};
+ postPatch = ''
+ # don't test bash builtins
+ rm testing/test_argcomplete.py
+ '';
+
checkInputs = [ hypothesis ];
- buildInputs = [ setuptools_scm ];
+ nativeBuildInputs = [ setuptools_scm ];
propagatedBuildInputs = [ attrs py setuptools six pluggy ];
- meta = with stdenv.lib; {
+ meta = with lib; {
maintainers = with maintainers; [ domenkozar lovek323 madjar lsix ];
description = "Framework for writing tests";
};
}
-
```
The `buildPythonPackage` mainly does four things:
@@ -586,11 +581,6 @@ The `buildPythonPackage` mainly does four things:
environment variable and add dependent libraries to script's `sys.path`.
* In the `installCheck` phase, `${python.interpreter} setup.py test` is ran.
-As in Perl, dependencies on other Python packages can be specified in the
-`buildInputs` and `propagatedBuildInputs` attributes. If something is
-exclusively a build-time dependency, use `buildInputs`; if it is (also) a runtime
-dependency, use `propagatedBuildInputs`.
-
By default tests are run because `doCheck = true`. Test dependencies, like
e.g. the test runner, should be added to `checkInputs`.
@@ -602,11 +592,10 @@ as the interpreter unless overridden otherwise.
All parameters from `stdenv.mkDerivation` function are still supported. The following are specific to `buildPythonPackage`:
* `catchConflicts ? true`: If `true`, abort package build if a package name appears more than once in dependency tree. Default is `true`.
-* `checkInputs ? []`: Dependencies needed for running the `checkPhase`. These are added to `buildInputs` when `doCheck = true`.
* `disabled` ? false: If `true`, package is not build for the particular Python interpreter version.
* `dontWrapPythonPrograms ? false`: Skip wrapping of python programs.
-* `installFlags ? []`: A list of strings. Arguments to be passed to `pip install`. To pass options to `python setup.py install`, use `--install-option`. E.g., `installFlags=["--install-option='--cpp_implementation'"].
-* `format ? "setuptools"`: Format of the source. Valid options are `"setuptools"`, `"flit"`, `"wheel"`, and `"other"`. `"setuptools"` is for when the source has a `setup.py` and `setuptools` is used to build a wheel, `flit`, in case `flit` should be used to build a wheel, and `wheel` in case a wheel is provided. Use `other` when a custom `buildPhase` and/or `installPhase` is needed.
+* `installFlags ? []`: A list of strings. Arguments to be passed to `pip install`. To pass options to `python setup.py install`, use `--install-option`. E.g., `installFlags=["--install-option='--cpp_implementation'"]`.
+* `format ? "setuptools"`: Format of the source. Valid options are `"setuptools"`, `"pyproject"`, `"flit"`, `"wheel"`, and `"other"`. `"setuptools"` is for when the source has a `setup.py` and `setuptools` is used to build a wheel, `flit`, in case `flit` should be used to build a wheel, and `wheel` in case a wheel is provided. Use `other` when a custom `buildPhase` and/or `installPhase` is needed.
* `makeWrapperArgs ? []`: A list of strings. Arguments to be passed to `makeWrapper`, which wraps generated binaries. By default, the arguments to `makeWrapper` set `PATH` and `PYTHONPATH` environment variables before calling the binary. Additional arguments here can allow a developer to set environment variables which will be available when the binary is run. For example, `makeWrapperArgs = ["--set FOO BAR" "--set BAZ QUX"]`.
* `namePrefix`: Prepends text to `${name}` parameter. In case of libraries, this defaults to `"python3.5-"` for Python 3.5, etc., and in case of applications to `""`.
* `pythonPath ? []`: List of packages to be added into `$PYTHONPATH`. Packages in `pythonPath` are not propagated (contrary to `propagatedBuildInputs`).
@@ -615,6 +604,14 @@ All parameters from `stdenv.mkDerivation` function are still supported. The foll
* `removeBinByteCode ? true`: Remove bytecode from `/bin`. Bytecode is only created when the filenames end with `.py`.
* `setupPyBuildFlags ? []`: List of flags passed to `setup.py build_ext` command.
+The `stdenv.mkDerivation` function accepts various parameters for describing build inputs (see "Specifying dependencies"). The following are of special
+interest for Python packages, either because these are primarily used, or because their behaviour is different:
+
+* `nativeBuildInputs ? []`: Build-time only dependencies. Typically executables as well as the items listed in `setup_requires`.
+* `buildInputs ? []`: Build and/or run-time dependencies that need to be be compiled for the host machine. Typically non-Python libraries which are being linked.
+* `checkInputs ? []`: Dependencies needed for running the `checkPhase`. These are added to `nativeBuildInputs` when `doCheck = true`. Items listed in `tests_require` go here.
+* `propagatedBuildInputs ? []`: Aside from propagating dependencies, `buildPythonPackage` also injects code into and wraps executables with the paths included in this list. Items listed in `install_requires` go here.
+
##### Overriding Python packages
The `buildPythonPackage` function has a `overridePythonAttrs` method that
@@ -645,9 +642,48 @@ in python.withPackages(ps: [ps.blaze])).env
#### `buildPythonApplication` function
-The `buildPythonApplication` function is practically the same as `buildPythonPackage`.
-The difference is that `buildPythonPackage` by default prefixes the names of the packages with the version of the interpreter.
-Because this is irrelevant for applications, the prefix is omitted.
+The `buildPythonApplication` function is practically the same as
+`buildPythonPackage`. The main purpose of this function is to build a Python
+package where one is interested only in the executables, and not importable
+modules. For that reason, when adding this package to a `python.buildEnv`, the
+modules won't be made available.
+
+Another difference is that `buildPythonPackage` by default prefixes the names of
+the packages with the version of the interpreter. Because this is irrelevant for
+applications, the prefix is omitted.
+
+When packaging a python application with `buildPythonApplication`, it should be
+called with `callPackage` and passed `python` or `pythonPackages` (possibly
+specifying an interpreter version), like this:
+
+```nix
+{ lib, python3Packages }:
+
+python3Packages.buildPythonApplication rec {
+ pname = "luigi";
+ version = "2.7.9";
+
+ src = python3Packages.fetchPypi {
+ inherit pname version;
+ sha256 = "035w8gqql36zlan0xjrzz9j4lh9hs0qrsgnbyw07qs7lnkvbdv9x";
+ };
+
+ propagatedBuildInputs = with python3Packages; [ tornado_4 python-daemon ];
+
+ meta = with lib; {
+ ...
+ };
+}
+```
+
+This is then added to `all-packages.nix` just as any other application would be.
+
+```nix
+luigi = callPackage ../applications/networking/cluster/luigi { };
+```
+
+Since the package is an application, a consumer doesn't need to care about
+python versions or modules, which is why they don't go in `pythonPackages`.
#### `toPythonApplication` function
@@ -688,7 +724,7 @@ Saving the following as `default.nix`
with import {};
python.buildEnv.override {
- extraLibs = [ pkgs.pythonPackages.pyramid ];
+ extraLibs = [ pythonPackages.pyramid ];
ignoreCollisions = true;
}
```
@@ -770,11 +806,12 @@ Given a `default.nix`:
```nix
with import {};
-buildPythonPackage { name = "myproject";
-
-buildInputs = with pkgs.pythonPackages; [ pyramid ];
+pythonPackages.buildPythonPackage {
+ name = "myproject";
+ buildInputs = with pythonPackages; [ pyramid ];
-src = ./.; }
+ src = ./.;
+}
```
Running `nix-shell` with no arguments should give you
@@ -799,7 +836,7 @@ community to help save time. No tool is preferred at the moment.
### Deterministic builds
-Python 2.7, 3.5 and 3.6 are now built deterministically and 3.4 mostly.
+The Python interpreters are now built deterministically.
Minor modifications had to be made to the interpreters in order to generate
deterministic bytecode. This has security implications and is relevant for
those using Python in a `nix-shell`.
@@ -835,7 +872,6 @@ example of such a situation is when `py.test` is used.
'';
}
```
-- Unicode issues can typically be fixed by including `glibcLocales` in `buildInputs` and exporting `LC_ALL=en_US.utf-8`.
- Tests that attempt to access `$HOME` can be fixed by using the following work-around before running tests (e.g. `preCheck`): `export HOME=$(mktemp -d)`
## FAQ
@@ -961,10 +997,13 @@ Create this `default.nix` file, together with a `requirements.txt` and simply ex
```nix
with import {};
-with pkgs.python27Packages;
+with python27Packages;
stdenv.mkDerivation {
name = "impurePythonEnv";
+
+ src = null;
+
buildInputs = [
# these packages are required for virtualenv and pip to work:
#
@@ -984,14 +1023,15 @@ stdenv.mkDerivation {
libxslt
libzip
stdenv
- zlib ];
- src = null;
+ zlib
+ ];
+
shellHook = ''
- # set SOURCE_DATE_EPOCH so that we can use python wheels
- SOURCE_DATE_EPOCH=$(date +%s)
- virtualenv --no-setuptools venv
- export PATH=$PWD/venv/bin:$PATH
- pip install -r requirements.txt
+ # set SOURCE_DATE_EPOCH so that we can use python wheels
+ SOURCE_DATE_EPOCH=$(date +%s)
+ virtualenv --no-setuptools venv
+ export PATH=$PWD/venv/bin:$PATH
+ pip install -r requirements.txt
'';
}
```
@@ -1041,8 +1081,7 @@ To modify only a Python package set instead of a whole Python derivation, use th
Use the following overlay template:
```nix
-self: super:
-{
+self: super: {
python = super.python.override {
packageOverrides = python-self: python-super: {
zerobin = python-super.zerobin.overrideAttrs (oldAttrs: {
@@ -1057,6 +1096,42 @@ self: super:
}
```
+### How to use Intel's MKL with numpy and scipy?
+
+A `site.cfg` is created that configures BLAS based on the `blas` parameter
+of the `numpy` derivation. By passing in `mkl`, `numpy` and packages depending
+on `numpy` will be built with `mkl`.
+
+The following is an overlay that configures `numpy` to use `mkl`:
+```nix
+self: super: {
+ python37 = super.python37.override {
+ packageOverrides = python-self: python-super: {
+ numpy = python-super.numpy.override {
+ blas = super.pkgs.mkl;
+ };
+ };
+ };
+}
+```
+
+`mkl` requires an `openmp` implementation when running with multiple processors.
+By default, `mkl` will use Intel's `iomp` implementation if no other is
+specified, but this is a runtime-only dependency and binary compatible with the
+LLVM implementation. To use that one instead, Intel recommends users set it with
+`LD_PRELOAD`.
+
+Note that `mkl` is only available on `x86_64-{linux,darwin}` platforms;
+moreover, Hydra is not building and distributing pre-compiled binaries using it.
+
+### What inputs do `setup_requires`, `install_requires` and `tests_require` map to?
+
+In a `setup.py` or `setup.cfg` it is common to declare dependencies:
+
+* `setup_requires` corresponds to `nativeBuildInputs`
+* `install_requires` corresponds to `propagatedBuildInputs`
+* `tests_require` corresponds to `checkInputs`
+
## Contributing
### Contributing guidelines
@@ -1068,4 +1143,5 @@ Following rules are desired to be respected:
* Make sure libraries build for all Python interpreters.
* By default we enable tests. Make sure the tests are found and, in the case of libraries, are passing for all interpreters. If certain tests fail they can be disabled individually. Try to avoid disabling the tests altogether. In any case, when you disable tests, leave a comment explaining why.
* Commit names of Python libraries should reflect that they are Python libraries, so write for example `pythonPackages.numpy: 1.11 -> 1.12`.
-
+* Attribute names in `python-packages.nix` should be normalized according to [PEP 0503](https://www.python.org/dev/peps/pep-0503/#normalized-names).
+ This means that characters should be converted to lowercase and `.` and `_` should be replaced by a single `-` (foo-bar-baz instead of Foo__Bar.baz )
diff --git a/doc/languages-frameworks/ruby.xml b/doc/languages-frameworks/ruby.xml
index c52a72a3df4a746757d844ce94a3385d4b8cffad..df4e5acb22cb94892a5f0dd06c5e7be8b27d170e 100644
--- a/doc/languages-frameworks/ruby.xml
+++ b/doc/languages-frameworks/ruby.xml
@@ -50,6 +50,17 @@ bundlerEnv rec {
future updates can be run easily.
+
+ Updating Ruby packages can then be done like this:
+
+
+
+
+
+
For tools written in Ruby - i.e. where the desire is to install a package and
then execute e.g. rake at the command line, there is an
diff --git a/doc/languages-frameworks/rust.section.md b/doc/languages-frameworks/rust.section.md
index eec982d4c90ab75585121308413bcd07f43664ab..14b36f55f52f2a0402c4818fe370ea4c27943ae4 100644
--- a/doc/languages-frameworks/rust.section.md
+++ b/doc/languages-frameworks/rust.section.md
@@ -64,9 +64,6 @@ When the `Cargo.lock`, provided by upstream, is not in sync with the
added in `cargoPatches` will also be prepended to the patches in `patches` at
build-time.
-To install crates with nix there is also an experimental project called
-[nixcrates](https://github.com/fractalide/nixcrates).
-
## Compiling Rust crates using Nix instead of Cargo
### Simple operation
@@ -93,8 +90,8 @@ Now, the file produced by the call to `carnix`, called `hello.nix`, looks like:
```
# Generated by carnix 0.6.5: carnix -o hello.nix --src ./. Cargo.lock --standalone
-{ lib, buildPlatform, buildRustCrate, fetchgit }:
-let kernel = buildPlatform.parsed.kernel.name;
+{ lib, stdenv, buildRustCrate, fetchgit }:
+let kernel = stdenv.buildPlatform.parsed.kernel.name;
# ... (content skipped)
in
rec {
@@ -122,8 +119,8 @@ following nix file:
```
# Generated by carnix 0.6.5: carnix -o hello.nix --src ./. Cargo.lock --standalone
-{ lib, buildPlatform, buildRustCrate, fetchgit }:
-let kernel = buildPlatform.parsed.kernel.name;
+{ lib, stdenv, buildRustCrate, fetchgit }:
+let kernel = stdenv.buildPlatform.parsed.kernel.name;
# ... (content skipped)
in
rec {
@@ -306,11 +303,15 @@ with import {};
stdenv.mkDerivation {
name = "rust-env";
- buildInputs = [
+ nativeBuildInputs = [
rustc cargo
- # Example Additional Dependencies
- pkgconfig openssl
+ # Example Build-time Additional Dependencies
+ pkgconfig
+ ];
+ buildInputs = [
+ # Example Run-time Additional Dependencies
+ openssl
];
# Set Environment Variables
diff --git a/doc/languages-frameworks/texlive.xml b/doc/languages-frameworks/texlive.xml
index af0b07166e3ec70b8cea0dd795989c48aafa9877..5792a16963a97fe3bd78059acabce2222683c7eb 100644
--- a/doc/languages-frameworks/texlive.xml
+++ b/doc/languages-frameworks/texlive.xml
@@ -8,7 +8,7 @@
under attribute texlive.
-
+ User's guide
@@ -49,12 +49,12 @@ texlive.combine {
- You can list packages e.g. by nix-repl.
-
-$ nix-repl
-nix-repl> :l <nixpkgs>
-nix-repl> texlive.collection-<TAB>
-
+ You can list packages e.g. by nix repl.
+ :l
+nix-repl> texlive.collection-
+]]>
@@ -68,7 +68,7 @@ nix-repl> texlive.collection-<TAB>
-
+ Known problems
diff --git a/doc/languages-frameworks/titanium.section.md b/doc/languages-frameworks/titanium.section.md
new file mode 100644
index 0000000000000000000000000000000000000000..7a97664ec59848ec406d29d88c740136d4a4a214
--- /dev/null
+++ b/doc/languages-frameworks/titanium.section.md
@@ -0,0 +1,115 @@
+---
+title: Titanium
+author: Sander van der Burg
+date: 2018-11-18
+---
+# Titanium
+
+The Nixpkgs repository contains facilities to deploy a variety of versions of
+the [Titanium SDK](https://www.appcelerator.com) versions, a cross-platform
+mobile app development framework using JavaScript as an implementation language,
+and includes a function abstraction making it possible to build Titanium
+applications for Android and iOS devices from source code.
+
+Not all Titanium features supported -- currently, it can only be used to build
+Android and iOS apps.
+
+Building a Titanium app
+-----------------------
+We can build a Titanium app from source for Android or iOS and for debugging or
+release purposes by invoking the `titaniumenv.buildApp {}` function:
+
+```nix
+titaniumenv.buildApp {
+ name = "myapp";
+ src = ./myappsource;
+
+ preBuild = "";
+ target = "android"; # or 'iphone'
+ tiVersion = "7.1.0.GA";
+ release = true;
+
+ androidsdkArgs = {
+ platformVersions = [ "25" "26" ];
+ };
+ androidKeyStore = ./keystore;
+ androidKeyAlias = "myfirstapp";
+ androidKeyStorePassword = "secret";
+
+ xcodeBaseDir = "/Applications/Xcode.app";
+ xcodewrapperArgs = {
+ version = "9.3";
+ };
+ iosMobileProvisioningProfile = ./myprovisioning.profile;
+ iosCertificateName = "My Company";
+ iosCertificate = ./mycertificate.p12;
+ iosCertificatePassword = "secret";
+ iosVersion = "11.3";
+ iosBuildStore = false;
+
+ enableWirelessDistribution = true;
+ installURL = "/installipa.php";
+}
+```
+
+The `titaniumenv.buildApp {}` function takes the following parameters:
+
+* The `name` parameter refers to the name in the Nix store.
+* The `src` parameter refers to the source code location of the app that needs
+ to be built.
+* `preRebuild` contains optional build instructions that are carried out before
+ the build starts.
+* `target` indicates for which device the app must be built. Currently only
+ 'android' and 'iphone' (for iOS) are supported.
+* `tiVersion` can be used to optionally override the requested Titanium version
+ in `tiapp.xml`. If not specified, it will use the version in `tiapp.xml`.
+* `release` should be set to true when building an app for submission to the
+ Google Playstore or Apple Appstore. Otherwise, it should be false.
+
+When the `target` has been set to `android`, we can configure the following
+parameters:
+
+* The `androidSdkArgs` parameter refers to an attribute set that propagates all
+ parameters to the `androidenv.composeAndroidPackages {}` function. This can
+ be used to install all relevant Android plugins that may be needed to perform
+ the Android build. If no parameters are given, it will deploy the platform
+ SDKs for API-levels 25 and 26 by default.
+
+When the `release` parameter has been set to true, you need to provide
+parameters to sign the app:
+
+* `androidKeyStore` is the path to the keystore file
+* `androidKeyAlias` is the key alias
+* `androidKeyStorePassword` refers to the password to open the keystore file.
+
+When the `target` has been set to `iphone`, we can configure the following
+parameters:
+
+* The `xcodeBaseDir` parameter refers to the location where Xcode has been
+ installed. When none value is given, the above value is the default.
+* The `xcodewrapperArgs` parameter passes arbitrary parameters to the
+ `xcodeenv.composeXcodeWrapper {}` function. This can, for example, be used
+ to adjust the default version of Xcode.
+
+When `release` has been set to true, you also need to provide the following
+parameters:
+
+* `iosMobileProvisioningProfile` refers to a mobile provisioning profile needed
+ for signing.
+* `iosCertificateName` refers to the company name in the P12 certificate.
+* `iosCertificate` refers to the path to the P12 file.
+* `iosCertificatePassword` contains the password to open the P12 file.
+* `iosVersion` refers to the iOS SDK version to use. It defaults to the latest
+ version.
+* `iosBuildStore` should be set to `true` when building for the Apple Appstore
+ submission. For enterprise or ad-hoc builds it should be set to `false`.
+
+When `enableWirelessDistribution` has been enabled, you must also provide the
+path of the PHP script (`installURL`) (that is included with the iOS build
+environment) to enable wireless ad-hoc installations.
+
+Emulating or simulating the app
+-------------------------------
+It is also possible to simulate the correspond iOS simulator build by using
+`xcodeenv.simulateApp {}` and emulate an Android APK by using
+`androidenv.emulateApp {}`.
diff --git a/doc/languages-frameworks/vim.section.md b/doc/languages-frameworks/vim.section.md
index 1d6a4fe8da8d62a91450ffcb2f6994bbdcef3b29..c450a09f7bd2749e4a3a40c5f8c9032f840aed36 100644
--- a/doc/languages-frameworks/vim.section.md
+++ b/doc/languages-frameworks/vim.section.md
@@ -5,11 +5,17 @@ date: 2016-06-25
---
# User's Guide to Vim Plugins/Addons/Bundles/Scripts in Nixpkgs
-You'll get a vim(-your-suffix) in PATH also loading the plugins you want.
+Both Neovim and Vim can be configured to include your favorite plugins
+and additional libraries.
+
Loading can be deferred; see examples.
-Vim packages, VAM (=vim-addon-manager) and Pathogen are supported to load
-packages.
+At the moment we support three different methods for managing plugins:
+
+- Vim packages (*recommend*)
+- VAM (=vim-addon-manager)
+- Pathogen
+- vim-plug
## Custom configuration
@@ -17,6 +23,7 @@ Adding custom .vimrc lines can be done using the following code:
```
vim_configurable.customize {
+ # `name` specifies the name of the executable and package
name = "vim-with-plugins";
vimrcConfig.customRC = ''
@@ -25,9 +32,38 @@ vim_configurable.customize {
}
```
-## Vim packages
+This configuration is used when vim is invoked with the command specified as name, in this case `vim-with-plugins`.
+
+For Neovim the `configure` argument can be overridden to achieve the same:
+
+```
+neovim.override {
+ configure = {
+ customRC = ''
+ # here your custom configuration goes!
+ '';
+ };
+}
+```
-To store you plugins in Vim packages the following example can be used:
+If you want to use `neovim-qt` as a graphical editor, you can configure it by overriding neovim in an overlay
+or passing it an overridden neovimn:
+
+```
+neovim-qt.override {
+ neovim = neovim.override {
+ configure = {
+ customRC = ''
+ # your custom configuration
+ '';
+ };
+ };
+}
+```
+
+## Managing plugins with Vim packages
+
+To store you plugins in Vim packages (the native vim plugin manager, see `:help packages`) the following example can be used:
```
vim_configurable.customize {
@@ -35,16 +71,88 @@ vim_configurable.customize {
# loaded on launch
start = [ youcompleteme fugitive ];
# manually loadable by calling `:packadd $plugin-name`
+ # however, if a vim plugin has a dependency that is not explicitly listed in
+ # opt that dependency will always be added to start to avoid confusion.
opt = [ phpCompletion elm-vim ];
# To automatically load a plugin when opening a filetype, add vimrc lines like:
# autocmd FileType php :packadd phpCompletion
- }
-};
+ };
+}
+```
+
+`myVimPackage` is an arbitrary name for the generated package. You can choose any name you like.
+For Neovim the syntax is:
+
+```
+neovim.override {
+ configure = {
+ customRC = ''
+ # here your custom configuration goes!
+ '';
+ packages.myVimPackage = with pkgs.vimPlugins; {
+ # see examples below how to use custom packages
+ start = [ ];
+ # If a vim plugin has a dependency that is not explicitly listed in
+ # opt that dependency will always be added to start to avoid confusion.
+ opt = [ ];
+ };
+ };
+}
+```
+
+The resulting package can be added to `packageOverrides` in `~/.nixpkgs/config.nix` to make it installable:
+
+```
+{
+ packageOverrides = pkgs: with pkgs; {
+ myVim = vim_configurable.customize {
+ # `name` specifies the name of the executable and package
+ name = "vim-with-plugins";
+ # add here code from the example section
+ };
+ myNeovim = neovim.override {
+ configure = {
+ # add here code from the example section
+ };
+ };
+ };
+}
```
-## VAM
+After that you can install your special grafted `myVim` or `myNeovim` packages.
-### dependencies by Vim plugins
+## Managing plugins with vim-plug
+
+To use [vim-plug](https://github.com/junegunn/vim-plug) to manage your Vim
+plugins the following example can be used:
+
+```
+vim_configurable.customize {
+ vimrcConfig.packages.myVimPackage = with pkgs.vimPlugins; {
+ # loaded on launch
+ plug.plugins = [ youcompleteme fugitive phpCompletion elm-vim ];
+ };
+}
+```
+
+For Neovim the syntax is:
+
+```
+neovim.override {
+ configure = {
+ customRC = ''
+ # here your custom configuration goes!
+ '';
+ plug.plugins = with pkgs.vimPlugins; [
+ vim-go
+ ];
+ };
+}
+```
+
+## Managing plugins with VAM
+
+### Handling dependencies of Vim plugins
VAM introduced .json files supporting dependencies without versioning
assuming that "using latest version" is ok most of the time.
@@ -125,11 +233,23 @@ Sample output2:
]
+## Adding new plugins to nixpkgs
+
+In `pkgs/misc/vim-plugins/vim-plugin-names` we store the plugin names
+for all vim plugins we automatically generate plugins for.
+The format of this file `github username/github repository`:
+For example https://github.com/scrooloose/nerdtree becomes `scrooloose/nerdtree`.
+After adding your plugin to this file run the `./update.py` in the same folder.
+This will updated a file called `generated.nix` and make your plugin accessible in the
+`vimPlugins` attribute set (`vimPlugins.nerdtree` in our example).
+If additional steps to the build process of the plugin are required, add an
+override to the `pkgs/misc/vim-plugins/default.nix` in the same directory.
+
## Important repositories
- [vim-pi](https://bitbucket.org/vimcommunity/vim-pi) is a plugin repository
from VAM plugin manager meant to be used by others as well used by
-- [vim2nix](http://github.com/MarcWeber/vim-addon-vim2nix) which generates the
+- [vim2nix](https://github.com/MarcWeber/vim-addon-vim2nix) which generates the
.nix code
diff --git a/doc/lib-function-docs.nix b/doc/lib-function-docs.nix
new file mode 100644
index 0000000000000000000000000000000000000000..421f848d25abffc5b1e782a8af117f57dbaaac43
--- /dev/null
+++ b/doc/lib-function-docs.nix
@@ -0,0 +1,26 @@
+# Generates the documentation for library functons via nixdoc. To add
+# another library function file to this list, the include list in the
+# file `doc/functions/library.xml` must also be updated.
+
+{ pkgs ? import ./.. {}, locationsXml }:
+
+with pkgs; stdenv.mkDerivation {
+ name = "nixpkgs-lib-docs";
+ src = ./../lib;
+
+ buildInputs = [ nixdoc ];
+ installPhase = ''
+ function docgen {
+ nixdoc -c "$1" -d "$2" -f "../lib/$1.nix" > "$out/$1.xml"
+ }
+
+ mkdir -p $out
+ ln -s ${locationsXml} $out/locations.xml
+
+ docgen strings 'String manipulation functions'
+ docgen trivial 'Miscellaneous functions'
+ docgen lists 'List manipulation functions'
+ docgen debug 'Debugging functions'
+ docgen options 'NixOS / nixpkgs option handling'
+ '';
+}
diff --git a/doc/lib-function-locations.nix b/doc/lib-function-locations.nix
new file mode 100644
index 0000000000000000000000000000000000000000..ae7036e4626439ecf12028dff84366c86843ce61
--- /dev/null
+++ b/doc/lib-function-locations.nix
@@ -0,0 +1,85 @@
+{ pkgs ? (import ./.. { }), nixpkgs ? { }}:
+let
+ revision = pkgs.lib.trivial.revisionWithDefault (nixpkgs.revision or "master");
+
+ libDefPos = set:
+ builtins.map
+ (name: {
+ name = name;
+ location = builtins.unsafeGetAttrPos name set;
+ })
+ (builtins.attrNames set);
+
+ libset = toplib:
+ builtins.map
+ (subsetname: {
+ subsetname = subsetname;
+ functions = libDefPos toplib."${subsetname}";
+ })
+ (builtins.filter
+ (name: builtins.isAttrs toplib."${name}")
+ (builtins.attrNames toplib));
+
+ nixpkgsLib = pkgs.lib;
+
+ flattenedLibSubset = { subsetname, functions }:
+ builtins.map
+ (fn: {
+ name = "lib.${subsetname}.${fn.name}";
+ value = fn.location;
+ })
+ functions;
+
+ locatedlibsets = libs: builtins.map flattenedLibSubset (libset libs);
+ removeFilenamePrefix = prefix: filename:
+ let
+ prefixLen = (builtins.stringLength prefix) + 1; # +1 to remove the leading /
+ filenameLen = builtins.stringLength filename;
+ substr = builtins.substring prefixLen filenameLen filename;
+ in substr;
+
+ removeNixpkgs = removeFilenamePrefix (builtins.toString pkgs.path);
+
+ liblocations =
+ builtins.filter
+ (elem: elem.value != null)
+ (nixpkgsLib.lists.flatten
+ (locatedlibsets nixpkgsLib));
+
+ fnLocationRelative = { name, value }:
+ {
+ inherit name;
+ value = value // { file = removeNixpkgs value.file; };
+ };
+
+ relativeLocs = (builtins.map fnLocationRelative liblocations);
+ sanitizeId = builtins.replaceStrings
+ [ "'" ]
+ [ "-prime" ];
+
+ urlPrefix = "https://github.com/NixOS/nixpkgs/blob/${revision}";
+ xmlstrings = (nixpkgsLib.strings.concatMapStrings
+ ({ name, value }:
+ ''
+ ${name}
+
+ Located at
+ ${value.file}:${builtins.toString value.line}
+ in <nixpkgs>.
+
+
+ '')
+ relativeLocs);
+
+in pkgs.writeText
+ "locations.xml"
+ ''
+
+ All the locations for every lib function
+ This file is only for inclusion by other files.
+ ${xmlstrings}
+
+ ''
diff --git a/doc/meta.xml b/doc/meta.xml
index 496b32916552b4066ce11c290e7e0d047b9bacbe..774ed2db75009a28378c74d48eb1c37f7aaec637 100644
--- a/doc/meta.xml
+++ b/doc/meta.xml
@@ -14,7 +14,7 @@ meta = with stdenv.lib; {
GNU Hello is a program that prints "Hello, world!" when you run it.
It is fully customizable.
'';
- homepage = http://www.gnu.org/software/hello/manual/;
+ homepage = https://www.gnu.org/software/hello/manual/;
license = licenses.gpl3Plus;
maintainers = [ maintainers.eelco ];
platforms = platforms.all;
@@ -35,7 +35,7 @@ $ nix-env -qa hello --json
"hello": {
"meta": {
"description": "A program that produces a familiar, friendly greeting",
- "homepage": "http://www.gnu.org/software/hello/manual/",
+ "homepage": "https://www.gnu.org/software/hello/manual/",
"license": {
"fullName": "GNU General Public License version 3 or later",
"shortName": "GPLv3+",
@@ -135,7 +135,7 @@ hello-2.3 A program that produces a familiar, friendly greeting
The package’s homepage. Example:
- http://www.gnu.org/software/hello/manual/
+ https://www.gnu.org/software/hello/manual/
@@ -146,7 +146,7 @@ hello-2.3 A program that produces a familiar, friendly greeting
The page where a link to the current version can be found. Example:
- http://ftp.gnu.org/gnu/hello/
+ https://ftp.gnu.org/gnu/hello/
@@ -250,6 +250,60 @@ meta.platforms = stdenv.lib.platforms.linux;
+
+
+ tests
+
+
+
+
+ This attribute is special in that it is not actually under the
+ meta attribute set but rather under the
+ passthru attribute set. This is due to a current
+ limitation of Nix, and will change as soon as Nixpkgs will be able to
+ depend on a new enough version of Nix. See
+ the relevant
+ issue for more details.
+
+
+
+ An attribute set with as values tests. A test is a derivation, which
+ builds successfully when the test passes, and fails to build otherwise. A
+ derivation that is a test needs to have meta.timeout
+ defined.
+
+
+ The NixOS tests are available as nixosTests in
+ parameters of derivations. For instance, the OpenSMTPD derivation
+ includes lines similar to:
+
+{ /* ... */, nixosTests }:
+{
+ # ...
+ passthru.tests = {
+ basic-functionality-and-dovecot-integration = nixosTests.opensmtpd;
+ };
+}
+
+
+
+
+
+
+ timeout
+
+
+
+ A timeout (in seconds) for building the derivation. If the derivation
+ takes longer than this time to build, it can fail due to breaking the
+ timeout. However, all computers do not have the same computing power,
+ hence some builders may decide to apply a multiplicative factor to this
+ value. When filling this value in, try to keep it approximately
+ consistent with other values already present in
+ nixpkgs.
+
+
+ hydraPlatforms
diff --git a/doc/multiple-output.xml b/doc/multiple-output.xml
index 981b4b966cdf28c49173f614f9b36368f0069f62..d0247e081f9958fa46d18b9d15519f45cef8a97e 100644
--- a/doc/multiple-output.xml
+++ b/doc/multiple-output.xml
@@ -6,13 +6,13 @@
xmlns:xlink="http://www.w3.org/1999/xlink"
xml:id="chap-multiple-output">
Multiple-output packages
-
+ Introduction
The Nix language allows a derivation to produce multiple outputs, which is
similar to what is utilized by other Linux distribution packaging systems.
- The outputs reside in separate nix store paths, so they can be mostly
+ The outputs reside in separate Nix store paths, so they can be mostly
handled independently of each other, including passing to build inputs,
garbage collection or binary substitution. The exception is that building
from source always produces all the outputs.
@@ -38,7 +38,7 @@
-
+ Installing a split package
@@ -84,7 +84,7 @@
-
+ Using a split package
@@ -101,8 +101,15 @@
contain $outputBin and $outputLib are
also added. (See .)
+
+
+ In some cases it may be desirable to combine different outputs under a
+ single store path. A function symlinkJoin can be used to
+ do this. (Note that it may negate some closure size benefits of using a
+ multiple-output package.)
+
-
+ Writing a split derivation
@@ -283,7 +290,7 @@
-
+ Common caveats
diff --git a/doc/old/cross.txt b/doc/old/cross.txt
index c0885c08176e9e26ab23876bfa18940a8bb7c20e..ff9fefb04a86020ae8367e9f368577aa7d0333dc 100644
--- a/doc/old/cross.txt
+++ b/doc/old/cross.txt
@@ -78,7 +78,7 @@ Step 2: build kernel headers for the target architecture
---
{stdenv, fetchurl}:
-assert stdenv.system == "i686-linux";
+assert stdenv.buildPlatform.system == "i686-linux";
stdenv.mkDerivation {
name = "linux-headers-2.6.13.1-arm";
diff --git a/doc/overlays.xml b/doc/overlays.xml
index 2decf9febe809f7b0962036e832056593aa68547..bff2339ca9338cbdf5e14d91b47cfd2b1dbeee5f 100644
--- a/doc/overlays.xml
+++ b/doc/overlays.xml
@@ -3,9 +3,9 @@
xml:id="chap-overlays">
Overlays
- This chapter describes how to extend and change Nixpkgs packages using
- overlays. Overlays are used to add layers in the fix-point used by Nixpkgs to
- compose the set of all packages.
+ This chapter describes how to extend and change Nixpkgs using overlays.
+ Overlays are used to add layers in the fixed-point used by Nixpkgs to compose
+ the set of all packages.
Nixpkgs can be configured with a list of overlays, which are applied in
@@ -17,91 +17,122 @@
Installing overlays
- The list of overlays is determined as follows.
+ The list of overlays can be set either explicitly in a Nix expression, or
+ through <nixpkgs-overlays> or user configuration
+ files.
-
- If the overlays argument is not provided explicitly, we
- look for overlays in a path. The path is determined as follows:
-
-
-
- First, if an overlays argument to the nixpkgs function
- itself is given, then that is used.
-
-
- This can be passed explicitly when importing nipxkgs, for example
- import <nixpkgs> { overlays = [ overlay1 overlay2 ];
- }.
-
-
-
-
- Otherwise, if the Nix path entry <nixpkgs-overlays>
- exists, we look for overlays at that path, as described below.
-
-
- See the section on NIX_PATH in the Nix manual for more
- details on how to set a value for
- <nixpkgs-overlays>.
-
-
-
-
- If one of ~/.config/nixpkgs/overlays.nix and
- ~/.config/nixpkgs/overlays/ exists, then we look for
- overlays at that path, as described below. It is an error if both exist.
-
-
-
-
+
+ Set overlays in NixOS or Nix expressions
-
- If we are looking for overlays at a path, then there are two cases:
-
-
-
- If the path is a file, then the file is imported as a Nix expression and
- used as the list of overlays.
-
-
-
-
- If the path is a directory, then we take the content of the directory,
- order it lexicographically, and attempt to interpret each as an overlay
- by:
-
-
-
- Importing the file, if it is a .nix file.
-
-
-
-
- Importing a top-level default.nix file, if it is
- a directory.
-
-
-
-
-
-
-
+
+ On a NixOS system the value of the nixpkgs.overlays
+ option, if present, is passed to the system Nixpkgs directly as an
+ argument. Note that this does not affect the overlays for non-NixOS
+ operations (e.g. nix-env), which are
+ looked up independently.
+
-
- On a NixOS system the value of the nixpkgs.overlays
- option, if present, is passed to the system Nixpkgs directly as an argument.
- Note that this does not affect the overlays for non-NixOS operations (e.g.
- nix-env), which are looked up independently.
-
+
+ The list of overlays can be passed explicitly when importing nixpkgs, for
+ example import <nixpkgs> { overlays = [ overlay1 overlay2 ];
+ }.
+
-
- The overlays.nix option therefore provides a convenient
- way to use the same overlays for a NixOS system configuration and user
- configuration: the same file can be used as
- overlays.nix and imported as the value of
- nixpkgs.overlays.
-
+
+ Further overlays can be added by calling the pkgs.extend
+ or pkgs.appendOverlays, although it is often preferable
+ to avoid these functions, because they recompute the Nixpkgs fixpoint,
+ which is somewhat expensive to do.
+
+
+
+
+ Install overlays via configuration lookup
+
+
+ The list of overlays is determined as follows.
+
+
+
+
+
+
+ First, if an
+ overlays
+ argument to the Nixpkgs function itself is given, then that is
+ used and no path lookup will be performed.
+
+
+
+
+ Otherwise, if the Nix path entry
+ <nixpkgs-overlays> exists, we look for overlays at
+ that path, as described below.
+
+
+ See the section on NIX_PATH in the Nix manual for
+ more details on how to set a value for
+ <nixpkgs-overlays>.
+
+
+
+
+ If one of ~/.config/nixpkgs/overlays.nix and
+ ~/.config/nixpkgs/overlays/ exists, then we look
+ for overlays at that path, as described below. It is an error if both
+ exist.
+
+
+
+
+
+
+ If we are looking for overlays at a path, then there are two cases:
+
+
+
+ If the path is a file, then the file is imported as a Nix expression and
+ used as the list of overlays.
+
+
+
+
+ If the path is a directory, then we take the content of the directory,
+ order it lexicographically, and attempt to interpret each as an overlay
+ by:
+
+
+
+ Importing the file, if it is a .nix file.
+
+
+
+
+ Importing a top-level default.nix file, if it is
+ a directory.
+
+
+
+
+
+
+
+
+
+ Because overlays that are set in NixOS configuration do not affect
+ non-NixOS operations such as nix-env, the
+ overlays.nix option provides a convenient way to use
+ the same overlays for a NixOS system configuration and user configuration:
+ the same file can be used as overlays.nix and imported
+ as the value of nixpkgs.overlays.
+
+
+
+
diff --git a/doc/package-notes.xml b/doc/package-notes.xml
index 0634432fe95a34f634553970fdf95b3a7c96614f..12d81ae29bffdc09534f4acbcd5c7c76ad0d892e 100644
--- a/doc/package-notes.xml
+++ b/doc/package-notes.xml
@@ -181,7 +181,7 @@ $ cat $(PRINT_PATH=1 nix-prefetch-url $i | tail -n 1) \
- In a case a contributor leaves definitively the Nix community, he should
- create an issue or notify the mailing list with references of packages and
- modules he maintains so the maintainership can be taken over by other
- contributors.
+ In a case a contributor definitively leaves the Nix community, they should
+ create an issue or post on
+ Discourse with
+ references of packages and modules they maintain so the maintainership can
+ be taken over by other contributors.
diff --git a/doc/shell.nix b/doc/shell.nix
index 24fe20e81050e338c9b54688bbdd4a60aa47e873..8ac2019f9d66accc3961cdf042d5e47813c6d2d3 100644
--- a/doc/shell.nix
+++ b/doc/shell.nix
@@ -1,5 +1,5 @@
{ pkgs ? import ../. {} }:
-(import ./default.nix).overrideAttrs (x: {
+(import ./default.nix {}).overrideAttrs (x: {
buildInputs = x.buildInputs ++ [ pkgs.xmloscopy pkgs.ruby ];
})
diff --git a/doc/shell.section.md b/doc/shell.section.md
deleted file mode 100644
index cb8832a814fcc036a881544d175430e3cf6b2587..0000000000000000000000000000000000000000
--- a/doc/shell.section.md
+++ /dev/null
@@ -1,22 +0,0 @@
----
-title: pkgs.mkShell
-author: zimbatm
-date: 2017-10-30
----
-
-# mkShell
-
-pkgs.mkShell is a special kind of derivation that is only useful when using
-it combined with nix-shell. It will in fact fail to instantiate when invoked
-with nix-build.
-
-## Usage
-
-```nix
-{ pkgs ? import {} }:
-pkgs.mkShell {
- # this will make all the build inputs from hello and gnutar available to the shell environment
- inputsFrom = with pkgs; [ hello gnutar ];
- buildInputs = [ pkgs.gnumake ];
-}
-```
diff --git a/doc/stdenv.xml b/doc/stdenv.xml
index 94bd7365dd9a6ff7491585b5f55a5e0affb24f5f..0435362306ba3ad75d45031b60a615e2e6b0ef9b 100644
--- a/doc/stdenv.xml
+++ b/doc/stdenv.xml
@@ -212,7 +212,7 @@ genericBuild
platforms relative to the new derivation's, and whether they are propagated.
The platform distinctions are motivated by cross compilation; see
for exactly what each platform means.
-
+
The build platform is ignored because it is a mere implementation detail
of the package satisfying the dependency: As a general programming
@@ -222,24 +222,25 @@ genericBuild
But even if one is not cross compiling, the platforms imply whether or not
the dependency is needed at run-time or build-time, a concept that makes
- perfect sense outside of cross compilation. For now, the run-time/build-time
- distinction is just a hint for mental clarity, but in the future it perhaps
- could be enforced.
+ perfect sense outside of cross compilation. By default, the
+ run-time/build-time distinction is just a hint for mental clarity, but with
+ strictDeps set it is mostly enforced even in the native
+ case.
The extension of PATH with dependencies, alluded to above,
proceeds according to the relative platforms alone. The process is carried
out only for dependencies whose host platform matches the new derivation's
- build platform–i.e. which run on the platform where the new derivation
- will be built.
-
+ build platform i.e. dependencies which run on the platform where the new
+ derivation will be built.
+
- Currently, that means for native builds all dependencies are put on the
+ Currently, this means for native builds all dependencies are put on the
PATH. But in the future that may not be the case for sake
of matching cross: the platforms would be assumed to be unique for native
and cross builds alike, so only the depsBuild* and
- nativeBuildDependencies dependencies would affect the
+ nativeBuildInputs would be added to the
PATH.
@@ -258,20 +259,20 @@ genericBuild
- It is important to note dependencies are not necessary propagated as the
- same sort of dependency that they were before, but rather as the
+ It is important to note that dependencies are not necessarily propagated as
+ the same sort of dependency that they were before, but rather as the
corresponding sort so that the platform rules still line up. The exact rules
- for dependency propagation can be given by assigning each sort of dependency
- two integers based one how it's host and target platforms are offset from
- the depending derivation's platforms. Those offsets are given are given
- below in the descriptions of each dependency list attribute.
- Algorithmically, we traverse propagated inputs, accumulating every
- propagated dep's propagated deps and adjusting them to account for the
- "shift in perspective" described by the current dep's platform offsets. This
- results in sort a transitive closure of the dependency relation, with the
- offsets being approximately summed when two dependency links are combined.
- We also prune transitive deps whose combined offsets go out-of-bounds, which
- can be viewed as a filter over that transitive closure removing dependencies
+ for dependency propagation can be given by assigning to each dependency two
+ integers based one how its host and target platforms are offset from the
+ depending derivation's platforms. Those offsets are given below in the
+ descriptions of each dependency list attribute. Algorithmically, we traverse
+ propagated inputs, accumulating every propagated dependency's propagated
+ dependencies and adjusting them to account for the "shift in perspective"
+ described by the current dependency's platform offsets. This results in sort
+ a transitive closure of the dependency relation, with the offsets being
+ approximately summed when two dependency links are combined. We also prune
+ transitive dependencies whose combined offsets go out-of-bounds, which can
+ be viewed as a filter over that transitive closure removing dependencies
that are blatantly absurd.
@@ -280,15 +281,15 @@ genericBuild
Natural
Deduction using the inference rules. This probably seems a bit
obtuse, but so is the bash code that actually implements it!
-
+
The findInputs function, currently residing in
pkgs/stdenv/generic/setup.sh, implements the
propagation logic.
- They're confusing in very different ways so...hopefully if something doesn't
- make sense in one presentation, it does in the other!
+ They're confusing in very different ways so... hopefully if something
+ doesn't make sense in one presentation, it will in the other!
let mapOffset(h, t, i) = i + (if i <= 0 then h else t - 1)
@@ -307,13 +308,13 @@ dep(h0, _, A, B)
propagated-dep(h1, t1, B, C)
h0 + h1 in {-1, 0, 1}
h0 + t1 in {-1, 0, -1}
--------------------------------------- Take immediate deps' propagated deps
+----------------------------- Take immediate dependencies' propagated dependencies
propagated-dep(mapOffset(h0, t0, h1),
mapOffset(h0, t0, t1),
A, C)
propagated-dep(h, t, A, B)
--------------------------------------- Propagated deps count as deps
+----------------------------- Propagated dependencies count as dependencies
dep(h, t, A, B)
Some explanation of this monstrosity is in order. In the common case, the
target offset of a dependency is the successor to the target offset:
@@ -324,10 +325,10 @@ let f(h, h + 1, i) = i + (if i <= 0 then h else (h + 1) - 1)
let f(h, h + 1, i) = i + (if i <= 0 then h else h)
let f(h, h + 1, i) = i + h
- This is where the "sum-like" comes from above: We can just sum all the host
- offset to get the host offset of the transitive dependency. The target
- offset is the transitive dep is simply the host offset + 1, just as it was
- with the dependencies composed to make this transitive one; it can be
+ This is where "sum-like" comes in from above: We can just sum all of the
+ host offsets to get the host offset of the transitive dependency. The target
+ offset is the transitive dependency is simply the host offset + 1, just as
+ it was with the dependencies composed to make this transitive one; it can be
ignored as it doesn't add any new information.
@@ -335,8 +336,8 @@ let f(h, h + 1, i) = i + h
Because of the bounds checks, the uncommon cases are h =
t and h + 2 = t. In the former case, the
motivation for mapOffset is that since its host and
- target platforms are the same, no transitive dep of it should be able to
- "discover" an offset greater than its reduced target offsets.
+ target platforms are the same, no transitive dependency of it should be able
+ to "discover" an offset greater than its reduced target offsets.
mapOffset effectively "squashes" all its transitive
dependencies' offsets so that none will ever be greater than the target
offset of the original h = t package. In the other case,
@@ -347,8 +348,11 @@ let f(h, h + 1, i) = i + h
Overall, the unifying theme here is that propagation shouldn't be
- introducing transitive dependencies involving platforms the needing package
- is unaware of. The offset bounds checking and definition of
+ introducing transitive dependencies involving platforms the depending
+ package is unaware of. [One can imagine the dependending package asking for
+ dependencies with the platforms it knows about; other platforms it doesn't
+ know how to ask for. The platform description in that scenario is a kind of
+ unforagable capability.] The offset bounds checking and definition of
mapOffset together ensure that this is the case.
Discovering a new offset is discovering a new platform, and since those
platforms weren't in the derivation "spec" of the needing package, they
@@ -369,16 +373,16 @@ let f(h, h + 1, i) = i + h
A list of dependencies whose host and target platforms are the new
derivation's build platform. This means a -1 host and
-1 target offset from the new derivation's platforms.
- They are programs/libraries used at build time that furthermore produce
- programs/libraries also used at build time. If the dependency doesn't
- care about the target platform (i.e. isn't a compiler or similar tool),
- put it in nativeBuildInputsinstead. The most common
- use for this buildPackages.stdenv.cc, the default C
- compiler for this role. That example crops up more than one might think
- in old commonly used C libraries.
+ These are programs and libraries used at build time that produce programs
+ and libraries also used at build time. If the dependency doesn't care
+ about the target platform (i.e. isn't a compiler or similar tool), put it
+ in nativeBuildInputs instead. The most common use of
+ this buildPackages.stdenv.cc, the default C compiler
+ for this role. That example crops up more than one might think in old
+ commonly used C libraries.
- Since these packages are able to be run at build time, that are always
+ Since these packages are able to be run at build-time, they are always
added to the PATH, as described above. But since these
packages are only guaranteed to be able to run then, they shouldn't
persist as run-time dependencies. This isn't currently enforced, but
@@ -395,19 +399,19 @@ let f(h, h + 1, i) = i + h
A list of dependencies whose host platform is the new derivation's build
platform, and target platform is the new derivation's host platform. This
means a -1 host offset and 0 target
- offset from the new derivation's platforms. They are programs/libraries
- used at build time that, if they are a compiler or similar tool, produce
- code to run at run time—i.e. tools used to build the new derivation. If
- the dependency doesn't care about the target platform (i.e. isn't a
- compiler or similar tool), put it here, rather than in
+ offset from the new derivation's platforms. These are programs and
+ libraries used at build-time that, if they are a compiler or similar
+ tool, produce code to run at run-time—i.e. tools used to build the new
+ derivation. If the dependency doesn't care about the target platform
+ (i.e. isn't a compiler or similar tool), put it here, rather than in
depsBuildBuild or depsBuildTarget.
- This would be called depsBuildHost but for historical
- continuity.
+ This could be called depsBuildHost but
+ nativeBuildInputs is used for historical continuity.
- Since these packages are able to be run at build time, that are added to
- the PATH, as described above. But since these packages
- only are guaranteed to be able to run then, they shouldn't persist as
+ Since these packages are able to be run at build-time, they are added to
+ the PATH, as described above. But since these packages are
+ only guaranteed to be able to run then, they shouldn't persist as
run-time dependencies. This isn't currently enforced, but could be in the
future.
@@ -422,32 +426,34 @@ let f(h, h + 1, i) = i + h
A list of dependencies whose host platform is the new derivation's build
platform, and target platform is the new derivation's target platform.
This means a -1 host offset and 1
- target offset from the new derivation's platforms. They are programs used
- at build time that produce code to run at run with code produced by the
- depending package. Most commonly, these would tools used to build the
- runtime or standard library the currently-being-built compiler will
- inject into any code it compiles. In many cases, the currently-being
- built compiler is itself employed for that task, but when that compiler
- won't run (i.e. its build and host platform differ) this is not possible.
- Other times, the compiler relies on some other tool, like binutils, that
- is always built separately so the dependency is unconditional.
-
-
- This is a somewhat confusing dependency to wrap ones head around, and for
- good reason. As the only one where the platform offsets are not adjacent
- integers, it requires thinking of a bootstrapping stage
- two away from the current one. It and it's use-case
- go hand in hand and are both considered poor form: try not to need this
- sort dependency, and try not avoid building standard libraries / runtimes
- in the same derivation as the compiler produces code using them. Instead
- strive to build those like a normal library, using the newly-built
- compiler just as a normal library would. In short, do not use this
- attribute unless you are packaging a compiler and are sure it is needed.
-
-
- Since these packages are able to be run at build time, that are added to
- the PATH, as described above. But since these packages
- only are guaranteed to be able to run then, they shouldn't persist as
+ target offset from the new derivation's platforms. These are programs
+ used at build time that produce code to run with code produced by the
+ depending package. Most commonly, these are tools used to build the
+ runtime or standard library that the currently-being-built compiler will
+ inject into any code it compiles. In many cases, the
+ currently-being-built-compiler is itself employed for that task, but when
+ that compiler won't run (i.e. its build and host platform differ) this is
+ not possible. Other times, the compiler relies on some other tool, like
+ binutils, that is always built separately so that the dependency is
+ unconditional.
+
+
+ This is a somewhat confusing concept to wrap one’s head around, and for
+ good reason. As the only dependency type where the platform offsets are
+ not adjacent integers, it requires thinking of a bootstrapping stage
+ two away from the current one. It and its use-case
+ go hand in hand and are both considered poor form: try to not need this
+ sort of dependency, and try to avoid building standard libraries and
+ runtimes in the same derivation as the compiler produces code using them.
+ Instead strive to build those like a normal library, using the
+ newly-built compiler just as a normal library would. In short, do not use
+ this attribute unless you are packaging a compiler and are sure it is
+ needed.
+
+
+ Since these packages are able to run at build time, they are added to the
+ PATH, as described above. But since these packages are
+ only guaranteed to be able to run then, they shouldn't persist as
run-time dependencies. This isn't currently enforced, but could be in the
future.
@@ -460,14 +466,14 @@ let f(h, h + 1, i) = i + h
A list of dependencies whose host and target platforms match the new
- derivation's host platform. This means a both 0 host
- offset and 0 target offset from the new derivation's
- host platform. These are packages used at run-time to generate code also
- used at run-time. In practice, that would usually be tools used by
- compilers for metaprogramming/macro systems, or libraries used by the
- macros/metaprogramming code itself. It's always preferable to use a
+ derivation's host platform. This means a 0 host offset
+ and 0 target offset from the new derivation's host
+ platform. These are packages used at run-time to generate code also used
+ at run-time. In practice, this would usually be tools used by compilers
+ for macros or a metaprogramming system, or libraries used by the macros
+ or metaprogramming code itself. It's always preferable to use a
depsBuildBuild dependency in the derivation being
- built than a depsHostHost on the tool doing the
+ built over a depsHostHost on the tool doing the
building for this purpose.
@@ -479,7 +485,7 @@ let f(h, h + 1, i) = i + h
A list of dependencies whose host platform and target platform match the
- new derivation's. This means a 0 host offset and
+ new derivation's. This means a 0 host offset and a
1 target offset from the new derivation's host
platform. This would be called depsHostTarget but for
historical continuity. If the dependency doesn't care about the target
@@ -487,12 +493,12 @@ let f(h, h + 1, i) = i + h
than in depsBuildBuild.
- These often are programs/libraries used by the new derivation at
+ These are often programs and libraries used by the new derivation at
run-time, but that isn't always the case. For
- example, the machine code in a statically linked library is only used at
- run time, but the derivation containing the library is only needed at
- build time. Even in the dynamic case, the library may also be needed at
- build time to appease the linker.
+ example, the machine code in a statically-linked library is only used at
+ run-time, but the derivation containing the library is only needed at
+ build-time. Even in the dynamic case, the library may also be needed at
+ build-time to appease the linker.
@@ -581,7 +587,7 @@ let f(h, h + 1, i) = i + h
- depsTargetTarget
+ depsTargetTargetPropagated
@@ -604,10 +610,10 @@ let f(h, h + 1, i) = i + h
A natural number indicating how much information to log. If set to 1 or
- higher, stdenv will print moderate debug information
- during the build. In particular, the gcc and
- ld wrapper scripts will print out the complete command
- line passed to the wrapped tools. If set to 6 or higher, the
+ higher, stdenv will print moderate debugging
+ information during the build. In particular, the gcc
+ and ld wrapper scripts will print out the complete
+ command line passed to the wrapped tools. If set to 6 or higher, the
stdenv setup script will be run with set
-x tracing. If set to 7 or higher, the gcc
and ld wrapper scripts will also be run with
@@ -618,7 +624,7 @@ let f(h, h + 1, i) = i + h
- Variables affecting build properties
+ Attributes affecting build propertiesenableParallelBuilding
@@ -637,21 +643,6 @@ let f(h, h + 1, i) = i + h
-
-
- preferLocalBuild
-
-
-
- If set, specifies that the package is so lightweight in terms of build
- operations (e.g. write a text file from a Nix string to the store) that
- there's no need to look for it in binary caches -- it's faster to just
- build it locally. It also tells Hydra and other facilities that this
- package doesn't need to be exported in binary caches (noone would use it,
- after all).
-
-
-
@@ -689,6 +680,51 @@ passthru = {
+
+
+ passthru.updateScript
+
+
+
+ A script to be run by maintainers/scripts/update.nix
+ when the package is matched. It needs to be an executable file, either on
+ the file system:
+
+passthru.updateScript = ./update.sh;
+
+ or inside the expression itself:
+
+passthru.updateScript = writeScript "update-zoom-us" ''
+ #!/usr/bin/env nix-shell
+ #!nix-shell -i bash -p curl pcre common-updater-scripts
+
+ set -eu -o pipefail
+
+ version="$(curl -sI https://zoom.us/client/latest/zoom_x86_64.tar.xz | grep -Fi 'Location:' | pcregrep -o1 '/(([0-9]\.?)+)/')"
+ update-source-version zoom-us "$version"
+'';
+
+ The attribute can also contain a list, a script followed by arguments to
+ be passed to it:
+
+passthru.updateScript = [ ../../update.sh pname "--requested-release=unstable" ];
+
+ Note that the update scripts will be run in parallel by default; you
+ should avoid running git commit or any other commands
+ that cannot handle that.
+
+
+ For information about how to run the updates, execute
+
+ nix-shell
+
+ maintainers/scripts/update.nix
+
+
+ .
+
+
+
@@ -851,7 +887,7 @@ passthru = {
Zip files are unpacked using unzip. However,
unzip is not in the standard environment, so you
- should add it to buildInputs yourself.
+ should add it to nativeBuildInputs yourself.
@@ -1091,6 +1127,17 @@ passthru = {
+
+
+ prefixKey
+
+
+
+ The key to use when specifying the prefix. By default, this is set to
+ as that is used by the majority of packages.
+
+
+ dontAddDisableDepTrack
@@ -1112,7 +1159,7 @@ passthru = {
By default, the configure phase applies some special hackery to all
files called ltmain.sh before running the configure
script in order to improve the purity of Libtool-based packages
-
+
It clears the
sys_lib_*search_path
@@ -1149,11 +1196,10 @@ passthru = {
and passed.
Packages can instead pass [ "build" "host" "target" ]
or a subset to control exactly which platform flags are passed.
- Compilers and other tools should use this to also pass the target
- platform, for example.
-
+ Compilers and other tools can use this to also pass the target platform.
+
- Eventually these will be passed when in native builds too, to improve
+ Eventually these will be passed building natively as well, to improve
determinism: build-time guessing, as is done today, is a risk of
impurity.
@@ -1218,17 +1264,6 @@ passthru = {
-
-
- checkInputs
-
-
-
- A list of dependencies used by the phase. This gets included in
- buildInputs when doCheck is set.
-
-
- makeFlags
@@ -1261,7 +1296,9 @@ makeFlags = [ "PREFIX=$(out)" ];
make. You must use this instead of
makeFlags if the arguments contain spaces, e.g.
-makeFlagsArray=(CFLAGS="-O0 -g" LDFLAGS="-lfoo -lbar")
+preBuild = ''
+ makeFlagsArray+=(CFLAGS="-O0 -g" LDFLAGS="-lfoo -lbar")
+'';
Note that shell arrays cannot be passed through environment variables,
so you cannot set makeFlagsArray in a derivation
@@ -1378,6 +1415,18 @@ makeFlagsArray=(CFLAGS="-O0 -g" LDFLAGS="-lfoo -lbar")
+
+
+ checkInputs
+
+
+
+ A list of dependencies used by the phase. This gets included in
+ nativeBuildInputs when doCheck is
+ set.
+
+
+ preCheck
@@ -1632,6 +1681,18 @@ installTargets = "install-bin install-doc";
+
+
+ dontPruneLibtoolFiles
+
+
+
+ If set, libtool .la files associated with shared
+ libraries won't have their dependency_libs field
+ cleared.
+
+
+ forceShare
@@ -1650,13 +1711,12 @@ installTargets = "install-bin install-doc";
- A package can export a setup
+ A package can export a setup
hook by setting this variable. The setup hook, if defined, is
copied to $out/nix-support/setup-hook. Environment
variables are then substituted in it using
substituteAll.
+ linkend="fun-substituteAll">substituteAll.
@@ -1740,6 +1800,29 @@ set debug-file-directory ~/.nix-profile/lib/debug
+
+
+ installCheckTarget
+
+
+
+ The make target that runs the install tests. Defaults to
+ installcheck.
+
+
+
+
+
+ installCheckFlags / installCheckFlagsArray
+
+
+
+ A list of strings passed as additional flags to make.
+ Like makeFlags and makeFlagsArray,
+ but only used by the installCheck phase.
+
+
+ installCheckInputs
@@ -1747,8 +1830,8 @@ set debug-file-directory ~/.nix-profile/lib/debug
A list of dependencies used by the phase. This gets included in
- buildInputs when doInstallCheck is
- set.
+ nativeBuildInputs when
+ doInstallCheck is set.
@@ -2066,30 +2149,30 @@ someVar=$(stripHash $name)
Package setup hooks
- Nix itself considers a build-time dependency merely something that should
+ Nix itself considers a build-time dependency as merely something that should
previously be built and accessible at build time—packages themselves are
on their own to perform any additional setup. In most cases, that is fine,
- and the downstream derivation can deal with it's own dependencies. But for a
+ and the downstream derivation can deal with its own dependencies. But for a
few common tasks, that would result in almost every package doing the same
- sort of setup work---depending not on the package itself, but entirely on
+ sort of setup work—depending not on the package itself, but entirely on
which dependencies were used.
- In order to alleviate this burden, the setup
- hook>mechanism was written, where any package can include a
- shell script that [by convention rather than enforcement by Nix], any
- downstream reverse-dependency will source as part of its build process. That
- allows the downstream dependency to merely specify its dependencies, and
- lets those dependencies effectively initialize themselves. No boilerplate
- mirroring the list of dependencies is needed.
+ In order to alleviate this burden, the setup hook
+ mechanism was written, where any package can include a shell script that [by
+ convention rather than enforcement by Nix], any downstream
+ reverse-dependency will source as part of its build process. That allows the
+ downstream dependency to merely specify its dependencies, and lets those
+ dependencies effectively initialize themselves. No boilerplate mirroring the
+ list of dependencies is needed.
- The Setup hook mechanism is a bit of a sledgehammer though: a powerful
+ The setup hook mechanism is a bit of a sledgehammer though: a powerful
feature with a broad and indiscriminate area of effect. The combination of
its power and implicit use may be expedient, but isn't without costs. Nix
- itself is unchanged, but the spirit of adding dependencies being effect-free
+ itself is unchanged, but the spirit of added dependencies being effect-free
is violated even if the letter isn't. For example, if a derivation path is
mentioned more than once, Nix itself doesn't care and simply makes sure the
dependency derivation is already built just the same—depending is just
@@ -2106,7 +2189,7 @@ someVar=$(stripHash $name)
The most typical use of the setup hook is actually to add other hooks which
are then run (i.e. after all the setup hooks) on each dependency. For
example, the C compiler wrapper's setup hook feeds itself flags for each
- dependency that contains relevant libaries and headers. This is done by
+ dependency that contains relevant libraries and headers. This is done by
defining a bash function, and appending its name to one of
envBuildBuildHooks`, envBuildHostHooks`,
envBuildTargetHooks`, envHostHostHooks`,
@@ -2118,14 +2201,14 @@ someVar=$(stripHash $name)
Packages adding a hook should not hard code a specific hook, but rather
choose a variable relative to how they are included.
- Returning to the C compiler wrapper example, if it itself is an
+ Returning to the C compiler wrapper example, if the wrapper itself is an
n dependency, then it only wants to accumulate flags from
n + 1 dependencies, as only those ones match the
compiler's target platform. The hostOffset variable is
defined with the current dependency's host offset
- targetOffset with its target offset, before it's setup hook
- is sourced. Additionally, since most environment hooks don't care about the
- target platform, That means the setup hook can append to the right bash
+ targetOffset with its target offset, before its setup hook is
+ sourced. Additionally, since most environment hooks don't care about the
+ target platform, that means the setup hook can append to the right bash
array by doing something like
addEnvHooks "$hostOffset" myBashFunction
@@ -2134,63 +2217,180 @@ addEnvHooks "$hostOffset" myBashFunction
The existence of setups hooks has long been documented
- and packages inside Nixpkgs are free to use these mechanism. Other packages,
+ and packages inside Nixpkgs are free to use this mechanism. Other packages,
however, should not rely on these mechanisms not changing between Nixpkgs
versions. Because of the existing issues with this system, there's little
benefit from mandating it be stable for any period of time.
- Here are some packages that provide a setup hook. Since the mechanism is
- modular, this probably isn't an exhaustive list. Then again, since the
- mechanism is only to be used as a last resort, it might be.
+ First, let’s cover some setup hooks that are part of Nixpkgs default
+ stdenv. This means that they are run for every package built using
+ stdenv.mkDerivation. Some of these are platform
+ specific, so they may run on Linux but not Darwin or vice-versa.
+
+
+ move-docs.sh
+
+
+
+ This setup hook moves any installed documentation to the
+ /share subdirectory directory. This includes the man,
+ doc and info directories. This is needed for legacy programs that do not
+ know how to use the share subdirectory.
+
+
+
+
+
+ compress-man-pages.sh
+
+
+
+ This setup hook compresses any man pages that have been installed. The
+ compression is done using the gzip program. This helps to reduce the
+ installed size of packages.
+
+
+
+
+
+ strip.sh
+
+
+
+ This runs the strip command on installed binaries and libraries. This
+ removes unnecessary information like debug symbols when they are not
+ needed. This also helps to reduce the installed size of packages.
+
+
+
+
+
+ patch-shebangs.sh
+
+
+
+ This setup hook patches installed scripts to use the full path to the
+ shebang interpreter. A shebang interpreter is the first commented line
+ of a script telling the operating system which program will run the
+ script (e.g #!/bin/bash). In Nix, we want an exact
+ path to that interpreter to be used. This often replaces
+ /bin/sh with a path in the Nix store.
+
+
+
+
+
+ audit-tmpdir.sh
+
+
+
+ This verifies that no references are left from the install binaries to
+ the directory used to build those binaries. This ensures that the
+ binaries do not need things outside the Nix store. This is currently
+ supported in Linux only.
+
+
+
+
+
+ multiple-outputs.sh
+
+
+
+ This setup hook adds configure flags that tell packages to install files
+ into any one of the proper outputs listed in outputs.
+ This behavior can be turned off by setting
+ setOutputFlags to false in the derivation
+ environment. See for more
+ information.
+
+
+
+
+
+ move-sbin.sh
+
+
+
+ This setup hook moves any binaries installed in the sbin subdirectory
+ into bin. In addition, a link is provided from sbin to bin for
+ compatibility.
+
+
+
+
+
+ move-lib64.sh
+
+
+
+ This setup hook moves any libraries installed in the lib64 subdirectory
+ into lib. In addition, a link is provided from lib64 to lib for
+ compatibility.
+
+
+
+
+
+ set-source-date-epoch-to-latest.sh
+
+
+
+ This sets SOURCE_DATE_EPOCH to the modification time
+ of the most recent file.
+
+
+
Bintools Wrapper
- Bintools Wrapper wraps the binary utilities for a bunch of miscellaneous
- purposes. These are GNU Binutils when targetting Linux, and a mix of
- cctools and GNU binutils for Darwin. [The "Bintools" name is supposed to
- be a compromise between "Binutils" and "cctools" not denoting any
- specific implementation.] Specifically, the underlying bintools package,
- and a C standard library (glibc or Darwin's libSystem, just for the
- dynamic loader) are all fed in, and dependency finding, hardening (see
- below), and purity checks for each are handled by Bintools Wrapper.
- Packages typically depend on CC Wrapper, which in turn (at run time)
- depends on Bintools Wrapper.
+ The Bintools Wrapper wraps the binary utilities for a bunch of
+ miscellaneous purposes. These are GNU Binutils when targetting Linux,
+ and a mix of cctools and GNU binutils for Darwin. [The "Bintools" name
+ is supposed to be a compromise between "Binutils" and "cctools" not
+ denoting any specific implementation.] Specifically, the underlying
+ bintools package, and a C standard library (glibc or Darwin's libSystem,
+ just for the dynamic loader) are all fed in, and dependency finding,
+ hardening (see below), and purity checks for each are handled by the
+ Bintools Wrapper. Packages typically depend on CC Wrapper, which in turn
+ (at run time) depends on the Bintools Wrapper.
- Bintools Wrapper was only just recently split off from CC Wrapper, so
- the division of labor is still being worked out. For example, it
+ The Bintools Wrapper was only just recently split off from CC Wrapper,
+ so the division of labor is still being worked out. For example, it
shouldn't care about about the C standard library, but just take a
derivation with the dynamic loader (which happens to be the glibc on
linux). Dependency finding however is a task both wrappers will continue
to need to share, and probably the most important to understand. It is
currently accomplished by collecting directories of host-platform
dependencies (i.e. buildInputs and
- nativeBuildInputs) in environment variables. Bintools
- Wrapper's setup hook causes any lib and
+ nativeBuildInputs) in environment variables. The
+ Bintools Wrapper's setup hook causes any lib and
lib64 subdirectories to be added to
- NIX_LDFLAGS. Since CC Wrapper and Bintools Wrapper use
- the same strategy, most of the Bintools Wrapper code is sparsely
- commented and refers to CC Wrapper. But CC Wrapper's code, by contrast,
- has quite lengthy comments. Bintools Wrapper merely cites those, rather
- than repeating them, to avoid falling out of sync.
+ NIX_LDFLAGS. Since the CC Wrapper and the Bintools
+ Wrapper use the same strategy, most of the Bintools Wrapper code is
+ sparsely commented and refers to the CC Wrapper. But the CC Wrapper's
+ code, by contrast, has quite lengthy comments. The Bintools Wrapper
+ merely cites those, rather than repeating them, to avoid falling out of
+ sync.
A final task of the setup hook is defining a number of standard
- environment variables to tell build systems which executables full-fill
+ environment variables to tell build systems which executables fulfill
which purpose. They are defined to just be the base name of the tools,
- under the assumption that Bintools Wrapper's binaries will be on the
+ under the assumption that the Bintools Wrapper's binaries will be on the
path. Firstly, this helps poorly-written packages, e.g. ones that look
for just gcc when CC isn't defined yet
clang is to be used. Secondly, this helps packages
not get confused when cross-compiling, in which case multiple Bintools
Wrappers may simultaneously be in use.
-
+
Each wrapper targets a single platform, so if binaries for multiple
platforms are needed, the underlying binaries must be wrapped multiple
@@ -2200,12 +2400,12 @@ addEnvHooks "$hostOffset" myBashFunction
BUILD_- and TARGET_-prefixed versions of
- the normal environment variable are defined for the additional Bintools
+ the normal environment variable are defined for additional Bintools
Wrappers, properly disambiguating them.
- A problem with this final task is that Bintools Wrapper is honest and
- defines LD as ld. Most packages,
+ A problem with this final task is that the Bintools Wrapper is honest
+ and defines LD as ld. Most packages,
however, firstly use the C compiler for linking, secondly use
LD anyways, defining it as the C compiler, and thirdly,
only so define LD when it is undefined as a fallback.
@@ -2223,33 +2423,42 @@ addEnvHooks "$hostOffset" myBashFunction
- CC Wrapper wraps a C toolchain for a bunch of miscellaneous purposes.
- Specifically, a C compiler (GCC or Clang), wrapped binary tools, and a C
- standard library (glibc or Darwin's libSystem, just for the dynamic
- loader) are all fed in, and dependency finding, hardening (see below),
- and purity checks for each are handled by CC Wrapper. Packages typically
- depend on CC Wrapper, which in turn (at run time) depends on Bintools
- Wrapper.
+ The CC Wrapper wraps a C toolchain for a bunch of miscellaneous
+ purposes. Specifically, a C compiler (GCC or Clang), wrapped binary
+ tools, and a C standard library (glibc or Darwin's libSystem, just for
+ the dynamic loader) are all fed in, and dependency finding, hardening
+ (see below), and purity checks for each are handled by the CC Wrapper.
+ Packages typically depend on the CC Wrapper, which in turn (at run-time)
+ depends on the Bintools Wrapper.
- Dependency finding is undoubtedly the main task of CC Wrapper. This
- works just like Bintools Wrapper, except that any
+ Dependency finding is undoubtedly the main task of the CC Wrapper. This
+ works just like the Bintools Wrapper, except that any
include subdirectory of any relevant dependency is
added to NIX_CFLAGS_COMPILE. The setup hook itself
contains some lengthy comments describing the exact convoluted mechanism
by which this is accomplished.
- CC Wrapper also like Bintools Wrapper defines standard environment
- variables with the names of the tools it wraps, for the same reasons
- described above. Importantly, while it includes a cc
- symlink to the c compiler for portability, the CC will be
- defined using the compiler's "real name" (i.e. gcc or
- clang). This helps lousy build systems that inspect
- on the name of the compiler rather than run it.
+ Similarly, the CC Wrapper follows the Bintools Wrapper in defining
+ standard environment variables with the names of the tools it wraps, for
+ the same reasons described above. Importantly, while it includes a
+ cc symlink to the c compiler for portability, the
+ CC will be defined using the compiler's "real name" (i.e.
+ gcc or clang). This helps lousy
+ build systems that inspect on the name of the compiler rather than run
+ it.
+
+
+
+
+ Here are some more packages that provide a setup hook. Since the list of
+ hooks is extensible, this is not an exhaustive list the mechanism is only to
+ be used as a last resort, it might cover most uses.
+
Perl
@@ -2308,7 +2517,9 @@ addEnvHooks "$hostOffset" myBashFunction
The autoreconfHook derivation adds
autoreconfPhase, which runs autoreconf, libtoolize
and automake, essentially preparing the configure script in
- autotools-based builds.
+ autotools-based builds. Most autotools-based packages come with the
+ configure script pre-generated, but this hook is necessary for a few
+ packages and when you need to patch the package’s configure scripts.
@@ -2352,7 +2563,7 @@ addEnvHooks "$hostOffset" myBashFunction
- Exports GDK_PIXBUF_MODULE_FILE environment variable the
+ Exports GDK_PIXBUF_MODULE_FILE environment variable to
the builder. Add librsvg package to buildInputs to
get svg support.
@@ -2383,42 +2594,181 @@ addEnvHooks "$hostOffset" myBashFunction
- paxctl
+ autoPatchelfHook
+
+
+
+ This is a special setup hook which helps in packaging proprietary
+ software in that it automatically tries to find missing shared library
+ dependencies of ELF files based on the given
+ buildInputs and nativeBuildInputs.
+
+
+ You can also specify a runtimeDependencies environment
+ variable which lists dependencies that are unconditionally added to all
+ executables.
+
+
+ This is useful for programs that use
+ dlopen
+ 3 to load libraries at runtime.
+
+
+ In certain situations you may want to run the main command
+ (autoPatchelf) of the setup hook on a file or a set
+ of directories instead of unconditionally patching all outputs. This can
+ be done by setting the dontAutoPatchelf environment
+ variable to a non-empty value.
+
+
+ The autoPatchelf command also recognizes a
+ --no-recurse command line flag,
+ which prevents it from recursing into subdirectories.
+
+
+
+
+
+ breakpointHook
- Defines the paxmark helper for setting per-executable
- PaX flags on Linux (where it is available by default; on all other
- platforms, paxmark is a no-op). For example, to
- disable secure memory protections on the executable
- foo:
+ This hook will make a build pause instead of stopping when a failure
+ happens. It prevents nix from cleaning up the build environment
+ immediately and allows the user to attach to a build environment using
+ the cntr command. Upon build error it will print
+ instructions on how to use cntr, which can be used to
+ enter the environment for debugging. Installing cntr and running the
+ command will provide shell access to the build sandbox of failed build.
+ At /var/lib/cntr the sandboxed filesystem is
+ mounted. All commands and files of the system are still accessible
+ within the shell. To execute commands from the sandbox use the cntr exec
+ subcommand. Note that cntr also needs to be executed
+ on the machine that is doing the build, which might not be the case when
+ remote builders are enabled. cntr is only supported
+ on Linux-based platforms. To use it first add cntr to
+ your environment.systemPackages on NixOS or
+ alternatively to the root user on non-NixOS systems. Then in the package
+ that is supposed to be inspected, add breakpointHook
+ to nativeBuildInputs.
- postFixup = ''
- paxmark m $out/bin/foo
- '';
-
- The m flag is the most common flag and is typically
- required for applications that employ JIT compilation or otherwise need
- to execute code generated at run-time. Disabling PaX protections should
- be considered a last resort: if possible, problematic features should be
- disabled or patched to work with PaX.
+ nativeBuildInputs = [ breakpointHook ];
+
+ When a build failure happens there will be an instruction printed that
+ shows how to attach with cntr to the build sandbox.
- autoPatchelfHook
+ libiconv, libintl
- This is a special setup hook which helps in packaging proprietary
- software in that it automatically tries to find missing shared library
- dependencies of ELF files. All packages within the
- runtimeDependencies environment variable are
- unconditionally added to executables, which is useful for programs that
- use
- dlopen
- 3 to load libraries at runtime.
+ A few libraries automatically add to NIX_LDFLAGS
+ their library, making their symbols automatically available to the
+ linker. This includes libiconv and libintl (gettext). This is done to
+ provide compatibility between GNU Linux, where libiconv and libintl are
+ bundled in, and other systems where that might not be the case.
+ Sometimes, this behavior is not desired. To disable this behavior, set
+ dontAddExtraLibs.
+
+
+
+
+
+ cmake
+
+
+
+ Overrides the default configure phase to run the CMake command. By
+ default, we use the Make generator of CMake. In addition, dependencies
+ are added automatically to CMAKE_PREFIX_PATH so that packages are
+ correctly detected by CMake. Some additional flags are passed in to give
+ similar behavior to configure-based packages. You can disable this
+ hook’s behavior by setting configurePhase to a custom value, or by
+ setting dontUseCmakeConfigure. cmakeFlags controls flags passed only to
+ CMake. By default, parallel building is enabled as CMake supports
+ parallel building almost everywhere. When Ninja is also in use, CMake
+ will detect that and use the ninja generator.
+
+
+
+
+
+ xcbuildHook
+
+
+
+ Overrides the build and install phases to run the “xcbuild” command.
+ This hook is needed when a project only comes with build files for the
+ XCode build system. You can disable this behavior by setting buildPhase
+ and configurePhase to a custom value. xcbuildFlags controls flags passed
+ only to xcbuild.
+
+
+
+
+
+ meson
+
+
+
+ Overrides the configure phase to run meson to generate Ninja files. You
+ can disable this behavior by setting configurePhase to a custom value,
+ or by setting dontUseMesonConfigure. To run these files, you should
+ accompany meson with ninja. mesonFlags controls only the flags passed to
+ meson. By default, parallel building is enabled as Meson supports
+ parallel building almost everywhere.
+
+
+
+
+
+ ninja
+
+
+
+ Overrides the build, install, and check phase to run ninja instead of
+ make. You can disable this behavior with the dontUseNinjaBuild,
+ dontUseNinjaInstall, and dontUseNinjaCheck, respectively. Parallel
+ building is enabled by default in Ninja.
+
+
+
+
+
+ unzip
+
+
+
+ This setup hook will allow you to unzip .zip files specified in $src.
+ There are many similar packages like unrar, undmg, etc.
+
+
+
+
+
+ wafHook
+
+
+
+ Overrides the configure, build, and install phases. This will run the
+ "waf" script used by many projects. If wafPath (default ./waf) doesn’t
+ exist, it will copy the version of waf available in Nixpkgs. wafFlags can
+ be used to pass flags to the waf script.
+
+
+
+
+
+ scons
+
+
+
+ Overrides the build, install, and check phases. This uses the scons
+ build system as a replacement for make. scons does not provide a
+ configure phase, so everything is managed at build and install time.
diff --git a/doc/style.css b/doc/style.css
index 0db907815b6b77496871cd266fcc828b51ae57d9..474dd32e3fb148c0aa7000dce2967a4e4dff8533 100644
--- a/doc/style.css
+++ b/doc/style.css
@@ -9,6 +9,7 @@
body
{
font-family: "Nimbus Sans L", sans-serif;
+ font-size: 1em;
background: white;
margin: 2em 1em 2em 1em;
}
@@ -28,6 +29,25 @@ h2 /* chapters, appendices, subtitle */
font-size: 180%;
}
+div.book
+{
+ text-align: center;
+}
+
+div.book > div
+{
+ /*
+ * based on https://medium.com/@zkareemz/golden-ratio-62b3b6d4282a
+ * we do 70 characters per line to fit code listings better
+ * 70 * (font-size / 1.618)
+ * expression for emacs:
+ * (* 70 (/ 1 1.618))
+ */
+ max-width: 43.2em;
+ text-align: left;
+ margin: auto;
+}
+
/* Extra space between chapters, appendices. */
div.chapter > div.titlepage h2, div.appendix > div.titlepage h2
{
@@ -102,8 +122,8 @@ pre.screen, pre.programlisting
{
border: 1px solid #b0b0b0;
padding: 3px 3px;
- margin-left: 1.5em;
- margin-right: 1.5em;
+ margin-left: 0.5em;
+ margin-right: 0.5em;
background: #f4f4f8;
font-family: monospace;
diff --git a/doc/submitting-changes.xml b/doc/submitting-changes.xml
index 6c6f808f631ec497f637cb2e40b431dd57ee0b45..bc090fd757ce0c336748113359207038c38b48be 100644
--- a/doc/submitting-changes.xml
+++ b/doc/submitting-changes.xml
@@ -2,7 +2,7 @@
xmlns:xlink="http://www.w3.org/1999/xlink"
xml:id="chap-submitting-changes">
Submitting changes
-
+ Making patches
@@ -205,7 +205,7 @@ Additional information.
-
+ Submitting changes
@@ -253,7 +253,7 @@ Additional information.
-
+ Pull Request Template
@@ -269,7 +269,7 @@ Additional information.
below:
-
+ Tested using sandboxing
@@ -322,7 +322,7 @@ Additional information.
-
+ Built on platform(s)
@@ -334,7 +334,7 @@ Additional information.
-
+ Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
@@ -350,30 +350,29 @@ Additional information.
-
- Tested compilation of all pkgs that depend on this change using nox-review
+
+ Tested compilation of all pkgs that depend on this change using nix-review
- If you are updating a package's version, you can use nox to make sure all
- packages that depend on the updated package still compile correctly. This
- can be done using the nox utility. The nox-review
- utility can look for and build all dependencies either based on uncommited
- changes with the wip option or specifying a github pull
- request number.
+ If you are updating a package's version, you can use nix-review to make
+ sure all packages that depend on the updated package still compile
+ correctly. The nix-review utility can look for and build
+ all dependencies either based on uncommited changes with the
+ wip option or specifying a github pull request number.
- review uncommitted changes:
-nix-shell -p nox --run "nox-review wip"
+ review changes from pull request number 12345:
+nix-shell -p nix-review --run "nix-review pr 12345"
- review changes from pull request number 12345:
-nix-shell -p nox --run "nox-review pr 12345"
+ review uncommitted changes:
+nix-shell -p nix-review --run "nix-review wip"
-
+ Tested execution of all binary files (usually in ./result/bin/)
@@ -387,8 +386,8 @@ Additional information.
-
- Meets nixpkgs contribution standards
+
+ Meets Nixpkgs contribution standards
The last checkbox is fits
@@ -402,7 +401,7 @@ Additional information.
-
+ Hotfixing pull requests
@@ -430,7 +429,7 @@ Additional information.
-
+ Commit policy
@@ -456,7 +455,7 @@ Additional information.
-
+ Master branch
@@ -468,7 +467,7 @@ Additional information.
-
+ Staging branch
@@ -493,7 +492,7 @@ Additional information.
-
+ Stable release branches
diff --git a/lib/asserts.nix b/lib/asserts.nix
new file mode 100644
index 0000000000000000000000000000000000000000..8a5f1fb3feb76a200ba2c9c016ab50d7e6e1a0c4
--- /dev/null
+++ b/lib/asserts.nix
@@ -0,0 +1,44 @@
+{ lib }:
+
+rec {
+
+ /* Print a trace message if pred is false.
+ Intended to be used to augment asserts with helpful error messages.
+
+ Example:
+ assertMsg false "nope"
+ => false
+ stderr> trace: nope
+
+ assert (assertMsg ("foo" == "bar") "foo is not bar, silly"); ""
+ stderr> trace: foo is not bar, silly
+ stderr> assert failed at …
+
+ Type:
+ assertMsg :: Bool -> String -> Bool
+ */
+ # TODO(Profpatsch): add tests that check stderr
+ assertMsg = pred: msg:
+ if pred
+ then true
+ else builtins.trace msg false;
+
+ /* Specialized `assertMsg` for checking if val is one of the elements
+ of a list. Useful for checking enums.
+
+ Example:
+ let sslLibrary = "libressl"
+ in assertOneOf "sslLibrary" sslLibrary [ "openssl" "bearssl" ]
+ => false
+ stderr> trace: sslLibrary must be one of "openssl", "bearssl", but is: "libressl"
+
+ Type:
+ assertOneOf :: String -> ComparableVal -> List ComparableVal -> Bool
+ */
+ assertOneOf = name: val: xs: assertMsg
+ (lib.elem val xs)
+ "${name} must be one of ${
+ lib.generators.toPretty {} xs}, but is: ${
+ lib.generators.toPretty {} val}";
+
+}
diff --git a/lib/attrsets.nix b/lib/attrsets.nix
index cda13ee43eedebc1bea5199d899dd864392fe58e..d374d229f5975f0eddb5b03d379fc0ce1d359c96 100644
--- a/lib/attrsets.nix
+++ b/lib/attrsets.nix
@@ -94,6 +94,15 @@ rec {
attrValues = builtins.attrValues or (attrs: attrVals (attrNames attrs) attrs);
+ /* Given a set of attribute names, return the set of the corresponding
+ attributes from the given set.
+
+ Example:
+ getAttrs [ "a" "b" ] { a = 1; b = 2; c = 3; }
+ => { a = 1; b = 2; }
+ */
+ getAttrs = names: attrs: genAttrs names (name: attrs.${name});
+
/* Collect each attribute named `attr' from a list of attribute
sets. Sets that don't contain the named attribute are ignored.
@@ -145,7 +154,7 @@ rec {
foldAttrs = op: nul: list_of_attrs:
fold (n: a:
fold (name: o:
- o // (listToAttrs [{inherit name; value = op n.${name} (a.${name} or nul); }])
+ o // { ${name} = op n.${name} (a.${name} or nul); }
) a (attrNames n)
) {} list_of_attrs;
@@ -435,12 +444,15 @@ rec {
useful for deep-overriding.
Example:
- x = { a = { b = 4; c = 3; }; }
- overrideExisting x { a = { b = 6; d = 2; }; }
- => { a = { b = 6; d = 2; }; }
+ overrideExisting {} { a = 1; }
+ => {}
+ overrideExisting { b = 2; } { a = 1; }
+ => { b = 2; }
+ overrideExisting { a = 3; b = 2; } { a = 1; }
+ => { a = 1; b = 2; }
*/
overrideExisting = old: new:
- old // listToAttrs (map (attr: nameValuePair attr (attrByPath [attr] old.${attr} new)) (attrNames old));
+ mapAttrs (name: value: new.${name} or value) old;
/* Get a package output.
If no output is found, fallback to `.out` and then to the default.
diff --git a/lib/composable-derivation.nix b/lib/composable-derivation.nix
deleted file mode 100644
index cb1fdc121e11b7bfbcf4a25864568fe3077df2e3..0000000000000000000000000000000000000000
--- a/lib/composable-derivation.nix
+++ /dev/null
@@ -1,113 +0,0 @@
-{lib, pkgs}:
-let inherit (lib) nvs; in
-{
-
- # composableDerivation basically mixes these features:
- # - fix function
- # - mergeAttrBy
- # - provides shortcuts for "options" such as "--enable-foo" and adding
- # buildInputs, see php example
- #
- # It predates styles which are common today, such as
- # * the config attr
- # * mkDerivation.override feature
- # * overrideDerivation (lib/customization.nix)
- #
- # Some of the most more important usage examples (which could be rewritten if it was important):
- # * php
- # * postgis
- # * vim_configurable
- #
- # A minimal example illustrating most features would look like this:
- # let base = composableDerivation { (fixed: let inherit (fixed.fixed) name in {
- # src = fetchurl {
- # }
- # buildInputs = [A];
- # preConfigre = "echo ${name}";
- # # attention, "name" attr is missing, thus you cannot instantiate "base".
- # }
- # in {
- # # These all add name attribute, thus you can instantiate those:
- # v1 = base.merge ({ name = "foo-add-B"; buildInputs = [B]; }); // B gets merged into buildInputs
- # v2 = base.merge ({ name = "mix-in-pre-configure-lines" preConfigre = ""; });
- # v3 = base.replace ({ name = "foo-no-A-only-B;" buildInputs = [B]; });
- # }
- #
- # So yes, you can think about it being something like nixos modules, and
- # you'd be merging "features" in one at a time using .merge or .replace
- # Thanks Shea for telling me that I rethink the documentation ..
- #
- # issues:
- # * its complicated to understand
- # * some "features" such as exact merge behaviour are buried in mergeAttrBy
- # and defaultOverridableDelayableArgs assuming the default behaviour does
- # the right thing in the common case
- # * Eelco once said using such fix style functions are slow to evaluate
- # * Too quick & dirty. Hard to understand for others. The benefit was that
- # you were able to create a kernel builder like base derivation and replace
- # / add patches the way you want without having to declare function arguments
- #
- # nice features:
- # declaring "optional features" is modular. For instance:
- # flags.curl = {
- # configureFlags = ["--with-curl=${curl.dev}" "--with-curlwrappers"];
- # buildInputs = [curl openssl];
- # };
- # flags.other = { .. }
- # (Example taken from PHP)
- #
- # alternative styles / related features:
- # * Eg see function supporting building the kernel
- # * versionedDerivation (discussion about this is still going on - or ended)
- # * composedArgsAndFun
- # * mkDerivation.override
- # * overrideDerivation
- # * using { .., *Support ? false }: like configurable options.
- # To find those examples use grep
- #
- # To sum up: It exists for historical reasons - and for most commonly used
- # tasks the alternatives should be used
- #
- # If you have questions about this code ping Marc Weber.
- composableDerivation = {
- mkDerivation ? pkgs.stdenv.mkDerivation,
-
- # list of functions to be applied before defaultOverridableDelayableArgs removes removeAttrs names
- # prepareDerivationArgs handles derivation configurations
- applyPreTidy ? [ lib.prepareDerivationArgs ],
-
- # consider adding addtional elements by derivation.merge { removeAttrs = ["elem"]; };
- removeAttrs ? ["cfg" "flags"]
-
- }: (lib.defaultOverridableDelayableArgs ( a: mkDerivation a)
- {
- inherit applyPreTidy removeAttrs;
- }).merge;
-
- # some utility functions
- # use this function to generate flag attrs for prepareDerivationArgs
- # E nable D isable F eature
- edf = {name, feat ? name, enable ? {}, disable ? {} , value ? ""}:
- nvs name {
- set = {
- configureFlags = ["--enable-${feat}${if value == "" then "" else "="}${value}"];
- } // enable;
- unset = {
- configureFlags = ["--disable-${feat}"];
- } // disable;
- };
-
- # same for --with and --without-
- # W ith or W ithout F eature
- wwf = {name, feat ? name, enable ? {}, disable ? {}, value ? ""}:
- nvs name {
- set = enable // {
- configureFlags = ["--with-${feat}${if value == "" then "" else "="}${value}"]
- ++ lib.maybeAttr "configureFlags" [] enable;
- };
- unset = disable // {
- configureFlags = ["--without-${feat}"]
- ++ lib.maybeAttr "configureFlags" [] disable;
- };
- };
-}
diff --git a/lib/customisation.nix b/lib/customisation.nix
index 0107ed33d9e432c405d1a73492a7085dfa1096e0..1f5eb0d11e8bf7726184c8f10698d483374e1e73 100644
--- a/lib/customisation.nix
+++ b/lib/customisation.nix
@@ -121,7 +121,7 @@ rec {
auto = builtins.intersectAttrs (lib.functionArgs f) autoArgs;
origArgs = auto // args;
pkgs = f origArgs;
- mkAttrOverridable = name: pkg: makeOverridable (newArgs: (f newArgs).${name}) origArgs;
+ mkAttrOverridable = name: _: makeOverridable (newArgs: (f newArgs).${name}) origArgs;
in lib.mapAttrs mkAttrOverridable pkgs;
@@ -185,7 +185,7 @@ rec {
/* Make a set of packages with a common scope. All packages called
with the provided `callPackage' will be evaluated with the same
arguments. Any package in the set may depend on any other. The
- `overrideScope' function allows subsequent modification of the package
+ `overrideScope'` function allows subsequent modification of the package
set in a consistent way, i.e. all packages in the set will be
called with the overridden packages. The package sets may be
hierarchical: the packages in the set are called with the scope
@@ -195,10 +195,10 @@ rec {
let self = f self // {
newScope = scope: newScope (self // scope);
callPackage = self.newScope {};
- # TODO(@Ericson2314): Haromonize argument order of `g` with everything else
- overrideScope = g:
- makeScope newScope
- (lib.fixedPoints.extends (lib.flip g) f);
+ overrideScope = g: lib.warn
+ "`overrideScope` (from `lib.makeScope`) is deprecated. Do `overrideScope' (self: super: { … })` instead of `overrideScope (super: self: { … })`. All other overrides have the parameters in that order, including other definitions of `overrideScope`. This was the only definition violating the pattern."
+ (makeScope newScope (lib.fixedPoints.extends (lib.flip g) f));
+ overrideScope' = g: makeScope newScope (lib.fixedPoints.extends g f);
packages = f;
};
in self;
diff --git a/lib/debug.nix b/lib/debug.nix
index 383eb32d75d0d8be32e4c98c3c8c1c548ff365be..2879f72ed2ba431a10692a92e5e09a1298676487 100644
--- a/lib/debug.nix
+++ b/lib/debug.nix
@@ -23,27 +23,54 @@ rec {
# -- TRACING --
- /* Trace msg, but only if pred is true.
+ /* Conditionally trace the supplied message, based on a predicate.
+
+ Type: traceIf :: bool -> string -> a -> a
Example:
traceIf true "hello" 3
trace: hello
=> 3
*/
- traceIf = pred: msg: x: if pred then trace msg x else x;
+ traceIf =
+ # Predicate to check
+ pred:
+ # Message that should be traced
+ msg:
+ # Value to return
+ x: if pred then trace msg x else x;
+
+ /* Trace the supplied value after applying a function to it, and
+ return the original value.
- /* Trace the value and also return it.
+ Type: traceValFn :: (a -> b) -> a -> a
Example:
traceValFn (v: "mystring ${v}") "foo"
trace: mystring foo
=> "foo"
*/
- traceValFn = f: x: trace (f x) x;
+ traceValFn =
+ # Function to apply
+ f:
+ # Value to trace and return
+ x: trace (f x) x;
+
+ /* Trace the supplied value and return it.
+
+ Type: traceVal :: a -> a
+
+ Example:
+ traceVal 42
+ # trace: 42
+ => 42
+ */
traceVal = traceValFn id;
/* `builtins.trace`, but the value is `builtins.deepSeq`ed first.
+ Type: traceSeq :: a -> b -> b
+
Example:
trace { a.b.c = 3; } null
trace: { a = ; }
@@ -52,7 +79,11 @@ rec {
trace: { a = { b = { c = 3; }; }; }
=> null
*/
- traceSeq = x: y: trace (builtins.deepSeq x x) y;
+ traceSeq =
+ # The value to trace
+ x:
+ # The value to return
+ y: trace (builtins.deepSeq x x) y;
/* Like `traceSeq`, but only evaluate down to depth n.
This is very useful because lots of `traceSeq` usages
@@ -76,27 +107,49 @@ rec {
in trace (generators.toPretty { allowPrettyValues = true; }
(modify depth snip x)) y;
- /* A combination of `traceVal` and `traceSeq` */
- traceValSeqFn = f: v: traceValFn f (builtins.deepSeq v v);
+ /* A combination of `traceVal` and `traceSeq` that applies a
+ provided function to the value to be traced after `deepSeq`ing
+ it.
+ */
+ traceValSeqFn =
+ # Function to apply
+ f:
+ # Value to trace
+ v: traceValFn f (builtins.deepSeq v v);
+
+ /* A combination of `traceVal` and `traceSeq`. */
traceValSeq = traceValSeqFn id;
+ /* A combination of `traceVal` and `traceSeqN` that applies a
+ provided function to the value to be traced. */
+ traceValSeqNFn =
+ # Function to apply
+ f:
+ depth:
+ # Value to trace
+ v: traceSeqN depth (f v) v;
+
/* A combination of `traceVal` and `traceSeqN`. */
- traceValSeqNFn = f: depth: v: traceSeqN depth (f v) v;
traceValSeqN = traceValSeqNFn id;
# -- TESTING --
- /* Evaluate a set of tests. A test is an attribute set {expr,
- expected}, denoting an expression and its expected result. The
- result is a list of failed tests, each represented as {name,
- expected, actual}, denoting the attribute name of the failing
- test and its expected and actual results. Used for regression
- testing of the functions in lib; see tests.nix for an example.
- Only tests having names starting with "test" are run.
- Add attr { tests = ["testName"]; } to run these test only
+ /* Evaluate a set of tests. A test is an attribute set `{expr,
+ expected}`, denoting an expression and its expected result. The
+ result is a list of failed tests, each represented as `{name,
+ expected, actual}`, denoting the attribute name of the failing
+ test and its expected and actual results.
+
+ Used for regression testing of the functions in lib; see
+ tests.nix for an example. Only tests having names starting with
+ "test" are run.
+
+ Add attr { tests = ["testName"]; } to run these tests only.
*/
- runTests = tests: lib.concatLists (lib.attrValues (lib.mapAttrs (name: test:
+ runTests =
+ # Tests to run
+ tests: lib.concatLists (lib.attrValues (lib.mapAttrs (name: test:
let testsToRun = if tests ? tests then tests.tests else [];
in if (substring 0 4 name == "test" || elem name testsToRun)
&& ((testsToRun == []) || elem name tests.tests)
@@ -105,8 +158,11 @@ rec {
then [ { inherit name; expected = test.expected; result = test.expr; } ]
else [] ) tests));
- # create a test assuming that list elements are true
- # usage: { testX = allTrue [ true ]; }
+ /* Create a test assuming that list elements are `true`.
+
+ Example:
+ { testX = allTrue [ true ]; }
+ */
testAllTrue = expr: { inherit expr; expected = map (x: true) expr; };
diff --git a/lib/default.nix b/lib/default.nix
index dd6fcec75e219ca9f846ca5ed67cf3dfee903ba4..8735b6476795bb9b81f3dbd76f5154443ddbfe64 100644
--- a/lib/default.nix
+++ b/lib/default.nix
@@ -38,10 +38,11 @@ let
systems = callLibs ./systems;
# misc
+ asserts = callLibs ./asserts.nix;
debug = callLibs ./debug.nix;
-
generators = callLibs ./generators.nix;
misc = callLibs ./deprecated.nix;
+
# domain-specific
fetchers = callLibs ./fetchers.nix;
@@ -58,13 +59,12 @@ let
stringLength sub substring tail;
inherit (trivial) id const concat or and bitAnd bitOr bitXor bitNot
boolToString mergeAttrs flip mapNullable inNixShell min max
- importJSON warn info nixpkgsVersion version mod compare
+ importJSON warn info showWarnings nixpkgsVersion version mod compare
splitByAndCompare functionArgs setFunctionArgs isFunction;
-
- inherit (fixedPoints) fix fix' extends composeExtensions
+ inherit (fixedPoints) fix fix' converge extends composeExtensions
makeExtensible makeExtensibleWithCustomName;
inherit (attrsets) attrByPath hasAttrByPath setAttrByPath
- getAttrFromPath attrVals attrValues catAttrs filterAttrs
+ getAttrFromPath attrVals attrValues getAttrs catAttrs filterAttrs
filterAttrsRecursive foldAttrs collect nameValuePair mapAttrs
mapAttrs' mapAttrsToList mapAttrsRecursive mapAttrsRecursiveCond
genAttrs isDerivation toDerivation optionalAttrs
@@ -80,8 +80,8 @@ let
inherit (strings) concatStrings concatMapStrings concatImapStrings
intersperse concatStringsSep concatMapStringsSep
concatImapStringsSep makeSearchPath makeSearchPathOutput
- makeLibraryPath makeBinPath makePerlPath makeFullPerlPath optionalString
- hasPrefix hasSuffix stringToCharacters stringAsChars escape
+ makeLibraryPath makeBinPath optionalString
+ hasInfix hasPrefix hasSuffix stringToCharacters stringAsChars escape
escapeShellArg escapeShellArgs replaceChars lowerChars
upperChars toLower toUpper addContextFrom splitString
removePrefix removeSuffix versionOlder versionAtLeast getVersion
@@ -94,7 +94,7 @@ let
callPackageWith callPackagesWith extendDerivation hydraJob
makeScope;
inherit (meta) addMetaAttrs dontDistribute setName updateName
- appendToName mapDerivationAttrset lowPrio lowPrioSet hiPrio
+ appendToName mapDerivationAttrset setPrio lowPrio lowPrioSet hiPrio
hiPrioSet;
inherit (sources) pathType pathIsDirectory cleanSourceFilter
cleanSource sourceByRegex sourceFilesBySuffices
@@ -117,20 +117,22 @@ let
unknownModule mkOption;
inherit (types) isType setType defaultTypeMerge defaultFunctor
isOptionType mkOptionType;
+ inherit (asserts)
+ assertMsg assertOneOf;
inherit (debug) addErrorContextToAttrs traceIf traceVal traceValFn
traceXMLVal traceXMLValMarked traceSeq traceSeqN traceValSeq
traceValSeqFn traceValSeqN traceValSeqNFn traceShowVal
traceShowValMarked showVal traceCall traceCall2 traceCall3
traceValIfNot runTests testAllTrue traceCallXml attrNamesToStr;
inherit (misc) maybeEnv defaultMergeArg defaultMerge foldArgs
- defaultOverridableDelayableArgs composedArgsAndFun
maybeAttrNullable maybeAttr ifEnable checkFlag getValue
checkReqs uniqList uniqListExt condConcat lazyGenericClosure
innerModifySumArgs modifySumArgs innerClosePropagation
closePropagation mapAttrsFlatten nvs setAttr setAttrMerge
mergeAttrsWithFunc mergeAttrsConcatenateValues
mergeAttrsNoOverride mergeAttrByFunc mergeAttrsByFuncDefaults
- mergeAttrsByFuncDefaultsClean mergeAttrBy prepareDerivationArgs
- nixType imap overridableDelayableArgs;
+ mergeAttrsByFuncDefaultsClean mergeAttrBy
+ fakeSha256 fakeSha512
+ nixType imap;
});
in lib
diff --git a/lib/deprecated.nix b/lib/deprecated.nix
index 34cf336d1f42c4c4c6fc3adf3d6033ee1487a547..15de50456612876a596d0ed3b71201629df53191 100644
--- a/lib/deprecated.nix
+++ b/lib/deprecated.nix
@@ -35,74 +35,6 @@ rec {
withStdOverrides;
- # predecessors: proposed replacement for applyAndFun (which has a bug cause it merges twice)
- # the naming "overridableDelayableArgs" tries to express that you can
- # - override attr values which have been supplied earlier
- # - use attr values before they have been supplied by accessing the fix point
- # name "fixed"
- # f: the (delayed overridden) arguments are applied to this
- #
- # initial: initial attrs arguments and settings. see defaultOverridableDelayableArgs
- #
- # returns: f applied to the arguments // special attributes attrs
- # a) merge: merge applied args with new args. Wether an argument is overridden depends on the merge settings
- # b) replace: this let's you replace and remove names no matter which merge function has been set
- #
- # examples: see test cases "res" below;
- overridableDelayableArgs =
- f: # the function applied to the arguments
- initial: # you pass attrs, the functions below are passing a function taking the fix argument
- let
- takeFixed = if lib.isFunction initial then initial else (fixed : initial); # transform initial to an expression always taking the fixed argument
- tidy = args:
- let # apply all functions given in "applyPreTidy" in sequence
- applyPreTidyFun = fold ( n: a: x: n ( a x ) ) lib.id (maybeAttr "applyPreTidy" [] args);
- in removeAttrs (applyPreTidyFun args) ( ["applyPreTidy"] ++ (maybeAttr "removeAttrs" [] args) ); # tidy up args before applying them
- fun = n: x:
- let newArgs = fixed:
- let args = takeFixed fixed;
- mergeFun = args.${n};
- in if isAttrs x then (mergeFun args x)
- else assert lib.isFunction x;
- mergeFun args (x ( args // { inherit fixed; }));
- in overridableDelayableArgs f newArgs;
- in
- (f (tidy (lib.fix takeFixed))) // {
- merge = fun "mergeFun";
- replace = fun "keepFun";
- };
- defaultOverridableDelayableArgs = f:
- let defaults = {
- mergeFun = mergeAttrByFunc; # default merge function. merge strategie (concatenate lists, strings) is given by mergeAttrBy
- keepFun = a: b: { inherit (a) removeAttrs mergeFun keepFun mergeAttrBy; } // b; # even when using replace preserve these values
- applyPreTidy = []; # list of functions applied to args before args are tidied up (usage case : prepareDerivationArgs)
- mergeAttrBy = mergeAttrBy // {
- applyPreTidy = a: b: a ++ b;
- removeAttrs = a: b: a ++ b;
- };
- removeAttrs = ["mergeFun" "keepFun" "mergeAttrBy" "removeAttrs" "fixed" ]; # before applying the arguments to the function make sure these names are gone
- };
- in (overridableDelayableArgs f defaults).merge;
-
-
-
- # rec { # an example of how composedArgsAndFun can be used
- # a = composedArgsAndFun (x: x) { a = ["2"]; meta = { d = "bar";}; };
- # # meta.d will be lost ! It's your task to preserve it (eg using a merge function)
- # b = a.passthru.function { a = [ "3" ]; meta = { d2 = "bar2";}; };
- # # instead of passing/ overriding values you can use a merge function:
- # c = b.passthru.function ( x: { a = x.a ++ ["4"]; }); # consider using (maybeAttr "a" [] x)
- # }
- # result:
- # {
- # a = { a = ["2"]; meta = { d = "bar"; }; passthru = { function = .. }; };
- # b = { a = ["3"]; meta = { d2 = "bar2"; }; passthru = { function = .. }; };
- # c = { a = ["3" "4"]; meta = { d2 = "bar2"; }; passthru = { function = .. }; };
- # # c2 is equal to c
- # }
- composedArgsAndFun = f: foldArgs defaultMerge f {};
-
-
# shortcut for attrByPath ["name"] default attrs
maybeAttrNullable = maybeAttr;
@@ -285,7 +217,7 @@ rec {
# };
# will result in
# { mergeAttrsBy = [...]; buildInputs = [ a b c d ]; }
- # is used by prepareDerivationArgs, defaultOverridableDelayableArgs and can be used when composing using
+ # is used by defaultOverridableDelayableArgs and can be used when composing using
# foldArgs, composedArgsAndFun or applyAndFun. Example: composableDerivation in all-packages.nix
mergeAttrByFunc = x: y:
let
@@ -318,58 +250,6 @@ rec {
// listToAttrs (map (n: nameValuePair n (a: b: "${a}\n${b}") ) [ "preConfigure" "postInstall" ])
;
- # prepareDerivationArgs tries to make writing configurable derivations easier
- # example:
- # prepareDerivationArgs {
- # mergeAttrBy = {
- # myScript = x: y: x ++ "\n" ++ y;
- # };
- # cfg = {
- # readlineSupport = true;
- # };
- # flags = {
- # readline = {
- # set = {
- # configureFlags = [ "--with-compiler=${compiler}" ];
- # buildInputs = [ compiler ];
- # pass = { inherit compiler; READLINE=1; };
- # assertion = compiler.dllSupport;
- # myScript = "foo";
- # };
- # unset = { configureFlags = ["--without-compiler"]; };
- # };
- # };
- # src = ...
- # buildPhase = '' ... '';
- # name = ...
- # myScript = "bar";
- # };
- # if you don't have need for unset you can omit the surrounding set = { .. } attr
- # all attrs except flags cfg and mergeAttrBy will be merged with the
- # additional data from flags depending on config settings
- # It's used in composableDerivation in all-packages.nix. It's also used
- # heavily in the new python and libs implementation
- #
- # should we check for misspelled cfg options?
- # TODO use args.mergeFun here as well?
- prepareDerivationArgs = args:
- let args2 = { cfg = {}; flags = {}; } // args;
- flagName = name: "${name}Support";
- cfgWithDefaults = (listToAttrs (map (n: nameValuePair (flagName n) false) (attrNames args2.flags)))
- // args2.cfg;
- opts = attrValues (mapAttrs (a: v:
- let v2 = if v ? set || v ? unset then v else { set = v; };
- n = if cfgWithDefaults.${flagName a} then "set" else "unset";
- attr = maybeAttr n {} v2; in
- if (maybeAttr "assertion" true attr)
- then attr
- else throw "assertion of flag ${a} of derivation ${args.name} failed"
- ) args2.flags );
- in removeAttrs
- (mergeAttrsByFuncDefaults ([args] ++ opts ++ [{ passthru = cfgWithDefaults; }]))
- ["flags" "cfg" "mergeAttrBy" ];
-
-
nixType = x:
if isAttrs x then
if x ? outPath then "derivation"
@@ -390,4 +270,8 @@ rec {
starting at zero.
*/
imap = imap1;
+
+ # Fake hashes. Can be used as hash placeholders, when computing hash ahead isn't trivial
+ fakeSha256 = "0000000000000000000000000000000000000000000000000000000000000000";
+ fakeSha512 = "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000";
}
diff --git a/lib/fixed-points.nix b/lib/fixed-points.nix
index 13e053b5aa7dbffcd1db7fe576fea52efc0fa63b..968930526a6394a80d3f5f635b3883a77441bc2b 100644
--- a/lib/fixed-points.nix
+++ b/lib/fixed-points.nix
@@ -24,6 +24,19 @@ rec {
# for a concrete example.
fix' = f: let x = f x // { __unfix__ = f; }; in x;
+ # Return the fixpoint that `f` converges to when called recursively, starting
+ # with the input `x`.
+ #
+ # nix-repl> converge (x: x / 2) 16
+ # 0
+ converge = f: x:
+ let
+ x' = f x;
+ in
+ if x' == x
+ then x
+ else converge f x';
+
# Modify the contents of an explicitly recursive attribute set in a way that
# honors `self`-references. This is accomplished with a function
#
@@ -41,6 +54,18 @@ rec {
# think of it as an infix operator `g extends f` that mimics the syntax from
# Java. It may seem counter-intuitive to have the "base class" as the second
# argument, but it's nice this way if several uses of `extends` are cascaded.
+ #
+ # To get a better understanding how `extends` turns a function with a fix
+ # point (the package set we start with) into a new function with a different fix
+ # point (the desired packages set) lets just see, how `extends g f`
+ # unfolds with `g` and `f` defined above:
+ #
+ # extends g f = self: let super = f self; in super // g self super;
+ # = self: let super = { foo = "foo"; bar = "bar"; foobar = self.foo + self.bar; }; in super // g self super
+ # = self: { foo = "foo"; bar = "bar"; foobar = self.foo + self.bar; } // g self { foo = "foo"; bar = "bar"; foobar = self.foo + self.bar; }
+ # = self: { foo = "foo"; bar = "bar"; foobar = self.foo + self.bar; } // { foo = "foo" + " + "; }
+ # = self: { foo = "foo + "; bar = "bar"; foobar = self.foo + self.bar; }
+ #
extends = f: rattrs: self: let super = rattrs self; in super // f self super;
# Compose two extending functions of the type expected by 'extends'
diff --git a/lib/generators.nix b/lib/generators.nix
index f5faf70078605698b808210a58db7bae94b1c644..863ba847423ee0c322a3fd3abe5679b28d2414c3 100644
--- a/lib/generators.nix
+++ b/lib/generators.nix
@@ -143,6 +143,7 @@ rec {
}@args: v: with builtins;
let isPath = v: typeOf v == "path";
in if isInt v then toString v
+ else if isFloat v then "~${toString v}"
else if isString v then ''"${libStr.escape [''"''] v}"''
else if true == v then "true"
else if false == v then "false"
diff --git a/lib/kernel.nix b/lib/kernel.nix
index 45b33aea7b87190364d4b99914b612021051a349..5923011774b153961c9ac55a419fe17fa9de5538 100644
--- a/lib/kernel.nix
+++ b/lib/kernel.nix
@@ -1,57 +1,21 @@
-{ lib
-# we pass the kernel version here to keep a nice syntax `whenOlder "4.13"`
-# kernelVersion, e.g., config.boot.kernelPackages.version
-, version
-, mkValuePreprocess ? null
-}:
+{ lib, version }:
with lib;
rec {
- # Common patterns
- when = cond: opt: if cond then opt else null;
- whenAtLeast = ver: when (versionAtLeast version ver);
- whenOlder = ver: when (versionOlder version ver);
- whenBetween = verLow: verHigh: when (versionAtLeast version verLow && versionOlder version verHigh);
+ # Common patterns/legacy
+ whenAtLeast = ver: mkIf (versionAtLeast version ver);
+ whenOlder = ver: mkIf (versionOlder version ver);
+ # range is (inclusive, exclusive)
+ whenBetween = verLow: verHigh: mkIf (versionAtLeast version verLow && versionOlder version verHigh);
- # Keeping these around in case we decide to change this horrible implementation :)
- option = x: if x == null then null else "?${x}";
- yes = "y";
- no = "n";
- module = "m";
- mkValue = val:
- let
- isNumber = c: elem c ["0" "1" "2" "3" "4" "5" "6" "7" "8" "9"];
- in
- if val == "" then "\"\""
- else if val == yes || val == module || val == no then val
- else if all isNumber (stringToCharacters val) then val
- else if substring 0 2 val == "0x" then val
- else val; # FIXME: fix quoting one day
+ # Keeping these around in case we decide to change this horrible implementation :)
+ option = x:
+ x // { optional = true; };
+ yes = { tristate = "y"; };
+ no = { tristate = "n"; };
+ module = { tristate = "m"; };
+ freeform = x: { freeform = x; };
- # generate nix intermediate kernel config file of the form
- #
- # VIRTIO_MMIO m
- # VIRTIO_BLK y
- # VIRTIO_CONSOLE n
- # NET_9P_VIRTIO? y
- #
- # Use mkValuePreprocess to preprocess option values, aka mark 'modules' as
- # 'yes' or vice-versa
- # Borrowed from copumpkin https://github.com/NixOS/nixpkgs/pull/12158
- # returns a string, expr should be an attribute set
- generateNixKConf = exprs: mkValuePreprocess:
- let
- mkConfigLine = key: rawval:
- let
- val = if builtins.isFunction mkValuePreprocess then mkValuePreprocess rawval else rawval;
- in
- if val == null
- then ""
- else if hasPrefix "?" val
- then "${key}? ${mkValue (removePrefix "?" val)}\n"
- else "${key} ${mkValue val}\n";
- mkConf = cfg: concatStrings (mapAttrsToList mkConfigLine cfg);
- in mkConf exprs;
}
diff --git a/lib/licenses.nix b/lib/licenses.nix
index c442d74c857c1f9944df79501b9f659db69f58ea..53a84999bc835a3e6fe17bff2c6ba84c16b0e5fc 100644
--- a/lib/licenses.nix
+++ b/lib/licenses.nix
@@ -13,6 +13,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
* add it to this list. The URL mentioned above is a good source for inspiration.
*/
+ abstyles = spdx {
+ spdxId = "Abstyles";
+ fullName = "Abstyles License";
+ };
+
afl21 = spdx {
spdxId = "AFL-2.1";
fullName = "Academic Free License v2.1";
@@ -24,13 +29,13 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
};
agpl3 = spdx {
- spdxId = "AGPL-3.0";
- fullName = "GNU Affero General Public License v3.0";
+ spdxId = "AGPL-3.0-only";
+ fullName = "GNU Affero General Public License v3.0 only";
};
- agpl3Plus = {
+ agpl3Plus = spdx {
+ spdxId = "AGPL-3.0-or-later";
fullName = "GNU Affero General Public License v3.0 or later";
- inherit (agpl3) url;
};
amazonsl = {
@@ -42,6 +47,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
amd = {
fullName = "AMD License Agreement";
url = http://developer.amd.com/amd-license-agreement/;
+ free = false;
};
apsl20 = spdx {
@@ -99,14 +105,10 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = ''BSD 4-clause "Original" or "Old" License'';
};
- bsl10 = {
- fullName = "Business Source License 1.0";
- url = https://mariadb.com/bsl10;
- };
-
bsl11 = {
fullName = "Business Source License 1.1";
url = https://mariadb.com/bsl11;
+ free = false;
};
clArtistic = spdx {
@@ -143,6 +145,12 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
free = false;
};
+ cc-by-nc-30 = spdx {
+ spdxId = "CC-BY-NC-3.0";
+ fullName = "Creative Commons Attribution Non Commercial 3.0 Unported";
+ free = false;
+ };
+
cc-by-nc-40 = spdx {
spdxId = "CC-BY-NC-4.0";
fullName = "Creative Commons Attribution Non Commercial 4.0 International";
@@ -264,13 +272,23 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
};
fdl12 = spdx {
- spdxId = "GFDL-1.2";
- fullName = "GNU Free Documentation License v1.2";
+ spdxId = "GFDL-1.2-only";
+ fullName = "GNU Free Documentation License v1.2 only";
+ };
+
+ fdl12Plus = spdx {
+ spdxId = "GFDL-1.2-or-later";
+ fullName = "GNU Free Documentation License v1.2 or later";
};
fdl13 = spdx {
- spdxId = "GFDL-1.3";
- fullName = "GNU Free Documentation License v1.3";
+ spdxId = "GFDL-1.3-only";
+ fullName = "GNU Free Documentation License v1.3 only";
+ };
+
+ fdl13Plus = spdx {
+ spdxId = "GFDL-1.3-or-later";
+ fullName = "GNU Free Documentation License v1.3 or later";
};
ffsl = {
@@ -295,20 +313,25 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
};
gpl1 = spdx {
- spdxId = "GPL-1.0";
+ spdxId = "GPL-1.0-only";
fullName = "GNU General Public License v1.0 only";
};
gpl1Plus = spdx {
- spdxId = "GPL-1.0+";
+ spdxId = "GPL-1.0-or-later";
fullName = "GNU General Public License v1.0 or later";
};
gpl2 = spdx {
- spdxId = "GPL-2.0";
+ spdxId = "GPL-2.0-only";
fullName = "GNU General Public License v2.0 only";
};
+ gpl2Classpath = spdx {
+ spdxId = "GPL-2.0-with-classpath-exception";
+ fullName = "GNU General Public License v2.0 only (with Classpath exception)";
+ };
+
gpl2ClasspathPlus = {
fullName = "GNU General Public License v2.0 or later (with Classpath exception)";
url = https://fedoraproject.org/wiki/Licensing/GPL_Classpath_Exception;
@@ -320,17 +343,17 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
};
gpl2Plus = spdx {
- spdxId = "GPL-2.0+";
+ spdxId = "GPL-2.0-or-later";
fullName = "GNU General Public License v2.0 or later";
};
gpl3 = spdx {
- spdxId = "GPL-3.0";
+ spdxId = "GPL-3.0-only";
fullName = "GNU General Public License v3.0 only";
};
gpl3Plus = spdx {
- spdxId = "GPL-3.0+";
+ spdxId = "GPL-3.0-or-later";
fullName = "GNU General Public License v3.0 or later";
};
@@ -355,6 +378,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = "Independent JPEG Group License";
};
+ imagemagick = spdx {
+ fullName = "ImageMagick License";
+ spdxId = "imagemagick";
+ };
+
inria-compcert = {
fullName = "INRIA Non-Commercial License Agreement for the CompCert verified compiler";
url = "http://compcert.inria.fr/doc/LICENSE";
@@ -382,33 +410,45 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = "ISC License";
};
+ # Proprietary binaries; free to redistribute without modification.
+ issl = {
+ fullName = "Intel Simplified Software License";
+ url = https://software.intel.com/en-us/license/intel-simplified-software-license;
+ free = false;
+ };
+
+ jasper = spdx {
+ spdxId = "JasPer-2.0";
+ fullName = "JasPer License";
+ };
+
lgpl2 = spdx {
- spdxId = "LGPL-2.0";
+ spdxId = "LGPL-2.0-only";
fullName = "GNU Library General Public License v2 only";
};
lgpl2Plus = spdx {
- spdxId = "LGPL-2.0+";
+ spdxId = "LGPL-2.0-or-later";
fullName = "GNU Library General Public License v2 or later";
};
lgpl21 = spdx {
- spdxId = "LGPL-2.1";
+ spdxId = "LGPL-2.1-only";
fullName = "GNU Library General Public License v2.1 only";
};
lgpl21Plus = spdx {
- spdxId = "LGPL-2.1+";
+ spdxId = "LGPL-2.1-or-later";
fullName = "GNU Library General Public License v2.1 or later";
};
lgpl3 = spdx {
- spdxId = "LGPL-3.0";
+ spdxId = "LGPL-3.0-only";
fullName = "GNU Lesser General Public License v3.0 only";
};
lgpl3Plus = spdx {
- spdxId = "LGPL-3.0+";
+ spdxId = "LGPL-3.0-or-later";
fullName = "GNU Lesser General Public License v3.0 or later";
};
@@ -417,6 +457,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = "libpng License";
};
+ libpng2 = {
+ fullName = "libpng License v2"; # 1.6.36+
+ url = "http://www.libpng.org/pub/png/src/libpng-LICENSE.txt";
+ };
+
libtiff = spdx {
spdxId = "libtiff";
fullName = "libtiff License";
@@ -480,6 +525,12 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
free = false;
};
+ nasa13 = spdx {
+ spdxId = "NASA-1.3";
+ fullName = "NASA Open Source Agreement 1.3";
+ free = false;
+ };
+
ncsa = spdx {
spdxId = "NCSA";
fullName = "University of Illinois/NCSA Open Source License";
@@ -495,6 +546,12 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = "Non-Profit Open Software License 3.0";
};
+ ocamlpro_nc = {
+ fullName = "OCamlPro Non Commercial license version 1";
+ url = "https://alt-ergo.ocamlpro.com/http/alt-ergo-2.2.0/OCamlPro-Non-Commercial-License.pdf";
+ free = false;
+ };
+
ofl = spdx {
spdxId = "OFL-1.1";
fullName = "SIL Open Font License 1.1";
@@ -510,6 +567,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = "OpenSSL License";
};
+ osl2 = spdx {
+ spdxId = "OSL-2.0";
+ fullName = "Open Software License 2.0";
+ };
+
osl21 = spdx {
spdxId = "OSL-2.1";
fullName = "Open Software License 2.1";
@@ -546,6 +608,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = "Public Domain";
};
+ purdueBsd = {
+ fullName = " Purdue BSD-Style License"; # also know as lsof license
+ url = https://enterprise.dejacode.com/licenses/public/purdue-bsd;
+ };
+
qpl = spdx {
spdxId = "QPL-1.0";
fullName = "Q Public License 1.0";
@@ -561,6 +628,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = "Ruby License";
};
+ sendmail = spdx {
+ spdxId = "Sendmail";
+ fullName = "Sendmail License";
+ };
+
sgi-b-20 = spdx {
spdxId = "SGI-B-2.0";
fullName = "SGI Free Software License B v2.0";
@@ -650,7 +722,7 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
};
wxWindows = spdx {
- spdxId = "WXwindows";
+ spdxId = "wxWindows";
fullName = "wxWindows Library Licence, Version 3.1";
};
diff --git a/lib/lists.nix b/lib/lists.nix
index 288882924fff103bf670de01e212b67f317f202f..30d87ece66412d5e468d72e691e3d3fc1a692373 100644
--- a/lib/lists.nix
+++ b/lib/lists.nix
@@ -1,4 +1,5 @@
# General list operations.
+
{ lib }:
with lib.trivial;
let
@@ -6,23 +7,25 @@ let
in
rec {
- inherit (builtins) head tail length isList elemAt concatLists filter elem genList;
+ inherit (builtins) head tail length isList elemAt concatLists filter elem genList map;
- /* Create a list consisting of a single element. `singleton x' is
- sometimes more convenient with respect to indentation than `[x]'
+ /* Create a list consisting of a single element. `singleton x` is
+ sometimes more convenient with respect to indentation than `[x]`
when x spans multiple lines.
+ Type: singleton :: a -> [a]
+
Example:
singleton "foo"
=> [ "foo" ]
*/
singleton = x: [x];
- /* “right fold” a binary function `op' between successive elements of
- `list' with `nul' as the starting value, i.e.,
- `foldr op nul [x_1 x_2 ... x_n] == op x_1 (op x_2 ... (op x_n nul))'.
- Type:
- foldr :: (a -> b -> b) -> b -> [a] -> b
+ /* “right fold” a binary function `op` between successive elements of
+ `list` with `nul' as the starting value, i.e.,
+ `foldr op nul [x_1 x_2 ... x_n] == op x_1 (op x_2 ... (op x_n nul))`.
+
+ Type: foldr :: (a -> b -> b) -> b -> [a] -> b
Example:
concat = foldr (a: b: a + b) "z"
@@ -42,16 +45,15 @@ rec {
else op (elemAt list n) (fold' (n + 1));
in fold' 0;
- /* `fold' is an alias of `foldr' for historic reasons */
+ /* `fold` is an alias of `foldr` for historic reasons */
# FIXME(Profpatsch): deprecate?
fold = foldr;
- /* “left fold”, like `foldr', but from the left:
+ /* “left fold”, like `foldr`, but from the left:
`foldl op nul [x_1 x_2 ... x_n] == op (... (op (op nul x_1) x_2) ... x_n)`.
- Type:
- foldl :: (b -> a -> b) -> b -> [a] -> b
+ Type: foldl :: (b -> a -> b) -> b -> [a] -> b
Example:
lconcat = foldl (a: b: a + b) "z"
@@ -70,16 +72,20 @@ rec {
else op (foldl' (n - 1)) (elemAt list n);
in foldl' (length list - 1);
- /* Strict version of `foldl'.
+ /* Strict version of `foldl`.
The difference is that evaluation is forced upon access. Usually used
with small whole results (in contract with lazily-generated list or large
lists where only a part is consumed.)
+
+ Type: foldl' :: (b -> a -> b) -> b -> [a] -> b
*/
foldl' = builtins.foldl' or foldl;
/* Map with index starting from 0
+ Type: imap0 :: (int -> a -> b) -> [a] -> [b]
+
Example:
imap0 (i: v: "${v}-${toString i}") ["a" "b"]
=> [ "a-0" "b-1" ]
@@ -88,6 +94,8 @@ rec {
/* Map with index starting from 1
+ Type: imap1 :: (int -> a -> b) -> [a] -> [b]
+
Example:
imap1 (i: v: "${v}-${toString i}") ["a" "b"]
=> [ "a-1" "b-2" ]
@@ -96,6 +104,8 @@ rec {
/* Map and concatenate the result.
+ Type: concatMap :: (a -> [b]) -> [a] -> [b]
+
Example:
concatMap (x: [x] ++ ["z"]) ["a" "b"]
=> [ "a" "z" "b" "z" ]
@@ -118,15 +128,21 @@ rec {
/* Remove elements equal to 'e' from a list. Useful for buildInputs.
+ Type: remove :: a -> [a] -> [a]
+
Example:
remove 3 [ 1 3 4 3 ]
=> [ 1 4 ]
*/
- remove = e: filter (x: x != e);
+ remove =
+ # Element to remove from the list
+ e: filter (x: x != e);
/* Find the sole element in the list matching the specified
- predicate, returns `default' if no such element exists, or
- `multiple' if there are multiple matching elements.
+ predicate, returns `default` if no such element exists, or
+ `multiple` if there are multiple matching elements.
+
+ Type: findSingle :: (a -> bool) -> a -> a -> [a] -> a
Example:
findSingle (x: x == 3) "none" "multiple" [ 1 3 3 ]
@@ -136,14 +152,24 @@ rec {
findSingle (x: x == 3) "none" "multiple" [ 1 9 ]
=> "none"
*/
- findSingle = pred: default: multiple: list:
+ findSingle =
+ # Predicate
+ pred:
+ # Default value to return if element was not found.
+ default:
+ # Default value to return if more than one element was found
+ multiple:
+ # Input list
+ list:
let found = filter pred list; len = length found;
in if len == 0 then default
else if len != 1 then multiple
else head found;
/* Find the first element in the list matching the specified
- predicate or returns `default' if no such element exists.
+ predicate or return `default` if no such element exists.
+
+ Type: findFirst :: (a -> bool) -> a -> [a] -> a
Example:
findFirst (x: x > 3) 7 [ 1 6 4 ]
@@ -151,12 +177,20 @@ rec {
findFirst (x: x > 9) 7 [ 1 6 4 ]
=> 7
*/
- findFirst = pred: default: list:
+ findFirst =
+ # Predicate
+ pred:
+ # Default value to return
+ default:
+ # Input list
+ list:
let found = filter pred list;
in if found == [] then default else head found;
- /* Return true iff function `pred' returns true for at least element
- of `list'.
+ /* Return true if function `pred` returns true for at least one
+ element of `list`.
+
+ Type: any :: (a -> bool) -> [a] -> bool
Example:
any isString [ 1 "a" { } ]
@@ -166,8 +200,10 @@ rec {
*/
any = builtins.any or (pred: foldr (x: y: if pred x then true else y) false);
- /* Return true iff function `pred' returns true for all elements of
- `list'.
+ /* Return true if function `pred` returns true for all elements of
+ `list`.
+
+ Type: all :: (a -> bool) -> [a] -> bool
Example:
all (x: x < 3) [ 1 2 ]
@@ -177,19 +213,25 @@ rec {
*/
all = builtins.all or (pred: foldr (x: y: if pred x then y else false) true);
- /* Count how many times function `pred' returns true for the elements
- of `list'.
+ /* Count how many elements of `list` match the supplied predicate
+ function.
+
+ Type: count :: (a -> bool) -> [a] -> int
Example:
count (x: x == 3) [ 3 2 3 4 6 ]
=> 2
*/
- count = pred: foldl' (c: x: if pred x then c + 1 else c) 0;
+ count =
+ # Predicate
+ pred: foldl' (c: x: if pred x then c + 1 else c) 0;
/* Return a singleton list or an empty list, depending on a boolean
value. Useful when building lists with optional elements
(e.g. `++ optional (system == "i686-linux") flashplayer').
+ Type: optional :: bool -> a -> [a]
+
Example:
optional true "foo"
=> [ "foo" ]
@@ -200,13 +242,19 @@ rec {
/* Return a list or an empty list, depending on a boolean value.
+ Type: optionals :: bool -> [a] -> [a]
+
Example:
optionals true [ 2 3 ]
=> [ 2 3 ]
optionals false [ 2 3 ]
=> [ ]
*/
- optionals = cond: elems: if cond then elems else [];
+ optionals =
+ # Condition
+ cond:
+ # List to return if condition is true
+ elems: if cond then elems else [];
/* If argument is a list, return it; else, wrap it in a singleton
@@ -223,20 +271,28 @@ rec {
/* Return a list of integers from `first' up to and including `last'.
+ Type: range :: int -> int -> [int]
+
Example:
range 2 4
=> [ 2 3 4 ]
range 3 2
=> [ ]
*/
- range = first: last:
+ range =
+ # First integer in the range
+ first:
+ # Last integer in the range
+ last:
if first > last then
[]
else
genList (n: first + n) (last - first + 1);
- /* Splits the elements of a list in two lists, `right' and
- `wrong', depending on the evaluation of a predicate.
+ /* Splits the elements of a list in two lists, `right` and
+ `wrong`, depending on the evaluation of a predicate.
+
+ Type: (a -> bool) -> [a] -> { right :: [a], wrong :: [a] }
Example:
partition (x: x > 2) [ 5 1 2 3 4 ]
@@ -252,7 +308,7 @@ rec {
/* Splits the elements of a list into many lists, using the return value of a predicate.
Predicate should return a string which becomes keys of attrset `groupBy' returns.
- `groupBy'' allows to customise the combining function and initial value
+ `groupBy'` allows to customise the combining function and initial value
Example:
groupBy (x: boolToString (x > 2)) [ 5 1 2 3 4 ]
@@ -268,10 +324,6 @@ rec {
xfce = [ { name = "xfce"; script = "xfce4-session &"; } ];
}
-
- groupBy' allows to customise the combining function and initial value
-
- Example:
groupBy' builtins.add 0 (x: boolToString (x > 2)) [ 5 1 2 3 4 ]
=> { true = 12; false = 3; }
*/
@@ -289,17 +341,27 @@ rec {
the merging stops at the shortest. How both lists are merged is defined
by the first argument.
+ Type: zipListsWith :: (a -> b -> c) -> [a] -> [b] -> [c]
+
Example:
zipListsWith (a: b: a + b) ["h" "l"] ["e" "o"]
=> ["he" "lo"]
*/
- zipListsWith = f: fst: snd:
+ zipListsWith =
+ # Function to zip elements of both lists
+ f:
+ # First list
+ fst:
+ # Second list
+ snd:
genList
(n: f (elemAt fst n) (elemAt snd n)) (min (length fst) (length snd));
/* Merges two lists of the same size together. If the sizes aren't the same
the merging stops at the shortest.
+ Type: zipLists :: [a] -> [b] -> [{ fst :: a, snd :: b}]
+
Example:
zipLists [ 1 2 ] [ "a" "b" ]
=> [ { fst = 1; snd = "a"; } { fst = 2; snd = "b"; } ]
@@ -308,6 +370,8 @@ rec {
/* Reverse the order of the elements of a list.
+ Type: reverseList :: [a] -> [a]
+
Example:
reverseList [ "b" "o" "j" ]
@@ -321,8 +385,7 @@ rec {
`before a b == true` means that `b` depends on `a` (there's an
edge from `b` to `a`).
- Examples:
-
+ Example:
listDfs true hasPrefix [ "/home/user" "other" "/" "/home" ]
== { minimal = "/"; # minimal element
visited = [ "/home/user" ]; # seen elements (in reverse order)
@@ -336,7 +399,6 @@ rec {
rest = [ "/home" "other" ]; # everything else
*/
-
listDfs = stopOnCycles: before: list:
let
dfs' = us: visited: rest:
@@ -361,7 +423,7 @@ rec {
`before a b == true` means that `b` should be after `a`
in the result.
- Examples:
+ Example:
toposort hasPrefix [ "/home/user" "other" "/" "/home" ]
== { result = [ "/" "/home" "/home/user" "other" ]; }
@@ -376,7 +438,6 @@ rec {
toposort (a: b: a < b) [ 3 2 1 ] == { result = [ 1 2 3 ]; }
*/
-
toposort = before: list:
let
dfsthis = listDfs true before list;
@@ -467,26 +528,38 @@ rec {
/* Return the first (at most) N elements of a list.
+ Type: take :: int -> [a] -> [a]
+
Example:
take 2 [ "a" "b" "c" "d" ]
=> [ "a" "b" ]
take 2 [ ]
=> [ ]
*/
- take = count: sublist 0 count;
+ take =
+ # Number of elements to take
+ count: sublist 0 count;
/* Remove the first (at most) N elements of a list.
+ Type: drop :: int -> [a] -> [a]
+
Example:
drop 2 [ "a" "b" "c" "d" ]
=> [ "c" "d" ]
drop 2 [ ]
=> [ ]
*/
- drop = count: list: sublist count (length list) list;
+ drop =
+ # Number of elements to drop
+ count:
+ # Input list
+ list: sublist count (length list) list;
+
+ /* Return a list consisting of at most `count` elements of `list`,
+ starting at index `start`.
- /* Return a list consisting of at most ‘count’ elements of ‘list’,
- starting at index ‘start’.
+ Type: sublist :: int -> int -> [a] -> [a]
Example:
sublist 1 3 [ "a" "b" "c" "d" "e" ]
@@ -494,7 +567,13 @@ rec {
sublist 1 3 [ ]
=> [ ]
*/
- sublist = start: count: list:
+ sublist =
+ # Index at which to start the sublist
+ start:
+ # Number of elements to take
+ count:
+ # Input list
+ list:
let len = length list; in
genList
(n: elemAt list (n + start))
@@ -504,23 +583,34 @@ rec {
/* Return the last element of a list.
+ This function throws an error if the list is empty.
+
+ Type: last :: [a] -> a
+
Example:
last [ 1 2 3 ]
=> 3
*/
last = list:
- assert list != []; elemAt list (length list - 1);
+ assert lib.assertMsg (list != []) "lists.last: list must not be empty!";
+ elemAt list (length list - 1);
- /* Return all elements but the last
+ /* Return all elements but the last.
+
+ This function throws an error if the list is empty.
+
+ Type: init :: [a] -> [a]
Example:
init [ 1 2 3 ]
=> [ 1 2 ]
*/
- init = list: assert list != []; take (length list - 1) list;
+ init = list:
+ assert lib.assertMsg (list != []) "lists.init: list must not be empty!";
+ take (length list - 1) list;
- /* return the image of the cross product of some lists by a function
+ /* Return the image of the cross product of some lists by a function.
Example:
crossLists (x:y: "${toString x}${toString y}") [[1 2] [3 4]]
@@ -531,8 +621,9 @@ rec {
/* Remove duplicate elements from the list. O(n^2) complexity.
- Example:
+ Type: unique :: [a] -> [a]
+ Example:
unique [ 3 2 3 4 ]
=> [ 3 2 4 ]
*/
@@ -542,8 +633,7 @@ rec {
else
let
x = head list;
- xs = unique (drop 1 list);
- in [x] ++ remove x xs;
+ in [x] ++ unique (remove x list);
/* Intersects list 'e' and another list. O(nm) complexity.
diff --git a/lib/meta.nix b/lib/meta.nix
index 199030c103af58031ec8243193d324c0b391a8c6..2e83c4247ddfb9cb11a364087a08fb5015340292 100644
--- a/lib/meta.nix
+++ b/lib/meta.nix
@@ -41,16 +41,18 @@ rec {
let x = builtins.parseDrvName name; in "${x.name}-${suffix}-${x.version}");
- /* Apply a function to each derivation and only to derivations in an attrset
+ /* Apply a function to each derivation and only to derivations in an attrset.
*/
mapDerivationAttrset = f: set: lib.mapAttrs (name: pkg: if lib.isDerivation pkg then (f pkg) else pkg) set;
+ /* Set the nix-env priority of the package.
+ */
+ setPrio = priority: addMetaAttrs { inherit priority; };
/* Decrease the nix-env priority of the package, i.e., other
versions/variants of the package will be preferred.
*/
- lowPrio = drv: addMetaAttrs { priority = 10; } drv;
-
+ lowPrio = setPrio 10;
/* Apply lowPrio to an attrset with derivations
*/
@@ -60,8 +62,7 @@ rec {
/* Increase the nix-env priority of the package, i.e., this
version/variant of the package will be preferred.
*/
- hiPrio = drv: addMetaAttrs { priority = -10; } drv;
-
+ hiPrio = setPrio (-10);
/* Apply hiPrio to an attrset with derivations
*/
diff --git a/lib/minver.nix b/lib/minver.nix
index 2147820c0e49e7d3946fbcc5c6d08bd1d7d1210c..fee6b65a2447e63479f0522b6d8252c6d759295c 100644
--- a/lib/minver.nix
+++ b/lib/minver.nix
@@ -1,2 +1,2 @@
# Expose the minimum required version for evaluating Nixpkgs
-"1.11"
+"2.0"
diff --git a/lib/modules.nix b/lib/modules.nix
index a443d5ec5d161861938a2bb841ecceafb789f202..0869eae1982b667f7c93e9ba95ca910169a63e5a 100644
--- a/lib/modules.nix
+++ b/lib/modules.nix
@@ -192,29 +192,55 @@ rec {
(concatMap (m: map (config: { inherit (m) file; inherit config; }) (pushDownProperties m.config)) modules);
mergeModules' = prefix: options: configs:
- listToAttrs (map (name: {
+ let
+ /* byName is like foldAttrs, but will look for attributes to merge in the
+ specified attribute name.
+
+ byName "foo" (module: value: ["module.hidden=${module.hidden},value=${value}"])
+ [
+ {
+ hidden="baz";
+ foo={qux="bar"; gla="flop";};
+ }
+ {
+ hidden="fli";
+ foo={qux="gne"; gli="flip";};
+ }
+ ]
+ ===>
+ {
+ gla = [ "module.hidden=baz,value=flop" ];
+ gli = [ "module.hidden=fli,value=flip" ];
+ qux = [ "module.hidden=baz,value=bar" "module.hidden=fli,value=gne" ];
+ }
+ */
+ byName = attr: f: modules:
+ foldl' (acc: module:
+ acc // (mapAttrs (n: v:
+ (acc.${n} or []) ++ f module v
+ ) module.${attr}
+ )
+ ) {} modules;
+ # an attrset 'name' => list of submodules that declare ‘name’.
+ declsByName = byName "options" (module: option:
+ [{ inherit (module) file; options = option; }]
+ ) options;
+ # an attrset 'name' => list of submodules that define ‘name’.
+ defnsByName = byName "config" (module: value:
+ map (config: { inherit (module) file; inherit config; }) (pushDownProperties value)
+ ) configs;
+ # extract the definitions for each loc
+ defnsByName' = byName "config" (module: value:
+ [{ inherit (module) file; inherit value; }]
+ ) configs;
+ in
+ (flip mapAttrs declsByName (name: decls:
# We're descending into attribute ‘name’.
- inherit name;
- value =
let
loc = prefix ++ [name];
- # Get all submodules that declare ‘name’.
- decls = concatMap (m:
- if m.options ? ${name}
- then [ { inherit (m) file; options = m.options.${name}; } ]
- else []
- ) options;
- # Get all submodules that define ‘name’.
- defns = concatMap (m:
- if m.config ? ${name}
- then map (config: { inherit (m) file; inherit config; })
- (pushDownProperties m.config.${name})
- else []
- ) configs;
+ defns = defnsByName.${name} or [];
+ defns' = defnsByName'.${name} or [];
nrOptions = count (m: isOption m.options) decls;
- # Extract the definitions for this loc
- defns' = map (m: { inherit (m) file; value = m.config.${name}; })
- (filter (m: m.config ? ${name}) configs);
in
if nrOptions == length decls then
let opt = fixupOptionType loc (mergeOptionDecls loc decls);
@@ -226,8 +252,8 @@ rec {
in
throw "The option `${showOption loc}' in `${firstOption.file}' is a prefix of options in `${firstNonOption.file}'."
else
- mergeModules' loc decls defns;
- }) (concatMap (m: attrNames m.options) options))
+ mergeModules' loc decls defns
+ ))
// { _definedNames = map (m: { inherit (m) file; names = attrNames m.config; }) configs; };
/* Merge multiple option declarations into a single declaration. In
@@ -338,7 +364,6 @@ rec {
values = defs''';
inherit (defs'') highestPrio;
};
-
defsFinal = defsFinal'.values;
# Type-check the remaining definitions, and merge them.
@@ -426,8 +451,7 @@ rec {
filterOverrides' = defs:
let
- defaultPrio = 100;
- getPrio = def: if def.value._type or "" == "override" then def.value.priority else defaultPrio;
+ getPrio = def: if def.value._type or "" == "override" then def.value.priority else defaultPriority;
highestPrio = foldl' (prio: def: min (getPrio def) prio) 9999 defs;
strip = def: if def.value._type or "" == "override" then def // { value = def.value.content; } else def;
in {
@@ -510,6 +534,8 @@ rec {
mkBefore = mkOrder 500;
mkAfter = mkOrder 1500;
+ # The default priority for things that don't have a priority specified.
+ defaultPriority = 100;
# Convenient property used to transfer all definitions and their
# properties from one option to another. This property is useful for
@@ -532,8 +558,20 @@ rec {
#
mkAliasDefinitions = mkAliasAndWrapDefinitions id;
mkAliasAndWrapDefinitions = wrap: option:
- mkIf (isOption option && option.isDefined) (wrap (mkMerge option.definitions));
+ mkAliasIfDef option (wrap (mkMerge option.definitions));
+ # Similar to mkAliasAndWrapDefinitions but copies over the priority from the
+ # option as well.
+ #
+ # If a priority is not set, it assumes a priority of defaultPriority.
+ mkAliasAndWrapDefsWithPriority = wrap: option:
+ let
+ prio = option.highestPrio or defaultPriority;
+ defsWithPrio = map (mkOverride prio) option.definitions;
+ in mkAliasIfDef option (wrap (mkMerge defsWithPrio));
+
+ mkAliasIfDef = option:
+ mkIf (isOption option && option.isDefined);
/* Compatibility. */
fixMergeModules = modules: args: evalModules { inherit modules args; check = false; };
@@ -572,6 +610,9 @@ rec {
forwards any definitions of boot.copyKernels to
boot.loader.grub.copyKernels while printing a warning.
+
+ This also copies over the priority from the aliased option to the
+ non-aliased option.
*/
mkRenamedOptionModule = from: to: doRename {
inherit from to;
@@ -666,7 +707,7 @@ rec {
use = id;
};
- doRename = { from, to, visible, warn, use }:
+ doRename = { from, to, visible, warn, use, withPriority ? true }:
{ config, options, ... }:
let
fromOpt = getAttrFromPath from options;
@@ -684,7 +725,9 @@ rec {
warnings = optional (warn && fromOpt.isDefined)
"The option `${showOption from}' defined in ${showFiles fromOpt.files} has been renamed to `${showOption to}'.";
}
- (mkAliasAndWrapDefinitions (setAttrByPath to) fromOpt)
+ (if withPriority
+ then mkAliasAndWrapDefsWithPriority (setAttrByPath to) fromOpt
+ else mkAliasAndWrapDefinitions (setAttrByPath to) fromOpt)
];
};
diff --git a/lib/options.nix b/lib/options.nix
index 01160b48ec01998ac665b7685cdbbecb1ba0627c..a16a980398d6b951a3ccf0192d6af539011a9dfa 100644
--- a/lib/options.nix
+++ b/lib/options.nix
@@ -8,33 +8,72 @@ with lib.strings;
rec {
+ /* Returns true when the given argument is an option
+
+ Type: isOption :: a -> bool
+
+ Example:
+ isOption 1 // => false
+ isOption (mkOption {}) // => true
+ */
isOption = lib.isType "option";
+
+ /* Creates an Option attribute set. mkOption accepts an attribute set with the following keys:
+
+ All keys default to `null` when not given.
+
+ Example:
+ mkOption { } // => { _type = "option"; }
+ mkOption { defaultText = "foo"; } // => { _type = "option"; defaultText = "foo"; }
+ */
mkOption =
- { default ? null # Default value used when no definition is given in the configuration.
- , defaultText ? null # Textual representation of the default, for in the manual.
- , example ? null # Example value used in the manual.
- , description ? null # String describing the option.
- , relatedPackages ? null # Related packages used in the manual (see `genRelatedPackages` in ../nixos/doc/manual/default.nix).
- , type ? null # Option type, providing type-checking and value merging.
- , apply ? null # Function that converts the option value to something else.
- , internal ? null # Whether the option is for NixOS developers only.
- , visible ? null # Whether the option shows up in the manual.
- , readOnly ? null # Whether the option can be set only once
- , options ? null # Obsolete, used by types.optionSet.
+ {
+ # Default value used when no definition is given in the configuration.
+ default ? null,
+ # Textual representation of the default, for the manual.
+ defaultText ? null,
+ # Example value used in the manual.
+ example ? null,
+ # String describing the option.
+ description ? null,
+ # Related packages used in the manual (see `genRelatedPackages` in ../nixos/doc/manual/default.nix).
+ relatedPackages ? null,
+ # Option type, providing type-checking and value merging.
+ type ? null,
+ # Function that converts the option value to something else.
+ apply ? null,
+ # Whether the option is for NixOS developers only.
+ internal ? null,
+ # Whether the option shows up in the manual.
+ visible ? null,
+ # Whether the option can be set only once
+ readOnly ? null,
+ # Deprecated, used by types.optionSet.
+ options ? null
} @ attrs:
attrs // { _type = "option"; };
- mkEnableOption = name: mkOption {
+ /* Creates an Option attribute set for a boolean value option i.e an
+ option to be toggled on or off:
+
+ Example:
+ mkEnableOption "foo"
+ => { _type = "option"; default = false; description = "Whether to enable foo."; example = true; type = { ... }; }
+ */
+ mkEnableOption =
+ # Name for the created option
+ name: mkOption {
default = false;
example = true;
description = "Whether to enable ${name}.";
type = lib.types.bool;
};
- # This option accept anything, but it does not produce any result. This
- # is useful for sharing a module across different module sets without
- # having to implement similar features as long as the value of the options
- # are not expected.
+ /* This option accepts anything, but it does not produce any result.
+
+ This is useful for sharing a module across different module sets
+ without having to implement similar features as long as the
+ values of the options are not accessed. */
mkSinkUndeclaredOptions = attrs: mkOption ({
internal = true;
visible = false;
@@ -74,7 +113,24 @@ rec {
else
val) (head defs).value defs;
+ /* Extracts values of all "value" keys of the given list.
+
+ Type: getValues :: [ { value :: a } ] -> [a]
+
+ Example:
+ getValues [ { value = 1; } { value = 2; } ] // => [ 1 2 ]
+ getValues [ ] // => [ ]
+ */
getValues = map (x: x.value);
+
+ /* Extracts values of all "file" keys of the given list
+
+ Type: getFiles :: [ { file :: a } ] -> [a]
+
+ Example:
+ getFiles [ { file = "file1"; } { file = "file2"; } ] // => [ "file1" "file2" ]
+ getFiles [ ] // => [ ]
+ */
getFiles = map (x: x.file);
# Generate documentation template from the list of option declaration like
@@ -87,7 +143,7 @@ rec {
docOption = rec {
loc = opt.loc;
name = showOption opt.loc;
- description = opt.description or (throw "Option `${name}' has no description.");
+ description = opt.description or (lib.warn "Option `${name}' has no description." "This option has no description.");
declarations = filter (x: x != unknownModule) opt.declarations;
internal = opt.internal or false;
visible = opt.visible or true;
@@ -107,10 +163,13 @@ rec {
/* This function recursively removes all derivation attributes from
- `x' except for the `name' attribute. This is to make the
- generation of `options.xml' much more efficient: the XML
- representation of derivations is very large (on the order of
- megabytes) and is not actually used by the manual generator. */
+ `x` except for the `name` attribute.
+
+ This is to make the generation of `options.xml` much more
+ efficient: the XML representation of derivations is very large
+ (on the order of megabytes) and is not actually used by the
+ manual generator.
+ */
scrubOptionValue = x:
if isDerivation x then
{ type = "derivation"; drvPath = x.name; outPath = x.name; name = x.name; }
@@ -119,20 +178,21 @@ rec {
else x;
- /* For use in the ‘example’ option attribute. It causes the given
- text to be included verbatim in documentation. This is necessary
- for example values that are not simple values, e.g.,
- functions. */
+ /* For use in the `example` option attribute. It causes the given
+ text to be included verbatim in documentation. This is necessary
+ for example values that are not simple values, e.g., functions.
+ */
literalExample = text: { _type = "literalExample"; inherit text; };
+ # Helper functions.
- /* Helper functions. */
+ /* Convert an option, described as a list of the option parts in to a
+ safe, human readable version.
- # Convert an option, described as a list of the option parts in to a
- # safe, human readable version. ie:
- #
- # (showOption ["foo" "bar" "baz"]) == "foo.bar.baz"
- # (showOption ["foo" "bar.baz" "tux"]) == "foo.\"bar.baz\".tux"
+ Example:
+ (showOption ["foo" "bar" "baz"]) == "foo.bar.baz"
+ (showOption ["foo" "bar.baz" "tux"]) == "foo.\"bar.baz\".tux"
+ */
showOption = parts: let
escapeOptionPart = part:
let
diff --git a/lib/sources.nix b/lib/sources.nix
index 704711b20cd9492b3cead39b0f73f6d86fe682cb..f02ddad17c6d76f6015e44b70834ce4660b600fe 100644
--- a/lib/sources.nix
+++ b/lib/sources.nix
@@ -12,8 +12,8 @@ rec {
# Bring in a path as a source, filtering out all Subversion and CVS
# directories, as well as backup files (*~).
cleanSourceFilter = name: type: let baseName = baseNameOf (toString name); in ! (
- # Filter out Subversion and CVS directories.
- (type == "directory" && (baseName == ".git" || baseName == ".svn" || baseName == "CVS" || baseName == ".hg")) ||
+ # Filter out version control software files/directories
+ (baseName == ".git" || type == "directory" && (baseName == ".svn" || baseName == "CVS" || baseName == ".hg")) ||
# Filter out editor backup / swap files.
lib.hasSuffix "~" baseName ||
builtins.match "^\\.sw[a-z]$" baseName != null ||
@@ -26,6 +26,10 @@ rec {
(type == "symlink" && lib.hasPrefix "result" baseName)
);
+ # Filters a source tree removing version control files and directories using cleanSourceWith
+ #
+ # Example:
+ # cleanSource ./.
cleanSource = src: cleanSourceWith { filter = cleanSourceFilter; inherit src; };
# Like `builtins.filterSource`, except it will compose with itself,
@@ -69,7 +73,7 @@ rec {
# Get the commit id of a git repo
# Example: commitIdFromGitRepo
commitIdFromGitRepo =
- let readCommitFromFile = path: file:
+ let readCommitFromFile = file: path:
with builtins;
let fileName = toString path + "/" + file;
packedRefsName = toString path + "/packed-refs";
@@ -81,7 +85,7 @@ rec {
matchRef = match "^ref: (.*)$" fileContent;
in if isNull matchRef
then fileContent
- else readCommitFromFile path (lib.head matchRef)
+ else readCommitFromFile (lib.head matchRef) path
# Sometimes, the file isn't there at all and has been packed away in the
# packed-refs file, so we have to grep through it:
else if lib.pathExists packedRefsName
@@ -92,7 +96,7 @@ rec {
then throw ("Could not find " + file + " in " + packedRefsName)
else lib.head matchRef
else throw ("Not a .git directory: " + path);
- in lib.flip readCommitFromFile "HEAD";
+ in readCommitFromFile "HEAD";
pathHasContext = builtins.hasContext or (lib.hasPrefix builtins.storeDir);
diff --git a/lib/strings.nix b/lib/strings.nix
index af932ce6ecff86458ff5cf13885621223b457e39..ae0d74c6721dc48867235cc0321771e7b44ee224 100644
--- a/lib/strings.nix
+++ b/lib/strings.nix
@@ -12,6 +12,8 @@ rec {
/* Concatenate a list of strings.
+ Type: concatStrings :: [string] -> string
+
Example:
concatStrings ["foo" "bar"]
=> "foobar"
@@ -20,15 +22,19 @@ rec {
/* Map a function over a list and concatenate the resulting strings.
+ Type: concatMapStrings :: (a -> string) -> [a] -> string
+
Example:
concatMapStrings (x: "a" + x) ["foo" "bar"]
=> "afooabar"
*/
concatMapStrings = f: list: concatStrings (map f list);
- /* Like `concatMapStrings' except that the f functions also gets the
+ /* Like `concatMapStrings` except that the f functions also gets the
position as a parameter.
+ Type: concatImapStrings :: (int -> a -> string) -> [a] -> string
+
Example:
concatImapStrings (pos: x: "${toString pos}-${x}") ["foo" "bar"]
=> "1-foo2-bar"
@@ -37,17 +43,25 @@ rec {
/* Place an element between each element of a list
+ Type: intersperse :: a -> [a] -> [a]
+
Example:
intersperse "/" ["usr" "local" "bin"]
=> ["usr" "/" "local" "/" "bin"].
*/
- intersperse = separator: list:
+ intersperse =
+ # Separator to add between elements
+ separator:
+ # Input list
+ list:
if list == [] || length list == 1
then list
else tail (lib.concatMap (x: [separator x]) list);
/* Concatenate a list of strings with a separator between each element
+ Type: concatStringsSep :: string -> [string] -> string
+
Example:
concatStringsSep "/" ["usr" "local" "bin"]
=> "usr/local/bin"
@@ -55,43 +69,77 @@ rec {
concatStringsSep = builtins.concatStringsSep or (separator: list:
concatStrings (intersperse separator list));
- /* First maps over the list and then concatenates it.
+ /* Maps a function over a list of strings and then concatenates the
+ result with the specified separator interspersed between
+ elements.
+
+ Type: concatMapStringsSep :: string -> (string -> string) -> [string] -> string
Example:
concatMapStringsSep "-" (x: toUpper x) ["foo" "bar" "baz"]
=> "FOO-BAR-BAZ"
*/
- concatMapStringsSep = sep: f: list: concatStringsSep sep (map f list);
+ concatMapStringsSep =
+ # Separator to add between elements
+ sep:
+ # Function to map over the list
+ f:
+ # List of input strings
+ list: concatStringsSep sep (map f list);
- /* First imaps over the list and then concatenates it.
+ /* Same as `concatMapStringsSep`, but the mapping function
+ additionally receives the position of its argument.
- Example:
+ Type: concatIMapStringsSep :: string -> (int -> string -> string) -> [string] -> string
+ Example:
concatImapStringsSep "-" (pos: x: toString (x / pos)) [ 6 6 6 ]
=> "6-3-2"
*/
- concatImapStringsSep = sep: f: list: concatStringsSep sep (lib.imap1 f list);
+ concatImapStringsSep =
+ # Separator to add between elements
+ sep:
+ # Function that receives elements and their positions
+ f:
+ # List of input strings
+ list: concatStringsSep sep (lib.imap1 f list);
+
+ /* Construct a Unix-style, colon-separated search path consisting of
+ the given `subDir` appended to each of the given paths.
- /* Construct a Unix-style search path consisting of each `subDir"
- directory of the given list of packages.
+ Type: makeSearchPath :: string -> [string] -> string
Example:
makeSearchPath "bin" ["/root" "/usr" "/usr/local"]
=> "/root/bin:/usr/bin:/usr/local/bin"
- makeSearchPath "bin" ["/"]
- => "//bin"
+ makeSearchPath "bin" [""]
+ => "/bin"
*/
- makeSearchPath = subDir: packages:
- concatStringsSep ":" (map (path: path + "/" + subDir) (builtins.filter (x: x != null) packages));
+ makeSearchPath =
+ # Directory name to append
+ subDir:
+ # List of base paths
+ paths:
+ concatStringsSep ":" (map (path: path + "/" + subDir) (builtins.filter (x: x != null) paths));
- /* Construct a Unix-style search path, using given package output.
- If no output is found, fallback to `.out` and then to the default.
+ /* Construct a Unix-style search path by appending the given
+ `subDir` to the specified `output` of each of the packages. If no
+ output by the given name is found, fallback to `.out` and then to
+ the default.
+
+ Type: string -> string -> [package] -> string
Example:
makeSearchPathOutput "dev" "bin" [ pkgs.openssl pkgs.zlib ]
=> "/nix/store/9rz8gxhzf8sw4kf2j2f1grr49w8zx5vj-openssl-1.0.1r-dev/bin:/nix/store/wwh7mhwh269sfjkm6k5665b5kgp7jrk2-zlib-1.2.8/bin"
*/
- makeSearchPathOutput = output: subDir: pkgs: makeSearchPath subDir (map (lib.getOutput output) pkgs);
+ makeSearchPathOutput =
+ # Package output to use
+ output:
+ # Directory name to append
+ subDir:
+ # List of packages
+ pkgs: makeSearchPath subDir (map (lib.getOutput output) pkgs);
/* Construct a library search path (such as RPATH) containing the
libraries for a set of packages
@@ -114,64 +162,80 @@ rec {
*/
makeBinPath = makeSearchPathOutput "bin" "bin";
-
- /* Construct a perl search path (such as $PERL5LIB)
-
- FIXME(zimbatm): this should be moved in perl-specific code
-
- Example:
- pkgs = import { }
- makePerlPath [ pkgs.perlPackages.libnet ]
- => "/nix/store/n0m1fk9c960d8wlrs62sncnadygqqc6y-perl-Net-SMTP-1.25/lib/perl5/site_perl"
- */
- makePerlPath = makeSearchPathOutput "lib" "lib/perl5/site_perl";
-
- /* Construct a perl search path recursively including all dependencies (such as $PERL5LIB)
-
- Example:
- pkgs = import { }
- makeFullPerlPath [ pkgs.perlPackages.CGI ]
- => "/nix/store/fddivfrdc1xql02h9q500fpnqy12c74n-perl-CGI-4.38/lib/perl5/site_perl:/nix/store/8hsvdalmsxqkjg0c5ifigpf31vc4vsy2-perl-HTML-Parser-3.72/lib/perl5/site_perl:/nix/store/zhc7wh0xl8hz3y3f71nhlw1559iyvzld-perl-HTML-Tagset-3.20/lib/perl5/site_perl"
- */
- makeFullPerlPath = deps: makePerlPath (lib.misc.closePropagation deps);
-
/* Depending on the boolean `cond', return either the given string
or the empty string. Useful to concatenate against a bigger string.
+ Type: optionalString :: bool -> string -> string
+
Example:
optionalString true "some-string"
=> "some-string"
optionalString false "some-string"
=> ""
*/
- optionalString = cond: string: if cond then string else "";
+ optionalString =
+ # Condition
+ cond:
+ # String to return if condition is true
+ string: if cond then string else "";
/* Determine whether a string has given prefix.
+ Type: hasPrefix :: string -> string -> bool
+
Example:
hasPrefix "foo" "foobar"
=> true
hasPrefix "foo" "barfoo"
=> false
*/
- hasPrefix = pref: str:
- substring 0 (stringLength pref) str == pref;
+ hasPrefix =
+ # Prefix to check for
+ pref:
+ # Input string
+ str: substring 0 (stringLength pref) str == pref;
/* Determine whether a string has given suffix.
+ Type: hasSuffix :: string -> string -> bool
+
Example:
hasSuffix "foo" "foobar"
=> false
hasSuffix "foo" "barfoo"
=> true
*/
- hasSuffix = suffix: content:
+ hasSuffix =
+ # Suffix to check for
+ suffix:
+ # Input string
+ content:
let
lenContent = stringLength content;
lenSuffix = stringLength suffix;
in lenContent >= lenSuffix &&
substring (lenContent - lenSuffix) lenContent content == suffix;
+ /* Determine whether a string contains the given infix
+
+ Type: hasInfix :: string -> string -> bool
+
+ Example:
+ hasInfix "bc" "abcd"
+ => true
+ hasInfix "ab" "abcd"
+ => true
+ hasInfix "cd" "abcd"
+ => true
+ hasInfix "foo" "abcd"
+ => false
+ */
+ hasInfix = infix: content:
+ let
+ drop = x: substring 1 (stringLength x) x;
+ in hasPrefix infix content
+ || content != "" && hasInfix infix (drop content);
+
/* Convert a string to a list of characters (i.e. singleton strings).
This allows you to, e.g., map a function over each character. However,
note that this will likely be horribly inefficient; Nix is not a
@@ -180,6 +244,8 @@ rec {
Also note that Nix treats strings as a list of bytes and thus doesn't
handle unicode.
+ Type: stringtoCharacters :: string -> [string]
+
Example:
stringToCharacters ""
=> [ ]
@@ -194,18 +260,25 @@ rec {
/* Manipulate a string character by character and replace them by
strings before concatenating the results.
+ Type: stringAsChars :: (string -> string) -> string -> string
+
Example:
stringAsChars (x: if x == "a" then "i" else x) "nax"
=> "nix"
*/
- stringAsChars = f: s:
- concatStrings (
+ stringAsChars =
+ # Function to map over each individual character
+ f:
+ # Input string
+ s: concatStrings (
map f (stringToCharacters s)
);
- /* Escape occurrence of the elements of ‘list’ in ‘string’ by
+ /* Escape occurrence of the elements of `list` in `string` by
prefixing it with a backslash.
+ Type: escape :: [string] -> string -> string
+
Example:
escape ["(" ")"] "(foo)"
=> "\\(foo\\)"
@@ -214,6 +287,8 @@ rec {
/* Quote string to be used safely within the Bourne shell.
+ Type: escapeShellArg :: string -> string
+
Example:
escapeShellArg "esc'ape\nme"
=> "'esc'\\''ape\nme'"
@@ -222,6 +297,8 @@ rec {
/* Quote all arguments to be safely passed to the Bourne shell.
+ Type: escapeShellArgs :: [string] -> string
+
Example:
escapeShellArgs ["one" "two three" "four'five"]
=> "'one' 'two three' 'four'\\''five'"
@@ -230,13 +307,15 @@ rec {
/* Turn a string into a Nix expression representing that string
+ Type: string -> string
+
Example:
escapeNixString "hello\${}\n"
=> "\"hello\\\${}\\n\""
*/
escapeNixString = s: escape ["$"] (builtins.toJSON s);
- /* Obsolete - use replaceStrings instead. */
+ # Obsolete - use replaceStrings instead.
replaceChars = builtins.replaceStrings or (
del: new: s:
let
@@ -256,6 +335,8 @@ rec {
/* Converts an ASCII string to lower-case.
+ Type: toLower :: string -> string
+
Example:
toLower "HOME"
=> "home"
@@ -264,6 +345,8 @@ rec {
/* Converts an ASCII string to upper-case.
+ Type: toUpper :: string -> string
+
Example:
toUpper "home"
=> "HOME"
@@ -273,7 +356,7 @@ rec {
/* Appends string context from another string. This is an implementation
detail of Nix.
- Strings in Nix carry an invisible `context' which is a list of strings
+ Strings in Nix carry an invisible `context` which is a list of strings
representing store paths. If the string is later used in a derivation
attribute, the derivation will properly populate the inputDrvs and
inputSrcs.
@@ -319,8 +402,9 @@ rec {
in
recurse 0 0;
- /* Return the suffix of the second argument if the first argument matches
- its prefix.
+ /* Return a string without the specified prefix, if the prefix matches.
+
+ Type: string -> string -> string
Example:
removePrefix "foo." "foo.bar.baz"
@@ -328,18 +412,23 @@ rec {
removePrefix "xxx" "foo.bar.baz"
=> "foo.bar.baz"
*/
- removePrefix = pre: s:
+ removePrefix =
+ # Prefix to remove if it matches
+ prefix:
+ # Input string
+ str:
let
- preLen = stringLength pre;
- sLen = stringLength s;
+ preLen = stringLength prefix;
+ sLen = stringLength str;
in
- if hasPrefix pre s then
- substring preLen (sLen - preLen) s
+ if hasPrefix prefix str then
+ substring preLen (sLen - preLen) str
else
- s;
+ str;
+
+ /* Return a string without the specified suffix, if the suffix matches.
- /* Return the prefix of the second argument if the first argument matches
- its suffix.
+ Type: string -> string -> string
Example:
removeSuffix "front" "homefront"
@@ -347,17 +436,21 @@ rec {
removeSuffix "xxx" "homefront"
=> "homefront"
*/
- removeSuffix = suf: s:
+ removeSuffix =
+ # Suffix to remove if it matches
+ suffix:
+ # Input string
+ str:
let
- sufLen = stringLength suf;
- sLen = stringLength s;
+ sufLen = stringLength suffix;
+ sLen = stringLength str;
in
- if sufLen <= sLen && suf == substring (sLen - sufLen) sufLen s then
- substring 0 (sLen - sufLen) s
+ if sufLen <= sLen && suffix == substring (sLen - sufLen) sufLen str then
+ substring 0 (sLen - sufLen) str
else
- s;
+ str;
- /* Return true iff string v1 denotes a version older than v2.
+ /* Return true if string v1 denotes a version older than v2.
Example:
versionOlder "1.1" "1.2"
@@ -367,7 +460,7 @@ rec {
*/
versionOlder = v1: v2: builtins.compareVersions v2 v1 == 1;
- /* Return true iff string v1 denotes a version equal to or newer than v2.
+ /* Return true if string v1 denotes a version equal to or newer than v2.
Example:
versionAtLeast "1.1" "1.0"
@@ -410,7 +503,7 @@ rec {
components = splitString "/" url;
filename = lib.last components;
name = builtins.head (splitString sep filename);
- in assert name != filename; name;
+ in assert name != filename; name;
/* Create an --{enable,disable}- string that can be passed to
standard GNU Autoconf scripts.
@@ -459,6 +552,11 @@ rec {
/* Create a fixed width string with additional prefix to match
required width.
+ This function will fail if the input string is longer than the
+ requested length.
+
+ Type: fixedWidthString :: int -> string -> string
+
Example:
fixedWidthString 5 "0" (toString 15)
=> "00015"
@@ -468,7 +566,10 @@ rec {
strw = lib.stringLength str;
reqWidth = width - (lib.stringLength filler);
in
- assert strw <= width;
+ assert lib.assertMsg (strw <= width)
+ "fixedWidthString: requested string length (${
+ toString width}) must not be shorter than actual length (${
+ toString strw})";
if strw == width then str else filler + fixedWidthString reqWidth filler str;
/* Format a number adding leading zeroes up to fixed width.
@@ -499,12 +600,16 @@ rec {
=> false
*/
isStorePath = x:
- isCoercibleToString x
- && builtins.substring 0 1 (toString x) == "/"
- && dirOf (builtins.toPath x) == builtins.storeDir;
+ if isCoercibleToString x then
+ let str = toString x; in
+ builtins.substring 0 1 str == "/"
+ && dirOf str == builtins.storeDir
+ else
+ false;
- /* Convert string to int
- Obviously, it is a bit hacky to use fromJSON that way.
+ /* Parse a string string as an int.
+
+ Type: string -> int
Example:
toInt "1337"
@@ -514,17 +619,18 @@ rec {
toInt "3.14"
=> error: floating point JSON numbers are not supported
*/
+ # Obviously, it is a bit hacky to use fromJSON this way.
toInt = str:
let may_be_int = builtins.fromJSON str; in
if builtins.isInt may_be_int
then may_be_int
else throw "Could not convert ${str} to int.";
- /* Read a list of paths from `file', relative to the `rootPath'. Lines
- beginning with `#' are treated as comments and ignored. Whitespace
- is significant.
+ /* Read a list of paths from `file`, relative to the `rootPath`.
+ Lines beginning with `#` are treated as comments and ignored.
+ Whitespace is significant.
- NOTE: this function is not performant and should be avoided
+ NOTE: This function is not performant and should be avoided.
Example:
readPathsFromFile /prefix
@@ -537,16 +643,17 @@ rec {
*/
readPathsFromFile = rootPath: file:
let
- root = toString rootPath;
lines = lib.splitString "\n" (builtins.readFile file);
removeComments = lib.filter (line: line != "" && !(lib.hasPrefix "#" line));
relativePaths = removeComments lines;
- absolutePaths = builtins.map (path: builtins.toPath (root + "/" + path)) relativePaths;
+ absolutePaths = builtins.map (path: rootPath + "/${path}") relativePaths;
in
absolutePaths;
/* Read the contents of a file removing the trailing \n
+ Type: fileContents :: path -> string
+
Example:
$ echo "1.0" > ./version
diff --git a/lib/systems/default.nix b/lib/systems/default.nix
index 5eacc9eb23e11277e7f59bd76533b005f4b5e527..5e6d277be7d5a1ee32649d00a67ec065c74ac227 100644
--- a/lib/systems/default.nix
+++ b/lib/systems/default.nix
@@ -24,14 +24,20 @@ rec {
config = parse.tripleFromSystem final.parsed;
# Just a guess, based on `system`
platform = platforms.selectBySystem final.system;
+ # Determine whether we are compatible with the provided CPU
+ isCompatible = platform: parse.isCompatible final.parsed.cpu platform.parsed.cpu;
# Derived meta-data
libc =
/**/ if final.isDarwin then "libSystem"
else if final.isMinGW then "msvcrt"
+ else if final.isWasi then "wasilibc"
else if final.isMusl then "musl"
else if final.isUClibc then "uclibc"
else if final.isAndroid then "bionic"
else if final.isLinux /* default */ then "glibc"
+ else if final.isMsp430 then "newlib"
+ else if final.isAvr then "avrlibc"
+ else if final.isNetBSD then "nblibc"
# TODO(@Ericson2314) think more about other operating systems
else "native/impure";
extensions = {
@@ -46,6 +52,73 @@ rec {
# Misc boolean options
useAndroidPrebuilt = false;
useiOSPrebuilt = false;
+
+ # Output from uname
+ uname = {
+ # uname -s
+ system = {
+ "linux" = "Linux";
+ "windows" = "Windows";
+ "darwin" = "Darwin";
+ "netbsd" = "NetBSD";
+ "freebsd" = "FreeBSD";
+ "openbsd" = "OpenBSD";
+ "wasi" = "Wasi";
+ }.${final.parsed.kernel.name} or null;
+
+ # uname -p
+ processor = final.parsed.cpu.name;
+
+ # uname -r
+ release = null;
+ };
+
+ kernelArch =
+ if final.isAarch32 then "arm"
+ else if final.isAarch64 then "arm64"
+ else if final.isx86_32 then "x86"
+ else if final.isx86_64 then "ia64"
+ else final.parsed.cpu.name;
+
+ qemuArch =
+ if final.isArm then "arm"
+ else if final.isx86_64 then "x86_64"
+ else if final.isx86 then "i386"
+ else {
+ "powerpc" = "ppc";
+ "powerpcle" = "ppc";
+ "powerpc64" = "ppc64";
+ "powerpc64le" = "ppc64le";
+ }.${final.parsed.cpu.name} or final.parsed.cpu.name;
+
+ emulator = pkgs: let
+ qemu-user = pkgs.qemu.override {
+ smartcardSupport = false;
+ spiceSupport = false;
+ openGLSupport = false;
+ virglSupport = false;
+ vncSupport = false;
+ gtkSupport = false;
+ sdlSupport = false;
+ pulseSupport = false;
+ smbdSupport = false;
+ seccompSupport = false;
+ hostCpuTargets = ["${final.qemuArch}-linux-user"];
+ };
+ wine-name = "wine${toString final.parsed.cpu.bits}";
+ wine = (pkgs.winePackagesFor wine-name).minimal;
+ in
+ if final.parsed.kernel.name == pkgs.stdenv.hostPlatform.parsed.kernel.name &&
+ pkgs.stdenv.hostPlatform.isCompatible final
+ then "${pkgs.runtimeShell} -c '\"$@\"' --"
+ else if final.isWindows
+ then "${wine}/bin/${wine-name}"
+ else if final.isLinux && pkgs.stdenv.hostPlatform.isLinux
+ then "${qemu-user}/bin/qemu-${final.qemuArch}"
+ else if final.isWasi
+ then "${pkgs.wasmtime}/bin/wasmtime"
+ else throw "Don't know how to run ${final.config} executables.";
+
} // mapAttrs (n: v: v final.parsed) inspect.predicates
// args;
in assert final.useAndroidPrebuilt -> final.isAndroid;
diff --git a/lib/systems/doubles.nix b/lib/systems/doubles.nix
index adc454406b851c75f7b27b64a65f6955c480f08c..c6877ebef0bc51fa00116183f34f321adc5104c3 100644
--- a/lib/systems/doubles.nix
+++ b/lib/systems/doubles.nix
@@ -15,6 +15,10 @@ let
"x86_64-cygwin" "x86_64-darwin" "x86_64-freebsd" "x86_64-linux"
"x86_64-netbsd" "x86_64-openbsd" "x86_64-solaris"
+
+ "x86_64-windows" "i686-windows"
+
+ "wasm64-wasi" "wasm32-wasi"
];
allParsed = map parse.mkSystemFromString all;
@@ -36,13 +40,15 @@ in rec {
cygwin = filterDoubles predicates.isCygwin;
darwin = filterDoubles predicates.isDarwin;
freebsd = filterDoubles predicates.isFreeBSD;
- # Should be better, but MinGW is unclear, and HURD is bit-rotted.
- gnu = filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnu; });
+ # Should be better, but MinGW is unclear.
+ gnu = filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnu; }) ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnueabi; }) ++ filterDoubles (matchAttrs { kernel = parse.kernels.linux; abi = parse.abis.gnueabihf; });
illumos = filterDoubles predicates.isSunOS;
linux = filterDoubles predicates.isLinux;
netbsd = filterDoubles predicates.isNetBSD;
openbsd = filterDoubles predicates.isOpenBSD;
unix = filterDoubles predicates.isUnix;
+ wasi = filterDoubles predicates.isWasi;
+ windows = filterDoubles predicates.isWindows;
- mesaPlatforms = ["i686-linux" "x86_64-linux" "x86_64-darwin" "armv5tel-linux" "armv6l-linux" "armv7l-linux" "aarch64-linux" "powerpc64le-linux"];
+ mesaPlatforms = ["i686-linux" "x86_64-linux" "x86_64-darwin" "armv5tel-linux" "armv6l-linux" "armv7l-linux" "armv7a-linux" "aarch64-linux" "powerpc64le-linux"];
}
diff --git a/lib/systems/examples.nix b/lib/systems/examples.nix
index 3828b2f84c6491ad608ed2f3c480a646eb4492ef..94c7cfd7570f6b7e9d01e6d491d5fdc50758b341 100644
--- a/lib/systems/examples.nix
+++ b/lib/systems/examples.nix
@@ -2,7 +2,14 @@
# `crossSystem`. They are put here for user convenience, but also used by cross
# tests and linux cross stdenv building, so handle with care!
{ lib }:
-let platforms = import ./platforms.nix { inherit lib; }; in
+let
+ platforms = import ./platforms.nix { inherit lib; };
+
+ riscv = bits: {
+ config = "riscv${bits}-unknown-linux-gnu";
+ platform = platforms.riscv-multiplatform bits;
+ };
+in
rec {
#
@@ -28,7 +35,7 @@ rec {
};
armv7l-hf-multiplatform = rec {
- config = "armv7a-unknown-linux-gnueabihf";
+ config = "armv7l-unknown-linux-gnueabihf";
platform = platforms.armv7l-hf-multiplatform;
};
@@ -37,18 +44,10 @@ rec {
platform = platforms.aarch64-multiplatform;
};
- armv5te-android-prebuilt = rec {
- config = "armv5tel-unknown-linux-androideabi";
- sdkVer = "21";
- ndkVer = "10e";
- platform = platforms.armv5te-android;
- useAndroidPrebuilt = true;
- };
-
armv7a-android-prebuilt = rec {
config = "armv7a-unknown-linux-androideabi";
sdkVer = "24";
- ndkVer = "17";
+ ndkVer = "18b";
platform = platforms.armv7a-android;
useAndroidPrebuilt = true;
};
@@ -56,7 +55,7 @@ rec {
aarch64-android-prebuilt = rec {
config = "aarch64-unknown-linux-android";
sdkVer = "24";
- ndkVer = "17";
+ ndkVer = "18b";
platform = platforms.aarch64-multiplatform;
useAndroidPrebuilt = true;
};
@@ -92,13 +91,56 @@ rec {
musl64 = { config = "x86_64-unknown-linux-musl"; };
musl32 = { config = "i686-unknown-linux-musl"; };
- riscv = bits: {
- config = "riscv${bits}-unknown-linux-gnu";
- platform = platforms.riscv-multiplatform bits;
- };
riscv64 = riscv "64";
riscv32 = riscv "32";
+ msp430 = {
+ config = "msp430-elf";
+ libc = "newlib";
+ };
+
+ avr = {
+ config = "avr";
+ };
+
+ arm-embedded = {
+ config = "arm-none-eabi";
+ libc = "newlib";
+ };
+ armhf-embedded = {
+ config = "arm-none-eabihf";
+ libc = "newlib";
+ };
+
+ aarch64-embedded = {
+ config = "aarch64-none-elf";
+ libc = "newlib";
+ };
+
+ aarch64be-embedded = {
+ config = "aarch64_be-none-elf";
+ libc = "newlib";
+ };
+
+ ppc-embedded = {
+ config = "powerpc-none-eabi";
+ libc = "newlib";
+ };
+
+ ppcle-embedded = {
+ config = "powerpcle-none-eabi";
+ libc = "newlib";
+ };
+
+ i686-embedded = {
+ config = "i686-elf";
+ libc = "newlib";
+ };
+
+ x86_64-embedded = {
+ config = "x86_64-elf";
+ libc = "newlib";
+ };
#
# Darwin
@@ -162,4 +204,21 @@ rec {
libc = "msvcrt"; # This distinguishes the mingw (non posix) toolchain
platform = {};
};
+
+ # BSDs
+
+ amd64-netbsd = {
+ config = "x86_64-unknown-netbsd";
+ libc = "nblibc";
+ };
+
+ #
+ # WASM
+ #
+
+ wasi32 = {
+ config = "wasm32-unknown-wasi";
+ useLLVM = true;
+ };
+
}
diff --git a/lib/systems/for-meta.nix b/lib/systems/for-meta.nix
index 96e8b6f86eb06fcd4520234aec760c2dd3ac4db2..17ae94deb7d1c46d1cc7b1baa986e90f604e26ea 100644
--- a/lib/systems/for-meta.nix
+++ b/lib/systems/for-meta.nix
@@ -20,7 +20,7 @@ in rec {
cygwin = [ patterns.isCygwin ];
darwin = [ patterns.isDarwin ];
freebsd = [ patterns.isFreeBSD ];
- # Should be better, but MinGW is unclear, and HURD is bit-rotted.
+ # Should be better, but MinGW is unclear.
gnu = [
{ kernel = parse.kernels.linux; abi = abis.gnu; }
{ kernel = parse.kernels.linux; abi = abis.gnueabi; }
@@ -32,6 +32,7 @@ in rec {
openbsd = [ patterns.isOpenBSD ];
unix = patterns.isUnix; # Actually a list
windows = [ patterns.isWindows ];
+ wasi = [ patterns.isWasi ];
inherit (lib.systems.doubles) mesaPlatforms;
}
diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix
index ac34ed45695cea095eab9fccbfd83646a2691417..1c90af88879a412a3a67ab51fe4d2dccfed15205 100644
--- a/lib/systems/inspect.nix
+++ b/lib/systems/inspect.nix
@@ -9,7 +9,8 @@ let abis = lib.mapAttrs (_: abi: builtins.removeAttrs abi [ "assertions" ]) abis
rec {
patterns = rec {
isi686 = { cpu = cpuTypes.i686; };
- isx86_64 = { cpu = cpuTypes.x86_64; };
+ isx86_32 = { cpu = { family = "x86"; bits = 32; }; };
+ isx86_64 = { cpu = { family = "x86"; bits = 64; }; };
isPowerPC = { cpu = cpuTypes.powerpc; };
isPower = { cpu = { family = "power"; }; };
isx86 = { cpu = { family = "x86"; }; };
@@ -19,6 +20,9 @@ rec {
isRiscV = { cpu = { family = "riscv"; }; };
isSparc = { cpu = { family = "sparc"; }; };
isWasm = { cpu = { family = "wasm"; }; };
+ isMsp430 = { cpu = { family = "msp430"; }; };
+ isAvr = { cpu = { family = "avr"; }; };
+ isAlpha = { cpu = { family = "alpha"; }; };
is32bit = { cpu = { bits = 32; }; };
is64bit = { cpu = { bits = 64; }; };
@@ -27,19 +31,19 @@ rec {
isBSD = { kernel = { families = { inherit (kernelFamilies) bsd; }; }; };
isDarwin = { kernel = { families = { inherit (kernelFamilies) darwin; }; }; };
- isUnix = [ isBSD isDarwin isLinux isSunOS isHurd isCygwin ];
+ isUnix = [ isBSD isDarwin isLinux isSunOS isCygwin ];
isMacOS = { kernel = kernels.macos; };
isiOS = { kernel = kernels.ios; };
isLinux = { kernel = kernels.linux; };
isSunOS = { kernel = kernels.solaris; };
isFreeBSD = { kernel = kernels.freebsd; };
- isHurd = { kernel = kernels.hurd; };
isNetBSD = { kernel = kernels.netbsd; };
isOpenBSD = { kernel = kernels.openbsd; };
isWindows = { kernel = kernels.windows; };
isCygwin = { kernel = kernels.windows; abi = abis.cygnus; };
isMinGW = { kernel = kernels.windows; abi = abis.gnu; };
+ isWasi = { kernel = kernels.wasi; };
isAndroid = [ { abi = abis.android; } { abi = abis.androideabi; } ];
isMusl = with abis; map (a: { abi = a; }) [ musl musleabi musleabihf ];
diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix
index 7ee3479c333d88bb11afb3e734d2d041be07922c..7f5912a13a75153c8973c5ae378afbd4c2a0e4b2 100644
--- a/lib/systems/parse.nix
+++ b/lib/systems/parse.nix
@@ -69,20 +69,24 @@ rec {
cpuTypes = with significantBytes; setTypes types.openCpuType {
arm = { bits = 32; significantByte = littleEndian; family = "arm"; };
- armv5tel = { bits = 32; significantByte = littleEndian; family = "arm"; version = "5"; };
- armv6m = { bits = 32; significantByte = littleEndian; family = "arm"; version = "6"; };
- armv6l = { bits = 32; significantByte = littleEndian; family = "arm"; version = "6"; };
- armv7a = { bits = 32; significantByte = littleEndian; family = "arm"; version = "7"; };
- armv7r = { bits = 32; significantByte = littleEndian; family = "arm"; version = "7"; };
- armv7m = { bits = 32; significantByte = littleEndian; family = "arm"; version = "7"; };
- armv7l = { bits = 32; significantByte = littleEndian; family = "arm"; version = "7"; };
- armv8a = { bits = 32; significantByte = littleEndian; family = "arm"; version = "8"; };
- armv8r = { bits = 32; significantByte = littleEndian; family = "arm"; version = "8"; };
- armv8m = { bits = 32; significantByte = littleEndian; family = "arm"; version = "8"; };
- aarch64 = { bits = 64; significantByte = littleEndian; family = "arm"; version = "8"; };
-
- i686 = { bits = 32; significantByte = littleEndian; family = "x86"; };
- x86_64 = { bits = 64; significantByte = littleEndian; family = "x86"; };
+ armv5tel = { bits = 32; significantByte = littleEndian; family = "arm"; version = "5"; arch = "armv5t"; };
+ armv6m = { bits = 32; significantByte = littleEndian; family = "arm"; version = "6"; arch = "armv6-m"; };
+ armv6l = { bits = 32; significantByte = littleEndian; family = "arm"; version = "6"; arch = "armv6"; };
+ armv7a = { bits = 32; significantByte = littleEndian; family = "arm"; version = "7"; arch = "armv7-a"; };
+ armv7r = { bits = 32; significantByte = littleEndian; family = "arm"; version = "7"; arch = "armv7-r"; };
+ armv7m = { bits = 32; significantByte = littleEndian; family = "arm"; version = "7"; arch = "armv7-m"; };
+ armv7l = { bits = 32; significantByte = littleEndian; family = "arm"; version = "7"; arch = "armv7"; };
+ armv8a = { bits = 32; significantByte = littleEndian; family = "arm"; version = "8"; arch = "armv8-a"; };
+ armv8r = { bits = 32; significantByte = littleEndian; family = "arm"; version = "8"; arch = "armv8-a"; };
+ armv8m = { bits = 32; significantByte = littleEndian; family = "arm"; version = "8"; arch = "armv8-m"; };
+ aarch64 = { bits = 64; significantByte = littleEndian; family = "arm"; version = "8"; arch = "armv8-a"; };
+ aarch64_be = { bits = 64; significantByte = bigEndian; family = "arm"; version = "8"; arch = "armv8-a"; };
+
+ i386 = { bits = 32; significantByte = littleEndian; family = "x86"; arch = "i386"; };
+ i486 = { bits = 32; significantByte = littleEndian; family = "x86"; arch = "i486"; };
+ i586 = { bits = 32; significantByte = littleEndian; family = "x86"; arch = "i586"; };
+ i686 = { bits = 32; significantByte = littleEndian; family = "x86"; arch = "i686"; };
+ x86_64 = { bits = 64; significantByte = littleEndian; family = "x86"; arch = "x86-64"; };
mips = { bits = 32; significantByte = bigEndian; family = "mips"; };
mipsel = { bits = 32; significantByte = littleEndian; family = "mips"; };
@@ -92,6 +96,7 @@ rec {
powerpc = { bits = 32; significantByte = bigEndian; family = "power"; };
powerpc64 = { bits = 64; significantByte = bigEndian; family = "power"; };
powerpc64le = { bits = 64; significantByte = littleEndian; family = "power"; };
+ powerpcle = { bits = 32; significantByte = littleEndian; family = "power"; };
riscv32 = { bits = 32; significantByte = littleEndian; family = "riscv"; };
riscv64 = { bits = 64; significantByte = littleEndian; family = "riscv"; };
@@ -101,8 +106,93 @@ rec {
wasm32 = { bits = 32; significantByte = littleEndian; family = "wasm"; };
wasm64 = { bits = 64; significantByte = littleEndian; family = "wasm"; };
+
+ alpha = { bits = 64; significantByte = littleEndian; family = "alpha"; };
+
+ msp430 = { bits = 16; significantByte = littleEndian; family = "msp430"; };
+ avr = { bits = 8; family = "avr"; };
};
+ # Determine where two CPUs are compatible with each other. That is,
+ # can we run code built for system b on system a? For that to
+ # happen, then the set of all possible possible programs that system
+ # b accepts must be a subset of the set of all programs that system
+ # a accepts. This compatibility relation forms a category where each
+ # CPU is an object and each arrow from a to b represents
+ # compatibility. CPUs with multiple modes of Endianness are
+ # isomorphic while all CPUs are endomorphic because any program
+ # built for a CPU can run on that CPU.
+ isCompatible = a: b: with cpuTypes; lib.any lib.id [
+ # x86
+ (b == i386 && isCompatible a i486)
+ (b == i486 && isCompatible a i586)
+ (b == i586 && isCompatible a i686)
+
+ # XXX: Not true in some cases. Like in WSL mode.
+ (b == i686 && isCompatible a x86_64)
+
+ # ARMv4
+ (b == arm && isCompatible a armv5tel)
+
+ # ARMv5
+ (b == armv5tel && isCompatible a armv6l)
+
+ # ARMv6
+ (b == armv6l && isCompatible a armv6m)
+ (b == armv6m && isCompatible a armv7l)
+
+ # ARMv7
+ (b == armv7l && isCompatible a armv7a)
+ (b == armv7l && isCompatible a armv7r)
+ (b == armv7l && isCompatible a armv7m)
+ (b == armv7a && isCompatible a armv8a)
+ (b == armv7r && isCompatible a armv8a)
+ (b == armv7m && isCompatible a armv8a)
+ (b == armv7a && isCompatible a armv8r)
+ (b == armv7r && isCompatible a armv8r)
+ (b == armv7m && isCompatible a armv8r)
+ (b == armv7a && isCompatible a armv8m)
+ (b == armv7r && isCompatible a armv8m)
+ (b == armv7m && isCompatible a armv8m)
+
+ # ARMv8
+ (b == armv8r && isCompatible a armv8a)
+ (b == armv8m && isCompatible a armv8a)
+
+ # XXX: not always true! Some arm64 cpus don’t support arm32 mode.
+ (b == aarch64 && a == armv8a)
+ (b == armv8a && isCompatible a aarch64)
+
+ (b == aarch64 && a == aarch64_be)
+ (b == aarch64_be && isCompatible a aarch64)
+
+ # PowerPC
+ (b == powerpc && isCompatible a powerpc64)
+ (b == powerpcle && isCompatible a powerpc)
+ (b == powerpc && a == powerpcle)
+ (b == powerpc64le && isCompatible a powerpc64)
+ (b == powerpc64 && a == powerpc64le)
+
+ # MIPS
+ (b == mips && isCompatible a mips64)
+ (b == mips && a == mipsel)
+ (b == mipsel && isCompatible a mips)
+ (b == mips64 && a == mips64el)
+ (b == mips64el && isCompatible a mips64)
+
+ # RISCV
+ (b == riscv32 && isCompatible a riscv64)
+
+ # SPARC
+ (b == sparc && isCompatible a sparc64)
+
+ # WASM
+ (b == wasm32 && isCompatible a wasm64)
+
+ # identity
+ (b == a)
+ ];
+
################################################################################
types.openVendor = mkOptionType {
@@ -117,6 +207,7 @@ rec {
apple = {};
pc = {};
+ none = {};
unknown = {};
};
@@ -135,6 +226,7 @@ rec {
elf = {};
macho = {};
pe = {};
+ wasm = {};
unknown = {};
};
@@ -172,12 +264,12 @@ rec {
macos = { execFormat = macho; families = { inherit darwin; }; name = "darwin"; };
ios = { execFormat = macho; families = { inherit darwin; }; };
freebsd = { execFormat = elf; families = { inherit bsd; }; };
- hurd = { execFormat = elf; families = { }; };
linux = { execFormat = elf; families = { }; };
netbsd = { execFormat = elf; families = { inherit bsd; }; };
none = { execFormat = unknown; families = { }; };
openbsd = { execFormat = elf; families = { inherit bsd; }; };
solaris = { execFormat = elf; families = { }; };
+ wasi = { execFormat = wasm; families = { }; };
windows = { execFormat = pe; families = { }; };
} // { # aliases
# 'darwin' is the kernel for all of them. We choose macOS by default.
@@ -200,7 +292,15 @@ rec {
abis = setTypes types.openAbi {
cygnus = {};
msvc = {};
- eabi = {};
+
+ # Note: eabi is specific to ARM and PowerPC.
+ # On PowerPC, this corresponds to PPCEABI.
+ # On ARM, this corresponds to ARMEABI.
+ eabi = { float = "soft"; };
+ eabihf = { float = "hard"; };
+
+ # Other architectures should use ELF in embedded situations.
+ elf = {};
androideabi = {};
android = {
@@ -256,11 +356,20 @@ rec {
setType "system" components;
mkSkeletonFromList = l: {
+ "1" = if elemAt l 0 == "avr"
+ then { cpu = elemAt l 0; kernel = "none"; abi = "unknown"; }
+ else throw "Target specification with 1 components is ambiguous";
"2" = # We only do 2-part hacks for things Nix already supports
if elemAt l 1 == "cygwin"
then { cpu = elemAt l 0; kernel = "windows"; abi = "cygnus"; }
- else if elemAt l 1 == "gnu"
- then { cpu = elemAt l 0; kernel = "hurd"; abi = "gnu"; }
+ # MSVC ought to be the default ABI so this case isn't needed. But then it
+ # becomes difficult to handle the gnu* variants for Aarch32 correctly for
+ # minGW. So it's easier to make gnu* the default for the MinGW, but
+ # hack-in MSVC for the non-MinGW case right here.
+ else if elemAt l 1 == "windows"
+ then { cpu = elemAt l 0; kernel = "windows"; abi = "msvc"; }
+ else if (elemAt l 1) == "elf"
+ then { cpu = elemAt l 0; vendor = "unknown"; kernel = "none"; abi = elemAt l 1; }
else { cpu = elemAt l 0; kernel = elemAt l 1; };
"3" = # Awkwards hacks, beware!
if elemAt l 1 == "apple"
@@ -268,9 +377,13 @@ rec {
else if (elemAt l 1 == "linux") || (elemAt l 2 == "gnu")
then { cpu = elemAt l 0; kernel = elemAt l 1; abi = elemAt l 2; }
else if (elemAt l 2 == "mingw32") # autotools breaks on -gnu for window
- then { cpu = elemAt l 0; vendor = elemAt l 1; kernel = "windows"; abi = "gnu"; }
+ then { cpu = elemAt l 0; vendor = elemAt l 1; kernel = "windows"; }
+ else if (elemAt l 2 == "wasi")
+ then { cpu = elemAt l 0; vendor = elemAt l 1; kernel = "wasi"; }
else if hasPrefix "netbsd" (elemAt l 2)
then { cpu = elemAt l 0; vendor = elemAt l 1; kernel = elemAt l 2; }
+ else if (elem (elemAt l 2) ["eabi" "eabihf" "elf"])
+ then { cpu = elemAt l 0; vendor = "unknown"; kernel = elemAt l 1; abi = elemAt l 2; }
else throw "Target specification with 3 components is ambiguous";
"4" = { cpu = elemAt l 0; vendor = elemAt l 1; kernel = elemAt l 2; abi = elemAt l 3; };
}.${toString (length l)}
@@ -302,13 +415,12 @@ rec {
else getKernel args.kernel;
abi =
/**/ if args ? abi then getAbi args.abi
- else if isLinux parsed then
+ else if isLinux parsed || isWindows parsed then
if isAarch32 parsed then
if lib.versionAtLeast (parsed.cpu.version or "0") "6"
then abis.gnueabihf
else abis.gnueabi
else abis.gnu
- else if isWindows parsed then abis.gnu
else abis.unknown;
};
diff --git a/lib/systems/platforms.nix b/lib/systems/platforms.nix
index 56783d99e3d43fc7a8b2af1200cb0849f5cdb91a..a2b43c970a411ef6e894d1a5fb1b1bcea48da20e 100644
--- a/lib/systems/platforms.nix
+++ b/lib/systems/platforms.nix
@@ -253,22 +253,11 @@ rec {
kernelTarget = "zImage";
};
- # https://developer.android.com/ndk/guides/abis#armeabi
- armv5te-android = {
- name = "armeabi";
- gcc = {
- arch = "armv5te";
- float = "soft";
- float-abi = "soft";
- };
- };
-
# https://developer.android.com/ndk/guides/abis#v7a
armv7a-android = {
name = "armeabi-v7a";
gcc = {
arch = "armv7-a";
- float = "hard";
float-abi = "softfp";
fpu = "vfpv3-d16";
};
@@ -467,10 +456,13 @@ rec {
};
selectBySystem = system: {
+ "i486-linux" = pc32;
+ "i586-linux" = pc32;
"i686-linux" = pc32;
"x86_64-linux" = pc64;
"armv5tel-linux" = sheevaplug;
"armv6l-linux" = raspberrypi;
+ "armv7a-linux" = armv7l-hf-multiplatform;
"armv7l-linux" = armv7l-hf-multiplatform;
"aarch64-linux" = aarch64-multiplatform;
"mipsel-linux" = fuloong2f_n32;
diff --git a/lib/tests/check-eval.nix b/lib/tests/check-eval.nix
new file mode 100644
index 0000000000000000000000000000000000000000..8bd7b605a39bdad6d8ad632591a571b31ae30b95
--- /dev/null
+++ b/lib/tests/check-eval.nix
@@ -0,0 +1,7 @@
+# Throws an error if any of our lib tests fail.
+
+let tests = [ "misc" "systems" ];
+ all = builtins.concatLists (map (f: import (./. + "/${f}.nix")) tests);
+in if all == []
+ then null
+ else throw (builtins.toJSON all)
diff --git a/lib/tests/misc.nix b/lib/tests/misc.nix
index cf99aca58c0907b252b4aea589ce91e271f58f78..d8f412d3fc49ae4a94faca0ab59903e45d5776c0 100644
--- a/lib/tests/misc.nix
+++ b/lib/tests/misc.nix
@@ -112,7 +112,7 @@ runTests {
storePathAppendix = isStorePath
"${goodPath}/bin/python";
nonAbsolute = isStorePath (concatStrings (tail (stringToCharacters goodPath)));
- asPath = isStorePath (builtins.toPath goodPath);
+ asPath = isStorePath (/. + goodPath);
otherPath = isStorePath "/something/else";
otherVals = {
attrset = isStorePath {};
@@ -236,6 +236,20 @@ runTests {
};
};
+ testOverrideExistingEmpty = {
+ expr = overrideExisting {} { a = 1; };
+ expected = {};
+ };
+
+ testOverrideExistingDisjoint = {
+ expr = overrideExisting { b = 2; } { a = 1; };
+ expected = { b = 2; };
+ };
+
+ testOverrideExistingOverride = {
+ expr = overrideExisting { a = 3; b = 2; } { a = 1; };
+ expected = { a = 1; b = 2; };
+ };
# GENERATORS
# these tests assume attributes are converted to lists
@@ -355,9 +369,10 @@ runTests {
testToPretty = {
expr = mapAttrs (const (generators.toPretty {})) rec {
int = 42;
+ float = 0.1337;
bool = true;
string = ''fno"rd'';
- path = /. + "/foo"; # toPath returns a string
+ path = /. + "/foo";
null_ = null;
function = x: x;
functionArgs = { arg ? 4, foo }: arg;
@@ -367,6 +382,7 @@ runTests {
};
expected = rec {
int = "42";
+ float = "~0.133700";
bool = "true";
string = ''"fno\"rd"'';
path = "/foo";
@@ -385,42 +401,4 @@ runTests {
expected = "«foo»";
};
-
-# MISC
-
- testOverridableDelayableArgsTest = {
- expr =
- let res1 = defaultOverridableDelayableArgs id {};
- res2 = defaultOverridableDelayableArgs id { a = 7; };
- res3 = let x = defaultOverridableDelayableArgs id { a = 7; };
- in (x.merge) { b = 10; };
- res4 = let x = defaultOverridableDelayableArgs id { a = 7; };
- in (x.merge) ( x: { b = 10; });
- res5 = let x = defaultOverridableDelayableArgs id { a = 7; };
- in (x.merge) ( x: { a = builtins.add x.a 3; });
- res6 = let x = defaultOverridableDelayableArgs id { a = 7; mergeAttrBy = { a = builtins.add; }; };
- y = x.merge {};
- in (y.merge) { a = 10; };
-
- resRem7 = res6.replace (a: removeAttrs a ["a"]);
-
- # fixed tests (delayed args): (when using them add some comments, please)
- resFixed1 =
- let x = defaultOverridableDelayableArgs id ( x: { a = 7; c = x.fixed.b; });
- y = x.merge (x: { name = "name-${builtins.toString x.fixed.c}"; });
- in (y.merge) { b = 10; };
- strip = attrs: removeAttrs attrs ["merge" "replace"];
- in all id
- [ ((strip res1) == { })
- ((strip res2) == { a = 7; })
- ((strip res3) == { a = 7; b = 10; })
- ((strip res4) == { a = 7; b = 10; })
- ((strip res5) == { a = 10; })
- ((strip res6) == { a = 17; })
- ((strip resRem7) == {})
- ((strip resFixed1) == { a = 7; b = 10; c =10; name = "name-10"; })
- ];
- expected = true;
- };
-
}
diff --git a/lib/tests/modules.sh b/lib/tests/modules.sh
index b83e1eb7d82d01bc228d9af375be0e49204ef506..eadaa0521b359914349b712ccdae02e5038d720b 100755
--- a/lib/tests/modules.sh
+++ b/lib/tests/modules.sh
@@ -149,6 +149,12 @@ checkConfigOutput "1 2 3 4 5 6 7 8 9 10" config.result ./loaOf-with-long-list.ni
# Check loaOf with many merges of lists.
checkConfigOutput "1 2 3 4 5 6 7 8 9 10" config.result ./loaOf-with-many-list-merges.nix
+# Check mkAliasOptionModule.
+checkConfigOutput "true" config.enable ./alias-with-priority.nix
+checkConfigOutput "true" config.enableAlias ./alias-with-priority.nix
+checkConfigOutput "false" config.enable ./alias-with-priority-can-override.nix
+checkConfigOutput "false" config.enableAlias ./alias-with-priority-can-override.nix
+
cat < a
*/
- id = x: x;
+ id =
+ # The value to return
+ x: x;
/* The constant function
- Ignores the second argument.
- Or: Construct a function that always returns a static value.
+
+ Ignores the second argument. If called with only one argument,
+ constructs a function that always returns a static value.
Type: const :: a -> b -> a
Example:
let f = const 5; in f 10
=> 5
*/
- const = x: y: x;
+ const =
+ # Value to return
+ x:
+ # Value to ignore
+ y: x;
## Named versions corresponding to some builtin operators.
- /* Concatenate two lists */
+ /* Concatenate two lists
+
+ Type: concat :: [a] -> [a] -> [a]
+
+ Example:
+ concat [ 1 2 ] [ 3 4 ]
+ => [ 1 2 3 4 ]
+ */
concat = x: y: x ++ y;
/* boolean “or” */
@@ -36,44 +50,57 @@ rec {
/* bitwise “and” */
bitAnd = builtins.bitAnd
- or import ./zip-int-bits.nix
- (a: b: if a==1 && b==1 then 1 else 0);
+ or (import ./zip-int-bits.nix
+ (a: b: if a==1 && b==1 then 1 else 0));
/* bitwise “or” */
bitOr = builtins.bitOr
- or import ./zip-int-bits.nix
- (a: b: if a==1 || b==1 then 1 else 0);
+ or (import ./zip-int-bits.nix
+ (a: b: if a==1 || b==1 then 1 else 0));
/* bitwise “xor” */
bitXor = builtins.bitXor
- or import ./zip-int-bits.nix
- (a: b: if a!=b then 1 else 0);
+ or (import ./zip-int-bits.nix
+ (a: b: if a!=b then 1 else 0));
/* bitwise “not” */
bitNot = builtins.sub (-1);
/* Convert a boolean to a string.
- Note that toString on a bool returns "1" and "".
+
+ This function uses the strings "true" and "false" to represent
+ boolean values. Calling `toString` on a bool instead returns "1"
+ and "" (sic!).
+
+ Type: boolToString :: bool -> string
*/
boolToString = b: if b then "true" else "false";
/* Merge two attribute sets shallowly, right side trumps left
+ mergeAttrs :: attrs -> attrs -> attrs
+
Example:
mergeAttrs { a = 1; b = 2; } { b = 3; c = 4; }
=> { a = 1; b = 3; c = 4; }
*/
- mergeAttrs = x: y: x // y;
+ mergeAttrs =
+ # Left attribute set
+ x:
+ # Right attribute set (higher precedence for equal keys)
+ y: x // y;
/* Flip the order of the arguments of a binary function.
+ Type: flip :: (a -> b -> c) -> (b -> a -> c)
+
Example:
flip concat [1] [2]
=> [ 2 1 ]
*/
flip = f: a: b: f b a;
- /* Apply function if argument is non-null.
+ /* Apply function if the supplied argument is non-null.
Example:
mapNullable (x: x+1) null
@@ -81,7 +108,11 @@ rec {
mapNullable (x: x+1) 22
=> 23
*/
- mapNullable = f: a: if isNull a then a else f a;
+ mapNullable =
+ # Function to call
+ f:
+ # Argument to check for null before passing it to `f`
+ a: if isNull a then a else f a;
# Pull in some builtins not included elsewhere.
inherit (builtins)
@@ -92,29 +123,58 @@ rec {
## nixpks version strings
- # The current full nixpkgs version number.
+ /* Returns the current full nixpkgs version number. */
version = release + versionSuffix;
- # The current nixpkgs version number as string.
+ /* Returns the current nixpkgs release number as string. */
release = lib.strings.fileContents ../.version;
- # The current nixpkgs version suffix as string.
+ /* Returns the current nixpkgs release code name.
+
+ On each release the first letter is bumped and a new animal is chosen
+ starting with that new letter.
+ */
+ codeName = "Loris";
+
+ /* Returns the current nixpkgs version suffix as string. */
versionSuffix =
let suffixFile = ../.version-suffix;
in if pathExists suffixFile
then lib.strings.fileContents suffixFile
else "pre-git";
+ /* Attempts to return the the current revision of nixpkgs and
+ returns the supplied default value otherwise.
+
+ Type: revisionWithDefault :: string -> string
+ */
+ revisionWithDefault =
+ # Default value to return if revision can not be determined
+ default:
+ let
+ revisionFile = "${toString ./..}/.git-revision";
+ gitRepo = "${toString ./..}/.git";
+ in if lib.pathIsDirectory gitRepo
+ then lib.commitIdFromGitRepo gitRepo
+ else if lib.pathExists revisionFile then lib.fileContents revisionFile
+ else default;
+
nixpkgsVersion = builtins.trace "`lib.nixpkgsVersion` is deprecated, use `lib.version` instead!" version;
- # Whether we're being called by nix-shell.
+ /* Determine whether the function is being called from inside a Nix
+ shell.
+
+ Type: inNixShell :: bool
+ */
inNixShell = builtins.getEnv "IN_NIX_SHELL" != "";
## Integer operations
- # Return minimum/maximum of two numbers.
+ /* Return minimum of two numbers. */
min = x: y: if x < y then x else y;
+
+ /* Return maximum of two numbers. */
max = x: y: if x > y then x else y;
/* Integer modulus
@@ -148,8 +208,9 @@ rec {
second subtype, compare elements of a single subtype with `yes`
and `no` respectively.
- Example:
+ Type: (a -> bool) -> (a -> a -> int) -> (a -> a -> int) -> (a -> a -> int)
+ Example:
let cmp = splitByAndCompare (hasPrefix "foo") compare compare; in
cmp "a" "z" => -1
@@ -160,34 +221,48 @@ rec {
# while
compare "fooa" "a" => 1
*/
- splitByAndCompare = p: yes: no: a: b:
+ splitByAndCompare =
+ # Predicate
+ p:
+ # Comparison function if predicate holds for both values
+ yes:
+ # Comparison function if predicate holds for neither value
+ no:
+ # First value to compare
+ a:
+ # Second value to compare
+ b:
if p a
then if p b then yes a b else -1
else if p b then 1 else no a b;
- /* Reads a JSON file. */
+ /* Reads a JSON file.
+
+ Type :: path -> any
+ */
importJSON = path:
builtins.fromJSON (builtins.readFile path);
- ## Warnings and asserts
-
- /* See https://github.com/NixOS/nix/issues/749. Eventually we'd like these
- to expand to Nix builtins that carry metadata so that Nix can filter out
- the INFO messages without parsing the message string.
+ ## Warnings
- Usage:
- {
- foo = lib.warn "foo is deprecated" oldFoo;
- }
+ # See https://github.com/NixOS/nix/issues/749. Eventually we'd like these
+ # to expand to Nix builtins that carry metadata so that Nix can filter out
+ # the INFO messages without parsing the message string.
+ #
+ # Usage:
+ # {
+ # foo = lib.warn "foo is deprecated" oldFoo;
+ # }
+ #
+ # TODO: figure out a clever way to integrate location information from
+ # something like __unsafeGetAttrPos.
- TODO: figure out a clever way to integrate location information from
- something like __unsafeGetAttrPos.
- */
- warn = msg: builtins.trace "WARNING: ${msg}";
+ warn = msg: builtins.trace "[1;31mwarning: ${msg}[0m";
info = msg: builtins.trace "INFO: ${msg}";
+ showWarnings = warnings: res: lib.fold (w: x: warn w x) res warnings;
## Function annotations
diff --git a/lib/types.nix b/lib/types.nix
index 4d6ac51c89882c7652e8427ab28f8d5b8c8185ee..b225119299da124d7f9bca240860b45e18cdb1c8 100644
--- a/lib/types.nix
+++ b/lib/types.nix
@@ -119,7 +119,9 @@ rec {
let
betweenDesc = lowest: highest:
"${toString lowest} and ${toString highest} (both inclusive)";
- between = lowest: highest: assert lowest <= highest;
+ between = lowest: highest:
+ assert lib.assertMsg (lowest <= highest)
+ "ints.between: lowest must be smaller than highest";
addCheck int (x: x >= lowest && x <= highest) // {
name = "intBetween";
description = "integer between ${betweenDesc lowest highest}";
@@ -167,6 +169,9 @@ rec {
# s32 = sign 32 4294967296;
};
+ # Alias of u16 for a port number
+ port = ints.u16;
+
float = mkOptionType rec {
name = "float";
description = "floating point number";
@@ -192,7 +197,10 @@ rec {
# separator between the values).
separatedString = sep: mkOptionType rec {
name = "separatedString";
- description = "string";
+ description = if sep == ""
+ then "Concatenated string" # for types.string.
+ else "strings concatenated with ${builtins.toJSON sep}"
+ ;
check = isString;
merge = loc: defs: concatStringsSep sep (getValues defs);
functor = (defaultFunctor name) // {
@@ -276,8 +284,7 @@ rec {
(mergeDefinitions (loc ++ [name]) elemType defs).optionalValue
)
# Push down position info.
- (map (def: listToAttrs (mapAttrsToList (n: def':
- { name = n; value = { inherit (def) file; value = def'; }; }) def.value)) defs)));
+ (map (def: mapAttrs (n: v: { inherit (def) file; value = v; }) def.value) defs)));
getSubOptions = prefix: elemType.getSubOptions (prefix ++ [""]);
getSubModules = elemType.getSubModules;
substSubModules = m: attrsOf (elemType.substSubModules m);
@@ -439,7 +446,9 @@ rec {
# Either value of type `finalType` or `coercedType`, the latter is
# converted to `finalType` using `coerceFunc`.
coercedTo = coercedType: coerceFunc: finalType:
- assert coercedType.getSubModules == null;
+ assert lib.assertMsg (coercedType.getSubModules == null)
+ "coercedTo: coercedType must not have submodules (it’s a ${
+ coercedType.description})";
mkOptionType rec {
name = "coercedTo";
description = "${finalType.description} or ${coercedType.description} convertible to it";
@@ -464,7 +473,6 @@ rec {
name = builtins.trace "types.optionSet is deprecated; use types.submodule instead" "optionSet";
description = "option set";
};
-
# Augment the given type with an additional type check function.
addCheck = elemType: check: elemType // { check = x: elemType.check x && check x; };
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 5bb5045c6c735e0a0b9c5be221c7ae86afec4cee..4f6e9b1084ff5db1774f3f8e1a85a2d592e8b75a 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -1,28 +1,67 @@
/* List of NixOS maintainers.
handle = {
- name = "Real name";
+ # Required
+ name = "Your name";
email = "address@example.org";
+
+ # Optional
github = "GithubUsername";
+ keys = [{
+ longkeyid = "rsa2048/0x0123456789ABCDEF";
+ fingerprint = "AAAA BBBB CCCC DDDD EEEE FFFF 0000 1111 2222 3333";
+ }];
};
- where `name` is your real name, `email` is your maintainer email
- address and `github` is your GitHub handle (as it appears in the
- URL of your profile page, `https://github.com/`).
- address
- The only required fields are `name` and `email`.
+ where
+
+ - `handle` is the handle you are going to use in nixpkgs expressions,
+ - `name` is your, preferably real, name,
+ - `email` is your maintainer email address, and
+ - `github` is your GitHub handle (as it appears in the URL of your profile page, `https://github.com/`),
+ - `keys` is a list of your PGP/GPG key IDs and fingerprints.
+
+ `handle == github` is strongly preferred whenever `github` is an acceptable attribute name and is short and convenient.
+
+ Add PGP/GPG keys only if you actually use them to sign commits and/or mail.
+
+ To get the required PGP/GPG values for a key run
+ ```shell
+ gpg --keyid-format 0xlong --fingerprint | head -n 2
+ ```
+
+ !!! Note that PGP/GPG values stored here are for informational purposes only, don't use this file as a source of truth.
+
More fields may be added in the future.
Please keep the list alphabetically sorted.
- See `../maintainers/scripts/check-maintainer-github-handles.sh`
- for an example on how to work with this data.
+ See `./scripts/check-maintainer-github-handles.sh` for an example on how to work with this data.
*/
{
+ "0x4A6F" = {
+ email = "0x4A6F@shackspace.de";
+ name = "Joachim Ernst";
+ github = "0x4A6F";
+ keys = [{
+ longkeyid = "rsa8192/0x87027528B006D66D";
+ fingerprint = "F466 A548 AD3F C1F1 8C88 4576 8702 7528 B006 D66D";
+ }];
+ };
+ "1000101" = {
+ email = "jan.hrnko@satoshilabs.com";
+ github = "1000101";
+ name = "Jan Hrnko";
+ };
a1russell = {
email = "adamlr6+pub@gmail.com";
github = "a1russell";
name = "Adam Russell";
};
+ aanderse = {
+ email = "aaron@fosslib.net";
+ github = "aanderse";
+ name = "Aaron Andersen";
+ };
aaronschif = {
email = "aaronschif@gmail.com";
github = "aaronschif";
@@ -38,6 +77,11 @@
github = "abbradar";
name = "Nikolay Amiantov";
};
+ abhi18av = {
+ email = "abhi18av@gmail.com";
+ github = "abhi18av";
+ name = "Abhinav Sharma";
+ };
abigailbuccaneer = {
email = "abigailbuccaneer@gmail.com";
github = "abigailbuccaneer";
@@ -63,6 +107,11 @@
github = "acowley";
name = "Anthony Cowley";
};
+ adamt = {
+ email = "mail@adamtulinius.dk";
+ github = "adamtulinius";
+ name = "Adam Tulinius";
+ };
adelbertc = {
email = "adelbertc@gmail.com";
github = "adelbertc";
@@ -98,6 +147,11 @@
github = "aepsil0n";
name = "Eduard Bopp";
};
+ aerialx = {
+ email = "aaron+nixos@aaronlindsay.com";
+ github = "AerialX";
+ name = "Aaron Lindsay";
+ };
aespinosa = {
email = "allan.espinosa@outlook.com";
github = "aespinosa";
@@ -133,11 +187,21 @@
github = "ahmedtd";
name = "Taahir Ahmed";
};
+ ahuzik = {
+ email = "ales.guzik@gmail.com";
+ github = "alesguzik";
+ name = "Ales Huzik";
+ };
aij = {
email = "aij+git@mrph.org";
github = "aij";
name = "Ivan Jager";
};
+ ajs124 = {
+ email = "nix@ajs124.de";
+ github = "ajs124";
+ name = "Andreas Schrägle";
+ };
ajgrf = {
email = "a@ajgrf.com";
github = "ajgrf";
@@ -148,6 +212,11 @@
github = "alexanderkjeldaas";
name = "Alexander Kjeldaas";
};
+ akavel = {
+ email = "czapkofan@gmail.com";
+ github = "akavel";
+ name = "Mateusz Czapliński";
+ };
akaWolf = {
email = "akawolf0@gmail.com";
github = "akaWolf";
@@ -191,11 +260,21 @@
email = "nix-commits@lists.science.uu.nl";
name = "Nix Committers";
};
+ allonsy = {
+ email = "linuxbash8@gmail.com";
+ github = "allonsy";
+ name = "Alec Snyder";
+ };
alunduil = {
- email = "alunduil@alunduil.com";
+ email = "alunduil@gmail.com";
github = "alunduil";
name = "Alex Brandt";
};
+ amar1729 = {
+ email = "amar.paul16@gmail.com";
+ github = "amar1729";
+ name = "Amar Paul";
+ };
ambrop72 = {
email = "ambrop7@gmail.com";
github = "ambrop72";
@@ -211,6 +290,11 @@
github = "amiloradovsky";
name = "Andrew Miloradovsky";
};
+ aminb = {
+ email = "amin@aminb.org";
+ github = "aminb";
+ name = "Amin Bandali";
+ };
aminechikhaoui = {
email = "amine.chikhaoui91@gmail.com";
github = "AmineChikhaoui";
@@ -221,8 +305,13 @@
github = "AndrewMorsillo";
name = "Andrew Morsillo";
};
+ andersk = {
+ email = "andersk@mit.edu";
+ github = "andersk";
+ name = "Anders Kaseorg";
+ };
AndersonTorres = {
- email = "torres.anderson.85@gmail.com";
+ email = "torres.anderson.85@protonmail.com";
github = "AndersonTorres";
name = "Anderson Torres";
};
@@ -256,6 +345,11 @@
github = "andrew-d";
name = "Andrew Dunham";
};
+ andrewchambers = {
+ email = "ac@acha.ninja";
+ github = "andrewchambers";
+ name = "Andrew Chambers";
+ };
andrewrk = {
email = "superjoe30@gmail.com";
github = "andrewrk";
@@ -276,6 +370,11 @@
github = "ankhers";
name = "Justin Wood";
};
+ anton-dessiatov = {
+ email = "anton.dessiatov@gmail.com";
+ github = "anton-dessiatov";
+ name = "Anton Desyatov";
+ };
Anton-Latukha = {
email = "anton.latuka+nixpkgs@gmail.com";
github = "Anton-Latukha";
@@ -301,6 +400,11 @@
github = "apeyroux";
name = "Alexandre Peyroux";
};
+ ar1a = {
+ email = "aria@ar1as.space";
+ github = "ar1a";
+ name = "Aria Edmonds";
+ };
arcadio = {
email = "arc@well.ox.ac.uk";
github = "arcadio";
@@ -326,6 +430,15 @@
github = "shados";
name = "Alexei Robyn";
};
+ artemist = {
+ email = "me@artem.ist";
+ github = "artemist";
+ name = "Artemis Tosini";
+ keys = [{
+ longkeyid = "rsa4096/0x4FDC96F161E7BA8A";
+ fingerprint = "3D2B B230 F9FA F0C5 1832 46DD 4FDC 96F1 61E7 BA8A";
+ }];
+ };
artuuge = {
email = "artuuge@gmail.com";
github = "artuuge";
@@ -351,6 +464,11 @@
github = "asppsa";
name = "Alastair Pharo";
};
+ astro = {
+ email = "astro@spaceboyz.net";
+ github = "astro";
+ name = "Astro";
+ };
astsmtl = {
email = "astsmtl@yandex.ru";
github = "astsmtl";
@@ -366,16 +484,41 @@
github = "aszlig";
name = "aszlig";
};
+ atnnn = {
+ email = "etienne@atnnn.com";
+ github = "atnnn";
+ name = "Etienne Laurin";
+ };
auntie = {
email = "auntieNeo@gmail.com";
github = "auntie";
name = "Jonathan Glines";
};
+ avaq = {
+ email = "avaq+nixos@xs4all.nl";
+ github = "avaq";
+ name = "Aldwin Vlasblom";
+ };
+ avery = {
+ email = "averyl+nixos@protonmail.com";
+ github = "AveryLychee";
+ name = "Avery Lychee";
+ };
+ averelld = {
+ email = "averell+nixos@rxd4.com";
+ github = "averelld";
+ name = "averelld";
+ };
avnik = {
email = "avn@avnik.info";
github = "avnik";
name = "Alexander V. Nikolaev";
};
+ aw = {
+ email = "aw-nixos@meterriblecrew.net";
+ github = "herrwiese";
+ name = "Andreas Wiese";
+ };
aycanirican = {
email = "iricanaycan@gmail.com";
github = "aycanirican";
@@ -405,11 +548,21 @@
email = "sivaraman.balaji@gmail.com";
name = "Balaji Sivaraman";
};
+ balsoft = {
+ email = "balsoft75@gmail.com";
+ github = "balsoft";
+ name = "Alexander Bantyev";
+ };
bandresen = {
email = "bandresen@gmail.com";
github = "bandresen";
name = "Benjamin Andresen";
};
+ baracoder = {
+ email = "baracoder@googlemail.com";
+ github = "baracoder";
+ name = "Herman Fries";
+ };
barrucadu = {
email = "mike@barrucadu.co.uk";
github = "barrucadu";
@@ -425,11 +578,21 @@
github = "Baughn";
name = "Svein Ove Aas";
};
+ bb010g = {
+ email = "me@bb010g.com";
+ github = "bb010g";
+ name = "Brayden Banks";
+ };
bbarker = {
email = "brandon.barker@gmail.com";
github = "bbarker";
name = "Brandon Elam Barker";
};
+ bbigras = {
+ email = "bigras.bruno@gmail.com";
+ github = "bbigras";
+ name = "Bruno Bigras";
+ };
bcarrell = {
email = "brandoncarrell@gmail.com";
github = "bcarrell";
@@ -460,6 +623,11 @@
github = "bennofs";
name = "Benno Fünfstück";
};
+ benpye = {
+ email = "ben@curlybracket.co.uk";
+ github = "benpye";
+ name = "Ben Pye";
+ };
benwbooth = {
email = "benwbooth@gmail.com";
github = "benwbooth";
@@ -490,6 +658,11 @@
github = "bgamari";
name = "Ben Gamari";
};
+ bhall = {
+ email = "brendan.j.hall@bath.edu";
+ github = "brendan-hall";
+ name = "Brendan Hall";
+ };
bhipple = {
email = "bhipple@protonmail.com";
github = "bhipple";
@@ -569,6 +742,11 @@
github = "bramd";
name = "Bram Duvigneau";
};
+ braydenjw = {
+ email = "nixpkgs@willenborg.ca";
+ github = "braydenjw";
+ name = "Brayden Willenborg";
+ };
brian-dawn = {
email = "brian.t.dawn@gmail.com";
github = "brian-dawn";
@@ -584,6 +762,11 @@
github = "bstrik";
name = "Berno Strik";
};
+ buffet = {
+ email = "niclas@countingsort.com";
+ github = "buffet";
+ name = "Niclas Meyer";
+ };
bugworm = {
email = "bugworm@zoho.com";
github = "bugworm";
@@ -613,6 +796,11 @@
github = "calbrecht";
name = "Christian Albrecht";
};
+ callahad = {
+ email = "dan.callahan@gmail.com";
+ github = "callahad";
+ name = "Dan Callahan";
+ };
calvertvl = {
email = "calvertvl@gmail.com";
github = "calvertvl";
@@ -623,6 +811,11 @@
github = "campadrenalin";
name = "Philip Horger";
};
+ candeira = {
+ email = "javier@candeira.com";
+ github = "candeira";
+ name = "Javier Candeira";
+ };
canndrew = {
email = "shum@canndrew.org";
github = "canndrew";
@@ -658,16 +851,31 @@
github = "caugner";
name = "Claas Augner";
};
+ cbley = {
+ email = "claudio.bley@gmail.com";
+ github = "avdv";
+ name = "Claudio Bley";
+ };
cdepillabout = {
email = "cdep.illabout@gmail.com";
github = "cdepillabout";
name = "Dennis Gosnell";
};
+ ceedubs = {
+ email = "ceedubs@gmail.com";
+ github = "ceedubs";
+ name = "Cody Allen";
+ };
cfouche = {
email = "chaddai.fouche@gmail.com";
github = "Chaddai";
name = "Chaddaï Fouché";
};
+ chaduffy = {
+ email = "charles@dyfis.net";
+ github = "charles-dyfis-net";
+ name = "Charles Duffy";
+ };
changlinli = {
email = "mail@changlinli.com";
github = "changlinli";
@@ -692,6 +900,11 @@
github = "ChengCat";
name = "Yucheng Zhang";
};
+ chessai = {
+ email = "chessai1996@gmail.com";
+ github = "chessai";
+ name = "Daniel Cartwright";
+ };
chiiruno = {
email = "okinan@protonmail.com";
github = "chiiruno";
@@ -757,6 +970,11 @@
github = "cko";
name = "Christine Koppelt";
};
+ clacke = {
+ email = "claes.wallin@greatsinodevelopment.com";
+ github = "clacke";
+ name = "Claes Wallin";
+ };
cleverca22 = {
email = "cleverca22@gmail.com";
github = "cleverca22";
@@ -897,6 +1115,11 @@
github = "danielfullmer";
name = "Daniel Fullmer";
};
+ das-g = {
+ email = "nixpkgs@raphael.dasgupta.ch";
+ github = "das-g";
+ name = "Raphael Das Gupta";
+ };
das_j = {
email = "janne@hess.ooo";
github = "dasJ";
@@ -941,6 +1164,11 @@
github = "deepfire";
name = "Kosyrev Serge";
};
+ delroth = {
+ email = "delroth@gmail.com";
+ github = "delroth";
+ name = "Pierre Bourdon";
+ };
deltaevo = {
email = "deltaduartedavid@gmail.com";
github = "DeltaEvo";
@@ -1011,6 +1239,11 @@
github = "dgonyeo";
name = "Derek Gonyeo";
};
+ dhkl = {
+ email = "david@davidslab.com";
+ github = "dhl";
+ name = "David Leung";
+ };
dipinhora = {
email = "dipinhora+github@gmail.com";
github = "dipinhora";
@@ -1021,6 +1254,11 @@
github = "disassembler";
name = "Samuel Leathers";
};
+ disserman = {
+ email = "disserman@gmail.com";
+ github = "divi255";
+ name = "Sergei S.";
+ };
dizfer = {
email = "david@izquierdofernandez.com";
github = "dizfer";
@@ -1095,8 +1333,18 @@
github = "dtzWill";
name = "Will Dietz";
};
+ dxf = {
+ email = "dingxiangfei2009@gmail.com";
+ github = "dingxiangfei2009";
+ name = "Ding Xiang Fei";
+ };
+ dysinger = {
+ email = "tim@dysinger.net";
+ github = "dysinger";
+ name = "Tim Dysinger";
+ };
dywedir = {
- email = "dywedir@protonmail.ch";
+ email = "dywedir@gra.red";
github = "dywedir";
name = "Vladyslav M.";
};
@@ -1115,6 +1363,11 @@
github = "eadwu";
name = "Edmund Wu";
};
+ eamsden = {
+ email = "edward@blackriversoft.com";
+ github = "eamsden";
+ name = "Edward Amsden";
+ };
earldouglas = {
email = "james@earldouglas.com";
github = "earldouglas";
@@ -1140,6 +1393,11 @@
github = "edef1c";
name = "edef";
};
+ embr = {
+ email = "hi@liclac.eu";
+ github = "liclac";
+ name = "embr";
+ };
ederoyd46 = {
email = "matt@ederoyd.co.uk";
github = "ederoyd46";
@@ -1150,6 +1408,11 @@
github = "eduarrrd";
name = "Eduard Bachmakov";
};
+ edude03 = {
+ email = "michael@melenion.com";
+ github = "edude03";
+ name = "Michael Francis";
+ };
edwtjo = {
email = "ed@cflags.cc";
github = "edwtjo";
@@ -1209,6 +1472,16 @@
github = "ellis";
name = "Ellis Whitehead";
};
+ elohmeier = {
+ email = "elo-nixos@nerdworks.de";
+ github = "elohmeier";
+ name = "Enno Lohmeier";
+ };
+ elseym = {
+ email = "elseym@me.com";
+ github = "elseym";
+ name = "Simon Waibl";
+ };
elvishjerricco = {
email = "elvishjerricco@gmail.com";
github = "ElvishJerricco";
@@ -1262,6 +1535,10 @@
email = "justin.humm@posteo.de";
github = "erictapen";
name = "Justin Humm";
+ keys = [{
+ longkeyid = "rsa4096/0x438871E000AA178E";
+ fingerprint = "984E 4BAD 9127 4D0E AE47 FF03 4388 71E0 00AA 178E";
+ }];
};
erikryb = {
email = "erik.rybakken@math.ntnu.no";
@@ -1291,6 +1568,15 @@
email = "elis@hirwing.se";
github = "etu";
name = "Elis Hirwing";
+ keys = [{
+ longkeyid = "rsa4096/0xD57EFA625C9A925F";
+ fingerprint = "67FE 98F2 8C44 CF22 1828 E12F D57E FA62 5C9A 925F";
+ }];
+ };
+ evck = {
+ email = "eric@evenchick.com";
+ github = "ericevenchick";
+ name = "Eric Evenchick";
};
exfalso = {
email = "0slemi0@gmail.com";
@@ -1312,6 +1598,16 @@
github = "expipiplus1";
name = "Joe Hermaszewski";
};
+ eyjhb = {
+ email = "eyjhbb@gmail.com";
+ github = "eyJhb";
+ name = "eyJhb";
+ };
+ f--t = {
+ email = "git@f-t.me";
+ github = "f--t";
+ name = "f--t";
+ };
f-breidenstein = {
email = "mail@felixbreidenstein.de";
github = "f-breidenstein";
@@ -1337,8 +1633,13 @@
github = "fdns";
name = "Felipe Espinoza";
};
+ ffinkdevs = {
+ email = "fink@h0st.space";
+ github = "ffinkdevs";
+ name = "Fabian Fink";
+ };
fgaz = {
- email = "francygazz@gmail.com";
+ email = "fgaz@fgaz.me";
github = "fgaz";
name = "Francesco Gazzetta";
};
@@ -1347,11 +1648,21 @@
github = "FireyFly";
name = "Jonas Höglund";
};
+ flexw = {
+ email = "felix.weilbach@t-online.de";
+ github = "FlexW";
+ name = "Felix Weilbach";
+ };
flokli = {
email = "flokli@flokli.de";
github = "flokli";
name = "Florian Klink";
};
+ FlorianFranzen = {
+ email = "Florian.Franzen@gmail.com";
+ github = "FlorianFranzen";
+ name = "Florian Franzen";
+ };
florianjacob = {
email = "projects+nixos@florianjacob.de";
github = "florianjacob";
@@ -1386,12 +1697,21 @@
email = "fpletz@fnordicwalking.de";
github = "fpletz";
name = "Franz Pletz";
+ keys = [{
+ longkeyid = "rsa4096/0x846FDED7792617B4";
+ fingerprint = "8A39 615D CE78 AF08 2E23 F303 846F DED7 7926 17B4";
+ }];
};
fps = {
email = "mista.tapas@gmx.net";
github = "fps";
name = "Florian Paul Schmidt";
};
+ fredeb = {
+ email = "im@fredeb.dev";
+ github = "fredeeb";
+ name = "Frede Emil";
+ };
freepotion = {
email = "freepotion@protonmail.com";
github = "freepotion";
@@ -1427,15 +1747,30 @@
github = "ftrvxmtrx";
name = "Siarhei Zirukin";
};
+ fuerbringer = {
+ email = "severin@fuerbringer.info";
+ github = "fuerbringer";
+ name = "Severin Fürbringer";
+ };
funfunctor = {
email = "eocallaghan@alterapraxis.com";
name = "Edward O'Callaghan";
};
+ fusion809 = {
+ email = "brentonhorne77@gmail.com";
+ github = "fusion809";
+ name = "Brenton Horne";
+ };
fuuzetsu = {
email = "fuuzetsu@fuuzetsu.co.uk";
github = "fuuzetsu";
name = "Mateusz Kowalczyk";
};
+ fuwa = {
+ email = "echowss@gmail.com";
+ github = "fuwa0529";
+ name = "Haruka Akiyama";
+ };
fuzzy-id = {
email = "hacking+nixos@babibo.de";
name = "Thomas Bach";
@@ -1495,6 +1830,11 @@
github = "Gerschtli";
name = "Tobias Happ";
};
+ ggpeti = {
+ email = "ggpeti@gmail.com";
+ github = "ggpeti";
+ name = "Peter Ferenczy";
+ };
gilligan = {
email = "tobias.pflug@gmail.com";
github = "gilligan";
@@ -1555,6 +1895,11 @@
github = "grburst";
name = "Julius Elias";
};
+ greydot = {
+ email = "lanablack@amok.cc";
+ github = "greydot";
+ name = "Lana Black";
+ };
gridaphobe = {
email = "eric@seidel.io";
github = "gridaphobe";
@@ -1565,6 +1910,11 @@
github = "dguibert";
name = "David Guibert";
};
+ groodt = {
+ email = "groodt@gmail.com";
+ github = "groodt";
+ name = "Greg Roodt";
+ };
guibou = {
email = "guillaum.bouchard@gmail.com";
github = "guibou";
@@ -1590,6 +1940,21 @@
github = "hamhut1066";
name = "Hamish Hutchings";
};
+ hansjoergschurr = {
+ email = "commits@schurr.at";
+ github = "hansjoergschurr";
+ name = "Hans-Jörg Schurr";
+ };
+ HaoZeke = {
+ email = "r95g10@gmail.com";
+ github = "haozeke";
+ name = "Rohit Goswami";
+ };
+ haslersn = {
+ email = "haslersn@fius.informatik.uni-stuttgart.de";
+ github = "haslersn";
+ name = "Sebastian Hasler";
+ };
havvy = {
email = "ryan.havvy@gmail.com";
github = "havvy";
@@ -1625,6 +1990,11 @@
github = "heel";
name = "Sergii Paryzhskyi";
};
+ helkafen = {
+ email = "arnaudpourseb@gmail.com";
+ github = "Helkafen";
+ name = "Sébastian Méric de Bellefon";
+ };
henrytill = {
email = "henrytill@gmail.com";
github = "henrytill";
@@ -1639,6 +2009,11 @@
email = "t@larkery.com";
name = "Tom Hinton";
};
+ hlolli = {
+ email = "hlolli@gmail.com";
+ github = "hlolli";
+ name = "Hlodver Sigurdsson";
+ };
hodapp = {
email = "hodapp87@gmail.com";
github = "Hodapp87";
@@ -1699,6 +2074,11 @@
github = "ikervagyok";
name = "Balázs Lengyel";
};
+ ilikeavocadoes = {
+ email = "ilikeavocadoes@hush.com";
+ github = "ilikeavocadoes";
+ name = "Lassi Haasio";
+ };
illegalprime = {
email = "themichaeleden@gmail.com";
github = "illegalprime";
@@ -1729,15 +2109,34 @@
github = "infinisil";
name = "Silvan Mosberger";
};
+ ingenieroariel = {
+ email = "ariel@nunez.co";
+ github = "ingenieroariel";
+ name = "Ariel Nunez";
+ };
ironpinguin = {
email = "michele@catalano.de";
github = "ironpinguin";
name = "Michele Catalano";
};
+ ivan = {
+ email = "ivan@ludios.org";
+ github = "ivan";
+ name = "Ivan Kozik";
+ };
ivan-tkatchev = {
email = "tkatchev@gmail.com";
name = "Ivan Tkatchev";
};
+ ivegotasthma = {
+ email = "ivegotasthma@protonmail.com";
+ github = "ivegotasthma";
+ name = "John Doe";
+ keys = [{
+ longkeyid = "rsa4096/09AC52AEA87817A4";
+ fingerprint = "4008 2A5B 56A4 79B9 83CB 95FD 09AC 52AE A878 17A4";
+ }];
+ };
ixmatus = {
email = "parnell@digitalmentat.com";
github = "ixmatus";
@@ -1763,6 +2162,16 @@
github = "jagajaga";
name = "Arseniy Seroka";
};
+ jakelogemann = {
+ email = "jake.logemann@gmail.com";
+ github = "jakelogemann";
+ name = "Jake Logemann";
+ };
+ jakewaksbaum = {
+ email = "jake.waksbaum@gmail.com";
+ github = "jbaum98";
+ name = "Jake Waksbaum";
+ };
jammerful = {
email = "jammerful@gmail.com";
github = "jammerful";
@@ -1793,6 +2202,11 @@
github = "jbgi";
name = "Jean-Baptiste Giraudeau";
};
+ jchw = {
+ email = "johnwchadwick@gmail.com";
+ github = "jchv";
+ name = "John Chadwick";
+ };
jcumming = {
email = "jack@mudshark.org";
name = "Jack Cummings";
@@ -1807,6 +2221,11 @@
github = "jdagilliland";
name = "Jason Gilliland";
};
+ jdehaas = {
+ email = "qqlq@nullptr.club";
+ github = "jeroendehaas";
+ name = "Jeroen de Haas";
+ };
jefdaj = {
email = "jefdaj@gmail.com";
github = "jefdaj";
@@ -1822,6 +2241,16 @@
github = "jerith666";
name = "Matt McHenry";
};
+ jeschli = {
+ email = "jeschli@gmail.com";
+ github = "jeschli";
+ name = "Markus Hihn";
+ };
+ jethro = {
+ email = "jethrokuan95@gmail.com";
+ github = "jethrokuan";
+ name = "Jethro Kuan";
+ };
jfb = {
email = "james@yamtime.com";
github = "tftio";
@@ -1852,11 +2281,21 @@
github = "jgillich";
name = "Jakob Gillich";
};
+ jglukasik = {
+ email = "joseph@jgl.me";
+ github = "jglukasik";
+ name = "Joseph Lukasik";
+ };
jhhuh = {
email = "jhhuh.note@gmail.com";
github = "jhhuh";
name = "Ji-Haeng Huh";
};
+ jhillyerd = {
+ email = "james+nixos@hillyerd.com";
+ github = "jhillyerd";
+ name = "James Hillyerd";
+ };
jirkamarsik = {
email = "jiri.marsik89@gmail.com";
github = "jirkamarsik";
@@ -1872,15 +2311,16 @@
github = "jluttine";
name = "Jaakko Luttinen";
};
+ jmagnusj = {
+ email = "jmagnusj@gmail.com";
+ github = "magnusjonsson";
+ name = "Johan Magnus Jonsson";
+ };
jmettes = {
email = "jonathan@jmettes.com";
github = "jmettes";
name = "Jonathan Mettes";
};
- Jo = {
- email = "0x4A6F@shackspace.de";
- name = "Joachim Ernst";
- };
joachifm = {
email = "joachifm@fastmail.fm";
github = "joachifm";
@@ -1938,6 +2378,11 @@
joko = {
email = "ioannis.koutras@gmail.com";
github = "jokogr";
+ keys = [{
+ # compare with https://keybase.io/joko
+ longkeyid = "rsa2048/0x85EAE7D9DF56C5CA";
+ fingerprint = "B154 A8F9 0610 DB45 0CA8 CF39 85EA E7D9 DF56 C5CA";
+ }];
name = "Ioannis Koutras";
};
jonafato = {
@@ -1955,6 +2400,11 @@
github = "joncojonathan";
name = "Jonathan Haddock";
};
+ jorsn = {
+ name = "Johannes Rosenberger";
+ email = "johannes@jorsn.eu";
+ github = "jorsn";
+ };
jpdoyle = {
email = "joethedoyle@gmail.com";
github = "jpdoyle";
@@ -1970,6 +2420,11 @@
github = "jpotier";
name = "Martin Potier";
};
+ jqueiroz = {
+ email = "nixos@johnjq.com";
+ github = "jqueiroz";
+ name = "Jonathan Queiroz";
+ };
jraygauthier = {
email = "jraygauthier@gmail.com";
github = "jraygauthier";
@@ -1985,6 +2440,11 @@
github = "juliendehos";
name = "Julien Dehos";
};
+ justinwoo = {
+ email = "moomoowoo@gmail.com";
+ github = "justinwoo";
+ name = "Justin Woo";
+ };
jwiegley = {
email = "johnw@newartisans.com";
github = "jwiegley";
@@ -2063,6 +2523,11 @@
github = "kiloreux";
name = "Kiloreux Emperex";
};
+ kimburgess = {
+ email = "kim@acaprojects.com";
+ github = "kimburgess";
+ name = "Kim Burgess";
+ };
kini = {
email = "keshav.kini@gmail.com";
github = "kini";
@@ -2073,11 +2538,25 @@
github = "kirelagin";
name = "Kirill Elagin";
};
+ kisonecat = {
+ email = "kisonecat@gmail.com";
+ github = "kisonecat";
+ name = "Jim Fowler";
+ };
+ kjuvi = {
+ email = "quentin.vaucher@pm.me";
+ github = "kjuvi";
+ name = "Quentin Vaucher";
+ };
kkallio = {
email = "tierpluspluslists@gmail.com";
name = "Karn Kallio";
};
-
+ klntsky = {
+ email = "klntsky@gmail.com";
+ name = "Vladimir Kalnitsky";
+ github = "8084";
+ };
kmeakin = {
email = "karlwfmeakin@gmail.com";
name = "Karl Meakin";
@@ -2089,6 +2568,11 @@
github = "knedlsepp";
name = "Josef Kemetmüller";
};
+ knl = {
+ email = "nikola@knezevic.co";
+ github = "knl";
+ name = "Nikola Knežević";
+ };
konimex = {
email = "herdiansyah@netc.eu";
github = "konimex";
@@ -2119,6 +2603,11 @@
github = "krav";
name = "Kristoffer Thømt Ravneberg";
};
+ kroell = {
+ email = "nixosmainter@makroell.de";
+ github = "rokk4";
+ name = "Matthias Axel Kröll";
+ };
kristoff3r = {
email = "k.soeholm@gmail.com";
github = "kristoff3r";
@@ -2239,11 +2728,21 @@
github = "lihop";
name = "Leroy Hopson";
};
+ lilyball = {
+ email = "lily@sb.org";
+ github = "lilyball";
+ name = "Lily Ballard";
+ };
limeytexan = {
email = "limeytexan@gmail.com";
github = "limeytexan";
name = "Michael Brantley";
};
+ linarcx = {
+ email = "linarcx@gmail.com";
+ github = "linarcx";
+ name = "Kaveh Ahangar";
+ };
linc01n = {
email = "git@lincoln.hk";
github = "linc01n";
@@ -2259,6 +2758,16 @@
github = "listx";
name = "Linus Arver";
};
+ luis = {
+ email = "luis.nixos@gmail.com";
+ github = "Luis-Hebendanz";
+ name = "Luis Hebendanz";
+ };
+ lionello = {
+ email = "lio@lunesu.com";
+ github = "lionello";
+ name = "Lionello Lunesu";
+ };
lluchs = {
email = "lukas.werling@gmail.com";
github = "lluchs";
@@ -2274,6 +2783,11 @@
github = "lo1tuma";
name = "Mathias Schreck";
};
+ loewenheim = {
+ email = "loewenheim@mailbox.org";
+ github = "loewenheim";
+ name = "Sebastian Zivota";
+ };
lopsided98 = {
email = "benwolsieffer@gmail.com";
github = "lopsided98";
@@ -2314,6 +2828,11 @@
github = "lucas8";
name = "Luc Chabassier";
};
+ lucus16 = {
+ email = "lars.jellema@gmail.com";
+ github = "Lucus16";
+ name = "Lars Jellema";
+ };
ludo = {
email = "ludo@gnu.org";
github = "civodul";
@@ -2362,6 +2881,11 @@
github = "ma27";
name = "Maximilian Bosch";
};
+ ma9e = {
+ email = "sean@lfo.team";
+ github = "ma9e";
+ name = "Sean Haugh";
+ };
madjar = {
email = "georges.dubus@compiletoi.net";
github = "madjar";
@@ -2402,6 +2926,11 @@
github = "marcweber";
name = "Marc Weber";
};
+ marenz = {
+ email = "marenz@arkom.men";
+ github = "marenz2569";
+ name = "Markus Schmidl";
+ };
markus1189 = {
email = "markus1189@gmail.com";
github = "markus1189";
@@ -2416,6 +2945,11 @@
email = "markus@wotringer.de";
name = "Markus Wotringer";
};
+ marius851000 = {
+ email = "mariusdavid@laposte.net";
+ name = "Marius David";
+ github = "marius851000";
+ };
marsam = {
email = "marsam@users.noreply.github.com";
github = "marsam";
@@ -2441,6 +2975,11 @@
github = "mathnerd314";
name = "Mathnerd314";
};
+ matklad = {
+ email = "aleksey.kladov@gmail.com";
+ github = "matklad";
+ name = "matklad";
+ };
matthewbauer = {
email = "mjbauer95@gmail.com";
github = "matthewbauer";
@@ -2451,6 +2990,11 @@
github = "matthiasbeyer";
name = "Matthias Beyer";
};
+ matti-kariluoma = {
+ email = "matti@kariluo.ma";
+ github = "matti-kariluoma";
+ name = "Matti Kariluoma";
+ };
maurer = {
email = "matthew.r.maurer+nix@gmail.com";
github = "maurer";
@@ -2496,6 +3040,11 @@
github = "mdaiter";
name = "Matthew S. Daiter";
};
+ mdevlamynck = {
+ email = "matthias.devlamynck@mailoo.org";
+ github = "mdevlamynck";
+ name = "Matthias Devlamynck";
+ };
meditans = {
email = "meditans@gmail.com";
github = "meditans";
@@ -2516,20 +3065,40 @@
github = "meisternu";
name = "Matt Miemiec";
};
+ melchips = {
+ email = "truphemus.francois@gmail.com";
+ github = "melchips";
+ name = "Francois Truphemus";
+ };
melsigl = {
email = "melanie.bianca.sigl@gmail.com";
github = "melsigl";
name = "Melanie B. Sigl";
};
+ melkor333 = {
+ email = "samuel@ton-kunst.ch";
+ github = "melkor333";
+ name = "Samuel Ruprecht";
+ };
metabar = {
email = "softs@metabarcoding.org";
name = "Celine Mercier";
};
+ mfossen = {
+ email = "msfossen@gmail.com";
+ github = "mfossen";
+ name = "Mitchell Fossen";
+ };
mgdelacroix = {
email = "mgdelacroix@gmail.com";
github = "mgdelacroix";
name = "Miguel de la Cruz";
};
+ mgregoire = {
+ email = "gregoire@martinache.net";
+ github = "M-Gregoire";
+ name = "Gregoire Martinache";
+ };
mgttlinger = {
email = "megoettlinger@gmail.com";
github = "mgttlinger";
@@ -2539,11 +3108,21 @@
email = "code@klandest.in";
github = "mguentner";
name = "Maximilian Güntner";
+ };
+ mhaselsteiner = {
+ email = "magdalena.haselsteiner@gmx.at";
+ github = "mhaselsteiner";
+ name = "Magdalena Haselsteiner";
};
mic92 = {
email = "joerg@thalheim.io";
github = "mic92";
name = "Jörg Thalheim";
+ keys = [{
+ # compare with https://keybase.io/Mic92
+ longkeyid = "rsa4096/0x003F2096411B5F92";
+ fingerprint = "3DEE 1C55 6E1C 3DC5 54F5 875A 003F 2096 411B 5F92";
+ }];
};
michaelpj = {
email = "michaelpj@gmail.com";
@@ -2659,6 +3238,11 @@
github = "mogria";
name = "Mogria";
};
+ monsieurp = {
+ email = "monsieurp@gentoo.org";
+ github = "monsieurp";
+ name = "Patrice Clement";
+ };
montag451 = {
email = "montag451@laposte.net";
github = "montag451";
@@ -2773,6 +3357,16 @@
github = "muflax";
name = "Stefan Dorn";
};
+ mvnetbiz = {
+ email = "mvnetbiz@gmail.com";
+ github = "mvnetbiz";
+ name = "Matt Votava";
+ };
+ mwilsoninsight = {
+ email = "max.wilson@insight.com";
+ github = "mwilsoninsight";
+ name = "Max Wilson";
+ };
myrl = {
email = "myrl.0xf@gmail.com";
github = "myrl";
@@ -2783,6 +3377,11 @@
github = "nadrieril";
name = "Nadrieril Feneanar";
};
+ nalbyuites = {
+ email = "ashijit007@gmail.com";
+ github = "nalbyuites";
+ name = "Ashijit Pramanik";
+ };
namore = {
email = "namor@hemio.de";
github = "namore";
@@ -2827,6 +3426,16 @@
github = "nequissimus";
name = "Tim Steinbach";
};
+ netixx = {
+ email = "dev.espinetfrancois@gmail.com";
+ github = "netixx";
+ name = "François Espinet";
+ };
+ nikitavoloboev = {
+ email = "nikita.voloboev@gmail.com";
+ github = "nikitavoloboev";
+ name = "Nikita Voloboev";
+ };
nfjinjing = {
email = "nfjinjing@gmail.com";
github = "nfjinjing";
@@ -2897,6 +3506,11 @@
github = "nocoolnametom";
name = "Tom Doggett";
};
+ nomeata = {
+ email = "mail@joachim-breitner.de";
+ github = "nomeata";
+ name = "Joachim Breitner";
+ };
noneucat = {
email = "andy@lolc.at";
github = "noneucat";
@@ -2912,6 +3526,11 @@
github = "np";
name = "Nicolas Pouillard";
};
+ nphilou = {
+ email = "nphilou@gmail.com";
+ github = "nphilou";
+ name = "Philippe Nguyen";
+ };
nslqqq = {
email = "nslqqq@gmail.com";
name = "Nikita Mikhailov";
@@ -2936,6 +3555,11 @@
github = "nyarly";
name = "Judson Lester";
};
+ nzhang-zh = {
+ email = "n.zhang.hp.au@gmail.com";
+ github = "nzhang-zh";
+ name = "Ning Zhang";
+ };
obadz = {
email = "obadz-nixos@obadz.com";
github = "obadz";
@@ -2952,7 +3576,7 @@
name = "Oliver Dunkl";
};
offline = {
- email = "jakahudoklin@gmail.com";
+ email = "jaka@x-truder.net";
github = "offlinehacker";
name = "Jaka Hudoklin";
};
@@ -2980,6 +3604,16 @@
github = "olynch";
name = "Owen Lynch";
};
+ omnipotententity = {
+ email = "omnipotententity@gmail.com";
+ github = "omnipotententity";
+ name = "Michael Reilly";
+ };
+ OPNA2608 = {
+ email = "christoph.neidahl@gmail.com";
+ github = "OPNA2608";
+ name = "Christoph Neidahl";
+ };
orbekk = {
email = "kjetil.orbekk@gmail.com";
github = "orbekk";
@@ -3009,12 +3643,26 @@
email = "oxij@oxij.org";
github = "oxij";
name = "Jan Malakhovski";
+ keys = [{
+ longkeyid = "rsa2048/0x0E6CA66E5C557AA8";
+ fingerprint = "514B B966 B46E 3565 0508 86E8 0E6C A66E 5C55 7AA8";
+ }];
};
oyren = {
email = "m.scheuren@oyra.eu";
github = "oyren";
name = "Moritz Scheuren";
};
+ pacien = {
+ email = "b4gx3q.nixpkgs@pacien.net";
+ github = "pacien";
+ name = "Pacien Tran-Girard";
+ };
+ paddygord = {
+ email = "pgpatrickgordon@gmail.com";
+ github = "paddygord";
+ name = "Patrick Gordon";
+ };
paholg = {
email = "paho@paholg.com";
github = "paholg";
@@ -3080,6 +3728,11 @@
github = "pesterhazy";
name = "Paulus Esterhazy";
};
+ petabyteboy = {
+ email = "me@pbb.lc";
+ github = "petabyteboy";
+ name = "Milan Pässler";
+ };
peterhoeg = {
email = "peter@hoeg.com";
github = "peterhoeg";
@@ -3159,6 +3812,11 @@
github = "pkmx";
name = "Chih-Mao Chen";
};
+ plchldr = {
+ email = "mail@oddco.de";
+ github = "plchldr";
+ name = "Jonas Beyer";
+ };
plcplc = {
email = "plcplc@gmail.com";
github = "plcplc";
@@ -3189,6 +3847,11 @@
github = "pmyjavec";
name = "Pauly Myjavec";
};
+ pnelson = {
+ email = "me@pnelson.ca";
+ github = "pnelson";
+ name = "Philip Nelson";
+ };
pneumaticat = {
email = "kevin@potatofrom.space";
github = "pneumaticat";
@@ -3199,6 +3862,11 @@
github = "polyrod";
name = "Maurizio Di Pietro";
};
+ pombeirp = {
+ email = "nix@endgr.33mail.com";
+ github = "PombeirP";
+ name = "Pedro Pombeiro";
+ };
pradeepchhetri = {
email = "pradeep.chhetri89@gmail.com";
github = "pradeepchhetri";
@@ -3213,6 +3881,14 @@
email = "dev.primeos@gmail.com";
github = "primeos";
name = "Michael Weiss";
+ keys = [
+ { longkeyid = "ed25519/0x130826A6C2A389FD"; # Git only
+ fingerprint = "86A7 4A55 07D0 58D1 322E 37FD 1308 26A6 C2A3 89FD";
+ }
+ { longkeyid = "rsa3072/0xBCA9943DD1DF4C04"; # Email, etc.
+ fingerprint = "AF85 991C C950 49A2 4205 1933 BCA9 943D D1DF 4C04";
+ }
+ ];
};
Profpatsch = {
email = "mail@profpatsch.de";
@@ -3224,6 +3900,11 @@
github = "proglodyte";
name = "Proglodyte";
};
+ prusnak = {
+ email = "stick@gk2.sk";
+ github = "prusnak";
+ name = "Pavol Rusnak";
+ };
pshendry = {
email = "paul@pshendry.com";
github = "pshendry";
@@ -3245,9 +3926,14 @@
};
psyanticy = {
email = "iuns@outlook.fr";
- github = "Assassinkin";
+ github = "PsyanticY";
name = "Psyanticy";
};
+ ptival = {
+ email = "valentin.robert.42@gmail.com";
+ github = "Ptival";
+ name = "Valentin Robert";
+ };
puffnfresh = {
email = "brian@brianmckenna.org";
github = "puffnfresh";
@@ -3276,6 +3962,20 @@
email = "hi@alyssa.is";
github = "alyssais";
name = "Alyssa Ross";
+ keys = [{
+ longkeyid = "rsa4096/736CCDF9EF51BD97";
+ fingerprint = "7573 56D7 79BB B888 773E 415E 736C CDF9 EF51 BD97";
+ }];
+ };
+ rafaelgg = {
+ email = "rafael.garcia.gallego@gmail.com";
+ github = "rafaelgg";
+ name = "Rafael García";
+ };
+ raquelgb = {
+ email = "raquel.garcia.bautista@gmail.com";
+ github = "raquelgb";
+ name = "Raquel García";
};
ragge = {
email = "r.dahlen@gmail.com";
@@ -3326,6 +4026,11 @@
github = "rbasso";
name = "Rafael Basso";
};
+ rbrewer = {
+ email = "rwb123@gmail.com";
+ github = "rbrewer123";
+ name = "Rob Brewer";
+ };
rdnetto = {
email = "rdnetto@gmail.com";
github = "rdnetto";
@@ -3361,6 +4066,21 @@
github = "relrod";
name = "Ricky Elrod";
};
+ rembo10 = {
+ email = "rembo10@users.noreply.github.com";
+ github = "rembo10";
+ name = "rembo10";
+ };
+ renatoGarcia = {
+ email = "fgarcia.renato@gmail.com";
+ github = "renatoGarcia";
+ name = "Renato Garcia";
+ };
+ rencire = {
+ email = "546296+rencire@users.noreply.github.com";
+ github = "rencire";
+ name = "Eric Ren";
+ };
renzo = {
email = "renzocarbonara@gmail.com";
github = "k0001";
@@ -3401,6 +4121,11 @@
github = "rittelle";
name = "Lennart Rittel";
};
+ rixed = {
+ email = "rixed-github@happyleptic.org";
+ github = "rixed";
+ name = "Cedric Cellier";
+ };
rkoe = {
email = "rk@simple-is-better.org";
github = "rkoe";
@@ -3471,11 +4196,21 @@
github = "roosemberth";
name = "Roosembert (Roosemberth) Palacios";
};
+ royneary = {
+ email = "christian@ulrich.earth";
+ github = "royneary";
+ name = "Christian Ulrich";
+ };
rprospero = {
email = "rprospero+nix@gmail.com";
github = "rprospero";
name = "Adam Washington";
};
+ rps = {
+ email = "robbpseaton@gmail.com";
+ github = "robertseaton";
+ name = "Robert P. Seaton";
+ };
rszibele = {
email = "richard@szibele.com";
github = "rszibele";
@@ -3586,11 +4321,30 @@
github = "sauyon";
name = "Sauyon Lee";
};
+ sb0 = {
+ email = "sb@m-labs.hk";
+ github = "sbourdeauducq";
+ name = "Sébastien Bourdeauducq";
+ };
+ sboosali = {
+ email = "SamBoosalis@gmail.com";
+ github = "sboosali";
+ name = "Sam Boosalis";
+ };
+ scalavision = {
+ email = "scalavision@gmail.com";
+ github = "scalavision";
+ name = "Tom Sorlie";
+ };
schmitthenner = {
email = "development@schmitthenner.eu";
github = "fkz";
name = "Fabian Schmitthenner";
};
+ schmittlauch = {
+ email = "t.schmittlauch+nixos@orlives.de";
+ github = "schmittlauch";
+ };
schneefux = {
email = "schneefux+nixos_pkg@schneefux.xyz";
github = "schneefux";
@@ -3610,6 +4364,11 @@
github = "scolobb";
name = "Sergiu Ivanov";
};
+ screendriver = {
+ email = "nix@echooff.de";
+ github = "screendriver";
+ name = "Christian Rackerseder";
+ };
Scriptkiddi = {
email = "nixos@scriptkiddi.de";
github = "scriptkiddi";
@@ -3650,6 +4409,11 @@
github = "seppeljordan";
name = "Sebastian Jordan";
};
+ seqizz = {
+ email = "seqizz@gmail.com";
+ github = "seqizz";
+ name = "Gurkan Gur";
+ };
sfrijters = {
email = "sfrijters@gmail.com";
github = "sfrijters";
@@ -3685,11 +4449,21 @@
github = "shlevy";
name = "Shea Levy";
};
+ shou = {
+ email = "x+g@shou.io";
+ github = "Shou";
+ name = "Benedict Aas";
+ };
siddharthist = {
email = "langston.barrett@gmail.com";
github = "siddharthist";
name = "Langston Barrett";
};
+ siers = {
+ email = "veinbahs+nixpkgs@gmail.com";
+ github = "siers";
+ name = "Raitis Veinbahs";
+ };
sifmelcara = {
email = "ming@culpring.com";
github = "sifmelcara";
@@ -3715,6 +4489,11 @@
github = "sjagoe";
name = "Simon Jagoe";
};
+ sjau = {
+ email = "nixos@sjau.ch";
+ github = "sjau";
+ name = "Stephan Jau";
+ };
sjmackenzie = {
email = "setori88@gmail.com";
github = "sjmackenzie";
@@ -3738,10 +4517,23 @@
github = "sleexyz";
name = "Sean Lee";
};
+ smakarov = {
+ email = "setser200018@gmail.com";
+ github = "setser";
+ name = "Sergey Makarov";
+ keys = [{
+ longkeyid = "rsa2048/6AA23A1193B7064B";
+ fingerprint = "6F8A 18AE 4101 103F 3C54 24B9 6AA2 3A11 93B7 064B";
+ }];
+ };
smaret = {
email = "sebastien.maret@icloud.com";
github = "smaret";
name = "Sébastien Maret";
+ keys = [{
+ longkeyid = "rsa4096/0x86E30E5A0F5FC59C";
+ fingerprint = "4242 834C D401 86EF 8281 4093 86E3 0E5A 0F5F C59C";
+ }];
};
smironov = {
email = "grrwlf@gmail.com";
@@ -3768,6 +4560,15 @@
github = "solson";
name = "Scott Olson";
};
+ sondr3 = {
+ email = "nilsen.sondre@gmail.com";
+ github = "sondr3";
+ name = "Sondre Nilsen";
+ keys = [{
+ longkeyid = "ed25519/0x25676BCBFFAD76B1";
+ fingerprint = "0EC3 FA89 EFBA B421 F82E 40B0 2567 6BCB FFAD 76B1";
+ }];
+ };
sorki = {
email = "srk@48.io";
github = "sorki";
@@ -3783,6 +4584,11 @@
github = "spacefrogg";
name = "Michael Raitza";
};
+ spacekookie = {
+ email = "kookie@spacekookie.de";
+ github = "spacekookie";
+ name = "Katharina Fey";
+ };
spencerjanssen = {
email = "spencerjanssen@gmail.com";
github = "spencerjanssen";
@@ -3833,6 +4639,11 @@
github = "stesie";
name = "Stefan Siegl";
};
+ steve-chavez = {
+ email = "stevechavezast@gmail.com";
+ github = "steve-chavez";
+ name = "Steve Chávez";
+ };
steveej = {
email = "mail@stefanjunker.de";
github = "steveej";
@@ -3848,11 +4659,21 @@
github = "StillerHarpo";
name = "Florian Engel";
};
+ stites = {
+ email = "sam@stites.io";
+ github = "stites";
+ name = "Sam Stites";
+ };
stumoss = {
email = "samoss@gmail.com";
github = "stumoss";
name = "Stuart Moss";
};
+ suhr = {
+ email = "suhr@i2pmail.org";
+ github = "suhr";
+ name = "Сухарик";
+ };
SuprDewd = {
email = "suprdewd@gmail.com";
github = "SuprDewd";
@@ -3878,6 +4699,11 @@
github = "swarren83";
name = "Shawn Warren";
};
+ swdunlop = {
+ email = "swdunlop@gmail.com";
+ github = "swdunlop";
+ name = "Scott W. Dunlop";
+ };
swflint = {
email = "swflint@flintfam.org";
github = "swflint";
@@ -3908,6 +4734,20 @@
github = "sztupi";
name = "Attila Sztupak";
};
+ t184256 = {
+ email = "monk@unboiled.info";
+ github = "t184256";
+ name = "Alexander Sosedkin";
+ };
+ tadeokondrak = {
+ email = "me@tadeo.ca";
+ github = "tadeokondrak";
+ name = "Tadeo Kondrak";
+ keys = [{
+ longkeyid = "ed25519/0xFBE607FCC49516D3";
+ fingerprint = "0F2B C0C7 E77C 5B42 AC5B 4C18 FBE6 07FC C495 16D3";
+ }];
+ };
tadfisher = {
email = "tadfisher@gmail.com";
github = "tadfisher";
@@ -3948,6 +4788,16 @@
github = "taku0";
name = "Takuo Yonezawa";
};
+ talyz = {
+ email = "kim.lindberger@gmail.com";
+ github = "talyz";
+ name = "Kim Lindberger";
+ };
+ taneb = {
+ email = "nvd1234@gmail.com";
+ github = "Taneb";
+ name = "Nathan van Doorn";
+ };
tari = {
email = "peter@taricorp.net";
github = "tari";
@@ -3963,10 +4813,10 @@
github = "tazjin";
name = "Vincent Ambo";
};
- TealG = {
- email = "~@Teal.Gr";
- github = "TealG";
- name = "Teal Gaure";
+ tbenst = {
+ email = "nix@tylerbenster.com";
+ github = "tbenst";
+ name = "Tyler Benster";
};
teh = {
email = "tehunger@gmail.com";
@@ -3983,6 +4833,11 @@
github = "teozkr";
name = "Teo Klestrup Röijezon";
};
+ terlar = {
+ email = "terlar@gmail.com";
+ github = "terlar";
+ name = "Terje Larsen";
+ };
teto = {
email = "mcoudron@hotmail.com";
github = "teto";
@@ -3993,6 +4848,11 @@
github = "tex";
name = "Milan Svoboda";
};
+ tg-x = {
+ email = "*@tg-x.net";
+ github = "tg-x";
+ name = "TG ⊗ Θ";
+ };
thall = {
email = "niclas.thall@gmail.com";
github = "thall";
@@ -4013,6 +4873,15 @@
github = "the-kenny";
name = "Moritz Ulrich";
};
+ thesola10 = {
+ email = "thesola10@bobile.fr";
+ github = "thesola10";
+ keys = [{
+ longkeyid = "rsa4096/0x89245619BEBB95BA";
+ fingerprint = "1D05 13A6 1AC4 0D8D C6D6 5F2C 8924 5619 BEBB 95BA";
+ }];
+ name = "Karim Vergnes";
+ };
theuni = {
email = "ct@flyingcircus.io";
github = "ctheune";
@@ -4104,10 +4973,15 @@
name = "Thomas Bereknyei";
};
tomsmeets = {
- email = "tom@tsmeets.nl";
+ email = "tom.tsmeets@gmail.com";
github = "tomsmeets";
name = "Tom Smeets";
};
+ toonn = {
+ email = "nnoot@toonn.io";
+ github = "toonn";
+ name = "Toon Nolten";
+ };
travisbhartwell = {
email = "nafai@travishartwell.net";
github = "travisbhartwell";
@@ -4143,7 +5017,7 @@
name = "Thomas Tuegel";
};
tv = {
- email = "tv@shackspace.de";
+ email = "tv@krebsco.de";
github = "4z3";
name = "Tomislav Viljetić";
};
@@ -4192,6 +5066,11 @@
github = "uri-canva";
name = "Uri Baghin";
};
+ uskudnik = {
+ email = "urban.skudnik@gmail.com";
+ github = "uskudnik";
+ name = "Urban Skudnik";
+ };
utdemir = {
email = "me@utdemir.com";
github = "utdemir";
@@ -4253,9 +5132,13 @@
name = "Vincent Bernardoff";
};
vcunat = {
- email = "vcunat@gmail.com";
- github = "vcunat";
name = "Vladimír Čunát";
+ email = "v@cunat.cz"; # vcunat@gmail.com predominated in commits before 2019/03
+ github = "vcunat";
+ keys = [{
+ longkeyid = "rsa4096/0xE747DF1F9575A3AA";
+ fingerprint = "B600 6460 B60A 80E7 8206 2449 E747 DF1F 9575 A3AA";
+ }];
};
vdemeester = {
email = "vincent@sbr.pm";
@@ -4302,6 +5185,11 @@
github = "vklquevs";
name = "vklquevs";
};
+ vlaci = {
+ email = "laszlo.vasko@outlook.com";
+ github = "vlaci";
+ name = "László Vaskó";
+ };
vlstill = {
email = "xstill@fi.muni.cz";
github = "vlstill";
@@ -4336,6 +5224,11 @@
github = "vrthra";
name = "Rahul Gopinath";
};
+ vskilet = {
+ email = "victor@sene.ovh";
+ github = "vskilet";
+ name = "Victor SENE";
+ };
vyp = {
email = "elisp.vim@gmail.com";
github = "vyp";
@@ -4368,6 +5261,11 @@
email = "windenntw@gmail.com";
name = "Antonio Vargas Gonzalez";
};
+ winpat = {
+ email = "patrickwinter@posteo.ch";
+ github = "winpat";
+ name = "Patrick Winter";
+ };
wizeman = {
email = "rcorreia@wizy.org";
github = "wizeman";
@@ -4378,11 +5276,6 @@
github = "wjlroe";
name = "William Roe";
};
- wkennington = {
- email = "william@wkennington.com";
- github = "wkennington";
- name = "William A. Kennington III";
- };
wmertens = {
email = "Wout.Mertens@gmail.com";
github = "wmertens";
@@ -4399,7 +5292,7 @@
name = "Kranium Gikos Mendoza";
};
worldofpeace = {
- email = "worldofpeace@users.noreply.github.com";
+ email = "worldofpeace@protonmail.ch";
github = "worldofpeace";
name = "Worldofpeace";
};
@@ -4413,6 +5306,11 @@
github = "wucke13";
name = "Wucke";
};
+ wykurz = {
+ email = "wykurz@gmail.com";
+ github = "wykurz";
+ name = "Mateusz Wykurz";
+ };
wyvie = {
email = "elijahrum@gmail.com";
github = "wyvie";
@@ -4438,6 +5336,11 @@
github = "xnwdd";
name = "Guillermo NWDD";
};
+ xrelkd = {
+ email = "46590321+xrelkd@users.noreply.github.com";
+ github = "xrelkd";
+ name = "xrelkd";
+ };
xurei = {
email = "olivier.bourdoux@gmail.com";
github = "xurei";
@@ -4463,13 +5366,18 @@
github = "y0no";
name = "Yoann Ono";
};
+ yarny = {
+ email = "41838844+Yarny0@users.noreply.github.com";
+ github = "Yarny0";
+ name = "Yarny";
+ };
yarr = {
email = "savraz@gmail.com";
github = "Eternity-Yarr";
name = "Dmitry V.";
};
yegortimoshenko = {
- email = "yegortimoshenko@gmail.com";
+ email = "yegortimoshenko@riseup.net";
github = "yegortimoshenko";
name = "Yegor Timoshenko";
};
@@ -4518,6 +5426,11 @@
github = "maggesi";
name = "Marco Maggesi";
};
+ zachcoyle = {
+ email = "zach.coyle@gmail.com";
+ github = "zachcoyle";
+ name = "Zach Coyle";
+ };
zagy = {
email = "cz@flyingcircus.io";
github = "zagy";
@@ -4528,6 +5441,11 @@
github = "umazalakain";
name = "Unai Zalakain";
};
+ zaninime = {
+ email = "francesco@zanini.me";
+ github = "zaninime";
+ name = "Francesco Zanini";
+ };
zarelit = {
email = "david@zarel.net";
github = "zarelit";
@@ -4562,6 +5480,11 @@
github = "zohl";
name = "Al Zohali";
};
+ zookatron = {
+ email = "tim@zookatron.com";
+ github = "zookatron";
+ name = "Tim Zook";
+ };
zoomulator = {
email = "zoomulator@gmail.com";
github = "zoomulator";
@@ -4582,4 +5505,34 @@
github = "zzamboni";
name = "Diego Zamboni";
};
+ mredaelli = {
+ email = "massimo@typish.io";
+ github = "mredaelli";
+ name = "Massimo Redaelli";
+ };
+ shmish111 = {
+ email = "shmish111@gmail.com";
+ github = "shmish111";
+ name = "David Smith";
+ };
+ minijackson = {
+ email = "minijackson@riseup.net";
+ github = "minijackson";
+ name = "Rémi Nicole";
+ };
+ shazow = {
+ email = "andrey.petrov@shazow.net";
+ github = "shazow";
+ name = "Andrey Petrov";
+ };
+ freezeboy = {
+ email = "freezeboy@users.noreply.github.com";
+ github = "freezeboy";
+ name = "freezeboy";
+ };
+ tesq0 = {
+ email = "mikolaj.galkowski@gmail.com";
+ github = "tesq0";
+ name = "Mikolaj Galkowski";
+ };
}
diff --git a/maintainers/scripts/copy-tarballs.pl b/maintainers/scripts/copy-tarballs.pl
index 31e6045fb64564274fbf9fce94b005547a3c83a2..59696a4432d8ba8e478971d15c61a4e88d002c2a 100755
--- a/maintainers/scripts/copy-tarballs.pl
+++ b/maintainers/scripts/copy-tarballs.pl
@@ -1,5 +1,5 @@
#! /usr/bin/env nix-shell
-#! nix-shell -i perl -p perl perlPackages.NetAmazonS3 perlPackages.FileSlurp nixUnstable nixUnstable.perl-bindings
+#! nix-shell -i perl -p perl perlPackages.NetAmazonS3 perlPackages.FileSlurp perlPackages.JSON perlPackages.LWPProtocolHttps nixUnstable nixUnstable.perl-bindings
# This command uploads tarballs to tarballs.nixos.org, the
# content-addressed cache used by fetchurl as a fallback for when
@@ -101,8 +101,8 @@ sub uploadFile {
my ($name, $dest) = @_;
#print STDERR "linking $name to $dest...\n";
$bucket->add_key($name, "", {
- 'x-amz-website-redirect-location' => "/" . $dest,
- 'x-amz-acl' => "public-read"
+ 'x-amz-website-redirect-location' => "/" . $dest,
+ 'x-amz-acl' => "public-read"
})
or die "failed to create redirect from $name to $dest\n";
$cache{$name} = 1;
@@ -116,8 +116,8 @@ sub uploadFile {
# Upload the file as sha512/.
print STDERR "uploading $fn to $mainKey...\n";
$bucket->add_key_filename($mainKey, $fn, {
- 'x-amz-meta-original-name' => $name,
- 'x-amz-acl' => "public-read"
+ 'x-amz-meta-original-name' => $name,
+ 'x-amz-acl' => "public-read"
})
or die "failed to upload $fn to $mainKey\n";
$cache{$mainKey} = 1;
diff --git a/maintainers/scripts/eval-release.sh b/maintainers/scripts/eval-release.sh
new file mode 100755
index 0000000000000000000000000000000000000000..e0dfaf1de74c1c133f4fcc9524c1b10a8475fabc
--- /dev/null
+++ b/maintainers/scripts/eval-release.sh
@@ -0,0 +1,11 @@
+#! /bin/sh
+
+if [[ -z "$VERBOSE" ]]; then
+ echo "You may set VERBOSE=1 to see debug output or to any other non-empty string to make this script completely silent"
+fi
+unset HOME NIXPKGS_CONFIG # Force empty config
+
+# With the default heap size (380MB), nix-instantiate fails:
+# Too many heap sections: Increase MAXHINCR or MAX_HEAP_SECTS
+export GC_INITIAL_HEAP_SIZE=${GC_INITIAL_HEAP_SIZE:-2000000000} # 2GB
+nix-instantiate --strict --eval-only --xml --show-trace "$(dirname "$0")"/eval-release.nix 2>&1 > /dev/null
diff --git a/maintainers/scripts/fetch-kde-qt.sh b/maintainers/scripts/fetch-kde-qt.sh
index 1357f87aaa5d3ced8b152e003037afa2744d88d3..a267a5fa8715dfdbd3f7768304b766b1b8e1260a 100755
--- a/maintainers/scripts/fetch-kde-qt.sh
+++ b/maintainers/scripts/fetch-kde-qt.sh
@@ -14,12 +14,13 @@ fi
tmp=$(mktemp -d)
pushd $tmp >/dev/null
-wget -nH -r -c --no-parent "${WGET_ARGS[@]}" >/dev/null
+wget -nH -r -c --no-parent "${WGET_ARGS[@]}" -A '*.tar.xz.sha256' -A '*.mirrorlist' >/dev/null
+find -type f -name '*.mirrorlist' -delete
csv=$(mktemp)
find . -type f | while read src; do
# Sanitize file name
- filename=$(basename "$src" | tr '@' '_')
+ filename=$(gawk '{ print $2 }' "$src" | tr '@' '_')
nameVersion="${filename%.tar.*}"
name=$(echo "$nameVersion" | sed -e 's,-[[:digit:]].*,,' | sed -e 's,-opensource-src$,,' | sed -e 's,-everywhere-src$,,')
version=$(echo "$nameVersion" | sed -e 's,^\([[:alpha:]][[:alnum:]]*-\)\+,,')
@@ -38,8 +39,8 @@ gawk -F , "{ print \$1 }" $csv | sort | uniq | while read name; do
latestVersion=$(echo "$versions" | sort -rV | head -n 1)
src=$(gawk -F , "/^$name,$latestVersion,/ { print \$3 }" $csv)
filename=$(gawk -F , "/^$name,$latestVersion,/ { print \$4 }" $csv)
- url="${src:2}"
- sha256=$(nix-hash --type sha256 --base32 --flat "$src")
+ url="$(dirname "${src:2}")/$filename"
+ sha256=$(gawk '{ print $1 }' "$src")
cat >>"$SRCS" <&1 > /dev/null
diff --git a/maintainers/scripts/update-luarocks-packages b/maintainers/scripts/update-luarocks-packages
new file mode 100755
index 0000000000000000000000000000000000000000..aee74dae10cdecd952915349022917580f7bf1bd
--- /dev/null
+++ b/maintainers/scripts/update-luarocks-packages
@@ -0,0 +1,118 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -p nix-prefetch-scripts luarocks-nix -i bash
+
+# You'll likely want to use
+# ``
+# nixpkgs $ maintainers/scripts/update-luarocks-packages pkgs/development/lua-modules/generated-packages.nix
+# ``
+# to update all libraries in that folder.
+# to debug, redirect stderr to stdout with 2>&1
+
+
+# stop the script upon C-C
+set -eu -o pipefail
+
+if [ $# -lt 1 ]; then
+ print_help
+ exit 1
+fi
+
+CSV_FILE="maintainers/scripts/luarocks-packages.csv"
+TMP_FILE="$(mktemp)"
+
+exit_trap()
+{
+ local lc="$BASH_COMMAND" rc=$?
+ test $rc -eq 0 || echo -e "*** error $rc: $lc.\nGenerated temporary file in $TMP_FILE" >&2
+}
+trap exit_trap EXIT
+
+print_help() {
+ echo "Usage: $0 "
+ echo "(most likely pkgs/development/lua-modules/generated-packages.nix)"
+ echo ""
+ echo " -c to set the list of luarocks package to generate"
+ exit 1
+}
+
+
+while getopts ":hc:" opt; do
+ case $opt in
+ h)
+ print_help
+ ;;
+ c)
+ echo "Loading package list from $OPTARG !" >&2
+ CSV_FILE="$OPTARG"
+ ;;
+ \?)
+ echo "Invalid option: -$OPTARG" >&2
+ ;;
+ esac
+ shift $((OPTIND-1))
+done
+
+GENERATED_NIXFILE="$1"
+
+HEADER="
+/* ${GENERATED_NIXFILE} is an auto-generated file -- DO NOT EDIT!
+Regenerate it with:
+nixpkgs$ ${0} ${GENERATED_NIXFILE}
+
+These packages are manually refined in lua-overrides.nix
+*/
+{ self, stdenv, fetchurl, fetchgit, pkgs, ... } @ args:
+self: super:
+with self;
+{
+"
+
+FOOTER="
+}
+/* GENERATED */
+"
+
+
+function convert_pkg () {
+ nix_pkg_name="$1"
+ lua_pkg_name="$2"
+ server=""
+ if [ ! -z "$3" ]; then
+ server=" --server=$3"
+ fi
+
+ version="${4:-}"
+
+ echo "looking at $lua_pkg_name (version $version) from server [$server]" >&2
+ cmd="luarocks nix $server $lua_pkg_name $version"
+ drv="$nix_pkg_name = $($cmd)"
+ if [ $? -ne 0 ]; then
+ echo "Failed to convert $pkg" >&2
+ echo "$drv" >&2
+ else
+ echo "$drv" | tee -a "$TMP_FILE"
+ fi
+}
+
+# params needed when called via callPackage
+echo "$HEADER" | tee "$TMP_FILE"
+
+# list of packages with format
+# name,server,version
+while IFS=, read -r nix_pkg_name lua_pkg_name server version
+do
+ if [ "${nix_pkg_name:0:1}" == "#" ]; then
+ echo "Skipping comment ${nix_pkg_name}" >&2
+ continue
+ fi
+ if [ -z "$lua_pkg_name" ]; then
+ echo "Using nix_name as lua_pkg_name" >&2
+ lua_pkg_name="$nix_pkg_name"
+ fi
+ convert_pkg "$nix_pkg_name" "$lua_pkg_name" "$server" "$version"
+done < "$CSV_FILE"
+
+# close the set
+echo "$FOOTER" | tee -a "$TMP_FILE"
+
+cp "$TMP_FILE" "$GENERATED_NIXFILE"
diff --git a/maintainers/scripts/update-python-libraries b/maintainers/scripts/update-python-libraries
index d95ff4f347e87f761be71fd6f6a1f857c403bb08..4a6024c40380bcbb04f9b2b0fb9148edc8aaa1b0 100755
--- a/maintainers/scripts/update-python-libraries
+++ b/maintainers/scripts/update-python-libraries
@@ -1,361 +1,5 @@
-#! /usr/bin/env nix-shell
-#! nix-shell -i python3 -p "python3.withPackages(ps: with ps; [ packaging requests toolz ])" -p git
+#!/bin/sh
+build=`nix-build -E "with import (fetchTarball "channel:nixpkgs-unstable") {}; python3.withPackages(ps: with ps; [ packaging requests toolz ])"`
+python=${build}/bin/python
+exec ${python} pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py $@
-"""
-Update a Python package expression by passing in the `.nix` file, or the directory containing it.
-You can pass in multiple files or paths.
-
-You'll likely want to use
-``
- $ ./update-python-libraries ../../pkgs/development/python-modules/*
-``
-to update all libraries in that folder.
-"""
-
-import argparse
-import logging
-import os
-import re
-import requests
-import toolz
-from concurrent.futures import ThreadPoolExecutor as Pool
-from packaging.version import Version as _Version
-from packaging.version import InvalidVersion
-from packaging.specifiers import SpecifierSet
-import collections
-import subprocess
-
-INDEX = "https://pypi.io/pypi"
-"""url of PyPI"""
-
-EXTENSIONS = ['tar.gz', 'tar.bz2', 'tar', 'zip', '.whl']
-"""Permitted file extensions. These are evaluated from left to right and the first occurance is returned."""
-
-PRERELEASES = False
-
-import logging
-logging.basicConfig(level=logging.INFO)
-
-
-class Version(_Version, collections.abc.Sequence):
-
- def __init__(self, version):
- super().__init__(version)
- # We cannot use `str(Version(0.04.21))` because that becomes `0.4.21`
- # https://github.com/avian2/unidecode/issues/13#issuecomment-354538882
- self.raw_version = version
-
- def __getitem__(self, i):
- return self._version.release[i]
-
- def __len__(self):
- return len(self._version.release)
-
- def __iter__(self):
- yield from self._version.release
-
-
-def _get_values(attribute, text):
- """Match attribute in text and return all matches.
-
- :returns: List of matches.
- """
- regex = '{}\s+=\s+"(.*)";'.format(attribute)
- regex = re.compile(regex)
- values = regex.findall(text)
- return values
-
-def _get_unique_value(attribute, text):
- """Match attribute in text and return unique match.
-
- :returns: Single match.
- """
- values = _get_values(attribute, text)
- n = len(values)
- if n > 1:
- raise ValueError("found too many values for {}".format(attribute))
- elif n == 1:
- return values[0]
- else:
- raise ValueError("no value found for {}".format(attribute))
-
-def _get_line_and_value(attribute, text):
- """Match attribute in text. Return the line and the value of the attribute."""
- regex = '({}\s+=\s+"(.*)";)'.format(attribute)
- regex = re.compile(regex)
- value = regex.findall(text)
- n = len(value)
- if n > 1:
- raise ValueError("found too many values for {}".format(attribute))
- elif n == 1:
- return value[0]
- else:
- raise ValueError("no value found for {}".format(attribute))
-
-
-def _replace_value(attribute, value, text):
- """Search and replace value of attribute in text."""
- old_line, old_value = _get_line_and_value(attribute, text)
- new_line = old_line.replace(old_value, value)
- new_text = text.replace(old_line, new_line)
- return new_text
-
-def _fetch_page(url):
- r = requests.get(url)
- if r.status_code == requests.codes.ok:
- return r.json()
- else:
- raise ValueError("request for {} failed".format(url))
-
-
-SEMVER = {
- 'major' : 0,
- 'minor' : 1,
- 'patch' : 2,
-}
-
-
-def _determine_latest_version(current_version, target, versions):
- """Determine latest version, given `target`.
- """
- current_version = Version(current_version)
-
- def _parse_versions(versions):
- for v in versions:
- try:
- yield Version(v)
- except InvalidVersion:
- pass
-
- versions = _parse_versions(versions)
-
- index = SEMVER[target]
-
- ceiling = list(current_version[0:index])
- if len(ceiling) == 0:
- ceiling = None
- else:
- ceiling[-1]+=1
- ceiling = Version(".".join(map(str, ceiling)))
-
- # We do not want prereleases
- versions = SpecifierSet(prereleases=PRERELEASES).filter(versions)
-
- if ceiling is not None:
- versions = SpecifierSet(f"<{ceiling}").filter(versions)
-
- return (max(sorted(versions))).raw_version
-
-
-def _get_latest_version_pypi(package, extension, current_version, target):
- """Get latest version and hash from PyPI."""
- url = "{}/{}/json".format(INDEX, package)
- json = _fetch_page(url)
-
- versions = json['releases'].keys()
- version = _determine_latest_version(current_version, target, versions)
-
- try:
- releases = json['releases'][version]
- except KeyError as e:
- raise KeyError('Could not find version {} for {}'.format(version, package)) from e
- for release in releases:
- if release['filename'].endswith(extension):
- # TODO: In case of wheel we need to do further checks!
- sha256 = release['digests']['sha256']
- break
- else:
- sha256 = None
- return version, sha256
-
-
-def _get_latest_version_github(package, extension, current_version, target):
- raise ValueError("updating from GitHub is not yet supported.")
-
-
-FETCHERS = {
- 'fetchFromGitHub' : _get_latest_version_github,
- 'fetchPypi' : _get_latest_version_pypi,
- 'fetchurl' : _get_latest_version_pypi,
-}
-
-
-DEFAULT_SETUPTOOLS_EXTENSION = 'tar.gz'
-
-
-FORMATS = {
- 'setuptools' : DEFAULT_SETUPTOOLS_EXTENSION,
- 'wheel' : 'whl'
-}
-
-def _determine_fetcher(text):
- # Count occurences of fetchers.
- nfetchers = sum(text.count('src = {}'.format(fetcher)) for fetcher in FETCHERS.keys())
- if nfetchers == 0:
- raise ValueError("no fetcher.")
- elif nfetchers > 1:
- raise ValueError("multiple fetchers.")
- else:
- # Then we check which fetcher to use.
- for fetcher in FETCHERS.keys():
- if 'src = {}'.format(fetcher) in text:
- return fetcher
-
-
-def _determine_extension(text, fetcher):
- """Determine what extension is used in the expression.
-
- If we use:
- - fetchPypi, we check if format is specified.
- - fetchurl, we determine the extension from the url.
- - fetchFromGitHub we simply use `.tar.gz`.
- """
- if fetcher == 'fetchPypi':
- try:
- src_format = _get_unique_value('format', text)
- except ValueError as e:
- src_format = None # format was not given
-
- try:
- extension = _get_unique_value('extension', text)
- except ValueError as e:
- extension = None # extension was not given
-
- if extension is None:
- if src_format is None:
- src_format = 'setuptools'
- elif src_format == 'flit':
- raise ValueError("Don't know how to update a Flit package.")
- extension = FORMATS[src_format]
-
- elif fetcher == 'fetchurl':
- url = _get_unique_value('url', text)
- extension = os.path.splitext(url)[1]
- if 'pypi' not in url:
- raise ValueError('url does not point to PyPI.')
-
- elif fetcher == 'fetchFromGitHub':
- raise ValueError('updating from GitHub is not yet implemented.')
-
- return extension
-
-
-def _update_package(path, target):
-
- # Read the expression
- with open(path, 'r') as f:
- text = f.read()
-
- # Determine pname.
- pname = _get_unique_value('pname', text)
-
- # Determine version.
- version = _get_unique_value('version', text)
-
- # First we check how many fetchers are mentioned.
- fetcher = _determine_fetcher(text)
-
- extension = _determine_extension(text, fetcher)
-
- new_version, new_sha256 = FETCHERS[fetcher](pname, extension, version, target)
-
- if new_version == version:
- logging.info("Path {}: no update available for {}.".format(path, pname))
- return False
- elif Version(new_version) <= Version(version):
- raise ValueError("downgrade for {}.".format(pname))
- if not new_sha256:
- raise ValueError("no file available for {}.".format(pname))
-
- text = _replace_value('version', new_version, text)
- text = _replace_value('sha256', new_sha256, text)
-
- with open(path, 'w') as f:
- f.write(text)
-
- logging.info("Path {}: updated {} from {} to {}".format(path, pname, version, new_version))
-
- result = {
- 'path' : path,
- 'target': target,
- 'pname': pname,
- 'old_version' : version,
- 'new_version' : new_version,
- #'fetcher' : fetcher,
- }
-
- return result
-
-
-def _update(path, target):
-
- # We need to read and modify a Nix expression.
- if os.path.isdir(path):
- path = os.path.join(path, 'default.nix')
-
- # If a default.nix does not exist, we quit.
- if not os.path.isfile(path):
- logging.info("Path {}: does not exist.".format(path))
- return False
-
- # If file is not a Nix expression, we quit.
- if not path.endswith(".nix"):
- logging.info("Path {}: does not end with `.nix`.".format(path))
- return False
-
- try:
- return _update_package(path, target)
- except ValueError as e:
- logging.warning("Path {}: {}".format(path, e))
- return False
-
-
-def _commit(path, pname, old_version, new_version, **kwargs):
- """Commit result.
- """
-
- msg = f'python: {pname}: {old_version} -> {new_version}'
-
- try:
- subprocess.check_call(['git', 'add', path])
- subprocess.check_call(['git', 'commit', '-m', msg])
- except subprocess.CalledProcessError as e:
- subprocess.check_call(['git', 'checkout', path])
- raise subprocess.CalledProcessError(f'Could not commit {path}') from e
-
- return True
-
-
-def main():
-
- parser = argparse.ArgumentParser()
- parser.add_argument('package', type=str, nargs='+')
- parser.add_argument('--target', type=str, choices=SEMVER.keys(), default='major')
- parser.add_argument('--commit', action='store_true', help='Create a commit for each package update')
-
- args = parser.parse_args()
- target = args.target
-
- packages = list(map(os.path.abspath, args.package))
-
- logging.info("Updating packages...")
-
- # Use threads to update packages concurrently
- with Pool() as p:
- results = list(p.map(lambda pkg: _update(pkg, target), packages))
-
- logging.info("Finished updating packages.")
-
- # Commits are created sequentially.
- if args.commit:
- logging.info("Committing updates...")
- list(map(lambda x: _commit(**x), filter(bool, results)))
- logging.info("Finished committing updates")
-
- count = sum(map(bool, results))
- logging.info("{} package(s) updated".format(count))
-
-
-
-if __name__ == '__main__':
- main()
diff --git a/maintainers/scripts/update.nix b/maintainers/scripts/update.nix
index 8d1e47c6bc951d3e601cf573cf63937734ba8f93..120cd5552f4804b4741731b941b995e006b88ef9 100755
--- a/maintainers/scripts/update.nix
+++ b/maintainers/scripts/update.nix
@@ -1,6 +1,8 @@
{ package ? null
, maintainer ? null
, path ? null
+, max-workers ? null
+, keep-going ? null
}:
# TODO: add assert statements
@@ -105,27 +107,24 @@ let
% nix-shell maintainers/scripts/update.nix --argstr path gnome3
to run update script for all package under an attribute path.
- '';
- runUpdateScript = package: ''
- echo -ne " - ${package.name}: UPDATING ..."\\r
- ${package.updateScript} &> ${(builtins.parseDrvName package.name).name}.log
- CODE=$?
- if [ "$CODE" != "0" ]; then
- echo " - ${package.name}: ERROR "
- echo ""
- echo "--- SHOWING ERROR LOG FOR ${package.name} ----------------------"
- echo ""
- cat ${(builtins.parseDrvName package.name).name}.log
- echo ""
- echo "--- SHOWING ERROR LOG FOR ${package.name} ----------------------"
- exit $CODE
- else
- rm ${(builtins.parseDrvName package.name).name}.log
- fi
- echo " - ${package.name}: DONE. "
+ You can also add
+
+ --argstr max-workers 8
+
+ to increase the number of jobs in parallel, or
+
+ --argstr keep-going true
+
+ to continue running when a single update fails.
'';
+ packageData = package: {
+ name = package.name;
+ pname = (builtins.parseDrvName package.name).name;
+ updateScript = pkgs.lib.toList package.updateScript;
+ };
+
in pkgs.stdenv.mkDerivation {
name = "nixpkgs-update-script";
buildCommand = ''
@@ -139,21 +138,7 @@ in pkgs.stdenv.mkDerivation {
exit 1
'';
shellHook = ''
- echo ""
- echo "Going to be running update for following packages:"
- echo "${builtins.concatStringsSep "\n" (map (x: " - ${x.name}") packages)}"
- echo ""
- read -n1 -r -p "Press space to continue..." confirm
- if [ "$confirm" = "" ]; then
- echo ""
- echo "Running update for:"
- ${builtins.concatStringsSep "\n" (map runUpdateScript packages)}
- echo ""
- echo "Packages updated!"
- exit 0
- else
- echo "Aborting!"
- exit 1
- fi
+ unset shellHook # do not contaminate nested shells
+ exec ${pkgs.python3.interpreter} ${./update.py} ${pkgs.writeText "packages.json" (builtins.toJSON (map packageData packages))}${pkgs.lib.optionalString (max-workers != null) " --max-workers=${max-workers}"}${pkgs.lib.optionalString (keep-going == "true") " --keep-going"}
'';
}
diff --git a/maintainers/scripts/update.py b/maintainers/scripts/update.py
new file mode 100644
index 0000000000000000000000000000000000000000..eb7d0ef2647bf59687cc7a794ca5334febce49e4
--- /dev/null
+++ b/maintainers/scripts/update.py
@@ -0,0 +1,79 @@
+import argparse
+import concurrent.futures
+import json
+import os
+import subprocess
+import sys
+
+updates = {}
+
+def eprint(*args, **kwargs):
+ print(*args, file=sys.stderr, **kwargs)
+
+def run_update_script(package):
+ eprint(f" - {package['name']}: UPDATING ...")
+
+ subprocess.run(package['updateScript'], stdout=subprocess.PIPE, stderr=subprocess.STDOUT, check=True)
+
+
+def main(max_workers, keep_going, packages):
+ with open(sys.argv[1]) as f:
+ packages = json.load(f)
+
+ eprint()
+ eprint('Going to be running update for following packages:')
+ for package in packages:
+ eprint(f" - {package['name']}")
+ eprint()
+
+ confirm = input('Press Enter key to continue...')
+ if confirm == '':
+ eprint()
+ eprint('Running update for:')
+
+ with concurrent.futures.ProcessPoolExecutor(max_workers=max_workers) as executor:
+ for package in packages:
+ updates[executor.submit(run_update_script, package)] = package
+
+ for future in concurrent.futures.as_completed(updates):
+ package = updates[future]
+
+ try:
+ future.result()
+ eprint(f" - {package['name']}: DONE.")
+ except subprocess.CalledProcessError as e:
+ eprint(f" - {package['name']}: ERROR")
+ eprint()
+ eprint(f"--- SHOWING ERROR LOG FOR {package['name']} ----------------------")
+ eprint()
+ eprint(e.stdout.decode('utf-8'))
+ with open(f"{package['pname']}.log", 'wb') as f:
+ f.write(e.stdout)
+ eprint()
+ eprint(f"--- SHOWING ERROR LOG FOR {package['name']} ----------------------")
+
+ if not keep_going:
+ sys.exit(1)
+
+ eprint()
+ eprint('Packages updated!')
+ sys.exit()
+ else:
+ eprint('Aborting!')
+ sys.exit(130)
+
+parser = argparse.ArgumentParser(description='Update packages')
+parser.add_argument('--max-workers', '-j', dest='max_workers', type=int, help='Number of updates to run concurrently', nargs='?', default=4)
+parser.add_argument('--keep-going', '-k', dest='keep_going', action='store_true', help='Do not stop after first failure')
+parser.add_argument('packages', help='JSON file containing the list of package names and their update scripts')
+
+if __name__ == '__main__':
+ args = parser.parse_args()
+
+ try:
+ main(args.max_workers, args.keep_going, args.packages)
+ except (KeyboardInterrupt, SystemExit) as e:
+ for update in updates:
+ update.cancel()
+
+ sys.exit(e.code if isinstance(e, SystemExit) else 130)
diff --git a/nixos/doc/manual/Makefile b/nixos/doc/manual/Makefile
index 5cbbf140869a6d649b4ff42dfbddd78f1e94d91c..9ff599a0090f7b3229553a3ced9bd60cfcfa4c13 100644
--- a/nixos/doc/manual/Makefile
+++ b/nixos/doc/manual/Makefile
@@ -4,15 +4,16 @@ all: manual-combined.xml format
.PHONY: debug
debug: generated manual-combined.xml
-manual-combined.xml: generated *.xml
+manual-combined.xml: generated *.xml **/*.xml
rm -f ./manual-combined.xml
- nix-shell --packages xmloscopy \
+ nix-shell --pure -Q --packages xmloscopy \
--run "xmloscopy --docbook5 ./manual.xml ./manual-combined.xml"
.PHONY: format
format:
- find . -iname '*.xml' -type f -print0 | xargs -0 -I{} -n1 \
- xmlformat --config-file "../xmlformat.conf" -i {}
+ nix-shell --pure -Q --packages xmlformat \
+ --run "find ../../ -iname '*.xml' -type f -print0 | xargs -0 -I{} -n1 \
+ xmlformat --config-file '../xmlformat.conf' -i {}"
.PHONY: fix-misc-xml
fix-misc-xml:
diff --git a/nixos/doc/manual/administration/cleaning-store.xml b/nixos/doc/manual/administration/cleaning-store.xml
index ee201982a40be37a0e6ae52f4b5e9dfe365d20f3..f078b8c3ba370916661543a3eb524dc4bd4626c6 100644
--- a/nixos/doc/manual/administration/cleaning-store.xml
+++ b/nixos/doc/manual/administration/cleaning-store.xml
@@ -50,4 +50,14 @@ $ nix-store --optimise
Since this command needs to read the entire Nix store, it can take quite a
while to finish.
+
+ NixOS Boot Entries
+
+
+ If your /boot partition runs out of space, after
+ clearing old profiles you must rebuild your system with
+ nixos-rebuild to update the /boot
+ partition and clear space.
+
+
diff --git a/nixos/doc/manual/administration/container-networking.xml b/nixos/doc/manual/administration/container-networking.xml
index 4b977d1d82eb42b79d4eed281e13f5320f11225f..2ee8bfdd50f1b94ba0adb2d12335724f93d2b69d 100644
--- a/nixos/doc/manual/administration/container-networking.xml
+++ b/nixos/doc/manual/administration/container-networking.xml
@@ -52,4 +52,8 @@ $ ping -c1 10.233.4.2
networking.networkmanager.unmanaged = [ "interface-name:ve-*" ];
+
+
+ You may need to restart your system for the changes to take effect.
+
diff --git a/nixos/doc/manual/administration/declarative-containers.xml b/nixos/doc/manual/administration/declarative-containers.xml
index 2a98fb1262310275849d0451221f3fc671b04a47..d03dbc4d70556cefe5223f7d8eb496345237bb23 100644
--- a/nixos/doc/manual/administration/declarative-containers.xml
+++ b/nixos/doc/manual/administration/declarative-containers.xml
@@ -15,7 +15,7 @@ containers.database =
{ config =
{ config, pkgs, ... }:
{ = true;
- = pkgs.postgresql96;
+ = pkgs.postgresql_9_6;
};
};
diff --git a/nixos/doc/manual/administration/running.xml b/nixos/doc/manual/administration/running.xml
index 786dd5e2390d6579f90e55881717d723c95bf4f8..19bec1f7794d8724a604fb66d48600659551a10d 100644
--- a/nixos/doc/manual/administration/running.xml
+++ b/nixos/doc/manual/administration/running.xml
@@ -4,7 +4,7 @@
version="5.0"
xml:id="ch-running">
Administration
-
+
This chapter describes various aspects of managing a running NixOS system,
such as how to use the systemd service manager.
diff --git a/nixos/doc/manual/configuration/adding-custom-packages.xml b/nixos/doc/manual/configuration/adding-custom-packages.xml
index 028a94275345d470ddc1e5ace68566573bccf9da..cdcfa10b8200ee6980e62b6bb6d888f8622ae5c4 100644
--- a/nixos/doc/manual/configuration/adding-custom-packages.xml
+++ b/nixos/doc/manual/configuration/adding-custom-packages.xml
@@ -31,7 +31,7 @@ $ cd nixpkgs
The second possibility is to add the package outside of the Nixpkgs tree. For
instance, here is how you specify a build of the
- GNU Hello
+ GNU Hello
package directly in configuration.nix:
=
diff --git a/nixos/doc/manual/configuration/config-file.xml b/nixos/doc/manual/configuration/config-file.xml
index 8a1a39c98c10d3dec9e919959b24b5c7e6d5d276..eadafb94b8f6d1b3aabdbbe6c50ffbec236184c4 100644
--- a/nixos/doc/manual/configuration/config-file.xml
+++ b/nixos/doc/manual/configuration/config-file.xml
@@ -197,11 +197,12 @@ swapDevices = [ { device = "/dev/disk/by-label/swap"; } ];
pkgs.emacs
];
- = pkgs.postgresql90;
+ = pkgs.postgresql_10;
The latter option definition changes the default PostgreSQL package used
- by NixOS’s PostgreSQL service to 9.0. For more information on packages,
- including how to add new ones, see .
+ by NixOS’s PostgreSQL service to 10.x. For more information on
+ packages, including how to add new ones, see
+ .
diff --git a/nixos/doc/manual/configuration/configuration.xml b/nixos/doc/manual/configuration/configuration.xml
index 8d05dcd34b4d40813b5d6224af5258337e77c431..5961209bc13ace2d262906147b5422e1d3760fb0 100644
--- a/nixos/doc/manual/configuration/configuration.xml
+++ b/nixos/doc/manual/configuration/configuration.xml
@@ -4,7 +4,7 @@
version="5.0"
xml:id="ch-configuration">
Configuration
-
+
This chapter describes how to configure various aspects of a NixOS machine
through the configuration file
@@ -21,6 +21,9 @@
+
+
+
diff --git a/nixos/doc/manual/configuration/declarative-packages.xml b/nixos/doc/manual/configuration/declarative-packages.xml
index be9884fe9dce14bcc6ff6889c96f888283762241..c9acbefea60eadc1de6f9c21065fcb7ddbd9d48b 100644
--- a/nixos/doc/manual/configuration/declarative-packages.xml
+++ b/nixos/doc/manual/configuration/declarative-packages.xml
@@ -27,8 +27,13 @@ nixos.firefox firefox-23.0 Mozilla Firefox - the browser, reloaded
...
The first column in the output is the attribute name,
- such as nixos.thunderbird. (The nixos
- prefix allows distinguishing between different channels that you might have.)
+ such as nixos.thunderbird.
+
+
+ Note: the nixos prefix tells us that we want to get the
+ package from the nixos channel and works only in CLI tools.
+
+ In declarative configuration use pkgs prefix (variable).
diff --git a/nixos/doc/manual/configuration/firewall.xml b/nixos/doc/manual/configuration/firewall.xml
index b66adcedce6e888ce613ede9e4db7f9a03fa85cd..47a19ac82c0fea6b9e67f84f7743507cd6da6b22 100644
--- a/nixos/doc/manual/configuration/firewall.xml
+++ b/nixos/doc/manual/configuration/firewall.xml
@@ -34,13 +34,4 @@
Similarly, UDP port ranges can be opened through
.
-
-
- Also of interest is
-
- = true;
-
- to allow the machine to respond to ping requests. (ICMPv6 pings are always
- allowed.)
-
diff --git a/nixos/doc/manual/configuration/kubernetes.xml b/nixos/doc/manual/configuration/kubernetes.xml
new file mode 100644
index 0000000000000000000000000000000000000000..54a100e44795473a1efe4f54f46191d12799f49b
--- /dev/null
+++ b/nixos/doc/manual/configuration/kubernetes.xml
@@ -0,0 +1,112 @@
+
+ Kubernetes
+
+ The NixOS Kubernetes module is a collective term for a handful of individual
+ submodules implementing the Kubernetes cluster components.
+
+
+ There are generally two ways of enabling Kubernetes on NixOS. One way is to
+ enable and configure cluster components appropriately by hand:
+
+services.kubernetes = {
+ apiserver.enable = true;
+ controllerManager.enable = true;
+ scheduler.enable = true;
+ addonManager.enable = true;
+ proxy.enable = true;
+ flannel.enable = true;
+};
+
+ Another way is to assign cluster roles ("master" and/or "node") to the host.
+ This enables apiserver, controllerManager, scheduler, addonManager,
+ kube-proxy and etcd:
+
+ = [ "master" ];
+
+ While this will enable the kubelet and kube-proxy only:
+
+ = [ "node" ];
+
+ Assigning both the master and node roles is usable if you want a single node
+ Kubernetes cluster for dev or testing purposes:
+
+ = [ "master" "node" ];
+
+ Note: Assigning either role will also default both
+ and
+ to true. This sets up
+ flannel as CNI and activates automatic PKI bootstrapping.
+
+
+ As of kubernetes 1.10.X it has been deprecated to open non-tls-enabled ports
+ on kubernetes components. Thus, from NixOS 19.03 all plain HTTP ports have
+ been disabled by default. While opening insecure ports is still possible, it
+ is recommended not to bind these to other interfaces than loopback. To
+ re-enable the insecure port on the apiserver, see options:
+ and
+
+
+
+
+ As of NixOS 19.03, it is mandatory to configure:
+ . The masterAddress
+ must be resolveable and routeable by all cluster nodes. In single node
+ clusters, this can be set to localhost.
+
+
+
+ Role-based access control (RBAC) authorization mode is enabled by default.
+ This means that anonymous requests to the apiserver secure port will
+ expectedly cause a permission denied error. All cluster components must
+ therefore be configured with x509 certificates for two-way tls communication.
+ The x509 certificate subject section determines the roles and permissions
+ granted by the apiserver to perform clusterwide or namespaced operations. See
+ also:
+
+ Using RBAC Authorization.
+
+
+ The NixOS kubernetes module provides an option for automatic certificate
+ bootstrapping and configuration,
+ . The PKI bootstrapping
+ process involves setting up a certificate authority (CA) daemon (cfssl) on
+ the kubernetes master node. cfssl generates a CA-cert for the cluster, and
+ uses the CA-cert for signing subordinate certs issued to each of the cluster
+ components. Subsequently, the certmgr daemon monitors active certificates and
+ renews them when needed. For single node Kubernetes clusters, setting
+ = true is sufficient and
+ no further action is required. For joining extra node machines to an existing
+ cluster on the other hand, establishing initial trust is mandatory.
+
+
+ To add new nodes to the cluster: On any (non-master) cluster node where
+ is enabled, the helper
+ script nixos-kubernetes-node-join is available on PATH.
+ Given a token on stdin, it will copy the token to the kubernetes secrets
+ directory and restart the certmgr service. As requested certificates are
+ issued, the script will restart kubernetes cluster components as needed for
+ them to pick up new keypairs.
+
+
+
+ Multi-master (HA) clusters are not supported by the easyCerts module.
+
+
+
+ In order to interact with an RBAC-enabled cluster as an administrator, one
+ needs to have cluster-admin privileges. By default, when easyCerts is
+ enabled, a cluster-admin kubeconfig file is generated and linked into
+ /etc/kubernetes/cluster-admin.kubeconfig as determined by
+ .
+ export KUBECONFIG=/etc/kubernetes/cluster-admin.kubeconfig
+ will make kubectl use this kubeconfig to access and authenticate the cluster.
+ The cluster-admin kubeconfig references an auto-generated keypair owned by
+ root. Thus, only root on the kubernetes master may obtain cluster-admin
+ rights by means of this file.
+
+
diff --git a/nixos/doc/manual/configuration/linux-kernel.xml b/nixos/doc/manual/configuration/linux-kernel.xml
index f4d697c42dbd0b030dee92e66502c8e67e72901f..644d3a33ffd2c8208b83be9d5a4503b2f62a94c9 100644
--- a/nixos/doc/manual/configuration/linux-kernel.xml
+++ b/nixos/doc/manual/configuration/linux-kernel.xml
@@ -66,14 +66,15 @@ nixpkgs.config.packageOverrides = pkgs:
sets the kernel’s TCP keepalive time to 120 seconds. To see the available
parameters, run sysctl -a.
-
+ Customize your kernel
The first step before compiling the kernel is to generate an appropriate
- .config configuration. Either you pass your own config via
- the configfile setting of linuxManualConfig:
- .config configuration. Either you pass your own config
+ via the configfile setting of
+ linuxManualConfig:
+
-
-You can edit the config with this snippet (by default make menuconfig won't work
- out of the box on nixos):
- make
+ menuconfig won't work out of the box on nixos):
+ {}; kernelToOverride.overrideAttrs (o: {nativeBuildInputs=o.nativeBuildInputs ++ [ pkgconfig ncurses ];})'
]]>
-
-
- or you can let nixpkgs generate the configuration.
- Nixpkgs generates it via answering the interactive kernel utility make config.
- The answers depend on parameters passed to pkgs/os-specific/linux/kernel/generic.nix
- (which you can influence by overriding extraConfig, autoModules, modDirVersion, preferBuiltin, extraConfig).
+ or you can let nixpkgs generate the configuration. Nixpkgs generates it via
+ answering the interactive kernel utility make config. The
+ answers depend on parameters passed to
+ pkgs/os-specific/linux/kernel/generic.nix (which you
+ can influence by overriding extraConfig, autoModules,
+ modDirVersion, preferBuiltin, extraConfig).
make menuconfig
]]>
-
+ Developing kernel modules
diff --git a/nixos/doc/manual/configuration/matrix.xml b/nixos/doc/manual/configuration/matrix.xml
new file mode 100644
index 0000000000000000000000000000000000000000..66965460a15d18b03684291c39b70633fc7f9d7d
--- /dev/null
+++ b/nixos/doc/manual/configuration/matrix.xml
@@ -0,0 +1,203 @@
+
+ Matrix
+
+ Matrix is an open standard for
+ interoperable, decentralised, real-time communication over IP. It can be used
+ to power Instant Messaging, VoIP/WebRTC signalling, Internet of Things
+ communication - or anywhere you need a standard HTTP API for publishing and
+ subscribing to data whilst tracking the conversation history.
+
+
+ This chapter will show you how to set up your own, self-hosted Matrix
+ homeserver using the Synapse reference homeserver, and how to serve your own
+ copy of the Riot web client. See the
+ Try
+ Matrix Now! overview page for links to Riot Apps for Android and iOS,
+ desktop clients, as well as bridges to other networks and other projects
+ around Matrix.
+
+
+ Synapse Homeserver
+
+
+ Synapse is
+ the reference homeserver implementation of Matrix from the core development
+ team at matrix.org. The following configuration example will set up a
+ synapse server for the example.org domain, served from
+ the host myhostname.example.org. For more information,
+ please refer to the
+
+ installation instructions of Synapse .
+
+ let
+ fqdn =
+ let
+ join = hostName: domain: hostName + optionalString (domain != null) ".${domain}";
+ in join config.networking.hostName config.networking.domain;
+ in {
+ networking = {
+ hostName = "myhostname";
+ domain = "example.org";
+ };
+ networking.firewall.allowedTCPPorts = [ 80 443 ];
+
+ services.nginx = {
+ enable = true;
+ # only recommendedProxySettings and recommendedGzipSettings are strictly required,
+ # but the rest make sense as well
+ recommendedTlsSettings = true;
+ recommendedOptimisation = true;
+ recommendedGzipSettings = true;
+ recommendedProxySettings = true;
+
+ virtualHosts = {
+ # This host section can be placed on a different host than the rest,
+ # i.e. to delegate from the host being accessible as ${config.networking.domain}
+ # to another host actually running the Matrix homeserver.
+ "${config.networking.domain}" = {
+ locations."= /.well-known/matrix/server".extraConfig =
+ let
+ # use 443 instead of the default 8448 port to unite
+ # the client-server and server-server port for simplicity
+ server = { "m.server" = "${fqdn}:443"; };
+ in ''
+ add_header Content-Type application/json;
+ return 200 '${builtins.toJSON server}';
+ '';
+ locations."= /.well-known/matrix/client".extraConfig =
+ let
+ client = {
+ "m.homeserver" = { "base_url" = "https://${fqdn}"; };
+ "m.identity_server" = { "base_url" = "https://vector.im"; };
+ };
+ # ACAO required to allow riot-web on any URL to request this json file
+ in ''
+ add_header Content-Type application/json;
+ add_header Access-Control-Allow-Origin *;
+ return 200 '${builtins.toJSON client}';
+ '';
+ };
+
+ # Reverse proxy for Matrix client-server and server-server communication
+ ${fqdn} = {
+ enableACME = true;
+ forceSSL = true;
+
+ # Or do a redirect instead of the 404, or whatever is appropriate for you.
+ # But do not put a Matrix Web client here! See the Riot Web section below.
+ locations."/".extraConfig = ''
+ return 404;
+ '';
+
+ # forward all Matrix API calls to the synapse Matrix homeserver
+ locations."/_matrix" = {
+ proxyPass = "http://[::1]:8008";
+ };
+ };
+ };
+ };
+ services.matrix-synapse = {
+ enable = true;
+ server_name = config.networking.domain;
+ listeners = [
+ {
+ port = 8008;
+ bind_address = "::1";
+ type = "http";
+ tls = false;
+ x_forwarded = true;
+ resources = [
+ { names = [ "client" "federation" ]; compress = false; }
+ ];
+ }
+ ];
+ };
+ };
+
+
+
+
+ If the A and AAAA DNS records on
+ example.org do not point on the same host as the records
+ for myhostname.example.org, you can easily move the
+ /.well-known virtualHost section of the code to the host that
+ is serving example.org, while the rest stays on
+ myhostname.example.org with no other changes required.
+ This pattern also allows to seamlessly move the homeserver from
+ myhostname.example.org to
+ myotherhost.example.org by only changing the
+ /.well-known redirection target.
+
+
+
+ If you want to run a server with public registration by anybody, you can
+ then enable . Otherwise, or you can generate a registration secret with
+ pwgen -s 64 1 and set it with
+ . To
+ create a new user or admin, run the following after you have set the secret
+ and have rebuilt NixOS:
+
+ $ nix run nixpkgs.matrix-synapse
+ $ register_new_matrix_user -k <your-registration-shared-secret> http://localhost:8008
+ New user localpart: <your-username>
+ Password:
+ Confirm password:
+ Make admin [no]:
+ Success!
+
+ In the example, this would create a user with the Matrix Identifier
+ @your-username:example.org. Note that the registration
+ secret ends up in the nix store and therefore is world-readable by any user
+ on your machine, so it makes sense to only temporarily activate the
+ option until a better solution
+ for NixOS is in place.
+
+
+
+ Riot Web Client
+
+
+ Riot Web is
+ the reference web client for Matrix and developed by the core team at
+ matrix.org. The following snippet can be optionally added to the code before
+ to complete the synapse installation with a web client served at
+ https://riot.myhostname.example.org and
+ https://riot.example.org. Alternatively, you can use the hosted
+ copy at https://riot.im/app,
+ or use other web clients or native client applications. Due to the
+ /.well-known urls set up done above, many clients should
+ fill in the required connection details automatically when you enter your
+ Matrix Identifier. See
+ Try
+ Matrix Now! for a list of existing clients and their supported
+ featureset.
+
+ services.nginx.virtualHosts."riot.${fqdn}" = {
+ enableACME = true;
+ forceSSL = true;
+ serverAliases = [
+ "riot.${config.networking.domain}"
+ ];
+
+ root = pkgs.riot-web;
+ };
+
+
+
+
+ Note that the Riot developers do not recommend running Riot and your Matrix
+ homeserver on the same fully-qualified domain name for security reasons. In
+ the example, this means that you should not reuse the
+ myhostname.example.org virtualHost to also serve Riot,
+ but instead serve it on a different subdomain, like
+ riot.example.org in the example. See the
+ Riot
+ Important Security Notes for more information on this subject.
+
+
+
diff --git a/nixos/doc/manual/configuration/modularity.xml b/nixos/doc/manual/configuration/modularity.xml
index 3ff96f719ec57f70004103c2f2925c058d11edff..724abd31ca4ec4e7fc40c43e1634e74f8e6fb6ac 100644
--- a/nixos/doc/manual/configuration/modularity.xml
+++ b/nixos/doc/manual/configuration/modularity.xml
@@ -74,7 +74,7 @@ The unique option `services.httpd.adminAddr' is defined multiple times, in `/etc
argument is for: it contains the complete, merged system configuration. That
is, config is the result of combining the configurations
returned by every module
-
+
If you’re wondering how it’s possible that the (indirect)
result of a function is passed as an
@@ -112,13 +112,10 @@ true
$ nixos-option
[ "tun" "ipv6" "loop" ... ]
- Interactive exploration of the configuration is possible using
- nix-repl,
- a read-eval-print loop for Nix expressions. It’s not installed by default;
- run nix-env -i nix-repl to get it. A typical use:
+ Interactive exploration of the configuration is possible using nix
+ repl, a read-eval-print loop for Nix expressions. A typical use:
-$ nix-repl '<nixpkgs/nixos>'
+$ nix repl '<nixpkgs/nixos>'
nix-repl> config.
"mandark"
@@ -127,4 +124,22 @@ nix-repl> map (x: x.hostName) config.
+
+
+ While abstracting your configuration, you may find it useful to generate
+ modules using code, instead of writing files. The example below would have
+ the same effect as importing a file which sets those options.
+
+ { config, pkgs, ... }:
+
+ let netConfig = { hostName }: {
+ networking.hostName = hostName;
+ networking.useDHCP = false;
+ };
+
+ in
+
+ { imports = [ (netConfig "nixos.localdomain") ]; }
+
+
diff --git a/nixos/doc/manual/configuration/profiles.xml b/nixos/doc/manual/configuration/profiles.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c0a8f55785fc8a5ebe8d671e37772d73f11a498e
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles.xml
@@ -0,0 +1,39 @@
+
+ Profiles
+
+ In some cases, it may be desirable to take advantage of commonly-used,
+ predefined configurations provided by nixpkgs, but different from those that
+ come as default. This is a role fulfilled by NixOS's Profiles, which come as
+ files living in <nixpkgs/nixos/modules/profiles>.
+ That is to say, expected usage is to add them to the imports list of your
+ /etc/configuration.nix as such:
+
+
+ imports = [
+ <nixpkgs/nixos/modules/profiles/profile-name.nix>
+ ];
+
+
+ Even if some of these profiles seem only useful in the context of install
+ media, many are actually intended to be used in real installs.
+
+
+ What follows is a brief explanation on the purpose and use-case for each
+ profile. Detailing each option configured by each one is out of scope.
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nixos/doc/manual/configuration/profiles/all-hardware.xml b/nixos/doc/manual/configuration/profiles/all-hardware.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2936f71069d539b5425d55387895145be9951d7e
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles/all-hardware.xml
@@ -0,0 +1,21 @@
+
+ All Hardware
+
+
+ Enables all hardware supported by NixOS: i.e., all firmware is included, and
+ all devices from which one may boot are enabled in the initrd. Its primary
+ use is in the NixOS installation CDs.
+
+
+
+ The enabled kernel modules include support for SATA and PATA, SCSI
+ (partially), USB, Firewire (untested), Virtio (QEMU, KVM, etc.), VMware, and
+ Hyper-V. Additionally, is
+ enabled, and the firmware for the ZyDAS ZD1211 chipset is specifically
+ installed.
+
+
diff --git a/nixos/doc/manual/configuration/profiles/base.xml b/nixos/doc/manual/configuration/profiles/base.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b75f6ba25b4f6173978706deb21b72b6711d6f82
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles/base.xml
@@ -0,0 +1,15 @@
+
+ Base
+
+
+ Defines the software packages included in the "minimal" installation CD. It
+ installs several utilities useful in a simple recovery or install media, such
+ as a text-mode web browser, and tools for manipulating block devices,
+ networking, hardware diagnostics, and filesystems (with their respective
+ kernel modules).
+
+
diff --git a/nixos/doc/manual/configuration/profiles/clone-config.xml b/nixos/doc/manual/configuration/profiles/clone-config.xml
new file mode 100644
index 0000000000000000000000000000000000000000..234835845e2d248ffca469965d7adf8457ad99f0
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles/clone-config.xml
@@ -0,0 +1,14 @@
+
+ Clone Config
+
+
+ This profile is used in installer images. It provides an editable
+ configuration.nix that imports all the modules that were also used when
+ creating the image in the first place. As a result it allows users to edit
+ and rebuild the live-system.
+
+
diff --git a/nixos/doc/manual/configuration/profiles/demo.xml b/nixos/doc/manual/configuration/profiles/demo.xml
new file mode 100644
index 0000000000000000000000000000000000000000..395a5ec357c9069912973f085f31c3c1f19f3adb
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles/demo.xml
@@ -0,0 +1,15 @@
+
+ Demo
+
+
+ This profile just enables a demo
+ user, with password demo, uid 1000,
+ wheel group and
+ autologin
+ in the SDDM display manager.
+
+
diff --git a/nixos/doc/manual/configuration/profiles/docker-container.xml b/nixos/doc/manual/configuration/profiles/docker-container.xml
new file mode 100644
index 0000000000000000000000000000000000000000..efa7b8f24c430018ca8a0648406e8280228356f5
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles/docker-container.xml
@@ -0,0 +1,16 @@
+
+ Docker Container
+
+
+ This is the profile from which the Docker images are generated. It prepares a
+ working system by importing the
+ Minimal and
+ Clone Config profiles, and
+ setting appropriate configuration options that are useful inside a container
+ context, like .
+
+
diff --git a/nixos/doc/manual/configuration/profiles/graphical.xml b/nixos/doc/manual/configuration/profiles/graphical.xml
new file mode 100644
index 0000000000000000000000000000000000000000..73e3abc59d0cc33101c07a25115b530cf6ec7ab0
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles/graphical.xml
@@ -0,0 +1,22 @@
+
+ Graphical
+
+
+ Defines a NixOS configuration with the Plasma 5 desktop. It's used by the
+ graphical installation CD.
+
+
+
+ It sets ,
+ ,
+ (
+
+ without Qt4 Support), and
+ to true. It also
+ includes glxinfo and firefox in the system packages list.
+
+
diff --git a/nixos/doc/manual/configuration/profiles/hardened.xml b/nixos/doc/manual/configuration/profiles/hardened.xml
new file mode 100644
index 0000000000000000000000000000000000000000..dc83fc837e2a34c207d27297daeb4abe0775ef61
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles/hardened.xml
@@ -0,0 +1,24 @@
+
+ Hardened
+
+
+ A profile with most (vanilla) hardening options enabled by default,
+ potentially at the cost of features and performance.
+
+
+
+ This includes a hardened kernel, and limiting the system information
+ available to processes through the /sys and
+ /proc filesystems. It also disables the User Namespaces
+ feature of the kernel, which stops Nix from being able to build anything
+ (this particular setting can be overriden via
+ ). See the
+
+ profile source for further detail on which settings are altered.
+
+
diff --git a/nixos/doc/manual/configuration/profiles/headless.xml b/nixos/doc/manual/configuration/profiles/headless.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1b64497ebf7f10d8b68c57868514784d3f8441fd
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles/headless.xml
@@ -0,0 +1,19 @@
+
+ Headless
+
+
+ Common configuration for headless machines (e.g., Amazon EC2 instances).
+
+
+
+ Disables sound,
+ vesa, serial consoles,
+ emergency mode,
+ grub splash images
+ and configures the kernel to reboot automatically on panic.
+
+
diff --git a/nixos/doc/manual/configuration/profiles/installation-device.xml b/nixos/doc/manual/configuration/profiles/installation-device.xml
new file mode 100644
index 0000000000000000000000000000000000000000..3dcdf403d89d48c56ed3cbabbffda7dff8332d34
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles/installation-device.xml
@@ -0,0 +1,38 @@
+
+ Installation Device
+
+
+ Provides a basic configuration for installation devices like CDs. This means
+ enabling hardware scans, using the
+ Clone Config profile to guarantee
+ /etc/nixos/configuration.nix exists (for
+ nixos-rebuild to work), a copy of the Nixpkgs channel
+ snapshot used to create the install media.
+
+
+
+ Additionally, documentation for
+ Nixpkgs and NixOS
+ are forcefully enabled (to override the
+ Minimal profile preference); the
+ NixOS manual is shown automatically on TTY 8, sudo and udisks are disabled.
+ Autologin is enabled as root.
+
+
+
+ A message is shown to the user to start a display manager if needed, ssh with
+ are enabled (but
+ doesn't autostart). WPA Supplicant is also enabled without autostart.
+
+
+
+ Finally, vim is installed, root is set to not have a password, the kernel is
+ made more silent for remote public IP installs, and several settings are
+ tweaked so that the installer has a better chance of succeeding under
+ low-memory environments.
+
+
diff --git a/nixos/doc/manual/configuration/profiles/minimal.xml b/nixos/doc/manual/configuration/profiles/minimal.xml
new file mode 100644
index 0000000000000000000000000000000000000000..179f2d0be64b34062dc9de0fe52d0bbfc4b682aa
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles/minimal.xml
@@ -0,0 +1,17 @@
+
+ Minimal
+
+
+ This profile defines a small NixOS configuration. It does not contain any
+ graphical stuff. It's a very short file that enables
+ noXlibs, sets
+ i18n.supportedLocales to
+ only support the user-selected locale,
+ disables packages' documentation
+ , and disables sound.
+
+
diff --git a/nixos/doc/manual/configuration/profiles/qemu-guest.xml b/nixos/doc/manual/configuration/profiles/qemu-guest.xml
new file mode 100644
index 0000000000000000000000000000000000000000..5d055c45d2d836fd7ee383832a1be48b57340c41
--- /dev/null
+++ b/nixos/doc/manual/configuration/profiles/qemu-guest.xml
@@ -0,0 +1,18 @@
+
+ QEMU Guest
+
+
+ This profile contains common configuration for virtual machines running under
+ QEMU (using virtio).
+
+
+
+ It makes virtio modules available on the initrd, sets the system time from
+ the hardware clock to work around a bug in qemu-kvm, and
+ enables rngd.
+
+
diff --git a/nixos/doc/manual/configuration/wireless.xml b/nixos/doc/manual/configuration/wireless.xml
index 999447234ad1f276f24c092b1969a6f02c3de411..7c7b3b4a65a5d9b63d0519b640fbc33e581b9973 100644
--- a/nixos/doc/manual/configuration/wireless.xml
+++ b/nixos/doc/manual/configuration/wireless.xml
@@ -23,18 +23,36 @@
psk = "abcdefgh";
};
"free.wifi" = {};
-}
+};
Be aware that keys will be written to the nix store in plaintext! When no
networks are set, it will default to using a configuration file at
/etc/wpa_supplicant.conf. You should edit this file
- yourself to define wireless networks, WPA keys and so on (see
- wpa_supplicant.conf(5)).
+ yourself to define wireless networks, WPA keys and so on (see
+ wpa_supplicant.conf
+ 5).
- If you are using WPA2 the wpa_passphrase tool might be
- useful to generate the wpa_supplicant.conf.
+ If you are using WPA2 you can generate pskRaw key using
+ wpa_passphrase:
+
+$ wpa_passphrase ESSID PSK
+network={
+ ssid="echelon"
+ #psk="abcdefgh"
+ psk=dca6d6ed41f4ab5a984c9f55f6f66d4efdc720ebf66959810f4329bb391c5435
+}
+
+
+ = {
+ echelon = {
+ pskRaw = "dca6d6ed41f4ab5a984c9f55f6f66d4efdc720ebf66959810f4329bb391c5435";
+ };
+}
+
+ or you can use it to directly generate the
+ wpa_supplicant.conf:
# wpa_passphrase ESSID PSK > /etc/wpa_supplicant.conf
After you have edited the wpa_supplicant.conf, you need to
diff --git a/nixos/doc/manual/configuration/x-windows.xml b/nixos/doc/manual/configuration/x-windows.xml
index 948b35209b7902a39c433e9bf065216d44d57bfb..798d1fbdfd8573ccf14f30502916114476cfaa28 100644
--- a/nixos/doc/manual/configuration/x-windows.xml
+++ b/nixos/doc/manual/configuration/x-windows.xml
@@ -35,11 +35,11 @@
NixOS’s default display manager (the program that
- provides a graphical login prompt and manages the X server) is SLiM. You can
- select an alternative one by picking one of the following lines:
+ provides a graphical login prompt and manages the X server) is LightDM. You
+ can select an alternative one by picking one of the following lines:
= true;
- = true;
+ = true;
@@ -60,8 +60,41 @@
# systemctl start display-manager.service
-
- NVIDIA Graphics Cards
+
+ On 64-bit systems, if you want OpenGL for 32-bit programs such as in Wine,
+ you should also set the following:
+
+ = true;
+
+
+
+ Auto-login
+
+ The x11 login screen can be skipped entirely, automatically logging you into
+ your window manager and desktop environment when you boot your computer.
+
+
+ This is especially helpful if you have disk encryption enabled. Since you
+ already have to provide a password to decrypt your disk, entering a second
+ password to login can be redundant.
+
+
+ To enable auto-login, you need to define your default window manager and
+ desktop environment. If you wanted no desktop environment and i3 as your your
+ window manager, you'd define:
+
+ = "none";
+ = "i3";
+
+ And, finally, to enable auto-login for a user johndoe:
+
+ = true;
+ = "johndoe";
+
+
+
+
+ Proprietary NVIDIA drivers
NVIDIA provides a proprietary driver for its graphics cards that has better
3D performance than the X.org drivers. It is not enabled by default because
@@ -71,6 +104,7 @@
Or if you have an older card, you may have to use one of the legacy drivers:
+ = [ "nvidiaLegacy390" ];
= [ "nvidiaLegacy340" ];
= [ "nvidiaLegacy304" ];
= [ "nvidiaLegacy173" ];
@@ -78,16 +112,9 @@
You may need to reboot after enabling this driver to prevent a clash with
other kernel modules.
-
- On 64-bit systems, if you want full acceleration for 32-bit programs such as
- Wine, you should also set the following:
-
- = true;
-
-
-
- AMD Graphics Cards
+
+ Proprietary AMD drivers
AMD provides a proprietary driver for its graphics cards that has better 3D
performance than the X.org drivers. It is not enabled by default because
@@ -99,14 +126,11 @@
other kernel modules.
- On 64-bit systems, if you want full acceleration for 32-bit programs such as
- Wine, you should also set the following:
-
- = true;
-
+ Note: for recent AMD GPUs you most likely want to keep either the defaults
+ or "amdgpu" (both free).
-
+ Touchpads
Support for Synaptics touchpads (found in many laptops such as the Dell
@@ -123,7 +147,7 @@
since NixOS 17.09.
-
+ GTK/Qt themes
GTK themes can be installed either to user profile or system-wide (via
diff --git a/nixos/doc/manual/configuration/xfce.xml b/nixos/doc/manual/configuration/xfce.xml
index 40e61d2bd691ff360ad2767e46a3ebe3e4d4c677..77d5d963279212513373e00d286e963aba78a418 100644
--- a/nixos/doc/manual/configuration/xfce.xml
+++ b/nixos/doc/manual/configuration/xfce.xml
@@ -31,7 +31,7 @@
(system wide), put them into your
.
-
+ Thunar Volume Support
To enable Thunar volume support, put
@@ -41,7 +41,7 @@
into your configuration.nix.
-
+ Polkit Authentication Agent
There is no authentication agent automatically installed alongside Xfce. To
@@ -50,7 +50,7 @@
and login did the trick.
-
+ Troubleshooting
Even after enabling udisks2, volume management might not work. Thunar and/or
diff --git a/nixos/doc/manual/default.nix b/nixos/doc/manual/default.nix
index be28c2c17afd83bf87fd8693609a26984dc14724..7fc0ad702f8495bdbd639697d56618b54d37acb8 100644
--- a/nixos/doc/manual/default.nix
+++ b/nixos/doc/manual/default.nix
@@ -90,7 +90,9 @@ let
fi
${buildPackages.libxslt.bin}/bin/xsltproc \
--stringparam revision '${revision}' \
- -o $out ${./options-to-docbook.xsl} $optionsXML
+ -o intermediate.xml ${./options-to-docbook.xsl} $optionsXML
+ ${buildPackages.libxslt.bin}/bin/xsltproc \
+ -o "$out" ${./postprocess-option-descriptions.xsl} intermediate.xml
'';
sources = lib.sourceFilesBySuffices ./. [".xml"];
@@ -250,7 +252,7 @@ in rec {
''; # */
# Generate the NixOS manual.
- manual = runCommand "nixos-manual"
+ manualHTML = runCommand "nixos-manual-html"
{ inherit sources;
nativeBuildInputs = [ buildPackages.libxml2.bin buildPackages.libxslt.bin ];
meta.description = "The NixOS manual in HTML format";
@@ -263,9 +265,13 @@ in rec {
xsltproc \
${manualXsltprocOptions} \
--stringparam target.database.document "${olinkDB}/olinkdb.xml" \
+ --stringparam id.warnings "1" \
--nonet --output $dst/ \
${docbook_xsl_ns}/xml/xsl/docbook/xhtml/chunktoc.xsl \
- ${manual-combined}/manual-combined.xml
+ ${manual-combined}/manual-combined.xml \
+ |& tee xsltproc.out
+ grep "^ID recommended on" xsltproc.out &>/dev/null && echo "error: some IDs are missing" && false
+ rm xsltproc.out
mkdir -p $dst/images/callouts
cp ${docbook_xsl_ns}/xml/xsl/docbook/images/callouts/*.svg $dst/images/callouts/
@@ -279,6 +285,11 @@ in rec {
echo "doc manual $dst" >> $out/nix-support/hydra-build-products
''; # */
+ # Alias for backward compatibility. TODO(@oxij): remove eventually.
+ manual = manualHTML;
+
+ # Index page of the NixOS manual.
+ manualHTMLIndex = "${manualHTML}/share/doc/nixos/index.html";
manualEpub = runCommand "nixos-manual-epub"
{ inherit sources;
@@ -319,6 +330,7 @@ in rec {
# Generate manpages.
mkdir -p $out/share/man
xsltproc --nonet \
+ --maxdepth 6000 \
--param man.output.in.separate.dir 1 \
--param man.output.base.dir "'$out/share/man/'" \
--param man.endnotes.are.numbered 0 \
diff --git a/nixos/doc/manual/development/assertions.xml b/nixos/doc/manual/development/assertions.xml
index 17c38ffcc717b219b5d68f6eb5c650febcc0f773..32f90cf2e7c47acabb01d3c35a8542cb80380526 100644
--- a/nixos/doc/manual/development/assertions.xml
+++ b/nixos/doc/manual/development/assertions.xml
@@ -20,7 +20,7 @@
NixOS module system.
-
+ Warnings
@@ -44,7 +44,7 @@
-
+ Assertions
diff --git a/nixos/doc/manual/development/building-parts.xml b/nixos/doc/manual/development/building-parts.xml
index eaffc0ef47c2f0af4b809ec5ce4761a3d9098788..b4791b72970f68de495cd1536fa90598d35bebbf 100644
--- a/nixos/doc/manual/development/building-parts.xml
+++ b/nixos/doc/manual/development/building-parts.xml
@@ -34,7 +34,7 @@ $ nix-build -A system
- system.build.manual.manual
+ system.build.manual.manualHTML
diff --git a/nixos/doc/manual/development/development.xml b/nixos/doc/manual/development/development.xml
index 03dee6ff09bb958fdc087c5ae2bd24fd69ca4f1d..43f511b3e96ba710618666983de95efad8cbaf9b 100644
--- a/nixos/doc/manual/development/development.xml
+++ b/nixos/doc/manual/development/development.xml
@@ -4,7 +4,7 @@
version="5.0"
xml:id="ch-development">
Development
-
+
This chapter describes how you can modify and extend NixOS.
diff --git a/nixos/doc/manual/development/option-def.xml b/nixos/doc/manual/development/option-def.xml
index 580a5afd58cdc9452a58e7b9ad44350d5e0410ce..50a705d0cb8ed717c54c780e897e5ae2cbf030a4 100644
--- a/nixos/doc/manual/development/option-def.xml
+++ b/nixos/doc/manual/development/option-def.xml
@@ -17,7 +17,7 @@ config = {
definitions in a property to achieve certain effects:
-
+ Delaying Conditionals
If a set of option definitions is conditional on the value of another
@@ -59,7 +59,7 @@ config = {
-
+ Setting Priorities
A module can override the definitions of an option in other modules by
@@ -76,7 +76,7 @@ services.openssh.enable = mkOverride 10 false;
-
+ Merging Configurations
In conjunction with mkIf, it is sometimes useful for a
diff --git a/nixos/doc/manual/development/option-types.xml b/nixos/doc/manual/development/option-types.xml
index 47dd09158e91e4d935fcf92de11d9a886f61e235..069cc36573d847d5aeb3ab5b17131e3a9384bf0c 100644
--- a/nixos/doc/manual/development/option-types.xml
+++ b/nixos/doc/manual/development/option-types.xml
@@ -11,7 +11,7 @@
value definitions.
-
+ Basic Types
@@ -106,7 +106,7 @@
-
+ types.ints.{u8, u16, u32}
@@ -131,6 +131,17 @@
+
+
+ types.port
+
+
+
+ A port number. This type is an alias to
+ types.ints.u16.
+
+
+
@@ -196,7 +207,7 @@
-
+ Value Types
@@ -257,7 +268,7 @@
-
+ Composed Types
@@ -483,7 +494,7 @@ config.mod.two = { foo = 2; bar = "two"; };
-
+ Extending types
@@ -501,7 +512,7 @@ config.mod.two = { foo = 2; bar = "two"; };
The function to type check the value. Takes a value as parameter and
return a boolean. It is possible to extend a type check with the
addCheck function
- (), or to fully
override the check function
().
@@ -511,7 +522,7 @@ config.mod.two = { foo = 2; bar = "two"; };
byte = mkOption {
description = "An integer between 0 and 255.";
- type = addCheck types.int (x: x >= 0 && x <= 255);
+ type = types.addCheck types.int (x: x >= 0 && x <= 255);
};
@@ -543,14 +554,14 @@ nixThings = mkOption {
-
+ Custom Types
Custom types can be created with the mkOptionType
function. As type creation includes some more complex topics such as
submodule handling, it is recommended to get familiar with
- types.nix
code before creating a new type.
diff --git a/nixos/doc/manual/development/releases.xml b/nixos/doc/manual/development/releases.xml
index d4e5ff3f4312e713d3ff445e51452cab743ea908..f45fecd16c356c09ea70b33ed52be8d2d7f0cb51 100755
--- a/nixos/doc/manual/development/releases.xml
+++ b/nixos/doc/manual/development/releases.xml
@@ -60,13 +60,6 @@
Make sure a channel is created at http://nixos.org/channels/.
-
-
-
- Let a GitHub nixpkgs admin lock the branch on github for you. (so
- developers can’t force push)
-
-
@@ -182,6 +175,12 @@
git tag -s -a -m "Release 15.09" 15.09
+
+
+ Update "Chapter 4. Upgrading NixOS" section of the manual to match
+ new stable release version.
+
+
Update http://nixos.org/nixos/download.html and
diff --git a/nixos/doc/manual/development/running-nixos-tests-interactively.xml b/nixos/doc/manual/development/running-nixos-tests-interactively.xml
index 862b364a6d79b5b450d85aaed20e1aa6ad9c62b5..c15ad448317fdb60d7bdce65fe7daebdc159d49c 100644
--- a/nixos/doc/manual/development/running-nixos-tests-interactively.xml
+++ b/nixos/doc/manual/development/running-nixos-tests-interactively.xml
@@ -19,6 +19,7 @@ starting VDE switch for network 1
> startAll
> testScript
> $machine->succeed("touch /tmp/foo")
+> print($machine->succeed("pwd")) # Show stdout of command
The function testScript executes the entire test script
and drops you back into the test driver command line upon its completion.
@@ -33,8 +34,11 @@ $ nix-build nixos/tests/login.nix -A driver
$ ./result/bin/nixos-run-vms
The script nixos-run-vms starts the virtual machines
- defined by test. The root file system of the VMs is created on the fly and
- kept across VM restarts in
- ./hostname.qcow2.
+ defined by test.
+
+
+
+ The machine state is kept across VM restarts in
+ /tmp/vm-state-machinename.
diff --git a/nixos/doc/manual/development/writing-documentation.xml b/nixos/doc/manual/development/writing-documentation.xml
index 8ecdd1c770f2dce348ceac88480e74d9d7635a15..2183937ad0daac02a154122566c5b042308b41cc 100644
--- a/nixos/doc/manual/development/writing-documentation.xml
+++ b/nixos/doc/manual/development/writing-documentation.xml
@@ -10,7 +10,7 @@
sources and presenting it in an accessible style would be a worthy
contribution to the project.
-
+ Building the Manual
@@ -42,7 +42,7 @@
./result/share/doc/nixos/index.html.
-
+ Editing DocBook XML
@@ -76,7 +76,7 @@
Issue and someone will handle the conversion to XML for you.
-
+ Creating a Topic
@@ -128,7 +128,7 @@
-
+ Adding a Topic to the Book
diff --git a/nixos/doc/manual/development/writing-nixos-tests.xml b/nixos/doc/manual/development/writing-nixos-tests.xml
index 5935fbc049bde683dacf09f14bfa2a3bf1cd4c7e..4a2615c9407b0174df5938a3891306b11e9acb22 100644
--- a/nixos/doc/manual/development/writing-nixos-tests.xml
+++ b/nixos/doc/manual/development/writing-nixos-tests.xml
@@ -108,7 +108,7 @@ xlink:href="https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/virtualis
$machine->start;
$machine->waitForUnit("default.target");
-$machine->succeed("uname") =~ /Linux/;
+$machine->succeed("uname") =~ /Linux/ or die;
The first line is actually unnecessary; machines are implicitly started when
you first execute an action on them (such as waitForUnit
diff --git a/nixos/doc/manual/installation/installation.xml b/nixos/doc/manual/installation/installation.xml
index d4276be95d6893df24151ab1f63ecc5652c6b011..2901f462dee04ae2e51e0f59a33093602a837dbc 100644
--- a/nixos/doc/manual/installation/installation.xml
+++ b/nixos/doc/manual/installation/installation.xml
@@ -4,7 +4,7 @@
version="5.0"
xml:id="ch-installation">
Installation
-
+
This section describes how to obtain, install, and configure NixOS for
first-time use.
diff --git a/nixos/doc/manual/installation/installing-behind-a-proxy.xml b/nixos/doc/manual/installation/installing-behind-a-proxy.xml
new file mode 100644
index 0000000000000000000000000000000000000000..8f9baff44b51e3d85fe0d5fcae1b75b14114f709
--- /dev/null
+++ b/nixos/doc/manual/installation/installing-behind-a-proxy.xml
@@ -0,0 +1,48 @@
+
+ Installing behind a proxy
+
+
+ To install NixOS behind a proxy, do the following before running
+ nixos-install.
+
+
+
+
+
+ Update proxy configuration in
+ /mnt/etc/nixos/configuration.nix to keep the internet
+ accessible after reboot.
+
+
+networking.proxy.default = "http://user:password@proxy:port/";
+networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
+
+
+
+
+ Setup the proxy environment variables in the shell where you are running
+ nixos-install.
+
+
+# proxy_url="http://user:password@proxy:port/"
+# export http_proxy="$proxy_url"
+# export HTTP_PROXY="$proxy_url"
+# export https_proxy="$proxy_url"
+# export HTTPS_PROXY="$proxy_url"
+
+
+
+
+
+
+ If you are switching networks with different proxy configurations, use the
+ nesting.clone option in
+ configuration.nix to switch proxies at runtime. Refer to
+ for more information.
+
+
+
diff --git a/nixos/doc/manual/installation/installing-usb.xml b/nixos/doc/manual/installation/installing-usb.xml
index c5934111749cf7dd75dbd9ddd181e4b2de3139b8..c0372e8ebd9bb766eed9178298657cfdba7e40e4 100644
--- a/nixos/doc/manual/installation/installing-usb.xml
+++ b/nixos/doc/manual/installation/installing-usb.xml
@@ -9,13 +9,12 @@
For systems without CD drive, the NixOS live CD can be booted from a USB
stick. You can use the dd utility to write the image:
dd if=path-to-image
- of=/dev/sdb. Be careful about specifying
+ of=/dev/sdX. Be careful about specifying
the correct drive; you can use the lsblk command to get a
list of block devices.
-
-
-
- On macOS:
+
+ On macOS
+
$ diskutil list
[..]
@@ -24,45 +23,18 @@ $ diskutil list
[..]
$ diskutil unmountDisk diskN
Unmount of all volumes on diskN was successful
-$ sudo dd bs=1m if=nix.iso of=/dev/rdiskN
+$ sudo dd if=nix.iso of=/dev/rdiskN
- Using the 'raw' rdiskN device instead of
- diskN completes in minutes instead of hours. After
- dd completes, a GUI dialog "The disk you inserted was not
- readable by this computer" will pop up, which can be ignored.
+ Using the 'raw' rdiskN device instead of
+ diskN completes in minutes instead of hours. After
+ dd completes, a GUI dialog "The disk you inserted was
+ not readable by this computer" will pop up, which can be ignored.
+
+
The dd utility will write the image verbatim to the drive,
making it the recommended option for both UEFI and non-UEFI installations.
- For non-UEFI installations, you can alternatively use
- unetbootin. If
- you cannot use dd for a UEFI installation, you can also
- mount the ISO, copy its contents verbatim to your drive, then either:
-
-
-
- Change the label of the disk partition to the label of the ISO (visible
- with the blkid command), or
-
-
-
-
- Edit loader/entries/nixos-livecd.conf on the drive
- and change the root= field in the
- options line to point to your drive (see the
- documentation on root= in
-
- the kernel documentation for more details).
-
-
-
-
- If you want to load the contents of the ISO to ram after bootin (So you
- can remove the stick after bootup) you can append the parameter
- copytoram to the options field.
-
-
-
diff --git a/nixos/doc/manual/installation/installing-virtualbox-guest.xml b/nixos/doc/manual/installation/installing-virtualbox-guest.xml
index da78b480f5aa90f07fbd0c8aab2ae7c92aa58972..5c86eacfbf45c509e21815a56c749a41151ab952 100644
--- a/nixos/doc/manual/installation/installing-virtualbox-guest.xml
+++ b/nixos/doc/manual/installation/installing-virtualbox-guest.xml
@@ -77,18 +77,22 @@
Shared folders can be given a name and a path in the host system in the
VirtualBox settings (Machine / Settings / Shared Folders, then click on the
"Add" icon). Add the following to the
- /etc/nixos/configuration.nix to auto-mount them:
+ /etc/nixos/configuration.nix to auto-mount them. If you do
+ not add "nofail", the system will no boot properly. The
+ same goes for disabling rngd which is normally used to get
+ randomness but this does not work in virtual machines.
{ config, pkgs, ...} :
{
+ security.rngd.enable = false; // otherwise vm will not boot
...
fileSystems."/virtualboxshare" = {
fsType = "vboxsf";
device = "nameofthesharedfolder";
- options = [ "rw" ];
+ options = [ "rw" "nofail" ];
};
}
diff --git a/nixos/doc/manual/installation/installing.xml b/nixos/doc/manual/installation/installing.xml
index 6f8e0f613b198aa0d67d40ebc2cc1e10e7d9a1f6..9687c21a01e6c8a7c6c691bcf523aa69b2035836 100644
--- a/nixos/doc/manual/installation/installing.xml
+++ b/nixos/doc/manual/installation/installing.xml
@@ -4,60 +4,46 @@
version="5.0"
xml:id="sec-installation">
Installing NixOS
-
- NixOS can be installed on BIOS or UEFI systems. The procedure for a UEFI
- installation is by and large the same as a BIOS installation. The differences
- are mentioned in the steps that follow.
-
-
-
-
- Boot from the CD.
-
-
-
-
- UEFI systems
-
-
-
- You should boot the live CD in UEFI mode (consult your specific
- hardware's documentation for instructions). You may find the
- rEFInd boot
- manager useful.
-
-
-
-
-
-
-
- The CD contains a basic NixOS installation. (It also contains Memtest86+,
- useful if you want to test new hardware). When it’s finished booting, it
- should have detected most of your hardware.
-
-
-
-
- The NixOS manual is available on virtual console 8 (press Alt+F8 to access)
- or by running nixos-help.
-
-
-
-
- You get logged in as root (with empty password).
-
-
-
-
- If you downloaded the graphical ISO image, you can run systemctl
- start display-manager to start KDE. If you want to continue on
- the terminal, you can use loadkeys to switch to your
- preferred keyboard layout. (We even provide neo2 via loadkeys de
- neo!)
-
-
-
+
+ Booting the system
+
+
+ NixOS can be installed on BIOS or UEFI systems. The procedure for a UEFI
+ installation is by and large the same as a BIOS installation. The
+ differences are mentioned in the steps that follow.
+
+
+
+ The installation media can be burned to a CD, or now more commonly, "burned"
+ to a USB drive (see ).
+
+
+
+ The installation media contains a basic NixOS installation. When it’s
+ finished booting, it should have detected most of your hardware.
+
+
+
+ The NixOS manual is available on virtual console 8 (press Alt+F8 to access)
+ or by running nixos-help.
+
+
+
+ You are logged-in automatically as root. (The
+ root user account has an empty password.)
+
+
+
+ If you downloaded the graphical ISO image, you can run systemctl
+ start display-manager to start KDE. If you want to continue on the
+ terminal, you can use loadkeys to switch to your
+ preferred keyboard layout. (We even provide neo2 via loadkeys de
+ neo!)
+
+
+
+ Networking in the installer
+
The boot process should have brought up networking (check ip
a). Networking is necessary for the installer, since it will
@@ -65,58 +51,165 @@
binaries). It’s best if you have a DHCP server on your network. Otherwise
configure networking manually using ifconfig.
+
To manually configure the network on the graphical installer, first disable
- network-manager with systemctl stop network-manager.
+ network-manager with systemctl stop NetworkManager.
+
To manually configure the wifi on the minimal installer, run
wpa_supplicant -B -i interface -c <(wpa_passphrase 'SSID'
'key').
-
-
+
If you would like to continue the installation from a different machine you
need to activate the SSH daemon via systemctl start
sshd. In order to be able to login you also need to set a
password for root using passwd.
-
-
+
+
+
+ Partitioning and formatting
+
+
+ The NixOS installer doesn’t do any partitioning or formatting, so you need
+ to do that yourself.
+
+
+
+ The NixOS installer ships with multiple partitioning tools. The examples
+ below use parted, but also provides
+ fdisk, gdisk,
+ cfdisk, and cgdisk.
+
+
+
+ The recommended partition scheme differs depending if the computer uses
+ Legacy Boot or UEFI.
+
+
+
+ UEFI (GPT)
+
- The NixOS installer doesn’t do any partitioning or formatting yet, so you
- need to do that yourself. Use the following commands:
-
+ Here's an example partition scheme for UEFI, using
+ /dev/sda as the device.
+
+
+ You can safely ignore parted's informational message
+ about needing to update /etc/fstab.
+
+
+
+
+
+
- For partitioning: fdisk.
-
-# fdisk /dev/sda # (or whatever device you want to install on)
--- for UEFI systems only
-> n # (create a new partition for /boot)
-> 3 # (make it a partition number 3)
-> # (press enter to accept the default)
-> +512M # (the size of the UEFI boot partition)
-> t # (change the partition type ...)
-> 3 # (... of the boot partition ...)
-> 1 # (... to 'UEFI System')
--- for BIOS or UEFI systems
-> n # (create a new partition for /swap)
-> 2 # (make it a partition number 2)
-> # (press enter to accept the default)
-> +8G # (the size of the swap partition, set to whatever you like)
-> n # (create a new partition for /)
-> 1 # (make it a partition number 1)
-> # (press enter to accept the default)
-> # (press enter to accept the default and use the rest of the remaining space)
-> a # (make the partition bootable)
-> x # (enter expert mode)
-> f # (fix up the partition ordering)
-> r # (exit expert mode)
-> w # (write the partition table to disk and exit)
+ Create a GPT partition table.
+# parted /dev/sda -- mklabel gpt
+
+
+
+
+ Add the root partition. This will fill the disk
+ except for the end part, where the swap will live, and the space left in
+ front (512MiB) which will be used by the boot partition.
+# parted /dev/sda -- mkpart primary 512MiB -8GiB
+
+
+
+
+ Next, add a swap partition. The size required will
+ vary according to needs, here a 8GiB one is created.
+# parted /dev/sda -- mkpart primary linux-swap -8GiB 100%
+
+
+ The swap partition size rules are no different than for other Linux
+ distributions.
+
+
+
+
+
+
+ Finally, the boot partition. NixOS by default uses
+ the ESP (EFI system partition) as its /boot
+ partition. It uses the initially reserved 512MiB at the start of the
+ disk.
+# parted /dev/sda -- mkpart ESP fat32 1MiB 512MiB
+# parted /dev/sda -- set 3 boot on
+
+
+
+
+
+
+ Once complete, you can follow with
+ .
+
+
+
+
+ Legacy Boot (MBR)
+
+
+ Here's an example partition scheme for Legacy Boot, using
+ /dev/sda as the device.
+
+
+ You can safely ignore parted's informational message
+ about needing to update /etc/fstab.
+
+
+
+
+
+
+
+
+ Create a MBR partition table.
+# parted /dev/sda -- mklabel msdos
+
+
+
+
+ Add the root partition. This will fill the the disk
+ except for the end part, where the swap will live.
+# parted /dev/sda -- mkpart primary 1MiB -8GiB
+
+
+
+
+ Finally, add a swap partition. The size required
+ will vary according to needs, here a 8GiB one is created.
+# parted /dev/sda -- mkpart primary linux-swap -8GiB 100%
+
+
+ The swap partition size rules are no different than for other Linux
+ distributions.
+
+
+
+
+
+
+ Once complete, you can follow with
+ .
+
+
+
+
+ Formatting
+
+
+ Use the following commands:
+
For initialising Ext4 partitions: mkfs.ext4. It is
@@ -169,242 +262,253 @@
-
-
-
- Mount the target file system on which NixOS should be installed on
- /mnt, e.g.
+
+
+
+ Installing
+
+
+
+
+ Mount the target file system on which NixOS should be installed on
+ /mnt, e.g.
# mount /dev/disk/by-label/nixos /mnt
-
-
-
-
-
-
- UEFI systems
-
-
-
- Mount the boot file system on /mnt/boot, e.g.
+
+
+
+
+
+
+ UEFI systems
+
+
+
+ Mount the boot file system on /mnt/boot, e.g.
# mkdir -p /mnt/boot
# mount /dev/disk/by-label/boot /mnt/boot
-
-
-
-
-
-
-
- If your machine has a limited amount of memory, you may want to activate
- swap devices now (swapon
- device). The installer (or rather, the
- build actions that it may spawn) may need quite a bit of RAM, depending on
- your configuration.
+
+
+
+
+
+
+
+ If your machine has a limited amount of memory, you may want to activate
+ swap devices now (swapon
+ device). The installer (or rather,
+ the build actions that it may spawn) may need quite a bit of RAM,
+ depending on your configuration.
# swapon /dev/sda2
-
-
-
-
- You now need to create a file
- /mnt/etc/nixos/configuration.nix that specifies the
- intended configuration of the system. This is because NixOS has a
- declarative configuration model: you create or edit a
- description of the desired configuration of your system, and then NixOS
- takes care of making it happen. The syntax of the NixOS configuration file
- is described in , while a list of
- available configuration options appears in
-
+
+
+
+ You now need to create a file
+ /mnt/etc/nixos/configuration.nix that specifies the
+ intended configuration of the system. This is because NixOS has a
+ declarative configuration model: you create or edit a
+ description of the desired configuration of your system, and then NixOS
+ takes care of making it happen. The syntax of the NixOS configuration file
+ is described in , while a list
+ of available configuration options appears in
+ . A minimal example is shown in
- .
-
-
- The command nixos-generate-config can generate an
- initial configuration file for you:
+
+
+ The command nixos-generate-config can generate an
+ initial configuration file for you:
# nixos-generate-config --root /mnt
- You should then edit /mnt/etc/nixos/configuration.nix
- to suit your needs:
+ You should then edit /mnt/etc/nixos/configuration.nix
+ to suit your needs:
# nano /mnt/etc/nixos/configuration.nix
- If you’re using the graphical ISO image, other editors may be available
- (such as vim). If you have network access, you can also
- install other editors — for instance, you can install Emacs by running
- nix-env -i emacs.
-
-
-
-
- BIOS systems
-
-
-
- You must set the option
- to specify on which disk
- the GRUB boot loader is to be installed. Without it, NixOS cannot boot.
-
-
-
-
-
- UEFI systems
-
-
-
- You must set the option
- to
- true. nixos-generate-config should
- do this automatically for new configurations when booted in UEFI mode.
-
-
- You may want to look at the options starting with
-
- and
-
- as well.
-
-
-
-
-
- If there are other operating systems running on the machine before
- installing NixOS, the
- option can be set to true to automatically add them to
- the grub menu.
-
-
- Another critical option is , specifying the
- file systems that need to be mounted by NixOS. However, you typically
- don’t need to set it yourself, because
- nixos-generate-config sets it automatically in
- /mnt/etc/nixos/hardware-configuration.nix from your
- currently mounted file systems. (The configuration file
- hardware-configuration.nix is included from
- configuration.nix and will be overwritten by future
- invocations of nixos-generate-config; thus, you
- generally should not modify it.)
-
-
+ If you’re using the graphical ISO image, other editors may be available
+ (such as vim). If you have network access, you can also
+ install other editors — for instance, you can install Emacs by running
+ nix-env -i emacs.
+
+
+
+
+ BIOS systems
+
+
+
+ You must set the option
+ to specify on which disk
+ the GRUB boot loader is to be installed. Without it, NixOS cannot boot.
+
+
+
+
+
+ UEFI systems
+
+
+
+ You must set the option
+ to
+ true. nixos-generate-config
+ should do this automatically for new configurations when booted in UEFI
+ mode.
+
+
+ You may want to look at the options starting with
+
+ and
+
+ as well.
+
+
+
+
- Depending on your hardware configuration or type of file system, you may
- need to set the option to
- include the kernel modules that are necessary for mounting the root file
- system, otherwise the installed system will not be able to boot. (If this
- happens, boot from the CD again, mount the target file system on
- /mnt, fix
- /mnt/etc/nixos/configuration.nix and rerun
- nixos-install.) In most cases,
- nixos-generate-config will figure out the required
- modules.
+ If there are other operating systems running on the machine before
+ installing NixOS, the
+ option can be set to true to automatically add them to
+ the grub menu.
-
-
-
-
- Do the installation:
+
+ If you need to configure networking for your machine the configuration
+ options are described in .
+
+
+ Another critical option is , specifying the
+ file systems that need to be mounted by NixOS. However, you typically
+ don’t need to set it yourself, because
+ nixos-generate-config sets it automatically in
+ /mnt/etc/nixos/hardware-configuration.nix from your
+ currently mounted file systems. (The configuration file
+ hardware-configuration.nix is included from
+ configuration.nix and will be overwritten by future
+ invocations of nixos-generate-config; thus, you
+ generally should not modify it.)
+
+
+
+ Depending on your hardware configuration or type of file system, you may
+ need to set the option to
+ include the kernel modules that are necessary for mounting the root file
+ system, otherwise the installed system will not be able to boot. (If this
+ happens, boot from the installation media again, mount the target file
+ system on /mnt, fix
+ /mnt/etc/nixos/configuration.nix and rerun
+ nixos-install.) In most cases,
+ nixos-generate-config will figure out the required
+ modules.
+
+
+
+
+
+ Do the installation:
# nixos-install
- Cross fingers. If this fails due to a temporary problem (such as a network
- issue while downloading binaries from the NixOS binary cache), you can just
- re-run nixos-install. Otherwise, fix your
- configuration.nix and then re-run
- nixos-install.
-
-
- As the last step, nixos-install will ask you to set the
- password for the root user, e.g.
+ Cross fingers. If this fails due to a temporary problem (such as a network
+ issue while downloading binaries from the NixOS binary cache), you can
+ just re-run nixos-install. Otherwise, fix your
+ configuration.nix and then re-run
+ nixos-install.
+
+
+ As the last step, nixos-install will ask you to set the
+ password for the root user, e.g.
setting root password...
Enter new UNIX password: ***
-Retype new UNIX password: ***
-
-
-
- For unattended installations, it is possible to use
- nixos-install --no-root-passwd
- in order to disable the password prompt entirely.
-
-
-
-
-
-
- If everything went well:
+Retype new UNIX password: ***
+
+
+ For unattended installations, it is possible to use
+ nixos-install --no-root-passwd in order to disable
+ the password prompt entirely.
+
+
+
+
+
+
+ If everything went well:
- # reboot
-
-
-
-
- You should now be able to boot into the installed NixOS. The GRUB boot menu
- shows a list of available configurations (initially
- just one). Every time you change the NixOS configuration (see
-
+
+
+
+
+ You should now be able to boot into the installed NixOS. The GRUB boot
+ menu shows a list of available configurations
+ (initially just one). Every time you change the NixOS configuration (see
+ Changing Configuration
- ), a new item is added to the menu. This allows you to easily roll back to
- a previous configuration if something goes wrong.
-
-
- You should log in and change the root password with
- passwd.
-
-
- You’ll probably want to create some user accounts as well, which can be
- done with useradd:
+ ), a new item is added to the menu. This allows you to easily roll back to
+ a previous configuration if something goes wrong.
+
+
+ You should log in and change the root password with
+ passwd.
+
+
+ You’ll probably want to create some user accounts as well, which can be
+ done with useradd:
$ useradd -c 'Eelco Dolstra' -m eelco
$ passwd eelco
-
-
- You may also want to install some software. For instance,
+
+
+ You may also want to install some software. For instance,
$ nix-env -qa \*
- shows what packages are available, and
+ shows what packages are available, and
$ nix-env -i w3m
- install the w3m browser.
-
-
-
-
- To summarise, shows a typical sequence
- of commands for installing NixOS on an empty hard drive (here
- /dev/sda). w3m browser.
+
+
+
+
+
+ Installation summary
+
+
+ To summarise, shows a typical
+ sequence of commands for installing NixOS on an empty hard drive (here
+ /dev/sda). shows a
- corresponding configuration Nix expression.
-
-
- Commands for Installing NixOS on /dev/sda
-
-# fdisk /dev/sda # (or whatever device you want to install on)
--- for UEFI systems only
-> n # (create a new partition for /boot)
-> 3 # (make it a partition number 3)
-> # (press enter to accept the default)
-> +512M # (the size of the UEFI boot partition)
-> t # (change the partition type ...)
-> 3 # (... of the boot partition ...)
-> 1 # (... to 'UEFI System')
--- for BIOS or UEFI systems
-> n # (create a new partition for /swap)
-> 2 # (make it a partition number 2)
-> # (press enter to accept the default)
-> +8G # (the size of the swap partition)
-> n # (create a new partition for /)
-> 1 # (make it a partition number 1)
-> # (press enter to accept the default)
-> # (press enter to accept the default and use the rest of the remaining space)
-> a # (make the partition bootable)
-> x # (enter expert mode)
-> f # (fix up the partition ordering)
-> r # (exit expert mode)
-> w # (write the partition table to disk and exit)
+ corresponding configuration Nix expression.
+
+
+
+ Example partition schemes for NixOS on /dev/sda (MBR)
+
+# parted /dev/sda -- mklabel msdos
+# parted /dev/sda -- mkpart primary 1MiB -8GiB
+# parted /dev/sda -- mkpart primary linux-swap -8GiB 100%
+
+
+
+ Example partition schemes for NixOS on /dev/sda (UEFI)
+
+# parted /dev/sda -- mklabel gpt
+# parted /dev/sda -- mkpart primary 512MiB -8GiB
+# parted /dev/sda -- mkpart primary linux-swap -8GiB 100%
+# parted /dev/sda -- mkpart ESP fat32 1MiB 512MiB
+# parted /dev/sda -- set 3 boot on
+
+
+
+ Commands for Installing NixOS on /dev/sda
+
+ With a partitioned disk.
+
# mkfs.ext4 -L nixos /dev/sda1
# mkswap -L swap /dev/sda2
# swapon /dev/sda2
@@ -416,9 +520,11 @@ $ nix-env -i w3m
# nano /mnt/etc/nixos/configuration.nix
# nixos-install
# reboot
-
-
- NixOS Configuration
+
+
+
+
+ NixOS Configuration
{ config, pkgs, ... }: {
imports = [
@@ -438,9 +544,19 @@ $ nix-env -i w3m
services.sshd.enable = true;
}
-
-
-
-
-
+
+
+
+ Additional installation notes
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nixos/doc/manual/installation/upgrading.xml b/nixos/doc/manual/installation/upgrading.xml
index 20355812ec635e32ce6f10e84f3ace3d7e0ba004..35b4d266e12efa5c29e33f30e680d99d51aaedc8 100644
--- a/nixos/doc/manual/installation/upgrading.xml
+++ b/nixos/doc/manual/installation/upgrading.xml
@@ -14,11 +14,11 @@
Stable channels, such as
nixos-17.03.
+ xlink:href="https://nixos.org/channels/nixos-19.03">nixos-19.03.
These only get conservative bug fixes and package upgrades. For instance,
a channel update may cause the Linux kernel on your system to be upgraded
- from 4.9.16 to 4.9.17 (a minor bug fix), but not from
- 4.9.x to 4.11.x (a
+ from 4.19.34 to 4.19.38 (a minor bug fix), but not from
+ 4.19.x to 4.20.x (a
major change that has the potential to break things). Stable channels are
generally maintained until the next stable branch is created.
@@ -38,7 +38,7 @@
Small channels, such as
nixos-17.03-small
+ xlink:href="https://nixos.org/channels/nixos-19.03-small">nixos-19.03-small
or
nixos-unstable-small.
@@ -52,16 +52,19 @@
To see what channels are available, go to
- . (Note that the URIs of the
+ . (Note that the URIs of the
various channels redirect to a directory that contains the channel’s latest
- version and includes ISO images and VirtualBox appliances.)
+ version and includes ISO images and VirtualBox appliances.) Please note that
+ during the release process, channels that are not yet released will be
+ present here as well. See the Getting NixOS page
+ to find the newest
+ supported stable release.
When you first install NixOS, you’re automatically subscribed to the NixOS
channel that corresponds to your installation source. For instance, if you
- installed from a 17.03 ISO, you will be subscribed to the
- nixos-17.03 channel. To see which NixOS channel you’re
+ installed from a 19.03 ISO, you will be subscribed to the
+ nixos-19.03 channel. To see which NixOS channel you’re
subscribed to, run the following as root:
# nix-channel --list | grep nixos
@@ -72,13 +75,13 @@ nixos https://nixos.org/channels/nixos-unstable
# nix-channel --add https://nixos.org/channels/channel-name nixos
(Be sure to include the nixos parameter at the end.) For
- instance, to use the NixOS 17.03 stable channel:
+ instance, to use the NixOS 19.03 stable channel:
-# nix-channel --add https://nixos.org/channels/nixos-17.03 nixos
+# nix-channel --add https://nixos.org/channels/nixos-19.03 nixos
If you have a server, you may want to use the “small” channel instead:
-# nix-channel --add https://nixos.org/channels/nixos-17.03-small nixos
+# nix-channel --add https://nixos.org/channels/nixos-19.03-small nixos
And if you want to live on the bleeding edge:
@@ -109,7 +112,7 @@ nixos https://nixos.org/channels/nixos-unstable
so in that case you will not be able to go back to your original channel.
-
+ Automatic Upgrades
@@ -124,7 +127,7 @@ nixos https://nixos.org/channels/nixos-unstable
current channel. (To see when the service runs, see systemctl
list-timers.) You can also specify a channel explicitly, e.g.
- = https://nixos.org/channels/nixos-17.03;
+ = https://nixos.org/channels/nixos-19.03;
diff --git a/nixos/doc/manual/man-nixos-build-vms.xml b/nixos/doc/manual/man-nixos-build-vms.xml
index 87e4f3dae869072658a6dbd32d4b427d880920a0..7d6e04e0dd90bbf056bb6070adcc71989cc6a0b6 100644
--- a/nixos/doc/manual/man-nixos-build-vms.xml
+++ b/nixos/doc/manual/man-nixos-build-vms.xml
@@ -24,8 +24,14 @@
-
-
+
+
+
+
+ name
+ value
+
+
network.nix
@@ -115,6 +121,18 @@
+
+
+ namevalue
+
+
+ Set the Nix configuration option
+ name to value.
+ This overrides settings in the Nix configuration file (see
+ nix.conf5).
+
+
+
diff --git a/nixos/doc/manual/man-nixos-generate-config.xml b/nixos/doc/manual/man-nixos-generate-config.xml
index 1227873f57800b34baad489ca43c58418db24b67..160ada9fff315da5b1a98752d2b52898352fe4ed 100644
--- a/nixos/doc/manual/man-nixos-generate-config.xml
+++ b/nixos/doc/manual/man-nixos-generate-config.xml
@@ -167,7 +167,7 @@ $ nixos-generate-config --root /mnt
{
imports =
- [ <nixos/modules/installer/scan/not-detected.nix>
+ [ <nixos/modules/installer/scan/not-detected.nix>
];
boot.initrd.availableKernelModules = [ "ehci_hcd" "ahci" ];
diff --git a/nixos/doc/manual/man-nixos-rebuild.xml b/nixos/doc/manual/man-nixos-rebuild.xml
index 551a65f5e96beebc770d1c9b8fd9b41e941323d1..0b0c0b8f6ea293a75436a6a5b153a7e0ef9de5b7 100644
--- a/nixos/doc/manual/man-nixos-rebuild.xml
+++ b/nixos/doc/manual/man-nixos-rebuild.xml
@@ -38,6 +38,10 @@
+
+
+
+
@@ -66,6 +70,10 @@
+
+
+ builder-spec
+
@@ -184,6 +192,16 @@ $ nix-build /path/to/nixpkgs/nixos -A system
+
+
+
+
+
+
+ Opens configuration.nix in the default editor.
+
+
+
@@ -315,6 +333,25 @@ $ ./result/bin/run-*-vm
+
+
+ builder-spec
+
+
+
+ Allow ad-hoc remote builders for building the new system. This requires
+ the user executing nixos-rebuild (usually root) to be
+ configured as a trusted user in the Nix daemon. This can be achieved by
+ using the nix.trustedUsers NixOS option. Examples
+ values for that option are described in the Remote builds
+ chapter in the Nix manual, (i.e. --builders
+ "ssh://bigbrother x86_64-linux"). By specifying an empty string
+ existing builders specified in /etc/nix/machines can
+ be ignored: --builders "" for example when they are
+ not reachable due to network connectivity.
+
+
+
diff --git a/nixos/doc/manual/manual.xml b/nixos/doc/manual/manual.xml
index 61b21203f5006b27e8a4a28f39960ae8c777bd23..12f52e1997c8d207e0414218e2aaa1aff243daa3 100644
--- a/nixos/doc/manual/manual.xml
+++ b/nixos/doc/manual/manual.xml
@@ -8,7 +8,7 @@
Version
-
+ Preface
This manual describes how to install, use and extend NixOS, a Linux
@@ -17,8 +17,8 @@
If you encounter problems, please report them on the
nix-devel
- mailing list or on the Discourse or
+ on the
#nixos channel on Freenode. Bugs should be
reported in
diff --git a/nixos/doc/manual/options-to-docbook.xsl b/nixos/doc/manual/options-to-docbook.xsl
index 43a69806a2b0fd27ff6c36b12353446ad11d8513..72ac89d4ff62ccc3c90afe783acd5495052a5e6d 100644
--- a/nixos/doc/manual/options-to-docbook.xsl
+++ b/nixos/doc/manual/options-to-docbook.xsl
@@ -4,6 +4,7 @@
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:str="http://exslt.org/strings"
xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:nixos="tag:nixos.org"
xmlns="http://docbook.org/ns/docbook"
extension-element-prefixes="str"
>
@@ -15,7 +16,7 @@
-
+ Configuration Options
@@ -30,10 +31,12 @@
-
-
-
+
+
+
+
+
diff --git a/nixos/doc/manual/postprocess-option-descriptions.xsl b/nixos/doc/manual/postprocess-option-descriptions.xsl
new file mode 100644
index 0000000000000000000000000000000000000000..1201c7612c2edb5722c58b85fb104a789eb509d8
--- /dev/null
+++ b/nixos/doc/manual/postprocess-option-descriptions.xsl
@@ -0,0 +1,115 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nixos/doc/manual/release-notes/release-notes.xml b/nixos/doc/manual/release-notes/release-notes.xml
index 94f176186b6e0abacb766793b198ba85137a0031..02b5914772143cdaf8f28b4049f29c10c9448363 100644
--- a/nixos/doc/manual/release-notes/release-notes.xml
+++ b/nixos/doc/manual/release-notes/release-notes.xml
@@ -8,6 +8,8 @@
This section lists the release notes for each stable version of NixOS and
current unstable revision.
+
+
diff --git a/nixos/doc/manual/release-notes/rl-1412.xml b/nixos/doc/manual/release-notes/rl-1412.xml
index 4d93aa644c1d6fdf205237a1e41f8afeba8d395b..139f61c2a5509fe0d66e188eba3fc8e5ac253721 100644
--- a/nixos/doc/manual/release-notes/rl-1412.xml
+++ b/nixos/doc/manual/release-notes/rl-1412.xml
@@ -17,7 +17,7 @@
-
+
Nix has been updated to 1.8.
diff --git a/nixos/doc/manual/release-notes/rl-1509.xml b/nixos/doc/manual/release-notes/rl-1509.xml
index 4eb2f9aa0a95687ec4589e31d3ed754859990a22..e500c9d634224224cbe9a376efe8a03296591ee8 100644
--- a/nixos/doc/manual/release-notes/rl-1509.xml
+++ b/nixos/doc/manual/release-notes/rl-1509.xml
@@ -435,11 +435,11 @@ system.autoUpgrade.enable = true;
system.stateVersion = "14.12";
- The new option ensures that
- certain configuration changes that could break existing systems (such as
- the sshd host key setting) will maintain compatibility
- with the specified NixOS release. NixOps sets the state version of
- existing deployments automatically.
+ The new option ensures that certain
+ configuration changes that could break existing systems (such as the
+ sshd host key setting) will maintain compatibility with
+ the specified NixOS release. NixOps sets the state version of existing
+ deployments automatically.
diff --git a/nixos/doc/manual/release-notes/rl-1809.xml b/nixos/doc/manual/release-notes/rl-1809.xml
index d831f851446620a57eb1ceb46d983f2007ba9960..3f10b26223ddcc2702eb65918f0ab07035f71b0c 100644
--- a/nixos/doc/manual/release-notes/rl-1809.xml
+++ b/nixos/doc/manual/release-notes/rl-1809.xml
@@ -3,7 +3,7 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-release-18.09">
- Release 18.09 (“Jellyfish”, 2018/09/??)
+ Release 18.09 (“Jellyfish”, 2018/10/05)
In addition to numerous new and upgraded packages, this release has the
- following highlights:
+ following notable updates:
-
- Support for wrapping binaries using firejail has been
- added through programs.firejail.wrappedBinaries.
-
-
- For example
-
+
+ End of support is planned for end of April 2019, handing over to 19.03.
+
+
+
+
+ Platform support: x86_64-linux and x86_64-darwin as always. Support for
+ aarch64-linux is as with the previous releases, not equivalent to the
+ x86-64-linux release, but with efforts to reach parity.
+
+
+
+
+ Nix has been updated to 2.1; see its
+ release
+ notes.
+
+
+
+
+ Core versions: linux: 4.14 LTS (unchanged), glibc: 2.26 → 2.27, gcc: 7
+ (unchanged), systemd: 237 → 239.
+
+
+
+
+ Desktop version changes: gnome: 3.26 → 3.28, (KDE) plasma-desktop: 5.12
+ → 5.13.
+
+
+
+
+
+ Notable changes and additions for 18.09 include:
+
+
+
+
+
+ Support for wrapping binaries using firejail has been
+ added through programs.firejail.wrappedBinaries.
+
+
+ For example
+
programs.firejail = {
enable = true;
@@ -35,9 +73,10 @@ programs.firejail = {
};
};
-
- This will place firefox and mpv binaries in the global path wrapped by firejail.
-
+
+ This will place firefox and mpv
+ binaries in the global path wrapped by firejail.
+
@@ -69,46 +108,355 @@ $ nix-instantiate -E '(import <nixpkgsunstable> {}).gitFull'
New Services
- The following new services were added since the last release:
+ A curated selection of new services that were added since the last release:
- The services.cassandra module has been reworked and
- was rewritten from scratch. The service has succeeding tests for
- the versions 2.1, 2.2, 3.0 and 3.11 of Apache Cassandra.
+ The services.cassandra module has been reworked and was
+ rewritten from scratch. The service has succeeding tests for the versions
+ 2.1, 2.2, 3.0 and 3.11 of
+ Apache
+ Cassandra.
- There is a new services.foundationdb module for deploying
- FoundationDB clusters.
+ There is a new services.foundationdb module for
+ deploying
+ FoundationDB
+ clusters.
When enabled the iproute2 will copy the files expected
by ip route (e.g., rt_tables) in
- /run/iproute2. This allows to write aliases for
+ /etc/iproute2. This allows to write aliases for
routing tables for instance.
- services.strongswan-swanctl
- is a modern replacement for services.strongswan.
- You can use either one of them to setup IPsec VPNs but not both at the same time.
+ services.strongswan-swanctl is a modern replacement for
+ services.strongswan. You can use either one of them to
+ setup IPsec VPNs but not both at the same time.
- services.strongswan-swanctl uses the
- swanctl
- command which uses the modern
- vici
- Versatile IKE Configuration Interface.
- The deprecated ipsec command used in services.strongswan is using the legacy
- stroke configuration interface.
+ services.strongswan-swanctl uses the
+ swanctl
+ command which uses the modern
+ vici
+ Versatile IKE Configuration Interface. The deprecated
+ ipsec command used in
+ services.strongswan is using the legacy
+ stroke
+ configuration interface.
+
+
+
+
+ The new services.elasticsearch-curator service
+ periodically curates or manages, your Elasticsearch indices and snapshots.
+
+
+
+
+
+ Every new services:
+
+
+
+
+
+ ./config/xdg/autostart.nix
+
+
+
+
+ ./config/xdg/icons.nix
+
+
+
+
+ ./config/xdg/menus.nix
+
+
+
+
+ ./config/xdg/mime.nix
+
+
+
+
+ ./hardware/brightnessctl.nix
+
+
+
+
+ ./hardware/onlykey.nix
+
+
+
+
+ ./hardware/video/uvcvideo/default.nix
+
+
+
+
+ ./misc/documentation.nix
+
+
+
+
+ ./programs/firejail.nix
+
+
+
+
+ ./programs/iftop.nix
+
+
+
+
+ ./programs/sedutil.nix
+
+
+
+
+ ./programs/singularity.nix
+
+
+
+
+ ./programs/xss-lock.nix
+
+
+
+
+ ./programs/zsh/zsh-autosuggestions.nix
+
+
+
+
+ ./services/admin/oxidized.nix
+
+
+
+
+ ./services/backup/duplicati.nix
+
+
+
+
+ ./services/backup/restic.nix
+
+
+
+
+ ./services/backup/restic-rest-server.nix
+
+
+
+
+ ./services/cluster/hadoop/default.nix
+
+
+
+
+ ./services/databases/aerospike.nix
+
+
+
+
+ ./services/databases/monetdb.nix
+
+
+
+
+ ./services/desktops/bamf.nix
+
+
+
+
+ ./services/desktops/flatpak.nix
+
+
+
+
+ ./services/desktops/zeitgeist.nix
+
+
+
+
+ ./services/development/bloop.nix
+
+
+
+
+ ./services/development/jupyter/default.nix
+
+
+
+
+ ./services/hardware/lcd.nix
+
+
+
+
+ ./services/hardware/undervolt.nix
+
+
+
+
+ ./services/misc/clipmenu.nix
+
+
+
+
+ ./services/misc/gitweb.nix
+
+
+
+
+ ./services/misc/serviio.nix
+
+
+
+
+ ./services/misc/safeeyes.nix
+
+
+
+
+ ./services/misc/sysprof.nix
+
+
+
+
+ ./services/misc/weechat.nix
+
+
+
+
+ ./services/monitoring/datadog-agent.nix
+
+
+
+
+ ./services/monitoring/incron.nix
+
+
+
+
+ ./services/networking/dnsdist.nix
+
+
+
+
+ ./services/networking/freeradius.nix
+
+
+
+
+ ./services/networking/hans.nix
+
+
+
+
+ ./services/networking/morty.nix
+
+
+
+
+ ./services/networking/ndppd.nix
+
+
+
+
+ ./services/networking/ocserv.nix
+
+
+
+
+ ./services/networking/owamp.nix
+
+
+
+
+ ./services/networking/quagga.nix
+
+
+
+
+ ./services/networking/shadowsocks.nix
+
+
+
+
+ ./services/networking/stubby.nix
+
+
+
+
+ ./services/networking/zeronet.nix
+
+
+
+
+ ./services/security/certmgr.nix
+
+
+
+
+ ./services/security/cfssl.nix
+
+
+
+
+ ./services/security/oauth2_proxy_nginx.nix
+
+
+
+
+ ./services/web-apps/virtlyst.nix
+
+
+
+
+ ./services/web-apps/youtrack.nix
+
+
+
+
+ ./services/web-servers/hitch/default.nix
+
+
+
+
+ ./services/web-servers/hydron.nix
+
+
+
+
+ ./services/web-servers/meguca.nix
+
+
+
+
+ ./services/web-servers/nginx/gitweb.nix
+
+
+
+
+ ./virtualisation/kvmgt.nix
+
+
+
+
+ ./virtualisation/qemu-guest-agent.nix
@@ -129,8 +477,50 @@ $ nix-instantiate -E '(import <nixpkgsunstable> {}).gitFull'
- The deprecated services.cassandra module has
- seen a complete rewrite. (See above.)
+ Some licenses that were incorrectly not marked as unfree now are. This is
+ the case for:
+
+
+
+ cc-by-nc-sa-20: Creative Commons Attribution Non Commercial Share Alike
+ 2.0
+
+
+
+
+ cc-by-nc-sa-25: Creative Commons Attribution Non Commercial Share Alike
+ 2.5
+
+
+
+
+ cc-by-nc-sa-30: Creative Commons Attribution Non Commercial Share Alike
+ 3.0
+
+
+
+
+ cc-by-nc-sa-40: Creative Commons Attribution Non Commercial Share Alike
+ 4.0
+
+
+
+
+ cc-by-nd-30: Creative Commons Attribution-No Derivative Works v3.00
+
+
+
+
+ msrla: Microsoft Research License Agreement
+
+
+
+
+
+
+
+ The deprecated services.cassandra module has seen a
+ complete rewrite. (See above.)
@@ -180,24 +570,77 @@ $ nix-instantiate -E '(import <nixpkgsunstable> {}).gitFull'
- services.munge now runs as user (and group) munge instead of root.
- Make sure the key file is accessible to the daemon.
+ services.munge now runs as user (and group)
+ munge instead of root. Make sure the key file is
+ accessible to the daemon.
+
+
+
+
+ dockerTools.buildImage now uses null
+ as default value for tag, which indicates that the nix
+ output hash will be used as tag.
+
+
+
+
+ The ELK stack: elasticsearch,
+ logstash and kibana has been
+ upgraded from 2.* to 6.3.*. The 2.* versions have been
+ unsupported since
+ last year so they have been removed. You can still use the 5.*
+ versions under the names elasticsearch5,
+ logstash5 and kibana5.
+
+
+ The elastic beats: filebeat,
+ heartbeat, metricbeat and
+ packetbeat have had the same treatment: they now target
+ 6.3.* as well. The 5.* versions are available under the names:
+ filebeat5, heartbeat5,
+ metricbeat5 and packetbeat5
+
+
+ The ELK-6.3 stack now comes with
+ X-Pack by
+ default. Since X-Pack is licensed under the
+ Elastic
+ License the ELK packages now have an unfree license. To use them
+ you need to specify allowUnfree = true; in your nixpkgs
+ configuration.
+
+
+ Fortunately there is also a free variant of the ELK stack without X-Pack.
+ The packages are available under the names:
+ elasticsearch-oss, logstash-oss and
+ kibana-oss.
+
+
+
+
+ Options
+ boot.initrd.luks.devices.name.yubikey.ramfsMountPoint
+ boot.initrd.luks.devices.name.yubikey.storage.mountPoint
+ were removed. luksroot.nix module never supported more
+ than one YubiKey at a time anyway, hence those options never had any
+ effect. You should be able to remove them from your config without any
+ issues.
- dockerTools.buildImage now uses null as default value for tag,
- which indicates that the nix output hash will be used as tag.
+ stdenv.system and system in nixpkgs
+ now refer to the host platform instead of the build platform. For native
+ builds this is not change, let alone a breaking one. For cross builds, it
+ is a breaking change, and stdenv.buildPlatform.system
+ can be used instead for the old behavior. They should be using that
+ anyways for clarity.
- Options
- boot.initrd.luks.devices.name.yubikey.ramfsMountPoint
- boot.initrd.luks.devices.name.yubikey.storage.mountPoint
- were removed. luksroot.nix module never supported more than one YubiKey at
- a time anyway, hence those options never had any effect. You should be able to remove them
- from your config without any issues.
+ Groups kvm and render are introduced
+ now, as systemd requires them.
@@ -251,26 +694,33 @@ $ nix-instantiate -E '(import <nixpkgsunstable> {}).gitFull'
- The pkgs argument to NixOS modules can now be set directly using nixpkgs.pkgs. Previously, only the system, config and overlays arguments could be used to influence pkgs.
+ The pkgs argument to NixOS modules can now be set
+ directly using nixpkgs.pkgs. Previously, only the
+ system, config and
+ overlays arguments could be used to influence
+ pkgs.
- A NixOS system can now be constructed more easily based on a preexisting invocation of Nixpkgs. For example:
-
+ A NixOS system can now be constructed more easily based on a preexisting
+ invocation of Nixpkgs. For example:
+
inherit (pkgs.nixos {
boot.loader.grub.enable = false;
fileSystems."/".device = "/dev/xvda1";
}) toplevel kernel initialRamdisk manual;
-
- This benefits evaluation performance, lets you write Nixpkgs packages that depend on NixOS images and is consistent with a deployment architecture that would be centered around Nixpkgs overlays.
+ This benefits evaluation performance, lets you write Nixpkgs packages that
+ depend on NixOS images and is consistent with a deployment architecture
+ that would be centered around Nixpkgs overlays.
- lib.traceValIfNot has been deprecated. Use
- if/then/else and lib.traceValSeq instead.
+ lib.traceValIfNot has been deprecated. Use
+ if/then/else and lib.traceValSeq
+ instead.
@@ -289,9 +739,9 @@ inherit (pkgs.nixos {
- lib.recursiveUpdateUntil was not acting according to its
- specification. It has been fixed to act according to the docstring, and a
- test has been added.
+ lib.recursiveUpdateUntil was not acting according to
+ its specification. It has been fixed to act according to the docstring,
+ and a test has been added.
@@ -360,6 +810,14 @@ inherit (pkgs.nixos {
deprecated. Use networking.networkmanager.dns instead.
+
+
+ The Kubernetes package has been bumped to major version 1.11. Please
+ consult the
+ release
+ notes for details on new features and api changes.
+
+
The option
@@ -377,8 +835,8 @@ inherit (pkgs.nixos {
- The option services.kubernetes.apiserver.address
- was renamed to services.kubernetes.apiserver.bindAddress.
+ The option services.kubernetes.apiserver.address was
+ renamed to services.kubernetes.apiserver.bindAddress.
Note that the default value has changed from 127.0.0.1 to 0.0.0.0.
@@ -390,47 +848,86 @@ inherit (pkgs.nixos {
- The option services.kubernetes.addons.dashboard.enableRBAC
- was renamed to services.kubernetes.addons.dashboard.rbac.enable.
+ The option
+ services.kubernetes.addons.dashboard.enableRBAC was
+ renamed to
+ services.kubernetes.addons.dashboard.rbac.enable.
The Kubernetes Dashboard now has only minimal RBAC permissions by default.
- If dashboard cluster-admin rights are desired,
- set services.kubernetes.addons.dashboard.rbac.clusterAdmin to true.
- On existing clusters, in order for the revocation of privileges to take effect,
- the current ClusterRoleBinding for kubernetes-dashboard must be manually removed:
- kubectl delete clusterrolebinding kubernetes-dashboard
+ If dashboard cluster-admin rights are desired, set
+ services.kubernetes.addons.dashboard.rbac.clusterAdmin
+ to true. On existing clusters, in order for the revocation of privileges
+ to take effect, the current ClusterRoleBinding for kubernetes-dashboard
+ must be manually removed: kubectl delete clusterrolebinding
+ kubernetes-dashboard
The programs.screen module provides allows to configure
- /etc/screenrc, however the module behaved fairly counterintuitive as
- the config exists, but the package wasn't available. Since 18.09 pkgs.screen
- will be added to environment.systemPackages.
+ /etc/screenrc, however the module behaved fairly
+ counterintuitive as the config exists, but the package wasn't available.
+ Since 18.09 pkgs.screen will be added to
+ environment.systemPackages.
+
+
+
+
+ The module now uses WPA2 by
+ default.
+
+
+
+
+ s6Dns, s6Networking,
+ s6LinuxUtils and s6PortableUtils
+ renamed to s6-dns, s6-networking,
+ s6-linux-utils and s6-portable-utils
+ respectively.
- The module now uses WPA2 by default.
+ The module option is now defaulted to
+ true.
- s6Dns, s6Networking,
- s6LinuxUtils and s6PortableUtils
- renamed to
- s6-dns, s6-networking,
- s6-linux-utils and s6-portable-utils respectively.
+ The config activation script of nixos-rebuild now
+ reloads
+ all user units for each authenticated user.
-
-
+
+
+
+ The default display manager is now LightDM. To use SLiM set
+ services.xserver.displayManager.slim.enable to
+ true.
+
+
+
- The module option is now defaulted to true.
+ NixOS option descriptions are now automatically broken up into individual
+ paragraphs if the text contains two consecutive newlines, so it's no
+ longer necessary to use </para><para> to start a
+ new paragraph.
-
+
+
+
+ Top-level buildPlatform,
+ hostPlatform, and targetPlatform in
+ Nixpkgs are deprecated. Please use their equivalents in
+ stdenv instead:
+ stdenv.buildPlatform,
+ stdenv.hostPlatform, and
+ stdenv.targetPlatform.
+
+
diff --git a/nixos/doc/manual/release-notes/rl-1903.xml b/nixos/doc/manual/release-notes/rl-1903.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e9c6cd7e9acbb4b4f389324edefb3f4d0240c5b4
--- /dev/null
+++ b/nixos/doc/manual/release-notes/rl-1903.xml
@@ -0,0 +1,763 @@
+
+ Release 19.03 (“Koi”, 2019/03/??)
+
+
+ Highlights
+
+
+ In addition to numerous new and upgraded packages, this release has the
+ following highlights:
+
+
+
+
+
+ The default Python 3 interpreter is now CPython 3.7 instead of CPython
+ 3.6.
+
+
+
+
+ Added the Pantheon desktop environment. It can be enabled through
+ services.xserver.desktopManager.pantheon.enable.
+
+
+
+ By default, services.xserver.desktopManager.pantheon
+ enables LightDM as a display manager, as pantheon's screen locking
+ implementation relies on it.
+
+
+ Because of that it is recommended to leave LightDM enabled. If you'd like
+ to disable it anyway, set
+ to
+ false and enable your preferred display manager.
+
+
+
+ Also note that Pantheon's LightDM greeter is not enabled by default,
+ because it has numerous issues in NixOS and isn't optimal for use here
+ yet.
+
+
+
+
+ A major refactoring of the Kubernetes module has been completed.
+ Refactorings primarily focus on decoupling components and enhancing
+ security. Two-way TLS and RBAC has been enabled by default for all
+ components, which slightly changes the way the module is configured. See:
+ for details.
+
+
+
+
+ There is now a set of options for
+ , which allows to restrict services
+ into a
+ chroot
+ 2
+ ed environment that only contains the store paths from
+ the runtime closure of the service.
+
+
+
+
+
+
+ New Services
+
+
+ The following new services were added since the last release:
+
+
+
+
+
+ ./programs/nm-applet.nix
+
+
+
+
+ There is a new security.googleOsLogin module for using
+ OS
+ Login to manage SSH access to Google Compute Engine instances,
+ which supersedes the imperative and broken
+ google-accounts-daemon used in
+ nixos/modules/virtualisation/google-compute-config.nix.
+
+
+
+
+ ./services/misc/beanstalkd.nix
+
+
+
+
+ There is a new services.cockroachdb module for running
+ CockroachDB databases. NixOS now ships with CockroachDB 2.1.x as well,
+ available on x86_64-linux and
+ aarch64-linux.
+
+
+
+
+
+
+
+ ./security/duosec.nix
+
+
+
+
+ The PAM module for Duo
+ Security has been enabled for use. One can configure it using the
+ options along with the corresponding PAM
+ option in
+ .
+
+
+
+
+
+
+ Backward Incompatibilities
+
+
+ When upgrading from a previous release, please be aware of the following
+ incompatible changes:
+
+
+
+
+
+ The minimum version of Nix required to evaluate Nixpkgs is now 2.0.
+
+
+
+
+ For users of NixOS 18.03 and 19.03, NixOS defaults to Nix 2.0, but
+ supports using Nix 1.11 by setting nix.package =
+ pkgs.nix1;. If this option is set to a Nix 1.11 package, you
+ will need to either unset the option or upgrade it to Nix 2.0.
+
+
+
+
+ For users of NixOS 17.09, you will first need to upgrade Nix by setting
+ nix.package = pkgs.nixStable2; and run
+ nixos-rebuild switch as the root
+ user.
+
+
+
+
+ For users of a daemon-less Nix installation on Linux or macOS, you can
+ upgrade Nix by running curl https://nixos.org/nix/install |
+ sh, or prior to doing a channel update, running
+ nix-env -iA nix.
+
+
+ If you have already run a channel update and Nix is no longer able to
+ evaluate Nixpkgs, the error message printed should provide adequate
+ directions for upgrading Nix.
+
+
+
+
+ For users of the Nix daemon on macOS, you can upgrade Nix by running
+ sudo -i sh -c 'nix-channel --update && nix-env -iA
+ nixpkgs.nix'; sudo launchctl stop org.nixos.nix-daemon; sudo launchctl
+ start org.nixos.nix-daemon.
+
+
+
+
+
+
+ The buildPythonPackage function now sets
+ strictDeps = true to help distinguish between native
+ and non-native dependencies in order to improve cross-compilation
+ compatibility. Note however that this may break user expressions.
+
+
+
+
+ The buildPythonPackage function now sets LANG
+ = C.UTF-8 to enable Unicode support. The
+ glibcLocales package is no longer needed as a build
+ input.
+
+
+
+
+ The Syncthing state and configuration data has been moved from
+ services.syncthing.dataDir to the newly defined
+ services.syncthing.configDir, which default to
+ /var/lib/syncthing/.config/syncthing. This change makes
+ possible to share synced directories using ACLs without Syncthing
+ resetting the permission on every start.
+
+
+
+
+ The ntp module now has sane default restrictions. If
+ you're relying on the previous defaults, which permitted all queries and
+ commands from all firewall-permitted sources, you can set
+ services.ntp.restrictDefault and
+ services.ntp.restrictSource to [].
+
+
+
+
+ Package rabbitmq_server is renamed to
+ rabbitmq-server.
+
+
+
+
+ The light module no longer uses setuid binaries, but
+ udev rules. As a consequence users of that module have to belong to the
+ video group in order to use the executable (i.e.
+ users.users.yourusername.extraGroups = ["video"];).
+
+
+
+
+ Buildbot now supports Python 3 and its packages have been moved to
+ pythonPackages. The options
+ and
+ can be used to select
+ the Python 2 or 3 version of the package.
+
+
+
+
+ Options
+ services.znc.confOptions.networks.name.userName
+ and
+ services.znc.confOptions.networks.name.modulePackages
+ were removed. They were never used for anything and can therefore safely
+ be removed.
+
+
+
+
+ Package wasm has been renamed
+ proglodyte-wasm. The package wasm
+ will be pointed to ocamlPackages.wasm in 19.09, so make
+ sure to update your configuration if you want to keep
+ proglodyte-wasm
+
+
+
+
+ When the nixpkgs.pkgs option is set, NixOS will no
+ longer ignore the nixpkgs.overlays option. The old
+ behavior can be recovered by setting nixpkgs.overlays =
+ lib.mkForce [];.
+
+
+
+
+ OpenSMTPD has been upgraded to version 6.4.0p1. This release makes
+ backwards-incompatible changes to the configuration file format. See
+ man smtpd.conf for more information on the new file
+ format.
+
+
+
+
+ The versioned postgresql have been renamed to use
+ underscore number seperators. For example, postgresql96
+ has been renamed to postgresql_9_6.
+
+
+
+
+ Package consul-ui and passthrough
+ consul.ui have been removed. The package
+ consul now uses upstream releases that vendor the UI
+ into the binary. See
+ #48714
+ for details.
+
+
+
+
+ Slurm introduces the new option
+ services.slurm.stateSaveLocation, which is now set to
+ /var/spool/slurm by default (instead of
+ /var/spool). Make sure to move all files to the new
+ directory or to set the option accordingly.
+
+
+ The slurmctld now runs as user slurm instead of
+ root. If you want to keep slurmctld running as
+ root, set services.slurm.user =
+ root.
+
+
+ The options services.slurm.nodeName and
+ services.slurm.partitionName are now sets of strings to
+ correctly reflect that fact that each of these options can occour more
+ than once in the configuration.
+
+
+
+
+ The solr package has been upgraded from 4.10.3 to 7.5.0
+ and has undergone some major changes. The services.solr
+ module has been updated to reflect these changes. Please review
+ http://lucene.apache.org/solr/ carefully before upgrading.
+
+
+
+
+ Package ckb is renamed to ckb-next,
+ and options hardware.ckb.* are renamed to
+ hardware.ckb-next.*.
+
+
+
+
+ The option
+ services.xserver.displayManager.job.logToFile which was
+ previously set to true when using the display managers
+ lightdm, sddm or
+ xpra has been reset to the default value
+ (false).
+
+
+
+
+ Network interface indiscriminate NixOS firewall options
+ (networking.firewall.allow*) are now preserved when
+ also setting interface specific rules such as
+ networking.firewall.interfaces.en0.allow*. These rules
+ continue to use the pseudo device "default"
+ (networking.firewall.interfaces.default.*), and
+ assigning to this pseudo device will override the
+ (networking.firewall.allow*) options.
+
+
+
+
+ The nscd service now disables all caching of
+ passwd and group databases by
+ default. This was interferring with the correct functioning of the
+ libnss_systemd.so module which is used by
+ systemd to manage uids and usernames in the presence of
+ DynamicUser= in systemd services. This was already the
+ default behaviour in presence of services.sssd.enable =
+ true because nscd caching would interfere with
+ sssd in unpredictable ways as well. Because we're using
+ nscd not for caching, but for convincing glibc to find NSS modules in the
+ nix store instead of an absolute path, we have decided to disable caching
+ globally now, as it's usually not the behaviour the user wants and can
+ lead to surprising behaviour. Furthermore, negative caching of host
+ lookups is also disabled now by default. This should fix the issue of dns
+ lookups failing in the presence of an unreliable network.
+
+
+ If the old behaviour is desired, this can be restored by setting the
+ services.nscd.config option with the desired caching
+ parameters.
+
+ services.nscd.config =
+ ''
+ server-user nscd
+ threads 1
+ paranoia no
+ debug-level 0
+
+ enable-cache passwd yes
+ positive-time-to-live passwd 600
+ negative-time-to-live passwd 20
+ suggested-size passwd 211
+ check-files passwd yes
+ persistent passwd no
+ shared passwd yes
+
+ enable-cache group yes
+ positive-time-to-live group 3600
+ negative-time-to-live group 60
+ suggested-size group 211
+ check-files group yes
+ persistent group no
+ shared group yes
+
+ enable-cache hosts yes
+ positive-time-to-live hosts 600
+ negative-time-to-live hosts 5
+ suggested-size hosts 211
+ check-files hosts yes
+ persistent hosts no
+ shared hosts yes
+ '';
+
+ See
+ #50316
+ for details.
+
+
+
+
+ GitLab Shell previously used the nix store paths for the
+ gitlab-shell command in its
+ authorized_keys file, which might stop working after
+ garbage collection. To circumvent that, we regenerated that file on each
+ startup. As gitlab-shell has now been changed to use
+ /var/run/current-system/sw/bin/gitlab-shell, this is
+ not necessary anymore, but there might be leftover lines with a nix store
+ path. Regenerate the authorized_keys file via
+ sudo -u git -H gitlab-rake gitlab:shell:setup in that
+ case.
+
+
+
+
+ The pam_unix account module is now loaded with its
+ control field set to required instead of
+ sufficient, so that later PAM account modules that
+ might do more extensive checks are being executed. Previously, the whole
+ account module verification was exited prematurely in case a nss module
+ provided the account name to pam_unix. The LDAP and
+ SSSD NixOS modules already add their NSS modules when enabled. In case
+ your setup breaks due to some later PAM account module previosuly
+ shadowed, or failing NSS lookups, please file a bug. You can get back the
+ old behaviour by manually setting
+.text]]>
+ .
+
+
+
+
+ The pam_unix password module is now loaded with its
+ control field set to sufficient instead of
+ required, so that password managed only by later PAM
+ password modules are being executed. Previously, for example, changing an
+ LDAP account's password through PAM was not possible: the whole password
+ module verification was exited prematurely by pam_unix,
+ preventing pam_ldap to manage the password as it
+ should.
+
+
+
+
+ fish has been upgraded to 3.0. It comes with a number
+ of improvements and backwards incompatible changes. See the
+ fish
+ release
+ notes for more information.
+
+
+
+
+ The ibus-table input method has had a change in config format, which
+ causes all previous settings to be lost. See
+ this
+ commit message for details.
+
+
+
+
+ NixOS module system type types.optionSet and
+ lib.mkOption argument options are
+ deprecated. Use types.submodule instead.
+ (#54637)
+
+
+
+
+ matrix-synapse has been updated to version 0.99. It
+ will no
+ longer generate a self-signed certificate on first launch and will
+ be
+ the
+ last version to accept self-signed certificates. As such, it is now
+ recommended to use a proper certificate verified by a root CA (for example
+ Let's Encrypt). The new manual
+ chapter on Matrix contains a working example of using nginx as a
+ reverse proxy in front of matrix-synapse, using Let's
+ Encrypt certificates.
+
+
+
+
+ mailutils now works by default when
+ sendmail is not in a setuid wrapper. As a consequence,
+ the sendmailPath argument, having lost its main use,
+ has been removed.
+
+
+
+
+ graylog has been upgraded from version 2.* to 3.*. Some
+ setups making use of extraConfig (especially those exposing Graylog via
+ reverse proxies) need to be updated as upstream removed/replaced some
+ settings. See
+ Upgrading
+ Graylog for details.
+
+
+
+
+ The option users.ldap.bind.password was renamed to users.ldap.bind.passwordFile,
+ and needs to be readable by the nslcd user.
+ Same applies to the new users.ldap.daemon.rootpwmodpwFile option.
+
+
+
+
+ nodejs-6_x is end-of-life.
+ nodejs-6_x, nodejs-slim-6_x and
+ nodePackages_6_x are removed.
+
+
+
+
+
+
+ Other Notable Changes
+
+
+
+
+ The module gained the option
+ which determines the used Matomo
+ version.
+
+
+ The Matomo module now also comes with the systemd service
+ matomo-archive-processing.service and a timer that
+ automatically triggers archive processing every hour. This means that you
+ can safely
+
+ disable browser triggers for Matomo archiving at
+ Administration > System > General Settings.
+
+
+ Additionally, you can enable to
+
+ delete old visitor logs at Administration > System >
+ Privacy, but make sure that you run systemctl start
+ matomo-archive-processing.service at least once without errors
+ if you have already collected data before, so that the reports get
+ archived before the source data gets deleted.
+
+
+
+
+ composableDerivation along with supporting library
+ functions has been removed.
+
+
+
+
+ The deprecated truecrypt package has been removed and
+ truecrypt attribute is now an alias for
+ veracrypt. VeraCrypt is backward-compatible with
+ TrueCrypt volumes. Note that cryptsetup also supports
+ loading TrueCrypt volumes.
+
+
+
+
+ The Kubernetes DNS addons, kube-dns, has been replaced with CoreDNS. This
+ change is made in accordance with Kubernetes making CoreDNS the official
+ default starting from
+ Kubernetes
+ v1.11. Please beware that upgrading DNS-addon on existing clusters
+ might induce minor downtime while the DNS-addon terminates and
+ re-initializes. Also note that the DNS-service now runs with 2 pod
+ replicas by default. The desired number of replicas can be configured
+ using: .
+
+
+
+
+ The quassel-webserver package and module was removed from nixpkgs due to
+ the lack of maintainers.
+
+
+
+
+ The manual gained a new chapter on
+ self-hosting matrix-synapse and
+ riot-web , the most prevalent server and client
+ implementations for the
+ Matrix federated
+ communication network.
+
+
+
+
+ The astah-community package was removed from nixpkgs due to it being
+ discontinued and the downloads not being available anymore.
+
+
+
+
+ The httpd service now saves log files with a .log file extension by
+ default for easier integration with the logrotate service.
+
+
+
+
+ The owncloud server packages and httpd subservice module were removed from
+ nixpkgs due to the lack of maintainers.
+
+
+
+
+ It is possible now to uze ZRAM devices as general purpose ephemeral block
+ devices, not only as swap. Using more than 1 device as ZRAM swap is no
+ longer recommended, but is still possible by setting
+ zramSwap.swapDevices explicitly.
+
+
+ ZRAM algorithm can be changed now.
+
+
+ Changes to ZRAM algorithm are applied during nixos-rebuild
+ switch, so make sure you have enough swap space on disk to
+ survive ZRAM device rebuild. Alternatively, use nixos-rebuild
+ boot; reboot.
+
+
+
+
+ Flat volumes are now disabled by default in
+ hardware.pulseaudio. This has been done to prevent
+ applications, which are unaware of this feature, setting their volumes to
+ 100% on startup causing harm to your audio hardware and potentially your
+ ears.
+
+
+
+ With this change application specific volumes are relative to the master
+ volume which can be adjusted independently, whereas before they were
+ absolute; meaning that in effect, it scaled the device-volume with the
+ volume of the loudest application.
+
+
+
+
+
+ The
+ ndppd
+ module now supports all config
+ options provided by the current upstream version as service
+ options. Additionally the ndppd package doesn't contain
+ the systemd unit configuration from upstream anymore, the unit is
+ completely configured by the NixOS module now.
+
+
+
+
+ New installs of NixOS will default to the Redmine 4.x series unless
+ otherwise specified in services.redmine.package while
+ existing installs of NixOS will default to the Redmine 3.x series.
+
+
+
+
+ The Grafana module now
+ supports declarative
+ datasource
+ and dashboard provisioning.
+
+
+
+
+ The use of insecure ports on kubernetes has been deprecated. Thus options:
+ services.kubernetes.apiserver.port and
+ services.kubernetes.controllerManager.port has been
+ renamed to .insecurePort, and default of both options
+ has changed to 0 (disabled).
+
+
+
+
+ Note that the default value of
+ services.kubernetes.apiserver.bindAddress has changed
+ from 127.0.0.1 to 0.0.0.0, allowing the apiserver to be accessible from
+ outside the master node itself. If the apiserver insecurePort is enabled,
+ it is strongly recommended to only bind on the loopback interface. See:
+ services.kubernetes.apiserver.insecurebindAddress.
+
+
+
+
+ The option
+ services.kubernetes.apiserver.allowPrivileged and
+ services.kubernetes.kubelet.allowPrivileged now
+ defaults to false. Disallowing privileged containers on the cluster.
+
+
+
+
+ The kubernetes module does no longer add the kubernetes package to
+ environment.systemPackages implicitly.
+
+
+
+
+ The intel driver has been removed from the default list
+ of X.org video
+ drivers. The modesetting driver should take over
+ automatically, it is better maintained upstream and has less problems with
+ advanced X11 features. This can lead to a change in the output names used
+ by xrandr. Some performance regressions on some GPU
+ models might happen. Some OpenCL and VA-API applications might also break
+ (Beignet seems to provide OpenCL support with
+ modesetting driver, too). Kernel mode setting API does
+ not support backlight control, so xbacklight tool will
+ not work; backlight level can be controlled directly via
+ /sys/ or with brightnessctl. Users
+ who need this functionality more than multi-output XRandR are advised to
+ add `intel` to `videoDrivers` and report an issue (or provide additional
+ details in an existing one)
+
+
+
+
+ Openmpi has been updated to version 4.0.0, which removes some deprecated
+ MPI-1 symbols. This may break some older applications that still rely on
+ those symbols. An upgrade guide can be found
+ here.
+
+
+ The nginx package now relies on OpenSSL 1.1 and supports TLS 1.3 by
+ default. You can set the protocols used by the nginx service using
+ .
+
+
+
+
+ A new subcommand nixos-rebuild edit was added.
+
+
+
+
+
diff --git a/nixos/doc/manual/release-notes/rl-1909.xml b/nixos/doc/manual/release-notes/rl-1909.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b16297da7ce6864cf93051a1f265ee48d126489e
--- /dev/null
+++ b/nixos/doc/manual/release-notes/rl-1909.xml
@@ -0,0 +1,148 @@
+
+ Release 19.09 (“Loris”, 2019/09/??)
+
+
+ Highlights
+
+
+ In addition to numerous new and upgraded packages, this release has the
+ following highlights:
+
+
+
+
+
+
+
+
+
+
+ New Services
+
+
+ The following new services were added since the last release:
+
+
+
+
+
+ Backward Incompatibilities
+
+
+ When upgrading from a previous release, please be aware of the following
+ incompatible changes:
+
+
+
+
+
+ Buildbot no longer supports Python 2, as support was dropped upstream in
+ version 2.0.0. Configurations may need to be modified to make them
+ compatible with Python 3.
+
+
+
+
+ PostgreSQL now uses
+ /run/postgresql as its socket
+ directory instead of /tmp. So
+ if you run an application like eg. Nextcloud, where you need to use
+ the Unix socket path as the database host name, you need to change it
+ accordingly.
+
+
+
+
+ The options and
+ have been removed
+ because the alertmanager service is now using systemd's
+ DynamicUser mechanism which obviates these options.
+
+
+
+
+ The NetworkManager systemd unit was renamed back from network-manager.service to
+ NetworkManager.service for better compatibility with other applications expecting this name.
+ The same applies to ModemManager where modem-manager.service is now called ModemManager.service again.
+
+
+
+
+ The and
+ options were removed as they are managed internally by the nzbget. The
+ option hadn't actually been used by
+ the module for some time and so was removed as cleanup.
+
+
+
+
+
+
+ Other Notable Changes
+
+
+
+
+ The module gained an option named
+ which makes the
+ generated
+ configuration.nix
+ 5 manual page include all options
+ from all NixOS modules included in a given
+ configuration.nix configuration file. Currently, it is
+ set to false by default as enabling it frequently
+ prevents evaluation. But the plan is to eventually have it set to
+ true by default. Please set it to
+ true now in your configuration.nix
+ and fix all the bugs it uncovers.
+
+
+
+
+ The vlc package gained support for Chromecast
+ streaming, enabled by default. TCP port 8010 must be open for it to work,
+ so something like networking.firewall.allowedTCPPorts = [ 8010
+ ]; may be required in your configuration. Also consider enabling
+
+ Accelerated Video Playback for better transcoding performance.
+
+
+
+
+ The following changes apply if the stateVersion is
+ changed to 19.09 or higher. For stateVersion = "19.03"
+ or lower the old behavior is preserved.
+
+
+
+
+ solr.package defaults to
+ pkgs.solr_8.
+
+
+
+
+
+
+
diff --git a/nixos/lib/build-vms.nix b/nixos/lib/build-vms.nix
index 48288cf5962c4f30f72ad727bbab1e2528738755..a5580f4712ebca824c66709ceec356ddf3e9082d 100644
--- a/nixos/lib/build-vms.nix
+++ b/nixos/lib/build-vms.nix
@@ -1,6 +1,13 @@
-{ system, minimal ? false, config ? {} }:
-
-let pkgs = import ../.. { inherit system config; }; in
+{ system
+, # Use a minimal kernel?
+ minimal ? false
+, # Ignored
+ config ? null
+ # Nixpkgs, for qemu, lib and more
+, pkgs
+, # NixOS configuration to add to the VMs
+ extraConfigurations ? []
+}:
with pkgs.lib;
with import ../lib/qemu-flags.nix { inherit pkgs; };
@@ -28,9 +35,10 @@ rec {
modules = configurations ++
[ ../modules/virtualisation/qemu-vm.nix
../modules/testing/test-instrumentation.nix # !!! should only get added for automated test runs
- { key = "no-manual"; services.nixosManual.enable = false; }
+ { key = "no-manual"; documentation.nixos.enable = false; }
{ key = "qemu"; system.build.qemu = qemu; }
- ] ++ optional minimal ../modules/testing/minimal-kernel.nix;
+ ] ++ optional minimal ../modules/testing/minimal-kernel.nix
+ ++ extraConfigurations;
extraArgs = { inherit nodes; };
};
@@ -75,6 +83,8 @@ rec {
(m': let config = (getAttr m' nodes).config; in
optionalString (config.networking.primaryIPAddress != "")
("${config.networking.primaryIPAddress} " +
+ optionalString (config.networking.domain != null)
+ "${config.networking.hostName}.${config.networking.domain} " +
"${config.networking.hostName}\n"));
virtualisation.qemu.options =
diff --git a/nixos/lib/eval-config.nix b/nixos/lib/eval-config.nix
index 97c79487df4c140d2c0126899cd9630041e357c9..77490ca3762a53688b0ebd3b8a63dc6e38f8b69f 100644
--- a/nixos/lib/eval-config.nix
+++ b/nixos/lib/eval-config.nix
@@ -28,7 +28,7 @@
let extraArgs_ = extraArgs; pkgs_ = pkgs;
extraModules = let e = builtins.getEnv "NIXOS_EXTRA_MODULE_PATH";
- in if e == "" then [] else [(import (builtins.toPath e))];
+ in if e == "" then [] else [(import e)];
in
let
@@ -36,7 +36,11 @@ let
_file = ./eval-config.nix;
key = _file;
config = {
- nixpkgs.localSystem = lib.mkDefault { inherit system; };
+ # Explicit `nixpkgs.system` or `nixpkgs.localSystem` should override
+ # this. Since the latter defaults to the former, the former should
+ # default to the argument. That way this new default could propagate all
+ # they way through, but has the last priority behind everything else.
+ nixpkgs.system = lib.mkDefault system;
_module.args.pkgs = lib.mkIf (pkgs_ != null) (lib.mkForce pkgs_);
};
};
@@ -47,15 +51,16 @@ in rec {
# system configuration.
inherit (lib.evalModules {
inherit prefix check;
- modules = modules ++ extraModules ++ baseModules ++ [ pkgsModule ];
+ modules = baseModules ++ extraModules ++ [ pkgsModule ] ++ modules;
args = extraArgs;
- specialArgs = { modulesPath = ../modules; } // specialArgs;
+ specialArgs =
+ { modulesPath = builtins.toString ../modules; } // specialArgs;
}) config options;
# These are the extra arguments passed to every module. In
# particular, Nixpkgs is passed through the "pkgs" argument.
extraArgs = extraArgs_ // {
- inherit modules baseModules;
+ inherit baseModules extraModules modules;
};
inherit (config._module.args) pkgs;
diff --git a/nixos/lib/make-channel.nix b/nixos/lib/make-channel.nix
index fd805f7f943f21a4f0febfdf1e05029ce1a52c49..9b920b989fcf36140e205be719c46d63f1d53f98 100644
--- a/nixos/lib/make-channel.nix
+++ b/nixos/lib/make-channel.nix
@@ -1,3 +1,7 @@
+/* Build a channel tarball. These contain, in addition to the nixpkgs
+ * expressions themselves, files that indicate the version of nixpkgs
+ * that they represent.
+ */
{ pkgs, nixpkgs, version, versionSuffix }:
pkgs.releaseTools.makeSourceTarball {
diff --git a/nixos/lib/make-disk-image.nix b/nixos/lib/make-disk-image.nix
index bf32a36895c5e1f837730624f3b46cdf4e034845..5e86ea479d518292fb6f7d35d99b865463254ec7 100644
--- a/nixos/lib/make-disk-image.nix
+++ b/nixos/lib/make-disk-image.nix
@@ -27,6 +27,9 @@
, # The root file system type.
fsType ? "ext4"
+, # Filesystem label
+ label ? "nixos"
+
, # The initial NixOS configuration file to be copied to
# /etc/nixos/configuration.nix.
configFile ? null
@@ -84,7 +87,7 @@ let format' = format; in let
# FIXME: merge with channel.nix / make-channel.nix.
channelSources = pkgs.runCommand "nixos-${config.system.nixos.version}" {} ''
mkdir -p $out
- cp -prd ${nixpkgs} $out/nixos
+ cp -prd ${nixpkgs.outPath} $out/nixos
chmod -R u+w $out/nixos
if [ ! -e $out/nixos/nixpkgs ]; then
ln -s . $out/nixos/nixpkgs
@@ -134,9 +137,9 @@ let format' = format; in let
# Get start & length of the root partition in sectors to $START and $SECTORS.
eval $(partx $diskImage -o START,SECTORS --nr ${rootPartition} --pairs)
- mkfs.${fsType} -F -L nixos $diskImage -E offset=$(sectorsToBytes $START) $(sectorsToKilobytes $SECTORS)K
+ mkfs.${fsType} -F -L ${label} $diskImage -E offset=$(sectorsToBytes $START) $(sectorsToKilobytes $SECTORS)K
'' else ''
- mkfs.${fsType} -F -L nixos $diskImage
+ mkfs.${fsType} -F -L ${label} $diskImage
''}
root="$PWD/root"
diff --git a/nixos/lib/make-ext4-fs.nix b/nixos/lib/make-ext4-fs.nix
index 88be8b73ab37b03a66fba86f8fe23c3cfa4544e4..47c6374c81adab155a061598848cb2d37ac4247d 100644
--- a/nixos/lib/make-ext4-fs.nix
+++ b/nixos/lib/make-ext4-fs.nix
@@ -9,6 +9,7 @@
, e2fsprogs
, libfaketime
, perl
+, lkl
}:
let
@@ -18,16 +19,13 @@ in
pkgs.stdenv.mkDerivation {
name = "ext4-fs.img";
- nativeBuildInputs = [e2fsprogs.bin libfaketime perl];
+ nativeBuildInputs = [e2fsprogs.bin libfaketime perl lkl];
buildCommand =
''
# Add the closures of the top-level store objects.
storePaths=$(cat ${sdClosureInfo}/store-paths)
- # Also include a manifest of the closures in a format suitable for nix-store --load-db.
- cp ${sdClosureInfo}/registration nix-path-registration
-
# Make a crude approximation of the size of the target image.
# If the script starts failing, increase the fudge factors here.
numInodes=$(find $storePaths | wc -l)
@@ -38,55 +36,16 @@ pkgs.stdenv.mkDerivation {
truncate -s $bytes $out
faketime -f "1970-01-01 00:00:01" mkfs.ext4 -L ${volumeLabel} -U ${uuid} $out
- # Populate the image contents by piping a bunch of commands to the `debugfs` tool from e2fsprogs.
- # For example, to copy /nix/store/abcd...efg-coreutils-8.23/bin/sleep:
- # cd /nix/store/abcd...efg-coreutils-8.23/bin
- # write /nix/store/abcd...efg-coreutils-8.23/bin/sleep sleep
- # sif sleep mode 040555
- # sif sleep gid 30000
- # In particular, debugfs doesn't handle absolute target paths; you have to 'cd' in the virtual
- # filesystem first. Likewise the intermediate directories must already exist (using `find`
- # handles that for us). And when setting the file's permissions, the inode type flags (__S_IFDIR,
- # __S_IFREG) need to be set as well.
- (
- echo write nix-path-registration nix-path-registration
- echo mkdir nix
- echo cd /nix
- echo mkdir store
-
- # XXX: This explodes in exciting ways if anything in /nix/store has a space in it.
- find $storePaths -printf '%y %f %h %m\n'| while read -r type file dir perms; do
- # echo "TYPE=$type DIR=$dir FILE=$file PERMS=$perms" >&2
+ # Also include a manifest of the closures in a format suitable for nix-store --load-db.
+ cp ${sdClosureInfo}/registration nix-path-registration
+ cptofs -t ext4 -i $out nix-path-registration /
- echo "cd $dir"
- case $type in
- d)
- echo "mkdir $file"
- echo sif $file mode $((040000 | 0$perms)) # magic constant is __S_IFDIR
- ;;
- f)
- echo "write $dir/$file $file"
- echo sif $file mode $((0100000 | 0$perms)) # magic constant is __S_IFREG
- ;;
- l)
- echo "symlink $file $(readlink "$dir/$file")"
- ;;
- *)
- echo "Unknown entry: $type $dir $file $perms" >&2
- exit 1
- ;;
- esac
+ # Create nix/store before copying paths
+ faketime -f "1970-01-01 00:00:01" mkdir -p nix/store
+ cptofs -t ext4 -i $out nix /
- echo sif $file gid 30000 # chgrp to nixbld
- done
- ) | faketime -f "1970-01-01 00:00:01" debugfs -w $out -f /dev/stdin > errorlog 2>&1
-
- # The debugfs tool doesn't terminate on error nor exit with a non-zero status. Check manually.
- if egrep -q 'Could not allocate|File not found' errorlog; then
- cat errorlog
- echo "--- Failed to create EXT4 image of $bytes bytes (numInodes=$numInodes, numDataBlocks=$numDataBlocks) ---"
- return 1
- fi
+ echo "copying store paths to image..."
+ cptofs -t ext4 -i $out $storePaths /nix/store/
# I have ended up with corrupted images sometimes, I suspect that happens when the build machine's disk gets full during the build.
if ! fsck.ext4 -n -f $out; then
@@ -94,5 +53,24 @@ pkgs.stdenv.mkDerivation {
cat errorlog
return 1
fi
+
+ (
+ # Resizes **snugly** to its actual limits (or closer to)
+ free=$(dumpe2fs $out | grep '^Free blocks:')
+ blocksize=$(dumpe2fs $out | grep '^Block size:')
+ blocks=$(dumpe2fs $out | grep '^Block count:')
+ blocks=$((''${blocks##*:})) # format the number.
+ blocksize=$((''${blocksize##*:})) # format the number.
+ # System can't boot with 0 blocks free.
+ # Add 16MiB of free space
+ fudge=$(( 16 * 1024 * 1024 / blocksize ))
+ size=$(( blocks - ''${free##*:} + fudge ))
+
+ echo "Resizing from $blocks blocks to $size blocks. (~ $((size*blocksize/1024/1024))MiB)"
+ EXT2FS_NO_MTAB_OK=yes resize2fs $out -f $size
+ )
+
+ # And a final fsck, because of the previous truncating.
+ fsck.ext4 -n -f $out
'';
}
diff --git a/nixos/lib/make-iso9660-image.sh b/nixos/lib/make-iso9660-image.sh
index 45cdef1ef4df5933e4ae10d057bf341d92ad6db2..b7b1ab52a637365f03424b80d88d6725da9abc51 100644
--- a/nixos/lib/make-iso9660-image.sh
+++ b/nixos/lib/make-iso9660-image.sh
@@ -47,7 +47,8 @@ if test -n "$bootable"; then
isoBootFlags="-eltorito-boot ${bootImage}
-eltorito-catalog .boot.cat
- -no-emul-boot -boot-load-size 4 -boot-info-table"
+ -no-emul-boot -boot-load-size 4 -boot-info-table
+ --sort-weight 1 /isolinux" # Make sure isolinux is near the beginning of the ISO
fi
if test -n "$usbBootable"; then
@@ -112,7 +113,7 @@ xorriso="xorriso
-r
-path-list pathlist
--sort-weight 0 /
- --sort-weight 1 /isolinux" # Make sure isolinux is near the beginning of the ISO
+"
$xorriso -output $out/iso/$isoName
diff --git a/nixos/lib/make-squashfs.nix b/nixos/lib/make-squashfs.nix
index 7ab84e47f53b592ef70e5c598a126ece66c0a299..ee76c9c5bf240bfa2d9247722a447a79c4c57303 100644
--- a/nixos/lib/make-squashfs.nix
+++ b/nixos/lib/make-squashfs.nix
@@ -3,6 +3,9 @@
, # The root directory of the squashfs filesystem is filled with the
# closures of the Nix store paths listed here.
storeContents ? []
+, # Compression parameters.
+ # For zstd compression you can use "zstd -Xcompression-level 6".
+ comp ? "xz -Xdict-size 100%"
}:
stdenv.mkDerivation {
@@ -20,6 +23,6 @@ stdenv.mkDerivation {
# Generate the squashfs image.
mksquashfs nix-path-registration $(cat $closureInfo/store-paths) $out \
- -keep-as-directory -all-root -b 1048576 -comp xz -Xdict-size 100%
+ -keep-as-directory -all-root -b 1048576 -comp ${comp}
'';
}
diff --git a/nixos/lib/make-system-tarball.nix b/nixos/lib/make-system-tarball.nix
index 92539235be754932dbee61e72d68da62792aeb8c..dee91a6ce3f4922fcad2e6f4bef572fcb2cbdd28 100644
--- a/nixos/lib/make-system-tarball.nix
+++ b/nixos/lib/make-system-tarball.nix
@@ -1,7 +1,7 @@
-{ stdenv, perl, pixz, pathsFromGraph
+{ stdenv, closureInfo, pixz
, # The file name of the resulting tarball
- fileName ? "nixos-system-${stdenv.system}"
+ fileName ? "nixos-system-${stdenv.hostPlatform.system}"
, # The files and directories to be placed in the tarball.
# This is a list of attribute sets {source, target} where `source'
@@ -29,24 +29,28 @@
, extraInputs ? [ pixz ]
}:
+let
+ symlinks = map (x: x.symlink) storeContents;
+ objects = map (x: x.object) storeContents;
+in
+
stdenv.mkDerivation {
name = "tarball";
builder = ./make-system-tarball.sh;
- buildInputs = [ perl ] ++ extraInputs;
+ buildInputs = extraInputs;
- inherit fileName pathsFromGraph extraArgs extraCommands compressCommand;
+ inherit fileName extraArgs extraCommands compressCommand;
# !!! should use XML.
sources = map (x: x.source) contents;
targets = map (x: x.target) contents;
# !!! should use XML.
- objects = map (x: x.object) storeContents;
- symlinks = map (x: x.symlink) storeContents;
+ inherit symlinks objects;
- # For obtaining the closure of `storeContents'.
- exportReferencesGraph =
- map (x: [("closure-" + baseNameOf x.object) x.object]) storeContents;
+ closureInfo = closureInfo {
+ rootPaths = objects;
+ };
extension = compressionExtension;
}
diff --git a/nixos/lib/make-system-tarball.sh b/nixos/lib/make-system-tarball.sh
index 1a52a284a2573ebffe0c9c3e160eb8fd7bc4ac1b..1a0017a1799a4f87d3efc9246eb62e793f2648b1 100644
--- a/nixos/lib/make-system-tarball.sh
+++ b/nixos/lib/make-system-tarball.sh
@@ -3,7 +3,6 @@ source $stdenv/setup
sources_=($sources)
targets_=($targets)
-echo $objects
objects=($objects)
symlinks=($symlinks)
@@ -14,8 +13,6 @@ stripSlash() {
if test "${res:0:1}" = /; then res=${res:1}; fi
}
-touch pathlist
-
# Add the individual files.
for ((i = 0; i < ${#targets_[@]}; i++)); do
stripSlash "${targets_[$i]}"
@@ -25,9 +22,9 @@ done
# Add the closures of the top-level store objects.
+chmod +w .
mkdir -p nix/store
-storePaths=$(perl $pathsFromGraph closure-*)
-for i in $storePaths; do
+for i in $(< $closureInfo/store-paths); do
cp -a "$i" "${i:1}"
done
@@ -35,7 +32,7 @@ done
# TODO tar ruxo
# Also include a manifest of the closures in a format suitable for
# nix-store --load-db.
-printRegistration=1 perl $pathsFromGraph closure-* > nix-path-registration
+cp $closureInfo/registration nix-path-registration
# Add symlinks to the top-level store objects.
for ((n = 0; n < ${#objects[*]}; n++)); do
diff --git a/nixos/lib/qemu-flags.nix b/nixos/lib/qemu-flags.nix
index 6f61c64a832e119b3cfed1311dd3182b31026584..779f0377a512300e8b65ac3eea73615f53e63583 100644
--- a/nixos/lib/qemu-flags.nix
+++ b/nixos/lib/qemu-flags.nix
@@ -1,21 +1,25 @@
# QEMU flags shared between various Nix expressions.
{ pkgs }:
+let
+ zeroPad = n: if n < 10 then "0${toString n}" else toString n;
+in
+
{
qemuNICFlags = nic: net: machine:
- [ "-net nic,vlan=${toString nic},macaddr=52:54:00:12:${toString net}:${toString machine},model=virtio"
- "-net vde,vlan=${toString nic},sock=$QEMU_VDE_SOCKET_${toString net}"
+ [ "-device virtio-net-pci,netdev=vlan${toString nic},mac=52:54:00:12:${zeroPad net}:${zeroPad machine}"
+ "-netdev vde,id=vlan${toString nic},sock=$QEMU_VDE_SOCKET_${toString net}"
];
qemuSerialDevice = if pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64 then "ttyS0"
else if pkgs.stdenv.isAarch32 || pkgs.stdenv.isAarch64 then "ttyAMA0"
- else throw "Unknown QEMU serial device for system '${pkgs.stdenv.system}'";
+ else throw "Unknown QEMU serial device for system '${pkgs.stdenv.hostPlatform.system}'";
qemuBinary = qemuPkg: {
"x86_64-linux" = "${qemuPkg}/bin/qemu-kvm -cpu kvm64";
"armv7l-linux" = "${qemuPkg}/bin/qemu-system-arm -enable-kvm -machine virt -cpu host";
"aarch64-linux" = "${qemuPkg}/bin/qemu-system-aarch64 -enable-kvm -machine virt,gic-version=host -cpu host";
"x86_64-darwin" = "${qemuPkg}/bin/qemu-kvm -cpu kvm64";
- }.${pkgs.stdenv.system} or "${qemuPkg}/bin/qemu-kvm";
+ }.${pkgs.stdenv.hostPlatform.system} or "${qemuPkg}/bin/qemu-kvm";
}
diff --git a/nixos/lib/test-driver/Logger.pm b/nixos/lib/test-driver/Logger.pm
index 3fe5ef67c144e35cf80d225a3d5963d274134969..080310ea34e0854dd5c6efada0f44830ab78861f 100644
--- a/nixos/lib/test-driver/Logger.pm
+++ b/nixos/lib/test-driver/Logger.pm
@@ -4,6 +4,7 @@ use strict;
use Thread::Queue;
use XML::Writer;
use Encode qw(decode encode);
+use Time::HiRes qw(clock_gettime CLOCK_MONOTONIC);
sub new {
my ($class) = @_;
@@ -46,10 +47,12 @@ sub nest {
print STDERR maybePrefix("$msg\n", $attrs);
$self->{log}->startTag("nest");
$self->{log}->dataElement("head", $msg, %{$attrs});
+ my $now = clock_gettime(CLOCK_MONOTONIC);
$self->drainLogQueue();
eval { &$coderef };
my $res = $@;
$self->drainLogQueue();
+ $self->log(sprintf("(%.2f seconds)", clock_gettime(CLOCK_MONOTONIC) - $now));
$self->{log}->endTag("nest");
die $@ if $@;
}
diff --git a/nixos/lib/test-driver/Machine.pm b/nixos/lib/test-driver/Machine.pm
index b18f48464ceec5917b38b71d02b9235e54368ffa..006da889671eea860b18c27266614761aff0c5ca 100644
--- a/nixos/lib/test-driver/Machine.pm
+++ b/nixos/lib/test-driver/Machine.pm
@@ -10,6 +10,7 @@ use Cwd;
use File::Basename;
use File::Path qw(make_path);
use File::Slurp;
+use Time::HiRes qw(clock_gettime CLOCK_MONOTONIC);
my $showGraphics = defined $ENV{'DISPLAY'};
@@ -247,12 +248,15 @@ sub connect {
$self->start;
+ my $now = clock_gettime(CLOCK_MONOTONIC);
local $SIG{ALRM} = sub { die "timed out waiting for the VM to connect\n"; };
- alarm 300;
+ alarm 600;
readline $self->{socket} or die "the VM quit before connecting\n";
alarm 0;
$self->log("connected to guest root shell");
+ # We're interested in tracking how close we are to `alarm`.
+ $self->log(sprintf("(connecting took %.2f seconds)", clock_gettime(CLOCK_MONOTONIC) - $now));
$self->{connected} = 1;
});
diff --git a/nixos/lib/testing.nix b/nixos/lib/testing.nix
index 42a0c60c7e19c893ad57d49a9b03ddb0f6e19a6d..a13e76a695603f5d7350157710f3b06c84f66e45 100644
--- a/nixos/lib/testing.nix
+++ b/nixos/lib/testing.nix
@@ -1,6 +1,13 @@
-{ system, minimal ? false, config ? {} }:
-
-with import ./build-vms.nix { inherit system minimal config; };
+{ system
+, pkgs ? import ../.. { inherit system config; }
+ # Use a minimal kernel?
+, minimal ? false
+ # Ignored
+, config ? {}
+ # Modules to add to each VM
+, extraConfigurations ? [] }:
+
+with import ./build-vms.nix { inherit system pkgs minimal extraConfigurations; };
with pkgs;
let
@@ -27,14 +34,14 @@ in rec {
cp ${./test-driver/test-driver.pl} $out/bin/nixos-test-driver
chmod u+x $out/bin/nixos-test-driver
- libDir=$out/lib/perl5/site_perl
+ libDir=$out/${perl.libPrefix}
mkdir -p $libDir
cp ${./test-driver/Machine.pm} $libDir/Machine.pm
cp ${./test-driver/Logger.pm} $libDir/Logger.pm
wrapProgram $out/bin/nixos-test-driver \
--prefix PATH : "${lib.makeBinPath [ qemu_test vde2 netpbm coreutils ]}" \
- --prefix PERL5LIB : "${with perlPackages; lib.makePerlPath [ TermReadLineGnu XMLWriter IOTty FileSlurp ]}:$out/lib/perl5/site_perl"
+ --prefix PERL5LIB : "${with perlPackages; makePerlPath [ TermReadLineGnu XMLWriter IOTty FileSlurp ]}:$out/${perl.libPrefix}"
'';
};
@@ -69,7 +76,7 @@ in rec {
mkdir -p $out/coverage-data
mv $i $out/coverage-data/$(dirname $(dirname $i))
done
- ''; # */
+ '';
};
@@ -109,7 +116,7 @@ in rec {
vms = map (m: m.config.system.build.vm) (lib.attrValues nodes);
- ocrProg = tesseract_4.override { enableLanguages = [ "eng" ]; };
+ ocrProg = tesseract4.override { enableLanguages = [ "eng" ]; };
imagemagick_tiff = imagemagick_light.override { inherit libtiff; };
@@ -149,9 +156,23 @@ in rec {
test = passMeta (runTests driver);
report = passMeta (releaseTools.gcovReport { coverageRuns = [ test ]; });
- in (if makeCoverageReport then report else test) // {
- inherit nodes driver test;
- };
+ nodeNames = builtins.attrNames nodes;
+ invalidNodeNames = lib.filter
+ (node: builtins.match "^[A-z_][A-z0-9_]+$" node == null) nodeNames;
+
+ in
+ if lib.length invalidNodeNames > 0 then
+ throw ''
+ Cannot create machines out of (${lib.concatStringsSep ", " invalidNodeNames})!
+ All machines are referenced as perl variables in the testing framework which will break the
+ script when special characters are used.
+
+ Please stick to alphanumeric chars and underscores as separation.
+ ''
+ else
+ (if makeCoverageReport then report else test) // {
+ inherit nodes driver test;
+ };
runInMachine =
{ drv
diff --git a/nixos/lib/utils.nix b/nixos/lib/utils.nix
index 1ef915d406120fcb712ed61838a67de44c3c92a2..b68e55a40b90829d06e620f9924c149b6ecfe464 100644
--- a/nixos/lib/utils.nix
+++ b/nixos/lib/utils.nix
@@ -7,9 +7,8 @@ rec {
|| elem fs.mountPoint [ "/" "/nix" "/nix/store" "/var" "/var/log" "/var/lib" "/etc" ];
# Check whenever `b` depends on `a` as a fileSystem
- # FIXME: it's incorrect to simply use hasPrefix here: "/dev/a" is not a parent of "/dev/ab"
- fsBefore = a: b: ((any (x: elem x [ "bind" "move" ]) b.options) && (a.mountPoint == b.device))
- || (hasPrefix a.mountPoint b.mountPoint);
+ fsBefore = a: b: a.mountPoint == b.device
+ || hasPrefix "${a.mountPoint}${optionalString (!(hasSuffix "/" a.mountPoint)) "/"}" b.mountPoint;
# Escape a path according to the systemd rules, e.g. /dev/xyzzy
# becomes dev-xyzzy. FIXME: slow.
diff --git a/nixos/maintainers/scripts/cloudstack/cloudstack-image.nix b/nixos/maintainers/scripts/cloudstack/cloudstack-image.nix
new file mode 100644
index 0000000000000000000000000000000000000000..37b46db059c063e726aae8866dda32d9b18bb5e6
--- /dev/null
+++ b/nixos/maintainers/scripts/cloudstack/cloudstack-image.nix
@@ -0,0 +1,23 @@
+# nix-build '' -A config.system.build.cloudstackImage --arg configuration "{ imports = [ ./nixos/maintainers/scripts/cloudstack/cloudstack-image.nix ]; }"
+
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+{
+ imports =
+ [ ../../../modules/virtualisation/cloudstack-config.nix ];
+
+ system.build.cloudstackImage = import ../../../lib/make-disk-image.nix {
+ inherit lib config pkgs;
+ diskSize = 8192;
+ format = "qcow2";
+ configFile = pkgs.writeText "configuration.nix"
+ ''
+ {
+ imports = [ ];
+ }
+ '';
+ };
+
+}
diff --git a/nixos/maintainers/scripts/ec2/amazon-image.nix b/nixos/maintainers/scripts/ec2/amazon-image.nix
index eeae27ede0f89f04f43dc5d12a284cc87fd7559e..88d95e675447cb568da555c1fbb9b19e3beb7f22 100644
--- a/nixos/maintainers/scripts/ec2/amazon-image.nix
+++ b/nixos/maintainers/scripts/ec2/amazon-image.nix
@@ -53,6 +53,7 @@ in {
pkgs = import ../../../.. { inherit (pkgs) system; }; # ensure we use the regular qemu-kvm package
partitionTableType = if config.ec2.hvm then "legacy" else "none";
diskSize = cfg.sizeMB;
+ fsType = "ext4";
configFile = pkgs.writeText "configuration.nix"
''
{
diff --git a/nixos/maintainers/scripts/gce/create-gce.sh b/nixos/maintainers/scripts/gce/create-gce.sh
index 0fd26d34d07f9ff6bf8bc55eb78bb88785196ae9..48748a59d298a41ff022f7c9ae76efc507c124ca 100755
--- a/nixos/maintainers/scripts/gce/create-gce.sh
+++ b/nixos/maintainers/scripts/gce/create-gce.sh
@@ -7,9 +7,9 @@ BUCKET_NAME="${BUCKET_NAME:-nixos-cloud-images}"
TIMESTAMP="$(date +%Y%m%d%H%M)"
export TIMESTAMP
-nix-build '' \
+nix-build '' \
-A config.system.build.googleComputeImage \
- --arg configuration "{ imports = [ ]; }" \
+ --arg modules "[ ]" \
--argstr system x86_64-linux \
-o gce \
-j 10
diff --git a/nixos/maintainers/scripts/openstack/nova-image.nix b/nixos/maintainers/scripts/openstack/nova-image.nix
deleted file mode 100644
index b6f3a5b152003cfa8ffd9f680c60ea5289ea40eb..0000000000000000000000000000000000000000
--- a/nixos/maintainers/scripts/openstack/nova-image.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-# nix-build '' -A config.system.build.novaImage --arg configuration "{ imports = [ ./nixos/maintainers/scripts/openstack/nova-image.nix ]; }"
-
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-{
- imports =
- [ ../../../modules/installer/cd-dvd/channel.nix
- ../../../modules/virtualisation/nova-config.nix
- ];
-
- system.build.novaImage = import ../../../lib/make-disk-image.nix {
- inherit lib config;
- pkgs = import ../../../.. { inherit (pkgs) system; }; # ensure we use the regular qemu-kvm package
- diskSize = 8192;
- format = "qcow2";
- configFile = pkgs.writeText "configuration.nix"
- ''
- {
- imports = [ ];
- }
- '';
- };
-
-}
diff --git a/nixos/maintainers/scripts/openstack/openstack-image.nix b/nixos/maintainers/scripts/openstack/openstack-image.nix
new file mode 100644
index 0000000000000000000000000000000000000000..4c464f43f61d8ba67d4e17d215e2e8089660a2c4
--- /dev/null
+++ b/nixos/maintainers/scripts/openstack/openstack-image.nix
@@ -0,0 +1,26 @@
+# nix-build '' -A config.system.build.openstackImage --arg configuration "{ imports = [ ./nixos/maintainers/scripts/openstack/openstack-image.nix ]; }"
+
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+{
+ imports =
+ [ ../../../modules/installer/cd-dvd/channel.nix
+ ../../../modules/virtualisation/openstack-config.nix
+ ];
+
+ system.build.openstackImage = import ../../../lib/make-disk-image.nix {
+ inherit lib config;
+ pkgs = import ../../../.. { inherit (pkgs) system; }; # ensure we use the regular qemu-kvm package
+ diskSize = 8192;
+ format = "qcow2";
+ configFile = pkgs.writeText "configuration.nix"
+ ''
+ {
+ imports = [ ];
+ }
+ '';
+ };
+
+}
diff --git a/nixos/modules/config/appstream.nix b/nixos/modules/config/appstream.nix
new file mode 100644
index 0000000000000000000000000000000000000000..483ac9c3cd76221d7abbd4fdccfc870bbc840523
--- /dev/null
+++ b/nixos/modules/config/appstream.nix
@@ -0,0 +1,25 @@
+{ config, lib, ... }:
+
+with lib;
+{
+ options = {
+ appstream.enable = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether to install files to support the
+ AppStream metadata specification.
+ '';
+ };
+ };
+
+ config = mkIf config.appstream.enable {
+ environment.pathsToLink = [
+ # per component metadata
+ "/share/metainfo"
+ # legacy path for above
+ "/share/appdata"
+ ];
+ };
+
+}
diff --git a/nixos/modules/config/fonts/fontconfig-penultimate.nix b/nixos/modules/config/fonts/fontconfig-penultimate.nix
index fc01c15acb9b895b55ca289d2b71d4c66e9ff905..2c18244621afa10fe601711109807b145e10cd33 100644
--- a/nixos/modules/config/fonts/fontconfig-penultimate.nix
+++ b/nixos/modules/config/fonts/fontconfig-penultimate.nix
@@ -55,7 +55,9 @@ let
localConf = pkgs.writeText "fc-local.conf" cfg.localConf;
# The configuration to be included in /etc/font/
- penultimateConf = pkgs.runCommand "font-penultimate-conf" {} ''
+ penultimateConf = pkgs.runCommand "font-penultimate-conf" {
+ preferLocalBuild = true;
+ } ''
support_folder=$out/etc/fonts/conf.d
latest_folder=$out/etc/fonts/${latestVersion}/conf.d
@@ -269,7 +271,7 @@ in
};
- config = mkIf (config.fonts.fontconfig.enable && cfg.enable) {
+ config = mkIf (config.fonts.fontconfig.enable && config.fonts.fontconfig.penultimate.enable) {
fonts.fontconfig.confPackages = [ penultimateConf ];
diff --git a/nixos/modules/config/fonts/fontconfig-ultimate.nix b/nixos/modules/config/fonts/fontconfig-ultimate.nix
index 7549dc6c0651c029221b79a760d7fccadb50a080..45328f3eaf13915df97901fc55ce8d96655e2fac 100644
--- a/nixos/modules/config/fonts/fontconfig-ultimate.nix
+++ b/nixos/modules/config/fonts/fontconfig-ultimate.nix
@@ -7,7 +7,7 @@ let cfg = config.fonts.fontconfig.ultimate;
latestVersion = pkgs.fontconfig.configVersion;
# The configuration to be included in /etc/font/
- confPkg = pkgs.runCommand "font-ultimate-conf" {} ''
+ confPkg = pkgs.runCommand "font-ultimate-conf" { preferLocalBuild = true; } ''
support_folder=$out/etc/fonts/conf.d
latest_folder=$out/etc/fonts/${latestVersion}/conf.d
diff --git a/nixos/modules/config/fonts/fontconfig.nix b/nixos/modules/config/fonts/fontconfig.nix
index 12f5ca2e7993a455221a0cbc5254420a978b58e9..d79c43c0b5b98e980da2237da68bf856918294a8 100644
--- a/nixos/modules/config/fonts/fontconfig.nix
+++ b/nixos/modules/config/fonts/fontconfig.nix
@@ -190,7 +190,7 @@ let cfg = config.fonts.fontconfig;
'';
# fontconfig configuration package
- confPkg = pkgs.runCommand "fontconfig-conf" {} ''
+ confPkg = pkgs.runCommand "fontconfig-conf" { preferLocalBuild = true; } ''
support_folder=$out/etc/fonts
latest_folder=$out/etc/fonts/${latestVersion}
diff --git a/nixos/modules/config/fonts/fontdir.nix b/nixos/modules/config/fonts/fontdir.nix
index 180e38f81f4fcaceaee5a59de56fa4c803301ff6..cc70fbf8744d9d4b8f19db9fd80676c7959ae73b 100644
--- a/nixos/modules/config/fonts/fontdir.nix
+++ b/nixos/modules/config/fonts/fontdir.nix
@@ -4,7 +4,7 @@ with lib;
let
- x11Fonts = pkgs.runCommand "X11-fonts" { } ''
+ x11Fonts = pkgs.runCommand "X11-fonts" { preferLocalBuild = true; } ''
mkdir -p "$out/share/X11-fonts"
find ${toString config.fonts.fonts} \
\( -name fonts.dir -o -name '*.ttf' -o -name '*.otf' \) \
diff --git a/nixos/modules/config/gtk/gtk-icon-cache.nix b/nixos/modules/config/gtk/gtk-icon-cache.nix
new file mode 100644
index 0000000000000000000000000000000000000000..9c5d993b9c592c94d85ba22cb9f5586365f7870b
--- /dev/null
+++ b/nixos/modules/config/gtk/gtk-icon-cache.nix
@@ -0,0 +1,86 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+{
+ options = {
+ gtk.iconCache.enable = mkOption {
+ type = types.bool;
+ default = config.services.xserver.enable;
+ description = ''
+ Whether to build icon theme caches for GTK+ applications.
+ '';
+ };
+ };
+
+ config = mkIf config.gtk.iconCache.enable {
+
+ # (Re)build icon theme caches
+ # ---------------------------
+ # Each icon theme has its own cache. The difficult is that many
+ # packages may contribute with icons to the same theme by installing
+ # some icons.
+ #
+ # For instance, on my current NixOS system, the following packages
+ # (among many others) have icons installed into the hicolor icon
+ # theme: hicolor-icon-theme, psensor, wpa_gui, caja, etc.
+ #
+ # As another example, the mate icon theme has icons installed by the
+ # packages mate-icon-theme, mate-settings-daemon, and libmateweather.
+ #
+ # The HighContrast icon theme also has icons from different packages,
+ # like gnome-theme-extras and meld.
+
+ # When the cache is built all of its icons has to be known. How to
+ # implement this?
+ #
+ # I think that most themes have all icons installed by only one
+ # package. On my system there are 71 themes installed. Only 3 of them
+ # have icons installed from more than one package.
+ #
+ # If the main package of the theme provides a cache, presumably most
+ # of its icons will be available to applications without running this
+ # module. But additional icons offered by other packages will not be
+ # available. Therefore I think that it is good that the main theme
+ # package installs a cache (although it does not completely fixes the
+ # situation for packages installed with nix-env).
+ #
+ # The module solution presented here keeps the cache when there is
+ # only one package contributing with icons to the theme. Otherwise it
+ # rebuilds the cache taking into account the icons provided all
+ # packages.
+
+ environment.extraSetup = ''
+ # For each icon theme directory ...
+
+ find $out/share/icons -mindepth 1 -maxdepth 1 -print0 | while read -d $'\0' themedir
+ do
+
+ # In order to build the cache, the theme dir should be
+ # writable. When the theme dir is a symbolic link to somewhere
+ # in the nix store it is not writable and it means that only
+ # one package is contributing to the theme. If it already has
+ # a cache, no rebuild is needed. Otherwise a cache has to be
+ # built, and to be able to do that we first remove the
+ # symbolic link and make a directory, and then make symbolic
+ # links from the original directory into the new one.
+
+ if [ ! -w "$themedir" -a -L "$themedir" -a ! -r "$themedir"/icon-theme.cache ]; then
+ name=$(basename "$themedir")
+ path=$(readlink -f "$themedir")
+ rm "$themedir"
+ mkdir -p "$themedir"
+ ln -s "$path"/* "$themedir"/
+ fi
+
+ # (Re)build the cache if the theme dir is writable, replacing any
+ # existing cache for the theme
+
+ if [ -w "$themedir" ]; then
+ rm -f "$themedir"/icon-theme.cache
+ ${pkgs.gtk3.out}/bin/gtk-update-icon-cache --ignore-theme-index "$themedir"
+ fi
+ done
+ '';
+ };
+
+}
diff --git a/nixos/modules/config/i18n.nix b/nixos/modules/config/i18n.nix
index 6bf8c653e113a0247ee5cc1f7fefca5ba53f988b..dc7305b1ba24c7ded0dbbaaa8fc3937e30d1e3d1 100644
--- a/nixos/modules/config/i18n.nix
+++ b/nixos/modules/config/i18n.nix
@@ -34,6 +34,17 @@ with lib;
'';
};
+ extraLocaleSettings = mkOption {
+ type = types.attrsOf types.str;
+ default = {};
+ example = { LC_MESSAGES = "en_US.UTF-8"; LC_TIME = "de_DE.UTF-8"; };
+ description = ''
+ A set of additional system-wide locale settings other than
+ LANG which can be configured with
+ .
+ '';
+ };
+
supportedLocales = mkOption {
type = types.listOf types.str;
default = ["all"];
@@ -129,7 +140,7 @@ with lib;
environment.sessionVariables =
{ LANG = config.i18n.defaultLocale;
LOCALE_ARCHIVE = "/run/current-system/sw/lib/locale/locale-archive";
- };
+ } // config.i18n.extraLocaleSettings;
systemd.globalEnvironment = mkIf (config.i18n.supportedLocales != []) {
LOCALE_ARCHIVE = "${config.i18n.glibcLocales}/lib/locale/locale-archive";
@@ -141,6 +152,7 @@ with lib;
source = pkgs.writeText "locale.conf"
''
LANG=${config.i18n.defaultLocale}
+ ${concatStringsSep "\n" (mapAttrsToList (n: v: ''${n}=${v}'') config.i18n.extraLocaleSettings)}
'';
};
diff --git a/nixos/modules/config/iproute2.nix b/nixos/modules/config/iproute2.nix
index 881ad671a627596c8b903c8bc1fb493ce96acc9d..a1d9ebcec66bf54f94a0f20b0e0fc69c18acded7 100644
--- a/nixos/modules/config/iproute2.nix
+++ b/nixos/modules/config/iproute2.nix
@@ -4,20 +4,29 @@ with lib;
let
cfg = config.networking.iproute2;
- confDir = "/run/iproute2";
in
{
- options.networking.iproute2.enable = mkEnableOption "copy IP route configuration files";
-
- config = mkMerge [
- ({ nixpkgs.config.iproute2.confDir = confDir; })
-
- (mkIf cfg.enable {
- system.activationScripts.iproute2 = ''
- cp -R ${pkgs.iproute}/etc/iproute2 ${confDir}
- chmod -R 664 ${confDir}
- chmod +x ${confDir}
+ options.networking.iproute2 = {
+ enable = mkEnableOption "copy IP route configuration files";
+ rttablesExtraConfig = mkOption {
+ type = types.lines;
+ default = "";
+ description = ''
+ Verbatim lines to add to /etc/iproute2/rt_tables
'';
- })
- ];
+ };
+ };
+
+ config = mkIf cfg.enable {
+ environment.etc."iproute2/bpf_pinning" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/bpf_pinning"; };
+ environment.etc."iproute2/ematch_map" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/ematch_map"; };
+ environment.etc."iproute2/group" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/group"; };
+ environment.etc."iproute2/nl_protos" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/nl_protos"; };
+ environment.etc."iproute2/rt_dsfield" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/rt_dsfield"; };
+ environment.etc."iproute2/rt_protos" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/rt_protos"; };
+ environment.etc."iproute2/rt_realms" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/rt_realms"; };
+ environment.etc."iproute2/rt_scopes" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/rt_scopes"; };
+ environment.etc."iproute2/rt_tables" = { mode = "0644"; text = (fileContents "${pkgs.iproute}/etc/iproute2/rt_tables")
+ + (optionalString (cfg.rttablesExtraConfig != "") "\n\n${cfg.rttablesExtraConfig}"); };
+ };
}
diff --git a/nixos/modules/config/krb5/default.nix b/nixos/modules/config/krb5/default.nix
index c22e99a0a2f182ba6f91f35f59287d0310235612..87021a27d34f240778ed65bead0470138d8c4bdf 100644
--- a/nixos/modules/config/krb5/default.nix
+++ b/nixos/modules/config/krb5/default.nix
@@ -79,7 +79,7 @@ in {
options = {
krb5 = {
- enable = mkEnableOption "Whether to enable Kerberos V.";
+ enable = mkEnableOption "building krb5.conf, configuration file for Kerberos V";
kerberos = mkOption {
type = types.package;
diff --git a/nixos/modules/config/ldap.nix b/nixos/modules/config/ldap.nix
index 0693e896f7151601b93bb47970ac46b055095348..e008497a2a6e04c6eb7bcceaba0b7dfd231fad5d 100644
--- a/nixos/modules/config/ldap.nix
+++ b/nixos/modules/config/ldap.nix
@@ -27,23 +27,29 @@ let
'';
};
- nslcdConfig = {
- target = "nslcd.conf";
- source = writeText "nslcd.conf" ''
- uid nslcd
- gid nslcd
- uri ${cfg.server}
- base ${cfg.base}
- timelimit ${toString cfg.timeLimit}
- bind_timelimit ${toString cfg.bind.timeLimit}
- ${optionalString (cfg.bind.distinguishedName != "")
- "binddn ${cfg.bind.distinguishedName}" }
- ${optionalString (cfg.daemon.extraConfig != "") cfg.daemon.extraConfig }
- '';
- };
-
- insertLdapPassword = !config.users.ldap.daemon.enable &&
- config.users.ldap.bind.distinguishedName != "";
+ nslcdConfig = writeText "nslcd.conf" ''
+ uid nslcd
+ gid nslcd
+ uri ${cfg.server}
+ base ${cfg.base}
+ timelimit ${toString cfg.timeLimit}
+ bind_timelimit ${toString cfg.bind.timeLimit}
+ ${optionalString (cfg.bind.distinguishedName != "")
+ "binddn ${cfg.bind.distinguishedName}" }
+ ${optionalString (cfg.daemon.rootpwmoddn != "")
+ "rootpwmoddn ${cfg.daemon.rootpwmoddn}" }
+ ${optionalString (cfg.daemon.extraConfig != "") cfg.daemon.extraConfig }
+ '';
+
+ # nslcd normally reads configuration from /etc/nslcd.conf.
+ # this file might contain secrets. We append those at runtime,
+ # so redirect its location to something more temporary.
+ nslcdWrapped = runCommandNoCC "nslcd-wrapped" { nativeBuildInputs = [ makeWrapper ]; } ''
+ mkdir -p $out/bin
+ makeWrapper ${nss_pam_ldapd}/sbin/nslcd $out/bin/nslcd \
+ --set LD_PRELOAD "${pkgs.libredirect}/lib/libredirect.so" \
+ --set NIX_REDIRECTS "/etc/nslcd.conf=/run/nslcd/nslcd.conf"
+ '';
in
@@ -126,6 +132,26 @@ in
the end of the nslcd configuration file (nslcd.conf).
'' ;
} ;
+
+ rootpwmoddn = mkOption {
+ default = "";
+ example = "cn=admin,dc=example,dc=com";
+ type = types.str;
+ description = ''
+ The distinguished name to use to bind to the LDAP server
+ when the root user tries to modify a user's password.
+ '';
+ };
+
+ rootpwmodpwFile = mkOption {
+ default = "";
+ example = "/run/keys/nslcd.rootpwmodpw";
+ type = types.str;
+ description = ''
+ The path to a file containing the credentials with which to bind to
+ the LDAP server if the root user tries to change a user's password.
+ '';
+ };
};
bind = {
@@ -139,7 +165,7 @@ in
'';
};
- password = mkOption {
+ passwordFile = mkOption {
default = "/etc/ldap/bind.password";
type = types.str;
description = ''
@@ -198,14 +224,16 @@ in
config = mkIf cfg.enable {
- environment.etc = if cfg.daemon.enable then [nslcdConfig] else [ldapConfig];
+ environment.etc = optional (!cfg.daemon.enable) ldapConfig;
- system.activationScripts = mkIf insertLdapPassword {
+ system.activationScripts = mkIf (!cfg.daemon.enable) {
ldap = stringAfter [ "etc" "groups" "users" ] ''
- if test -f "${cfg.bind.password}" ; then
- echo "bindpw "$(cat ${cfg.bind.password})"" | cat ${ldapConfig.source} - > /etc/ldap.conf.bindpw
- mv -fT /etc/ldap.conf.bindpw /etc/ldap.conf
- chmod 600 /etc/ldap.conf
+ if test -f "${cfg.bind.passwordFile}" ; then
+ umask 0077
+ conf="$(mktemp)"
+ printf 'bindpw %s\n' "$(cat ${cfg.bind.passwordFile})" |
+ cat ${ldapConfig.source} - >"$conf"
+ mv -fT "$conf" /etc/ldap.conf
fi
'';
};
@@ -227,30 +255,39 @@ in
};
systemd.services = mkIf cfg.daemon.enable {
-
nslcd = {
wantedBy = [ "multi-user.target" ];
preStart = ''
- mkdir -p /run/nslcd
- rm -f /run/nslcd/nslcd.pid;
- chown nslcd.nslcd /run/nslcd
- ${optionalString (cfg.bind.distinguishedName != "") ''
- if test -s "${cfg.bind.password}" ; then
- ln -sfT "${cfg.bind.password}" /run/nslcd/bindpw
- fi
- ''}
+ umask 0077
+ conf="$(mktemp)"
+ {
+ cat ${nslcdConfig}
+ test -z '${cfg.bind.distinguishedName}' -o ! -f '${cfg.bind.passwordFile}' ||
+ printf 'bindpw %s\n' "$(cat '${cfg.bind.passwordFile}')"
+ test -z '${cfg.daemon.rootpwmoddn}' -o ! -f '${cfg.daemon.rootpwmodpwFile}' ||
+ printf 'rootpwmodpw %s\n' "$(cat '${cfg.daemon.rootpwmodpwFile}')"
+ } >"$conf"
+ mv -fT "$conf" /run/nslcd/nslcd.conf
'';
+ restartTriggers = [ "/run/nslcd/nslcd.conf" ];
serviceConfig = {
- ExecStart = "${nss_pam_ldapd}/sbin/nslcd";
+ ExecStart = "${nslcdWrapped}/bin/nslcd";
Type = "forking";
- PIDFile = "/run/nslcd/nslcd.pid";
Restart = "always";
+ User = "nslcd";
+ Group = "nslcd";
+ RuntimeDirectory = [ "nslcd" ];
+ PIDFile = "/run/nslcd/nslcd.pid";
};
};
};
};
+
+ imports =
+ [ (mkRenamedOptionModule [ "users" "ldap" "bind" "password"] [ "users" "ldap" "bind" "passwordFile"])
+ ];
}
diff --git a/nixos/modules/config/networking.nix b/nixos/modules/config/networking.nix
index 1ef5313d3fdd5dab4fdcf638ac249a0627190404..25253cf02e1d99e4b2e805af728d6ea66dee5620 100644
--- a/nixos/modules/config/networking.nix
+++ b/nixos/modules/config/networking.nix
@@ -16,6 +16,13 @@ let
resolvconfOptions = cfg.resolvconfOptions
++ optional cfg.dnsSingleRequest "single-request"
++ optional cfg.dnsExtensionMechanism "edns0";
+
+
+ localhostMapped4 = cfg.hosts ? "127.0.0.1" && elem "localhost" cfg.hosts."127.0.0.1";
+ localhostMapped6 = cfg.hosts ? "::1" && elem "localhost" cfg.hosts."::1";
+
+ localhostMultiple = any (elem "localhost") (attrValues (removeAttrs cfg.hosts [ "127.0.0.1" "::1" ]));
+
in
{
@@ -23,8 +30,7 @@ in
options = {
networking.hosts = lib.mkOption {
- type = types.attrsOf ( types.listOf types.str );
- default = {};
+ type = types.attrsOf (types.listOf types.str);
example = literalExample ''
{
"127.0.0.1" = [ "foo.bar.baz" ];
@@ -192,6 +198,29 @@ in
config = {
+ assertions = [{
+ assertion = localhostMapped4;
+ message = ''`networking.hosts` doesn't map "127.0.0.1" to "localhost"'';
+ } {
+ assertion = !cfg.enableIPv6 || localhostMapped6;
+ message = ''`networking.hosts` doesn't map "::1" to "localhost"'';
+ } {
+ assertion = !localhostMultiple;
+ message = ''
+ `networking.hosts` maps "localhost" to something other than "127.0.0.1"
+ or "::1". This will break some applications. Please use
+ `networking.extraHosts` if you really want to add such a mapping.
+ '';
+ }];
+
+ networking.hosts = {
+ "127.0.0.1" = [ "localhost" ];
+ } // optionalAttrs (cfg.hostName != "") {
+ "127.0.1.1" = [ cfg.hostName ];
+ } // optionalAttrs cfg.enableIPv6 {
+ "::1" = [ "localhost" ];
+ };
+
environment.etc =
{ # /etc/services: TCP/UDP port assignments.
"services".source = pkgs.iana-etc + "/etc/services";
@@ -199,29 +228,14 @@ in
# /etc/protocols: IP protocol numbers.
"protocols".source = pkgs.iana-etc + "/etc/protocols";
- # /etc/rpc: RPC program numbers.
- "rpc".source = pkgs.glibc.out + "/etc/rpc";
-
# /etc/hosts: Hostname-to-IP mappings.
- "hosts".text =
- let oneToString = set : ip : ip + " " + concatStringsSep " " ( getAttr ip set );
- allToString = set : concatMapStringsSep "\n" ( oneToString set ) ( attrNames set );
- userLocalHosts = optionalString
- ( builtins.hasAttr "127.0.0.1" cfg.hosts )
- ( concatStringsSep " " ( remove "localhost" cfg.hosts."127.0.0.1" ));
- userLocalHosts6 = optionalString
- ( builtins.hasAttr "::1" cfg.hosts )
- ( concatStringsSep " " ( remove "localhost" cfg.hosts."::1" ));
- otherHosts = allToString ( removeAttrs cfg.hosts [ "127.0.0.1" "::1" ]);
- in
- ''
- 127.0.0.1 ${userLocalHosts} localhost
- ${optionalString cfg.enableIPv6 ''
- ::1 ${userLocalHosts6} localhost
- ''}
- ${otherHosts}
- ${cfg.extraHosts}
- '';
+ "hosts".text = let
+ oneToString = set: ip: ip + " " + concatStringsSep " " set.${ip};
+ allToString = set: concatMapStringsSep "\n" (oneToString set) (attrNames set);
+ in ''
+ ${allToString cfg.hosts}
+ ${cfg.extraHosts}
+ '';
# /etc/host.conf: resolver configuration file
"host.conf".text = cfg.hostConf;
@@ -233,6 +247,10 @@ in
# a collision with an apparently unrelated environment
# variable with the same name exported by dhcpcd.
interface_order='lo lo[0-9]*'
+ '' + optionalString config.services.nscd.enable ''
+ # Invalidate the nscd cache whenever resolv.conf is
+ # regenerated.
+ libc_restart='${pkgs.systemd}/bin/systemctl try-restart --no-block nscd.service 2> /dev/null'
'' + optionalString (length resolvconfOptions > 0) ''
# Options as described in resolv.conf(5)
resolv_conf_options='${concatStringsSep " " resolvconfOptions}'
@@ -246,11 +264,14 @@ in
'';
} // optionalAttrs config.services.resolved.enable {
- # symlink the static version of resolv.conf as recommended by upstream:
+ # symlink the dynamic stub resolver of resolv.conf as recommended by upstream:
# https://www.freedesktop.org/software/systemd/man/systemd-resolved.html#/etc/resolv.conf
- "resolv.conf".source = "${pkgs.systemd}/lib/systemd/resolv.conf";
+ "resolv.conf".source = "/run/systemd/resolve/stub-resolv.conf";
} // optionalAttrs (config.services.resolved.enable && dnsmasqResolve) {
"dnsmasq-resolv.conf".source = "/run/systemd/resolve/resolv.conf";
+ } // optionalAttrs (pkgs.stdenv.hostPlatform.libc == "glibc") {
+ # /etc/rpc: RPC program numbers.
+ "rpc".source = pkgs.glibc.out + "/etc/rpc";
};
networking.proxy.envVars =
@@ -296,4 +317,4 @@ in
};
- }
+}
diff --git a/nixos/modules/config/no-x-libs.nix b/nixos/modules/config/no-x-libs.nix
index d9ecaa4818ba66f101928109114e1c353b6848cf..aad02a9ca4e3f2e87ea103b7bf91f788136de65e 100644
--- a/nixos/modules/config/no-x-libs.nix
+++ b/nixos/modules/config/no-x-libs.nix
@@ -34,8 +34,8 @@ with lib;
networkmanager-openvpn = super.networkmanager-openvpn.override { withGnome = false; };
networkmanager-vpnc = super.networkmanager-vpnc.override { withGnome = false; };
networkmanager-iodine = super.networkmanager-iodine.override { withGnome = false; };
- pinentry = super.pinentry_ncurses;
- gobjectIntrospection = super.gobjectIntrospection.override { x11Support = false; };
+ pinentry = super.pinentry.override { gtk2 = null; gcr = null; qt = null; };
+ gobject-introspection = super.gobject-introspection.override { x11Support = false; };
}));
};
}
diff --git a/nixos/modules/config/nsswitch.nix b/nixos/modules/config/nsswitch.nix
index a74d551f50df47240f622ffb221c6278f9eef707..13277fe56e42484ec07f14e06898ed23a7eec09b 100644
--- a/nixos/modules/config/nsswitch.nix
+++ b/nixos/modules/config/nsswitch.nix
@@ -1,6 +1,6 @@
# Configuration for the Name Service Switch (/etc/nsswitch.conf).
-{ config, lib, ... }:
+{ config, lib, pkgs, ... }:
with lib;
@@ -15,6 +15,7 @@ let
ldap = canLoadExternalModules && (config.users.ldap.enable && config.users.ldap.nsswitch);
sssd = canLoadExternalModules && config.services.sssd.enable;
resolved = canLoadExternalModules && config.services.resolved.enable;
+ googleOsLogin = canLoadExternalModules && config.security.googleOsLogin.enable;
hostArray = [ "files" ]
++ optional mymachines "mymachines"
@@ -29,6 +30,7 @@ let
++ optional sssd "sss"
++ optional ldap "ldap"
++ optional mymachines "mymachines"
+ ++ optional googleOsLogin "cache_oslogin oslogin"
++ [ "systemd" ];
shadowArray = [ "files" ]
@@ -59,6 +61,15 @@ in {
};
};
+ system.nssHosts = mkOption {
+ type = types.listOf types.str;
+ default = [];
+ example = [ "mdns" ];
+ description = ''
+ List of host entries to configure in /etc/nsswitch.conf.
+ '';
+ };
+
};
config = {
@@ -83,7 +94,7 @@ in {
group: ${concatStringsSep " " passwdArray}
shadow: ${concatStringsSep " " shadowArray}
- hosts: ${concatStringsSep " " hostArray}
+ hosts: ${concatStringsSep " " config.system.nssHosts}
networks: files
ethers: files
@@ -92,12 +103,14 @@ in {
rpc: files
'';
+ system.nssHosts = hostArray;
+
# Systemd provides nss-myhostname to ensure that our hostname
# always resolves to a valid IP address. It returns all locally
# configured IP addresses, or ::1 and 127.0.0.2 as
# fallbacks. Systemd also provides nss-mymachines to return IP
# addresses of local containers.
- system.nssModules = optionals canLoadExternalModules [ config.systemd.package.out ];
-
+ system.nssModules = (optionals canLoadExternalModules [ config.systemd.package.out ])
+ ++ optional googleOsLogin pkgs.google-compute-engine-oslogin.out;
};
}
diff --git a/nixos/modules/config/pulseaudio.nix b/nixos/modules/config/pulseaudio.nix
index e16a021ec20b86ce9a78ac88f01f5665b512bc0a..e61a3a7312018ec05249a21d40db455fa6e5d7a9 100644
--- a/nixos/modules/config/pulseaudio.nix
+++ b/nixos/modules/config/pulseaudio.nix
@@ -1,4 +1,4 @@
-{ config, lib, pkgs, pkgs_i686, ... }:
+{ config, lib, pkgs, ... }:
with pkgs;
with lib;
@@ -19,7 +19,7 @@ let
# Forces 32bit pulseaudio and alsaPlugins to be built/supported for apps
# using 32bit alsa on 64bit linux.
- enable32BitAlsaPlugins = cfg.support32Bit && stdenv.isx86_64 && (pkgs_i686.alsaLib != null && pkgs_i686.libpulseaudio != null);
+ enable32BitAlsaPlugins = cfg.support32Bit && stdenv.isx86_64 && (pkgs.pkgsi686Linux.alsaLib != null && pkgs.pkgsi686Linux.libpulseaudio != null);
myConfigFile =
@@ -63,7 +63,7 @@ let
pcm_type.pulse {
libs.native = ${pkgs.alsaPlugins}/lib/alsa-lib/libasound_module_pcm_pulse.so ;
${lib.optionalString enable32BitAlsaPlugins
- "libs.32Bit = ${pkgs_i686.alsaPlugins}/lib/alsa-lib/libasound_module_pcm_pulse.so ;"}
+ "libs.32Bit = ${pkgs.pkgsi686Linux.alsaPlugins}/lib/alsa-lib/libasound_module_pcm_pulse.so ;"}
}
pcm.!default {
type pulse
@@ -72,7 +72,7 @@ let
ctl_type.pulse {
libs.native = ${pkgs.alsaPlugins}/lib/alsa-lib/libasound_module_ctl_pulse.so ;
${lib.optionalString enable32BitAlsaPlugins
- "libs.32Bit = ${pkgs_i686.alsaPlugins}/lib/alsa-lib/libasound_module_ctl_pulse.so ;"}
+ "libs.32Bit = ${pkgs.pkgsi686Linux.alsaPlugins}/lib/alsa-lib/libasound_module_ctl_pulse.so ;"}
}
ctl.!default {
type pulse
@@ -154,6 +154,18 @@ in {
'';
};
+ extraModules = mkOption {
+ type = types.listOf types.package;
+ default = [];
+ example = literalExample "[ pkgs.pulseaudio-modules-bt ]";
+ description = ''
+ Extra pulseaudio modules to use. This is intended for out-of-tree
+ pulseaudio modules like extra bluetooth codecs.
+
+ Extra modules take precedence over built-in pulseaudio modules.
+ '';
+ };
+
daemon = {
logLevel = mkOption {
type = types.str;
@@ -168,7 +180,7 @@ in {
type = types.attrsOf types.unspecified;
default = {};
description = ''Config of the pulse daemon. See man pulse-daemon.conf.'';
- example = literalExample ''{ flat-volumes = "no"; }'';
+ example = literalExample ''{ realtime-scheduling = "yes"; }'';
};
};
@@ -230,12 +242,27 @@ in {
source = writeText "libao.conf" "default_driver=pulse"; }
];
+ # Disable flat volumes to enable relative ones
+ hardware.pulseaudio.daemon.config.flat-volumes = mkDefault "no";
+
# Allow PulseAudio to get realtime priority using rtkit.
security.rtkit.enable = true;
systemd.packages = [ overriddenPackage ];
})
+ (mkIf (cfg.extraModules != []) {
+ hardware.pulseaudio.daemon.config.dl-search-path = let
+ overriddenModules = builtins.map
+ (drv: drv.override { pulseaudio = overriddenPackage; })
+ cfg.extraModules;
+ modulePaths = builtins.map
+ (drv: "${drv}/lib/pulse-${overriddenPackage.version}/modules")
+ # User-provided extra modules take precedence
+ (overriddenModules ++ [ overriddenPackage ]);
+ in lib.concatStringsSep ":" modulePaths;
+ })
+
(mkIf hasZeroconf {
services.avahi.enable = true;
})
diff --git a/nixos/modules/config/shells-environment.nix b/nixos/modules/config/shells-environment.nix
index 9dc4749b08d1e48723e7b1afd439624a189c9c84..6379b52870ea27be181069c2ad4f5a63f6467540 100644
--- a/nixos/modules/config/shells-environment.nix
+++ b/nixos/modules/config/shells-environment.nix
@@ -34,6 +34,7 @@ in
environment.variables = mkOption {
default = {};
+ example = { EDITOR = "nvim"; VISUAL = "nvim"; };
description = ''
A set of environment variables used in the global environment.
These variables will be set on shell initialisation (e.g. in /etc/profile).
@@ -80,7 +81,7 @@ in
default = "";
description = ''
Shell script code called during shell initialisation.
- This code is asumed to be shell-independent, which means you should
+ This code is assumed to be shell-independent, which means you should
stick to pure sh without sh word split.
'';
type = types.lines;
@@ -90,7 +91,7 @@ in
default = "";
description = ''
Shell script code called during login shell initialisation.
- This code is asumed to be shell-independent, which means you should
+ This code is assumed to be shell-independent, which means you should
stick to pure sh without sh word split.
'';
type = types.lines;
@@ -100,21 +101,21 @@ in
default = "";
description = ''
Shell script code called during interactive shell initialisation.
- This code is asumed to be shell-independent, which means you should
+ This code is assumed to be shell-independent, which means you should
stick to pure sh without sh word split.
'';
type = types.lines;
};
environment.shellAliases = mkOption {
- default = {};
- example = { ll = "ls -l"; };
+ example = { l = null; ll = "ls -l"; };
description = ''
An attribute set that maps aliases (the top level attribute names in
this option) to command strings or directly to build outputs. The
aliases are added to all users' shells.
+ Aliases mapped to null are ignored.
'';
- type = types.attrs; # types.attrsOf types.stringOrPath;
+ type = with types; attrsOf (nullOr (either str path));
};
environment.binsh = mkOption {
@@ -156,21 +157,36 @@ in
# terminal instead of logging out of X11).
environment.variables = config.environment.sessionVariables;
+ environment.shellAliases = mapAttrs (name: mkDefault) {
+ ls = "ls --color=tty";
+ ll = "ls -l";
+ l = "ls -alh";
+ };
+
environment.etc."shells".text =
''
${concatStringsSep "\n" (map utils.toShellPath cfg.shells)}
/bin/sh
'';
+ # For resetting environment with `. /etc/set-environment` when needed
+ # and discoverability (see motivation of #30418).
+ environment.etc."set-environment".source = config.system.build.setEnvironment;
+
system.build.setEnvironment = pkgs.writeText "set-environment"
- ''
- ${exportedEnvVars}
+ ''
+ # DO NOT EDIT -- this file has been generated automatically.
+
+ # Prevent this file from being sourced by child shells.
+ export __NIXOS_SET_ENVIRONMENT_DONE=1
- ${cfg.extraInit}
+ ${exportedEnvVars}
- # ~/bin if it exists overrides other bin directories.
- export PATH="$HOME/bin:$PATH"
- '';
+ ${cfg.extraInit}
+
+ # ~/bin if it exists overrides other bin directories.
+ export PATH="$HOME/bin:$PATH"
+ '';
system.activationScripts.binsh = stringAfter [ "stdio" ]
''
diff --git a/nixos/modules/config/system-path.nix b/nixos/modules/config/system-path.nix
index 361151665018130c75eb6fb002f40cce387da945..fae2fc74008290df848919ec3c5a385bec8bb219 100644
--- a/nixos/modules/config/system-path.nix
+++ b/nixos/modules/config/system-path.nix
@@ -7,19 +7,21 @@ with lib;
let
- requiredPackages =
+ requiredPackages = map (pkg: setPrio ((pkg.meta.priority or 5) + 3) pkg)
[ config.nix.package
pkgs.acl
pkgs.attr
pkgs.bashInteractive # bash with ncurses support
pkgs.bzip2
- pkgs.coreutils
+ pkgs.coreutils-full
pkgs.cpio
pkgs.curl
pkgs.diffutils
pkgs.findutils
pkgs.gawk
- pkgs.glibc # for ldd, getent
+ pkgs.stdenv.cc.libc
+ pkgs.getent
+ pkgs.getconf
pkgs.gnugrep
pkgs.gnupatch
pkgs.gnused
@@ -81,6 +83,12 @@ in
description = "List of additional package outputs to be symlinked into /run/current-system/sw.";
};
+ extraSetup = mkOption {
+ type = types.lines;
+ default = "";
+ description = "Shell fragments to be run after the system environment has been created. This should only be used for things that need to modify the internals of the environment, e.g. generating MIME caches. The environment being built can be accessed at $out.";
+ };
+
};
system = {
@@ -107,12 +115,7 @@ in
"/etc/gtk-3.0"
"/lib" # FIXME: remove and update debug-info.nix
"/sbin"
- "/share/applications"
- "/share/desktop-directories"
"/share/emacs"
- "/share/icons"
- "/share/menus"
- "/share/mime"
"/share/nano"
"/share/org"
"/share/themes"
@@ -132,28 +135,11 @@ in
# outputs TODO: note that the tools will often not be linked by default
postBuild =
''
- if [ -x $out/bin/update-mime-database -a -w $out/share/mime ]; then
- XDG_DATA_DIRS=$out/share $out/bin/update-mime-database -V $out/share/mime > /dev/null
- fi
-
- if [ -x $out/bin/gtk-update-icon-cache -a -f $out/share/icons/hicolor/index.theme ]; then
- $out/bin/gtk-update-icon-cache $out/share/icons/hicolor
- fi
-
if [ -x $out/bin/glib-compile-schemas -a -w $out/share/glib-2.0/schemas ]; then
$out/bin/glib-compile-schemas $out/share/glib-2.0/schemas
fi
- if [ -x $out/bin/update-desktop-database -a -w $out/share/applications ]; then
- $out/bin/update-desktop-database $out/share/applications
- fi
-
- if [ -x $out/bin/install-info -a -w $out/share/info ]; then
- shopt -s nullglob
- for i in $out/share/info/*.info $out/share/info/*.info.gz; do
- $out/bin/install-info $i $out/share/info/dir
- done
- fi
+ ${config.environment.extraSetup}
'';
};
diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix
index ddec21b5f6e55b27c656d5fae4e2181bf1b6d870..c3f228c9bcc4d78e0b4114397b159c8174a9be9f 100644
--- a/nixos/modules/config/users-groups.nix
+++ b/nixos/modules/config/users-groups.nix
@@ -266,7 +266,7 @@ let
(mkIf config.isNormalUser {
group = mkDefault "users";
createHome = mkDefault true;
- home = mkDefault "/home/${name}";
+ home = mkDefault "/home/${config.name}";
useDefaultShell = mkDefault true;
isSystemUser = mkDefault false;
})
@@ -524,6 +524,8 @@ in {
utmp.gid = ids.gids.utmp;
adm.gid = ids.gids.adm;
input.gid = ids.gids.input;
+ kvm.gid = ids.gids.kvm;
+ render.gid = ids.gids.render;
};
system.activationScripts.users = stringAfter [ "stdio" ]
@@ -532,8 +534,8 @@ in {
install -m 0755 -d /home
${pkgs.perl}/bin/perl -w \
- -I${pkgs.perlPackages.FileSlurp}/lib/perl5/site_perl \
- -I${pkgs.perlPackages.JSON}/lib/perl5/site_perl \
+ -I${pkgs.perlPackages.FileSlurp}/${pkgs.perl.libPrefix} \
+ -I${pkgs.perlPackages.JSON}/${pkgs.perl.libPrefix} \
${./update-users-groups.pl} ${spec}
'';
diff --git a/nixos/modules/config/xdg/autostart.nix b/nixos/modules/config/xdg/autostart.nix
new file mode 100644
index 0000000000000000000000000000000000000000..0ee94fed818b16dc109c764fb7422239d0243a36
--- /dev/null
+++ b/nixos/modules/config/xdg/autostart.nix
@@ -0,0 +1,22 @@
+{ config, lib, ... }:
+
+with lib;
+{
+ options = {
+ xdg.autostart.enable = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether to install files to support the
+ XDG Autostart specification.
+ '';
+ };
+ };
+
+ config = mkIf config.xdg.autostart.enable {
+ environment.pathsToLink = [
+ "/etc/xdg/autostart"
+ ];
+ };
+
+}
diff --git a/nixos/modules/config/xdg/icons.nix b/nixos/modules/config/xdg/icons.nix
new file mode 100644
index 0000000000000000000000000000000000000000..8268a3771a0ea553561bd2af8b1a3154b5ce1b2e
--- /dev/null
+++ b/nixos/modules/config/xdg/icons.nix
@@ -0,0 +1,27 @@
+{ config, lib, ... }:
+
+with lib;
+{
+ options = {
+ xdg.icons.enable = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether to install files to support the
+ XDG Icon Theme specification.
+ '';
+ };
+ };
+
+ config = mkIf config.xdg.icons.enable {
+ environment.pathsToLink = [
+ "/share/icons"
+ "/share/pixmaps"
+ ];
+
+ environment.profileRelativeEnvVars = {
+ XCURSOR_PATH = [ "/share/icons" ];
+ };
+ };
+
+}
diff --git a/nixos/modules/config/xdg/menus.nix b/nixos/modules/config/xdg/menus.nix
new file mode 100644
index 0000000000000000000000000000000000000000..c172692df5d7d64d5213bdb2fcaa357414053200
--- /dev/null
+++ b/nixos/modules/config/xdg/menus.nix
@@ -0,0 +1,25 @@
+{ config, lib, ... }:
+
+with lib;
+{
+ options = {
+ xdg.menus.enable = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether to install files to support the
+ XDG Desktop Menu specification.
+ '';
+ };
+ };
+
+ config = mkIf config.xdg.menus.enable {
+ environment.pathsToLink = [
+ "/share/applications"
+ "/share/desktop-directories"
+ "/etc/xdg/menus"
+ "/etc/xdg/menus/applications-merged"
+ ];
+ };
+
+}
diff --git a/nixos/modules/config/xdg/mime.nix b/nixos/modules/config/xdg/mime.nix
new file mode 100644
index 0000000000000000000000000000000000000000..cd1064630fbcce0c671b2e3f1bbfe7a215ed8aae
--- /dev/null
+++ b/nixos/modules/config/xdg/mime.nix
@@ -0,0 +1,36 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+{
+ options = {
+ xdg.mime.enable = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether to install files to support the
+ XDG Shared MIME-info specification and the
+ XDG MIME Applications specification.
+ '';
+ };
+ };
+
+ config = mkIf config.xdg.mime.enable {
+ environment.pathsToLink = [ "/share/mime" ];
+
+ environment.systemPackages = [
+ # this package also installs some useful data, as well as its utilities
+ pkgs.shared-mime-info
+ ];
+
+ environment.extraSetup = ''
+ if [ -w $out/share/mime ] && [ -d $out/share/mime/packages ]; then
+ XDG_DATA_DIRS=$out/share ${pkgs.buildPackages.shared-mime-info}/bin/update-mime-database -V $out/share/mime > /dev/null
+ fi
+
+ if [ -w $out/share/applications ]; then
+ ${pkgs.buildPackages.desktop-file-utils}/bin/update-desktop-database $out/share/applications
+ fi
+ '';
+ };
+
+}
diff --git a/nixos/modules/config/xdg/sounds.nix b/nixos/modules/config/xdg/sounds.nix
new file mode 100644
index 0000000000000000000000000000000000000000..148240d631cf266696522da2a1fae60f38c84b10
--- /dev/null
+++ b/nixos/modules/config/xdg/sounds.nix
@@ -0,0 +1,22 @@
+{ config, lib, ... }:
+
+with lib;
+{
+ options = {
+ xdg.sounds.enable = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether to install files to support the
+ XDG Sound Theme specification.
+ '';
+ };
+ };
+
+ config = mkIf config.xdg.sounds.enable {
+ environment.pathsToLink = [
+ "/share/sounds"
+ ];
+ };
+
+}
diff --git a/nixos/modules/config/zram.nix b/nixos/modules/config/zram.nix
index c1748812821e71a86412c6a6566b708ca33244e0..5d411c73a560951ba78912c2d013a205b31c341d 100644
--- a/nixos/modules/config/zram.nix
+++ b/nixos/modules/config/zram.nix
@@ -6,10 +6,27 @@ let
cfg = config.zramSwap;
- devices = map (nr: "zram${toString nr}") (range 0 (cfg.numDevices - 1));
+ # don't set swapDevices as mkDefault, so we can detect user had read our warning
+ # (see below) and made an action (or not)
+ devicesCount = if cfg.swapDevices != null then cfg.swapDevices else cfg.numDevices;
+
+ devices = map (nr: "zram${toString nr}") (range 0 (devicesCount - 1));
modprobe = "${pkgs.kmod}/bin/modprobe";
+ warnings =
+ assert cfg.swapDevices != null -> cfg.numDevices >= cfg.swapDevices;
+ flatten [
+ (optional (cfg.numDevices > 1 && cfg.swapDevices == null) ''
+ Using several small zram devices as swap is no better than using one large.
+ Set either zramSwap.numDevices = 1 or explicitly set zramSwap.swapDevices.
+
+ Previously multiple zram devices were used to enable multithreaded
+ compression. Linux supports multithreaded compression for 1 device
+ since 3.15. See https://lkml.org/lkml/2014/2/28/404 for details.
+ '')
+ ];
+
in
{
@@ -24,9 +41,11 @@ in
default = false;
type = types.bool;
description = ''
- Enable in-memory compressed swap space provided by the zram kernel
- module.
- See https://www.kernel.org/doc/Documentation/blockdev/zram.txt
+ Enable in-memory compressed devices and swap space provided by the zram
+ kernel module.
+ See
+ https://www.kernel.org/doc/Documentation/blockdev/zram.txt
+ .
'';
};
@@ -34,7 +53,19 @@ in
default = 1;
type = types.int;
description = ''
- Number of zram swap devices to create.
+ Number of zram devices to create. See also
+ zramSwap.swapDevices
+ '';
+ };
+
+ swapDevices = mkOption {
+ default = null;
+ example = 1;
+ type = with types; nullOr int;
+ description = ''
+ Number of zram devices to be used as swap. Must be
+ <= zramSwap.numDevices.
+ Default is same as zramSwap.numDevices, recommended is 1.
'';
};
@@ -44,7 +75,8 @@ in
description = ''
Maximum amount of memory that can be used by the zram swap devices
(as a percentage of your total memory). Defaults to 1/2 of your total
- RAM.
+ RAM. Run zramctl to check how good memory is
+ compressed.
'';
};
@@ -58,12 +90,26 @@ in
'';
};
+ algorithm = mkOption {
+ default = "lzo";
+ example = "lz4";
+ type = with types; either (enum [ "lzo" "lz4" "zstd" ]) str;
+ description = ''
+ Compression algorithm. lzo has good compression,
+ but is slow. lz4 has bad compression, but is fast.
+ zstd is both good compression and fast, but requires newer kernel.
+ You can check what other algorithms are supported by your zram device with
+ cat /sys/class/block/zram*/comp_algorithm
+ '';
+ };
};
};
config = mkIf cfg.enable {
+ inherit warnings;
+
system.requiredKernelConfig = with config.lib.kernelConfig; [
(isModule "ZRAM")
];
@@ -85,25 +131,25 @@ in
createZramInitService = dev:
nameValuePair "zram-init-${dev}" {
description = "Init swap on zram-based device ${dev}";
- bindsTo = [ "dev-${dev}.swap" ];
after = [ "dev-${dev}.device" "zram-reloader.service" ];
requires = [ "dev-${dev}.device" "zram-reloader.service" ];
before = [ "dev-${dev}.swap" ];
requiredBy = [ "dev-${dev}.swap" ];
+ unitConfig.DefaultDependencies = false; # needed to prevent a cycle
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
ExecStop = "${pkgs.runtimeShell} -c 'echo 1 > /sys/class/block/${dev}/reset'";
};
script = ''
- set -u
- set -o pipefail
-
+ set -euo pipefail
+
# Calculate memory to use for zram
- totalmem=$(${pkgs.gnugrep}/bin/grep 'MemTotal: ' /proc/meminfo | ${pkgs.gawk}/bin/awk '{print $2}')
- mem=$(((totalmem * ${toString cfg.memoryPercent} / 100 / ${toString cfg.numDevices}) * 1024))
+ mem=$(${pkgs.gawk}/bin/awk '/MemTotal: / {
+ print int($2*${toString cfg.memoryPercent}/100.0/${toString devicesCount}*1024)
+ }' /proc/meminfo)
- echo $mem > /sys/class/block/${dev}/disksize
+ ${pkgs.utillinux}/sbin/zramctl --size $mem --algorithm ${cfg.algorithm} /dev/${dev}
${pkgs.utillinux}/sbin/mkswap /dev/${dev}
'';
restartIfChanged = false;
@@ -111,6 +157,9 @@ in
in listToAttrs ((map createZramInitService devices) ++ [(nameValuePair "zram-reloader"
{
description = "Reload zram kernel module when number of devices changes";
+ wants = [ "systemd-udevd.service" ];
+ after = [ "systemd-udevd.service" ];
+ unitConfig.DefaultDependencies = false; # needed to prevent a cycle
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
@@ -118,7 +167,11 @@ in
ExecStart = "${modprobe} zram";
ExecStop = "${modprobe} -r zram";
};
- restartTriggers = [ cfg.numDevices ];
+ restartTriggers = [
+ cfg.numDevices
+ cfg.algorithm
+ cfg.memoryPercent
+ ];
restartIfChanged = true;
})]);
diff --git a/nixos/modules/hardware/acpilight.nix b/nixos/modules/hardware/acpilight.nix
new file mode 100644
index 0000000000000000000000000000000000000000..34e8a222096533b942317ac1f25a1d698eae5b9f
--- /dev/null
+++ b/nixos/modules/hardware/acpilight.nix
@@ -0,0 +1,24 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+let
+ cfg = config.hardware.acpilight;
+in
+{
+ options = {
+ hardware.acpilight = {
+ enable = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ Enable acpilight.
+ This will allow brightness control via xbacklight from users in the video group
+ '';
+ };
+ };
+ };
+
+ config = mkIf cfg.enable {
+ services.udev.packages = with pkgs; [ acpilight ];
+ };
+}
diff --git a/nixos/modules/hardware/all-firmware.nix b/nixos/modules/hardware/all-firmware.nix
index e978ec6b40ada61d64047bfc9605d8f09d26998b..c79be810eefd4ff1999b086195389efae2c8b89c 100644
--- a/nixos/modules/hardware/all-firmware.nix
+++ b/nixos/modules/hardware/all-firmware.nix
@@ -38,7 +38,13 @@ in {
firmwareLinuxNonfree
intel2200BGFirmware
rtl8192su-firmware
- ] ++ optional (pkgs.stdenv.isAarch32 || pkgs.stdenv.isAarch64) raspberrypiWirelessFirmware
+ rt5677-firmware
+ rtl8723bs-firmware
+ rtlwifi_new-firmware
+ zd1211fw
+ alsa-firmware
+ openelec-dvb-firmware
+ ] ++ optional (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64) raspberrypiWirelessFirmware
++ optionals (versionOlder config.boot.kernelPackages.kernel.version "4.13") [
rtl8723bs-firmware
];
@@ -54,6 +60,10 @@ in {
}];
hardware.firmware = with pkgs; [
broadcom-bt-firmware
+ b43Firmware_5_1_138
+ b43Firmware_6_30_163_46
+ b43FirmwareCutter
+ facetimehd-firmware
];
})
];
diff --git a/nixos/modules/hardware/bladeRF.nix b/nixos/modules/hardware/bladeRF.nix
new file mode 100644
index 0000000000000000000000000000000000000000..925443477143167e48c58f0b736c44f05bfe1447
--- /dev/null
+++ b/nixos/modules/hardware/bladeRF.nix
@@ -0,0 +1,28 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.hardware.bladeRF;
+
+in
+
+{
+ options.hardware.bladeRF = {
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Enables udev rules for BladeRF devices. By default grants access
+ to users in the "bladerf" group. You may want to install the
+ libbladeRF package.
+ '';
+ };
+
+ };
+
+ config = mkIf cfg.enable {
+ services.udev.packages = [ pkgs.libbladeRF ];
+ users.groups.bladerf = {};
+ };
+}
\ No newline at end of file
diff --git a/nixos/modules/hardware/ckb-next.nix b/nixos/modules/hardware/ckb-next.nix
new file mode 100644
index 0000000000000000000000000000000000000000..20b2756d8b2663e8cfcfcd100d86d68fdf846f78
--- /dev/null
+++ b/nixos/modules/hardware/ckb-next.nix
@@ -0,0 +1,49 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.hardware.ckb-next;
+
+in
+ {
+ options.hardware.ckb-next = {
+ enable = mkEnableOption "the Corsair keyboard/mouse driver";
+
+ gid = mkOption {
+ type = types.nullOr types.int;
+ default = null;
+ example = 100;
+ description = ''
+ Limit access to the ckb daemon to a particular group.
+ '';
+ };
+
+ package = mkOption {
+ type = types.package;
+ default = pkgs.ckb-next;
+ defaultText = "pkgs.ckb-next";
+ description = ''
+ The package implementing the Corsair keyboard/mouse driver.
+ '';
+ };
+ };
+
+ config = mkIf cfg.enable {
+ environment.systemPackages = [ cfg.package ];
+
+ systemd.services.ckb-next = {
+ description = "Corsair Keyboards and Mice Daemon";
+ wantedBy = ["multi-user.target"];
+ serviceConfig = {
+ ExecStart = "${cfg.package}/bin/ckb-next-daemon ${optionalString (cfg.gid != null) "--gid=${builtins.toString cfg.gid}"}";
+ Restart = "on-failure";
+ StandardOutput = "syslog";
+ };
+ };
+ };
+
+ meta = {
+ maintainers = with lib.maintainers; [ kierdavis ];
+ };
+ }
diff --git a/nixos/modules/hardware/ckb.nix b/nixos/modules/hardware/ckb.nix
deleted file mode 100644
index 8429572a8822644bbf628ee223d87bfb18cb66cc..0000000000000000000000000000000000000000
--- a/nixos/modules/hardware/ckb.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-let
- cfg = config.hardware.ckb;
-
-in
- {
- options.hardware.ckb = {
- enable = mkEnableOption "the Corsair keyboard/mouse driver";
-
- package = mkOption {
- type = types.package;
- default = pkgs.ckb;
- defaultText = "pkgs.ckb";
- description = ''
- The package implementing the Corsair keyboard/mouse driver.
- '';
- };
- };
-
- config = mkIf cfg.enable {
- environment.systemPackages = [ cfg.package ];
-
- systemd.services.ckb = {
- description = "Corsair Keyboard Daemon";
- wantedBy = ["multi-user.target"];
- script = "${cfg.package}/bin/ckb-daemon";
- serviceConfig = {
- Restart = "always";
- StandardOutput = "syslog";
- };
- };
- };
-
- meta = {
- maintainers = with lib.maintainers; [ kierdavis ];
- };
- }
diff --git a/nixos/modules/hardware/ledger.nix b/nixos/modules/hardware/ledger.nix
new file mode 100644
index 0000000000000000000000000000000000000000..41abe74315a0f467a0eafc9cea72b055e899ed26
--- /dev/null
+++ b/nixos/modules/hardware/ledger.nix
@@ -0,0 +1,14 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.hardware.ledger;
+
+in {
+ options.hardware.ledger.enable = mkEnableOption "udev rules for Ledger devices";
+
+ config = mkIf cfg.enable {
+ services.udev.packages = [ pkgs.ledger-udev-rules ];
+ };
+}
diff --git a/nixos/modules/hardware/logitech.nix b/nixos/modules/hardware/logitech.nix
new file mode 100644
index 0000000000000000000000000000000000000000..d6f43bdddcc8c46e27d94125f71bd8a517f115a8
--- /dev/null
+++ b/nixos/modules/hardware/logitech.nix
@@ -0,0 +1,28 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.hardware.logitech;
+
+in {
+ options.hardware.logitech = {
+ enable = mkEnableOption "Logitech Devices";
+
+ enableGraphical = mkOption {
+ type = types.bool;
+ default = false;
+ description = "Enable graphical support applications.";
+ };
+ };
+
+ config = lib.mkIf cfg.enable {
+ environment.systemPackages = [
+ pkgs.ltunify
+ ] ++ lib.optional cfg.enableGraphical pkgs.solaar;
+
+ # ltunifi and solaar both provide udev rules but the most up-to-date have been split
+ # out into a dedicated derivation
+ services.udev.packages = with pkgs; [ logitech-udev-rules ];
+ };
+}
diff --git a/nixos/modules/hardware/opengl.nix b/nixos/modules/hardware/opengl.nix
index b371af353cf9ac2b3913398c51e55221064c63d3..6b7b8069fd44a23f08ea91d113c8b955f7599435 100644
--- a/nixos/modules/hardware/opengl.nix
+++ b/nixos/modules/hardware/opengl.nix
@@ -1,4 +1,4 @@
-{ config, lib, pkgs, pkgs_i686, ... }:
+{ config, lib, pkgs, ... }:
with lib;
@@ -124,22 +124,26 @@ in
config = mkIf cfg.enable {
- assertions = lib.singleton {
- assertion = cfg.driSupport32Bit -> pkgs.stdenv.isx86_64;
- message = "Option driSupport32Bit only makes sense on a 64-bit system.";
- };
-
- system.activationScripts.setup-opengl =
- ''
- ln -sfn ${package} /run/opengl-driver
- ${if pkgs.stdenv.isi686 then ''
- ln -sfn opengl-driver /run/opengl-driver-32
- '' else if cfg.driSupport32Bit then ''
- ln -sfn ${package32} /run/opengl-driver-32
- '' else ''
- rm -f /run/opengl-driver-32
- ''}
- '';
+ assertions = [
+ { assertion = cfg.driSupport32Bit -> pkgs.stdenv.isx86_64;
+ message = "Option driSupport32Bit only makes sense on a 64-bit system.";
+ }
+ { assertion = cfg.driSupport32Bit -> (config.boot.kernelPackages.kernel.features.ia32Emulation or false);
+ message = "Option driSupport32Bit requires a kernel that supports 32bit emulation";
+ }
+ ];
+
+ systemd.tmpfiles.rules = [
+ "L+ /run/opengl-driver - - - - ${package}"
+ (
+ if pkgs.stdenv.isi686 then
+ "L+ /run/opengl-driver-32 - - - - opengl-driver"
+ else if cfg.driSupport32Bit then
+ "L+ /run/opengl-driver-32 - - - - ${package32}"
+ else
+ "r /run/opengl-driver-32"
+ )
+ ];
environment.sessionVariables.LD_LIBRARY_PATH =
[ "/run/opengl-driver/lib" ] ++ optional cfg.driSupport32Bit "/run/opengl-driver-32/lib";
@@ -148,7 +152,7 @@ in
[ "/run/opengl-driver/share" ] ++ optional cfg.driSupport32Bit "/run/opengl-driver-32/share";
hardware.opengl.package = mkDefault (makePackage pkgs);
- hardware.opengl.package32 = mkDefault (makePackage pkgs_i686);
+ hardware.opengl.package32 = mkDefault (makePackage pkgs.pkgsi686Linux);
boot.extraModulePackages = optional (elem "virtualbox" videoDrivers) kernelPackages.virtualboxGuestAdditions;
};
diff --git a/nixos/modules/hardware/raid/hpsa.nix b/nixos/modules/hardware/raid/hpsa.nix
index 1b4b1fa1954fb0cd793557f0938ddb6094365006..3a65cb800a98a9f938ca0bdf5cadea3dbdc53a18 100644
--- a/nixos/modules/hardware/raid/hpsa.nix
+++ b/nixos/modules/hardware/raid/hpsa.nix
@@ -8,7 +8,7 @@ let
version = "2.40-13.0";
src = pkgs.fetchurl {
- url = "http://downloads.linux.hpe.com/SDR/downloads/MCP/Ubuntu/pool/non-free/${name}_amd64.deb";
+ url = "https://downloads.linux.hpe.com/SDR/downloads/MCP/Ubuntu/pool/non-free/${name}_amd64.deb";
sha256 = "11w7fwk93lmfw0yya4jpjwdmgjimqxx6412sqa166g1pz4jil4sw";
};
@@ -34,7 +34,7 @@ let
meta = with lib; {
description = "HP Smart Array CLI";
- homepage = http://downloads.linux.hpe.com/SDR/downloads/MCP/Ubuntu/pool/non-free/;
+ homepage = https://downloads.linux.hpe.com/SDR/downloads/MCP/Ubuntu/pool/non-free/;
license = licenses.unfreeRedistributable;
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ volth ];
diff --git a/nixos/modules/hardware/steam-hardware.nix b/nixos/modules/hardware/steam-hardware.nix
new file mode 100644
index 0000000000000000000000000000000000000000..378aeffe71b5ebc9b2671b5d4e5b2386d2961dd8
--- /dev/null
+++ b/nixos/modules/hardware/steam-hardware.nix
@@ -0,0 +1,25 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+ cfg = config.hardware.steam-hardware;
+
+in
+
+{
+ options.hardware.steam-hardware = {
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = "Enable udev rules for Steam hardware such as the Steam Controller, other supported controllers and the HTC Vive";
+ };
+ };
+
+ config = mkIf cfg.enable {
+ services.udev.packages = [
+ pkgs.steamPackages.steam
+ ];
+ };
+}
diff --git a/nixos/modules/hardware/video/amdgpu-pro.nix b/nixos/modules/hardware/video/amdgpu-pro.nix
index 50af022b93c86e54c0680afab7f1920ef6f053ef..ab9e0c92020e0c49a0b118753d548fb721085906 100644
--- a/nixos/modules/hardware/video/amdgpu-pro.nix
+++ b/nixos/modules/hardware/video/amdgpu-pro.nix
@@ -1,6 +1,6 @@
# This module provides the proprietary AMDGPU-PRO drivers.
-{ config, lib, pkgs, pkgs_i686, ... }:
+{ config, lib, pkgs, ... }:
with lib;
@@ -11,7 +11,7 @@ let
enabled = elem "amdgpu-pro" drivers;
package = config.boot.kernelPackages.amdgpu-pro;
- package32 = pkgs_i686.linuxPackages.amdgpu-pro.override { libsOnly = true; kernel = null; };
+ package32 = pkgs.pkgsi686Linux.linuxPackages.amdgpu-pro.override { libsOnly = true; kernel = null; };
opengl = config.hardware.opengl;
diff --git a/nixos/modules/hardware/video/ati.nix b/nixos/modules/hardware/video/ati.nix
index 2fa37af6ca58836d8c82fb0223f8af066dedda67..6102919f0155f78202a438173a2f3cc87647e308 100644
--- a/nixos/modules/hardware/video/ati.nix
+++ b/nixos/modules/hardware/video/ati.nix
@@ -1,6 +1,6 @@
# This module provides the proprietary ATI X11 / OpenGL drivers.
-{ config, lib, pkgs_i686, ... }:
+{ config, lib, pkgs, ... }:
with lib;
@@ -24,7 +24,7 @@ in
{ name = "fglrx"; modules = [ ati_x11 ]; libPath = [ "${ati_x11}/lib" ]; };
hardware.opengl.package = ati_x11;
- hardware.opengl.package32 = pkgs_i686.linuxPackages.ati_drivers_x11.override { libsOnly = true; kernel = null; };
+ hardware.opengl.package32 = pkgs.pkgsi686Linux.linuxPackages.ati_drivers_x11.override { libsOnly = true; kernel = null; };
environment.systemPackages = [ ati_x11 ];
diff --git a/nixos/modules/hardware/video/nvidia.nix b/nixos/modules/hardware/video/nvidia.nix
index eb1952280331f6553cc21f016e9376b64b33de2c..80ea7bc5d5c9560ea588721f524313eadae509c0 100644
--- a/nixos/modules/hardware/video/nvidia.nix
+++ b/nixos/modules/hardware/video/nvidia.nix
@@ -1,6 +1,6 @@
# This module provides the proprietary NVIDIA X11 / OpenGL drivers.
-{ config, lib, pkgs, pkgs_i686, ... }:
+{ stdenv, config, lib, pkgs, ... }:
with lib;
@@ -20,48 +20,171 @@ let
kernelPackages.nvidia_x11_legacy304
else if elem "nvidiaLegacy340" drivers then
kernelPackages.nvidia_x11_legacy340
+ else if elem "nvidiaLegacy390" drivers then
+ kernelPackages.nvidia_x11_legacy390
else null;
nvidia_x11 = nvidiaForKernel config.boot.kernelPackages;
- nvidia_libs32 = (nvidiaForKernel pkgs_i686.linuxPackages).override { libsOnly = true; kernel = null; };
+ nvidia_libs32 =
+ if versionOlder nvidia_x11.version "391" then
+ ((nvidiaForKernel pkgs.pkgsi686Linux.linuxPackages).override { libsOnly = true; kernel = null; }).out
+ else
+ (nvidiaForKernel config.boot.kernelPackages).lib32;
enabled = nvidia_x11 != null;
+
+ cfg = config.hardware.nvidia;
+ optimusCfg = cfg.optimus_prime;
in
{
+ options = {
+ hardware.nvidia.modesetting.enable = lib.mkOption {
+ type = lib.types.bool;
+ default = false;
+ description = ''
+ Enable kernel modesetting when using the NVIDIA proprietary driver.
+
+ Enabling this fixes screen tearing when using Optimus via PRIME (see
+ . This is not enabled
+ by default because it is not officially supported by NVIDIA and would not
+ work with SLI.
+ '';
+ };
+
+ hardware.nvidia.optimus_prime.enable = lib.mkOption {
+ type = lib.types.bool;
+ default = false;
+ description = ''
+ Enable NVIDIA Optimus support using the NVIDIA proprietary driver via PRIME.
+ If enabled, the NVIDIA GPU will be always on and used for all rendering,
+ while enabling output to displays attached only to the integrated Intel GPU
+ without a multiplexer.
+
+ Note that this option only has any effect if the "nvidia" driver is specified
+ in , and it should preferably
+ be the only driver there.
+
+ If this is enabled, then the bus IDs of the NVIDIA and Intel GPUs have to be
+ specified ( and
+ ).
+
+ If you enable this, you may want to also enable kernel modesetting for the
+ NVIDIA driver () in order
+ to prevent tearing.
+
+ Note that this configuration will only be successful when a display manager
+ for which the
+ option is supported is used; notably, SLiM is not supported.
+ '';
+ };
+
+ hardware.nvidia.optimus_prime.nvidiaBusId = lib.mkOption {
+ type = lib.types.string;
+ default = "";
+ example = "PCI:1:0:0";
+ description = ''
+ Bus ID of the NVIDIA GPU. You can find it using lspci; for example if lspci
+ shows the NVIDIA GPU at "01:00.0", set this option to "PCI:1:0:0".
+ '';
+ };
+
+ hardware.nvidia.optimus_prime.intelBusId = lib.mkOption {
+ type = lib.types.string;
+ default = "";
+ example = "PCI:0:2:0";
+ description = ''
+ Bus ID of the Intel GPU. You can find it using lspci; for example if lspci
+ shows the Intel GPU at "00:02.0", set this option to "PCI:0:2:0".
+ '';
+ };
+ };
config = mkIf enabled {
assertions = [
{
- assertion = config.services.xserver.displayManager.gdm.wayland;
- message = "NVidia drivers don't support wayland";
+ assertion = with config.services.xserver.displayManager; gdm.enable -> !gdm.wayland;
+ message = "NVIDIA drivers don't support wayland, set services.xserver.displayManager.gdm.wayland=false";
+ }
+ {
+ assertion = !optimusCfg.enable ||
+ (optimusCfg.nvidiaBusId != "" && optimusCfg.intelBusId != "");
+ message = ''
+ When NVIDIA Optimus via PRIME is enabled, the GPU bus IDs must configured.
+ '';
}
];
- services.xserver.drivers = singleton
- { name = "nvidia"; modules = [ nvidia_x11.bin ]; libPath = [ nvidia_x11 ]; };
+ # If Optimus/PRIME is enabled, we:
+ # - Specify the configured NVIDIA GPU bus ID in the Device section for the
+ # "nvidia" driver.
+ # - Add the AllowEmptyInitialConfiguration option to the Screen section for the
+ # "nvidia" driver, in order to allow the X server to start without any outputs.
+ # - Add a separate Device section for the Intel GPU, using the "modesetting"
+ # driver and with the configured BusID.
+ # - Reference that Device section from the ServerLayout section as an inactive
+ # device.
+ # - Configure the display manager to run specific `xrandr` commands which will
+ # configure/enable displays connected to the Intel GPU.
+
+ services.xserver.drivers = singleton {
+ name = "nvidia";
+ modules = [ nvidia_x11.bin ];
+ libPath = [ nvidia_x11 ];
+ deviceSection = optionalString optimusCfg.enable
+ ''
+ BusID "${optimusCfg.nvidiaBusId}"
+ '';
+ screenSection =
+ ''
+ Option "RandRRotation" "on"
+ ${optionalString optimusCfg.enable "Option \"AllowEmptyInitialConfiguration\""}
+ '';
+ };
- services.xserver.screenSection =
+ services.xserver.extraConfig = optionalString optimusCfg.enable
+ ''
+ Section "Device"
+ Identifier "nvidia-optimus-intel"
+ Driver "modesetting"
+ BusID "${optimusCfg.intelBusId}"
+ Option "AccelMethod" "none"
+ EndSection
+ '';
+ services.xserver.serverLayoutSection = optionalString optimusCfg.enable
''
- Option "RandRRotation" "on"
+ Inactive "nvidia-optimus-intel"
'';
+ services.xserver.displayManager.setupCommands = optionalString optimusCfg.enable ''
+ # Added by nvidia configuration module for Optimus/PRIME.
+ ${pkgs.xorg.xrandr}/bin/xrandr --setprovideroutputsource modesetting NVIDIA-0
+ ${pkgs.xorg.xrandr}/bin/xrandr --auto
+ '';
+
environment.etc."nvidia/nvidia-application-profiles-rc" = mkIf nvidia_x11.useProfiles {
source = "${nvidia_x11.bin}/share/nvidia/nvidia-application-profiles-rc";
};
hardware.opengl.package = nvidia_x11.out;
- hardware.opengl.package32 = nvidia_libs32.out;
+ hardware.opengl.package32 = nvidia_libs32;
environment.systemPackages = [ nvidia_x11.bin nvidia_x11.settings ]
++ lib.filter (p: p != null) [ nvidia_x11.persistenced ];
+ systemd.tmpfiles.rules = optional config.virtualisation.docker.enableNvidia
+ "L+ /run/nvidia-docker/bin - - - - ${nvidia_x11.bin}/origBin"
+ ++ optional (nvidia_x11.persistenced != null && config.virtualisation.docker.enableNvidia)
+ "L+ /run/nvidia-docker/extras/bin/nvidia-persistenced - - - - ${nvidia_x11.persistenced}/origBin/nvidia-persistenced";
+
boot.extraModulePackages = [ nvidia_x11.bin ];
# nvidia-uvm is required by CUDA applications.
boot.kernelModules = [ "nvidia-uvm" ] ++
lib.optionals config.services.xserver.enable [ "nvidia" "nvidia_modeset" "nvidia_drm" ];
+ # If requested enable modesetting via kernel parameter.
+ boot.kernelParams = optional cfg.modesetting.enable "nvidia-drm.modeset=1";
# Create /dev/nvidia-uvm when the nvidia-uvm module is loaded.
services.udev.extraRules =
diff --git a/nixos/modules/hardware/video/uvcvideo/uvcdynctrl-udev-rules.nix b/nixos/modules/hardware/video/uvcvideo/uvcdynctrl-udev-rules.nix
index 2cf5f13bc159e6259d9c6cdefecf3b5834c91420..a808429c99968518c0739889982069d4bdcfb8c8 100644
--- a/nixos/modules/hardware/video/uvcvideo/uvcdynctrl-udev-rules.nix
+++ b/nixos/modules/hardware/video/uvcvideo/uvcdynctrl-udev-rules.nix
@@ -29,6 +29,7 @@ runCommand "uvcdynctrl-udev-rules-${version}"
];
dontPatchELF = true;
dontStrip = true;
+ preferLocalBuild = true;
}
''
mkdir -p "$out/lib/udev"
diff --git a/nixos/modules/i18n/input-method/default.xml b/nixos/modules/i18n/input-method/default.xml
index eb75b7415c9c4e943bb6f64b7f41c8c3251d7078..117482fb0d57d997797bb9e4772b5b716a3f631f 100644
--- a/nixos/modules/i18n/input-method/default.xml
+++ b/nixos/modules/i18n/input-method/default.xml
@@ -3,32 +3,50 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="module-services-input-methods">
-
-Input Methods
-
-Input methods are an operating system component that allows any data, such
- as keyboard strokes or mouse movements, to be received as input. In this way
- users can enter characters and symbols not found on their input devices. Using
- an input method is obligatory for any language that has more graphemes than
- there are keys on the keyboard.
-
-The following input methods are available in NixOS:
-
-
- IBus: The intelligent input bus.
- Fcitx: A customizable lightweight input
- method.
- Nabi: A Korean input method based on XIM.
- Uim: The universal input method, is a library with a XIM
- bridge.
-
-
-IBus
-
-IBus is an Intelligent Input Bus. It provides full featured and user
- friendly input method user interface.
-
-The following snippet can be used to configure IBus:
+ Input Methods
+
+ Input methods are an operating system component that allows any data, such as
+ keyboard strokes or mouse movements, to be received as input. In this way
+ users can enter characters and symbols not found on their input devices.
+ Using an input method is obligatory for any language that has more graphemes
+ than there are keys on the keyboard.
+
+
+ The following input methods are available in NixOS:
+
+
+
+
+ IBus: The intelligent input bus.
+
+
+
+
+ Fcitx: A customizable lightweight input method.
+
+
+
+
+ Nabi: A Korean input method based on XIM.
+
+
+
+
+ Uim: The universal input method, is a library with a XIM bridge.
+
+
+
+
+ IBus
+
+
+ IBus is an Intelligent Input Bus. It provides full featured and user
+ friendly input method user interface.
+
+
+
+ The following snippet can be used to configure IBus:
+
i18n.inputMethod = {
@@ -37,57 +55,89 @@ i18n.inputMethod = {
};
-i18n.inputMethod.ibus.engines is optional and can be
- used to add extra IBus engines.
-
-Available extra IBus engines are:
-
-
- Anthy (ibus-engines.anthy): Anthy is a
- system for Japanese input method. It converts Hiragana text to Kana Kanji
- mixed text.
- Hangul (ibus-engines.hangul): Korean input
- method.
- m17n (ibus-engines.m17n): m17n is an input
- method that uses input methods and corresponding icons in the m17n
- database.
- mozc (ibus-engines.mozc): A Japanese input
- method from Google.
- Table (ibus-engines.table): An input method
- that load tables of input methods.
- table-others (ibus-engines.table-others):
- Various table-based input methods. To use this, and any other table-based
- input methods, it must appear in the list of engines along with
- table. For example:
+
+ i18n.inputMethod.ibus.engines is optional and can be used
+ to add extra IBus engines.
+
+
+
+ Available extra IBus engines are:
+
+
+
+
+
+ Anthy (ibus-engines.anthy): Anthy is a system for
+ Japanese input method. It converts Hiragana text to Kana Kanji mixed text.
+
+
+
+
+ Hangul (ibus-engines.hangul): Korean input method.
+
+
+
+
+ m17n (ibus-engines.m17n): m17n is an input method that
+ uses input methods and corresponding icons in the m17n database.
+
+
+
+
+ mozc (ibus-engines.mozc): A Japanese input method from
+ Google.
+
+
+
+
+ Table (ibus-engines.table): An input method that load
+ tables of input methods.
+
+
+
+
+ table-others (ibus-engines.table-others): Various
+ table-based input methods. To use this, and any other table-based input
+ methods, it must appear in the list of engines along with
+ table. For example:
ibus.engines = with pkgs.ibus-engines; [ table table-others ];
-
-
-
-To use any input method, the package must be added in the configuration,
- as shown above, and also (after running nixos-rebuild) the
- input method must be added from IBus' preference dialog.
-
-
- Troubleshooting
- If IBus works in some applications but not others, a likely cause of
- this is that IBus is depending on a different version of
- glib to what the applications are depending on. This can
- be checked by running nix-store -q --requisites <path> | grep
- glib, where <path> is the path of either
- IBus or an application in the Nix store. The glib
- packages must match exactly. If they do not, uninstalling and reinstalling
- the application is a likely fix.
-
-
-
-Fcitx
-
-Fcitx is an input method framework with extension support. It has three
- built-in Input Method Engine, Pinyin, QuWei and Table-based input
- methods.
-The following snippet can be used to configure Fcitx:
+
+
+
+
+
+ To use any input method, the package must be added in the configuration, as
+ shown above, and also (after running nixos-rebuild) the
+ input method must be added from IBus' preference dialog.
+
+
+
+ Troubleshooting
+
+ If IBus works in some applications but not others, a likely cause of this
+ is that IBus is depending on a different version of glib
+ to what the applications are depending on. This can be checked by running
+ nix-store -q --requisites <path> | grep glib,
+ where <path> is the path of either IBus or an
+ application in the Nix store. The glib packages must
+ match exactly. If they do not, uninstalling and reinstalling the
+ application is a likely fix.
+
+
+
+
+ Fcitx
+
+
+ Fcitx is an input method framework with extension support. It has three
+ built-in Input Method Engine, Pinyin, QuWei and Table-based input methods.
+
+
+
+ The following snippet can be used to configure Fcitx:
+
i18n.inputMethod = {
@@ -96,51 +146,89 @@ i18n.inputMethod = {
};
-i18n.inputMethod.fcitx.engines is optional and can be
- used to add extra Fcitx engines.
-
-Available extra Fcitx engines are:
-
-
- Anthy (fcitx-engines.anthy): Anthy is a
- system for Japanese input method. It converts Hiragana text to Kana Kanji
- mixed text.
- Chewing (fcitx-engines.chewing): Chewing is
- an intelligent Zhuyin input method. It is one of the most popular input
- methods among Traditional Chinese Unix users.
- Hangul (fcitx-engines.hangul): Korean input
- method.
- Unikey (fcitx-engines.unikey): Vietnamese input
- method.
- m17n (fcitx-engines.m17n): m17n is an input
- method that uses input methods and corresponding icons in the m17n
- database.
- mozc (fcitx-engines.mozc): A Japanese input
- method from Google.
- table-others (fcitx-engines.table-others):
- Various table-based input methods.
-
-
-
-Nabi
-
-Nabi is an easy to use Korean X input method. It allows you to enter
- phonetic Korean characters (hangul) and pictographic Korean characters
- (hanja).
-The following snippet can be used to configure Nabi:
+
+ i18n.inputMethod.fcitx.engines is optional and can be
+ used to add extra Fcitx engines.
+
+
+
+ Available extra Fcitx engines are:
+
+
+
+
+
+ Anthy (fcitx-engines.anthy): Anthy is a system for
+ Japanese input method. It converts Hiragana text to Kana Kanji mixed text.
+
+
+
+
+ Chewing (fcitx-engines.chewing): Chewing is an
+ intelligent Zhuyin input method. It is one of the most popular input
+ methods among Traditional Chinese Unix users.
+
+
+
+
+ Hangul (fcitx-engines.hangul): Korean input method.
+
+
+
+
+ Unikey (fcitx-engines.unikey): Vietnamese input method.
+
+
+
+
+ m17n (fcitx-engines.m17n): m17n is an input method that
+ uses input methods and corresponding icons in the m17n database.
+
+
+
+
+ mozc (fcitx-engines.mozc): A Japanese input method from
+ Google.
+
+
+
+
+ table-others (fcitx-engines.table-others): Various
+ table-based input methods.
+
+
+
+
+
+ Nabi
+
+
+ Nabi is an easy to use Korean X input method. It allows you to enter
+ phonetic Korean characters (hangul) and pictographic Korean characters
+ (hanja).
+
+
+
+ The following snippet can be used to configure Nabi:
+
i18n.inputMethod = {
enabled = "nabi";
};
-
+
+
+ Uim
-Uim
+
+ Uim (short for "universal input method") is a multilingual input method
+ framework. Applications can use it through so-called bridges.
+
-Uim (short for "universal input method") is a multilingual input method
- framework. Applications can use it through so-called bridges.
-The following snippet can be used to configure uim:
+
+ The following snippet can be used to configure uim:
+
i18n.inputMethod = {
@@ -148,8 +236,9 @@ i18n.inputMethod = {
};
-Note: The option can be
- used to choose uim toolbar.
-
-
+
+ Note: The option can be
+ used to choose uim toolbar.
+
+
diff --git a/nixos/modules/installer/cd-dvd/channel.nix b/nixos/modules/installer/cd-dvd/channel.nix
index 01cfe8a02e10d248083fd135e32bfd33c8e7e222..ab5e7c0645f3bbb4ed3c782f501d79afa74e7c31 100644
--- a/nixos/modules/installer/cd-dvd/channel.nix
+++ b/nixos/modules/installer/cd-dvd/channel.nix
@@ -13,10 +13,10 @@ let
# user, as expected by nixos-rebuild/nixos-install. FIXME: merge
# with make-channel.nix.
channelSources = pkgs.runCommand "nixos-${config.system.nixos.version}"
- { }
+ { preferLocalBuild = true; }
''
mkdir -p $out
- cp -prd ${nixpkgs} $out/nixos
+ cp -prd ${nixpkgs.outPath} $out/nixos
chmod -R u+w $out/nixos
if [ ! -e $out/nixos/nixpkgs ]; then
ln -s . $out/nixos/nixpkgs
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-base.nix b/nixos/modules/installer/cd-dvd/installation-cd-base.nix
index 1453e8082b0ddc526abc466512abd381f4e45508..24070a786945a6bc6d52f47dbca3678a08a6234d 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-base.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-base.nix
@@ -16,7 +16,7 @@ with lib;
];
# ISO naming.
- isoImage.isoName = "${config.isoImage.isoBaseName}-${config.system.nixos.label}-${pkgs.stdenv.system}.iso";
+ isoImage.isoName = "${config.isoImage.isoBaseName}-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.iso";
isoImage.volumeID = substring 0 11 "NIXOS_ISO";
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-graphical-base.nix b/nixos/modules/installer/cd-dvd/installation-cd-graphical-base.nix
new file mode 100644
index 0000000000000000000000000000000000000000..917b3758d384c4af86551ad50414d583b1f0094d
--- /dev/null
+++ b/nixos/modules/installer/cd-dvd/installation-cd-graphical-base.nix
@@ -0,0 +1,53 @@
+# This module contains the basic configuration for building a graphical NixOS
+# installation CD.
+
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+{
+ imports = [ ./installation-cd-base.nix ];
+
+ services.xserver = {
+ enable = true;
+
+ # Don't start the X server by default.
+ autorun = mkForce false;
+
+ # Automatically login as root.
+ displayManager.slim = {
+ enable = true;
+ defaultUser = "root";
+ autoLogin = true;
+ };
+
+ };
+
+ # Provide networkmanager for easy wireless configuration.
+ networking.networkmanager.enable = true;
+ networking.wireless.enable = mkForce false;
+
+ # KDE complains if power management is disabled (to be precise, if
+ # there is no power management backend such as upower).
+ powerManagement.enable = true;
+
+ # Enable sound in graphical iso's.
+ hardware.pulseaudio.enable = true;
+ hardware.pulseaudio.systemWide = true; # Needed since we run plasma as root.
+
+ environment.systemPackages = [
+ # Include gparted for partitioning disks.
+ pkgs.gparted
+
+ # Include some editors.
+ pkgs.vim
+ pkgs.bvi # binary editor
+ pkgs.joe
+
+ # Firefox for reading the manual.
+ pkgs.firefox
+
+ pkgs.glxinfo
+ ];
+
+}
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix b/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix
index 4c4e69d60d9c701aae370a39f9def061f66fcf18..42b5ec8822726c099de9058b49db2cd824c089f9 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix
@@ -6,47 +6,11 @@
with lib;
{
- imports = [ ./installation-cd-base.nix ];
+ imports = [ ./installation-cd-graphical-base.nix ];
- services.xserver = {
- enable = true;
- # GDM doesn't start in virtual machines with ISO
- displayManager.slim = {
- enable = true;
- defaultUser = "root";
- autoLogin = true;
- };
- desktopManager.gnome3 = {
- enable = true;
- extraGSettingsOverrides = ''
- [org.gnome.desktop.background]
- show-desktop-icons=true
-
- [org.gnome.nautilus.desktop]
- trash-icon-visible=false
- volumes-visible=false
- home-icon-visible=false
- network-icon-visible=false
- '';
-
- extraGSettingsOverridePackages = [ pkgs.gnome3.nautilus ];
- };
- };
-
- environment.systemPackages =
- [ # Include gparted for partitioning disks.
- pkgs.gparted
+ services.xserver.desktopManager.gnome3.enable = true;
- # Include some editors.
- pkgs.vim
- pkgs.bvi # binary editor
- pkgs.joe
-
- pkgs.glxinfo
- ];
-
- # Don't start the X server by default.
- services.xserver.autorun = mkForce false;
+ services.xserver.displayManager.slim.enable = mkForce false;
# Auto-login as root.
services.xserver.displayManager.gdm.autoLogin = {
@@ -54,25 +18,4 @@ with lib;
user = "root";
};
- system.activationScripts.installerDesktop = let
- # Must be executable
- desktopFile = pkgs.writeScript "nixos-manual.desktop" ''
- [Desktop Entry]
- Version=1.0
- Type=Link
- Name=NixOS Manual
- URL=${config.system.build.manual.manual}/share/doc/nixos/index.html
- Icon=system-help
- '';
-
- # use cp and chmod +x, we must be sure the apps are in the nix store though
- in ''
- mkdir -p /root/Desktop
- ln -sfT ${desktopFile} /root/Desktop/nixos-manual.desktop
- cp ${pkgs.gnome3.gnome-terminal}/share/applications/gnome-terminal.desktop /root/Desktop/gnome-terminal.desktop
- chmod a+rx /root/Desktop/gnome-terminal.desktop
- cp ${pkgs.gparted}/share/applications/gparted.desktop /root/Desktop/gparted.desktop
- chmod a+rx /root/Desktop/gparted.desktop
- '';
-
}
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-graphical-kde.nix b/nixos/modules/installer/cd-dvd/installation-cd-graphical-kde.nix
index 63227d5734954d643a2354c4cd4f139534837637..1c3c9cb30b41b68dd90428433e611e8f7b083afb 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-graphical-kde.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-graphical-kde.nix
@@ -1,23 +1,14 @@
# This module defines a NixOS installation CD that contains X11 and
-# KDE 5.
+# Plasma5.
{ config, lib, pkgs, ... }:
with lib;
{
- imports = [ ./installation-cd-base.nix ];
+ imports = [ ./installation-cd-graphical-base.nix ];
services.xserver = {
- enable = true;
-
- # Automatically login as root.
- displayManager.slim = {
- enable = true;
- defaultUser = "root";
- autoLogin = true;
- };
-
desktopManager.plasma5 = {
enable = true;
enableQt4Support = false;
@@ -27,45 +18,25 @@ with lib;
synaptics.enable = true;
};
- environment.systemPackages =
- [ pkgs.glxinfo
-
- # Include gparted for partitioning disks.
- pkgs.gparted
-
- # Firefox for reading the manual.
- pkgs.firefox
-
- # Include some editors.
- pkgs.vim
- pkgs.bvi # binary editor
- pkgs.joe
- ];
-
- # Provide networkmanager for easy wireless configuration.
- networking.networkmanager.enable = true;
- networking.wireless.enable = mkForce false;
-
- # KDE complains if power management is disabled (to be precise, if
- # there is no power management backend such as upower).
- powerManagement.enable = true;
-
- # Don't start the X server by default.
- services.xserver.autorun = mkForce false;
+ environment.systemPackages = with pkgs; [
+ # Graphical text editor
+ kate
+ ];
system.activationScripts.installerDesktop = let
- desktopFile = pkgs.writeText "nixos-manual.desktop" ''
+
+ manualDesktopFile = pkgs.writeScript "nixos-manual.desktop" ''
[Desktop Entry]
Version=1.0
Type=Application
Name=NixOS Manual
- Exec=firefox ${config.system.build.manual.manual}/share/doc/nixos/index.html
+ Exec=firefox ${config.system.build.manual.manualHTMLIndex}
Icon=text-html
'';
in ''
mkdir -p /root/Desktop
- ln -sfT ${desktopFile} /root/Desktop/nixos-manual.desktop
+ ln -sfT ${manualDesktopFile} /root/Desktop/nixos-manual.desktop
ln -sfT ${pkgs.konsole}/share/applications/org.kde.konsole.desktop /root/Desktop/org.kde.konsole.desktop
ln -sfT ${pkgs.gparted}/share/applications/gparted.desktop /root/Desktop/gparted.desktop
'';
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix b/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix
index 3dc0f606bf6090b7278a53485ec0eb7f98429d7c..bcdbffdc20b7d8c11a07583109f27a1f19882d1b 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix
@@ -7,4 +7,6 @@
imports =
[ ./installation-cd-base.nix
];
+
+ fonts.fontconfig.enable = false;
}
diff --git a/nixos/modules/installer/cd-dvd/iso-image.nix b/nixos/modules/installer/cd-dvd/iso-image.nix
index 08923970cd386589250237602d897ad479b68ce1..fd780be20825dc6159ca9948c8fe0547665b9dd6 100644
--- a/nixos/modules/installer/cd-dvd/iso-image.nix
+++ b/nixos/modules/installer/cd-dvd/iso-image.nix
@@ -7,6 +7,63 @@
with lib;
let
+ /**
+ * Given a list of `options`, concats the result of mapping each options
+ * to a menuentry for use in grub.
+ *
+ * * defaults: {name, image, params, initrd}
+ * * options: [ option... ]
+ * * option: {name, params, class}
+ */
+ menuBuilderGrub2 =
+ defaults: options: lib.concatStrings
+ (
+ map
+ (option: ''
+ menuentry '${defaults.name} ${
+ # Name appended to menuentry defaults to params if no specific name given.
+ option.name or (if option ? params then "(${option.params})" else "")
+ }' ${if option ? class then " --class ${option.class}" else ""} {
+ linux ${defaults.image} ${defaults.params} ${
+ option.params or ""
+ }
+ initrd ${defaults.initrd}
+ }
+ '')
+ options
+ )
+ ;
+
+ /**
+ * Given a `config`, builds the default options.
+ */
+ buildMenuGrub2 = config:
+ buildMenuAdditionalParamsGrub2 config ""
+ ;
+
+ /**
+ * Given a `config` and params to add to `params`, build a set of default options.
+ * Use this one when creating a variant (e.g. hidpi)
+ */
+ buildMenuAdditionalParamsGrub2 = config: additional:
+ let
+ finalCfg = {
+ name = "NixOS ${config.system.nixos.label}${config.isoImage.appendToMenuLabel}";
+ params = "init=${config.system.build.toplevel}/init ${additional} ${toString config.boot.kernelParams}";
+ image = "/boot/${config.system.boot.loader.kernelFile}";
+ initrd = "/boot/initrd";
+ };
+ in
+ menuBuilderGrub2
+ finalCfg
+ [
+ { class = "installer"; }
+ { class = "nomodeset"; params = "nomodeset"; }
+ { class = "copytoram"; params = "copytoram"; }
+ { class = "debug"; params = "debug"; }
+ ]
+ ;
+
# Timeout in syslinux is in units of 1/10 of a second.
# 0 is used to disable timeouts.
syslinuxTimeout = if config.boot.loader.timeout == null then
@@ -31,11 +88,33 @@ let
# result in incorrect boot entries.
baseIsolinuxCfg = ''
- SERIAL 0 38400
+ SERIAL 0 115200
TIMEOUT ${builtins.toString syslinuxTimeout}
UI vesamenu.c32
MENU TITLE NixOS
MENU BACKGROUND /isolinux/background.png
+ MENU RESOLUTION 800 600
+ MENU CLEAR
+ MENU ROWS 6
+ MENU CMDLINEROW -4
+ MENU TIMEOUTROW -3
+ MENU TABMSGROW -2
+ MENU HELPMSGROW -1
+ MENU HELPMSGENDROW -1
+ MENU MARGIN 0
+
+ # FG:AARRGGBB BG:AARRGGBB shadow
+ MENU COLOR BORDER 30;44 #00000000 #00000000 none
+ MENU COLOR SCREEN 37;40 #FF000000 #00E2E8FF none
+ MENU COLOR TABMSG 31;40 #80000000 #00000000 none
+ MENU COLOR TIMEOUT 1;37;40 #FF000000 #00000000 none
+ MENU COLOR TIMEOUT_MSG 37;40 #FF000000 #00000000 none
+ MENU COLOR CMDMARK 1;36;40 #FF000000 #00000000 none
+ MENU COLOR CMDLINE 37;40 #FF000000 #00000000 none
+ MENU COLOR TITLE 1;36;44 #00000000 #00000000 none
+ MENU COLOR UNSEL 37;44 #FF000000 #00000000 none
+ MENU COLOR SEL 7;37;40 #FFFFFFFF #FF5277C3 std
+
DEFAULT boot
LABEL boot
@@ -76,49 +155,185 @@ let
isolinuxCfg = concatStringsSep "\n"
([ baseIsolinuxCfg ] ++ optional config.boot.loader.grub.memtest86.enable isolinuxMemtest86Entry);
+ # Setup instructions for rEFInd.
+ refind =
+ if targetArch == "x64" then
+ ''
+ # Adds rEFInd to the ISO.
+ cp -v ${pkgs.refind}/share/refind/refind_x64.efi $out/EFI/boot/
+ ''
+ else
+ "# No refind for ${targetArch}"
+ ;
+
+ grubPkgs = if config.boot.loader.grub.forcei686 then pkgs.pkgsi686Linux else pkgs;
+
+ grubMenuCfg = ''
+ #
+ # Menu configuration
+ #
+
+ insmod gfxterm
+ insmod png
+ set gfxpayload=keep
+
+ # Fonts can be loaded?
+ # (This font is assumed to always be provided as a fallback by NixOS)
+ if loadfont (hd0)/EFI/boot/unicode.pf2; then
+ # Use graphical term, it can be either with background image or a theme.
+ # input is "console", while output is "gfxterm".
+ # This enables "serial" input and output only when possible.
+ # Otherwise the failure mode is to not even enable gfxterm.
+ if test "\$with_serial" == "yes"; then
+ terminal_output gfxterm serial
+ terminal_input console serial
+ else
+ terminal_output gfxterm
+ terminal_input console
+ fi
+ else
+ # Sets colors for the non-graphical term.
+ set menu_color_normal=cyan/blue
+ set menu_color_highlight=white/blue
+ fi
+
+ ${ # When there is a theme configured, use it, otherwise use the background image.
+ if (!isNull config.isoImage.grubTheme) then ''
+ # Sets theme.
+ set theme=(hd0)/EFI/boot/grub-theme/theme.txt
+ # Load theme fonts
+ $(find ${config.isoImage.grubTheme} -iname '*.pf2' -printf "loadfont (hd0)/EFI/boot/grub-theme/%P\n")
+ '' else ''
+ if background_image (hd0)/EFI/boot/efi-background.png; then
+ # Black background means transparent background when there
+ # is a background image set... This seems undocumented :(
+ set color_normal=black/black
+ set color_highlight=white/blue
+ else
+ # Falls back again to proper colors.
+ set menu_color_normal=cyan/blue
+ set menu_color_highlight=white/blue
+ fi
+ ''}
+ '';
+
# The EFI boot image.
+ # Notes about grub:
+ # * Yes, the grubMenuCfg has to be repeated in all submenus. Otherwise you
+ # will get white-on-black console-like text on sub-menus. *sigh*
efiDir = pkgs.runCommand "efi-directory" {} ''
- mkdir -p $out/EFI/boot
- cp -v ${pkgs.systemd}/lib/systemd/boot/efi/systemd-boot${targetArch}.efi $out/EFI/boot/boot${targetArch}.efi
- mkdir -p $out/loader/entries
-
- cat << EOF > $out/loader/entries/nixos-iso.conf
- title NixOS ${config.system.nixos.label}${config.isoImage.appendToMenuLabel}
- linux /boot/${config.system.boot.loader.kernelFile}
- initrd /boot/${config.system.boot.loader.initrdFile}
- options init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams}
- EOF
-
- # A variant to boot with 'nomodeset'
- cat << EOF > $out/loader/entries/nixos-iso-nomodeset.conf
- title NixOS ${config.system.nixos.label}${config.isoImage.appendToMenuLabel}
- version nomodeset
- linux /boot/${config.system.boot.loader.kernelFile}
- initrd /boot/${config.system.boot.loader.initrdFile}
- options init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams} nomodeset
- EOF
-
- # A variant to boot with 'copytoram'
- cat << EOF > $out/loader/entries/nixos-iso-copytoram.conf
- title NixOS ${config.system.nixos.label}${config.isoImage.appendToMenuLabel}
- version copytoram
- linux /boot/${config.system.boot.loader.kernelFile}
- initrd /boot/${config.system.boot.loader.initrdFile}
- options init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams} copytoram
- EOF
-
- # A variant to boot with verbose logging to the console
- cat << EOF > $out/loader/entries/nixos-iso-debug.conf
- title NixOS ${config.system.nixos.label}${config.isoImage.appendToMenuLabel} (debug)
- linux /boot/${config.system.boot.loader.kernelFile}
- initrd /boot/${config.system.boot.loader.initrdFile}
- options init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams} loglevel=7
+ mkdir -p $out/EFI/boot/
+
+ # ALWAYS required modules.
+ MODULES="fat iso9660 part_gpt part_msdos \
+ normal boot linux configfile loopback chain halt \
+ efifwsetup efi_gop \
+ ls search search_label search_fs_uuid search_fs_file \
+ gfxmenu gfxterm gfxterm_background gfxterm_menu test all_video loadenv \
+ exfat ext2 ntfs btrfs hfsplus udf \
+ videoinfo png \
+ echo serial \
+ "
+
+ echo "Building GRUB with modules:"
+ for mod in $MODULES; do
+ echo " - $mod"
+ done
+
+ # Modules that may or may not be available per-platform.
+ echo "Adding additional modules:"
+ for mod in efi_uga; do
+ if [ -f ${grubPkgs.grub2_efi}/lib/grub/${grubPkgs.grub2_efi.grubTarget}/$mod.mod ]; then
+ echo " - $mod"
+ MODULES+=" $mod"
+ fi
+ done
+
+ # Make our own efi program, we can't rely on "grub-install" since it seems to
+ # probe for devices, even with --skip-fs-probe.
+ ${grubPkgs.grub2_efi}/bin/grub-mkimage -o $out/EFI/boot/boot${targetArch}.efi -p /EFI/boot -O ${grubPkgs.grub2_efi.grubTarget} \
+ $MODULES
+ cp ${grubPkgs.grub2_efi}/share/grub/unicode.pf2 $out/EFI/boot/
+
+ cat < $out/EFI/boot/grub.cfg
+
+ # If you want to use serial for "terminal_*" commands, you need to set one up:
+ # Example manual configuration:
+ # → serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1
+ # This uses the defaults, and makes the serial terminal available.
+ set with_serial=no
+ if serial; then set with_serial=yes ;fi
+ export with_serial
+ clear
+ set timeout=10
+ ${grubMenuCfg}
+
+ #
+ # Menu entries
+ #
+
+ ${buildMenuGrub2 config}
+ submenu "HiDPI, Quirks and Accessibility" --class hidpi --class submenu {
+ ${grubMenuCfg}
+ submenu "Suggests resolution @720p" --class hidpi-720p {
+ ${grubMenuCfg}
+ ${buildMenuAdditionalParamsGrub2 config "video=1280x720@60"}
+ }
+ submenu "Suggests resolution @1080p" --class hidpi-1080p {
+ ${grubMenuCfg}
+ ${buildMenuAdditionalParamsGrub2 config "video=1920x1080@60"}
+ }
+
+ # Some laptop and convertibles have the panel installed in an
+ # inconvenient way, rotated away from the keyboard.
+ # Those entries makes it easier to use the installer.
+ submenu "" {return}
+ submenu "Rotate framebuffer Clockwise" --class rotate-90cw {
+ ${grubMenuCfg}
+ ${buildMenuAdditionalParamsGrub2 config "fbcon=rotate:1"}
+ }
+ submenu "Rotate framebuffer Upside-Down" --class rotate-180 {
+ ${grubMenuCfg}
+ ${buildMenuAdditionalParamsGrub2 config "fbcon=rotate:2"}
+ }
+ submenu "Rotate framebuffer Counter-Clockwise" --class rotate-90ccw {
+ ${grubMenuCfg}
+ ${buildMenuAdditionalParamsGrub2 config "fbcon=rotate:3"}
+ }
+
+ # As a proof of concept, mainly. (Not sure it has accessibility merits.)
+ submenu "" {return}
+ submenu "Use black on white" --class accessibility-blakconwhite {
+ ${grubMenuCfg}
+ ${buildMenuAdditionalParamsGrub2 config "vt.default_red=0xFF,0xBC,0x4F,0xB4,0x56,0xBC,0x4F,0x00,0xA1,0xCF,0x84,0xCA,0x8D,0xB4,0x84,0x68 vt.default_grn=0xFF,0x55,0xBA,0xBA,0x4D,0x4D,0xB3,0x00,0xA0,0x8F,0xB3,0xCA,0x88,0x93,0xA4,0x68 vt.default_blu=0xFF,0x58,0x5F,0x58,0xC5,0xBD,0xC5,0x00,0xA8,0xBB,0xAB,0x97,0xBD,0xC7,0xC5,0x68"}
+ }
+
+ # Serial access is a must!
+ submenu "" {return}
+ submenu "Serial console=ttyS0,115200n8" --class serial {
+ ${grubMenuCfg}
+ ${buildMenuAdditionalParamsGrub2 config "console=ttyS0,115200n8"}
+ }
+ }
+
+ menuentry 'rEFInd' --class refind {
+ # UUID is hard-coded in the derivation.
+ search --set=root --no-floppy --fs-uuid 1234-5678
+ chainloader (\$root)/EFI/boot/refind_x64.efi
+ }
+ menuentry 'Firmware Setup' --class settings {
+ fwsetup
+ clear
+ echo ""
+ echo "If you see this message, your EFI system doesn't support this feature."
+ echo ""
+ }
+ menuentry 'Shutdown' --class shutdown {
+ halt
+ }
EOF
- cat << EOF > $out/loader/loader.conf
- default nixos-iso
- timeout ${builtins.toString config.boot.loader.timeout}
- EOF
+ ${refind}
'';
efiImg = pkgs.runCommand "efi-image_eltorito" { buildInputs = [ pkgs.mtools pkgs.libfaketime ]; }
@@ -126,11 +341,11 @@ let
# dates (cp -p, touch, mcopy -m, faketime for label), IDs (mkfs.vfat -i)
''
mkdir ./contents && cd ./contents
- cp -rp "${efiDir}"/* .
+ cp -rp "${efiDir}"/EFI .
mkdir ./boot
cp -p "${config.boot.kernelPackages.kernel}/${config.system.boot.loader.kernelFile}" \
"${config.system.build.initialRamdisk}/${config.system.boot.loader.initrdFile}" ./boot/
- touch --date=@0 ./*
+ touch --date=@0 ./EFI ./boot
usage_size=$(du -sb --apparent-size . | tr -cd '[:digit:]')
# Make the image 110% as big as the files need to make up for FAT overhead
@@ -142,15 +357,24 @@ let
echo "Image size: $image_size"
truncate --size=$image_size "$out"
${pkgs.libfaketime}/bin/faketime "2000-01-01 00:00:00" ${pkgs.dosfstools}/sbin/mkfs.vfat -i 12345678 -n EFIBOOT "$out"
- mcopy -bpsvm -i "$out" ./* ::
+ mcopy -psvm -i "$out" ./EFI ./boot ::
+ # Verify the FAT partition.
+ ${pkgs.dosfstools}/sbin/fsck.vfat -vn "$out"
''; # */
- targetArch = if pkgs.stdenv.isi686 then
- "ia32"
- else if pkgs.stdenv.isx86_64 then
- "x64"
- else
- throw "Unsupported architecture";
+ # Name used by UEFI for architectures.
+ targetArch =
+ if pkgs.stdenv.isi686 || config.boot.loader.grub.forcei686 then
+ "ia32"
+ else if pkgs.stdenv.isx86_64 then
+ "x64"
+ else if pkgs.stdenv.isAarch64 then
+ "aa64"
+ else
+ throw "Unsupported architecture";
+
+ # Syslinux (and isolinux) only supports x86-based architectures.
+ canx86BiosBoot = pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64;
in
@@ -234,13 +458,31 @@ in
'';
};
+ isoImage.efiSplashImage = mkOption {
+ default = pkgs.fetchurl {
+ url = https://raw.githubusercontent.com/NixOS/nixos-artwork/a9e05d7deb38a8e005a2b52575a3f59a63a4dba0/bootloader/efi-background.png;
+ sha256 = "18lfwmp8yq923322nlb9gxrh5qikj1wsk6g5qvdh31c4h5b1538x";
+ };
+ description = ''
+ The splash image to use in the EFI bootloader.
+ '';
+ };
+
isoImage.splashImage = mkOption {
default = pkgs.fetchurl {
- url = https://raw.githubusercontent.com/NixOS/nixos-artwork/5729ab16c6a5793c10a2913b5a1b3f59b91c36ee/ideas/grub-splash/grub-nixos-1.png;
- sha256 = "43fd8ad5decf6c23c87e9026170a13588c2eba249d9013cb9f888da5e2002217";
+ url = https://raw.githubusercontent.com/NixOS/nixos-artwork/a9e05d7deb38a8e005a2b52575a3f59a63a4dba0/bootloader/isolinux/bios-boot.png;
+ sha256 = "1wp822zrhbg4fgfbwkr7cbkr4labx477209agzc0hr6k62fr6rxd";
};
description = ''
- The splash image to use in the bootloader.
+ The splash image to use in the legacy-boot bootloader.
+ '';
+ };
+
+ isoImage.grubTheme = mkOption {
+ default = pkgs.nixos-grub2-theme;
+ type = types.nullOr (types.either types.path types.package);
+ description = ''
+ The grub2 theme used for UEFI boot.
'';
};
@@ -266,9 +508,9 @@ in
# here and it causes a cyclic dependency.
boot.loader.grub.enable = false;
- # !!! Hack - attributes expected by other modules.
- system.boot.loader.kernelFile = "bzImage";
- environment.systemPackages = [ pkgs.grub2 pkgs.grub2_efi pkgs.syslinux ];
+ environment.systemPackages = [ grubPkgs.grub2 grubPkgs.grub2_efi ]
+ ++ optional canx86BiosBoot pkgs.syslinux
+ ;
# In stage 1 of the boot, mount the CD as the root FS by label so
# that we don't need to know its device. We pass the label of the
@@ -318,7 +560,7 @@ in
options = [ "allow_other" "cow" "nonempty" "chroot=/mnt-root" "max_files=32768" "hide_meta_files" "dirs=/nix/.rw-store=rw:/nix/.ro-store=ro" ];
};
- boot.initrd.availableKernelModules = [ "squashfs" "iso9660" "usb-storage" "uas" ];
+ boot.initrd.availableKernelModules = [ "squashfs" "iso9660" "uas" ];
boot.blacklistedKernelModules = [ "nouveau" ];
@@ -339,13 +581,7 @@ in
# Individual files to be included on the CD, outside of the Nix
# store on the CD.
isoImage.contents =
- [ { source = pkgs.substituteAll {
- name = "isolinux.cfg";
- src = pkgs.writeText "isolinux.cfg-in" isolinuxCfg;
- bootRoot = "/boot";
- };
- target = "/isolinux/isolinux.cfg";
- }
+ [
{ source = config.boot.kernelPackages.kernel + "/" + config.system.boot.loader.kernelFile;
target = "/boot/" + config.system.boot.loader.kernelFile;
}
@@ -355,8 +591,8 @@ in
{ source = config.system.build.squashfsStore;
target = "/nix-store.squashfs";
}
- { source = "${pkgs.syslinux}/share/syslinux";
- target = "/isolinux";
+ { source = config.isoImage.efiSplashImage;
+ target = "/EFI/boot/efi-background.png";
}
{ source = config.isoImage.splashImage;
target = "/isolinux/background.png";
@@ -364,6 +600,17 @@ in
{ source = pkgs.writeText "version" config.system.nixos.label;
target = "/version.txt";
}
+ ] ++ optionals canx86BiosBoot [
+ { source = pkgs.substituteAll {
+ name = "isolinux.cfg";
+ src = pkgs.writeText "isolinux.cfg-in" isolinuxCfg;
+ bootRoot = "/boot";
+ };
+ target = "/isolinux/isolinux.cfg";
+ }
+ { source = "${pkgs.syslinux}/share/syslinux";
+ target = "/isolinux";
+ }
] ++ optionals config.isoImage.makeEfiBootable [
{ source = efiImg;
target = "/boot/efi.img";
@@ -371,13 +618,14 @@ in
{ source = "${efiDir}/EFI";
target = "/EFI";
}
- { source = "${efiDir}/loader";
- target = "/loader";
- }
- ] ++ optionals config.boot.loader.grub.memtest86.enable [
+ ] ++ optionals (config.boot.loader.grub.memtest86.enable && canx86BiosBoot) [
{ source = "${pkgs.memtest86plus}/memtest.bin";
target = "/boot/memtest.bin";
}
+ ] ++ optionals (!isNull config.isoImage.grubTheme) [
+ { source = config.isoImage.grubTheme;
+ target = "/EFI/boot/grub-theme";
+ }
];
boot.loader.timeout = 10;
@@ -385,9 +633,10 @@ in
# Create the ISO image.
system.build.isoImage = pkgs.callPackage ../../../lib/make-iso9660-image.nix ({
inherit (config.isoImage) isoName compressImage volumeID contents;
- bootable = true;
+ bootable = canx86BiosBoot;
bootImage = "/isolinux/isolinux.bin";
- } // optionalAttrs config.isoImage.makeUsbBootable {
+ syslinux = if canx86BiosBoot then pkgs.syslinux else null;
+ } // optionalAttrs (config.isoImage.makeUsbBootable && canx86BiosBoot) {
usbBootable = true;
isohybridMbrImage = "${pkgs.syslinux}/share/syslinux/isohdpfx.bin";
} // optionalAttrs config.isoImage.makeEfiBootable {
diff --git a/nixos/modules/installer/cd-dvd/sd-image-aarch64-new-kernel.nix b/nixos/modules/installer/cd-dvd/sd-image-aarch64-new-kernel.nix
new file mode 100644
index 0000000000000000000000000000000000000000..2882fbcc7305299b1624a2fbc34a7f952c5f77d4
--- /dev/null
+++ b/nixos/modules/installer/cd-dvd/sd-image-aarch64-new-kernel.nix
@@ -0,0 +1,7 @@
+{ pkgs, ... }:
+
+{
+ imports = [ ./sd-image-aarch64.nix ];
+
+ boot.kernelPackages = pkgs.linuxPackages_latest;
+}
diff --git a/nixos/modules/installer/cd-dvd/sd-image-aarch64.nix b/nixos/modules/installer/cd-dvd/sd-image-aarch64.nix
index bd6cf029967cbc69583b427dd390dc4038e25815..5f7194e92a364ba3c98bd0404a91844d3ee6b221 100644
--- a/nixos/modules/installer/cd-dvd/sd-image-aarch64.nix
+++ b/nixos/modules/installer/cd-dvd/sd-image-aarch64.nix
@@ -5,7 +5,7 @@
let
extlinux-conf-builder =
import ../../system/boot/loader/generic-extlinux-compatible/extlinux-conf-builder.nix {
- inherit pkgs;
+ pkgs = pkgs.buildPackages;
};
in
{
@@ -15,17 +15,10 @@ in
./sd-image.nix
];
- assertions = lib.singleton {
- assertion = pkgs.stdenv.system == "aarch64-linux";
- message = "sd-image-aarch64.nix can be only built natively on Aarch64 / ARM64; " +
- "it cannot be cross compiled";
- };
-
boot.loader.grub.enable = false;
boot.loader.generic-extlinux-compatible.enable = true;
boot.consoleLogLevel = lib.mkDefault 7;
- boot.kernelPackages = pkgs.linuxPackages_latest;
# The serial ports listed here are:
# - ttyS0: for Tegra (Jetson TX1)
diff --git a/nixos/modules/installer/cd-dvd/sd-image-armv7l-multiplatform.nix b/nixos/modules/installer/cd-dvd/sd-image-armv7l-multiplatform.nix
index 0c89eb533359b85c368f04aa102dbb62a46b1ce3..71448f74c3611096e961a34e243b601b97a7f2b1 100644
--- a/nixos/modules/installer/cd-dvd/sd-image-armv7l-multiplatform.nix
+++ b/nixos/modules/installer/cd-dvd/sd-image-armv7l-multiplatform.nix
@@ -5,7 +5,7 @@
let
extlinux-conf-builder =
import ../../system/boot/loader/generic-extlinux-compatible/extlinux-conf-builder.nix {
- inherit pkgs;
+ pkgs = pkgs.buildPackages;
};
in
{
@@ -15,12 +15,6 @@ in
./sd-image.nix
];
- assertions = lib.singleton {
- assertion = pkgs.stdenv.system == "armv7l-linux";
- message = "sd-image-armv7l-multiplatform.nix can be only built natively on ARMv7; " +
- "it cannot be cross compiled";
- };
-
boot.loader.grub.enable = false;
boot.loader.generic-extlinux-compatible.enable = true;
diff --git a/nixos/modules/installer/cd-dvd/sd-image-raspberrypi.nix b/nixos/modules/installer/cd-dvd/sd-image-raspberrypi.nix
index 78ea3f1a205c86b37854c48f1f83c68dd80643b6..96e06670694e8e631a5480678a8da9e7361af15f 100644
--- a/nixos/modules/installer/cd-dvd/sd-image-raspberrypi.nix
+++ b/nixos/modules/installer/cd-dvd/sd-image-raspberrypi.nix
@@ -5,7 +5,7 @@
let
extlinux-conf-builder =
import ../../system/boot/loader/generic-extlinux-compatible/extlinux-conf-builder.nix {
- inherit pkgs;
+ pkgs = pkgs.buildPackages;
};
in
{
@@ -15,12 +15,6 @@ in
./sd-image.nix
];
- assertions = lib.singleton {
- assertion = pkgs.stdenv.system == "armv6l-linux";
- message = "sd-image-raspberrypi.nix can be only built natively on ARMv6; " +
- "it cannot be cross compiled";
- };
-
boot.loader.grub.enable = false;
boot.loader.generic-extlinux-compatible.enable = true;
diff --git a/nixos/modules/installer/cd-dvd/sd-image.nix b/nixos/modules/installer/cd-dvd/sd-image.nix
index 2371be9d89a1e8688f00fc697fdc8a9d15e1d032..69746a8e9799e4067b130b5a9538c356e8607a5c 100644
--- a/nixos/modules/installer/cd-dvd/sd-image.nix
+++ b/nixos/modules/installer/cd-dvd/sd-image.nix
@@ -22,7 +22,7 @@ in
{
options.sdImage = {
imageName = mkOption {
- default = "${config.sdImage.imageBaseName}-${config.system.nixos.label}-${pkgs.stdenv.system}.img";
+ default = "${config.sdImage.imageBaseName}-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.img";
description = ''
Name of the generated image file.
'';
@@ -102,7 +102,7 @@ in
mkdir -p $out/nix-support $out/sd-image
export img=$out/sd-image/${config.sdImage.imageName}
- echo "${pkgs.stdenv.system}" > $out/nix-support/system
+ echo "${pkgs.stdenv.buildPlatform.system}" > $out/nix-support/system
echo "file sd-image $img" >> $out/nix-support/hydra-build-products
# Create the image file sized to fit /boot and /, plus 20M of slack
@@ -134,7 +134,9 @@ in
${config.sdImage.populateBootCommands}
# Copy the populated /boot into the SD image
- (cd boot; mcopy -bpsvm -i ../bootpart.img ./* ::)
+ (cd boot; mcopy -psvm -i ../bootpart.img ./* ::)
+ # Verify the FAT partition before copying it.
+ fsck.vfat -vn bootpart.img
dd conv=notrunc if=bootpart.img of=$img seek=$START count=$SECTORS
'';
}) {};
diff --git a/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix b/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix
index 7ec09acd5919b1310c097814f3685257e3a84b4c..90a5128c02a5880ebab06d9e1fff455ef77bbdb8 100644
--- a/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix
+++ b/nixos/modules/installer/cd-dvd/system-tarball-sheevaplug.nix
@@ -137,7 +137,7 @@ in
# Setting vesa, we don't get the nvidia driver, which can't work in arm.
services.xserver.videoDrivers = [ "vesa" ];
- services.nixosManual.enable = false;
+ documentation.nixos.enable = false;
# Include the firmware for various wireless cards.
networking.enableRalinkFirmware = true;
diff --git a/nixos/modules/installer/cd-dvd/system-tarball.nix b/nixos/modules/installer/cd-dvd/system-tarball.nix
index e72d4a5b491075e34095d773d9b66b156e2ee04c..b84096861f56e4264a594afcf2fc3623a1e7f70c 100644
--- a/nixos/modules/installer/cd-dvd/system-tarball.nix
+++ b/nixos/modules/installer/cd-dvd/system-tarball.nix
@@ -68,7 +68,7 @@ in
# Create the tarball
system.build.tarball = import ../../../lib/make-system-tarball.nix {
- inherit (pkgs) stdenv perl xz pathsFromGraph;
+ inherit (pkgs) stdenv closureInfo pixz;
inherit (config.tarball) contents storeContents;
};
diff --git a/nixos/modules/installer/netboot/netboot.nix b/nixos/modules/installer/netboot/netboot.nix
index a2c8e26f62c256bcd7dae49c50828fe44c77db70..303d9fce3f9aa521a682b131ca6736b81e9f9dec 100644
--- a/nixos/modules/installer/netboot/netboot.nix
+++ b/nixos/modules/installer/netboot/netboot.nix
@@ -25,10 +25,9 @@ with lib;
# !!! Hack - attributes expected by other modules.
environment.systemPackages = [ pkgs.grub2_efi ]
- ++ (if pkgs.stdenv.system == "aarch64-linux"
+ ++ (if pkgs.stdenv.hostPlatform.system == "aarch64-linux"
then []
else [ pkgs.grub2 pkgs.syslinux ]);
- system.boot.loader.kernelFile = pkgs.stdenv.hostPlatform.platform.kernelTarget;
fileSystems."/" =
{ fsType = "tmpfs";
diff --git a/nixos/modules/installer/tools/nix-fallback-paths.nix b/nixos/modules/installer/tools/nix-fallback-paths.nix
index 7c5414257b46f052a347e8a5ffa198cfa9b4b547..b9ab2053c41fcdf3e75477868f15a0d8a29dc8cd 100644
--- a/nixos/modules/installer/tools/nix-fallback-paths.nix
+++ b/nixos/modules/installer/tools/nix-fallback-paths.nix
@@ -1,6 +1,6 @@
{
- x86_64-linux = "/nix/store/0d60i73mcv8z1m8d2m74yfn84980gfsa-nix-2.0.4";
- i686-linux = "/nix/store/6ssafj2s5a2g9x28yld7b70vwd6vw6lb-nix-2.0.4";
- aarch64-linux = "/nix/store/3wwch7bp7n7xsl8apgy2a4b16yzyij1z-nix-2.0.4";
- x86_64-darwin = "/nix/store/771l8i0mz4c8kry8cz3sz8rr3alalckg-nix-2.0.4";
+ x86_64-linux = "/nix/store/hbhdjn5ik3byg642d1m11k3k3s0kn3py-nix-2.2.2";
+ i686-linux = "/nix/store/fz5cikwvj3n0a6zl44h6l2z3cin64mda-nix-2.2.2";
+ aarch64-linux = "/nix/store/2gba4cyl4wvxzfbhmli90jy4n5aj0kjj-nix-2.2.2";
+ x86_64-darwin = "/nix/store/87i4fp46jfw9yl8c7i9gx75m5yph7irl-nix-2.2.2";
}
diff --git a/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix b/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix
index 4372d196261e969d59da8ab5604383db2bee748e..c1028a0ad7e93d830fd69b0733954fb5f1e2689b 100644
--- a/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix
+++ b/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix
@@ -1,9 +1,13 @@
{ system ? builtins.currentSystem
+, config ? {}
, networkExpr
}:
let nodes = import networkExpr; in
-with import ../../../../lib/testing.nix { inherit system; };
+with import ../../../../lib/testing.nix {
+ inherit system;
+ pkgs = import ../../../../.. { inherit system config; };
+};
(makeTest { inherit nodes; testScript = ""; }).driver
diff --git a/nixos/modules/installer/tools/nixos-build-vms/nixos-build-vms.sh b/nixos/modules/installer/tools/nixos-build-vms/nixos-build-vms.sh
index 4e981c074a5745766cd5913e7e2d6483b328a3eb..25106733087effc2e7b329e1a3cd631d19485ac0 100644
--- a/nixos/modules/installer/tools/nixos-build-vms/nixos-build-vms.sh
+++ b/nixos/modules/installer/tools/nixos-build-vms/nixos-build-vms.sh
@@ -9,49 +9,44 @@ showUsage() {
# Parse valid argument options
-PARAMS=`getopt -n $0 -o h -l no-out-link,show-trace,help -- "$@"`
+nixBuildArgs=()
+networkExpr=
-if [ $? != 0 ]
-then
- showUsage
- exit 1
-fi
-
-eval set -- "$PARAMS"
-
-# Evaluate valid options
-
-while [ "$1" != "--" ]
-do
+while [ $# -gt 0 ]; do
case "$1" in
- --no-out-link)
- noOutLinkArg="--no-out-link"
- ;;
- --show-trace)
- showTraceArg="--show-trace"
- ;;
- -h|--help)
- showUsage
- exit 0
- ;;
+ --no-out-link)
+ nixBuildArgs+=("--no-out-link")
+ ;;
+ --show-trace)
+ nixBuildArgs+=("--show-trace")
+ ;;
+ -h|--help)
+ showUsage
+ exit 0
+ ;;
+ --option)
+ shift
+ nixBuildArgs+=("--option" "$1" "$2"); shift
+ ;;
+ *)
+ if [ ! -z "$networkExpr" ]; then
+ echo "Network expression already set!"
+ showUsage
+ exit 1
+ fi
+ networkExpr="$(readlink -f $1)"
+ ;;
esac
-
+
shift
done
-shift
-
-# Validate the given options
-
-if [ "$1" = "" ]
+if [ -z "$networkExpr" ]
then
echo "ERROR: A network expression must be specified!" >&2
exit 1
-else
- networkExpr=$(readlink -f $1)
fi
# Build a network of VMs
-
nix-build '' \
- --argstr networkExpr $networkExpr $noOutLinkArg $showTraceArg
+ --argstr networkExpr $networkExpr "${nixBuildArgs[@]}"
diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl
index bb201d97ded1edb6995d9ca94a1dd4ff17762f56..686204ee034253b610299e6d1fe82f6df3e3a38e 100644
--- a/nixos/modules/installer/tools/nixos-generate-config.pl
+++ b/nixos/modules/installer/tools/nixos-generate-config.pl
@@ -277,8 +277,7 @@ if ($virt eq "qemu" || $virt eq "kvm" || $virt eq "bochs") {
# Also for Hyper-V.
if ($virt eq "microsoft") {
- push @initrdAvailableKernelModules, "hv_storvsc";
- $videoDriver = "fbdev";
+ push @attrs, "virtualisation.hypervGuest.enable = true;"
}
@@ -315,14 +314,16 @@ push @attrs, "services.xserver.videoDrivers = [ \"$videoDriver\" ];" if $videoDr
# Generate the swapDevices option from the currently activated swap
# devices.
-my @swaps = read_file("/proc/swaps");
-shift @swaps;
+my @swaps = read_file("/proc/swaps", err_mode => 'carp');
my @swapDevices;
-foreach my $swap (@swaps) {
- $swap =~ /^(\S+)\s/;
- next unless -e $1;
- my $dev = findStableDevPath $1;
- push @swapDevices, "{ device = \"$dev\"; }";
+if (@swaps) {
+ shift @swaps;
+ foreach my $swap (@swaps) {
+ $swap =~ /^(\S+)\s/;
+ next unless -e $1;
+ my $dev = findStableDevPath $1;
+ push @swapDevices, "{ device = \"$dev\"; }";
+ }
}
@@ -339,6 +340,8 @@ foreach my $fs (read_file("/proc/self/mountinfo")) {
chomp $fs;
my @fields = split / /, $fs;
my $mountPoint = $fields[4];
+ $mountPoint =~ s/\\040/ /g; # account for mount points with spaces in the name (\040 is the escape character)
+ $mountPoint =~ s/\\011/\t/g; # account for mount points with tabs in the name (\011 is the escape character)
next unless -d $mountPoint;
my @mountOptions = split /,/, $fields[5];
@@ -354,6 +357,8 @@ foreach my $fs (read_file("/proc/self/mountinfo")) {
my $fsType = $fields[$n];
my $device = $fields[$n + 1];
my @superOptions = split /,/, $fields[$n + 2];
+ $device =~ s/\\040/ /g; # account for devices with spaces in the name (\040 is the escape character)
+ $device =~ s/\\011/\t/g; # account for mount points with tabs in the name (\011 is the escape character)
# Skip the read-only bind-mount on /nix/store.
next if $mountPoint eq "/nix/store" && (grep { $_ eq "rw" } @superOptions) && (grep { $_ eq "ro" } @mountOptions);
@@ -448,7 +453,11 @@ EOF
if (-e $slave) {
my $dmName = read_file("/sys/class/block/$deviceName/dm/name");
chomp $dmName;
- $fileSystems .= " boot.initrd.luks.devices.\"$dmName\".device = \"${\(findStableDevPath $slave)}\";\n\n";
+ # Ensure to add an entry only once
+ my $luksDevice = " boot.initrd.luks.devices.\"$dmName\".device";
+ if ($fileSystems !~ /^\Q$luksDevice\E/m) {
+ $fileSystems .= "$luksDevice = \"${\(findStableDevPath $slave)}\";\n\n";
+ }
}
}
}
@@ -574,6 +583,10 @@ $bootLoaderConfig
# networking.hostName = "nixos"; # Define your hostname.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
+ # Configure network proxy if necessary
+ # networking.proxy.default = "http://user:password\@proxy:port/";
+ # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
+
# Select internationalisation properties.
# i18n = {
# consoleFont = "Lat2-Terminus16";
@@ -626,9 +639,9 @@ $bootLoaderConfig
# services.xserver.desktopManager.plasma5.enable = true;
# Define a user account. Don't forget to set a password with ‘passwd’.
- # users.users.guest = {
+ # users.users.jane = {
# isNormalUser = true;
- # uid = 1000;
+ # extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user.
# };
# This value determines the NixOS release with which your system is to be
diff --git a/nixos/modules/installer/tools/nixos-install.sh b/nixos/modules/installer/tools/nixos-install.sh
index 22c1e0fe9a34b64769ebd4dc8dac65fd2a931859..8685cb345e1e1c67c7cae2089d5e0e2eddb65f48 100644
--- a/nixos/modules/installer/tools/nixos-install.sh
+++ b/nixos/modules/installer/tools/nixos-install.sh
@@ -13,6 +13,7 @@ extraBuildFlags=()
mountPoint=/mnt
channelPath=
+system=
while [ "$#" -gt 0 ]; do
i="$1"; shift 1
@@ -137,7 +138,18 @@ fi
# Ask the user to set a root password, but only if the passwd command
# exists (i.e. when mutable user accounts are enabled).
if [[ -z $noRootPasswd ]] && [ -t 0 ]; then
- nixos-enter --root "$mountPoint" -c '[[ -e /nix/var/nix/profiles/system/sw/bin/passwd ]] && echo "setting root password..." && /nix/var/nix/profiles/system/sw/bin/passwd'
+ if nixos-enter --root "$mountPoint" -c 'test -e /nix/var/nix/profiles/system/sw/bin/passwd'; then
+ set +e
+ nixos-enter --root "$mountPoint" -c 'echo "setting root password..." && /nix/var/nix/profiles/system/sw/bin/passwd'
+ exit_code=$?
+ set -e
+
+ if [[ $exit_code != 0 ]]; then
+ echo "Setting a root password failed with the above printed error."
+ echo "You can set the root password manually by executing \`nixos-enter --root ${mountPoint@Q}\` and then running \`passwd\` in the shell of the new system."
+ exit $exit_code
+ fi
+ fi
fi
echo "installation finished!"
diff --git a/nixos/modules/installer/tools/nixos-option.sh b/nixos/modules/installer/tools/nixos-option.sh
index 3f1e591b97b01ddba3eadf196a199a0fa2ed87fc..4560e9c7403aa6607b0e02b9ca8bd5ab480d621f 100644
--- a/nixos/modules/installer/tools/nixos-option.sh
+++ b/nixos/modules/installer/tools/nixos-option.sh
@@ -82,7 +82,7 @@ evalNix(){
set -e
if test $exit_code -eq 0; then
- cat <&2 <&2 "Warning: This value is not an option."
result=$(evalCfg "")
- if names=$(attrNames "$result" 2> /dev/null); then
+ if [ ! -z "$result" ]; then
+ names=$(attrNames "$result" 2> /dev/null)
echo 1>&2 "This attribute set contains:"
escapeQuotes () { eval echo "$1"; }
nixMap escapeQuotes "$names"
else
- echo 1>&2 "An error occurred while looking for attribute names."
- echo $result
+ echo 1>&2 "An error occurred while looking for attribute names. Are you sure that '$option' exists?"
fi
fi
diff --git a/nixos/modules/installer/tools/nixos-rebuild.sh b/nixos/modules/installer/tools/nixos-rebuild.sh
index 2af73519bc5243bae58703d9402fc3dc61a42789..6a08c9b4c6c62e1a0cd1aac10775b88bb7d70948 100644
--- a/nixos/modules/installer/tools/nixos-rebuild.sh
+++ b/nixos/modules/installer/tools/nixos-rebuild.sh
@@ -29,7 +29,7 @@ while [ "$#" -gt 0 ]; do
--help)
showSyntax
;;
- switch|boot|test|build|dry-build|dry-run|dry-activate|build-vm|build-vm-with-bootloader)
+ switch|boot|test|build|edit|dry-build|dry-run|dry-activate|build-vm|build-vm-with-bootloader)
if [ "$i" = dry-run ]; then i=dry-build; fi
action="$i"
;;
@@ -53,11 +53,11 @@ while [ "$#" -gt 0 ]; do
repair=1
extraBuildFlags+=("$i")
;;
- --max-jobs|-j|--cores|-I)
+ --max-jobs|-j|--cores|-I|--builders)
j="$1"; shift 1
extraBuildFlags+=("$i" "$j")
;;
- --show-trace|--no-build-hook|--keep-failed|-K|--keep-going|-k|--verbose|-v|-vv|-vvv|-vvvv|-vvvvv|--fallback|--repair|--no-build-output|-Q|-j*)
+ --show-trace|--keep-failed|-K|--keep-going|-k|--verbose|-v|-vv|-vvv|-vvvv|-vvvvv|--fallback|--repair|--no-build-output|-Q|-j*)
extraBuildFlags+=("$i")
;;
--option)
@@ -227,6 +227,13 @@ if [ -z "$_NIXOS_REBUILD_REEXEC" -a -n "$canRun" -a -z "$fast" ]; then
fi
fi
+# Find configuration.nix and open editor instead of building.
+if [ "$action" = edit ]; then
+ NIXOS_CONFIG=${NIXOS_CONFIG:-$(nix-instantiate --find-file nixos-config)}
+ exec "${EDITOR:-nano}" "$NIXOS_CONFIG"
+ exit 1
+fi
+
tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX)
SSHOPTS="$NIX_SSHOPTS -o ControlMaster=auto -o ControlPath=$tmpDir/ssh-%n -o ControlPersist=60"
@@ -260,6 +267,14 @@ if [ -n "$rollback" -o "$action" = dry-build ]; then
buildNix=
fi
+nixSystem() {
+ machine="$(uname -m)"
+ if [[ "$machine" =~ i.86 ]]; then
+ machine=i686
+ fi
+ echo $machine-linux
+}
+
prebuiltNix() {
machine="$1"
if [ "$machine" = x86_64 ]; then
@@ -279,7 +294,9 @@ if [ -n "$buildNix" ]; then
nixDrv=
if ! nixDrv="$(nix-instantiate '' --add-root $tmpDir/nix.drv --indirect -A config.nix.package.out "${extraBuildFlags[@]}")"; then
if ! nixDrv="$(nix-instantiate '' --add-root $tmpDir/nix.drv --indirect -A nix "${extraBuildFlags[@]}")"; then
- nixStorePath="$(prebuiltNix "$(uname -m)")"
+ if ! nixStorePath="$(nix-instantiate --eval '' -A $(nixSystem) | sed -e 's/^"//' -e 's/"$//')"; then
+ nixStorePath="$(prebuiltNix "$(uname -m)")"
+ fi
if ! nix-store -r $nixStorePath --add-root $tmpDir/nix --indirect \
--option extra-binary-caches https://cache.nixos.org/; then
echo "warning: don't know how to get latest Nix" >&2
diff --git a/nixos/modules/installer/tools/tools.nix b/nixos/modules/installer/tools/tools.nix
index af0a3a2fcc882f6c81accdcececca47f66b77000..00c4d5018bf56ff1c2ef689954af418518dff1b9 100644
--- a/nixos/modules/installer/tools/tools.nix
+++ b/nixos/modules/installer/tools/tools.nix
@@ -37,7 +37,7 @@ let
name = "nixos-generate-config";
src = ./nixos-generate-config.pl;
path = [ pkgs.btrfs-progs ];
- perl = "${pkgs.perl}/bin/perl -I${pkgs.perlPackages.FileSlurp}/lib/perl5/site_perl";
+ perl = "${pkgs.perl}/bin/perl -I${pkgs.perlPackages.FileSlurp}/${pkgs.perl.libPrefix}";
inherit (config.system.nixos) release;
};
diff --git a/nixos/modules/installer/virtualbox-demo.nix b/nixos/modules/installer/virtualbox-demo.nix
index 8ca3592f380026260417287155b719436225854f..af3e1aecca713515add23003803fc9540d0b6232 100644
--- a/nixos/modules/installer/virtualbox-demo.nix
+++ b/nixos/modules/installer/virtualbox-demo.nix
@@ -22,4 +22,40 @@ with lib;
powerManagement.enable = false;
system.stateVersion = mkDefault "18.03";
+
+ installer.cloneConfigExtra = ''
+ # Let demo build as a trusted user.
+ # nix.trustedUsers = [ "demo" ];
+
+ # Mount a VirtualBox shared folder.
+ # This is configurable in the VirtualBox menu at
+ # Machine / Settings / Shared Folders.
+ # fileSystems."/mnt" = {
+ # fsType = "vboxsf";
+ # device = "nameofdevicetomount";
+ # options = [ "rw" ];
+ # };
+
+ # By default, the NixOS VirtualBox demo image includes SDDM and Plasma.
+ # If you prefer another desktop manager or display manager, you may want
+ # to disable the default.
+ # services.xserver.desktopManager.plasma5.enable = lib.mkForce false;
+ # services.xserver.displayManager.sddm.enable = lib.mkForce false;
+
+ # Enable GDM/GNOME by uncommenting above two lines and two lines below.
+ # services.xserver.displayManager.gdm.enable = true;
+ # services.xserver.desktopManager.gnome3.enable = true;
+
+ # Set your time zone.
+ # time.timeZone = "Europe/Amsterdam";
+
+ # List packages installed in system profile. To search, run:
+ # \$ nix search wget
+ # environment.systemPackages = with pkgs; [
+ # wget vim
+ # ];
+
+ # Enable the OpenSSH daemon.
+ # services.openssh.enable = true;
+ '';
}
diff --git a/nixos/modules/misc/documentation.nix b/nixos/modules/misc/documentation.nix
index b482a5a675230405cc6d7f2c35928330dbca80e2..834ac0de912135de7cafa6e4132e902c8737765a 100644
--- a/nixos/modules/misc/documentation.nix
+++ b/nixos/modules/misc/documentation.nix
@@ -1,8 +1,74 @@
-{ config, lib, pkgs, ... }:
+{ config, lib, pkgs, baseModules, extraModules, modules, ... }:
with lib;
-let cfg = config.documentation; in
+let
+
+ cfg = config.documentation;
+
+ manualModules = baseModules ++ optionals cfg.nixos.includeAllModules (extraModules ++ modules);
+
+ /* For the purpose of generating docs, evaluate options with each derivation
+ in `pkgs` (recursively) replaced by a fake with path "\${pkgs.attribute.path}".
+ It isn't perfect, but it seems to cover a vast majority of use cases.
+ Caveat: even if the package is reached by a different means,
+ the path above will be shown and not e.g. `${config.services.foo.package}`. */
+ manual = import ../../doc/manual rec {
+ inherit pkgs config;
+ version = config.system.nixos.release;
+ revision = "release-${version}";
+ options =
+ let
+ scrubbedEval = evalModules {
+ modules = [ { nixpkgs.localSystem = config.nixpkgs.localSystem; } ] ++ manualModules;
+ args = (config._module.args) // { modules = [ ]; };
+ specialArgs = { pkgs = scrubDerivations "pkgs" pkgs; };
+ };
+ scrubDerivations = namePrefix: pkgSet: mapAttrs
+ (name: value:
+ let wholeName = "${namePrefix}.${name}"; in
+ if isAttrs value then
+ scrubDerivations wholeName value
+ // (optionalAttrs (isDerivation value) { outPath = "\${${wholeName}}"; })
+ else value
+ )
+ pkgSet;
+ in scrubbedEval.options;
+ };
+
+ helpScript = pkgs.writeScriptBin "nixos-help"
+ ''
+ #! ${pkgs.runtimeShell} -e
+ # Finds first executable browser in a colon-separated list.
+ # (see how xdg-open defines BROWSER)
+ browser="$(
+ IFS=: ; for b in $BROWSER; do
+ [ -n "$(type -P "$b" || true)" ] && echo "$b" && break
+ done
+ )"
+ if [ -z "$browser" ]; then
+ browser="$(type -P xdg-open || true)"
+ if [ -z "$browser" ]; then
+ browser="$(type -P w3m || true)"
+ if [ -z "$browser" ]; then
+ echo "$0: unable to start a web browser; please set \$BROWSER"
+ exit 1
+ fi
+ fi
+ fi
+ exec "$browser" ${manual.manualHTMLIndex}
+ '';
+
+ desktopItem = pkgs.makeDesktopItem {
+ name = "nixos-manual";
+ desktopName = "NixOS Manual";
+ genericName = "View NixOS documentation in a web browser";
+ icon = "nix-snowflake";
+ exec = "${helpScript}/bin/nixos-help";
+ categories = "System";
+ };
+
+in
{
@@ -66,6 +132,33 @@ let cfg = config.documentation; in
'';
};
+ nixos.enable = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether to install NixOS's own documentation.
+
+ This includes man pages like
+ configuration.nix
+ 5 if is
+ set.
+ This includes the HTML manual and the nixos-help command if
+ is set.
+
+ '';
+ };
+
+ nixos.includeAllModules = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether the generated NixOS's documentation should include documentation for all
+ the options from all the NixOS modules included in the current
+ configuration.nix. Disabling this will make the manual
+ generator to ignore options defined outside of baseModules.
+ '';
+ };
+
};
};
@@ -76,12 +169,21 @@ let cfg = config.documentation; in
environment.systemPackages = [ pkgs.man-db ];
environment.pathsToLink = [ "/share/man" ];
environment.extraOutputsToInstall = [ "man" ] ++ optional cfg.dev.enable "devman";
+ environment.etc."man.conf".source = "${pkgs.man-db}/etc/man_db.conf";
})
(mkIf cfg.info.enable {
environment.systemPackages = [ pkgs.texinfoInteractive ];
environment.pathsToLink = [ "/share/info" ];
environment.extraOutputsToInstall = [ "info" ] ++ optional cfg.dev.enable "devinfo";
+ environment.extraSetup = ''
+ if [ -w $out/share/info ]; then
+ shopt -s nullglob
+ for i in $out/share/info/*.info $out/share/info/*.info.gz; do
+ ${pkgs.buildPackages.texinfo}/bin/install-info $i $out/share/info/dir
+ done
+ fi
+ '';
})
(mkIf cfg.doc.enable {
@@ -91,6 +193,21 @@ let cfg = config.documentation; in
environment.extraOutputsToInstall = [ "doc" ] ++ optional cfg.dev.enable "devdoc";
})
+ (mkIf cfg.nixos.enable {
+ system.build.manual = manual;
+
+ environment.systemPackages = []
+ ++ optional cfg.man.enable manual.manpages
+ ++ optionals cfg.doc.enable ([ manual.manualHTML helpScript ]
+ ++ optionals config.services.xserver.enable [ desktopItem pkgs.nixos-icons ]);
+
+ services.mingetty.helpLine = mkIf cfg.doc.enable (
+ "\nRun `nixos-help` "
+ + optionalString config.services.nixosManual.showManual "or press "
+ + "for the NixOS manual."
+ );
+ })
+
]);
}
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index bffd8aff78b9081743923213adf7ed2e6a62b677..e78673514e3ba5d9d9c4f535be34498198e9b0e6 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -53,7 +53,7 @@
tomcat = 16;
#audio = 17; # unused
#floppy = 18; # unused
- #uucp = 19; # unused
+ uucp = 19;
#lp = 20; # unused
#proc = 21; # unused
pulseaudio = 22; # must match `pulseaudio' GID
@@ -101,7 +101,7 @@
iodined = 66;
#libvirtd = 67; # unused
graphite = 68;
- statsd = 69;
+ #statsd = 69; # removed 2018-11-14
transmission = 70;
postgres = 71;
#vboxusers = 72; # unused
@@ -175,7 +175,7 @@
dnsmasq = 141;
uhub = 142;
yandexdisk = 143;
- #collectd = 144; #unused
+ mxisd = 144; # was once collectd
consul = 145;
mailpile = 146;
redmine = 147;
@@ -272,7 +272,7 @@
nzbget = 245;
mosquitto = 246;
toxvpn = 247;
- squeezelite = 248;
+ # squeezelite = 248; # DynamicUser = true
turnserver = 249;
smokeping = 250;
gocd-agent = 251;
@@ -289,8 +289,8 @@
stanchion = 262;
riak-cs = 263;
infinoted = 264;
- # keystone = 265; # unused, removed 2017-12-13
- # glance = 266; # unused, removed 2017-12-13
+ sickbeard = 265;
+ headphones = 266;
couchpotato = 267;
gogs = 268;
pdns-recursor = 269;
@@ -306,7 +306,7 @@
rslsync = 279;
minio = 280;
kanboard = 281;
- pykms = 282;
+ # pykms = 282; # DynamicUser = true
kodi = 283;
restya-board = 284;
mighttpd2 = 285;
@@ -326,6 +326,19 @@
cfssl = 299;
cassandra = 300;
qemu-libvirtd = 301;
+ # kvm = 302; # unused
+ # render = 303; # unused
+ zeronet = 304;
+ lirc = 305;
+ lidarr = 306;
+ slurm = 307;
+ kapacitor = 308;
+ solr = 309;
+ alerta = 310;
+ minetest = 311;
+ rss2email = 312;
+ cockroachdb = 313;
+ zoneminder = 314;
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
@@ -380,7 +393,7 @@
virtuoso = 44;
#rtkit = 45; # unused
dovecot2 = 46;
- #dovenull = 47; # unused
+ dovenull2 = 47;
prayer = 49;
mpd = 50;
clamav = 51;
@@ -401,7 +414,7 @@
iodined = 66;
libvirtd = 67;
graphite = 68;
- #statsd = 69; # unused
+ #statsd = 69; # removed 2018-11-14
transmission = 70;
postgres = 71;
vboxusers = 72;
@@ -473,7 +486,7 @@
#dnsmasq = 141; # unused
uhub = 142;
#yandexdisk = 143; # unused
- #collectd = 144; # unused
+ mxisd = 144; # was once collectd
#consul = 145; # unused
mailpile = 146;
redmine = 147;
@@ -576,8 +589,8 @@
stanchion = 262;
riak-cs = 263;
infinoted = 264;
- # keystone = 265; # unused, removed 2017-12-13
- # glance = 266; # unused, removed 2017-12-13
+ sickbeard = 265;
+ headphones = 266;
couchpotato = 267;
gogs = 268;
kresd = 270;
@@ -592,7 +605,7 @@
rslsync = 279;
minio = 280;
kanboard = 281;
- pykms = 282;
+ # pykms = 282; # DynamicUser = true
kodi = 283;
restya-board = 284;
mighttpd2 = 285;
@@ -612,6 +625,19 @@
cfssl = 299;
cassandra = 300;
qemu-libvirtd = 301;
+ kvm = 302; # default udev rules from systemd requires these
+ render = 303; # default udev rules from systemd requires these
+ zeronet = 304;
+ lirc = 305;
+ lidarr = 306;
+ slurm = 307;
+ kapacitor = 308;
+ solr = 309;
+ alerta = 310;
+ minetest = 311;
+ rss2email = 312;
+ cockroachdb = 313;
+ zoneminder = 314;
# When adding a gid, make sure it doesn't match an existing
# uid. Users and groups with the same name should have equal
diff --git a/nixos/modules/misc/nixpkgs.nix b/nixos/modules/misc/nixpkgs.nix
index 8fbe218b232af3f57eb87c2b5abaf9aa024fc668..3a717fddaba2be68af2c4958e37827c03da439dc 100644
--- a/nixos/modules/misc/nixpkgs.nix
+++ b/nixos/modules/misc/nixpkgs.nix
@@ -1,9 +1,10 @@
-{ config, lib, pkgs, ... }:
+{ config, options, lib, pkgs, ... }:
with lib;
let
cfg = config.nixpkgs;
+ opt = options.nixpkgs;
isConfig = x:
builtins.isAttrs x || lib.isFunction x;
@@ -54,6 +55,12 @@ let
check = builtins.isAttrs;
};
+ defaultPkgs = import ../../.. {
+ inherit (cfg) config overlays localSystem crossSystem;
+ };
+
+ finalPkgs = if opt.pkgs.isDefined then cfg.pkgs.appendOverlays cfg.overlays else defaultPkgs;
+
in
{
@@ -62,21 +69,24 @@ in
pkgs = mkOption {
defaultText = literalExample
''import "''${nixos}/.." {
- inherit (config.nixpkgs) config overlays localSystem crossSystem;
+ inherit (cfg) config overlays localSystem crossSystem;
}
'';
- default = import ../../.. {
- localSystem = { inherit (cfg) system; } // cfg.localSystem;
- inherit (cfg) config overlays crossSystem;
- };
type = pkgsType;
example = literalExample ''import {}'';
description = ''
- This is the evaluation of Nixpkgs that will be provided to
- all NixOS modules. Defining this option has the effect of
- ignoring the other options that would otherwise be used to
- evaluate Nixpkgs, because those are arguments to the default
- value. The default value imports the Nixpkgs source files
+ If set, the pkgs argument to all NixOS modules is the value of
+ this option, extended with nixpkgs.overlays, if
+ that is also set. Either nixpkgs.crossSystem or
+ nixpkgs.localSystem will be used in an assertion
+ to check that the NixOS and Nixpkgs architectures match. Any
+ other options in nixpkgs.*, notably config,
+ will be ignored.
+
+ If unset, the pkgs argument to all NixOS modules is determined
+ as shown in the default value for this option.
+
+ The default value imports the Nixpkgs source files
relative to the location of this NixOS module, because
NixOS and Nixpkgs are distributed together for consistency,
so the nixos in the default value is in fact a
@@ -129,19 +139,24 @@ in
description = ''
List of overlays to use with the Nix Packages collection.
(For details, see the Nixpkgs documentation.) It allows
- you to override packages globally. This is a function that
+ you to override packages globally. Each function in the list
takes as an argument the original Nixpkgs.
The first argument should be used for finding dependencies, and
the second should be used for overriding recipes.
- Ignored when nixpkgs.pkgs is set.
+ If nixpkgs.pkgs is set, overlays specified here
+ will be applied after the overlays that were already present
+ in nixpkgs.pkgs.
'';
};
localSystem = mkOption {
type = types.attrs; # TODO utilize lib.systems.parsedPlatform
- default = { system = builtins.currentSystem; };
+ default = { inherit (cfg) system; };
example = { system = "aarch64-linux"; config = "aarch64-unknown-linux-gnu"; };
+ # Make sure that the final value has all fields for sake of other modules
+ # referring to this. TODO make `lib.systems` itself use the module system.
+ apply = lib.systems.elaborate;
defaultText = literalExample
''(import "''${nixos}/../lib").lib.systems.examples.aarch64-multiplatform'';
description = ''
@@ -180,6 +195,7 @@ in
system = mkOption {
type = types.str;
example = "i686-linux";
+ default = { system = builtins.currentSystem; };
description = ''
Specifies the Nix platform type on which NixOS should be built.
It is better to specify nixpkgs.localSystem instead.
@@ -196,6 +212,7 @@ in
See nixpkgs.localSystem for more information.
+ Ignored when nixpkgs.localSystem is set.
Ignored when nixpkgs.pkgs is set.
'';
};
@@ -203,8 +220,26 @@ in
config = {
_module.args = {
- pkgs = cfg.pkgs;
- pkgs_i686 = cfg.pkgs.pkgsi686Linux;
+ pkgs = finalPkgs;
};
+
+ assertions = [
+ (
+ let
+ nixosExpectedSystem =
+ if config.nixpkgs.crossSystem != null
+ then config.nixpkgs.crossSystem.system
+ else config.nixpkgs.localSystem.system;
+ nixosOption =
+ if config.nixpkgs.crossSystem != null
+ then "nixpkgs.crossSystem"
+ else "nixpkgs.localSystem";
+ pkgsSystem = finalPkgs.stdenv.targetPlatform.system;
+ in {
+ assertion = nixosExpectedSystem == pkgsSystem;
+ message = "The NixOS nixpkgs.pkgs option was set to a Nixpkgs invocation that compiles to target system ${pkgsSystem} but NixOS was configured for system ${nixosExpectedSystem} via NixOS option ${nixosOption}. The NixOS system settings must match the Nixpkgs target system.";
+ }
+ )
+ ];
};
}
diff --git a/nixos/modules/misc/version.nix b/nixos/modules/misc/version.nix
index 63717e0c6a8107debd672791d979d9d350d1bf69..c576cf4cb925ebdc99a0bf2ea3c0194c304e8b29 100644
--- a/nixos/modules/misc/version.nix
+++ b/nixos/modules/misc/version.nix
@@ -5,7 +5,6 @@ with lib;
let
cfg = config.system.nixos;
- revisionFile = "${toString pkgs.path}/.git-revision";
gitRepo = "${toString pkgs.path}/.git";
gitCommitId = lib.substring 0 7 (commitIdFromGitRepo gitRepo);
in
@@ -37,15 +36,14 @@ in
nixos.revision = mkOption {
internal = true;
type = types.str;
- default = if pathIsDirectory gitRepo then commitIdFromGitRepo gitRepo
- else if pathExists revisionFile then fileContents revisionFile
- else "master";
+ default = trivial.revisionWithDefault "master";
description = "The Git revision from which this NixOS configuration was built.";
};
nixos.codeName = mkOption {
readOnly = true;
type = types.str;
+ default = trivial.codeName;
description = "The NixOS release code name (e.g. Emu).";
};
@@ -82,9 +80,6 @@ in
version = mkDefault (cfg.release + cfg.versionSuffix);
revision = mkIf (pathIsDirectory gitRepo) (mkDefault gitCommitId);
versionSuffix = mkIf (pathIsDirectory gitRepo) (mkDefault (".git." + gitCommitId));
-
- # Note: the first letter is bumped on every release. It's an animal.
- codeName = "Jellyfish";
};
# Generate /etc/os-release. See
@@ -98,6 +93,7 @@ in
VERSION_CODENAME=${toLower cfg.codeName}
VERSION_ID="${cfg.version}"
PRETTY_NAME="NixOS ${cfg.version} (${cfg.codeName})"
+ LOGO="nix-snowflake"
HOME_URL="https://nixos.org/"
SUPPORT_URL="https://nixos.org/nixos/support.html"
BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues"
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 396e91204079cb0552f044cdfae77d09f6565a46..56c44a43c6e382b317ca5858cf91274b8e37b7e6 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -7,6 +7,13 @@
./config/fonts/fontdir.nix
./config/fonts/fonts.nix
./config/fonts/ghostscript.nix
+ ./config/xdg/autostart.nix
+ ./config/xdg/icons.nix
+ ./config/xdg/menus.nix
+ ./config/xdg/mime.nix
+ ./config/appstream.nix
+ ./config/xdg/sounds.nix
+ ./config/gtk/gtk-icon-cache.nix
./config/gnu.nix
./config/i18n.nix
./config/iproute2.nix
@@ -28,20 +35,25 @@
./config/users-groups.nix
./config/vpnc.nix
./config/zram.nix
+ ./hardware/acpilight.nix
./hardware/all-firmware.nix
+ ./hardware/bladeRF.nix
./hardware/brightnessctl.nix
- ./hardware/ckb.nix
+ ./hardware/ckb-next.nix
./hardware/cpu/amd-microcode.nix
./hardware/cpu/intel-microcode.nix
./hardware/digitalbitbox.nix
./hardware/sensor/iio.nix
./hardware/ksm.nix
+ ./hardware/ledger.nix
+ ./hardware/logitech.nix
./hardware/mcelog.nix
./hardware/network/b43.nix
./hardware/nitrokey.nix
./hardware/opengl.nix
./hardware/pcmcia.nix
./hardware/raid/hpsa.nix
+ ./hardware/steam-hardware.nix
./hardware/usb-wwan.nix
./hardware/onlykey.nix
./hardware/video/amdgpu.nix
@@ -58,7 +70,6 @@
./i18n/input-method/ibus.nix
./i18n/input-method/nabi.nix
./i18n/input-method/uim.nix
- ./installer/tools/auto-upgrade.nix
./installer/tools/tools.nix
./misc/assertions.nix
./misc/crashdump.nix
@@ -74,6 +85,7 @@
./misc/version.nix
./programs/adb.nix
./programs/atop.nix
+ ./programs/autojump.nix
./programs/bash/bash.nix
./programs/bcc.nix
./programs/blcr.nix
@@ -85,6 +97,7 @@
./programs/criu.nix
./programs/dconf.nix
./programs/digitalbitbox/default.nix
+ ./programs/dmrconfig.nix
./programs/environment.nix
./programs/firejail.nix
./programs/fish.nix
@@ -92,18 +105,20 @@
./programs/gnupg.nix
./programs/gphoto2.nix
./programs/iftop.nix
+ ./programs/iotop.nix
./programs/java.nix
./programs/kbdlight.nix
./programs/less.nix
./programs/light.nix
./programs/mosh.nix
+ ./programs/mininet.nix
./programs/mtr.nix
./programs/nano.nix
+ ./programs/nm-applet.nix
./programs/npm.nix
./programs/oblogout.nix
./programs/plotinus.nix
./programs/qt5ct.nix
- ./programs/rootston.nix
./programs/screen.nix
./programs/sedutil.nix
./programs/slock.nix
@@ -121,7 +136,9 @@
./programs/udevil.nix
./programs/venus.nix
./programs/vim.nix
+ ./programs/wavemon.nix
./programs/way-cooler.nix
+ ./programs/waybar.nix
./programs/wireshark.nix
./programs/xfs_quota.nix
./programs/xonsh.nix
@@ -142,8 +159,10 @@
./security/chromium-suid-sandbox.nix
./security/dhparams.nix
./security/duosec.nix
+ ./security/google_oslogin.nix
./security/hidepid.nix
./security/lock-kernel-modules.nix
+ ./security/misc.nix
./security/oath.nix
./security/pam.nix
./security/pam_usb.nix
@@ -154,6 +173,7 @@
./security/rtkit.nix
./security/wrappers/default.nix
./security/sudo.nix
+ ./security/systemd-confinement.nix
./services/admin/oxidized.nix
./services/admin/salt/master.nix
./services/admin/salt/minion.nix
@@ -165,13 +185,16 @@
./services/audio/mpd.nix
./services/audio/mopidy.nix
./services/audio/slimserver.nix
+ ./services/audio/snapserver.nix
./services/audio/squeezelite.nix
./services/audio/ympd.nix
+ ./services/backup/automysqlbackup.nix
./services/backup/bacula.nix
./services/backup/borgbackup.nix
./services/backup/duplicati.nix
./services/backup/crashplan.nix
./services/backup/crashplan-small-business.nix
+ ./services/backup/duplicity.nix
./services/backup/mysql-backup.nix
./services/backup/postgresql-backup.nix
./services/backup/restic.nix
@@ -180,9 +203,17 @@
./services/backup/tarsnap.nix
./services/backup/znapzend.nix
./services/cluster/hadoop/default.nix
+ ./services/cluster/kubernetes/addons/dns.nix
+ ./services/cluster/kubernetes/addons/dashboard.nix
+ ./services/cluster/kubernetes/addon-manager.nix
+ ./services/cluster/kubernetes/apiserver.nix
+ ./services/cluster/kubernetes/controller-manager.nix
./services/cluster/kubernetes/default.nix
- ./services/cluster/kubernetes/dns.nix
- ./services/cluster/kubernetes/dashboard.nix
+ ./services/cluster/kubernetes/flannel.nix
+ ./services/cluster/kubernetes/kubelet.nix
+ ./services/cluster/kubernetes/pki.nix
+ ./services/cluster/kubernetes/proxy.nix
+ ./services/cluster/kubernetes/scheduler.nix
./services/computing/boinc/client.nix
./services/computing/torque/server.nix
./services/computing/torque/mom.nix
@@ -203,6 +234,7 @@
./services/databases/aerospike.nix
./services/databases/cassandra.nix
./services/databases/clickhouse.nix
+ ./services/databases/cockroachdb.nix
./services/databases/couchdb.nix
./services/databases/firebird.nix
./services/databases/foundationdb.nix
@@ -224,32 +256,45 @@
./services/databases/virtuoso.nix
./services/desktops/accountsservice.nix
./services/desktops/bamf.nix
+ ./services/desktops/deepin/dde-daemon.nix
+ ./services/desktops/deepin/deepin-menu.nix
./services/desktops/dleyna-renderer.nix
./services/desktops/dleyna-server.nix
+ ./services/desktops/pantheon/contractor.nix
+ ./services/desktops/pantheon/files.nix
./services/desktops/flatpak.nix
./services/desktops/geoclue2.nix
+ ./services/desktops/gsignond.nix
./services/desktops/pipewire.nix
./services/desktops/gnome3/at-spi2-core.nix
./services/desktops/gnome3/chrome-gnome-shell.nix
+ ./services/desktops/gnome3/evince.nix
./services/desktops/gnome3/evolution-data-server.nix
+ ./services/desktops/gnome3/file-roller.nix
+ ./services/desktops/gnome3/glib-networking.nix
./services/desktops/gnome3/gnome-disks.nix
./services/desktops/gnome3/gnome-documents.nix
./services/desktops/gnome3/gnome-keyring.nix
./services/desktops/gnome3/gnome-online-accounts.nix
+ ./services/desktops/gnome3/gnome-remote-desktop.nix
./services/desktops/gnome3/gnome-online-miners.nix
+ ./services/desktops/gnome3/gnome-settings-daemon.nix
./services/desktops/gnome3/gnome-terminal-server.nix
./services/desktops/gnome3/gnome-user-share.nix
./services/desktops/gnome3/gpaste.nix
./services/desktops/gnome3/gvfs.nix
+ ./services/desktops/gnome3/rygel.nix
./services/desktops/gnome3/seahorse.nix
./services/desktops/gnome3/sushi.nix
./services/desktops/gnome3/tracker.nix
./services/desktops/gnome3/tracker-miners.nix
./services/desktops/profile-sync-daemon.nix
./services/desktops/telepathy.nix
+ ./services/desktops/tumbler.nix
./services/desktops/zeitgeist.nix
./services/development/bloop.nix
./services/development/hoogle.nix
+ ./services/development/jupyter/default.nix
./services/editors/emacs.nix
./services/editors/infinoted.nix
./services/games/factorio.nix
@@ -259,6 +304,7 @@
./services/hardware/acpid.nix
./services/hardware/actkbd.nix
./services/hardware/bluetooth.nix
+ ./services/hardware/bolt.nix
./services/hardware/brltty.nix
./services/hardware/freefall.nix
./services/hardware/fwupd.nix
@@ -266,27 +312,34 @@
./services/hardware/interception-tools.nix
./services/hardware/irqbalance.nix
./services/hardware/lcd.nix
+ ./services/hardware/lirc.nix
./services/hardware/nvidia-optimus.nix
./services/hardware/pcscd.nix
./services/hardware/pommed.nix
+ ./services/hardware/ratbagd.nix
./services/hardware/sane.nix
./services/hardware/sane_extra_backends/brscan4.nix
+ ./services/hardware/sane_extra_backends/dsseries.nix
./services/hardware/tcsd.nix
./services/hardware/tlp.nix
./services/hardware/thinkfan.nix
./services/hardware/trezord.nix
+ ./services/hardware/triggerhappy.nix
./services/hardware/u2f.nix
./services/hardware/udev.nix
./services/hardware/udisks2.nix
./services/hardware/upower.nix
./services/hardware/usbmuxd.nix
./services/hardware/thermald.nix
+ ./services/hardware/undervolt.nix
+ ./services/hardware/vdr.nix
./services/logging/SystemdJournal2Gelf.nix
./services/logging/awstats.nix
./services/logging/fluentd.nix
./services/logging/graylog.nix
./services/logging/heartbeat.nix
./services/logging/journalbeat.nix
+ ./services/logging/journaldriver.nix
./services/logging/journalwatch.nix
./services/logging/klogd.nix
./services/logging/logcheck.nix
@@ -296,12 +349,14 @@
./services/logging/syslog-ng.nix
./services/logging/syslogd.nix
./services/mail/clamsmtp.nix
+ ./services/mail/davmail.nix
./services/mail/dkimproxy-out.nix
./services/mail/dovecot.nix
./services/mail/dspam.nix
./services/mail/exim.nix
./services/mail/freepops.nix
./services/mail/mail.nix
+ ./services/mail/mailcatcher.nix
./services/mail/mailhog.nix
./services/mail/mlmmj.nix
./services/mail/offlineimap.nix
@@ -313,12 +368,16 @@
./services/mail/postgrey.nix
./services/mail/spamassassin.nix
./services/mail/rspamd.nix
+ ./services/mail/rss2email.nix
./services/mail/rmilter.nix
+ ./services/mail/roundcube.nix
./services/mail/nullmailer.nix
./services/misc/airsonic.nix
./services/misc/apache-kafka.nix
./services/misc/autofs.nix
./services/misc/autorandr.nix
+ ./services/misc/beanstalkd.nix
+ ./services/misc/bees.nix
./services/misc/bepasty.nix
./services/misc/canto-daemon.nix
./services/misc/calibre-server.nix
@@ -350,12 +409,15 @@
./services/misc/gogs.nix
./services/misc/gollum.nix
./services/misc/gpsd.nix
+ ./services/misc/headphones.nix
./services/misc/home-assistant.nix
./services/misc/ihaskell.nix
./services/misc/irkerd.nix
./services/misc/jackett.nix
+ ./services/misc/jellyfin.nix
./services/misc/logkeys.nix
./services/misc/leaps.nix
+ ./services/misc/lidarr.nix
./services/misc/mantisbt.nix
./services/misc/mathics.nix
./services/misc/matrix-synapse.nix
@@ -377,7 +439,7 @@
./services/misc/parsoid.nix
./services/misc/phd.nix
./services/misc/plex.nix
- ./services/misc/plexpy.nix
+ ./services/misc/tautulli.nix
./services/misc/pykms.nix
./services/misc/radarr.nix
./services/misc/redmine.nix
@@ -386,6 +448,7 @@
./services/misc/rogue.nix
./services/misc/serviio.nix
./services/misc/safeeyes.nix
+ ./services/misc/sickbeard.nix
./services/misc/siproxd.nix
./services/misc/snapper.nix
./services/misc/sonarr.nix
@@ -400,8 +463,11 @@
./services/misc/taskserver
./services/misc/tzupdate.nix
./services/misc/uhub.nix
+ ./services/misc/weechat.nix
./services/misc/xmr-stak.nix
+ ./services/misc/zoneminder.nix
./services/misc/zookeeper.nix
+ ./services/monitoring/alerta.nix
./services/monitoring/apcupsd.nix
./services/monitoring/arbtt.nix
./services/monitoring/bosun.nix
@@ -412,9 +478,12 @@
./services/monitoring/dd-agent/dd-agent.nix
./services/monitoring/fusion-inventory.nix
./services/monitoring/grafana.nix
+ ./services/monitoring/grafana-reporter.nix
./services/monitoring/graphite.nix
./services/monitoring/hdaps.nix
./services/monitoring/heapster.nix
+ ./services/monitoring/incron.nix
+ ./services/monitoring/kapacitor.nix
./services/monitoring/longview.nix
./services/monitoring/monit.nix
./services/monitoring/munin.nix
@@ -424,12 +493,12 @@
./services/monitoring/prometheus/default.nix
./services/monitoring/prometheus/alertmanager.nix
./services/monitoring/prometheus/exporters.nix
+ ./services/monitoring/prometheus/pushgateway.nix
./services/monitoring/riemann.nix
./services/monitoring/riemann-dash.nix
./services/monitoring/riemann-tools.nix
./services/monitoring/scollector.nix
./services/monitoring/smartd.nix
- ./services/monitoring/statsd.nix
./services/monitoring/sysstat.nix
./services/monitoring/systemhealth.nix
./services/monitoring/teamviewer.nix
@@ -475,6 +544,7 @@
./services/networking/cntlm.nix
./services/networking/connman.nix
./services/networking/consul.nix
+ ./services/networking/coredns.nix
./services/networking/coturn.nix
./services/networking/dante.nix
./services/networking/ddclient.nix
@@ -487,6 +557,8 @@
./services/networking/dnsdist.nix
./services/networking/dnsmasq.nix
./services/networking/ejabberd.nix
+ ./services/networking/epmd.nix
+ ./services/networking/eternal-terminal.nix
./services/networking/fakeroute.nix
./services/networking/ferm.nix
./services/networking/firefox/sync-server.nix
@@ -508,14 +580,17 @@
./services/networking/heyefi.nix
./services/networking/hostapd.nix
./services/networking/htpdate.nix
+ ./services/networking/hylafax/default.nix
./services/networking/i2pd.nix
./services/networking/i2p.nix
./services/networking/iodine.nix
+ ./services/networking/iperf3.nix
./services/networking/ircd-hybrid/default.nix
./services/networking/iwd.nix
./services/networking/keepalived/default.nix
./services/networking/keybase.nix
./services/networking/kippo.nix
+ ./services/networking/knot.nix
./services/networking/kresd.nix
./services/networking/lambdabot.nix
./services/networking/libreswan.nix
@@ -532,6 +607,7 @@
./services/networking/miredo.nix
./services/networking/mstpd.nix
./services/networking/murmur.nix
+ ./services/networking/mxisd.nix
./services/networking/namecoind.nix
./services/networking/nat.nix
./services/networking/ndppd.nix
@@ -545,6 +621,7 @@
./services/networking/nsd.nix
./services/networking/ntopng.nix
./services/networking/ntpd.nix
+ ./services/networking/nullidentdmod.nix
./services/networking/nylon.nix
./services/networking/ocserv.nix
./services/networking/oidentd.nix
@@ -563,6 +640,7 @@
./services/networking/prosody.nix
./services/networking/quagga.nix
./services/networking/quassel.nix
+ ./services/networking/quicktun.nix
./services/networking/racoon.nix
./services/networking/radicale.nix
./services/networking/radvd.nix
@@ -593,12 +671,15 @@
./services/networking/supplicant.nix
./services/networking/supybot.nix
./services/networking/syncthing.nix
+ ./services/networking/syncthing-relay.nix
./services/networking/tcpcrypt.nix
./services/networking/teamspeak3.nix
+ ./services/networking/tedicross.nix
./services/networking/tinc.nix
./services/networking/tinydns.nix
./services/networking/tftpd.nix
./services/networking/tox-bootstrapd.nix
+ ./services/networking/tox-node.nix
./services/networking/toxvpn.nix
./services/networking/tvheadend.nix
./services/networking/unbound.nix
@@ -606,6 +687,7 @@
./services/networking/vsftpd.nix
./services/networking/wakeonlan.nix
./services/networking/websockify.nix
+ ./services/networking/wg-quick.nix
./services/networking/wicd.nix
./services/networking/wireguard.nix
./services/networking/wpa_supplicant.nix
@@ -613,8 +695,9 @@
./services/networking/xl2tpd.nix
./services/networking/xrdp.nix
./services/networking/zerobin.nix
+ ./services/networking/zeronet.nix
./services/networking/zerotierone.nix
- ./services/networking/znc.nix
+ ./services/networking/znc/default.nix
./services/printing/cupsd.nix
./services/scheduling/atd.nix
./services/scheduling/chronos.nix
@@ -622,9 +705,11 @@
./services/scheduling/fcron.nix
./services/scheduling/marathon.nix
./services/search/elasticsearch.nix
+ ./services/search/elasticsearch-curator.nix
./services/search/hound.nix
./services/search/kibana.nix
./services/search/solr.nix
+ ./services/security/bitwarden_rs/default.nix
./services/security/certmgr.nix
./services/security/cfssl.nix
./services/security/clamav.nix
@@ -636,6 +721,7 @@
./services/security/hologram-server.nix
./services/security/hologram-agent.nix
./services/security/munge.nix
+ ./services/security/nginx-sso.nix
./services/security/oauth2_proxy.nix
./services/security/oauth2_proxy_nginx.nix
./services/security/physlock.nix
@@ -652,7 +738,7 @@
./services/system/dbus.nix
./services/system/earlyoom.nix
./services/system/localtime.nix
- ./services/system/kerberos.nix
+ ./services/system/kerberos/default.nix
./services/system/nscd.nix
./services/system/saslauthd.nix
./services/system/uptimed.nix
@@ -667,15 +753,20 @@
./services/web-apps/atlassian/confluence.nix
./services/web-apps/atlassian/crowd.nix
./services/web-apps/atlassian/jira.nix
+ ./services/web-apps/codimd.nix
+ ./services/web-apps/documize.nix
./services/web-apps/frab.nix
+ ./services/web-apps/icingaweb2/icingaweb2.nix
+ ./services/web-apps/icingaweb2/module-monitoring.nix
./services/web-apps/mattermost.nix
+ ./services/web-apps/miniflux.nix
+ ./services/web-apps/nextcloud.nix
./services/web-apps/nexus.nix
./services/web-apps/pgpkeyserver-lite.nix
./services/web-apps/matomo.nix
./services/web-apps/restya-board.nix
./services/web-apps/tt-rss.nix
./services/web-apps/selfoss.nix
- ./services/web-apps/quassel-webserver.nix
./services/web-apps/virtlyst.nix
./services/web-apps/youtrack.nix
./services/web-servers/apache-httpd/default.nix
@@ -694,6 +785,7 @@
./services/web-servers/nginx/default.nix
./services/web-servers/nginx/gitweb.nix
./services/web-servers/phpfpm/default.nix
+ ./services/web-servers/unit/default.nix
./services/web-servers/shellinabox.nix
./services/web-servers/tomcat.nix
./services/web-servers/traefik.nix
@@ -712,12 +804,14 @@
./services/x11/display-managers/lightdm.nix
./services/x11/display-managers/sddm.nix
./services/x11/display-managers/slim.nix
+ ./services/x11/display-managers/startx.nix
./services/x11/display-managers/xpra.nix
./services/x11/fractalart.nix
./services/x11/hardware/libinput.nix
./services/x11/hardware/multitouch.nix
./services/x11/hardware/synaptics.nix
./services/x11/hardware/wacom.nix
+ ./services/x11/gdk-pixbuf.nix
./services/x11/redshift.nix
./services/x11/urxvtd.nix
./services/x11/window-managers/awesome.nix
@@ -768,6 +862,7 @@
./system/boot/timesyncd.nix
./system/boot/tmp.nix
./system/etc/etc.nix
+ ./tasks/auto-upgrade.nix
./tasks/bcache.nix
./tasks/cpu-freq.nix
./tasks/encrypted-devices.nix
@@ -798,9 +893,11 @@
./tasks/trackpoint.nix
./tasks/powertop.nix
./testing/service-runner.nix
+ ./virtualisation/anbox.nix
./virtualisation/container-config.nix
./virtualisation/containers.nix
./virtualisation/docker.nix
+ ./virtualisation/docker-containers.nix
./virtualisation/ecs-agent.nix
./virtualisation/libvirtd.nix
./virtualisation/lxc.nix
diff --git a/nixos/modules/profiles/all-hardware.nix b/nixos/modules/profiles/all-hardware.nix
index 0d7124be0a5c62d67688329e6d0822a7eed1129a..19f821ae17f393770ae4b5f660bc3c06911c669e 100644
--- a/nixos/modules/profiles/all-hardware.nix
+++ b/nixos/modules/profiles/all-hardware.nix
@@ -33,7 +33,7 @@
# USB support, especially for booting from USB CD-ROM
# drives.
- "usb_storage"
+ "uas"
# Firewire support. Not tested.
"ohci1394" "sbp2"
diff --git a/nixos/modules/profiles/base.nix b/nixos/modules/profiles/base.nix
index 5aaffa4f1f2a1272ab76868c5ae27f67d02e33a6..2a2fe119d30cb36ebf7b70d23cda106479974a90 100644
--- a/nixos/modules/profiles/base.nix
+++ b/nixos/modules/profiles/base.nix
@@ -7,7 +7,7 @@
# Include some utilities that are useful for installing or repairing
# the system.
environment.systemPackages = [
- pkgs.w3m-nox # needed for the manual anyway
+ pkgs.w3m-nographics # needed for the manual anyway
pkgs.testdisk # useful for repairing boot problems
pkgs.ms-sys # for writing Microsoft boot sectors / MBRs
pkgs.efibootmgr
@@ -19,6 +19,9 @@
pkgs.cryptsetup # needed for dm-crypt volumes
pkgs.mkpasswd # for generating password files
+ # Some text editors.
+ pkgs.vim
+
# Some networking tools.
pkgs.fuse
pkgs.fuse3
@@ -46,7 +49,7 @@
];
# Include support for various filesystems.
- boot.supportedFilesystems = [ "btrfs" "reiserfs" "vfat" "f2fs" "xfs" "ntfs" "cifs" ];
+ boot.supportedFilesystems = [ "btrfs" "reiserfs" "vfat" "f2fs" "xfs" "zfs" "ntfs" "cifs" ];
# Configure host id for ZFS to work
networking.hostId = lib.mkDefault "8425e349";
diff --git a/nixos/modules/profiles/clone-config.nix b/nixos/modules/profiles/clone-config.nix
index 99d4774584f1eb527d44dad10e3bb7ae791f90ee..3f669ba7d2e1677251500c772196bb71f57426b6 100644
--- a/nixos/modules/profiles/clone-config.nix
+++ b/nixos/modules/profiles/clone-config.nix
@@ -48,6 +48,8 @@ let
{
imports = [ ${toString config.installer.cloneConfigIncludes} ];
+
+ ${config.installer.cloneConfigExtra}
}
'';
@@ -73,6 +75,13 @@ in
'';
};
+ installer.cloneConfigExtra = mkOption {
+ default = "";
+ description = ''
+ Extra text to include in the cloned configuration.nix included in this
+ installer.
+ '';
+ };
};
config = {
diff --git a/nixos/modules/profiles/docker-container.nix b/nixos/modules/profiles/docker-container.nix
index 7031d7d1d5931ef69b7828eb8ee810f7631c87f9..5d6b11498b522c06d95bdb4582ee38c9e03c0e28 100644
--- a/nixos/modules/profiles/docker-container.nix
+++ b/nixos/modules/profiles/docker-container.nix
@@ -15,15 +15,19 @@ in {
# Create the tarball
system.build.tarball = pkgs.callPackage ../../lib/make-system-tarball.nix {
- contents = [];
+ contents = [
+ {
+ source = "${config.system.build.toplevel}/.";
+ target = "./";
+ }
+ ];
extraArgs = "--owner=0";
# Add init script to image
- storeContents = [
- { object = config.system.build.toplevel + "/init";
- symlink = "/init";
- }
- ] ++ (pkgs2storeContents [ pkgs.stdenv ]);
+ storeContents = pkgs2storeContents [
+ config.system.build.toplevel
+ pkgs.stdenv
+ ];
# Some container managers like lxc need these
extraCommands = "mkdir -p proc sys dev";
diff --git a/nixos/modules/profiles/graphical.nix b/nixos/modules/profiles/graphical.nix
index 332cf58aa538224ceb1ad1e3f84a340efcb1bb88..649f5564ac61207c862e5cace41cf2b824491382 100644
--- a/nixos/modules/profiles/graphical.nix
+++ b/nixos/modules/profiles/graphical.nix
@@ -7,9 +7,16 @@
services.xserver = {
enable = true;
displayManager.sddm.enable = true;
- desktopManager.plasma5.enable = true;
+ desktopManager.plasma5 = {
+ enable = true;
+ enableQt4Support = false;
+ };
libinput.enable = true; # for touchpad support on many laptops
};
- environment.systemPackages = [ pkgs.glxinfo ];
+ # Enable sound in virtualbox appliances.
+ hardware.pulseaudio.enable = true;
+ hardware.pulseaudio.systemWide = true; # Needed since we run plasma as root.
+
+ environment.systemPackages = [ pkgs.glxinfo pkgs.firefox ];
}
diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix
index 2af8bf1f8e30cb38fa2779aa4aea2a36c9b2367a..9ab2ee87a19e503771ad585f1e8349028440110c 100644
--- a/nixos/modules/profiles/hardened.nix
+++ b/nixos/modules/profiles/hardened.nix
@@ -6,23 +6,43 @@
with lib;
{
+ meta = {
+ maintainers = [ maintainers.joachifm ];
+ };
+
boot.kernelPackages = mkDefault pkgs.linuxPackages_hardened;
+ nix.allowedUsers = mkDefault [ "@users" ];
+
security.hideProcessInformation = mkDefault true;
security.lockKernelModules = mkDefault true;
+ security.allowUserNamespaces = mkDefault false;
+
+ security.protectKernelImage = mkDefault true;
+
+ security.allowSimultaneousMultithreading = mkDefault false;
+
+ security.virtualization.flushL1DataCache = mkDefault "always";
+
security.apparmor.enable = mkDefault true;
boot.kernelParams = [
+ # Slab/slub sanity checks, redzoning, and poisoning
+ "slub_debug=FZP"
+
+ # Disable slab merging to make certain heap overflow attacks harder
+ "slab_nomerge"
+
# Overwrite free'd memory
"page_poison=1"
# Disable legacy virtual syscalls
"vsyscall=none"
- # Disable hibernation (allows replacing the running kernel)
- "nohibernate"
+ # Enable PTI even if CPU claims to be safe from meltdown
+ "pti=on"
];
boot.blacklistedKernelModules = [
@@ -36,9 +56,6 @@ with lib;
# (e.g., parent/child)
boot.kernel.sysctl."kernel.yama.ptrace_scope" = mkOverride 500 1;
- # Prevent replacing the running kernel image w/o reboot
- boot.kernel.sysctl."kernel.kexec_load_disabled" = mkDefault true;
-
# Restrict access to kernel ring buffer (information leaks)
boot.kernel.sysctl."kernel.dmesg_restrict" = mkDefault true;
@@ -55,18 +72,6 @@ with lib;
# ... or at least apply some hardening to it
boot.kernel.sysctl."net.core.bpf_jit_harden" = mkDefault true;
- # A recurring problem with user namespaces is that there are
- # still code paths where the kernel's permission checking logic
- # fails to account for namespacing, instead permitting a
- # namespaced process to act outside the namespace with the
- # same privileges as it would have inside it. This is particularly
- # bad in the common case of running as root within the namespace.
- #
- # Setting the number of allowed user namespaces to 0 effectively disables
- # the feature at runtime. Attempting to create a user namespace
- # with unshare will then fail with "no space left on device".
- boot.kernel.sysctl."user.max_user_namespaces" = mkDefault 0;
-
# Raise ASLR entropy for 64bit & 32bit, respectively.
#
# Note: mmap_rnd_compat_bits may not exist on 64bit.
diff --git a/nixos/modules/profiles/headless.nix b/nixos/modules/profiles/headless.nix
index 131ee272859a914899406a6344c47c8843667988..46a9b6a7d8d5ccc78f0c8a8f1a42d48997a9827b 100644
--- a/nixos/modules/profiles/headless.nix
+++ b/nixos/modules/profiles/headless.nix
@@ -6,7 +6,6 @@
with lib;
{
- sound.enable = false;
boot.vesa = false;
# Don't start a tty on the serial consoles.
diff --git a/nixos/modules/profiles/installation-device.nix b/nixos/modules/profiles/installation-device.nix
index ff4a23a18d0692bb9c8316b10f4266cb7bca40a6..580ea4a58e5b48c0e61848e8c9f8e68688e8e1fb 100644
--- a/nixos/modules/profiles/installation-device.nix
+++ b/nixos/modules/profiles/installation-device.nix
@@ -22,9 +22,10 @@ with lib;
config = {
# Enable in installer, even if the minimal profile disables it.
- services.nixosManual.enable = mkForce true;
+ documentation.enable = mkForce true;
# Show the manual.
+ documentation.nixos.enable = mkForce true;
services.nixosManual.showManual = true;
# Let the user play Rogue on TTY 8 during the installation.
@@ -62,7 +63,7 @@ with lib;
# Tell the Nix evaluator to garbage collect more aggressively.
# This is desirable in memory-constrained environments that don't
# (yet) have swap set up.
- environment.variables.GC_INITIAL_HEAP_SIZE = "100000";
+ environment.variables.GC_INITIAL_HEAP_SIZE = "1M";
# Make the installer more likely to succeed in low memory
# environments. The kernel's overcommit heustistics bite us
@@ -86,9 +87,6 @@ with lib;
# console less cumbersome if the machine has a public IP.
networking.firewall.logRefusedConnections = mkDefault false;
- environment.systemPackages = [ pkgs.vim ];
-
-
# Allow the user to log in as root without a password.
users.users.root.initialHashedPassword = "";
};
diff --git a/nixos/modules/profiles/minimal.nix b/nixos/modules/profiles/minimal.nix
index ed04e46c77d1d35199c8aac45880440a923c12e2..f044e6f39ea5ae15d41e5ce4f36ffccffea8cde1 100644
--- a/nixos/modules/profiles/minimal.nix
+++ b/nixos/modules/profiles/minimal.nix
@@ -12,7 +12,6 @@ with lib;
i18n.supportedLocales = [ (config.i18n.defaultLocale + "/UTF-8") ];
documentation.enable = mkDefault false;
- services.nixosManual.enable = mkDefault false;
- sound.enable = mkDefault false;
+ documentation.nixos.enable = mkDefault false;
}
diff --git a/nixos/modules/programs/adb.nix b/nixos/modules/programs/adb.nix
index 942572cef9d5114569a3df55b8e7bfaf0c99d0f2..250d8c252a3bcf165b3e37139360527c9abbf04c 100644
--- a/nixos/modules/programs/adb.nix
+++ b/nixos/modules/programs/adb.nix
@@ -16,7 +16,6 @@ with lib;
To grant access to a user, it must be part of adbusers group:
users.users.alice.extraGroups = ["adbusers"];
'';
- relatedPackages = [ ["androidenv" "platformTools"] ];
};
};
};
@@ -24,7 +23,7 @@ with lib;
###### implementation
config = mkIf config.programs.adb.enable {
services.udev.packages = [ pkgs.android-udev-rules ];
- environment.systemPackages = [ pkgs.androidenv.platformTools ];
+ environment.systemPackages = [ pkgs.androidenv.androidPkgs_9_0.platform-tools ];
users.groups.adbusers = {};
};
}
diff --git a/nixos/modules/programs/autojump.nix b/nixos/modules/programs/autojump.nix
new file mode 100644
index 0000000000000000000000000000000000000000..3a8feec4bb45f4546115818cbba74591864135e8
--- /dev/null
+++ b/nixos/modules/programs/autojump.nix
@@ -0,0 +1,33 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.programs.autojump;
+ prg = config.programs;
+in
+{
+ options = {
+ programs.autojump = {
+
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to enable autojump.
+ '';
+ };
+ };
+ };
+
+ ###### implementation
+
+ config = mkIf cfg.enable {
+ environment.pathsToLink = [ "/share/autojump" ];
+ environment.systemPackages = [ pkgs.autojump ];
+
+ programs.bash.interactiveShellInit = "source ${pkgs.autojump}/share/autojump/autojump.bash";
+ programs.zsh.interactiveShellInit = mkIf prg.zsh.enable "source ${pkgs.autojump}/share/autojump/autojump.zsh";
+ programs.fish.interactiveShellInit = mkIf prg.fish.enable "source ${pkgs.autojump}/share/autojump/autojump.fish";
+ };
+}
diff --git a/nixos/modules/programs/bash/bash.nix b/nixos/modules/programs/bash/bash.nix
index 69a1a482d0747831940b43433db77c582eb2a7e6..27b5f9e4b642f9eb7581539f9c3eedda7c767741 100644
--- a/nixos/modules/programs/bash/bash.nix
+++ b/nixos/modules/programs/bash/bash.nix
@@ -16,7 +16,7 @@ let
# programmable completion. If we do, enable all modules installed in
# the system and user profile in obsolete /etc/bash_completion.d/
# directories. Bash loads completions in all
- # $XDG_DATA_DIRS/share/bash-completion/completions/
+ # $XDG_DATA_DIRS/bash-completion/completions/
# on demand, so they do not need to be sourced here.
if shopt -q progcomp &>/dev/null; then
. "${pkgs.bash-completion}/etc/profile.d/bash_completion.sh"
@@ -33,7 +33,8 @@ let
'';
bashAliases = concatStringsSep "\n" (
- mapAttrsFlatten (k: v: "alias ${k}='${v}'") cfg.shellAliases
+ mapAttrsFlatten (k: v: "alias ${k}=${escapeShellArg v}")
+ (filterAttrs (k: v: !isNull v) cfg.shellAliases)
);
in
@@ -59,12 +60,12 @@ in
*/
shellAliases = mkOption {
- default = config.environment.shellAliases;
+ default = {};
description = ''
- Set of aliases for bash shell. See
- for an option format description.
+ Set of aliases for bash shell, which overrides .
+ See for an option format description.
'';
- type = types.attrs; # types.attrsOf types.stringOrPath;
+ type = with types; attrsOf (nullOr (either str path));
};
shellInit = mkOption {
@@ -97,7 +98,12 @@ in
if [ "$TERM" != "dumb" -o -n "$INSIDE_EMACS" ]; then
PROMPT_COLOR="1;31m"
let $UID && PROMPT_COLOR="1;32m"
- PS1="\n\[\033[$PROMPT_COLOR\][\u@\h:\w]\\$\[\033[0m\] "
+ if [ -n "$INSIDE_EMACS" ]; then
+ # Emacs term mode doesn't support xterm title escape sequence (\e]0;)
+ PS1="\n\[\033[$PROMPT_COLOR\][\u@\h:\w]\\$\[\033[0m\] "
+ else
+ PS1="\n\[\033[$PROMPT_COLOR\][\[\e]0;\u@\h: \w\a\]\u@\h:\w]\\$\[\033[0m\] "
+ fi
if test "$TERM" = "xterm"; then
PS1="\[\033]2;\h:\u:\w\007\]$PS1"
fi
@@ -125,8 +131,12 @@ in
programs.bash = {
+ shellAliases = mapAttrs (name: mkDefault) cfge.shellAliases;
+
shellInit = ''
- ${config.system.build.setEnvironment.text}
+ if [ -z "$__NIXOS_SET_ENVIRONMENT_DONE" ]; then
+ . ${config.system.build.setEnvironment}
+ fi
${cfge.shellInit}
'';
@@ -166,11 +176,11 @@ in
# Read system-wide modifications.
if test -f /etc/profile.local; then
- . /etc/profile.local
+ . /etc/profile.local
fi
if [ -n "''${BASH_VERSION:-}" ]; then
- . /etc/bashrc
+ . /etc/bashrc
fi
'';
@@ -191,12 +201,12 @@ in
# We are not always an interactive shell.
if [ -n "$PS1" ]; then
- ${cfg.interactiveShellInit}
+ ${cfg.interactiveShellInit}
fi
# Read system-wide modifications.
if test -f /etc/bashrc.local; then
- . /etc/bashrc.local
+ . /etc/bashrc.local
fi
'';
@@ -216,9 +226,7 @@ in
environment.shells =
[ "/run/current-system/sw/bin/bash"
- "/var/run/current-system/sw/bin/bash"
"/run/current-system/sw/bin/sh"
- "/var/run/current-system/sw/bin/sh"
"${pkgs.bashInteractive}/bin/bash"
"${pkgs.bashInteractive}/bin/sh"
];
diff --git a/nixos/modules/programs/browserpass.nix b/nixos/modules/programs/browserpass.nix
index 5f8a44a9848ece9723f829d97d952f9e36477619..e1456d3c184854dbd71ac51a7a55bf1ead9ddf76 100644
--- a/nixos/modules/programs/browserpass.nix
+++ b/nixos/modules/programs/browserpass.nix
@@ -4,19 +4,28 @@ with lib;
{
- ###### interface
- options = {
- programs.browserpass.enable = mkEnableOption "the NativeMessaging configuration for Chromium, Chrome, and Vivaldi.";
- };
+ options.programs.browserpass.enable = mkEnableOption "Browserpass native messaging host";
- ###### implementation
config = mkIf config.programs.browserpass.enable {
- environment.systemPackages = [ pkgs.browserpass ];
- environment.etc = {
- "chromium/native-messaging-hosts/com.dannyvankooten.browserpass.json".source = "${pkgs.browserpass}/etc/chrome-host.json";
- "chromium/policies/managed/com.dannyvankooten.browserpass.json".source = "${pkgs.browserpass}/etc/chrome-policy.json";
- "opt/chrome/native-messaging-hosts/com.dannyvankooten.browserpass.json".source = "${pkgs.browserpass}/etc/chrome-host.json";
- "opt/chrome/policies/managed/com.dannyvankooten.browserpass.json".source = "${pkgs.browserpass}/etc/chrome-policy.json";
+ environment.etc = let
+ appId = "com.github.browserpass.native.json";
+ source = part: "${pkgs.browserpass}/lib/browserpass/${part}/${appId}";
+ in {
+ # chromium
+ "chromium/native-messaging-hosts/${appId}".source = source "hosts/chromium";
+ "chromium/policies/managed/${appId}".source = source "policies/chromium";
+
+ # chrome
+ "opt/chrome/native-messaging-hosts/${appId}".source = source "hosts/chromium";
+ "opt/chrome/policies/managed/${appId}".source = source "policies/chromium";
+
+ # vivaldi
+ "opt/vivaldi/native-messaging-hosts/${appId}".source = source "hosts/chromium";
+ "opt/vivaldi/policies/managed/${appId}".source = source "policies/chromium";
+
+ # brave
+ "opt/brave/native-messaging-hosts/${appId}".source = source "hosts/chromium";
+ "opt/brave/policies/managed/${appId}".source = source "policies/chromium";
};
nixpkgs.config.firefox.enableBrowserpass = true;
};
diff --git a/nixos/modules/programs/command-not-found/command-not-found.nix b/nixos/modules/programs/command-not-found/command-not-found.nix
index bbe7165c62fbdf3eac5ff63f1b6d0b7a5a7bd86e..656c255fcb18566fcb7033e62c149aacce908e30 100644
--- a/nixos/modules/programs/command-not-found/command-not-found.nix
+++ b/nixos/modules/programs/command-not-found/command-not-found.nix
@@ -16,7 +16,7 @@ let
isExecutable = true;
inherit (pkgs) perl;
inherit (cfg) dbPath;
- perlFlags = concatStrings (map (path: "-I ${path}/lib/perl5/site_perl ")
+ perlFlags = concatStrings (map (path: "-I ${path}/${pkgs.perl.libPrefix} ")
[ pkgs.perlPackages.DBI pkgs.perlPackages.DBDSQLite pkgs.perlPackages.StringShellQuote ]);
};
diff --git a/nixos/modules/programs/dconf.nix b/nixos/modules/programs/dconf.nix
index b7d8a345e65c56b4d4d97aef275659ed7e64a81a..b7bfb8504b6f196831748cf4c9f205c5aa962f16 100644
--- a/nixos/modules/programs/dconf.nix
+++ b/nixos/modules/programs/dconf.nix
@@ -32,11 +32,13 @@ in
environment.etc = optionals (cfg.profiles != {})
(mapAttrsToList mkDconfProfile cfg.profiles);
+ services.dbus.packages = [ pkgs.gnome3.dconf ];
+
environment.variables.GIO_EXTRA_MODULES = optional cfg.enable
"${pkgs.gnome3.dconf.lib}/lib/gio/modules";
# https://github.com/NixOS/nixpkgs/pull/31891
#environment.variables.XDG_DATA_DIRS = optional cfg.enable
- # "$(echo ${pkgs.gnome3.gsettings-desktop-schemas}/share/gsettings-schemas/gsettings-desktop-schemas-*)";
+ # "$(echo ${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/gsettings-desktop-schemas-*)";
};
}
diff --git a/nixos/modules/programs/digitalbitbox/doc.xml b/nixos/modules/programs/digitalbitbox/doc.xml
index a26653dda535fd83854193bfd1d18c054f7421ec..c63201628dbd7bd2da0471f4c662976224649d2e 100644
--- a/nixos/modules/programs/digitalbitbox/doc.xml
+++ b/nixos/modules/programs/digitalbitbox/doc.xml
@@ -3,75 +3,64 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="module-programs-digitalbitbox">
-
- Digital Bitbox
-
-
- Digital Bitbox is a hardware wallet and second-factor authenticator.
-
-
-
- The digitalbitbox programs module may be
- installed by setting programs.digitalbitbox
- to true in a manner similar to
-
+ Digital Bitbox
+
+ Digital Bitbox is a hardware wallet and second-factor authenticator.
+
+
+ The digitalbitbox programs module may be installed by
+ setting programs.digitalbitbox to true
+ in a manner similar to
= true;
-
- and bundles the digitalbitbox package (see digitalbitbox package (see
+ ), which contains the
- dbb-app and dbb-cli binaries,
- along with the hardware module (see dbb-app and dbb-cli binaries, along
+ with the hardware module (see
+ ) which sets up the
- necessary udev rules to access the device.
-
-
-
- Enabling the digitalbitbox module is pretty much the easiest way to
- get a Digital Bitbox device working on your system.
-
+ necessary udev rules to access the device.
+
+
+ Enabling the digitalbitbox module is pretty much the easiest way to get a
+ Digital Bitbox device working on your system.
+
+
+ For more information, see
+ .
+
+
+ Package
- For more information, see
- .
-
-
-
- Package
-
-
- The binaries, dbb-app (a GUI tool) and
- dbb-cli (a CLI tool), are available through the
- digitalbitbox package which could be installed
- as follows:
-
+ The binaries, dbb-app (a GUI tool) and
+ dbb-cli (a CLI tool), are available through the
+ digitalbitbox package which could be installed as
+ follows:
= [
pkgs.digitalbitbox
];
-
-
-
-
-
- Hardware
-
-
- The digitalbitbox hardware package enables the udev rules for
- Digital Bitbox devices and may be installed as follows:
+
+
+
+ Hardware
+
+ The digitalbitbox hardware package enables the udev rules for Digital Bitbox
+ devices and may be installed as follows:
= true;
-
-
-
- In order to alter the udev rules, one may provide different values for
- the udevRule51 and udevRule52
- attributes by means of overriding as follows:
+
+
+ In order to alter the udev rules, one may provide different values for the
+ udevRule51 and udevRule52 attributes
+ by means of overriding as follows:
programs.digitalbitbox = {
enable = true;
@@ -80,6 +69,6 @@ programs.digitalbitbox = {
};
};
-
-
+
+
diff --git a/nixos/modules/programs/dmrconfig.nix b/nixos/modules/programs/dmrconfig.nix
new file mode 100644
index 0000000000000000000000000000000000000000..e48a4f318370825f2beb99b179462d7e4b3ae722
--- /dev/null
+++ b/nixos/modules/programs/dmrconfig.nix
@@ -0,0 +1,38 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.programs.dmrconfig;
+
+in {
+ meta.maintainers = [ maintainers.etu ];
+
+ ###### interface
+ options = {
+ programs.dmrconfig = {
+ enable = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ Whether to configure system to enable use of dmrconfig. This
+ enables the required udev rules and installs the program.
+ '';
+ relatedPackages = [ "dmrconfig" ];
+ };
+
+ package = mkOption {
+ default = pkgs.dmrconfig;
+ type = types.package;
+ defaultText = "pkgs.dmrconfig";
+ description = "dmrconfig derivation to use";
+ };
+ };
+ };
+
+ ###### implementation
+ config = mkIf cfg.enable {
+ environment.systemPackages = [ cfg.package ];
+ services.udev.packages = [ cfg.package ];
+ };
+}
diff --git a/nixos/modules/programs/environment.nix b/nixos/modules/programs/environment.nix
index 3bac8d98990ab5c48165de40233cfe119d6c5d15..3c6d356ef998d517880b27046d2e495342e9c051 100644
--- a/nixos/modules/programs/environment.nix
+++ b/nixos/modules/programs/environment.nix
@@ -40,7 +40,6 @@ in
GTK_PATH = [ "/lib/gtk-2.0" "/lib/gtk-3.0" ];
XDG_CONFIG_DIRS = [ "/etc/xdg" ];
XDG_DATA_DIRS = [ "/share" ];
- XCURSOR_PATH = [ "/share/icons" ];
MOZ_PLUGIN_PATH = [ "/lib/mozilla/plugins" ];
LIBEXEC_PATH = [ "/lib/libexec" ];
};
diff --git a/nixos/modules/programs/fish.nix b/nixos/modules/programs/fish.nix
index c8d94a47be28ccec786e4179b50e9bce58428d71..622d2f96fe4154eb66a736988ce85b0d37201030 100644
--- a/nixos/modules/programs/fish.nix
+++ b/nixos/modules/programs/fish.nix
@@ -9,7 +9,8 @@ let
cfg = config.programs.fish;
fishAliases = concatStringsSep "\n" (
- mapAttrsFlatten (k: v: "alias ${k} '${v}'") cfg.shellAliases
+ mapAttrsFlatten (k: v: "alias ${k} ${escapeShellArg v}")
+ (filterAttrs (k: v: !isNull v) cfg.shellAliases)
);
in
@@ -27,7 +28,7 @@ in
'';
type = types.bool;
};
-
+
vendor.config.enable = mkOption {
type = types.bool;
default = true;
@@ -43,7 +44,7 @@ in
Whether fish should use completion files provided by other packages.
'';
};
-
+
vendor.functions.enable = mkOption {
type = types.bool;
default = true;
@@ -53,12 +54,12 @@ in
};
shellAliases = mkOption {
- default = config.environment.shellAliases;
+ default = {};
description = ''
- Set of aliases for fish shell. See
- for an option format description.
+ Set of aliases for fish shell, which overrides .
+ See for an option format description.
'';
- type = types.attrs;
+ type = with types; attrsOf (nullOr (either str path));
};
shellInit = mkOption {
@@ -99,6 +100,8 @@ in
config = mkIf cfg.enable {
+ programs.fish.shellAliases = mapAttrs (name: mkDefault) cfge.shellAliases;
+
environment.etc."fish/foreign-env/shellInit".text = cfge.shellInit;
environment.etc."fish/foreign-env/loginShellInit".text = cfge.loginShellInit;
environment.etc."fish/foreign-env/interactiveShellInit".text = cfge.interactiveShellInit;
@@ -107,9 +110,11 @@ in
# This happens before $__fish_datadir/config.fish sets fish_function_path, so it is currently
# unset. We set it and then completely erase it, leaving its configuration to $__fish_datadir/config.fish
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $__fish_datadir/functions
-
+
# source the NixOS environment config
- fenv source ${config.system.build.setEnvironment}
+ if [ -z "$__NIXOS_SET_ENVIRONMENT_DONE" ]
+ fenv source ${config.system.build.setEnvironment}
+ end
# clear fish_function_path so that it will be correctly set when we return to $__fish_datadir/config.fish
set -e fish_function_path
@@ -123,7 +128,7 @@ in
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
fenv source /etc/fish/foreign-env/shellInit > /dev/null
set -e fish_function_path[1]
-
+
${cfg.shellInit}
# and leave a note so we don't source this config section again from
@@ -137,7 +142,7 @@ in
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
fenv source /etc/fish/foreign-env/loginShellInit > /dev/null
set -e fish_function_path[1]
-
+
${cfg.loginShellInit}
# and leave a note so we don't source this config section again from
@@ -149,12 +154,11 @@ in
status --is-interactive; and not set -q __fish_nixos_interactive_config_sourced
and begin
${fishAliases}
-
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
fenv source /etc/fish/foreign-env/interactiveShellInit > /dev/null
set -e fish_function_path[1]
-
+
${cfg.promptInit}
${cfg.interactiveShellInit}
@@ -165,17 +169,69 @@ in
end
'';
+ programs.fish.interactiveShellInit = ''
+ # add completions generated by NixOS to $fish_complete_path
+ begin
+ # joins with null byte to acommodate all characters in paths, then respectively gets all paths before (exclusive) / after (inclusive) the first one including "generated_completions",
+ # splits by null byte, and then removes all empty lines produced by using 'string'
+ set -l prev (string join0 $fish_complete_path | string match --regex "^.*?(?=\x00[^\x00]*generated_completions.*)" | string split0 | string match -er ".")
+ set -l post (string join0 $fish_complete_path | string match --regex "[^\x00]*generated_completions.*" | string split0 | string match -er ".")
+ set fish_complete_path $prev "/etc/fish/generated_completions" $post
+ end
+ '';
+
+ environment.etc."fish/generated_completions".source =
+ let
+ patchedGenerator = pkgs.stdenv.mkDerivation {
+ name = "fish_patched-completion-generator";
+ srcs = [
+ "${pkgs.fish}/share/fish/tools/create_manpage_completions.py"
+ "${pkgs.fish}/share/fish/tools/deroff.py"
+ ];
+ unpackCmd = "cp $curSrc $(basename $curSrc)";
+ sourceRoot = ".";
+ patches = [ ./fish_completion-generator.patch ]; # to prevent collisions of identical completion files
+ dontBuild = true;
+ installPhase = ''
+ mkdir -p $out
+ cp * $out/
+ '';
+ preferLocalBuild = true;
+ allowSubstitutes = false;
+ };
+ generateCompletions = package: pkgs.runCommand
+ "${package.name}_fish-completions"
+ (
+ {
+ inherit package;
+ preferLocalBuild = true;
+ allowSubstitutes = false;
+ }
+ // optionalAttrs (package ? meta.priority) { meta.priority = package.meta.priority; }
+ )
+ ''
+ mkdir -p $out
+ if [ -d $package/share/man ]; then
+ find $package/share/man -type f | xargs ${pkgs.python3.interpreter} ${patchedGenerator}/create_manpage_completions.py --directory $out >/dev/null
+ fi
+ '';
+ in
+ pkgs.buildEnv {
+ name = "system_fish-completions";
+ ignoreCollisions = true;
+ paths = map generateCompletions config.environment.systemPackages;
+ };
+
# include programs that bring their own completions
environment.pathsToLink = []
++ optional cfg.vendor.config.enable "/share/fish/vendor_conf.d"
++ optional cfg.vendor.completions.enable "/share/fish/vendor_completions.d"
++ optional cfg.vendor.functions.enable "/share/fish/vendor_functions.d";
-
+
environment.systemPackages = [ pkgs.fish ];
environment.shells = [
"/run/current-system/sw/bin/fish"
- "/var/run/current-system/sw/bin/fish"
"${pkgs.fish}/bin/fish"
];
diff --git a/nixos/modules/programs/fish_completion-generator.patch b/nixos/modules/programs/fish_completion-generator.patch
new file mode 100644
index 0000000000000000000000000000000000000000..a8c797d185a6852b390c2b51d517a42299b35d3d
--- /dev/null
+++ b/nixos/modules/programs/fish_completion-generator.patch
@@ -0,0 +1,11 @@
+--- a/create_manpage_completions.py
++++ b/create_manpage_completions.py
+@@ -776,8 +776,6 @@ def parse_manpage_at_path(manpage_path, output_directory):
+
+ built_command_output.insert(0, "# " + CMDNAME)
+
+- # Output the magic word Autogenerated so we can tell if we can overwrite this
+- built_command_output.insert(1, "# Autogenerated from man page " + manpage_path)
+ # built_command_output.insert(2, "# using " + parser.__class__.__name__) # XXX MISATTRIBUTES THE CULPABILE PARSER! Was really using Type2 but reporting TypeDeroffManParser
+
+ for line in built_command_output:
diff --git a/nixos/modules/programs/gnupg.nix b/nixos/modules/programs/gnupg.nix
index addc9dcca87ede6292c4360c0f0edbbd5b902a98..9618d61a1f5bbe9b50ffce45cf96055a2292dbb9 100644
--- a/nixos/modules/programs/gnupg.nix
+++ b/nixos/modules/programs/gnupg.nix
@@ -11,6 +11,15 @@ in
{
options.programs.gnupg = {
+ package = mkOption {
+ type = types.package;
+ default = pkgs.gnupg;
+ defaultText = "pkgs.gnupg";
+ description = ''
+ The gpg package that should be used.
+ '';
+ };
+
agent.enable = mkOption {
type = types.bool;
default = false;
@@ -75,21 +84,23 @@ in
wantedBy = [ "sockets.target" ];
};
- systemd.packages = [ pkgs.gnupg ];
+ systemd.packages = [ cfg.package ];
- environment.extraInit = ''
+ environment.interactiveShellInit = ''
# Bind gpg-agent to this TTY if gpg commands are used.
export GPG_TTY=$(tty)
'' + (optionalString cfg.agent.enableSSHSupport ''
# SSH agent protocol doesn't support changing TTYs, so bind the agent
# to every new TTY.
- ${pkgs.gnupg}/bin/gpg-connect-agent --quiet updatestartuptty /bye > /dev/null
+ ${cfg.package}/bin/gpg-connect-agent --quiet updatestartuptty /bye > /dev/null
+ '');
+ environment.extraInit = mkIf cfg.agent.enableSSHSupport ''
if [ -z "$SSH_AUTH_SOCK" ]; then
- export SSH_AUTH_SOCK=$(${pkgs.gnupg}/bin/gpgconf --list-dirs agent-ssh-socket)
+ export SSH_AUTH_SOCK=$(${cfg.package}/bin/gpgconf --list-dirs agent-ssh-socket)
fi
- '');
+ '';
assertions = [
{ assertion = cfg.agent.enableSSHSupport -> !config.programs.ssh.startAgent;
diff --git a/nixos/modules/programs/iotop.nix b/nixos/modules/programs/iotop.nix
new file mode 100644
index 0000000000000000000000000000000000000000..5512dbc62f72b65619af049743073cbdf4887f02
--- /dev/null
+++ b/nixos/modules/programs/iotop.nix
@@ -0,0 +1,17 @@
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+let
+ cfg = config.programs.iotop;
+in {
+ options = {
+ programs.iotop.enable = mkEnableOption "iotop + setcap wrapper";
+ };
+ config = mkIf cfg.enable {
+ security.wrappers.iotop = {
+ source = "${pkgs.iotop}/bin/iotop";
+ capabilities = "cap_net_admin+p";
+ };
+ };
+}
diff --git a/nixos/modules/programs/less.nix b/nixos/modules/programs/less.nix
index d39103a58057d6a09a3c22276144841b9ae8af70..9fdf99e9c694af257f93526c769e7c9a2685a66d 100644
--- a/nixos/modules/programs/less.nix
+++ b/nixos/modules/programs/less.nix
@@ -25,7 +25,7 @@ let
'';
lessKey = pkgs.runCommand "lesskey"
- { src = pkgs.writeText "lessconfig" configText; }
+ { src = pkgs.writeText "lessconfig" configText; preferLocalBuild = true; }
"${pkgs.less}/bin/lesskey -o $out $src";
in
diff --git a/nixos/modules/programs/light.nix b/nixos/modules/programs/light.nix
index 6f8c389acc97e1798789bc4467fa33883a8b26d0..9f2a03e7e7639355d2c8fa0176744645e7364cf6 100644
--- a/nixos/modules/programs/light.nix
+++ b/nixos/modules/programs/light.nix
@@ -13,7 +13,8 @@ in
default = false;
type = types.bool;
description = ''
- Whether to install Light backlight control with setuid wrapper.
+ Whether to install Light backlight control command
+ and udev rules granting access to members of the "video" group.
'';
};
};
@@ -21,6 +22,6 @@ in
config = mkIf cfg.enable {
environment.systemPackages = [ pkgs.light ];
- security.wrappers.light.source = "${pkgs.light.out}/bin/light";
+ services.udev.packages = [ pkgs.light ];
};
}
diff --git a/nixos/modules/programs/mininet.nix b/nixos/modules/programs/mininet.nix
new file mode 100644
index 0000000000000000000000000000000000000000..ecc924325e6b0613871fa105d5dd0c74f4d5f092
--- /dev/null
+++ b/nixos/modules/programs/mininet.nix
@@ -0,0 +1,39 @@
+# Global configuration for mininet
+# kernel must have NETNS/VETH/SCHED
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.programs.mininet;
+
+ generatedPath = with pkgs; makeSearchPath "bin" [
+ iperf ethtool iproute socat
+ ];
+
+ pyEnv = pkgs.python.withPackages(ps: [ ps.mininet-python ]);
+
+ mnexecWrapped = pkgs.runCommand "mnexec-wrapper"
+ { buildInputs = [ pkgs.makeWrapper pkgs.pythonPackages.wrapPython ]; }
+ ''
+ makeWrapper ${pkgs.mininet}/bin/mnexec \
+ $out/bin/mnexec \
+ --prefix PATH : "${generatedPath}"
+
+ ln -s ${pyEnv}/bin/mn $out/bin/mn
+
+ # mn errors out without a telnet binary
+ # pkgs.telnet brings an undesired ifconfig into PATH see #43105
+ ln -s ${pkgs.telnet}/bin/telnet $out/bin/telnet
+ '';
+in
+{
+ options.programs.mininet.enable = mkEnableOption "Mininet";
+
+ config = mkIf cfg.enable {
+
+ virtualisation.vswitch.enable = true;
+
+ environment.systemPackages = [ mnexecWrapped ];
+ };
+}
diff --git a/nixos/modules/programs/nano.nix b/nixos/modules/programs/nano.nix
index 27b6d446c75d74fbf26e606c20b47b56077fe454..6a4d46338e19bb3774ad553e0ac43d374b5c6b88 100644
--- a/nixos/modules/programs/nano.nix
+++ b/nixos/modules/programs/nano.nix
@@ -2,6 +2,7 @@
let
cfg = config.programs.nano;
+ LF = "\n";
in
{
@@ -33,9 +34,9 @@ in
###### implementation
- config = lib.mkIf (cfg.nanorc != "") {
+ config = lib.mkIf (cfg.nanorc != "" || cfg.syntaxHighlight) {
environment.etc."nanorc".text = lib.concatStrings [ cfg.nanorc
- (lib.optionalString cfg.syntaxHighlight ''include "${pkgs.nano}/share/nano/*.nanorc"'') ];
+ (lib.optionalString cfg.syntaxHighlight ''${LF}include "${pkgs.nano}/share/nano/*.nanorc"'') ];
};
}
diff --git a/nixos/modules/programs/nm-applet.nix b/nixos/modules/programs/nm-applet.nix
new file mode 100644
index 0000000000000000000000000000000000000000..e42219e9638c931b179b52ca72697d74eb4f5367
--- /dev/null
+++ b/nixos/modules/programs/nm-applet.nix
@@ -0,0 +1,14 @@
+{ config, lib, pkgs, ... }:
+
+{
+ options.programs.nm-applet.enable = lib.mkEnableOption "nm-applet";
+
+ config = lib.mkIf config.programs.nm-applet.enable {
+ systemd.user.services.nm-applet = {
+ description = "Network manager applet";
+ wantedBy = [ "graphical-session.target" ];
+ partOf = [ "graphical-session.target" ];
+ serviceConfig.ExecStart = "${pkgs.networkmanagerapplet}/bin/nm-applet";
+ };
+ };
+}
diff --git a/nixos/modules/programs/plotinus.xml b/nixos/modules/programs/plotinus.xml
index 91740ee16ec2f59d497c0cdc9cd814dfe4d9aaa6..902cd89e0c4927176f65921e69905645beb4db78 100644
--- a/nixos/modules/programs/plotinus.xml
+++ b/nixos/modules/programs/plotinus.xml
@@ -3,23 +3,28 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="module-program-plotinus">
-
-Plotinus
-
-Source:modules/programs/plotinus.nix
-
-Upstream documentation:
-
-Plotinus is a searchable command palette in every modern GTK+ application.
-
-When in a GTK+3 application and Plotinus is enabled, you can press Ctrl+Shift+P to open the command palette. The command palette provides a searchable list of of all menu items in the application.
-
-To enable Plotinus, add the following to your configuration.nix:
-
+ Plotinus
+
+ Source:
+ modules/programs/plotinus.nix
+
+
+ Upstream documentation:
+
+
+
+ Plotinus is a searchable command palette in every modern GTK+ application.
+
+
+ When in a GTK+3 application and Plotinus is enabled, you can press
+ Ctrl+Shift+P to open the command palette. The command
+ palette provides a searchable list of of all menu items in the application.
+
+
+ To enable Plotinus, add the following to your
+ configuration.nix:
= true;
-
-
-
+
diff --git a/nixos/modules/programs/rootston.nix b/nixos/modules/programs/rootston.nix
deleted file mode 100644
index 842d9e6cfb48f10fe5bbe447876ac3f3a7c2d3ec..0000000000000000000000000000000000000000
--- a/nixos/modules/programs/rootston.nix
+++ /dev/null
@@ -1,103 +0,0 @@
-{ config, pkgs, lib, ... }:
-
-with lib;
-
-let
- cfg = config.programs.rootston;
-
- rootstonWrapped = pkgs.writeScriptBin "rootston" ''
- #! ${pkgs.runtimeShell}
- if [[ "$#" -ge 1 ]]; then
- exec ${pkgs.rootston}/bin/rootston "$@"
- else
- ${cfg.extraSessionCommands}
- exec ${pkgs.rootston}/bin/rootston -C ${cfg.configFile}
- fi
- '';
-in {
- options.programs.rootston = {
- enable = mkEnableOption ''
- rootston, the reference compositor for wlroots. The purpose of rootston
- is to test and demonstrate the features of wlroots (if you want a real
- Wayland compositor you should e.g. use Sway instead). You can manually
- start the compositor by running "rootston" from a terminal'';
-
- extraSessionCommands = mkOption {
- type = types.lines;
- default = "";
- example = ''
- # Define a keymap (US QWERTY is the default)
- export XKB_DEFAULT_LAYOUT=de,us
- export XKB_DEFAULT_VARIANT=nodeadkeys
- export XKB_DEFAULT_OPTIONS=grp:alt_shift_toggle,caps:escape
- '';
- description = ''
- Shell commands executed just before rootston is started.
- '';
- };
-
- extraPackages = mkOption {
- type = with types; listOf package;
- default = with pkgs; [
- westonLite xwayland rofi
- ];
- defaultText = literalExample ''
- with pkgs; [
- westonLite xwayland rofi
- ]
- '';
- example = literalExample "[ ]";
- description = ''
- Extra packages to be installed system wide.
- '';
- };
-
- config = mkOption {
- type = types.str;
- default = ''
- [keyboard]
- meta-key = Logo
-
- # Sway/i3 like Keybindings
- # Maps key combinations with commands to execute
- # Commands include:
- # - "exit" to stop the compositor
- # - "exec" to execute a shell command
- # - "close" to close the current view
- # - "next_window" to cycle through windows
- [bindings]
- Logo+Shift+e = exit
- Logo+q = close
- Logo+m = maximize
- Alt+Tab = next_window
- Logo+Return = exec weston-terminal
- Logo+d = exec rofi -show run
- '';
- description = ''
- Default configuration for rootston (used when called without any
- parameters).
- '';
- };
-
- configFile = mkOption {
- type = types.path;
- default = "/etc/rootston.ini";
- example = literalExample "${pkgs.rootston}/etc/rootston.ini";
- description = ''
- Path to the default rootston configuration file (the "config" option
- will have no effect if you change the path).
- '';
- };
- };
-
- config = mkIf cfg.enable {
- environment.etc."rootston.ini".text = cfg.config;
- environment.systemPackages = [ rootstonWrapped ] ++ cfg.extraPackages;
-
- hardware.opengl.enable = mkDefault true;
- fonts.enableDefaultFonts = mkDefault true;
- programs.dconf.enable = mkDefault true;
- };
-
- meta.maintainers = with lib.maintainers; [ primeos gnidorah ];
-}
diff --git a/nixos/modules/programs/shell.nix b/nixos/modules/programs/shell.nix
index 944a8bdf16fc40bc7e90c72c49db0b1730fa3c50..9842e2bef643dfc58ec6f4b4ef191fea529bfeae 100644
--- a/nixos/modules/programs/shell.nix
+++ b/nixos/modules/programs/shell.nix
@@ -8,18 +8,12 @@ with lib;
config = {
- environment.shellAliases =
- { ls = "ls --color=tty";
- ll = "ls -l";
- l = "ls -alh";
- };
-
environment.shellInit =
''
# Set up the per-user profile.
mkdir -m 0755 -p "$NIX_USER_PROFILE_DIR"
if [ "$(stat --printf '%u' "$NIX_USER_PROFILE_DIR")" != "$(id -u)" ]; then
- echo "WARNING: bad ownership on $NIX_USER_PROFILE_DIR, should be $(id -u)" >&2
+ echo "WARNING: the per-user profile dir $NIX_USER_PROFILE_DIR should belong to user id $(id -u)" >&2
fi
if [ -w "$HOME" ]; then
@@ -41,7 +35,7 @@ with lib;
NIX_USER_GCROOTS_DIR="/nix/var/nix/gcroots/per-user/$USER"
mkdir -m 0755 -p "$NIX_USER_GCROOTS_DIR"
if [ "$(stat --printf '%u' "$NIX_USER_GCROOTS_DIR")" != "$(id -u)" ]; then
- echo "WARNING: bad ownership on $NIX_USER_GCROOTS_DIR, should be $(id -u)" >&2
+ echo "WARNING: the per-user gcroots dir $NIX_USER_GCROOTS_DIR should belong to user id $(id -u)" >&2
fi
# Set up a default Nix expression from which to install stuff.
diff --git a/nixos/modules/programs/singularity.nix b/nixos/modules/programs/singularity.nix
index 86153d933855d6437f5b60d03492bd5ef1c89c99..b27e122bd1d9eea7dfb997efc71fc714cbe88008 100644
--- a/nixos/modules/programs/singularity.nix
+++ b/nixos/modules/programs/singularity.nix
@@ -3,18 +3,27 @@
with lib;
let
cfg = config.programs.singularity;
+ singularity = pkgs.singularity.overrideAttrs (attrs : {
+ installPhase = attrs.installPhase + ''
+ mv $bin/libexec/singularity/bin/starter-suid $bin/libexec/singularity/bin/starter-suid.orig
+ ln -s /run/wrappers/bin/singularity-suid $bin/libexec/singularity/bin/starter-suid
+ '';
+ });
in {
options.programs.singularity = {
enable = mkEnableOption "Singularity";
};
config = mkIf cfg.enable {
- environment.systemPackages = [ pkgs.singularity ];
- systemd.tmpfiles.rules = [ "d /var/singularity/mnt/session 0770 root root -"
- "d /var/singularity/mnt/final 0770 root root -"
- "d /var/singularity/mnt/overlay 0770 root root -"
- "d /var/singularity/mnt/container 0770 root root -"
- "d /var/singularity/mnt/source 0770 root root -"];
+ environment.systemPackages = [ singularity ];
+ security.wrappers.singularity-suid.source = "${singularity}/libexec/singularity/bin/starter-suid.orig";
+ systemd.tmpfiles.rules = [
+ "d /var/singularity/mnt/session 0770 root root -"
+ "d /var/singularity/mnt/final 0770 root root -"
+ "d /var/singularity/mnt/overlay 0770 root root -"
+ "d /var/singularity/mnt/container 0770 root root -"
+ "d /var/singularity/mnt/source 0770 root root -"
+ ];
};
}
diff --git a/nixos/modules/programs/ssh.nix b/nixos/modules/programs/ssh.nix
index cc398174e6ce03418cc45ffedc3b32603fc2155e..46965dd35b713459185cf15177f6e3adf3aea676 100644
--- a/nixos/modules/programs/ssh.nix
+++ b/nixos/modules/programs/ssh.nix
@@ -88,7 +88,8 @@ in
type = types.lines;
default = "";
description = ''
- Extra configuration text appended to ssh_config.
+ Extra configuration text prepended to ssh_config. Other generated
+ options will be added after a Host * pattern.
See ssh_config5
for help.
'';
@@ -167,16 +168,16 @@ in
The set of system-wide known SSH hosts.
'';
example = literalExample ''
- [
- {
+ {
+ myhost = {
hostNames = [ "myhost" "myhost.mydomain.com" "10.10.1.4" ];
publicKeyFile = ./pubkeys/myhost_ssh_host_dsa_key.pub;
- }
- {
+ };
+ myhost2 = {
hostNames = [ "myhost2" ];
publicKeyFile = ./pubkeys/myhost2_ssh_host_dsa_key.pub;
- }
- ]
+ };
+ }
'';
};
@@ -203,6 +204,11 @@ in
# generation in the sshd service.
environment.etc."ssh/ssh_config".text =
''
+ # Custom options from `extraConfig`, to override generated options
+ ${cfg.extraConfig}
+
+ # Generated options from other settings
+ Host *
AddressFamily ${if config.networking.enableIPv6 then "any" else "inet"}
${optionalString cfg.setXAuthLocation ''
@@ -213,8 +219,6 @@ in
${optionalString (cfg.pubkeyAcceptedKeyTypes != []) "PubkeyAcceptedKeyTypes ${concatStringsSep "," cfg.pubkeyAcceptedKeyTypes}"}
${optionalString (cfg.hostKeyAlgorithms != []) "HostKeyAlgorithms ${concatStringsSep "," cfg.hostKeyAlgorithms}"}
-
- ${cfg.extraConfig}
'';
environment.etc."ssh/ssh_known_hosts".text = knownHostsText;
diff --git a/nixos/modules/programs/sway.nix b/nixos/modules/programs/sway.nix
index 0eaaf6b85b99ade2a9c308ed6c603d564d7eda4d..b4f03151cdc1a4184ed2f5cb0c9a5d9d1e7ef50e 100644
--- a/nixos/modules/programs/sway.nix
+++ b/nixos/modules/programs/sway.nix
@@ -7,11 +7,18 @@ let
swayPackage = pkgs.sway;
swayWrapped = pkgs.writeShellScriptBin "sway" ''
- if [[ "$#" -ge 1 ]]; then
- exec sway-setcap "$@"
- else
+ set -o errexit
+
+ if [ ! "$_SWAY_WRAPPER_ALREADY_EXECUTED" ]; then
+ export _SWAY_WRAPPER_ALREADY_EXECUTED=1
${cfg.extraSessionCommands}
- exec ${pkgs.dbus.dbus-launch} --exit-with-session sway-setcap
+ fi
+
+ if [ "$DBUS_SESSION_BUS_ADDRESS" ]; then
+ export DBUS_SESSION_BUS_ADDRESS
+ exec ${swayPackage}/bin/sway "$@"
+ else
+ exec ${pkgs.dbus}/bin/dbus-run-session ${swayPackage}/bin/sway "$@"
fi
'';
swayJoined = pkgs.symlinkJoin {
@@ -21,22 +28,24 @@ let
in {
options.programs.sway = {
enable = mkEnableOption ''
- the tiling Wayland compositor Sway. After adding yourself to the "sway"
- group you can manually launch Sway by executing "sway" from a terminal.
- If you call "sway" with any parameters the extraSessionCommands won't be
- executed and Sway won't be launched with dbus-launch'';
+ Sway, the i3-compatible tiling Wayland compositor. You can manually launch
+ Sway by executing "exec sway" on a TTY. Copy /etc/sway/config to
+ ~/.config/sway/config to modify the default configuration. See
+ https://github.com/swaywm/sway/wiki and "man 5 sway" for more information.
+ Please have a look at the "extraSessionCommands" example for running
+ programs natively under Wayland'';
extraSessionCommands = mkOption {
type = types.lines;
default = "";
example = ''
- # Define a keymap (US QWERTY is the default)
- export XKB_DEFAULT_LAYOUT=de,us
- export XKB_DEFAULT_VARIANT=nodeadkeys
- export XKB_DEFAULT_OPTIONS=grp:alt_shift_toggle,caps:escape
- # Change the Keyboard repeat delay and rate
- export WLC_REPEAT_DELAY=660
- export WLC_REPEAT_RATE=25
+ export SDL_VIDEODRIVER=wayland
+ # needs qt5.qtwayland in systemPackages
+ export QT_QPA_PLATFORM=wayland
+ export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
+ # Fix for some Java AWT applications (e.g. Android Studio),
+ # use this if they aren't displayed properly:
+ export _JAVA_AWT_WM_NONREPARENTING=1
'';
description = ''
Shell commands executed just before Sway is started.
@@ -46,14 +55,17 @@ in {
extraPackages = mkOption {
type = with types; listOf package;
default = with pkgs; [
- i3status xwayland rxvt_unicode dmenu
+ swaylock swayidle
+ xwayland rxvt_unicode dmenu
];
defaultText = literalExample ''
- with pkgs; [ i3status xwayland rxvt_unicode dmenu ];
+ with pkgs; [ swaylock swayidle xwayland rxvt_unicode dmenu ];
'';
example = literalExample ''
with pkgs; [
- i3lock light termite
+ xwayland
+ i3status i3status-rust
+ termite rofi light
]
'';
description = ''
@@ -63,23 +75,19 @@ in {
};
config = mkIf cfg.enable {
- environment.systemPackages = [ swayJoined ] ++ cfg.extraPackages;
- security.wrappers.sway = {
- program = "sway-setcap";
- source = "${swayPackage}/bin/sway";
- capabilities = "cap_sys_ptrace,cap_sys_tty_config=eip";
- owner = "root";
- group = "sway";
- permissions = "u+rx,g+rx";
+ environment = {
+ systemPackages = [ swayJoined ] ++ cfg.extraPackages;
+ etc = {
+ "sway/config".source = mkOptionDefault "${swayPackage}/etc/sway/config";
+ #"sway/security.d".source = mkOptionDefault "${swayPackage}/etc/sway/security.d/";
+ #"sway/config.d".source = mkOptionDefault "${swayPackage}/etc/sway/config.d/";
+ };
};
-
- users.groups.sway = {};
security.pam.services.swaylock = {};
-
hardware.opengl.enable = mkDefault true;
fonts.enableDefaultFonts = mkDefault true;
programs.dconf.enable = mkDefault true;
};
- meta.maintainers = with lib.maintainers; [ gnidorah primeos ];
+ meta.maintainers = with lib.maintainers; [ gnidorah primeos colemickens ];
}
diff --git a/nixos/modules/programs/thefuck.nix b/nixos/modules/programs/thefuck.nix
index f4ae52934760d75fe15a9710e74424c56d4f5137..21ed6603c1bdd283bef4ebea5f83a9b6766c81b8 100644
--- a/nixos/modules/programs/thefuck.nix
+++ b/nixos/modules/programs/thefuck.nix
@@ -29,8 +29,8 @@ in
config = mkIf cfg.enable {
environment.systemPackages = with pkgs; [ thefuck ];
- environment.shellInit = initScript;
+ programs.bash.interactiveShellInit = initScript;
programs.zsh.interactiveShellInit = mkIf prg.zsh.enable initScript;
programs.fish.interactiveShellInit = mkIf prg.fish.enable ''
${pkgs.thefuck}/bin/thefuck --alias | source
diff --git a/nixos/modules/programs/wavemon.nix b/nixos/modules/programs/wavemon.nix
new file mode 100644
index 0000000000000000000000000000000000000000..ac665fe4a02365e7dfcfe6bbbbc4b87f869537a8
--- /dev/null
+++ b/nixos/modules/programs/wavemon.nix
@@ -0,0 +1,28 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.programs.wavemon;
+in {
+ options = {
+ programs.wavemon = {
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to add wavemon to the global environment and configure a
+ setcap wrapper for it.
+ '';
+ };
+ };
+ };
+
+ config = mkIf cfg.enable {
+ environment.systemPackages = with pkgs; [ wavemon ];
+ security.wrappers.wavemon = {
+ source = "${pkgs.wavemon}/bin/wavemon";
+ capabilities = "cap_net_admin+ep";
+ };
+ };
+}
diff --git a/nixos/modules/programs/way-cooler.nix b/nixos/modules/programs/way-cooler.nix
index 633e959be9f329123d51b76f5b09d258e09ca603..f27bd42bd764c89496de010bd025aeb397b77df8 100644
--- a/nixos/modules/programs/way-cooler.nix
+++ b/nixos/modules/programs/way-cooler.nix
@@ -8,7 +8,7 @@ let
wcWrapped = pkgs.writeShellScriptBin "way-cooler" ''
${cfg.extraSessionCommands}
- exec ${pkgs.dbus.dbus-launch} --exit-with-session ${way-cooler}/bin/way-cooler
+ exec ${pkgs.dbus}/bin/dbus-run-session ${way-cooler}/bin/way-cooler
'';
wcJoined = pkgs.symlinkJoin {
name = "way-cooler-wrapped";
diff --git a/nixos/modules/programs/waybar.nix b/nixos/modules/programs/waybar.nix
new file mode 100644
index 0000000000000000000000000000000000000000..22530e6c7d4d09b2fc02b4a6b269aa8a657aa20d
--- /dev/null
+++ b/nixos/modules/programs/waybar.nix
@@ -0,0 +1,20 @@
+{ lib, pkgs, config, ... }:
+
+with lib;
+
+{
+ options.programs.waybar = {
+ enable = mkEnableOption "waybar";
+ };
+
+ config = mkIf config.programs.waybar.enable {
+ systemd.user.services.waybar = {
+ description = "Waybar as systemd service";
+ wantedBy = [ "graphical-session.target" ];
+ partOf = [ "graphical-session.target" ];
+ script = "${pkgs.waybar}/bin/waybar";
+ };
+ };
+
+ meta.maintainers = [ maintainers.FlorianFranzen ];
+}
diff --git a/nixos/modules/programs/xonsh.nix b/nixos/modules/programs/xonsh.nix
index f967ca82ac8c78b22bac51c3233677463e266ade..ceab9b5db931a3675a7652c73ce756da301338d4 100644
--- a/nixos/modules/programs/xonsh.nix
+++ b/nixos/modules/programs/xonsh.nix
@@ -50,7 +50,6 @@ in
environment.shells =
[ "/run/current-system/sw/bin/xonsh"
- "/var/run/current-system/sw/bin/xonsh"
"${pkgs.xonsh}/bin/xonsh"
];
diff --git a/nixos/modules/programs/xss-lock.nix b/nixos/modules/programs/xss-lock.nix
index 49d522c604f5fb1cfafa12a7efc212f005909680..c290df01b96044a066a5c892a992948c0bb37408 100644
--- a/nixos/modules/programs/xss-lock.nix
+++ b/nixos/modules/programs/xss-lock.nix
@@ -9,7 +9,8 @@ in
options.programs.xss-lock = {
enable = mkEnableOption "xss-lock";
lockerCommand = mkOption {
- example = "xlock";
+ default = "${pkgs.i3lock}/bin/i3lock";
+ example = literalExample ''''${pkgs.i3lock-fancy}/bin/i3lock-fancy'';
type = types.string;
description = "Locker to be used with xsslock";
};
diff --git a/nixos/modules/programs/yabar.nix b/nixos/modules/programs/yabar.nix
index a01083c3ace980f97eb9663362ad2476977eeee8..db085211366ee84f3aa13e5c63e033de70698a96 100644
--- a/nixos/modules/programs/yabar.nix
+++ b/nixos/modules/programs/yabar.nix
@@ -44,10 +44,23 @@ in
enable = mkEnableOption "yabar";
package = mkOption {
- default = pkgs.yabar;
- example = literalExample "pkgs.yabar-unstable";
+ default = pkgs.yabar-unstable;
+ example = literalExample "pkgs.yabar";
type = types.package;
+ # `yabar-stable` segfaults under certain conditions.
+ apply = x: if x == pkgs.yabar-unstable then x else flip warn x ''
+ It's not recommended to use `yabar' with `programs.yabar', the (old) stable release
+ tends to segfault under certain circumstances:
+
+ * https://github.com/geommer/yabar/issues/86
+ * https://github.com/geommer/yabar/issues/68
+ * https://github.com/geommer/yabar/issues/143
+
+ Most of them don't occur on master anymore, until a new release is published, it's recommended
+ to use `yabar-unstable'.
+ '';
+
description = ''
The package which contains the `yabar` binary.
diff --git a/nixos/modules/programs/zsh/oh-my-zsh.xml b/nixos/modules/programs/zsh/oh-my-zsh.xml
index b74da8630ee77e86d23a6b176bd87e1381f027a1..568c2de655766cd94cf45ae191c056797018281d 100644
--- a/nixos/modules/programs/zsh/oh-my-zsh.xml
+++ b/nixos/modules/programs/zsh/oh-my-zsh.xml
@@ -3,105 +3,135 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="module-programs-zsh-ohmyzsh">
-
-Oh my ZSH
-
-oh-my-zsh is a framework
-to manage your ZSH configuration
-including completion scripts for several CLI tools or custom prompt themes.
-
-Basic usage
-The module uses the oh-my-zsh package with all available features. The
-initial setup using Nix expressions is fairly similar to the configuration format
-of oh-my-zsh.
-
+ Oh my ZSH
+
+ oh-my-zsh is a
+ framework to manage your ZSH
+ configuration including completion scripts for several CLI tools or custom
+ prompt themes.
+
+
+ Basic usage
+
+
+ The module uses the oh-my-zsh package with all available
+ features. The initial setup using Nix expressions is fairly similar to the
+ configuration format of oh-my-zsh.
{
- programs.ohMyZsh = {
+ programs.zsh.ohMyZsh = {
enable = true;
plugins = [ "git" "python" "man" ];
theme = "agnoster";
};
}
-
-For a detailed explanation of these arguments please refer to the
-oh-my-zsh docs.
-
-The expression generates the needed
-configuration and writes it into your /etc/zshrc.
-
-
-Custom additions
-
-Sometimes third-party or custom scripts such as a modified theme may be needed.
-oh-my-zsh provides the
-ZSH_CUSTOM
-environment variable for this which points to a directory with additional scripts.
-
-The module can do this as well:
-
+ For a detailed explanation of these arguments please refer to the
+ oh-my-zsh
+ docs.
+
+
+
+ The expression generates the needed configuration and writes it into your
+ /etc/zshrc.
+
+
+
+ Custom additions
+
+
+ Sometimes third-party or custom scripts such as a modified theme may be
+ needed. oh-my-zsh provides the
+ ZSH_CUSTOM
+ environment variable for this which points to a directory with additional
+ scripts.
+
+
+
+ The module can do this as well:
{
- programs.ohMyZsh.custom = "~/path/to/custom/scripts";
+ programs.zsh.ohMyZsh.custom = "~/path/to/custom/scripts";
}
-
-
-Custom environments
-
-There are several extensions for oh-my-zsh packaged in nixpkgs.
-One of them is nix-zsh-completions
-which bundles completion scripts and a plugin for oh-my-zsh.
-
-Rather than using a single mutable path for ZSH_CUSTOM, it's also possible to
-generate this path from a list of Nix packages:
-
+
+
+
+ Custom environments
+
+
+ There are several extensions for oh-my-zsh packaged in
+ nixpkgs. One of them is
+ nix-zsh-completions
+ which bundles completion scripts and a plugin for
+ oh-my-zsh.
+
+
+
+ Rather than using a single mutable path for ZSH_CUSTOM,
+ it's also possible to generate this path from a list of Nix packages:
{ pkgs, ... }:
{
- programs.ohMyZsh.customPkgs = with pkgs; [
+ programs.zsh.ohMyZsh.customPkgs = with pkgs; [
pkgs.nix-zsh-completions
# and even more...
];
}
-
-Internally a single store path will be created using buildEnv.
-Please refer to the docs of
-buildEnv
-for further reference.
-
-Please keep in mind that this is not compatible with programs.ohMyZsh.custom
-as it requires an immutable store path while custom shall remain mutable! An evaluation failure
-will be thrown if both custom and customPkgs are set.
-
-
-Package your own customizations
-
-If third-party customizations (e.g. new themes) are supposed to be added to oh-my-zsh
-there are several pitfalls to keep in mind:
-
-
-
- To comply with the default structure of ZSH the entire output needs to be written to
- $out/share/zsh.
-
-
- Completion scripts are supposed to be stored at $out/share/zsh/site-functions. This directory
- is part of the fpath
- and the package should be compatible with pure ZSH setups. The module will automatically link
- the contents of site-functions to completions directory in the proper store path.
-
-
- The plugins directory needs the structure pluginname/pluginname.plugin.zsh
- as structured in the upstream repo.
+ Internally a single store path will be created using
+ buildEnv. Please refer to the docs of
+ buildEnv
+ for further reference.
+
+
+
+ Please keep in mind that this is not compatible with
+ programs.zsh.ohMyZsh.custom as it requires an immutable
+ store path while custom shall remain mutable! An
+ evaluation failure will be thrown if both custom and
+ customPkgs are set.
+
+
+
+ Package your own customizations
+
+
+ If third-party customizations (e.g. new themes) are supposed to be added to
+ oh-my-zsh there are several pitfalls to keep in mind:
+
+
+
+
+
+ To comply with the default structure of ZSH the entire
+ output needs to be written to $out/share/zsh.
+
+
+
+
+ Completion scripts are supposed to be stored at
+ $out/share/zsh/site-functions. This directory is part
+ of the
+ fpath
+ and the package should be compatible with pure ZSH
+ setups. The module will automatically link the contents of
+ site-functions to completions directory in the proper
+ store path.
+
+
+
+
+ The plugins directory needs the structure
+ pluginname/pluginname.plugin.zsh as structured in the
+ upstream
+ repo.
-
-
+
+
-
-A derivation for oh-my-zsh may look like this:
+
+ A derivation for oh-my-zsh may look like this:
{ stdenv, fetchFromGitHub }:
@@ -120,6 +150,6 @@ stdenv.mkDerivation rec {
'';
}
-
-
+
+
diff --git a/nixos/modules/programs/zsh/zsh-autosuggestions.nix b/nixos/modules/programs/zsh/zsh-autosuggestions.nix
index 416f4c9c675115ca4b685a40d7c3f74257468f45..ded17f38a618eae87d69d518895b600151cffe17 100644
--- a/nixos/modules/programs/zsh/zsh-autosuggestions.nix
+++ b/nixos/modules/programs/zsh/zsh-autosuggestions.nix
@@ -18,13 +18,13 @@ in
};
strategy = mkOption {
- type = types.enum [ "default" "match_prev_cmd" ];
- default = "default";
+ type = types.enum [ "history" "match_prev_cmd" ];
+ default = "history";
description = ''
Set ZSH_AUTOSUGGEST_STRATEGY to choose the strategy for generating suggestions.
There are currently two to choose from:
- * default: Chooses the most recent match.
+ * history: Chooses the most recent match.
* match_prev_cmd: Chooses the most recent match whose preceding history item matches
the most recently executed command (more info). Note that this strategy won't work as
expected with ZSH options that don't preserve the history order such as
@@ -51,7 +51,7 @@ in
source ${pkgs.zsh-autosuggestions}/share/zsh-autosuggestions/zsh-autosuggestions.zsh
export ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="${cfg.highlightStyle}"
- export ZSH_AUTOSUGGEST_STRATEGY="${cfg.strategy}"
+ export ZSH_AUTOSUGGEST_STRATEGY=("${cfg.strategy}")
${concatStringsSep "\n" (mapAttrsToList (key: value: ''export ${key}="${value}"'') cfg.extraConfig)}
'';
diff --git a/nixos/modules/programs/zsh/zsh-syntax-highlighting.nix b/nixos/modules/programs/zsh/zsh-syntax-highlighting.nix
index e7cf17c2c00cb00a17c8aef6177bd656e6f2866e..89087a229eb7396c27bae2915b4e617d130f4f2d 100644
--- a/nixos/modules/programs/zsh/zsh-syntax-highlighting.nix
+++ b/nixos/modules/programs/zsh/zsh-syntax-highlighting.nix
@@ -48,6 +48,23 @@ in
https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/pattern.md
'';
};
+ styles = mkOption {
+ default = {};
+ type = types.attrsOf types.string;
+
+ example = literalExample ''
+ {
+ "alias" = "fg=magenta,bold";
+ }
+ '';
+
+ description = ''
+ Specifies custom styles to be highlighted by zsh-syntax-highlighting.
+
+ Please refer to the docs for more information about the usage:
+ https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/main.md
+ '';
+ };
};
};
@@ -73,6 +90,11 @@ in
pattern: design:
"ZSH_HIGHLIGHT_PATTERNS+=('${pattern}' '${design}')"
) cfg.patterns)
+ ++ optionals (length(attrNames cfg.styles) > 0)
+ (mapAttrsToList (
+ styles: design:
+ "ZSH_HIGHLIGHT_STYLES[${styles}]='${design}'"
+ ) cfg.styles)
);
};
}
diff --git a/nixos/modules/programs/zsh/zsh.nix b/nixos/modules/programs/zsh/zsh.nix
index 42d4e1d4ada010f843fa08408ac2cef74cfe8e05..b7117e5f90d789570a54253bfe778f584ee0f981 100644
--- a/nixos/modules/programs/zsh/zsh.nix
+++ b/nixos/modules/programs/zsh/zsh.nix
@@ -11,7 +11,8 @@ let
cfg = config.programs.zsh;
zshAliases = concatStringsSep "\n" (
- mapAttrsFlatten (k: v: "alias ${k}='${v}'") cfg.shellAliases
+ mapAttrsFlatten (k: v: "alias ${k}=${escapeShellArg v}")
+ (filterAttrs (k: v: !isNull v) cfg.shellAliases)
);
in
@@ -34,13 +35,12 @@ in
};
shellAliases = mkOption {
- default = config.environment.shellAliases;
+ default = {};
description = ''
- Set of aliases for zsh shell. Overrides the default value taken from
- .
+ Set of aliases for zsh shell, which overrides .
See for an option format description.
'';
- type = types.attrs; # types.attrsOf types.stringOrPath;
+ type = with types; attrsOf (nullOr (either str path));
};
shellInit = mkOption {
@@ -70,7 +70,7 @@ in
promptInit = mkOption {
default = ''
if [ "$TERM" != dumb ]; then
- autoload -U promptinit && promptinit && prompt walters
+ autoload -U promptinit && promptinit && prompt walters
fi
'';
description = ''
@@ -79,6 +79,33 @@ in
type = types.lines;
};
+ histSize = mkOption {
+ default = 2000;
+ description = ''
+ Change history size.
+ '';
+ type = types.int;
+ };
+
+ histFile = mkOption {
+ default = "$HOME/.zsh_history";
+ description = ''
+ Change history file.
+ '';
+ type = types.str;
+ };
+
+ setOptions = mkOption {
+ type = types.listOf types.str;
+ default = [
+ "HIST_IGNORE_DUPS" "SHARE_HISTORY" "HIST_FCNTL_LOCK"
+ ];
+ example = [ "EXTENDED_HISTORY" "RM_STAR_WAIT" ];
+ description = ''
+ Configure zsh options.
+ '';
+ };
+
enableCompletion = mkOption {
default = true;
description = ''
@@ -87,12 +114,27 @@ in
type = types.bool;
};
+
+ enableGlobalCompInit = mkOption {
+ default = cfg.enableCompletion;
+ description = ''
+ Enable execution of compinit call for all interactive zsh shells.
+
+ This option can be disabled if the user wants to extend its
+ fpath and a custom compinit
+ call in the local config is required.
+ '';
+ type = types.bool;
+ };
+
};
};
config = mkIf cfg.enable {
+ programs.zsh.shellAliases = mapAttrs (name: mkDefault) cfge.shellAliases;
+
environment.etc."zshenv".text =
''
# /etc/zshenv: DO NOT EDIT -- this file has been generated automatically.
@@ -103,7 +145,9 @@ in
if [ -n "$__ETC_ZSHENV_SOURCED" ]; then return; fi
export __ETC_ZSHENV_SOURCED=1
- ${config.system.build.setEnvironment.text}
+ if [ -z "$__NIXOS_SET_ENVIRONMENT_DONE" ]; then
+ . ${config.system.build.setEnvironment}
+ fi
${cfge.shellInit}
@@ -111,7 +155,7 @@ in
# Read system-wide modifications.
if test -f /etc/zshenv.local; then
- . /etc/zshenv.local
+ . /etc/zshenv.local
fi
'';
@@ -130,7 +174,7 @@ in
# Read system-wide modifications.
if test -f /etc/zprofile.local; then
- . /etc/zprofile.local
+ . /etc/zprofile.local
fi
'';
@@ -145,21 +189,21 @@ in
. /etc/zinputrc
- # history defaults
- SAVEHIST=2000
- HISTSIZE=2000
- HISTFILE=$HOME/.zsh_history
+ # Don't export these, otherwise other shells (bash) will try to use same histfile
+ SAVEHIST=${toString cfg.histSize}
+ HISTSIZE=${toString cfg.histSize}
+ HISTFILE=${cfg.histFile}
- setopt HIST_IGNORE_DUPS SHARE_HISTORY HIST_FCNTL_LOCK
+ ${optionalString (cfg.setOptions != []) "setopt ${concatStringsSep " " cfg.setOptions}"}
HELPDIR="${pkgs.zsh}/share/zsh/$ZSH_VERSION/help"
# Tell zsh how to find installed completions
for p in ''${(z)NIX_PROFILES}; do
- fpath+=($p/share/zsh/site-functions $p/share/zsh/$ZSH_VERSION/functions $p/share/zsh/vendor-completions)
+ fpath+=($p/share/zsh/site-functions $p/share/zsh/$ZSH_VERSION/functions $p/share/zsh/vendor-completions)
done
- ${optionalString cfg.enableCompletion "autoload -U compinit && compinit"}
+ ${optionalString cfg.enableGlobalCompInit "autoload -U compinit && compinit"}
${cfge.interactiveShellInit}
@@ -171,7 +215,7 @@ in
# Read system-wide modifications.
if test -f /etc/zshrc.local; then
- . /etc/zshrc.local
+ . /etc/zshrc.local
fi
'';
@@ -186,7 +230,6 @@ in
environment.shells =
[ "/run/current-system/sw/bin/zsh"
- "/var/run/current-system/sw/bin/zsh"
"${pkgs.zsh}/bin/zsh"
];
diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix
index f032f10e455730a94654293d9881a4a018f650e7..70807ccf7cd832a3305ee7198d1d16373214a99e 100644
--- a/nixos/modules/rename.nix
+++ b/nixos/modules/rename.nix
@@ -4,43 +4,38 @@ with lib;
{
imports = [
- # !!! These were renamed the other way, but got reverted later.
- # !!! Drop these before 18.09 is released.
- (mkRenamedOptionModule [ "system" "nixos" "stateVersion" ] [ "system" "stateVersion" ])
- (mkRenamedOptionModule [ "system" "nixos" "defaultChannel" ] [ "system" "defaultChannel" ])
-
- (mkRenamedOptionModule [ "environment" "x11Packages" ] [ "environment" "systemPackages" ])
- (mkRenamedOptionModule [ "environment" "enableBashCompletion" ] [ "programs" "bash" "enableCompletion" ])
- (mkRenamedOptionModule [ "environment" "nix" ] [ "nix" "package" ])
- (mkRenamedOptionModule [ "fonts" "enableFontConfig" ] [ "fonts" "fontconfig" "enable" ])
- (mkRenamedOptionModule [ "fonts" "extraFonts" ] [ "fonts" "fonts" ])
-
- (mkRenamedOptionModule [ "networking" "enableWLAN" ] [ "networking" "wireless" "enable" ])
(mkRenamedOptionModule [ "networking" "enableRT73Firmware" ] [ "hardware" "enableRedistributableFirmware" ])
(mkRenamedOptionModule [ "networking" "enableIntel3945ABGFirmware" ] [ "hardware" "enableRedistributableFirmware" ])
(mkRenamedOptionModule [ "networking" "enableIntel2100BGFirmware" ] [ "hardware" "enableRedistributableFirmware" ])
(mkRenamedOptionModule [ "networking" "enableRalinkFirmware" ] [ "hardware" "enableRedistributableFirmware" ])
(mkRenamedOptionModule [ "networking" "enableRTL8192cFirmware" ] [ "hardware" "enableRedistributableFirmware" ])
(mkRenamedOptionModule [ "networking" "networkmanager" "useDnsmasq" ] [ "networking" "networkmanager" "dns" ])
-
- (mkRenamedOptionModule [ "services" "cadvisor" "host" ] [ "services" "cadvisor" "listenAddress" ])
(mkChangedOptionModule [ "services" "printing" "gutenprint" ] [ "services" "printing" "drivers" ]
(config:
let enabled = getAttrFromPath [ "services" "printing" "gutenprint" ] config;
in if enabled then [ pkgs.gutenprint ] else [ ]))
- (mkRenamedOptionModule [ "services" "ddclient" "domain" ] [ "services" "ddclient" "domains" ])
+ (mkChangedOptionModule [ "services" "ddclient" "domain" ] [ "services" "ddclient" "domains" ]
+ (config:
+ let value = getAttrFromPath [ "services" "ddclient" "domain" ] config;
+ in if value != "" then [ value ] else []))
(mkRemovedOptionModule [ "services" "ddclient" "homeDir" ] "")
- (mkRenamedOptionModule [ "services" "elasticsearch" "host" ] [ "services" "elasticsearch" "listenAddress" ])
- (mkRenamedOptionModule [ "services" "graphite" "api" "host" ] [ "services" "graphite" "api" "listenAddress" ])
- (mkRenamedOptionModule [ "services" "graphite" "web" "host" ] [ "services" "graphite" "web" "listenAddress" ])
(mkRenamedOptionModule [ "services" "i2pd" "extIp" ] [ "services" "i2pd" "address" ])
- (mkRenamedOptionModule [ "services" "kibana" "host" ] [ "services" "kibana" "listenAddress" ])
(mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "admissionControl" ] [ "services" "kubernetes" "apiserver" "enableAdmissionPlugins" ])
(mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "address" ] ["services" "kubernetes" "apiserver" "bindAddress"])
+ (mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "port" ] ["services" "kubernetes" "apiserver" "insecurePort"])
(mkRemovedOptionModule [ "services" "kubernetes" "apiserver" "publicAddress" ] "")
(mkRenamedOptionModule [ "services" "kubernetes" "addons" "dashboard" "enableRBAC" ] [ "services" "kubernetes" "addons" "dashboard" "rbac" "enable" ])
+ (mkRenamedOptionModule [ "services" "kubernetes" "controllerManager" "address" ] ["services" "kubernetes" "controllerManager" "bindAddress"])
+ (mkRenamedOptionModule [ "services" "kubernetes" "controllerManager" "port" ] ["services" "kubernetes" "controllerManager" "insecurePort"])
+ (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "servers" ] [ "services" "kubernetes" "apiserver" "etcd" "servers" ])
+ (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "keyFile" ] [ "services" "kubernetes" "apiserver" "etcd" "keyFile" ])
+ (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "certFile" ] [ "services" "kubernetes" "apiserver" "etcd" "certFile" ])
+ (mkRenamedOptionModule [ "services" "kubernetes" "etcd" "caFile" ] [ "services" "kubernetes" "apiserver" "etcd" "caFile" ])
+ (mkRemovedOptionModule [ "services" "kubernetes" "kubelet" "applyManifests" ] "")
+ (mkRemovedOptionModule [ "services" "kubernetes" "kubelet" "cadvisorPort" ] "")
+ (mkRenamedOptionModule [ "services" "kubernetes" "proxy" "address" ] ["services" "kubernetes" "proxy" "bindAddress"])
+ (mkRemovedOptionModule [ "services" "kubernetes" "verbose" ] "")
(mkRenamedOptionModule [ "services" "logstash" "address" ] [ "services" "logstash" "listenAddress" ])
- (mkRenamedOptionModule [ "services" "mpd" "network" "host" ] [ "services" "mpd" "network" "listenAddress" ])
(mkRenamedOptionModule [ "services" "neo4j" "host" ] [ "services" "neo4j" "defaultListenAddress" ])
(mkRenamedOptionModule [ "services" "neo4j" "listenAddress" ] [ "services" "neo4j" "defaultListenAddress" ])
(mkRenamedOptionModule [ "services" "neo4j" "enableBolt" ] [ "services" "neo4j" "bolt" "enable" ])
@@ -50,11 +45,13 @@ with lib;
(mkRemovedOptionModule [ "services" "neo4j" "port" ] "Use services.neo4j.http.listenAddress instead.")
(mkRemovedOptionModule [ "services" "neo4j" "boltPort" ] "Use services.neo4j.bolt.listenAddress instead.")
(mkRemovedOptionModule [ "services" "neo4j" "httpsPort" ] "Use services.neo4j.https.listenAddress instead.")
- (mkRenamedOptionModule [ "services" "shout" "host" ] [ "services" "shout" "listenAddress" ])
- (mkRenamedOptionModule [ "services" "sslh" "host" ] [ "services" "sslh" "listenAddress" ])
- (mkRenamedOptionModule [ "services" "statsd" "host" ] [ "services" "statsd" "listenAddress" ])
- (mkRenamedOptionModule [ "services" "subsonic" "host" ] [ "services" "subsonic" "listenAddress" ])
+ (mkRemovedOptionModule [ "services" "misc" "nzbget" "configFile" ] "The configuration of nzbget is now managed by users through the web interface.")
+ (mkRemovedOptionModule [ "services" "misc" "nzbget" "dataDir" ] "The data directory for nzbget is now /var/lib/nzbget.")
+ (mkRemovedOptionModule [ "services" "misc" "nzbget" "openFirewall" ] "The port used by nzbget is managed through the web interface so you should adjust your firewall rules accordingly.")
+ (mkRemovedOptionModule [ "services" "prometheus" "alertmanager" "user" ] "The alertmanager service is now using systemd's DynamicUser mechanism which obviates a user setting.")
+ (mkRemovedOptionModule [ "services" "prometheus" "alertmanager" "group" ] "The alertmanager service is now using systemd's DynamicUser mechanism which obviates a group setting.")
(mkRenamedOptionModule [ "services" "tor" "relay" "portSpec" ] [ "services" "tor" "relay" "port" ])
+ (mkRenamedOptionModule [ "services" "vmwareGuest" ] [ "virtualisation" "vmware" "guest" ])
(mkRenamedOptionModule [ "jobs" ] [ "systemd" "services" ])
(mkRenamedOptionModule [ "services" "gitlab" "stateDir" ] [ "services" "gitlab" "statePath" ])
@@ -65,6 +62,9 @@ with lib;
(mkRemovedOptionModule [ "security" "setuidOwners" ] "Use security.wrappers instead")
(mkRemovedOptionModule [ "security" "setuidPrograms" ] "Use security.wrappers instead")
+ # PAM
+ (mkRenamedOptionModule [ "security" "pam" "enableU2F" ] [ "security" "pam" "u2f" "enable" ])
+
(mkRemovedOptionModule [ "services" "rmilter" "bindInetSockets" ] "Use services.rmilter.bindSocket.* instead")
(mkRemovedOptionModule [ "services" "rmilter" "bindUnixSockets" ] "Use services.rmilter.bindSocket.* instead")
@@ -73,82 +73,31 @@ with lib;
(mkRenamedOptionModule [ "services" "xserver" "displayManager" "logToJournal" ] [ "services" "xserver" "displayManager" "job" "logToJournal" ])
# Old Grub-related options.
- (mkRenamedOptionModule [ "boot" "initrd" "extraKernelModules" ] [ "boot" "initrd" "kernelModules" ])
- (mkRenamedOptionModule [ "boot" "extraKernelParams" ] [ "boot" "kernelParams" ])
(mkRenamedOptionModule [ "boot" "loader" "grub" "timeout" ] [ "boot" "loader" "timeout" ])
(mkRenamedOptionModule [ "boot" "loader" "gummiboot" "timeout" ] [ "boot" "loader" "timeout" ])
- # smartd
- (mkRenamedOptionModule [ "services" "smartd" "deviceOpts" ] [ "services" "smartd" "defaults" "monitored" ])
-
# OpenSSH
- (mkRenamedOptionModule [ "services" "sshd" "ports" ] [ "services" "openssh" "ports" ])
(mkAliasOptionModule [ "services" "sshd" "enable" ] [ "services" "openssh" "enable" ])
- (mkRenamedOptionModule [ "services" "sshd" "allowSFTP" ] [ "services" "openssh" "allowSFTP" ])
- (mkRenamedOptionModule [ "services" "sshd" "forwardX11" ] [ "services" "openssh" "forwardX11" ])
- (mkRenamedOptionModule [ "services" "sshd" "gatewayPorts" ] [ "services" "openssh" "gatewayPorts" ])
- (mkRenamedOptionModule [ "services" "sshd" "permitRootLogin" ] [ "services" "openssh" "permitRootLogin" ])
- (mkRenamedOptionModule [ "services" "xserver" "startSSHAgent" ] [ "services" "xserver" "startOpenSSHAgent" ])
- (mkRenamedOptionModule [ "services" "xserver" "startOpenSSHAgent" ] [ "programs" "ssh" "startAgent" ])
(mkAliasOptionModule [ "services" "openssh" "knownHosts" ] [ "programs" "ssh" "knownHosts" ])
- # VirtualBox
- (mkRenamedOptionModule [ "services" "virtualbox" "enable" ] [ "virtualisation" "virtualbox" "guest" "enable" ])
- (mkRenamedOptionModule [ "services" "virtualboxGuest" "enable" ] [ "virtualisation" "virtualbox" "guest" "enable" ])
- (mkRenamedOptionModule [ "programs" "virtualbox" "enable" ] [ "virtualisation" "virtualbox" "host" "enable" ])
- (mkRenamedOptionModule [ "programs" "virtualbox" "addNetworkInterface" ] [ "virtualisation" "virtualbox" "host" "addNetworkInterface" ])
- (mkRenamedOptionModule [ "programs" "virtualbox" "enableHardening" ] [ "virtualisation" "virtualbox" "host" "enableHardening" ])
- (mkRenamedOptionModule [ "services" "virtualboxHost" "enable" ] [ "virtualisation" "virtualbox" "host" "enable" ])
- (mkRenamedOptionModule [ "services" "virtualboxHost" "addNetworkInterface" ] [ "virtualisation" "virtualbox" "host" "addNetworkInterface" ])
- (mkRenamedOptionModule [ "services" "virtualboxHost" "enableHardening" ] [ "virtualisation" "virtualbox" "host" "enableHardening" ])
-
# libvirtd
(mkRemovedOptionModule [ "virtualisation" "libvirtd" "enableKVM" ]
"Set the option `virtualisation.libvirtd.qemuPackage' instead.")
- # Tarsnap
- (mkRenamedOptionModule [ "services" "tarsnap" "config" ] [ "services" "tarsnap" "archives" ])
-
# ibus
(mkRenamedOptionModule [ "programs" "ibus" "plugins" ] [ "i18n" "inputMethod" "ibus" "engines" ])
- # proxy
- (mkRenamedOptionModule [ "nix" "proxy" ] [ "networking" "proxy" "default" ])
-
# sandboxing
(mkRenamedOptionModule [ "nix" "useChroot" ] [ "nix" "useSandbox" ])
(mkRenamedOptionModule [ "nix" "chrootDirs" ] [ "nix" "sandboxPaths" ])
- # KDE
- (mkRenamedOptionModule [ "kde" "extraPackages" ] [ "environment" "systemPackages" ])
- (mkRenamedOptionModule [ "environment" "kdePackages" ] [ "environment" "systemPackages" ])
-
- # Multiple efi bootloaders now
- (mkRenamedOptionModule [ "boot" "loader" "efi" "efibootmgr" "enable" ] [ "boot" "loader" "efi" "canTouchEfiVariables" ])
-
- # NixOS environment changes
- # !!! this hardcodes bash, could we detect from config which shell is actually used?
- (mkRenamedOptionModule [ "environment" "promptInit" ] [ "programs" "bash" "promptInit" ])
-
- (mkRenamedOptionModule [ "services" "xserver" "driSupport" ] [ "hardware" "opengl" "driSupport" ])
- (mkRenamedOptionModule [ "services" "xserver" "driSupport32Bit" ] [ "hardware" "opengl" "driSupport32Bit" ])
- (mkRenamedOptionModule [ "services" "xserver" "s3tcSupport" ] [ "hardware" "opengl" "s3tcSupport" ])
- (mkRenamedOptionModule [ "hardware" "opengl" "videoDrivers" ] [ "services" "xserver" "videoDrivers" ])
(mkRenamedOptionModule [ "services" "xserver" "vaapiDrivers" ] [ "hardware" "opengl" "extraPackages" ])
- (mkRenamedOptionModule [ "services" "mysql55" ] [ "services" "mysql" ])
-
(mkAliasOptionModule [ "environment" "checkConfigurationOptions" ] [ "_module" "check" ])
# opendkim
(mkRenamedOptionModule [ "services" "opendkim" "keyFile" ] [ "services" "opendkim" "keyPath" ])
- # XBMC
- (mkRenamedOptionModule [ "services" "xserver" "windowManager" "xbmc" ] [ "services" "xserver" "desktopManager" "kodi" ])
- (mkRenamedOptionModule [ "services" "xserver" "desktopManager" "xbmc" ] [ "services" "xserver" "desktopManager" "kodi" ])
-
- (mkRenamedOptionModule [ "services" "hostapd" "extraCfg" ] [ "services" "hostapd" "extraConfig" ])
-
# Enlightenment
(mkRenamedOptionModule [ "services" "xserver" "desktopManager" "e19" "enable" ] [ "services" "xserver" "desktopManager" "enlightenment" "enable" ])
@@ -168,6 +117,9 @@ with lib;
# parsoid
(mkRemovedOptionModule [ "services" "parsoid" "interwikis" ] [ "services" "parsoid" "wikis" ])
+ # plexpy / tautulli
+ (mkRenamedOptionModule [ "services" "plexpy" ] [ "services" "tautulli" ])
+
# piwik was renamed to matomo
(mkRenamedOptionModule [ "services" "piwik" "enable" ] [ "services" "matomo" "enable" ])
(mkRenamedOptionModule [ "services" "piwik" "webServerUser" ] [ "services" "matomo" "webServerUser" ])
@@ -187,7 +139,7 @@ with lib;
inetPort = [ "services" "postgrey" "inetPort" ];
in
if value inetAddr == null
- then { path = "/var/run/postgrey.sock"; }
+ then { path = "/run/postgrey.sock"; }
else { addr = value inetAddr; port = value inetPort; }
))
@@ -219,7 +171,7 @@ with lib;
'')
# Profile splitting
- (mkRenamedOptionModule [ "virtualization" "growPartition" ] [ "boot" "growPartition" ])
+ (mkRenamedOptionModule [ "virtualisation" "growPartition" ] [ "boot" "growPartition" ])
# misc/version.nix
(mkRenamedOptionModule [ "system" "nixosVersion" ] [ "system" "nixos" "version" ])
@@ -256,6 +208,7 @@ with lib;
(mkRemovedOptionModule [ "fonts" "fontconfig" "forceAutohint" ] "")
(mkRemovedOptionModule [ "fonts" "fontconfig" "renderMonoTTFAsBitmap" ] "")
(mkRemovedOptionModule [ "virtualisation" "xen" "qemu" ] "You don't need this option anymore, it will work without it.")
+ (mkRemovedOptionModule [ "services" "logstash" "enableWeb" ] "The web interface was removed from logstash")
(mkRemovedOptionModule [ "boot" "zfs" "enableLegacyCrypto" ] "The corresponding package was removed from nixpkgs.")
# ZSH
@@ -275,6 +228,11 @@ with lib;
(mkRenamedOptionModule [ "programs" "info" "enable" ] [ "documentation" "info" "enable" ])
(mkRenamedOptionModule [ "programs" "man" "enable" ] [ "documentation" "man" "enable" ])
+ (mkRenamedOptionModule [ "services" "nixosManual" "enable" ] [ "documentation" "nixos" "enable" ])
+
+ # ckb
+ (mkRenamedOptionModule [ "hardware" "ckb" "enable" ] [ "hardware" "ckb-next" "enable" ])
+ (mkRenamedOptionModule [ "hardware" "ckb" "package" ] [ "hardware" "ckb-next" "package" ])
] ++ (flip map [ "blackboxExporter" "collectdExporter" "fritzboxExporter"
"jsonExporter" "minioExporter" "nginxExporter" "nodeExporter"
diff --git a/nixos/modules/security/acme.nix b/nixos/modules/security/acme.nix
index 946da92d80e76525662c4d1561df4111c6c551b1..092704c6fc3f69bbd6fe4f3e32c0932bb1c2c510 100644
--- a/nixos/modules/security/acme.nix
+++ b/nixos/modules/security/acme.nix
@@ -302,15 +302,15 @@ in
workdir="$(mktemp -d)"
# Create CA
- openssl genrsa -des3 -passout pass:x -out $workdir/ca.pass.key 2048
- openssl rsa -passin pass:x -in $workdir/ca.pass.key -out $workdir/ca.key
+ openssl genrsa -des3 -passout pass:xxxx -out $workdir/ca.pass.key 2048
+ openssl rsa -passin pass:xxxx -in $workdir/ca.pass.key -out $workdir/ca.key
openssl req -new -key $workdir/ca.key -out $workdir/ca.csr \
-subj "/C=UK/ST=Warwickshire/L=Leamington/O=OrgName/OU=Security Department/CN=example.com"
openssl x509 -req -days 1 -in $workdir/ca.csr -signkey $workdir/ca.key -out $workdir/ca.crt
# Create key
- openssl genrsa -des3 -passout pass:x -out $workdir/server.pass.key 2048
- openssl rsa -passin pass:x -in $workdir/server.pass.key -out $workdir/server.key
+ openssl genrsa -des3 -passout pass:xxxx -out $workdir/server.pass.key 2048
+ openssl rsa -passin pass:xxxx -in $workdir/server.pass.key -out $workdir/server.key
openssl req -new -key $workdir/server.key -out $workdir/server.csr \
-subj "/C=UK/ST=Warwickshire/L=Leamington/O=OrgName/OU=IT Department/CN=example.com"
openssl x509 -req -days 1 -in $workdir/server.csr -CA $workdir/ca.crt \
diff --git a/nixos/modules/security/acme.xml b/nixos/modules/security/acme.xml
index 7cdc554989ea4bce9033ef330e3edf27a36f305a..ef71fe53d0c7e5d04e4ebc1d46bdd3cbb618d13b 100644
--- a/nixos/modules/security/acme.xml
+++ b/nixos/modules/security/acme.xml
@@ -3,23 +3,25 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="module-security-acme">
-
-SSL/TLS Certificates with ACME
-
-NixOS supports automatic domain validation & certificate
-retrieval and renewal using the ACME protocol. This is currently only
-implemented by and for Let's Encrypt. The alternative ACME client
-simp_le is used under the hood.
-
-Prerequisites
-
-You need to have a running HTTP server for verification. The server must
-have a webroot defined that can serve
-.well-known/acme-challenge. This directory must be
-writeable by the user that will run the ACME client.
-
-For instance, this generic snippet could be used for Nginx:
-
+ SSL/TLS Certificates with ACME
+
+ NixOS supports automatic domain validation & certificate retrieval and
+ renewal using the ACME protocol. This is currently only implemented by and
+ for Let's Encrypt. The alternative ACME client simp_le is
+ used under the hood.
+
+
+ Prerequisites
+
+
+ You need to have a running HTTP server for verification. The server must
+ have a webroot defined that can serve
+ .well-known/acme-challenge. This directory must be
+ writeable by the user that will run the ACME client.
+
+
+
+ For instance, this generic snippet could be used for Nginx:
http {
server {
@@ -37,43 +39,47 @@ http {
}
}
-
-
-
-
-Configuring
-
-To enable ACME certificate retrieval & renewal for a certificate for
-foo.example.com, add the following in your
-configuration.nix:
-
+
+
+
+ Configuring
+
+
+ To enable ACME certificate retrieval & renewal for a certificate for
+ foo.example.com, add the following in your
+ configuration.nix:
."foo.example.com" = {
webroot = "/var/www/challenges";
email = "foo@example.com";
};
-
-
-The private key key.pem and certificate
-fullchain.pem will be put into
-/var/lib/acme/foo.example.com. The target directory can
-be configured with the option .
-
-
-Refer to for all available configuration
-options for the security.acme module.
-
-
-
-Using ACME certificates in Nginx
-NixOS supports fetching ACME certificates for you by setting
- enableACME = true; in a virtualHost config. We
-first create self-signed placeholder certificates in place of the
-real ACME certs. The placeholder certs are overwritten when the ACME
-certs arrive. For foo.example.com the config would
-look like.
-
+
+
+
+ The private key key.pem and certificate
+ fullchain.pem will be put into
+ /var/lib/acme/foo.example.com. The target directory can
+ be configured with the option .
+
+
+
+ Refer to for all available configuration
+ options for the security.acme
+ module.
+
+
+
+ Using ACME certificates in Nginx
+
+
+ NixOS supports fetching ACME certificates for you by setting
+ enableACME
+ = true; in a virtualHost config. We first create self-signed
+ placeholder certificates in place of the real ACME certs. The placeholder
+ certs are overwritten when the ACME certs arrive. For
+ foo.example.com the config would look like.
+
services.nginx = {
@@ -89,5 +95,5 @@ services.nginx = {
};
}
-
+
diff --git a/nixos/modules/security/apparmor-suid.nix b/nixos/modules/security/apparmor-suid.nix
index dfbf5d859ba9efa5df8936688b8303b21ac7ce72..498c2f25d1c0d992586cf7b9375941995acf70af 100644
--- a/nixos/modules/security/apparmor-suid.nix
+++ b/nixos/modules/security/apparmor-suid.nix
@@ -28,7 +28,7 @@ with lib;
capability setuid,
network inet raw,
- ${pkgs.glibc.out}/lib/*.so mr,
+ ${pkgs.stdenv.cc.libc.out}/lib/*.so mr,
${pkgs.libcap.lib}/lib/libcap.so* mr,
${pkgs.attr.out}/lib/libattr.so* mr,
diff --git a/nixos/modules/security/apparmor.nix b/nixos/modules/security/apparmor.nix
index d323a158a4df6a985b3f2f7e1ea4a4dae719ce48..4512a7a80f6d66cdb366d6b0843fae9b95bce803 100644
--- a/nixos/modules/security/apparmor.nix
+++ b/nixos/modules/security/apparmor.nix
@@ -33,7 +33,12 @@ in
paths = concatMapStrings (s: " -I ${s}/etc/apparmor.d")
([ pkgs.apparmor-profiles ] ++ cfg.packages);
in {
- wantedBy = [ "local-fs.target" ];
+ after = [ "local-fs.target" ];
+ before = [ "sysinit.target" ];
+ wantedBy = [ "multi-user.target" ];
+ unitConfig = {
+ DefaultDependencies = "no";
+ };
serviceConfig = {
Type = "oneshot";
RemainAfterExit = "yes";
@@ -43,6 +48,9 @@ in
ExecStop = map (p:
''${pkgs.apparmor-parser}/bin/apparmor_parser -Rv "${p}"''
) cfg.profiles;
+ ExecReload = map (p:
+ ''${pkgs.apparmor-parser}/bin/apparmor_parser --reload ${paths} "${p}"''
+ ) cfg.profiles;
};
};
};
diff --git a/nixos/modules/security/ca.nix b/nixos/modules/security/ca.nix
index 67469be18b413c9e7bf24777ad8d34b52d5f3bb8..1c4ee421fc56aec3844ae075dcafbd00bbec42f4 100644
--- a/nixos/modules/security/ca.nix
+++ b/nixos/modules/security/ca.nix
@@ -14,6 +14,7 @@ let
{ files =
cfg.certificateFiles ++
[ (builtins.toFile "extra.crt" (concatStringsSep "\n" cfg.certificates)) ];
+ preferLocalBuild = true;
}
''
cat $files > $out
diff --git a/nixos/modules/security/dhparams.nix b/nixos/modules/security/dhparams.nix
index e2b84c3e3b38018b95aa1ea7e8e1911e31f56226..62a499ea624de92d304927c47dcef1455e35836e 100644
--- a/nixos/modules/security/dhparams.nix
+++ b/nixos/modules/security/dhparams.nix
@@ -170,4 +170,6 @@ in {
'';
}) cfg.params;
};
+
+ meta.maintainers = with lib.maintainers; [ ekleog ];
}
diff --git a/nixos/modules/security/duosec.nix b/nixos/modules/security/duosec.nix
index df6108dede7c476b6842f31d300570969cd34f7a..997328ad9e6ab0a4d4978343b5f50f04b2621e59 100644
--- a/nixos/modules/security/duosec.nix
+++ b/nixos/modules/security/duosec.nix
@@ -7,7 +7,7 @@ let
boolToStr = b: if b then "yes" else "no";
- configFile = ''
+ configFilePam = ''
[duo]
ikey=${cfg.ikey}
skey=${cfg.skey}
@@ -16,21 +16,24 @@ let
failmode=${cfg.failmode}
pushinfo=${boolToStr cfg.pushinfo}
autopush=${boolToStr cfg.autopush}
- motd=${boolToStr cfg.motd}
prompts=${toString cfg.prompts}
- accept_env_factor=${boolToStr cfg.acceptEnvFactor}
fallback_local_ip=${boolToStr cfg.fallbackLocalIP}
'';
+ configFileLogin = configFilePam + ''
+ motd=${boolToStr cfg.motd}
+ accept_env_factor=${boolToStr cfg.acceptEnvFactor}
+ '';
+
loginCfgFile = optional cfg.ssh.enable
- { source = pkgs.writeText "login_duo.conf" configFile;
+ { source = pkgs.writeText "login_duo.conf" configFileLogin;
mode = "0600";
user = "sshd";
target = "duo/login_duo.conf";
};
pamCfgFile = optional cfg.pam.enable
- { source = pkgs.writeText "pam_duo.conf" configFile;
+ { source = pkgs.writeText "pam_duo.conf" configFilePam;
mode = "0600";
user = "sshd";
target = "duo/pam_duo.conf";
@@ -73,7 +76,7 @@ in
};
failmode = mkOption {
- type = types.enum [ "safe" "enum" ];
+ type = types.enum [ "safe" "secure" ];
default = "safe";
description = ''
On service or configuration errors that prevent Duo
@@ -180,12 +183,6 @@ in
};
config = mkIf (cfg.ssh.enable || cfg.pam.enable) {
- assertions =
- [ { assertion = !cfg.pam.enable;
- message = "PAM support is currently not implemented.";
- }
- ];
-
environment.systemPackages = [ pkgs.duo-unix ];
security.wrappers.login_duo.source = "${pkgs.duo-unix.out}/bin/login_duo";
diff --git a/nixos/modules/security/google_oslogin.nix b/nixos/modules/security/google_oslogin.nix
new file mode 100644
index 0000000000000000000000000000000000000000..246419b681af0cadcc00246353edeb4a53fb2005
--- /dev/null
+++ b/nixos/modules/security/google_oslogin.nix
@@ -0,0 +1,68 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+ cfg = config.security.googleOsLogin;
+ package = pkgs.google-compute-engine-oslogin;
+
+in
+
+{
+
+ options = {
+
+ security.googleOsLogin.enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to enable Google OS Login
+
+ The OS Login package enables the following components:
+ AuthorizedKeysCommand to query valid SSH keys from the user's OS Login
+ profile during ssh authentication phase.
+ NSS Module to provide user and group information
+ PAM Module for the sshd service, providing authorization and
+ authentication support, allowing the system to use data stored in
+ Google Cloud IAM permissions to control both, the ability to log into
+ an instance, and to perform operations as root (sudo).
+ '';
+ };
+
+ };
+
+ config = mkIf cfg.enable {
+ security.pam.services.sshd = {
+ makeHomeDir = true;
+ googleOsLoginAccountVerification = true;
+ # disabled for now: googleOsLoginAuthentication = true;
+ };
+
+ security.sudo.extraConfig = ''
+ #includedir /run/google-sudoers.d
+ '';
+ systemd.tmpfiles.rules = [
+ "d /run/google-sudoers.d 750 root root -"
+ "d /var/google-users.d 750 root root -"
+ ];
+
+ # enable the nss module, so user lookups etc. work
+ system.nssModules = [ package ];
+
+ # Ugly: sshd refuses to start if a store path is given because /nix/store is group-writable.
+ # So indirect by a symlink.
+ environment.etc."ssh/authorized_keys_command_google_oslogin" = {
+ mode = "0755";
+ text = ''
+ #!/bin/sh
+ exec ${package}/bin/google_authorized_keys "$@"
+ '';
+ };
+ services.openssh.extraConfig = ''
+ AuthorizedKeysCommand /etc/ssh/authorized_keys_command_google_oslogin %u
+ AuthorizedKeysCommandUser nobody
+ '';
+ };
+
+}
diff --git a/nixos/modules/security/hidepid.xml b/nixos/modules/security/hidepid.xml
index d69341eb3cde18697fee94f1bf153332f3298c2c..5a17cb1da412c11114c12d390ad0a0ec58ad36b7 100644
--- a/nixos/modules/security/hidepid.xml
+++ b/nixos/modules/security/hidepid.xml
@@ -3,31 +3,26 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-hidepid">
-
- Hiding process information
-
-
- Setting
+ Hiding process information
+
+ Setting
= true;
- ensures that access to process information is restricted to the
- owning user. This implies, among other things, that command-line
- arguments remain private. Unless your deployment relies on unprivileged
- users being able to inspect the process information of other users, this
- option should be safe to enable.
-
-
-
- Members of the proc group are exempt from process
- information hiding.
-
-
-
- To allow a service foo to run without process information hiding, set
+ ensures that access to process information is restricted to the owning user.
+ This implies, among other things, that command-line arguments remain private.
+ Unless your deployment relies on unprivileged users being able to inspect the
+ process information of other users, this option should be safe to enable.
+
+
+ Members of the proc group are exempt from process
+ information hiding.
+
+
+ To allow a service foo to run without process
+ information hiding, set
systemd.services.foo.serviceConfig.SupplementaryGroups = [ "proc" ];
-
-
+
diff --git a/nixos/modules/security/lock-kernel-modules.nix b/nixos/modules/security/lock-kernel-modules.nix
index c81521ed9b085c5856e897b413856dd6fadbfb3f..fc9e7939d814860f8bceec52b33916b3449ce66f 100644
--- a/nixos/modules/security/lock-kernel-modules.nix
+++ b/nixos/modules/security/lock-kernel-modules.nix
@@ -3,6 +3,10 @@
with lib;
{
+ meta = {
+ maintainers = [ maintainers.joachifm ];
+ };
+
options = {
security.lockKernelModules = mkOption {
type = types.bool;
diff --git a/nixos/modules/security/misc.nix b/nixos/modules/security/misc.nix
new file mode 100644
index 0000000000000000000000000000000000000000..ecf22bf81c59b4c29e3132a10a46861808785ec7
--- /dev/null
+++ b/nixos/modules/security/misc.nix
@@ -0,0 +1,135 @@
+{ config, lib, ... }:
+
+with lib;
+
+{
+ meta = {
+ maintainers = [ maintainers.joachifm ];
+ };
+
+ options = {
+ security.allowUserNamespaces = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether to allow creation of user namespaces.
+
+
+
+ The motivation for disabling user namespaces is the potential
+ presence of code paths where the kernel's permission checking
+ logic fails to account for namespacing, instead permitting a
+ namespaced process to act outside the namespace with the same
+ privileges as it would have inside it. This is particularly
+ damaging in the common case of running as root within the namespace.
+
+
+
+ When user namespace creation is disallowed, attempting to create a
+ user namespace fails with "no space left on device" (ENOSPC).
+ root may re-enable user namespace creation at runtime.
+
+
+ '';
+ };
+
+ security.protectKernelImage = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to prevent replacing the running kernel image.
+ '';
+ };
+
+ security.allowSimultaneousMultithreading = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether to allow SMT/hyperthreading. Disabling SMT means that only
+ physical CPU cores will be usable at runtime, potentially at
+ significant performance cost.
+
+
+
+ The primary motivation for disabling SMT is to mitigate the risk of
+ leaking data between threads running on the same CPU core (due to
+ e.g., shared caches). This attack vector is unproven.
+
+
+
+ Disabling SMT is a supplement to the L1 data cache flushing mitigation
+ (see )
+ versus malicious VM guests (SMT could "bring back" previously flushed
+ data).
+
+
+ '';
+ };
+
+ security.virtualization.flushL1DataCache = mkOption {
+ type = types.nullOr (types.enum [ "never" "cond" "always" ]);
+ default = null;
+ description = ''
+ Whether the hypervisor should flush the L1 data cache before
+ entering guests.
+ See also .
+
+
+
+
+
+ null
+ uses the kernel default
+
+
+ "never"
+ disables L1 data cache flushing entirely.
+ May be appropriate if all guests are trusted.
+
+
+ "cond"
+ flushes L1 data cache only for pre-determined
+ code paths. May leak information about the host address space
+ layout.
+
+
+ "always"
+ flushes L1 data cache every time the hypervisor
+ enters the guest. May incur significant performance cost.
+
+
+
+ '';
+ };
+ };
+
+ config = mkMerge [
+ (mkIf (!config.security.allowUserNamespaces) {
+ # Setting the number of allowed user namespaces to 0 effectively disables
+ # the feature at runtime. Note that root may raise the limit again
+ # at any time.
+ boot.kernel.sysctl."user.max_user_namespaces" = 0;
+
+ assertions = [
+ { assertion = config.nix.useSandbox -> config.security.allowUserNamespaces;
+ message = "`nix.useSandbox = true` conflicts with `!security.allowUserNamespaces`.";
+ }
+ ];
+ })
+
+ (mkIf config.security.protectKernelImage {
+ # Disable hibernation (allows replacing the running kernel)
+ boot.kernelParams = [ "nohibernate" ];
+ # Prevent replacing the running kernel image w/o reboot
+ boot.kernel.sysctl."kernel.kexec_load_disabled" = mkDefault true;
+ })
+
+ (mkIf (!config.security.allowSimultaneousMultithreading) {
+ boot.kernelParams = [ "nosmt" ];
+ })
+
+ (mkIf (config.security.virtualization.flushL1DataCache != null) {
+ boot.kernelParams = [ "kvm-intel.vmentry_l1d_flush=${config.security.virtualization.flushL1DataCache}" ];
+ })
+ ];
+}
diff --git a/nixos/modules/security/pam.nix b/nixos/modules/security/pam.nix
index bef10b4fe614c92b5ce1693347c3896e55eb6c99..89e71c5136e43b9275c4d8aa56b0fac4c222c3f6 100644
--- a/nixos/modules/security/pam.nix
+++ b/nixos/modules/security/pam.nix
@@ -37,12 +37,24 @@ let
};
u2fAuth = mkOption {
- default = config.security.pam.enableU2F;
+ default = config.security.pam.u2f.enable;
type = types.bool;
description = ''
If set, users listed in
- ~/.config/Yubico/u2f_keys are able to log in
- with the associated U2F key.
+ $XDG_CONFIG_HOME/Yubico/u2f_keys (or
+ $HOME/.config/Yubico/u2f_keys if XDG variable is
+ not set) are able to log in with the associated U2F key. Path can be
+ changed using option.
+ '';
+ };
+
+ yubicoAuth = mkOption {
+ default = config.security.pam.yubico.enable;
+ type = types.bool;
+ description = ''
+ If set, users listed in
+ ~/.yubico/authorized_yubikeys
+ are able to log in with the asociated Yubikey tokens.
'';
};
@@ -77,6 +89,30 @@ let
'';
};
+ googleOsLoginAccountVerification = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ If set, will use the Google OS Login PAM modules
+ (pam_oslogin_login,
+ pam_oslogin_admin) to verify possible OS Login
+ users and set sudoers configuration accordingly.
+ This only makes sense to enable for the sshd PAM
+ service.
+ '';
+ };
+
+ googleOsLoginAuthentication = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ If set, will use the pam_oslogin_login's user
+ authentication methods to authenticate users using 2FA.
+ This only makes sense to enable for the sshd PAM
+ service.
+ '';
+ };
+
fprintAuth = mkOption {
default = config.services.fprintd.enable;
type = types.bool;
@@ -105,6 +141,18 @@ let
'';
};
+ duoSecurity = {
+ enable = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ If set, use the Duo Security pam module
+ pam_duo for authentication. Requires
+ configuration of options.
+ '';
+ };
+ };
+
startSession = mkOption {
default = false;
type = types.bool;
@@ -269,7 +317,7 @@ let
text = mkDefault
(''
# Account management.
- account ${if cfg.sssdStrictAccess then "required" else "sufficient"} pam_unix.so
+ account required pam_unix.so
${optionalString use_ldap
"account sufficient ${pam_ldap}/lib/security/pam_ldap.so"}
${optionalString (config.services.sssd.enable && cfg.sssdStrictAccess==false)
@@ -278,8 +326,14 @@ let
"account [default=bad success=ok user_unknown=ignore] ${pkgs.sssd}/lib/security/pam_sss.so"}
${optionalString config.krb5.enable
"account sufficient ${pam_krb5}/lib/security/pam_krb5.so"}
+ ${optionalString cfg.googleOsLoginAccountVerification ''
+ account [success=ok ignore=ignore default=die] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so
+ account [success=ok default=ignore] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_admin.so
+ ''}
# Authentication management.
+ ${optionalString cfg.googleOsLoginAuthentication
+ "auth [success=done perm_denied=bad default=ignore] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so"}
${optionalString cfg.rootOK
"auth sufficient pam_rootok.so"}
${optionalString cfg.requireWheel
@@ -290,12 +344,14 @@ let
"auth sufficient ${pkgs.pam_ssh_agent_auth}/libexec/pam_ssh_agent_auth.so file=~/.ssh/authorized_keys:~/.ssh/authorized_keys2:/etc/ssh/authorized_keys.d/%u"}
${optionalString cfg.fprintAuth
"auth sufficient ${pkgs.fprintd}/lib/security/pam_fprintd.so"}
- ${optionalString cfg.u2fAuth
- "auth sufficient ${pkgs.pam_u2f}/lib/security/pam_u2f.so"}
+ ${let u2f = config.security.pam.u2f; in optionalString cfg.u2fAuth
+ "auth ${u2f.control} ${pkgs.pam_u2f}/lib/security/pam_u2f.so ${optionalString u2f.debug "debug"} ${optionalString (u2f.authFile != null) "authfile=${u2f.authFile}"} ${optionalString u2f.interactive "interactive"} ${optionalString u2f.cue "cue"}"}
${optionalString cfg.usbAuth
"auth sufficient ${pkgs.pam_usb}/lib/security/pam_usb.so"}
${let oath = config.security.pam.oath; in optionalString cfg.oathAuth
"auth requisite ${pkgs.oathToolkit}/lib/security/pam_oath.so window=${toString oath.window} usersfile=${toString oath.usersFile} digits=${toString oath.digits}"}
+ ${let yubi = config.security.pam.yubico; in optionalString cfg.yubicoAuth
+ "auth ${yubi.control} ${pkgs.yubico-pam}/lib/security/pam_yubico.so id=${toString yubi.id} ${optionalString yubi.debug "debug"}"}
'' +
# Modules in this block require having the password set in PAM_AUTHTOK.
# pam_unix is marked as 'sufficient' on NixOS which means nothing will run
@@ -308,7 +364,8 @@ let
|| cfg.pamMount
|| cfg.enableKwallet
|| cfg.enableGnomeKeyring
- || cfg.googleAuthenticator.enable)) ''
+ || cfg.googleAuthenticator.enable
+ || cfg.duoSecurity.enable)) ''
auth required pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} likeauth
${optionalString config.security.pam.enableEcryptfs
"auth optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so unwrap"}
@@ -318,9 +375,11 @@ let
("auth optional ${pkgs.plasma5.kwallet-pam}/lib/security/pam_kwallet5.so" +
" kwalletd=${pkgs.libsForQt5.kwallet.bin}/bin/kwalletd5")}
${optionalString cfg.enableGnomeKeyring
- ("auth optional ${pkgs.gnome3.gnome-keyring}/lib/security/pam_gnome_keyring.so")}
+ "auth optional ${pkgs.gnome3.gnome-keyring}/lib/security/pam_gnome_keyring.so"}
${optionalString cfg.googleAuthenticator.enable
- "auth required ${pkgs.googleAuthenticator}/lib/security/pam_google_authenticator.so no_increment_hotp"}
+ "auth required ${pkgs.googleAuthenticator}/lib/security/pam_google_authenticator.so no_increment_hotp"}
+ ${optionalString cfg.duoSecurity.enable
+ "auth required ${pkgs.duo-unix}/lib/security/pam_duo.so"}
'') + ''
${optionalString cfg.unixAuth
"auth sufficient pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} likeauth try_first_pass"}
@@ -338,7 +397,7 @@ let
auth required pam_deny.so
# Password management.
- password requisite pam_unix.so nullok sha512
+ password sufficient pam_unix.so nullok sha512
${optionalString config.security.pam.enableEcryptfs
"password optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so"}
${optionalString cfg.pamMount
@@ -351,6 +410,8 @@ let
"password sufficient ${pam_krb5}/lib/security/pam_krb5.so use_first_pass"}
${optionalString config.services.samba.syncPasswordsByPam
"password optional ${pkgs.samba}/lib/security/pam_smbpass.so nullok use_authtok try_first_pass"}
+ ${optionalString cfg.enableGnomeKeyring
+ "password optional ${pkgs.gnome3.gnome-keyring}/lib/security/pam_gnome_keyring.so use_authtok"}
# Session management.
${optionalString cfg.setEnvironment ''
@@ -497,11 +558,144 @@ in
'';
};
- security.pam.enableU2F = mkOption {
- default = false;
- description = ''
- Enable the U2F PAM module.
- '';
+ security.pam.u2f = {
+ enable = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ Enables U2F PAM (pam-u2f) module.
+
+ If set, users listed in
+ $XDG_CONFIG_HOME/Yubico/u2f_keys (or
+ $HOME/.config/Yubico/u2f_keys if XDG variable is
+ not set) are able to log in with the associated U2F key. The path can
+ be changed using option.
+
+ File format is:
+ username:first_keyHandle,first_public_key: second_keyHandle,second_public_key
+ This file can be generated using pamu2fcfg command.
+
+ More information can be found here.
+ '';
+ };
+
+ authFile = mkOption {
+ default = null;
+ type = with types; nullOr path;
+ description = ''
+ By default pam-u2f module reads the keys from
+ $XDG_CONFIG_HOME/Yubico/u2f_keys (or
+ $HOME/.config/Yubico/u2f_keys if XDG variable is
+ not set).
+
+ If you want to change auth file locations or centralize database (for
+ example use /etc/u2f-mappings) you can set this
+ option.
+
+ File format is:
+ username:first_keyHandle,first_public_key: second_keyHandle,second_public_key
+ This file can be generated using pamu2fcfg command.
+
+ More information can be found here.
+ '';
+ };
+
+ control = mkOption {
+ default = "sufficient";
+ type = types.enum [ "required" "requisite" "sufficient" "optional" ];
+ description = ''
+ This option sets pam "control".
+ If you want to have multi factor authentication, use "required".
+ If you want to use U2F device instead of regular password, use "sufficient".
+
+ Read
+
+ pam.conf
+ 5
+
+ for better understanding of this option.
+ '';
+ };
+
+ debug = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ Debug output to stderr.
+ '';
+ };
+
+ interactive = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ Set to prompt a message and wait before testing the presence of a U2F device.
+ Recommended if your device doesn’t have a tactile trigger.
+ '';
+ };
+
+ cue = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ By default pam-u2f module does not inform user
+ that he needs to use the u2f device, it just waits without a prompt.
+
+ If you set this option to true,
+ cue option is added to pam-u2f
+ module and reminder message will be displayed.
+ '';
+ };
+ };
+
+ security.pam.yubico = {
+ enable = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ Enables Yubico PAM (yubico-pam) module.
+
+ If set, users listed in
+ ~/.yubico/authorized_yubikeys
+ are able to log in with the associated Yubikey tokens.
+
+ The file must have only one line:
+ username:yubikey_token_id1:yubikey_token_id2
+ More information can be found here.
+ '';
+ };
+ control = mkOption {
+ default = "sufficient";
+ type = types.enum [ "required" "requisite" "sufficient" "optional" ];
+ description = ''
+ This option sets pam "control".
+ If you want to have multi factor authentication, use "required".
+ If you want to use Yubikey instead of regular password, use "sufficient".
+
+ Read
+
+ pam.conf
+ 5
+
+ for better understanding of this option.
+ '';
+ };
+ id = mkOption {
+ example = "42";
+ type = types.string;
+ description = "client id";
+ };
+
+ debug = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ Debug output to stderr.
+ '';
+ };
};
security.pam.enableEcryptfs = mkOption {
@@ -533,7 +727,7 @@ in
++ optionals config.krb5.enable [pam_krb5 pam_ccreds]
++ optionals config.security.pam.enableOTPW [ pkgs.otpw ]
++ optionals config.security.pam.oath.enable [ pkgs.oathToolkit ]
- ++ optionals config.security.pam.enableU2F [ pkgs.pam_u2f ];
+ ++ optionals config.security.pam.u2f.enable [ pkgs.pam_u2f ];
boot.supportedFilesystems = optionals config.security.pam.enableEcryptfs [ "ecryptfs" ];
@@ -548,6 +742,13 @@ in
environment.etc =
mapAttrsToList (n: v: makePAMService v) config.security.pam.services;
+ systemd.tmpfiles.rules = optionals
+ (any (s: s.updateWtmp) (attrValues config.security.pam.services))
+ [
+ "f /var/log/wtmp"
+ "f /var/log/lastlog"
+ ];
+
security.pam.services =
{ other.text =
''
diff --git a/nixos/modules/security/polkit.nix b/nixos/modules/security/polkit.nix
index 04685f2c9ea15c4a18715528a27259caeb4f954a..7f1de81d5b70dfda49dcb3d99a93bd0145826049 100644
--- a/nixos/modules/security/polkit.nix
+++ b/nixos/modules/security/polkit.nix
@@ -88,11 +88,11 @@ in
"polkit-agent-helper-1".source = "${pkgs.polkit.out}/lib/polkit-1/polkit-agent-helper-1";
};
- system.activationScripts.polkit =
- ''
- # Probably no more needed, clean up
- rm -rf /var/lib/{polkit-1,PolicyKit}
- '';
+ systemd.tmpfiles.rules = [
+ # Probably no more needed, clean up
+ "R /var/lib/polkit-1"
+ "R /var/lib/PolicyKit"
+ ];
users.users.polkituser = {
description = "PolKit daemon";
diff --git a/nixos/modules/security/rngd.nix b/nixos/modules/security/rngd.nix
index 3a1ffc55e5fe99fc098e227971821d26d9574d19..a54ef2e6fcad1bd8310cf3ee6ce585aae7630517 100644
--- a/nixos/modules/security/rngd.nix
+++ b/nixos/modules/security/rngd.nix
@@ -20,7 +20,6 @@ with lib;
KERNEL=="random", TAG+="systemd"
SUBSYSTEM=="cpu", ENV{MODALIAS}=="cpu:type:x86,*feature:*009E*", TAG+="systemd", ENV{SYSTEMD_WANTS}+="rngd.service"
KERNEL=="hw_random", TAG+="systemd", ENV{SYSTEMD_WANTS}+="rngd.service"
- ${if config.services.tcsd.enable then "" else ''KERNEL=="tpm0", TAG+="systemd", ENV{SYSTEMD_WANTS}+="rngd.service"''}
'';
systemd.services.rngd = {
@@ -30,8 +29,7 @@ with lib;
description = "Hardware RNG Entropy Gatherer Daemon";
- serviceConfig.ExecStart = "${pkgs.rng_tools}/sbin/rngd -f -v" +
- (if config.services.tcsd.enable then " --no-tpm=1" else "");
+ serviceConfig.ExecStart = "${pkgs.rng-tools}/sbin/rngd -f";
};
};
}
diff --git a/nixos/modules/security/sudo.nix b/nixos/modules/security/sudo.nix
index 69a2a4f8f9ae442c219e513b4567abc098b44828..573588aaeecc04cb21c85f41bf3fbe73e328c0e0 100644
--- a/nixos/modules/security/sudo.nix
+++ b/nixos/modules/security/sudo.nix
@@ -215,7 +215,10 @@ in
environment.etc = singleton
{ source =
pkgs.runCommand "sudoers"
- { src = pkgs.writeText "sudoers-in" cfg.configFile; }
+ {
+ src = pkgs.writeText "sudoers-in" cfg.configFile;
+ preferLocalBuild = true;
+ }
# Make sure that the sudoers file is syntactically valid.
# (currently disabled - NIXOS-66)
"${pkgs.buildPackages.sudo}/sbin/visudo -f $src -c && cp $src $out";
diff --git a/nixos/modules/security/systemd-confinement.nix b/nixos/modules/security/systemd-confinement.nix
new file mode 100644
index 0000000000000000000000000000000000000000..cd4eb81dbe197e7d66e7a0f81c8586b2740a060e
--- /dev/null
+++ b/nixos/modules/security/systemd-confinement.nix
@@ -0,0 +1,199 @@
+{ config, pkgs, lib, ... }:
+
+let
+ toplevelConfig = config;
+ inherit (lib) types;
+ inherit (import ../system/boot/systemd-lib.nix {
+ inherit config pkgs lib;
+ }) mkPathSafeName;
+in {
+ options.systemd.services = lib.mkOption {
+ type = types.attrsOf (types.submodule ({ name, config, ... }: {
+ options.confinement.enable = lib.mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ If set, all the required runtime store paths for this service are
+ bind-mounted into a tmpfs-based
+ chroot
+ 2
+ .
+ '';
+ };
+
+ options.confinement.fullUnit = lib.mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to include the full closure of the systemd unit file into the
+ chroot, instead of just the dependencies for the executables.
+
+ While it may be tempting to just enable this option to
+ make things work quickly, please be aware that this might add paths
+ to the closure of the chroot that you didn't anticipate. It's better
+ to use to explicitly add additional store paths to the
+ chroot.
+ '';
+ };
+
+ options.confinement.packages = lib.mkOption {
+ type = types.listOf (types.either types.str types.package);
+ default = [];
+ description = let
+ mkScOption = optName: "";
+ in ''
+ Additional packages or strings with context to add to the closure of
+ the chroot. By default, this includes all the packages from the
+ ${lib.concatMapStringsSep ", " mkScOption [
+ "ExecReload" "ExecStartPost" "ExecStartPre" "ExecStop"
+ "ExecStopPost"
+ ]} and ${mkScOption "ExecStart"} options. If you want to have all the
+ dependencies of this systemd unit, you can use
+ .
+
+ The store paths listed in are
+ not included in the closure as
+ well as paths from other options except those listed
+ above.
+ '';
+ };
+
+ options.confinement.binSh = lib.mkOption {
+ type = types.nullOr types.path;
+ default = toplevelConfig.environment.binsh;
+ defaultText = "config.environment.binsh";
+ example = lib.literalExample "\${pkgs.dash}/bin/dash";
+ description = ''
+ The program to make available as /bin/sh inside
+ the chroot. If this is set to null, no
+ /bin/sh is provided at all.
+
+ This is useful for some applications, which for example use the
+
+ system
+ 3
+ library function to execute commands.
+ '';
+ };
+
+ options.confinement.mode = lib.mkOption {
+ type = types.enum [ "full-apivfs" "chroot-only" ];
+ default = "full-apivfs";
+ description = ''
+ The value full-apivfs (the default) sets up
+ private /dev, /proc, /sys and /tmp file systems in a separate user
+ name space.
+
+ If this is set to chroot-only, only the file
+ system name space is set up along with the call to
+ chroot
+ 2
+ .
+
+ This doesn't cover network namespaces and is solely for
+ file system level isolation.
+ '';
+ };
+
+ config = let
+ rootName = "${mkPathSafeName name}-chroot";
+ inherit (config.confinement) binSh fullUnit;
+ wantsAPIVFS = lib.mkDefault (config.confinement.mode == "full-apivfs");
+ in lib.mkIf config.confinement.enable {
+ serviceConfig = {
+ RootDirectory = pkgs.runCommand rootName {} "mkdir \"$out\"";
+ TemporaryFileSystem = "/";
+ PrivateMounts = lib.mkDefault true;
+
+ # https://github.com/NixOS/nixpkgs/issues/14645 is a future attempt
+ # to change some of these to default to true.
+ #
+ # If we run in chroot-only mode, having something like PrivateDevices
+ # set to true by default will mount /dev within the chroot, whereas
+ # with "chroot-only" it's expected that there are no /dev, /proc and
+ # /sys file systems available.
+ #
+ # However, if this suddenly becomes true, the attack surface will
+ # increase, so let's explicitly set these options to true/false
+ # depending on the mode.
+ MountAPIVFS = wantsAPIVFS;
+ PrivateDevices = wantsAPIVFS;
+ PrivateTmp = wantsAPIVFS;
+ PrivateUsers = wantsAPIVFS;
+ ProtectControlGroups = wantsAPIVFS;
+ ProtectKernelModules = wantsAPIVFS;
+ ProtectKernelTunables = wantsAPIVFS;
+ };
+ confinement.packages = let
+ execOpts = [
+ "ExecReload" "ExecStart" "ExecStartPost" "ExecStartPre" "ExecStop"
+ "ExecStopPost"
+ ];
+ execPkgs = lib.concatMap (opt: let
+ isSet = config.serviceConfig ? ${opt};
+ in lib.optional isSet config.serviceConfig.${opt}) execOpts;
+ unitAttrs = toplevelConfig.systemd.units."${name}.service";
+ allPkgs = lib.singleton (builtins.toJSON unitAttrs);
+ unitPkgs = if fullUnit then allPkgs else execPkgs;
+ in unitPkgs ++ lib.optional (binSh != null) binSh;
+ };
+ }));
+ };
+
+ config.assertions = lib.concatLists (lib.mapAttrsToList (name: cfg: let
+ whatOpt = optName: "The 'serviceConfig' option '${optName}' for"
+ + " service '${name}' is enabled in conjunction with"
+ + " 'confinement.enable'";
+ in lib.optionals cfg.confinement.enable [
+ { assertion = !cfg.serviceConfig.RootDirectoryStartOnly or false;
+ message = "${whatOpt "RootDirectoryStartOnly"}, but right now systemd"
+ + " doesn't support restricting bind-mounts to 'ExecStart'."
+ + " Please either define a separate service or find a way to run"
+ + " commands other than ExecStart within the chroot.";
+ }
+ { assertion = !cfg.serviceConfig.DynamicUser or false;
+ message = "${whatOpt "DynamicUser"}. Please create a dedicated user via"
+ + " the 'users.users' option instead as this combination is"
+ + " currently not supported.";
+ }
+ ]) config.systemd.services);
+
+ config.systemd.packages = lib.concatLists (lib.mapAttrsToList (name: cfg: let
+ rootPaths = let
+ contents = lib.concatStringsSep "\n" cfg.confinement.packages;
+ in pkgs.writeText "${mkPathSafeName name}-string-contexts.txt" contents;
+
+ chrootPaths = pkgs.runCommand "${mkPathSafeName name}-chroot-paths" {
+ closureInfo = pkgs.closureInfo { inherit rootPaths; };
+ serviceName = "${name}.service";
+ excludedPath = rootPaths;
+ } ''
+ mkdir -p "$out/lib/systemd/system"
+ serviceFile="$out/lib/systemd/system/$serviceName"
+
+ echo '[Service]' > "$serviceFile"
+
+ # /bin/sh is special here, because the option value could contain a
+ # symlink and we need to properly resolve it.
+ ${lib.optionalString (cfg.confinement.binSh != null) ''
+ binsh=${lib.escapeShellArg cfg.confinement.binSh}
+ realprog="$(readlink -e "$binsh")"
+ echo "BindReadOnlyPaths=$realprog:/bin/sh" >> "$serviceFile"
+ ''}
+
+ while read storePath; do
+ if [ -L "$storePath" ]; then
+ # Currently, systemd can't cope with symlinks in Bind(ReadOnly)Paths,
+ # so let's just bind-mount the target to that location.
+ echo "BindReadOnlyPaths=$(readlink -e "$storePath"):$storePath"
+ elif [ "$storePath" != "$excludedPath" ]; then
+ echo "BindReadOnlyPaths=$storePath"
+ fi
+ done < "$closureInfo/store-paths" >> "$serviceFile"
+ '';
+ in lib.optional cfg.confinement.enable chrootPaths) config.systemd.services);
+}
diff --git a/nixos/modules/security/wrappers/default.nix b/nixos/modules/security/wrappers/default.nix
index 77e4b2a616d8ef404d91693c3277e48424c7f7b5..dcb9c8d4ed5f3acf73c5c7bf559c3073b913f875 100644
--- a/nixos/modules/security/wrappers/default.nix
+++ b/nixos/modules/security/wrappers/default.nix
@@ -180,35 +180,6 @@ in
# programs to be wrapped.
WRAPPER_PATH=${config.system.path}/bin:${config.system.path}/sbin
- # Remove the old /var/setuid-wrappers path from the system...
- #
- # TODO: this is only necessary for upgrades 16.09 => 17.x;
- # this conditional removal block needs to be removed after
- # the release.
- if [ -d /var/setuid-wrappers ]; then
- rm -rf /var/setuid-wrappers
- ln -s /run/wrappers/bin /var/setuid-wrappers
- fi
-
- # Remove the old /run/setuid-wrappers-dir path from the
- # system as well...
- #
- # TODO: this is only necessary for upgrades 16.09 => 17.x;
- # this conditional removal block needs to be removed after
- # the release.
- if [ -d /run/setuid-wrapper-dirs ]; then
- rm -rf /run/setuid-wrapper-dirs
- ln -s /run/wrappers/bin /run/setuid-wrapper-dirs
- fi
-
- # TODO: this is only necessary for upgrades 16.09 => 17.x;
- # this conditional removal block needs to be removed after
- # the release.
- if readlink -f /run/booted-system | grep nixos-17 > /dev/null; then
- rm -rf /run/setuid-wrapper-dirs
- rm -rf /var/setuid-wrappers
- fi
-
# We want to place the tmpdirs for the wrappers to the parent dir.
wrapperDir=$(mktemp --directory --tmpdir="${parentWrapperDir}" wrappers.XXXXXXXXXX)
chmod a+rx $wrapperDir
diff --git a/nixos/modules/services/admin/oxidized.nix b/nixos/modules/services/admin/oxidized.nix
index 70f7dd9e36475a193852a3f7c2e2c5bc6dca8cae..687cdfb5ba5754454932e96cd5d6df71fe275805 100644
--- a/nixos/modules/services/admin/oxidized.nix
+++ b/nixos/modules/services/admin/oxidized.nix
@@ -7,7 +7,7 @@ let
in
{
options.services.oxidized = {
- enable = mkEnableOption "the oxidized configuation backup service.";
+ enable = mkEnableOption "the oxidized configuration backup service";
user = mkOption {
type = types.str;
diff --git a/nixos/modules/services/admin/salt/master.nix b/nixos/modules/services/admin/salt/master.nix
index 165580b978374c4c0d5dc35cf5eff8deae365800..c6b1b0cc0bd8e3c33e15e42674704120131cd3b4 100644
--- a/nixos/modules/services/admin/salt/master.nix
+++ b/nixos/modules/services/admin/salt/master.nix
@@ -53,6 +53,9 @@ in
Type = "notify";
NotifyAccess = "all";
};
+ restartTriggers = [
+ config.environment.etc."salt/master".source
+ ];
};
};
diff --git a/nixos/modules/services/admin/salt/minion.nix b/nixos/modules/services/admin/salt/minion.nix
index 9ecefb32cfa8fa5713aea0a62ab0951d3b756633..c8fa9461a209472829fc8588495e0d18c653a0e4 100644
--- a/nixos/modules/services/admin/salt/minion.nix
+++ b/nixos/modules/services/admin/salt/minion.nix
@@ -15,7 +15,6 @@ let
# Default is in /etc/salt/pki/minion
pki_dir = "/var/lib/salt/pki/minion";
} cfg.configuration;
- configDir = pkgs.writeTextDir "minion" (builtins.toJSON fullConfig);
in
@@ -28,15 +27,24 @@ in
default = {};
description = ''
Salt minion configuration as Nix attribute set.
- See
- for details.
+ See
+ for details.
'';
};
};
};
config = mkIf cfg.enable {
- environment.systemPackages = with pkgs; [ salt ];
+ environment = {
+ # Set this up in /etc/salt/minion so `salt-call`, etc. work.
+ # The alternatives are
+ # - passing --config-dir to all salt commands, not just the minion unit,
+ # - setting aglobal environment variable.
+ etc."salt/minion".source = pkgs.writeText "minion" (
+ builtins.toJSON fullConfig
+ );
+ systemPackages = with pkgs; [ salt ];
+ };
systemd.services.salt-minion = {
description = "Salt Minion";
wantedBy = [ "multi-user.target" ];
@@ -45,11 +53,14 @@ in
utillinux
];
serviceConfig = {
- ExecStart = "${pkgs.salt}/bin/salt-minion --config-dir=${configDir}";
+ ExecStart = "${pkgs.salt}/bin/salt-minion";
LimitNOFILE = 8192;
Type = "notify";
NotifyAccess = "all";
};
+ restartTriggers = [
+ config.environment.etc."salt/minion".source
+ ];
};
};
}
diff --git a/nixos/modules/services/amqp/rabbitmq.nix b/nixos/modules/services/amqp/rabbitmq.nix
index bb6fc0a104dff90dcac9766b756c791e4a1c932b..302b94de1965cdfff13a46c6f35e37b14632752f 100644
--- a/nixos/modules/services/amqp/rabbitmq.nix
+++ b/nixos/modules/services/amqp/rabbitmq.nix
@@ -4,14 +4,18 @@ with lib;
let
cfg = config.services.rabbitmq;
- config_file = pkgs.writeText "rabbitmq.config" cfg.config;
- config_file_wo_suffix = builtins.substring 0 ((builtins.stringLength config_file) - 7) config_file;
+
+ inherit (builtins) concatStringsSep;
+
+ config_file_content = lib.generators.toKeyValue {} cfg.configItems;
+ config_file = pkgs.writeText "rabbitmq.conf" config_file_content;
+
+ advanced_config_file = pkgs.writeText "advanced.config" cfg.config;
in {
###### interface
options = {
services.rabbitmq = {
-
enable = mkOption {
default = false;
description = ''
@@ -20,6 +24,15 @@ in {
'';
};
+ package = mkOption {
+ default = pkgs.rabbitmq-server;
+ type = types.package;
+ defaultText = "pkgs.rabbitmq-server";
+ description = ''
+ Which rabbitmq package to use.
+ '';
+ };
+
listenAddress = mkOption {
default = "127.0.0.1";
example = "";
@@ -30,6 +43,10 @@ in {
guest with password
guest by default, so you should delete
this user if you intend to allow external access.
+
+ Together with 'port' setting it's mostly an alias for
+ configItems."listeners.tcp.1" and it's left for backwards
+ compatibility with previous version of this module.
'';
type = types.str;
};
@@ -60,12 +77,47 @@ in {
'';
};
+ configItems = mkOption {
+ default = {};
+ type = types.attrsOf types.str;
+ example = ''
+ {
+ "auth_backends.1.authn" = "rabbit_auth_backend_ldap";
+ "auth_backends.1.authz" = "rabbit_auth_backend_internal";
+ }
+ '';
+ description = ''
+ Configuration options in RabbitMQ's new config file format,
+ which is a simple key-value format that can not express nested
+ data structures. This is known as the rabbitmq.conf file,
+ although outside NixOS that filename may have Erlang syntax, particularly
+ prior to RabbitMQ 3.7.0.
+
+ If you do need to express nested data structures, you can use
+ config option. Configuration from config
+ will be merged into these options by RabbitMQ at runtime to
+ form the final configuration.
+
+ See http://www.rabbitmq.com/configure.html#config-items
+ For the distinct formats, see http://www.rabbitmq.com/configure.html#config-file-formats
+ '';
+ };
+
config = mkOption {
default = "";
type = types.str;
description = ''
- Verbatim configuration file contents.
- See http://www.rabbitmq.com/configure.html
+ Verbatim advanced configuration file contents using the Erlang syntax.
+ This is also known as the advanced.config file or the old config format.
+
+ configItems is preferred whenever possible. However, nested
+ data structures can only be expressed properly using the config option.
+
+ The contents of this option will be merged into the configItems
+ by RabbitMQ at runtime to form the final configuration.
+
+ See the second table on http://www.rabbitmq.com/configure.html#config-items
+ For the distinct formats, see http://www.rabbitmq.com/configure.html#config-file-formats
'';
};
@@ -74,6 +126,12 @@ in {
type = types.listOf types.str;
description = "The names of plugins to enable";
};
+
+ pluginDirs = mkOption {
+ default = [];
+ type = types.listOf types.path;
+ description = "The list of directories containing external plugins";
+ };
};
};
@@ -81,7 +139,10 @@ in {
###### implementation
config = mkIf cfg.enable {
- environment.systemPackages = [ pkgs.rabbitmq_server ];
+ # This is needed so we will have 'rabbitmqctl' in our PATH
+ environment.systemPackages = [ cfg.package ];
+
+ services.epmd.enable = true;
users.users.rabbitmq = {
description = "RabbitMQ server user";
@@ -93,39 +154,46 @@ in {
users.groups.rabbitmq.gid = config.ids.gids.rabbitmq;
+ services.rabbitmq.configItems = {
+ "listeners.tcp.1" = mkDefault "${cfg.listenAddress}:${toString cfg.port}";
+ };
+
systemd.services.rabbitmq = {
description = "RabbitMQ Server";
wantedBy = [ "multi-user.target" ];
- after = [ "network.target" ];
+ after = [ "network.target" "epmd.socket" ];
+ wants = [ "network.target" "epmd.socket" ];
- path = [ pkgs.rabbitmq_server pkgs.procps ];
+ path = [ cfg.package pkgs.procps ];
environment = {
RABBITMQ_MNESIA_BASE = "${cfg.dataDir}/mnesia";
- RABBITMQ_NODE_IP_ADDRESS = cfg.listenAddress;
- RABBITMQ_NODE_PORT = toString cfg.port;
RABBITMQ_LOGS = "-";
- RABBITMQ_SASL_LOGS = "-";
- RABBITMQ_PID_FILE = "${cfg.dataDir}/pid";
SYS_PREFIX = "";
+ RABBITMQ_CONFIG_FILE = config_file;
+ RABBITMQ_PLUGINS_DIR = concatStringsSep ":" cfg.pluginDirs;
RABBITMQ_ENABLED_PLUGINS_FILE = pkgs.writeText "enabled_plugins" ''
[ ${concatStringsSep "," cfg.plugins} ].
'';
- } // optionalAttrs (cfg.config != "") { RABBITMQ_CONFIG_FILE = config_file_wo_suffix; };
+ } // optionalAttrs (cfg.config != "") { RABBITMQ_ADVANCED_CONFIG_FILE = advanced_config_file; };
serviceConfig = {
- ExecStart = "${pkgs.rabbitmq_server}/sbin/rabbitmq-server";
- ExecStop = "${pkgs.rabbitmq_server}/sbin/rabbitmqctl stop";
+ ExecStart = "${cfg.package}/sbin/rabbitmq-server";
+ ExecStop = "${cfg.package}/sbin/rabbitmqctl shutdown";
User = "rabbitmq";
Group = "rabbitmq";
+ LogsDirectory = "rabbitmq";
WorkingDirectory = cfg.dataDir;
+ Type = "notify";
+ NotifyAccess = "all";
+ UMask = "0027";
+ LimitNOFILE = "100000";
+ Restart = "on-failure";
+ RestartSec = "10";
+ TimeoutStartSec = "3600";
};
- postStart = ''
- rabbitmqctl wait ${cfg.dataDir}/pid
- '';
-
preStart = ''
${optionalString (cfg.cookie != "") ''
echo -n ${cfg.cookie} > ${cfg.dataDir}/.erlang.cookie
diff --git a/nixos/modules/services/audio/liquidsoap.nix b/nixos/modules/services/audio/liquidsoap.nix
index 66f84ef207622d869d8b8db3b63c2cc59b4b5a8f..3a047d10a6314d79767bab90aa68878a39faf885 100644
--- a/nixos/modules/services/audio/liquidsoap.nix
+++ b/nixos/modules/services/audio/liquidsoap.nix
@@ -14,15 +14,10 @@ let
description = "${name} liquidsoap stream";
wantedBy = [ "multi-user.target" ];
path = [ pkgs.wget ];
- preStart =
- ''
- mkdir -p /var/log/liquidsoap
- chown liquidsoap -R /var/log/liquidsoap
- '';
serviceConfig = {
- PermissionsStartOnly="true";
ExecStart = "${pkgs.liquidsoap}/bin/liquidsoap ${stream}";
User = "liquidsoap";
+ LogsDirectory = "liquidsoap";
};
};
};
diff --git a/nixos/modules/services/audio/mpd.nix b/nixos/modules/services/audio/mpd.nix
index 5bfe2b6a22ad78fc8b73a04e0d9c8c02ecda3ec4..0df8f9688d2540683536f10892b73f83f07622f2 100644
--- a/nixos/modules/services/audio/mpd.nix
+++ b/nixos/modules/services/audio/mpd.nix
@@ -158,18 +158,18 @@ in {
};
};
+ systemd.tmpfiles.rules = [
+ "d '${cfg.dataDir}' - ${cfg.user} ${cfg.group} - -"
+ "d '${cfg.playlistDirectory}' - ${cfg.user} ${cfg.group} - -"
+ ];
+
systemd.services.mpd = {
after = [ "network.target" "sound.target" ];
description = "Music Player Daemon";
wantedBy = optional (!cfg.startWhenNeeded) "multi-user.target";
- preStart = ''
- mkdir -p "${cfg.dataDir}" && chown -R ${cfg.user}:${cfg.group} "${cfg.dataDir}"
- mkdir -p "${cfg.playlistDirectory}" && chown -R ${cfg.user}:${cfg.group} "${cfg.playlistDirectory}"
- '';
serviceConfig = {
User = "${cfg.user}";
- PermissionsStartOnly = true;
ExecStart = "${pkgs.mpd}/bin/mpd --no-daemon ${mpdConf}";
Type = "notify";
LimitRTPRIO = 50;
diff --git a/nixos/modules/services/audio/snapserver.nix b/nixos/modules/services/audio/snapserver.nix
new file mode 100644
index 0000000000000000000000000000000000000000..f709dd7fe16bfcb193b5c01acdd6ca178094e31e
--- /dev/null
+++ b/nixos/modules/services/audio/snapserver.nix
@@ -0,0 +1,217 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+ package = "snapcast";
+ name = "snapserver";
+
+ cfg = config.services.snapserver;
+
+ # Using types.nullOr to inherit upstream defaults.
+ sampleFormat = mkOption {
+ type = with types; nullOr str;
+ default = null;
+ description = ''
+ Default sample format.
+ '';
+ example = "48000:16:2";
+ };
+
+ codec = mkOption {
+ type = with types; nullOr str;
+ default = null;
+ description = ''
+ Default audio compression method.
+ '';
+ example = "flac";
+ };
+
+ streamToOption = name: opt:
+ let
+ os = val:
+ optionalString (val != null) "${val}";
+ os' = prefixx: val:
+ optionalString (val != null) (prefixx + "${val}");
+ flatten = key: value:
+ "&${key}=${value}";
+ in
+ "-s ${opt.type}://" + os opt.location + "?" + os' "name=" name
+ + concatStrings (mapAttrsToList flatten opt.query);
+
+ optionalNull = val: ret:
+ optional (val != null) ret;
+
+ optionString = concatStringsSep " " (mapAttrsToList streamToOption cfg.streams
+ ++ ["-p ${toString cfg.port}"]
+ ++ ["--controlPort ${toString cfg.controlPort}"]
+ ++ optionalNull cfg.sampleFormat "--sampleFormat ${cfg.sampleFormat}"
+ ++ optionalNull cfg.codec "-c ${cfg.codec}"
+ ++ optionalNull cfg.streamBuffer "--streamBuffer ${cfg.streamBuffer}"
+ ++ optionalNull cfg.buffer "-b ${cfg.buffer}"
+ ++ optional cfg.sendToMuted "--sendToMuted");
+
+in {
+
+ ###### interface
+
+ options = {
+
+ services.snapserver = {
+
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to enable snapserver.
+ '';
+ };
+
+ port = mkOption {
+ type = types.port;
+ default = 1704;
+ description = ''
+ The port that snapclients can connect to.
+ '';
+ };
+
+ controlPort = mkOption {
+ type = types.port;
+ default = 1705;
+ description = ''
+ The port for control connections (JSON-RPC).
+ '';
+ };
+
+ openFirewall = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether to automatically open the specified ports in the firewall.
+ '';
+ };
+
+ inherit sampleFormat;
+ inherit codec;
+
+ streams = mkOption {
+ type = with types; attrsOf (submodule {
+ options = {
+ location = mkOption {
+ type = types.path;
+ description = ''
+ The location of the pipe.
+ '';
+ };
+ type = mkOption {
+ type = types.enum [ "pipe" "file" "process" "spotify" "airplay" ];
+ default = "pipe";
+ description = ''
+ The type of input stream.
+ '';
+ };
+ query = mkOption {
+ type = attrsOf str;
+ default = {};
+ description = ''
+ Key-value pairs that convey additional parameters about a stream.
+ '';
+ example = literalExample ''
+ # for type == "pipe":
+ {
+ mode = "listen";
+ };
+ # for type == "process":
+ {
+ params = "--param1 --param2";
+ logStderr = "true";
+ };
+ '';
+ };
+ inherit sampleFormat;
+ inherit codec;
+ };
+ });
+ default = { default = {}; };
+ description = ''
+ The definition for an input source.
+ '';
+ example = literalExample ''
+ {
+ mpd = {
+ type = "pipe";
+ location = "/run/snapserver/mpd";
+ sampleFormat = "48000:16:2";
+ codec = "pcm";
+ };
+ };
+ '';
+ };
+
+ streamBuffer = mkOption {
+ type = with types; nullOr int;
+ default = null;
+ description = ''
+ Stream read (input) buffer in ms.
+ '';
+ example = 20;
+ };
+
+ buffer = mkOption {
+ type = with types; nullOr int;
+ default = null;
+ description = ''
+ Network buffer in ms.
+ '';
+ example = 1000;
+ };
+
+ sendToMuted = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Send audio to muted clients.
+ '';
+ };
+ };
+
+ };
+
+
+ ###### implementation
+
+ config = mkIf cfg.enable {
+
+ systemd.services.snapserver = {
+ after = [ "network.target" ];
+ description = "Snapserver";
+ wantedBy = [ "multi-user.target" ];
+ before = [ "mpd.service" "mopidy.service" ];
+
+ serviceConfig = {
+ DynamicUser = true;
+ ExecStart = "${pkgs.snapcast}/bin/snapserver --daemon ${optionString}";
+ Type = "forking";
+ LimitRTPRIO = 50;
+ LimitRTTIME = "infinity";
+ NoNewPrivileges = true;
+ PIDFile = "/run/${name}/pid";
+ ProtectKernelTunables = true;
+ ProtectControlGroups = true;
+ ProtectKernelModules = true;
+ RestrictAddressFamilies = "AF_INET AF_INET6 AF_UNIX";
+ RestrictNamespaces = true;
+ RuntimeDirectory = name;
+ StateDirectory = name;
+ };
+ };
+
+ networking.firewall.allowedTCPPorts = optionals cfg.openFirewall [ cfg.port cfg.controlPort ];
+ };
+
+ meta = {
+ maintainers = with maintainers; [ tobim ];
+ };
+
+}
diff --git a/nixos/modules/services/audio/squeezelite.nix b/nixos/modules/services/audio/squeezelite.nix
index 57ae385599394dfff178b33b588dc993d9e69bc4..05506f5bcc7ace2f97bfe88ed6a0d350bee5388e 100644
--- a/nixos/modules/services/audio/squeezelite.nix
+++ b/nixos/modules/services/audio/squeezelite.nix
@@ -3,8 +3,7 @@
with lib;
let
-
- uid = config.ids.uids.squeezelite;
+ dataDir = "/var/lib/squeezelite";
cfg = config.services.squeezelite;
in {
@@ -17,14 +16,6 @@ in {
enable = mkEnableOption "Squeezelite, a software Squeezebox emulator";
- dataDir = mkOption {
- default = "/var/lib/squeezelite";
- type = types.str;
- description = ''
- The directory where Squeezelite stores its name file.
- '';
- };
-
extraArguments = mkOption {
default = "";
type = types.str;
@@ -46,22 +37,14 @@ in {
wantedBy = [ "multi-user.target" ];
after = [ "network.target" "sound.target" ];
description = "Software Squeezebox emulator";
- preStart = "mkdir -p ${cfg.dataDir} && chown -R squeezelite ${cfg.dataDir}";
serviceConfig = {
- ExecStart = "${pkgs.squeezelite}/bin/squeezelite -N ${cfg.dataDir}/player-name ${cfg.extraArguments}";
- User = "squeezelite";
- PermissionsStartOnly = true;
+ DynamicUser = true;
+ ExecStart = "${pkgs.squeezelite}/bin/squeezelite -N ${dataDir}/player-name ${cfg.extraArguments}";
+ StateDirectory = builtins.baseNameOf dataDir;
+ SupplementaryGroups = "audio";
};
};
- users.users.squeezelite= {
- inherit uid;
- group = "nogroup";
- extraGroups = [ "audio" ];
- description = "Squeezelite user";
- home = "${cfg.dataDir}";
- };
-
};
}
diff --git a/nixos/modules/services/audio/ympd.nix b/nixos/modules/services/audio/ympd.nix
index d34c1c9d83cc23d21f7064dcc8145663597dbcc1..919b766225107b59f3dd04a0c8a4372a62477e6b 100644
--- a/nixos/modules/services/audio/ympd.nix
+++ b/nixos/modules/services/audio/ympd.nix
@@ -15,7 +15,7 @@ in {
enable = mkEnableOption "ympd, the MPD Web GUI";
webPort = mkOption {
- type = types.string;
+ type = types.either types.str types.port; # string for backwards compat
default = "8080";
description = "The port where ympd's web interface will be available.";
example = "ssl://8080:/path/to/ssl-private-key.pem";
@@ -49,7 +49,7 @@ in {
systemd.services.ympd = {
description = "Standalone MPD Web GUI written in C";
wantedBy = [ "multi-user.target" ];
- serviceConfig.ExecStart = "${pkgs.ympd}/bin/ympd --host ${cfg.mpd.host} --port ${toString cfg.mpd.port} --webport ${cfg.webPort} --user nobody";
+ serviceConfig.ExecStart = "${pkgs.ympd}/bin/ympd --host ${cfg.mpd.host} --port ${toString cfg.mpd.port} --webport ${toString cfg.webPort} --user nobody";
};
};
diff --git a/nixos/modules/services/backup/automysqlbackup.nix b/nixos/modules/services/backup/automysqlbackup.nix
new file mode 100644
index 0000000000000000000000000000000000000000..b845f370fb7067454c22c12738067b31791581dd
--- /dev/null
+++ b/nixos/modules/services/backup/automysqlbackup.nix
@@ -0,0 +1,115 @@
+{ config, lib, pkgs, ... }:
+
+let
+
+ inherit (lib) concatMapStringsSep concatStringsSep isInt isList literalExample;
+ inherit (lib) mapAttrs mapAttrsToList mkDefault mkEnableOption mkIf mkOption optional types;
+
+ cfg = config.services.automysqlbackup;
+ pkg = pkgs.automysqlbackup;
+ user = "automysqlbackup";
+ group = "automysqlbackup";
+
+ toStr = val:
+ if isList val then "( ${concatMapStringsSep " " (val: "'${val}'") val} )"
+ else if isInt val then toString val
+ else if true == val then "'yes'"
+ else if false == val then "'no'"
+ else "'${toString val}'";
+
+ configFile = pkgs.writeText "automysqlbackup.conf" ''
+ #version=${pkg.version}
+ # DONT'T REMOVE THE PREVIOUS VERSION LINE!
+ #
+ ${concatStringsSep "\n" (mapAttrsToList (name: value: "CONFIG_${name}=${toStr value}") cfg.config)}
+ '';
+
+in
+{
+ # interface
+ options = {
+ services.automysqlbackup = {
+
+ enable = mkEnableOption "AutoMySQLBackup";
+
+ calendar = mkOption {
+ type = types.str;
+ default = "01:15:00";
+ description = ''
+ Configured when to run the backup service systemd unit (DayOfWeek Year-Month-Day Hour:Minute:Second).
+ '';
+ };
+
+ config = mkOption {
+ type = with types; attrsOf (either (either str (either int bool)) (listOf str));
+ default = {};
+ description = ''
+ automysqlbackup configuration. Refer to
+ ''${pkgs.automysqlbackup}/etc/automysqlbackup.conf
+ for details on supported values.
+ '';
+ example = literalExample ''
+ {
+ db_names = [ "nextcloud" "matomo" ];
+ table_exclude = [ "nextcloud.oc_users" "nextcloud.oc_whats_new" ];
+ mailcontent = "log";
+ mail_address = "admin@example.org";
+ }
+ '';
+ };
+
+ };
+ };
+
+ # implementation
+ config = mkIf cfg.enable {
+
+ assertions = [
+ { assertion = !config.services.mysqlBackup.enable;
+ message = "Please choose one of services.mysqlBackup or services.automysqlbackup.";
+ }
+ ];
+
+ services.automysqlbackup.config = mapAttrs (name: mkDefault) {
+ mysql_dump_username = user;
+ mysql_dump_host = "localhost";
+ backup_dir = "/var/backup/mysql";
+ db_exclude = [ "information_schema" "performance_schema" ];
+ mailcontent = "stdout";
+ mysql_dump_single_transaction = true;
+ };
+
+ systemd.timers.automysqlbackup = {
+ description = "automysqlbackup timer";
+ wantedBy = [ "timers.target" ];
+ timerConfig = {
+ OnCalendar = cfg.calendar;
+ AccuracySec = "5m";
+ };
+ };
+
+ systemd.services.automysqlbackup = {
+ description = "automysqlbackup service";
+ serviceConfig = {
+ User = user;
+ Group = group;
+ ExecStart = "${pkg}/bin/automysqlbackup ${configFile}";
+ };
+ };
+
+ environment.systemPackages = [ pkg ];
+
+ users.users.${user}.group = group;
+ users.groups.${group} = { };
+
+ systemd.tmpfiles.rules = [
+ "d '${cfg.config.backup_dir}' 0750 ${user} ${group} - -"
+ ];
+
+ services.mysql.ensureUsers = optional (config.services.mysql.enable && cfg.config.mysql_dump_host == "localhost") {
+ name = user;
+ ensurePermissions = { "*.*" = "SELECT, SHOW VIEW, TRIGGER, LOCK TABLES"; };
+ };
+
+ };
+}
diff --git a/nixos/modules/services/backup/bacula.nix b/nixos/modules/services/backup/bacula.nix
index a0565ca26204b6c1be1c1f69dacd8517be83821f..41bda7893a757b23672339d36327211a3783e2a5 100644
--- a/nixos/modules/services/backup/bacula.nix
+++ b/nixos/modules/services/backup/bacula.nix
@@ -15,7 +15,7 @@ let
Name = "${fd_cfg.name}";
FDPort = ${toString fd_cfg.port};
WorkingDirectory = "${libDir}";
- Pid Directory = "/var/run";
+ Pid Directory = "/run";
${fd_cfg.extraClientConfig}
}
@@ -41,7 +41,7 @@ let
Name = "${sd_cfg.name}";
SDPort = ${toString sd_cfg.port};
WorkingDirectory = "${libDir}";
- Pid Directory = "/var/run";
+ Pid Directory = "/run";
${sd_cfg.extraStorageConfig}
}
@@ -77,7 +77,7 @@ let
Password = "${dir_cfg.password}";
DirPort = ${toString dir_cfg.port};
Working Directory = "${libDir}";
- Pid Directory = "/var/run/";
+ Pid Directory = "/run/";
QueryFile = "${pkgs.bacula}/etc/query.sql";
${dir_cfg.extraDirectorConfig}
}
@@ -346,8 +346,12 @@ in {
description = "Bacula File Daemon";
wantedBy = [ "multi-user.target" ];
path = [ pkgs.bacula ];
- serviceConfig.ExecStart = "${pkgs.bacula}/sbin/bacula-fd -f -u root -g bacula -c ${fd_conf}";
- serviceConfig.ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+ serviceConfig = {
+ ExecStart = "${pkgs.bacula}/sbin/bacula-fd -f -u root -g bacula -c ${fd_conf}";
+ ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+ LogsDirectory = "bacula";
+ StateDirectory = "bacula";
+ };
};
systemd.services.bacula-sd = mkIf sd_cfg.enable {
@@ -355,8 +359,12 @@ in {
description = "Bacula Storage Daemon";
wantedBy = [ "multi-user.target" ];
path = [ pkgs.bacula ];
- serviceConfig.ExecStart = "${pkgs.bacula}/sbin/bacula-sd -f -u bacula -g bacula -c ${sd_conf}";
- serviceConfig.ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+ serviceConfig = {
+ ExecStart = "${pkgs.bacula}/sbin/bacula-sd -f -u bacula -g bacula -c ${sd_conf}";
+ ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+ LogsDirectory = "bacula";
+ StateDirectory = "bacula";
+ };
};
services.postgresql.enable = dir_cfg.enable == true;
@@ -366,8 +374,12 @@ in {
description = "Bacula Director Daemon";
wantedBy = [ "multi-user.target" ];
path = [ pkgs.bacula ];
- serviceConfig.ExecStart = "${pkgs.bacula}/sbin/bacula-dir -f -u bacula -g bacula -c ${dir_conf}";
- serviceConfig.ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+ serviceConfig = {
+ ExecStart = "${pkgs.bacula}/sbin/bacula-dir -f -u bacula -g bacula -c ${dir_conf}";
+ ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+ LogsDirectory = "bacula";
+ StateDirectory = "bacula";
+ };
preStart = ''
if ! test -e "${libDir}/db-created"; then
${pkgs.postgresql}/bin/createuser --no-superuser --no-createdb --no-createrole bacula
diff --git a/nixos/modules/services/backup/borgbackup.nix b/nixos/modules/services/backup/borgbackup.nix
index 415a70ea5ad41e41dbc6f3c70df361d68f32a8ae..2ad116a7872ade8234b6993e82d6d6255b0ec3f0 100644
--- a/nixos/modules/services/backup/borgbackup.nix
+++ b/nixos/modules/services/backup/borgbackup.nix
@@ -191,10 +191,9 @@ in {
options = {
paths = mkOption {
- type = with types; either path (nonEmptyListOf path);
+ type = with types; coercedTo str lib.singleton (listOf str);
description = "Path(s) to back up.";
example = "/home/user";
- apply = x: if isList x then x else [ x ];
};
repo = mkOption {
diff --git a/nixos/modules/services/backup/duplicity.nix b/nixos/modules/services/backup/duplicity.nix
new file mode 100644
index 0000000000000000000000000000000000000000..a8d5642486235f451141f887e47ed3959bb87060
--- /dev/null
+++ b/nixos/modules/services/backup/duplicity.nix
@@ -0,0 +1,141 @@
+{ config, lib, pkgs, ...}:
+
+with lib;
+
+let
+ cfg = config.services.duplicity;
+
+ stateDirectory = "/var/lib/duplicity";
+
+ localTarget = if hasPrefix "file://" cfg.targetUrl
+ then removePrefix "file://" cfg.targetUrl else null;
+
+in {
+ options.services.duplicity = {
+ enable = mkEnableOption "backups with duplicity";
+
+ root = mkOption {
+ type = types.path;
+ default = "/";
+ description = ''
+ Root directory to backup.
+ '';
+ };
+
+ include = mkOption {
+ type = types.listOf types.str;
+ default = [];
+ example = [ "/home" ];
+ description = ''
+ List of paths to include into the backups. See the FILE SELECTION
+ section in duplicity
+ 1 for details on the syntax.
+ '';
+ };
+
+ exclude = mkOption {
+ type = types.listOf types.str;
+ default = [];
+ description = ''
+ List of paths to exclude from backups. See the FILE SELECTION section in
+ duplicity
+ 1 for details on the syntax.
+ '';
+ };
+
+ targetUrl = mkOption {
+ type = types.str;
+ example = "s3://host:port/prefix";
+ description = ''
+ Target url to backup to. See the URL FORMAT section in
+ duplicity
+ 1 for supported urls.
+ '';
+ };
+
+ secretFile = mkOption {
+ type = types.nullOr types.path;
+ default = null;
+ description = ''
+ Path of a file containing secrets (gpg passphrase, access key...) in
+ the format of EnvironmentFile as described by
+ systemd.exec
+ 5. For example:
+
+ PASSPHRASE=...
+ AWS_ACCESS_KEY_ID=...
+ AWS_SECRET_ACCESS_KEY=...
+
+ '';
+ };
+
+ frequency = mkOption {
+ type = types.nullOr types.str;
+ default = "daily";
+ description = ''
+ Run duplicity with the given frequency (see
+ systemd.time
+ 7 for the format).
+ If null, do not run automatically.
+ '';
+ };
+
+ extraFlags = mkOption {
+ type = types.listOf types.str;
+ default = [];
+ example = [ "--full-if-older-than" "1M" ];
+ description = ''
+ Extra command-line flags passed to duplicity. See
+ duplicity
+ 1.
+ '';
+ };
+ };
+
+ config = mkIf cfg.enable {
+ systemd = {
+ services.duplicity = {
+ description = "backup files with duplicity";
+
+ environment.HOME = stateDirectory;
+
+ serviceConfig = {
+ ExecStart = ''
+ ${pkgs.duplicity}/bin/duplicity ${escapeShellArgs (
+ [
+ cfg.root
+ cfg.targetUrl
+ "--archive-dir" stateDirectory
+ ]
+ ++ concatMap (p: [ "--include" p ]) cfg.include
+ ++ concatMap (p: [ "--exclude" p ]) cfg.exclude
+ ++ cfg.extraFlags)}
+ '';
+ PrivateTmp = true;
+ ProtectSystem = "strict";
+ ProtectHome = "read-only";
+ StateDirectory = baseNameOf stateDirectory;
+ } // optionalAttrs (localTarget != null) {
+ ReadWritePaths = localTarget;
+ } // optionalAttrs (cfg.secretFile != null) {
+ EnvironmentFile = cfg.secretFile;
+ };
+ } // optionalAttrs (cfg.frequency != null) {
+ startAt = cfg.frequency;
+ };
+
+ tmpfiles.rules = optional (localTarget != null) "d ${localTarget} 0700 root root -";
+ };
+
+ assertions = singleton {
+ # Duplicity will fail if the last file selection option is an include. It
+ # is not always possible to detect but this simple case can be caught.
+ assertion = cfg.include != [] -> cfg.exclude != [] || cfg.extraFlags != [];
+ message = ''
+ Duplicity will fail if you only specify included paths ("Because the
+ default is to include all files, the expression is redundant. Exiting
+ because this probably isn't what you meant.")
+ '';
+ };
+ };
+}
diff --git a/nixos/modules/services/backup/mysql-backup.nix b/nixos/modules/services/backup/mysql-backup.nix
index f0c273ffebf154d5841a472a4edcfcadf4f8c8b8..ba6e154f6b3d0f4387b4d072b310b0fa22399566 100644
--- a/nixos/modules/services/backup/mysql-backup.nix
+++ b/nixos/modules/services/backup/mysql-backup.nix
@@ -117,14 +117,12 @@ in
enable = true;
serviceConfig = {
User = cfg.user;
- PermissionsStartOnly = true;
};
- preStart = ''
- mkdir -m 0700 -p ${cfg.location}
- chown -R ${cfg.user} ${cfg.location}
- '';
script = backupScript;
};
+ tmpfiles.rules = [
+ "d ${cfg.location} 0700 ${cfg.user} - - -"
+ ];
};
};
diff --git a/nixos/modules/services/backup/postgresql-backup.nix b/nixos/modules/services/backup/postgresql-backup.nix
index 2ec78ce6f2cfa2e2ab43d81bc87289a5a35c276b..17b410a97f3ea288a53aa753bd63de67df83569e 100644
--- a/nixos/modules/services/backup/postgresql-backup.nix
+++ b/nixos/modules/services/backup/postgresql-backup.nix
@@ -6,31 +6,27 @@ let
cfg = config.services.postgresqlBackup;
- postgresqlBackupService = db :
+ postgresqlBackupService = db: dumpCmd:
{
enable = true;
- description = "Backup of database ${db}";
+ description = "Backup of ${db} database(s)";
requires = [ "postgresql.service" ];
- preStart = ''
- mkdir -m 0700 -p ${cfg.location}
- chown postgres ${cfg.location}
- '';
-
script = ''
+ umask 0077 # ensure backup is only readable by postgres user
+
if [ -e ${cfg.location}/${db}.sql.gz ]; then
${pkgs.coreutils}/bin/mv ${cfg.location}/${db}.sql.gz ${cfg.location}/${db}.prev.sql.gz
fi
- ${config.services.postgresql.package}/bin/pg_dump ${cfg.pgdumpOptions} ${db} | \
+ ${dumpCmd} | \
${pkgs.gzip}/bin/gzip -c > ${cfg.location}/${db}.sql.gz
'';
serviceConfig = {
Type = "oneshot";
- PermissionsStartOnly = "true";
User = "postgres";
};
@@ -40,9 +36,7 @@ let
in {
options = {
-
services.postgresqlBackup = {
-
enable = mkOption {
default = false;
description = ''
@@ -59,6 +53,19 @@ in {
'';
};
+ backupAll = mkOption {
+ default = cfg.databases == [];
+ defaultText = "services.postgresqlBackup.databases == []";
+ type = lib.types.bool;
+ description = ''
+ Backup all databases using pg_dumpall.
+ This option is mutual exclusive to
+ services.postgresqlBackup.databases.
+ The resulting backup dump will have the name all.sql.gz.
+ This option is the default if no databases are specified.
+ '';
+ };
+
databases = mkOption {
default = [];
description = ''
@@ -77,18 +84,41 @@ in {
type = types.string;
default = "-Cbo";
description = ''
- Command line options for pg_dump.
+ Command line options for pg_dump. This options is not used
+ if config.services.postgresqlBackup.backupAll is enabled.
+ Note that config.services.postgresqlBackup.backupAll is also active,
+ when no databases where specified.
'';
};
};
};
- config = mkIf config.services.postgresqlBackup.enable {
-
- systemd.services = listToAttrs (map (db : {
+ config = mkMerge [
+ {
+ assertions = [{
+ assertion = cfg.backupAll -> cfg.databases == [];
+ message = "config.services.postgresqlBackup.backupAll cannot be used together with config.services.postgresqlBackup.databases";
+ }];
+ }
+ (mkIf cfg.enable {
+ systemd.tmpfiles.rules = [
+ "d '${cfg.location}' 0700 postgres - - -"
+ ];
+ })
+ (mkIf (cfg.enable && cfg.backupAll) {
+ systemd.services.postgresqlBackup =
+ postgresqlBackupService "all" "${config.services.postgresql.package}/bin/pg_dumpall";
+ })
+ (mkIf (cfg.enable && !cfg.backupAll) {
+ systemd.services = listToAttrs (map (db:
+ let
+ cmd = "${config.services.postgresql.package}/bin/pg_dump ${cfg.pgdumpOptions} ${db}";
+ in {
name = "postgresqlBackup-${db}";
- value = postgresqlBackupService db; } ) cfg.databases);
- };
+ value = postgresqlBackupService db cmd;
+ }) cfg.databases);
+ })
+ ];
}
diff --git a/nixos/modules/services/backup/restic.nix b/nixos/modules/services/backup/restic.nix
index 6ece5a9b5ad632273ac1d4470e98842de9babea9..7e8e91e4b9c386def17bab01e36c89399311f25d 100644
--- a/nixos/modules/services/backup/restic.nix
+++ b/nixos/modules/services/backup/restic.nix
@@ -1,6 +1,11 @@
{ config, lib, pkgs, ... }:
with lib;
+
+let
+ # Type for a valid systemd unit option. Needed for correctly passing "timerConfig" to "systemd.timers"
+ unitOption = (import ../../system/boot/systemd-unit-options.nix { inherit config lib; }).unitOption;
+in
{
options.services.restic.backups = mkOption {
description = ''
@@ -47,7 +52,7 @@ with lib;
};
timerConfig = mkOption {
- type = types.attrsOf types.str;
+ type = types.attrsOf unitOption;
default = {
OnCalendar = "daily";
};
diff --git a/nixos/modules/services/cluster/kubernetes/addon-manager.nix b/nixos/modules/services/cluster/kubernetes/addon-manager.nix
new file mode 100644
index 0000000000000000000000000000000000000000..ad7d17c9c283989d69c954581dbd39e7192ebbaf
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/addon-manager.nix
@@ -0,0 +1,242 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.addonManager;
+
+ isRBACEnabled = elem "RBAC" top.apiserver.authorizationMode;
+
+ addons = pkgs.runCommand "kubernetes-addons" { } ''
+ mkdir -p $out
+ # since we are mounting the addons to the addon manager, they need to be copied
+ ${concatMapStringsSep ";" (a: "cp -v ${a}/* $out/") (mapAttrsToList (name: addon:
+ pkgs.writeTextDir "${name}.json" (builtins.toJSON addon)
+ ) (cfg.addons))}
+ '';
+in
+{
+ ###### interface
+ options.services.kubernetes.addonManager = with lib.types; {
+
+ bootstrapAddons = mkOption {
+ description = ''
+ Bootstrap addons are like regular addons, but they are applied with cluster-admin rigths.
+ They are applied at addon-manager startup only.
+ '';
+ default = { };
+ type = attrsOf attrs;
+ example = literalExample ''
+ {
+ "my-service" = {
+ "apiVersion" = "v1";
+ "kind" = "Service";
+ "metadata" = {
+ "name" = "my-service";
+ "namespace" = "default";
+ };
+ "spec" = { ... };
+ };
+ }
+ '';
+ };
+
+ addons = mkOption {
+ description = "Kubernetes addons (any kind of Kubernetes resource can be an addon).";
+ default = { };
+ type = attrsOf (either attrs (listOf attrs));
+ example = literalExample ''
+ {
+ "my-service" = {
+ "apiVersion" = "v1";
+ "kind" = "Service";
+ "metadata" = {
+ "name" = "my-service";
+ "namespace" = "default";
+ };
+ "spec" = { ... };
+ };
+ }
+ // import { cfg = config.services.kubernetes; };
+ '';
+ };
+
+ enable = mkEnableOption "Kubernetes addon manager";
+
+ kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes addon manager";
+ bootstrapAddonsKubeconfig = top.lib.mkKubeConfigOptions "Kubernetes addon manager bootstrap";
+ };
+
+ ###### implementation
+ config = let
+
+ addonManagerPaths = filter (a: a != null) [
+ cfg.kubeconfig.caFile
+ cfg.kubeconfig.certFile
+ cfg.kubeconfig.keyFile
+ ];
+ bootstrapAddonsPaths = filter (a: a != null) [
+ cfg.bootstrapAddonsKubeconfig.caFile
+ cfg.bootstrapAddonsKubeconfig.certFile
+ cfg.bootstrapAddonsKubeconfig.keyFile
+ ];
+
+ in mkIf cfg.enable {
+ environment.etc."kubernetes/addons".source = "${addons}/";
+
+ #TODO: Get rid of kube-addon-manager in the future for the following reasons
+ # - it is basically just a shell script wrapped around kubectl
+ # - it assumes that it is clusterAdmin or can gain clusterAdmin rights through serviceAccount
+ # - it is designed to be used with k8s system components only
+ # - it would be better with a more Nix-oriented way of managing addons
+ systemd.services.kube-addon-manager = {
+ description = "Kubernetes addon manager";
+ wantedBy = [ "kubernetes.target" ];
+ after = [ "kube-node-online.target" ];
+ before = [ "kubernetes.target" ];
+ environment = {
+ ADDON_PATH = "/etc/kubernetes/addons/";
+ KUBECONFIG = top.lib.mkKubeConfig "kube-addon-manager" cfg.kubeconfig;
+ };
+ path = with pkgs; [ gawk kubectl ];
+ preStart = ''
+ until kubectl -n kube-system get serviceaccounts/default 2>/dev/null; do
+ echo kubectl -n kube-system get serviceaccounts/default: exit status $?
+ sleep 2
+ done
+ '';
+ serviceConfig = {
+ Slice = "kubernetes.slice";
+ ExecStart = "${top.package}/bin/kube-addons";
+ WorkingDirectory = top.dataDir;
+ User = "kubernetes";
+ Group = "kubernetes";
+ Restart = "on-failure";
+ RestartSec = 10;
+ };
+ unitConfig.ConditionPathExists = addonManagerPaths;
+ };
+
+ systemd.paths.kube-addon-manager = {
+ wantedBy = [ "kube-addon-manager.service" ];
+ pathConfig = {
+ PathExists = addonManagerPaths;
+ PathChanged = addonManagerPaths;
+ };
+ };
+
+ services.kubernetes.addonManager.kubeconfig.server = mkDefault top.apiserverAddress;
+
+ systemd.services.kube-addon-manager-bootstrap = mkIf (top.apiserver.enable && top.addonManager.bootstrapAddons != {}) {
+ wantedBy = [ "kube-control-plane-online.target" ];
+ after = [ "kube-apiserver.service" ];
+ before = [ "kube-control-plane-online.target" ];
+ path = [ pkgs.kubectl ];
+ environment = {
+ KUBECONFIG = top.lib.mkKubeConfig "kube-addon-manager-bootstrap" cfg.bootstrapAddonsKubeconfig;
+ };
+ preStart = with pkgs; let
+ files = mapAttrsToList (n: v: writeText "${n}.json" (builtins.toJSON v))
+ cfg.bootstrapAddons;
+ in ''
+ until kubectl auth can-i '*' '*' -q 2>/dev/null; do
+ echo kubectl auth can-i '*' '*': exit status $?
+ sleep 2
+ done
+
+ kubectl apply -f ${concatStringsSep " \\\n -f " files}
+ '';
+ script = "echo Ok";
+ unitConfig.ConditionPathExists = bootstrapAddonsPaths;
+ };
+
+ systemd.paths.kube-addon-manager-bootstrap = {
+ wantedBy = [ "kube-addon-manager-bootstrap.service" ];
+ pathConfig = {
+ PathExists = bootstrapAddonsPaths;
+ PathChanged = bootstrapAddonsPaths;
+ };
+ };
+
+ services.kubernetes.addonManager.bootstrapAddonsKubeconfig.server = mkDefault top.apiserverAddress;
+
+ services.kubernetes.addonManager.bootstrapAddons = mkIf isRBACEnabled
+ (let
+ name = system:kube-addon-manager;
+ namespace = "kube-system";
+ in
+ {
+
+ kube-addon-manager-r = {
+ apiVersion = "rbac.authorization.k8s.io/v1";
+ kind = "Role";
+ metadata = {
+ inherit name namespace;
+ };
+ rules = [{
+ apiGroups = ["*"];
+ resources = ["*"];
+ verbs = ["*"];
+ }];
+ };
+
+ kube-addon-manager-rb = {
+ apiVersion = "rbac.authorization.k8s.io/v1";
+ kind = "RoleBinding";
+ metadata = {
+ inherit name namespace;
+ };
+ roleRef = {
+ apiGroup = "rbac.authorization.k8s.io";
+ kind = "Role";
+ inherit name;
+ };
+ subjects = [{
+ apiGroup = "rbac.authorization.k8s.io";
+ kind = "User";
+ inherit name;
+ }];
+ };
+
+ kube-addon-manager-cluster-lister-cr = {
+ apiVersion = "rbac.authorization.k8s.io/v1";
+ kind = "ClusterRole";
+ metadata = {
+ name = "${name}:cluster-lister";
+ };
+ rules = [{
+ apiGroups = ["*"];
+ resources = ["*"];
+ verbs = ["list"];
+ }];
+ };
+
+ kube-addon-manager-cluster-lister-crb = {
+ apiVersion = "rbac.authorization.k8s.io/v1";
+ kind = "ClusterRoleBinding";
+ metadata = {
+ name = "${name}:cluster-lister";
+ };
+ roleRef = {
+ apiGroup = "rbac.authorization.k8s.io";
+ kind = "ClusterRole";
+ name = "${name}:cluster-lister";
+ };
+ subjects = [{
+ kind = "User";
+ inherit name;
+ }];
+ };
+ });
+
+ services.kubernetes.pki.certs = {
+ addonManager = top.lib.mkCert {
+ name = "kube-addon-manager";
+ CN = "system:kube-addon-manager";
+ action = "systemctl restart kube-addon-manager.service";
+ };
+ };
+ };
+
+}
diff --git a/nixos/modules/services/cluster/kubernetes/dashboard.nix b/nixos/modules/services/cluster/kubernetes/addons/dashboard.nix
similarity index 94%
rename from nixos/modules/services/cluster/kubernetes/dashboard.nix
rename to nixos/modules/services/cluster/kubernetes/addons/dashboard.nix
index cbd6e8f7bf733d2d03fb68cfc5695a4c7a77ed62..2295694ffc740072aaad095b5f3985a26f7c3ee3 100644
--- a/nixos/modules/services/cluster/kubernetes/dashboard.nix
+++ b/nixos/modules/services/cluster/kubernetes/addons/dashboard.nix
@@ -8,6 +8,13 @@ in {
options.services.kubernetes.addons.dashboard = {
enable = mkEnableOption "kubernetes dashboard addon";
+ extraArgs = mkOption {
+ description = "Extra arguments to append to the dashboard cmdline";
+ type = types.listOf types.str;
+ default = [];
+ example = ["--enable-skip-login"];
+ };
+
rbac = mkOption {
description = "Role-based access control (RBAC) options";
default = {};
@@ -31,7 +38,7 @@ in {
version = mkOption {
description = "Which version of the kubernetes dashboard to deploy";
type = types.str;
- default = "v1.8.3";
+ default = "v1.10.1";
};
image = mkOption {
@@ -39,9 +46,9 @@ in {
type = types.attrs;
default = {
imageName = "k8s.gcr.io/kubernetes-dashboard-amd64";
- imageDigest = "sha256:dc4026c1b595435ef5527ca598e1e9c4343076926d7d62b365c44831395adbd0";
+ imageDigest = "sha256:0ae6b69432e78069c5ce2bcde0fe409c5c4d6f0f4d9cd50a17974fea38898747";
finalImageTag = cfg.version;
- sha256 = "18ajcg0q1vignfjk2sm4xj4wzphfz8wah69ps8dklqfvv0164mc8";
+ sha256 = "01xrr4pwgr2hcjrjsi3d14ifpzdfbxzqpzxbk2fkbjb9zkv38zxy";
};
};
};
@@ -99,7 +106,7 @@ in {
memory = "100Mi";
};
};
- args = ["--auto-generate-certificates"];
+ args = ["--auto-generate-certificates"] ++ cfg.extraArgs;
volumeMounts = [{
name = "tmp-volume";
mountPath = "/tmp";
@@ -162,6 +169,23 @@ in {
};
};
+ kubernetes-dashboard-cm = {
+ apiVersion = "v1";
+ kind = "ConfigMap";
+ metadata = {
+ labels = {
+ k8s-app = "kubernetes-dashboard";
+ # Allows editing resource and makes sure it is created first.
+ "addonmanager.kubernetes.io/mode" = "EnsureExists";
+ };
+ name = "kubernetes-dashboard-settings";
+ namespace = "kube-system";
+ };
+ };
+ };
+
+ services.kubernetes.addonManager.bootstrapAddons = mkMerge [{
+
kubernetes-dashboard-sa = {
apiVersion = "v1";
kind = "ServiceAccount";
@@ -203,20 +227,9 @@ in {
};
type = "Opaque";
};
- kubernetes-dashboard-cm = {
- apiVersion = "v1";
- kind = "ConfigMap";
- metadata = {
- labels = {
- k8s-app = "kubernetes-dashboard";
- # Allows editing resource and makes sure it is created first.
- "addonmanager.kubernetes.io/mode" = "EnsureExists";
- };
- name = "kubernetes-dashboard-settings";
- namespace = "kube-system";
- };
- };
- } // (optionalAttrs cfg.rbac.enable
+ }
+
+ (optionalAttrs cfg.rbac.enable
(let
subjects = [{
kind = "ServiceAccount";
@@ -316,6 +329,6 @@ in {
inherit subjects;
};
})
- ));
+ ))];
};
}
diff --git a/nixos/modules/services/cluster/kubernetes/addons/dns.nix b/nixos/modules/services/cluster/kubernetes/addons/dns.nix
new file mode 100644
index 0000000000000000000000000000000000000000..4368159ea6e3bd0e1d9290155a562685496cd2db
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/addons/dns.nix
@@ -0,0 +1,334 @@
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+let
+ version = "1.3.1";
+ cfg = config.services.kubernetes.addons.dns;
+ ports = {
+ dns = 10053;
+ health = 10054;
+ metrics = 10055;
+ };
+in {
+ options.services.kubernetes.addons.dns = {
+ enable = mkEnableOption "kubernetes dns addon";
+
+ clusterIp = mkOption {
+ description = "Dns addon clusterIP";
+
+ # this default is also what kubernetes users
+ default = (
+ concatStringsSep "." (
+ take 3 (splitString "." config.services.kubernetes.apiserver.serviceClusterIpRange
+ ))
+ ) + ".254";
+ type = types.str;
+ };
+
+ clusterDomain = mkOption {
+ description = "Dns cluster domain";
+ default = "cluster.local";
+ type = types.str;
+ };
+
+ replicas = mkOption {
+ description = "Number of DNS pod replicas to deploy in the cluster.";
+ default = 2;
+ type = types.int;
+ };
+
+ reconcileMode = mkOption {
+ description = ''
+ Controls the addon manager reconciliation mode for the DNS addon.
+
+ Setting reconcile mode to EnsureExists makes it possible to tailor DNS behavior by editing the coredns ConfigMap.
+
+ See: .
+ '';
+ default = "Reconcile";
+ type = types.enum [ "Reconcile" "EnsureExists" ];
+ };
+
+ coredns = mkOption {
+ description = "Docker image to seed for the CoreDNS container.";
+ type = types.attrs;
+ default = {
+ imageName = "coredns/coredns";
+ imageDigest = "sha256:02382353821b12c21b062c59184e227e001079bb13ebd01f9d3270ba0fcbf1e4";
+ finalImageTag = version;
+ sha256 = "0vbylgyxv2jm2mnzk6f28jbsj305zsxmx3jr6ngjq461czcl5fi5";
+ };
+ };
+ };
+
+ config = mkIf cfg.enable {
+ services.kubernetes.kubelet.seedDockerImages =
+ singleton (pkgs.dockerTools.pullImage cfg.coredns);
+
+ services.kubernetes.addonManager.bootstrapAddons = {
+ coredns-cr = {
+ apiVersion = "rbac.authorization.k8s.io/v1beta1";
+ kind = "ClusterRole";
+ metadata = {
+ labels = {
+ "addonmanager.kubernetes.io/mode" = "Reconcile";
+ "k8s-app" = "kube-dns";
+ "kubernetes.io/cluster-service" = "true";
+ "kubernetes.io/bootstrapping" = "rbac-defaults";
+ };
+ name = "system:coredns";
+ };
+ rules = [
+ {
+ apiGroups = [ "" ];
+ resources = [ "endpoints" "services" "pods" "namespaces" ];
+ verbs = [ "list" "watch" ];
+ }
+ {
+ apiGroups = [ "" ];
+ resources = [ "nodes" ];
+ verbs = [ "get" ];
+ }
+ ];
+ };
+
+ coredns-crb = {
+ apiVersion = "rbac.authorization.k8s.io/v1beta1";
+ kind = "ClusterRoleBinding";
+ metadata = {
+ annotations = {
+ "rbac.authorization.kubernetes.io/autoupdate" = "true";
+ };
+ labels = {
+ "addonmanager.kubernetes.io/mode" = "Reconcile";
+ "k8s-app" = "kube-dns";
+ "kubernetes.io/cluster-service" = "true";
+ "kubernetes.io/bootstrapping" = "rbac-defaults";
+ };
+ name = "system:coredns";
+ };
+ roleRef = {
+ apiGroup = "rbac.authorization.k8s.io";
+ kind = "ClusterRole";
+ name = "system:coredns";
+ };
+ subjects = [
+ {
+ kind = "ServiceAccount";
+ name = "coredns";
+ namespace = "kube-system";
+ }
+ ];
+ };
+ };
+
+ services.kubernetes.addonManager.addons = {
+ coredns-sa = {
+ apiVersion = "v1";
+ kind = "ServiceAccount";
+ metadata = {
+ labels = {
+ "addonmanager.kubernetes.io/mode" = "Reconcile";
+ "k8s-app" = "kube-dns";
+ "kubernetes.io/cluster-service" = "true";
+ };
+ name = "coredns";
+ namespace = "kube-system";
+ };
+ };
+
+ coredns-cm = {
+ apiVersion = "v1";
+ kind = "ConfigMap";
+ metadata = {
+ labels = {
+ "addonmanager.kubernetes.io/mode" = cfg.reconcileMode;
+ "k8s-app" = "kube-dns";
+ "kubernetes.io/cluster-service" = "true";
+ };
+ name = "coredns";
+ namespace = "kube-system";
+ };
+ data = {
+ Corefile = ".:${toString ports.dns} {
+ errors
+ health :${toString ports.health}
+ kubernetes ${cfg.clusterDomain} in-addr.arpa ip6.arpa {
+ pods insecure
+ upstream
+ fallthrough in-addr.arpa ip6.arpa
+ }
+ prometheus :${toString ports.metrics}
+ proxy . /etc/resolv.conf
+ cache 30
+ loop
+ reload
+ loadbalance
+ }";
+ };
+ };
+
+ coredns-deploy = {
+ apiVersion = "extensions/v1beta1";
+ kind = "Deployment";
+ metadata = {
+ labels = {
+ "addonmanager.kubernetes.io/mode" = cfg.reconcileMode;
+ "k8s-app" = "kube-dns";
+ "kubernetes.io/cluster-service" = "true";
+ "kubernetes.io/name" = "CoreDNS";
+ };
+ name = "coredns";
+ namespace = "kube-system";
+ };
+ spec = {
+ replicas = cfg.replicas;
+ selector = {
+ matchLabels = { k8s-app = "kube-dns"; };
+ };
+ strategy = {
+ rollingUpdate = { maxUnavailable = 1; };
+ type = "RollingUpdate";
+ };
+ template = {
+ metadata = {
+ labels = {
+ k8s-app = "kube-dns";
+ };
+ };
+ spec = {
+ containers = [
+ {
+ args = [ "-conf" "/etc/coredns/Corefile" ];
+ image = with cfg.coredns; "${imageName}:${finalImageTag}";
+ imagePullPolicy = "Never";
+ livenessProbe = {
+ failureThreshold = 5;
+ httpGet = {
+ path = "/health";
+ port = ports.health;
+ scheme = "HTTP";
+ };
+ initialDelaySeconds = 60;
+ successThreshold = 1;
+ timeoutSeconds = 5;
+ };
+ name = "coredns";
+ ports = [
+ {
+ containerPort = ports.dns;
+ name = "dns";
+ protocol = "UDP";
+ }
+ {
+ containerPort = ports.dns;
+ name = "dns-tcp";
+ protocol = "TCP";
+ }
+ {
+ containerPort = ports.metrics;
+ name = "metrics";
+ protocol = "TCP";
+ }
+ ];
+ resources = {
+ limits = {
+ memory = "170Mi";
+ };
+ requests = {
+ cpu = "100m";
+ memory = "70Mi";
+ };
+ };
+ securityContext = {
+ allowPrivilegeEscalation = false;
+ capabilities = {
+ drop = [ "all" ];
+ };
+ readOnlyRootFilesystem = true;
+ };
+ volumeMounts = [
+ {
+ mountPath = "/etc/coredns";
+ name = "config-volume";
+ readOnly = true;
+ }
+ ];
+ }
+ ];
+ dnsPolicy = "Default";
+ nodeSelector = {
+ "beta.kubernetes.io/os" = "linux";
+ };
+ serviceAccountName = "coredns";
+ tolerations = [
+ {
+ effect = "NoSchedule";
+ key = "node-role.kubernetes.io/master";
+ }
+ {
+ key = "CriticalAddonsOnly";
+ operator = "Exists";
+ }
+ ];
+ volumes = [
+ {
+ configMap = {
+ items = [
+ {
+ key = "Corefile";
+ path = "Corefile";
+ }
+ ];
+ name = "coredns";
+ };
+ name = "config-volume";
+ }
+ ];
+ };
+ };
+ };
+ };
+
+ coredns-svc = {
+ apiVersion = "v1";
+ kind = "Service";
+ metadata = {
+ annotations = {
+ "prometheus.io/port" = toString ports.metrics;
+ "prometheus.io/scrape" = "true";
+ };
+ labels = {
+ "addonmanager.kubernetes.io/mode" = "Reconcile";
+ "k8s-app" = "kube-dns";
+ "kubernetes.io/cluster-service" = "true";
+ "kubernetes.io/name" = "CoreDNS";
+ };
+ name = "kube-dns";
+ namespace = "kube-system";
+ };
+ spec = {
+ clusterIP = cfg.clusterIp;
+ ports = [
+ {
+ name = "dns";
+ port = 53;
+ targetPort = ports.dns;
+ protocol = "UDP";
+ }
+ {
+ name = "dns-tcp";
+ port = 53;
+ targetPort = ports.dns;
+ protocol = "TCP";
+ }
+ ];
+ selector = { k8s-app = "kube-dns"; };
+ };
+ };
+ };
+
+ services.kubernetes.kubelet.clusterDns = mkDefault cfg.clusterIp;
+ };
+}
diff --git a/nixos/modules/services/cluster/kubernetes/apiserver.nix b/nixos/modules/services/cluster/kubernetes/apiserver.nix
new file mode 100644
index 0000000000000000000000000000000000000000..0c04648355b42dfb62c1b6a488685316a7b5535e
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/apiserver.nix
@@ -0,0 +1,491 @@
+ { config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.apiserver;
+
+ isRBACEnabled = elem "RBAC" cfg.authorizationMode;
+
+ apiserverServiceIP = (concatStringsSep "." (
+ take 3 (splitString "." cfg.serviceClusterIpRange
+ )) + ".1");
+in
+{
+ ###### interface
+ options.services.kubernetes.apiserver = with lib.types; {
+
+ advertiseAddress = mkOption {
+ description = ''
+ Kubernetes apiserver IP address on which to advertise the apiserver
+ to members of the cluster. This address must be reachable by the rest
+ of the cluster.
+ '';
+ default = null;
+ type = nullOr str;
+ };
+
+ allowPrivileged = mkOption {
+ description = "Whether to allow privileged containers on Kubernetes.";
+ default = false;
+ type = bool;
+ };
+
+ authorizationMode = mkOption {
+ description = ''
+ Kubernetes apiserver authorization mode (AlwaysAllow/AlwaysDeny/ABAC/Webhook/RBAC/Node). See
+
+ '';
+ default = ["RBAC" "Node"]; # Enabling RBAC by default, although kubernetes default is AllowAllow
+ type = listOf (enum ["AlwaysAllow" "AlwaysDeny" "ABAC" "Webhook" "RBAC" "Node"]);
+ };
+
+ authorizationPolicy = mkOption {
+ description = ''
+ Kubernetes apiserver authorization policy file. See
+
+ '';
+ default = [];
+ type = listOf attrs;
+ };
+
+ basicAuthFile = mkOption {
+ description = ''
+ Kubernetes apiserver basic authentication file. See
+
+ '';
+ default = null;
+ type = nullOr path;
+ };
+
+ bindAddress = mkOption {
+ description = ''
+ The IP address on which to listen for the --secure-port port.
+ The associated interface(s) must be reachable by the rest
+ of the cluster, and by CLI/web clients.
+ '';
+ default = "0.0.0.0";
+ type = str;
+ };
+
+ clientCaFile = mkOption {
+ description = "Kubernetes apiserver CA file for client auth.";
+ default = top.caFile;
+ type = nullOr path;
+ };
+
+ disableAdmissionPlugins = mkOption {
+ description = ''
+ Kubernetes admission control plugins to disable. See
+
+ '';
+ default = [];
+ type = listOf str;
+ };
+
+ enable = mkEnableOption "Kubernetes apiserver";
+
+ enableAdmissionPlugins = mkOption {
+ description = ''
+ Kubernetes admission control plugins to enable. See
+
+ '';
+ default = [
+ "NamespaceLifecycle" "LimitRanger" "ServiceAccount"
+ "ResourceQuota" "DefaultStorageClass" "DefaultTolerationSeconds"
+ "NodeRestriction"
+ ];
+ example = [
+ "NamespaceLifecycle" "NamespaceExists" "LimitRanger"
+ "SecurityContextDeny" "ServiceAccount" "ResourceQuota"
+ "PodSecurityPolicy" "NodeRestriction" "DefaultStorageClass"
+ ];
+ type = listOf str;
+ };
+
+ etcd = {
+ servers = mkOption {
+ description = "List of etcd servers.";
+ default = ["http://127.0.0.1:2379"];
+ type = types.listOf types.str;
+ };
+
+ keyFile = mkOption {
+ description = "Etcd key file.";
+ default = null;
+ type = types.nullOr types.path;
+ };
+
+ certFile = mkOption {
+ description = "Etcd cert file.";
+ default = null;
+ type = types.nullOr types.path;
+ };
+
+ caFile = mkOption {
+ description = "Etcd ca file.";
+ default = top.caFile;
+ type = types.nullOr types.path;
+ };
+ };
+
+ extraOpts = mkOption {
+ description = "Kubernetes apiserver extra command line options.";
+ default = "";
+ type = str;
+ };
+
+ extraSANs = mkOption {
+ description = "Extra x509 Subject Alternative Names to be added to the kubernetes apiserver tls cert.";
+ default = [];
+ type = listOf str;
+ };
+
+ featureGates = mkOption {
+ description = "List set of feature gates";
+ default = top.featureGates;
+ type = listOf str;
+ };
+
+ insecureBindAddress = mkOption {
+ description = "The IP address on which to serve the --insecure-port.";
+ default = "127.0.0.1";
+ type = str;
+ };
+
+ insecurePort = mkOption {
+ description = "Kubernetes apiserver insecure listening port. (0 = disabled)";
+ default = 0;
+ type = int;
+ };
+
+ kubeletClientCaFile = mkOption {
+ description = "Path to a cert file for connecting to kubelet.";
+ default = top.caFile;
+ type = nullOr path;
+ };
+
+ kubeletClientCertFile = mkOption {
+ description = "Client certificate to use for connections to kubelet.";
+ default = null;
+ type = nullOr path;
+ };
+
+ kubeletClientKeyFile = mkOption {
+ description = "Key to use for connections to kubelet.";
+ default = null;
+ type = nullOr path;
+ };
+
+ kubeletHttps = mkOption {
+ description = "Whether to use https for connections to kubelet.";
+ default = true;
+ type = bool;
+ };
+
+ proxyClientCertFile = mkOption {
+ description = "Client certificate to use for connections to proxy.";
+ default = null;
+ type = nullOr path;
+ };
+
+ proxyClientKeyFile = mkOption {
+ description = "Key to use for connections to proxy.";
+ default = null;
+ type = nullOr path;
+ };
+
+ runtimeConfig = mkOption {
+ description = ''
+ Api runtime configuration. See
+
+ '';
+ default = "authentication.k8s.io/v1beta1=true";
+ example = "api/all=false,api/v1=true";
+ type = str;
+ };
+
+ storageBackend = mkOption {
+ description = ''
+ Kubernetes apiserver storage backend.
+ '';
+ default = "etcd3";
+ type = enum ["etcd2" "etcd3"];
+ };
+
+ securePort = mkOption {
+ description = "Kubernetes apiserver secure port.";
+ default = 6443;
+ type = int;
+ };
+
+ serviceAccountKeyFile = mkOption {
+ description = ''
+ Kubernetes apiserver PEM-encoded x509 RSA private or public key file,
+ used to verify ServiceAccount tokens. By default tls private key file
+ is used.
+ '';
+ default = null;
+ type = nullOr path;
+ };
+
+ serviceClusterIpRange = mkOption {
+ description = ''
+ A CIDR notation IP range from which to assign service cluster IPs.
+ This must not overlap with any IP ranges assigned to nodes for pods.
+ '';
+ default = "10.0.0.0/24";
+ type = str;
+ };
+
+ tlsCertFile = mkOption {
+ description = "Kubernetes apiserver certificate file.";
+ default = null;
+ type = nullOr path;
+ };
+
+ tlsKeyFile = mkOption {
+ description = "Kubernetes apiserver private key file.";
+ default = null;
+ type = nullOr path;
+ };
+
+ tokenAuthFile = mkOption {
+ description = ''
+ Kubernetes apiserver token authentication file. See
+
+ '';
+ default = null;
+ type = nullOr path;
+ };
+
+ verbosity = mkOption {
+ description = ''
+ Optional glog verbosity level for logging statements. See
+
+ '';
+ default = null;
+ type = nullOr int;
+ };
+
+ webhookConfig = mkOption {
+ description = ''
+ Kubernetes apiserver Webhook config file. It uses the kubeconfig file format.
+ See
+ '';
+ default = null;
+ type = nullOr path;
+ };
+
+ };
+
+
+ ###### implementation
+ config = mkMerge [
+
+ (let
+
+ apiserverPaths = filter (a: a != null) [
+ cfg.clientCaFile
+ cfg.etcd.caFile
+ cfg.etcd.certFile
+ cfg.etcd.keyFile
+ cfg.kubeletClientCaFile
+ cfg.kubeletClientCertFile
+ cfg.kubeletClientKeyFile
+ cfg.serviceAccountKeyFile
+ cfg.tlsCertFile
+ cfg.tlsKeyFile
+ ];
+ etcdPaths = filter (a: a != null) [
+ config.services.etcd.trustedCaFile
+ config.services.etcd.certFile
+ config.services.etcd.keyFile
+ ];
+
+ in mkIf cfg.enable {
+ systemd.services.kube-apiserver = {
+ description = "Kubernetes APIServer Service";
+ wantedBy = [ "kube-control-plane-online.target" ];
+ after = [ "certmgr.service" ];
+ before = [ "kube-control-plane-online.target" ];
+ serviceConfig = {
+ Slice = "kubernetes.slice";
+ ExecStart = ''${top.package}/bin/kube-apiserver \
+ --allow-privileged=${boolToString cfg.allowPrivileged} \
+ --authorization-mode=${concatStringsSep "," cfg.authorizationMode} \
+ ${optionalString (elem "ABAC" cfg.authorizationMode)
+ "--authorization-policy-file=${
+ pkgs.writeText "kube-auth-policy.jsonl"
+ (concatMapStringsSep "\n" (l: builtins.toJSON l) cfg.authorizationPolicy)
+ }"
+ } \
+ ${optionalString (elem "Webhook" cfg.authorizationMode)
+ "--authorization-webhook-config-file=${cfg.webhookConfig}"
+ } \
+ --bind-address=${cfg.bindAddress} \
+ ${optionalString (cfg.advertiseAddress != null)
+ "--advertise-address=${cfg.advertiseAddress}"} \
+ ${optionalString (cfg.clientCaFile != null)
+ "--client-ca-file=${cfg.clientCaFile}"} \
+ --disable-admission-plugins=${concatStringsSep "," cfg.disableAdmissionPlugins} \
+ --enable-admission-plugins=${concatStringsSep "," cfg.enableAdmissionPlugins} \
+ --etcd-servers=${concatStringsSep "," cfg.etcd.servers} \
+ ${optionalString (cfg.etcd.caFile != null)
+ "--etcd-cafile=${cfg.etcd.caFile}"} \
+ ${optionalString (cfg.etcd.certFile != null)
+ "--etcd-certfile=${cfg.etcd.certFile}"} \
+ ${optionalString (cfg.etcd.keyFile != null)
+ "--etcd-keyfile=${cfg.etcd.keyFile}"} \
+ ${optionalString (cfg.featureGates != [])
+ "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+ ${optionalString (cfg.basicAuthFile != null)
+ "--basic-auth-file=${cfg.basicAuthFile}"} \
+ --kubelet-https=${boolToString cfg.kubeletHttps} \
+ ${optionalString (cfg.kubeletClientCaFile != null)
+ "--kubelet-certificate-authority=${cfg.kubeletClientCaFile}"} \
+ ${optionalString (cfg.kubeletClientCertFile != null)
+ "--kubelet-client-certificate=${cfg.kubeletClientCertFile}"} \
+ ${optionalString (cfg.kubeletClientKeyFile != null)
+ "--kubelet-client-key=${cfg.kubeletClientKeyFile}"} \
+ ${optionalString (cfg.proxyClientCertFile != null)
+ "--proxy-client-cert-file=${cfg.proxyClientCertFile}"} \
+ ${optionalString (cfg.proxyClientKeyFile != null)
+ "--proxy-client-key-file=${cfg.proxyClientKeyFile}"} \
+ --insecure-bind-address=${cfg.insecureBindAddress} \
+ --insecure-port=${toString cfg.insecurePort} \
+ ${optionalString (cfg.runtimeConfig != "")
+ "--runtime-config=${cfg.runtimeConfig}"} \
+ --secure-port=${toString cfg.securePort} \
+ ${optionalString (cfg.serviceAccountKeyFile!=null)
+ "--service-account-key-file=${cfg.serviceAccountKeyFile}"} \
+ --service-cluster-ip-range=${cfg.serviceClusterIpRange} \
+ --storage-backend=${cfg.storageBackend} \
+ ${optionalString (cfg.tlsCertFile != null)
+ "--tls-cert-file=${cfg.tlsCertFile}"} \
+ ${optionalString (cfg.tlsKeyFile != null)
+ "--tls-private-key-file=${cfg.tlsKeyFile}"} \
+ ${optionalString (cfg.tokenAuthFile != null)
+ "--token-auth-file=${cfg.tokenAuthFile}"} \
+ ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+ ${cfg.extraOpts}
+ '';
+ WorkingDirectory = top.dataDir;
+ User = "kubernetes";
+ Group = "kubernetes";
+ AmbientCapabilities = "cap_net_bind_service";
+ Restart = "on-failure";
+ RestartSec = 5;
+ };
+ unitConfig.ConditionPathExists = apiserverPaths;
+ };
+
+ systemd.paths.kube-apiserver = mkIf top.apiserver.enable {
+ wantedBy = [ "kube-apiserver.service" ];
+ pathConfig = {
+ PathExists = apiserverPaths;
+ PathChanged = apiserverPaths;
+ };
+ };
+
+ services.etcd = {
+ clientCertAuth = mkDefault true;
+ peerClientCertAuth = mkDefault true;
+ listenClientUrls = mkDefault ["https://0.0.0.0:2379"];
+ listenPeerUrls = mkDefault ["https://0.0.0.0:2380"];
+ advertiseClientUrls = mkDefault ["https://${top.masterAddress}:2379"];
+ initialCluster = mkDefault ["${top.masterAddress}=https://${top.masterAddress}:2380"];
+ name = mkDefault top.masterAddress;
+ initialAdvertisePeerUrls = mkDefault ["https://${top.masterAddress}:2380"];
+ };
+
+ systemd.services.etcd = {
+ unitConfig.ConditionPathExists = etcdPaths;
+ };
+
+ systemd.paths.etcd = {
+ wantedBy = [ "etcd.service" ];
+ pathConfig = {
+ PathExists = etcdPaths;
+ PathChanged = etcdPaths;
+ };
+ };
+
+ services.kubernetes.addonManager.bootstrapAddons = mkIf isRBACEnabled {
+
+ apiserver-kubelet-api-admin-crb = {
+ apiVersion = "rbac.authorization.k8s.io/v1";
+ kind = "ClusterRoleBinding";
+ metadata = {
+ name = "system:kube-apiserver:kubelet-api-admin";
+ };
+ roleRef = {
+ apiGroup = "rbac.authorization.k8s.io";
+ kind = "ClusterRole";
+ name = "system:kubelet-api-admin";
+ };
+ subjects = [{
+ kind = "User";
+ name = "system:kube-apiserver";
+ }];
+ };
+
+ };
+
+ services.kubernetes.pki.certs = with top.lib; {
+ apiServer = mkCert {
+ name = "kube-apiserver";
+ CN = "kubernetes";
+ hosts = [
+ "kubernetes.default.svc"
+ "kubernetes.default.svc.${top.addons.dns.clusterDomain}"
+ cfg.advertiseAddress
+ top.masterAddress
+ apiserverServiceIP
+ "127.0.0.1"
+ ] ++ cfg.extraSANs;
+ action = "systemctl restart kube-apiserver.service";
+ };
+ apiserverProxyClient = mkCert {
+ name = "kube-apiserver-proxy-client";
+ CN = "front-proxy-client";
+ action = "systemctl restart kube-apiserver.service";
+ };
+ apiserverKubeletClient = mkCert {
+ name = "kube-apiserver-kubelet-client";
+ CN = "system:kube-apiserver";
+ action = "systemctl restart kube-apiserver.service";
+ };
+ apiserverEtcdClient = mkCert {
+ name = "kube-apiserver-etcd-client";
+ CN = "etcd-client";
+ action = "systemctl restart kube-apiserver.service";
+ };
+ clusterAdmin = mkCert {
+ name = "cluster-admin";
+ CN = "cluster-admin";
+ fields = {
+ O = "system:masters";
+ };
+ privateKeyOwner = "root";
+ };
+ etcd = mkCert {
+ name = "etcd";
+ CN = top.masterAddress;
+ hosts = [
+ "etcd.local"
+ "etcd.${top.addons.dns.clusterDomain}"
+ top.masterAddress
+ cfg.advertiseAddress
+ ];
+ privateKeyOwner = "etcd";
+ action = "systemctl restart etcd.service";
+ };
+ };
+
+ })
+
+ ];
+
+}
diff --git a/nixos/modules/services/cluster/kubernetes/controller-manager.nix b/nixos/modules/services/cluster/kubernetes/controller-manager.nix
new file mode 100644
index 0000000000000000000000000000000000000000..b94e8bd86d4c0596d602d74f60f7d1732ac16b51
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/controller-manager.nix
@@ -0,0 +1,191 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.controllerManager;
+in
+{
+ ###### interface
+ options.services.kubernetes.controllerManager = with lib.types; {
+
+ allocateNodeCIDRs = mkOption {
+ description = "Whether to automatically allocate CIDR ranges for cluster nodes.";
+ default = true;
+ type = bool;
+ };
+
+ bindAddress = mkOption {
+ description = "Kubernetes controller manager listening address.";
+ default = "127.0.0.1";
+ type = str;
+ };
+
+ clusterCidr = mkOption {
+ description = "Kubernetes CIDR Range for Pods in cluster.";
+ default = top.clusterCidr;
+ type = str;
+ };
+
+ enable = mkEnableOption "Kubernetes controller manager";
+
+ extraOpts = mkOption {
+ description = "Kubernetes controller manager extra command line options.";
+ default = "";
+ type = str;
+ };
+
+ featureGates = mkOption {
+ description = "List set of feature gates";
+ default = top.featureGates;
+ type = listOf str;
+ };
+
+ insecurePort = mkOption {
+ description = "Kubernetes controller manager insecure listening port.";
+ default = 0;
+ type = int;
+ };
+
+ kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes controller manager";
+
+ leaderElect = mkOption {
+ description = "Whether to start leader election before executing main loop.";
+ type = bool;
+ default = true;
+ };
+
+ rootCaFile = mkOption {
+ description = ''
+ Kubernetes controller manager certificate authority file included in
+ service account's token secret.
+ '';
+ default = top.caFile;
+ type = nullOr path;
+ };
+
+ securePort = mkOption {
+ description = "Kubernetes controller manager secure listening port.";
+ default = 10252;
+ type = int;
+ };
+
+ serviceAccountKeyFile = mkOption {
+ description = ''
+ Kubernetes controller manager PEM-encoded private RSA key file used to
+ sign service account tokens
+ '';
+ default = null;
+ type = nullOr path;
+ };
+
+ tlsCertFile = mkOption {
+ description = "Kubernetes controller-manager certificate file.";
+ default = null;
+ type = nullOr path;
+ };
+
+ tlsKeyFile = mkOption {
+ description = "Kubernetes controller-manager private key file.";
+ default = null;
+ type = nullOr path;
+ };
+
+ verbosity = mkOption {
+ description = ''
+ Optional glog verbosity level for logging statements. See
+
+ '';
+ default = null;
+ type = nullOr int;
+ };
+
+ };
+
+ ###### implementation
+ config = let
+
+ controllerManagerPaths = filter (a: a != null) [
+ cfg.kubeconfig.caFile
+ cfg.kubeconfig.certFile
+ cfg.kubeconfig.keyFile
+ cfg.rootCaFile
+ cfg.serviceAccountKeyFile
+ cfg.tlsCertFile
+ cfg.tlsKeyFile
+ ];
+
+ in mkIf cfg.enable {
+ systemd.services.kube-controller-manager = rec {
+ description = "Kubernetes Controller Manager Service";
+ wantedBy = [ "kube-control-plane-online.target" ];
+ after = [ "kube-apiserver.service" ];
+ before = [ "kube-control-plane-online.target" ];
+ environment.KUBECONFIG = top.lib.mkKubeConfig "kube-controller-manager" cfg.kubeconfig;
+ preStart = ''
+ until kubectl auth can-i get /api -q 2>/dev/null; do
+ echo kubectl auth can-i get /api: exit status $?
+ sleep 2
+ done
+ '';
+ serviceConfig = {
+ RestartSec = "30s";
+ Restart = "on-failure";
+ Slice = "kubernetes.slice";
+ ExecStart = ''${top.package}/bin/kube-controller-manager \
+ --allocate-node-cidrs=${boolToString cfg.allocateNodeCIDRs} \
+ --bind-address=${cfg.bindAddress} \
+ ${optionalString (cfg.clusterCidr!=null)
+ "--cluster-cidr=${cfg.clusterCidr}"} \
+ ${optionalString (cfg.featureGates != [])
+ "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+ --kubeconfig=${environment.KUBECONFIG} \
+ --leader-elect=${boolToString cfg.leaderElect} \
+ ${optionalString (cfg.rootCaFile!=null)
+ "--root-ca-file=${cfg.rootCaFile}"} \
+ --port=${toString cfg.insecurePort} \
+ --secure-port=${toString cfg.securePort} \
+ ${optionalString (cfg.serviceAccountKeyFile!=null)
+ "--service-account-private-key-file=${cfg.serviceAccountKeyFile}"} \
+ ${optionalString (cfg.tlsCertFile!=null)
+ "--tls-cert-file=${cfg.tlsCertFile}"} \
+ ${optionalString (cfg.tlsKeyFile!=null)
+ "--tls-private-key-file=${cfg.tlsKeyFile}"} \
+ ${optionalString (elem "RBAC" top.apiserver.authorizationMode)
+ "--use-service-account-credentials"} \
+ ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+ ${cfg.extraOpts}
+ '';
+ WorkingDirectory = top.dataDir;
+ User = "kubernetes";
+ Group = "kubernetes";
+ };
+ path = top.path ++ [ pkgs.kubectl ];
+ unitConfig.ConditionPathExists = controllerManagerPaths;
+ };
+
+ systemd.paths.kube-controller-manager = {
+ wantedBy = [ "kube-controller-manager.service" ];
+ pathConfig = {
+ PathExists = controllerManagerPaths;
+ PathChanged = controllerManagerPaths;
+ };
+ };
+
+ services.kubernetes.pki.certs = with top.lib; {
+ controllerManager = mkCert {
+ name = "kube-controller-manager";
+ CN = "kube-controller-manager";
+ action = "systemctl restart kube-controller-manager.service";
+ };
+ controllerManagerClient = mkCert {
+ name = "kube-controller-manager-client";
+ CN = "system:kube-controller-manager";
+ action = "systemctl restart kube-controller-manager.service";
+ };
+ };
+
+ services.kubernetes.controllerManager.kubeconfig.server = mkDefault top.apiserverAddress;
+ };
+}
diff --git a/nixos/modules/services/cluster/kubernetes/default.nix b/nixos/modules/services/cluster/kubernetes/default.nix
index aeaa6bd66c99fb57648d1cd7e60610a51f81cc7f..5e46bfc4240f1e1a1daa67b49b2a22b1c2c9cd88 100644
--- a/nixos/modules/services/cluster/kubernetes/default.nix
+++ b/nixos/modules/services/cluster/kubernetes/default.nix
@@ -5,74 +5,52 @@ with lib;
let
cfg = config.services.kubernetes;
- # YAML config; see:
- # https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/
- # https://github.com/kubernetes/kubernetes/blob/release-1.10/pkg/kubelet/apis/kubeletconfig/v1beta1/types.go
- #
- # TODO: migrate the following flags to this config file
- #
- # --pod-manifest-path
- # --address
- # --port
- # --tls-cert-file
- # --tls-private-key-file
- # --client-ca-file
- # --authentication-token-webhook
- # --authentication-token-webhook-cache-ttl
- # --authorization-mode
- # --healthz-bind-address
- # --healthz-port
- # --allow-privileged
- # --cluster-dns
- # --cluster-domain
- # --hairpin-mode
- # --feature-gates
- kubeletConfig = pkgs.runCommand "kubelet-config.yaml" { } ''
- echo > $out ${pkgs.lib.escapeShellArg (builtins.toJSON {
- kind = "KubeletConfiguration";
- apiVersion = "kubelet.config.k8s.io/v1beta1";
- ${if cfg.kubelet.applyManifests then "staticPodPath" else null} =
- manifests;
- })}
- '';
-
- infraContainer = pkgs.dockerTools.buildImage {
- name = "pause";
- tag = "latest";
- contents = cfg.package.pause;
- config.Cmd = "/bin/pause";
- };
-
- mkKubeConfig = name: cfg: pkgs.writeText "${name}-kubeconfig" (builtins.toJSON {
+ mkKubeConfig = name: conf: pkgs.writeText "${name}-kubeconfig" (builtins.toJSON {
apiVersion = "v1";
kind = "Config";
clusters = [{
name = "local";
- cluster.certificate-authority = cfg.caFile;
- cluster.server = cfg.server;
+ cluster.certificate-authority = conf.caFile or cfg.caFile;
+ cluster.server = conf.server;
}];
users = [{
- name = "kubelet";
+ inherit name;
user = {
- client-certificate = cfg.certFile;
- client-key = cfg.keyFile;
+ client-certificate = conf.certFile;
+ client-key = conf.keyFile;
};
}];
contexts = [{
context = {
cluster = "local";
- user = "kubelet";
+ user = name;
};
- current-context = "kubelet-context";
+ current-context = "local";
}];
});
+ caCert = secret "ca";
+
+ etcdEndpoints = ["https://${cfg.masterAddress}:2379"];
+
+ mkCert = { name, CN, hosts ? [], fields ? {}, action ? "",
+ privateKeyOwner ? "kubernetes" }: rec {
+ inherit name caCert CN hosts fields action;
+ cert = secret name;
+ key = secret "${name}-key";
+ privateKeyOptions = {
+ owner = privateKeyOwner;
+ group = "nogroup";
+ mode = "0600";
+ path = key;
+ };
+ };
+
+ secret = name: "${cfg.secretsPath}/${name}.pem";
+
mkKubeConfigOptions = prefix: {
server = mkOption {
description = "${prefix} kube-apiserver server address.";
- default = "http://${if cfg.apiserver.advertiseAddress != null
- then cfg.apiserver.advertiseAddress
- else "127.0.0.1"}:${toString cfg.apiserver.port}";
type = types.str;
};
@@ -101,66 +79,6 @@ let
certFile = mkDefault cfg.kubeconfig.certFile;
keyFile = mkDefault cfg.kubeconfig.keyFile;
};
-
- cniConfig =
- if cfg.kubelet.cni.config != [] && !(isNull cfg.kubelet.cni.configDir) then
- throw "Verbatim CNI-config and CNI configDir cannot both be set."
- else if !(isNull cfg.kubelet.cni.configDir) then
- cfg.kubelet.cni.configDir
- else
- (pkgs.buildEnv {
- name = "kubernetes-cni-config";
- paths = imap (i: entry:
- pkgs.writeTextDir "${toString (10+i)}-${entry.type}.conf" (builtins.toJSON entry)
- ) cfg.kubelet.cni.config;
- });
-
- manifests = pkgs.buildEnv {
- name = "kubernetes-manifests";
- paths = mapAttrsToList (name: manifest:
- pkgs.writeTextDir "${name}.json" (builtins.toJSON manifest)
- ) cfg.kubelet.manifests;
- };
-
- addons = pkgs.runCommand "kubernetes-addons" { } ''
- mkdir -p $out
- # since we are mounting the addons to the addon manager, they need to be copied
- ${concatMapStringsSep ";" (a: "cp -v ${a}/* $out/") (mapAttrsToList (name: addon:
- pkgs.writeTextDir "${name}.json" (builtins.toJSON addon)
- ) (cfg.addonManager.addons))}
- '';
-
- taintOptions = { name, ... }: {
- options = {
- key = mkOption {
- description = "Key of taint.";
- default = name;
- type = types.str;
- };
- value = mkOption {
- description = "Value of taint.";
- type = types.str;
- };
- effect = mkOption {
- description = "Effect of taint.";
- example = "NoSchedule";
- type = types.enum ["NoSchedule" "PreferNoSchedule" "NoExecute"];
- };
- };
- };
-
- taints = concatMapStringsSep "," (v: "${v.key}=${v.value}:${v.effect}") (mapAttrsToList (n: v: v) cfg.kubelet.taints);
-
- # needed for flannel to pass options to docker
- mkDockerOpts = pkgs.runCommand "mk-docker-opts" {
- buildInputs = [ pkgs.makeWrapper ];
- } ''
- mkdir -p $out
- cp ${pkgs.kubernetes.src}/cluster/centos/node/bin/mk-docker-opts.sh $out/mk-docker-opts.sh
-
- # bashInteractive needed for `compgen`
- makeWrapper ${pkgs.bashInteractive}/bin/bash $out/mk-docker-opts --add-flags "$out/mk-docker-opts.sh"
- '';
in {
###### interface
@@ -170,8 +88,9 @@ in {
description = ''
Kubernetes role that this machine should take.
- Master role will enable etcd, apiserver, scheduler and controller manager
- services. Node role will enable etcd, docker, kubelet and proxy services.
+ Master role will enable etcd, apiserver, scheduler, controller manager
+ addon manager, flannel and proxy services.
+ Node role will enable flannel, docker, kubelet and proxy services.
'';
default = [];
type = types.listOf (types.enum ["master" "node"]);
@@ -184,40 +103,17 @@ in {
defaultText = "pkgs.kubernetes";
};
- verbose = mkOption {
- description = "Kubernetes enable verbose mode for debugging.";
- default = false;
- type = types.bool;
- };
-
- etcd = {
- servers = mkOption {
- description = "List of etcd servers. By default etcd is started, except if this option is changed.";
- default = ["http://127.0.0.1:2379"];
- type = types.listOf types.str;
- };
-
- keyFile = mkOption {
- description = "Etcd key file.";
- default = null;
- type = types.nullOr types.path;
- };
-
- certFile = mkOption {
- description = "Etcd cert file.";
- default = null;
- type = types.nullOr types.path;
- };
+ kubeconfig = mkKubeConfigOptions "Default kubeconfig";
- caFile = mkOption {
- description = "Etcd ca file.";
- default = cfg.caFile;
- type = types.nullOr types.path;
- };
+ apiserverAddress = mkOption {
+ description = ''
+ Clusterwide accessible address for the kubernetes apiserver,
+ including protocol and optional port.
+ '';
+ example = "https://kubernetes-apiserver.example.com:6443";
+ type = types.str;
};
- kubeconfig = mkKubeConfigOptions "Default kubeconfig";
-
caFile = mkOption {
description = "Default kubernetes certificate authority";
type = types.nullOr types.path;
@@ -230,556 +126,22 @@ in {
type = types.path;
};
+ easyCerts = mkOption {
+ description = "Automatically setup x509 certificates and keys for the entire cluster.";
+ default = false;
+ type = types.bool;
+ };
+
featureGates = mkOption {
- description = "List set of feature gates";
+ description = "List set of feature gates.";
default = [];
type = types.listOf types.str;
};
- apiserver = {
- enable = mkOption {
- description = "Whether to enable Kubernetes apiserver.";
- default = false;
- type = types.bool;
- };
-
- featureGates = mkOption {
- description = "List set of feature gates";
- default = cfg.featureGates;
- type = types.listOf types.str;
- };
-
- bindAddress = mkOption {
- description = ''
- The IP address on which to listen for the --secure-port port.
- The associated interface(s) must be reachable by the rest
- of the cluster, and by CLI/web clients.
- '';
- default = "0.0.0.0";
- type = types.str;
- };
-
- advertiseAddress = mkOption {
- description = ''
- Kubernetes apiserver IP address on which to advertise the apiserver
- to members of the cluster. This address must be reachable by the rest
- of the cluster.
- '';
- default = null;
- type = types.nullOr types.str;
- };
-
- storageBackend = mkOption {
- description = ''
- Kubernetes apiserver storage backend.
- '';
- default = "etcd3";
- type = types.enum ["etcd2" "etcd3"];
- };
-
- port = mkOption {
- description = "Kubernetes apiserver listening port.";
- default = 8080;
- type = types.int;
- };
-
- securePort = mkOption {
- description = "Kubernetes apiserver secure port.";
- default = 443;
- type = types.int;
- };
-
- tlsCertFile = mkOption {
- description = "Kubernetes apiserver certificate file.";
- default = null;
- type = types.nullOr types.path;
- };
-
- tlsKeyFile = mkOption {
- description = "Kubernetes apiserver private key file.";
- default = null;
- type = types.nullOr types.path;
- };
-
- clientCaFile = mkOption {
- description = "Kubernetes apiserver CA file for client auth.";
- default = cfg.caFile;
- type = types.nullOr types.path;
- };
-
- tokenAuthFile = mkOption {
- description = ''
- Kubernetes apiserver token authentication file. See
-
- '';
- default = null;
- type = types.nullOr types.path;
- };
-
- basicAuthFile = mkOption {
- description = ''
- Kubernetes apiserver basic authentication file. See
-
- '';
- default = pkgs.writeText "users" ''
- kubernetes,admin,0
- '';
- type = types.nullOr types.path;
- };
-
- authorizationMode = mkOption {
- description = ''
- Kubernetes apiserver authorization mode (AlwaysAllow/AlwaysDeny/ABAC/Webhook/RBAC/Node). See
-
- '';
- default = ["RBAC" "Node"];
- type = types.listOf (types.enum ["AlwaysAllow" "AlwaysDeny" "ABAC" "Webhook" "RBAC" "Node"]);
- };
-
- authorizationPolicy = mkOption {
- description = ''
- Kubernetes apiserver authorization policy file. See
-
- '';
- default = [];
- type = types.listOf types.attrs;
- };
-
- webhookConfig = mkOption {
- description = ''
- Kubernetes apiserver Webhook config file. It uses the kubeconfig file format.
- See
- '';
- default = null;
- type = types.nullOr types.path;
- };
-
- allowPrivileged = mkOption {
- description = "Whether to allow privileged containers on Kubernetes.";
- default = true;
- type = types.bool;
- };
-
- serviceClusterIpRange = mkOption {
- description = ''
- A CIDR notation IP range from which to assign service cluster IPs.
- This must not overlap with any IP ranges assigned to nodes for pods.
- '';
- default = "10.0.0.0/24";
- type = types.str;
- };
-
- runtimeConfig = mkOption {
- description = ''
- Api runtime configuration. See
-
- '';
- default = "authentication.k8s.io/v1beta1=true";
- example = "api/all=false,api/v1=true";
- type = types.str;
- };
-
- enableAdmissionPlugins = mkOption {
- description = ''
- Kubernetes admission control plugins to enable. See
-
- '';
- default = ["NamespaceLifecycle" "LimitRanger" "ServiceAccount" "ResourceQuota" "DefaultStorageClass" "DefaultTolerationSeconds" "NodeRestriction"];
- example = [
- "NamespaceLifecycle" "NamespaceExists" "LimitRanger"
- "SecurityContextDeny" "ServiceAccount" "ResourceQuota"
- "PodSecurityPolicy" "NodeRestriction" "DefaultStorageClass"
- ];
- type = types.listOf types.str;
- };
-
- disableAdmissionPlugins = mkOption {
- description = ''
- Kubernetes admission control plugins to disable. See
-
- '';
- default = [];
- type = types.listOf types.str;
- };
-
- serviceAccountKeyFile = mkOption {
- description = ''
- Kubernetes apiserver PEM-encoded x509 RSA private or public key file,
- used to verify ServiceAccount tokens. By default tls private key file
- is used.
- '';
- default = null;
- type = types.nullOr types.path;
- };
-
- kubeletClientCaFile = mkOption {
- description = "Path to a cert file for connecting to kubelet.";
- default = cfg.caFile;
- type = types.nullOr types.path;
- };
-
- kubeletClientCertFile = mkOption {
- description = "Client certificate to use for connections to kubelet.";
- default = null;
- type = types.nullOr types.path;
- };
-
- kubeletClientKeyFile = mkOption {
- description = "Key to use for connections to kubelet.";
- default = null;
- type = types.nullOr types.path;
- };
-
- kubeletHttps = mkOption {
- description = "Whether to use https for connections to kubelet.";
- default = true;
- type = types.bool;
- };
-
- extraOpts = mkOption {
- description = "Kubernetes apiserver extra command line options.";
- default = "";
- type = types.str;
- };
- };
-
- scheduler = {
- enable = mkOption {
- description = "Whether to enable Kubernetes scheduler.";
- default = false;
- type = types.bool;
- };
-
- featureGates = mkOption {
- description = "List set of feature gates";
- default = cfg.featureGates;
- type = types.listOf types.str;
- };
-
- address = mkOption {
- description = "Kubernetes scheduler listening address.";
- default = "127.0.0.1";
- type = types.str;
- };
-
- port = mkOption {
- description = "Kubernetes scheduler listening port.";
- default = 10251;
- type = types.int;
- };
-
- leaderElect = mkOption {
- description = "Whether to start leader election before executing main loop.";
- type = types.bool;
- default = true;
- };
-
- kubeconfig = mkKubeConfigOptions "Kubernetes scheduler";
-
- extraOpts = mkOption {
- description = "Kubernetes scheduler extra command line options.";
- default = "";
- type = types.str;
- };
- };
-
- controllerManager = {
- enable = mkOption {
- description = "Whether to enable Kubernetes controller manager.";
- default = false;
- type = types.bool;
- };
-
- featureGates = mkOption {
- description = "List set of feature gates";
- default = cfg.featureGates;
- type = types.listOf types.str;
- };
-
- address = mkOption {
- description = "Kubernetes controller manager listening address.";
- default = "127.0.0.1";
- type = types.str;
- };
-
- port = mkOption {
- description = "Kubernetes controller manager listening port.";
- default = 10252;
- type = types.int;
- };
-
- leaderElect = mkOption {
- description = "Whether to start leader election before executing main loop.";
- type = types.bool;
- default = true;
- };
-
- serviceAccountKeyFile = mkOption {
- description = ''
- Kubernetes controller manager PEM-encoded private RSA key file used to
- sign service account tokens
- '';
- default = null;
- type = types.nullOr types.path;
- };
-
- rootCaFile = mkOption {
- description = ''
- Kubernetes controller manager certificate authority file included in
- service account's token secret.
- '';
- default = cfg.caFile;
- type = types.nullOr types.path;
- };
-
- kubeconfig = mkKubeConfigOptions "Kubernetes controller manager";
-
- extraOpts = mkOption {
- description = "Kubernetes controller manager extra command line options.";
- default = "";
- type = types.str;
- };
- };
-
- kubelet = {
- enable = mkOption {
- description = "Whether to enable Kubernetes kubelet.";
- default = false;
- type = types.bool;
- };
-
- featureGates = mkOption {
- description = "List set of feature gates";
- default = cfg.featureGates;
- type = types.listOf types.str;
- };
-
- seedDockerImages = mkOption {
- description = "List of docker images to preload on system";
- default = [];
- type = types.listOf types.package;
- };
-
- registerNode = mkOption {
- description = "Whether to auto register kubelet with API server.";
- default = true;
- type = types.bool;
- };
-
- address = mkOption {
- description = "Kubernetes kubelet info server listening address.";
- default = "0.0.0.0";
- type = types.str;
- };
-
- port = mkOption {
- description = "Kubernetes kubelet info server listening port.";
- default = 10250;
- type = types.int;
- };
-
- tlsCertFile = mkOption {
- description = "File containing x509 Certificate for HTTPS.";
- default = null;
- type = types.nullOr types.path;
- };
-
- tlsKeyFile = mkOption {
- description = "File containing x509 private key matching tlsCertFile.";
- default = null;
- type = types.nullOr types.path;
- };
-
- clientCaFile = mkOption {
- description = "Kubernetes apiserver CA file for client authentication.";
- default = cfg.caFile;
- type = types.nullOr types.path;
- };
-
- healthz = {
- bind = mkOption {
- description = "Kubernetes kubelet healthz listening address.";
- default = "127.0.0.1";
- type = types.str;
- };
-
- port = mkOption {
- description = "Kubernetes kubelet healthz port.";
- default = 10248;
- type = types.int;
- };
- };
-
- hostname = mkOption {
- description = "Kubernetes kubelet hostname override.";
- default = config.networking.hostName;
- type = types.str;
- };
-
- allowPrivileged = mkOption {
- description = "Whether to allow Kubernetes containers to request privileged mode.";
- default = true;
- type = types.bool;
- };
-
- # TODO: remove this deprecated flag
- cadvisorPort = mkOption {
- description = "Kubernetes kubelet local cadvisor port.";
- default = 4194;
- type = types.int;
- };
-
- clusterDns = mkOption {
- description = "Use alternative DNS.";
- default = "10.1.0.1";
- type = types.str;
- };
-
- clusterDomain = mkOption {
- description = "Use alternative domain.";
- default = config.services.kubernetes.addons.dns.clusterDomain;
- type = types.str;
- };
-
- networkPlugin = mkOption {
- description = "Network plugin to use by Kubernetes.";
- type = types.nullOr (types.enum ["cni" "kubenet"]);
- default = "kubenet";
- };
-
- cni = {
- packages = mkOption {
- description = "List of network plugin packages to install.";
- type = types.listOf types.package;
- default = [];
- };
-
- config = mkOption {
- description = "Kubernetes CNI configuration.";
- type = types.listOf types.attrs;
- default = [];
- example = literalExample ''
- [{
- "cniVersion": "0.2.0",
- "name": "mynet",
- "type": "bridge",
- "bridge": "cni0",
- "isGateway": true,
- "ipMasq": true,
- "ipam": {
- "type": "host-local",
- "subnet": "10.22.0.0/16",
- "routes": [
- { "dst": "0.0.0.0/0" }
- ]
- }
- } {
- "cniVersion": "0.2.0",
- "type": "loopback"
- }]
- '';
- };
-
- configDir = mkOption {
- description = "Path to Kubernetes CNI configuration directory.";
- type = types.nullOr types.path;
- default = null;
- };
- };
-
- manifests = mkOption {
- description = "List of manifests to bootstrap with kubelet (only pods can be created as manifest entry)";
- type = types.attrsOf types.attrs;
- default = {};
- };
-
- applyManifests = mkOption {
- description = "Whether to apply manifests (this is true for master node).";
- default = false;
- type = types.bool;
- };
-
- unschedulable = mkOption {
- description = "Whether to set node taint to unschedulable=true as it is the case of node that has only master role.";
- default = false;
- type = types.bool;
- };
-
- taints = mkOption {
- description = "Node taints (https://kubernetes.io/docs/concepts/configuration/assign-pod-node/).";
- default = {};
- type = types.attrsOf (types.submodule [ taintOptions ]);
- };
-
- nodeIp = mkOption {
- description = "IP address of the node. If set, kubelet will use this IP address for the node.";
- default = null;
- type = types.nullOr types.str;
- };
-
- kubeconfig = mkKubeConfigOptions "Kubelet";
-
- extraOpts = mkOption {
- description = "Kubernetes kubelet extra command line options.";
- default = "";
- type = types.str;
- };
- };
-
- proxy = {
- enable = mkOption {
- description = "Whether to enable Kubernetes proxy.";
- default = false;
- type = types.bool;
- };
-
- featureGates = mkOption {
- description = "List set of feature gates";
- default = cfg.featureGates;
- type = types.listOf types.str;
- };
-
- address = mkOption {
- description = "Kubernetes proxy listening address.";
- default = "0.0.0.0";
- type = types.str;
- };
-
- kubeconfig = mkKubeConfigOptions "Kubernetes proxy";
-
- extraOpts = mkOption {
- description = "Kubernetes proxy extra command line options.";
- default = "";
- type = types.str;
- };
- };
-
- addonManager = {
- enable = mkOption {
- description = "Whether to enable Kubernetes addon manager.";
- default = false;
- type = types.bool;
- };
-
- addons = mkOption {
- description = "Kubernetes addons (any kind of Kubernetes resource can be an addon).";
- default = { };
- type = types.attrsOf (types.either types.attrs (types.listOf types.attrs));
- example = literalExample ''
- {
- "my-service" = {
- "apiVersion" = "v1";
- "kind" = "Service";
- "metadata" = {
- "name" = "my-service";
- "namespace" = "default";
- };
- "spec" = { ... };
- };
- }
- // import { cfg = config.services.kubernetes; };
- '';
- };
+ masterAddress = mkOption {
+ description = "Clusterwide available network address or hostname for the kubernetes master server.";
+ example = "master.example.com";
+ type = types.str;
};
path = mkOption {
@@ -791,308 +153,78 @@ in {
clusterCidr = mkOption {
description = "Kubernetes controller manager and proxy CIDR Range for Pods in cluster.";
default = "10.1.0.0/16";
- type = types.str;
+ type = types.nullOr types.str;
};
- flannel.enable = mkOption {
- description = "Whether to enable flannel networking";
- default = false;
- type = types.bool;
+ lib = mkOption {
+ description = "Common functions for the kubernetes modules.";
+ default = {
+ inherit mkCert;
+ inherit mkKubeConfig;
+ inherit mkKubeConfigOptions;
+ };
+ type = types.attrs;
};
+ secretsPath = mkOption {
+ description = "Default location for kubernetes secrets. Not a store location.";
+ type = types.path;
+ default = cfg.dataDir + "/secrets";
+ };
};
###### implementation
config = mkMerge [
- (mkIf cfg.kubelet.enable {
- services.kubernetes.kubelet.seedDockerImages = [infraContainer];
-
- systemd.services.kubelet-bootstrap = {
- description = "Boostrap Kubelet";
- wantedBy = ["kubernetes.target"];
- after = ["docker.service" "network.target"];
- path = with pkgs; [ docker ];
- script = ''
- ${concatMapStrings (img: ''
- echo "Seeding docker image: ${img}"
- docker load <${img}
- '') cfg.kubelet.seedDockerImages}
-
- rm /opt/cni/bin/* || true
- ${concatMapStrings (package: ''
- echo "Linking cni package: ${package}"
- ln -fs ${package}/bin/* /opt/cni/bin
- '') cfg.kubelet.cni.packages}
- '';
- serviceConfig = {
- Slice = "kubernetes.slice";
- Type = "oneshot";
- };
- };
-
- systemd.services.kubelet = {
- description = "Kubernetes Kubelet Service";
- wantedBy = [ "kubernetes.target" ];
- after = [ "network.target" "docker.service" "kube-apiserver.service" "kubelet-bootstrap.service" ];
- path = with pkgs; [ gitMinimal openssh docker utillinux iproute ethtool thin-provisioning-tools iptables socat ] ++ cfg.path;
- serviceConfig = {
- Slice = "kubernetes.slice";
- CPUAccounting = true;
- MemoryAccounting = true;
- ExecStart = ''${cfg.package}/bin/kubelet \
- ${optionalString (taints != "")
- "--register-with-taints=${taints}"} \
- --kubeconfig=${mkKubeConfig "kubelet" cfg.kubelet.kubeconfig} \
- --config=${kubeletConfig} \
- --address=${cfg.kubelet.address} \
- --port=${toString cfg.kubelet.port} \
- --register-node=${boolToString cfg.kubelet.registerNode} \
- ${optionalString (cfg.kubelet.tlsCertFile != null)
- "--tls-cert-file=${cfg.kubelet.tlsCertFile}"} \
- ${optionalString (cfg.kubelet.tlsKeyFile != null)
- "--tls-private-key-file=${cfg.kubelet.tlsKeyFile}"} \
- ${optionalString (cfg.kubelet.clientCaFile != null)
- "--client-ca-file=${cfg.kubelet.clientCaFile}"} \
- --authentication-token-webhook \
- --authentication-token-webhook-cache-ttl="10s" \
- --authorization-mode=Webhook \
- --healthz-bind-address=${cfg.kubelet.healthz.bind} \
- --healthz-port=${toString cfg.kubelet.healthz.port} \
- --hostname-override=${cfg.kubelet.hostname} \
- --allow-privileged=${boolToString cfg.kubelet.allowPrivileged} \
- --root-dir=${cfg.dataDir} \
- --cadvisor_port=${toString cfg.kubelet.cadvisorPort} \
- ${optionalString (cfg.kubelet.clusterDns != "")
- "--cluster-dns=${cfg.kubelet.clusterDns}"} \
- ${optionalString (cfg.kubelet.clusterDomain != "")
- "--cluster-domain=${cfg.kubelet.clusterDomain}"} \
- --pod-infra-container-image=pause \
- ${optionalString (cfg.kubelet.networkPlugin != null)
- "--network-plugin=${cfg.kubelet.networkPlugin}"} \
- --cni-conf-dir=${cniConfig} \
- --hairpin-mode=hairpin-veth \
- ${optionalString (cfg.kubelet.nodeIp != null)
- "--node-ip=${cfg.kubelet.nodeIp}"} \
- ${optionalString (cfg.kubelet.featureGates != [])
- "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.kubelet.featureGates}"} \
- ${optionalString cfg.verbose "--v=6 --log_flush_frequency=1s"} \
- ${cfg.kubelet.extraOpts}
- '';
- WorkingDirectory = cfg.dataDir;
- };
- };
-
- # Allways include cni plugins
- services.kubernetes.kubelet.cni.packages = [pkgs.cni-plugins];
-
- boot.kernelModules = ["br_netfilter"];
- services.kubernetes.kubelet.kubeconfig = kubeConfigDefaults;
+ (mkIf cfg.easyCerts {
+ services.kubernetes.pki.enable = mkDefault true;
+ services.kubernetes.caFile = caCert;
})
- (mkIf (cfg.kubelet.applyManifests && cfg.kubelet.enable) {
- environment.etc = mapAttrs' (name: manifest:
- nameValuePair "kubernetes/manifests/${name}.json" {
- text = builtins.toJSON manifest;
- mode = "0755";
- }
- ) cfg.kubelet.manifests;
- })
-
- (mkIf (cfg.kubelet.unschedulable && cfg.kubelet.enable) {
- services.kubernetes.kubelet.taints.unschedulable = {
- value = "true";
- effect = "NoSchedule";
- };
- })
-
- (mkIf cfg.apiserver.enable {
- systemd.services.kube-apiserver = {
- description = "Kubernetes APIServer Service";
- wantedBy = [ "kubernetes.target" ];
- after = [ "network.target" "docker.service" ];
- serviceConfig = {
- Slice = "kubernetes.slice";
- ExecStart = ''${cfg.package}/bin/kube-apiserver \
- --etcd-servers=${concatStringsSep "," cfg.etcd.servers} \
- ${optionalString (cfg.etcd.caFile != null)
- "--etcd-cafile=${cfg.etcd.caFile}"} \
- ${optionalString (cfg.etcd.certFile != null)
- "--etcd-certfile=${cfg.etcd.certFile}"} \
- ${optionalString (cfg.etcd.keyFile != null)
- "--etcd-keyfile=${cfg.etcd.keyFile}"} \
- --insecure-port=${toString cfg.apiserver.port} \
- --bind-address=${cfg.apiserver.bindAddress} \
- ${optionalString (cfg.apiserver.advertiseAddress != null)
- "--advertise-address=${cfg.apiserver.advertiseAddress}"} \
- --allow-privileged=${boolToString cfg.apiserver.allowPrivileged}\
- ${optionalString (cfg.apiserver.tlsCertFile != null)
- "--tls-cert-file=${cfg.apiserver.tlsCertFile}"} \
- ${optionalString (cfg.apiserver.tlsKeyFile != null)
- "--tls-private-key-file=${cfg.apiserver.tlsKeyFile}"} \
- ${optionalString (cfg.apiserver.tokenAuthFile != null)
- "--token-auth-file=${cfg.apiserver.tokenAuthFile}"} \
- ${optionalString (cfg.apiserver.basicAuthFile != null)
- "--basic-auth-file=${cfg.apiserver.basicAuthFile}"} \
- --kubelet-https=${if cfg.apiserver.kubeletHttps then "true" else "false"} \
- ${optionalString (cfg.apiserver.kubeletClientCaFile != null)
- "--kubelet-certificate-authority=${cfg.apiserver.kubeletClientCaFile}"} \
- ${optionalString (cfg.apiserver.kubeletClientCertFile != null)
- "--kubelet-client-certificate=${cfg.apiserver.kubeletClientCertFile}"} \
- ${optionalString (cfg.apiserver.kubeletClientKeyFile != null)
- "--kubelet-client-key=${cfg.apiserver.kubeletClientKeyFile}"} \
- ${optionalString (cfg.apiserver.clientCaFile != null)
- "--client-ca-file=${cfg.apiserver.clientCaFile}"} \
- --authorization-mode=${concatStringsSep "," cfg.apiserver.authorizationMode} \
- ${optionalString (elem "ABAC" cfg.apiserver.authorizationMode)
- "--authorization-policy-file=${
- pkgs.writeText "kube-auth-policy.jsonl"
- (concatMapStringsSep "\n" (l: builtins.toJSON l) cfg.apiserver.authorizationPolicy)
- }"
- } \
- ${optionalString (elem "Webhook" cfg.apiserver.authorizationMode)
- "--authorization-webhook-config-file=${cfg.apiserver.webhookConfig}"
- } \
- --secure-port=${toString cfg.apiserver.securePort} \
- --service-cluster-ip-range=${cfg.apiserver.serviceClusterIpRange} \
- ${optionalString (cfg.apiserver.runtimeConfig != "")
- "--runtime-config=${cfg.apiserver.runtimeConfig}"} \
- --enable-admission-plugins=${concatStringsSep "," cfg.apiserver.enableAdmissionPlugins} \
- --disable-admission-plugins=${concatStringsSep "," cfg.apiserver.disableAdmissionPlugins} \
- ${optionalString (cfg.apiserver.serviceAccountKeyFile!=null)
- "--service-account-key-file=${cfg.apiserver.serviceAccountKeyFile}"} \
- ${optionalString cfg.verbose "--v=6"} \
- ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
- --storage-backend=${cfg.apiserver.storageBackend} \
- ${optionalString (cfg.kubelet.featureGates != [])
- "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.kubelet.featureGates}"} \
- ${cfg.apiserver.extraOpts}
- '';
- WorkingDirectory = cfg.dataDir;
- User = "kubernetes";
- Group = "kubernetes";
- AmbientCapabilities = "cap_net_bind_service";
- Restart = "on-failure";
- RestartSec = 5;
- };
- };
- })
-
- (mkIf cfg.scheduler.enable {
- systemd.services.kube-scheduler = {
- description = "Kubernetes Scheduler Service";
- wantedBy = [ "kubernetes.target" ];
- after = [ "kube-apiserver.service" ];
- serviceConfig = {
- Slice = "kubernetes.slice";
- ExecStart = ''${cfg.package}/bin/kube-scheduler \
- --address=${cfg.scheduler.address} \
- --port=${toString cfg.scheduler.port} \
- --leader-elect=${boolToString cfg.scheduler.leaderElect} \
- --kubeconfig=${mkKubeConfig "kube-scheduler" cfg.scheduler.kubeconfig} \
- ${optionalString cfg.verbose "--v=6"} \
- ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
- ${optionalString (cfg.scheduler.featureGates != [])
- "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.scheduler.featureGates}"} \
- ${cfg.scheduler.extraOpts}
- '';
- WorkingDirectory = cfg.dataDir;
- User = "kubernetes";
- Group = "kubernetes";
- };
- };
-
- services.kubernetes.scheduler.kubeconfig = kubeConfigDefaults;
- })
-
- (mkIf cfg.controllerManager.enable {
- systemd.services.kube-controller-manager = {
- description = "Kubernetes Controller Manager Service";
- wantedBy = [ "kubernetes.target" ];
- after = [ "kube-apiserver.service" ];
- serviceConfig = {
- RestartSec = "30s";
- Restart = "on-failure";
- Slice = "kubernetes.slice";
- ExecStart = ''${cfg.package}/bin/kube-controller-manager \
- --address=${cfg.controllerManager.address} \
- --port=${toString cfg.controllerManager.port} \
- --kubeconfig=${mkKubeConfig "kube-controller-manager" cfg.controllerManager.kubeconfig} \
- --leader-elect=${boolToString cfg.controllerManager.leaderElect} \
- ${if (cfg.controllerManager.serviceAccountKeyFile!=null)
- then "--service-account-private-key-file=${cfg.controllerManager.serviceAccountKeyFile}"
- else "--service-account-private-key-file=/var/run/kubernetes/apiserver.key"} \
- ${if (cfg.controllerManager.rootCaFile!=null)
- then "--root-ca-file=${cfg.controllerManager.rootCaFile}"
- else "--root-ca-file=/var/run/kubernetes/apiserver.crt"} \
- ${optionalString (cfg.clusterCidr!=null)
- "--cluster-cidr=${cfg.clusterCidr}"} \
- --allocate-node-cidrs=true \
- ${optionalString (cfg.controllerManager.featureGates != [])
- "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.controllerManager.featureGates}"} \
- ${optionalString cfg.verbose "--v=6"} \
- ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
- ${cfg.controllerManager.extraOpts}
- '';
- WorkingDirectory = cfg.dataDir;
- User = "kubernetes";
- Group = "kubernetes";
+ (mkIf (elem "master" cfg.roles) {
+ services.kubernetes.apiserver.enable = mkDefault true;
+ services.kubernetes.scheduler.enable = mkDefault true;
+ services.kubernetes.controllerManager.enable = mkDefault true;
+ services.kubernetes.addonManager.enable = mkDefault true;
+ services.kubernetes.proxy.enable = mkDefault true;
+ services.etcd.enable = true; # Cannot mkDefault because of flannel default options
+ services.kubernetes.kubelet = {
+ enable = mkDefault true;
+ taints = mkIf (!(elem "node" cfg.roles)) {
+ master = {
+ key = "node-role.kubernetes.io/master";
+ value = "true";
+ effect = "NoSchedule";
+ };
};
- path = cfg.path;
};
-
- services.kubernetes.controllerManager.kubeconfig = kubeConfigDefaults;
})
- (mkIf cfg.proxy.enable {
- systemd.services.kube-proxy = {
- description = "Kubernetes Proxy Service";
- wantedBy = [ "kubernetes.target" ];
- after = [ "kube-apiserver.service" ];
- path = [pkgs.iptables pkgs.conntrack_tools];
- serviceConfig = {
- Slice = "kubernetes.slice";
- ExecStart = ''${cfg.package}/bin/kube-proxy \
- --kubeconfig=${mkKubeConfig "kube-proxy" cfg.proxy.kubeconfig} \
- --bind-address=${cfg.proxy.address} \
- ${optionalString (cfg.proxy.featureGates != [])
- "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.proxy.featureGates}"} \
- ${optionalString cfg.verbose "--v=6"} \
- ${optionalString cfg.verbose "--log-flush-frequency=1s"} \
- ${optionalString (cfg.clusterCidr!=null)
- "--cluster-cidr=${cfg.clusterCidr}"} \
- ${cfg.proxy.extraOpts}
- '';
- WorkingDirectory = cfg.dataDir;
- };
- };
-
- # kube-proxy needs iptables
- networking.firewall.enable = mkDefault true;
- services.kubernetes.proxy.kubeconfig = kubeConfigDefaults;
+ (mkIf (all (el: el == "master") cfg.roles) {
+ # if this node is only a master make it unschedulable by default
+ services.kubernetes.kubelet.unschedulable = mkDefault true;
})
- (mkIf (any (el: el == "master") cfg.roles) {
- virtualisation.docker.enable = mkDefault true;
+ (mkIf (elem "node" cfg.roles) {
services.kubernetes.kubelet.enable = mkDefault true;
- services.kubernetes.kubelet.allowPrivileged = mkDefault true;
- services.kubernetes.kubelet.applyManifests = mkDefault true;
- services.kubernetes.apiserver.enable = mkDefault true;
- services.kubernetes.scheduler.enable = mkDefault true;
- services.kubernetes.controllerManager.enable = mkDefault true;
- services.etcd.enable = mkDefault (cfg.etcd.servers == ["http://127.0.0.1:2379"]);
- services.kubernetes.addonManager.enable = mkDefault true;
services.kubernetes.proxy.enable = mkDefault true;
})
- # if this node is only a master make it unschedulable by default
- (mkIf (all (el: el == "master") cfg.roles) {
- services.kubernetes.kubelet.unschedulable = mkDefault true;
+ # Using "services.kubernetes.roles" will automatically enable easyCerts and flannel
+ (mkIf (cfg.roles != []) {
+ services.kubernetes.flannel.enable = mkDefault true;
+ services.flannel.etcd.endpoints = mkDefault etcdEndpoints;
+ services.kubernetes.easyCerts = mkDefault true;
+ })
+
+ (mkIf cfg.apiserver.enable {
+ services.kubernetes.pki.etcClusterAdminKubeconfig = mkDefault "kubernetes/cluster-admin.kubeconfig";
+ services.kubernetes.apiserver.etcd.servers = mkDefault etcdEndpoints;
})
- (mkIf (any (el: el == "node") cfg.roles) {
+ (mkIf cfg.kubelet.enable {
virtualisation.docker = {
enable = mkDefault true;
@@ -1102,26 +234,18 @@ in {
# iptables must be disabled for kubernetes
extraOptions = "--iptables=false --ip-masq=false";
};
-
- services.kubernetes.kubelet.enable = mkDefault true;
- services.kubernetes.proxy.enable = mkDefault true;
})
- (mkIf cfg.addonManager.enable {
- environment.etc."kubernetes/addons".source = "${addons}/";
-
- systemd.services.kube-addon-manager = {
- description = "Kubernetes addon manager";
- wantedBy = [ "kubernetes.target" ];
- after = [ "kube-apiserver.service" ];
- environment.ADDON_PATH = "/etc/kubernetes/addons/";
- path = [ pkgs.gawk ];
- serviceConfig = {
- Slice = "kubernetes.slice";
- ExecStart = "${cfg.package}/bin/kube-addons";
- WorkingDirectory = cfg.dataDir;
- User = "kubernetes";
- Group = "kubernetes";
+ (mkIf (cfg.apiserver.enable || cfg.controllerManager.enable) {
+ services.kubernetes.pki.certs = {
+ serviceAccount = mkCert {
+ name = "service-account";
+ CN = "system:service-account-signer";
+ action = ''
+ systemctl reload \
+ kube-apiserver.service \
+ kube-controller-manager.service
+ '';
};
};
})
@@ -1131,20 +255,43 @@ in {
cfg.scheduler.enable ||
cfg.controllerManager.enable ||
cfg.kubelet.enable ||
- cfg.proxy.enable
+ cfg.proxy.enable ||
+ cfg.addonManager.enable
) {
systemd.targets.kubernetes = {
description = "Kubernetes";
wantedBy = [ "multi-user.target" ];
};
+ systemd.targets.kube-control-plane-online = {
+ wantedBy = [ "kubernetes.target" ];
+ before = [ "kubernetes.target" ];
+ };
+
+ systemd.services.kube-control-plane-online = rec {
+ description = "Kubernetes control plane is online";
+ wantedBy = [ "kube-control-plane-online.target" ];
+ after = [ "kube-scheduler.service" "kube-controller-manager.service" ];
+ before = [ "kube-control-plane-online.target" ];
+ path = [ pkgs.curl ];
+ preStart = ''
+ until curl -Ssf ${cfg.apiserverAddress}/healthz do
+ echo curl -Ssf ${cfg.apiserverAddress}/healthz: exit status $?
+ sleep 3
+ done
+ '';
+ script = "echo Ok";
+ serviceConfig = {
+ TimeoutSec = "500";
+ };
+ };
+
systemd.tmpfiles.rules = [
"d /opt/cni/bin 0755 root root -"
- "d /var/run/kubernetes 0755 kubernetes kubernetes -"
+ "d /run/kubernetes 0755 kubernetes kubernetes -"
"d /var/lib/kubernetes 0755 kubernetes kubernetes -"
];
- environment.systemPackages = [ cfg.package ];
users.users = singleton {
name = "kubernetes";
uid = config.ids.uids.kubernetes;
@@ -1156,53 +303,14 @@ in {
};
users.groups.kubernetes.gid = config.ids.gids.kubernetes;
- # dns addon is enabled by default
+ # dns addon is enabled by default
services.kubernetes.addons.dns.enable = mkDefault true;
- })
-
- (mkIf cfg.flannel.enable {
- services.flannel = {
- enable = mkDefault true;
- network = mkDefault cfg.clusterCidr;
- etcd = mkDefault {
- endpoints = cfg.etcd.servers;
- inherit (cfg.etcd) caFile certFile keyFile;
- };
- };
- services.kubernetes.kubelet = {
- networkPlugin = mkDefault "cni";
- cni.config = mkDefault [{
- name = "mynet";
- type = "flannel";
- delegate = {
- isDefaultGateway = true;
- bridge = "docker0";
- };
- }];
- };
-
- systemd.services."mk-docker-opts" = {
- description = "Pre-Docker Actions";
- wantedBy = [ "flannel.service" ];
- before = [ "docker.service" ];
- after = [ "flannel.service" ];
- path = [ pkgs.gawk pkgs.gnugrep ];
- script = ''
- mkdir -p /run/flannel
- ${mkDockerOpts}/mk-docker-opts -d /run/flannel/docker
- '';
- serviceConfig.Type = "oneshot";
- };
- systemd.services.docker.serviceConfig.EnvironmentFile = "/run/flannel/docker";
-
- # read environment variables generated by mk-docker-opts
- virtualisation.docker.extraOptions = "$DOCKER_OPTS";
+ services.kubernetes.apiserverAddress = mkDefault ("https://${if cfg.apiserver.advertiseAddress != null
+ then cfg.apiserver.advertiseAddress
+ else "${cfg.masterAddress}:${toString cfg.apiserver.securePort}"}");
- networking.firewall.allowedUDPPorts = [
- 8285 # flannel udp
- 8472 # flannel vxlan
- ];
+ services.kubernetes.kubeconfig.server = mkDefault cfg.apiserverAddress;
})
];
}
diff --git a/nixos/modules/services/cluster/kubernetes/dns.nix b/nixos/modules/services/cluster/kubernetes/dns.nix
deleted file mode 100644
index 43bbb50a48d4de8b01a25f775634b0940f479592..0000000000000000000000000000000000000000
--- a/nixos/modules/services/cluster/kubernetes/dns.nix
+++ /dev/null
@@ -1,326 +0,0 @@
-{ config, pkgs, lib, ... }:
-
-with lib;
-
-let
- version = "1.14.10";
- cfg = config.services.kubernetes.addons.dns;
-in {
- options.services.kubernetes.addons.dns = {
- enable = mkEnableOption "kubernetes dns addon";
-
- clusterIp = mkOption {
- description = "Dns addon clusterIP";
-
- # this default is also what kubernetes users
- default = (
- concatStringsSep "." (
- take 3 (splitString "." config.services.kubernetes.apiserver.serviceClusterIpRange
- ))
- ) + ".254";
- type = types.str;
- };
-
- clusterDomain = mkOption {
- description = "Dns cluster domain";
- default = "cluster.local";
- type = types.str;
- };
-
- kube-dns = mkOption {
- description = "Docker image to seed for the kube-dns main container.";
- type = types.attrs;
- default = {
- imageName = "k8s.gcr.io/k8s-dns-kube-dns-amd64";
- imageDigest = "sha256:b99fc3eee2a9f052f7eb4cc00f15eb12fc405fa41019baa2d6b79847ae7284a8";
- finalImageTag = version;
- sha256 = "0x583znk9smqn0fix7ld8sm5jgaxhqhx3fq97b1wkqm7iwhvl3pj";
- };
- };
-
- dnsmasq-nanny = mkOption {
- description = "Docker image to seed for the kube-dns dnsmasq container.";
- type = types.attrs;
- default = {
- imageName = "k8s.gcr.io/k8s-dns-dnsmasq-nanny-amd64";
- imageDigest = "sha256:bbb2a290a568125b3b996028958eb773f33b5b87a6b37bf38a28f8b62dddb3c8";
- finalImageTag = version;
- sha256 = "1fihml7s2mfwgac51cbqpylkwbivc8nyhgi4vb820s83zvl8a6y1";
- };
- };
-
- sidecar = mkOption {
- description = "Docker image to seed for the kube-dns sidecar container.";
- type = types.attrs;
- default = {
- imageName = "k8s.gcr.io/k8s-dns-sidecar-amd64";
- imageDigest = "sha256:4f1ab957f87b94a5ec1edc26fae50da2175461f00afecf68940c4aa079bd08a4";
- finalImageTag = version;
- sha256 = "08l1bv5jgrhvjzpqpbinrkgvv52snc4fzyd8ya9v18ns2klyz7m0";
- };
- };
- };
-
- config = mkIf cfg.enable {
- services.kubernetes.kubelet.seedDockerImages = with pkgs.dockerTools; [
- (pullImage cfg.kube-dns)
- (pullImage cfg.dnsmasq-nanny)
- (pullImage cfg.sidecar)
- ];
-
- services.kubernetes.addonManager.addons = {
- kubedns-deployment = {
- apiVersion = "extensions/v1beta1";
- kind = "Deployment";
- metadata = {
- labels = {
- "addonmanager.kubernetes.io/mode" = "Reconcile";
- "k8s-app" = "kube-dns";
- "kubernetes.io/cluster-service" = "true";
- };
- name = "kube-dns";
- namespace = "kube-system";
- };
- spec = {
- selector.matchLabels."k8s-app" = "kube-dns";
- strategy = {
- rollingUpdate = {
- maxSurge = "10%";
- maxUnavailable = 0;
- };
- };
- template = {
- metadata = {
- annotations."scheduler.alpha.kubernetes.io/critical-pod" = "";
- labels.k8s-app = "kube-dns";
- };
- spec = {
- priorityClassName = "system-cluster-critical";
- containers = [
- {
- name = "kubedns";
- image = with cfg.kube-dns; "${imageName}:${finalImageTag}";
- resources = {
- limits.memory = "170Mi";
- requests = {
- cpu = "100m";
- memory = "70Mi";
- };
- };
- livenessProbe = {
- failureThreshold = 5;
- httpGet = {
- path = "/healthcheck/kubedns";
- port = 10054;
- scheme = "HTTP";
- };
- initialDelaySeconds = 60;
- successThreshold = 1;
- timeoutSeconds = 5;
- };
- readinessProbe = {
- httpGet = {
- path = "/readiness";
- port = 8081;
- scheme = "HTTP";
- };
- initialDelaySeconds = 3;
- timeoutSeconds = 5;
- };
- args = [
- "--domain=${cfg.clusterDomain}"
- "--dns-port=10053"
- "--config-dir=/kube-dns-config"
- "--v=2"
- ];
- env = [
- {
- name = "PROMETHEUS_PORT";
- value = "10055";
- }
- ];
- ports = [
- {
- containerPort = 10053;
- name = "dns-local";
- protocol = "UDP";
- }
- {
- containerPort = 10053;
- name = "dns-tcp-local";
- protocol = "TCP";
- }
- {
- containerPort = 10055;
- name = "metrics";
- protocol = "TCP";
- }
- ];
- volumeMounts = [
- {
- mountPath = "/kube-dns-config";
- name = "kube-dns-config";
- }
- ];
- }
- {
- name = "dnsmasq";
- image = with cfg.dnsmasq-nanny; "${imageName}:${finalImageTag}";
- livenessProbe = {
- httpGet = {
- path = "/healthcheck/dnsmasq";
- port = 10054;
- scheme = "HTTP";
- };
- initialDelaySeconds = 60;
- timeoutSeconds = 5;
- successThreshold = 1;
- failureThreshold = 5;
- };
- args = [
- "-v=2"
- "-logtostderr"
- "-configDir=/etc/k8s/dns/dnsmasq-nanny"
- "-restartDnsmasq=true"
- "--"
- "-k"
- "--cache-size=1000"
- "--log-facility=-"
- "--server=/${cfg.clusterDomain}/127.0.0.1#10053"
- "--server=/in-addr.arpa/127.0.0.1#10053"
- "--server=/ip6.arpa/127.0.0.1#10053"
- ];
- ports = [
- {
- containerPort = 53;
- name = "dns";
- protocol = "UDP";
- }
- {
- containerPort = 53;
- name = "dns-tcp";
- protocol = "TCP";
- }
- ];
- resources = {
- requests = {
- cpu = "150m";
- memory = "20Mi";
- };
- };
- volumeMounts = [
- {
- mountPath = "/etc/k8s/dns/dnsmasq-nanny";
- name = "kube-dns-config";
- }
- ];
- }
- {
- name = "sidecar";
- image = with cfg.sidecar; "${imageName}:${finalImageTag}";
- livenessProbe = {
- httpGet = {
- path = "/metrics";
- port = 10054;
- scheme = "HTTP";
- };
- initialDelaySeconds = 60;
- timeoutSeconds = 5;
- successThreshold = 1;
- failureThreshold = 5;
- };
- args = [
- "--v=2"
- "--logtostderr"
- "--probe=kubedns,127.0.0.1:10053,kubernetes.default.svc.${cfg.clusterDomain},5,A"
- "--probe=dnsmasq,127.0.0.1:53,kubernetes.default.svc.${cfg.clusterDomain},5,A"
- ];
- ports = [
- {
- containerPort = 10054;
- name = "metrics";
- protocol = "TCP";
- }
- ];
- resources = {
- requests = {
- cpu = "10m";
- memory = "20Mi";
- };
- };
- }
- ];
- dnsPolicy = "Default";
- serviceAccountName = "kube-dns";
- tolerations = [
- {
- key = "CriticalAddonsOnly";
- operator = "Exists";
- }
- ];
- volumes = [
- {
- configMap = {
- name = "kube-dns";
- optional = true;
- };
- name = "kube-dns-config";
- }
- ];
- };
- };
- };
- };
-
- kubedns-svc = {
- apiVersion = "v1";
- kind = "Service";
- metadata = {
- labels = {
- "addonmanager.kubernetes.io/mode" = "Reconcile";
- "k8s-app" = "kube-dns";
- "kubernetes.io/cluster-service" = "true";
- "kubernetes.io/name" = "KubeDNS";
- };
- name = "kube-dns";
- namespace = "kube-system";
- };
- spec = {
- clusterIP = cfg.clusterIp;
- ports = [
- {name = "dns"; port = 53; protocol = "UDP";}
- {name = "dns-tcp"; port = 53; protocol = "TCP";}
- ];
- selector.k8s-app = "kube-dns";
- };
- };
-
- kubedns-sa = {
- apiVersion = "v1";
- kind = "ServiceAccount";
- metadata = {
- name = "kube-dns";
- namespace = "kube-system";
- labels = {
- "kubernetes.io/cluster-service" = "true";
- "addonmanager.kubernetes.io/mode" = "Reconcile";
- };
- };
- };
-
- kubedns-cm = {
- apiVersion = "v1";
- kind = "ConfigMap";
- metadata = {
- name = "kube-dns";
- namespace = "kube-system";
- labels = {
- "addonmanager.kubernetes.io/mode" = "EnsureExists";
- };
- };
- };
- };
-
- services.kubernetes.kubelet.clusterDns = mkDefault cfg.clusterIp;
- };
-}
diff --git a/nixos/modules/services/cluster/kubernetes/flannel.nix b/nixos/modules/services/cluster/kubernetes/flannel.nix
new file mode 100644
index 0000000000000000000000000000000000000000..d9437427d6d1af488cecd9ec29dff9068f328e87
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/flannel.nix
@@ -0,0 +1,184 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.flannel;
+
+ # we want flannel to use kubernetes itself as configuration backend, not direct etcd
+ storageBackend = "kubernetes";
+
+ # needed for flannel to pass options to docker
+ mkDockerOpts = pkgs.runCommand "mk-docker-opts" {
+ buildInputs = [ pkgs.makeWrapper ];
+ } ''
+ mkdir -p $out
+ cp ${pkgs.kubernetes.src}/cluster/centos/node/bin/mk-docker-opts.sh $out/mk-docker-opts.sh
+
+ # bashInteractive needed for `compgen`
+ makeWrapper ${pkgs.bashInteractive}/bin/bash $out/mk-docker-opts --add-flags "$out/mk-docker-opts.sh"
+ '';
+in
+{
+ ###### interface
+ options.services.kubernetes.flannel = {
+ enable = mkEnableOption "flannel networking";
+ kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes flannel";
+ };
+
+ ###### implementation
+ config = let
+
+ flannelPaths = filter (a: a != null) [
+ cfg.kubeconfig.caFile
+ cfg.kubeconfig.certFile
+ cfg.kubeconfig.keyFile
+ ];
+ kubeconfig = top.lib.mkKubeConfig "flannel" cfg.kubeconfig;
+
+ in mkIf cfg.enable {
+ services.flannel = {
+
+ enable = mkDefault true;
+ network = mkDefault top.clusterCidr;
+ inherit storageBackend kubeconfig;
+ nodeName = top.kubelet.hostname;
+ };
+
+ services.kubernetes.kubelet = {
+ networkPlugin = mkDefault "cni";
+ cni.config = mkDefault [{
+ name = "mynet";
+ type = "flannel";
+ delegate = {
+ isDefaultGateway = true;
+ bridge = "docker0";
+ };
+ }];
+ };
+
+ systemd.services.mk-docker-opts = {
+ description = "Pre-Docker Actions";
+ wantedBy = [ "flannel.target" ];
+ before = [ "flannel.target" ];
+ path = with pkgs; [ gawk gnugrep ];
+ script = ''
+ ${mkDockerOpts}/mk-docker-opts -d /run/flannel/docker
+ systemctl restart docker
+ '';
+ unitConfig.ConditionPathExists = [ "/run/flannel/subnet.env" ];
+ serviceConfig.Type = "oneshot";
+ };
+
+ systemd.paths.flannel-subnet-env = {
+ wantedBy = [ "mk-docker-opts.service" ];
+ pathConfig = {
+ PathExists = [ "/run/flannel/subnet.env" ];
+ PathChanged = [ "/run/flannel/subnet.env" ];
+ Unit = "mk-docker-opts.service";
+ };
+ };
+
+ systemd.targets.flannel = {
+ wantedBy = [ "kube-node-online.target" ];
+ before = [ "kube-node-online.target" ];
+ };
+
+ systemd.services.flannel = {
+ wantedBy = [ "flannel.target" ];
+ after = [ "kubelet.target" ];
+ before = [ "flannel.target" ];
+ path = with pkgs; [ iptables kubectl ];
+ environment.KUBECONFIG = kubeconfig;
+ preStart = let
+ args = [
+ "--selector=kubernetes.io/hostname=${top.kubelet.hostname}"
+ # flannel exits if node is not registered yet, before that there is no podCIDR
+ "--output=jsonpath={.items[0].spec.podCIDR}"
+ # if jsonpath cannot be resolved exit with status 1
+ "--allow-missing-template-keys=false"
+ ];
+ in ''
+ until kubectl get nodes ${concatStringsSep " " args} 2>/dev/null; do
+ echo Waiting for ${top.kubelet.hostname} to be RegisteredNode
+ sleep 1
+ done
+ '';
+ unitConfig.ConditionPathExists = flannelPaths;
+ };
+
+ systemd.paths.flannel = {
+ wantedBy = [ "flannel.service" ];
+ pathConfig = {
+ PathExists = flannelPaths;
+ PathChanged = flannelPaths;
+ };
+ };
+
+ services.kubernetes.flannel.kubeconfig.server = mkDefault top.apiserverAddress;
+
+ systemd.services.docker = {
+ environment.DOCKER_OPTS = "-b none";
+ serviceConfig.EnvironmentFile = "-/run/flannel/docker";
+ };
+
+ # read environment variables generated by mk-docker-opts
+ virtualisation.docker.extraOptions = "$DOCKER_OPTS";
+
+ networking = {
+ firewall.allowedUDPPorts = [
+ 8285 # flannel udp
+ 8472 # flannel vxlan
+ ];
+ dhcpcd.denyInterfaces = [ "docker*" "flannel*" ];
+ };
+
+ services.kubernetes.pki.certs = {
+ flannelClient = top.lib.mkCert {
+ name = "flannel-client";
+ CN = "flannel-client";
+ action = "systemctl restart flannel.service";
+ };
+ };
+
+ # give flannel som kubernetes rbac permissions if applicable
+ services.kubernetes.addonManager.bootstrapAddons = mkIf ((storageBackend == "kubernetes") && (elem "RBAC" top.apiserver.authorizationMode)) {
+ flannel-cr = {
+ apiVersion = "rbac.authorization.k8s.io/v1beta1";
+ kind = "ClusterRole";
+ metadata = { name = "flannel"; };
+ rules = [{
+ apiGroups = [ "" ];
+ resources = [ "pods" ];
+ verbs = [ "get" ];
+ }
+ {
+ apiGroups = [ "" ];
+ resources = [ "nodes" ];
+ verbs = [ "list" "watch" ];
+ }
+ {
+ apiGroups = [ "" ];
+ resources = [ "nodes/status" ];
+ verbs = [ "patch" ];
+ }];
+ };
+
+ flannel-crb = {
+ apiVersion = "rbac.authorization.k8s.io/v1beta1";
+ kind = "ClusterRoleBinding";
+ metadata = { name = "flannel"; };
+ roleRef = {
+ apiGroup = "rbac.authorization.k8s.io";
+ kind = "ClusterRole";
+ name = "flannel";
+ };
+ subjects = [{
+ kind = "User";
+ name = "flannel-client";
+ }];
+ };
+ };
+ };
+}
diff --git a/nixos/modules/services/cluster/kubernetes/kubelet.nix b/nixos/modules/services/cluster/kubernetes/kubelet.nix
new file mode 100644
index 0000000000000000000000000000000000000000..2a4a0624555d8c708e6f01b364af7ba8467e9bc6
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/kubelet.nix
@@ -0,0 +1,426 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.kubelet;
+
+ cniConfig =
+ if cfg.cni.config != [] && !(isNull cfg.cni.configDir) then
+ throw "Verbatim CNI-config and CNI configDir cannot both be set."
+ else if !(isNull cfg.cni.configDir) then
+ cfg.cni.configDir
+ else
+ (pkgs.buildEnv {
+ name = "kubernetes-cni-config";
+ paths = imap (i: entry:
+ pkgs.writeTextDir "${toString (10+i)}-${entry.type}.conf" (builtins.toJSON entry)
+ ) cfg.cni.config;
+ });
+
+ infraContainer = pkgs.dockerTools.buildImage {
+ name = "pause";
+ tag = "latest";
+ contents = top.package.pause;
+ config.Cmd = "/bin/pause";
+ };
+
+ kubeconfig = top.lib.mkKubeConfig "kubelet" cfg.kubeconfig;
+
+ manifests = pkgs.buildEnv {
+ name = "kubernetes-manifests";
+ paths = mapAttrsToList (name: manifest:
+ pkgs.writeTextDir "${name}.json" (builtins.toJSON manifest)
+ ) cfg.manifests;
+ };
+
+ manifestPath = "kubernetes/manifests";
+
+ taintOptions = with lib.types; { name, ... }: {
+ options = {
+ key = mkOption {
+ description = "Key of taint.";
+ default = name;
+ type = str;
+ };
+ value = mkOption {
+ description = "Value of taint.";
+ type = str;
+ };
+ effect = mkOption {
+ description = "Effect of taint.";
+ example = "NoSchedule";
+ type = enum ["NoSchedule" "PreferNoSchedule" "NoExecute"];
+ };
+ };
+ };
+
+ taints = concatMapStringsSep "," (v: "${v.key}=${v.value}:${v.effect}") (mapAttrsToList (n: v: v) cfg.taints);
+in
+{
+ ###### interface
+ options.services.kubernetes.kubelet = with lib.types; {
+
+ address = mkOption {
+ description = "Kubernetes kubelet info server listening address.";
+ default = "0.0.0.0";
+ type = str;
+ };
+
+ allowPrivileged = mkOption {
+ description = "Whether to allow Kubernetes containers to request privileged mode.";
+ default = false;
+ type = bool;
+ };
+
+ clusterDns = mkOption {
+ description = "Use alternative DNS.";
+ default = "10.1.0.1";
+ type = str;
+ };
+
+ clusterDomain = mkOption {
+ description = "Use alternative domain.";
+ default = config.services.kubernetes.addons.dns.clusterDomain;
+ type = str;
+ };
+
+ clientCaFile = mkOption {
+ description = "Kubernetes apiserver CA file for client authentication.";
+ default = top.caFile;
+ type = nullOr path;
+ };
+
+ cni = {
+ packages = mkOption {
+ description = "List of network plugin packages to install.";
+ type = listOf package;
+ default = [];
+ };
+
+ config = mkOption {
+ description = "Kubernetes CNI configuration.";
+ type = listOf attrs;
+ default = [];
+ example = literalExample ''
+ [{
+ "cniVersion": "0.2.0",
+ "name": "mynet",
+ "type": "bridge",
+ "bridge": "cni0",
+ "isGateway": true,
+ "ipMasq": true,
+ "ipam": {
+ "type": "host-local",
+ "subnet": "10.22.0.0/16",
+ "routes": [
+ { "dst": "0.0.0.0/0" }
+ ]
+ }
+ } {
+ "cniVersion": "0.2.0",
+ "type": "loopback"
+ }]
+ '';
+ };
+
+ configDir = mkOption {
+ description = "Path to Kubernetes CNI configuration directory.";
+ type = nullOr path;
+ default = null;
+ };
+ };
+
+ enable = mkEnableOption "Kubernetes kubelet.";
+
+ extraOpts = mkOption {
+ description = "Kubernetes kubelet extra command line options.";
+ default = "";
+ type = str;
+ };
+
+ featureGates = mkOption {
+ description = "List set of feature gates";
+ default = top.featureGates;
+ type = listOf str;
+ };
+
+ healthz = {
+ bind = mkOption {
+ description = "Kubernetes kubelet healthz listening address.";
+ default = "127.0.0.1";
+ type = str;
+ };
+
+ port = mkOption {
+ description = "Kubernetes kubelet healthz port.";
+ default = 10248;
+ type = int;
+ };
+ };
+
+ hostname = mkOption {
+ description = "Kubernetes kubelet hostname override.";
+ default = config.networking.hostName;
+ type = str;
+ };
+
+ kubeconfig = top.lib.mkKubeConfigOptions "Kubelet";
+
+ manifests = mkOption {
+ description = "List of manifests to bootstrap with kubelet (only pods can be created as manifest entry)";
+ type = attrsOf attrs;
+ default = {};
+ };
+
+ networkPlugin = mkOption {
+ description = "Network plugin to use by Kubernetes.";
+ type = nullOr (enum ["cni" "kubenet"]);
+ default = "kubenet";
+ };
+
+ nodeIp = mkOption {
+ description = "IP address of the node. If set, kubelet will use this IP address for the node.";
+ default = null;
+ type = nullOr str;
+ };
+
+ registerNode = mkOption {
+ description = "Whether to auto register kubelet with API server.";
+ default = true;
+ type = bool;
+ };
+
+ port = mkOption {
+ description = "Kubernetes kubelet info server listening port.";
+ default = 10250;
+ type = int;
+ };
+
+ seedDockerImages = mkOption {
+ description = "List of docker images to preload on system";
+ default = [];
+ type = listOf package;
+ };
+
+ taints = mkOption {
+ description = "Node taints (https://kubernetes.io/docs/concepts/configuration/assign-pod-node/).";
+ default = {};
+ type = attrsOf (submodule [ taintOptions ]);
+ };
+
+ tlsCertFile = mkOption {
+ description = "File containing x509 Certificate for HTTPS.";
+ default = null;
+ type = nullOr path;
+ };
+
+ tlsKeyFile = mkOption {
+ description = "File containing x509 private key matching tlsCertFile.";
+ default = null;
+ type = nullOr path;
+ };
+
+ unschedulable = mkOption {
+ description = "Whether to set node taint to unschedulable=true as it is the case of node that has only master role.";
+ default = false;
+ type = bool;
+ };
+
+ verbosity = mkOption {
+ description = ''
+ Optional glog verbosity level for logging statements. See
+
+ '';
+ default = null;
+ type = nullOr int;
+ };
+
+ };
+
+ ###### implementation
+ config = mkMerge [
+ (let
+
+ kubeletPaths = filter (a: a != null) [
+ cfg.kubeconfig.caFile
+ cfg.kubeconfig.certFile
+ cfg.kubeconfig.keyFile
+ cfg.clientCaFile
+ cfg.tlsCertFile
+ cfg.tlsKeyFile
+ ];
+
+ in mkIf cfg.enable {
+ services.kubernetes.kubelet.seedDockerImages = [infraContainer];
+
+ systemd.services.kubelet = {
+ description = "Kubernetes Kubelet Service";
+ wantedBy = [ "kubelet.target" ];
+ after = [ "kube-control-plane-online.target" ];
+ before = [ "kubelet.target" ];
+ path = with pkgs; [ gitMinimal openssh docker utillinux iproute ethtool thin-provisioning-tools iptables socat ] ++ top.path;
+ preStart = ''
+ rm -f /opt/cni/bin/* || true
+ ${concatMapStrings (package: ''
+ echo "Linking cni package: ${package}"
+ ln -fs ${package}/bin/* /opt/cni/bin
+ '') cfg.cni.packages}
+ '';
+ serviceConfig = {
+ Slice = "kubernetes.slice";
+ CPUAccounting = true;
+ MemoryAccounting = true;
+ Restart = "on-failure";
+ RestartSec = "1000ms";
+ ExecStart = ''${top.package}/bin/kubelet \
+ --address=${cfg.address} \
+ --allow-privileged=${boolToString cfg.allowPrivileged} \
+ --authentication-token-webhook \
+ --authentication-token-webhook-cache-ttl="10s" \
+ --authorization-mode=Webhook \
+ ${optionalString (cfg.clientCaFile != null)
+ "--client-ca-file=${cfg.clientCaFile}"} \
+ ${optionalString (cfg.clusterDns != "")
+ "--cluster-dns=${cfg.clusterDns}"} \
+ ${optionalString (cfg.clusterDomain != "")
+ "--cluster-domain=${cfg.clusterDomain}"} \
+ --cni-conf-dir=${cniConfig} \
+ ${optionalString (cfg.featureGates != [])
+ "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+ --hairpin-mode=hairpin-veth \
+ --healthz-bind-address=${cfg.healthz.bind} \
+ --healthz-port=${toString cfg.healthz.port} \
+ --hostname-override=${cfg.hostname} \
+ --kubeconfig=${kubeconfig} \
+ ${optionalString (cfg.networkPlugin != null)
+ "--network-plugin=${cfg.networkPlugin}"} \
+ ${optionalString (cfg.nodeIp != null)
+ "--node-ip=${cfg.nodeIp}"} \
+ --pod-infra-container-image=pause \
+ ${optionalString (cfg.manifests != {})
+ "--pod-manifest-path=/etc/${manifestPath}"} \
+ --port=${toString cfg.port} \
+ --register-node=${boolToString cfg.registerNode} \
+ ${optionalString (taints != "")
+ "--register-with-taints=${taints}"} \
+ --root-dir=${top.dataDir} \
+ ${optionalString (cfg.tlsCertFile != null)
+ "--tls-cert-file=${cfg.tlsCertFile}"} \
+ ${optionalString (cfg.tlsKeyFile != null)
+ "--tls-private-key-file=${cfg.tlsKeyFile}"} \
+ ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+ ${cfg.extraOpts}
+ '';
+ WorkingDirectory = top.dataDir;
+ };
+ unitConfig.ConditionPathExists = kubeletPaths;
+ };
+
+ systemd.paths.kubelet = {
+ wantedBy = [ "kubelet.service" ];
+ pathConfig = {
+ PathExists = kubeletPaths;
+ PathChanged = kubeletPaths;
+ };
+ };
+
+ systemd.services.docker.before = [ "kubelet.service" ];
+
+ systemd.services.docker-seed-images = {
+ wantedBy = [ "docker.service" ];
+ after = [ "docker.service" ];
+ before = [ "kubelet.service" ];
+ path = with pkgs; [ docker ];
+ preStart = ''
+ ${concatMapStrings (img: ''
+ echo "Seeding docker image: ${img}"
+ docker load <${img}
+ '') cfg.seedDockerImages}
+ '';
+ script = "echo Ok";
+ serviceConfig.Type = "oneshot";
+ serviceConfig.RemainAfterExit = true;
+ serviceConfig.Slice = "kubernetes.slice";
+ };
+
+ systemd.services.kubelet-online = {
+ wantedBy = [ "kube-node-online.target" ];
+ after = [ "flannel.target" "kubelet.target" ];
+ before = [ "kube-node-online.target" ];
+ # it is complicated. flannel needs kubelet to run the pause container before
+ # it discusses the node CIDR with apiserver and afterwards configures and restarts
+ # dockerd. Until then prevent creating any pods because they have to be recreated anyway
+ # because the network of docker0 has been changed by flannel.
+ script = let
+ docker-env = "/run/flannel/docker";
+ flannel-date = "stat --print=%Y ${docker-env}";
+ docker-date = "systemctl show --property=ActiveEnterTimestamp --value docker";
+ in ''
+ until test -f ${docker-env} ; do sleep 1 ; done
+ while test `${flannel-date}` -gt `date +%s --date="$(${docker-date})"` ; do
+ sleep 1
+ done
+ '';
+ serviceConfig.Type = "oneshot";
+ serviceConfig.Slice = "kubernetes.slice";
+ };
+
+ # Allways include cni plugins
+ services.kubernetes.kubelet.cni.packages = [pkgs.cni-plugins];
+
+ boot.kernelModules = ["br_netfilter"];
+
+ services.kubernetes.kubelet.hostname = with config.networking;
+ mkDefault (hostName + optionalString (!isNull domain) ".${domain}");
+
+ services.kubernetes.pki.certs = with top.lib; {
+ kubelet = mkCert {
+ name = "kubelet";
+ CN = top.kubelet.hostname;
+ action = "systemctl restart kubelet.service";
+
+ };
+ kubeletClient = mkCert {
+ name = "kubelet-client";
+ CN = "system:node:${top.kubelet.hostname}";
+ fields = {
+ O = "system:nodes";
+ };
+ action = "systemctl restart kubelet.service";
+ };
+ };
+
+ services.kubernetes.kubelet.kubeconfig.server = mkDefault top.apiserverAddress;
+ })
+
+ (mkIf (cfg.enable && cfg.manifests != {}) {
+ environment.etc = mapAttrs' (name: manifest:
+ nameValuePair "${manifestPath}/${name}.json" {
+ text = builtins.toJSON manifest;
+ mode = "0755";
+ }
+ ) cfg.manifests;
+ })
+
+ (mkIf (cfg.unschedulable && cfg.enable) {
+ services.kubernetes.kubelet.taints.unschedulable = {
+ value = "true";
+ effect = "NoSchedule";
+ };
+ })
+
+ {
+ systemd.targets.kubelet = {
+ wantedBy = [ "kube-node-online.target" ];
+ before = [ "kube-node-online.target" ];
+ };
+
+ systemd.targets.kube-node-online = {
+ wantedBy = [ "kubernetes.target" ];
+ before = [ "kubernetes.target" ];
+ };
+ }
+ ];
+}
diff --git a/nixos/modules/services/cluster/kubernetes/pki.nix b/nixos/modules/services/cluster/kubernetes/pki.nix
new file mode 100644
index 0000000000000000000000000000000000000000..32eacad9025f4fa2c7c1ff8c916b348e0d68f33b
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/pki.nix
@@ -0,0 +1,407 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.pki;
+
+ csrCA = pkgs.writeText "kube-pki-cacert-csr.json" (builtins.toJSON {
+ key = {
+ algo = "rsa";
+ size = 2048;
+ };
+ names = singleton cfg.caSpec;
+ });
+
+ csrCfssl = pkgs.writeText "kube-pki-cfssl-csr.json" (builtins.toJSON {
+ key = {
+ algo = "rsa";
+ size = 2048;
+ };
+ CN = top.masterAddress;
+ });
+
+ cfsslAPITokenBaseName = "apitoken.secret";
+ cfsslAPITokenPath = "${config.services.cfssl.dataDir}/${cfsslAPITokenBaseName}";
+ certmgrAPITokenPath = "${top.secretsPath}/${cfsslAPITokenBaseName}";
+ cfsslAPITokenLength = 32;
+
+ clusterAdminKubeconfig = with cfg.certs.clusterAdmin; {
+ server = top.apiserverAddress;
+ certFile = cert;
+ keyFile = key;
+ };
+
+ remote = with config.services; "https://${kubernetes.masterAddress}:${toString cfssl.port}";
+in
+{
+ ###### interface
+ options.services.kubernetes.pki = with lib.types; {
+
+ enable = mkEnableOption "easyCert issuer service";
+
+ certs = mkOption {
+ description = "List of certificate specs to feed to cert generator.";
+ default = {};
+ type = attrs;
+ };
+
+ genCfsslCACert = mkOption {
+ description = ''
+ Whether to automatically generate cfssl CA certificate and key,
+ if they don't exist.
+ '';
+ default = true;
+ type = bool;
+ };
+
+ genCfsslAPICerts = mkOption {
+ description = ''
+ Whether to automatically generate cfssl API webserver TLS cert and key,
+ if they don't exist.
+ '';
+ default = true;
+ type = bool;
+ };
+
+ genCfsslAPIToken = mkOption {
+ description = ''
+ Whether to automatically generate cfssl API-token secret,
+ if they doesn't exist.
+ '';
+ default = true;
+ type = bool;
+ };
+
+ pkiTrustOnBootstrap = mkOption {
+ description = "Whether to always trust remote cfssl server upon initial PKI bootstrap.";
+ default = true;
+ type = bool;
+ };
+
+ caCertPathPrefix = mkOption {
+ description = ''
+ Path-prefrix for the CA-certificate to be used for cfssl signing.
+ Suffixes ".pem" and "-key.pem" will be automatically appended for
+ the public and private keys respectively.
+ '';
+ default = "${config.services.cfssl.dataDir}/ca";
+ type = str;
+ };
+
+ caSpec = mkOption {
+ description = "Certificate specification for the auto-generated CAcert.";
+ default = {
+ CN = "kubernetes-cluster-ca";
+ O = "NixOS";
+ OU = "services.kubernetes.pki.caSpec";
+ L = "auto-generated";
+ };
+ type = attrs;
+ };
+
+ etcClusterAdminKubeconfig = mkOption {
+ description = ''
+ Symlink a kubeconfig with cluster-admin privileges to environment path
+ (/etc/<path>).
+ '';
+ default = null;
+ type = nullOr str;
+ };
+
+ };
+
+ ###### implementation
+ config = mkIf cfg.enable
+ (let
+ cfsslCertPathPrefix = "${config.services.cfssl.dataDir}/cfssl";
+ cfsslCert = "${cfsslCertPathPrefix}.pem";
+ cfsslKey = "${cfsslCertPathPrefix}-key.pem";
+ cfsslPort = toString config.services.cfssl.port;
+
+ certmgrPaths = [
+ top.caFile
+ certmgrAPITokenPath
+ ];
+ in
+ {
+
+ services.cfssl = mkIf (top.apiserver.enable) {
+ enable = true;
+ address = "0.0.0.0";
+ tlsCert = cfsslCert;
+ tlsKey = cfsslKey;
+ configFile = toString (pkgs.writeText "cfssl-config.json" (builtins.toJSON {
+ signing = {
+ profiles = {
+ default = {
+ usages = ["digital signature"];
+ auth_key = "default";
+ expiry = "720h";
+ };
+ };
+ };
+ auth_keys = {
+ default = {
+ type = "standard";
+ key = "file:${cfsslAPITokenPath}";
+ };
+ };
+ }));
+ };
+
+ systemd.services.cfssl.preStart = with pkgs; with config.services.cfssl; mkIf (top.apiserver.enable)
+ (concatStringsSep "\n" [
+ "set -e"
+ (optionalString cfg.genCfsslCACert ''
+ if [ ! -f "${cfg.caCertPathPrefix}.pem" ]; then
+ ${cfssl}/bin/cfssl genkey -initca ${csrCA} | \
+ ${cfssl}/bin/cfssljson -bare ${cfg.caCertPathPrefix}
+ fi
+ '')
+ (optionalString cfg.genCfsslAPICerts ''
+ if [ ! -f "${dataDir}/cfssl.pem" ]; then
+ ${cfssl}/bin/cfssl gencert -ca "${cfg.caCertPathPrefix}.pem" -ca-key "${cfg.caCertPathPrefix}-key.pem" ${csrCfssl} | \
+ ${cfssl}/bin/cfssljson -bare ${cfsslCertPathPrefix}
+ fi
+ '')
+ (optionalString cfg.genCfsslAPIToken ''
+ if [ ! -f "${cfsslAPITokenPath}" ]; then
+ head -c ${toString (cfsslAPITokenLength / 2)} /dev/urandom | od -An -t x | tr -d ' ' >"${cfsslAPITokenPath}"
+ fi
+ chown cfssl "${cfsslAPITokenPath}" && chmod 400 "${cfsslAPITokenPath}"
+ '')]);
+
+ systemd.targets.cfssl-online = {
+ wantedBy = [ "network-online.target" ];
+ after = [ "cfssl.service" "network-online.target" "cfssl-online.service" ];
+ };
+
+ systemd.services.cfssl-online = {
+ description = "Wait for ${remote} to be reachable.";
+ wantedBy = [ "cfssl-online.target" ];
+ before = [ "cfssl-online.target" ];
+ path = [ pkgs.curl ];
+ preStart = ''
+ until curl --fail-early -fskd '{}' ${remote}/api/v1/cfssl/info -o /dev/null; do
+ echo curl ${remote}/api/v1/cfssl/info: exit status $?
+ sleep 2
+ done
+ '';
+ script = "echo Ok";
+ serviceConfig = {
+ TimeoutSec = "300";
+ };
+ };
+
+ systemd.services.kube-certmgr-bootstrap = {
+ description = "Kubernetes certmgr bootstrapper";
+ wantedBy = [ "cfssl-online.target" ];
+ after = [ "cfssl-online.target" ];
+ before = [ "certmgr.service" ];
+ path = with pkgs; [ curl cfssl ];
+ script = concatStringsSep "\n" [''
+ set -e
+
+ mkdir -p $(dirname ${certmgrAPITokenPath})
+ mkdir -p $(dirname ${top.caFile})
+
+ # If there's a cfssl (cert issuer) running locally, then don't rely on user to
+ # manually paste it in place. Just symlink.
+ # otherwise, create the target file, ready for users to insert the token
+
+ if [ -f "${cfsslAPITokenPath}" ]; then
+ ln -fs "${cfsslAPITokenPath}" "${certmgrAPITokenPath}"
+ else
+ touch "${certmgrAPITokenPath}" && chmod 600 "${certmgrAPITokenPath}"
+ fi
+ ''
+ (optionalString (cfg.pkiTrustOnBootstrap) ''
+ if [ ! -s "${top.caFile}" ]; then
+ until test -s ${top.caFile}.json; do
+ sleep 2
+ curl --fail-early -fskd '{}' ${remote}/api/v1/cfssl/info -o ${top.caFile}.json
+ done
+ cfssljson -f ${top.caFile}.json -stdout >${top.caFile}
+ rm ${top.caFile}.json
+ fi
+ '')
+ ];
+ serviceConfig = {
+ TimeoutSec = "500";
+ };
+ };
+
+ services.certmgr = {
+ enable = true;
+ package = pkgs.certmgr-selfsigned;
+ svcManager = "command";
+ specs =
+ let
+ mkSpec = _: cert: {
+ inherit (cert) action;
+ authority = {
+ inherit remote;
+ file.path = cert.caCert;
+ root_ca = cert.caCert;
+ profile = "default";
+ auth_key_file = certmgrAPITokenPath;
+ };
+ certificate = {
+ path = cert.cert;
+ };
+ private_key = cert.privateKeyOptions;
+ request = {
+ inherit (cert) CN hosts;
+ key = {
+ algo = "rsa";
+ size = 2048;
+ };
+ names = [ cert.fields ];
+ };
+ };
+ in
+ mapAttrs mkSpec cfg.certs;
+ };
+
+ systemd.services.certmgr = {
+ wantedBy = [ "cfssl-online.target" ];
+ after = [ "cfssl-online.target" "kube-certmgr-bootstrap.service" ];
+ preStart = ''
+ while ! test -s ${certmgrAPITokenPath} ; do
+ sleep 1
+ echo Waiting for ${certmgrAPITokenPath}
+ done
+ '';
+ unitConfig.ConditionPathExists = certmgrPaths;
+ };
+
+ systemd.paths.certmgr = {
+ wantedBy = [ "certmgr.service" ];
+ pathConfig = {
+ PathExists = certmgrPaths;
+ PathChanged = certmgrPaths;
+ };
+ };
+
+ environment.etc.${cfg.etcClusterAdminKubeconfig}.source = mkIf (!isNull cfg.etcClusterAdminKubeconfig)
+ (top.lib.mkKubeConfig "cluster-admin" clusterAdminKubeconfig);
+
+ environment.systemPackages = mkIf (top.kubelet.enable || top.proxy.enable) [
+ (pkgs.writeScriptBin "nixos-kubernetes-node-join" ''
+ set -e
+ exec 1>&2
+
+ if [ $# -gt 0 ]; then
+ echo "Usage: $(basename $0)"
+ echo ""
+ echo "No args. Apitoken must be provided on stdin."
+ echo "To get the apitoken, execute: 'sudo cat ${certmgrAPITokenPath}' on the master node."
+ exit 1
+ fi
+
+ if [ $(id -u) != 0 ]; then
+ echo "Run as root please."
+ exit 1
+ fi
+
+ read -r token
+ if [ ''${#token} != ${toString cfsslAPITokenLength} ]; then
+ echo "Token must be of length ${toString cfsslAPITokenLength}."
+ exit 1
+ fi
+
+ do_restart=$(test -s ${certmgrAPITokenPath} && echo -n y || echo -n n)
+
+ echo $token > ${certmgrAPITokenPath}
+ chmod 600 ${certmgrAPITokenPath}
+
+ if [ y = $do_restart ]; then
+ echo "Restarting certmgr..." >&1
+ systemctl restart certmgr
+ fi
+
+ echo "Node joined succesfully" >&1
+ '')];
+
+ # isolate etcd on loopback at the master node
+ # easyCerts doesn't support multimaster clusters anyway atm.
+ services.etcd = mkIf top.apiserver.enable (with cfg.certs.etcd; {
+ listenClientUrls = ["https://127.0.0.1:2379"];
+ listenPeerUrls = ["https://127.0.0.1:2380"];
+ advertiseClientUrls = ["https://etcd.local:2379"];
+ initialCluster = ["${top.masterAddress}=https://etcd.local:2380"];
+ initialAdvertisePeerUrls = ["https://etcd.local:2380"];
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ trustedCaFile = mkDefault caCert;
+ });
+ networking.extraHosts = mkIf (config.services.etcd.enable) ''
+ 127.0.0.1 etcd.${top.addons.dns.clusterDomain} etcd.local
+ '';
+
+ services.kubernetes = {
+
+ apiserver = mkIf top.apiserver.enable (with cfg.certs.apiServer; {
+ etcd = with cfg.certs.apiserverEtcdClient; {
+ servers = ["https://etcd.local:2379"];
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ caFile = mkDefault caCert;
+ };
+ clientCaFile = mkDefault caCert;
+ tlsCertFile = mkDefault cert;
+ tlsKeyFile = mkDefault key;
+ serviceAccountKeyFile = mkDefault cfg.certs.serviceAccount.cert;
+ kubeletClientCaFile = mkDefault caCert;
+ kubeletClientCertFile = mkDefault cfg.certs.apiserverKubeletClient.cert;
+ kubeletClientKeyFile = mkDefault cfg.certs.apiserverKubeletClient.key;
+ proxyClientCertFile = mkDefault cfg.certs.apiserverProxyClient.cert;
+ proxyClientKeyFile = mkDefault cfg.certs.apiserverProxyClient.key;
+ });
+ addonManager = mkIf top.addonManager.enable {
+ kubeconfig = with cfg.certs.addonManager; {
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ };
+ bootstrapAddonsKubeconfig = clusterAdminKubeconfig;
+ };
+ controllerManager = mkIf top.controllerManager.enable {
+ serviceAccountKeyFile = mkDefault cfg.certs.serviceAccount.key;
+ rootCaFile = cfg.certs.controllerManagerClient.caCert;
+ kubeconfig = with cfg.certs.controllerManagerClient; {
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ };
+ };
+ flannel = mkIf top.flannel.enable {
+ kubeconfig = with cfg.certs.flannelClient; {
+ certFile = cert;
+ keyFile = key;
+ };
+ };
+ scheduler = mkIf top.scheduler.enable {
+ kubeconfig = with cfg.certs.schedulerClient; {
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ };
+ };
+ kubelet = mkIf top.kubelet.enable {
+ clientCaFile = mkDefault cfg.certs.kubelet.caCert;
+ tlsCertFile = mkDefault cfg.certs.kubelet.cert;
+ tlsKeyFile = mkDefault cfg.certs.kubelet.key;
+ kubeconfig = with cfg.certs.kubeletClient; {
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ };
+ };
+ proxy = mkIf top.proxy.enable {
+ kubeconfig = with cfg.certs.kubeProxyClient; {
+ certFile = mkDefault cert;
+ keyFile = mkDefault key;
+ };
+ };
+ };
+ });
+}
diff --git a/nixos/modules/services/cluster/kubernetes/proxy.nix b/nixos/modules/services/cluster/kubernetes/proxy.nix
new file mode 100644
index 0000000000000000000000000000000000000000..23f4d97b7030268630f9ef667a86335a15b27075
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/proxy.nix
@@ -0,0 +1,107 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.proxy;
+in
+{
+
+ ###### interface
+ options.services.kubernetes.proxy = with lib.types; {
+
+ bindAddress = mkOption {
+ description = "Kubernetes proxy listening address.";
+ default = "0.0.0.0";
+ type = str;
+ };
+
+ enable = mkEnableOption "Kubernetes proxy";
+
+ extraOpts = mkOption {
+ description = "Kubernetes proxy extra command line options.";
+ default = "";
+ type = str;
+ };
+
+ featureGates = mkOption {
+ description = "List set of feature gates";
+ default = top.featureGates;
+ type = listOf str;
+ };
+
+ kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes proxy";
+
+ verbosity = mkOption {
+ description = ''
+ Optional glog verbosity level for logging statements. See
+
+ '';
+ default = null;
+ type = nullOr int;
+ };
+
+ };
+
+ ###### implementation
+ config = let
+
+ proxyPaths = filter (a: a != null) [
+ cfg.kubeconfig.caFile
+ cfg.kubeconfig.certFile
+ cfg.kubeconfig.keyFile
+ ];
+
+ in mkIf cfg.enable {
+ systemd.services.kube-proxy = rec {
+ description = "Kubernetes Proxy Service";
+ wantedBy = [ "kube-node-online.target" ];
+ after = [ "kubelet-online.service" ];
+ before = [ "kube-node-online.target" ];
+ environment.KUBECONFIG = top.lib.mkKubeConfig "kube-proxy" cfg.kubeconfig;
+ path = with pkgs; [ iptables conntrack_tools kubectl ];
+ preStart = ''
+ until kubectl auth can-i get nodes/${top.kubelet.hostname} -q 2>/dev/null; do
+ echo kubectl auth can-i get nodes/${top.kubelet.hostname}: exit status $?
+ sleep 2
+ done
+ '';
+ serviceConfig = {
+ Slice = "kubernetes.slice";
+ ExecStart = ''${top.package}/bin/kube-proxy \
+ --bind-address=${cfg.bindAddress} \
+ ${optionalString (top.clusterCidr!=null)
+ "--cluster-cidr=${top.clusterCidr}"} \
+ ${optionalString (cfg.featureGates != [])
+ "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+ --kubeconfig=${environment.KUBECONFIG} \
+ ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+ ${cfg.extraOpts}
+ '';
+ WorkingDirectory = top.dataDir;
+ Restart = "on-failure";
+ RestartSec = 5;
+ };
+ unitConfig.ConditionPathExists = proxyPaths;
+ };
+
+ systemd.paths.kube-proxy = {
+ wantedBy = [ "kube-proxy.service" ];
+ pathConfig = {
+ PathExists = proxyPaths;
+ PathChanged = proxyPaths;
+ };
+ };
+
+ services.kubernetes.pki.certs = {
+ kubeProxyClient = top.lib.mkCert {
+ name = "kube-proxy-client";
+ CN = "system:kube-proxy";
+ action = "systemctl restart kube-proxy.service";
+ };
+ };
+
+ services.kubernetes.proxy.kubeconfig.server = mkDefault top.apiserverAddress;
+ };
+}
diff --git a/nixos/modules/services/cluster/kubernetes/scheduler.nix b/nixos/modules/services/cluster/kubernetes/scheduler.nix
new file mode 100644
index 0000000000000000000000000000000000000000..a0e484542951352af779c0f6847bad97964fa2cb
--- /dev/null
+++ b/nixos/modules/services/cluster/kubernetes/scheduler.nix
@@ -0,0 +1,120 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ top = config.services.kubernetes;
+ cfg = top.scheduler;
+in
+{
+ ###### interface
+ options.services.kubernetes.scheduler = with lib.types; {
+
+ address = mkOption {
+ description = "Kubernetes scheduler listening address.";
+ default = "127.0.0.1";
+ type = str;
+ };
+
+ enable = mkEnableOption "Kubernetes scheduler";
+
+ extraOpts = mkOption {
+ description = "Kubernetes scheduler extra command line options.";
+ default = "";
+ type = str;
+ };
+
+ featureGates = mkOption {
+ description = "List set of feature gates";
+ default = top.featureGates;
+ type = listOf str;
+ };
+
+ kubeconfig = top.lib.mkKubeConfigOptions "Kubernetes scheduler";
+
+ leaderElect = mkOption {
+ description = "Whether to start leader election before executing main loop.";
+ type = bool;
+ default = true;
+ };
+
+ port = mkOption {
+ description = "Kubernetes scheduler listening port.";
+ default = 10251;
+ type = int;
+ };
+
+ verbosity = mkOption {
+ description = ''
+ Optional glog verbosity level for logging statements. See
+
+ '';
+ default = null;
+ type = nullOr int;
+ };
+
+ };
+
+ ###### implementation
+ config = let
+
+ schedulerPaths = filter (a: a != null) [
+ cfg.kubeconfig.caFile
+ cfg.kubeconfig.certFile
+ cfg.kubeconfig.keyFile
+ ];
+
+ in mkIf cfg.enable {
+ systemd.services.kube-scheduler = rec {
+ description = "Kubernetes Scheduler Service";
+ wantedBy = [ "kube-control-plane-online.target" ];
+ after = [ "kube-apiserver.service" ];
+ before = [ "kube-control-plane-online.target" ];
+ environment.KUBECONFIG = top.lib.mkKubeConfig "kube-scheduler" cfg.kubeconfig;
+ path = [ pkgs.kubectl ];
+ preStart = ''
+ until kubectl auth can-i get /api -q 2>/dev/null; do
+ echo kubectl auth can-i get /api: exit status $?
+ sleep 2
+ done
+ '';
+ serviceConfig = {
+ Slice = "kubernetes.slice";
+ ExecStart = ''${top.package}/bin/kube-scheduler \
+ --address=${cfg.address} \
+ ${optionalString (cfg.featureGates != [])
+ "--feature-gates=${concatMapStringsSep "," (feature: "${feature}=true") cfg.featureGates}"} \
+ --kubeconfig=${environment.KUBECONFIG} \
+ --leader-elect=${boolToString cfg.leaderElect} \
+ --port=${toString cfg.port} \
+ ${optionalString (cfg.verbosity != null) "--v=${toString cfg.verbosity}"} \
+ ${cfg.extraOpts}
+ '';
+ WorkingDirectory = top.dataDir;
+ User = "kubernetes";
+ Group = "kubernetes";
+ Restart = "on-failure";
+ RestartSec = 5;
+ };
+ unitConfig.ConditionPathExists = schedulerPaths;
+ };
+
+ systemd.paths.kube-scheduler = {
+ wantedBy = [ "kube-scheduler.service" ];
+ pathConfig = {
+ PathExists = schedulerPaths;
+ PathChanged = schedulerPaths;
+ };
+ };
+
+ services.kubernetes.pki.certs = {
+ schedulerClient = top.lib.mkCert {
+ name = "kube-scheduler-client";
+ CN = "system:kube-scheduler";
+ action = "systemctl restart kube-scheduler.service";
+ };
+ };
+
+ services.kubernetes.scheduler.kubeconfig.server = mkDefault top.apiserverAddress;
+ };
+}
diff --git a/nixos/modules/services/computing/slurm/slurm.nix b/nixos/modules/services/computing/slurm/slurm.nix
index 1e1c5bc9f035a50c469fd31b07a6cfa85fcdd81d..d1a1383e45b0b840ee81bafc63ccd792364ba886 100644
--- a/nixos/modules/services/computing/slurm/slurm.nix
+++ b/nixos/modules/services/computing/slurm/slurm.nix
@@ -6,12 +6,18 @@ let
cfg = config.services.slurm;
# configuration file can be generated by http://slurm.schedmd.com/configurator.html
+
+ defaultUser = "slurm";
+
configFile = pkgs.writeTextDir "slurm.conf"
''
+ ClusterName=${cfg.clusterName}
+ StateSaveLocation=${cfg.stateSaveLocation}
+ SlurmUser=${cfg.user}
${optionalString (cfg.controlMachine != null) ''controlMachine=${cfg.controlMachine}''}
${optionalString (cfg.controlAddr != null) ''controlAddr=${cfg.controlAddr}''}
- ${optionalString (cfg.nodeName != null) ''nodeName=${cfg.nodeName}''}
- ${optionalString (cfg.partitionName != null) ''partitionName=${cfg.partitionName}''}
+ ${toString (map (x: "NodeName=${x}\n") cfg.nodeName)}
+ ${toString (map (x: "PartitionName=${x}\n") cfg.partitionName)}
PlugStackConfig=${plugStackConfig}
ProctrackType=${cfg.procTrackType}
${cfg.extraConfig}
@@ -23,17 +29,24 @@ let
${cfg.extraPlugstackConfig}
'';
-
cgroupConfig = pkgs.writeTextDir "cgroup.conf"
''
${cfg.extraCgroupConfig}
'';
+ slurmdbdConf = pkgs.writeTextDir "slurmdbd.conf"
+ ''
+ DbdHost=${cfg.dbdserver.dbdHost}
+ SlurmUser=${cfg.user}
+ StorageType=accounting_storage/mysql
+ ${cfg.dbdserver.extraConfig}
+ '';
+
# slurm expects some additional config files to be
# in the same directory as slurm.conf
etcSlurm = pkgs.symlinkJoin {
name = "etc-slurm";
- paths = [ configFile cgroupConfig plugStackConfig ];
+ paths = [ configFile cgroupConfig plugStackConfig ] ++ cfg.extraConfigPaths;
};
in
@@ -42,6 +55,8 @@ in
###### interface
+ meta.maintainers = [ maintainers.markuskowa ];
+
options = {
services.slurm = {
@@ -59,6 +74,27 @@ in
};
};
+ dbdserver = {
+ enable = mkEnableOption "SlurmDBD service";
+
+ dbdHost = mkOption {
+ type = types.str;
+ default = config.networking.hostName;
+ description = ''
+ Hostname of the machine where slurmdbd
+ is running (i.e. name returned by hostname -s).
+ '';
+ };
+
+ extraConfig = mkOption {
+ type = types.lines;
+ default = "";
+ description = ''
+ Extra configuration for slurmdbd.conf
+ '';
+ };
+ };
+
client = {
enable = mkEnableOption "slurm client daemon";
};
@@ -105,10 +141,19 @@ in
'';
};
+ clusterName = mkOption {
+ type = types.str;
+ default = "default";
+ example = "myCluster";
+ description = ''
+ Necessary to distinguish accounting records in a multi-cluster environment.
+ '';
+ };
+
nodeName = mkOption {
- type = types.nullOr types.str;
- default = null;
- example = "linux[1-32] CPUs=1 State=UNKNOWN";
+ type = types.listOf types.str;
+ default = [];
+ example = literalExample ''[ "linux[1-32] CPUs=1 State=UNKNOWN" ];'';
description = ''
Name that SLURM uses to refer to a node (or base partition for BlueGene
systems). Typically this would be the string that "/bin/hostname -s"
@@ -117,9 +162,9 @@ in
};
partitionName = mkOption {
- type = types.nullOr types.str;
- default = null;
- example = "debug Nodes=linux[1-32] Default=YES MaxTime=INFINITE State=UP";
+ type = types.listOf types.str;
+ default = [];
+ example = literalExample ''[ "debug Nodes=linux[1-32] Default=YES MaxTime=INFINITE State=UP" ];'';
description = ''
Name by which the partition may be referenced. Note that now you have
to write the partition's parameters after the name.
@@ -140,7 +185,7 @@ in
};
procTrackType = mkOption {
- type = types.string;
+ type = types.str;
default = "proctrack/linuxproc";
description = ''
Plugin to be used for process tracking on a job step basis.
@@ -149,6 +194,25 @@ in
'';
};
+ stateSaveLocation = mkOption {
+ type = types.str;
+ default = "/var/spool/slurmctld";
+ description = ''
+ Directory into which the Slurm controller, slurmctld, saves its state.
+ '';
+ };
+
+ user = mkOption {
+ type = types.str;
+ default = defaultUser;
+ description = ''
+ Set this option when you want to run the slurmctld daemon
+ as something else than the default slurm user "slurm".
+ Note that the UID of this user needs to be the same
+ on all nodes.
+ '';
+ };
+
extraConfig = mkOption {
default = "";
type = types.lines;
@@ -174,6 +238,19 @@ in
used when procTrackType=proctrack/cgroup.
'';
};
+
+ extraConfigPaths = mkOption {
+ type = with types; listOf path;
+ default = [];
+ description = ''
+ Slurm expects config files for plugins in the same path
+ as slurm.conf. Add extra nix store
+ paths that should be merged into same directory as
+ slurm.conf.
+ '';
+ };
+
+
};
};
@@ -210,12 +287,24 @@ in
'';
};
- in mkIf (cfg.enableStools || cfg.client.enable || cfg.server.enable) {
+ in mkIf ( cfg.enableStools ||
+ cfg.client.enable ||
+ cfg.server.enable ||
+ cfg.dbdserver.enable ) {
environment.systemPackages = [ wrappedSlurm ];
services.munge.enable = mkDefault true;
+ # use a static uid as default to ensure it is the same on all nodes
+ users.users.slurm = mkIf (cfg.user == defaultUser) {
+ name = defaultUser;
+ group = "slurm";
+ uid = config.ids.uids.slurm;
+ };
+
+ users.groups.slurm.gid = config.ids.uids.slurm;
+
systemd.services.slurmd = mkIf (cfg.client.enable) {
path = with pkgs; [ wrappedSlurm coreutils ]
++ lib.optional cfg.enableSrunX11 slurm-spank-x11;
@@ -225,6 +314,7 @@ in
serviceConfig = {
Type = "forking";
+ KillMode = "process";
ExecStart = "${wrappedSlurm}/bin/slurmd";
PIDFile = "/run/slurmd.pid";
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
@@ -251,6 +341,29 @@ in
PIDFile = "/run/slurmctld.pid";
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
};
+
+ preStart = ''
+ mkdir -p ${cfg.stateSaveLocation}
+ chown -R ${cfg.user}:slurm ${cfg.stateSaveLocation}
+ '';
+ };
+
+ systemd.services.slurmdbd = mkIf (cfg.dbdserver.enable) {
+ path = with pkgs; [ wrappedSlurm munge coreutils ];
+
+ wantedBy = [ "multi-user.target" ];
+ after = [ "network.target" "munged.service" "mysql.service" ];
+ requires = [ "munged.service" "mysql.service" ];
+
+ # slurm strips the last component off the path
+ environment.SLURM_CONF = "${slurmdbdConf}/slurm.conf";
+
+ serviceConfig = {
+ Type = "forking";
+ ExecStart = "${cfg.package}/bin/slurmdbd";
+ PIDFile = "/run/slurmdbd.pid";
+ ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
+ };
};
};
diff --git a/nixos/modules/services/continuous-integration/buildbot/master.nix b/nixos/modules/services/continuous-integration/buildbot/master.nix
index 8d767de37f00abeac5fa4df69d81762dc37fd4f2..9c615fbe885f623f6bf35abe2096308b27f25a9f 100644
--- a/nixos/modules/services/continuous-integration/buildbot/master.nix
+++ b/nixos/modules/services/continuous-integration/buildbot/master.nix
@@ -6,8 +6,12 @@ with lib;
let
cfg = config.services.buildbot-master;
+
+ python = cfg.package.pythonModule;
+
escapeStr = s: escape ["'"] s;
- masterCfg = if cfg.masterCfg == null then pkgs.writeText "master.cfg" ''
+
+ defaultMasterCfg = pkgs.writeText "master.cfg" ''
from buildbot.plugins import *
factory = util.BuildFactory()
c = BuildmasterConfig = dict(
@@ -27,8 +31,28 @@ let
factory.addStep(step)
${cfg.extraConfig}
- ''
- else cfg.masterCfg;
+ '';
+
+ tacFile = pkgs.writeText "buildbot-master.tac" ''
+ import os
+
+ from twisted.application import service
+ from buildbot.master import BuildMaster
+
+ basedir = '${cfg.buildbotDir}'
+
+ configfile = '${cfg.masterCfg}'
+
+ # Default umask for server
+ umask = None
+
+ # note: this line is matched against to check that this is a buildmaster
+ # directory; do not edit it.
+ application = service.Application('buildmaster')
+
+ m = BuildMaster(basedir, configfile, umask)
+ m.setServiceParent(application)
+ '';
in {
options = {
@@ -66,9 +90,9 @@ in {
};
masterCfg = mkOption {
- type = types.nullOr types.path;
+ type = types.path;
description = "Optionally pass master.cfg path. Other options in this configuration will be ignored.";
- default = null;
+ default = defaultMasterCfg;
example = "/etc/nixos/buildbot/master.cfg";
};
@@ -175,18 +199,25 @@ in {
package = mkOption {
type = types.package;
- default = pkgs.buildbot-full;
- defaultText = "pkgs.buildbot-full";
+ default = pkgs.python3Packages.buildbot-full;
+ defaultText = "pkgs.python3Packages.buildbot-full";
description = "Package to use for buildbot.";
- example = literalExample "pkgs.buildbot-full";
+ example = literalExample "pkgs.python3Packages.buildbot";
};
packages = mkOption {
- default = with pkgs; [ python27Packages.twisted git ];
+ default = [ pkgs.git ];
example = literalExample "[ pkgs.git ]";
type = types.listOf types.package;
description = "Packages to add to PATH for the buildbot process.";
};
+
+ pythonPackages = mkOption {
+ default = pythonPackages: with pythonPackages; [ ];
+ defaultText = "pythonPackages: with pythonPackages; [ ]";
+ description = "Packages to add the to the PYTHONPATH of the buildbot process.";
+ example = literalExample "pythonPackages: with pythonPackages; [ requests ]";
+ };
};
};
@@ -210,14 +241,15 @@ in {
description = "Buildbot Continuous Integration Server.";
after = [ "network-online.target" ];
wantedBy = [ "multi-user.target" ];
- path = cfg.packages;
+ path = cfg.packages ++ cfg.pythonPackages python.pkgs;
+ environment.PYTHONPATH = "${python.withPackages (self: cfg.pythonPackages self ++ [ cfg.package ])}/${python.sitePackages}";
preStart = ''
- env > envvars
- mkdir -vp ${cfg.buildbotDir}
- ln -sfv ${masterCfg} ${cfg.buildbotDir}/master.cfg
- rm -fv $cfg.buildbotDir}/buildbot.tac
- ${cfg.package}/bin/buildbot create-master ${cfg.buildbotDir}
+ mkdir -vp "${cfg.buildbotDir}"
+ # Link the tac file so buildbot command line tools recognize the directory
+ ln -sf "${tacFile}" "${cfg.buildbotDir}/buildbot.tac"
+ ${cfg.package}/bin/buildbot create-master --db "${cfg.dbUrl}" "${cfg.buildbotDir}"
+ rm -f buildbot.tac.new master.cfg.sample
'';
serviceConfig = {
@@ -225,12 +257,11 @@ in {
User = cfg.user;
Group = cfg.group;
WorkingDirectory = cfg.home;
- ExecStart = "${cfg.package}/bin/buildbot start --nodaemon ${cfg.buildbotDir}";
+ # NOTE: call twistd directly with stdout logging for systemd
+ ExecStart = "${python.pkgs.twisted}/bin/twistd -o --nodaemon --pidfile= --logfile - --python ${tacFile}";
};
-
};
};
meta.maintainers = with lib.maintainers; [ nand0p mic92 ];
-
}
diff --git a/nixos/modules/services/continuous-integration/buildbot/worker.nix b/nixos/modules/services/continuous-integration/buildbot/worker.nix
index 67c541570b97c4af283ecc346b8b8e892930e0ca..49e04ca36228c0bfa20c484bae8957057e32c1fe 100644
--- a/nixos/modules/services/continuous-integration/buildbot/worker.nix
+++ b/nixos/modules/services/continuous-integration/buildbot/worker.nix
@@ -7,6 +7,40 @@ with lib;
let
cfg = config.services.buildbot-worker;
+ python = cfg.package.pythonModule;
+
+ tacFile = pkgs.writeText "aur-buildbot-worker.tac" ''
+ import os
+ from io import open
+
+ from buildbot_worker.bot import Worker
+ from twisted.application import service
+
+ basedir = '${cfg.buildbotDir}'
+
+ # note: this line is matched against to check that this is a worker
+ # directory; do not edit it.
+ application = service.Application('buildbot-worker')
+
+ master_url_split = '${cfg.masterUrl}'.split(':')
+ buildmaster_host = master_url_split[0]
+ port = int(master_url_split[1])
+ workername = '${cfg.workerUser}'
+
+ with open('${cfg.workerPassFile}', 'r', encoding='utf-8') as passwd_file:
+ passwd = passwd_file.read().strip('\r\n')
+ keepalive = 600
+ umask = None
+ maxdelay = 300
+ numcpus = None
+ allow_shutdown = None
+
+ s = Worker(buildmaster_host, port, workername, passwd, basedir,
+ keepalive, umask=umask, maxdelay=maxdelay,
+ numcpus=numcpus, allow_shutdown=allow_shutdown)
+ s.setServiceParent(application)
+ '';
+
in {
options = {
services.buildbot-worker = {
@@ -59,6 +93,23 @@ in {
description = "Specifies the Buildbot Worker password.";
};
+ workerPassFile = mkOption {
+ type = types.path;
+ description = "File used to store the Buildbot Worker password";
+ };
+
+ hostMessage = mkOption {
+ default = null;
+ type = types.nullOr types.str;
+ description = "Description of this worker";
+ };
+
+ adminMessage = mkOption {
+ default = null;
+ type = types.nullOr types.str;
+ description = "Name of the administrator of this worker";
+ };
+
masterUrl = mkOption {
default = "localhost:9989";
type = types.str;
@@ -67,23 +118,24 @@ in {
package = mkOption {
type = types.package;
- default = pkgs.buildbot-worker;
- defaultText = "pkgs.buildbot-worker";
+ default = pkgs.python3Packages.buildbot-worker;
+ defaultText = "pkgs.python3Packages.buildbot-worker";
description = "Package to use for buildbot worker.";
- example = literalExample "pkgs.buildbot-worker";
+ example = literalExample "pkgs.python2Packages.buildbot-worker";
};
packages = mkOption {
- default = with pkgs; [ python27Packages.twisted git ];
+ default = with pkgs; [ git ];
example = literalExample "[ pkgs.git ]";
type = types.listOf types.package;
description = "Packages to add to PATH for the buildbot process.";
};
-
};
};
config = mkIf cfg.enable {
+ services.buildbot-worker.workerPassFile = mkDefault (pkgs.writeText "buildbot-worker-password" cfg.workerPass);
+
users.groups = optional (cfg.group == "bbworker") {
name = "bbworker";
};
@@ -104,11 +156,16 @@ in {
after = [ "network.target" "buildbot-master.service" ];
wantedBy = [ "multi-user.target" ];
path = cfg.packages;
+ environment.PYTHONPATH = "${python.withPackages (p: [ cfg.package ])}/${python.sitePackages}";
preStart = ''
- mkdir -vp ${cfg.buildbotDir}
- rm -fv $cfg.buildbotDir}/buildbot.tac
- ${cfg.package}/bin/buildbot-worker create-worker ${cfg.buildbotDir} ${cfg.masterUrl} ${cfg.workerUser} ${cfg.workerPass}
+ mkdir -vp "${cfg.buildbotDir}/info"
+ ${optionalString (cfg.hostMessage != null) ''
+ ln -sf "${pkgs.writeText "buildbot-worker-host" cfg.hostMessage}" "${cfg.buildbotDir}/info/host"
+ ''}
+ ${optionalString (cfg.adminMessage != null) ''
+ ln -sf "${pkgs.writeText "buildbot-worker-admin" cfg.adminMessage}" "${cfg.buildbotDir}/info/admin"
+ ''}
'';
serviceConfig = {
@@ -116,11 +173,9 @@ in {
User = cfg.user;
Group = cfg.group;
WorkingDirectory = cfg.home;
- Environment = "PYTHONPATH=${cfg.package}/lib/python2.7/site-packages:${pkgs.python27Packages.future}/lib/python2.7/site-packages";
# NOTE: call twistd directly with stdout logging for systemd
- #ExecStart = "${cfg.package}/bin/buildbot-worker start --nodaemon ${cfg.buildbotDir}";
- ExecStart = "${pkgs.python27Packages.twisted}/bin/twistd -n -l - -y ${cfg.buildbotDir}/buildbot.tac";
+ ExecStart = "${python.pkgs.twisted}/bin/twistd --nodaemon --pidfile= --logfile - --python ${tacFile}";
};
};
diff --git a/nixos/modules/services/continuous-integration/buildkite-agent.nix b/nixos/modules/services/continuous-integration/buildkite-agent.nix
index 9daf391c73c46808f4f9aba9559c563fd03cbb70..2136778aff472991d7825b50866e8ed15f5f1dac 100644
--- a/nixos/modules/services/continuous-integration/buildkite-agent.nix
+++ b/nixos/modules/services/continuous-integration/buildkite-agent.nix
@@ -24,7 +24,7 @@ let
EOF
chmod 755 $out/${name}
'';
- in pkgs.runCommand "buildkite-agent-hooks" {} ''
+ in pkgs.runCommand "buildkite-agent-hooks" { preferLocalBuild = true; } ''
mkdir $out
${concatStringsSep "\n" (mapAttrsToList mkHookEntry (filterAttrs (n: v: v != null) cfg.hooks))}
'';
diff --git a/nixos/modules/services/continuous-integration/gitlab-runner.nix b/nixos/modules/services/continuous-integration/gitlab-runner.nix
index a0aff1b8b5b92b4e8ea9a818fb2773dbf924c2ec..3ceaa6f5ff3e6c7df8ec38190597051c16d08f97 100644
--- a/nixos/modules/services/continuous-integration/gitlab-runner.nix
+++ b/nixos/modules/services/continuous-integration/gitlab-runner.nix
@@ -8,6 +8,7 @@ let
if (cfg.configFile == null) then
(pkgs.runCommand "config.toml" {
buildInputs = [ pkgs.remarshal ];
+ preferLocalBuild = true;
} ''
remarshal -if json -of toml \
< ${pkgs.writeText "config.json" (builtins.toJSON cfg.configOptions)} \
diff --git a/nixos/modules/services/continuous-integration/jenkins/job-builder.nix b/nixos/modules/services/continuous-integration/jenkins/job-builder.nix
index 861b46a2d642fe4caa421364c3fbba8f4d02ddbb..5d1bfe4ec407e889e34e233a77409d48112c448c 100644
--- a/nixos/modules/services/continuous-integration/jenkins/job-builder.nix
+++ b/nixos/modules/services/continuous-integration/jenkins/job-builder.nix
@@ -42,6 +42,18 @@ in {
type = types.str;
description = ''
User token in Jenkins used to reload config.
+ WARNING: This token will be world readable in the Nix store. To keep
+ it secret, use the option instead.
+ '';
+ };
+
+ accessTokenFile = mkOption {
+ default = "";
+ type = types.str;
+ example = "/run/keys/jenkins-job-builder-access-token";
+ description = ''
+ File containing the API token for the
+ user.
'';
};
@@ -103,6 +115,21 @@ in {
};
config = mkIf (jenkinsCfg.enable && cfg.enable) {
+ assertions = [
+ { assertion =
+ if cfg.accessUser != ""
+ then (cfg.accessToken != "" && cfg.accessTokenFile == "") ||
+ (cfg.accessToken == "" && cfg.accessTokenFile != "")
+ else true;
+ message = ''
+ One of accessToken and accessTokenFile options must be non-empty
+ strings, but not both. Current values:
+ services.jenkins.jobBuilder.accessToken = "${cfg.accessToken}"
+ services.jenkins.jobBuilder.accessTokenFile = "${cfg.accessTokenFile}"
+ '';
+ }
+ ];
+
systemd.services.jenkins-job-builder = {
description = "Jenkins Job Builder Service";
# JJB can run either before or after jenkins. We chose after, so we can
@@ -128,8 +155,13 @@ in {
ownerStamp = ".config-xml-managed-by-nixos-jenkins-job-builder";
reloadScript = ''
echo "Asking Jenkins to reload config"
- CRUMB=$(curl -s 'http://${cfg.accessUser}:${cfg.accessToken}@${jenkinsCfg.listenAddress}:${toString jenkinsCfg.port}${jenkinsCfg.prefix}/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)')
- curl --silent -X POST -H "$CRUMB" http://${cfg.accessUser}:${cfg.accessToken}@${jenkinsCfg.listenAddress}:${toString jenkinsCfg.port}${jenkinsCfg.prefix}/reload
+ curl_opts="--silent --fail --show-error"
+ access_token=${if cfg.accessTokenFile != ""
+ then "$(cat '${cfg.accessTokenFile}')"
+ else cfg.accessToken}
+ jenkins_url="http://${cfg.accessUser}:$access_token@${jenkinsCfg.listenAddress}:${toString jenkinsCfg.port}${jenkinsCfg.prefix}"
+ crumb=$(curl $curl_opts "$jenkins_url"'/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)')
+ curl $curl_opts -X POST -H "$crumb" "$jenkins_url"/reload
'';
in
''
diff --git a/nixos/modules/services/databases/aerospike.nix b/nixos/modules/services/databases/aerospike.nix
index 5f33164998bebcafd944a21ae8deab4ea646280c..4b905f90529d2229dbc4dbadc003fadc5e3a9e86 100644
--- a/nixos/modules/services/databases/aerospike.nix
+++ b/nixos/modules/services/databases/aerospike.nix
@@ -43,6 +43,7 @@ in
package = mkOption {
default = pkgs.aerospike;
+ defaultText = "pkgs.aerospike";
type = types.package;
description = "Which Aerospike derivation to use";
};
diff --git a/nixos/modules/services/databases/cassandra.nix b/nixos/modules/services/databases/cassandra.nix
index 86e74d5d5ab42555fd6daac062c08854563c2afc..d741ee48c48f0b78d97dc4c90ca185d3e4483c7e 100644
--- a/nixos/modules/services/databases/cassandra.nix
+++ b/nixos/modules/services/databases/cassandra.nix
@@ -34,11 +34,13 @@ let
{ name = "cassandra-etc";
cassandraYaml = builtins.toJSON cassandraConfigWithAddresses;
cassandraEnvPkg = "${cfg.package}/conf/cassandra-env.sh";
+ cassandraLogbackConfig = pkgs.writeText "logback.xml" cfg.logbackConfig;
buildCommand = ''
mkdir -p "$out"
echo "$cassandraYaml" > "$out/cassandra.yaml"
ln -s "$cassandraEnvPkg" "$out/cassandra-env.sh"
+ ln -s "$cassandraLogbackConfig" "$out/logback.xml"
'';
};
in {
@@ -139,7 +141,27 @@ in {
correspond to a single address, IP aliasing is not supported.
'';
};
+ logbackConfig = mkOption {
+ type = types.lines;
+ default = ''
+
+
+
+ %-5level %date{HH:mm:ss,SSS} %msg%n
+
+
+
+
+
+
+
+
+ '';
+ description = ''
+ XML logback configuration for cassandra
+ '';
+ };
extraConfig = mkOption {
type = types.attrs;
default = {};
diff --git a/nixos/modules/services/databases/clickhouse.nix b/nixos/modules/services/databases/clickhouse.nix
index 1b8771cec3915e037568865b27fa149b3baec6f4..dbabcae43ee5ed951bd8f4a1483767592a688677 100644
--- a/nixos/modules/services/databases/clickhouse.nix
+++ b/nixos/modules/services/databases/clickhouse.nix
@@ -1,8 +1,6 @@
{ config, lib, pkgs, ... }:
let
cfg = config.services.clickhouse;
- confDir = "/etc/clickhouse-server";
- stateDir = "/var/lib/clickhouse";
in
with lib;
{
@@ -43,20 +41,13 @@ with lib;
after = [ "network.target" ];
- preStart = ''
- mkdir -p ${stateDir}
- chown clickhouse:clickhouse ${confDir} ${stateDir}
- '';
-
- script = ''
- cd "${confDir}"
- exec ${pkgs.clickhouse}/bin/clickhouse-server
- '';
-
serviceConfig = {
User = "clickhouse";
Group = "clickhouse";
- PermissionsStartOnly = true;
+ ConfigurationDirectory = "clickhouse-server";
+ StateDirectory = "clickhouse";
+ LogsDirectory = "clickhouse";
+ ExecStart = "${pkgs.clickhouse}/bin/clickhouse-server --config-file=${pkgs.clickhouse}/etc/clickhouse-server/config.xml";
};
};
@@ -70,6 +61,11 @@ with lib;
};
};
+ environment.systemPackages = [ pkgs.clickhouse ];
+
+ # startup requires a `/etc/localtime` which only if exists if `time.timeZone != null`
+ time.timeZone = mkDefault "UTC";
+
};
}
diff --git a/nixos/modules/services/databases/cockroachdb.nix b/nixos/modules/services/databases/cockroachdb.nix
new file mode 100644
index 0000000000000000000000000000000000000000..e977751b21efd5ee40f0e46edc33d4ee4aeae39b
--- /dev/null
+++ b/nixos/modules/services/databases/cockroachdb.nix
@@ -0,0 +1,217 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.services.cockroachdb;
+ crdb = cfg.package;
+
+ escape = builtins.replaceStrings ["%"] ["%%"];
+ ifNotNull = v: s: optionalString (!isNull v) s;
+
+ startupCommand = lib.concatStringsSep " "
+ [ # Basic startup
+ "${crdb}/bin/cockroach start"
+ "--logtostderr"
+ "--store=/var/lib/cockroachdb"
+ (ifNotNull cfg.locality "--locality='${cfg.locality}'")
+
+ # WebUI settings
+ "--http-addr='${cfg.http.address}:${toString cfg.http.port}'"
+
+ # Cluster listen address
+ "--listen-addr='${cfg.listen.address}:${toString cfg.listen.port}'"
+
+ # Cluster configuration
+ (ifNotNull cfg.join "--join=${cfg.join}")
+
+ # Cache and memory settings. Must be escaped.
+ "--cache='${escape cfg.cache}'"
+ "--max-sql-memory='${escape cfg.maxSqlMemory}'"
+
+ # Certificate/security settings.
+ (if cfg.insecure then "--insecure" else "--certs-dir=${cfg.certsDir}")
+ ];
+
+ addressOption = descr: defaultPort: {
+ address = mkOption {
+ type = types.str;
+ default = "localhost";
+ description = "Address to bind to for ${descr}";
+ };
+
+ port = mkOption {
+ type = types.port;
+ default = defaultPort;
+ description = "Port to bind to for ${descr}";
+ };
+ };
+in
+
+{
+ options = {
+ services.cockroachdb = {
+ enable = mkEnableOption "CockroachDB Server";
+
+ listen = addressOption "intra-cluster communication" 26257;
+
+ http = addressOption "http-based Admin UI" 8080;
+
+ locality = mkOption {
+ type = types.nullOr types.str;
+ default = null;
+ description = ''
+ An ordered, comma-separated list of key-value pairs that describe the
+ topography of the machine. Topography might include country,
+ datacenter or rack designations. Data is automatically replicated to
+ maximize diversities of each tier. The order of tiers is used to
+ determine the priority of the diversity, so the more inclusive
+ localities like country should come before less inclusive localities
+ like datacenter. The tiers and order must be the same on all nodes.
+ Including more tiers is better than including fewer. For example:
+
+
+ country=us,region=us-west,datacenter=us-west-1b,rack=12
+ country=ca,region=ca-east,datacenter=ca-east-2,rack=4
+
+ planet=earth,province=manitoba,colo=secondary,power=3
+
+ '';
+ };
+
+ join = mkOption {
+ type = types.nullOr types.str;
+ default = null;
+ description = "The addresses for connecting the node to a cluster.";
+ };
+
+ insecure = mkOption {
+ type = types.bool;
+ default = false;
+ description = "Run in insecure mode.";
+ };
+
+ certsDir = mkOption {
+ type = types.nullOr types.path;
+ default = null;
+ description = "The path to the certificate directory.";
+ };
+
+ user = mkOption {
+ type = types.str;
+ default = "cockroachdb";
+ description = "User account under which CockroachDB runs";
+ };
+
+ group = mkOption {
+ type = types.str;
+ default = "cockroachdb";
+ description = "User account under which CockroachDB runs";
+ };
+
+ openPorts = mkOption {
+ type = types.bool;
+ default = false;
+ description = "Open firewall ports for cluster communication by default";
+ };
+
+ cache = mkOption {
+ type = types.str;
+ default = "25%";
+ description = ''
+ The total size for caches.
+
+ This can be a percentage, expressed with a fraction sign or as a
+ decimal-point number, or any bytes-based unit. For example,
+ "25%", "0.25" both represent
+ 25% of the available system memory. The values
+ "1000000000" and "1GB" both
+ represent 1 gigabyte of memory.
+
+ '';
+ };
+
+ maxSqlMemory = mkOption {
+ type = types.str;
+ default = "25%";
+ description = ''
+ The maximum in-memory storage capacity available to store temporary
+ data for SQL queries.
+
+ This can be a percentage, expressed with a fraction sign or as a
+ decimal-point number, or any bytes-based unit. For example,
+ "25%", "0.25" both represent
+ 25% of the available system memory. The values
+ "1000000000" and "1GB" both
+ represent 1 gigabyte of memory.
+ '';
+ };
+
+ package = mkOption {
+ type = types.package;
+ default = pkgs.cockroachdb;
+ defaultText = "pkgs.cockroachdb";
+ description = ''
+ The CockroachDB derivation to use for running the service.
+
+ This would primarily be useful to enable Enterprise Edition features
+ in your own custom CockroachDB build (Nixpkgs CockroachDB binaries
+ only contain open source features and open source code).
+ '';
+ };
+ };
+ };
+
+ config = mkIf config.services.cockroachdb.enable {
+ assertions = [
+ { assertion = !cfg.insecure -> !(isNull cfg.certsDir);
+ message = "CockroachDB must have a set of SSL certificates (.certsDir), or run in Insecure Mode (.insecure = true)";
+ }
+ ];
+
+ environment.systemPackages = [ crdb ];
+
+ users.users = optionalAttrs (cfg.user == "cockroachdb") (singleton
+ { name = "cockroachdb";
+ description = "CockroachDB Server User";
+ uid = config.ids.uids.cockroachdb;
+ group = cfg.group;
+ });
+
+ users.groups = optionalAttrs (cfg.group == "cockroachdb") (singleton
+ { name = "cockroachdb";
+ gid = config.ids.gids.cockroachdb;
+ });
+
+ networking.firewall.allowedTCPPorts = lib.optionals cfg.openPorts
+ [ cfg.http.port cfg.listen.port ];
+
+ systemd.services.cockroachdb =
+ { description = "CockroachDB Server";
+ documentation = [ "man:cockroach(1)" "https://www.cockroachlabs.com" ];
+
+ after = [ "network.target" "time-sync.target" ];
+ requires = [ "time-sync.target" ];
+ wantedBy = [ "multi-user.target" ];
+
+ unitConfig.RequiresMountsFor = "/var/lib/cockroachdb";
+
+ serviceConfig =
+ { ExecStart = startupCommand;
+ Type = "notify";
+ User = cfg.user;
+ StateDirectory = "cockroachdb";
+ StateDirectoryMode = "0700";
+
+ Restart = "always";
+
+ # A conservative-ish timeout is alright here, because for Type=notify
+ # cockroach will send systemd pings during startup to keep it alive
+ TimeoutStopSec = 60;
+ RestartSec = 10;
+ };
+ };
+ };
+
+ meta.maintainers = with lib.maintainers; [ thoughtpolice ];
+}
diff --git a/nixos/modules/services/databases/couchdb.nix b/nixos/modules/services/databases/couchdb.nix
index ca89b1198205b5e0315f3bc0f58e5b9e89d54fb4..5ddf8ba4bfbdf9570f1859992fe29b89e8beb97c 100644
--- a/nixos/modules/services/databases/couchdb.nix
+++ b/nixos/modules/services/databases/couchdb.nix
@@ -85,7 +85,7 @@ in {
uriFile = mkOption {
type = types.path;
- default = "/var/run/couchdb/couchdb.uri";
+ default = "/run/couchdb/couchdb.uri";
description = ''
This file contains the full URI that can be used to access this
instance of CouchDB. It is used to help discover the port CouchDB is
@@ -158,27 +158,21 @@ in {
services.couchdb.configFile = mkDefault
(if useVersion2 then "/var/lib/couchdb/local.ini" else "/var/lib/couchdb/couchdb.ini");
+ systemd.tmpfiles.rules = [
+ "d '${dirOf cfg.uriFile}' - ${cfg.user} ${cfg.group} - -"
+ "d '${dirOf cfg.logFile}' - ${cfg.user} ${cfg.group} - -"
+ "d '${cfg.databaseDir}' - ${cfg.user} ${cfg.group} - -"
+ "d '${cfg.viewIndexDir}' - ${cfg.user} ${cfg.group} - -"
+ ];
+
systemd.services.couchdb = {
description = "CouchDB Server";
wantedBy = [ "multi-user.target" ];
preStart =
''
- mkdir -p `dirname ${cfg.uriFile}`;
- mkdir -p `dirname ${cfg.logFile}`;
- mkdir -p ${cfg.databaseDir};
- mkdir -p ${cfg.viewIndexDir};
touch ${cfg.configFile}
touch -a ${cfg.logFile}
-
- if [ "$(id -u)" = 0 ]; then
- chown ${cfg.user}:${cfg.group} `dirname ${cfg.uriFile}`;
- (test -f ${cfg.uriFile} && chown ${cfg.user}:${cfg.group} ${cfg.uriFile}) || true
- chown ${cfg.user}:${cfg.group} ${cfg.databaseDir}
- chown ${cfg.user}:${cfg.group} ${cfg.viewIndexDir}
- chown ${cfg.user}:${cfg.group} ${cfg.configFile}
- chown ${cfg.user}:${cfg.group} ${cfg.logFile}
- fi
'';
environment = mkIf useVersion2 {
@@ -191,7 +185,6 @@ in {
};
serviceConfig = {
- PermissionsStartOnly = true;
User = cfg.user;
Group = cfg.group;
ExecStart = executable;
diff --git a/nixos/modules/services/databases/foundationdb.xml b/nixos/modules/services/databases/foundationdb.xml
index f4090c4927641117c5673d98f1a0f34c880e7603..bf4b644c9b86aacb0de103aea06ae2554a3aa97b 100644
--- a/nixos/modules/services/databases/foundationdb.xml
+++ b/nixos/modules/services/databases/foundationdb.xml
@@ -3,42 +3,50 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="module-services-foundationdb">
-
-FoundationDB
-
-Source:modules/services/databases/foundationdb.nix
-
-Upstream documentation:
-
-Maintainer: Austin Seipp
-
-Available version(s): 5.1.x, 5.2.x, 6.0.x
-
-FoundationDB (or "FDB") is an open source, distributed, transactional
-key-value store.
-
-Configuring and basic setup
-
-To enable FoundationDB, add the following to your
-configuration.nix:
-
+ FoundationDB
+
+ Source:
+ modules/services/databases/foundationdb.nix
+
+
+ Upstream documentation:
+
+
+
+ Maintainer: Austin Seipp
+
+
+ Available version(s): 5.1.x, 5.2.x, 6.0.x
+
+
+ FoundationDB (or "FDB") is an open source, distributed, transactional
+ key-value store.
+
+
+ Configuring and basic setup
+
+
+ To enable FoundationDB, add the following to your
+ configuration.nix:
services.foundationdb.enable = true;
services.foundationdb.package = pkgs.foundationdb52; # FoundationDB 5.2.x
-
-
-The option is required,
-and must always be specified. Due to the fact FoundationDB network protocols and
-on-disk storage formats may change between (major) versions, and upgrades must
-be explicitly handled by the user, you must always manually specify this
-yourself so that the NixOS module will use the proper version. Note that minor,
-bugfix releases are always compatible.
-
-After running nixos-rebuild, you can verify whether
-FoundationDB is running by executing fdbcli (which is added
-to ):
-
+
+
+
+ The option is required, and
+ must always be specified. Due to the fact FoundationDB network protocols and
+ on-disk storage formats may change between (major) versions, and upgrades
+ must be explicitly handled by the user, you must always manually specify
+ this yourself so that the NixOS module will use the proper version. Note
+ that minor, bugfix releases are always compatible.
+
+
+
+ After running nixos-rebuild, you can verify whether
+ FoundationDB is running by executing fdbcli (which is
+ added to ):
$ sudo -u foundationdb fdbcli
Using cluster file `/etc/foundationdb/fdb.cluster'.
@@ -66,14 +74,14 @@ Cluster:
fdb>
-
-
-You can also write programs using the available client libraries.
-For example, the following Python program can be run in order to grab the
-cluster status, as a quick example. (This example uses
-nix-shell shebang support to automatically supply the
-necessary Python modules).
-
+
+
+
+ You can also write programs using the available client libraries. For
+ example, the following Python program can be run in order to grab the
+ cluster status, as a quick example. (This example uses
+ nix-shell shebang support to automatically supply the
+ necessary Python modules).
a@link> cat fdb-status.py
#! /usr/bin/env nix-shell
@@ -100,255 +108,336 @@ a@link> ./fdb-status.py
FoundationDB available: True
a@link>
-
-
-FoundationDB is run under the foundationdb user and
-group by default, but this may be changed in the NixOS configuration. The
-systemd unit foundationdb.service controls the
-fdbmonitor process.
-
-By default, the NixOS module for FoundationDB creates a single
-SSD-storage based database for development and basic usage. This storage engine
-is designed for SSDs and will perform poorly on HDDs; however it can handle far
-more data than the alternative "memory" engine and is a better default choice
-for most deployments. (Note that you can change the storage backend on-the-fly
-for a given FoundationDB cluster using fdbcli.)
-
-Furthermore, only 1 server process and 1 backup agent are started in the
-default configuration. See below for more on scaling to increase this.
-
-FoundationDB stores all data for all server processes under
-/var/lib/foundationdb. You can override this using
-, e.g.
-
+
+
+
+ FoundationDB is run under the foundationdb user and group
+ by default, but this may be changed in the NixOS configuration. The systemd
+ unit foundationdb.service controls the
+ fdbmonitor process.
+
+
+
+ By default, the NixOS module for FoundationDB creates a single SSD-storage
+ based database for development and basic usage. This storage engine is
+ designed for SSDs and will perform poorly on HDDs; however it can handle far
+ more data than the alternative "memory" engine and is a better default
+ choice for most deployments. (Note that you can change the storage backend
+ on-the-fly for a given FoundationDB cluster using
+ fdbcli.)
+
+
+
+ Furthermore, only 1 server process and 1 backup agent are started in the
+ default configuration. See below for more on scaling to increase this.
+
+
+
+ FoundationDB stores all data for all server processes under
+ /var/lib/foundationdb. You can override this using
+ , e.g.
services.foundationdb.dataDir = "/data/fdb";
-
-
-
-Similarly, logs are stored under
-/var/log/foundationdb by default, and there is a
-corresponding as well.
-
-
-
-Scaling processes and backup agents
-
-Scaling the number of server processes is quite easy; simply specify
- to be the number of
-FoundationDB worker processes that should be started on the machine.
-
-FoundationDB worker processes typically require 4GB of RAM per-process at
-minimum for good performance, so this option is set to 1 by default since the
-maximum amount of RAM is unknown. You're advised to abide by this restriction,
-so pick a number of processes so that each has 4GB or more.
-
-A similar option exists in order to scale backup agent processes,
-. Backup agents are not
-as performance/RAM sensitive, so feel free to experiment with the number of
-available backup processes.
-
-
-
-Clustering
-
-FoundationDB on NixOS works similarly to other Linux systems, so this
-section will be brief. Please refer to the full FoundationDB documentation for
-more on clustering.
-
-FoundationDB organizes clusters using a set of
-coordinators, which are just specially-designated worker
-processes. By default, every installation of FoundationDB on NixOS will start
-as its own individual cluster, with a single coordinator: the first worker
-process on localhost.
-
-Coordinators are specified globally using the
-/etc/foundationdb/fdb.cluster file, which all servers and
-client applications will use to find and join coordinators. Note that this file
-can not be managed by NixOS so easily: FoundationDB is
-designed so that it will rewrite the file at runtime for all clients and nodes
-when cluster coordinators change, with clients transparently handling this
-without intervention. It is fundamentally a mutable file, and you should not
-try to manage it in any way in NixOS.
-
-When dealing with a cluster, there are two main things you want to
-do:
-
-
- Add a node to the cluster for storage/compute.
- Promote an ordinary worker to a coordinator.
-
-
-A node must already be a member of the cluster in order to properly be
-promoted to a coordinator, so you must always add it first if you wish to
-promote it.
-
-To add a machine to a FoundationDB cluster:
-
-
- Choose one of the servers to start as the initial coordinator.
-
- Copy the /etc/foundationdb/fdb.cluster file
- from this server to all the other servers. Restart FoundationDB on all of
- these other servers, so they join the cluster.
- All of these servers are now connected and working together
- in the cluster, under the chosen coordinator.
-
-
-At this point, you can add as many nodes as you want by just repeating
-the above steps. By default there will still be a single coordinator: you can
-use fdbcli to change this and add new coordinators.
-
-As a convenience, FoundationDB can automatically assign coordinators
-based on the redundancy mode you wish to achieve for the cluster. Once all the
-nodes have been joined, simply set the replication policy, and then issue the
-coordinators auto command
-
-For example, assuming we have 3 nodes available, we can enable double
-redundancy mode, then auto-select coordinators. For double redundancy, 3
-coordinators is ideal: therefore FoundationDB will make
-every node a coordinator automatically:
+
+
+
+ Similarly, logs are stored under /var/log/foundationdb
+ by default, and there is a corresponding
+ as well.
+
+
+
+ Scaling processes and backup agents
+
+
+ Scaling the number of server processes is quite easy; simply specify
+ to be the number of
+ FoundationDB worker processes that should be started on the machine.
+
+
+
+ FoundationDB worker processes typically require 4GB of RAM per-process at
+ minimum for good performance, so this option is set to 1 by default since
+ the maximum amount of RAM is unknown. You're advised to abide by this
+ restriction, so pick a number of processes so that each has 4GB or more.
+
+
+
+ A similar option exists in order to scale backup agent processes,
+ . Backup agents are
+ not as performance/RAM sensitive, so feel free to experiment with the number
+ of available backup processes.
+
+
+
+ Clustering
+
+
+ FoundationDB on NixOS works similarly to other Linux systems, so this
+ section will be brief. Please refer to the full FoundationDB documentation
+ for more on clustering.
+
+
+
+ FoundationDB organizes clusters using a set of
+ coordinators, which are just specially-designated
+ worker processes. By default, every installation of FoundationDB on NixOS
+ will start as its own individual cluster, with a single coordinator: the
+ first worker process on localhost.
+
+
+
+ Coordinators are specified globally using the
+ /etc/foundationdb/fdb.cluster file, which all servers and
+ client applications will use to find and join coordinators. Note that this
+ file can not be managed by NixOS so easily:
+ FoundationDB is designed so that it will rewrite the file at runtime for all
+ clients and nodes when cluster coordinators change, with clients
+ transparently handling this without intervention. It is fundamentally a
+ mutable file, and you should not try to manage it in any way in NixOS.
+
+
+
+ When dealing with a cluster, there are two main things you want to do:
+
+
+
+
+
+ Add a node to the cluster for storage/compute.
+
+
+
+
+ Promote an ordinary worker to a coordinator.
+
+
+
+
+
+ A node must already be a member of the cluster in order to properly be
+ promoted to a coordinator, so you must always add it first if you wish to
+ promote it.
+
+
+
+ To add a machine to a FoundationDB cluster:
+
+
+
+
+
+ Choose one of the servers to start as the initial coordinator.
+
+
+
+
+ Copy the /etc/foundationdb/fdb.cluster file from this
+ server to all the other servers. Restart FoundationDB on all of these
+ other servers, so they join the cluster.
+
+
+
+
+ All of these servers are now connected and working together in the
+ cluster, under the chosen coordinator.
+
+
+
+
+
+ At this point, you can add as many nodes as you want by just repeating the
+ above steps. By default there will still be a single coordinator: you can
+ use fdbcli to change this and add new coordinators.
+
+
+
+ As a convenience, FoundationDB can automatically assign coordinators based
+ on the redundancy mode you wish to achieve for the cluster. Once all the
+ nodes have been joined, simply set the replication policy, and then issue
+ the coordinators auto command
+
+
+
+ For example, assuming we have 3 nodes available, we can enable double
+ redundancy mode, then auto-select coordinators. For double redundancy, 3
+ coordinators is ideal: therefore FoundationDB will make
+ every node a coordinator automatically:
+
fdbcli> configure double ssd
fdbcli> coordinators auto
-This will transparently update all the servers within seconds, and
-appropriately rewrite the fdb.cluster file, as well as
-informing all client processes to do the same.
-
-
-
-Client connectivity
-
-By default, all clients must use the current
-fdb.cluster file to access a given FoundationDB cluster.
-This file is located by default in
-/etc/foundationdb/fdb.cluster on all machines with the
-FoundationDB service enabled, so you may copy the active one from your cluster
-to a new node in order to connect, if it is not part of the cluster.
-
-
-
-Client authorization and TLS
-
-By default, any user who can connect to a FoundationDB process with the
-correct cluster configuration can access anything. FoundationDB uses a
-pluggable design to transport security, and out of the box it supports a
-LibreSSL-based plugin for TLS support. This plugin not only does in-flight
-encryption, but also performs client authorization based on the given
-endpoint's certificate chain. For example, a FoundationDB server may be
-configured to only accept client connections over TLS, where the client TLS
-certificate is from organization Acme Co in the
-Research and Development unit.
-
-Configuring TLS with FoundationDB is done using the
- options in order to control the peer
-verification string, as well as the certificate and its private key.
-
-Note that the certificate and its private key must be accessible to the
-FoundationDB user account that the server runs under. These files are also NOT
-managed by NixOS, as putting them into the store may reveal private
-information.
-
-After you have a key and certificate file in place, it is not enough to
-simply set the NixOS module options -- you must also configure the
-fdb.cluster file to specify that a given set of coordinators
-use TLS. This is as simple as adding the suffix :tls to your
-cluster coordinator configuration, after the port number. For example, assuming
-you have a coordinator on localhost with the default configuration, simply
-specifying:
+
+ This will transparently update all the servers within seconds, and
+ appropriately rewrite the fdb.cluster file, as well as
+ informing all client processes to do the same.
+
+
+
+ Client connectivity
+
+
+ By default, all clients must use the current fdb.cluster
+ file to access a given FoundationDB cluster. This file is located by default
+ in /etc/foundationdb/fdb.cluster on all machines with the
+ FoundationDB service enabled, so you may copy the active one from your
+ cluster to a new node in order to connect, if it is not part of the cluster.
+
+
+
+ Client authorization and TLS
+
+
+ By default, any user who can connect to a FoundationDB process with the
+ correct cluster configuration can access anything. FoundationDB uses a
+ pluggable design to transport security, and out of the box it supports a
+ LibreSSL-based plugin for TLS support. This plugin not only does in-flight
+ encryption, but also performs client authorization based on the given
+ endpoint's certificate chain. For example, a FoundationDB server may be
+ configured to only accept client connections over TLS, where the client TLS
+ certificate is from organization Acme Co in the
+ Research and Development unit.
+
+
+
+ Configuring TLS with FoundationDB is done using the
+ options in order to control the
+ peer verification string, as well as the certificate and its private key.
+
+
+
+ Note that the certificate and its private key must be accessible to the
+ FoundationDB user account that the server runs under. These files are also
+ NOT managed by NixOS, as putting them into the store may reveal private
+ information.
+
+
+
+ After you have a key and certificate file in place, it is not enough to
+ simply set the NixOS module options -- you must also configure the
+ fdb.cluster file to specify that a given set of
+ coordinators use TLS. This is as simple as adding the suffix
+ :tls to your cluster coordinator configuration, after the
+ port number. For example, assuming you have a coordinator on localhost with
+ the default configuration, simply specifying:
+
XXXXXX:XXXXXX@127.0.0.1:4500:tls
-will configure all clients and server processes to use TLS from now
-on.
-
-
-
-Backups and Disaster Recovery
-
-The usual rules for doing FoundationDB backups apply on NixOS as written
-in the FoundationDB manual. However, one important difference is the security
-profile for NixOS: by default, the foundationdb systemd unit
-uses Linux namespaces to restrict write access to the
-system, except for the log directory, data directory, and the
-/etc/foundationdb/ directory. This is enforced by default
-and cannot be disabled.
-
-However, a side effect of this is that the fdbbackup
-command doesn't work properly for local filesystem backups: FoundationDB uses a
-server process alongside the database processes to perform backups and copy the
-backups to the filesystem. As a result, this process is put under the
-restricted namespaces above: the backup process can only write to a limited
-number of paths.
-
-In order to allow flexible backup locations on local disks, the
-FoundationDB NixOS module supports a
- option. This option
-takes a list of paths, and adds them to the systemd unit, allowing the
-processes inside the service to write (and read) the specified
-directories.
-
-For example, to create backups in /opt/fdb-backups,
-first set up the paths in the module options:
+
+ will configure all clients and server processes to use TLS from now on.
+
+
+
+ Backups and Disaster Recovery
+
+
+ The usual rules for doing FoundationDB backups apply on NixOS as written in
+ the FoundationDB manual. However, one important difference is the security
+ profile for NixOS: by default, the foundationdb systemd
+ unit uses Linux namespaces to restrict write access to
+ the system, except for the log directory, data directory, and the
+ /etc/foundationdb/ directory. This is enforced by default
+ and cannot be disabled.
+
+
+
+ However, a side effect of this is that the fdbbackup
+ command doesn't work properly for local filesystem backups: FoundationDB
+ uses a server process alongside the database processes to perform backups
+ and copy the backups to the filesystem. As a result, this process is put
+ under the restricted namespaces above: the backup process can only write to
+ a limited number of paths.
+
+
+
+ In order to allow flexible backup locations on local disks, the FoundationDB
+ NixOS module supports a
+ option. This
+ option takes a list of paths, and adds them to the systemd unit, allowing
+ the processes inside the service to write (and read) the specified
+ directories.
+
+
+
+ For example, to create backups in /opt/fdb-backups, first
+ set up the paths in the module options:
+
services.foundationdb.extraReadWritePaths = [ "/opt/fdb-backups" ];
-Restart the FoundationDB service, and it will now be able to write to
-this directory (even if it does not yet exist.) Note: this path
-must exist before restarting the unit. Otherwise, systemd
-will not include it in the private FoundationDB namespace (and it will not add
-it dynamically at runtime).
+
+ Restart the FoundationDB service, and it will now be able to write to this
+ directory (even if it does not yet exist.) Note: this path
+ must exist before restarting the unit. Otherwise,
+ systemd will not include it in the private FoundationDB namespace (and it
+ will not add it dynamically at runtime).
+
-You can now perform a backup:
+
+ You can now perform a backup:
+
$ sudo -u foundationdb fdbbackup start -t default -d file:///opt/fdb-backups
$ sudo -u foundationdb fdbbackup status -t default
-
-
-
-Known limitations
-
-The FoundationDB setup for NixOS should currently be considered beta.
-FoundationDB is not new software, but the NixOS compilation and integration has
-only undergone fairly basic testing of all the available functionality.
-
-
- There is no way to specify individual parameters for
- individual fdbserver processes. Currently, all server
- processes inherit all the global fdbmonitor settings.
-
- Ruby bindings are not currently installed.
- Go bindings are not currently installed.
-
-
-
-
-Options
-
-NixOS's FoundationDB module allows you to configure all of the most
-relevant configuration options for fdbmonitor, matching it
-quite closely. A complete list of options for the FoundationDB module may be
-found here. You should
-also read the FoundationDB documentation as well.
-
-
-
-Full documentation
-
-FoundationDB is a complex piece of software, and requires careful
-administration to properly use. Full documentation for administration can be
-found here: .
-
-
-
+
+
+ Known limitations
+
+
+ The FoundationDB setup for NixOS should currently be considered beta.
+ FoundationDB is not new software, but the NixOS compilation and integration
+ has only undergone fairly basic testing of all the available functionality.
+
+
+
+
+
+ There is no way to specify individual parameters for individual
+ fdbserver processes. Currently, all server processes
+ inherit all the global fdbmonitor settings.
+
+
+
+
+ Ruby bindings are not currently installed.
+
+
+
+
+ Go bindings are not currently installed.
+
+
+
+
+
+ Options
+
+
+ NixOS's FoundationDB module allows you to configure all of the most relevant
+ configuration options for fdbmonitor, matching it quite
+ closely. A complete list of options for the FoundationDB module may be found
+ here. You should
+ also read the FoundationDB documentation as well.
+
+
+
+ Full documentation
+
+
+ FoundationDB is a complex piece of software, and requires careful
+ administration to properly use. Full documentation for administration can be
+ found here: .
+
+
diff --git a/nixos/modules/services/databases/hbase.nix b/nixos/modules/services/databases/hbase.nix
index 4772e897efe2c904faf7847ac66703e9e242d272..52f2d95b4e00cb58c5dc29d690ea82a7e888ef8a 100644
--- a/nixos/modules/services/databases/hbase.nix
+++ b/nixos/modules/services/databases/hbase.nix
@@ -18,7 +18,7 @@ let
'';
- configDir = pkgs.runCommand "hbase-config-dir" {} ''
+ configDir = pkgs.runCommand "hbase-config-dir" { preferLocalBuild = true; } ''
mkdir -p $out
cp ${cfg.package}/conf/* $out/
rm $out/hbase-site.xml
diff --git a/nixos/modules/services/databases/influxdb.nix b/nixos/modules/services/databases/influxdb.nix
index d7a028b25d8d9f0523af41f885c0660022caf33f..6868050c8446b3ce76a7913f5715bb1b4f0bd739 100644
--- a/nixos/modules/services/databases/influxdb.nix
+++ b/nixos/modules/services/databases/influxdb.nix
@@ -98,6 +98,7 @@ let
configFile = pkgs.runCommand "config.toml" {
buildInputs = [ pkgs.remarshal ];
+ preferLocalBuild = true;
} ''
remarshal -if json -of toml \
< ${pkgs.writeText "config.json" (builtins.toJSON configOptions)} \
@@ -156,20 +157,19 @@ in
config = mkIf config.services.influxdb.enable {
+ systemd.tmpfiles.rules = [
+ "d '${cfg.dataDir}' 0770 ${cfg.user} ${cfg.group} - -"
+ ];
+
systemd.services.influxdb = {
description = "InfluxDB Server";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
serviceConfig = {
ExecStart = ''${cfg.package}/bin/influxd -config "${configFile}"'';
- User = "${cfg.user}";
- Group = "${cfg.group}";
- PermissionsStartOnly = true;
+ User = cfg.user;
+ Group = cfg.group;
};
- preStart = ''
- mkdir -m 0770 -p ${cfg.dataDir}
- if [ "$(id -u)" = 0 ]; then chown -R ${cfg.user}:${cfg.group} ${cfg.dataDir}; fi
- '';
postStart =
let
scheme = if configOptions.http.https-enabled then "-k https" else "http";
diff --git a/nixos/modules/services/databases/memcached.nix b/nixos/modules/services/databases/memcached.nix
index 7af452e4dced70e6c7ee17e199a7126948fa4eb1..052ff1f308eb7a6a933264d51349e952b41a694b 100644
--- a/nixos/modules/services/databases/memcached.nix
+++ b/nixos/modules/services/databases/memcached.nix
@@ -78,11 +78,6 @@ in
after = [ "network.target" ];
serviceConfig = {
- PermissionsStartOnly = true;
- ExecStartPre = optionals cfg.enableUnixSocket [
- "${pkgs.coreutils}/bin/install -d -o ${cfg.user} /run/memcached/"
- "${pkgs.coreutils}/bin/chown -R ${cfg.user} /run/memcached/"
- ];
ExecStart =
let
networking = if cfg.enableUnixSocket
@@ -91,12 +86,13 @@ in
in "${memcached}/bin/memcached ${networking} -m ${toString cfg.maxMemory} -c ${toString cfg.maxConnections} ${concatStringsSep " " cfg.extraOptions}";
User = cfg.user;
+ RuntimeDirectory = "memcached";
};
};
};
imports = [
(mkRemovedOptionModule ["services" "memcached" "socket"] ''
- This option was replaced by a fixed unix socket path at /run/memcached/memcached.sock enabled using services.memached.enableUnixSocket.
+ This option was replaced by a fixed unix socket path at /run/memcached/memcached.sock enabled using services.memcached.enableUnixSocket.
'')
];
diff --git a/nixos/modules/services/databases/mongodb.nix b/nixos/modules/services/databases/mongodb.nix
index 4c46d9228e5f88b745a1d7e94fe89e1c950d649e..3fe4af2f2619bc9db20f636993eaf104b79d5300 100644
--- a/nixos/modules/services/databases/mongodb.nix
+++ b/nixos/modules/services/databases/mongodb.nix
@@ -65,7 +65,7 @@ in
};
pidFile = mkOption {
- default = "/var/run/mongodb.pid";
+ default = "/run/mongodb.pid";
description = "Location of MongoDB pid file";
};
diff --git a/nixos/modules/services/databases/mysql.nix b/nixos/modules/services/databases/mysql.nix
index 0dde9ee6e2e5ff8033ab17e3167927f2ba83451f..89291d4438ff55d65c74c9ab865e0bf79614bdae 100644
--- a/nixos/modules/services/databases/mysql.nix
+++ b/nixos/modules/services/databases/mysql.nix
@@ -12,26 +12,22 @@ let
let
pName = _p: (builtins.parseDrvName (_p.name)).name;
in pName mysql == pName pkgs.mariadb;
+ isMysqlAtLeast57 =
+ let
+ pName = _p: (builtins.parseDrvName (_p.name)).name;
+ in (pName mysql == pName pkgs.mysql57)
+ && ((builtins.compareVersions mysql.version "5.7") >= 0);
pidFile = "${cfg.pidDir}/mysqld.pid";
+ mysqldAndInstallOptions =
+ "--user=${cfg.user} --datadir=${cfg.dataDir} --basedir=${mysql}";
mysqldOptions =
- "--user=${cfg.user} --datadir=${cfg.dataDir} --basedir=${mysql} " +
- "--pid-file=${pidFile}";
-
- myCnf = pkgs.writeText "my.cnf"
- ''
- [mysqld]
- port = ${toString cfg.port}
- ${optionalString (cfg.bind != null) "bind-address = ${cfg.bind}" }
- ${optionalString (cfg.replication.role == "master" || cfg.replication.role == "slave") "log-bin=mysql-bin"}
- ${optionalString (cfg.replication.role == "master" || cfg.replication.role == "slave") "server-id = ${toString cfg.replication.serverId}"}
- ${optionalString (cfg.ensureUsers != [])
- ''
- plugin-load-add = auth_socket.so
- ''}
- ${cfg.extraOptions}
- '';
+ "${mysqldAndInstallOptions} --pid-file=${pidFile}";
+ # For MySQL 5.7+, --insecure creates the root user without password
+ # (earlier versions and MariaDB do this by default).
+ installOptions =
+ "${mysqldAndInstallOptions} ${lib.optionalString isMysqlAtLeast57 "--insecure"}";
in
@@ -107,6 +103,24 @@ in
};
initialDatabases = mkOption {
+ type = types.listOf (types.submodule {
+ options = {
+ name = mkOption {
+ type = types.str;
+ description = ''
+ The name of the database to create.
+ '';
+ };
+ schema = mkOption {
+ type = types.nullOr types.path;
+ default = null;
+ description = ''
+ The initial schema of the database; if null (the default),
+ an empty database is created.
+ '';
+ };
+ };
+ });
default = [];
description = ''
List of database names and their initial schemas that should be used to create databases on the first startup
@@ -119,11 +133,13 @@ in
};
initialScript = mkOption {
+ type = types.nullOr types.lines;
default = null;
description = "A file containing SQL statements to be executed on the first startup. Can be used for granting certain permissions on the database";
};
ensureDatabases = mkOption {
+ type = types.listOf types.str;
default = [];
description = ''
Ensures that the specified databases exist.
@@ -138,6 +154,38 @@ in
};
ensureUsers = mkOption {
+ type = types.listOf (types.submodule {
+ options = {
+ name = mkOption {
+ type = types.str;
+ description = ''
+ Name of the user to ensure.
+ '';
+ };
+ ensurePermissions = mkOption {
+ type = types.attrsOf types.str;
+ default = {};
+ description = ''
+ Permissions to ensure for the user, specified as attribute set.
+ The attribute names specify the database and tables to grant the permissions for,
+ separated by a dot. You may use wildcards here.
+ The attribute values specfiy the permissions to grant.
+ You may specify one or multiple comma-separated SQL privileges here.
+
+ For more information on how to specify the target
+ and on which privileges exist, see the
+ GRANT syntax.
+ The attributes are used as GRANT ''${attrName} ON ''${attrValue}.
+ '';
+ example = literalExample ''
+ {
+ "database.*" = "ALL PRIVILEGES";
+ "*.*" = "SELECT, LOCK TABLES";
+ }
+ '';
+ };
+ };
+ });
default = [];
description = ''
Ensures that the specified users exist and have at least the ensured permissions.
@@ -147,20 +195,22 @@ in
option is changed. This means that users created and permissions assigned once through this option or
otherwise have to be removed manually.
'';
- example = [
- {
- name = "nextcloud";
- ensurePermissions = {
- "nextcloud.*" = "ALL PRIVILEGES";
- };
- }
- {
- name = "backup";
- ensurePermissions = {
- "*.*" = "SELECT, LOCK TABLES";
- };
- }
- ];
+ example = literalExample ''
+ [
+ {
+ name = "nextcloud";
+ ensurePermissions = {
+ "nextcloud.*" = "ALL PRIVILEGES";
+ };
+ }
+ {
+ name = "backup";
+ ensurePermissions = {
+ "*.*" = "SELECT, LOCK TABLES";
+ };
+ }
+ ]
+ '';
};
# FIXME: remove this option; it's a really bad idea.
@@ -231,6 +281,21 @@ in
environment.systemPackages = [mysql];
+ environment.etc."my.cnf".text =
+ ''
+ [mysqld]
+ port = ${toString cfg.port}
+ datadir = ${cfg.dataDir}
+ ${optionalString (cfg.bind != null) "bind-address = ${cfg.bind}" }
+ ${optionalString (cfg.replication.role == "master" || cfg.replication.role == "slave") "log-bin=mysql-bin"}
+ ${optionalString (cfg.replication.role == "master" || cfg.replication.role == "slave") "server-id = ${toString cfg.replication.serverId}"}
+ ${optionalString (cfg.ensureUsers != [])
+ ''
+ plugin-load-add = auth_socket.so
+ ''}
+ ${cfg.extraOptions}
+ '';
+
systemd.services.mysql = let
hasNotify = (cfg.package == pkgs.mariadb);
in {
@@ -238,6 +303,7 @@ in
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
+ restartTriggers = [ config.environment.etc."my.cnf".source ];
unitConfig.RequiresMountsFor = "${cfg.dataDir}";
@@ -252,7 +318,7 @@ in
if ! test -e ${cfg.dataDir}/mysql; then
mkdir -m 0700 -p ${cfg.dataDir}
chown -R ${cfg.user} ${cfg.dataDir}
- ${mysql}/bin/mysql_install_db ${mysqldOptions}
+ ${mysql}/bin/mysql_install_db --defaults-file=/etc/my.cnf ${installOptions}
touch /tmp/mysql_init
fi
@@ -263,7 +329,8 @@ in
serviceConfig = {
Type = if hasNotify then "notify" else "simple";
RuntimeDirectory = "mysqld";
- ExecStart = "${mysql}/bin/mysqld --defaults-extra-file=${myCnf} ${mysqldOptions}";
+ # The last two environment variables are used for starting Galera clusters
+ ExecStart = "${mysql}/bin/mysqld --defaults-file=/etc/my.cnf ${mysqldOptions} $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION";
};
postStart = ''
@@ -351,7 +418,7 @@ in
${optionalString (cfg.ensureDatabases != []) ''
(
${concatMapStrings (database: ''
- echo "CREATE DATABASE IF NOT EXISTS ${database};"
+ echo "CREATE DATABASE IF NOT EXISTS \`${database}\`;"
'') cfg.ensureDatabases}
) | ${mysql}/bin/mysql -u root -N
''}
diff --git a/nixos/modules/services/databases/openldap.nix b/nixos/modules/services/databases/openldap.nix
index 9f2bf5ef8a9ccdae9a0757c1eff441026d72fad7..c101e7375af90a989fbba5c9018c711ee4097c27 100644
--- a/nixos/modules/services/databases/openldap.nix
+++ b/nixos/modules/services/databases/openldap.nix
@@ -8,7 +8,20 @@ let
openldap = pkgs.openldap;
dataFile = pkgs.writeText "ldap-contents.ldif" cfg.declarativeContents;
- configFile = pkgs.writeText "slapd.conf" cfg.extraConfig;
+ configFile = pkgs.writeText "slapd.conf" ((optionalString cfg.defaultSchemas ''
+ include ${pkgs.openldap.out}/etc/schema/core.schema
+ include ${pkgs.openldap.out}/etc/schema/cosine.schema
+ include ${pkgs.openldap.out}/etc/schema/inetorgperson.schema
+ include ${pkgs.openldap.out}/etc/schema/nis.schema
+ '') + ''
+ ${cfg.extraConfig}
+ database ${cfg.database}
+ suffix ${cfg.suffix}
+ rootdn ${cfg.rootdn}
+ rootpw ${cfg.rootpw}
+ directory ${cfg.dataDir}
+ ${cfg.extraDatabaseConfig}
+ '');
configOpts = if cfg.configDir == null then "-f ${configFile}"
else "-F ${cfg.configDir}";
in
@@ -54,6 +67,59 @@ in
description = "The database directory.";
};
+ defaultSchemas = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Include the default schemas core, cosine, inetorgperson and nis.
+ This setting will be ignored if configDir is set.
+ '';
+ };
+
+ database = mkOption {
+ type = types.str;
+ default = "mdb";
+ description = ''
+ Database type to use for the LDAP.
+ This setting will be ignored if configDir is set.
+ '';
+ };
+
+ suffix = mkOption {
+ type = types.str;
+ example = "dc=example,dc=org";
+ description = ''
+ Specify the DN suffix of queries that will be passed to this backend
+ database.
+ This setting will be ignored if configDir is set.
+ '';
+ };
+
+ rootdn = mkOption {
+ type = types.str;
+ example = "cn=admin,dc=example,dc=org";
+ description = ''
+ Specify the distinguished name that is not subject to access control
+ or administrative limit restrictions for operations on this database.
+ This setting will be ignored if configDir is set.
+ '';
+ };
+
+ rootpw = mkOption {
+ type = types.str;
+ description = ''
+ Password for the root user.
+ This setting will be ignored if configDir is set.
+ '';
+ };
+
+ logLevel = mkOption {
+ type = types.str;
+ default = "0";
+ example = "acl trace";
+ description = "The log level selector of slapd.";
+ };
+
configDir = mkOption {
type = types.nullOr types.path;
default = null;
@@ -111,6 +177,39 @@ in
# ...
'';
};
+
+ extraDatabaseConfig = mkOption {
+ type = types.lines;
+ default = "";
+ description = ''
+ slapd.conf configuration after the database option.
+ This setting will be ignored if configDir is set.
+ '';
+ example = ''
+ # Indices to maintain for this directory
+ # unique id so equality match only
+ index uid eq
+ # allows general searching on commonname, givenname and email
+ index cn,gn,mail eq,sub
+ # allows multiple variants on surname searching
+ index sn eq,sub
+ # sub above includes subintial,subany,subfinal
+ # optimise department searches
+ index ou eq
+ # if searches will include objectClass uncomment following
+ # index objectClass eq
+ # shows use of default index parameter
+ index default eq,sub
+ # indices missing - uses default eq,sub
+ index telephonenumber
+
+ # other database parameters
+ # read more in slapd.conf reference section
+ cachesize 10000
+ checkpoint 128 15
+ '';
+ };
+
};
};
@@ -127,8 +226,8 @@ in
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
preStart = ''
- mkdir -p /var/run/slapd
- chown -R "${cfg.user}:${cfg.group}" /var/run/slapd
+ mkdir -p /run/slapd
+ chown -R "${cfg.user}:${cfg.group}" /run/slapd
${optionalString (cfg.declarativeContents != null) ''
rm -Rf "${cfg.dataDir}"
''}
@@ -139,7 +238,7 @@ in
chown -R "${cfg.user}:${cfg.group}" "${cfg.dataDir}"
'';
serviceConfig.ExecStart =
- "${openldap.out}/libexec/slapd -d 0 " +
+ "${openldap.out}/libexec/slapd -d '${cfg.logLevel}' " +
"-u '${cfg.user}' -g '${cfg.group}' " +
"-h '${concatStringsSep " " cfg.urlList}' " +
"${configOpts}";
diff --git a/nixos/modules/services/databases/postgresql.nix b/nixos/modules/services/databases/postgresql.nix
index f59fb1c8177265b408a2d5e166396d2c0893efac..87b236dd5fd1d232e725b0a68c70ddefc4fe328e 100644
--- a/nixos/modules/services/databases/postgresql.nix
+++ b/nixos/modules/services/databases/postgresql.nix
@@ -55,7 +55,7 @@ in
package = mkOption {
type = types.package;
- example = literalExample "pkgs.postgresql96";
+ example = literalExample "pkgs.postgresql_9_6";
description = ''
PostgreSQL package to use.
'';
@@ -118,7 +118,7 @@ in
extraPlugins = mkOption {
type = types.listOf types.path;
default = [];
- example = literalExample "[ (pkgs.postgis.override { postgresql = pkgs.postgresql94; }) ]";
+ example = literalExample "[ (pkgs.postgis.override { postgresql = pkgs.postgresql_9_4; }) ]";
description = ''
When this list contains elements a new store path is created.
PostgreSQL and the elements are symlinked into it. Then pg_config,
@@ -167,9 +167,9 @@ in
# Note: when changing the default, make it conditional on
# ‘system.stateVersion’ to maintain compatibility with existing
# systems!
- mkDefault (if versionAtLeast config.system.stateVersion "17.09" then pkgs.postgresql96
- else if versionAtLeast config.system.stateVersion "16.03" then pkgs.postgresql95
- else pkgs.postgresql94);
+ mkDefault (if versionAtLeast config.system.stateVersion "17.09" then pkgs.postgresql_9_6
+ else if versionAtLeast config.system.stateVersion "16.03" then pkgs.postgresql_9_5
+ else pkgs.postgresql_9_4);
services.postgresql.dataDir =
mkDefault (if versionAtLeast config.system.stateVersion "17.09" then "/var/lib/postgresql/${config.services.postgresql.package.psqlSchema}"
@@ -188,6 +188,8 @@ in
uid = config.ids.uids.postgres;
group = "postgres";
description = "PostgreSQL server user";
+ home = "${cfg.dataDir}";
+ useDefaultShell = true;
};
users.groups.postgres.gid = config.ids.gids.postgres;
@@ -236,6 +238,10 @@ in
User = "postgres";
Group = "postgres";
PermissionsStartOnly = true;
+ RuntimeDirectory = "postgresql";
+ Type = if lib.versionAtLeast cfg.package.version "9.6"
+ then "notify"
+ else "simple";
# Shut down Postgres using SIGINT ("Fast Shutdown mode"). See
# http://www.postgresql.org/docs/current/static/server-shutdown.html
@@ -269,5 +275,5 @@ in
};
meta.doc = ./postgresql.xml;
-
+ meta.maintainers = with lib.maintainers; [ thoughtpolice ];
}
diff --git a/nixos/modules/services/databases/postgresql.xml b/nixos/modules/services/databases/postgresql.xml
index 98a631c0cd32aff47946ba9e4e7e034262b5b07e..14f4d4909bc0c038f3114c13116889cb0fcaa415 100644
--- a/nixos/modules/services/databases/postgresql.xml
+++ b/nixos/modules/services/databases/postgresql.xml
@@ -3,36 +3,39 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="module-postgresql">
-
-PostgreSQL
-
+ PostgreSQL
-
-Source:modules/services/databases/postgresql.nix
-
-Upstream documentation:
-
+
+ Source:
+ modules/services/databases/postgresql.nix
+
+
+ Upstream documentation:
+
+
-
-PostgreSQL is an advanced, free relational database.
-
-Configuring
-
-To enable PostgreSQL, add the following to your
-configuration.nix:
-
+
+ PostgreSQL is an advanced, free relational database.
+
+
+
+ Configuring
+
+
+ To enable PostgreSQL, add the following to your
+ configuration.nix:
= true;
- = pkgs.postgresql94;
+ = pkgs.postgresql_9_4;
-
-Note that you are required to specify the desired version of
-PostgreSQL (e.g. pkgs.postgresql94). Since
-upgrading your PostgreSQL version requires a database dump and reload
-(see below), NixOS cannot provide a default value for
- such as the most recent
-release of PostgreSQL.
+ Note that you are required to specify the desired version of PostgreSQL
+ (e.g. pkgs.postgresql_9_4). Since upgrading your
+ PostgreSQL version requires a database dump and reload (see below), NixOS
+ cannot provide a default value for
+ such as the most recent
+ release of PostgreSQL.
+
-By default, PostgreSQL stores its databases in
-/var/db/postgresql. You can override this using
-, e.g.
-
+
+ By default, PostgreSQL stores its databases in
+ /var/db/postgresql. You can override this using
+ , e.g.
= "/data/postgresql";
-
-
-
-
-
-
-Upgrading
-
-FIXME: document dump/upgrade/load cycle.
-
-
-
-
-Options
-
- A complete list of options for the PostgreSQL module may be found here.
-
-
-
-
+
+
+
+ Upgrading
+
+
+ FIXME: document dump/upgrade/load cycle.
+
+
+
+ Options
+
+
+ A complete list of options for the PostgreSQL module may be found
+ here.
+
+
diff --git a/nixos/modules/services/databases/redis.nix b/nixos/modules/services/databases/redis.nix
index cc7b51982d1d61dc975b00e6e34a98699ef79357..c04cc1283b2eda3d37b2977d8e46b0645451ade5 100644
--- a/nixos/modules/services/databases/redis.nix
+++ b/nixos/modules/services/databases/redis.nix
@@ -95,7 +95,7 @@ in
type = with types; nullOr path;
default = null;
description = "The path to the socket to bind to.";
- example = "/var/run/redis.sock";
+ example = "/run/redis.sock";
};
logLevel = mkOption {
diff --git a/nixos/modules/services/databases/rethinkdb.nix b/nixos/modules/services/databases/rethinkdb.nix
index 789d9c851d64fe176755e6fe7d84aa2e26e292c4..4828e594b3283200f9dae1c8e2d30b1ce0d5dc57 100644
--- a/nixos/modules/services/databases/rethinkdb.nix
+++ b/nixos/modules/services/databases/rethinkdb.nix
@@ -41,7 +41,7 @@ in
};
pidpath = mkOption {
- default = "/var/run/rethinkdb";
+ default = "/run/rethinkdb";
description = "Location where each instance's pid file is located.";
};
diff --git a/nixos/modules/services/databases/stanchion.nix b/nixos/modules/services/databases/stanchion.nix
index 9fe49f51edd263befbe960fb763f02f7cc74ec53..97e55bc70c470166d6a0e28ff584790c92c03ca2 100644
--- a/nixos/modules/services/databases/stanchion.nix
+++ b/nixos/modules/services/databases/stanchion.nix
@@ -98,7 +98,7 @@ in
type = types.path;
default = "/var/log/stanchion";
description = ''
- Log directory for Stanchino.
+ Log directory for Stanchion.
'';
};
@@ -152,6 +152,11 @@ in
users.groups.stanchion.gid = config.ids.gids.stanchion;
+ systemd.tmpfiles.rules = [
+ "d '${cfg.logDir}' - stanchion stanchion --"
+ "d '${cfg.dataDir}' 0700 stanchion stanchion --"
+ ];
+
systemd.services.stanchion = {
description = "Stanchion Server";
@@ -168,25 +173,12 @@ in
environment.STANCHION_LOG_DIR = "${cfg.logDir}";
environment.STANCHION_ETC_DIR = "/etc/stanchion";
- preStart = ''
- if ! test -e ${cfg.logDir}; then
- mkdir -m 0755 -p ${cfg.logDir}
- chown -R stanchion:stanchion ${cfg.logDir}
- fi
-
- if ! test -e ${cfg.dataDir}; then
- mkdir -m 0700 -p ${cfg.dataDir}
- chown -R stanchion:stanchion ${cfg.dataDir}
- fi
- '';
-
serviceConfig = {
ExecStart = "${cfg.package}/bin/stanchion console";
ExecStop = "${cfg.package}/bin/stanchion stop";
StandardInput = "tty";
User = "stanchion";
Group = "stanchion";
- PermissionsStartOnly = true;
# Give Stanchion a decent amount of time to clean up.
TimeoutStopSec = 120;
LimitNOFILE = 65536;
diff --git a/nixos/modules/services/desktops/accountsservice.nix b/nixos/modules/services/desktops/accountsservice.nix
index 933b9da2c83c14556555841f6eec8c13841d5daf..c48036a99e8fb5a15358845811eea68cc873e955 100644
--- a/nixos/modules/services/desktops/accountsservice.nix
+++ b/nixos/modules/services/desktops/accountsservice.nix
@@ -39,14 +39,14 @@ with lib;
systemd.packages = [ pkgs.accountsservice ];
- systemd.services.accounts-daemon = {
+ systemd.services.accounts-daemon = recursiveUpdate {
wantedBy = [ "graphical.target" ];
# Accounts daemon looks for dbus interfaces in $XDG_DATA_DIRS/accountsservice
environment.XDG_DATA_DIRS = "${config.system.path}/share";
- } // (optionalAttrs (!config.users.mutableUsers) {
+ } (optionalAttrs (!config.users.mutableUsers) {
environment.NIXOS_USERS_PURE = "true";
});
};
diff --git a/nixos/modules/services/desktops/deepin/dde-daemon.nix b/nixos/modules/services/desktops/deepin/dde-daemon.nix
new file mode 100644
index 0000000000000000000000000000000000000000..057da4e2d7f283d75a2672277214bb9ff063dc7d
--- /dev/null
+++ b/nixos/modules/services/desktops/deepin/dde-daemon.nix
@@ -0,0 +1,41 @@
+# dde-daemon
+
+{ config, pkgs, lib, ... }:
+
+{
+
+ ###### interface
+
+ options = {
+
+ services.deepin.dde-daemon = {
+
+ enable = lib.mkEnableOption
+ "A daemon for handling Deepin Desktop Environment session settings";
+
+ };
+
+ };
+
+
+ ###### implementation
+
+ config = lib.mkIf config.services.deepin.dde-daemon.enable {
+
+ environment.systemPackages = [ pkgs.deepin.dde-daemon ];
+
+ services.dbus.packages = [ pkgs.deepin.dde-daemon ];
+
+ systemd.packages = [ pkgs.deepin.dde-daemon ];
+
+ users.groups.dde-daemon = { };
+
+ users.users.dde-daemon = {
+ description = "Deepin daemon user";
+ group = "dde-daemon";
+ isSystemUser = true;
+ };
+
+ };
+
+}
diff --git a/nixos/modules/services/desktops/deepin/deepin-menu.nix b/nixos/modules/services/desktops/deepin/deepin-menu.nix
new file mode 100644
index 0000000000000000000000000000000000000000..23fe5a741c424fd42d6b0c09ab70e6a0d0a97faa
--- /dev/null
+++ b/nixos/modules/services/desktops/deepin/deepin-menu.nix
@@ -0,0 +1,29 @@
+# deepin-menu
+
+{ config, pkgs, lib, ... }:
+
+{
+
+ ###### interface
+
+ options = {
+
+ services.deepin.deepin-menu = {
+
+ enable = lib.mkEnableOption
+ "DBus service for unified menus in Deepin Desktop Environment";
+
+ };
+
+ };
+
+
+ ###### implementation
+
+ config = lib.mkIf config.services.deepin.deepin-menu.enable {
+
+ services.dbus.packages = [ pkgs.deepin.deepin-menu ];
+
+ };
+
+}
diff --git a/nixos/modules/services/desktops/flatpak.xml b/nixos/modules/services/desktops/flatpak.xml
index d9c8b711c450b8e16e604f2f77bf02ed3c4315f3..8045d5fa14f8b8a6de26ba757ba57b79c67a44b4 100644
--- a/nixos/modules/services/desktops/flatpak.xml
+++ b/nixos/modules/services/desktops/flatpak.xml
@@ -3,51 +3,54 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="module-services-flatpak">
-
-Flatpak
-
-Source:modules/services/desktop/flatpak.nix
-
-Upstream documentation:
-
-Flatpak is a system for building, distributing, and running sandboxed desktop applications on Linux.
-
-
- To enable Flatpak, add the following to your configuration.nix:
-
-
+ Flatpak
+
+ Source:
+ modules/services/desktop/flatpak.nix
+
+
+ Upstream documentation:
+
+
+
+ Flatpak is a system for building, distributing, and running sandboxed desktop
+ applications on Linux.
+
+
+ To enable Flatpak, add the following to your
+ configuration.nix:
+ = true;
-
-
-
- For the sandboxed apps to work correctly, desktop integration portals need to be installed. If you run GNOME, this will be handled automatically for you; in other cases, you will need to add something like the following to your configuration.nix:
-
-
+
+
+ For the sandboxed apps to work correctly, desktop integration portals need to
+ be installed. If you run GNOME, this will be handled automatically for you;
+ in other cases, you will need to add something like the following to your
+ configuration.nix:
+ = [ pkgs.xdg-desktop-portal-gtk ];
-
-
-
- Then, you will need to add a repository, for example, Flathub, either using the following commands:
-
-
+
+
+ Then, you will need to add a repository, for example,
+ Flathub,
+ either using the following commands:
+
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak update
-
- or by opening the repository file in GNOME Software.
-
-
-
+ or by opening the
+ repository
+ file in GNOME Software.
+
+
Finally, you can search and install programs:
-
-
+
flatpak search bustle
flatpak install flathub org.freedesktop.Bustle
flatpak run org.freedesktop.Bustle
-
Again, GNOME Software offers graphical interface for these tasks.
-
+
diff --git a/nixos/modules/services/desktops/geoclue2.nix b/nixos/modules/services/desktops/geoclue2.nix
index dafb0af2075670bdfc1f6adc27a82942365f362d..840aa5294ed0d66925ba7a1078d01f4b51fd64c9 100644
--- a/nixos/modules/services/desktops/geoclue2.nix
+++ b/nixos/modules/services/desktops/geoclue2.nix
@@ -61,6 +61,8 @@ in
wantedBy = [ "default.target" ];
};
};
+
+ environment.etc."geoclue/geoclue.conf".source = "${package}/etc/geoclue/geoclue.conf";
};
}
diff --git a/nixos/modules/services/desktops/gnome3/evince.nix b/nixos/modules/services/desktops/gnome3/evince.nix
new file mode 100644
index 0000000000000000000000000000000000000000..5f040a16f0678d95c10529d33e975affe1c71c8c
--- /dev/null
+++ b/nixos/modules/services/desktops/gnome3/evince.nix
@@ -0,0 +1,35 @@
+# Evince.
+
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+{
+
+ ###### interface
+
+ options = {
+
+ services.gnome3.evince = {
+
+ enable = mkEnableOption
+ "systemd and dbus services for Evince, the GNOME document viewer";
+
+ };
+
+ };
+
+
+ ###### implementation
+
+ config = mkIf config.services.gnome3.evince.enable {
+
+ environment.systemPackages = [ pkgs.evince ];
+
+ services.dbus.packages = [ pkgs.evince ];
+
+ systemd.packages = [ pkgs.evince ];
+
+ };
+
+}
diff --git a/nixos/modules/services/desktops/gnome3/file-roller.nix b/nixos/modules/services/desktops/gnome3/file-roller.nix
new file mode 100644
index 0000000000000000000000000000000000000000..7fb558a98953f3e2acf42a96418612e0997da708
--- /dev/null
+++ b/nixos/modules/services/desktops/gnome3/file-roller.nix
@@ -0,0 +1,32 @@
+# File Roller.
+
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+{
+
+ ###### interface
+
+ options = {
+
+ services.gnome3.file-roller = {
+
+ enable = mkEnableOption "File Roller, an archive manager for GNOME";
+
+ };
+
+ };
+
+
+ ###### implementation
+
+ config = mkIf config.services.gnome3.file-roller.enable {
+
+ environment.systemPackages = [ pkgs.gnome3.file-roller ];
+
+ services.dbus.packages = [ pkgs.gnome3.file-roller ];
+
+ };
+
+}
diff --git a/nixos/modules/services/desktops/gnome3/glib-networking.nix b/nixos/modules/services/desktops/gnome3/glib-networking.nix
new file mode 100644
index 0000000000000000000000000000000000000000..186668d7d38503152cbf5482e845b03cf675242c
--- /dev/null
+++ b/nixos/modules/services/desktops/gnome3/glib-networking.nix
@@ -0,0 +1,33 @@
+# GLib Networking
+
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+{
+
+ ###### interface
+
+ options = {
+
+ services.gnome3.glib-networking = {
+
+ enable = mkEnableOption "network extensions for GLib";
+
+ };
+
+ };
+
+ ###### implementation
+
+ config = mkIf config.services.gnome3.glib-networking.enable {
+
+ services.dbus.packages = [ pkgs.gnome3.glib-networking ];
+
+ systemd.packages = [ pkgs.gnome3.glib-networking ];
+
+ environment.variables.GIO_EXTRA_MODULES = [ "${pkgs.gnome3.glib-networking.out}/lib/gio/modules" ];
+
+ };
+
+}
diff --git a/nixos/modules/services/desktops/gnome3/gnome-keyring.nix b/nixos/modules/services/desktops/gnome3/gnome-keyring.nix
index aa1165ab3bba63b7987ef7c1f130f7a3a28414b0..db60445ef7731dfba3f25037954386da2f68148d 100644
--- a/nixos/modules/services/desktops/gnome3/gnome-keyring.nix
+++ b/nixos/modules/services/desktops/gnome3/gnome-keyring.nix
@@ -33,7 +33,14 @@ with lib;
environment.systemPackages = [ pkgs.gnome3.gnome-keyring ];
- services.dbus.packages = [ pkgs.gnome3.gnome-keyring pkgs.gnome3.gcr ];
+ services.dbus.packages = [ pkgs.gnome3.gnome-keyring pkgs.gcr ];
+
+ security.pam.services.login.enableGnomeKeyring = true;
+
+ security.wrappers.gnome-keyring-daemon = {
+ source = "${pkgs.gnome3.gnome-keyring}/bin/gnome-keyring-daemon";
+ capabilities = "cap_ipc_lock=ep";
+ };
};
diff --git a/nixos/modules/services/desktops/gnome3/gnome-remote-desktop.nix b/nixos/modules/services/desktops/gnome3/gnome-remote-desktop.nix
new file mode 100644
index 0000000000000000000000000000000000000000..021f4f9534b42439b99ca492de9114fc7b3da489
--- /dev/null
+++ b/nixos/modules/services/desktops/gnome3/gnome-remote-desktop.nix
@@ -0,0 +1,18 @@
+# Remote desktop daemon using Pipewire.
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+{
+ ###### interface
+ options = {
+ services.gnome3.gnome-remote-desktop = {
+ enable = mkEnableOption "Remote Desktop support using Pipewire";
+ };
+ };
+
+ ###### implementation
+ config = mkIf config.services.gnome3.gnome-remote-desktop.enable {
+ systemd.packages = [ pkgs.gnome3.gnome-remote-desktop ];
+ };
+}
diff --git a/nixos/modules/services/desktops/gnome3/gnome-settings-daemon.nix b/nixos/modules/services/desktops/gnome3/gnome-settings-daemon.nix
new file mode 100644
index 0000000000000000000000000000000000000000..7f7adcf26acf4af41d142103349269aa80baaab7
--- /dev/null
+++ b/nixos/modules/services/desktops/gnome3/gnome-settings-daemon.nix
@@ -0,0 +1,45 @@
+# GNOME Settings Daemon
+
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+ cfg = config.services.gnome3.gnome-settings-daemon;
+
+in
+
+{
+
+ ###### interface
+
+ options = {
+
+ services.gnome3.gnome-settings-daemon = {
+
+ enable = mkEnableOption "GNOME Settings Daemon";
+
+ # There are many forks of gnome-settings-daemon
+ package = mkOption {
+ type = types.package;
+ default = pkgs.gnome3.gnome-settings-daemon;
+ description = "Which gnome-settings-daemon package to use.";
+ };
+
+ };
+
+ };
+
+
+ ###### implementation
+
+ config = mkIf cfg.enable {
+
+ environment.systemPackages = [ cfg.package ];
+
+ services.udev.packages = [ cfg.package ];
+
+ };
+
+}
diff --git a/nixos/modules/services/desktops/gnome3/rygel.nix b/nixos/modules/services/desktops/gnome3/rygel.nix
new file mode 100644
index 0000000000000000000000000000000000000000..55d5e703aa19d9b1ec362d99158b9ee9c323c032
--- /dev/null
+++ b/nixos/modules/services/desktops/gnome3/rygel.nix
@@ -0,0 +1,30 @@
+# rygel service.
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+{
+ ###### interface
+ options = {
+ services.gnome3.rygel = {
+ enable = mkOption {
+ default = false;
+ description = ''
+ Whether to enable Rygel UPnP Mediaserver.
+
+ You will need to also allow UPnP connections in firewall, see the following comment.
+ '';
+ type = types.bool;
+ };
+ };
+ };
+
+ ###### implementation
+ config = mkIf config.services.gnome3.rygel.enable {
+ environment.systemPackages = [ pkgs.gnome3.rygel ];
+
+ services.dbus.packages = [ pkgs.gnome3.rygel ];
+
+ systemd.packages = [ pkgs.gnome3.rygel ];
+ };
+}
diff --git a/nixos/modules/services/desktops/gnome3/seahorse.nix b/nixos/modules/services/desktops/gnome3/seahorse.nix
index e9ad738269e434a89c91782585c3415129c8502d..9631157934f973ee4c00a824dd002684940d59b7 100644
--- a/nixos/modules/services/desktops/gnome3/seahorse.nix
+++ b/nixos/modules/services/desktops/gnome3/seahorse.nix
@@ -29,7 +29,7 @@ with lib;
config = mkIf config.services.gnome3.seahorse.enable {
- environment.systemPackages = [ pkgs.gnome3.seahorse ];
+ environment.systemPackages = [ pkgs.gnome3.seahorse pkgs.gnome3.dconf ];
services.dbus.packages = [ pkgs.gnome3.seahorse ];
diff --git a/nixos/modules/services/desktops/gsignond.nix b/nixos/modules/services/desktops/gsignond.nix
new file mode 100644
index 0000000000000000000000000000000000000000..5ab9add9f32d5dc36c3726baee75505f02d9d047
--- /dev/null
+++ b/nixos/modules/services/desktops/gsignond.nix
@@ -0,0 +1,45 @@
+# Accounts-SSO gSignOn daemon
+
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ package = pkgs.gsignond.override { plugins = config.services.gsignond.plugins; };
+in
+{
+
+ meta.maintainers = pkgs.pantheon.maintainers;
+
+ ###### interface
+
+ options = {
+
+ services.gsignond = {
+
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to enable gSignOn daemon, a DBus service
+ which performs user authentication on behalf of its clients.
+ '';
+ };
+
+ plugins = mkOption {
+ type = types.listOf types.package;
+ default = [];
+ description = ''
+ What plugins to use with the gSignOn daemon.
+ '';
+ };
+ };
+ };
+
+ ###### implementation
+ config = mkIf config.services.gsignond.enable {
+ environment.etc."gsignond.conf".source = "${package}/etc/gsignond.conf";
+ services.dbus.packages = [ package ];
+ };
+
+}
diff --git a/nixos/modules/services/desktops/pantheon/contractor.nix b/nixos/modules/services/desktops/pantheon/contractor.nix
new file mode 100644
index 0000000000000000000000000000000000000000..2638a21df73363e4815585584bbbe08787eaeb7a
--- /dev/null
+++ b/nixos/modules/services/desktops/pantheon/contractor.nix
@@ -0,0 +1,41 @@
+# Contractor
+
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+{
+
+ meta.maintainers = pkgs.pantheon.maintainers;
+
+ ###### interface
+
+ options = {
+
+ services.pantheon.contractor = {
+
+ enable = mkEnableOption "contractor, a desktop-wide extension service used by pantheon";
+
+ };
+
+ };
+
+
+ ###### implementation
+
+ config = mkIf config.services.pantheon.contractor.enable {
+
+ environment.systemPackages = with pkgs.pantheon; [
+ contractor
+ extra-elementary-contracts
+ ];
+
+ services.dbus.packages = [ pkgs.pantheon.contractor ];
+
+ environment.pathsToLink = [
+ "/share/contractor"
+ ];
+
+ };
+
+}
diff --git a/nixos/modules/services/desktops/pantheon/files.nix b/nixos/modules/services/desktops/pantheon/files.nix
new file mode 100644
index 0000000000000000000000000000000000000000..577aad6c29872918246746b84595fad8c1a15a34
--- /dev/null
+++ b/nixos/modules/services/desktops/pantheon/files.nix
@@ -0,0 +1,38 @@
+# pantheon files daemon.
+
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+{
+
+ meta.maintainers = pkgs.pantheon.maintainers;
+
+ ###### interface
+
+ options = {
+
+ services.pantheon.files = {
+
+ enable = mkEnableOption "pantheon files daemon";
+
+ };
+
+ };
+
+
+ ###### implementation
+
+ config = mkIf config.services.pantheon.files.enable {
+
+ environment.systemPackages = [
+ pkgs.pantheon.elementary-files
+ ];
+
+ services.dbus.packages = [
+ pkgs.pantheon.elementary-files
+ ];
+
+ };
+
+}
diff --git a/nixos/modules/services/desktops/profile-sync-daemon.nix b/nixos/modules/services/desktops/profile-sync-daemon.nix
index e3f74df3e573e4e0486f20d7733acffca3f25061..e4e47cfbd43838845e8c949fc30008e47238e416 100644
--- a/nixos/modules/services/desktops/profile-sync-daemon.nix
+++ b/nixos/modules/services/desktops/profile-sync-daemon.nix
@@ -4,22 +4,7 @@ with lib;
let
cfg = config.services.psd;
-
- configFile = ''
- ${optionalString (cfg.users != [ ]) ''
- USERS="${concatStringsSep " " cfg.users}"
- ''}
-
- ${optionalString (cfg.browsers != [ ]) ''
- BROWSERS="${concatStringsSep " " cfg.browsers}"
- ''}
-
- ${optionalString (cfg.volatile != "") "VOLATILE=${cfg.volatile}"}
- ${optionalString (cfg.daemonFile != "") "DAEMON_FILE=${cfg.daemonFile}"}
- '';
-
in {
-
options.services.psd = with types; {
enable = mkOption {
type = bool;
@@ -28,32 +13,6 @@ in {
Whether to enable the Profile Sync daemon.
'';
};
-
- users = mkOption {
- type = listOf str;
- default = [ ];
- example = [ "demo" ];
- description = ''
- A list of users whose browser profiles should be sync'd to tmpfs.
- '';
- };
-
- browsers = mkOption {
- type = listOf str;
- default = [ ];
- example = [ "chromium" "firefox" ];
- description = ''
- A list of browsers to sync. Available choices are:
-
- chromium chromium-dev conkeror.mozdev.org epiphany firefox
- firefox-trunk google-chrome google-chrome-beta google-chrome-unstable
- heftig-aurora icecat luakit midori opera opera-developer opera-beta
- qupzilla palemoon rekonq seamonkey
-
- An empty list will enable all browsers.
- '';
- };
-
resyncTimer = mkOption {
type = str;
default = "1h";
@@ -66,80 +25,53 @@ in {
omitted.
'';
};
-
- volatile = mkOption {
- type = str;
- default = "/run/psd-profiles";
- description = ''
- The directory where browser profiles should reside(this should be
- mounted as a tmpfs). Do not include a trailing backslash.
- '';
- };
-
- daemonFile = mkOption {
- type = str;
- default = "/run/psd";
- description = ''
- Where the pid and backup configuration files will be stored.
- '';
- };
};
config = mkIf cfg.enable {
- assertions = [
- { assertion = cfg.users != [];
- message = "services.psd.users must contain at least one user";
- }
- ];
-
systemd = {
- services = {
- psd = {
- description = "Profile Sync daemon";
- wants = [ "psd-resync.service" "local-fs.target" ];
- wantedBy = [ "multi-user.target" ];
- preStart = "mkdir -p ${cfg.volatile}";
-
- path = with pkgs; [ glibc rsync gawk ];
-
- unitConfig = {
- RequiresMountsFor = [ "/home/" ];
+ user = {
+ services = {
+ psd = {
+ enable = true;
+ description = "Profile Sync daemon";
+ wants = [ "psd-resync.service" "local-fs.target" ];
+ wantedBy = [ "default.target" ];
+ path = with pkgs; [ rsync kmod gawk nettools utillinux profile-sync-daemon ];
+ unitConfig = {
+ RequiresMountsFor = [ "/home/" ];
+ };
+ serviceConfig = {
+ Type = "oneshot";
+ RemainAfterExit = "yes";
+ ExecStart = "${pkgs.profile-sync-daemon}/bin/profile-sync-daemon sync";
+ ExecStop = "${pkgs.profile-sync-daemon}/bin/profile-sync-daemon unsync";
+ };
};
- serviceConfig = {
- Type = "oneshot";
- RemainAfterExit = "yes";
- ExecStart = "${pkgs.profile-sync-daemon}/bin/profile-sync-daemon sync";
- ExecStop = "${pkgs.profile-sync-daemon}/bin/profile-sync-daemon unsync";
+ psd-resync = {
+ enable = true;
+ description = "Timed profile resync";
+ after = [ "psd.service" ];
+ wants = [ "psd-resync.timer" ];
+ partOf = [ "psd.service" ];
+ wantedBy = [ "default.target" ];
+ path = with pkgs; [ rsync kmod gawk nettools utillinux profile-sync-daemon ];
+ serviceConfig = {
+ Type = "oneshot";
+ ExecStart = "${pkgs.profile-sync-daemon}/bin/profile-sync-daemon resync";
+ };
};
};
- psd-resync = {
- description = "Timed profile resync";
- after = [ "psd.service" ];
- wants = [ "psd-resync.timer" ];
- partOf = [ "psd.service" ];
-
- path = with pkgs; [ glibc rsync gawk ];
+ timers.psd-resync = {
+ description = "Timer for profile sync daemon - ${cfg.resyncTimer}";
+ partOf = [ "psd-resync.service" "psd.service" ];
- serviceConfig = {
- Type = "oneshot";
- ExecStart = "${pkgs.profile-sync-daemon}/bin/profile-sync-daemon resync";
+ timerConfig = {
+ OnUnitActiveSec = "${cfg.resyncTimer}";
};
};
};
-
- timers.psd-resync = {
- description = "Timer for profile sync daemon - ${cfg.resyncTimer}";
- partOf = [ "psd-resync.service" "psd.service" ];
-
- timerConfig = {
- OnUnitActiveSec = "${cfg.resyncTimer}";
- };
- };
};
-
- environment.etc."psd.conf".text = configFile;
-
};
}
diff --git a/nixos/modules/services/desktops/tumbler.nix b/nixos/modules/services/desktops/tumbler.nix
new file mode 100644
index 0000000000000000000000000000000000000000..ccbb6d1434d961b5cdc1cabd4d757c06de1bb5a6
--- /dev/null
+++ b/nixos/modules/services/desktops/tumbler.nix
@@ -0,0 +1,50 @@
+# Tumbler
+
+{ config, pkgs, lib, ... }:
+
+with lib;
+
+let
+
+ cfg = config.services.tumbler;
+ tumbler = cfg.package;
+
+in
+
+{
+
+ ###### interface
+
+ options = {
+
+ services.tumbler = {
+
+ enable = mkEnableOption "Tumbler, A D-Bus thumbnailer service";
+
+ package = mkOption {
+ type = types.package;
+ default = pkgs.xfce4-13.tumbler;
+ description = "Which tumbler package to use";
+ example = pkgs.xfce4-12.tumbler;
+ };
+
+ };
+
+ };
+
+
+ ###### implementation
+
+ config = mkIf cfg.enable {
+
+ environment.systemPackages = [
+ tumbler
+ ];
+
+ services.dbus.packages = [
+ tumbler
+ ];
+
+ };
+
+}
diff --git a/nixos/modules/services/development/jupyter/default.nix b/nixos/modules/services/development/jupyter/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..f20860af6e12874b6462bc0e2c7a5e71cbcb8e58
--- /dev/null
+++ b/nixos/modules/services/development/jupyter/default.nix
@@ -0,0 +1,185 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+ cfg = config.services.jupyter;
+
+ # NOTE: We don't use top-level jupyter because we don't
+ # want to pass in JUPYTER_PATH but use .environment instead,
+ # saving a rebuild.
+ package = pkgs.python3.pkgs.notebook;
+
+ kernels = (pkgs.jupyter-kernel.create {
+ definitions = if cfg.kernels != null
+ then cfg.kernels
+ else pkgs.jupyter-kernel.default;
+ });
+
+ notebookConfig = pkgs.writeText "jupyter_config.py" ''
+ ${cfg.notebookConfig}
+
+ c.NotebookApp.password = ${cfg.password}
+ '';
+
+in {
+ meta.maintainers = with maintainers; [ aborsu ];
+
+ options.services.jupyter = {
+ enable = mkEnableOption "Jupyter development server";
+
+ ip = mkOption {
+ type = types.str;
+ default = "localhost";
+ description = ''
+ IP address Jupyter will be listening on.
+ '';
+ };
+
+ port = mkOption {
+ type = types.int;
+ default = 8888;
+ description = ''
+ Port number Jupyter will be listening on.
+ '';
+ };
+
+ notebookDir = mkOption {
+ type = types.str;
+ default = "~/";
+ description = ''
+ Root directory for notebooks.
+ '';
+ };
+
+ user = mkOption {
+ type = types.str;
+ default = "jupyter";
+ description = ''
+ Name of the user used to run the jupyter service.
+ For security reason, jupyter should really not be run as root.
+ If not set (jupyter), the service will create a jupyter user with appropriate settings.
+ '';
+ example = "aborsu";
+ };
+
+ group = mkOption {
+ type = types.str;
+ default = "jupyter";
+ description = ''
+ Name of the group used to run the jupyter service.
+ Use this if you want to create a group of users that are able to view the notebook directory's content.
+ '';
+ example = "users";
+ };
+
+ password = mkOption {
+ type = types.str;
+ description = ''
+ Password to use with notebook.
+ Can be generated using:
+ In [1]: from notebook.auth import passwd
+ In [2]: passwd('test')
+ Out[2]: 'sha1:1b961dc713fb:88483270a63e57d18d43cf337e629539de1436ba'
+ NOTE: you need to keep the single quote inside the nix string.
+ Or you can use a python oneliner:
+ "open('/path/secret_file', 'r', encoding='utf8').read().strip()"
+ It will be interpreted at the end of the notebookConfig.
+ '';
+ example = [
+ "'sha1:1b961dc713fb:88483270a63e57d18d43cf337e629539de1436ba'"
+ "open('/path/secret_file', 'r', encoding='utf8').read().strip()"
+ ];
+ };
+
+ notebookConfig = mkOption {
+ type = types.lines;
+ default = "";
+ description = ''
+ Raw jupyter config.
+ '';
+ };
+
+ kernels = mkOption {
+ type = types.nullOr (types.attrsOf(types.submodule (import ./kernel-options.nix {
+ inherit lib;
+ })));
+
+ default = null;
+ example = literalExample ''
+ {
+ python3 = let
+ env = (pkgs.python3.withPackages (pythonPackages: with pythonPackages; [
+ ipykernel
+ pandas
+ scikitlearn
+ ]));
+ in {
+ displayName = "Python 3 for machine learning";
+ argv = [
+ "$ {env.interpreter}"
+ "-m"
+ "ipykernel_launcher"
+ "-f"
+ "{connection_file}"
+ ];
+ language = "python";
+ logo32 = "$ {env.sitePackages}/ipykernel/resources/logo-32x32.png";
+ logo64 = "$ {env.sitePackages}/ipykernel/resources/logo-64x64.png";
+ };
+ }
+ '';
+ description = "Declarative kernel config
+
+ Kernels can be declared in any language that supports and has the required
+ dependencies to communicate with a jupyter server.
+ In python's case, it means that ipykernel package must always be included in
+ the list of packages of the targeted environment.
+ ";
+ };
+ };
+
+ config = mkMerge [
+ (mkIf cfg.enable {
+ systemd.services.jupyter = {
+ description = "Jupyter development server";
+
+ after = [ "network.target" ];
+ wantedBy = [ "multi-user.target" ];
+
+ # TODO: Patch notebook so we can explicitly pass in a shell
+ path = [ pkgs.bash ]; # needed for sh in cell magic to work
+
+ environment = {
+ JUPYTER_PATH = toString kernels;
+ };
+
+ serviceConfig = {
+ Restart = "always";
+ ExecStart = ''${package}/bin/jupyter-notebook \
+ --no-browser \
+ --ip=${cfg.ip} \
+ --port=${toString cfg.port} --port-retries 0 \
+ --notebook-dir=${cfg.notebookDir} \
+ --NotebookApp.config_file=${notebookConfig}
+ '';
+ User = cfg.user;
+ Group = cfg.group;
+ WorkingDirectory = "~";
+ };
+ };
+ })
+ (mkIf (cfg.enable && (cfg.group == "jupyter")) {
+ users.groups.jupyter = {};
+ })
+ (mkIf (cfg.enable && (cfg.user == "jupyter")) {
+ users.extraUsers.jupyter = {
+ extraGroups = [ cfg.group ];
+ home = "/var/lib/jupyter";
+ createHome = true;
+ useDefaultShell = true; # needed so that the user can start a terminal.
+ };
+ })
+ ];
+}
diff --git a/nixos/modules/services/development/jupyter/kernel-options.nix b/nixos/modules/services/development/jupyter/kernel-options.nix
new file mode 100644
index 0000000000000000000000000000000000000000..03547637449a2112f1da2f8196aa93ecbc377638
--- /dev/null
+++ b/nixos/modules/services/development/jupyter/kernel-options.nix
@@ -0,0 +1,60 @@
+# Options that can be used for creating a jupyter kernel.
+{lib }:
+
+with lib;
+
+{
+ options = {
+
+ displayName = mkOption {
+ type = types.str;
+ default = "";
+ example = [
+ "Python 3"
+ "Python 3 for Data Science"
+ ];
+ description = ''
+ Name that will be shown to the user.
+ '';
+ };
+
+ argv = mkOption {
+ type = types.listOf types.str;
+ example = [
+ "{customEnv.interpreter}"
+ "-m"
+ "ipykernel_launcher"
+ "-f"
+ "{connection_file}"
+ ];
+ description = ''
+ Command and arguments to start the kernel.
+ '';
+ };
+
+ language = mkOption {
+ type = types.str;
+ example = "python";
+ description = ''
+ Language of the environment. Typically the name of the binary.
+ '';
+ };
+
+ logo32 = mkOption {
+ type = types.nullOr types.path;
+ default = null;
+ example = "{env.sitePackages}/ipykernel/resources/logo-32x32.png";
+ description = ''
+ Path to 32x32 logo png.
+ '';
+ };
+ logo64 = mkOption {
+ type = types.nullOr types.path;
+ default = null;
+ example = "{env.sitePackages}/ipykernel/resources/logo-64x64.png";
+ description = ''
+ Path to 64x64 logo png.
+ '';
+ };
+ };
+}
diff --git a/nixos/modules/services/editors/emacs.xml b/nixos/modules/services/editors/emacs.xml
index dfab5ce4a79d39747e72de8d052e2cbae14a4985..1ac53c818a7f77086ea5a350d815fb08e38a361b 100644
--- a/nixos/modules/services/editors/emacs.xml
+++ b/nixos/modules/services/editors/emacs.xml
@@ -3,150 +3,148 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="module-services-emacs">
-
- Emacs
-
-
+
+ Emacs is an
+ extensible, customizable, self-documenting real-time display editor — and
+ more. At its core is an interpreter for Emacs Lisp, a dialect of the Lisp
+ programming language with extensions to support text editing.
+
+
+ Emacs runs within a graphical desktop environment using the X Window System,
+ but works equally well on a text terminal. Under
+ macOS, a "Mac port" edition is available, which
+ uses Apple's native GUI frameworks.
+
+
+ Nixpkgs provides a superior environment for
+ running Emacs. It's simple to create custom builds
+ by overriding the default packages. Chaotic collections of Emacs Lisp code
+ and extensions can be brought under control using declarative package
+ management. NixOS even provides a
+ systemd user service for automatically starting the Emacs
+ daemon.
+
+
+ Installing Emacs
- Emacs
- is an extensible, customizable, self-documenting real-time display
- editor — and more. At its core is an interpreter for Emacs Lisp, a
- dialect of the Lisp programming language with extensions to
- support text editing.
+ Emacs can be installed in the normal way for Nix (see
+ ). In addition, a NixOS
+ service can be enabled.
-
- Emacs runs within a graphical desktop environment using the X
- Window System, but works equally well on a text terminal. Under
- macOS, a "Mac port" edition is
- available, which uses Apple's native GUI frameworks.
-
+
+ The Different Releases of Emacs
+
+
+ Nixpkgs defines several basic Emacs packages.
+ The following are attributes belonging to the pkgs set:
+
+
+
+ emacs
+
+
+ emacs25
+
+
+
+ The latest stable version of Emacs 25 using the
+ GTK+ 2
+ widget toolkit.
+
+
+
+
+
+ emacs25-nox
+
+
+
+ Emacs 25 built without any dependency on X11 libraries.
+
+
+
+
+
+ emacsMacport
+
+
+ emacs25Macport
+
+
+
+ Emacs 25 with the "Mac port" patches, providing a more native look and
+ feel under macOS.
+
+
+
+
+
+
+
+ If those aren't suitable, then the following imitation Emacs editors are
+ also available in Nixpkgs:
+ Zile,
+ mg,
+ Yi.
+
+
-
- Nixpkgs provides a superior environment
- for running Emacs. It's simple to
- create custom builds by overriding the default packages. Chaotic
- collections of Emacs Lisp code and extensions can be brought under
- control using declarative package
- management. NixOS even provides a
- systemd user service for automatically
- starting the Emacs daemon.
-
+
+ Adding Packages to Emacs
-
- Installing Emacs
+
+ Emacs includes an entire ecosystem of functionality beyond text editing,
+ including a project planner, mail and news reader, debugger interface,
+ calendar, and more.
+
+
+ Most extensions are gotten with the Emacs packaging system
+ (package.el) from
+ Emacs Lisp Package Archive
+ (ELPA),
+ MELPA,
+ MELPA Stable, and
+ Org ELPA. Nixpkgs is
+ regularly updated to mirror all these archives.
+
+
+
+ Under NixOS, you can continue to use
+ package-list-packages and
+ package-install to install packages. You can also
+ declare the set of Emacs packages you need using the derivations from
+ Nixpkgs. The rest of this section discusses declarative installation of
+ Emacs packages through nixpkgs.
+
+
+
- Emacs can be installed in the normal way for Nix (see
- ).
- In addition, a NixOS service
- can be enabled.
+ This documentation describes the new Emacs packages framework in NixOS
+ 16.03 (emacsPackagesNg) which should not be confused
+ with the previous and deprecated framework
+ (emacs24Packages).
-
-
- The Different Releases of Emacs
-
-
- Nixpkgs defines several basic Emacs
- packages. The following are attributes belonging to the
- pkgs set:
-
-
-
- emacs
- emacs25
-
-
- The latest stable version of Emacs 25 using the GTK+ 2 widget
- toolkit.
-
-
-
-
- emacs25-nox
-
-
- Emacs 25 built without any dependency on X11
- libraries.
-
-
-
-
- emacsMacport
- emacs25Macport
-
-
- Emacs 25 with the "Mac port" patches, providing a more
- native look and feel under macOS.
-
-
-
-
-
-
-
- If those aren't suitable, then the following imitation Emacs
- editors are also available in Nixpkgs:
- Zile,
- mg,
- Yi.
-
-
-
-
- Adding Packages to Emacs
-
- Emacs includes an entire ecosystem of functionality beyond
- text editing, including a project planner, mail and news
- reader, debugger interface, calendar, and more.
-
-
-
- Most extensions are gotten with the Emacs packaging system
- (package.el) from Emacs Lisp Package Archive
- (ELPA),
- MELPA,
- MELPA Stable,
- and Org ELPA.
- Nixpkgs is regularly updated to mirror all these archives.
-
-
-
- Under NixOS, you can continue to use
- package-list-packages and
- package-install to install packages. You
- can also declare the set of Emacs packages you need using the
- derivations from Nixpkgs. The rest of this section discusses
- declarative installation of Emacs packages through nixpkgs.
-
-
-
-
- This documentation describes the new Emacs packages
- framework in NixOS 16.03
- (emacsPackagesNg) which should not be
- confused with the previous and deprecated framework
- (emacs24Packages).
-
-
-
-
- The first step to declare the list of packages you want in
- your Emacs installation is to create a dedicated
- derivation. This can be done in a dedicated
- emacs.nix file such as:
-
-
- Nix expression to build Emacs with packages (emacs.nix)
-
+
+
+
+ The first step to declare the list of packages you want in your Emacs
+ installation is to create a dedicated derivation. This can be done in a
+ dedicated emacs.nix file such as:
+
+ Nix expression to build Emacs with packages (emacs.nix)
+
/*
This is a nix expression to build Emacs and some Emacs packages I like
from source on any distribution where Nix is installed. This will install
@@ -181,119 +179,104 @@ in
pkgs.notmuch # From main packages set
])
-
-
-
-
-
- The first non-comment line in this file
- ({ pkgs ? ... })
- indicates that the whole file represents a function.
-
-
-
-
-
- The let expression below defines a
- myEmacs binding pointing to the current
- stable version of Emacs. This binding is here to separate the
- choice of the Emacs binary from the specification of the
- required packages.
-
-
-
-
-
- This generates an emacsWithPackages
- function. It takes a single argument: a function from a
- package set to a list of packages (the packages that will
- be available in Emacs).
-
-
-
-
-
- The rest of the file specifies the list of packages to
- install. In the example, two packages
- (magit and
- zerodark-theme) are taken from MELPA
- stable.
-
-
-
-
-
- Two packages (undo-tree and
- zoom-frm) are taken from MELPA.
-
-
-
-
- Three packages are taken from GNU ELPA.
-
-
-
-
- notmuch is taken from a nixpkgs derivation
- which contains an Emacs mode.
-
-
-
-
+
+
+
+
+ The first non-comment line in this file ({ pkgs ? ...
+ }) indicates that the whole file represents a function.
-
+
+
- The result of this configuration will be an
- emacs command which launches Emacs with all
- of your chosen packages in the load-path.
+ The let expression below defines a
+ myEmacs binding pointing to the current stable
+ version of Emacs. This binding is here to separate the choice of the
+ Emacs binary from the specification of the required packages.
-
+
+
- You can check that it works by executing this in a terminal:
-
+ This generates an emacsWithPackages function. It
+ takes a single argument: a function from a package set to a list of
+ packages (the packages that will be available in Emacs).
+
+
+
+
+ The rest of the file specifies the list of packages to install. In the
+ example, two packages (magit and
+ zerodark-theme) are taken from MELPA stable.
+
+
+
+
+ Two packages (undo-tree and
+ zoom-frm) are taken from MELPA.
+
+
+
+
+ Three packages are taken from GNU ELPA.
+
+
+
+
+ notmuch is taken from a nixpkgs derivation which
+ contains an Emacs mode.
+
+
+
+
+
+
+ The result of this configuration will be an emacs
+ command which launches Emacs with all of your chosen packages in the
+ load-path.
+
+
+
+ You can check that it works by executing this in a terminal:
$ nix-build emacs.nix
$ ./result/bin/emacs -q
+ and then typing M-x package-initialize. Check that you
+ can use all the packages you want in this Emacs instance. For example, try
+ switching to the zerodark theme through M-x load-theme <RET>
+ zerodark <RET> y.
+
- and then typing M-x package-initialize.
- Check that you can use all the packages you want in this
- Emacs instance. For example, try switching to the zerodark
- theme through
- M-x load-theme <RET> zerodark <RET> y.
-
-
-
-
- A few popular extensions worth checking out are: auctex,
- company, edit-server, flycheck, helm, iedit, magit,
- multiple-cursors, projectile, and yasnippet.
-
-
-
-
- The list of available packages in the various ELPA
- repositories can be seen with the following commands:
-
- Querying Emacs packages
-
+
+ A few popular extensions worth checking out are: auctex, company,
+ edit-server, flycheck, helm, iedit, magit, multiple-cursors, projectile,
+ and yasnippet.
+
+
+
+
+ The list of available packages in the various ELPA repositories can be seen
+ with the following commands:
+
+ Querying Emacs packages
+" -qaP -A emacsPackagesNg.elpaPackages
nix-env -f "" -qaP -A emacsPackagesNg.melpaPackages
nix-env -f "" -qaP -A emacsPackagesNg.melpaStablePackages
nix-env -f "" -qaP -A emacsPackagesNg.orgPackages
]]>
-
-
-
-
- If you are on NixOS, you can install this particular Emacs for
- all users by adding it to the list of system packages
- (see ). Simply
- modify your file configuration.nix to
- make it contain:
-
- Custom Emacs in configuration.nix
-
+
+
+
+ If you are on NixOS, you can install this particular Emacs for all users by
+ adding it to the list of system packages (see
+ ). Simply modify your file
+ configuration.nix to make it contain:
+
+ Custom Emacs in configuration.nix
+" -qaP -A emacsPackagesNg.orgPackages
];
}
]]>
-
-
+
+
-
- In this case, the next nixos-rebuild switch
- will take care of adding your emacs to the
- PATH environment variable
- (see ).
-
+
+ In this case, the next nixos-rebuild switch will take
+ care of adding your emacs to the PATH
+ environment variable (see ).
+
-
- If you are not on NixOS or want to install this particular
- Emacs only for yourself, you can do so by adding it to your
- ~/.config/nixpkgs/config.nix
- (see Nixpkgs manual):
-
- Custom Emacs in ~/.config/nixpkgs/config.nix
-
+ If you are not on NixOS or want to install this particular Emacs only for
+ yourself, you can do so by adding it to your
+ ~/.config/nixpkgs/config.nix (see
+ Nixpkgs
+ manual):
+
+ Custom Emacs in ~/.config/nixpkgs/config.nix
+
-
-
-
-
- In this case, the next
- nix-env -f '<nixpkgs>' -iA myemacs
- will take care of adding your emacs to the
- PATH environment variable.
-
-
-
-
- Advanced Emacs Configuration
+
+
-
- If you want, you can tweak the Emacs package itself from your
- emacs.nix. For example, if you want to
- have a GTK+3-based Emacs instead of the default GTK+2-based
- binary and remove the automatically generated
- emacs.desktop (useful is you only use
- emacsclient), you can change your file
- emacs.nix in this way:
-
+
+ In this case, the next nix-env -f '<nixpkgs>' -iA
+ myemacs will take care of adding your emacs to the
+ PATH environment variable.
+
+
-
- Custom Emacs build
-
+ Advanced Emacs Configuration
+
+
+ If you want, you can tweak the Emacs package itself from your
+ emacs.nix. For example, if you want to have a
+ GTK+3-based Emacs instead of the default GTK+2-based binary and remove the
+ automatically generated emacs.desktop (useful is you
+ only use emacsclient), you can change your file
+ emacs.nix in this way:
+
+
+
+ Custom Emacs build
+ {} }:
let
myEmacs = (pkgs.emacs.override {
@@ -370,161 +352,143 @@ let
});
in [...]
]]>
-
+
-
- After building this file as shown in ,
- you will get an GTK3-based Emacs binary pre-loaded with your
- favorite packages.
-
-
+
+ After building this file as shown in , you
+ will get an GTK3-based Emacs binary pre-loaded with your favorite packages.
+
-
-
+
+ Running Emacs as a Service
+
- NixOS provides an optional
- systemd service which launches
-
- Emacs daemon
-
- with the user's login session.
+ NixOS provides an optional
+ systemd service which launches
+
+ Emacs daemon with the user's login session.
- Source:
- modules/services/editors/emacs.nix
+ Source:
+ modules/services/editors/emacs.nix
-
- Enabling the Service
-
-
- To install and enable the systemd
- user service for Emacs daemon, add the following to your
- configuration.nix:
+
+ Enabling the Service
+
+ To install and enable the systemd user service for Emacs
+ daemon, add the following to your configuration.nix:
= true;
= import /home/cassou/.emacs.d { pkgs = pkgs; };
-
-
-
- The services.emacs.package option allows a
- custom derivation to be used, for example, one created by
- emacsWithPackages.
-
-
-
- Ensure that the Emacs server is enabled for your user's Emacs
- configuration, either by customizing the
- server-mode variable, or by adding
- (server-start) to
- ~/.emacs.d/init.el.
-
-
-
- To start the daemon, execute the following:
-
+
+
+
+ The services.emacs.package option allows a custom
+ derivation to be used, for example, one created by
+ emacsWithPackages.
+
+
+
+ Ensure that the Emacs server is enabled for your user's Emacs
+ configuration, either by customizing the server-mode
+ variable, or by adding (server-start) to
+ ~/.emacs.d/init.el.
+
+
+
+ To start the daemon, execute the following:
$ nixos-rebuild switch # to activate the new configuration.nix
$ systemctl --user daemon-reload # to force systemd reload
$ systemctl --user start emacs.service # to start the Emacs daemon
-
- The server should now be ready to serve Emacs clients.
-
-
+ The server should now be ready to serve Emacs clients.
+
-
- Starting the client
-
- Ensure that the emacs server is enabled, either by customizing
- the server-mode variable, or by adding
- (server-start) to
- ~/.emacs.
-
+
+ Starting the client
-
- To connect to the emacs daemon, run one of the following:
-
+ Ensure that the emacs server is enabled, either by customizing the
+ server-mode variable, or by adding
+ (server-start) to ~/.emacs.
+
+
+
+ To connect to the emacs daemon, run one of the following:
+
-
+
-
- Configuring the EDITOR variable
-
-
-
- If is
- true, the EDITOR variable
- will be set to a wrapper script which launches
- emacsclient.
-
-
-
- Any setting of EDITOR in the shell config
- files will override
- services.emacs.defaultEditor.
- To make sure EDITOR refers to the Emacs
- wrapper script, remove any existing EDITOR
- assignment from .profile,
- .bashrc, .zshenv or
- any other shell config file.
-
-
-
- If you have formed certain bad habits when editing files,
- these can be corrected with a shell alias to the wrapper
- script:
- alias vi=$EDITOR
-
+
+ Configuring the EDITOR variable
+
+
+
+
+ If is
+ true, the EDITOR variable will be set
+ to a wrapper script which launches emacsclient.
+
+
+
+ Any setting of EDITOR in the shell config files will
+ override services.emacs.defaultEditor. To make sure
+ EDITOR refers to the Emacs wrapper script, remove any
+ existing EDITOR assignment from
+ .profile, .bashrc,
+ .zshenv or any other shell config file.
+
+
+
+ If you have formed certain bad habits when editing files, these can be
+ corrected with a shell alias to the wrapper script:
+alias vi=$EDITOR
+
-
- Per-User Enabling of the Service
-
-
- In general, systemd user services
- are globally enabled by symlinks in
- /etc/systemd/user. In the case where
- Emacs daemon is not wanted for all users, it is possible to
- install the service but not globally enable it:
+
+ Per-User Enabling of the Service
+
+ In general, systemd user services are globally enabled
+ by symlinks in /etc/systemd/user. In the case where
+ Emacs daemon is not wanted for all users, it is possible to install the
+ service but not globally enable it:
= false;
= true;
-
-
-
- To enable the systemd user service for just
- the currently logged in user, run:
-
- systemctl --user enable emacs
-
- This will add the symlink
- ~/.config/systemd/user/emacs.service.
-
+
+
+
+ To enable the systemd user service for just the
+ currently logged in user, run:
+systemctl --user enable emacs
+ This will add the symlink
+ ~/.config/systemd/user/emacs.service.
+
-
-
-
+
+ Configuring Emacs
- The Emacs init file should be changed to load the extension
- packages at startup:
-
-
- Package initialization in .emacs
-
+ Package initialization in .emacs
+
-
+
- After the declarative emacs package configuration has been
- tested, previously downloaded packages can be cleaned up by
- removing ~/.emacs.d/elpa (do make a backup
- first, in case you forgot a package).
+ After the declarative emacs package configuration has been tested,
+ previously downloaded packages can be cleaned up by removing
+ ~/.emacs.d/elpa (do make a backup first, in case you
+ forgot a package).
-
-
- A Major Mode for Nix Expressions
+
+ A Major Mode for Nix Expressions
-
- Of interest may be melpaPackages.nix-mode,
- which provides syntax highlighting for the Nix language. This is
- particularly convenient if you regularly edit Nix files.
-
+
+ Of interest may be melpaPackages.nix-mode, which
+ provides syntax highlighting for the Nix language. This is particularly
+ convenient if you regularly edit Nix files.
+
-
- Accessing man pages
-
- You can use woman to get completion of all
- available man pages. For example, type M-x woman
- <RET> nixos-rebuild <RET>.
-
+
+ Accessing man pages
+
+
+ You can use woman to get completion of all available
+ man pages. For example, type M-x woman <RET> nixos-rebuild
+ <RET>.
+
- Editing DocBook 5 XML Documents
-
- Emacs includes nXML,
- a major-mode for validating and editing XML documents.
- When editing DocBook 5.0 documents, such as
- this one,
- nXML needs to be configured with the relevant schema, which is
- not included.
-
+ Editing DocBook 5 XML Documents
-
- To install the DocBook 5.0 schemas, either add
- pkgs.docbook5 to
- (
+ Emacs includes
+ nXML,
+ a major-mode for validating and editing XML documents. When editing DocBook
+ 5.0 documents, such as this one,
+ nXML needs to be configured with the relevant schema, which is not
+ included.
+
+
+
+ To install the DocBook 5.0 schemas, either add
+ pkgs.docbook5 to
+
+ (NixOS), or run
- nix-env -i pkgs.docbook5
- (Nix).
-
-
-
- Then customize the variable rng-schema-locating-files to include ~/.emacs.d/schemas.xml and put the following text into that file:
-
- nXML Schema Configuration (~/.emacs.d/schemas.xml)
- nix-env -i pkgs.docbook5
+ (Nix).
+
+
+
+ Then customize the variable rng-schema-locating-files to
+ include ~/.emacs.d/schemas.xml and put the following
+ text into that file:
+
+ nXML Schema Configuration (~/.emacs.d/schemas.xml)
+
+\ No newline at end of file
++
+--- a/src/gpodder/config.py
++++ b/src/gpodder/config.py
+@@ -91,13 +91,6 @@
+ 'retries': 3, # number of retries when downloads time out
+ },
+
+- # Software updates from gpodder.org
+- 'software_update': {
+- 'check_on_startup': True, # check for updates on start
+- 'last_check': 0, # unix timestamp of last update check
+- 'interval': 5, # interval (in days) to check for updates
+- },
+-
+ 'ui': {
+ # Settings for the Command-Line Interface
+ 'cli': {
+--- a/src/gpodder/gtkui/main.py
++++ b/src/gpodder/gtkui/main.py
+@@ -224,7 +224,7 @@
+ util.idle_add(self.subscribe_to_url, self.options.subscribe)
+ elif not self.channels:
+ self.on_itemUpdate_activate()
+- elif self.config.software_update.check_on_startup:
++ elif False and self.config.software_update.check_on_startup:
+ # Check for software updates from gpodder.org
+ diff = time.time() - self.config.software_update.last_check
+ if diff > (60 * 60 * 24) * self.config.software_update.interval:
+@@ -3288,6 +3288,7 @@
+ If silent=False, a message will be shown even if no updates are
+ available (set silent=False when the check is manually triggered).
+ """
++ return
+ try:
+ up_to_date, version, released, days = util.get_update_info()
+ except Exception as e:
diff --git a/pkgs/applications/audio/gradio/default.nix b/pkgs/applications/audio/gradio/default.nix
index ed34c3118c68ddf0dc2823685be7d1216825ac99..3aea07235d8acec604c11ec8980afdd5c93e9bc0 100644
--- a/pkgs/applications/audio/gradio/default.nix
+++ b/pkgs/applications/audio/gradio/default.nix
@@ -16,7 +16,7 @@
, gst_plugins ? with gst_all_1; [ gst-plugins-good gst-plugins-ugly ]
}:
let
- version = "7.1";
+ version = "7.2";
in stdenv.mkDerivation rec {
name = "gradio-${version}";
@@ -25,7 +25,7 @@ in stdenv.mkDerivation rec {
owner = "haecker-felix";
repo = "gradio";
rev = "v${version}";
- sha256 = "0x0hmcjvpgvsm64ywcc71srlwqybfhadn5nkwycq0lh7r49d89kx";
+ sha256 = "0c4vlrfl0ljkiwarpwa8wcfmmihh6a5j4pi4yr0qshyl9xxvxiv3";
};
nativeBuildInputs = [
@@ -56,7 +56,7 @@ in stdenv.mkDerivation rec {
enableParallelBuilding = true;
postInstall = ''
- ${glib.dev}/bin/glib-compile-schemas $out/share/glib-2.0/schemas
+ glib-compile-schemas "$out"/share/glib-2.0/schemas
'';
patches = [ ./0001-Remove-post-install-script-that-hardcodes-paths.patch ];
diff --git a/pkgs/applications/audio/gtklick/default.nix b/pkgs/applications/audio/gtklick/default.nix
index 0434b00c7053b7ea41ccfd45031c933cf02e6ae2..b653ae5ca5881d3b8606de585677a9b29be466d1 100644
--- a/pkgs/applications/audio/gtklick/default.nix
+++ b/pkgs/applications/audio/gtklick/default.nix
@@ -14,7 +14,7 @@ pythonPackages.buildPythonApplication rec {
pyGtkGlade
];
- buildInputs = [ gettext ];
+ nativeBuildInputs = [ gettext ];
propagatedBuildInputs = [ klick ];
diff --git a/pkgs/applications/audio/gtkpod/default.nix b/pkgs/applications/audio/gtkpod/default.nix
index 6546fd7866ea96ee82f21d0e88dbc71ffb1be193..0727ab56f7de43ca076e27ddae525c9066f48372 100644
--- a/pkgs/applications/audio/gtkpod/default.nix
+++ b/pkgs/applications/audio/gtkpod/default.nix
@@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, wrapGAppsHook, intltool, libgpod, curl, flac,
- gnome3, gtk3, gettext, perl, perlXMLParser, flex, libid3tag,
+ gnome3, gtk3, gettext, perlPackages, flex, libid3tag, gdl,
libvorbis, gdk_pixbuf }:
stdenv.mkDerivation rec {
@@ -13,10 +13,10 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig wrapGAppsHook intltool ];
buildInputs = [
- curl gettext perl perlXMLParser
+ curl gettext
flex libgpod libid3tag flac libvorbis gtk3 gdk_pixbuf
- gnome3.gdl gnome3.defaultIconTheme gnome3.anjuta
- ];
+ gdl gnome3.adwaita-icon-theme gnome3.anjuta
+ ] ++ (with perlPackages; [ perl XMLParser ]);
patchPhase = ''
sed -i 's/which/type -P/' scripts/*.sh
diff --git a/pkgs/applications/audio/guitarix/default.nix b/pkgs/applications/audio/guitarix/default.nix
index 5c34293e7f9ff89bf8e645942ee735dd34260035..9df4308131eb3c7ba7c03fbad8966b95bd7a3c8f 100644
--- a/pkgs/applications/audio/guitarix/default.nix
+++ b/pkgs/applications/audio/guitarix/default.nix
@@ -2,7 +2,7 @@
, avahi, bluez, boost, eigen, fftw, glib, glib-networking
, glibmm, gsettings-desktop-schemas, gtkmm2, libjack2
, ladspaH, libav, librdf, libsndfile, lilv, lv2, serd, sord, sratom
-, wrapGAppsHook, zita-convolver, zita-resampler
+, wrapGAppsHook, zita-convolver, zita-resampler, curl, wafHook
, optimizationSupport ? false # Enable support for native CPU extensions
}:
@@ -12,23 +12,23 @@ in
stdenv.mkDerivation rec {
name = "guitarix-${version}";
- version = "0.37.1";
+ version = "0.38.1";
src = fetchurl {
url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.xz";
- sha256 = "064k0jzxqgx9gwf8za6jziansabzrwzjaim3qx1743ify5g3gaai";
+ sha256 = "0bw7xnrx062nwb1bfj9x660h7069ncmz77szcs8icpqxrvhs7z80";
};
- nativeBuildInputs = [ gettext intltool wrapGAppsHook pkgconfig python2 ];
+ nativeBuildInputs = [ gettext intltool wrapGAppsHook pkgconfig python2 wafHook ];
buildInputs = [
avahi bluez boost eigen fftw glib glibmm glib-networking.out
gsettings-desktop-schemas gtkmm2 libjack2 ladspaH libav librdf
libsndfile lilv lv2 serd sord sratom zita-convolver
- zita-resampler
+ zita-resampler curl
];
- configureFlags = [
+ wafConfigureFlags = [
"--shared-lib"
"--no-desktop-update"
"--enable-nls"
@@ -38,12 +38,6 @@ stdenv.mkDerivation rec {
"--convolver-ffmpeg"
] ++ optional optimizationSupport "--optimization";
- configurePhase = ''python2 waf configure --prefix=$out $configureFlags'';
-
- buildPhase = ''python2 waf build'';
-
- installPhase = ''python2 waf install'';
-
meta = with stdenv.lib; {
description = "A virtual guitar amplifier for Linux running with JACK";
longDescription = ''
diff --git a/pkgs/applications/audio/gxplugins-lv2/default.nix b/pkgs/applications/audio/gxplugins-lv2/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..62f11cbfb740bec890c26e66c3eff71e06b0da93
--- /dev/null
+++ b/pkgs/applications/audio/gxplugins-lv2/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub, xorg, xorgproto, cairo, lv2, pkgconfig }:
+
+stdenv.mkDerivation rec {
+ name = "${pname}-${version}";
+ pname = "GxPlugins.lv2";
+ version = "0.5";
+
+ src = fetchFromGitHub {
+ owner = "brummer10";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "16r5bj7w726d9327flg530fn0bli4crkxjss7i56yhb1bsi39mbv";
+ fetchSubmodules = true;
+ };
+
+ nativeBuildInputs = [ pkgconfig ];
+ buildInputs = [
+ xorg.libX11 xorgproto cairo lv2
+ ];
+
+ installFlags = [ "INSTALL_DIR=$(out)/lib/lv2" ];
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/brummer10/GxPlugins.lv2;
+ description = "A set of extra lv2 plugins from the guitarix project";
+ maintainers = [ maintainers.magnetophon ];
+ license = licenses.gpl3;
+ };
+}
diff --git a/pkgs/applications/audio/hybridreverb2/default.nix b/pkgs/applications/audio/hybridreverb2/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..19aac1bd1e9578e5236cd203e0d52eb67d5c9bb4
--- /dev/null
+++ b/pkgs/applications/audio/hybridreverb2/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchFromGitHub, fetchzip, cmake, pkgconfig, lv2, alsaLib, libjack2,
+ freetype, libX11, gtk3, pcre, libpthreadstubs, libXdmcp, libxkbcommon,
+ epoxy, at-spi2-core, dbus, curl, fftwFloat }:
+
+let
+ pname = "HybridReverb2";
+ version = "2.1.1";
+ owner = "jpcima";
+ DBversion = "1.0.0";
+in
+
+stdenv.mkDerivation rec {
+ name = "${pname}-${version}";
+
+ impulseDB = fetchzip {
+ url = "https://github.com/${owner}/${pname}-impulse-response-database/archive/v${DBversion}.zip";
+ sha256 = "1hlfxbbkahm1k2sk3c3n2mjaz7k80ky3r55xil8nfbvbv0qan89z";
+ };
+
+ src = fetchFromGitHub {
+ inherit owner;
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "15mba9qvlis0qrklr50wp3jdysvmk33m7pvclp0k1is9pirj97cb";
+ fetchSubmodules = true;
+ };
+
+ nativeBuildInputs = [ pkgconfig cmake ];
+ buildInputs = [ lv2 alsaLib libjack2 freetype libX11 gtk3 pcre
+ libpthreadstubs libXdmcp libxkbcommon epoxy at-spi2-core dbus curl fftwFloat ];
+
+ cmakeFlags = [
+ "-DHybridReverb2_AdvancedJackStandalone=ON"
+ "-DHybridReverb2_UseLocalDatabase=ON"
+ ];
+
+ postInstall = ''
+ mkdir -p $out/share/${pname}/
+ cp -r ${impulseDB}/* $out/share/${pname}/
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = http://www2.ika.ruhr-uni-bochum.de/HybridReverb2;
+ description = "Reverb effect using hybrid impulse convolution";
+ license = licenses.gpl2Plus;
+ maintainers = [ maintainers.magnetophon ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/audio/infamousPlugins/default.nix b/pkgs/applications/audio/infamousPlugins/default.nix
index cae40929f95a7527965233cf263849cdffda6a7d..2b8c041a074084aecaf6b39ae410645d3d90ace9 100644
--- a/pkgs/applications/audio/infamousPlugins/default.nix
+++ b/pkgs/applications/audio/infamousPlugins/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "infamousPlugins-${version}";
- version = "0.2.04";
+ version = "0.3.0";
src = fetchFromGitHub {
owner = "ssj71";
repo = "infamousPlugins";
rev = "v${version}";
- sha256 = "0hmqk80w4qxq09iag7b7srf2g0wigkyhzq0ywxvhz2iz0hq9k0dh";
+ sha256 = "1r72agk5nxf5k0mghcc2j90z43j5d9i7rqjmf49jfyqnd443isip";
};
nativeBuildInputs = [ pkgconfig cmake ];
diff --git a/pkgs/applications/audio/ingen/default.nix b/pkgs/applications/audio/ingen/default.nix
index d9109dd1c0e7155b66bfe4bace0ab791f718fa32..1e249b51fb76bb24550744b5e7b60dd9973f7e5c 100644
--- a/pkgs/applications/audio/ingen/default.nix
+++ b/pkgs/applications/audio/ingen/default.nix
@@ -1,6 +1,6 @@
{ stdenv, fetchgit, boost, ganv, glibmm, gtkmm2, libjack2, lilv
, lv2Unstable, makeWrapper, pkgconfig, python, raul, rdflib, serd, sord, sratom
-
+, wafHook
, suil
}:
@@ -15,27 +15,23 @@ stdenv.mkDerivation rec {
deepClone = true;
};
- nativeBuildInputs = [ pkgconfig ];
+ nativeBuildInputs = [ pkgconfig wafHook ];
buildInputs = [
boost ganv glibmm gtkmm2 libjack2 lilv lv2Unstable makeWrapper
python raul serd sord sratom suil
];
- configurePhase = ''
+ preConfigure = ''
sed -e "s@{PYTHONDIR}/'@out/'@" -i wscript
- ${python.interpreter} waf configure --prefix=$out
'';
propagatedBuildInputs = [ rdflib ];
- buildPhase = "${python.interpreter} waf";
-
- installPhase = ''
- ${python.interpreter} waf install
+ postInstall = ''
for program in ingenams ingenish
do
wrapProgram $out/bin/$program \
- --prefix PYTHONPATH : $out/lib/python${python.majorVersion}/site-packages:$PYTHONPATH
+ --prefix PYTHONPATH : $out/${python.sitePackages}:$PYTHONPATH
done
'';
diff --git a/pkgs/applications/audio/jaaa/default.nix b/pkgs/applications/audio/jaaa/default.nix
index 2410106cff035f4948aa70e5cffd3ac2c2659aef..33c74f2b04433c1afeb66ef7a57138148923550d 100644
--- a/pkgs/applications/audio/jaaa/default.nix
+++ b/pkgs/applications/audio/jaaa/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "jaaa-${version}";
- version = "0.8.4";
+ version = "0.9.2";
src = fetchurl {
url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
- sha256 = "0jyll4rkb6vja2widc340ww078rr24c6nmxbxdqvbxw409nccd01";
+ sha256 = "1czksxx2g8na07k7g57qlz0vvkkgi5bzajcx7vc7jhb94hwmmxbc";
};
buildInputs = [
diff --git a/pkgs/applications/audio/jack-rack/default.nix b/pkgs/applications/audio/jack-rack/default.nix
index d68e67d19dd4e2951ad9c21140ace698fc9f0043..26a717dbd6e4c22bd58b74071618951b60566958 100644
--- a/pkgs/applications/audio/jack-rack/default.nix
+++ b/pkgs/applications/audio/jack-rack/default.nix
@@ -7,6 +7,11 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libjack2 ladspaH gtk2 alsaLib libxml2 librdf ];
+ NIX_LDFLAGS = [
+ "-ldl"
+ "-lm"
+ "-lpthread"
+ ];
meta = {
description = ''An effects "rack" for the JACK low latency audio API'';
diff --git a/pkgs/applications/audio/jackmix/default.nix b/pkgs/applications/audio/jackmix/default.nix
index aa78527d787e00a1eb1f0d2d67726260790beb8c..83644dd5ea511191891dc0a2722b14457dfac599 100644
--- a/pkgs/applications/audio/jackmix/default.nix
+++ b/pkgs/applications/audio/jackmix/default.nix
@@ -17,12 +17,8 @@ stdenv.mkDerivation rec {
jack
];
- buildPhase = ''
- scons
- '';
installPhase = ''
- mkdir -p $out/bin
- cp jackmix/jackmix $out/bin
+ install -D jackmix/jackmix $out/bin/jackmix
'';
meta = {
diff --git a/pkgs/applications/audio/jalv/default.nix b/pkgs/applications/audio/jalv/default.nix
index f78110e8bbbf4a35ba1ec388fe234156213baa81..e2f0c7ea7af456e99eb7b11c8cea09a6fc4ba112 100644
--- a/pkgs/applications/audio/jalv/default.nix
+++ b/pkgs/applications/audio/jalv/default.nix
@@ -1,5 +1,5 @@
{ stdenv, fetchurl, gtk2, libjack2, lilv, lv2, pkgconfig, python
-, serd, sord , sratom, suil }:
+, serd, sord , sratom, suil, wafHook }:
stdenv.mkDerivation rec {
name = "jalv-${version}";
@@ -10,17 +10,11 @@ stdenv.mkDerivation rec {
sha256 = "1x2wpzzx2cgvz3dgdcgsj8dr0w3zsasy62mvl199bsdj5fbjaili";
};
- nativeBuildInputs = [ pkgconfig ];
+ nativeBuildInputs = [ pkgconfig wafHook ];
buildInputs = [
gtk2 libjack2 lilv lv2 python serd sord sratom suil
];
- configurePhase = "python waf configure --prefix=$out";
-
- buildPhase = "python waf";
-
- installPhase = "python waf install";
-
meta = with stdenv.lib; {
description = "A simple but fully featured LV2 host for Jack";
homepage = http://drobilla.net/software/jalv;
diff --git a/pkgs/applications/audio/jamin/default.nix b/pkgs/applications/audio/jamin/default.nix
index 77946fc41ccc3d4b77883e3924dd00d3bd42dbdc..3511a08682c3d551feacb6750f2dca2081c50779 100644
--- a/pkgs/applications/audio/jamin/default.nix
+++ b/pkgs/applications/audio/jamin/default.nix
@@ -1,5 +1,5 @@
{ stdenv, fetchurl, fftwFloat, gtk2, ladspaPlugins, libjack2, liblo, libxml2
-, makeWrapper, pkgconfig, perl, perlXMLParser
+, makeWrapper, pkgconfig, perlPackages
}:
stdenv.mkDerivation {
@@ -11,11 +11,11 @@ stdenv.mkDerivation {
};
nativeBuildInputs = [ pkgconfig ];
- buildInputs = [
- fftwFloat gtk2 ladspaPlugins libjack2 liblo libxml2 perl
- perlXMLParser makeWrapper
- ];
-
+ buildInputs = [ fftwFloat gtk2 ladspaPlugins libjack2 liblo libxml2 makeWrapper ]
+ ++ (with perlPackages; [ perl XMLParser ]);
+
+ NIX_LDFLAGS = [ "-ldl" ];
+
postInstall = ''
wrapProgram $out/bin/jamin --set LADSPA_PATH ${ladspaPlugins}/lib/ladspa
'';
diff --git a/pkgs/applications/audio/japa/default.nix b/pkgs/applications/audio/japa/default.nix
index cdf25c08378a6b8f39406107e854f3986cfb047b..18b7bcd1d568f1359ea50d9d95a2f5fa87576daa 100644
--- a/pkgs/applications/audio/japa/default.nix
+++ b/pkgs/applications/audio/japa/default.nix
@@ -1,12 +1,12 @@
{ stdenv, fetchurl, alsaLib, libjack2, fftwFloat, libclthreads, libclxclient, libX11, libXft, zita-alsa-pcmi, }:
stdenv.mkDerivation rec {
- version = "0.8.4";
+ version = "0.9.2";
name = "japa-${version}";
src = fetchurl {
url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
- sha256 = "1jhj7s4vqk5c4lchdall0kslvj5sh91902hhfjvs6r3a5nrhwcp0";
+ sha256 = "1zmi4wg23hwsypg3h6y3qb72cbrihqcs19qrbzgs5a67d13q4897";
};
buildInputs = [ alsaLib libjack2 fftwFloat libclthreads libclxclient libX11 libXft zita-alsa-pcmi ];
diff --git a/pkgs/applications/audio/kid3/default.nix b/pkgs/applications/audio/kid3/default.nix
index 31369bd1e6385677d3a13e0a70c94d04ff9826d7..b4406dab70eb0920e1c8c8e86248ddd398e4aff4 100644
--- a/pkgs/applications/audio/kid3/default.nix
+++ b/pkgs/applications/audio/kid3/default.nix
@@ -9,11 +9,11 @@
stdenv.mkDerivation rec {
name = "kid3-${version}";
- version = "3.6.1";
+ version = "3.7.1";
src = fetchurl {
url = "mirror://sourceforge/project/kid3/kid3/${version}/${name}.tar.gz";
- sha256 = "1bbnd6jgahdiqmsbw6c3x4h517m50db592fnq1w0v4k5aaav4i26";
+ sha256 = "0xkrsjrbr3z8cn8hjf623l28r3b755gr11i0clv8d8i3s10vhbd8";
};
buildInputs = with stdenv.lib;
diff --git a/pkgs/applications/audio/klick/default.nix b/pkgs/applications/audio/klick/default.nix
index 3a0da876acfce8e06b68256a1ba39de62cd5ba11..5e54609f8bf0d013f0904a52b35a938841bb9aac 100644
--- a/pkgs/applications/audio/klick/default.nix
+++ b/pkgs/applications/audio/klick/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, scons, pkgconfig
+{ stdenv, fetchurl, sconsPackages, pkgconfig
, libsamplerate, libsndfile, liblo, libjack2, boost }:
stdenv.mkDerivation rec {
@@ -10,17 +10,11 @@ stdenv.mkDerivation rec {
sha256 = "1289533c0849b1b66463bf27f7ce5f71736b655cfb7672ef884c7e6eb957ac42";
};
- nativeBuildInputs = [ pkgconfig ];
- buildInputs = [ scons libsamplerate libsndfile liblo libjack2 boost ];
+ nativeBuildInputs = [ sconsPackages.scons_3_0_1 pkgconfig ];
+ buildInputs = [ libsamplerate libsndfile liblo libjack2 boost ];
+ prefixKey = "PREFIX=";
NIX_CFLAGS_COMPILE = "-fpermissive";
- buildPhase = ''
- mkdir -p $out
- scons PREFIX=$out
- '';
-
- installPhase = "scons install";
-
meta = {
homepage = http://das.nasophon.de/klick/;
description = "Advanced command-line metronome for JACK";
@@ -28,4 +22,3 @@ stdenv.mkDerivation rec {
platforms = stdenv.lib.platforms.linux;
};
}
-
diff --git a/pkgs/applications/audio/lash/default.nix b/pkgs/applications/audio/lash/default.nix
index da61eee3b643c208303c8e0b9504d08fd2be3e43..7fb5a01e2c80b6ef8c2c6fbccbff12929bdab1c5 100644
--- a/pkgs/applications/audio/lash/default.nix
+++ b/pkgs/applications/audio/lash/default.nix
@@ -18,6 +18,11 @@ stdenv.mkDerivation rec {
buildInputs = [ alsaLib gtk2 libjack2 libxml2 makeWrapper
pkgconfig readline ];
propagatedBuildInputs = [ libuuid ];
+ NIX_LDFLAGS = [
+ "-lm"
+ "-lpthread"
+ "-luuid"
+ ];
postInstall = ''
for i in lash_control lash_panel
@@ -30,7 +35,7 @@ stdenv.mkDerivation rec {
longDescription = ''
Session management system for GNU/Linux audio applications.
'';
- homepage = http://www.nongnu.org/lash;
+ homepage = https://www.nongnu.org/lash;
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/lastfmsubmitd/default.nix b/pkgs/applications/audio/lastfmsubmitd/default.nix
index e22bca29bc974b847f8ffcbf6f98fc34a4fe2c36..3135a00334c7d941ea9d5fd575bd613845a34364 100644
--- a/pkgs/applications/audio/lastfmsubmitd/default.nix
+++ b/pkgs/applications/audio/lastfmsubmitd/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, pythonPackages }:
+{ lib, fetchurl, pythonPackages }:
pythonPackages.buildPythonApplication rec {
pname = "lastfmsubmitd";
@@ -15,6 +15,7 @@ pythonPackages.buildPythonApplication rec {
meta = {
homepage = https://www.red-bean.com/decklin/lastfmsubmitd/;
+ license = lib.licenses.mit;
description = "An last.fm audio scrobbler and daemon";
};
}
diff --git a/pkgs/applications/audio/lastwatch/default.nix b/pkgs/applications/audio/lastwatch/default.nix
deleted file mode 100644
index d2ef7434c4dbdee4447f23939d684964c32bc707..0000000000000000000000000000000000000000
--- a/pkgs/applications/audio/lastwatch/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ stdenv, fetchgit, python2Packages }:
-
-python2Packages.buildPythonApplication rec {
- pname = "lastwatch";
- version = "0.4.1";
-
- src = fetchgit {
- url = "git://github.com/aszlig/LastWatch.git";
- rev = "refs/tags/v${version}";
- sha256 = "0nlng3595j5jvnikk8i5hb915zak5zsmfn2306cc4gfcns9xzjwp";
- };
-
- propagatedBuildInputs = with python2Packages; [
- pyinotify
- pylast
- mutagen
- ];
-
- meta = {
- homepage = https://github.com/aszlig/LastWatch;
- description = "An inotify-based last.fm audio scrobbler";
- license = stdenv.lib.licenses.gpl2;
- platforms = stdenv.lib.platforms.linux;
- };
-}
diff --git a/pkgs/applications/audio/lingot/default.nix b/pkgs/applications/audio/lingot/default.nix
index 389db3d548d6465e0f1d00bb79d0a6051d3c4257..d2ec92e0654adf618a89bc66444935f041c63a7d 100644
--- a/pkgs/applications/audio/lingot/default.nix
+++ b/pkgs/applications/audio/lingot/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
meta = {
description = "Not a Guitar-Only tuner";
- homepage = http://www.nongnu.org/lingot/;
+ homepage = https://www.nongnu.org/lingot/;
license = stdenv.lib.licenses.gpl2Plus;
platforms = with stdenv.lib.platforms; linux;
maintainers = with stdenv.lib.maintainers; [viric];
diff --git a/pkgs/applications/audio/lmms/default.nix b/pkgs/applications/audio/lmms/default.nix
index 0ff864c0048bced200b1b94fdf33a6dc74726cf5..59e94e0bdad5d74b7df29d8e36766c847cd9c7d7 100644
--- a/pkgs/applications/audio/lmms/default.nix
+++ b/pkgs/applications/audio/lmms/default.nix
@@ -1,17 +1,17 @@
{ stdenv, fetchFromGitHub, cmake, pkgconfig, alsaLib ? null, fftwFloat, fltk13
-, fluidsynth ? null, lame ? null, libgig ? null, libjack2 ? null, libpulseaudio ? null
+, fluidsynth_1 ? null, lame ? null, libgig ? null, libjack2 ? null, libpulseaudio ? null
, libsamplerate, libsoundio ? null, libsndfile, libvorbis ? null, portaudio ? null
, qtbase, qtx11extras, qttools, SDL ? null }:
stdenv.mkDerivation rec {
name = "lmms-${version}";
- version = "1.2.0-rc6";
+ version = "1.2.0-rc7";
src = fetchFromGitHub {
owner = "LMMS";
repo = "lmms";
rev = "v${version}";
- sha256 = "1pqir5srfrknfd8nmbz565ymq18ffw8d8k9pbmzggaxvlcr12b25";
+ sha256 = "1hshzf2sbdfw37y9rz1ksgvn81kp2n23dp74lsaasc2n7wzjwdis";
fetchSubmodules = true;
};
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
alsaLib
fftwFloat
fltk13
- fluidsynth
+ fluidsynth_1
lame
libgig
libjack2
diff --git a/pkgs/applications/audio/lollypop/default.nix b/pkgs/applications/audio/lollypop/default.nix
index dc59ba6e01abd52f8a55a3a835492353eb0a711f..2a790514447dbfa0ebea39439dfaab2a196e3801 100644
--- a/pkgs/applications/audio/lollypop/default.nix
+++ b/pkgs/applications/audio/lollypop/default.nix
@@ -1,58 +1,90 @@
-{ stdenv, fetchgit, meson, ninja, pkgconfig, wrapGAppsHook
-, appstream-glib, desktop-file-utils, gobjectIntrospection
-, python36Packages, gnome3, glib, gst_all_1 }:
+{ lib
+, fetchgit
+, meson
+, ninja
+, pkgconfig
+, python3
+, gtk3
+, gst_all_1
+, libsecret
+, libsoup
+, appstream-glib
+, desktop-file-utils
+, totem-pl-parser
+, hicolor-icon-theme
+, gobject-introspection
+, wrapGAppsHook
+, lastFMSupport ? true
+, wikipediaSupport ? true
+, youtubeSupport ? true, youtube-dl
+}:
-stdenv.mkDerivation rec {
- version = "0.9.521";
- name = "lollypop-${version}";
+python3.pkgs.buildPythonApplication rec {
+ pname = "lollypop";
+ version = "1.0.7";
+
+ format = "other";
+ doCheck = false;
src = fetchgit {
url = "https://gitlab.gnome.org/World/lollypop";
rev = "refs/tags/${version}";
fetchSubmodules = true;
- sha256 = "1iwv0fj50h0xynv152anisbq29jfbmb9hpm60kaa9a9hdiypskcc";
+ sha256 = "0gdds4qssn32axsa5janqny5i4426azj5wyj6bzn026zs3z38svn";
};
- nativeBuildInputs = with python36Packages; [
+ nativeBuildInputs = [
appstream-glib
desktop-file-utils
- gobjectIntrospection
+ gobject-introspection
meson
ninja
pkgconfig
wrapGAppsHook
- wrapPython
];
- buildInputs = [ glib ] ++ (with gnome3; [
- gsettings-desktop-schemas gtk3 libsecret libsoup totem-pl-parser
- ]) ++ (with gst_all_1; [
- gst-libav gst-plugins-bad gst-plugins-base gst-plugins-good gst-plugins-ugly
+ buildInputs = with gst_all_1; [
+ gobject-introspection
+ gst-libav
+ gst-plugins-bad
+ gst-plugins-base
+ gst-plugins-good
+ gst-plugins-ugly
gstreamer
- ]);
+ gtk3
+ hicolor-icon-theme
+ libsoup
+ totem-pl-parser
+ ] ++ lib.optional lastFMSupport libsecret;
- pythonPath = with python36Packages; [
+ propagatedBuildInputs = with python3.pkgs; [
beautifulsoup4
gst-python
pillow
pycairo
pydbus
pygobject3
- pylast
- ];
-
- postFixup = "wrapPythonPrograms";
+ ]
+ ++ lib.optional lastFMSupport pylast
+ ++ lib.optional wikipediaSupport wikipedia
+ ++ lib.optional youtubeSupport youtube-dl
+ ;
postPatch = ''
- chmod +x ./meson_post_install.py
- patchShebangs ./meson_post_install.py
+ chmod +x meson_post_install.py
+ patchShebangs meson_post_install.py
+ '';
+
+ preFixup = ''
+ buildPythonPath "$out $propagatedBuildInputs"
+ patchPythonScript "$out/libexec/lollypop-sp"
'';
- meta = with stdenv.lib; {
+ meta = with lib; {
description = "A modern music player for GNOME";
- homepage = https://wiki.gnome.org/Apps/Lollypop;
- license = licenses.gpl3Plus;
+ homepage = https://wiki.gnome.org/Apps/Lollypop;
+ license = licenses.gpl3Plus;
maintainers = with maintainers; [ worldofpeace ];
- platforms = platforms.linux;
+ platforms = platforms.linux;
};
}
diff --git a/pkgs/applications/audio/lsp-plugins/default.nix b/pkgs/applications/audio/lsp-plugins/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..d798a2bed535839354d42a6637d92a3b311d707a
--- /dev/null
+++ b/pkgs/applications/audio/lsp-plugins/default.nix
@@ -0,0 +1,160 @@
+{ stdenv, fetchFromGitHub, pkgconfig, makeWrapper
+, libsndfile, jack2Full
+, libGLU, libGL, lv2, cairo
+, ladspaH, php, expat }:
+
+stdenv.mkDerivation rec {
+ pname = "lsp-plugins";
+ version = "1.1.5";
+ name = "${pname}-${version}";
+
+ src = fetchFromGitHub {
+ owner = "sadko4u";
+ repo = "${pname}";
+ rev = "${name}";
+ sha256 = "0xcxm47j7mz5vprjqqhi95gz62syp4y737h7cssxd3flqkgar7xr";
+ };
+
+ nativeBuildInputs = [ pkgconfig php expat ];
+ buildInputs = [ jack2Full libsndfile libGLU libGL lv2 cairo ladspaH makeWrapper ];
+
+ makeFlags = [
+ "BIN_PATH=$(out)/bin"
+ "LIB_PATH=$(out)/lib"
+ "DOC_PATH=$(out)/share/doc"
+ ];
+
+ NIX_CFLAGS_COMPILE = [ "-DLSP_NO_EXPERIMENTAL" ];
+
+ patchPhase = ''
+ runHook prePatch
+ substituteInPlace Makefile --replace "/usr/lib" "$out/lib"
+ substituteInPlace ./include/container/jack/main.h --replace "/usr/lib" "$out/lib"
+ substituteInPlace ./include/container/vst/main.h --replace "/usr/lib" "$out/lib"
+ # for https://github.com/sadko4u/lsp-plugins/issues/7#issuecomment-426561549 :
+ sed -i '/X11__NET_WM_WINDOW_TYPE_DOCK;/d' ./src/ui/ws/x11/X11Window.cpp
+ runHook postPatch
+ '';
+
+ doCheck = true;
+
+ checkPhase = ''
+ runHook preCheck
+ TEST_PATH=$(pwd)".build-test"
+ make OBJDIR=$TEST_PATH test
+ $TEST_PATH/lsp-plugins-test utest
+ runHook postCheck
+ '';
+
+ buildFlags = "release";
+
+ meta = with stdenv.lib;
+ { description = "Collection of open-source audio plugins";
+ longDescription = ''
+ Compatible with follwing formats:
+
+ - LADSPA - set of plugins for Linux Audio Developer's Simple Plugin API
+ - LV2 - set of plugins and UIs for Linux Audio Developer's Simple Plugin API (LADSPA) version 2
+ - LinuxVST - set of plugins and UIs for Steinberg's VST 2.4 format ported on GNU/Linux Platform
+ - JACK - Standalone versions for JACK Audio connection Kit with UI
+
+ Contains the following plugins:
+
+ - Limiter Mono - Begrenzer Mono
+ - Limiter Stereo - Begrenzer Stereo
+ - Dynamic Processor LeftRight - Dynamikprozessor LeftRight
+ - Dynamic Processor MidSide - Dynamikprozessor MidSide
+ - Dynamic Processor Mono - Dynamikprozessor Mono
+ - Dynamic Processor Stereo - Dynamikprozessor Stereo
+ - Expander LeftRight - Expander LeftRight
+ - Expander MidSide - Expander MidSide
+ - Expander Mono - Expander Mono
+ - Expander Stereo - Expander Stereo
+ - Gate LeftRight - Gate LeftRight
+ - Gate MidSide - Gate MidSide
+ - Gate Mono - Gate Mono
+ - Gate Stereo - Gate Stereo
+ - Graphic Equalizer x16 LeftRight - Grafischer Entzerrer x16 LeftRight
+ - Graphic Equalizer x16 MidSide - Grafischer Entzerrer x16 MidSide
+ - Graphic Equalizer x16 Mono - Grafischer Entzerrer x16 Mono
+ - Graphic Equalizer x16 Stereo - Grafischer Entzerrer x16 Stereo
+ - Graphic Equalizer x32 LeftRight - Grafischer Entzerrer x32 LeftRight
+ - Graphic Equalizer x32 MidSide - Grafischer Entzerrer x32 MidSide
+ - Graphic Equalizer x32 Mono - Grafischer Entzerrer x32 Mono
+ - Graphic Equalizer x32 Stereo - Grafischer Entzerrer x32 Stereo
+ - Impulse Responses Mono - Impulsantworten Mono
+ - Impulse Responses Stereo - Impulsantworten Stereo
+ - Impulse Reverb Mono - Impulsnachhall Mono
+ - Impulse Reverb Stereo - Impulsnachhall Stereo
+ - Sampler Mono - Klangerzeuger Mono
+ - Sampler Stereo - Klangerzeuger Stereo
+ - Compressor LeftRight - Kompressor LeftRight
+ - Compressor MidSide - Kompressor MidSide
+ - Compressor Mono - Kompressor Mono
+ - Compressor Stereo - Kompressor Stereo
+ - Latency Meter - Latenzmessgerät
+ - Multiband Compressor LeftRight x8 - Multi-band Kompressor LeftRight x8
+ - Multiband Compressor MidSide x8 - Multi-band Kompressor MidSide x8
+ - Multiband Compressor Mono x8 - Multi-band Kompressor Mono x8
+ - Multiband Compressor Stereo x8 - Multi-band Kompressor Stereo x8
+ - Oscillator Mono - Oszillator Mono
+ - Parametric Equalizer x16 LeftRight - Parametrischer Entzerrer x16 LeftRight
+ - Parametric Equalizer x16 MidSide - Parametrischer Entzerrer x16 MidSide
+ - Parametric Equalizer x16 Mono - Parametrischer Entzerrer x16 Mono
+ - Parametric Equalizer x16 Stereo - Parametrischer Entzerrer x16 Stereo
+ - Parametric Equalizer x32 LeftRight - Parametrischer Entzerrer x32 LeftRight
+ - Parametric Equalizer x32 MidSide - Parametrischer Entzerrer x32 MidSide
+ - Parametric Equalizer x32 Mono - Parametrischer Entzerrer x32 Mono
+ - Parametric Equalizer x32 Stereo - Parametrischer Entzerrer x32 Stereo
+ - Phase Detector - Phasendetektor
+ - Profiler Mono - Profiler Mono
+ - Multi-Sampler x12 DirectOut - Schlagzeug x12 Direktausgabe
+ - Multi-Sampler x12 Stereo - Schlagzeug x12 Stereo
+ - Multi-Sampler x24 DirectOut - Schlagzeug x24 Direktausgabe
+ - Multi-Sampler x24 Stereo - Schlagzeug x24 Stereo
+ - Multi-Sampler x48 DirectOut - Schlagzeug x48 Direktausgabe
+ - Multi-Sampler x48 Stereo - Schlagzeug x48 Stereo
+ - Sidechain Multiband Compressor LeftRight x8 - Sidechain Multi-band Kompressor LeftRight x8
+ - Sidechain Multiband Compressor MidSide x8 - Sidechain Multi-band Kompressor MidSide x8
+ - Sidechain Multiband Compressor Mono x8 - Sidechain Multi-band Kompressor Mono x8
+ - Sidechain Multiband Compressor Stereo x8 - Sidechain Multi-band Kompressor Stereo x8
+ - Sidechain Limiter Mono - Sidechain-Begrenzer Mono
+ - Sidechain Limiter Stereo - Sidechain-Begrenzer Stereo
+ - Sidechain Dynamic Processor LeftRight - Sidechain-Dynamikprozessor LeftRight
+ - Sidechain Dynamic Processor MidSide - Sidechain-Dynamikprozessor MidSide
+ - Sidechain Dynamic Processor Mono - Sidechain-Dynamikprozessor Mono
+ - Sidechain Dynamic Processor Stereo - Sidechain-Dynamikprozessor Stereo
+ - Sidechain Expander LeftRight - Sidechain-Expander LeftRight
+ - Sidechain Expander MidSide - Sidechain-Expander MidSide
+ - Sidechain Expander Mono - Sidechain-Expander Mono
+ - Sidechain Expander Stereo - Sidechain-Expander Stereo
+ - Sidechain Gate LeftRight - Sidechain-Gate LeftRight
+ - Sidechain Gate MidSide - Sidechain-Gate MidSide
+ - Sidechain Gate Mono - Sidechain-Gate Mono
+ - Sidechain Gate Stereo - Sidechain-Gate Stereo
+ - Sidechain Compressor LeftRight - Sidechain-Kompressor LeftRight
+ - Sidechain Compressor MidSide - Sidechain-Kompressor MidSide
+ - Sidechain Compressor Mono - Sidechain-Kompressor Mono
+ - Sidechain Compressor Stereo - Sidechain-Kompressor Stereo
+ - Slapback Delay Mono - Slapback-Delay Mono
+ - Slapback Delay Stereo - Slapback-Delay Stereo
+ - Spectrum Analyzer x1 - Spektrumanalysator x1
+ - Spectrum Analyzer x12 - Spektrumanalysator x12
+ - Spectrum Analyzer x16 - Spektrumanalysator x16
+ - Spectrum Analyzer x2 - Spektrumanalysator x2
+ - Spectrum Analyzer x4 - Spektrumanalysator x4
+ - Spectrum Analyzer x8 - Spektrumanalysator x8
+ - Trigger MIDI Mono - Triggersensor MIDI Mono
+ - Trigger MIDI Stereo - Triggersensor MIDI Stereo
+ - Trigger Mono - Triggersensor Mono
+ - Trigger Stereo - Triggersensor Stereo
+ - Delay Compensator Mono - Verzögerungsausgleicher Mono
+ - Delay Compensator Stereo - Verzögerungsausgleicher Stereo
+ - Delay Compensator x2 Stereo - Verzögerungsausgleicher x2 Stereo
+ '';
+ homepage = https://lsp-plug.in;
+ maintainers = with maintainers; [ magnetophon ];
+ license = licenses.gpl2;
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/audio/ltc-tools/default.nix b/pkgs/applications/audio/ltc-tools/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..81db133ff9ab026520fe798c857539c4c15c92d6
--- /dev/null
+++ b/pkgs/applications/audio/ltc-tools/default.nix
@@ -0,0 +1,25 @@
+{stdenv, fetchFromGitHub, pkgconfig, libltc, libsndfile, jack2}:
+
+stdenv.mkDerivation rec {
+ name = "ltc-tools-${version}";
+ version = "0.7.0";
+
+ src = fetchFromGitHub {
+ owner = "x42";
+ repo = "ltc-tools";
+ rev = "v${version}";
+ sha256 = "0vp25b970r1hv5ndzs4di63rgwnl31jfaj3jz5dka276kx34q4al";
+ };
+
+ buildInputs = [ pkgconfig libltc libsndfile jack2 ];
+
+ makeFlags = [ "PREFIX=$(out)" ];
+
+ meta = with stdenv.lib; {
+ homepage = "https://github.com/x42/ltc-tools";
+ description = "Tools to deal with linear-timecode (LTC)";
+ license = licenses.gpl2;
+ platforms = platforms.unix;
+ maintainers = with maintainers; [ tg-x ];
+ };
+}
diff --git a/pkgs/applications/audio/luppp/build-install.patch b/pkgs/applications/audio/luppp/build-install.patch
new file mode 100644
index 0000000000000000000000000000000000000000..4dae65438cb5f94f124e9bbf758d8f716b05ef7e
--- /dev/null
+++ b/pkgs/applications/audio/luppp/build-install.patch
@@ -0,0 +1,16 @@
+commit 4ec09e6f6e00e40622a5207ed24dc657da9a9090
+Author: Pavol Rusnak
+Date: Tue Dec 4 12:06:22 2018 +0100
+
+ build: add install: true to executable in meson.build
+
+diff --git a/meson.build b/meson.build
+index 050e1b1..9224ed5 100644
+--- a/meson.build
++++ b/meson.build
+@@ -39,4 +39,5 @@ endforeach
+
+ # compile the main project
+ executable('luppp', luppp_src + [version_hxx],
++ install: true,
+ dependencies: deps)
diff --git a/pkgs/applications/audio/luppp/default.nix b/pkgs/applications/audio/luppp/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..fdba836a6ae2ecfaa25a07bc773eda3c08fd81df
--- /dev/null
+++ b/pkgs/applications/audio/luppp/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchFromGitHub
+, meson
+, ninja
+, pkgconfig
+, jack2
+, cairo
+, liblo
+, libsndfile
+, libsamplerate
+, ntk
+}:
+
+stdenv.mkDerivation rec {
+ pname = "luppp";
+ version = "1.2.0";
+ patches = [ ./build-install.patch ];
+
+ src = fetchFromGitHub {
+ owner = "openAVproductions";
+ repo = "openAV-Luppp";
+ rev = "release-${version}";
+ sha256 = "194yq0lqc2psq9vyxmzif40ccawcvd9jndcn18mkz4f8h5w5rc1a";
+ };
+
+ nativeBuildInputs = [
+ meson ninja pkgconfig
+ ];
+
+ buildInputs = [
+ jack2 cairo liblo libsndfile libsamplerate ntk
+ ];
+
+ meta = with stdenv.lib; {
+ homepage = http://openavproductions.com/luppp/;
+ description = "A music creation tool, intended for live use";
+ license = licenses.gpl3Plus;
+ maintainers = with maintainers; [ prusnak ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/audio/mda-lv2/default.nix b/pkgs/applications/audio/mda-lv2/default.nix
index e27aab6e898b5fa2db1739a0c4f8a94bc40c15c0..26290e5bf8885a431d53f17ca44794ff9355adb2 100644
--- a/pkgs/applications/audio/mda-lv2/default.nix
+++ b/pkgs/applications/audio/mda-lv2/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fftwSinglePrec, lv2, pkgconfig, python }:
+{ stdenv, fetchurl, fftwSinglePrec, lv2, pkgconfig, python, wafHook }:
stdenv.mkDerivation rec {
name = "mda-lv2-${version}";
@@ -9,15 +9,9 @@ stdenv.mkDerivation rec {
sha256 = "0hh40c5d2m0k5gb3vw031l6lqn59dg804an3mkmhkc7qv4gc6xm4";
};
- nativeBuildInputs = [ pkgconfig ];
+ nativeBuildInputs = [ pkgconfig wafHook ];
buildInputs = [ fftwSinglePrec lv2 python ];
- configurePhase = "python waf configure --prefix=$out";
-
- buildPhase = "python waf";
-
- installPhase = "python waf install";
-
meta = with stdenv.lib; {
homepage = http://drobilla.net/software/mda-lv2/;
description = "An LV2 port of the MDA plugins by Paul Kellett";
diff --git a/pkgs/applications/audio/meters_lv2/default.nix b/pkgs/applications/audio/meters_lv2/default.nix
index 669ffbb2688a1b5ad20d3405cd198f7f90ad6627..a2368017cc1ed11974599b0c03f1b9523d89b9ee 100644
--- a/pkgs/applications/audio/meters_lv2/default.nix
+++ b/pkgs/applications/audio/meters_lv2/default.nix
@@ -1,24 +1,24 @@
{ stdenv, fetchurl, pkgconfig
-, lv2, libGLU_combined, gtk2, cairo, pango, fftw }:
+, lv2, libGLU_combined, gtk2, cairo, pango, fftwFloat, libjack2 }:
let
- version = "0.8.1";
+ version = "0.9.10";
name = "meters.lv2-${version}";
# robtk submodule is pegged to this version
- robtkVersion = "0.3.0";
+ robtkVersion = "0.6.2";
robtkName = "robtk-${robtkVersion}";
src = fetchurl {
name = "${name}.tar.gz";
url = "https://github.com/x42/meters.lv2/archive/v${version}.tar.gz";
- sha256 = "142dg0j34mv5b0agajj2x1n9kgsmkfh08n1cjzk0j8n4xk2wb6ri";
+ sha256 = "0yfyn7j8g50w671b1z7ph4ppjx8ddj5c6nx53syp5y5mfr1b94nx";
};
robtkSrc = fetchurl {
name = "${robtkName}.tar.gz";
url = "https://github.com/x42/robtk/archive/v${robtkVersion}.tar.gz";
- sha256 = "1ny89i2sgga56k7fxskp9y8sb7pfhp6wgw5mni842p19z6q7h8rq";
+ sha256 = "1v79xys1k2923wpivdjd44vand6c4agwvnrqi4c8kdv9r07b559v";
};
in
@@ -26,15 +26,13 @@ stdenv.mkDerivation {
inherit name;
nativeBuildInputs = [ pkgconfig ];
- buildInputs = [ lv2 libGLU_combined gtk2 cairo pango fftw ];
+ buildInputs = [ lv2 libGLU_combined gtk2 cairo pango fftwFloat libjack2 ];
srcs = [ src robtkSrc ];
sourceRoot = name;
postUnpack = "mv ${robtkName}/* ${name}/robtk"; # */
- postPatch = "sed -i 's/fftw3f/fftw3/' Makefile";
-
preConfigure = "makeFlagsArray=( PREFIX=$out )";
meter_VERSION = version;
diff --git a/pkgs/applications/audio/mhwaveedit/default.nix b/pkgs/applications/audio/mhwaveedit/default.nix
index 88b636679cbd133ecb226f36d3cb5cd384ba135c..db70e59218b37380ea98a51ae41ea2320cfa0a59 100644
--- a/pkgs/applications/audio/mhwaveedit/default.nix
+++ b/pkgs/applications/audio/mhwaveedit/default.nix
@@ -1,23 +1,24 @@
-{ stdenv, fetchurl, makeWrapper, SDL, alsaLib, autoreconfHook, gtk2, libjack2, ladspaH
+{ stdenv, fetchFromGitHub, makeWrapper, SDL, alsaLib, autoreconfHook, gtk2, libjack2, ladspaH
, ladspaPlugins, libsamplerate, libsndfile, pkgconfig, libpulseaudio, lame
, vorbis-tools }:
-stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
name = "mhwaveedit-${version}";
- version = "1.4.23";
+ version = "1.4.24";
- src = fetchurl {
- url = "https://github.com/magnush/mhwaveedit/archive/v${version}.tar.gz";
- sha256 = "1lvd54d8kpxwl4gihhznx1b5skhibz4vfxi9k2kwqg808jfgz37l";
+ src = fetchFromGitHub {
+ owner = "magnush";
+ repo = "mhwaveedit";
+ rev = "v${version}";
+ sha256 = "037pbq23kh8hsih994x2sv483imglwcrqrx6m8visq9c46fi0j1y";
};
- nativeBuildInputs = [ autoreconfHook ];
+ nativeBuildInputs = [ autoreconfHook makeWrapper pkgconfig ];
preAutoreconf = "(cd docgen && sh gendocs.sh)";
buildInputs = [
- SDL alsaLib gtk2 libjack2 ladspaH libsamplerate libsndfile
- pkgconfig libpulseaudio makeWrapper
+ SDL alsaLib gtk2 libjack2 ladspaH libsamplerate libsndfile libpulseaudio
];
configureFlags = [ "--with-default-ladspa-path=${ladspaPlugins}/lib/ladspa" ];
@@ -30,7 +31,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "Graphical program for editing, playing and recording sound files";
- homepage = https://gna.org/projects/mhwaveedit;
+ homepage = https://github.com/magnush/mhwaveedit;
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/mi2ly/default.nix b/pkgs/applications/audio/mi2ly/default.nix
index 4dfc7b13046ef1877cf4c59e7fcbd94c2f70e24b..58c1690a9bb0d3f58452001c72688b4148265dba 100644
--- a/pkgs/applications/audio/mi2ly/default.nix
+++ b/pkgs/applications/audio/mi2ly/default.nix
@@ -6,7 +6,7 @@ let
version="0.12";
name="${baseName}-${version}";
hash="1b14zcwlvnxhjxr3ymyzg0mg4sbijkinzpxm641s859jxcgylmll";
- url="http://download.savannah.gnu.org/releases/mi2ly/mi2ly.0.12.tar.bz2";
+ url="https://download.savannah.gnu.org/releases/mi2ly/mi2ly.0.12.tar.bz2";
sha256="1b14zcwlvnxhjxr3ymyzg0mg4sbijkinzpxm641s859jxcgylmll";
};
buildInputs = [
diff --git a/pkgs/applications/audio/mi2ly/default.upstream b/pkgs/applications/audio/mi2ly/default.upstream
index 131f0e3a71d62a3682af78bee6338778e523894a..0b2607989aa2f86716c93f5ae573b4d6263b6f60 100644
--- a/pkgs/applications/audio/mi2ly/default.upstream
+++ b/pkgs/applications/audio/mi2ly/default.upstream
@@ -1,3 +1,3 @@
-url http://download.savannah.gnu.org/releases/mi2ly/
+url https://download.savannah.gnu.org/releases/mi2ly/
ensure_choice
version '.*/mi2ly[.]([0-9.]+)[.]tar.*' '\1'
diff --git a/pkgs/applications/audio/mid2key/default.nix b/pkgs/applications/audio/mid2key/default.nix
index 26ea2c7b0b2cf0488c308084d3b4164fe1532522..3c5660724d39726ca7d00b5d4ed81ce4ea445d2c 100644
--- a/pkgs/applications/audio/mid2key/default.nix
+++ b/pkgs/applications/audio/mid2key/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, alsaLib, libX11, libXi, libXtst, xextproto }:
+{ stdenv, fetchurl, alsaLib, libX11, libXi, libXtst, xorgproto }:
stdenv.mkDerivation rec {
name = "mid2key-r1";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
unpackPhase = "tar xvzf $src";
- buildInputs = [ alsaLib libX11 libXi libXtst xextproto ];
+ buildInputs = [ alsaLib libX11 libXi libXtst xorgproto ];
buildPhase = "make";
diff --git a/pkgs/applications/audio/midisheetmusic/default.nix b/pkgs/applications/audio/midisheetmusic/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..448977e5705bbe06e017c8f669482a5e3eb3f771
--- /dev/null
+++ b/pkgs/applications/audio/midisheetmusic/default.nix
@@ -0,0 +1,60 @@
+{ stdenv, fetchurl
+, mono, dotnetPackages, makeWrapper
+, gtk2, cups, timidity }:
+
+let
+ version = "2.6";
+in stdenv.mkDerivation {
+ name = "midisheetmusic-${version}";
+
+ src = fetchurl {
+ url = "mirror://sourceforge/midisheetmusic/MidiSheetMusic-${version}-linux-src.tar.gz";
+ sha256 = "05c6zskj50g29f51lx8fvgzsi3f31z01zj6ssjjrgr7jfs7ak70p";
+ };
+
+ checkInputs = (with dotnetPackages; [ NUnitConsole ]);
+ nativeBuildInputs = [ mono makeWrapper ];
+
+ buildPhase = ''
+ for i in Classes/MidiPlayer.cs Classes/MidiSheetMusic.cs
+ do
+ substituteInPlace $i --replace "/usr/bin/timidity" "${timidity}/bin/timidity"
+ done
+
+ ./build.sh
+ '';
+
+ # include missing file with unit tests for building
+ # switch from mono nunit dll to standalone dll otherwise mono compiler barks
+ # run via nunit3 console, because mono nunit console wants access $HOME
+ checkPhase = ''
+ substituteInPlace UnitTestDLL.csproj \
+ --replace "" '' \
+ --replace nunit.framework.dll "${dotnetPackages.NUnit}/lib/dotnet/NUnit/nunit.framework.dll"
+ ./build_unit_test.sh
+ nunit3-console bin/Debug/UnitTest.dll
+ '';
+
+ # 2 tests of 47 are still failing
+ doCheck = false;
+
+ installPhase = ''
+ mkdir -p $out/share/applications $out/share/pixmaps $out/bin
+
+ cp deb/midisheetmusic.desktop $out/share/applications
+ cp NotePair.png $out/share/pixmaps/midisheetmusic.png
+ cp bin/Debug/MidiSheetMusic.exe $out/bin/.MidiSheetMusic.exe
+
+ makeWrapper ${mono}/bin/mono $out/bin/midisheetmusic.mono.exe \
+ --prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [ gtk2 cups ]} \
+ --add-flags $out/bin/.MidiSheetMusic.exe
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Convert MIDI Files to Piano Sheet Music for two hands";
+ homepage = http://midisheetmusic.com;
+ license = licenses.gpl2;
+ maintainers = [ maintainers.gnidorah ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/audio/milkytracker/decompressor_gzip.patch b/pkgs/applications/audio/milkytracker/decompressor_gzip.patch
deleted file mode 100644
index c64421116dea71d79b0fada00902687a4a08f128..0000000000000000000000000000000000000000
--- a/pkgs/applications/audio/milkytracker/decompressor_gzip.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-https://bugs.archlinux.org/task/31324
-https://410333.bugs.gentoo.org/attachment.cgi?id=322456
-
-diff -ur src.old/compression/DecompressorGZIP.cpp src/compression/DecompressorGZIP.cpp
---- src.old/compression/DecompressorGZIP.cpp 2012-08-28 17:54:46.000000000 +0200
-+++ src/compression/DecompressorGZIP.cpp 2012-08-28 17:55:21.000000000 +0200
-@@ -57,11 +57,11 @@
-
- bool DecompressorGZIP::decompress(const PPSystemString& outFileName, Hints hint)
- {
-- gzFile *gz_input_file = NULL;
-+ gzFile gz_input_file = NULL;
- int len = 0;
- pp_uint8 *buf;
-
-- if ((gz_input_file = (void **)gzopen (fileName.getStrBuffer(), "r")) == NULL)
-+ if ((gz_input_file = gzopen (fileName.getStrBuffer(), "r")) == NULL)
- return false;
-
- if ((buf = new pp_uint8[0x10000]) == NULL)
diff --git a/pkgs/applications/audio/milkytracker/default.nix b/pkgs/applications/audio/milkytracker/default.nix
index 6a71971c5fdffaad88006aec2230428aadf0c88d..6b3abeb1e23cd37b10384e7b4e48c85f197a0a2c 100644
--- a/pkgs/applications/audio/milkytracker/default.nix
+++ b/pkgs/applications/audio/milkytracker/default.nix
@@ -1,29 +1,26 @@
-{ stdenv, fetchurl, SDL2, alsaLib, cmake, libjack2, perl
-, zlib, zziplib, pkgconfig, makeWrapper
-}:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, makeWrapper
+, SDL2, alsaLib, libjack2, lhasa, perl, rtmidi, zlib, zziplib }:
stdenv.mkDerivation rec {
- version = "1.01";
+ version = "1.02.00";
name = "milkytracker-${version}";
- src = fetchurl {
- url = "https://github.com/milkytracker/MilkyTracker/archive/v${version}.00.tar.gz";
- sha256 = "1dvnddsnn9c83lz4dlm0cfjpc0m524amfkbalxbswdy0qc8cj1wv";
+ src = fetchFromGitHub {
+ owner = "milkytracker";
+ repo = "MilkyTracker";
+ rev = "v${version}";
+ sha256 = "05a6d7l98k9i82dwrgi855dnccm3f2lkb144gi244vhk1156n0ca";
};
- preBuild=''
- export CPATH=${zlib.out}/lib
- '';
-
nativeBuildInputs = [ cmake pkgconfig makeWrapper ];
- buildInputs = [ SDL2 alsaLib libjack2 perl zlib zziplib ];
+ buildInputs = [ SDL2 alsaLib libjack2 lhasa perl rtmidi zlib zziplib ];
- meta = {
+ meta = with stdenv.lib; {
description = "Music tracker application, similar to Fasttracker II";
homepage = http://milkytracker.org;
- license = stdenv.lib.licenses.gpl3Plus;
+ license = licenses.gpl3Plus;
platforms = [ "x86_64-linux" "i686-linux" ];
- maintainers = [ stdenv.lib.maintainers.zoomulator ];
+ maintainers = with maintainers; [ zoomulator ];
};
}
diff --git a/pkgs/applications/audio/mimic/default.nix b/pkgs/applications/audio/mimic/default.nix
index a4cd0c944dc242b2ab0f7d2908dc6fb0fee233e4..dcaffe3eb9b48032cc231c07527c993e68b6c2e2 100644
--- a/pkgs/applications/audio/mimic/default.nix
+++ b/pkgs/applications/audio/mimic/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, autoreconfHook, fetchFromGitHub, pkgconfig
+{ config, stdenv, autoreconfHook, fetchFromGitHub, pkgconfig
, alsaLib, libtool, icu
-, pulseaudioSupport ? true, libpulseaudio }:
+, pulseaudioSupport ? config.pulseaudio or false, libpulseaudio }:
stdenv.mkDerivation rec {
name = "mimic-${version}";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
sha256 = "1wkpbwk88lsahzkc7pzbznmyy0lc02vsp0vkj8f1ags1gh0lc52j";
};
- nativeBuildInputs = [
+ nativeBuildInputs = [
autoreconfHook
pkgconfig
];
@@ -21,15 +21,14 @@ stdenv.mkDerivation rec {
buildInputs = [
alsaLib
libtool
- icu
+ icu
] ++ stdenv.lib.optional pulseaudioSupport libpulseaudio;
meta = {
description = "Mycroft's TTS engine, based on CMU's Flite (Festival Lite)";
- homepage = https://mimic.mycroft.ai/;
+ homepage = https://mimic.mycroft.ai/;
license = stdenv.lib.licenses.free;
platforms = stdenv.lib.platforms.linux;
- maintainers = [ stdenv.lib.maintainers.noneucat ];
+ maintainers = [ stdenv.lib.maintainers.noneucat ];
};
}
-
diff --git a/pkgs/applications/audio/mimms/default.nix b/pkgs/applications/audio/mimms/default.nix
index b9b840682d74337a51d16b6cb3d0edd7129cae68..2d301a8b6a967be21d0906f3c0b88bba5d552d8d 100644
--- a/pkgs/applications/audio/mimms/default.nix
+++ b/pkgs/applications/audio/mimms/default.nix
@@ -5,7 +5,7 @@ pythonPackages.buildPythonApplication rec {
version = "3.2";
src = fetchurl {
- url = "http://download.savannah.gnu.org/releases/mimms/mimms-${version}.tar.bz2";
+ url = "https://download.savannah.gnu.org/releases/mimms/mimms-${version}.tar.bz2";
sha256 = "0zmcd670mpq85cs3nvdq3i805ba0d1alqahfy1m9cpf7kxrivfml";
};
diff --git a/pkgs/applications/audio/mixxx/default.nix b/pkgs/applications/audio/mixxx/default.nix
index 60a0695ffecc90f97abe954e6c1fbae0049bfbda..8d8d8d8547549c159eec0eb44cacb0d6bab79c5b 100644
--- a/pkgs/applications/audio/mixxx/default.nix
+++ b/pkgs/applications/audio/mixxx/default.nix
@@ -1,62 +1,47 @@
-{ stdenv, fetchurl, chromaprint, fetchpatch, fftw, flac, faad2, mp4v2
+{ stdenv, fetchFromGitHub, makeWrapper, chromaprint, fetchpatch
+, fftw, flac, faad2, glibcLocales, mp4v2
, libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis
-, pkgconfig, portaudio, portmidi, protobuf, qt4, rubberband, scons, sqlite
-, taglib, vampSDK
+, libGLU, libxcb, lilv, lv2, opusfile
+, pkgconfig, portaudio, portmidi, protobuf, qtbase, qtscript, qtsvg
+, qtx11extras, rubberband, scons, sqlite, taglib, upower, vampSDK
}:
stdenv.mkDerivation rec {
name = "mixxx-${version}";
- version = "2.0.0";
+ version = "2.2.0";
- src = fetchurl {
- url = "https://downloads.mixxx.org/${name}/${name}-src.tar.gz";
- sha256 = "0vb71w1yq0xwwsclrn2jj9bk8w4n14rfv5c0aw46c11mp8xz7f71";
+ src = fetchFromGitHub {
+ owner = "mixxxdj";
+ repo = "mixxx";
+ rev = "release-${version}";
+ sha256 = "1rp2nyhz2j695k5kk0m94x30akwrlr9jgs0n4pi4snnvjpwmbfp9";
};
- patches = [
- (fetchpatch {
- url = "https://sources.debian.net/data/main/m/mixxx/2.0.0~dfsg-7.1/debian/patches/0007-fix_gcc6_issue.patch";
- sha256 = "0kpyv10wcjcvbijk6vpq54gx9sqzrq4kq2qilc1czmisp9qdy5sd";
- })
- (fetchpatch {
- url = "https://622776.bugs.gentoo.org/attachment.cgi?id=487284";
- name = "sqlite.patch";
- sha256 = "1qqbd8nrxrjcc1dwvyqfq1k2yz3l071sfcgd2dmpk6j8d4j5kx31";
- })
- ];
+ nativeBuildInputs = [ makeWrapper ];
buildInputs = [
- chromaprint fftw flac faad2 mp4v2 libid3tag libmad libopus libshout libsndfile
- libusb1 libvorbis pkgconfig portaudio portmidi protobuf qt4
- rubberband scons sqlite taglib vampSDK
+ chromaprint fftw flac faad2 glibcLocales mp4v2 libid3tag libmad libopus libshout libsndfile
+ libusb1 libvorbis libxcb libGLU lilv lv2 opusfile pkgconfig portaudio portmidi protobuf qtbase qtscript qtsvg
+ qtx11extras rubberband scons sqlite taglib upower vampSDK
];
sconsFlags = [
"build=release"
- "qtdir=${qt4}"
+ "qtdir=${qtbase}"
"faad=1"
+ "opus=1"
];
- buildPhase = ''
- runHook preBuild
- mkdir -p "$out"
- scons \
- -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES \
- $sconsFlags "prefix=$out"
- runHook postBuild
- '';
-
- installPhase = ''
- runHook preInstall
- scons $sconsFlags "prefix=$out" install
- runHook postInstall
+ fixupPhase = ''
+ wrapProgram $out/bin/mixxx \
+ --set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive;
'';
meta = with stdenv.lib; {
homepage = https://mixxx.org;
description = "Digital DJ mixing software";
license = licenses.gpl2Plus;
- maintainers = [ maintainers.aszlig maintainers.goibhniu ];
+ maintainers = [ maintainers.aszlig maintainers.goibhniu maintainers.bfortz ];
platforms = platforms.linux;
};
}
diff --git a/pkgs/applications/audio/mopidy/default.nix b/pkgs/applications/audio/mopidy/default.nix
index 753a273a08cc3a100ce29550178f36787eb45c0d..9015a8c749a89e2ddf800234467495b8ec0e8a47 100644
--- a/pkgs/applications/audio/mopidy/default.nix
+++ b/pkgs/applications/audio/mopidy/default.nix
@@ -1,27 +1,27 @@
{ stdenv, fetchFromGitHub, pythonPackages, wrapGAppsHook
-, gst_all_1, glib-networking, gobjectIntrospection
+, gst_all_1, glib-networking, gobject-introspection
}:
pythonPackages.buildPythonApplication rec {
pname = "mopidy";
- version = "2.1.0";
+ version = "2.2.2";
src = fetchFromGitHub {
owner = "mopidy";
repo = "mopidy";
rev = "v${version}";
- sha256 = "0krq5fbscqxayyc4vxai7iwxm2kdbgs5jicrdb013v04phw2za06";
+ sha256 = "01vl162c7ssf69b0m65ys9fxnsqnfa1whwbprnc063lkcnrnlkr1";
};
nativeBuildInputs = [ wrapGAppsHook ];
buildInputs = with gst_all_1; [
gst-plugins-base gst-plugins-good gst-plugins-ugly gst-plugins-bad
- glib-networking gobjectIntrospection
+ glib-networking gobject-introspection
];
propagatedBuildInputs = with pythonPackages; [
- gst-python pygobject3 pykka tornado requests
+ gst-python pygobject3 pykka tornado_4 requests
] ++ stdenv.lib.optional (!stdenv.isDarwin) dbus-python;
# There are no tests
diff --git a/pkgs/applications/audio/mopidy/gmusic.nix b/pkgs/applications/audio/mopidy/gmusic.nix
index 5566c4b07b21d64b2abb2a9d6bff1469b6a47f90..8c173140efd8fd42636be5505934f9b9d1c52f28 100644
--- a/pkgs/applications/audio/mopidy/gmusic.nix
+++ b/pkgs/applications/audio/mopidy/gmusic.nix
@@ -13,7 +13,7 @@ pythonPackages.buildPythonApplication rec {
mopidy
pythonPackages.requests
pythonPackages.gmusicapi
- pythonPackages.cachetools_1
+ pythonPackages.cachetools
];
doCheck = false;
diff --git a/pkgs/applications/audio/mopidy/iris.nix b/pkgs/applications/audio/mopidy/iris.nix
index 01d7befddd674fc4e076c9bb11b3a28abdf7c4cb..42ef89cd0fd1270feea33eada8988b24828baf07 100644
--- a/pkgs/applications/audio/mopidy/iris.nix
+++ b/pkgs/applications/audio/mopidy/iris.nix
@@ -2,11 +2,11 @@
pythonPackages.buildPythonApplication rec {
pname = "Mopidy-Iris";
- version = "3.23.2";
+ version = "3.36.0";
src = pythonPackages.fetchPypi {
inherit pname version;
- sha256 = "1zf4ck19z3nh1x9a847ay1qnkyvi6s6866kp6q6dh1xpn7i9rmx7";
+ sha256 = "1qxb3rfjxmwihcm0nrarrgp9x7zr3kjipzn5igj0d57gpi2bdwgv";
};
propagatedBuildInputs = [
@@ -14,14 +14,10 @@ pythonPackages.buildPythonApplication rec {
mopidy-local-images
] ++ (with pythonPackages; [
configobj
- pylast
- spotipy
- raven
- tornado
+ requests
+ tornado_4
]);
- postPatch = "sed -i /tornado/d setup.py";
-
# no tests implemented
doCheck = false;
diff --git a/pkgs/applications/audio/mopidy/local-images.nix b/pkgs/applications/audio/mopidy/local-images.nix
index 3e10904f3e69c3297fb750255bbff5b87e6195e7..2ffc736572bf796765619ff1281a72fa9f781cf6 100644
--- a/pkgs/applications/audio/mopidy/local-images.nix
+++ b/pkgs/applications/audio/mopidy/local-images.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pythonPackages, mopidy, gobjectIntrospection }:
+{ stdenv, fetchFromGitHub, pythonPackages, mopidy, gobject-introspection }:
pythonPackages.buildPythonApplication rec {
pname = "mopidy-local-images";
@@ -11,7 +11,7 @@ pythonPackages.buildPythonApplication rec {
sha256 = "0gdqxws0jish50mmi57mlqcs659wrllzv00czl18niz94vzvyc0d";
};
- buildInputs = [ gobjectIntrospection ];
+ buildInputs = [ gobject-introspection ];
checkInputs = [
pythonPackages.mock
diff --git a/pkgs/applications/audio/morituri/default.nix b/pkgs/applications/audio/morituri/default.nix
deleted file mode 100644
index d4c67bb5622c74b043a90678f208cde60103a439..0000000000000000000000000000000000000000
--- a/pkgs/applications/audio/morituri/default.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-{ stdenv, fetchgit, pythonPackages, cdparanoia, cdrdao
-, gst-python, gst-plugins-base, gst-plugins-good
-, utillinux, makeWrapper, substituteAll, autoreconfHook }:
-
-let
- inherit (pythonPackages) python;
-in stdenv.mkDerivation rec {
- name = "morituri-${version}";
- version = "0.2.3.20151109";
- namePrefix = "";
-
- src = fetchgit {
- url = "https://github.com/thomasvs/morituri.git";
- fetchSubmodules = true;
- rev = "135b2f7bf27721177e3aeb1d26403f1b29116599";
- sha256 = "1sl5y5j3gdbynf2v0gf9dwd2hzawj8lm8ywadid7qm34yn8lx12k";
- };
-
- pythonPath = with pythonPackages; [
- pygobject2 gst-python musicbrainzngs
- pycdio pyxdg setuptools
- CDDB
- ];
-
- nativeBuildInputs = [ autoreconfHook ];
- buildInputs = [
- python cdparanoia cdrdao utillinux makeWrapper
- gst-plugins-base gst-plugins-good
- ] ++ pythonPath;
-
- patches = [
- (substituteAll {
- src = ./paths.patch;
- inherit cdrdao cdparanoia python utillinux;
- })
- ];
-
- # This package contains no binaries to patch or strip.
- dontPatchELF = true;
- dontStrip = true;
-
- postInstall = ''
- wrapProgram "$out/bin/rip" \
- --prefix PYTHONPATH : "$PYTHONPATH" \
- --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH"
- '';
-
- meta = with stdenv.lib; {
- homepage = http://thomas.apestaart.org/morituri/trac/;
- description = "A CD ripper aiming for accuracy over speed";
- maintainers = with maintainers; [ rycee jgeerds ];
- license = licenses.gpl3Plus;
- platforms = platforms.linux;
- };
-}
diff --git a/pkgs/applications/audio/morituri/paths.patch b/pkgs/applications/audio/morituri/paths.patch
deleted file mode 100644
index b3372dae48bfa945e1c6dd04da8e1c1321376152..0000000000000000000000000000000000000000
--- a/pkgs/applications/audio/morituri/paths.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-diff --git a/doc/Makefile.am b/doc/Makefile.am
-index c115c2c..78c883e 100644
---- a/doc/Makefile.am
-+++ b/doc/Makefile.am
-@@ -24,7 +24,7 @@ morituri.ics: $(top_srcdir)/morituri.doap
- man_MANS = rip.1
-
- rip.1: $(top_srcdir)/morituri/extern/python-command/scripts/help2man $(top_srcdir)/morituri
-- PYTHONPATH=$(top_srcdir) $(PYTHON) $(top_srcdir)/morituri/extern/python-command/scripts/help2man morituri.rip.main.Rip rip > rip.1
-+ PYTHONPATH=$(top_srcdir):$(PYTHONPATH) $(PYTHON) $(top_srcdir)/morituri/extern/python-command/scripts/help2man morituri.rip.main.Rip rip > rip.1
-
- clean-local:
- @rm -rf reference
-diff --git a/morituri/common/program.py b/morituri/common/program.py
-index d340fdd..15cb751 100644
---- a/morituri/common/program.py
-+++ b/morituri/common/program.py
-@@ -92,13 +92,13 @@ class Program(log.Loggable):
- """
- Load the given device.
- """
-- os.system('eject -t %s' % device)
-+ os.system('@utillinux@/bin/eject -t %s' % device)
-
- def ejectDevice(self, device):
- """
- Eject the given device.
- """
-- os.system('eject %s' % device)
-+ os.system('@utillinux@/bin/eject %s' % device)
-
- def unmountDevice(self, device):
- """
-@@ -112,7 +112,7 @@ class Program(log.Loggable):
- proc = open('/proc/mounts').read()
- if device in proc:
- print 'Device %s is mounted, unmounting' % device
-- os.system('umount %s' % device)
-+ os.system('@utillinux@/bin/umount %s' % device)
-
- def getFastToc(self, runner, toc_pickle, device):
- """
-Submodule morituri/extern/python-command contains modified content
-diff --git a/morituri/program/cdparanoia.py b/morituri/program/cdparanoia.py
-index 46176d5..fce14a5 100644
---- a/morituri/program/cdparanoia.py
-+++ b/morituri/program/cdparanoia.py
-@@ -278,7 +278,7 @@ class ReadTrackTask(log.Loggable, task.Task):
- stopTrack, stopOffset)
-
- bufsize = 1024
-- argv = ["cdparanoia", "--stderr-progress",
-+ argv = ["@cdparanoia@/bin/cdparanoia", "--stderr-progress",
- "--sample-offset=%d" % self._offset, ]
- if self._device:
- argv.extend(["--force-cdrom-device", self._device, ])
-@@ -551,7 +551,7 @@ _VERSION_RE = re.compile(
-
- def getCdParanoiaVersion():
- getter = common.VersionGetter('cdparanoia',
-- ["cdparanoia", "-V"],
-+ ["@cdparanoia@/bin/cdparanoia", "-V"],
- _VERSION_RE,
- "%(version)s %(release)s")
-
-diff --git a/morituri/program/cdrdao.py b/morituri/program/cdrdao.py
-index c6fba64..c4d0306 100644
---- a/morituri/program/cdrdao.py
-+++ b/morituri/program/cdrdao.py
-@@ -257,7 +257,7 @@ class CDRDAOTask(ctask.PopenTask):
-
- def start(self, runner):
- self.debug('Starting cdrdao with options %r', self.options)
-- self.command = ['cdrdao', ] + self.options
-+ self.command = ['@cdrdao@/bin/cdrdao', ] + self.options
-
- ctask.PopenTask.start(self, runner)
-
-@@ -515,7 +515,7 @@ _VERSION_RE = re.compile(
-
- def getCDRDAOVersion():
- getter = common.VersionGetter('cdrdao',
-- ["cdrdao"],
-+ ["@cdrdao@/bin/cdrdao"],
- _VERSION_RE,
- "%(version)s")
-
diff --git a/pkgs/applications/audio/mpg123/default.nix b/pkgs/applications/audio/mpg123/default.nix
index 3aef2e35943d746fc8497267733e0b5d86757212..44f1c681ec1a7ad5947b702bfb110551affff0c6 100644
--- a/pkgs/applications/audio/mpg123/default.nix
+++ b/pkgs/applications/audio/mpg123/default.nix
@@ -1,6 +1,5 @@
{ stdenv
, fetchurl, alsaLib
-, hostPlatform
}:
stdenv.mkDerivation rec {
@@ -13,8 +12,9 @@ stdenv.mkDerivation rec {
buildInputs = stdenv.lib.optional (!stdenv.isDarwin) alsaLib;
- configureFlags =
- stdenv.lib.optional (hostPlatform ? mpg123) "--with-cpu=${hostPlatform.mpg123.cpu}";
+ configureFlags = stdenv.lib.optional
+ (stdenv.hostPlatform ? mpg123)
+ "--with-cpu=${stdenv.hostPlatform.mpg123.cpu}";
meta = {
description = "Fast console MPEG Audio Player and decoder library";
diff --git a/pkgs/applications/audio/muse/default.nix b/pkgs/applications/audio/muse/default.nix
index 9687ff3106bdc469191153aac00aa61ce06d5e86..b3efa82ead4792f3a22fd06a2a156c1e584bfd13 100644
--- a/pkgs/applications/audio/muse/default.nix
+++ b/pkgs/applications/audio/muse/default.nix
@@ -18,7 +18,7 @@
stdenv.mkDerivation rec {
name = "muse-sequencer-${version}";
- version = "3.0.2";
+ version = "3.1pre1";
meta = with stdenv.lib; {
homepage = http://www.muse-sequencer.org;
@@ -38,11 +38,16 @@ stdenv.mkDerivation rec {
fetchFromGitHub {
owner = "muse-sequencer";
repo = "muse";
- rev = "02d9dc6abd757c3c1783fdd46dacd3c4ef2c0a6d";
- sha256 = "0pn0mcg79z3bhjwxbss3ylypdz3gg70q5d1ij3x8yw65ryxbqf51";
+ rev = "2167ae053c16a633d8377acdb1debaac10932838";
+ sha256 = "0rsdx8lvcbz5bapnjvypw8h8bq587s9z8cf2znqrk6ah38s6fsrf";
};
+ nativeBuildInputs = [
+ pkgconfig
+ gitAndTools.gitFull
+ ];
+
buildInputs = [
libjack2
qt5.qtsvg
@@ -57,8 +62,6 @@ stdenv.mkDerivation rec {
lash
dssi
liblo
- pkgconfig
- gitAndTools.gitFull
];
sourceRoot = "source/muse3";
diff --git a/pkgs/applications/audio/musescore/default.nix b/pkgs/applications/audio/musescore/default.nix
index 28381fcfee6254efb1a2729f44a53958c29c6adf..9407a1c2688231892961edd7fb714572146cb1dd 100644
--- a/pkgs/applications/audio/musescore/default.nix
+++ b/pkgs/applications/audio/musescore/default.nix
@@ -1,20 +1,23 @@
-{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig
+{ stdenv, lib, fetchzip, cmake, pkgconfig
, alsaLib, freetype, libjack2, lame, libogg, libpulseaudio, libsndfile, libvorbis
, portaudio, portmidi, qtbase, qtdeclarative, qtscript, qtsvg, qttools
-, qtwebkit, qtxmlpatterns
+, qtwebengine, qtxmlpatterns
}:
stdenv.mkDerivation rec {
name = "musescore-${version}";
- version = "2.3.2";
+ version = "3.0.5";
- src = fetchFromGitHub {
- owner = "musescore";
- repo = "MuseScore";
- rev = "v${version}";
- sha256 = "0ncv0xfmq87plqa43cm0fpidlwzz1nq5s7h7139llrbc36yp3pr1";
+ src = fetchzip {
+ url = "https://download.musescore.com/releases/MuseScore-${version}/MuseScore-${version}.zip";
+ sha256 = "1pbf6v0l3nixxr8k5igwhj09wnqvw92av6q6yjrbb3kyjh5br2d8";
+ stripRoot = false;
};
+ patches = [
+ ./remove_qtwebengine_install_hack.patch
+ ];
+
cmakeFlags = [
] ++ lib.optional (lib.versionAtLeast freetype.version "2.5.2") "-DUSE_SYSTEM_FREETYPE=ON";
@@ -23,7 +26,7 @@ stdenv.mkDerivation rec {
buildInputs = [
alsaLib libjack2 freetype lame libogg libpulseaudio libsndfile libvorbis
portaudio portmidi # tesseract
- qtbase qtdeclarative qtscript qtsvg qttools qtwebkit qtxmlpatterns
+ qtbase qtdeclarative qtscript qtsvg qttools qtwebengine qtxmlpatterns
];
meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/musescore/remove_qtwebengine_install_hack.patch b/pkgs/applications/audio/musescore/remove_qtwebengine_install_hack.patch
new file mode 100644
index 0000000000000000000000000000000000000000..53a0c90ce46edc7c3b62b207ee692af04fdc2133
--- /dev/null
+++ b/pkgs/applications/audio/musescore/remove_qtwebengine_install_hack.patch
@@ -0,0 +1,25 @@
+--- a/mscore/CMakeLists.txt
++++ b/mscore/CMakeLists.txt
+@@ -660,22 +660,6 @@ if (MINGW)
+ else (MINGW)
+
+ if ( NOT MSVC )
+-## install qwebengine core
+- if (NOT APPLE AND USE_WEBENGINE)
+- install(FILES
+- ${QT_INSTALL_LIBEXECS}/QtWebEngineProcess
+- DESTINATION bin
+- )
+- install(DIRECTORY
+- ${QT_INSTALL_DATA}/resources
+- DESTINATION lib/qt5
+- )
+- install(DIRECTORY
+- ${QT_INSTALL_TRANSLATIONS}/qtwebengine_locales
+- DESTINATION lib/qt5/translations
+- )
+- endif(NOT APPLE AND USE_WEBENGINE)
+-
+ target_link_libraries(mscore
+ ${ALSA_LIB}
+ ${QT_LIBRARIES}
diff --git a/pkgs/applications/audio/musly/default.nix b/pkgs/applications/audio/musly/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..47370d4bc2f7f5b21436e8f5716d4c0aac3e300e
--- /dev/null
+++ b/pkgs/applications/audio/musly/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, cmake, eigen, libav_all }:
+stdenv.mkDerivation rec {
+ pname = "musly";
+ version = "unstable-2017-04-26";
+ src = fetchFromGitHub {
+ owner = "dominikschnitzer";
+ repo = "musly";
+ rev = "f911eacbbe0b39ebe87cb37d0caef09632fa40d6";
+ sha256 = "1q42wvdwy2pac7bhfraqqj2czw7w2m33ms3ifjl8phm7d87i8825";
+ };
+ nativeBuildInputs = [ cmake ];
+ buildInputs = [ eigen (libav_all.override { vaapiSupport = stdenv.isLinux; }).libav_11 ];
+ fixupPhase = if stdenv.isDarwin then ''
+ install_name_tool -change libmusly.dylib $out/lib/libmusly.dylib $out/bin/musly
+ install_name_tool -change libmusly_resample.dylib $out/lib/libmusly_resample.dylib $out/bin/musly
+ install_name_tool -change libmusly_resample.dylib $out/lib/libmusly_resample.dylib $out/lib/libmusly.dylib
+ '' else "";
+
+ meta = with stdenv.lib; {
+ homepage = https://www.musly.org;
+ description = "A fast and high-quality audio music similarity library written in C/C++";
+ longDescription = ''
+ Musly analyzes the the audio signal of music pieces to estimate their similarity.
+ No meta-data about the music piece is included in the similarity estimation.
+ To use Musly in your application, have a look at the library documentation
+ or try the command line application included in the package and start generating
+ some automatic music playlists right away.
+ '';
+ license = licenses.mpl20;
+ maintainers = with maintainers; [ ggpeti ];
+ platforms = with platforms; darwin ++ linux;
+ };
+}
diff --git a/pkgs/applications/audio/ncmpc/default.nix b/pkgs/applications/audio/ncmpc/default.nix
index ffd5b9a5858248996a1bb7f2f7bd7a1098af6923..67fe983c26fd6ab66396d227baeb82de543804ce 100644
--- a/pkgs/applications/audio/ncmpc/default.nix
+++ b/pkgs/applications/audio/ncmpc/default.nix
@@ -1,18 +1,18 @@
{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, glib, ncurses
-, mpd_clientlib, gettext }:
+, mpd_clientlib, gettext, boost }:
stdenv.mkDerivation rec {
name = "ncmpc-${version}";
- version = "0.30";
+ version = "0.34";
src = fetchFromGitHub {
owner = "MusicPlayerDaemon";
repo = "ncmpc";
rev = "v${version}";
- sha256 = "0s2bynm5szrk8bjhg200mvsm2ny0wz9s10nx7r69y9y4jsxr8624";
+ sha256 = "0ffby37qdg251c1w0vl6rmd13akbydnf12468z4vrl0ybwfd7fc4";
};
- buildInputs = [ glib ncurses mpd_clientlib ];
+ buildInputs = [ glib ncurses mpd_clientlib boost ];
nativeBuildInputs = [ meson ninja pkgconfig gettext ];
meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/ncmpcpp/default.nix b/pkgs/applications/audio/ncmpcpp/default.nix
index 87f5f94bb30b2d7b2f9ddd5e325299dd1c4d8ae5..d35cefb88416be1b48f5a3558d25a40c436d0bcc 100644
--- a/pkgs/applications/audio/ncmpcpp/default.nix
+++ b/pkgs/applications/audio/ncmpcpp/default.nix
@@ -1,8 +1,8 @@
{ stdenv, fetchurl, boost, mpd_clientlib, ncurses, pkgconfig, readline
, libiconv, icu, curl
-, outputsSupport ? false # outputs screen
+, outputsSupport ? true # outputs screen
, visualizerSupport ? false, fftw ? null # visualizer screen
-, clockSupport ? false # clock screen
+, clockSupport ? true # clock screen
, taglibSupport ? true, taglib ? null # tag editor
}:
diff --git a/pkgs/applications/audio/ncpamixer/default.nix b/pkgs/applications/audio/ncpamixer/default.nix
index c3449ed3a4f4c620a6c4a514a975adbeb5e51238..8b715a24e3cb8675e6a93aceef647ad30a4ddb0c 100644
--- a/pkgs/applications/audio/ncpamixer/default.nix
+++ b/pkgs/applications/audio/ncpamixer/default.nix
@@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "ncpamixer-${version}";
- version = "1.2";
+ version = "1.3.3";
src = fetchFromGitHub {
owner = "fulhax";
repo = "ncpamixer";
rev = version;
- sha256 = "01kvd0pg5yraymlln5xdzqj1r6adxfvvza84wxn2481kcxfral54";
+ sha256 = "19pxfvfhhrbfk1wz5awx60y51jccrgrcvlq7lb622sw2z0wzw4ac";
};
buildInputs = [ ncurses libpulseaudio ];
diff --git a/pkgs/applications/audio/non/default.nix b/pkgs/applications/audio/non/default.nix
index c28c711d618e9377c033eed76ea2c2d8fa3a667c..44dd0d2d4ec397313da448aaf2ddb95f065f98a3 100644
--- a/pkgs/applications/audio/non/default.nix
+++ b/pkgs/applications/audio/non/default.nix
@@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, pkgconfig, python2, cairo, libjpeg, ntk, libjack2
-, libsndfile, ladspaH, liblrdf, liblo, libsigcxx
+, libsndfile, ladspaH, liblrdf, liblo, libsigcxx, wafHook
}:
stdenv.mkDerivation rec {
@@ -12,13 +12,10 @@ stdenv.mkDerivation rec {
sha256 = "1cljkkyi9dxqpqhx8y6l2ja4zjmlya26m26kqxml8gx08vyvddhx";
};
- nativeBuildInputs = [ pkgconfig ];
+ nativeBuildInputs = [ pkgconfig wafHook ];
buildInputs = [ python2 cairo libjpeg ntk libjack2 libsndfile
ladspaH liblrdf liblo libsigcxx
];
- configurePhase = "python waf configure --prefix=$out";
- buildPhase = "python waf build";
- installPhase = "python waf install";
meta = {
description = "Lightweight and lightning fast modular Digital Audio Workstation";
diff --git a/pkgs/applications/audio/normalize/default.nix b/pkgs/applications/audio/normalize/default.nix
index a727160ff2992d92ba93f5f2874b012614079204..85c902d383963b4b0d9f02c45749b8330d692075 100644
--- a/pkgs/applications/audio/normalize/default.nix
+++ b/pkgs/applications/audio/normalize/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
buildInputs = [ libmad ];
meta = with stdenv.lib; {
- homepage = http://normalize.nongnu.org/;
+ homepage = https://www.nongnu.org/normalize/;
description = "Audio file normalizer";
license = licenses.gpl2;
platforms = platforms.unix;
diff --git a/pkgs/applications/audio/nova-filters/default.nix b/pkgs/applications/audio/nova-filters/default.nix
index e65604e974afd5b9b9c626b7ccb2e497da954e53..bb186687c66ecfee25859e3e2167818b2b68a0b6 100644
--- a/pkgs/applications/audio/nova-filters/default.nix
+++ b/pkgs/applications/audio/nova-filters/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, scons, boost, ladspaH, pkgconfig }:
+{stdenv, fetchurl, sconsPackages, boost, ladspaH, pkgconfig }:
stdenv.mkDerivation rec {
version = "0.2-2";
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
sha256 = "16064vvl2w5lz4xi3lyjk4xx7fphwsxc14ajykvndiz170q32s6i";
};
- nativeBuildInputs = [ pkgconfig ];
- buildInputs = [ scons boost ladspaH ];
+ nativeBuildInputs = [ pkgconfig sconsPackages.scons_3_0_1 ];
+ buildInputs = [ boost ladspaH ];
patchPhase = ''
# remove TERM:
@@ -21,14 +21,6 @@ stdenv.mkDerivation rec {
sed -i "s/= check/= detail::filter_base::check/" nova/source/dsp/filter.hpp
'';
- buildPhase = ''
- scons
- '';
-
- installPhase = ''
- scons $sconsFlags "prefix=$out" install
- '';
-
meta = with stdenv.lib; {
description = "LADSPA plugins based on filters of nova";
homepage = http://klingt.org/~tim/nova-filters/;
diff --git a/pkgs/applications/audio/openmpt123/default.nix b/pkgs/applications/audio/openmpt123/default.nix
index 5d13aa7daf42a0b2092510feecb5bfad162129a3..f8f08369ab93cb5c692731bb73d9d602363d6b1b 100644
--- a/pkgs/applications/audio/openmpt123/default.nix
+++ b/pkgs/applications/audio/openmpt123/default.nix
@@ -1,24 +1,30 @@
-{ stdenv, fetchurl, SDL2, pkgconfig, flac, libsndfile }:
+{ config, stdenv, fetchurl, zlib, pkgconfig, mpg123, libogg, libvorbis, portaudio, libsndfile, flac
+, usePulseAudio ? config.pulseaudio or false, libpulseaudio }:
let
- version = "0.2.7025-beta20.1";
+ version = "0.4.1";
in stdenv.mkDerivation rec {
name = "openmpt123-${version}";
+
src = fetchurl {
- url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}.tar.gz";
- sha256 = "0qp2nnz6pnl1d7yv9hcjyim7q6yax5881k1jxm8jfgjqagmz5k6p";
+ url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz";
+ sha256 = "1k1m1adjh4s2q9lxgkf836k5243akxrzq1hsdjhrkg4idd3pxzp4";
};
+
+ enableParallelBuilding = true;
+ doCheck = true;
+
nativeBuildInputs = [ pkgconfig ];
- buildInputs = [ SDL2 flac libsndfile ];
- makeFlags = [ "NO_PULSEAUDIO=1 NO_LTDL=1 TEST=0 EXAMPLES=0" ]
- ++ stdenv.lib.optional (stdenv.isDarwin) "SHARED_SONAME=0";
- installFlags = "PREFIX=\${out}";
+ buildInputs = [ zlib mpg123 libogg libvorbis portaudio libsndfile flac ]
+ ++ stdenv.lib.optional usePulseAudio libpulseaudio;
+
+ configureFlags = stdenv.lib.optional (!usePulseAudio) [ "--without-pulseaudio" ];
meta = with stdenv.lib; {
description = "A cross-platform command-line based module file player";
homepage = https://lib.openmpt.org/libopenmpt/;
license = licenses.bsd3;
- maintainers = [ stdenv.lib.maintainers.gnidorah ];
- platforms = stdenv.lib.platforms.unix;
+ maintainers = with maintainers; [ gnidorah ];
+ platforms = platforms.linux;
};
}
diff --git a/pkgs/applications/audio/opus-tools/default.nix b/pkgs/applications/audio/opus-tools/default.nix
index 658ba1700f2628ba923dfca863a1454f9a37e505..85d0e1fbaf71c0398c703ab7a8e8950f7e058b8c 100644
--- a/pkgs/applications/audio/opus-tools/default.nix
+++ b/pkgs/applications/audio/opus-tools/default.nix
@@ -1,14 +1,14 @@
-{stdenv, fetchurl, libogg, libao, pkgconfig, libopus, flac}:
+{stdenv, fetchurl, libogg, libao, pkgconfig, flac, opusfile, libopusenc}:
stdenv.mkDerivation rec {
- name = "opus-tools-0.1.10";
+ name = "opus-tools-0.2";
src = fetchurl {
url = "http://downloads.xiph.org/releases/opus/${name}.tar.gz";
- sha256 = "135jfb9ny3xvd27idsxj7j5ns90lslbyrq70cq3bfwcls4r7add2";
+ sha256 = "11pzl27s4vcz4m18ch72nivbhww2zmzn56wspb7rll1y1nq6rrdl";
};
nativeBuildInputs = [ pkgconfig ];
- buildInputs = [ libogg libao libopus flac ];
+ buildInputs = [ libogg libao flac opusfile libopusenc ];
meta = {
description = "Tools to work with opus encoded audio streams";
diff --git a/pkgs/applications/audio/opusfile/default.nix b/pkgs/applications/audio/opusfile/default.nix
index d864d5972bce8b31d892786fe511ed456b44d84c..993e3c4fe8c5f63f443701412465d3e5be5e3a5c 100644
--- a/pkgs/applications/audio/opusfile/default.nix
+++ b/pkgs/applications/audio/opusfile/default.nix
@@ -1,10 +1,10 @@
{ stdenv, fetchurl, pkgconfig, openssl, libogg, libopus }:
stdenv.mkDerivation rec {
- name = "opusfile-0.10";
+ name = "opusfile-0.11";
src = fetchurl {
url = "http://downloads.xiph.org/releases/opus/${name}.tar.gz";
- sha256 = "0bs1376sd131qdh7198jp64vv5d17az5wyy4y7srrvw7p8k3bq28";
+ sha256 = "1gq3aszzl5glgbajw5p1f5a1kdyf23w5vjdmwwrk246syin9pkkl";
};
nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/audio/padthv1/default.nix b/pkgs/applications/audio/padthv1/default.nix
index 5cecdc8187d8e14ca23fca8a42e113ed226d4f34..b2e5fb11ac31a2c3959706848bdd9dba86ce306b 100644
--- a/pkgs/applications/audio/padthv1/default.nix
+++ b/pkgs/applications/audio/padthv1/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "padthv1-${version}";
- version = "0.9.0";
+ version = "0.9.6";
src = fetchurl {
url = "mirror://sourceforge/padthv1/${name}.tar.gz";
- sha256 = "0c519qk2g0dk8gqf9ywqfp7dnr4b25lsnxxbf2l1spnnvf8nysvh";
+ sha256 = "0ddvlpjlg6zr9ckanqhisw0sgm8rxibvj1aj5dxzs9xb2wlwd8rr";
};
buildInputs = [ libjack2 alsaLib libsndfile liblo lv2 qt5.qtbase qt5.qttools fftw ];
diff --git a/pkgs/applications/audio/paprefs/default.nix b/pkgs/applications/audio/paprefs/default.nix
index 23ba3582ce61b3a789b0e402807a65975f7a2d1e..6ad931d4867a4975ae10b4ad4d1ad6c27b39f7b1 100644
--- a/pkgs/applications/audio/paprefs/default.nix
+++ b/pkgs/applications/audio/paprefs/default.nix
@@ -1,11 +1,11 @@
{ fetchurl, stdenv, meson, ninja, gettext, pkgconfig, pulseaudioFull, gtkmm3, dbus-glib, wrapGAppsHook }:
stdenv.mkDerivation rec {
- name = "paprefs-1.0";
+ name = "paprefs-1.1";
src = fetchurl {
url = "https://freedesktop.org/software/pulseaudio/paprefs/${name}.tar.xz";
- sha256 = "0y77i9gaaassvvjrpwb4xbgqcmr51zmj5rh4z8zm687i5izf84md";
+ sha256 = "189z5p20hk0xv9vwvym293503j4pwl03xqk9hl7cl6dwgv0l7wkf";
};
nativeBuildInputs = [ meson ninja gettext pkgconfig wrapGAppsHook ];
diff --git a/pkgs/applications/audio/parlatype/default.nix b/pkgs/applications/audio/parlatype/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..87257f4920df5bdd61cc12cfbe4670d86e424a77
--- /dev/null
+++ b/pkgs/applications/audio/parlatype/default.nix
@@ -0,0 +1,69 @@
+{ stdenv, fetchFromGitHub, pkgconfig, meson, gtk3, at-spi2-core, dbus, gst_all_1, sphinxbase, pocketsphinx, ninja, gettext, appstream-glib, python3, glib, gobject-introspection, gsettings-desktop-schemas, itstool, wrapGAppsHook, makeWrapper, hicolor-icon-theme }:
+
+stdenv.mkDerivation rec {
+ pname = "parlatype";
+ version = "1.6-beta";
+
+ src = fetchFromGitHub {
+ owner = "gkarsay";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "0bi0djic9kf178s7vl3y83v4rzhvynlvyf64n94fy80n2f100dj9";
+ };
+
+ nativeBuildInputs = [
+ pkgconfig
+ meson
+ ninja
+ gettext
+ appstream-glib
+ python3
+ gobject-introspection
+ itstool
+ wrapGAppsHook
+ ];
+
+ buildInputs = [
+ gtk3
+ at-spi2-core
+ dbus
+ gst_all_1.gstreamer
+ gst_all_1.gst-plugins-base
+ gst_all_1.gst-plugins-good
+ gst_all_1.gst-plugins-bad
+ gst_all_1.gst-plugins-ugly
+ gst_all_1.gst-libav
+ sphinxbase
+ pocketsphinx
+ glib
+ gsettings-desktop-schemas
+ hicolor-icon-theme
+ ];
+
+ mesonFlags = [ "-Dlibreoffice=false" ];
+
+ postPatch = ''
+ chmod +x data/meson_post_install.py
+ patchShebangs data/meson_post_install.py
+ '';
+
+ doCheck = false;
+ enableParallelBuilding = true;
+
+ buildPhase = ''
+ export GST_PLUGIN_SYSTEM_PATH_1_0="$out/lib/gstreamer-1.0/:$GST_PLUGIN_SYSTEM_PATH_1_0"
+ '';
+
+ meta = with stdenv.lib; {
+ description = "GNOME audio player for transcription";
+ longDescription = ''
+ Parlatype is a minimal audio player for manual speech transcription, written for the GNOME desktop environment.
+ It plays audio sources to transcribe them in your favourite text application.
+ It’s intended to be useful for journalists, students, scientists and whoever needs to transcribe audio files.
+ '';
+ homepage = https://gkarsay.github.io/parlatype/;
+ license = licenses.gpl3Plus;
+ maintainers = [ maintainers.melchips ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/audio/patchage/default.nix b/pkgs/applications/audio/patchage/default.nix
index 8425b48166e67fcb10811b2d59d423aef8ea4a15..7f3940e0ae9cf5ed41a9f7fb89caa692b6a5ff6a 100644
--- a/pkgs/applications/audio/patchage/default.nix
+++ b/pkgs/applications/audio/patchage/default.nix
@@ -1,5 +1,5 @@
{ stdenv, alsaLib, boost, dbus-glib, fetchsvn, ganv, glibmm
-, gtkmm2, libjack2, pkgconfig, python2
+, gtkmm2, libjack2, pkgconfig, python2, wafHook
}:
stdenv.mkDerivation rec {
@@ -13,13 +13,9 @@ stdenv.mkDerivation rec {
buildInputs = [
alsaLib boost dbus-glib ganv glibmm gtkmm2 libjack2
- pkgconfig python2
+ pkgconfig python2 wafHook
];
- configurePhase = "python waf configure --prefix=$out";
- buildPhase = "python waf build";
- installPhase = "python waf install";
-
meta = {
description = "Modular patch bay for Jack and ALSA systems";
homepage = http://non.tuxfamily.org;
diff --git a/pkgs/applications/audio/paulstretch/default.nix b/pkgs/applications/audio/paulstretch/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..b2c049c9eeebdb050821f6e5769004d924aeca14
--- /dev/null
+++ b/pkgs/applications/audio/paulstretch/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, fetchFromGitHub, audiofile, libvorbis, fltk, fftw, fftwFloat,
+minixml, pkgconfig, libmad, libjack2, portaudio, libsamplerate }:
+
+stdenv.mkDerivation {
+ pname = "paulstretch";
+ version = "2.2-2";
+
+ src = fetchFromGitHub {
+ owner = "paulnasca";
+ repo = "paulstretch_cpp";
+ rev = "7f5c3993abe420661ea0b808304b0e2b4b0048c5";
+ sha256 = "06dy03dbz1yznhsn0xvsnkpc5drzwrgxbxdx0hfpsjn2xcg0jrnc";
+ };
+
+ nativeBuildInputs = [ pkgconfig ];
+
+ buildInputs = [
+ audiofile
+ libvorbis
+ fltk
+ fftw
+ fftwFloat
+ minixml
+ libmad
+ libjack2
+ portaudio
+ libsamplerate
+ ];
+
+ buildPhase = ''
+ bash compile_linux_fftw_jack.sh
+ '';
+
+ installPhase = ''
+ install -Dm555 ./paulstretch $out/bin/paulstretch
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Produces high quality extreme sound stretching";
+ longDescription = ''
+ This is a program for stretching the audio. It is suitable only for
+ extreme sound stretching of the audio (like 50x) and for applying
+ special effects by "spectral smoothing" the sounds.
+ It can transform any sound/music to a texture.
+ '';
+ homepage = http://hypermammut.sourceforge.net/paulstretch/;
+ platforms = platforms.linux;
+ license = licenses.gpl2;
+ };
+}
diff --git a/pkgs/applications/audio/pavucontrol/default.nix b/pkgs/applications/audio/pavucontrol/default.nix
index 4f64be02fd521e3db9a0bfc03a0770450d6972cb..ce2979a5e530591f1c97d815c85c1658f537c191 100644
--- a/pkgs/applications/audio/pavucontrol/default.nix
+++ b/pkgs/applications/audio/pavucontrol/default.nix
@@ -2,20 +2,22 @@
, libcanberra-gtk3, makeWrapper, gnome3 }:
stdenv.mkDerivation rec {
- name = "pavucontrol-3.0";
+ pname = "pavucontrol";
+ version = "4.0";
src = fetchurl {
- url = "https://freedesktop.org/software/pulseaudio/pavucontrol/${name}.tar.xz";
- sha256 = "14486c6lmmirkhscbfygz114f6yzf97h35n3h3pdr27w4mdfmlmk";
+ url = "https://freedesktop.org/software/pulseaudio/${pname}/${pname}-${version}.tar.xz";
+ sha256 = "1qhlkl3g8d7h72xjskii3g1l7la2cavwp69909pzmbi2jyn5pi4g";
};
preFixup = ''
wrapProgram "$out/bin/pavucontrol" \
+ --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
'';
buildInputs = [ libpulseaudio gtkmm3 libcanberra-gtk3 makeWrapper
- gnome3.defaultIconTheme ];
+ gnome3.adwaita-icon-theme ];
nativeBuildInputs = [ pkgconfig intltool ];
@@ -34,7 +36,7 @@ stdenv.mkDerivation rec {
license = stdenv.lib.licenses.gpl2Plus;
- maintainers = with maintainers; [ abbradar jgeerds ];
+ maintainers = with maintainers; [ abbradar ];
platforms = platforms.linux;
};
}
diff --git a/pkgs/applications/audio/pianobar/default.nix b/pkgs/applications/audio/pianobar/default.nix
index 1518ed9b79421d599e30ccc7e24b688d7878584b..40e45a76b4bf9c66906ba6d86ee0255dd8b9029e 100644
--- a/pkgs/applications/audio/pianobar/default.nix
+++ b/pkgs/applications/audio/pianobar/default.nix
@@ -1,16 +1,16 @@
-{ fetchurl, stdenv, pkgconfig, libao, json_c, libgcrypt, libav, curl }:
+{ fetchurl, stdenv, pkgconfig, libao, json_c, libgcrypt, ffmpeg, curl }:
stdenv.mkDerivation rec {
- name = "pianobar-2016.06.02";
+ name = "pianobar-2019.02.14";
src = fetchurl {
url = "http://6xq.net/projects/pianobar/${name}.tar.bz2";
- sha256 = "0n9544bfsdp04xqcjm4nhfvp357dx0c3gpys0rjkq09nzv8b1vy6";
+ sha256 = "07z21vmlqpmvb3294r384iqbx972rwcx6chrdlkfv4hlnc9h7gf0";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [
- libao json_c libgcrypt libav curl
+ libao json_c libgcrypt ffmpeg curl
];
makeFlags="PREFIX=$(out)";
diff --git a/pkgs/applications/audio/pianobooster/default.nix b/pkgs/applications/audio/pianobooster/default.nix
index d013a26277e81e542347650ffac0ac2e4b8cf0fe..53afcdd2306aec82795cf5314eeb9acffaae3c14 100644
--- a/pkgs/applications/audio/pianobooster/default.nix
+++ b/pkgs/applications/audio/pianobooster/default.nix
@@ -17,6 +17,7 @@ stdenv.mkDerivation rec {
preConfigure = "cd src";
buildInputs = [ alsaLib cmake makeWrapper libGLU_combined qt4 ];
+ NIX_LDFLAGS = [ "-lGL" "-lpthread" ];
postInstall = ''
wrapProgram $out/bin/pianobooster \
diff --git a/pkgs/applications/audio/picard/default.nix b/pkgs/applications/audio/picard/default.nix
index d7e6173da9ad169fb47a1496f37651ac6f22e3eb..1ecb8be09ddfe1a86a6bfbaf63125226659d2833 100644
--- a/pkgs/applications/audio/picard/default.nix
+++ b/pkgs/applications/audio/picard/default.nix
@@ -1,21 +1,24 @@
-{ stdenv, python2Packages, fetchurl, gettext }:
+{ stdenv, python3Packages, fetchFromGitHub, gettext, chromaprint }:
let
- pythonPackages = python2Packages;
+ pythonPackages = python3Packages;
in pythonPackages.buildPythonApplication rec {
pname = "picard";
- version = "1.4.2";
+ version = "2.1.3";
- src = fetchurl {
- url = "http://ftp.musicbrainz.org/pub/musicbrainz/picard/picard-${version}.tar.gz";
- sha256 = "0d12k40d9fbcn801gp5zdsgvjdrh4g97vda3ga16rmmvfwwfxbgh";
+ src = fetchFromGitHub {
+ owner = "metabrainz";
+ repo = pname;
+ rev = "release-${version}";
+ sha256 = "1armg8vpvnbpk7rrfk9q7nj5gm56rza00ni9qwdyqpxp1xaz6apj";
};
- buildInputs = [ gettext ];
+ nativeBuildInputs = [ gettext ];
propagatedBuildInputs = with pythonPackages; [
- pyqt4
+ pyqt5
mutagen
+ chromaprint
discid
];
@@ -23,7 +26,10 @@ in pythonPackages.buildPythonApplication rec {
python setup.py install --prefix="$out"
'';
- doCheck = false;
+ prePatch = ''
+ # Pesky unicode punctuation.
+ substituteInPlace setup.cfg --replace "‘" "'"
+ '';
meta = with stdenv.lib; {
homepage = http://musicbrainz.org/doc/MusicBrainz_Picard;
diff --git a/pkgs/applications/audio/pithos/default.nix b/pkgs/applications/audio/pithos/default.nix
index 1d3fffb549d79757cd1c3149313377ab74ef68eb..f2c798d1e6e7c9f7c849540b2cb644acff4ee50f 100644
--- a/pkgs/applications/audio/pithos/default.nix
+++ b/pkgs/applications/audio/pithos/default.nix
@@ -1,4 +1,4 @@
-{ fetchFromGitHub, stdenv, pythonPackages, gtk3, gobjectIntrospection, libnotify
+{ fetchFromGitHub, stdenv, pythonPackages, gtk3, gobject-introspection, libnotify
, gst_all_1, wrapGAppsHook }:
pythonPackages.buildPythonApplication rec {
@@ -27,7 +27,7 @@ pythonPackages.buildPythonApplication rec {
buildInputs = [ wrapGAppsHook ];
propagatedBuildInputs =
- [ gtk3 gobjectIntrospection libnotify ] ++
+ [ gtk3 gobject-introspection libnotify ] ++
(with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-ugly gst-plugins-bad ]) ++
(with pythonPackages; [ pygobject3 pylast ]);
@@ -35,6 +35,6 @@ pythonPackages.buildPythonApplication rec {
description = "Pandora Internet Radio player for GNOME";
homepage = https://pithos.github.io/;
license = licenses.gpl3;
- maintainers = with maintainers; [ obadz jgeerds ];
+ maintainers = with maintainers; [ obadz ];
};
}
diff --git a/pkgs/applications/audio/praat/default.nix b/pkgs/applications/audio/praat/default.nix
index 8d49c49f0c6cd664ab89611beb54ba67854eaf62..5db5035c8352c9aef7050b21dbe51afa9c5a601c 100644
--- a/pkgs/applications/audio/praat/default.nix
+++ b/pkgs/applications/audio/praat/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "praat-${version}";
- version = "6.0.40";
+ version = "6.0.43";
src = fetchurl {
url = "https://github.com/praat/praat/archive/v${version}.tar.gz";
- sha256 = "168qrrr59qxii265vba7pj6f61lzq5lk9c43zcda0wmmjp87bq1x";
+ sha256 = "1l13bvnl7sv8v6s5z63201bhzavnj6bnqcj446akippsam13z4sf";
};
configurePhase = ''
diff --git a/pkgs/applications/audio/puddletag/default.nix b/pkgs/applications/audio/puddletag/default.nix
index 915d7fcbd98b80bba3c2e358c5f39defbc559bfc..3a6cd298557f86aed7383a0073b32b3cfbf3f9ab 100644
--- a/pkgs/applications/audio/puddletag/default.nix
+++ b/pkgs/applications/audio/puddletag/default.nix
@@ -28,8 +28,8 @@ python2Packages.buildPythonApplication rec {
dontStrip = true; # we are not generating any binaries
meta = with stdenv.lib; {
- homepage = https://puddletag.net;
description = "An audio tag editor similar to the Windows program, Mp3tag";
+ homepage = https://docs.puddletag.net;
license = licenses.gpl3;
maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.linux;
diff --git a/pkgs/applications/audio/pulseaudio-modules-bt/default.nix b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..8a0762d5176bc4f57ade16a48ed6dc809f1788bf
--- /dev/null
+++ b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
@@ -0,0 +1,83 @@
+{ stdenv
+, runCommand
+, fetchFromGitHub
+, pulseaudio
+, pkgconfig
+, ffmpeg_4
+, patchelf
+, fdk_aac
+, libtool
+, ldacbt
+, cmake
+, bluez
+, dbus
+, sbc
+, lib
+}:
+
+let
+ pulseSources = runCommand "pulseaudio-sources" {} ''
+ mkdir $out
+ tar -xf ${pulseaudio.src}
+ mv pulseaudio*/* $out/
+ '';
+
+in stdenv.mkDerivation rec {
+ name = "pulseaudio-modules-bt-${version}";
+ version = "1.1.99";
+
+ src = fetchFromGitHub {
+ owner = "EHfive";
+ repo = "pulseaudio-modules-bt";
+ rev = "v${version}";
+ sha256 = "0x670xbd62r3fs9a8pa5p4ppvxn6m64hvlrqa702gvikcvyrmwcg";
+ };
+
+ patches = [
+ ./fix-install-path.patch
+ ];
+
+ nativeBuildInputs = [
+ pkgconfig
+ patchelf
+ cmake
+ ];
+
+ buildInputs = [
+ pulseaudio
+ ffmpeg_4
+ fdk_aac
+ libtool
+ ldacbt
+ bluez
+ dbus
+ sbc
+ ];
+
+ postPatch = ''
+ # Upstream bundles pulseaudio as a submodule
+ rm -r pa
+ ln -s ${pulseSources} pa
+
+ # Pulseaudio version is detected with a -rebootstrapped suffix which build system assumptions
+ substituteInPlace config.h.in --replace PulseAudio_VERSION ${pulseaudio.version}
+ substituteInPlace CMakeLists.txt --replace '${"\${PulseAudio_VERSION}"}' ${pulseaudio.version}
+ '';
+
+ postFixup = ''
+ for so in $out/lib/pulse-${pulseaudio.version}/modules/*.so; do
+ orig_rpath=$(patchelf --print-rpath "$so")
+ patchelf \
+ --set-rpath "${ldacbt}/lib:${lib.getLib ffmpeg_4}/lib:$out/lib/pulse-${pulseaudio.version}/modules:$orig_rpath" \
+ "$so"
+ done
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/EHfive/pulseaudio-modules-bt;
+ description = "LDAC, aptX, aptX HD, AAC codecs (A2DP Audio) support for Linux PulseAudio";
+ platforms = platforms.linux;
+ license = licenses.mit;
+ maintainers = with maintainers; [ adisbladis ];
+ };
+}
diff --git a/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch b/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch
new file mode 100644
index 0000000000000000000000000000000000000000..3c498fe8af1b5d3d7004f9536f2c68601f9e3ac2
--- /dev/null
+++ b/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch
@@ -0,0 +1,11 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8d20dbf..63fe7ba 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -213,5 +213,4 @@ INSTALL(TARGETS
+ module-bluez5-device
+ module-bluetooth-discover
+ module-bluetooth-policy
+- LIBRARY DESTINATION ${PulseAudio_modlibexecdir})
+-
++ LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pulse-${PulseAudio_VERSION}/modules/)
diff --git a/pkgs/applications/audio/pulseeffects/default.nix b/pkgs/applications/audio/pulseeffects/default.nix
index 313f737cd422926b92547efb951accecd87d6f4c..0cbb022eb2011ac48921374a92c631604f6b66a7 100644
--- a/pkgs/applications/audio/pulseeffects/default.nix
+++ b/pkgs/applications/audio/pulseeffects/default.nix
@@ -4,6 +4,7 @@
, ninja
, pkgconfig
, itstool
+, python3
, libxml2
, desktop-file-utils
, wrapGAppsHook
@@ -23,12 +24,14 @@
, libsndfile
, libebur128
, boost
+, dbus
, fftwFloat
, calf
, zita-convolver
, zam-plugins
, rubberband
, mda_lv2
+, lsp-plugins
, hicolor-icon-theme
}:
@@ -36,20 +39,21 @@ let
lv2Plugins = [
calf # limiter, compressor exciter, bass enhancer and others
mda_lv2 # loudness
+ lsp-plugins # delay
];
ladspaPlugins = [
rubberband # pitch shifting
zam-plugins # maximizer
];
in stdenv.mkDerivation rec {
- name = "pulseeffects-${version}";
- version = "4.2.8";
+ pname = "pulseeffects";
+ version = "4.5.9";
src = fetchFromGitHub {
owner = "wwmm";
repo = "pulseeffects";
rev = "v${version}";
- sha256 = "0ckl0640n6lhk0gcmnmwngajkf46rrd8bxfh7xy5sq6qmm01dhdd";
+ sha256 = "19pqi9wix359hdrslzmi9sz0dzz03pdwqvdyzw3i5rdny01skdfw";
};
nativeBuildInputs = [
@@ -58,6 +62,7 @@ in stdenv.mkDerivation rec {
pkgconfig
libxml2
itstool
+ python3
desktop-file-utils
wrapGAppsHook
];
@@ -69,8 +74,8 @@ in stdenv.mkDerivation rec {
gtk3
gtkmm3
gst_all_1.gstreamer
- gst_all_1.gst-plugins-base
- gst_all_1.gst-plugins-good
+ gst_all_1.gst-plugins-base # gst-fft
+ gst_all_1.gst-plugins-good # pulsesrc
gst_all_1.gst-plugins-bad
lilv lv2 serd sord sratom
libbs2b
@@ -78,6 +83,7 @@ in stdenv.mkDerivation rec {
libsamplerate
libsndfile
boost
+ dbus
fftwFloat
zita-convolver
hicolor-icon-theme
@@ -89,8 +95,6 @@ in stdenv.mkDerivation rec {
'';
preFixup = ''
- addToSearchPath GST_PLUGIN_SYSTEM_PATH_1_0 $out/lib/gstreamer-1.0
-
gappsWrapperArgs+=(
--set LV2_PATH "${stdenv.lib.makeSearchPath "lib/lv2" lv2Plugins}"
--set LADSPA_PATH "${stdenv.lib.makeSearchPath "lib/ladspa" ladspaPlugins}"
diff --git a/pkgs/applications/audio/puredata/default.nix b/pkgs/applications/audio/puredata/default.nix
index 6aca7e9ce22611bc18fc302bf3960739429a86d8..6ade9042b53275e77ce75f93997371c23b37061b 100644
--- a/pkgs/applications/audio/puredata/default.nix
+++ b/pkgs/applications/audio/puredata/default.nix
@@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "puredata-${version}";
- version = "0.48-0";
+ version = "0.49-0";
src = fetchurl {
url = "http://msp.ucsd.edu/Software/pd-${version}.src.tar.gz";
- sha256 = "0wy9kl2v00fl27x4mfzhbca415hpaisp6ls8a6mkl01qbw20krny";
+ sha256 = "18rzqbpgnnvyslap7k0ly87aw1bbxkb0rk5agpr423ibs9slxq6j";
};
nativeBuildInputs = [ autoreconfHook gettext makeWrapper ];
@@ -20,11 +20,9 @@ stdenv.mkDerivation rec {
"--enable-jack"
"--enable-fftw"
"--disable-portaudio"
+ "--disable-oss"
];
- # https://github.com/pure-data/pure-data/issues/188
- # --disable-oss
-
postInstall = ''
wrapProgram $out/bin/pd --prefix PATH : ${tk}/bin
'';
diff --git a/pkgs/applications/audio/qjackctl/default.nix b/pkgs/applications/audio/qjackctl/default.nix
index 83608014f14251a9aa6fc238bb328957d2ce0cf4..089fffdc0e8325942894adf302b6bd10f73d003e 100644
--- a/pkgs/applications/audio/qjackctl/default.nix
+++ b/pkgs/applications/audio/qjackctl/default.nix
@@ -1,14 +1,14 @@
{ stdenv, fetchurl, pkgconfig, alsaLib, libjack2, dbus, qtbase, qttools, qtx11extras }:
stdenv.mkDerivation rec {
- version = "0.5.3";
+ version = "0.5.6";
name = "qjackctl-${version}";
# some dependencies such as killall have to be installed additionally
src = fetchurl {
url = "mirror://sourceforge/qjackctl/${name}.tar.gz";
- sha256 = "0x08af8m5l8qy9av3dlldsg58ny9nc69h1s4i6hqkvj24jwy6fw1";
+ sha256 = "0wlmbb9m7cf3wr7c2h2hji18592x2b119m7mx85wksjs6rjaq2mj";
};
buildInputs = [
diff --git a/pkgs/applications/audio/qmidinet/default.nix b/pkgs/applications/audio/qmidinet/default.nix
index 37677cc211cc270fd0550a704d32bc7bb0961995..21bcd158f7ae571bbd08bae7cb11e53a6d88945a 100644
--- a/pkgs/applications/audio/qmidinet/default.nix
+++ b/pkgs/applications/audio/qmidinet/default.nix
@@ -1,12 +1,12 @@
{ stdenv, fetchurl, pkgconfig, qt5, alsaLib, libjack2 }:
stdenv.mkDerivation rec {
- version = "0.5.2";
+ version = "0.5.3";
name = "qmidinet-${version}";
src = fetchurl {
url = "mirror://sourceforge/qmidinet/${name}.tar.gz";
- sha256 = "0y2w3rymvc35r291sp2qaxn36wjwvxzk2iaw9y30q9fqc0vlpdns";
+ sha256 = "0li6iz1anm8pzz7j12yrfyxlyslsfsksmz0kk0iapa4yx3kifn10";
};
hardeningDisable = [ "format" ];
diff --git a/pkgs/applications/audio/qmmp/default.nix b/pkgs/applications/audio/qmmp/default.nix
index dc12baefed140251a11bcd819488f71e373e56bd..eab498b9624946d82f13b93bb81d3c5c35054d03 100644
--- a/pkgs/applications/audio/qmmp/default.nix
+++ b/pkgs/applications/audio/qmmp/default.nix
@@ -29,11 +29,11 @@
# handle that.
stdenv.mkDerivation rec {
- name = "qmmp-1.2.2";
+ name = "qmmp-1.3.1";
src = fetchurl {
url = "http://qmmp.ylsoftware.com/files/${name}.tar.bz2";
- sha256 = "01nnyg8m3p3px1fj3lfsqqv9zh1388dwx1bm2qv4v87jywimgp79";
+ sha256 = "1dmybzibpr6hpr2iv1wvrjgww842mng2x0rh1mr8gs8j191xvlhw";
};
buildInputs =
diff --git a/pkgs/applications/audio/qsampler/default.nix b/pkgs/applications/audio/qsampler/default.nix
index 8ad251652d0e5edf3a168ec2f901d28a2dca28d6..aef0d013e9fec97ae94af0798dccf19d1d09cfd2 100644
--- a/pkgs/applications/audio/qsampler/default.nix
+++ b/pkgs/applications/audio/qsampler/default.nix
@@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
name = "qsampler-${version}";
- version = "0.5.2";
+ version = "0.5.4";
src = fetchurl {
url = "mirror://sourceforge/qsampler/${name}.tar.gz";
- sha256 = "0xb0j57k03pkdl7yl5mcv1i21ljnxcq6b9h3zp6mris916lj45zq";
+ sha256 = "1hk0j63zzdyji5dd89spbyw79i74n28zjryyy0a4gsaq0m7j2dry";
};
nativeBuildInputs = [ autoconf automake libtool pkgconfig qttools ];
diff --git a/pkgs/applications/audio/qsynth/default.nix b/pkgs/applications/audio/qsynth/default.nix
index 26adc63943498e865c02803f8542c16af3662355..b146513d735079787e1548306c8a7d1ac947e8e7 100644
--- a/pkgs/applications/audio/qsynth/default.nix
+++ b/pkgs/applications/audio/qsynth/default.nix
@@ -1,23 +1,17 @@
-{ stdenv, fetchurl, alsaLib, fluidsynth, libjack2, qtbase, qttools, qtx11extras, cmake, pkgconfig }:
+{ stdenv, fetchurl, alsaLib, fluidsynth, libjack2, qt5, autoconf, pkgconfig }:
stdenv.mkDerivation rec {
name = "qsynth-${version}";
- version = "0.5.2";
+ version = "0.5.6";
src = fetchurl {
url = "mirror://sourceforge/qsynth/${name}.tar.gz";
- sha256 = "1rfkaxq1pyc4hv3l0i6wicianbcbm1wp53kh9i5d4jsljgisd1dv";
+ sha256 = "0h4hhja8qbyzd6v24flw9wr4mwl03nplryx1gyrppn7sg13l1sx6";
};
- # cmake is looking for qsynth.desktop.in and fails if it doesn't find it
- # seems like a bug and can presumable go in the next version after 0.5.2
- postPatch = ''
- mv src/qsynth.desktop src/qsynth.desktop.in
- '';
+ nativeBuildInputs = [ autoconf pkgconfig ];
- nativeBuildInputs = [ cmake pkgconfig ];
-
- buildInputs = [ alsaLib fluidsynth libjack2 qtbase qttools qtx11extras ];
+ buildInputs = [ alsaLib fluidsynth libjack2 qt5.qtbase qt5.qttools qt5.qtx11extras ];
enableParallelBuilding = true;
diff --git a/pkgs/applications/audio/qtractor/default.nix b/pkgs/applications/audio/qtractor/default.nix
index 9e0abac5ce47b5f4d374b00d6744ebe121e3c807..703ce5c5cf9098e57e5d8b8c39ddd40d2c95c241 100644
--- a/pkgs/applications/audio/qtractor/default.nix
+++ b/pkgs/applications/audio/qtractor/default.nix
@@ -1,21 +1,24 @@
-{ alsaLib, autoconf, automake, dssi, fetchurl, gtk2, libjack2
+{ alsaLib, autoconf, automake, dssi, fetchurl, libjack2
, ladspaH, ladspaPlugins, liblo, libmad, libsamplerate, libsndfile
-, libtool, libvorbis, lilv, lv2, pkgconfig, qt4, rubberband, serd
+, libtool, libvorbis, lilv, lv2, pkgconfig, qttools, qtbase, rubberband, serd
, sord, sratom, stdenv, suil }:
stdenv.mkDerivation rec {
- version = "0.6.7";
- name = "qtractor-${version}";
+ pname = "qtractor";
+ version = "0.9.6";
src = fetchurl {
- url = "mirror://sourceforge/qtractor/${name}.tar.gz";
- sha256 = "0h5nblfkl4s412c9f02b40nb8c8jq8ypz67z2qn3hkvhx6i9yxsg";
+ url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
+ sha256 = "06sa4wl8zr0k8dnjiil0gjwnhrkq95h50xv56ih1y8jgyzxchaxp";
};
+ nativeBuildInputs = [
+ autoconf automake libtool pkgconfig qttools
+ ];
buildInputs =
- [ alsaLib autoconf automake dssi gtk2 libjack2 ladspaH
+ [ alsaLib dssi libjack2 ladspaH
ladspaPlugins liblo libmad libsamplerate libsndfile libtool
- libvorbis lilv lv2 pkgconfig qt4 rubberband serd sord sratom
+ libvorbis lilv lv2 qtbase rubberband serd sord sratom
suil
];
diff --git a/pkgs/applications/audio/quodlibet/default.nix b/pkgs/applications/audio/quodlibet/default.nix
index f1a22bd839a0da6e3963b7c795acdef71b60c285..d457f25e3162b50d7e23b612b6916002e65d7697 100644
--- a/pkgs/applications/audio/quodlibet/default.nix
+++ b/pkgs/applications/audio/quodlibet/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, python3, wrapGAppsHook, gettext, intltool, libsoup, gnome3, gtk3, gdk_pixbuf,
- tag ? "", xvfb_run, dbus, glibcLocales, glib, gobjectIntrospection,
+{ stdenv, fetchurl, python3, wrapGAppsHook, gettext, libsoup, gnome3, gtk3, gdk_pixbuf,
+ tag ? "", xvfb_run, dbus, glibcLocales, glib, glib-networking, gobject-introspection,
gst_all_1, withGstPlugins ? true,
xineBackend ? false, xineLib,
withDbusPython ? false, withPyInotify ? false, withMusicBrainzNgs ? false, withPahoMqtt ? false,
@@ -9,22 +9,18 @@
let optionals = stdenv.lib.optionals; in
python3.pkgs.buildPythonApplication rec {
pname = "quodlibet${tag}";
- version = "4.1.0";
-
- # XXX, tests fail
- # https://github.com/quodlibet/quodlibet/issues/2820
- doCheck = false;
+ version = "4.2.1";
src = fetchurl {
url = "https://github.com/quodlibet/quodlibet/releases/download/release-${version}/quodlibet-${version}.tar.gz";
- sha256 = "1vcxx4sz5i4ag74pjpdfw7jkwxfb8jhvn8igcjwd5cccw4gscm2z";
+ sha256 = "0b1rvr4hqs2bjmhayms7vxxkn3d92k9v7p1269rjhf11hpk122l7";
};
- nativeBuildInputs = [ wrapGAppsHook gettext intltool ];
+ nativeBuildInputs = [ wrapGAppsHook gettext ];
checkInputs = with python3.pkgs; [ pytest pytest_xdist pyflakes pycodestyle polib xvfb_run dbus.daemon glibcLocales ];
- buildInputs = [ gnome3.defaultIconTheme libsoup glib gtk3 webkitgtk gdk_pixbuf keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi gobjectIntrospection ]
+ buildInputs = [ gnome3.adwaita-icon-theme libsoup glib glib-networking gtk3 webkitgtk gdk_pixbuf keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi gobject-introspection ]
++ (if xineBackend then [ xineLib ] else with gst_all_1;
[ gstreamer gst-plugins-base ] ++ optionals withGstPlugins [ gst-plugins-good gst-plugins-ugly gst-plugins-bad ]);
@@ -39,13 +35,11 @@ python3.pkgs.buildPythonApplication rec {
checkPhase = ''
runHook preCheck
- checkHomeDir=$(mktemp -d)
- mkdir -p $checkHomeDir/.cache/thumbnails/normal # Required by TThumb.test_recreate_broken_cache_file
env XDG_DATA_DIRS="$out/share:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS" \
- HOME=$checkHomeDir \
+ HOME=$(mktemp -d) \
xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
--config-file=${dbus.daemon}/share/dbus-1/session.conf \
- py.test
+ py.test${stdenv.lib.optionalString (xineBackend || !withGstPlugins) " --ignore=tests/plugin/test_replaygain.py"}
runHook postCheck
'';
diff --git a/pkgs/applications/audio/radiotray-ng/default.nix b/pkgs/applications/audio/radiotray-ng/default.nix
index 82bc42143c67e9d78d12272850ed6e6699617596..91d82d686d03b7bfc8d7f181f457ccda0ed3ebe4 100644
--- a/pkgs/applications/audio/radiotray-ng/default.nix
+++ b/pkgs/applications/audio/radiotray-ng/default.nix
@@ -10,7 +10,7 @@
# GUI/Desktop
, dbus
, glibmm
-, gnome3
+, gsettings-desktop-schemas
, hicolor-icon-theme
, libappindicator-gtk3
, libnotify
@@ -40,13 +40,13 @@ let
in
stdenv.mkDerivation rec {
name = "radiotray-ng-${version}";
- version = "0.2.3";
+ version = "0.2.5";
src = fetchFromGitHub {
owner = "ebruck";
repo = "radiotray-ng";
rev = "v${version}";
- sha256 = "1sq7bc0dswv3vv56w527z268ib0pyhdxyf25388vnj1fv0c146wc";
+ sha256 = "1crvpn1mgrv7bd2k683mpgs59785mkrjvmp1f14iyq4qrr0f9zzi";
};
nativeBuildInputs = [ cmake pkgconfig wrapGAppsHook makeWrapper ];
@@ -54,13 +54,15 @@ stdenv.mkDerivation rec {
buildInputs = [
curl
boost jsoncpp libbsd pcre
- glibmm hicolor-icon-theme gnome3.gsettings-desktop-schemas libappindicator-gtk3 libnotify
+ glibmm hicolor-icon-theme gsettings-desktop-schemas libappindicator-gtk3 libnotify
libxdg_basedir
lsb-release
wxGTK
] ++ gstInputs
++ pythonInputs;
+ patches = [ ./no-dl-googletest.patch ];
+
postPatch = ''
for x in debian/CMakeLists.txt include/radiotray-ng/common.hpp data/*.desktop; do
substituteInPlace $x --replace /usr $out
@@ -80,9 +82,7 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
checkInputs = [ gtest ];
- checkPhase = "ctest";
- # doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
- doCheck = false; # fails to pick up supplied gtest, tries to download it instead
+ doCheck = !stdenv.isAarch64; # single failure that I can't explain
preFixup = ''
gappsWrapperArgs+=(--suffix PATH : ${stdenv.lib.makeBinPath [ dbus ]})
diff --git a/pkgs/applications/audio/radiotray-ng/no-dl-googletest.patch b/pkgs/applications/audio/radiotray-ng/no-dl-googletest.patch
new file mode 100644
index 0000000000000000000000000000000000000000..3578d2d72b03369077c8b4947e22525ca94b1217
--- /dev/null
+++ b/pkgs/applications/audio/radiotray-ng/no-dl-googletest.patch
@@ -0,0 +1,55 @@
+From 2ce91cd2244e61d54e0c0a3b26851912240b0667 Mon Sep 17 00:00:00 2001
+From: Will Dietz
+Date: Sat, 16 Mar 2019 11:40:00 -0500
+Subject: [PATCH] don't download googletest
+
+---
+ CMakeLists.txt | 18 ------------------
+ tests/CMakeLists.txt | 1 -
+ 2 files changed, 19 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index fc1b9de..301c266 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -70,25 +70,7 @@ endif()
+
+ # build tests? Then we need googletest...
+ if (BUILD_TESTS)
+- include(ExternalProject)
+-
+- ExternalProject_Add(googletest
+- PREFIX "${CMAKE_CURRENT_BINARY_DIR}/googletest"
+- URL https://github.com/google/googletest/archive/release-1.8.1.tar.gz
+- URL_HASH SHA256=9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c
+- TIMEOUT 30
+- DOWNLOAD_NO_PROGRESS true
+- INSTALL_COMMAND "")
+-
+- ExternalProject_Get_Property(googletest SOURCE_DIR)
+- include_directories(${SOURCE_DIR}/googlemock/include ${SOURCE_DIR}/googletest/include)
+- ExternalProject_Get_Property(googletest BINARY_DIR)
+- link_directories(${BINARY_DIR}/googlemock ${BINARY_DIR}/googlemock/gtest)
+ set(GMOCK_BOTH_LIBRARIES gmock_main gmock gtest)
+- set_property(DIRECTORY PROPERTY CLEAN_NO_CUSTOM "${CMAKE_CURRENT_BINARY_DIR}/googletest")
+- unset(SOURCE_DIR)
+- unset(BINARY_DIR)
+-
+ enable_testing()
+ add_subdirectory(tests)
+ add_subdirectory(tests/runners/)
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index 859c048..58ab5c2 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -2,7 +2,6 @@ include(GoogleTest)
+
+ function(add_gmock_test target)
+ add_executable(${target} ${ARGN})
+- add_dependencies(${target} googletest)
+ target_link_libraries(${target} config playlist bookmarks event_bus ${GMOCK_BOTH_LIBRARIES} ${XDG_BASEDIR_LIBRARIES} ${Boost_LIBRARIES} ${CURL_LIBRARIES} ${JSONCPP_LIBRARIES} pthread)
+ target_include_directories(${target} PRIVATE ${JSONCPP_INCLUDE_DIRS})
+ gtest_discover_tests(${target})
+--
+2.21.GIT
+
diff --git a/pkgs/applications/audio/reaper/default.nix b/pkgs/applications/audio/reaper/default.nix
index 28aaf8a5354f4d57757da8c61b557eba1ae6d477..8e04b51753d7217dc7c5c4b808bebbece14a6791 100644
--- a/pkgs/applications/audio/reaper/default.nix
+++ b/pkgs/applications/audio/reaper/default.nix
@@ -1,68 +1,47 @@
{ stdenv, fetchurl, autoPatchelfHook, makeWrapper
, alsaLib, xorg
-, fetchFromGitHub, pkgconfig, gnome3
-, gnome2, gdk_pixbuf, cairo, glib, freetype
-, libpulseaudio
+, gnome3, gtk3, pango, gdk_pixbuf, cairo, glib, freetype
+, libpulseaudio, xdg_utils
}:
-let
- libSwell = stdenv.mkDerivation {
- name = "libSwell";
-
- src = fetchFromGitHub {
- owner = "justinfrankel";
- repo = "WDL";
- rev = "e87f5bdee7327b63398366fde6ec0a3f08bf600d";
- sha256 = "147idjqc6nc23w9krl8a9w571k5jx190z3id6ir6cr8zsx0lakdb";
- };
-
- nativeBuildInputs = [ pkgconfig ];
- buildInputs = [ gnome3.gtk ];
-
- buildPhase = ''
- cd WDL/swell
- make
- '';
-
- installPhase = ''
- mv libSwell.so $out
- '';
- };
-
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
name = "reaper-${version}";
- version = "5.94";
+ version = "5.973";
src = fetchurl {
url = "https://www.reaper.fm/files/${stdenv.lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_linux_x86_64.tar.xz";
- sha256 = "16g5q12wh1cfbl9wq03vb7vpsd870k7i7883z0wn492x7y9syz8z";
+ sha256 = "02ymi2rn29zrb71krx43nrpfldhkcvwry4gz228apff2hb2lmqdx";
};
nativeBuildInputs = [ autoPatchelfHook makeWrapper ];
buildInputs = [
alsaLib
- stdenv.cc.cc.lib
xorg.libX11
xorg.libXi
- gnome3.gtk
gdk_pixbuf
- gnome2.pango
+ pango
cairo
glib
freetype
+
+ xdg_utils
+ ];
+
+ runtimeDependencies = [
+ gtk3
];
dontBuild = true;
installPhase = ''
- ./install-reaper.sh --install $out/opt
+ XDG_DATA_HOME="$out/share" ./install-reaper.sh \
+ --install $out/opt \
+ --integrate-user-desktop
rm $out/opt/REAPER/uninstall-reaper.sh
- cp ${libSwell.out} $out/opt/REAPER/libSwell.so
-
wrapProgram $out/opt/REAPER/reaper \
--prefix LD_LIBRARY_PATH : ${libpulseaudio}/lib
diff --git a/pkgs/applications/audio/redoflacs/default.nix b/pkgs/applications/audio/redoflacs/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..1918fa9e3a991023be3726dcd2f3e1f915b6420f
--- /dev/null
+++ b/pkgs/applications/audio/redoflacs/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchFromGitHub, makeWrapper
+, flac, sox }:
+
+stdenv.mkDerivation rec {
+ name = "redoflacs-${version}";
+ version = "0.30.20150202";
+
+ src = fetchFromGitHub {
+ owner = "sirjaren";
+ repo = "redoflacs";
+ rev = "86c6f5becca0909dcb2a0cb9ed747a575d7a4735";
+ sha256 = "1gzlmh4vnf2fl0x8ig2n1f76082ngldsv85i27dv15y2m1kffw2j";
+ };
+
+ dontBuild = true;
+
+ nativeBuildInputs = [ makeWrapper ];
+
+ installPhase = ''
+ runHook preInstall
+
+ install -Dm755 -t $out/bin redoflacs
+ install -Dm644 -t $out/share/doc/redoflacs LICENSE *.md
+
+ runHook postInstall
+ '';
+
+ postFixup = ''
+ wrapProgram $out/bin/redoflacs \
+ --prefix PATH : ${stdenv.lib.makeBinPath [ flac sox ]}
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Parallel BASH commandline FLAC compressor, verifier, organizer, analyzer, and retagger";
+ homepage = src.meta.homepage;
+ license = licenses.gpl2;
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/applications/audio/renoise/default.nix b/pkgs/applications/audio/renoise/default.nix
index 24a2f1a8a60143f291bbae2aaea685b99237d1ae..081c4ab41acb47d6154e78eb726f40da29708ec5 100644
--- a/pkgs/applications/audio/renoise/default.nix
+++ b/pkgs/applications/audio/renoise/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, libX11, libXext, libXcursor, libXrandr, libjack2, alsaLib, releasePath ? null }:
+{ stdenv, fetchurl, libX11, libXext, libXcursor, libXrandr, libjack2, alsaLib
+, mpg123, releasePath ? null }:
with stdenv.lib;
@@ -17,7 +18,7 @@ stdenv.mkDerivation rec {
version = "3.1.0";
src =
- if stdenv.system == "x86_64-linux" then
+ if stdenv.hostPlatform.system == "x86_64-linux" then
if builtins.isNull releasePath then
fetchurl {
url = "https://files.renoise.com/demo/Renoise_${urlVersion version}_Demo_x86_64.tar.bz2";
@@ -25,7 +26,7 @@ stdenv.mkDerivation rec {
}
else
releasePath
- else if stdenv.system == "i686-linux" then
+ else if stdenv.hostPlatform.system == "i686-linux" then
if builtins.isNull releasePath then
fetchurl {
url = "http://files.renoise.com/demo/Renoise_${urlVersion version}_Demo_x86.tar.bz2";
@@ -35,7 +36,7 @@ stdenv.mkDerivation rec {
releasePath
else throw "Platform is not supported by Renoise";
- buildInputs = [ libX11 libXext libXcursor libXrandr alsaLib libjack2 ];
+ buildInputs = [ alsaLib libjack2 libX11 libXcursor libXext libXrandr ];
installPhase = ''
cp -r Resources $out
@@ -54,13 +55,18 @@ stdenv.mkDerivation rec {
mkdir $out/bin
ln -s $out/renoise $out/bin/renoise
+ '';
- patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) --set-rpath $out/lib $out/renoise
+ postFixup = ''
+ patchelf \
+ --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
+ --set-rpath ${mpg123}/lib:$out/lib \
+ $out/renoise
'';
meta = {
description = "Modern tracker-based DAW";
- homepage = http://www.renoise.com/;
+ homepage = https://www.renoise.com/;
license = licenses.unfree;
maintainers = [];
platforms = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/audio/rhvoice/default.nix b/pkgs/applications/audio/rhvoice/default.nix
index 65cb7dab34a1f050b980e6d25df5ee7820fbbf4d..6516532df33f4c1208d58b86a2ed8dae1cdd237f 100644
--- a/pkgs/applications/audio/rhvoice/default.nix
+++ b/pkgs/applications/audio/rhvoice/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, pkgconfig, fetchFromGitHub, scons, python, glibmm, libpulseaudio, libao
-}:
+{ stdenv, lib, pkgconfig, fetchFromGitHub, scons
+, python, glibmm, libpulseaudio, libao }:
let
version = "unstable-2018-02-10";
@@ -30,14 +30,6 @@ in stdenv.mkDerivation rec {
patches = [ ./honor_nix_environment.patch ];
- buildPhase = ''
- scons prefix=$out
- '';
-
- installPhase = ''
- scons install
- '';
-
meta = {
description = "A free and open source speech synthesizer for Russian language and others";
homepage = https://github.com/Olga-Yakovleva/RHVoice/wiki;
diff --git a/pkgs/applications/audio/rhythmbox/default.nix b/pkgs/applications/audio/rhythmbox/default.nix
index 8dab9e32f982a47f0f4223adfbb52df698a7873e..24b342a26a92d3465199f9316307846cc07a952b 100644
--- a/pkgs/applications/audio/rhythmbox/default.nix
+++ b/pkgs/applications/audio/rhythmbox/default.nix
@@ -4,8 +4,10 @@
, perlPackages
, gtk3
, intltool
+, libpeas
, libsoup
, gnome3
+, totem-pl-parser
, tdb
, json-glib
, itstool
@@ -15,24 +17,15 @@
}:
let
pname = "rhythmbox";
- version = "3.4.2";
+ version = "3.4.3";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
- url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
- sha256 = "0hzcns8gf5yb0rm4ss8jd8qzarcaplp5cylk6plwilsqfvxj4xn2";
+ url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
+ sha256 = "1yx3n7p9vmv23jsv98fxwq95n78awdxqm8idhyhxx2d6vk4w1hgx";
};
- patches = [
- # build with GStreamer 1.14 https://bugzilla.gnome.org/show_bug.cgi?id=788706
- (fetchurl {
- name = "fmradio-Fix-build-with-GStreamer-master.patch";
- url = https://bugzilla.gnome.org/attachment.cgi?id=361178;
- sha256 = "1h09mimlglj9hcmc3pfp0d6c277mqh2khwv9fryk43pkv3904d2w";
- })
- ];
-
nativeBuildInputs = [
pkgconfig
intltool perl perlPackages.XMLParser
@@ -47,9 +40,9 @@ in stdenv.mkDerivation rec {
json-glib
gtk3
- gnome3.libpeas
- gnome3.totem-pl-parser
- gnome3.defaultIconTheme
+ libpeas
+ totem-pl-parser
+ gnome3.adwaita-icon-theme
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
diff --git a/pkgs/applications/audio/rosegarden/default.nix b/pkgs/applications/audio/rosegarden/default.nix
index e57d85de05a952f001facbc69a6a75e31cbfcb5f..55e3b55472b84cbf740f0e8201395ed82f60b99a 100644
--- a/pkgs/applications/audio/rosegarden/default.nix
+++ b/pkgs/applications/audio/rosegarden/default.nix
@@ -3,12 +3,12 @@
, liblo, liblrdf, libsamplerate, libsndfile, lirc ? null, qtbase }:
stdenv.mkDerivation (rec {
- version = "17.12.1";
+ version = "18.12";
name = "rosegarden-${version}";
src = fetchurl {
url = "mirror://sourceforge/rosegarden/${name}.tar.bz2";
- sha256 = "155kqbxg85wqv0w97cmmx8wq0r4xb3qpnk20lfma04vj8k6hc1mg";
+ sha256 = "15i9fm0vkn3wsgahaxqi1j5zs0wc0j3wdwml0x49084gk2p328vb";
};
patchPhase = ''
diff --git a/pkgs/applications/audio/samplv1/default.nix b/pkgs/applications/audio/samplv1/default.nix
index 4eeb893ee969dc96cb8f99040f1005776d955dd2..1a131539460280bdad5179d11b8744e75faab6f6 100644
--- a/pkgs/applications/audio/samplv1/default.nix
+++ b/pkgs/applications/audio/samplv1/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "samplv1-${version}";
- version = "0.9.0";
+ version = "0.9.6";
src = fetchurl {
url = "mirror://sourceforge/samplv1/${name}.tar.gz";
- sha256 = "0g67vm9ilmq5nlvk0f3abia9pbinr4ck5v4mll6igni1rxz2n7wk";
+ sha256 = "16a5xix9pn0gl3fr6bv6zl1l9vrzgvy1q7xd8yxzfr3vi5s8x4z9";
};
buildInputs = [ libjack2 alsaLib liblo libsndfile lv2 qt5.qtbase qt5.qttools];
diff --git a/pkgs/applications/audio/sayonara/default.nix b/pkgs/applications/audio/sayonara/default.nix
index 1bf1a8b2c49e2bbe1478145376b73ddb80aa1703..fbe90c5377df752c3be31aab0b7ad05f1ef317ee 100644
--- a/pkgs/applications/audio/sayonara/default.nix
+++ b/pkgs/applications/audio/sayonara/default.nix
@@ -1,14 +1,14 @@
{ stdenv, fetchurl, cmake, qt5, zlib, taglib, pkgconfig, pcre, gst_all_1 }:
let
- version = "1.0.0-git5-20180115";
+ version = "1.1.1-git1-20180828";
in
stdenv.mkDerivation {
name = "sayonara-player-${version}";
src = fetchurl {
url = "https://sayonara-player.com/sw/sayonara-player-${version}.tar.gz";
- sha256 = "1fl7zplnrrvbv1xm4g348bpd46jj39jvbm808hyjjq92i64wqg37";
+ sha256 = "0rvy47qvavrp03zjdrw025dmq9fq5aaii3q1qq8b94byarl0c5kn";
};
nativeBuildInputs = [ cmake pkgconfig ];
@@ -39,7 +39,7 @@ stdenv.mkDerivation {
{ description = "Sayonara music player";
homepage = https://sayonara-player.com/;
license = licenses.gpl3;
- platforms = qt5.qtbase.meta.platforms;
+ platforms = platforms.linux;
maintainers = [ maintainers.deepfire ];
};
}
diff --git a/pkgs/applications/audio/seq24/default.nix b/pkgs/applications/audio/seq24/default.nix
index 11ee00adc887cddfd3890a7456b2b8a25008b587..d47ede27ece2f6ed5af7859fa3f8f69e9acef509 100644
--- a/pkgs/applications/audio/seq24/default.nix
+++ b/pkgs/applications/audio/seq24/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
version = "0.9.3";
src = fetchurl {
- url = "http://launchpad.net/seq24/trunk/${version}/+download/${name}.tar.gz";
+ url = "https://launchpad.net/seq24/trunk/${version}/+download/${name}.tar.gz";
sha256 = "1qpyb7355s21sgy6gibkybxpzx4ikha57a8w644lca6qy9mhcwi3";
};
diff --git a/pkgs/applications/audio/setbfree/default.nix b/pkgs/applications/audio/setbfree/default.nix
index 905de343117d2e4cdc64af8d7c980f6a5a6439c0..1047734a2c183d40a41f4f369aa7cae585d1ca1c 100644
--- a/pkgs/applications/audio/setbfree/default.nix
+++ b/pkgs/applications/audio/setbfree/default.nix
@@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "setbfree-${version}";
- version = "0.8.7";
+ version = "0.8.8";
src = fetchurl {
url = "https://github.com/pantherb/setBfree/archive/v${version}.tar.gz";
- sha256 = "07s320r67cz0cdjdsbcwn0fw3xs0wz7lgrybqpws2skvkbls228q";
+ sha256 = "1ldxwds99azingkjh246kz7x3j7307jhr0fls5rjjbcfchpg7v99";
};
patchPhase = ''
diff --git a/pkgs/applications/audio/sfxr-qt/default.nix b/pkgs/applications/audio/sfxr-qt/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..a98d1431d65e4473f229300ba581bbaf08d7dfa4
--- /dev/null
+++ b/pkgs/applications/audio/sfxr-qt/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchFromGitHub
+, cmake
+, qtbase, qtquickcontrols2
+, SDL
+, python3
+}:
+
+stdenv.mkDerivation rec {
+ name = "sfxr-qt-${version}";
+ version = "1.2.0";
+ src = fetchFromGitHub {
+ owner = "agateau";
+ repo = "sfxr-qt";
+ rev = version;
+ sha256 = "1ndw1dcmzvkrc6gnb0y057zb4lqlhwrv18jlbx26w3s4xrbxqr41";
+ fetchSubmodules = true;
+ };
+ nativeBuildInputs = [
+ cmake
+ (python3.withPackages (pp: with pp; [ pyyaml jinja2 ]))
+ ];
+ buildInputs = [
+ qtbase qtquickcontrols2
+ SDL
+ ];
+ configurePhase = "cmake . -DCMAKE_INSTALL_PREFIX=$out";
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/agateau/sfxr-qt;
+ description = "A sound effect generator, QtQuick port of sfxr";
+ license = licenses.gpl2;
+ maintainers = with maintainers; [ fgaz ];
+ platforms = platforms.linux;
+ };
+}
+
diff --git a/pkgs/applications/audio/snapcast/default.nix b/pkgs/applications/audio/snapcast/default.nix
index 3afd73493b05dbbff2fb278f2ebab17b8ee1e40b..5730dec6b9944a2fbeac0a9f6ae341fce4f3ba16 100644
--- a/pkgs/applications/audio/snapcast/default.nix
+++ b/pkgs/applications/audio/snapcast/default.nix
@@ -1,49 +1,61 @@
{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig
-, asio, alsaLib, avahi, libogg, libvorbis, flac }:
+, alsaLib, asio, avahi, flac, libogg, libvorbis }:
let
- popl = stdenv.mkDerivation rec {
- name = "popl-${version}";
- version = "1.1.0";
+ dependency = { name, version, sha256 }:
+ stdenv.mkDerivation {
+ name = "${name}-${version}";
src = fetchFromGitHub {
owner = "badaix";
- repo = "popl";
- rev = "v${version}";
- sha256 = "1zgjgcingyi1xw61azxxasaidbgqidncml5c2y2cj90mz23yam1i";
+ repo = name;
+ rev = "v${version}";
+ inherit sha256;
};
+
nativeBuildInputs = [ cmake ];
};
- aixlog = stdenv.mkDerivation rec {
- name = "aixlog-${version}";
+ aixlog = dependency {
+ name = "aixlog";
version = "1.2.1";
+ sha256 = "1rh4jib5g41b85bqrxkl5g74hk5ryf187y9fw0am76g59xlymfpr";
+ };
- src = fetchFromGitHub {
- owner = "badaix";
- repo = "aixlog";
- rev = "v${version}";
- sha256 = "1rh4jib5g41b85bqrxkl5g74hk5ryf187y9fw0am76g59xlymfpr";
- };
- nativeBuildInputs = [ cmake ];
+ popl = dependency {
+ name = "popl";
+ version = "1.2.0";
+ sha256 = "1z6z7fwffs3d9h56mc2m24d5gp4fc5bi8836zyfb276s6fjyfcai";
};
in
stdenv.mkDerivation rec {
name = "snapcast-${version}";
- version = "0.14.0";
+ version = "0.15.0";
src = fetchFromGitHub {
- owner = "badaix";
- repo = "snapcast";
- rev = "v${version}";
- sha256 = "14f5jrsarjdk2mixmznmighrh22j6flp7y47r9j3qzxycmm1mcf6";
+ owner = "badaix";
+ repo = "snapcast";
+ rev = "v${version}";
+ sha256 = "11rnpy6w3wm240qgmkp74k5w8wh5b7hzfx05qrnh6l7ng7m25ky2";
};
nativeBuildInputs = [ cmake pkgconfig ];
- buildInputs = [ asio popl aixlog alsaLib avahi libogg libvorbis flac ];
+ # snapcast also supports building against tremor but as we have libogg, that's
+ # not needed
+ buildInputs = [
+ alsaLib asio avahi flac libogg libvorbis
+ aixlog popl
+ ];
+
+ # Upstream systemd unit files are pretty awful, so we provide our own in a
+ # NixOS module. It might make sense to get that upstreamed...
+ postInstall = ''
+ install -d $out/share/doc/snapcast
+ cp -r ../doc/* ../*.md $out/share/doc/snapcast
+ '';
meta = with lib; {
description = "Synchronous multi-room audio player";
diff --git a/pkgs/applications/audio/snd/default.nix b/pkgs/applications/audio/snd/default.nix
index 7c96fd364c1827c4b52c7e686e3aaecae70af4d4..e749bb9280760752d58f0f9d89751bb9788d1dbf 100644
--- a/pkgs/applications/audio/snd/default.nix
+++ b/pkgs/applications/audio/snd/default.nix
@@ -4,11 +4,11 @@
}:
stdenv.mkDerivation rec {
- name = "snd-18.6";
+ name = "snd-19.2";
src = fetchurl {
url = "mirror://sourceforge/snd/${name}.tar.gz";
- sha256 = "1jyqkkz2a6zw0jn9y15xd3027r8glkpw794fjk6hd3al1byjhz2z";
+ sha256 = "1a6ls2hyvggss12idca22hq5vsq4jw2xkwrx22dx29i9926gdr6h";
};
nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/audio/sonata/default.nix b/pkgs/applications/audio/sonata/default.nix
index 0affe5dc89d4e7fef9859d056da75dc56df6dabe..d5985f097e9f55bf8b3ccbdf3edcc9bfe1f72fcb 100644
--- a/pkgs/applications/audio/sonata/default.nix
+++ b/pkgs/applications/audio/sonata/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchFromGitHub, pkgconfig, intltool, wrapGAppsHook
-, python3Packages, gnome3, gtk3, gobjectIntrospection}:
+{ stdenv, fetchFromGitHub, pkgconfig, gettext, intltool, wrapGAppsHook
+, python3Packages, gnome3, gtk3, gsettings-desktop-schemas, gobject-introspection }:
let
inherit (python3Packages) buildPythonApplication isPy3k dbus-python pygobject3 mpd2;
@@ -16,11 +16,11 @@ in buildPythonApplication rec {
disabled = !isPy3k;
- nativeBuildInputs = [ pkgconfig ];
+ nativeBuildInputs = [ pkgconfig gettext ];
buildInputs = [
intltool wrapGAppsHook
- gnome3.defaultIconTheme
- gnome3.gsettings-desktop-schemas
+ gnome3.adwaita-icon-theme
+ gsettings-desktop-schemas
];
postPatch = ''
@@ -29,7 +29,7 @@ in buildPythonApplication rec {
'';
propagatedBuildInputs = [
- gobjectIntrospection gtk3 pygobject3
+ gobject-introspection gtk3 pygobject3
];
# The optional tagpy dependency (for editing metadata) is not yet
@@ -61,7 +61,7 @@ in buildPythonApplication rec {
- Commandline control
- Available in 24 languages
'';
- homepage = http://www.nongnu.org/sonata/;
+ homepage = https://www.nongnu.org/sonata/;
license = stdenv.lib.licenses.gpl3;
platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.rvl ];
diff --git a/pkgs/applications/audio/sonic-pi/default.nix b/pkgs/applications/audio/sonic-pi/default.nix
index d1c48ce44ed8338ae812d67414ea4dbf18c4f5a7..ee72b6cdb1a4945756be66a1d2b681079ba35320 100644
--- a/pkgs/applications/audio/sonic-pi/default.nix
+++ b/pkgs/applications/audio/sonic-pi/default.nix
@@ -20,14 +20,14 @@ let
};
in stdenv.mkDerivation rec {
- version = "3.0.1";
+ version = "3.1.0";
name = "sonic-pi-${version}";
src = fetchFromGitHub {
owner = "samaaron";
repo = "sonic-pi";
rev = "v${version}";
- sha256 = "1l1892hijp1dj2h799sfjr699q6xp660n0siibab5kv238521a81";
+ sha256 = "0gi4a73szaa8iz5q1gxgpsnyvhhghcfqm6bfwwxbix4m5csbfgh9";
};
buildInputs = [
@@ -58,21 +58,21 @@ in stdenv.mkDerivation rec {
export SONIC_PI_HOME=$TMPDIR
export AUBIO_LIB=${aubio}/lib/libaubio.so
- pushd app/server/bin
+ pushd app/server/ruby/bin
./compile-extensions.rb
./i18n-tool.rb -t
popd
pushd app/gui/qt
cp -f ruby_help.tmpl ruby_help.h
- ../../server/bin/qt-doc.rb -o ruby_help.h
+ ../../server/ruby/bin/qt-doc.rb -o ruby_help.h
substituteInPlace SonicPi.pro \
--replace "LIBS += -lrt -lqt5scintilla2" \
"LIBS += -lrt -lqscintilla2 -lqwt"
lrelease SonicPi.pro
- qmake SonicPi.pro
+ qmake SonicPi.pro
make
popd
diff --git a/pkgs/applications/audio/sound-juicer/default.nix b/pkgs/applications/audio/sound-juicer/default.nix
index e38f38dad78c91859c0c8259ab3b505717c93156..7f22a03c1bb4b93d3d2c7a36f7a4acb5204f8ca2 100644
--- a/pkgs/applications/audio/sound-juicer/default.nix
+++ b/pkgs/applications/audio/sound-juicer/default.nix
@@ -1,27 +1,29 @@
{ stdenv, fetchurl, pkgconfig, glib, gtk3, intltool, itstool, libxml2, brasero
, libcanberra-gtk3, gnome3, gst_all_1, libmusicbrainz5, libdiscid, isocodes
-, wrapGAppsHook }:
+, gsettings-desktop-schemas, wrapGAppsHook }:
let
pname = "sound-juicer";
- version = "3.16.1";
+ version = "3.24.0";
in stdenv.mkDerivation rec{
name = "${pname}-${version}";
src = fetchurl {
- url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
- sha256 = "0mx6n901vb97hsv0cwaafjffj75s1kcp8jsqay90dy3099849dyz";
+ url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
+ sha256 = "19qg4xv0f9rkq34lragkmhii1llxsa87llbl28i759b0ks4f6sny";
};
nativeBuildInputs = [ pkgconfig intltool itstool libxml2 wrapGAppsHook ];
buildInputs = [
- glib gtk3 brasero libcanberra-gtk3 gnome3.defaultIconTheme
- gnome3.gsettings-desktop-schemas libmusicbrainz5 libdiscid isocodes
+ glib gtk3 brasero libcanberra-gtk3 gnome3.adwaita-icon-theme
+ gsettings-desktop-schemas libmusicbrainz5 libdiscid isocodes
gst_all_1.gstreamer gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad
gst_all_1.gst-libav
];
+ NIX_CFLAGS_COMPILE="-Wno-error=format-nonliteral";
+
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
diff --git a/pkgs/applications/audio/soundkonverter/default.nix b/pkgs/applications/audio/soundkonverter/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..df5806b50b9e1755a29123ae45c82bec6eb2e8f3
--- /dev/null
+++ b/pkgs/applications/audio/soundkonverter/default.nix
@@ -0,0 +1,97 @@
+# currently needs to be installed into an environment and needs a `kbuildsycoca5` run afterwards for plugin discovery
+{
+ mkDerivation, fetchFromGitHub, lib, makeWrapper,
+ cmake, extra-cmake-modules, pkgconfig,
+ libkcddb, kconfig, kconfigwidgets, ki18n, kdelibs4support, kio, solid, kwidgetsaddons, kxmlgui,
+ qtbase, phonon,
+ taglib,
+ # optional backends
+ withCD ? true, cdparanoia,
+ withFlac ? true, flac,
+ withMidi ? true, fluidsynth, timidity,
+ withSpeex ? false, speex,
+ withVorbis ? true, vorbis-tools, vorbisgain,
+ withMp3 ? true, lame, mp3gain,
+ withAac ? true, faad2, aacgain,
+ withUnfreeAac ? false, faac,
+ withFfmpeg ? true, ffmpeg-full,
+ withMplayer ? false, mplayer,
+ withSox ? true, sox,
+ withOpus ? true, opusTools,
+ withTwolame ? false, twolame,
+ withApe ? false, mac,
+ withWavpack ? false, wavpack
+}:
+
+assert withAac -> withFfmpeg || withUnfreeAac;
+assert withUnfreeAac -> withAac;
+
+let runtimeDeps = []
+ ++ lib.optional withCD cdparanoia
+ ++ lib.optional withFlac flac
+ ++ lib.optional withSpeex speex
+ ++ lib.optional withFfmpeg ffmpeg-full
+ ++ lib.optional withMplayer mplayer
+ ++ lib.optional withSox sox
+ ++ lib.optional withOpus opusTools
+ ++ lib.optional withTwolame twolame
+ ++ lib.optional withApe mac
+ ++ lib.optional withWavpack wavpack
+ ++ lib.optional withUnfreeAac faac
+ ++ lib.optionals withMidi [ fluidsynth timidity ]
+ ++ lib.optionals withVorbis [ vorbis-tools vorbisgain ]
+ ++ lib.optionals withMp3 [ lame mp3gain ]
+ ++ lib.optionals withAac [ faad2 aacgain ];
+
+in
+mkDerivation rec {
+ name = "soundkonverter";
+ version = "3.0.1";
+ src = fetchFromGitHub {
+ owner = "dfaust";
+ repo = "soundkonverter";
+ rev = "v" + version;
+ sha256 = "1g2khdsjmsi4zzynkq8chd11cbdhjzmi37r9jhpal0b730nq9x7l";
+ };
+ enableParallelBuilding = true;
+ nativeBuildInputs = [ cmake extra-cmake-modules pkgconfig kdelibs4support makeWrapper ];
+ propagatedBuildInputs = [ libkcddb kconfig kconfigwidgets ki18n kdelibs4support kio solid kwidgetsaddons kxmlgui qtbase phonon];
+ buildInputs = [ taglib ] ++ runtimeDeps;
+ # encoder plugins go to ${out}/lib so they're found by kbuildsycoca5
+ cmakeFlags = [ "-DCMAKE_INSTALL_PREFIX=$out" ];
+ sourceRoot = "source/src";
+ # add runt-time deps to PATH
+ postInstall = ''
+ wrapProgram $out/bin/soundkonverter --prefix PATH : ${lib.makeBinPath runtimeDeps }
+ '';
+ meta = {
+ license = lib.licenses.gpl2;
+ maintainers = [ lib.maintainers.schmittlauch ];
+ description = "Audio file converter, CD ripper and Replay Gain tool";
+ longDescription = ''
+ soundKonverter is a frontend to various audio converters.
+
+ The key features are:
+ - Audio file conversion
+ - Replay Gain calculation
+ - CD ripping
+
+ soundKonverter supports reading and writing tags and covers for many formats, so they are preserved when converting files.
+
+ It is extendable by plugins and supports many backends including:
+
+ - Audio file conversion
+ Backends: faac, faad, ffmpeg, flac, lame, mplayer, neroaac, timidity, fluidsynth, vorbistools, opustools, sox, twolame,
+ flake, mac, shorten, wavpack and speex
+ Formats: ogg vorbis, mp3, flac, wma, aac, ac3, opus, alac, mp2, als, amr nb, amr wb, ape, speex, m4a, mp1, musepack shorten,
+ tta, wavpack, ra, midi, mod, 3gp, rm, avi, mkv, ogv, mpeg, mov, mp4, flv, wmv and rv
+
+ - Replay Gain calculation
+ Backends: aacgain, metaflac, mp3gain, vorbisgain, wvgain, mpcgain
+ Formats: aac, mp3, flac, ogg vorbis, wavpack, musepack
+
+ - CD ripping
+ Backends: cdparanoia
+ '';
+ };
+}
diff --git a/pkgs/applications/audio/spectmorph/default.nix b/pkgs/applications/audio/spectmorph/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..9557770418e87b706e71706252ad41bf5e036c0d
--- /dev/null
+++ b/pkgs/applications/audio/spectmorph/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, pkgconfig, libjack2, lv2, glib, qt5, libao, cairo, libsndfile, fftwFloat }:
+
+stdenv.mkDerivation rec {
+ name = "spectmorph-${version}";
+ version = "0.4.1";
+ src = fetchurl {
+ url = "http://spectmorph.org/files/releases/${name}.tar.bz2";
+ sha256 = "0z00yvv3jl8qsx6bz9msmg09mdnj5r5d4ws5bmnylwxk182whbrv";
+ };
+
+ buildInputs = [ libjack2 lv2 glib qt5.qtbase libao cairo libsndfile fftwFloat ];
+
+ nativeBuildInputs = [ pkgconfig ];
+
+ meta = with stdenv.lib; {
+ description = "Allows to analyze samples of musical instruments, and to combine them (morphing) to construct hybrid sounds";
+ homepage = http://spectmorph.org;
+ license = licenses.gpl3;
+ platforms = [ "x86_64-linux" "i686-linux" ];
+ maintainers = [ maintainers.magnetophon ];
+ };
+}
diff --git a/pkgs/applications/audio/split2flac/default.nix b/pkgs/applications/audio/split2flac/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..372e507ed0e909c9d5aaffa1380504f0f9a52662
--- /dev/null
+++ b/pkgs/applications/audio/split2flac/default.nix
@@ -0,0 +1,62 @@
+{ stdenv, fetchFromGitHub, makeWrapper
+, shntool, cuetools
+, flac, faac, mp4v2, wavpack, mac
+, imagemagick, libiconv, enca, lame, pythonPackages, vorbis-tools
+, aacgain, mp3gain, vorbisgain
+}:
+
+let
+ wrapSplit2flac = format: ''
+ makeWrapper $out/bin/.split2flac-wrapped $out/bin/split2${format} \
+ --set SPLIT2FLAC_FORMAT ${format} \
+ --prefix PATH : ${stdenv.lib.makeBinPath [
+ shntool cuetools
+ flac faac mp4v2 wavpack mac
+ imagemagick libiconv enca lame pythonPackages.mutagen vorbis-tools
+ aacgain mp3gain vorbisgain
+ ]}
+ '';
+
+in stdenv.mkDerivation rec {
+ name = "split2flac-${version}";
+ version = "122";
+
+ src = fetchFromGitHub {
+ owner = "ftrvxmtrx";
+ repo = "split2flac";
+ rev = version;
+ sha256 = "1a71amamip25hhqx7wwzfcl3d5snry9xsiha0kw73iq2m83r2k63";
+ };
+
+ dontBuild = true;
+
+ nativeBuildInputs = [ makeWrapper ];
+
+ patchPhase = ''
+ substituteInPlace split2flac \
+ --replace 'FORMAT="''${0##*split2}"' 'FORMAT=''${SPLIT2FLAC_FORMAT:-flac}'
+ '';
+
+ installPhase = ''
+ mkdir -p $out/share/bash-completion/completions
+ cp split2flac-bash-completion.sh \
+ $out/share/bash-completion/completions/split2flac-bash-completion.sh
+
+ mkdir -p $out/bin
+ cp split2flac $out/bin/.split2flac-wrapped
+
+ ${wrapSplit2flac "flac"}
+ ${wrapSplit2flac "mp3"}
+ ${wrapSplit2flac "ogg"}
+ ${wrapSplit2flac "m4a"}
+ ${wrapSplit2flac "wav"}
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Split flac/ape/wv/wav + cue sheet into separate tracks";
+ homepage = https://github.com/ftrvxmtrx/split2flac;
+ license = licenses.mit;
+ platforms = platforms.all;
+ maintainers = with maintainers; [ jfrankenau ];
+ };
+}
diff --git a/pkgs/applications/audio/spotify/default.nix b/pkgs/applications/audio/spotify/default.nix
index 04bdff3c8135321ec1fb929e5d3fed808dc120fa..6e926fe11c3dea4cdd90cf172212baace5c01ce4 100644
--- a/pkgs/applications/audio/spotify/default.nix
+++ b/pkgs/applications/audio/spotify/default.nix
@@ -1,34 +1,42 @@
{ fetchurl, stdenv, squashfsTools, xorg, alsaLib, makeWrapper, openssl, freetype
-, glib, pango, cairo, atk, gdk_pixbuf, gtk2, cups, nspr, nss, libpng
-, libgcrypt, systemd, fontconfig, dbus, expat, ffmpeg_0_10, curl, zlib, gnome3 }:
+, glib, pango, cairo, atk, gdk_pixbuf, gtk2, cups, nspr, nss, libpng, libnotify
+, libgcrypt, systemd, fontconfig, dbus, expat, ffmpeg_3, curl, zlib, gnome3
+, at-spi2-atk
+}:
let
+ # TO UPDATE: just execute the ./update.sh script (won't do anything if there is no update)
# "rev" decides what is actually being downloaded
- version = "1.0.80.474.gef6b503e-7";
+ # If an update breaks things, one of those might have valuable info:
+ # https://aur.archlinux.org/packages/spotify/
+ # https://community.spotify.com/t5/Desktop-Linux
+ version = "1.0.96.181.gf6bc1b6b-12";
# To get the latest stable revision:
# curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
# To get general information:
# curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
- # More exapmles of api usage:
+ # More examples of api usage:
# https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
- rev = "16";
+ rev = "30";
deps = [
alsaLib
atk
+ at-spi2-atk
cairo
cups
curl
dbus
expat
- ffmpeg_0_10
+ ffmpeg_3
fontconfig
freetype
gdk_pixbuf
glib
gtk2
libgcrypt
+ libnotify
libpng
nss
pango
@@ -64,7 +72,7 @@ stdenv.mkDerivation {
# https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
src = fetchurl {
url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
- sha512 = "45b7ab574b30fb368e0b6f4dd60addbfd1ddc02173b4f98b31c524eed49073432352a361e75959ce8e2f752231e93c79ca1b538c4bd295c935d1e2e0585d147f";
+ sha512 = "859730fbc80067f0828f7e13eee9a21b13b749f897a50e17c2da4ee672785cfd79e1af6336e609529d105e040dc40f61b6189524783ac93d49f991c4ea8b3c56";
};
buildInputs = [ squashfsTools makeWrapper ];
@@ -114,6 +122,9 @@ stdenv.mkDerivation {
ln -s ${nspr.out}/lib/libnspr4.so $libdir/libnspr4.so
ln -s ${nspr.out}/lib/libplc4.so $libdir/libplc4.so
+ ln -s ${ffmpeg_3.out}/lib/libavcodec.so* $libdir
+ ln -s ${ffmpeg_3.out}/lib/libavformat.so* $libdir
+
rpath="$out/share/spotify:$libdir"
patchelf \
@@ -125,6 +136,9 @@ stdenv.mkDerivation {
--prefix LD_LIBRARY_PATH : "$librarypath" \
--prefix PATH : "${gnome3.zenity}/bin"
+ # fix Icon line in the desktop file (#48062)
+ sed -i "s:^Icon=.*:Icon=spotify-client:" "$out/share/spotify/spotify.desktop"
+
# Desktop file
mkdir -p "$out/share/applications/"
cp "$out/share/spotify/spotify.desktop" "$out/share/applications/"
@@ -144,7 +158,7 @@ stdenv.mkDerivation {
homepage = https://www.spotify.com/;
description = "Play music from the Spotify music service";
license = licenses.unfree;
- maintainers = with maintainers; [ eelco ftrvxmtrx sheenobu mudri ];
+ maintainers = with maintainers; [ eelco ftrvxmtrx sheenobu mudri timokau ];
platforms = [ "x86_64-linux" ];
};
}
diff --git a/pkgs/applications/audio/spotify/update.sh b/pkgs/applications/audio/spotify/update.sh
old mode 100644
new mode 100755
index 114245f6d46cd9fc0dcce34b66090ef96c453643..a8836214f2fc65a79ecd1d89f2c549af852bf320
--- a/pkgs/applications/audio/spotify/update.sh
+++ b/pkgs/applications/audio/spotify/update.sh
@@ -1,49 +1,88 @@
-channel="stable" # stable/candidate/edge
+#!/usr/bin/env nix-shell
+#! nix-shell -i bash -p curl jq git gnused gnugrep
+
+
+# executing this script without arguments will
+# - find the newest stable spotify version avaiable on snapcraft (https://snapcraft.io/spotify)
+# - read the current spotify version from the current nix expression
+# - update the nix expression if the versions differ
+# - try to build the updated version, exit if that fails
+# - give instructions for upstreaming
+
+# Please test the update manually before pushing. There have been errors before
+# and because the service is proprietary and a paid account is necessary to do
+# anything with spotify automatic testing is not possible.
+
+# As an optional argument you can specify the snapcraft channel to update to.
+# Default is `stable` and only stable updates should be pushed to nixpkgs. For
+# testing you may specify `candidate` or `edge`.
+
+
+channel="${1:-stable}" # stable/candidate/edge
nixpkgs="$(git rev-parse --show-toplevel)"
spotify_nix="$nixpkgs/pkgs/applications/audio/spotify/default.nix"
+#
+# find the newest stable spotify version avaiable on snapcraft
+#
# create bash array from snap info
snap_info=($(
- curl -H 'X-Ubuntu-Series: 16' \
- "https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=$channel" \
- | jq --raw-output \
- '.revision,.download_sha512,.version,.last_updated'
+ curl -s -H 'X-Ubuntu-Series: 16' \
+ "https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=$channel" \
+ | jq --raw-output \
+ '.revision,.download_sha512,.version,.last_updated'
))
+# "revision" is the actual version identifier on snapcraft, the "version" is
+# just for human consumption. Revision is just an integer that gets increased
+# by one every (stable or unstable) release.
revision="${snap_info[0]}"
sha512="${snap_info[1]}"
-version="${snap_info[2]}"
+upstream_version="${snap_info[2]}"
last_updated="${snap_info[3]}"
-# find the last commited version
-version_pre=$(
- git grep 'version\s*=' HEAD "$spotify_nix" \
- | sed -Ene 's/.*"(.*)".*/\1/p'
+echo "Latest $channel release is $upstream_version from $last_updated."
+
+#
+# read the current spotify version from the currently *committed* nix expression
+#
+
+current_nix_version=$(
+ grep 'version\s*=' "$spotify_nix" \
+ | sed -Ene 's/.*"(.*)".*/\1/p'
)
-if [[ "$version_pre" = "$version" ]]; then
- echo "Spotify is already up ot date"
- exit 0
+echo "Current nix version: $current_nix_version"
+
+#
+# update the nix expression if the versions differ
+#
+
+if [[ "$current_nix_version" = "$upstream_version" ]]; then
+ echo "Spotify is already up-to-date"
+ exit 0
fi
-echo "Updating from ${version_pre} to ${version}, released on ${last_updated}"
+echo "Updating from ${current_nix_version} to ${upstream_version}, released on ${last_updated}"
-# search-andreplace revision, hash and version
+# search-and-replace revision, hash and version
sed --regexp-extended \
- -e 's/rev\s*=\s*"[0-9]+"\s*;/rev = "'"${revision}"'";/' \
- -e 's/sha512\s*=\s*".{128}"\s*;/sha512 = "'"${sha512}"'";/' \
- -e 's/version\s*=\s*".*"\s*;/version = "'"${version}"'";/' \
- -i "$spotify_nix"
+ -e 's/rev\s*=\s*"[0-9]+"\s*;/rev = "'"${revision}"'";/' \
+ -e 's/sha512\s*=\s*"[^"]*"\s*;/sha512 = "'"${sha512}"'";/' \
+ -e 's/version\s*=\s*".*"\s*;/version = "'"${upstream_version}"'";/' \
+ -i "$spotify_nix"
+
+#
+# try to build the updated version
+#
if ! nix-build -A spotify "$nixpkgs"; then
- echo "The updated spotify failed to build."
- exit 1
+ echo "The updated spotify failed to build."
+ exit 1
fi
+# Commit changes
git add "$spotify_nix"
-# show diff for review
-git diff HEAD
-# prepare commit message, but allow edit
-git commit --edit --message "spotify: $version_pre -> $version"
+git commit -m "spotify: ${current_nix_version} -> ${upstream_version}"
diff --git a/pkgs/applications/audio/spotifywm/default.nix b/pkgs/applications/audio/spotifywm/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..64ae9491535aec223f6651dd1cbe8ff54bb478b3
--- /dev/null
+++ b/pkgs/applications/audio/spotifywm/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, spotify, xorg, runtimeShell }:
+stdenv.mkDerivation rec {
+ name = "spotifywm-unstable-${version}";
+ version = "2016-11-28";
+
+ src = fetchFromGitHub {
+ owner = "dasJ";
+ repo = "spotifywm";
+ rev = "91dd5532ffb7a398d775abe94fe7781904ab406f";
+ sha256 = "01z088i83410bpx1vbp7c6cq01r431v55l7340x3izp53lnpp379";
+ };
+
+ buildInputs = [ xorg.libX11 ];
+
+ propagatedBuildInputs = [ spotify ];
+
+ installPhase = ''
+ echo "#!${runtimeShell}" > spotifywm
+ echo "LD_PRELOAD="$out/lib/spotifywm.so" ${spotify}/bin/spotify \$*" >> spotifywm
+ install -Dm644 spotifywm.so $out/lib/spotifywm.so
+ install -Dm755 spotifywm $out/bin/spotifywm
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/dasJ/spotifywm;
+ description = "Wrapper around Spotify that correctly sets class name before opening the window";
+ license = licenses.mit;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ jqueiroz ];
+ };
+}
diff --git a/pkgs/applications/audio/squeezelite/default.nix b/pkgs/applications/audio/squeezelite/default.nix
index 20f6271c7adf75229b65c4f85125fc9d43548e41..3184f89ced9557a17693b796d230d094e6bb12c8 100644
--- a/pkgs/applications/audio/squeezelite/default.nix
+++ b/pkgs/applications/audio/squeezelite/default.nix
@@ -1,20 +1,26 @@
{ stdenv, fetchFromGitHub, alsaLib, faad2, flac, libmad, libvorbis, mpg123 }:
stdenv.mkDerivation {
- name = "squeezelite-git-2016-05-27";
+ name = "squeezelite-git-2018-08-14";
src = fetchFromGitHub {
- owner = "ralph-irving";
- repo = "squeezelite";
- rev = "e37ed17fed9e11a7346cbe9f1e1deeccc051f42e";
- sha256 = "15ihx2dbp4kr6k6r50g9q5npqad5zyv8nqf5cr37bhg964syvbdm";
+ owner = "ralph-irving";
+ repo = "squeezelite";
+ rev = "ecb6e3696a42113994640e5345d0b5ca2e77d28b";
+ sha256 = "0di3d5qy8fhawijq6bxy524fgffvzl08dprrws0fs2j1a70fs0fh";
};
buildInputs = [ alsaLib faad2 flac libmad libvorbis mpg123 ];
+ enableParallelBuilding = true;
+
installPhase = ''
- mkdir -p $out/bin
- cp squeezelite $out/bin
+ runHook preInstall
+
+ install -Dm755 -t $out/bin squeezelite
+ install -Dm644 -t $out/share/doc/squeezelite *.txt *.md
+
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/sunvox/default.nix b/pkgs/applications/audio/sunvox/default.nix
index 47b0bf2e736cae8d810cba29780ff2bae95c35d8..957ee50ca7ad9655d110c309a37ad248fe3bb4a6 100644
--- a/pkgs/applications/audio/sunvox/default.nix
+++ b/pkgs/applications/audio/sunvox/default.nix
@@ -13,11 +13,11 @@ let
in
stdenv.mkDerivation rec {
name = "SunVox-${version}";
- version = "1.9.3b";
+ version = "1.9.4c";
src = fetchurl {
url = "http://www.warmplace.ru/soft/sunvox/sunvox-${version}.zip";
- sha256 = "0k74rcq7niw4p17vj3zp9lpgi932896dmzqv4ln43g0pz7l18c8b";
+ sha256 = "19c1a4e28459e31e1a19986f219d4caa4eb2cb5bc9f6aa994abdbb2ebf6ac4ac";
};
buildInputs = [ unzip ];
diff --git a/pkgs/applications/audio/synthv1/default.nix b/pkgs/applications/audio/synthv1/default.nix
index 53875389a4c3bf58071b498111445f46b53aed6b..485796946990315c552c1565ae04472236e5b41a 100644
--- a/pkgs/applications/audio/synthv1/default.nix
+++ b/pkgs/applications/audio/synthv1/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "synthv1-${version}";
- version = "0.9.0";
+ version = "0.9.6";
src = fetchurl {
url = "mirror://sourceforge/synthv1/${name}.tar.gz";
- sha256 = "1skynjg6ip0qfbqqkybfjh6xcwxagq89ghl08f7sp7j0sz5qdcwp";
+ sha256 = "1hcngk7mxfrqf8v3r759x3wd0p02nc3q83j8m3k58p408y3mx7nr";
};
buildInputs = [ qt5.qtbase qt5.qttools libjack2 alsaLib liblo lv2 ];
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "An old-school 4-oscillator subtractive polyphonic synthesizer with stereo fx";
- homepage = http://synthv1.sourceforge.net/;
+ homepage = https://synthv1.sourceforge.io/;
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/tambura/default.nix b/pkgs/applications/audio/tambura/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..a739d72898e2d683d001bfb7b699262cea6db884
--- /dev/null
+++ b/pkgs/applications/audio/tambura/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
+stdenv.mkDerivation rec {
+ pname = "Tambura";
+ name = "${pname}-${version}";
+ version = "1.0";
+
+ src = fetchFromGitHub {
+ owner = "olilarkin";
+ repo = "${pname}";
+ rev = "v${version}";
+ sha256 = "1w80cmiyzca1wirf5gypg3hcix1ky777id8wnd3k92mn1jf4a24y";
+ };
+
+ buildInputs = [ faust2jaqt faust2lv2 ];
+
+ buildPhase = ''
+ faust2jaqt -vec -time -t 99999 ${pname}.dsp
+ faust2lv2 -vec -time -gui -t 99999 ${pname}.dsp
+ '';
+
+ installPhase = ''
+ mkdir -p $out/bin
+ cp ${pname} $out/bin/
+ mkdir -p $out/lib/lv2
+ cp -r ${pname}.lv2/ $out/lib/lv2
+ '';
+
+ meta = with stdenv.lib; {
+ description = "A FAUST patch inspired by the Indian Tambura/Tanpura - a four string drone instrument, known for its unique rich harmonic timbre";
+ homepage = https://github.com/olilarkin/Tambura;
+ license = licenses.gpl2;
+ maintainers = [ maintainers.magnetophon ];
+ };
+}
diff --git a/pkgs/applications/audio/tetraproc/default.nix b/pkgs/applications/audio/tetraproc/default.nix
index 535d53d99eeb078f0ad8f07b331a16e2e30d67f6..257963de256f1a63f215c547012bef434ad8b0fb 100644
--- a/pkgs/applications/audio/tetraproc/default.nix
+++ b/pkgs/applications/audio/tetraproc/default.nix
@@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
name = "tetraproc-${version}";
- version = "0.8.2";
+ version = "0.8.6";
src = fetchurl {
url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
- sha256 = "17y3vbm5f6h5cmh3yfxjgqz4xhfwpkla3lqfspnbm4ndlzmfpykv";
+ sha256 = "02155ljfwgvfgq9z258fb4z7jrz7qx022d054fj5gr0v007cv0r7";
};
nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/audio/timemachine/default.nix b/pkgs/applications/audio/timemachine/default.nix
index 8837566b13d09f9d551f2d01a2e95ee4ed42e831..8c7ed20e74822b25366782ff02f8fae8df8f21fb 100644
--- a/pkgs/applications/audio/timemachine/default.nix
+++ b/pkgs/applications/audio/timemachine/default.nix
@@ -3,13 +3,13 @@
}:
stdenv.mkDerivation rec {
- name = "timemachine-${version}";
- version = "0.3.1";
+ pname = "timemachine";
+ version = "0.3.3";
src = fetchFromGitHub {
owner = "swh";
repo = "timemachine";
- rev = "1966d8524d4e4c47c525473bab3b010a168adc98";
- sha256 = "0w5alysixnvlkfl79wf7vs5wsw2vgxl3gqxxcm0zbmhjdpmjpcal";
+ rev = "v${version}";
+ sha256 = "1jsvd29wiqigxyqxl2xjklla11fwyjy68vqivcnlr9f2af4ylym8";
};
nativeBuildInputs = [ pkgconfig ];
@@ -19,6 +19,10 @@ stdenv.mkDerivation rec {
preConfigure = "./autogen.sh";
+ NIX_LDFLAGS = [
+ "-lm"
+ ];
+
meta = {
description = "JACK audio recorder";
homepage = http://plugin.org.uk/timemachine/;
diff --git a/pkgs/applications/audio/transcribe/default.nix b/pkgs/applications/audio/transcribe/default.nix
index 5ec5087b9f26ebc0c7cf303cb57ee4cbd74b9bfd..29021e870afc8983764b46f336b9f0556d32fefa 100644
--- a/pkgs/applications/audio/transcribe/default.nix
+++ b/pkgs/applications/audio/transcribe/default.nix
@@ -1,33 +1,31 @@
-{ stdenv, fetchzip, lib, makeWrapper, alsaLib, atk, cairo, gdk_pixbuf
-, glib, gst-ffmpeg, gst-plugins-bad, gst-plugins-base
-, gst-plugins-good, gst-plugins-ugly, gstreamer, gtk2, libSM, libX11
-, libpng12, pango, zlib }:
+{ stdenv, fetchzip, wrapGAppsHook, alsaLib, atk, cairo, gdk_pixbuf
+, glib, gst_all_1, gtk3, libSM, libX11, libpng12, pango, zlib }:
stdenv.mkDerivation rec {
name = "transcribe-${version}";
- version = "8.40";
+ version = "8.72";
- src = if stdenv.system == "i686-linux" then
+ src = if stdenv.hostPlatform.system == "i686-linux" then
fetchzip {
- url = "https://www.seventhstring.com/xscribe/downlinux32_old/xscsetup.tar.gz";
- sha256 = "1ngidmj9zz8bmv754s5xfsjv7v6xr03vck4kigzq4bpc9b1fdhjq";
+ url = "https://www.seventhstring.com/xscribe/downlinux32/xscsetup.tar.gz";
+ sha256 = "1h5l7ry9c9awpxfnd29b0wm973ifrhj17xl5d2fdsclw2swsickb";
}
- else if stdenv.system == "x86_64-linux" then
+ else if stdenv.hostPlatform.system == "x86_64-linux" then
fetchzip {
- url = "https://www.seventhstring.com/xscribe/downlinux64_old/xsc64setup.tar.gz";
- sha256 = "0svzi8svj6zn06gj0hr8mpnhq4416dvb4g5al0gpb1g3paywdaf9";
+ url = "https://www.seventhstring.com/xscribe/downlinux64/xsc64setup.tar.gz";
+ sha256 = "1rpd3ppnx5i5yrnfbjrx7h7dk48kwl99i9lnpa75ap7nxvbiznm0";
}
else throw "Platform not supported";
- nativeBuildInputs = [ makeWrapper ];
+ nativeBuildInputs = [ wrapGAppsHook ];
- buildInputs = [ gst-plugins-base gst-plugins-good
- gst-plugins-bad gst-plugins-ugly gst-ffmpeg ];
+ buildInputs = with gst_all_1; [ gst-plugins-base gst-plugins-good
+ gst-plugins-bad gst-plugins-ugly ];
dontPatchELF = true;
- libPath = lib.makeLibraryPath [
- stdenv.cc.cc glib gtk2 atk pango cairo gdk_pixbuf alsaLib
+ libPath = with gst_all_1; stdenv.lib.makeLibraryPath [
+ stdenv.cc.cc glib gtk3 atk pango cairo gdk_pixbuf alsaLib
libX11 libSM libpng12 gstreamer gst-plugins-base zlib
];
@@ -42,13 +40,18 @@ stdenv.mkDerivation rec {
patchelf \
--set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) \
$out/libexec/transcribe
+ '';
- wrapProgram $out/libexec/transcribe \
- --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH" \
+ preFixup = ''
+ gappsWrapperArgs+=(
+ --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH_1_0"
--prefix LD_LIBRARY_PATH : "${libPath}"
+ )
+ '';
+ postFixup = ''
ln -s $out/libexec/transcribe $out/bin/
- '';
+ '';
meta = with stdenv.lib; {
description = "Software to help transcribe recorded music";
@@ -65,5 +68,6 @@ stdenv.mkDerivation rec {
license = licenses.unfree;
platforms = platforms.linux;
maintainers = with maintainers; [ michalrus ];
+ broken = true;
};
}
diff --git a/pkgs/applications/audio/traverso/default.nix b/pkgs/applications/audio/traverso/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..0c432acf4afe42c6734b074bdfa5e8ff98735741
--- /dev/null
+++ b/pkgs/applications/audio/traverso/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, cmake, pkgconfig
+, alsaLib, fftw, flac, lame, libjack2, libmad, libpulseaudio
+, libsamplerate, libsndfile, libvorbis, portaudio, qtbase, wavpack
+}:
+stdenv.mkDerivation rec {
+ name = "traverso-${version}";
+ version = "0.49.6";
+
+ src = fetchurl {
+ url = "http://traverso-daw.org/traverso-0.49.6.tar.gz";
+ sha256 = "12f7x8kw4fw1j0xkwjrp54cy4cv1ql0zwz2ba5arclk4pf6bhl7q";
+ };
+
+ nativeBuildInputs = [ cmake pkgconfig ];
+ buildInputs = [ alsaLib fftw flac.dev libjack2 lame
+ libmad libpulseaudio libsamplerate.dev libsndfile.dev libvorbis
+ portaudio qtbase wavpack ];
+
+ cmakeFlags = [ "-DWANT_PORTAUDIO=1" "-DWANT_PULSEAUDIO=1" "-DWANT_MP3_ENCODE=1" "-DWANT_LV2=0" ];
+
+ enableParallelBuilding = true;
+ hardeningDisable = [ "format" ];
+
+ meta = with stdenv.lib; {
+ description = "Cross-platform multitrack audio recording and audio editing suite";
+ homepage = http://traverso-daw.org/;
+ license = with licenses; [ gpl2Plus lgpl21Plus ];
+ platforms = platforms.all;
+ maintainers = with maintainers; [ coconnor ];
+ };
+}
diff --git a/pkgs/applications/audio/vcv-rack/default.nix b/pkgs/applications/audio/vcv-rack/default.nix
index 74e041868dbc6f243053b74f727ad521841acf9d..27533084804ae4f17effedf5db3ec5312853479c 100644
--- a/pkgs/applications/audio/vcv-rack/default.nix
+++ b/pkgs/applications/audio/vcv-rack/default.nix
@@ -3,8 +3,9 @@
, libzip, rtaudio, rtmidi, speex }:
let
- glfw-git = glfw.overrideAttrs (oldAttrs: {
- name = "glfw-git-20180529";
+ glfw-git = glfw.overrideAttrs (oldAttrs: rec {
+ name = "glfw-git-${version}";
+ version = "unstable-2018-05-29";
src = fetchFromGitHub {
owner = "glfw";
repo = "glfw";
diff --git a/pkgs/applications/audio/vimpc/default.nix b/pkgs/applications/audio/vimpc/default.nix
index 96a6081c4d8fc84e6fc5a52ae86b46670127bc31..ce561b5db314ecfddd875c7ea8e2f337ed38082e 100644
--- a/pkgs/applications/audio/vimpc/default.nix
+++ b/pkgs/applications/audio/vimpc/default.nix
@@ -1,19 +1,19 @@
{ stdenv, fetchFromGitHub, autoreconfHook, mpd_clientlib, ncurses, pcre, pkgconfig
-, taglib }:
+, taglib, curl }:
stdenv.mkDerivation rec {
- version = "0.09.1";
+ version = "0.09.2";
name = "vimpc-${version}";
src = fetchFromGitHub {
owner = "boysetsfrog";
repo = "vimpc";
rev = "v${version}";
- sha256 = "1495a702df4nja8mlxq98mkbic2zv88sjiinimf9qddrfb38jxk6";
+ sha256 = "0lswzkap2nm7v5h7ppb6a64cb35rajysd09nb204rxgrkij4m6nx";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];
- buildInputs = [ mpd_clientlib ncurses pcre taglib ];
+ buildInputs = [ mpd_clientlib ncurses pcre taglib curl ];
postInstall = ''
mkdir -p $out/etc
diff --git a/pkgs/applications/audio/vocal/default.nix b/pkgs/applications/audio/vocal/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..21522f9487361424f81fe37d65dc1f8afc4a4621
--- /dev/null
+++ b/pkgs/applications/audio/vocal/default.nix
@@ -0,0 +1,71 @@
+{ stdenv
+, fetchFromGitHub
+, cmake
+, ninja
+, pkgconfig
+, pantheon
+, gtk3
+, glib
+, libxml2
+, webkitgtk
+, clutter-gtk
+, clutter-gst
+, libunity
+, libnotify
+, sqlite
+, gst_all_1
+, libsoup
+, json-glib
+, libgee
+, wrapGAppsHook
+}:
+
+stdenv.mkDerivation rec {
+ pname = "vocal";
+ version = "2.4.0";
+
+ src = fetchFromGitHub {
+ owner = "needle-and-thread";
+ repo = pname;
+ rev = version;
+ sha256 = "09g9692rckdwh1i5krqgfwdx4p67b1q5834cnxahxzpq4p08rf5w";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ libxml2
+ ninja
+ pantheon.vala
+ pkgconfig
+ wrapGAppsHook
+ ];
+
+ buildInputs = with gst_all_1; [
+ clutter-gst
+ clutter-gtk
+ glib
+ gst-plugins-base
+ gst-plugins-good
+ gstreamer
+ gtk3
+ json-glib
+ libgee
+ libnotify
+ libunity
+ pantheon.elementary-icon-theme
+ pantheon.granite
+ sqlite
+ webkitgtk
+ ];
+
+ meta = with stdenv.lib; {
+ description = "The podcast client for the modern free desktop";
+ longDescription = ''
+ Vocal is a powerful, fast, and intuitive application that helps users find new podcasts, manage their libraries, and enjoy the best that indepedent audio and video publishing has to offer. Vocal features full support for both episode downloading and streaming, native system integration, iTunes store search and top 100 charts (with international results support), iTunes link parsing, OPML importing and exporting, and so much more. Plus, it has great smart features like automatically keeping your library clean from old files, and the ability to set custom skip intervals.
+ '';
+ homepage = https://github.com/needle-and-thread/vocal;
+ license = licenses.gpl3Plus;
+ maintainers = with maintainers; [ worldofpeace ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/audio/whipper/default.nix b/pkgs/applications/audio/whipper/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..382a1a8b2e21756b75060d9aa294f4c540f5cbf1
--- /dev/null
+++ b/pkgs/applications/audio/whipper/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, fetchFromGitHub, python2, cdparanoia, cdrdao, flac
+, sox, accuraterip-checksum, utillinux, substituteAll }:
+
+python2.pkgs.buildPythonApplication rec {
+ name = "whipper-${version}";
+ version = "0.7.3";
+
+ src = fetchFromGitHub {
+ owner = "whipper-team";
+ repo = "whipper";
+ rev = "v${version}";
+ sha256 = "0ypbgc458i7yvbyvg6wg6agz5yzlwm1v6zw7fmyq9h59xsv27mpr";
+ };
+
+ pythonPath = with python2.pkgs; [
+ pygobject3 musicbrainzngs urllib3 chardet
+ pycdio setuptools mutagen CDDB
+ requests
+ ];
+
+ checkInputs = with python2.pkgs; [
+ twisted
+ ];
+
+ patches = [
+ (substituteAll {
+ src = ./paths.patch;
+ inherit cdparanoia;
+ })
+ ];
+
+ makeWrapperArgs = [
+ "--prefix" "PATH" ":" "${stdenv.lib.makeBinPath [ accuraterip-checksum cdrdao utillinux flac sox ]}"
+ ];
+
+ # some tests require internet access
+ # https://github.com/JoeLametta/whipper/issues/291
+ doCheck = false;
+
+ preCheck = ''
+ HOME=$TMPDIR
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/whipper-team/whipper;
+ description = "A CD ripper aiming for accuracy over speed";
+ maintainers = with maintainers; [ rycee ];
+ license = licenses.gpl3Plus;
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/audio/whipper/paths.patch b/pkgs/applications/audio/whipper/paths.patch
new file mode 100644
index 0000000000000000000000000000000000000000..14b5384330da8c41f352a08a343e322e46b3d06f
--- /dev/null
+++ b/pkgs/applications/audio/whipper/paths.patch
@@ -0,0 +1,32 @@
+--- a/whipper/program/cdparanoia.py
++++ b/whipper/program/cdparanoia.py
+@@ -280,10 +280,10 @@
+
+ bufsize = 1024
+ if self._overread:
+- argv = ["cd-paranoia", "--stderr-progress",
++ argv = ["@cdparanoia@/bin/cdparanoia", "--stderr-progress",
+ "--sample-offset=%d" % self._offset, "--force-overread", ]
+ else:
+- argv = ["cd-paranoia", "--stderr-progress",
++ argv = ["@cdparanoia@/bin/cdparanoia", "--stderr-progress",
+ "--sample-offset=%d" % self._offset, ]
+ if self._device:
+ argv.extend(["--force-cdrom-device", self._device, ])
+@@ -560,7 +560,7 @@
+
+ def getCdParanoiaVersion():
+ getter = common.VersionGetter('cd-paranoia',
+- ["cd-paranoia", "-V"],
++ ["@cdparanoia@/bin/cdparanoia", "-V"],
+ _VERSION_RE,
+ "%(version)s %(release)s")
+
+@@ -585,7 +585,7 @@
+ def __init__(self, device=None):
+ # cdparanoia -A *always* writes cdparanoia.log
+ self.cwd = tempfile.mkdtemp(suffix='.whipper.cache')
+- self.command = ['cd-paranoia', '-A']
++ self.command = ['@cdparanoia@/bin/cdparanoia', '-A']
+ if device:
+ self.command += ['-d', device]
diff --git a/pkgs/applications/audio/wolf-shaper/default.nix b/pkgs/applications/audio/wolf-shaper/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..562fdc1be8b6442711ebfa6ee0e790eaec7003cc
--- /dev/null
+++ b/pkgs/applications/audio/wolf-shaper/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchFromGitHub , libjack2, lv2, xorg, liblo, libGL, libXcursor, pkgconfig }:
+
+stdenv.mkDerivation rec {
+ name = "wolf-shaper-${version}";
+ version = "0.1.6";
+
+ src = fetchFromGitHub {
+ owner = "pdesaulniers";
+ repo = "wolf-shaper";
+ rev = "v${version}";
+ sha256 = "01h5dm1nrr0i54ancwznr7wn4vpw08dw0b69v3axy32r5j7plw6s";
+ fetchSubmodules = true;
+ };
+
+ nativeBuildInputs = [ pkgconfig ];
+ buildInputs = [ libjack2 lv2 xorg.libX11 liblo libGL libXcursor ];
+
+ makeFlags = [
+ "BUILD_LV2=true"
+ "BUILD_DSSI=true"
+ "BUILD_VST2=true"
+ "BUILD_JACK=true"
+ ];
+
+ patchPhase = ''
+ patchShebangs ./dpf/utils/generate-ttl.sh
+ '';
+
+ installPhase = ''
+ mkdir -p $out/lib/lv2
+ mkdir -p $out/lib/dssi
+ mkdir -p $out/lib/vst
+ mkdir -p $out/bin/
+ cp -r bin/wolf-shaper.lv2 $out/lib/lv2/
+ cp -r bin/wolf-shaper-dssi* $out/lib/dssi/
+ cp -r bin/wolf-shaper-vst.so $out/lib/vst/
+ cp -r bin/wolf-shaper $out/bin/
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = https://pdesaulniers.github.io/wolf-shaper/;
+ description = "Waveshaper plugin with spline-based graph editor";
+ license = licenses.gpl3;
+ maintainers = [ maintainers.magnetophon ];
+ platforms = [ "i686-linux" "x86_64-linux" ];
+ };
+}
diff --git a/pkgs/applications/audio/x42-plugins/default.nix b/pkgs/applications/audio/x42-plugins/default.nix
index 7c57b884c8eb668507358f9d3d17f7f74af22d4e..7e43225eedc1c79ae9dc11f7bc3e6f4b1d135edd 100644
--- a/pkgs/applications/audio/x42-plugins/default.nix
+++ b/pkgs/applications/audio/x42-plugins/default.nix
@@ -3,12 +3,12 @@
, libGLU, lv2, gtk2, cairo, pango, fftwFloat, zita-convolver }:
stdenv.mkDerivation rec {
- version = "20180812";
+ version = "20190206";
name = "x42-plugins-${version}";
src = fetchurl {
url = "https://gareus.org/misc/x42-plugins/${name}.tar.xz";
- sha256 = "0gzwzxpa2k2w9c6j3pspwi9slfyd57wb192d6yqcg92pfmnxy9dz";
+ sha256 = "0rsp8lm8zr20l410whr98d61401rkphgpl8llbn5p2wsiw0q9aqd";
};
nativeBuildInputs = [ pkgconfig ];
@@ -34,6 +34,6 @@ stdenv.mkDerivation rec {
homepage = https://github.com/x42/x42-plugins;
maintainers = with maintainers; [ magnetophon ];
license = licenses.gpl2;
- platforms = platforms.linux;
+ platforms = [ "i686-linux" "x86_64-linux" ];
};
}
diff --git a/pkgs/applications/audio/yoshimi/default.nix b/pkgs/applications/audio/yoshimi/default.nix
index 65a3bbfdc01115718b352706a2fafe7efb753018..63bb966e388774db2050de380acfbc76285c7098 100644
--- a/pkgs/applications/audio/yoshimi/default.nix
+++ b/pkgs/applications/audio/yoshimi/default.nix
@@ -6,11 +6,11 @@ assert stdenv ? glibc;
stdenv.mkDerivation rec {
name = "yoshimi-${version}";
- version = "1.5.8.2";
+ version = "1.5.10.2";
src = fetchurl {
url = "mirror://sourceforge/yoshimi/${name}.tar.bz2";
- sha256 = "1kg7d6mnzdwzsqhrf7pmrf1hzgfpbpm5lv8xkaz32wiv391qrnxc";
+ sha256 = "1rr99qkq80s8l2iv3x4ccxan07m15dvmd5s9b10386bfjbwbya01";
};
buildInputs = [
diff --git a/pkgs/applications/audio/zita-njbridge/default.nix b/pkgs/applications/audio/zita-njbridge/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..faa90e684aeaaf6eb0b58013b51404aaec16055f
--- /dev/null
+++ b/pkgs/applications/audio/zita-njbridge/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl, libjack2, zita-resampler }:
+
+stdenv.mkDerivation rec {
+ version = "0.4.4";
+ name = "zita-njbridge-${version}";
+
+ src = fetchurl {
+ url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
+ sha256 = "1l8rszdjhp0gq7mr54sdgfs6y6cmw11ssmqb1v9yrkrz5rmwzg8j";
+ };
+
+ buildInputs = [ libjack2 zita-resampler ];
+
+ preConfigure = ''
+ cd ./source/
+ '';
+
+ makeFlags = [
+ "PREFIX=$(out)"
+ "MANDIR=$(out)"
+ "SUFFIX=''"
+ ];
+
+
+ meta = with stdenv.lib; {
+ description = "command line Jack clients to transmit full quality multichannel audio over a local IP network";
+ homepage = http://kokkinizita.linuxaudio.org/linuxaudio/index.html;
+ license = licenses.gpl3;
+ maintainers = [ maintainers.magnetophon ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/audio/zynaddsubfx/default.nix b/pkgs/applications/audio/zynaddsubfx/default.nix
index 1b3429f39d7f8743f973ccc145449c6f99e6acd0..b8cca7c72015b983b91b851ccf979ca041f20c36 100644
--- a/pkgs/applications/audio/zynaddsubfx/default.nix
+++ b/pkgs/applications/audio/zynaddsubfx/default.nix
@@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "zynaddsubfx-${version}";
- version = "3.0.3";
+ version = "3.0.4";
src = fetchurl {
url = "mirror://sourceforge/zynaddsubfx/zynaddsubfx-${version}.tar.bz2";
- sha256 = "1hfpiqdm337gl4ynkmmp2qss2m5z8mzqzjrbiyg6w1v4js7l9phi";
+ sha256 = "18m4ax0x06y1hx4g2g3gf02v0bldkrrb5m7fsr5jlfp1kvjd2j1x";
};
buildInputs = [ alsaLib cairo libjack2 fftw fltk13 lash libjpeg libXpm minixml ntk zlib liblo ];
diff --git a/pkgs/applications/backup/areca/default.nix b/pkgs/applications/backup/areca/default.nix
index 7a7f6f2ac496d18baa68311c16ad3a5d369a552f..a9647b11eeea4f153abea68f7f735cd940381fa2 100644
--- a/pkgs/applications/backup/areca/default.nix
+++ b/pkgs/applications/backup/areca/default.nix
@@ -21,6 +21,10 @@ stdenv.mkDerivation rec {
substituteInPlace bin/areca_run.sh --replace "/usr/java" "${jre}/lib/openjdk"
substituteInPlace bin/areca_run.sh --replace "/usr/lib/java/swt.jar" "${swt}/jars/swt.jar"
+ # Fix for NixOS/nixpkgs/issues/53716
+ sed -i -e 's;^;#include ;' jni/com_myJava_file_metadata_posix_jni_wrapper_FileAccessWrapper.c
+ substituteInPlace jni/com_myJava_file_metadata_posix_jni_wrapper_FileAccessWrapper.c --replace attr/xattr.h sys/xattr.h
+
sed -i "s#^PROGRAM_DIR.*#PROGRAM_DIR=$out#g" bin/areca_run.sh
sed -i "s#^LIBRARY_PATH.*#LIBRARY_PATH=$out/lib:${stdenv.lib.makeLibraryPath [ swt acl ]}#g" bin/areca_run.sh
diff --git a/pkgs/applications/backup/crashplan/crashplan-small-business.nix b/pkgs/applications/backup/crashplan/crashplan-small-business.nix
index 529b0dbd42b6de74580d39e3feb2d71160cfc862..2016d21c592621eb3c6afc4bf888dc7a1c23b79f 100644
--- a/pkgs/applications/backup/crashplan/crashplan-small-business.nix
+++ b/pkgs/applications/backup/crashplan/crashplan-small-business.nix
@@ -98,6 +98,6 @@ stdenv.mkDerivation rec {
license = licenses.unfree;
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ xvapx ];
+ broken = true; # 2018-12-06
};
-
}
diff --git a/pkgs/applications/backup/deja-dup/default.nix b/pkgs/applications/backup/deja-dup/default.nix
index 797a00f4fc4a42b12b66405a58040cddf522e887..4f8e520cb9f22f7d2430be96575aa626318d872d 100644
--- a/pkgs/applications/backup/deja-dup/default.nix
+++ b/pkgs/applications/backup/deja-dup/default.nix
@@ -1,17 +1,20 @@
-{ stdenv, fetchurl, substituteAll, meson, ninja, pkgconfig, vala_0_40, gettext
+{ stdenv, fetchFromGitLab, substituteAll, meson, ninja, pkgconfig, vala_0_40, gettext
, gnome3, libnotify, itstool, glib, gtk3, libxml2
-, coreutils, libsecret, pcre, libxkbcommon, wrapGAppsHook
+, coreutils, libpeas, libsecret, pcre, libxkbcommon, wrapGAppsHook
, libpthreadstubs, libXdmcp, epoxy, at-spi2-core, dbus, libgpgerror
, appstream-glib, desktop-file-utils, duplicity
}:
stdenv.mkDerivation rec {
- name = "deja-dup-${version}";
- version = "38.0";
+ pname = "deja-dup";
+ version = "38.3";
- src = fetchurl {
- url = "https://launchpad.net/deja-dup/${stdenv.lib.versions.major version}/${version}/+download/deja-dup-${version}.tar.xz";
- sha256 = "1l3sa24v0v6xf312h36jikfi8zyx6z3nmc7pjzgdp7l89gkdm65v";
+ src = fetchFromGitLab {
+ domain = "gitlab.gnome.org";
+ owner = "World";
+ repo = pname;
+ rev = version;
+ sha256 = "1bnvmdlm67k1b6115x75j3nl92x5yl4psq5pna2w6cg9npxdd3fa";
};
patches = [
@@ -23,7 +26,7 @@ stdenv.mkDerivation rec {
];
postPatch = ''
- substituteInPlace deja-dup/nautilus/NautilusExtension.c --subst-var-by DEJA_DUP_GSETTINGS_PATH $out/share/gsettings-schemas/${name}/glib-2.0/schemas
+ substituteInPlace deja-dup/nautilus/NautilusExtension.c --subst-var-by DEJA_DUP_GSETTINGS_PATH $out/share/gsettings-schemas/${pname}-${version}/glib-2.0/schemas
'';
nativeBuildInputs = [
@@ -32,14 +35,14 @@ stdenv.mkDerivation rec {
];
buildInputs = [
- libnotify gnome3.libpeas glib gtk3 libsecret
+ libnotify libpeas glib gtk3 libsecret
pcre libxkbcommon libpthreadstubs libXdmcp epoxy gnome3.nautilus
at-spi2-core dbus gnome3.gnome-online-accounts libgpgerror
];
propagatedUserEnvPkgs = [ duplicity ];
- PKG_CONFIG_LIBNAUTILUS_EXTENSION_EXTENSIONDIR = "lib/nautilus/extensions-3.0";
+ PKG_CONFIG_LIBNAUTILUS_EXTENSION_EXTENSIONDIR = "${placeholder "out"}/lib/nautilus/extensions-3.0";
postInstall = ''
glib-compile-schemas $out/share/glib-2.0/schemas
@@ -57,9 +60,9 @@ stdenv.mkDerivation rec {
of backing up the Right Way (encrypted, off-site, and regular) \
and uses duplicity as the backend.
'';
- homepage = https://launchpad.net/deja-dup;
- license = with licenses; gpl3;
+ homepage = https://wiki.gnome.org/Apps/DejaDup;
+ license = licenses.gpl3Plus;
maintainers = with maintainers; [ jtojnar joncojonathan ];
- platforms = with platforms; linux;
+ platforms = platforms.linux;
};
}
diff --git a/pkgs/applications/backup/vdmfec/default.nix b/pkgs/applications/backup/vdmfec/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..3a480f70d4b7b5d0c995105abaaa432ae89f1f90
--- /dev/null
+++ b/pkgs/applications/backup/vdmfec/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+ name = "vdmfec-${version}";
+ version = "1.0";
+
+ src = fetchurl {
+ url = "http://members.tripod.com/professor_tom/archives/${name}.tgz";
+ sha256 = "0i7q4ylx2xmzzq778anpkj4nqir5gf573n1lbpxnbc10ymsjq2rm";
+ };
+
+ meta = with stdenv.lib; {
+ description = "A program that adds error correction blocks";
+ homepage = "http://members.tripod.com/professor_tom/archives/index.html";
+ maintainers = [ maintainers.ar1a ];
+ license = with licenses; [ gpl2 /* for vdmfec */ bsd2 /* for fec */ ];
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix b/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..38270a25c9c99b9ec03d13ab7a7fd3327aa81d52
--- /dev/null
+++ b/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix
@@ -0,0 +1,71 @@
+{ stdenv, fetchgit, pkgconfig
+, dbus, pcre, epoxy, libXdmcp, at-spi2-core, libxklavier, libxkbcommon, libpthreadstubs
+, gtk3, vala, cmake, libgee, libX11, lightdm, gdk_pixbuf, clutter-gtk }:
+
+stdenv.mkDerivation rec {
+ version = "0.2.1";
+ name = "lightdm-enso-os-greeter-${version}";
+
+ src = fetchgit {
+ url = https://github.com/nick92/Enso-OS;
+ rev = "ed48330bfd986072bd82ac542ed8f8a7365c6427";
+ sha256 = "11jm181jq1vbn83h235avpdxz7pqq6prqyzki5yryy53mkj4kgxz";
+ };
+
+ buildInputs = [
+ dbus
+ gtk3
+ pcre
+ vala
+ cmake
+ epoxy
+ libgee
+ libX11
+ lightdm
+ libXdmcp
+ gdk_pixbuf
+ clutter-gtk
+ libxklavier
+ at-spi2-core
+ libxkbcommon
+ libpthreadstubs
+ ];
+
+ nativeBuildInputs = [
+ pkgconfig
+ ];
+
+ postPatch = ''
+ sed -i "s@\''${CMAKE_INSTALL_PREFIX}/@@" greeter/CMakeLists.txt
+ '';
+
+ preConfigure = ''
+ cd greeter
+ '';
+
+ installFlags = [
+ "DESTDIR=$(out)"
+ ];
+
+ preFixup = ''
+ mv $out/usr/* $out
+ rm -r $out/usr
+ '';
+
+ postFixup = ''
+ rm -r $out/sbin
+ '';
+
+ meta = with stdenv.lib; {
+ description = ''
+ A fork of pantheon greeter that positions elements in a central and
+ vertigal manner and adds a blur effect to the background
+ '';
+ homepage = https://github.com/nick92/Enso-OS;
+ platforms = platforms.linux;
+ license = licenses.gpl3;
+ maintainers = with maintainers; [
+ eadwu
+ ];
+ };
+}
diff --git a/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix b/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix
index ef80aa00563fa009c074b372053096f6876c83c4..91446f73507e424abc8635bb9b8e6a82798c1914 100644
--- a/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix
+++ b/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "lightdm-mini-greeter-${version}";
- version = "0.3.2";
+ version = "0.3.4";
src = fetchFromGitHub {
owner = "prikhi";
repo = "lightdm-mini-greeter";
rev = version;
- sha256 = "1g3lrh034w38hiq96b0xmghmlf87hcycwdh06dwkdksr0hl08wxy";
+ sha256 = "1qi0bsqi8z2zv3303ww0kd7bciz6qx8na5bkvgrqlwyvq31czai5";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
description = "A minimal, configurable, single-user GTK3 LightDM greeter";
homepage = https://github.com/prikhi/lightdm-mini-greeter;
license = licenses.gpl3;
- maintainers = with maintainers; [ mnacamura ];
+ maintainers = with maintainers; [ mnacamura prikhi ];
platforms = platforms.linux;
};
}
diff --git a/pkgs/applications/display-managers/lightdm/default.nix b/pkgs/applications/display-managers/lightdm/default.nix
index 4bf81dcdd26ae995428c4daeef9c47889e0cb629..85687090721d7311d167368c446ff1aeb84a5198 100644
--- a/pkgs/applications/display-managers/lightdm/default.nix
+++ b/pkgs/applications/display-managers/lightdm/default.nix
@@ -1,6 +1,6 @@
{ stdenv, fetchFromGitHub, pam, pkgconfig, autoconf, automake, libtool, libxcb
, glib, libXdmcp, itstool, intltool, libxklavier, libgcrypt, audit, busybox
-, polkit, accountsservice, gtk-doc, gnome3, gobjectIntrospection, vala
+, polkit, accountsservice, gtk-doc, gnome3, gobject-introspection, vala, fetchpatch
, withQt4 ? false, qt4
, withQt5 ? false, qtbase
}:
@@ -9,15 +9,15 @@ with stdenv.lib;
stdenv.mkDerivation rec {
pname = "lightdm";
- version = "1.26.0";
+ version = "1.28.0";
- name = "${pname}-${version}";
+ outputs = [ "out" "dev" ];
src = fetchFromGitHub {
owner = "CanonicalLtd";
repo = pname;
rev = version;
- sha256 = "1mhj6l025cnf2dzxnbzlk0qa9fm4gj2aw58qh5fl4ky87dp4wdyb";
+ sha256 = "1mmqy1jdvgc0h0h9gli7n4vdv5p8m5019qjr5ni4h73iz6mjdj2b";
};
nativeBuildInputs = [
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
automake
gnome3.yelp-tools
gnome3.yelp-xsl
- gobjectIntrospection
+ gobject-introspection
gtk-doc
intltool
itstool
@@ -38,15 +38,22 @@ stdenv.mkDerivation rec {
accountsservice
audit
glib
+ libXdmcp
libgcrypt
libxcb
- libXdmcp
libxklavier
pam
polkit
] ++ optional withQt4 qt4
++ optional withQt5 qtbase;
+ patches = [
+ # Adds option to disable writing dmrc files
+ (fetchpatch {
+ url = "https://src.fedoraproject.org/rpms/lightdm/raw/4cf0d2bed8d1c68970b0322ccd5dbbbb7a0b12bc/f/lightdm-1.25.1-disable_dmrc.patch";
+ sha256 = "06f7iabagrsiws2l75sx2jyljknr9js7ydn151p3qfi104d1541n";
+ })
+ ];
preConfigure = "NOCONFIGURE=1 ./autogen.sh";
@@ -55,11 +62,12 @@ stdenv.mkDerivation rec {
"--sysconfdir=/etc"
"--disable-tests"
"--disable-static"
+ "--disable-dmrc"
] ++ optional withQt4 "--enable-liblightdm-qt"
++ optional withQt5 "--enable-liblightdm-qt5";
installFlags = [
- "sysconfdir=\${out}/etc"
+ "sysconfdir=${placeholder ''out''}/etc"
"localstatedir=\${TMPDIR}"
];
@@ -73,8 +81,9 @@ stdenv.mkDerivation rec {
meta = {
homepage = https://github.com/CanonicalLtd/lightdm;
+ description = "A cross-desktop display manager";
platforms = platforms.linux;
license = licenses.gpl3;
- maintainers = with maintainers; [ ocharles wkennington worldofpeace ];
+ maintainers = with maintainers; [ ocharles worldofpeace ];
};
}
diff --git a/pkgs/applications/display-managers/lightdm/gtk-greeter.nix b/pkgs/applications/display-managers/lightdm/gtk-greeter.nix
index 7ae854cee3cc717b49962da06bac43cd2e6583dd..61db182f7446285abdb6331dd07e7225e26d43a5 100644
--- a/pkgs/applications/display-managers/lightdm/gtk-greeter.nix
+++ b/pkgs/applications/display-managers/lightdm/gtk-greeter.nix
@@ -1,7 +1,7 @@
{ stdenv, fetchurl, lightdm, pkgconfig, intltool
, hicolor-icon-theme, makeWrapper
, useGTK2 ? false, gtk2, gtk3 # gtk3 seems better supported
-, exo
+, exo, at-spi2-core
}:
#ToDo: bad icons with gtk2;
@@ -9,14 +9,14 @@
let
ver_branch = "2.0";
- version = "2.0.5";
+ version = "2.0.6";
in
stdenv.mkDerivation rec {
name = "lightdm-gtk-greeter-${version}";
src = fetchurl {
url = "${meta.homepage}/${ver_branch}/${version}/+download/${name}.tar.gz";
- sha256 = "1pw70db8320wvkhkrw4i2qprxlrqy3jmb6yrr4bm3lgrizahiijx";
+ sha256 = "1pis5qyg95pg31dvnfqq34bzgj00hg4vs547r8h60lxjk81z8p15";
};
nativeBuildInputs = [ pkgconfig ];
@@ -26,13 +26,18 @@ stdenv.mkDerivation rec {
configureFlags = [
"--localstatedir=/var"
"--sysconfdir=/etc"
+ "--disable-indicator-services-command"
] ++ stdenv.lib.optional useGTK2 "--with-gtk2";
+ preConfigure = ''
+ configureFlagsArray+=( --enable-at-spi-command="${at-spi2-core}/libexec/at-spi-bus-launcher --launch-immediately" )
+ '';
+
NIX_CFLAGS_COMPILE = [ "-Wno-error=deprecated-declarations" ];
installFlags = [
"localstatedir=\${TMPDIR}"
- "sysconfdir=\${out}/etc"
+ "sysconfdir=${placeholder "out"}/etc"
];
postInstall = ''
@@ -46,6 +51,6 @@ stdenv.mkDerivation rec {
homepage = https://launchpad.net/lightdm-gtk-greeter;
platforms = platforms.linux;
license = licenses.gpl3;
- maintainers = with maintainers; [ ocharles wkennington ];
+ maintainers = with maintainers; [ ocharles ];
};
}
diff --git a/pkgs/applications/display-managers/ly/default.nix b/pkgs/applications/display-managers/ly/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..e8edcc3f634c32b8859978f549c39da02452b491
--- /dev/null
+++ b/pkgs/applications/display-managers/ly/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, lib, fetchFromGitHub, linux-pam }:
+
+stdenv.mkDerivation rec {
+ name = "ly-${version}";
+ version = "0.2.1";
+
+ src = fetchFromGitHub {
+ owner = "cylgom";
+ repo = "ly";
+ rev = version;
+ sha256 = "16gjcrd4a6i4x8q8iwlgdildm7cpdsja8z22pf2izdm6rwfki97d";
+ fetchSubmodules = true;
+ };
+
+ buildInputs = [ linux-pam ];
+ makeFlags = [ "FLAGS=-Wno-error" ];
+
+ installPhase = ''
+ mkdir -p $out/bin
+ cp bin/ly $out/bin
+ '';
+
+ meta = with lib; {
+ description = "TUI display manager";
+ license = licenses.wtfpl;
+ homepage = https://github.com/cylgom/ly;
+ maintainers = [ maintainers.spacekookie ];
+ };
+}
diff --git a/pkgs/applications/display-managers/sddm/default.nix b/pkgs/applications/display-managers/sddm/default.nix
index c9fd4f9c4ab9a94654c8f0518276db23fc1f26af..b5d32493003d79b4e1b7dc823d8b9038e79c3cf4 100644
--- a/pkgs/applications/display-managers/sddm/default.nix
+++ b/pkgs/applications/display-managers/sddm/default.nix
@@ -4,7 +4,7 @@
}:
let
- version = "0.17.0";
+ version = "0.18.1";
in mkDerivation rec {
name = "sddm-${version}";
@@ -13,12 +13,11 @@ in mkDerivation rec {
owner = "sddm";
repo = "sddm";
rev = "v${version}";
- sha256 = "1m35ly6miwy8ivsln3j1bfv0nxbc4gyqnj7f847zzp53jsqrm3mq";
+ sha256 = "0an1zafz0yhxd9jgd3gzdwmaw5f9vs4c924q56lp2yxxddbmzjcq";
};
patches = [
./sddm-ignore-config-mtime.patch
- ./qt511.patch
];
postPatch =
@@ -42,11 +41,11 @@ in mkDerivation rec {
# not supported anyway.
"-DUID_MIN=1000"
"-DUID_MAX=29999"
- ];
- preConfigure = ''
- export cmakeFlags="$cmakeFlags -DQT_IMPORTS_DIR=$out/$qtQmlPrefix -DCMAKE_INSTALL_SYSCONFDIR=$out/etc -DSYSTEMD_SYSTEM_UNIT_DIR=$out/lib/systemd/system"
- '';
+ "-DQT_IMPORTS_DIR=${placeholder "out"}/${qtbase.qtQmlPrefix}"
+ "-DCMAKE_INSTALL_SYSCONFDIR=${placeholder "out"}/etc"
+ "-DSYSTEMD_SYSTEM_UNIT_DIR=${placeholder "out"}/lib/systemd/system"
+ ];
postInstall = ''
# remove empty scripts
diff --git a/pkgs/applications/display-managers/sddm/qt511.patch b/pkgs/applications/display-managers/sddm/qt511.patch
deleted file mode 100644
index 6430e60ed417f02b65ba66b83dabe7fa41b92a3b..0000000000000000000000000000000000000000
--- a/pkgs/applications/display-managers/sddm/qt511.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 005c9ad..71b46d7 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -93,7 +93,7 @@ find_package(XCB REQUIRED)
- find_package(XKB REQUIRED)
-
- # Qt 5
--find_package(Qt5 5.6.0 CONFIG REQUIRED Core DBus Gui Qml Quick LinguistTools)
-+find_package(Qt5 5.6.0 CONFIG REQUIRED Core DBus Gui Qml Quick LinguistTools Test)
-
- # find qt5 imports dir
- get_target_property(QMAKE_EXECUTABLE Qt5::qmake LOCATION)
-diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
-index c9d935a..bb85ddd 100644
---- a/test/CMakeLists.txt
-+++ b/test/CMakeLists.txt
-@@ -2,9 +2,8 @@ set(QT_USE_QTTEST TRUE)
-
- include_directories(../src/common)
-
--
- set(ConfigurationTest_SRCS ConfigurationTest.cpp ../src/common/ConfigReader.cpp)
- add_executable(ConfigurationTest ${ConfigurationTest_SRCS})
- add_test(NAME Configuration COMMAND ConfigurationTest)
-
--qt5_use_modules(ConfigurationTest Test)
-+target_link_libraries(ConfigurationTest Qt5::Core Qt5::Test)
diff --git a/pkgs/applications/editors/android-studio/common.nix b/pkgs/applications/editors/android-studio/common.nix
index cd031ce5ac8cb7262d4733734f3c37f43054884e..10d0663578866b6bd529c89723d4c60cd1446164 100644
--- a/pkgs/applications/editors/android-studio/common.nix
+++ b/pkgs/applications/editors/android-studio/common.nix
@@ -31,9 +31,10 @@
, stdenv
, unzip
, which
-, writeTextFile
+, runCommand
, xkeyboard_config
, zlib
+, makeDesktopItem
}:
let
@@ -42,7 +43,7 @@ let
name = drvName;
src = fetchurl {
- url = "https://dl.google.com/dl/android/studio/ide-zips/${version}/android-studio-ide-${build}-linux.zip";
+ url = "https://dl.google.com/dl/android/studio/ide-zips/${version}/android-studio-ide-${build}-linux.tar.gz";
sha256 = sha256Hash;
};
@@ -113,6 +114,17 @@ let
'';
};
+ desktopItem = makeDesktopItem {
+ name = drvName;
+ exec = pname;
+ icon = drvName;
+ desktopName = "Android Studio (${channel} channel)";
+ comment = "The official Android IDE";
+ categories = "Development;IDE;";
+ startupNotify = "true";
+ extraEntries="StartupWMClass=jetbrains-studio";
+ };
+
# Android Studio downloads prebuilt binaries as part of the SDK. These tools
# (e.g. `mksdcard`) have `/lib/ld-linux.so.2` set as the interpreter. An FHS
# environment is used as a work around for that.
@@ -120,18 +132,18 @@ let
name = "${drvName}-fhs-env";
multiPkgs = pkgs: [ pkgs.ncurses5 ];
};
-
-in
- writeTextFile {
- name = "${drvName}-wrapper";
- # TODO: Rename preview -> beta (and add -stable suffix?):
- destination = "/bin/${pname}";
- executable = true;
- text = ''
+in runCommand
+ "${drvName}-wrapper"
+ {
+ startScript = ''
#!${bash}/bin/bash
${fhsEnv}/bin/${drvName}-fhs-env ${androidStudio}/bin/studio.sh
'';
- } // {
+ preferLocalBuild = true;
+ allowSubstitutes = false;
+ passthru = {
+ unwrapped = androidStudio;
+ };
meta = with stdenv.lib; {
description = "The Official IDE for Android (${channel} channel)";
longDescription = ''
@@ -146,3 +158,12 @@ in
maintainers = with maintainers; [ primeos ];
};
}
+ ''
+ mkdir -p $out/{bin,share/pixmaps}
+
+ echo -n "$startScript" > $out/bin/${pname}
+ chmod +x $out/bin/${pname}
+
+ ln -s ${androidStudio}/bin/studio.png $out/share/pixmaps/${drvName}.png
+ ln -s ${desktopItem}/share/applications $out/share/applications
+ ''
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index 2ae7d421bba141a9dcc51b6506ed95ad881a5e7b..714daa3649c5a9e7136d193724dc8c89d9c86f2c 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -8,24 +8,17 @@ let
inherit (gnome2) GConf gnome_vfs;
};
stableVersion = {
- version = "3.1.4.0"; # "Android Studio 3.1.4"
- build = "173.4907809";
- sha256Hash = "0xx6yprylmcb32ipmwdcfkgddlm1nrxi1w68miclvgrbk015brf2";
- };
- betaVersion = {
- version = "3.2.0.22"; # "Android Studio 3.2 Beta 5"
- build = "181.4913314";
- sha256Hash = "016nyn1pqviy089hg0dq7m4cqb39fdxdcy4zknkaq7dmgv1dj6x9";
+ version = "3.4.0.18"; # "Android Studio 3.4.0"
+ build = "183.5452501";
+ sha256Hash = "0i8wz9v6nxzr27a07cv2330i84v94pcl13gjwvpglp55hyzd8axd";
};
+ betaVersion = stableVersion;
latestVersion = { # canary & dev
- version = "3.3.0.5"; # "Android Studio 3.3 Canary 6"
- build = "182.4954005";
- sha256Hash = "0b8ias75f3p5nrmgp7iqz4n4r4dbwhgagqmyc1fqfd36wbglyaf4";
+ version = "3.5.0.12"; # "Android Studio 3.5 Canary 13"
+ build = "191.5487692";
+ sha256Hash = "0iwd2qa551rs9b0w4rs7wmzdbh3r4j76xvs815l6i5pilk0s47gz";
};
in rec {
- # Old alias
- preview = beta;
-
# Attributes are named by their corresponding release channels
stable = mkStudio (stableVersion // {
@@ -35,7 +28,7 @@ in rec {
beta = mkStudio (betaVersion // {
channel = "beta";
- pname = "android-studio-preview";
+ pname = "android-studio-beta";
});
dev = mkStudio (latestVersion // {
diff --git a/pkgs/applications/editors/aseprite/default.nix b/pkgs/applications/editors/aseprite/default.nix
index 429b2430fce29f2746131d1b187f7ca94c07fba0..7af3742349a60f28f467db28ea1d890f36db0ed3 100644
--- a/pkgs/applications/editors/aseprite/default.nix
+++ b/pkgs/applications/editors/aseprite/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig
-, curl, freetype, giflib, libjpeg, libpng, libwebp, pixman, tinyxml, zlib
+{ stdenv, lib, fetchFromGitHub, fetchpatch, cmake, pkgconfig
+, curl, freetype, giflib, harfbuzz, libjpeg, libpng, libwebp, pixman, tinyxml, zlib
, libX11, libXext, libXcursor, libXxf86vm
, unfree ? false
, cmark
@@ -11,7 +11,7 @@
stdenv.mkDerivation rec {
name = "aseprite-${version}";
- version = if unfree then "1.2.4" else "1.1.7";
+ version = if unfree then "1.2.9" else "1.1.7";
src = fetchFromGitHub {
owner = "aseprite";
@@ -19,16 +19,27 @@ stdenv.mkDerivation rec {
rev = "v${version}";
fetchSubmodules = true;
sha256 = if unfree
- then "1rnf4a8vgddz8x55rpqaihlxmqip1kgpdhqb4d3l71h1zmidg5k3"
+ then "0a9xk163j0984n8nn6pqf27n83gr6w7g25wkiv591zx88pa6cpbd"
else "0gd49lns2bpzbkwax5jf9x1xmg1j8ij997kcxr2596cwiswnw4di";
};
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [
- curl freetype giflib libjpeg libpng libwebp pixman tinyxml zlib
+ curl freetype giflib harfbuzz libjpeg libpng libwebp pixman tinyxml zlib
libX11 libXext libXcursor libXxf86vm
- ] ++ lib.optionals unfree [ cmark ];
+ ] ++ lib.optionals unfree [ cmark harfbuzz ];
+
+ patches = lib.optionals unfree [
+ (fetchpatch {
+ url = "https://github.com/aseprite/aseprite/commit/cfb4dac6feef1f39e161c23c886055a8f9acfd0d.patch";
+ sha256 = "1qhjfpngg8b1vvb9w26lhjjfamfx57ih0p31km3r5l96nm85l7f9";
+ })
+ (fetchpatch {
+ url = "https://github.com/orivej/aseprite/commit/ea87e65b357ad0bd65467af5529183b5a48a8c17.patch";
+ sha256 = "1vwn8ivap1pzdh444sdvvkndp55iz146nhmd80xbm8cyzn3qmg91";
+ })
+ ];
postPatch = ''
sed -i src/config.h -e "s-\\(#define VERSION\\) .*-\\1 \"$version\"-"
@@ -49,6 +60,7 @@ stdenv.mkDerivation rec {
"-DWITH_WEBP_SUPPORT=ON"
] ++ lib.optionals unfree [
"-DUSE_SHARED_CMARK=ON"
+ "-DUSE_SHARED_HARFBUZZ=ON"
# Aseprite needs internal freetype headers.
"-DUSE_SHARED_FREETYPE=OFF"
# Disable libarchive programs.
diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix
index bc3f8baf51087f13f2f3149e9f2cfcbae052f379..bc791d63d24bc294b3c36877469a04d1b7f810cf 100644
--- a/pkgs/applications/editors/atom/default.nix
+++ b/pkgs/applications/editors/atom/default.nix
@@ -1,6 +1,19 @@
{ stdenv, pkgs, fetchurl, makeWrapper, wrapGAppsHook, gvfs, gtk3, atomEnv }:
let
+ versions = {
+ atom = {
+ version = "1.36.1";
+ sha256 = "1m7q2r3zx463k7kpqb364piqrr69wrhs033ibzxdx9y7r4204qp4";
+ };
+
+ atom-beta = {
+ version = "1.37.0";
+ beta = 0;
+ sha256 = "0aq8r5vfgq7r31qajjgcg4n5a57a2m8fvq6fzy9vq5gawkvmaxxx";
+ };
+ };
+
common = pname: {version, sha256, beta ? null}:
let fullVersion = version + stdenv.lib.optionalString (beta != null) "-beta${toString beta}";
name = "${pname}-${fullVersion}";
@@ -31,8 +44,7 @@ let
buildCommand = ''
mkdir -p $out/usr/
ar p $src data.tar.xz | tar -C $out -xJ ./usr
- substituteInPlace $out/usr/share/applications/${pname}.desktop \
- --replace /usr/share/${pname} $out/bin
+ sed -i -e "s|Exec=.*$|Exec=$out/bin/${pname}|" $out/usr/share/applications/${pname}.desktop
mv $out/usr/* $out/
rm -r $out/share/lintian
rm -r $out/usr/
@@ -58,28 +70,14 @@ let
ln -s ${pkgs.git}/bin/git $dugite/git/libexec/git-core/git
find $share -name "*.node" -exec patchelf --set-rpath "${atomEnv.libPath}:$share" {} \;
-
- paxmark m $share/atom
- paxmark m $share/resources/app/apm/bin/node
'';
meta = with stdenv.lib; {
description = "A hackable text editor for the 21st Century";
homepage = https://atom.io/;
license = licenses.mit;
- maintainers = with maintainers; [ offline nequissimus synthetica ysndr ];
+ maintainers = with maintainers; [ offline nequissimus ysndr ];
platforms = platforms.x86_64;
};
};
-in stdenv.lib.mapAttrs common {
- atom = {
- version = "1.29.0";
- sha256 = "0f0qpn8aw2qlqk8ah71xvk4vcmwsnsf2f3g4hz0rvaqnhb9ri9fz";
- };
-
- atom-beta = {
- version = "1.30.0";
- beta = 1;
- sha256 = "0ygqj81xlwhzmmci0d0rd2q7xfskxd1k7h6db3zvvjdxjcnyqp1z";
- };
-}
+in stdenv.lib.mapAttrs common versions
diff --git a/pkgs/applications/editors/bluefish/default.nix b/pkgs/applications/editors/bluefish/default.nix
index 1c2e3a4257827914ea0035f928812eddf6ccdf70..f78f7fbf91487a1b6831f06c4fc5ed744de9d561 100644
--- a/pkgs/applications/editors/bluefish/default.nix
+++ b/pkgs/applications/editors/bluefish/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ intltool pkgconfig wrapGAppsHook ];
- buildInputs = [ gnome3.defaultIconTheme gtk libxml2
+ buildInputs = [ gnome3.adwaita-icon-theme gtk libxml2
enchant gucharmap python ];
meta = with stdenv.lib; {
diff --git a/pkgs/applications/editors/brackets/default.nix b/pkgs/applications/editors/brackets/default.nix
index 1065564f7b4c3bbb691599577ddc2bfc111580aa..ce9f10f39c4131a41fd4de863481a0e12534031b 100644
--- a/pkgs/applications/editors/brackets/default.nix
+++ b/pkgs/applications/editors/brackets/default.nix
@@ -1,10 +1,10 @@
{ stdenv, fetchurl, gtk2, glib, gdk_pixbuf, alsaLib, nss, nspr, gconf
-, cups, libgcrypt_1_5, systemd, dbus }:
+, cups, libgcrypt_1_5, systemd, dbus, libXdamage, expat }:
with stdenv.lib;
let
bracketsLibs = makeLibraryPath [
- gtk2 glib gdk_pixbuf stdenv.cc.cc.lib alsaLib nss nspr gconf cups libgcrypt_1_5 dbus systemd
+ gtk2 glib gdk_pixbuf stdenv.cc.cc.lib alsaLib nss nspr gconf cups libgcrypt_1_5 dbus systemd libXdamage expat
];
in
stdenv.mkDerivation rec {
diff --git a/pkgs/applications/editors/bvi/default.nix b/pkgs/applications/editors/bvi/default.nix
index f3f44f769a99fab205e858899d2db2698ba5f9bb..f5e14ff1e096da1808421228d82977c7eb5fdd2d 100644
--- a/pkgs/applications/editors/bvi/default.nix
+++ b/pkgs/applications/editors/bvi/default.nix
@@ -16,6 +16,6 @@ stdenv.mkDerivation rec {
homepage = http://bvi.sourceforge.net/download.html;
license = licenses.gpl2;
maintainers = with maintainers; [ pSub ];
- platforms = platforms.linux;
+ platforms = with platforms; linux ++ darwin;
};
}
diff --git a/pkgs/applications/editors/dhex/default.nix b/pkgs/applications/editors/dhex/default.nix
index ff9ec73a2ef6229d8f41c12601be291f72e77b48..f4581c4beceb1153a8d5542db038916332d3769e 100644
--- a/pkgs/applications/editors/dhex/default.nix
+++ b/pkgs/applications/editors/dhex/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "dhex-${version}";
- version = "0.68";
+ version = "0.69";
src = fetchurl {
url = "http://www.dettus.net/dhex/dhex_${version}.tar.gz";
- sha256 = "126c34745b48a07448cfe36fe5913d37ec562ad72d3f732b99bd40f761f4da08";
+ sha256 = "06y4lrp29f2fh303ijk1xhspa1d4x4dm6hnyw3dd8szi3k6hnwsj";
};
buildInputs = [ ncurses ];
diff --git a/pkgs/applications/editors/dit/default.nix b/pkgs/applications/editors/dit/default.nix
index 33d80a577dbef6ae29e9122fbf4ec67a1acd9c45..12ca7a071406f0759b1eddf9cfc0b18deb87841d 100644
--- a/pkgs/applications/editors/dit/default.nix
+++ b/pkgs/applications/editors/dit/default.nix
@@ -1,22 +1,20 @@
-{ fetchurl, stdenv, coreutils, ncurses, lua }:
+{ lib, fetchurl, stdenv, libiconv, ncurses, lua }:
stdenv.mkDerivation rec {
name = "dit-${version}";
- version = "0.4";
+ version = "0.5";
src = fetchurl {
url = "https://hisham.hm/dit/releases/${version}/${name}.tar.gz";
- sha256 = "0bwczbv7annbbpg7bgbsqd5kwypn81sza4v7v99fin94wwmcn784";
+ sha256 = "05vhr1gl3bb5fg49v84xhmjaqdjw6djampvylw10ydvbpnpvjvjc";
};
- buildInputs = [ coreutils ncurses lua ];
+ buildInputs = [ ncurses lua ]
+ ++ lib.optional stdenv.isDarwin libiconv;
+ # fix paths
prePatch = ''
patchShebangs tools/GenHeaders
- '';
-
- # needs GNU tail for tail -r
- postPatch = ''
substituteInPlace Prototypes.h --replace 'tail' "$(type -P tail)"
'';
diff --git a/pkgs/applications/editors/eclipse/build-eclipse.nix b/pkgs/applications/editors/eclipse/build-eclipse.nix
index a26d380ec1dff60fb85da8dbbad9d6b852b917f2..6ae9eb078e2623269042b1dd015d857c6b01f244 100644
--- a/pkgs/applications/editors/eclipse/build-eclipse.nix
+++ b/pkgs/applications/editors/eclipse/build-eclipse.nix
@@ -2,7 +2,7 @@
, zlib, jdk, glib, gtk3, libXtst, gsettings-desktop-schemas, webkitgtk
, makeWrapper, ... }:
-{ name, src ? builtins.getAttr stdenv.system sources, sources ? null, description }:
+{ name, src ? builtins.getAttr stdenv.hostPlatform.system sources, sources ? null, description }:
stdenv.mkDerivation rec {
inherit name src;
@@ -55,6 +55,7 @@ stdenv.mkDerivation rec {
meta = {
homepage = http://www.eclipse.org/;
inherit description;
+ platforms = [ "x86_64-linux" ];
};
}
diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix
index c719c7b2da1aa430c39c654be96c0eff0475845c..3fa46fc4d927c6dfbc548ebdfd162653e516170f 100644
--- a/pkgs/applications/editors/eclipse/default.nix
+++ b/pkgs/applications/editors/eclipse/default.nix
@@ -11,7 +11,14 @@ assert stdenv ? glibc;
# http://download.eclipse.org/eclipse/downloads/ is the main place to
# find the downloads needed for new versions
-rec {
+let
+ platform_major = "4";
+ platform_minor = "10";
+ year = "2018";
+ month = "12";
+ timestamp = "201812060815";
+
+in rec {
buildEclipse = import ./build-eclipse.nix {
inherit stdenv makeDesktopItem freetype fontconfig libX11 libXrender zlib
@@ -21,137 +28,47 @@ rec {
### Eclipse CPP
- eclipse-cpp = eclipse-cpp-47; # always point to latest
-
- eclipse-cpp-47 = buildEclipse {
- name = "eclipse-cpp-4.7.0";
+ eclipse-cpp = buildEclipse {
+ name = "eclipse-cpp-${platform_major}.${platform_minor}";
description = "Eclipse IDE for C/C++ Developers, Oxygen release";
src =
- if stdenv.system == "x86_64-linux" then
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-cpp-oxygen-R-linux-gtk-x86_64.tar.gz;
- sha512 = "813c791e739d7d0e2ab242a5bacadca135bbeee20ef97aa830353cd90f63fa6e9c89cfcc6aadf635c742befe035bd6e3f15103013f63c419f6144e86ebde3ed1";
- }
- else if stdenv.system == "i686-linux" then
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-cpp-oxygen-R-linux-gtk.tar.gz;
- sha512 = "2b50f4a00306a89cda1aaaa606e62285cacbf93464a9dd3f3319dca3e2c578b802e685de6f78e5e617d269e21271188effe73d41f491a6de946e28795d82db8a";
- }
- else throw "Unsupported system: ${stdenv.system}";
- };
-
- eclipse-cpp-37 = buildEclipse {
- name = "eclipse-cpp-3.7";
- description = "Eclipse IDE for C/C++ Developers";
- src =
- if stdenv.system == "x86_64-linux" then
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk-x86_64.tar.gz;
- sha256 = "14ppc9g9igzvj1pq7jl01vwhzb66nmzbl9wsdl1sf3xnwa9wnqk3";
- }
- else
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/indigo/R/eclipse-cpp-indigo-incubation-linux-gtk.tar.gz;
- sha256 = "1cvg1vgyazrkinwzlvlf0dpl197p4784752srqybqylyj5psdi3b";
- };
+ fetchurl {
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
+ sha512 = "1f5yr7cydz4iw8c14yn713d44f1g1wkiqiwmb4ikdfx4l70rc5xxsdxv9b4mhm89b02cqnxdh9p5hivkssmnzg0km3ab5bx9mvzgzx7";
+ };
};
- eclipse_cpp_37 = eclipse-cpp-37; # backward compatibility, added 2016-01-30
### Eclipse Modeling
- eclipse-modeling = eclipse-modeling-47; # always point to latest
-
- eclipse-modeling-47 = buildEclipse {
- name = "eclipse-modeling-4.7";
+ eclipse-modeling = buildEclipse {
+ name = "eclipse-modeling-${platform_major}.${platform_minor}";
description = "Eclipse Modeling Tools";
src =
- if stdenv.system == "x86_64-linux" then
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-modeling-oxygen-R-linux-gtk-x86_64.tar.gz;
- sha512 = "3b9a7ad4b5d6b77fbdd64e8d323e0adb6c2904763ad042b374b4d87cef8607408cb407e395870fc755d58c0c800e20818adcf456ebe193d76cede16c5fe12271";
- }
- else
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/oxygen/R/eclipse-modeling-oxygen-R-linux-gtk.tar.gz;
- sha512 = "b8597c1dec117e69c72a5e1a53e09b1f81a7c9de86ed7e71a9d007664603202df301745f186ded02b2e76410345863e80a2ba40867d6848e5375601289999206";
- };
- };
-
- eclipse-modeling-36 = buildEclipse {
- name = "eclipse-modeling-3.6.2";
- description = "Eclipse Modeling Tools (includes Incubating components)";
- src =
- if stdenv.system == "x86_64-linux" then
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk-x86_64.tar.gz;
- sha1 = "e96f5f006298f68476f4a15a2be8589158d5cc61";
- }
- else
- fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/helios/SR2/eclipse-modeling-helios-SR2-incubation-linux-gtk.tar.gz;
- sha1 = "696377895bb26445de39d82a916b7e69edb1d939";
- };
+ fetchurl {
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
+ sha512 = "18psh1lgqg21dmndyc0yr6rz7piqyk861j9mlhgv9xaq8nz11fb6lil594sk64yyv0qbgi98vp03f1p06zvhgs37k9rjkfjmzl7n97k";
+ };
};
- eclipse_modeling_36 = eclipse-modeling-36; # backward compatibility, added 2016-01-30
### Eclipse Platform
- eclipse-platform = eclipse-platform-48; # always point to latest
-
- eclipse-platform-46 = buildEclipse {
- name = "eclipse-platform-4.6.2";
- description = "Eclipse Platform Neon 2";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.2-201611241400/eclipse-platform-4.6.2-linux-gtk-x86_64.tar.gz;
- sha256 = "1fmpirjkp210angyfz3nr5jp58snjy6784zkkbmdxkiyg9kg2wqq";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.2-201611241400/eclipse-platform-4.6.2-linux-gtk.tar.gz;
- sha256 = "0274g6ypiqsqkch10868ygbm6avc5pa57saz9wd196kdivl1bdpm";
- };
- };
- };
-
- eclipse-platform-47 = buildEclipse {
- name = "eclipse-platform-4.7.3a";
- description = "Eclipse Platform Oxygen";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-platform-4.7.3a-linux-gtk-x86_64.tar.gz;
- sha512 = "caf86cd6efaf66258c75434f1adf552587a7395d57dba4cfd20f86196308cf942866d931f4b352f9d39a6fbf14444fcd2167e6bfd146a28c96c229bb9988156a";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-platform-4.7.3a-linux-gtk.tar.gz;
- sha512 = "c633da467774e4ab40f8d51d07b8e7d8403f26f23365c3c3ceeaeec1039b8c23c7508cee1f786bf52db64c7b84e0f91cb31a2848a74ac8271f8504934407bd5c";
- };
- };
- };
-
- eclipse-platform-48 = buildEclipse {
- name = "eclipse-platform-4.8";
- description = "Eclipse Platform Photon";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-platform-4.8-linux-gtk-x86_64.tar.gz;
- sha512 = "ccce2b954938479e42ef3f9b78f74b24ae4cae7499546fa4f9a55ec1849e1acfd06315d4529b11474a8b3d1142c9409c581edfa571baaf1342ab062f02467af2";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-platform-4.8-linux-gtk.tar.gz;
- sha512 = "f5f407727e22b848931cf38f71b1a0c30a9778aa227c3df137dcceec2fba2ecc309cbfa8b4a660b814d2edb60f65110381497b4325781cab4d6402784139e32b";
- };
- };
+ eclipse-platform = buildEclipse {
+ name = "eclipse-platform-${platform_major}.${platform_minor}";
+ description = "Eclipse Platform ${year}-${month}";
+ src =
+ fetchurl {
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
+ sha512 = "2zdvbjk05a00lbcad9v30rcr93j03d2pycdhpwrvrakr8z4yrxs6svamq9s294ry1w3lw04pgsnqklw6zjx6iil1kp51f374lkfpxn7";
+ };
};
### Eclipse Scala SDK
- eclipse-scala-sdk = eclipse-scala-sdk-441; # always point to latest
-
- eclipse-scala-sdk-441 = buildEclipse {
+ eclipse-scala-sdk = buildEclipse {
name = "eclipse-scala-sdk-4.4.1";
description = "Eclipse IDE for Scala Developers";
src =
- if stdenv.system == "x86_64-linux" then
+ if stdenv.hostPlatform.system == "x86_64-linux" then
fetchurl { # tested
url = https://downloads.typesafe.com/scalaide-pack/4.4.1-vfinal-luna-211-20160504/scala-SDK-4.4.1-vfinal-2.11-linux.gtk.x86_64.tar.gz;
sha256 = "4c2d1ac68384e12a11a851cf0fc7757aea087eba69329b21d539382a65340d27";
@@ -165,68 +82,27 @@ rec {
### Eclipse SDK
- eclipse-sdk = eclipse-sdk-48; # always point to latest
-
- eclipse-sdk-46 = buildEclipse {
- name = "eclipse-sdk-4.6.2";
- description = "Eclipse Neon 2 Classic";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.2-201611241400/eclipse-SDK-4.6.2-linux-gtk-x86_64.tar.gz;
- sha256 = "0g3nk1gcz178j8xk6nblkfsaysm8gq8101383fx60x6w25rdfgjb";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.6.2-201611241400/eclipse-SDK-4.6.2-linux-gtk.tar.gz;
- sha256 = "09wlkcxs5h3j8habqxgr4all99vkgmyixc0vr9dj3qs0kl85k5mz";
- };
- };
- };
-
- eclipse-sdk-47 = buildEclipse {
- name = "eclipse-sdk-4.7.3a";
- description = "Eclipse Oxygen Classic";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-SDK-4.7.3a-linux-gtk-x86_64.tar.gz;
- sha512 = "d77e42aca16d26526cef32e363d038258bb8a4616d9dbe6e76dd3656dc2217369436390a82555bde4566bbbdb631813bbaca08602f7bb885cb30e8a26a14873f";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-SDK-4.7.3a-linux-gtk.tar.gz;
- sha512 = "b0b936fd4142ae86ec5c30535cd5e4caf6fe313d814ae5b16f300635e4163a79b748b1eee11792a135114f2265678a74821ec80c2bfd69872769b6d0ccbcde3a";
- };
- };
+ eclipse-sdk = buildEclipse {
+ name = "eclipse-sdk-${platform_major}.${platform_minor}";
+ description = "Eclipse ${year}-${month} Classic";
+ src =
+ fetchurl {
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
+ sha512 = "1kq14vhzcngfhl8kjs722rshny81gxv6wcgln46x7lnpg2274sb9dprhns62fpq97l0355cmg8mnny6fsd1nqibrw09xq932v86cfm8";
+ };
};
- eclipse-sdk-48 = buildEclipse {
- name = "eclipse-sdk-4.8";
- description = "Eclipse Photon Classic";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-SDK-4.8-linux-gtk-x86_64.tar.gz;
- sha512 = "357ea9e7f426c68ced693f1c7b76eae23f9e3c7893de1f12d17994ec17b447896b5daa7292d5fbf6d9c4e5b7fd637ca5b2a6ba8ce40a2a7c2fe06f2124d31b75";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/eclipse-SDK-4.8-linux-gtk.tar.gz;
- sha512 = "c7cae7baa3978d48477090bb9941e85b4c7484021ece9c5c77a7e859e57e5c1f13556262f92b561cfb11f828b934bad7a6018be7b8fd9454e3991e8d5cae9917";
- };
- };
- };
+ ### Eclipse Java
- eclipse-sdk-37 = buildEclipse {
- name = "eclipse-sdk-3.7";
- description = "Eclipse Classic";
- sources = {
- "x86_64-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk-x86_64.tar.gz;
- sha256 = "0nf4nv7awhp1k8b1hjb7chpjyjrqnyszsjbc4dlk9phpjv3j4wg5";
- };
- "i686-linux" = fetchurl {
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-linux-gtk.tar.gz;
- sha256 = "1isn7i45l9kyn2yx6vm88jl1gnxph8ynank0aaa218cg8kdygk7j";
- };
- };
+ eclipse-java = buildEclipse {
+ name = "eclipse-java-${platform_major}.${platform_minor}";
+ description = "Eclipse IDE for Java Developers";
+ src =
+ fetchurl {
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
+ sha512 = "2xd5q7kg3aly7jnz2fijn06ljmnnd7ggwwzmndfhqwfzxpyjg1lnlln76pcd6chx7gnwdrl7khg0fs566ddabfjv17c46dj5fpw9y6j";
+ };
};
- eclipse_sdk_37 = eclipse-sdk-37; # backward compatibility, added 2016-01-30
### Environments
diff --git a/pkgs/applications/editors/eclipse/plugins.nix b/pkgs/applications/editors/eclipse/plugins.nix
index 84371d1524938fe49f5a5d6b79c6a16c2f207388..b75324ee1ee6078775750ba6e426b2cf486b410e 100644
--- a/pkgs/applications/editors/eclipse/plugins.nix
+++ b/pkgs/applications/editors/eclipse/plugins.nix
@@ -141,7 +141,7 @@ rec {
name = "antlr-runtime-4.5.3";
src = fetchurl {
- url = "http://www.antlr.org/download/${name}.jar";
+ url = "https://www.antlr.org/download/${name}.jar";
sha256 = "0lm78i2annlczlc2cg5xvby0g1dyl0sh1y5xc2pymjlmr67a1g4k";
};
@@ -153,7 +153,7 @@ rec {
meta = with stdenv.lib; {
description = "A powerful parser generator for processing structured text or binary files";
- homepage = http://www.antlr.org/;
+ homepage = https://www.antlr.org/;
license = licenses.bsd3;
platforms = platforms.all;
maintainers = [ maintainers.rycee ];
@@ -164,7 +164,7 @@ rec {
name = "antlr-runtime-4.7.1";
src = fetchurl {
- url = "http://www.antlr.org/download/${name}.jar";
+ url = "https://www.antlr.org/download/${name}.jar";
sha256 = "07f91mjclacrvkl8a307w2abq5wcqp0gcsnh0jg90ddfpqcnsla3";
};
@@ -176,7 +176,7 @@ rec {
meta = with stdenv.lib; {
description = "A powerful parser generator for processing structured text or binary files";
- homepage = http://www.antlr.org/;
+ homepage = https://www.antlr.org/;
license = licenses.bsd3;
platforms = platforms.all;
maintainers = [ maintainers.rycee ];
@@ -254,12 +254,12 @@ rec {
cdt = buildEclipseUpdateSite rec {
name = "cdt-${version}";
- version = "9.0.1";
+ version = "9.6.0";
src = fetchzip {
stripRoot = false;
- url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.0/${name}.zip";
- sha256 = "0vdx0j9ci533wnk7y17qjvjyqx38hlrdw67z6pi05vfv3r6ys39x";
+ url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.6/${name}/${name}.zip";
+ sha256 = "08rk3b1va57jcy4s161fx0xmb8dn47akhhxd2f28hspq6i2jqicm";
};
meta = with stdenv.lib; {
@@ -282,7 +282,7 @@ rec {
};
meta = with stdenv.lib; {
- homepage = http://eclipse-cs.sourceforge.net/;
+ homepage = https://eclipse-cs.sourceforge.net/;
description = "Checkstyle integration into the Eclipse IDE";
license = licenses.lgpl21;
platforms = platforms.all;
@@ -346,6 +346,33 @@ rec {
};
};
+ drools = buildEclipseUpdateSite rec {
+ name = "drools-${version}";
+ version = "7.17.0.Final";
+
+ src = fetchzip {
+ url = "https://download.jboss.org/drools/release/${version}/droolsjbpm-tools-distribution-${version}.zip";
+ sha512 = "2qzc1iszqfrfnw8xip78n3kp6hlwrvrr708vlmdk7nv525xhs0ssjaxriqdhcr0s6jripmmazxivv3763rnk2bfkh31hmbnckpx4r3m";
+ extraPostFetch = ''
+ # work around https://github.com/NixOS/nixpkgs/issues/38649
+ chmod go-w $out;
+
+ # update site is a couple levels deep, alongside some other irrelevant stuff
+ cd $out;
+ find . -type f -not -path ./binaries/org.drools.updatesite/\* -exec rm {} \;
+ rmdir sources;
+ mv binaries/org.drools.updatesite/* .;
+ rmdir binaries/org.drools.updatesite binaries;
+ '';
+ };
+
+ meta = with stdenv.lib; {
+ homepage = https://www.drools.org/;
+ description = "Drools is a Business Rules Management System (BRMS) solution";
+ license = licenses.asl20;
+ };
+ };
+
eclemma = buildEclipseUpdateSite rec {
name = "eclemma-${version}";
version = "2.3.2.201409141915";
@@ -357,7 +384,7 @@ rec {
};
meta = with stdenv.lib; {
- homepage = http://www.eclemma.org/;
+ homepage = https://www.eclemma.org/;
description = "EclEmma is a free Java code coverage tool for Eclipse";
license = licenses.epl10;
platforms = platforms.all;
@@ -470,12 +497,12 @@ rec {
jdt = buildEclipseUpdateSite rec {
name = "jdt-${version}";
- version = "4.8";
+ version = "4.10";
src = fetchzip {
stripRoot = false;
- url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.8-201806110500/org.eclipse.jdt-4.8.zip;
- sha256 = "1my0d1114mx5gzxmwqlx0rcny39ly97ixlwx53ljk6qcryhdnr88";
+ url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.10-201812060815/org.eclipse.jdt-4.10.zip;
+ sha256 = "1h11w3zd6xy5w4sk6xnyb2a27wxwhp83qfx67ji7bzdrwbvljqkz";
};
meta = with stdenv.lib; {
@@ -555,12 +582,12 @@ rec {
spotbugs = buildEclipseUpdateSite rec {
name = "spotbugs-${version}";
- version = "3.1.6";
+ version = "3.1.11";
src = fetchzip {
stripRoot = false;
url = "https://github.com/spotbugs/spotbugs/releases/download/${version}/eclipsePlugin.zip";
- sha256 = "1qsams12n64slp00nfc9v943sy9bzffzm7anqqaz2hjw64iia7fh";
+ sha256 = "0aanqwx3gy1arpbkqd846381hiy6272lzwhfjl94x8jhfykpqqbj";
};
meta = with stdenv.lib; {
@@ -587,7 +614,7 @@ rec {
};
meta = with stdenv.lib; {
- homepage = http://testng.org/;
+ homepage = https://testng.org/doc/;
description = "Eclipse plugin for the TestNG testing framework";
license = licenses.asl20;
platforms = platforms.all;
diff --git a/pkgs/applications/editors/ed/default.nix b/pkgs/applications/editors/ed/default.nix
index 832dc3c0e799734a203e3db513baaf03f5085027..90a7eeffb0479d575acc62f99ea73c3dc54a207f 100644
--- a/pkgs/applications/editors/ed/default.nix
+++ b/pkgs/applications/editors/ed/default.nix
@@ -1,14 +1,13 @@
{ stdenv, fetchurl, lzip
-, buildPlatform, hostPlatform
}:
stdenv.mkDerivation (rec {
name = "ed-${version}";
- version = "1.14.2";
+ version = "1.15";
src = fetchurl {
url = "mirror://gnu/ed/${name}.tar.lz";
- sha256 = "1nqhk3n1s1p77g2bjnj55acicsrlyb2yasqxqwpx0w0djfx64ygm";
+ sha256 = "0x6ivy5k0d7dy5z9g8q8nipr89m4qbk2ink2898qq43smp08ji5d";
};
nativeBuildInputs = [ lzip ];
@@ -31,12 +30,12 @@ stdenv.mkDerivation (rec {
license = stdenv.lib.licenses.gpl3Plus;
- homepage = http://www.gnu.org/software/ed/;
+ homepage = https://www.gnu.org/software/ed/;
maintainers = [ ];
platforms = stdenv.lib.platforms.unix;
};
-} // stdenv.lib.optionalAttrs (hostPlatform != buildPlatform) {
+} // stdenv.lib.optionalAttrs (stdenv.hostPlatform != stdenv.buildPlatform) {
# This may be moved above during a stdenv rebuild.
preConfigure = ''
configureFlagsArray+=("CC=$CC")
diff --git a/pkgs/applications/editors/edbrowse/default.nix b/pkgs/applications/editors/edbrowse/default.nix
index 28775e48e1a7f1ac50c96395acd0460890a39306..0b6e28434f56458a5812a3c11641d532c1febdf0 100644
--- a/pkgs/applications/editors/edbrowse/default.nix
+++ b/pkgs/applications/editors/edbrowse/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, duktape, curl, pcre, readline, openssl, perl, html-tidy }:
+{ stdenv, fetchFromGitHub, fetchpatch, duktape, curl, pcre, readline, openssl, perl, html-tidy }:
stdenv.mkDerivation rec {
name = "edbrowse-${version}";
@@ -6,7 +6,15 @@ stdenv.mkDerivation rec {
buildInputs = [ curl pcre readline openssl duktape perl html-tidy ];
- patchPhase = ''
+ patches = [
+ # Fix build against recent libcurl
+ (fetchpatch {
+ url = https://github.com/CMB/edbrowse/commit/5d2b9e21fdf019f461ebe62738d615428d5db963.diff;
+ sha256 = "167q8n0syj3iv6lxrbpv4kvb63j4byj4qxrxayy08bah3pss3gky";
+ })
+ ];
+
+ postPatch = ''
for i in ./tools/*.pl
do
substituteInPlace $i --replace "/usr/bin/perl" "${perl}/bin/perl"
diff --git a/pkgs/applications/editors/emacs-modes/bbdb/3.nix b/pkgs/applications/editors/emacs-modes/bbdb/3.nix
index 44116fbac0c1d96028eee080816345827f8f874c..d20ab53bf7e10fb44f35529ca44475afd786f142 100644
--- a/pkgs/applications/editors/emacs-modes/bbdb/3.nix
+++ b/pkgs/applications/editors/emacs-modes/bbdb/3.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
name = "bbdb-3.1.2";
src = fetchurl {
- url = "http://download.savannah.gnu.org/releases/bbdb/${name}.tar.gz";
+ url = "https://download.savannah.gnu.org/releases/bbdb/${name}.tar.gz";
sha256 = "1gs16bbpiiy01w9pyg12868r57kx1v3hnw04gmqsmpc40l1hyy05";
};
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
'';
meta = {
- homepage = http://savannah.nongnu.org/projects/bbdb/;
+ homepage = https://savannah.nongnu.org/projects/bbdb/;
description = "The Insidious Big Brother Database (BBDB), a contact management utility for Emacs, version 3";
license = "GPL";
};
diff --git a/pkgs/applications/editors/emacs-modes/calfw/default.nix b/pkgs/applications/editors/emacs-modes/calfw/default.nix
index 091635feda6faba87380ea5a1458f169766255dc..b8c61bb97af6785299958d4b9c8db52b04048317 100644
--- a/pkgs/applications/editors/emacs-modes/calfw/default.nix
+++ b/pkgs/applications/editors/emacs-modes/calfw/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
license = stdenv.lib.licenses.gpl3Plus;
- maintainers = with stdenv.lib.maintainers; [ chaoflow ];
- platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux;
+ maintainers = with stdenv.lib.maintainers; [ ];
+ platforms = stdenv.lib.platforms.unix;
};
}
diff --git a/pkgs/applications/editors/emacs-modes/cask/default.nix b/pkgs/applications/editors/emacs-modes/cask/default.nix
index aed976051f2012435ac65e2bdc5066ee5fc86556..34120db6aa70cbc6045b7571ef4c9d8020bb3bb4 100644
--- a/pkgs/applications/editors/emacs-modes/cask/default.nix
+++ b/pkgs/applications/editors/emacs-modes/cask/default.nix
@@ -49,6 +49,6 @@ stdenv.mkDerivation rec {
homepage = https://github.com/cask/cask;
license = licenses.gpl3Plus;
platforms = platforms.all;
- maintainers = [ maintainers.jgeerds ];
+ maintainers = [ ];
};
}
diff --git a/pkgs/applications/editors/emacs-modes/cedille/default.nix b/pkgs/applications/editors/emacs-modes/cedille/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..2d1cbb75981e3ef70f3d540ff66dbdcda8f824a1
--- /dev/null
+++ b/pkgs/applications/editors/emacs-modes/cedille/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, cedille, emacs }:
+
+stdenv.mkDerivation rec {
+ name = "cedille-mode-${version}";
+ version = cedille.version;
+
+ src = cedille.src;
+
+ buildInputs = [ emacs ];
+
+ buildPhase = ":";
+
+ installPhase = ''
+ install -d $out/share/emacs/site-lisp
+ install se-mode/*.el se-mode/*.elc $out/share/emacs/site-lisp
+ install cedille-mode/*.el cedille-mode/*.elc $out/share/emacs/site-lisp
+ install *.el *.elc $out/share/emacs/site-lisp
+ substituteInPlace $out/share/emacs/site-lisp/cedille-mode.el \
+ --replace /usr/bin/cedille ${cedille}/bin/cedille \
+
+ '';
+
+ meta = {
+ description = "Emacs major mode for Cedille";
+ homepage = cedille.meta.homepage;
+ license = cedille.meta.license ;
+ platforms = cedille.meta.platforms;
+ maintainers = cedille.meta.maintainers;
+ };
+}
diff --git a/pkgs/applications/editors/emacs-modes/color-theme/default.nix b/pkgs/applications/editors/emacs-modes/color-theme/default.nix
index a3d76a307c741be6140418f319ddcd26d7998af3..407b9e58f0bf0389fc6b4b39dc6e881ca040826c 100644
--- a/pkgs/applications/editors/emacs-modes/color-theme/default.nix
+++ b/pkgs/applications/editors/emacs-modes/color-theme/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
meta = {
description = "Emacs-lisp mode for skinning your Emacs";
- homepage = http://www.nongnu.org/color-theme;
+ homepage = https://www.nongnu.org/color-theme;
license = stdenv.lib.licenses.gpl2Plus;
platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/editors/emacs-modes/elpa-generated.nix b/pkgs/applications/editors/emacs-modes/elpa-generated.nix
index 146e4128f7d0f23043f04317e9b10bba297f2ee2..2c560ba599f3275a6889187d5a64559d3008ef1d 100644
--- a/pkgs/applications/editors/emacs-modes/elpa-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/elpa-generated.nix
@@ -19,10 +19,10 @@
elpaBuild {
pname = "ack";
ename = "ack";
- version = "1.5";
+ version = "1.8";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/ack-1.5.tar";
- sha256 = "0sljshiy44z27idy0rxjs2fx4smlm4v607wic7md1vihp6qp4l9r";
+ url = "https://elpa.gnu.org/packages/ack-1.8.tar";
+ sha256 = "1d4218km7j1bx1fsna29j3gi3k2ak2fzbk1gyki327pnnlma6bav";
};
packageRequires = [];
meta = {
@@ -39,10 +39,10 @@
elpaBuild {
pname = "ada-mode";
ename = "ada-mode";
- version = "5.3.1";
+ version = "6.1.0";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/ada-mode-5.3.1.tar";
- sha256 = "0srna7w3y2nq0y80a01bcx8mg6gvind7nzvsbk9bd7rrr05njrd9";
+ url = "https://elpa.gnu.org/packages/ada-mode-6.1.0.tar";
+ sha256 = "1qa4kjv5xxlj50fghg5516cxn8ckv8vlyarcab2isxjnnxnb6g7s";
};
packageRequires = [ cl-lib emacs wisi ];
meta = {
@@ -54,10 +54,10 @@
elpaBuild {
pname = "ada-ref-man";
ename = "ada-ref-man";
- version = "2012.3";
+ version = "2012.5";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/ada-ref-man-2012.3.tar";
- sha256 = "0w88xw51jb85nmqbi3i9kj9kx2fa6zlazk3x7afll7njc6g4105z";
+ url = "https://elpa.gnu.org/packages/ada-ref-man-2012.5.tar";
+ sha256 = "0n7izqc44i3l6fxbzkq9gwwlcf04rr9g1whrk8biz84jhbyh23x8";
};
packageRequires = [];
meta = {
@@ -69,10 +69,10 @@
elpaBuild {
pname = "adaptive-wrap";
ename = "adaptive-wrap";
- version = "0.5.2";
+ version = "0.7";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/adaptive-wrap-0.5.2.el";
- sha256 = "1qcf1cabn4wb34cdmlyk3rv5dl1dcrxrbaw38kly1prs6y4l22aw";
+ url = "https://elpa.gnu.org/packages/adaptive-wrap-0.7.el";
+ sha256 = "10fb8gzvkbnrgzv28n1rczs03dvapr7rvi0kd73j6yf1zg2iz6qp";
};
packageRequires = [];
meta = {
@@ -163,10 +163,10 @@
elpaBuild {
pname = "arbitools";
ename = "arbitools";
- version = "0.95";
+ version = "0.97";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/arbitools-0.95.el";
- sha256 = "1v6i9d35xqag9a8j12n3xjircwzndjwgb84qm7rsgbns60v3ci8y";
+ url = "https://elpa.gnu.org/packages/arbitools-0.97.el";
+ sha256 = "0fx1z4mw3v42xzixsj80xw56pg00bch04galkjbxbqzm25nl4aha";
};
packageRequires = [ cl-lib ];
meta = {
@@ -204,16 +204,16 @@
license = lib.licenses.free;
};
}) {};
- auctex = callPackage ({ elpaBuild, fetchurl, lib }:
+ auctex = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "auctex";
ename = "auctex";
- version = "12.1.1";
+ version = "12.1.2";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/auctex-12.1.1.tar";
- sha256 = "10l96569dy9pfp8bm64pndhk1skg65kqhsyllwfa0zvb7mjkm70l";
+ url = "https://elpa.gnu.org/packages/auctex-12.1.2.tar";
+ sha256 = "1yibg2anpmyr2a27wm4xqjsvsi9km2jzb56bf7cwyj8dnjfsd11n";
};
- packageRequires = [];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/auctex.html";
license = lib.licenses.free;
@@ -309,6 +309,40 @@
license = lib.licenses.free;
};
}) {};
+ brief = callPackage ({ elpaBuild, fetchurl, lib }:
+ elpaBuild {
+ pname = "brief";
+ ename = "brief";
+ version = "5.87";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/brief-5.87.tar";
+ sha256 = "02z8fzzf1zsk2r0cnssz3i2nd4qwsnya4i2r4qi4ndc1xjlsvgwc";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/brief.html";
+ license = lib.licenses.free;
+ };
+ }) {};
+ buffer-expose = callPackage ({ cl-lib ? null
+ , elpaBuild
+ , emacs
+ , fetchurl
+ , lib }:
+ elpaBuild {
+ pname = "buffer-expose";
+ ename = "buffer-expose";
+ version = "0.4.1";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/buffer-expose-0.4.1.el";
+ sha256 = "05b1mhcv3860g93a7myqqrhmb9gpp19b4bcxhmdbmf4m0f7p9fw4";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/buffer-expose.html";
+ license = lib.licenses.free;
+ };
+ }) {};
bug-hunter = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib, seq }:
elpaBuild {
pname = "bug-hunter";
@@ -414,6 +448,21 @@
license = lib.licenses.free;
};
}) {};
+ clipboard-collector = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "clipboard-collector";
+ ename = "clipboard-collector";
+ version = "0.2";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/clipboard-collector-0.2.el";
+ sha256 = "19scspkxgm3b1jkv10jy6nw9gv1q6sfjys09l37mvsva3djxa1dl";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/clipboard-collector.html";
+ license = lib.licenses.free;
+ };
+ }) {};
cobol-mode = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "cobol-mode";
@@ -463,10 +512,10 @@
elpaBuild {
pname = "company";
ename = "company";
- version = "0.9.6";
+ version = "0.9.9";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/company-0.9.6.tar";
- sha256 = "0w1jqhs87g0sqhv2iw6a5i8f4yjkrc65fb3h6vyv11sb8kfnhda7";
+ url = "https://elpa.gnu.org/packages/company-0.9.9.tar";
+ sha256 = "1qinkz8gwgc27p3p3c9kddrrwx0jb4w0vgx7jq8fwpfj1n92m1rv";
};
packageRequires = [ emacs ];
meta = {
@@ -478,10 +527,10 @@
elpaBuild {
pname = "company-ebdb";
ename = "company-ebdb";
- version = "1";
+ version = "1.1";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/company-ebdb-1.el";
- sha256 = "1awriwvjpf9k2r6hzawai5kxz28j40zk9fvpb946kd5yj0hxr9nc";
+ url = "https://elpa.gnu.org/packages/company-ebdb-1.1.el";
+ sha256 = "146qpiigz12zp1823ggxfrx090g0mxs7gz1ba7sa0iq6ibgzwwm9";
};
packageRequires = [ company ebdb ];
meta = {
@@ -561,10 +610,10 @@
elpaBuild {
pname = "crisp";
ename = "crisp";
- version = "1.3.4";
+ version = "1.3.6";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/crisp-1.3.4.el";
- sha256 = "1xbnf7xlw499zsnr5ky2bghb2fzg3g7cf2ldmbb7c3b84raryn0i";
+ url = "https://elpa.gnu.org/packages/crisp-1.3.6.el";
+ sha256 = "0jf4668h0mzh8han2vbvpzz8m02b8rsbdrj0ddar30w5i6v2f8kz";
};
packageRequires = [];
meta = {
@@ -606,10 +655,10 @@
elpaBuild {
pname = "darkroom";
ename = "darkroom";
- version = "0.1";
+ version = "0.2";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/darkroom-0.1.el";
- sha256 = "0fif8fm1h7x7g16949shfnaik5f5488clsvkf8bi5izpqp3vi6ak";
+ url = "https://elpa.gnu.org/packages/darkroom-0.2.el";
+ sha256 = "1a528brhz4vckhp77n2c1phkyqdliykpj9kzk3f834f4rwnb5mp0";
};
packageRequires = [ cl-lib ];
meta = {
@@ -649,18 +698,19 @@
}) {};
debbugs = callPackage ({ cl-lib ? null
, elpaBuild
+ , emacs
, fetchurl
, lib
, soap-client }:
elpaBuild {
pname = "debbugs";
ename = "debbugs";
- version = "0.15";
+ version = "0.17";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/debbugs-0.15.tar";
- sha256 = "1x7jw2ldgkknyxg7x9fhnqkary691icnysmi3xw0g2fjrvllzhqw";
+ url = "https://elpa.gnu.org/packages/debbugs-0.17.tar";
+ sha256 = "0zclh2nxj5p10n214sxyxy3ca07l5s9p5spk0xp1smr6nzn0w7gb";
};
- packageRequires = [ cl-lib soap-client ];
+ packageRequires = [ cl-lib emacs soap-client ];
meta = {
homepage = "https://elpa.gnu.org/packages/debbugs.html";
license = lib.licenses.free;
@@ -696,16 +746,16 @@
license = lib.licenses.free;
};
}) {};
- diff-hl = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
+ diff-hl = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "diff-hl";
ename = "diff-hl";
- version = "1.8.4";
+ version = "1.8.6";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/diff-hl-1.8.4.tar";
- sha256 = "0axhidc3cym7a2x4rpxf4745qss9s9ajyg4s9h5b4zn7v7fyp71n";
+ url = "https://elpa.gnu.org/packages/diff-hl-1.8.6.tar";
+ sha256 = "02hvi5jxv2anf62lw878bdz6xk7xjhjd5q85pqihmadbpj6i6pfq";
};
- packageRequires = [ cl-lib ];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/diff-hl.html";
license = lib.licenses.free;
@@ -730,10 +780,10 @@
elpaBuild {
pname = "dired-du";
ename = "dired-du";
- version = "0.5";
+ version = "0.5.2";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/dired-du-0.5.tar";
- sha256 = "09yj37p2fa5f81fqrzwghjkyy2ydsf4rbkfwpn2yyvzd5nd97bpl";
+ url = "https://elpa.gnu.org/packages/dired-du-0.5.2.tar";
+ sha256 = "0vhph7vcicsiq28b10h3b4dvnhckcy4gccpdgsad5j7pwa5k26m1";
};
packageRequires = [ cl-lib emacs ];
meta = {
@@ -741,6 +791,36 @@
license = lib.licenses.free;
};
}) {};
+ dired-git-info = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "dired-git-info";
+ ename = "dired-git-info";
+ version = "0.2";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/dired-git-info-0.2.el";
+ sha256 = "1pxn6kmgnynil13gp3m0y8hhkvciy3dcd55psj70pkrj50555dqx";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/dired-git-info.html";
+ license = lib.licenses.free;
+ };
+ }) {};
+ disk-usage = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "disk-usage";
+ ename = "disk-usage";
+ version = "1.3.1";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/disk-usage-1.3.1.el";
+ sha256 = "1jkwlg7w4090a7byfjh30mjz1libls8n71pphmn3973hqwaclnr7";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/disk-usage.html";
+ license = lib.licenses.free;
+ };
+ }) {};
dismal = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "dismal";
@@ -760,10 +840,10 @@
elpaBuild {
pname = "djvu";
ename = "djvu";
- version = "0.5";
+ version = "1.0.1";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/djvu-0.5.el";
- sha256 = "1wpyv4ismfsz5hfaj75j3h3nni1mnk33czhw3rd45cf32a2zkqsj";
+ url = "https://elpa.gnu.org/packages/djvu-1.0.1.el";
+ sha256 = "1am4cm9csc5df3mbdby7j197j8yxv0x0maf6kfmn2ww1iwcyv8x6";
};
packageRequires = [];
meta = {
@@ -820,10 +900,10 @@
elpaBuild {
pname = "ebdb";
ename = "ebdb";
- version = "0.5.4";
+ version = "0.6.6";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/ebdb-0.5.4.tar";
- sha256 = "1dripbiwplyjalzmkr8awaimhkp9f6c2bhnm3c77027k2b87w4lf";
+ url = "https://elpa.gnu.org/packages/ebdb-0.6.6.tar";
+ sha256 = "1jgx099z9xg47v698qjbk5q70bakfw7zxaj25z4jz1mq64fvk6b5";
};
packageRequires = [ cl-lib emacs seq ];
meta = {
@@ -876,16 +956,21 @@
license = lib.licenses.free;
};
}) {};
- eglot = callPackage ({ elpaBuild, emacs, fetchurl, jsonrpc, lib }:
+ eglot = callPackage ({ elpaBuild
+ , emacs
+ , fetchurl
+ , flymake ? null
+ , jsonrpc
+ , lib }:
elpaBuild {
pname = "eglot";
ename = "eglot";
- version = "1.1";
+ version = "1.4";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/eglot-1.1.tar";
- sha256 = "01h4wh87lrd9l50y20gjjkgg760v8ixvbcb3q8jykl29989zw62y";
+ url = "https://elpa.gnu.org/packages/eglot-1.4.tar";
+ sha256 = "1f2p08ly17jcjyh8bif5zhmzhx3z5y9z20v6z24z939bqk8c1pdq";
};
- packageRequires = [ emacs jsonrpc ];
+ packageRequires = [ emacs flymake jsonrpc ];
meta = {
homepage = "https://elpa.gnu.org/packages/eglot.html";
license = lib.licenses.free;
@@ -900,10 +985,10 @@
elpaBuild {
pname = "el-search";
ename = "el-search";
- version = "1.7.3";
+ version = "1.11.4";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/el-search-1.7.3.tar";
- sha256 = "0nxjgi027mjjn53nm9ara4nyr7kyqjawsmfaygsxqjv0mbykjmd1";
+ url = "https://elpa.gnu.org/packages/el-search-1.11.4.tar";
+ sha256 = "152kx9s72h94n6nsrn84cmfb264cdw61ny5fn0n3fa581ipy34nm";
};
packageRequires = [ cl-print emacs stream ];
meta = {
@@ -971,7 +1056,8 @@
license = lib.licenses.free;
};
}) {};
- ergoemacs-mode = callPackage ({ elpaBuild
+ ergoemacs-mode = callPackage ({ cl-lib ? null
+ , elpaBuild
, emacs
, fetchurl
, lib
@@ -979,12 +1065,12 @@
elpaBuild {
pname = "ergoemacs-mode";
ename = "ergoemacs-mode";
- version = "5.14.7.3";
+ version = "5.16.10.12";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/ergoemacs-mode-5.14.7.3.tar";
- sha256 = "0lqqrnw6z9w7js8r40khckjc1cyxdiwx8kapf5pvyfs09gs89i90";
+ url = "https://elpa.gnu.org/packages/ergoemacs-mode-5.16.10.12.tar";
+ sha256 = "1zfzjmi30lllrbyzicmp11c9lpa82g57wi134q9bajvzn9ryx4jr";
};
- packageRequires = [ emacs undo-tree ];
+ packageRequires = [ cl-lib emacs undo-tree ];
meta = {
homepage = "https://elpa.gnu.org/packages/ergoemacs-mode.html";
license = lib.licenses.free;
@@ -995,17 +1081,18 @@
, fetchurl
, fsm
, lib
+ , nadvice
, soap-client
, url-http-ntlm }:
elpaBuild {
pname = "excorporate";
ename = "excorporate";
- version = "0.7.6";
+ version = "0.8.1";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/excorporate-0.7.6.tar";
- sha256 = "02bp0z6vpssc12vxxs1g4whmfxf88wsk0bcq4422vvz256l6vpf9";
+ url = "https://elpa.gnu.org/packages/excorporate-0.8.1.tar";
+ sha256 = "1k89472x80wsn14y16km5bgynmmd2kbdfhylb3cc17jvdn1xr53y";
};
- packageRequires = [ emacs fsm soap-client url-http-ntlm ];
+ packageRequires = [ emacs fsm nadvice soap-client url-http-ntlm ];
meta = {
homepage = "https://elpa.gnu.org/packages/excorporate.html";
license = lib.licenses.free;
@@ -1015,10 +1102,10 @@
elpaBuild {
pname = "exwm";
ename = "exwm";
- version = "0.19";
+ version = "0.22.1";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/exwm-0.19.tar";
- sha256 = "11xd2w4h3zdwkdxypvmcz8s7q72cn76lfr9js77jbizyj6b04lr0";
+ url = "https://elpa.gnu.org/packages/exwm-0.22.1.tar";
+ sha256 = "1ggb8vgxxml8c5bvamv9jgz80gs6h9xirjgphq8gwkywwd5xyiq4";
};
packageRequires = [ xelb ];
meta = {
@@ -1071,6 +1158,36 @@
license = lib.licenses.free;
};
}) {};
+ flymake = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "flymake";
+ ename = "flymake";
+ version = "1.0.5";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/flymake-1.0.5.el";
+ sha256 = "1zxzad84gcbdfh3pp606sspy8zkgxvngbzbimc2cam4pjcmwfx1y";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/flymake.html";
+ license = lib.licenses.free;
+ };
+ }) {};
+ fountain-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "fountain-mode";
+ ename = "fountain-mode";
+ version = "2.6.2";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/fountain-mode-2.6.2.el";
+ sha256 = "0ysxk9ap919scg2zz0psw8hk1dj35ys9p0havswsjzm46k43xd6z";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/fountain-mode.html";
+ license = lib.licenses.free;
+ };
+ }) {};
frame-tabs = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "frame-tabs";
@@ -1086,6 +1203,21 @@
license = lib.licenses.free;
};
}) {};
+ frog-menu = callPackage ({ avy, elpaBuild, emacs, fetchurl, lib, posframe }:
+ elpaBuild {
+ pname = "frog-menu";
+ ename = "frog-menu";
+ version = "0.2.2";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/frog-menu-0.2.2.el";
+ sha256 = "0kv31p42gmi01xalbvwksk10l28ascdr214bmv1z22dipv0zm30i";
+ };
+ packageRequires = [ avy emacs posframe ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/frog-menu.html";
+ license = lib.licenses.free;
+ };
+ }) {};
fsm = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "fsm";
@@ -1105,10 +1237,10 @@
elpaBuild {
pname = "ggtags";
ename = "ggtags";
- version = "0.8.12";
+ version = "0.8.13";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/ggtags-0.8.12.el";
- sha256 = "0ny3llk021g6r0s75xdm4hzpbxv393ddm2r6f2xdk8kqnq4gnirp";
+ url = "https://elpa.gnu.org/packages/ggtags-0.8.13.el";
+ sha256 = "1qa7lcrcmf76sf6dy8sxbg4adq7rg59fm0n5848w3qxgsr0h45fg";
};
packageRequires = [ cl-lib emacs ];
meta = {
@@ -1165,10 +1297,10 @@
elpaBuild {
pname = "gnorb";
ename = "gnorb";
- version = "1.5.5";
+ version = "1.6.1";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/gnorb-1.5.5.tar";
- sha256 = "02l9snarsnzwp9w284wiylbd596g0f9bmahb1nybr14vh64ygh3r";
+ url = "https://elpa.gnu.org/packages/gnorb-1.6.1.tar";
+ sha256 = "0n4460hsmcc3l0y3nb3fysvh33cjwgv0a3mkc26xcx8v85zl7m63";
};
packageRequires = [ cl-lib ];
meta = {
@@ -1196,6 +1328,71 @@
license = lib.licenses.free;
};
}) {};
+ gnus-mock = callPackage ({ elpaBuild, fetchurl, lib }:
+ elpaBuild {
+ pname = "gnus-mock";
+ ename = "gnus-mock";
+ version = "0.4.0";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/gnus-mock-0.4.0.tar";
+ sha256 = "058bd4f8za9bxayrd2j5b05qvk8lxxm8mmfwxb73d7k15z3z3l3s";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/gnus-mock.html";
+ license = lib.licenses.free;
+ };
+ }) {};
+ gpastel = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "gpastel";
+ ename = "gpastel";
+ version = "0.5.0";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/gpastel-0.5.0.el";
+ sha256 = "1wky6047071vgyyw2m929nbwg4d9qqp1mjqwk7a5rs8hfr4xqxfw";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/gpastel.html";
+ license = lib.licenses.free;
+ };
+ }) {};
+ greader = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "greader";
+ ename = "greader";
+ version = "0.1";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/greader-0.1.tar";
+ sha256 = "0mwhmidzv9vnmx6xls8pq4ra4m0f4yg677xgv34ivv34vsgg1mhb";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/greader.html";
+ license = lib.licenses.free;
+ };
+ }) {};
+ guess-language = callPackage ({ advice
+ , cl-lib ? null
+ , elpaBuild
+ , emacs
+ , fetchurl
+ , lib }:
+ elpaBuild {
+ pname = "guess-language";
+ ename = "guess-language";
+ version = "0.0.1";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/guess-language-0.0.1.el";
+ sha256 = "11a6m2337j4ncppaf59yr2vavvvsph2qh51d12zmq58g9wh3d7wz";
+ };
+ packageRequires = [ advice cl-lib emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/guess-language.html";
+ license = lib.licenses.free;
+ };
+ }) {};
heap = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "heap";
@@ -1232,10 +1429,10 @@
elpaBuild {
pname = "highlight-escape-sequences";
ename = "highlight-escape-sequences";
- version = "0.3";
+ version = "0.4";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/highlight-escape-sequences-0.3.el";
- sha256 = "0q54h0zdaflr2sk4mwgm2ix8cdq4rm4pz03ln430qxc1zm8pz6gy";
+ url = "https://elpa.gnu.org/packages/highlight-escape-sequences-0.4.el";
+ sha256 = "1z8r9rnppn7iy7xv4kprfsqxday16h7c471i7rkyi3rv3l0pfxd0";
};
packageRequires = [];
meta = {
@@ -1348,14 +1545,29 @@
license = lib.licenses.free;
};
}) {};
+ ivy-explorer = callPackage ({ elpaBuild, emacs, fetchurl, ivy, lib }:
+ elpaBuild {
+ pname = "ivy-explorer";
+ ename = "ivy-explorer";
+ version = "0.3.2";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/ivy-explorer-0.3.2.el";
+ sha256 = "0q9gy9w22hnq30bfmnpqknk0qc1rcbjcybpjgb8hnlldvcci95l7";
+ };
+ packageRequires = [ emacs ivy ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/ivy-explorer.html";
+ license = lib.licenses.free;
+ };
+ }) {};
javaimp = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "javaimp";
ename = "javaimp";
- version = "0.6";
+ version = "0.6.1";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/javaimp-0.6.tar";
- sha256 = "015kchx6brsjk7q6lz9y44a18n5imapd95czx50hqdscjczmj2ff";
+ url = "https://elpa.gnu.org/packages/javaimp-0.6.1.tar";
+ sha256 = "1piaj3sgw6a05g9dhkbrn5n490w01z1rxa7axh3vg1xqbs6rv7lw";
};
packageRequires = [];
meta = {
@@ -1382,10 +1594,10 @@
elpaBuild {
pname = "js2-mode";
ename = "js2-mode";
- version = "20180301";
+ version = "20190219";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/js2-mode-20180301.tar";
- sha256 = "0kcs70iygbpaxs094q6agsjs56sz03jy4fwk178f9hr93x95pynx";
+ url = "https://elpa.gnu.org/packages/js2-mode-20190219.tar";
+ sha256 = "0jgqs7cwykw5ihdq9wp5qc05y6br9gsyfiylqhjq43z59673chcc";
};
packageRequires = [ cl-lib emacs ];
meta = {
@@ -1412,10 +1624,10 @@
elpaBuild {
pname = "jsonrpc";
ename = "jsonrpc";
- version = "1.0.0";
+ version = "1.0.7";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/jsonrpc-1.0.0.el";
- sha256 = "06lmmn7j2ilkvwibbpgnd8p6d63fjjnxd2ma8f4jw6vrz1f7lwvs";
+ url = "https://elpa.gnu.org/packages/jsonrpc-1.0.7.el";
+ sha256 = "19z35gjphl4mlgpznfhlccgipnmbb3c1dvax48f4hw8qwksfcac1";
};
packageRequires = [ emacs ];
meta = {
@@ -1573,14 +1785,29 @@
license = lib.licenses.free;
};
}) {};
+ map = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "map";
+ ename = "map";
+ version = "2.0";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/map-2.0.el";
+ sha256 = "1djygpvk1qgldg9my0lh8n2z1n6acz3y5ws7sv2w08hvxdlxz857";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/map.html";
+ license = lib.licenses.free;
+ };
+ }) {};
markchars = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "markchars";
ename = "markchars";
- version = "0.2.0";
+ version = "0.2.1";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/markchars-0.2.0.el";
- sha256 = "1wn9v9jzcyq5wxhw5839jsggfy97955ngspn2gn6jmvz6zdgy4hv";
+ url = "https://elpa.gnu.org/packages/markchars-0.2.1.el";
+ sha256 = "0dpq3brblcxjkcqv3xsmlsx5z9zbv94v0kg4j1sic3brz6hbl4lk";
};
packageRequires = [];
meta = {
@@ -1753,6 +1980,21 @@
license = lib.licenses.free;
};
}) {};
+ nadvice = callPackage ({ elpaBuild, fetchurl, lib }:
+ elpaBuild {
+ pname = "nadvice";
+ ename = "nadvice";
+ version = "0.3";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/nadvice-0.3.el";
+ sha256 = "0gi3csnxbs8h7iy0scsl35sic3gv90swa89hhdjwb7qvpirfdcgw";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/nadvice.html";
+ license = lib.licenses.free;
+ };
+ }) {};
nameless = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "nameless";
@@ -1768,7 +2010,12 @@
license = lib.licenses.free;
};
}) {};
- names = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
+ names = callPackage ({ cl-lib ? null
+ , elpaBuild
+ , emacs
+ , fetchurl
+ , lib
+ , nadvice }:
elpaBuild {
pname = "names";
ename = "names";
@@ -1777,7 +2024,7 @@
url = "https://elpa.gnu.org/packages/names-20151201.0.tar";
sha256 = "13smsf039x4yd7pzvllgn1vz8lhkwghnhip9y2bka38vk37w912d";
};
- packageRequires = [ cl-lib emacs ];
+ packageRequires = [ cl-lib emacs nadvice ];
meta = {
homepage = "https://elpa.gnu.org/packages/names.html";
license = lib.licenses.free;
@@ -1791,10 +2038,10 @@
elpaBuild {
pname = "nhexl-mode";
ename = "nhexl-mode";
- version = "0.9";
+ version = "1.2";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/nhexl-mode-0.9.el";
- sha256 = "1xdr0z5nlfqsyrmj3cwgfp6qlirhr46ggawr7pr2ipnp64wgnmkc";
+ url = "https://elpa.gnu.org/packages/nhexl-mode-1.2.el";
+ sha256 = "031h22p564qdvr9khs05qcba06pmsk68cr7zyc7c04hfr3y3ziaf";
};
packageRequires = [ cl-lib emacs ];
meta = {
@@ -1806,10 +2053,10 @@
elpaBuild {
pname = "nlinum";
ename = "nlinum";
- version = "1.8.1";
+ version = "1.9";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/nlinum-1.8.1.el";
- sha256 = "0fx560yfjy6nqgs1d3fiv0h46i8q3r592clsia7nihkriah7rlwf";
+ url = "https://elpa.gnu.org/packages/nlinum-1.9.el";
+ sha256 = "03zqlz58fvh4cpfl43h7py2fpnc7m37f1ys8zhrc511ccq9cwkdn";
};
packageRequires = [];
meta = {
@@ -1877,6 +2124,21 @@
license = lib.licenses.free;
};
}) {};
+ objed = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "objed";
+ ename = "objed";
+ version = "0.8.1";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/objed-0.8.1.tar";
+ sha256 = "06jfvz7avh28p1ghyd1aik5lz8k9fnv1fcxh9npm1iyvh810y5zj";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/objed.html";
+ license = lib.licenses.free;
+ };
+ }) {};
omn-mode = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "omn-mode";
@@ -1911,10 +2173,10 @@
elpaBuild {
pname = "org";
ename = "org";
- version = "9.1.13";
+ version = "9.2.3";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/org-9.1.13.tar";
- sha256 = "1vx0n32gvrgy2bl2b4pvxf00cywxwm57gi46f2b2zlrnmd5n85pr";
+ url = "https://elpa.gnu.org/packages/org-9.2.3.tar";
+ sha256 = "0hqy4lns9q5p0l1ylgmlckqprn9sbasszhznanmv0rsh0gzhsbyw";
};
packageRequires = [];
meta = {
@@ -1922,14 +2184,29 @@
license = lib.licenses.free;
};
}) {};
+ org-edna = callPackage ({ elpaBuild, emacs, fetchurl, lib, org, seq }:
+ elpaBuild {
+ pname = "org-edna";
+ ename = "org-edna";
+ version = "1.0.2";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/org-edna-1.0.2.tar";
+ sha256 = "005pmnqr41s2w72gahq9bf4l5kw601i19ypiqfnb8aq0f4acjr3d";
+ };
+ packageRequires = [ emacs org seq ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/org-edna.html";
+ license = lib.licenses.free;
+ };
+ }) {};
orgalist = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "orgalist";
ename = "orgalist";
- version = "1.8";
+ version = "1.9";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/orgalist-1.8.el";
- sha256 = "1wqwnmn08i0qkxm8b2iclvf6cydcn68h1p3h7r1kig2bdn5b8948";
+ url = "https://elpa.gnu.org/packages/orgalist-1.9.el";
+ sha256 = "1rmmcyiiqkq54hn74nhzxzl4nvd902hv6gq341jwhrm7yiagffi6";
};
packageRequires = [ emacs ];
meta = {
@@ -1956,10 +2233,10 @@
elpaBuild {
pname = "other-frame-window";
ename = "other-frame-window";
- version = "1.0.4";
+ version = "1.0.6";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/other-frame-window-1.0.4.el";
- sha256 = "0hg82j8zjh0ann6bf56r0p8s0y3a016zny8byp80mcvkw63wrn5i";
+ url = "https://elpa.gnu.org/packages/other-frame-window-1.0.6.el";
+ sha256 = "04h0jr73xv8inm52h8b8zbc9lsnlzkn40qy99x4x0lkkdqqxw1ny";
};
packageRequires = [ emacs ];
meta = {
@@ -2012,6 +2289,21 @@
license = lib.licenses.free;
};
}) {};
+ peg = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "peg";
+ ename = "peg";
+ version = "1.0";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/peg-1.0.tar";
+ sha256 = "0skr5dz9k34r409hisnj37n1b7n62l3md0glnfx578xkbmxlpcxl";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/peg.html";
+ license = lib.licenses.free;
+ };
+ }) {};
pinentry = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "pinentry";
@@ -2046,10 +2338,10 @@
elpaBuild {
pname = "posframe";
ename = "posframe";
- version = "0.3.0";
+ version = "0.4.3";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/posframe-0.3.0.el";
- sha256 = "0q74lwklr29c50qgaqly48nj7f49kgxiv70lsvhdy8cg2v082v8k";
+ url = "https://elpa.gnu.org/packages/posframe-0.4.3.el";
+ sha256 = "06q0p4qim6lha2xr9fxaspbzw01xn01ik9gxlld6hdhh19b65cmi";
};
packageRequires = [ emacs ];
meta = {
@@ -2147,16 +2439,16 @@
license = lib.licenses.free;
};
}) {};
- rcirc-color = callPackage ({ elpaBuild, fetchurl, lib }:
+ rcirc-color = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "rcirc-color";
ename = "rcirc-color";
- version = "0.3";
+ version = "0.4.1";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/rcirc-color-0.3.el";
- sha256 = "1ya4agh63x60lv8qzrjrng02dnrc70ci0s05b800iq71k71ss3dl";
+ url = "https://elpa.gnu.org/packages/rcirc-color-0.4.1.el";
+ sha256 = "1zs3i3xr8zbjr8hzr1r1qx7mqb2wckpn25qh9444c9as2dnh9sn9";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/rcirc-color.html";
license = lib.licenses.free;
@@ -2220,6 +2512,21 @@
license = lib.licenses.free;
};
}) {};
+ relint = callPackage ({ elpaBuild, fetchurl, lib, xr }:
+ elpaBuild {
+ pname = "relint";
+ ename = "relint";
+ version = "1.6";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/relint-1.6.el";
+ sha256 = "17nyy3zqpqgs22lrrpdm0k56xnhj5l3y2y3lnmhcqw63xksgbsyk";
+ };
+ packageRequires = [ xr ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/relint.html";
+ license = lib.licenses.free;
+ };
+ }) {};
rich-minority = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "rich-minority";
@@ -2252,6 +2559,7 @@
}) {};
rudel = callPackage ({ cl-generic
, cl-lib ? null
+ , cl-print
, elpaBuild
, emacs
, fetchurl
@@ -2264,7 +2572,7 @@
url = "https://elpa.gnu.org/packages/rudel-0.3.1.tar";
sha256 = "0glqa68g509p0s2vcc0i8kzlddnc9brd9jqhnm5rzxz4i050cvnz";
};
- packageRequires = [ cl-generic cl-lib emacs ];
+ packageRequires = [ cl-generic cl-lib cl-print emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/rudel.html";
license = lib.licenses.free;
@@ -2364,10 +2672,10 @@
elpaBuild {
pname = "sml-mode";
ename = "sml-mode";
- version = "6.8";
+ version = "6.9";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/sml-mode-6.8.el";
- sha256 = "105fcrz5qp95f2n3fdm3awr6z58sbrjihjss6qnrg4lz2ggbc328";
+ url = "https://elpa.gnu.org/packages/sml-mode-6.9.el";
+ sha256 = "1bdg9ywpvj85hxqah9w1raxlcrhkyx67nw22jwd1bd5j0fhmgqij";
};
packageRequires = [ cl-lib emacs ];
meta = {
@@ -2379,10 +2687,10 @@
elpaBuild {
pname = "soap-client";
ename = "soap-client";
- version = "3.1.4";
+ version = "3.1.5";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/soap-client-3.1.4.tar";
- sha256 = "0q59abh2dmp7z0bcn672n9c2cfhg1xvxv1h9m9pwn97jw0ylf4mc";
+ url = "https://elpa.gnu.org/packages/soap-client-3.1.5.tar";
+ sha256 = "0nnf075ywxmsfd6vmzk2yg3khx6sycl5l6qrgp5rqqmw0wzhxlh0";
};
packageRequires = [ cl-lib ];
meta = {
@@ -2390,16 +2698,16 @@
license = lib.licenses.free;
};
}) {};
- sokoban = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ sokoban = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "sokoban";
ename = "sokoban";
- version = "1.4.6";
+ version = "1.4.8";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/sokoban-1.4.6.tar";
- sha256 = "112cl1l36zn5q9cw81rxi96zflf7ddp3by1h7fsz48yjfidpfbzn";
+ url = "https://elpa.gnu.org/packages/sokoban-1.4.8.tar";
+ sha256 = "1w3vrkg239x1saqka21zbl380fxqmbz3lr7820spxd8p5w9v55pn";
};
- packageRequires = [ emacs ];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://elpa.gnu.org/packages/sokoban.html";
license = lib.licenses.free;
@@ -2439,10 +2747,10 @@
elpaBuild {
pname = "sql-indent";
ename = "sql-indent";
- version = "1.2";
+ version = "1.3";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/sql-indent-1.2.tar";
- sha256 = "0rbkj46gkn1dh5avrhxzhkb01ajm9q3iqfp10lgp3f4w1m2bhab4";
+ url = "https://elpa.gnu.org/packages/sql-indent-1.3.tar";
+ sha256 = "0zira8my1q975bad2h76bz4yddjzf0dskvy6x865np86rmzd0c9w";
};
packageRequires = [ cl-lib ];
meta = {
@@ -2450,6 +2758,21 @@
license = lib.licenses.free;
};
}) {};
+ ssh-deploy = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "ssh-deploy";
+ ename = "ssh-deploy";
+ version = "3.0";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/ssh-deploy-3.0.tar";
+ sha256 = "0lv9qwm1dhcd2l2mnhjfpqsz6xx0wabjg5j5sm3425fjsaqws6m7";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/ssh-deploy.html";
+ license = lib.licenses.free;
+ };
+ }) {};
stream = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
elpaBuild {
pname = "stream";
@@ -2469,10 +2792,10 @@
elpaBuild {
pname = "svg";
ename = "svg";
- version = "0.1";
+ version = "0.2";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/svg-0.1.el";
- sha256 = "0v27casnjvjjaalmrbw494sk0zciws037cn6cmcc6rnhj30lzbv5";
+ url = "https://elpa.gnu.org/packages/svg-0.2.el";
+ sha256 = "14yfi27v3zdzh1chcjiq4l63iwh0vd99wv1z4w7agr33540jybc5";
};
packageRequires = [ emacs ];
meta = {
@@ -2495,6 +2818,21 @@
license = lib.licenses.free;
};
}) {};
+ system-packages = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "system-packages";
+ ename = "system-packages";
+ version = "1.0.10";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/system-packages-1.0.10.tar";
+ sha256 = "1vwf2j0fxrsqmrgc7x5nkkg0vlhwgxppc4w7kb5is6dgrssskpb5";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/system-packages.html";
+ license = lib.licenses.free;
+ };
+ }) {};
tNFA = callPackage ({ elpaBuild, fetchurl, lib, queue }:
elpaBuild {
pname = "tNFA";
@@ -2684,6 +3022,21 @@
license = lib.licenses.free;
};
}) {};
+ vcl-mode = callPackage ({ elpaBuild, fetchurl, lib }:
+ elpaBuild {
+ pname = "vcl-mode";
+ ename = "vcl-mode";
+ version = "1.1";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/vcl-mode-1.1.el";
+ sha256 = "1r70pmvr95k5f2xphvhliqvyh7al0qabm7wvkamximcssvs38q1h";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/vcl-mode.html";
+ license = lib.licenses.free;
+ };
+ }) {};
vdiff = callPackage ({ elpaBuild, emacs, fetchurl, hydra, lib }:
elpaBuild {
pname = "vdiff";
@@ -2714,6 +3067,39 @@
license = lib.licenses.free;
};
}) {};
+ visual-filename-abbrev = callPackage ({ elpaBuild
+ , emacs
+ , fetchurl
+ , lib }:
+ elpaBuild {
+ pname = "visual-filename-abbrev";
+ ename = "visual-filename-abbrev";
+ version = "1.0";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/visual-filename-abbrev-1.0.el";
+ sha256 = "086cmyv08jd3qadjrd14b7c932i8msxjdvxxa36pyac18d3i50kj";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/visual-filename-abbrev.html";
+ license = lib.licenses.free;
+ };
+ }) {};
+ visual-fill = callPackage ({ elpaBuild, fetchurl, lib }:
+ elpaBuild {
+ pname = "visual-fill";
+ ename = "visual-fill";
+ version = "0.1";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/visual-fill-0.1.el";
+ sha256 = "1y4xqcr1am74y9jy7kdkjigvx7h3208si5lm4p6a0kzxa3xizhvx";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/visual-fill.html";
+ license = lib.licenses.free;
+ };
+ }) {};
vlf = callPackage ({ elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "vlf";
@@ -2789,6 +3175,21 @@
license = lib.licenses.free;
};
}) {};
+ webfeeder = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+ elpaBuild {
+ pname = "webfeeder";
+ ename = "webfeeder";
+ version = "1.0.0";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/webfeeder-1.0.0.tar";
+ sha256 = "06y5vxw9m6pmbrzb8v2i3w9dnhgqxz06vyx1knmgi9cczlrj4a64";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/webfeeder.html";
+ license = lib.licenses.free;
+ };
+ }) {};
websocket = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "websocket";
@@ -2834,16 +3235,16 @@
license = lib.licenses.free;
};
}) {};
- wisi = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
+ wisi = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib, seq }:
elpaBuild {
pname = "wisi";
ename = "wisi";
- version = "1.1.6";
+ version = "2.1.0";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/wisi-1.1.6.tar";
- sha256 = "0p7hm9l4gbp50rmpqna6jnc1pss2axdd6m6hk9ik4afbz0knzwnk";
+ url = "https://elpa.gnu.org/packages/wisi-2.1.0.tar";
+ sha256 = "143xfdr7agyc52wz9zsx67rvvnjs4rlj7j3cbdhvs6wyl7whyg38";
};
- packageRequires = [ cl-lib emacs ];
+ packageRequires = [ cl-lib emacs seq ];
meta = {
homepage = "https://elpa.gnu.org/packages/wisi.html";
license = lib.licenses.free;
@@ -2868,10 +3269,10 @@
elpaBuild {
pname = "xclip";
ename = "xclip";
- version = "1.4";
+ version = "1.8";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/xclip-1.4.el";
- sha256 = "12rw790wzj10jcsqf292hc7qx18ybyay8jqji4shmrv16igrzl6p";
+ url = "https://elpa.gnu.org/packages/xclip-1.8.el";
+ sha256 = "1ymc9dhpwbh92ad7w64p8xlrjdws5c9h90h47ckh6479h8r697xg";
};
packageRequires = [];
meta = {
@@ -2883,10 +3284,10 @@
elpaBuild {
pname = "xelb";
ename = "xelb";
- version = "0.15";
+ version = "0.17";
src = fetchurl {
- url = "https://elpa.gnu.org/packages/xelb-0.15.tar";
- sha256 = "031rvgprsqhf344p9wsczr50vj2qcpwdmhxi80jdbrsm7wyxf3qz";
+ url = "https://elpa.gnu.org/packages/xelb-0.17.tar";
+ sha256 = "0k98580vq253fjdgklgqlwl450saninfw39fbq8lv3xsnp3dcgml";
};
packageRequires = [ cl-generic emacs ];
meta = {
@@ -2909,6 +3310,21 @@
license = lib.licenses.free;
};
}) {};
+ xr = callPackage ({ elpaBuild, fetchurl, lib }:
+ elpaBuild {
+ pname = "xr";
+ ename = "xr";
+ version = "1.10";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/xr-1.10.tar";
+ sha256 = "16p68rj5h609pnbp7y0jiiq1zkbksh4qqi1q8yby3ldj5x9sfpwc";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/xr.html";
+ license = lib.licenses.free;
+ };
+ }) {};
yasnippet = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "yasnippet";
@@ -2942,6 +3358,21 @@
license = lib.licenses.free;
};
}) {};
+ zones = callPackage ({ elpaBuild, fetchurl, lib }:
+ elpaBuild {
+ pname = "zones";
+ ename = "zones";
+ version = "2018.12.28";
+ src = fetchurl {
+ url = "https://elpa.gnu.org/packages/zones-2018.12.28.el";
+ sha256 = "1jd7wy5w96xppdlcl4dzq4wqhr2x6f4hzjps9f4kz256l4ia6hm0";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://elpa.gnu.org/packages/zones.html";
+ license = lib.licenses.free;
+ };
+ }) {};
ztree = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "ztree";
diff --git a/pkgs/applications/editors/emacs-modes/elpa-packages.nix b/pkgs/applications/editors/emacs-modes/elpa-packages.nix
index 26f4b791cc02608314cebac002a5eee05a955152..b9f1ab53baa9d5f88049a2924dad2599872afb5a 100644
--- a/pkgs/applications/editors/emacs-modes/elpa-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/elpa-packages.nix
@@ -45,6 +45,7 @@ self:
stream = markBroken super.stream; # requires emacs-25
cl-lib = null; # builtin
tle = null; # builtin
+ advice = null; # builtin
};
elpaPackages = super // overrides;
diff --git a/pkgs/applications/editors/emacs-modes/emacs-libvterm/default.nix b/pkgs/applications/editors/emacs-modes/emacs-libvterm/default.nix
index f37d2289342ae4fc4690c665c47c67b480e95257..8d39c185acad3082bd4db06154fd9c1d0f5d6710 100644
--- a/pkgs/applications/editors/emacs-modes/emacs-libvterm/default.nix
+++ b/pkgs/applications/editors/emacs-modes/emacs-libvterm/default.nix
@@ -19,13 +19,13 @@ let
in stdenv.mkDerivation rec {
name = "emacs-libvterm-${version}";
- version = "unstable-2017-11-24";
+ version = "unstable-2018-11-16";
src = fetchFromGitHub {
owner = "akermu";
repo = "emacs-libvterm";
- rev = "829ae86f60c3a54048804997edffa161c77a2f4b";
- sha256 = "1xb24kpvypvskh4vr3b45nl2m2vsczcr9rnsr2sjzf32mnapyjnp";
+ rev = "8be9316156be75a685c0636258b2fec2daaf5ab5";
+ sha256 = "059js4aa7xgqcpaicgy4gz683hppa1iyp1r98mnms5hd31a304k8";
};
nativeBuildInputs = [ cmake ];
@@ -36,6 +36,6 @@ in stdenv.mkDerivation rec {
installPhase = ''
install -d $out/share/emacs/site-lisp
install ../*.el $out/share/emacs/site-lisp
- install ../*.so $out/share/emacs/site-lisp
+ install ./*.so $out/share/emacs/site-lisp
'';
}
diff --git a/pkgs/applications/editors/emacs-modes/emms/default.nix b/pkgs/applications/editors/emacs-modes/emms/default.nix
index c873a7c0ca8b03b627939000e73cc6d4899761e6..f966989b5a30279012a0e7c149d7ffe264ad19ec 100644
--- a/pkgs/applications/editors/emacs-modes/emms/default.nix
+++ b/pkgs/applications/editors/emacs-modes/emms/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
# These guys don't use ftp.gnu.org...
- url = "http://www.gnu.org/software/emms/download/${name}.tar.gz";
+ url = "https://www.gnu.org/software/emms/download/${name}.tar.gz";
sha256 = "151mfx97x15lfpd1qc2sqbvhwhvg46axgh15qyqmdy42vh906xav";
};
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
support, with no effort from your side.
'';
- homepage = http://www.gnu.org/software/emms/;
+ homepage = https://www.gnu.org/software/emms/;
license = stdenv.lib.licenses.gpl3Plus;
diff --git a/pkgs/applications/editors/emacs-modes/font-lock-plus/default.nix b/pkgs/applications/editors/emacs-modes/font-lock-plus/default.nix
index b4ee54f3bd31d212200bca5e6ab90e78b4aa8bc6..fdb28f4471929ee21d65826449269a918a84c721 100644
--- a/pkgs/applications/editors/emacs-modes/font-lock-plus/default.nix
+++ b/pkgs/applications/editors/emacs-modes/font-lock-plus/default.nix
@@ -1,7 +1,7 @@
-{ fetchurl, lib, melpaBuild }:
+{ fetchurl, lib, melpaBuild, writeText }:
melpaBuild {
- pname = "font-lock-plus";
+ pname = "font-lock+";
version = "20180101.25";
src = fetchurl {
@@ -10,11 +10,7 @@ melpaBuild {
name = "font-lock+.el";
};
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/font-lock+";
- sha256 = "1wn99cb53ykds87lg9mrlfpalrmjj177nwskrnp9wglyqs65lk4g";
- name = "font-lock-plus";
- };
+ recipe = writeText "recipe" "(font-lock+ :fetcher github :repo \"\")";
meta = {
homepage = "https://melpa.org/#/font-lock+";
diff --git a/pkgs/applications/editors/emacs-modes/hsc3/default.nix b/pkgs/applications/editors/emacs-modes/hsc3/default.nix
index 150bd3593fdb5e2ae78418ad78acf42a02fd789e..199a5886e1df2c25935d03b447c82e16a789676d 100644
--- a/pkgs/applications/editors/emacs-modes/hsc3/default.nix
+++ b/pkgs/applications/editors/emacs-modes/hsc3/default.nix
@@ -8,9 +8,9 @@ let version = "0.15";
in stdenv.mkDerivation {
name = "hsc3-mode-${version}";
src = fetchurl {
- url = http://hackage.haskell.org/package/hsc3-0.15/hsc3-0.15.tar.gz;
+ url = mirror://hackage/hsc3-0.15/hsc3-0.15.tar.gz;
sha256 = "2f3b15655419cf8ebe25ab1c6ec22993b2589b4ffca7c3a75ce478ca78a0bde6";
- };
+ };
buildInputs = [ emacs ];
diff --git a/pkgs/applications/editors/emacs-modes/icicles/default.nix b/pkgs/applications/editors/emacs-modes/icicles/default.nix
index 884d1724ef8d5e33b244afd442216c44021a05da..17cf213a799da696a86ae45d12c8cfb97cd4a950 100644
--- a/pkgs/applications/editors/emacs-modes/icicles/default.nix
+++ b/pkgs/applications/editors/emacs-modes/icicles/default.nix
@@ -2,28 +2,28 @@
let
modules = [
- { name = "icicles.el"; sha256 = "0wxak7wh0rrb3h77ay2vypbb53skcfbrv71xkajhax0w12q6zpaj"; }
- { name = "icicles-chg.el"; sha256 = "0qavq9vy566l3qi9n8akrqjcgy8n6k0j8d7vsc7p1jhqvvq812gh"; }
- { name = "icicles-cmd1.el"; sha256 = "0lgk6ngl9090iqvvw1c227q7p37mr73cc6ap3ky6b0nv3ql8rkyi"; }
- { name = "icicles-cmd2.el"; sha256 = "15swxk7fr7wsqpf26xzbvyk12ikkvfcyh9w8wmnpc38dmpyq79rb"; }
+ { name = "icicles.el"; sha256 = "1744n5g2kmv3r261ipa0fhrgnapl0chxz57bbbls3bp30cnnfrs7"; }
+ { name = "icicles-chg.el"; sha256 = "058sxa8wh3vqr3zy677q6m2lfx4n477rnb8921s1p6wgs55v7dp4"; }
+ { name = "icicles-cmd1.el"; sha256 = "064hyy8nxvlg298s5qnmk7aczbasfpddhx57jxaldyyzkca3n2h5"; }
+ { name = "icicles-cmd2.el"; sha256 = "0a77fx0pxyfrg9nxvqvzz247v6cljjfz9dnfs7lc8qgdvksxs261"; }
{ name = "icicles-doc1.el"; sha256 = "04j5qvj7pqnjh8h2y2sdgi7x55czdp9xn7yysr3bzcmr1rq5p4bz"; }
{ name = "icicles-doc2.el"; sha256 = "1k8vfhi3fa4bzsxr074bw5q6srvq6z6hi61rzlxdw7pah6qf7hcz"; }
{ name = "icicles-face.el"; sha256 = "1pvygqzmh6ag0zhfjn1vhdvlhxybwxzj22ah2pc0ls80dlywhi4l"; }
- { name = "icicles-fn.el"; sha256 = "05v7sc2k2mjm1mbnlkpi01aaxnxnb40540y7g70dg534scjd7w36"; }
- { name = "icicles-mac.el"; sha256 = "0nhbwswz6xz7q4g8flszgx12q4gi4nx1d3n4jgz6svr2kk2vmlb4"; }
- { name = "icicles-mcmd.el"; sha256 = "05dniz6337v9r15w8r2zad0n2h6jlygzjp7vw75vvq8mds0acmia"; }
+ { name = "icicles-fn.el"; sha256 = "02vwa9dx9393d7kxrf443r1lj7y9ihkh25cmd418pwfgmw2yd5s7"; }
+ { name = "icicles-mac.el"; sha256 = "13nxgg9k5w39lga90jwn1c7v756dqlfln2qh312vfaxfjfijfv9r"; }
+ { name = "icicles-mcmd.el"; sha256 = "17d4zlf3r09wmarwyc1cbjv0pyklg4cdhwh3h643d4v8mhs5hnil"; }
{ name = "icicles-mode.el"; sha256 = "1xfv8nryf5y2gygg02naawzm5qhrkba3h84g43518r1xc6rgbpp6"; }
- { name = "icicles-opt.el"; sha256 = "10n4p999ylkapirs75y5fh33lpiyx42i3ajzl2zjfwyr1zksg1iz"; }
- { name = "icicles-var.el"; sha256 = "1r5gb01zg8nf2qryq9saxfpnzlymmppsk7w1g09lac35c87vh8yl"; }
+ { name = "icicles-opt.el"; sha256 = "154mgcd1ksnmlyb4ijy2njqq75i8cj4k47phplxsi648pzqnda77"; }
+ { name = "icicles-var.el"; sha256 = "0f94299q1z0va4v1s5ijpksaqlaz88ay1qbmlzq0i2wnxnsliys8"; }
];
forAll = f: map f modules;
in
stdenv.mkDerivation rec {
- version = "2018-07-02";
+ version = "2019-02-22";
name = "icicles-${version}";
- srcs = forAll ({name, sha256}: fetchurl { url = "http://www.emacswiki.org/emacs/download/${name}"; inherit sha256; });
+ srcs = forAll ({name, sha256}: fetchurl { url = "https://www.emacswiki.org/emacs/download/${name}"; inherit sha256; });
buildInputs = [ emacs ];
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
installPhase = "mkdir -p $out/share/emacs/site-lisp/emacswiki/${name}/; cp *.el *.elc $out/share/emacs/site-lisp/emacswiki/${name}/";
meta = {
- homepage = http://www.emacswiki.org/emacs/Icicles;
+ homepage = https://www.emacswiki.org/emacs/Icicles;
description = "Enhance Emacs minibuffer input with cycling and powerful completion";
license = stdenv.lib.licenses.gpl2Plus;
platforms = emacs.meta.platforms;
diff --git a/pkgs/applications/editors/emacs-modes/let-alist/default.nix b/pkgs/applications/editors/emacs-modes/let-alist/default.nix
index 05ddfbf6c16d9a8db90f3102647d9648ce8a3dac..f6fee846f920b13b8cec38ab49d0f87a5f37c648 100644
--- a/pkgs/applications/editors/emacs-modes/let-alist/default.nix
+++ b/pkgs/applications/editors/emacs-modes/let-alist/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
name = "let-alist-1.0.3";
src = fetchurl {
- url = "http://elpa.gnu.org/packages/let-alist-1.0.3.el";
+ url = "https://elpa.gnu.org/packages/let-alist-1.0.3.el";
sha256 = "12n1cmjc7hzyy0jmsdxqz1hqzg4ri4nvvi0p9mw1d6v44xzfm0mx";
};
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
'';
meta = {
- homepage = http://elpa.gnu.org/packages/let-alist.html;
+ homepage = https://elpa.gnu.org/packages/let-alist.html;
description = "Easily let-bind values of an assoc-list by their names";
license = stdenv.lib.licenses.gpl3Plus;
};
diff --git a/pkgs/applications/editors/emacs-modes/melpa-generated.nix b/pkgs/applications/editors/emacs-modes/melpa-generated.nix
index 554d48ecc51e173bdba9787e923b50ac885b5617..10910539d0354a851e6ffd55a9a68b0a3ec2fa44 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-generated.nix
@@ -34,12 +34,12 @@
melpaBuild {
pname = "_0xc";
ename = "0xc";
- version = "20170125.1953";
+ version = "20190218.1717";
src = fetchFromGitHub {
owner = "AdamNiederer";
repo = "0xc";
- rev = "31890af88234e4e098f1c340a5990515b934c7f7";
- sha256 = "1yp3wm0h6rkzxw950fnhw310npn56s9vl294sw8nyij85s2hw5qk";
+ rev = "167e93ce863381a58988655927042514d984ad49";
+ sha256 = "0msx29il7c01njlc4pwxs3f3qcvyakgjcivxaa287jibf67yg0ph";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3fbb2c86a50a8df9a3967787fc10f33beab2c933/recipes/0xc";
@@ -111,12 +111,12 @@
melpaBuild {
pname = "a";
ename = "a";
- version = "20170720.553";
+ version = "20180907.253";
src = fetchFromGitHub {
owner = "plexus";
repo = "a.el";
- rev = "3af0122abac723f0d3dc21ee50eeb81afa26d361";
- sha256 = "0grwpy4ssmn2m8aihfkxb7ifl7ql2hgicw16wzl0crpy5fndh1mp";
+ rev = "8583685c32069a73ccae0100e990e7b39c901737";
+ sha256 = "00v9w6qg3bkwdhypq0ssf0phdh0f4bcq59c20lngd6vhk0204dqi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a226f1d81cd1ae81b91c1102fbe40aac2eddcaa8/recipes/a";
@@ -216,12 +216,12 @@
melpaBuild {
pname = "abl-mode";
ename = "abl-mode";
- version = "20170604.1309";
+ version = "20190403.204";
src = fetchFromGitHub {
owner = "afroisalreadyinu";
repo = "abl-mode";
- rev = "9aff997fe7b4caded60150a832e3704ac55e69e5";
- sha256 = "0yfk7s7n10lkf11dy1l0xi0bbsjbam5lqq8kj9hxpz2zkddbaljl";
+ rev = "44b7d946bc3a693f5a931c4a62c0a67d42e8d4dc";
+ sha256 = "070c408bq5pliq0xbd1861l6db4sbfpnj3r6aknbqh2vb7l4yimb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/70a52edb381daa9c4dcc9f7e511175b38fc141be/recipes/abl-mode";
@@ -234,6 +234,35 @@
license = lib.licenses.free;
};
}) {};
+ abs-mode = callPackage ({ emacs
+ , erlang
+ , fetchFromGitHub
+ , fetchurl
+ , flymake ? null
+ , lib
+ , maude-mode
+ , melpaBuild }:
+ melpaBuild {
+ pname = "abs-mode";
+ ename = "abs-mode";
+ version = "20190326.1002";
+ src = fetchFromGitHub {
+ owner = "abstools";
+ repo = "abs-mode";
+ rev = "a9a512992f681669dc59fe9ca86f12b9688b5454";
+ sha256 = "0v6d7cxnj4mil7c7y4m1csiznl6rmzxg9snwhhv6wdqfw112kn8j";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aabccc4061e7764069796e12ee9688b67651cf70/recipes/abs-mode";
+ sha256 = "148y99iaxcnjaacw017chwq0sq05ywgy5jx1lhp9ly7innrl9i1k";
+ name = "recipe";
+ };
+ packageRequires = [ emacs erlang flymake maude-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/abs-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
abyss-theme = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -408,12 +437,12 @@
melpaBuild {
pname = "ac-dcd";
ename = "ac-dcd";
- version = "20170323.601";
+ version = "20190326.1245";
src = fetchFromGitHub {
owner = "atilaneves";
repo = "ac-dcd";
- rev = "1614aa624252e3445b0392c8a9b7197084f3e422";
- sha256 = "02slswlcjh1rjc9hglvbizhvwp57xcnbhs8cmlcayw0yjwp6mnvb";
+ rev = "143be7d67eeb03929f01fc04ee79db8f18f35604";
+ sha256 = "1xms02m8r5n2glzrw6kp5jdnqkar46g8kpq46sg5m1x61q9ny9iq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/64142a4b14531409f45f02a8053ed8948f48221d/recipes/ac-dcd";
@@ -435,12 +464,12 @@
melpaBuild {
pname = "ac-emacs-eclim";
ename = "ac-emacs-eclim";
- version = "20170924.1339";
+ version = "20180911.421";
src = fetchFromGitHub {
owner = "emacs-eclim";
repo = "emacs-eclim";
- rev = "322a796be1619fb2ade6de6d51111e5f3f5776d0";
- sha256 = "05sil1pazr7rdg6hq34p5ba7rnp3rp2lfnhsjpr26fisfhkbbaic";
+ rev = "edff7e0e30c87036710d88fb0b7a4644750858e8";
+ sha256 = "0ywifqdhv7cibgl42m7i15widna9i1dk5kl5rglyql7hy05nk9gj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e9d3075587fbd9ca188535fd945a7dc451c6d7e/recipes/ac-emacs-eclim";
@@ -629,14 +658,14 @@
ename = "ac-html";
version = "20151005.31";
src = fetchFromGitHub {
- owner = "cheunghy";
+ owner = "zhangkaiyulw";
repo = "ac-html";
rev = "3de94a46d8cb93e8e62a1b6bdebbde4d65dc7cc2";
sha256 = "1sip87j4wvlf9pfnpr0zyyhys1dd9smh6hy3zs08ihbdh98krgs5";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ce370d60b2f4dd0570b631f6ca92a221e1fe2de6/recipes/ac-html";
- sha256 = "0qf8f75b6dvy844dq8vh8d9c6k599rh1ynjcif9bwvdpf6pxwvqa";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/ac-html";
+ sha256 = "1vidmvylwwvraf8k63dvxv47ism49n6pp0f38l5rl4iaznhkdr84";
name = "recipe";
};
packageRequires = [ auto-complete dash f s ];
@@ -786,12 +815,12 @@
melpaBuild {
pname = "ac-js2";
ename = "ac-js2";
- version = "20140906.442";
+ version = "20190101.133";
src = fetchFromGitHub {
owner = "ScottyB";
repo = "ac-js2";
- rev = "721c482e1d4a08f4a29a74437257d573e8f69969";
- sha256 = "0yn9333rjs2pzb1wk1japclsqagdcl28j0yjl3q5b70g5gi5vx7k";
+ rev = "2b56d09a16c1a0ce514cc1b85d64cb1be4502723";
+ sha256 = "11q4aaiqr4xnw5j0yqj35gc4a290az75qdyhadj09xr2j2jay35x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/255588a330e4c9a03517885092d5678375aa7850/recipes/ac-js2";
@@ -895,12 +924,12 @@
melpaBuild {
pname = "ac-php";
ename = "ac-php";
- version = "20171201.134";
+ version = "20190406.716";
src = fetchFromGitHub {
owner = "xcwen";
repo = "ac-php";
- rev = "f489da3ceb04ff6efd9da5c5f56d71f49966e1d4";
- sha256 = "081v4srqzzwd8v07z013m756qrxll5fpzwf8km0686nc5gcg6q9l";
+ rev = "bd5aa196a4ece8fd5f606fdbf0b27a61d5dbd4dd";
+ sha256 = "1apbsa63rvnf0jczrpvn9jxvgam8sn2lhzlxapn9b6pwgivlps4x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/ac-php";
@@ -914,7 +943,6 @@
};
}) {};
ac-php-core = callPackage ({ dash
- , emacs
, f
, fetchFromGitHub
, fetchurl
@@ -922,24 +950,23 @@
, melpaBuild
, php-mode
, popup
- , s
- , xcscope }:
+ , s }:
melpaBuild {
pname = "ac-php-core";
ename = "ac-php-core";
- version = "20180629.144";
+ version = "20190406.1615";
src = fetchFromGitHub {
owner = "xcwen";
repo = "ac-php";
- rev = "fac22638f957abf404bbee4e16d9d7b67fcd42d2";
- sha256 = "0fsd8cfwqq2jgs2f0nk5g8ybm1mim51n4cfm5n5znvrkwp7a8z2y";
+ rev = "998313d7ebb775261b64a5347697d4926c75d3f1";
+ sha256 = "1lin8lsgmb31vn2rcry1bpmjgrwz4cjccdn7vyf96klw5a49a4wg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/ac-php-core";
sha256 = "0vk3jsxb7dgk5a6pap3bdqkqwpszil0rck1c3y0wyxrlj2y1jcvn";
name = "recipe";
};
- packageRequires = [ dash emacs f php-mode popup s xcscope ];
+ packageRequires = [ dash f php-mode popup s ];
meta = {
homepage = "https://melpa.org/#/ac-php-core";
license = lib.licenses.free;
@@ -982,12 +1009,12 @@
melpaBuild {
pname = "ac-rtags";
ename = "ac-rtags";
- version = "20170522.2154";
+ version = "20181117.1149";
src = fetchFromGitHub {
owner = "Andersbakken";
repo = "rtags";
- rev = "7e6b6f21935eedbe4678ba91c5531ac162b51a5a";
- sha256 = "12629d1s8rplhjh17n3bmgnkpscq4gljgyl84j8qyhh40dwq1qk0";
+ rev = "5e51faa79016b3302d8037e13329a4320de524f5";
+ sha256 = "0qw6l96k2hxv3jvjw3nvas7m73jqj7mcchawzss8by92l61n0cx7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/ac-rtags";
@@ -1096,12 +1123,12 @@
melpaBuild {
pname = "academic-phrases";
ename = "academic-phrases";
- version = "20180318.438";
+ version = "20180723.321";
src = fetchFromGitHub {
owner = "nashamri";
repo = "academic-phrases";
- rev = "0823ed8c24b26c32f909b896a469833ec4d7b656";
- sha256 = "0qfzsq8jh05w4zkr0cvq3i1hdn97bq344vcqjg46sib26x3wpz6r";
+ rev = "25d9cf67feac6359cb213f061735e2679c84187f";
+ sha256 = "0m32jpg6n0azz2f4y57y92zfvzm54ankx5cm06gli2zw2v1218fw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fe4323043fb875c0252861800e61fdd0a51ed453/recipes/academic-phrases";
@@ -1280,12 +1307,12 @@
melpaBuild {
pname = "ace-link";
ename = "ace-link";
- version = "20180308.100";
+ version = "20190406.1944";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "ace-link";
- rev = "fae5d508ff519ba1fab21c51f46c0906fd82229f";
- sha256 = "118dp8w0z475j67gvl1dj137glbli2ykbm934vdvlz6q0k94vds7";
+ rev = "30937c6fe1ffe016dc0387f3060f67eb8b5d229a";
+ sha256 = "09l9zzs2bskf1mmlykjcqpw4vgnlxmq9qf0d78m1ngq7c9ymlnqw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/68032f40c0ce4170a22db535be4bfa7099f61f85/recipes/ace-link";
@@ -1308,12 +1335,12 @@
melpaBuild {
pname = "ace-mc";
ename = "ace-mc";
- version = "20160408.1737";
+ version = "20190205.2349";
src = fetchFromGitHub {
owner = "mm--";
repo = "ace-mc";
- rev = "b106bf6a6c78c3e026fbe9a99a34d6239adce4fd";
- sha256 = "1zgmqgh5dff914dw7i8s142znd849gv4xh86f8q8agx5r7almx14";
+ rev = "6877880efd99e177e4e9116a364576def3da391b";
+ sha256 = "180licc7w5b6f42ifwvllbnmf3aq8cbr8jhkbk37lzick4sv10d2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/62e3a5f23ce219b16081cb0bba9fc4699e11fafa/recipes/ace-mc";
@@ -1335,12 +1362,12 @@
melpaBuild {
pname = "ace-pinyin";
ename = "ace-pinyin";
- version = "20170430.2326";
+ version = "20190122.2002";
src = fetchFromGitHub {
owner = "cute-jumper";
repo = "ace-pinyin";
- rev = "a9df88c1e6a32a4f4895acbb8c45383693c494c1";
- sha256 = "18xi669c15k0m1wb7x231ch1kzqgpi4nm54c42ajrkfq7l8kxq8w";
+ rev = "4915b2413359d85002918e322dbc90c4984b4277";
+ sha256 = "1yv3445p6w10wj310ffla2ghh81fynwgmxpsfkwgbcsbcjx9hmsl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ace-pinyin";
@@ -1362,12 +1389,12 @@
melpaBuild {
pname = "ace-popup-menu";
ename = "ace-popup-menu";
- version = "20171231.2215";
+ version = "20181231.2302";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "ace-popup-menu";
- rev = "7b8ad628a058d32c420f7615927a34a5d51a7ad3";
- sha256 = "183gc5lidxahfzik9ima2vph2sdi2rd9805kfnghsmwhck275i2r";
+ rev = "580f2eab0e8621ae08b85b70cd573a764a5e0f7d";
+ sha256 = "0f4rzbx1apl6pzkbg43sjirbr4nm97bgfbvk15w68jj91q804b9h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/53742e2242101c4b3b3901f5c74e24facf62c7d6/recipes/ace-popup-menu";
@@ -1388,12 +1415,12 @@
melpaBuild {
pname = "ace-window";
ename = "ace-window";
- version = "20180607.1223";
+ version = "20190326.242";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "ace-window";
- rev = "92d20e7e75dbb2ba0b879d3aedb8bed51fcee6a7";
- sha256 = "0svk91yx9plr8027q57g2csqlvmxdp3rv5knpd0hl0hq0hk0j750";
+ rev = "301c762f2fe36737ada479d9037776b1ec3741e3";
+ sha256 = "1d8jnpb6kxvv5rfmprgfpfv3vs537pwj0y1g597yx6xdl0ilan3m";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/42fe131d3c2ea498e4df30ba539a6b91c00f5b07/recipes/ace-window";
@@ -1482,6 +1509,34 @@
license = lib.licenses.free;
};
}) {};
+ activity-watch-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , projectile
+ , request }:
+ melpaBuild {
+ pname = "activity-watch-mode";
+ ename = "activity-watch-mode";
+ version = "20181228.34";
+ src = fetchFromGitHub {
+ owner = "pauldub";
+ repo = "activity-watch-mode";
+ rev = "27a0841b32dfd2b691a1dcf3a4a50d74660676b1";
+ sha256 = "1hfmll3g33529pshzvh2gxqr0h53p1v68wq0zlq2h2wfml89bzr9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9780c413da8001651191fb8f9708fe9691d714cf/recipes/activity-watch-mode";
+ sha256 = "0k0ai6658gb43c4ylrq66zqzrfh6ksvkf0kxj2qx8a5a1aw9bd4d";
+ name = "recipe";
+ };
+ packageRequires = [ emacs projectile request ];
+ meta = {
+ homepage = "https://melpa.org/#/activity-watch-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
adafruit-wisdom = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -1697,12 +1752,12 @@
melpaBuild {
pname = "aggressive-fill-paragraph";
ename = "aggressive-fill-paragraph";
- version = "20170902.705";
+ version = "20180910.116";
src = fetchFromGitHub {
owner = "davidshepherd7";
repo = "aggressive-fill-paragraph-mode";
- rev = "c5185ad673c01e5103ab4a078095c3e2ce7ab039";
- sha256 = "11dppmpdv26m9l5cnnnylihiss2a09zyyb7kqdrk3djdqvqplqb4";
+ rev = "39eb7ac73976d4d4044ef3d750c3ade967d036e1";
+ sha256 = "1ly79z9aqy3b2wq11ifvvkls9qqbpkbb8hj7nsvpq59vqa9fknli";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/982f5936f2d83222263df2886ca0b629076366bb/recipes/aggressive-fill-paragraph";
@@ -1724,12 +1779,12 @@
melpaBuild {
pname = "aggressive-indent";
ename = "aggressive-indent";
- version = "20180626.1721";
+ version = "20190218.1531";
src = fetchFromGitHub {
owner = "Malabarba";
repo = "aggressive-indent-mode";
- rev = "8e70039c7190639c43794cb75eae118c2faaa0d1";
- sha256 = "1h46krxk7wdhfvfmhdzp6c4dh2x53np41a17372k6b74hd15mgl0";
+ rev = "3803f24020ef0a656dc5345713c4964073aec9a8";
+ sha256 = "0dbg4lmzq0r7pvqx0wqxdcnmqz76nk9sdbwg276cmflqj9m0q7z1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6aed365c42987d64d0cd9a8a6178339b1b39e8/recipes/aggressive-indent";
@@ -1742,6 +1797,32 @@
license = lib.licenses.free;
};
}) {};
+ agtags = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "agtags";
+ ename = "agtags";
+ version = "20181229.1634";
+ src = fetchFromGitHub {
+ owner = "vietor";
+ repo = "agtags";
+ rev = "7a59137db7780678cf86d0c1193da5fde38bc759";
+ sha256 = "1mr1k7bx5zq54j3vhjhny5wzh3z8dh94rcv0bqlmzc8ibidj557p";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/eb6677262303a0cad2d844db77693c00d9bc575a/recipes/agtags";
+ sha256 = "07kpdbchplkbspid8gnjsprbdwf244nr2q596pw6jl17bysbbbk7";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/agtags";
+ license = lib.licenses.free;
+ };
+ }) {};
ahg = callPackage ({ fetchhg
, fetchurl
, lib
@@ -1749,11 +1830,11 @@
melpaBuild {
pname = "ahg";
ename = "ahg";
- version = "20180125.944";
+ version = "20181120.501";
src = fetchhg {
url = "https://bitbucket.com/agriggio/ahg";
- rev = "622b519d8586";
- sha256 = "14jayh9bn8f6mjiln6h7ny404g0iy8zr7b6s6faqqhd840h519mz";
+ rev = "7213c02fdbd6";
+ sha256 = "0dxgb033rzayjah2yyxprjsk7ir25a5pqjp3lmx8dj8g9bcxddx5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/ahg";
@@ -1774,16 +1855,16 @@
melpaBuild {
pname = "ahk-mode";
ename = "ahk-mode";
- version = "20160320.1521";
+ version = "20190322.2323";
src = fetchFromGitHub {
owner = "ralesi";
repo = "ahk-mode";
- rev = "9cfc4840507f6cc8016fdede84ad90df53285359";
- sha256 = "07qpwa990bgs9028rqqk344c3z4hnr1jkfzcx9fi4z5k756zmw3b";
+ rev = "66e02a3b44d672787b1f13a30008801a9efca65b";
+ sha256 = "15x1hwar0i89y2vbjrfp7d0b2fj48zqribfm4323k1fc18hbzrb7";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d8674b54ad5e17d1da1e499c7d8113f8acd8fd5d/recipes/ahk-mode";
- sha256 = "066l4hsb49wbyv381qgn9k4hn8gxlzi20h3qaim9grngjj5ljbni";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/ahk-mode";
+ sha256 = "0jx5vhlfw5r6l4125bjjbf7dl1589ac6j419swx26k3p8p58d93r";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -1882,12 +1963,12 @@
melpaBuild {
pname = "alan-mode";
ename = "alan-mode";
- version = "20180711.2148";
+ version = "20190406.2255";
src = fetchFromGitHub {
owner = "M-industries";
repo = "AlanForEmacs";
- rev = "02869448b4637516064900caf135aeb4f07bc5e4";
- sha256 = "03y07041rwi7fab9slavh15xh7m4y6dbk44gd24dw5drb5kvfdiz";
+ rev = "a5a705b64230bb14ad1d19bcc0613e3261e8cbe5";
+ sha256 = "1jhsrb26fpm9yykp974rx77ika76zq3gq7pcjgixw4d4ga737d95";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6e52314db81dad3517ab400099b032260c3e3e6f/recipes/alan-mode";
@@ -1900,6 +1981,33 @@
license = lib.licenses.free;
};
}) {};
+ alarm-clock = callPackage ({ emacs
+ , f
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "alarm-clock";
+ ename = "alarm-clock";
+ version = "20190211.2107";
+ src = fetchFromGitHub {
+ owner = "wlemuel";
+ repo = "alarm-clock";
+ rev = "d5706ace823f75136107c09c6dad79df7c3b290e";
+ sha256 = "1jaagkzfdn9z1plw7ky7gabp45gv0a0gap2a55is1i9cyy83kzmw";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/440fe05fa0d10d54e9c52e2e54e71a1321325376/recipes/alarm-clock";
+ sha256 = "1cgrj6dzpx0q15qzr9d342wg8w92c2r4zmk7rif2h87qxr66fbrg";
+ name = "recipe";
+ };
+ packageRequires = [ emacs f ];
+ meta = {
+ homepage = "https://melpa.org/#/alarm-clock";
+ license = lib.licenses.free;
+ };
+ }) {};
alchemist = callPackage ({ company
, dash
, elixir-mode
@@ -1965,12 +2073,12 @@
melpaBuild {
pname = "alect-themes";
ename = "alect-themes";
- version = "20180504.1020";
+ version = "20190203.1312";
src = fetchFromGitHub {
owner = "alezost";
repo = "alect-themes";
- rev = "4d90833a7381123a979f73fa97a013071ca7ff00";
- sha256 = "19cb6zgg495d62wb6jn6cql5fhv8qd7rxpgxx90klp8yfizr0gmj";
+ rev = "588eb9ef66c319705a4d94003eacd90ad9de29c2";
+ sha256 = "16ycqbd8g1gv8y5qk0j1q2ka4lfbgqpcdfa0mshjmfnw0kjvyshc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/84c25a290ae4bcc4674434c83c66ae128e4c4282/recipes/alect-themes";
@@ -1983,7 +2091,8 @@
license = lib.licenses.free;
};
}) {};
- alert = callPackage ({ fetchFromGitHub
+ alert = callPackage ({ cl-lib ? null
+ , fetchFromGitHub
, fetchurl
, gntp
, lib
@@ -1992,24 +2101,50 @@
melpaBuild {
pname = "alert";
ename = "alert";
- version = "20180403.38";
+ version = "20190227.918";
src = fetchFromGitHub {
owner = "jwiegley";
repo = "alert";
- rev = "667d9c7848c723eb392ab9bacae07966da3e3504";
- sha256 = "04nrl7kg5pprfdxjbqjyh7vw0vs22bplhhpaf30v3hw7k7nkc0ky";
+ rev = "a53e39e2fcd14fd0c04db9b27776831f04593b7f";
+ sha256 = "1zlnp0hg6sc3n252ca6kgnfyhxgv1b389h4qszp31jg6fwp3jgpm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/113953825ac4ff98d90a5375eb48d8b7bfa224e7/recipes/alert";
sha256 = "0x3cvczq09jvshz435jw2fjm69457x2wxdvvbbjq46nfnybhi118";
name = "recipe";
};
- packageRequires = [ gntp log4e ];
+ packageRequires = [ cl-lib gntp log4e ];
meta = {
homepage = "https://melpa.org/#/alert";
license = lib.licenses.free;
};
}) {};
+ alert-termux = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "alert-termux";
+ ename = "alert-termux";
+ version = "20181119.151";
+ src = fetchFromGitHub {
+ owner = "gergelypolonkai";
+ repo = "alert-termux";
+ rev = "8215cf1d86392738c35a90bbc0055359265dfc4d";
+ sha256 = "05znscs3dljkzsk6xkbw3mx3ns8j0y31l9m01mswqmq98msa409f";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d43e98a7142cf0edc89fa9e2f2817787c073667f/recipes/alert-termux";
+ sha256 = "19dfxbpp1kn1ara0fj9xr0ishpk1yiykg2al8g43rcy615vkpk8j";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/alert-termux";
+ license = lib.licenses.free;
+ };
+ }) {};
align-cljlet = callPackage ({ clojure-mode
, fetchFromGitHub
, fetchurl
@@ -2071,12 +2206,12 @@
melpaBuild {
pname = "all-the-icons";
ename = "all-the-icons";
- version = "20180125.757";
+ version = "20190320.1109";
src = fetchFromGitHub {
owner = "domtronn";
repo = "all-the-icons.el";
- rev = "52d1f2d36468146c93aaf11399f581401a233306";
- sha256 = "1sdl33117lccznj38021lwcdnpi9nxmym295q6y460y4dm4lx0jn";
+ rev = "f996fafa5b2ea072d0ad1df9cd98acc75820f530";
+ sha256 = "0yc07xppgv78l56v7qwqp4sf3p44znkv5l0vlvwg8x1dciksxgqw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/604c01aa15927bd122260529ff0f4bb6a8168b7e/recipes/all-the-icons";
@@ -2154,12 +2289,12 @@
melpaBuild {
pname = "all-the-icons-ivy";
ename = "all-the-icons-ivy";
- version = "20180225.630";
+ version = "20190114.49";
src = fetchFromGitHub {
owner = "asok";
repo = "all-the-icons-ivy";
- rev = "52b3f4a8a4a038998943afaffb5ff25054f65af4";
- sha256 = "1xkrqv6znf1savkg17w41d9rm7wrs8n3c4ad0arrmi522qgp78fr";
+ rev = "5d9c6bd5e6484398dd596663d0afe4be730f6f9f";
+ sha256 = "1d5jw9afpcs8g274fxd6zapxdg5wy096xv99y7r9ykbkfbfl6wz5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9496e6bb6f03f35444fb204860bc50e5e1b36214/recipes/all-the-icons-ivy";
@@ -2214,6 +2349,34 @@
license = lib.licenses.free;
};
}) {};
+ ammonite-term-repl = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s
+ , scala-mode }:
+ melpaBuild {
+ pname = "ammonite-term-repl";
+ ename = "ammonite-term-repl";
+ version = "20190228.2316";
+ src = fetchFromGitHub {
+ owner = "zwild";
+ repo = "ammonite-term-repl";
+ rev = "c5c1f6e2491282983cf55573b48a3e8de06aaae5";
+ sha256 = "061qvm6jqydsv7bgwcbaxh1d8ck3nab1szlql0ass1hsak6g028i";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/cf0ece0efb1fcf0ea7364df0d35fca69862f5e9a/recipes/ammonite-term-repl";
+ sha256 = "004cvhyh4afgpb31m1q31g98x8c9m6lmsb5fzc4a1r5pb4p3iimp";
+ name = "recipe";
+ };
+ packageRequires = [ emacs s scala-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/ammonite-term-repl";
+ license = lib.licenses.free;
+ };
+ }) {};
ample-regexps = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -2298,12 +2461,12 @@
melpaBuild {
pname = "amx";
ename = "amx";
- version = "20180627.1555";
+ version = "20181011.1551";
src = fetchFromGitHub {
owner = "DarwinAwardWinner";
repo = "amx";
- rev = "09e919512692dc31df079ad2cd1a3ca3ac4f1949";
- sha256 = "180841qv24z6kn3qry5216ija1h50ymm4kcmcxg4pc47bhzcjn1h";
+ rev = "4b08edb34c4d9c807ef1a820a629cda15e2347a0";
+ sha256 = "1vs9hrldg3amxv61m2gpph8fdjidsa7x17djxx23r7px5mhkwqgn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c55bfad05343b2b0f3150fd2b4adb07a1768c1c0/recipes/amx";
@@ -2328,12 +2491,12 @@
melpaBuild {
pname = "anaconda-mode";
ename = "anaconda-mode";
- version = "20180707.1010";
+ version = "20190111.724";
src = fetchFromGitHub {
owner = "proofit404";
repo = "anaconda-mode";
- rev = "7d28ae061c226ca2e277ecb9d0928647d9a30154";
- sha256 = "1sshdy8abqr5rihl7gjprczd4inznl28ipl812725ylmj0igrfw1";
+ rev = "af1b59d25044901b2db1612ff284fc7b4a7756e3";
+ sha256 = "1jxr4gq4vwybb50pwnfkgmhdxaqlvr029vfa5hagd8d9n5ahpypa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e03b698fd3fe5b80bdd24ce01f7fba28e9da0da8/recipes/anaconda-mode";
@@ -2378,12 +2541,12 @@
melpaBuild {
pname = "android-mode";
ename = "android-mode";
- version = "20170323.115";
+ version = "20190109.214";
src = fetchFromGitHub {
owner = "remvee";
repo = "android-mode";
- rev = "f274da87429617b0b9c5889d46b36de64d982da4";
- sha256 = "17m4hp2qb54widwadv23amc1lasnbwzh2ipc6180fnajg8zcbvyw";
+ rev = "d60c88bfbd2dc5122bd2fde7dc11ec1e6848a5db";
+ sha256 = "1hd7wxp8f67cnbyjs4bv9x18nvzn16qjy4pi7bkbcymfpwj33r38";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/77633aa340803a433570327943fbe31b396f4355/recipes/android-mode";
@@ -2430,14 +2593,14 @@
ename = "angular-mode";
version = "20151201.1327";
src = fetchFromGitHub {
- owner = "omouse";
+ owner = "rudolfolah";
repo = "angularjs-mode";
rev = "8720cde86af0f1859ccc8580571e8d0ad1c52cff";
sha256 = "04kg2x0lif91knmkkh05mj42xw3dkzsnysjda6ian95v57wfg377";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7b120c7f97e8d313387d2e9d9210e7fcdd10523b/recipes/angular-mode";
- sha256 = "1bwfmjldnxki0lqi3ys6r2a3nlhbwm1dibsg2dvzirq8qql02w1i";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/angular-mode";
+ sha256 = "0pq4lyhppzi806n1k07n0gdhr8z8z71ri12my0pl81rl5j2z69l2";
name = "recipe";
};
packageRequires = [];
@@ -2483,12 +2646,12 @@
melpaBuild {
pname = "anki-editor";
ename = "anki-editor";
- version = "20180715.151";
+ version = "20181230.2353";
src = fetchFromGitHub {
owner = "louietan";
repo = "anki-editor";
- rev = "11dbf078957a7d291f5c767cd2936d4341c1864d";
- sha256 = "009m854i4vvfq1772p9js1r48m9msvlmyaplfmzf7qfqkf6k79ad";
+ rev = "115ce2e2e62deb8dbca91fd84c7999ba80916c89";
+ sha256 = "0njwsq03h36hqw55xk6n8225k52nlw1lq0mc9pzww2bf7dccjl9r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8155d649e4b129d0c72da6bb2b1aac66c8483491/recipes/anki-editor";
@@ -2501,6 +2664,36 @@
license = lib.licenses.free;
};
}) {};
+ anki-mode = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , markdown-mode
+ , melpaBuild
+ , request
+ , s }:
+ melpaBuild {
+ pname = "anki-mode";
+ ename = "anki-mode";
+ version = "20181106.1037";
+ src = fetchFromGitHub {
+ owner = "davidshepherd7";
+ repo = "anki-mode";
+ rev = "095fbe74604892a131a4ffc1f6bb9404717028be";
+ sha256 = "08vn9xkp6894s8580gj36ink3bqgcw932rpy6yn6n5qcfykmhpnq";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fc02d06e7c7e9230e4b082923b889e1e83676263/recipes/anki-mode";
+ sha256 = "1d429ws6kmswcyk0dnb303z01kq475n60a520hj258x23vp8802q";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs markdown-mode request s ];
+ meta = {
+ homepage = "https://melpa.org/#/anki-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
annotate = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -2613,12 +2806,12 @@
melpaBuild {
pname = "ansible";
ename = "ansible";
- version = "20170926.1951";
+ version = "20180812.1814";
src = fetchFromGitHub {
owner = "k1LoW";
repo = "emacs-ansible";
- rev = "9da54a2a426dca259ec9c2a8a60fb58e954be5bc";
- sha256 = "16z286gqy18s6bff1njkjpy0swrkfyarvb5xvik49pigd8hzh495";
+ rev = "8a097176d6772b6667254dbbe19c5fb64527bf5d";
+ sha256 = "1m2cb88jb1wxa9rydkbn5llx2gql453l87b4cgzsjllha6j1488k";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8e45bf58b980ff542a5e887707a6361eb5ac0492/recipes/ansible";
@@ -2665,12 +2858,12 @@
melpaBuild {
pname = "ansible-vault";
ename = "ansible-vault";
- version = "20170111.1318";
+ version = "20190126.1136";
src = fetchFromGitHub {
owner = "zellio";
repo = "ansible-vault-mode";
- rev = "57cf7e6da30250587c28ebf592d7bca9a3bae1df";
- sha256 = "1m9r3vicmljypq6mhgr86lzgi26dnnlp7g0jbl9bjdk48xfg79wb";
+ rev = "4fe490f524b79748c9f23026bb88d8f516b4ef40";
+ sha256 = "17kbjlssxa9b2fcp8vf2xs2k5y6jgpw277mj2gbv173b0i7v1fjd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2bff0da29a9b883e53a3d211c5577a3e0bc263a0/recipes/ansible-vault";
@@ -2816,12 +3009,12 @@
melpaBuild {
pname = "anzu";
ename = "anzu";
- version = "20161017.907";
+ version = "20190303.901";
src = fetchFromGitHub {
owner = "syohex";
repo = "emacs-anzu";
- rev = "799f26ee0e3ce598b36983f4dce539f47739e656";
- sha256 = "1rpdw0vxss071kb995xyihdx21dv18d9cn666jvsy43g49fb803p";
+ rev = "592f8ee6d0b1bc543943b36a30063c2d1aac4b22";
+ sha256 = "123zbnl36vi0gkffd6m6mkskhmjmm0am23j45w1mbmfyq03r1d8b";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/anzu";
@@ -2866,12 +3059,12 @@
melpaBuild {
pname = "apache-mode";
ename = "apache-mode";
- version = "20170711.913";
+ version = "20180723.2051";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "apache-mode";
- rev = "0906559e0cb2997405d98ea6b2195954e3935d3b";
- sha256 = "0vfyi34qcwkz9975cq5hin1p2zyy3h05fni4f93xyrcs31zvmk22";
+ rev = "d2ac57942f852a727db4fc73004e1e8f046cb657";
+ sha256 = "1srlkqa2bq2p1nyh6r7f3b2754dqlgw28h0wbafmdlfk12jc8xy3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eb13cb0dba1696cc51132cd1ff723fa17f892a7c/recipes/apache-mode";
@@ -2891,12 +3084,12 @@
melpaBuild {
pname = "apel";
ename = "apel";
- version = "20170122.1458";
+ version = "20190407.356";
src = fetchFromGitHub {
owner = "wanderlust";
repo = "apel";
- rev = "339eb28ffae3165255a79de9b1fd362f43cd37c3";
- sha256 = "1f0zxydh2pkwbjx5bh1bzl3r5g50vqg18azvqkvv9r0nn42hkhmi";
+ rev = "d146ddbf8818e81d3577d5eee7825d377bec0c73";
+ sha256 = "04ic76gzn3m4rnmm2xjc72vrxazxjvsjabd3lbxvwj6c1fb11fnw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4976446a8ae40980d502186615902fc05c15ec7c/recipes/apel";
@@ -3043,12 +3236,12 @@
melpaBuild {
pname = "apropospriate-theme";
ename = "apropospriate-theme";
- version = "20180718.1101";
+ version = "20190403.1132";
src = fetchFromGitHub {
owner = "waymondo";
repo = "apropospriate-theme";
- rev = "97a26598a4d64f8339f7b12818d67425057235be";
- sha256 = "1bi9srxc91i81v863k5fpvgxhr7hkz22jbzwajgqbs0kx5jn7417";
+ rev = "ad27279e7bf883aa7bedec21593d5453bc3963c3";
+ sha256 = "1gww774v82nc74hqlclcd0i2ajciha81vh0r7j126a4wv7zxwdns";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1da33013f15825ab656260ce7453b8127e0286f4/recipes/apropospriate-theme";
@@ -3086,6 +3279,32 @@
license = lib.licenses.free;
};
}) {};
+ arc-dark-theme = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "arc-dark-theme";
+ ename = "arc-dark-theme";
+ version = "20190314.932";
+ src = fetchFromGitHub {
+ owner = "cfraz89";
+ repo = "arc-dark-theme";
+ rev = "ee17dcca35dd0304145efc468b3f25af6907a59d";
+ sha256 = "0cfj5c6rz68095wxs8m733lwc5ymbgi5v82drxhjqcascvrdr1v1";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f8c9060669b262f0588643bd8758edac578834bc/recipes/arc-dark-theme";
+ sha256 = "0a61kxdyzm6gf8gf8fniqz5mqkxk24k8hpxww3996v9mqs1bn05s";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/arc-dark-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
arch-packer = callPackage ({ async
, dash
, emacs
@@ -3180,7 +3399,7 @@
src = fetchFromGitHub {
owner = "stardiviner";
repo = "arduino-mode";
- rev = "e39cb1c02acb6676aea35f93fbd0d86badce6a38";
+ rev = "8805fe64ea6aba51dacb0d8c9e8e2ca2cac3ccf9";
sha256 = "1sg6n4ys5lq2m7q876qi88r11c08y05ggyv9r85ahins2pbgbv95";
};
recipe = fetchurl {
@@ -3384,12 +3603,12 @@
melpaBuild {
pname = "assess";
ename = "assess";
- version = "20170504.657";
+ version = "20190102.211";
src = fetchFromGitHub {
owner = "phillord";
repo = "assess";
- rev = "e5b0415126c6bd24bd220759ff04220d963a0195";
- sha256 = "04242jhrajd9qi9dzngv33730sqhymgr0f18hf92fgb2k5649lqk";
+ rev = "7a3189a5870fb20d179ff3ea761707a046814966";
+ sha256 = "0qif6q4j0i5p2izj9p7sv1j2s6a95zklswfx8x2shv22dkphznkl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6f917a34506193f2674b195569dfd3c13ba62c1d/recipes/assess";
@@ -3409,12 +3628,12 @@
melpaBuild {
pname = "async";
ename = "async";
- version = "20180527.1030";
+ version = "20181223.2054";
src = fetchFromGitHub {
owner = "jwiegley";
repo = "emacs-async";
- rev = "6fa6a866b4b31908166e010ac60e77927bdbfc5a";
- sha256 = "0m4nwc032xhwx3k1948zs3nz80rxnr1qsfdqmbxwm5vyx9mmqm9n";
+ rev = "81dc034572e963550c5403a2b3c28047e46b4029";
+ sha256 = "04lxfpdfvbh67cv9i3j7jya56lv3q97qp5b75zfy1k4dzqhjzfpz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/async";
@@ -3458,24 +3677,23 @@
, fetchFromGitHub
, fetchurl
, lib
- , melpaBuild
- , queue }:
+ , melpaBuild }:
melpaBuild {
pname = "at";
ename = "@";
- version = "20140707.520";
+ version = "20181225.638";
src = fetchFromGitHub {
owner = "skeeto";
repo = "at-el";
- rev = "114dfe3761bf0c9dd89f794106c3a6a436ed06cc";
- sha256 = "0rnnvr8x1czphbinby2z2dga7ikwgd13d7zhgmp3ggamzyaz6nf1";
+ rev = "0a6189f8be42dbbc5d9358cbd447d471236135a2";
+ sha256 = "11s46n3j6ij0ynxwl35wxbzg97pkmnhxh43l5vvaz9kizf6mhpbj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/@";
sha256 = "0da0xqk8fhz8aij3zmpp4bz3plpvfq2riyy17i7ny4ralxb3g08z";
name = "recipe";
};
- packageRequires = [ emacs queue ];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/@";
license = lib.licenses.free;
@@ -3488,12 +3706,12 @@
melpaBuild {
pname = "atom-dark-theme";
ename = "atom-dark-theme";
- version = "20170710.1612";
+ version = "20181022.902";
src = fetchFromGitHub {
owner = "whitlockjc";
repo = "atom-dark-theme-emacs";
- rev = "7fb37fd953e417acbcf7dd3f36e3167bed9bc887";
- sha256 = "040xp0nqa9akjv30kgnw6l1248g2cl5yzihhfwbr8cgywqfir1lw";
+ rev = "5c8610d0b45a536b8f7f9777297c86362685a357";
+ sha256 = "15mjn5z7f7x8k4lbab5xv2r88s9ch9b58znv6vwpqakp63rx8hsx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d1f565871559d6ea4ca4bb2fbaebce58f2f383eb/recipes/atom-dark-theme";
@@ -3513,12 +3731,12 @@
melpaBuild {
pname = "atom-one-dark-theme";
ename = "atom-one-dark-theme";
- version = "20180607.1638";
+ version = "20190107.821";
src = fetchFromGitHub {
owner = "jonathanchu";
repo = "atom-one-dark-theme";
- rev = "d56b0db8d03fae2b47a6dbaadb5805105e394070";
- sha256 = "0bv80pg1bnpsv6j56ydlxm9h1cnicimcbwm1nw642fnf0zxw7p8g";
+ rev = "8714ebcb8f35a4a07fa98666eee2727f860da53a";
+ sha256 = "1z2w3szxwvgzqlg8zbdaw3jancyg421zawcgc317dyx7dryrpb5j";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3ba1c4625c9603372746a6c2edb69d65f0ef79f5/recipes/atom-one-dark-theme";
@@ -3571,12 +3789,12 @@
melpaBuild {
pname = "attrap";
ename = "attrap";
- version = "20180715.1205";
+ version = "20190207.610";
src = fetchFromGitHub {
owner = "jyp";
repo = "attrap";
- rev = "65f6ad55ef967ef625ca48c2d03b4ea69bf37649";
- sha256 = "13vxa6gk4yccj5zhm927ilbpmn0dlkbdrbj3d42kphnximswpism";
+ rev = "3b092bb8f6755a97e6ecb7623b9d2dde58beba4a";
+ sha256 = "05d32980saji8ja1pcv65l0s3dq7w0n5hpikbf246hciy1x067pp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b7420eca80a8c1776d68b1f121511cc265cc70dc/recipes/attrap";
@@ -3728,12 +3946,12 @@
melpaBuild {
pname = "auth-source-pass";
ename = "auth-source-pass";
- version = "20180529.657";
+ version = "20190113.2049";
src = fetchFromGitHub {
owner = "DamienCassou";
repo = "auth-password-store";
- rev = "303b96b2a4ced825390ac0a4f48c4151fe7a8150";
- sha256 = "0jhr6b2xrmki0l0hlmw4nxslky9vnym4lnq2y7pf81gj1zfk1h3f";
+ rev = "e572c7a5a63710ddd2f979a83a4e16d248dc65c6";
+ sha256 = "1127rdyyl77yvr6gb2daa11hfbz145iw5bm6dwzd1f82qyfa58iv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5e268441634a6e58a00e577d6e2292fa226c11b8/recipes/auth-source-pass";
@@ -3807,12 +4025,12 @@
melpaBuild {
pname = "auto-compile";
ename = "auto-compile";
- version = "20180321.807";
+ version = "20181230.1416";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "auto-compile";
- rev = "6ce4255ab9a0b010ef8414c5bd9a6d6d9eea012f";
- sha256 = "013vw4sgw6hpz7kskilndv7i7ik40asrkgicghjbygwk0lj5ran3";
+ rev = "e6bbb1371324c8884af3b201e9adbc9296eb2ff4";
+ sha256 = "1jyn7yvbvk7cydy3pzwqlb0yxf5cxdiipa1gnigdk9wdbj68wjjk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/57a2fb9524df3fdfdc54c403112e12bd70888b23/recipes/auto-compile";
@@ -3991,12 +4209,12 @@
melpaBuild {
pname = "auto-complete-distel";
ename = "auto-complete-distel";
- version = "20160815.2300";
+ version = "20180827.644";
src = fetchFromGitHub {
owner = "sebastiw";
repo = "distel-completion";
- rev = "340c9c11939d5f220db05e55388bf3cb606fd190";
- sha256 = "0ji1wi3s4pgkvrg2vzycmvqfc5jwmcd9zrpxhsgszr5jxp8z0bpb";
+ rev = "acc4c0a5521904203d797fe96b08e5fae4233c7e";
+ sha256 = "0yvp3dwa9mwfyrqla27ycwyjad4bp1267bxv0chxcr4528hnygl3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/90fff35dd9709b06802edef89d1fe6a96b7115a6/recipes/auto-complete-distel";
@@ -4373,6 +4591,32 @@
license = lib.licenses.free;
};
}) {};
+ auto-rename-tag = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "auto-rename-tag";
+ ename = "auto-rename-tag";
+ version = "20181215.2324";
+ src = fetchFromGitHub {
+ owner = "jcs090218";
+ repo = "auto-rename-tag";
+ rev = "00080e323addaaca560842feb87ca688e7a3d9b6";
+ sha256 = "1pksqhfw3np7lkw0xjhpsq3zv3zbxmq3561g77n2c503qyzjpmx8";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/edf44f990306d9edba7054cb8f530208e53d69bc/recipes/auto-rename-tag";
+ sha256 = "058fn84sw15kdyxgnjzdi4lq6s9xg63cw8vzparh6km3xf2pqw0x";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/auto-rename-tag";
+ license = lib.licenses.free;
+ };
+ }) {};
auto-save-buffers-enhanced = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -4407,12 +4651,12 @@
melpaBuild {
pname = "auto-shell-command";
ename = "auto-shell-command";
- version = "20160603.1938";
+ version = "20180817.802";
src = fetchFromGitHub {
owner = "ongaeshi";
repo = "auto-shell-command";
- rev = "454b75a07b663095334381d5bf5625c7f136f743";
- sha256 = "0ahiy5cv3a632wfiar28186l0dgibafx5jaw9nrp4h5sqkbyvmjn";
+ rev = "a8f9213e3c773b5687b81881240e6e648f2f56ba";
+ sha256 = "1b0kgqh521y16cx84rbsr244i4fs3l8h4wqjy2zdpwbpbikx1hxk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ea710bfa77fee7c2688eea8258ca9d2105d1896e/recipes/auto-shell-command";
@@ -4434,12 +4678,12 @@
melpaBuild {
pname = "auto-sudoedit";
ename = "auto-sudoedit";
- version = "20180428.2343";
+ version = "20180915.6";
src = fetchFromGitHub {
owner = "ncaq";
repo = "auto-sudoedit";
- rev = "5a770615fe2989b3b7cb1435d0e65fa672d775d7";
- sha256 = "0pbbw4lx1k8l5x4bycqymb5s2x2739diw8nbqk9ikxqhyjn4sv67";
+ rev = "16bfa23e6d9c30968a6b6364ada17c88138255f3";
+ sha256 = "1f2rqi5nqa40lgcsnbxk9r4dzn6kcachh3qjv76lm9lzyc41c8ln";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7cf6bc8bb7b618d74427622b9b2812daa79a3767/recipes/auto-sudoedit";
@@ -4490,12 +4734,12 @@
melpaBuild {
pname = "auto-virtualenvwrapper";
ename = "auto-virtualenvwrapper";
- version = "20180408.310";
+ version = "20181006.237";
src = fetchFromGitHub {
owner = "robert-zaremba";
repo = "auto-virtualenvwrapper.el";
- rev = "e2628408d4e67e1b1714cf7682cff9405e735c81";
- sha256 = "1cj4a6yay02gvi04lyhnfb7gws8jrappprnv36mcqlq053202wij";
+ rev = "72cc9168db475e8328019f9592493560dab832a5";
+ sha256 = "1cvc2k5x0ircnpppwwmm813h7c59pyswz4dfgwqqrk325zcnp80f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/02a209ae8f9fc68feb3bb64d32d129fedef2b80b/recipes/auto-virtualenvwrapper";
@@ -4516,12 +4760,12 @@
melpaBuild {
pname = "auto-yasnippet";
ename = "auto-yasnippet";
- version = "20180503.1208";
+ version = "20190326.258";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "auto-yasnippet";
- rev = "438c160b94975e9332b4ae3845e986ae6166dd47";
- sha256 = "07i46xfphvsspd0ls5jjlch650h24h79yfvhbmizrpyrh3616smd";
+ rev = "2f755e20d61d7d9098e00dd01f4b6d096bdf1a88";
+ sha256 = "1vf5mc19siak82fgx29n18ni7fnfc2b1k32jdssk0irk9zcjir06";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d33c0aee6a5d27217bbae28fc8f448c3badc8a4b/recipes/auto-yasnippet";
@@ -4646,14 +4890,14 @@
ename = "autopair";
version = "20160304.437";
src = fetchFromGitHub {
- owner = "capitaomorte";
+ owner = "joaotavora";
repo = "autopair";
rev = "2b6d72bccb0ebba6e7e711528872b898b0c65b0a";
sha256 = "09p56vi5zgm2djglimwyhv4n4gyydjndzn46vg9qzzlxvvmw66i1";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/autopair";
- sha256 = "161qhk8rc1ldj9hpg0k9phka0gflz9vny7gc8rnylk90p6asmr28";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/autopair";
+ sha256 = "0l2ypsj3dkasm0lj9jmnaqjs3rv97ldfw8cmayv77mzfd6lhjmh3";
name = "recipe";
};
packageRequires = [ cl-lib ];
@@ -4669,12 +4913,12 @@
melpaBuild {
pname = "autotest";
ename = "autotest";
- version = "20180323.1542";
+ version = "20190331.1530";
src = fetchFromGitHub {
owner = "zenspider";
repo = "elisp";
- rev = "24ee17ae5023362758f0762bf711d5e470dcfe73";
- sha256 = "10al1r0fs6bpz4mfikyb9rm0zgpg56n12y0mv4kz856sdbzgllcv";
+ rev = "b59013510006294b5e7623522f620d5cbac95cf3";
+ sha256 = "06ij30gvpf7244xsdv14qdb86nqqahfrr20gafla764w6r1il62z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5fc2c4a590cbeccfb43003972a78f5d76ec4a9e7/recipes/autotest";
@@ -4723,16 +4967,16 @@
melpaBuild {
pname = "autothemer";
ename = "autothemer";
- version = "20170112.1324";
+ version = "20180920.223";
src = fetchFromGitHub {
- owner = "sebastiansturm";
+ owner = "jasonm23";
repo = "autothemer";
- rev = "8c467f57571c154129d660dfccebd151c998f2d9";
- sha256 = "0cd2pqh6k32sjidkcd8682y4l6mx52xw4a05f38kk8nsrk28m74k";
+ rev = "69488c71dfc182cf2e7be2d745037f230ade678e";
+ sha256 = "0l3xsnp5j46jcjc1nkfbfg0pyzdi94rn0h5idfpqikj6f3ralh10";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/3d7d7beed6ba10d7aa6a36328a696ba2d0d21dc2/recipes/autothemer";
- sha256 = "1lcyqfzx7qpkr3ajk0zi0mn32yvcwn06f61vhghn9c66xambsr7f";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9a15a17a5aa78aed72958b2a1bde53f0c0ab5be7/recipes/autothemer";
+ sha256 = "0wahmbihyr3dx4lgiwi7041gvmmqlzlv7ss25fw90srs9n2h05gj";
name = "recipe";
};
packageRequires = [ cl-lib dash emacs ];
@@ -4798,12 +5042,12 @@
melpaBuild {
pname = "avk-emacs-themes";
ename = "avk-emacs-themes";
- version = "20180406.2220";
+ version = "20181127.2345";
src = fetchFromGitHub {
owner = "avkoval";
repo = "avk-emacs-themes";
- rev = "6abf91ecdaeb16a3a5529b0d5abef9756da1f68c";
- sha256 = "0hvg8yp7prfl1n71lkyr9l43f3zm1zsh8n2mh26rmdw2chippr4d";
+ rev = "cadbfb4c9cd6812d63b69076a9d90514bfd2db66";
+ sha256 = "07isy168fnvyy25z1wwyr6740bmwmff6c3yfcdy7dnypcj9whllr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef362a76a3881c7596dcc2639df588227b3713c0/recipes/avk-emacs-themes";
@@ -4825,12 +5069,12 @@
melpaBuild {
pname = "avy";
ename = "avy";
- version = "20180615.801";
+ version = "20190404.155";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "avy";
- rev = "7c40f5e3811716b05d87a06096b190f7cf7bdc45";
- sha256 = "06bqsg9vnjyqdmn2dpy4f17b0bs57w0gg77ahyafsawlp77fz7z9";
+ rev = "4d52b5cb7e1c565ca8dfe9c47b54330fd1a395bc";
+ sha256 = "13226jg9ndlnlvy73847rinn8wpx94jw42cj3pp84qplys9zfr2y";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/77fac7a702d4086fb860514e377037acedc60412/recipes/avy";
@@ -4881,12 +5125,12 @@
melpaBuild {
pname = "avy-menu";
ename = "avy-menu";
- version = "20171231.2220";
+ version = "20181231.2308";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "avy-menu";
- rev = "990cc94d708c923f761be083b3a57f6f844566c8";
- sha256 = "0kjxfg8wx5c8cixazih24s0mv4crk648v9bb6pd1i6lmh266rc6g";
+ rev = "4610cb0f41a84b2a8506360768d74e93661da8b3";
+ sha256 = "1yms2n1j1w19g7rjxpxhi5bfkl1czjaqyz5lqabmndcd4sljbc4y";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2f0b4cfb30c405d44803b36ebcaccef0cf87fe2d/recipes/avy-menu";
@@ -5015,11 +5259,11 @@
melpaBuild {
pname = "axiom-environment";
ename = "axiom-environment";
- version = "20180401.1257";
+ version = "20190323.1224";
src = fetchgit {
url = "https://bitbucket.org/pdo/axiom-environment";
- rev = "6842fb7f85df839acde395093647e2f91cf62fdd";
- sha256 = "1ag5isg0bvarf86978zd2zq1mbs3ysy29ywvgapls6115ws5k9k8";
+ rev = "e3444570fa081410171a089f6c118ea6627e5d48";
+ sha256 = "04j18cxr5il5fmdk4habsyys2z47gbldjsfnwzy2xpb316bc5m66";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8b4c6b03c5ff78ce327dcf66b175e266bbc53dbf/recipes/axiom-environment";
@@ -5039,12 +5283,12 @@
melpaBuild {
pname = "babel";
ename = "babel";
- version = "20161122.2340";
+ version = "20181201.119";
src = fetchFromGitHub {
owner = "juergenhoetzel";
repo = "babel";
- rev = "d4212e25fcbd22b8e38be13936f937a2963d34a9";
- sha256 = "0lxiavjs2fbwlqbmkl2hssjzv8a8baa8vvqqfnprhnipngkkgdaf";
+ rev = "c25dedb5c7f2465b122102f02cd9845668818c20";
+ sha256 = "1ydb8zbg8n56wf5hb8i3i2s40mspqfkszfdd8v8jjqb5wm8q32rc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b0d748fa06b3cbe336cb01a7e3ed7b0421d885cc/recipes/babel";
@@ -5147,6 +5391,33 @@
license = lib.licenses.free;
};
}) {};
+ backline = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , outline-minor-faces }:
+ melpaBuild {
+ pname = "backline";
+ ename = "backline";
+ version = "20181111.32";
+ src = fetchFromGitHub {
+ owner = "tarsius";
+ repo = "backline";
+ rev = "960deaef1d87658f79a0bd95c85946371d211590";
+ sha256 = "017w7qa74laq04h359znn9kjsqpl91gypsqsldpnlrb25jw0z0gl";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f252e45e8bd6e8af1267755d108f378a974ddaf1/recipes/backline";
+ sha256 = "0y5y048s6r3mcgjfxpmwarnhn6lh00j9cla6qjsd83f79hw5cq4y";
+ name = "recipe";
+ };
+ packageRequires = [ emacs outline-minor-faces ];
+ meta = {
+ homepage = "https://melpa.org/#/backline";
+ license = lib.licenses.free;
+ };
+ }) {};
backup-each-save = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -5282,12 +5553,12 @@
melpaBuild {
pname = "banner-comment";
ename = "banner-comment";
- version = "20180510.620";
+ version = "20180923.1211";
src = fetchFromGitHub {
owner = "WJCFerguson";
repo = "banner-comment";
- rev = "fedbb071d043106a30e378ee58b96e349e8068ed";
- sha256 = "1d6yp96rv6p9f3b8ddrpzb3ng2v0vlqb1akcpd7dria6y6aai8l4";
+ rev = "ac52f6b24e590787a385c08cc3751d6f2ddca815";
+ sha256 = "1630py97ldh3w71s26jbcxk58529g03sl0padnzqj0rbqy82yw8w";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4bb69f15cb6be38a86abf4d15450a29c9a819068/recipes/banner-comment";
@@ -5300,6 +5571,31 @@
license = lib.licenses.free;
};
}) {};
+ bap-mode = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "bap-mode";
+ ename = "bap-mode";
+ version = "20190401.846";
+ src = fetchFromGitHub {
+ owner = "fkie-cad";
+ repo = "bap-mode";
+ rev = "5e0570a4d70003aea451232358c0adb2d1a813fc";
+ sha256 = "0vb8r4xar2fz5yxfsx7ss9k0vd72dypz8lgavypkb1kvvizv0h5b";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/05b1b5885a9d5e3bda38bc8a2f987bffd9353cc0/recipes/bap-mode";
+ sha256 = "1n0sv6d6vnv40iks18vws16psbv83v401pdd8w2d2cfhhsmmi4ii";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/bap-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
bar-cursor = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -5358,12 +5654,12 @@
melpaBuild {
pname = "base16-theme";
ename = "base16-theme";
- version = "20180524.1311";
+ version = "20190329.1706";
src = fetchFromGitHub {
owner = "belak";
repo = "base16-emacs";
- rev = "c9acfddcc0a3a3753223d4e8742de6af284154cc";
- sha256 = "10kwilq2fn3bdh21zzw8h30kr1xalrjm7nbi003315qham2dkyh2";
+ rev = "053c9da5ad0ecbac5652bcfbf3b5d1badb9ab272";
+ sha256 = "1nhirkx4ww9spqxkvdwbsf6lhj6a4ln5r0q6fjr2pdxnx7d02skp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/30862f6be74882cfb57fb031f7318d3fd15551e3/recipes/base16-theme";
@@ -5437,12 +5733,12 @@
melpaBuild {
pname = "basic-mode";
ename = "basic-mode";
- version = "20180612.1152";
+ version = "20180919.1052";
src = fetchFromGitHub {
owner = "dykstrom";
repo = "basic-mode";
- rev = "024505ae0a37756e3259773383852ed208120bde";
- sha256 = "0fsy09m3mwvdxhlg4p0g95j1nsx8pp9ggslawpd4rj0rn6ffbq6d";
+ rev = "812f078240f9de09491701853569335ba6d9b5ff";
+ sha256 = "1492klgbkxb46x02kmhngccx4p9fmjvf6m4ay89j7pyaixvcqj8v";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/71801bdc0720f150edeab6796487c753c6e7c3f5/recipes/basic-mode";
@@ -5533,6 +5829,7 @@
};
}) {};
bbcode-mode = callPackage ({ cl-lib ? null
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -5540,19 +5837,19 @@
melpaBuild {
pname = "bbcode-mode";
ename = "bbcode-mode";
- version = "20180505.227";
+ version = "20190304.1322";
src = fetchFromGitHub {
owner = "lassik";
- repo = "bbcode-mode";
- rev = "ee30d43f9029e0919a06be0dde0ed16f201647c1";
- sha256 = "046rdjpsm0lmkyaiv3y59hab3m8mdcj4asz5n06vb83a5xibm68s";
+ repo = "emacs-bbcode-mode";
+ rev = "e16619c80ea21154b4a4ccc2e13d0077e97c9caf";
+ sha256 = "0l7jygskxmbckf3xhbjzgwzkrj2m6z1n3i2l7qc9ii4i3mhpx0ai";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1ef095d23cc043f5d14a9deea788ed71d90c586c/recipes/bbcode-mode";
- sha256 = "1kfxzp0916gdphp4dkk4xbramsbqmg6mazvfqni86mra41rdq6sb";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/57c307eecfc0fccfdc525ce6ff63a69ff3b78874/recipes/bbcode-mode";
+ sha256 = "0rrhvwb4hrg2sbjbpgdghcgrc6gwpq3vax28r5mlacn5w5x31qjb";
name = "recipe";
};
- packageRequires = [ cl-lib ];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://melpa.org/#/bbcode-mode";
license = lib.licenses.free;
@@ -5565,11 +5862,11 @@
melpaBuild {
pname = "bbdb";
ename = "bbdb";
- version = "20180502.2038";
+ version = "20190317.1353";
src = fetchgit {
url = "https://git.savannah.nongnu.org/git/bbdb.git";
- rev = "2da950300bb22fa713cede74b71041df315ecc2e";
- sha256 = "1vz1c3f5wlhfq4d80fahqm3a8jsfl22bs3w4pfl25ivpg1l7m9bn";
+ rev = "e702668eb55fad2952f677cfc82898518d627bb3";
+ sha256 = "167br6hfb2xshwjnbzhxzf9z09w3lficvc2kbxskgk8qjkm53hqa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/bbdb";
@@ -5672,12 +5969,12 @@
melpaBuild {
pname = "bbdb-vcard";
ename = "bbdb-vcard";
- version = "20150713.1350";
+ version = "20181005.319";
src = fetchFromGitHub {
owner = "tohojo";
repo = "bbdb-vcard";
- rev = "c3aafd4160854a38fd92afcdade32b9a13abe82c";
- sha256 = "1zlf9xhpirln72xr7v6kgndkg5wyz5ipsl4gpq9lbmp92jlgbwlj";
+ rev = "3e8630a8c45add7b495d7ef290ba9f402b359489";
+ sha256 = "0f4ccbffp5j1jzgpqb26dgsb8k3aikzam21ilqfcq8ac4sl6l4g6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dd5d9027c49beae89f78d2a30dfa4bd070dff1bd/recipes/bbdb-vcard";
@@ -5776,12 +6073,12 @@
melpaBuild {
pname = "beacon";
ename = "beacon";
- version = "20180706.1025";
+ version = "20190104.1131";
src = fetchFromGitHub {
owner = "Malabarba";
repo = "beacon";
- rev = "8dfe64496be3cb79d5b83891f95b70b1b699470b";
- sha256 = "169asr7dz9xn22sxm38xxfafl6k9qnv4ir5k5hzvc9l2xp05w3z3";
+ rev = "bde78180c678b233c94321394f46a81dc6dce1da";
+ sha256 = "19m90jjbsjzhzf7phlg79l8d2kxgrqnrrg1ipa3sf7vzxxkmsdld";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d09cfab21be800831644218e9c8c4433087951c0/recipes/beacon";
@@ -5828,12 +6125,12 @@
melpaBuild {
pname = "beginend";
ename = "beginend";
- version = "20171003.548";
+ version = "20180827.226";
src = fetchFromGitHub {
owner = "DamienCassou";
repo = "beginend";
- rev = "2762796b54c7fd8613b02c041b2b9afeb13eb9fa";
- sha256 = "1g1mml0npypfk0vhicy4s7fa5df76xqpb80llxcfbnl2si9fzyfb";
+ rev = "e4ff077de4a2c80e1f42adfc86837537899447a5";
+ sha256 = "15mcwh6189581l9abzm2japdv8fzpwf1vlr9ql8xb1mn3nih9qi5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/31c1157d4fd9e47a780bbd91075252acdc7899dd/recipes/beginend";
@@ -5853,11 +6150,11 @@
melpaBuild {
pname = "belarus-holidays";
ename = "belarus-holidays";
- version = "20180615.611";
+ version = "20190102.543";
src = fetchgit {
url = "https://bitbucket.org/EugeneMakei/belarus-holidays.el";
- rev = "410a7dcf46fdcbee762a0c0aa0c7af03230b9656";
- sha256 = "186dka9ba9hx1xhd0lfj1x1njikixm09wd4xiqawgdczgfwyv4sq";
+ rev = "35a18273e19edc3b4c761030ffbd11116483b83e";
+ sha256 = "1mddjgv2q0sr5v4gxvrzz8y0ybj2bjb5klqsrjajcpbpgbim1qgf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6987c5fbafc602ff6b48c347b4e3e7c4471681e8/recipes/belarus-holidays";
@@ -5952,12 +6249,12 @@
melpaBuild {
pname = "better-defaults";
ename = "better-defaults";
- version = "20170613.2104";
+ version = "20190224.1016";
src = fetchFromGitHub {
owner = "technomancy";
repo = "better-defaults";
- rev = "12d9e6dbf24a8a3369b19650d74471b17b27f78d";
- sha256 = "1rx3p6syp6axnxbscg0l73yihgwdq7bdnkcrvfikz79yflxrsnmq";
+ rev = "0937ac9a813632c48d114cf959768cda9676db3a";
+ sha256 = "0zwixak4aysj6hckg7h7qj6ha6n7fb9v66drfpgjcg4ylg500anr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7bb729c1ad8602a5c0c27e81c9442981a54a924a/recipes/better-defaults";
@@ -6047,6 +6344,33 @@
license = lib.licenses.free;
};
}) {};
+ bibclean-format = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , reformatter }:
+ melpaBuild {
+ pname = "bibclean-format";
+ ename = "bibclean-format";
+ version = "20190302.1217";
+ src = fetchFromGitHub {
+ owner = "peterwvj";
+ repo = "bibclean-format";
+ rev = "b4003950a925d1c659bc359ab5e88e4441775d77";
+ sha256 = "1x5hbs9j4ms93p080267kjyqpk81il3x7q87awf6qzz5xhc20d3b";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a96cc66b22e7ec145ffa3031089a3d60e77b8c42/recipes/bibclean-format";
+ sha256 = "1lvi1r612jb6w0j6mbq93gk9f7hmb1pn42lfs47gvf0prmjf1zyb";
+ name = "recipe";
+ };
+ packageRequires = [ emacs reformatter ];
+ meta = {
+ homepage = "https://melpa.org/#/bibclean-format";
+ license = lib.licenses.free;
+ };
+ }) {};
biblio = callPackage ({ biblio-core
, emacs
, fetchFromGitHub
@@ -6056,12 +6380,12 @@
melpaBuild {
pname = "biblio";
ename = "biblio";
- version = "20161014.1604";
+ version = "20190214.1907";
src = fetchFromGitHub {
owner = "cpitclaudel";
repo = "biblio.el";
- rev = "a5a68fcf677f286f205f32dc7486f6c9f66aa6af";
- sha256 = "1gxjind6r235az59dr8liv03d8994mqb8a7m28j3c12q7p70aziz";
+ rev = "ff05f0b7b1d3378c570a898c6f99f787256b3d53";
+ sha256 = "1z4xzrqkw9bzs0fxyddhrpyh9yflvd0d8ki2fywl9d6d5lnns3h8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c5fbaa8c59b0e64d13beb0e0f18b0734afa84f51/recipes/biblio";
@@ -6074,6 +6398,33 @@
license = lib.licenses.free;
};
}) {};
+ biblio-bibsonomy = callPackage ({ biblio-core
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "biblio-bibsonomy";
+ ename = "biblio-bibsonomy";
+ version = "20190105.400";
+ src = fetchFromGitHub {
+ owner = "andreasjansson";
+ repo = "biblio-bibsonomy.el";
+ rev = "fbdb3ecfcd88c179a2358d7967f7ecafef725835";
+ sha256 = "0awqlv1v672vz51wccmijicv4agn0gqw5xllp0pxg8djzxl8isgl";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e4867fd81cf56c8a74dcc71774790aa602b068a7/recipes/biblio-bibsonomy";
+ sha256 = "0xfycxsslmr5si636l9pv9w5s5hmlk3253wq2vg8dm7b7ag5gr4s";
+ name = "recipe";
+ };
+ packageRequires = [ biblio-core emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/biblio-bibsonomy";
+ license = lib.licenses.free;
+ };
+ }) {};
biblio-core = callPackage ({ dash
, emacs
, fetchFromGitHub
@@ -6085,12 +6436,12 @@
melpaBuild {
pname = "biblio-core";
ename = "biblio-core";
- version = "20160901.1115";
+ version = "20190214.1843";
src = fetchFromGitHub {
owner = "cpitclaudel";
repo = "biblio.el";
- rev = "0036495a2e0d4b02b9e957e498f9437e394d6ed9";
- sha256 = "1f0p5fgvabdpafil7s8sy82hgcfzg1skxfgj72ylv3crq36bn4vp";
+ rev = "a5088a332513930ccad808bb792a5823ed44652e";
+ sha256 = "0ld1190wdqnpsf4kzbr59jykcrs0dhiha18pfxd82bh6b76h534k";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f4f086d3e8fd6a95ce198e148cd3ede35dd73fb8/recipes/biblio-core";
@@ -6113,12 +6464,12 @@
melpaBuild {
pname = "bibliothek";
ename = "bibliothek";
- version = "20180429.1515";
+ version = "20190124.1028";
src = fetchFromGitHub {
owner = "cadadr";
repo = "elisp";
- rev = "ffe03506694c94de0444995f973a925deccc400a";
- sha256 = "02wcvka96zdlq3myfar7dqywfil2b77bc6ydmgcphwn3as3kl08r";
+ rev = "b19b37be332bada6b18d4d895edf6ce78ab420c4";
+ sha256 = "0i97l8fdrjjb6dzfcqgss5yj4ibkiaxnj32sm6nyr2s7bijkvi4x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8b8308e72c4437237fded29db1f60b3eba0edd26/recipes/bibliothek";
@@ -6140,12 +6491,12 @@
melpaBuild {
pname = "bibretrieve";
ename = "bibretrieve";
- version = "20180617.1108";
+ version = "20180901.228";
src = fetchFromGitHub {
owner = "pzorin";
repo = "bibretrieve";
- rev = "e8ccdc9b9bfec0c5c658f2e9ac3fb81a137549d7";
- sha256 = "0l85kdnzm8lxva47sm4bbyv7xd52qxfgxippsbg2n12vqqiqf50z";
+ rev = "600fa1fcc4c5d79c628457f2316f3429c96be006";
+ sha256 = "17jy0a4j97vxnj9659q0jr32nx8kj12j9vhi5hnfw2nqxz33x7gr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e548e0cf8babaf32f1db58099599a72cebdbb84d/recipes/bibretrieve";
@@ -6218,12 +6569,12 @@
melpaBuild {
pname = "bicycle";
ename = "bicycle";
- version = "20180624.12";
+ version = "20180909.1426";
src = fetchFromGitHub {
owner = "tarsius";
repo = "bicycle";
- rev = "ab48f01ec8a3ebcb2f6cf36ea7f3cb8aef3da263";
- sha256 = "13rmk3004jnnbfqvi9xh22si5dw02fswlryhkafagfzbnscc6gvb";
+ rev = "42a5db3514019d539500a67f913411f5533a1eb3";
+ sha256 = "1nanf0dp7kqzs2mc8gzr9qzn9v6q86sdr35pzysdl41xqydxpsrd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ec9b4138ffaf81b556e01b85ce4b112e77909260/recipes/bicycle";
@@ -6244,12 +6595,12 @@
melpaBuild {
pname = "bifocal";
ename = "bifocal";
- version = "20171004.1124";
+ version = "20181109.1941";
src = fetchFromGitHub {
owner = "riscy";
repo = "bifocal-mode";
- rev = "a8b222b069a6bd64531b4780905989797bad8abe";
- sha256 = "0c6vzh35lj3pg9wd4v2fy6xdmcg9kq3n5br6rp4lx257gxglzpwh";
+ rev = "add30c678488cec04976a85ba8cda20805938a01";
+ sha256 = "01j8s6c3qm4scxy1dk07l41y0n55gz83zzfi254kc2vyx02vqg7f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/79e71995bd8452bad2e717884f148ec74c9735fc/recipes/bifocal";
@@ -6373,12 +6724,12 @@
melpaBuild {
pname = "bing-dict";
ename = "bing-dict";
- version = "20170604.1831";
+ version = "20181110.1800";
src = fetchFromGitHub {
owner = "cute-jumper";
repo = "bing-dict.el";
- rev = "d4b261739e53e8ed8fa5db3d3946de82c0ab8e34";
- sha256 = "0dn6rifr0njpw3mwbyn21bw88lp0kzwwjp7ivgbbl1bxshj0ybhk";
+ rev = "51266b11bca22923c3a86bc101abf9145d1397d3";
+ sha256 = "0c6d1kmgf9gyrqqfxisdlaavb4rx5scnh7dgqswlmj2fqws3yvna";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/bing-dict";
@@ -6452,12 +6803,12 @@
melpaBuild {
pname = "bitbake";
ename = "bitbake";
- version = "20180326.58";
+ version = "20190107.355";
src = fetchFromGitHub {
owner = "canatella";
repo = "bitbake-el";
- rev = "040498f9375f3b3eb67514c6497f43b77acd764f";
- sha256 = "0jpgc4ps82qwagmh3lh49m11f8b3nbjgaw9wy43q9q1mslx14hf3";
+ rev = "6b65c10a88c8750694c9c9e77299450200e7481e";
+ sha256 = "0xy4dqlg8d6ppwpa9l96dycag53rmzwiv68s2mzmpkcrjn023dr3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/da099b66180ed537f8962ab4ca727d2441f9691d/recipes/bitbake";
@@ -6583,12 +6934,12 @@
melpaBuild {
pname = "blacken";
ename = "blacken";
- version = "20180615.803";
+ version = "20190301.605";
src = fetchFromGitHub {
owner = "proofit404";
repo = "blacken";
- rev = "d98199e8ab94550f5036aac2293cfb1f745003fa";
- sha256 = "0fnrjgnc148cjs6b3qkyvpmlsmpdh3xi5xn4hxg7cpwqrx3s36d7";
+ rev = "17b48ee432d83517094635f8caaf2db1128d1db1";
+ sha256 = "04202qk6jsckvwc0zwg8513wgfjrnf33cbkv03k3vzwg6zhgmn9z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/69d9802996a338be937d61678f2cadf3497f6b85/recipes/blacken";
@@ -6627,6 +6978,33 @@
license = lib.licenses.free;
};
}) {};
+ blimp = callPackage ({ eimp
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "blimp";
+ ename = "blimp";
+ version = "20180903.1540";
+ src = fetchFromGitHub {
+ owner = "walseb";
+ repo = "blimp";
+ rev = "b048b037129b68674b99310bcc08fb96d44fdbb4";
+ sha256 = "0az7bjxc6awn56sv49w3d0ws6w7i0gqm99sbkbnjrfgj3ha8xz4d";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4fe28626950659c5ba4aa9cc7ba6126ce4737fb7/recipes/blimp";
+ sha256 = "1k70x0gs9ns7652ahq2b8fhmichsmajzqmm46v1imji238zr7kb1";
+ name = "recipe";
+ };
+ packageRequires = [ eimp emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/blimp";
+ license = lib.licenses.free;
+ };
+ }) {};
bliss-theme = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -6660,12 +7038,12 @@
melpaBuild {
pname = "bln-mode";
ename = "bln-mode";
- version = "20170112.527";
+ version = "20181121.118";
src = fetchFromGitHub {
owner = "mgrachten";
repo = "bln-mode";
- rev = "1de92cec97a4693b8b932713e333730118db9183";
- sha256 = "0dlcxh3acaiw3q9sa74jw4bpz7fv9lvpws68gw1qhs39f1plyzfx";
+ rev = "a601b0bf975dd1432f6552ab6afe3f4f71133b4a";
+ sha256 = "19y1fs5bzp2sqvh6svmj0cpvgq13zmsn852027hi11zvwi6dzqz8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ee12ef97df241b7405feee69c1e66b3c1a67204b/recipes/bln-mode";
@@ -6746,12 +7124,12 @@
melpaBuild {
pname = "blog-minimal";
ename = "blog-minimal";
- version = "20170311.555";
+ version = "20181021.149";
src = fetchFromGitHub {
owner = "thiefuniverse";
repo = "blog-minimal";
- rev = "d679d74039ecc114b037800c8a94303265b9542a";
- sha256 = "1x14xwnv22dc99gzbn6z48dhxpy46a7lrby2p59aizpwpysi64yk";
+ rev = "a634a2db0b80cb445ef0b072d1a1482ced91f9ad";
+ sha256 = "0mxfrp7gwg07d8vkipqf8p6mli9y5sqh25k1dkcsidmc6m09j5qn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/56217a33b0669a782621dd65d83419ae371ed60a/recipes/blog-minimal";
@@ -6771,12 +7149,12 @@
melpaBuild {
pname = "bm";
ename = "bm";
- version = "20180703.343";
+ version = "20181012.931";
src = fetchFromGitHub {
owner = "joodland";
repo = "bm";
- rev = "d224b6cd8341db4c2e11263c346dd44fb37fcd88";
- sha256 = "18xwm1xj436bwa2l3dkfx6hlj19y6f0xqd3jbd06j4g3idpryqma";
+ rev = "b85d407b53e1d852c47fcea2a245a4e67e48c38a";
+ sha256 = "1ypa1971yh6g0kximqxiv90h1l3m6fprwza6l88gwgackhg9wiz0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/bm";
@@ -6801,12 +7179,12 @@
melpaBuild {
pname = "bmx-mode";
ename = "bmx-mode";
- version = "20180324.857";
+ version = "20180929.432";
src = fetchFromGitHub {
owner = "josteink";
repo = "bmx-mode";
- rev = "7450c29f5c1f5f67b02bca1c89f06cdf01855f41";
- sha256 = "0knxsmlp1agfs5sj5iz13b8igjx4gpk1lj36wzh1rdiwcxicnr49";
+ rev = "536b332edc3b98cc97588c937c7368803ba5961c";
+ sha256 = "0hbkh4fb1cb1fd7fq1999i9rffr2xc0l16b0m5sajcrsir3gq4nr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7f456d2b2b8f5a33bcb0f2ffd19e6e0276950f24/recipes/bmx-mode";
@@ -6819,6 +7197,33 @@
license = lib.licenses.free;
};
}) {};
+ bnf-mode = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "bnf-mode";
+ ename = "bnf-mode";
+ version = "20190406.1326";
+ src = fetchFromGitHub {
+ owner = "sergeyklay";
+ repo = "bnf-mode";
+ rev = "1dda3ef5f837959d007512d1278a02cf5babfe8e";
+ sha256 = "12y4f4r6rrl4gj0ibql1dj0h4j0z5k78lbxf51d06c2y1xk4xr4b";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/217bde4ccd2d68dc14b1bfee22fbc99cd4109952/recipes/bnf-mode";
+ sha256 = "027pn2lvqsxyj9ii5svql2sw4xm9wrd9zy7ms8vayv737w5xd3n1";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/bnf-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
bnfc = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -6853,12 +7258,12 @@
melpaBuild {
pname = "bog";
ename = "bog";
- version = "20180113.759";
+ version = "20180815.1513";
src = fetchFromGitHub {
owner = "kyleam";
repo = "bog";
- rev = "6ed4d3edbe771e586d873b826330f3ef23aa1611";
- sha256 = "0s4jwlaq3mqyzkyg3x4nh4nx7vw825jhz7ggakay7a2cfvpa4i2j";
+ rev = "b5df3647f55359f8546dcfa991a351673a069a49";
+ sha256 = "1rfv036wzlrbqbki5i24871a9f2h6zk7yqd1lq6gnqrc4y7m477c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/19fd0bf2f8e52c79120c492a6dcabdd51b465d35/recipes/bog";
@@ -7016,12 +7421,12 @@
melpaBuild {
pname = "boon";
ename = "boon";
- version = "20180319.526";
+ version = "20181014.227";
src = fetchFromGitHub {
owner = "jyp";
repo = "boon";
- rev = "b4cf42bbc531032404da88e8671c7495f0f7a5b0";
- sha256 = "163j41j29nm29w567iq662k9anivqc20yxghm8w49w7i5hsbq9dh";
+ rev = "675719ec1f6608a690fc613214920ac3c0d350a3";
+ sha256 = "1h2mfvpsci60g7gwwwbb62n85sl1xvrmc1n2w3k8xvmszrmk05kq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/boon";
@@ -7045,12 +7450,12 @@
melpaBuild {
pname = "borg";
ename = "borg";
- version = "20180702.1353";
+ version = "20181227.946";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "borg";
- rev = "738f749a9eeb9abecad17d38ce9a3e45c040cede";
- sha256 = "0929d5bcqv39bq37sxgcf8z2y9zj89mjcdz632xy4qykiinhnwan";
+ rev = "5aad7edbaa8a37581af280db64f237619d6c8dc0";
+ sha256 = "16zxl0pmr8z3a2akhnh8g4sd1r7dag4g8p75niych272z0g96cll";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/878ab90d444f3a1fd2c9f9068ca7b477e218f1da/recipes/borg";
@@ -7281,12 +7686,12 @@
melpaBuild {
pname = "browse-at-remote";
ename = "browse-at-remote";
- version = "20180621.2331";
+ version = "20190213.1129";
src = fetchFromGitHub {
owner = "rmuslimov";
repo = "browse-at-remote";
- rev = "0a06018e3500f36917284d552917702de3c5fae5";
- sha256 = "1vci2azq00n2vx1kf0adhzddqj607l5341ym4p6ndk6xhdhqhkbs";
+ rev = "a61bda14a84983c84e81d2135bb59e92049cdf85";
+ sha256 = "1chvg9m72i888gq94crand9kkyng7gi487508nhvxsr13a6mjh7j";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/browse-at-remote";
@@ -7350,6 +7755,30 @@
license = lib.licenses.free;
};
}) {};
+ brutalist-theme = callPackage ({ fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "brutalist-theme";
+ ename = "brutalist-theme";
+ version = "20181023.522";
+ src = fetchgit {
+ url = "https://git.madhouse-project.org/algernon/brutalist-theme.el.git";
+ rev = "15ea5d881cad24c40d02a1980891b3c17853ad20";
+ sha256 = "1zlkx9l8srdw4f95355mng08sx9r23dl7318bpkrw6q56lnp79sf";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ec889956a5685c3a60003ad2bfa04b03b57aa8e8/recipes/brutalist-theme";
+ sha256 = "0dg0432r3cpjgdlpz583vky4hj5vld9d25dvaj6nxlir2ph9g9hn";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/brutalist-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
bshell = callPackage ({ buffer-manage
, emacs
, fetchFromGitHub
@@ -7472,14 +7901,14 @@
ename = "bubbleberry-theme";
version = "20141017.244";
src = fetchFromGitHub {
- owner = "jasonm23";
+ owner = "emacsfodder";
repo = "emacs-bubbleberry-theme";
rev = "22e9adf4586414024e4592972022ec297321b320";
sha256 = "1aha8rzilv4k300rr4l9qjfygydfwllkbw17lhm8jz0kh9w6bd28";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/e359b4463b10ac713c2d024c43a1682fca2959af/recipes/bubbleberry-theme";
- sha256 = "056pcr9ynsl34wqa2pw6sh4bdl5kpp1r0pl1vvw15p4866l9bdz3";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/bubbleberry-theme";
+ sha256 = "1mjygck5ra30j44msccqas8v6gkpyv74p6y6hidm8v4f8n6m8dcz";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -7495,12 +7924,12 @@
melpaBuild {
pname = "buckwalter";
ename = "buckwalter";
- version = "20180107.843";
+ version = "20190204.651";
src = fetchFromGitHub {
owner = "joehakimrahme";
repo = "buckwalter.el";
- rev = "2aa5451c3682c268adebc6b1191a796466732f53";
- sha256 = "0g270jyf2fd3x8p0jcd86j751spfphgsmwjxl61rk1x1kiql4icd";
+ rev = "d4a7785eef05491ac4eb3150b75c473480bb51cb";
+ sha256 = "1i0kkn2qziakpy0ax8rc1pjdb6r881gybqhl5dwmwsd8gkfhddy5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7dd38487731cc978e104afa39f8954cfc33ba27f/recipes/buckwalter";
@@ -7753,12 +8182,12 @@
melpaBuild {
pname = "bui";
ename = "bui";
- version = "20171215.930";
+ version = "20181218.1030";
src = fetchFromGitHub {
owner = "alezost";
repo = "bui.el";
- rev = "af1a237b4d1ed31780dd37bcbef51fc8ca9b0603";
- sha256 = "1ccw90a68dahcrkr94xi9apnxjmvzjvd33w78bsr2jyfd82ggsw1";
+ rev = "9162c24b75799857d54838d961c60776ffcd657e";
+ sha256 = "0sszdl4kvqbihdh8d7mybpp0d8yw2p3gyiipjcxz9xhvvmw3ww4x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/38b7c9345de75a707b4a73e8bb8e2f213e4fd739/recipes/bui";
@@ -7771,6 +8200,34 @@
license = lib.licenses.free;
};
}) {};
+ build-farm = callPackage ({ bui
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , magit-popup
+ , melpaBuild }:
+ melpaBuild {
+ pname = "build-farm";
+ ename = "build-farm";
+ version = "20181218.1202";
+ src = fetchFromGitHub {
+ owner = "alezost";
+ repo = "build-farm.el";
+ rev = "5c268a3c235ace0d79ef1ec82c440120317e06f5";
+ sha256 = "0i0bwbav5861j2y15j9nd5m9rdqg9q97zgcbld8pivr9nyxy63lz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/bc97bf56ea50788ecbbbb1f46e188e8487370936/recipes/build-farm";
+ sha256 = "0dbq3sc1x0cj06hv3mlk0zw0cijdwjszicylv14m1wahal33xjrw";
+ name = "recipe";
+ };
+ packageRequires = [ bui emacs magit-popup ];
+ meta = {
+ homepage = "https://melpa.org/#/build-farm";
+ license = lib.licenses.free;
+ };
+ }) {};
build-helper = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -7834,14 +8291,14 @@
ename = "bundler";
version = "20160815.215";
src = fetchFromGitHub {
- owner = "tobiassvn";
+ owner = "endofunky";
repo = "bundler.el";
rev = "f981f67c33b42243e57a78c358dffff70022b56b";
sha256 = "1hfcvlkwa3hh70qan3q5mvld1hqqbnmbwqycvlqi6qr8dcdfl3cx";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ade7d0f0f0e553b48634e60ecaf7b91d0776d5f0/recipes/bundler";
- sha256 = "0i5ybc6i8ackxpaa75kwrg44zdq3jkvy48c42vaaafpddjwjnsy4";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/bundler";
+ sha256 = "1jvcrxwsf9yd5vhirfdmjl52n6hffr1vikd386qbn32vgqcsba7a";
name = "recipe";
};
packageRequires = [ cl-lib inf-ruby ];
@@ -7857,12 +8314,12 @@
melpaBuild {
pname = "bury-successful-compilation";
ename = "bury-successful-compilation";
- version = "20150328.1728";
+ version = "20181105.2003";
src = fetchFromGitHub {
owner = "EricCrosson";
repo = "bury-successful-compilation";
- rev = "7b16dc71b43914928cc16da674e69d7af975238a";
- sha256 = "08ny1iycsgpal99g180w9yvk6ql8qn2kkc9xk9lmfv5p1wqm3l4w";
+ rev = "674644c844184605a1bb4f9487a60f7a780a6fe7";
+ sha256 = "13ilv4zbzwb5rz0gf69z8pvxazvwlmb5shkb055l42ksxslp49hh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f66e2e23c7a1fa0ce6fa8a0e814242b7c46c299c/recipes/bury-successful-compilation";
@@ -7986,12 +8443,12 @@
melpaBuild {
pname = "buttercup";
ename = "buttercup";
- version = "20180629.523";
+ version = "20181202.807";
src = fetchFromGitHub {
owner = "jorgenschaefer";
repo = "emacs-buttercup";
- rev = "39d625ce53bb1e1b9b03d9c9c70aa81e94fcc66a";
- sha256 = "1y97af0kl0yiirnajn44jcz865acndjwkr3zhpf65lm0bbaxfp2a";
+ rev = "810fa6fb8dab06610dbf2b5ccbc64b4d0ecc7485";
+ sha256 = "0dckgcyzsav6ld78bcyrrygy1cz1jvqgav6vy8f6klpmk3r8xrl1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d4b187cb5b3cc5b546bfa6b94b6792e6363242d1/recipes/buttercup";
@@ -8004,6 +8461,32 @@
license = lib.licenses.free;
};
}) {};
+ buttercup-junit = callPackage ({ buttercup
+ , emacs
+ , fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "buttercup-junit";
+ ename = "buttercup-junit";
+ version = "20181111.1258";
+ src = fetchgit {
+ url = "https://bitbucket.org/olanilsson/buttercup-junit";
+ rev = "1b3214d3d74d998c475f54035643231d8bcffbee";
+ sha256 = "120ayxx7f8vdmjwdvycjpkc9acb03z1l0jf2ndigyg64jb8q7a4g";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f1030960afe994da338d78607233319b3f7f0c8b/recipes/buttercup-junit";
+ sha256 = "1v848vbwxqrw9sdsvjaggkspavmbwkmqshf321m4n8srvi51383w";
+ name = "recipe";
+ };
+ packageRequires = [ buttercup emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/buttercup-junit";
+ license = lib.licenses.free;
+ };
+ }) {};
button-lock = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -8029,6 +8512,32 @@
license = lib.licenses.free;
};
}) {};
+ buttons = callPackage ({ cl-lib ? null
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "buttons";
+ ename = "buttons";
+ version = "20190318.1741";
+ src = fetchFromGitHub {
+ owner = "erjoalgo";
+ repo = "emacs-buttons";
+ rev = "a14d0c21cc30d33b57481f535f2a838d65b2032f";
+ sha256 = "17b6km8qvkh43g276fmv552lffd2jq5x863fc7zm7xf2khwmpwbh";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3b8f9437268a51654b2bebdd024c35060b078962/recipes/buttons";
+ sha256 = "0pp7x4z6vzdfav5ljxsk1q6xby7gcxnkyl5fcbsd4r98ja4zmyq4";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib ];
+ meta = {
+ homepage = "https://melpa.org/#/buttons";
+ license = lib.licenses.free;
+ };
+ }) {};
c-c-combo = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -8061,12 +8570,12 @@
melpaBuild {
pname = "c-eldoc";
ename = "c-eldoc";
- version = "20170917.1502";
+ version = "20181108.2039";
src = fetchFromGitHub {
owner = "nflath";
repo = "c-eldoc";
- rev = "79d09769362228058246f5e6fa183d121f7fb322";
- sha256 = "1398lfd18zn2xym36p71yavgggqbb15xz9m7gah4w4k2bk15aczk";
+ rev = "e35c0e40f71c25804919f6c01fd27e95c2e2adb7";
+ sha256 = "0rwxlq8w6507lkvvj0krwvg4ai1wyj466nhns1f857kry7cssnzy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/c-eldoc";
@@ -8182,6 +8691,33 @@
license = lib.licenses.free;
};
}) {};
+ caddyfile-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , loop
+ , melpaBuild }:
+ melpaBuild {
+ pname = "caddyfile-mode";
+ ename = "caddyfile-mode";
+ version = "20181204.58";
+ src = fetchFromGitHub {
+ owner = "Schnouki";
+ repo = "caddyfile-mode";
+ rev = "9da9c964f926690b1a1c029bd6d89ae83c5cef41";
+ sha256 = "0wip6n5x1prp7dzbvm8qik87iqpinr8yy138idddj4jc6hwd78p4";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ec771222056dcb6c67e133cd6aa6b4e4d03ac264/recipes/caddyfile-mode";
+ sha256 = "12d57xcpp78lmcr95nfp0r9g7lkw8kfxf9c3rc7g53kh5xaaj4i2";
+ name = "recipe";
+ };
+ packageRequires = [ emacs loop ];
+ meta = {
+ homepage = "https://melpa.org/#/caddyfile-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
cake-inflector = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -8216,12 +8752,12 @@
melpaBuild {
pname = "cakecrumbs";
ename = "cakecrumbs";
- version = "20180222.1845";
+ version = "20180928.1839";
src = fetchFromGitHub {
owner = "kuanyui";
repo = "cakecrumbs.el";
- rev = "76cfbfacfaa9d2128fc9218338a0ba2bb47349ab";
- sha256 = "18ni6krymzm1af2vmw2n82s0ifny6pn1p0qifn3646xx4p210a4z";
+ rev = "cf8c1df885eee004602f73c4f841301e200e5850";
+ sha256 = "0s5ga39dpn9rjxjk5inkylqh56w3qgaq2wmwwgv5gsydqdyil31f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c970907affeb4a21fa1b7c350edf171dbdcd8de5/recipes/cakecrumbs";
@@ -8267,12 +8803,12 @@
melpaBuild {
pname = "calendar-norway";
ename = "calendar-norway";
- version = "20160827.1316";
+ version = "20180906.802";
src = fetchFromGitHub {
owner = "unhammer";
repo = "calendar-norway.el";
- rev = "8501b2ee515e995f345365391b03f44c812cabdf";
- sha256 = "0lch835rq2rqyh0vyi75dhyl7hm6bv27f2z753wggh0jyg6qxi7a";
+ rev = "8d1fda8268caa74ba5e712c7675ed3c34e46e2d4";
+ sha256 = "011c8pz1g805a7c3djai39yasd2idfp4c2dcrvf7kbls27ayrl6d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c5d01230027d5cec9da2545a9ce9270a611f6567/recipes/calendar-norway";
@@ -8447,12 +8983,12 @@
melpaBuild {
pname = "call-graph";
ename = "call-graph";
- version = "20180509.635";
+ version = "20190116.2304";
src = fetchFromGitHub {
owner = "beacoder";
repo = "call-graph";
- rev = "1ba83f20e56cfe77f6165df4ffde1d152647ec3b";
- sha256 = "0qs3wg6ls4s400hdcimwf9lj9mz6g39sk3nqxvp4fk01jjzcas39";
+ rev = "641d600c3cdb002fd99bcf8040e9c4f372cd5de6";
+ sha256 = "0lbh2bhsj4xicyzcjnpp8794amaswc20ksh4qr7xcs6q8rgfpbbc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a6acf099e2510c82b4b03e2f35051afc3d28af45/recipes/call-graph";
@@ -8500,12 +9036,12 @@
melpaBuild {
pname = "camcorder";
ename = "camcorder";
- version = "20160404.2134";
+ version = "20190317.1438";
src = fetchFromGitHub {
owner = "Malabarba";
repo = "camcorder.el";
- rev = "c96b3392c99b9f83c968bffa330ec4356c41518e";
- sha256 = "0am8asrzjs3iwak9c86fxb4zwgx5smbb9ywp0zn4y7j37blygswj";
+ rev = "b11ca61491a27681bb3131b72b51c105fd996bed";
+ sha256 = "11p42cmk9sj2ilpx6nnlbzff85qi0m27wk49da2ipal28wcx2452";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6aed365c42987d64d0cd9a8a6178339b1b39e8/recipes/camcorder";
@@ -8525,16 +9061,16 @@
melpaBuild {
pname = "caml";
ename = "caml";
- version = "20171209.1232";
+ version = "20190121.716";
src = fetchFromGitHub {
owner = "ocaml";
- repo = "ocaml";
- rev = "ca71bda2ac7e5143f58fa9a1693f97e709a91332";
- sha256 = "1ksx2ym5s68m87rnjjkdwhp5ci6cfw0yhmjjmq1r4a0d0r77x4lr";
+ repo = "caml-mode";
+ rev = "cd1142f1e6a9ad8d763688877ce76b2a7436d750";
+ sha256 = "1zzsjibiyl947fir1j0swzsq7pk4l1jh8dn86by24zgcpm14gj3c";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d5a3263cdcc229b11a3e96edbf632d56f32c47aa/recipes/caml";
- sha256 = "1ixs0626nsg1ilqdwj5rd8kicjy7mprswwy0kprppmpmc8y7xf7c";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/42667ee0d64bce19ad9081a4fae163a9655641d4/recipes/caml";
+ sha256 = "0hpxvvgq9nxcbxq9dm1sia3ph2h7p07pp48jz77pr786lrw67la0";
name = "recipe";
};
packageRequires = [];
@@ -8543,6 +9079,35 @@
license = lib.licenses.free;
};
}) {};
+ cangjie = callPackage ({ dash
+ , emacs
+ , f
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "cangjie";
+ ename = "cangjie";
+ version = "20190322.434";
+ src = fetchFromGitHub {
+ owner = "kisaragi-hiu";
+ repo = "cangjie.el";
+ rev = "f4dcb691e3bda6971cb89b07f368dd285179a8ff";
+ sha256 = "0hvwaj1g1szyhjvyxhwflq45bbcvvgv391wa7qkwlxmrvvfhp9k2";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ed79fc972f7fe69d7bad5d1cdde3a276885a9fe8/recipes/cangjie";
+ sha256 = "0gdp6dlkzkkd8r3cmwakwxlxsbysb351n1lr9sq4d60gbbskklln";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs f s ];
+ meta = {
+ homepage = "https://melpa.org/#/cangjie";
+ license = lib.licenses.free;
+ };
+ }) {};
capture = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -8605,12 +9170,12 @@
melpaBuild {
pname = "cargo";
ename = "cargo";
- version = "20180521.408";
+ version = "20190108.17";
src = fetchFromGitHub {
owner = "kwrooijen";
repo = "cargo.el";
- rev = "10093586bdac7252e65e11851f26da8ba4720608";
- sha256 = "03imznfy9ry2n83hj3qgw8m0030w66z6789raxywv394274pxm4c";
+ rev = "1f3bc0d10dbddabfe1974590847a1359aeb3c244";
+ sha256 = "0kixkp2q8dj7gbqkmgb2jz3ihfrbyxykvfd1abh8bkxsa4zz6khm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e997b356b009b3d2ab467fe49b79d728a8cfe24b/recipes/cargo";
@@ -8678,7 +9243,8 @@
license = lib.licenses.free;
};
}) {};
- cask = callPackage ({ cl-lib ? null
+ cask = callPackage ({ ansi
+ , cl-lib ? null
, dash
, epl
, f
@@ -8692,19 +9258,19 @@
melpaBuild {
pname = "cask";
ename = "cask";
- version = "20180626.1249";
+ version = "20181107.142";
src = fetchFromGitHub {
owner = "cask";
repo = "cask";
- rev = "d731e96f40c34a0fd85db04977c9756d60bd221f";
- sha256 = "045qixxkrvz48giwc83aykld78gmbckndy32prh8dl6ch7digh23";
+ rev = "199b4380dd3e178ff9df3a9d13d044d67e522b3f";
+ sha256 = "14q76wdlnwg08ais2gpmdrjvshly1wp8p8ckyhdmnwq7x39qvh7d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b86c666ee9b0620390a250dddd42b17cbec2409f/recipes/cask";
sha256 = "11nr6my3vlb1xiyai7qwii3nszda2mnkhkjlbh3d0699h0yw7dk5";
name = "recipe";
};
- packageRequires = [ cl-lib dash epl f package-build s shut-up ];
+ packageRequires = [ ansi cl-lib dash epl f package-build s shut-up ];
meta = {
homepage = "https://melpa.org/#/cask";
license = lib.licenses.free;
@@ -8847,6 +9413,32 @@
license = lib.licenses.free;
};
}) {};
+ cc-cedict = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "cc-cedict";
+ ename = "cc-cedict";
+ version = "20181217.312";
+ src = fetchFromGitHub {
+ owner = "xuchunyang";
+ repo = "cc-cedict.el";
+ rev = "7dd6e8a99c634c9eff5fa2931ad8828ff02dbd90";
+ sha256 = "1clpwp5vp9rlnms3xfr4c0ddhc3cxl3vv76jasxiqjzidjs8n090";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/368aaef30c5c4f38d9d2dd09f966e3dcc2463e11/recipes/cc-cedict";
+ sha256 = "1h8i9nfd66ayka5vkm1lp5crr4nm1bzi4sak0xid85fzgmx364vr";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/cc-cedict";
+ license = lib.licenses.free;
+ };
+ }) {};
ccc = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -8878,23 +9470,24 @@
, fetchurl
, lib
, lsp-mode
- , melpaBuild }:
+ , melpaBuild
+ , projectile }:
melpaBuild {
pname = "ccls";
ename = "ccls";
- version = "20180708.2207";
+ version = "20181225.53";
src = fetchFromGitHub {
owner = "MaskRay";
repo = "emacs-ccls";
- rev = "4c8f377f7aa957a33a0097dc212e765246f799db";
- sha256 = "09gll0c1jy0ljv2jb7qmpgyh0n4jdm4xhj10lcny0xx32nyfa86y";
+ rev = "8345c08d1d8fb784d3cc8b35bfbaedfa1861cc2e";
+ sha256 = "1bs4jx36vrkrdfr6ah6hcy19fyv73d39dgrl8w6j555ahswk2c9h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/be27a4022d58860917a659fce2b7d7791fbea4e2/recipes/ccls";
sha256 = "0kiv0n6pdpa75wjcimpwccwbjbhga4gjnphjrkpj4qz5qv42rbnm";
name = "recipe";
};
- packageRequires = [ dash emacs lsp-mode ];
+ packageRequires = [ dash emacs lsp-mode projectile ];
meta = {
homepage = "https://melpa.org/#/ccls";
license = lib.licenses.free;
@@ -9160,29 +9753,27 @@
license = lib.licenses.free;
};
}) {};
- cerbere = callPackage ({ f
- , fetchFromGitHub
+ cerbere = callPackage ({ fetchFromGitHub
, fetchurl
, lib
, melpaBuild
- , pkg-info
- , s }:
+ , pkg-info }:
melpaBuild {
pname = "cerbere";
ename = "cerbere";
- version = "20140418.715";
+ version = "20181113.841";
src = fetchFromGitHub {
owner = "nlamirault";
repo = "cerbere";
- rev = "ef573b05f4c2a067b8234003aaa4b2a76fffea5c";
- sha256 = "17jg5d5afh9zpnjx8wkys8bjllxq99j0yhz8j3fvkskisvhkz1im";
+ rev = "bb18d932b16541105d41a668dbf6fc4e833a6dc2";
+ sha256 = "1sx61pgh12iqby4yvslrmn634hn4hk2bh2zfybj1b5p3iwzzmpzd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4145e270a2113f30f8bb4d0f6c335f1c76f77b1c/recipes/cerbere";
sha256 = "1g3svmh5dlh5mvyag3hmiy90dfkk6f7ppd9qpwckxqyll9vl7r06";
name = "recipe";
};
- packageRequires = [ f pkg-info s ];
+ packageRequires = [ pkg-info ];
meta = {
homepage = "https://melpa.org/#/cerbere";
license = lib.licenses.free;
@@ -9348,26 +9939,27 @@
license = lib.licenses.free;
};
}) {};
- cg = callPackage ({ fetchFromGitHub
+ cg = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "cg";
ename = "cg";
- version = "20171123.301";
+ version = "20190316.1506";
src = fetchFromGitHub {
- owner = "emacsorphanage";
+ owner = "emacsmirror";
repo = "cg";
- rev = "e19f3bf60b9c8dbcff053b008fa3ace17fc073fe";
- sha256 = "13j7x6ngjga2idixw02llmykzsrihsxnfdj5jkx5sdkvrmqymmfz";
+ rev = "9349600829ca1758306e703a649874f8c63955fa";
+ sha256 = "1s3s37g99x19zxnq0xbiy95kjhm2hb09saxic2basapcp0sdfbwh";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/30de78c9cf83de30093a5647976eeaf552d4b2cb/recipes/cg";
- sha256 = "0yl2w48953vym4gxcxvjfaq3jgsv5jlya9vq3iwlfxqpapd3r3k9";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/be27e728327016b819535ef8cae10020e5a07c2e/recipes/cg";
+ sha256 = "1xffjilr9f2s3w7j8f3clq7qvsnr0lr8gadlybpzzy8x5fbmk4n3";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/cg";
license = lib.licenses.free;
@@ -9381,16 +9973,16 @@
melpaBuild {
pname = "challenger-deep-theme";
ename = "challenger-deep-theme";
- version = "20180525.918";
+ version = "20181205.1034";
src = fetchFromGitHub {
- owner = "MaxSt";
- repo = "challenger-deep";
- rev = "62d05f01c3dc4653f46527448b3b2058daba86c0";
- sha256 = "019n14m1nfiw2xshsmkiszmj7qc5dyd949xj3bfcxrj6a2prsgqw";
+ owner = "challenger-deep-theme";
+ repo = "emacs";
+ rev = "64a27ff3d7f6633234f7f1ec28a70b47a176bb04";
+ sha256 = "17pmr3fbcyhhv03y9x32h0bwi2mrbqnjv9cy04ghpr3hkpgkpz65";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7942f539d025c1e2b059d49e1984716cbbc90a67/recipes/challenger-deep-theme";
- sha256 = "1apjc32wy7h7fadxckdbfa6wzd360c7v6dig9gikjbsxm8xgdg60";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/challenger-deep-theme";
+ sha256 = "02k0irp27wv1b5g2a6g86zp7cdprv17c0mlhkjsq2brls274ch3y";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -9459,12 +10051,12 @@
melpaBuild {
pname = "char-menu";
ename = "char-menu";
- version = "20171231.2218";
+ version = "20181231.2305";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "char-menu";
- rev = "3235f8e3c88848ce10d25f84a5da39061fd35c0d";
- sha256 = "05pjfj6g4gdbdj4z63283j5qzkvhvrzsx1jhbc5iih0nsffwapc3";
+ rev = "bf6f64e8347bdf6f8421d0494d30b9af30a49778";
+ sha256 = "0dslfmhzxxyl9i9vfff21yjwjl9y8zhmgap7p3b2bdivks50hwwd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f6676747e853045b3b19e7fc9524c793c6a08303/recipes/char-menu";
@@ -9778,8 +10370,8 @@
sha256 = "1zm0wjhqsb11szvxs2rnq63396cbi6ffynpbn07p6gk5agxzfy0j";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/chinese-number";
- sha256 = "01ia2l5vrg8fhaxcvk8pv9qfm08xs0fbyc9j57nbdk9wxnd9i45s";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/chinese-number";
+ sha256 = "0cjfxhd5izahkncs2nzpdv8brsxlwr2dx4hi07ymr62cr0hh0jgy";
name = "recipe";
};
packageRequires = [];
@@ -9875,12 +10467,12 @@
melpaBuild {
pname = "choice-program";
ename = "choice-program";
- version = "20171004.931";
+ version = "20180920.2013";
src = fetchFromGitHub {
owner = "plandes";
repo = "choice-program";
- rev = "27607ec1fe241c58fbc1f861454a8e2ec1fd7b15";
- sha256 = "0q8krgsydrc2xc29y60qljifdvxfmxnvbncxsh64xhrzsnrgwmq5";
+ rev = "08ce5a5dd79690aed12fd9d152d8cb4be988fdb1";
+ sha256 = "19mq8z00g12cpyrb8z0m9sxqs8adp4hbcbqxcila53myfcf7v92h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6e39555b2538cc8a955766c5533871396e8fe712/recipes/choice-program";
@@ -9893,6 +10485,32 @@
license = lib.licenses.free;
};
}) {};
+ chronometer = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "chronometer";
+ ename = "chronometer";
+ version = "20190304.728";
+ src = fetchFromGitHub {
+ owner = "marcelotoledo";
+ repo = "chronometer";
+ rev = "8457b296ef87be339cbe47730b922757d60bdcd5";
+ sha256 = "1apzb0jccw91gdynqa1722bbalzj4kp9fq25zzw1rxsrgh3mgmc5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b20fa4885e2cdc0429d988c76b365bf34d9343db/recipes/chronometer";
+ sha256 = "1kgfq9srch0amdgb4cvizlrg5xqq0hkkdq85yjr2xwsljh09m83k";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/chronometer";
+ license = lib.licenses.free;
+ };
+ }) {};
chronos = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -9983,12 +10601,12 @@
melpaBuild {
pname = "cider";
ename = "cider";
- version = "20180719.542";
+ version = "20190331.1314";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "cider";
- rev = "4b7aea3523fb91e8172dfdd538b01da8c0d7686f";
- sha256 = "0lcczp066lxpq5s4f23bsvn15lkzivw6f0xi5ih7kf74c1fq1nn2";
+ rev = "957617895e532217ec0082faf1e80743baf5d4f2";
+ sha256 = "08l7q9ms0wby8r4aagcnw3dzqp20ahagpfwc2as787gd9hs45fac";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/55a937aed818dbe41530037da315f705205f189b/recipes/cider";
@@ -10073,12 +10691,12 @@
melpaBuild {
pname = "cider-hydra";
ename = "cider-hydra";
- version = "20161018.2254";
+ version = "20181015.27";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "cider-hydra";
- rev = "6bb341143fe16f12be2262b2bcd003a246962676";
- sha256 = "094641g6rzm4y6k8ph1bbkfiwpp37wk1q9mcylbah01qlqd9c9qm";
+ rev = "5956c3909cd9beae11f64973e4f0d830cea7860d";
+ sha256 = "1hnari85c4y5sc8cdv2idkg2qv058crz54xdidnphr1wgw5zhvpk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/51d5e6471f88337c478ee5c189f037aaec937f56/recipes/cider-hydra";
@@ -10091,36 +10709,6 @@
license = lib.licenses.free;
};
}) {};
- cider-spy = callPackage ({ cider
- , cl-lib ? null
- , dash
- , emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild
- , noflet }:
- melpaBuild {
- pname = "cider-spy";
- ename = "cider-spy";
- version = "20160313.740";
- src = fetchFromGitHub {
- owner = "jonpither";
- repo = "cider-spy";
- rev = "0224608d240e9900e588b6df049c2a87c24fc936";
- sha256 = "1x96f5wc916dcwb75a34b6x1mas20gdgy34c7rg59n91ydn1mfaf";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cider-spy";
- sha256 = "086yxz90mgc5si9k4j15nkc51k0lfk1dx1kq3r3swhyw3cwn7vh3";
- name = "recipe";
- };
- packageRequires = [ cider cl-lib dash emacs noflet ];
- meta = {
- homepage = "https://melpa.org/#/cider-spy";
- license = lib.licenses.free;
- };
- }) {};
ciel = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -10129,12 +10717,12 @@
melpaBuild {
pname = "ciel";
ename = "ciel";
- version = "20170330.526";
+ version = "20180914.115";
src = fetchFromGitHub {
owner = "cs14095";
repo = "ciel.el";
- rev = "8c73f78d60ef52d3c395a9629963a63439b8a83e";
- sha256 = "1jaxqri8l7y1lqj830h5alxn37skjpb56j6ax8qf9926n8qz3arm";
+ rev = "429773a3c551691a463ecfddd634b8bae2f48503";
+ sha256 = "0xykdwsjgx44c0l5v9swkjjv0xa673krzlc71b1sc4dw9l526s4m";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9c70c007a557ea9fb9eb4d3f8b7adbe4dac39c8a/recipes/ciel";
@@ -10209,16 +10797,16 @@
melpaBuild {
pname = "circadian";
ename = "circadian";
- version = "20180708.643";
+ version = "20181024.556";
src = fetchFromGitHub {
- owner = "GuidoSchmidt";
+ owner = "guidoschmidt";
repo = "circadian.el";
- rev = "9894361dcd6ffb6d4629b4cbbabda2153699eb8e";
- sha256 = "0wpsykmai3idz0bgfl07hwl9nr4x9sgprvqgw8jln4dz2wf5gdic";
+ rev = "e0547c1779f2653dac09192951a0756ce2e2ea89";
+ sha256 = "120b6wr2b4dmgaz5y3vpc5f68nqm1lfkgwpcxwxncspds7qb987j";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/3440905a20bc91bb2637a87c04ff8410379f150d/recipes/circadian";
- sha256 = "13797y1w1636bibisz5i5p2xp0smd3apnhc1nx8ijm75smx679id";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/circadian";
+ sha256 = "1xxrhifw371yc4i2cddzcdmqh5dfc905wyl88765098685q8k4bp";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -10235,12 +10823,12 @@
melpaBuild {
pname = "circe";
ename = "circe";
- version = "20180525.531";
+ version = "20190322.542";
src = fetchFromGitHub {
owner = "jorgenschaefer";
repo = "circe";
- rev = "fedfa7eb8516a53fa70b6a1f4fce4b5ab66ea91f";
- sha256 = "10gi14kwxd81blddpvqh95lgmpbfgp0m955naxix3bs3r6a75n4s";
+ rev = "6ccd4b494cbae9d28091217654f052eaea321007";
+ sha256 = "0cr9flk310yn2jgvj4hbqw9nj5wlfi0fazdkqafzidgz6iq150wd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a2b295656d53fddc76cacc86b239e5648e49e3a4/recipes/circe";
@@ -10364,6 +10952,32 @@
license = lib.licenses.free;
};
}) {};
+ cl-libify = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "cl-libify";
+ ename = "cl-libify";
+ version = "20181129.1830";
+ src = fetchFromGitHub {
+ owner = "purcell";
+ repo = "cl-libify";
+ rev = "e205b96f944a4f312fd523804cbbaf00027a3c8b";
+ sha256 = "03xmpgpd4zw9x4shkz9aa744ifnwfblnq369qsp3r1awjacksrg3";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/22088f8779652072871d5c472c67f34bd0470129/recipes/cl-libify";
+ sha256 = "0p3b57vfzhk348hb7bcnkq4ihi4qzsy4hcdvwa1h85i84vwyzk5d";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/cl-libify";
+ license = lib.licenses.free;
+ };
+ }) {};
clang-format = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -10374,14 +10988,14 @@
ename = "clang-format";
version = "20180406.814";
src = fetchFromGitHub {
- owner = "emacsorphanage";
+ owner = "emacsmirror";
repo = "clang-format";
- rev = "d11600d94e9aaeb807b4ab7b4ae8069d8bd5f075";
+ rev = "38ee476c47c3998f04a8cba9c18d0e2f806fe968";
sha256 = "0zlw1qdchzpr93wqmkn7590w0frmhvd82jjfl1dngwa8j14pf97k";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/30de78c9cf83de30093a5647976eeaf552d4b2cb/recipes/clang-format";
- sha256 = "1w2w8hhyxp73s1ziyd0n7f1yi0x46v93630xxpjnf9bgr1psfk5f";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/be27e728327016b819535ef8cae10020e5a07c2e/recipes/clang-format";
+ sha256 = "0v8nvgjadzmsz088q6cgli5s99z45bz9qb508qln1yips42zn258";
name = "recipe";
};
packageRequires = [ cl-lib ];
@@ -10526,12 +11140,12 @@
melpaBuild {
pname = "cliphist";
ename = "cliphist";
- version = "20171112.2138";
+ version = "20181229.611";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "cliphist";
- rev = "e454254f8bd9dbaea28e95c786d7297a2d4e920a";
- sha256 = "1lxsy78kmrrb82y7nlaaaq2qsly7f3wa8jw1bagjax4rwvld0vim";
+ rev = "232ab0b3f6d502de61ebe76681a6a04d4223b877";
+ sha256 = "0is772r0b7i8rvra9zb94g9aczv8b6q0dmdk67wbli5rv5drfjyq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/82d86dae4ad8efc8ef342883c164c56e43079171/recipes/cliphist";
@@ -10559,8 +11173,8 @@
sha256 = "0mfb4k0i71y49hn0xk5a1mv4zaj249qcan0y0nzvgf7mmvr32n9w";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/4dc92d73705ebb61ff8218f3483dd2da51ce8d32/recipes/clipmon";
- sha256 = "1gvy1722px4fh88jyb8xx7k1dgyjgq7zjadr5fghdir42l0byw7i";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/clipmon";
+ sha256 = "0qhav3scmk3zsa7v3hg3zczps0as3mzrz3cl34n3xlvf4f6ifd9k";
name = "recipe";
};
packageRequires = [];
@@ -10604,14 +11218,14 @@
ename = "clips-mode";
version = "20170909.123";
src = fetchFromGitHub {
- owner = "grettke";
+ owner = "clips-mode";
repo = "clips-mode";
rev = "dd38e2822640a38f7d8bfec4f69d8dd24be27074";
sha256 = "1q2jz72wi8d2pdrjic9kwqixp5sczjkkx8rf67rgaz37ysjpcbf6";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d28484bf5e9ad72778ad63f73deeea1eb1263236/recipes/clips-mode";
- sha256 = "083wrhjn04rg8vr6j0ziffdbdhbfn63wzl4q7yzpkf8qckh6mxhf";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/clips-mode";
+ sha256 = "1ckk8ajr1x8y2h8jx2q233xs69nip3kjn0wp3xgfbwx7hjcbk7kr";
name = "recipe";
};
packageRequires = [];
@@ -10632,22 +11246,21 @@
, melpaBuild
, multiple-cursors
, paredit
- , s
, seq
, yasnippet }:
melpaBuild {
pname = "clj-refactor";
ename = "clj-refactor";
- version = "20180708.57";
+ version = "20190405.333";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "clj-refactor.el";
- rev = "443f0860d1d1c209cf4baae998f55df0616a819f";
- sha256 = "1qykm5z0iiv7vsmkgpd4mvxs0ml42z132bxg7ap8an9mvxixrvhj";
+ rev = "cd6b6fb30fc5a429ff209d20af2f2f304937fe99";
+ sha256 = "0bn1bianch1f3c9pps7kxmk6lradmkgqa9bfjqr864w1yrv8yxv5";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/3a2db268e55d10f7d1d5a5f02d35b2c27b12b78e/recipes/clj-refactor";
- sha256 = "1qvds6dylazvrzz1ji2z2ldw72pa2nxqacb9d04gasmkqc32ipvz";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/clj-refactor";
+ sha256 = "05x0820x34pidcz03z96qs685y2700g7ha0dx4vy1xr7fg356c3z";
name = "recipe";
};
packageRequires = [
@@ -10659,7 +11272,6 @@
inflections
multiple-cursors
paredit
- s
seq
yasnippet
];
@@ -10777,23 +11389,24 @@
, fetchurl
, lib
, melpaBuild
- , projectile }:
+ , projectile
+ , spaceline }:
melpaBuild {
pname = "clocker";
ename = "clocker";
- version = "20160125.1505";
+ version = "20190214.1033";
src = fetchFromGitHub {
owner = "roman";
repo = "clocker.el";
- rev = "07338bc4b850d262eb263ac306ae3366cac6e078";
- sha256 = "0f6qav92lyp36irdlamcxhzfd4p1i4iq18d5cmr7fgfwi894ikcg";
+ rev = "c4d76968a49287ce3bac0832bb5d5d076054c96f";
+ sha256 = "1wp74fmnk21n5lrpmyk9j25dc79jffbmmhbgg5avzv63az6ffkdk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dadd3f5abad2e1f7863c4d654ff065f641395f64/recipes/clocker";
sha256 = "0cckrk40k1labiqjh7ghzpx5zi136xz70j3ipp117x52qf24k10k";
name = "recipe";
};
- packageRequires = [ dash projectile ];
+ packageRequires = [ dash projectile spaceline ];
meta = {
homepage = "https://melpa.org/#/clocker";
license = lib.licenses.free;
@@ -10807,12 +11420,12 @@
melpaBuild {
pname = "clojars";
ename = "clojars";
- version = "20161109.1448";
+ version = "20180825.1251";
src = fetchFromGitHub {
owner = "joshuamiller";
repo = "clojars.el";
- rev = "d9a3ecb61f055e1c3497e424193d867bc3125da1";
- sha256 = "1h1yff0b2n9rwpqwhba23jpqbdpnivx0bhs7b48gl66wpsg7307l";
+ rev = "c78e4d5ddacda064c253e2b38d1c35188aa1ad71";
+ sha256 = "1xa0c3i8mq3n8mh37i5avgfkcnjyqkg6h668d9lf3w0bnz5cw0x7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7f766319c3e18a41017684ea503b0382e96ab31b/recipes/clojars";
@@ -10825,33 +11438,6 @@
license = lib.licenses.free;
};
}) {};
- clojure-cheatsheet = callPackage ({ cider
- , fetchFromGitHub
- , fetchurl
- , helm
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "clojure-cheatsheet";
- ename = "clojure-cheatsheet";
- version = "20180201.4";
- src = fetchFromGitHub {
- owner = "clojure-emacs";
- repo = "clojure-cheatsheet";
- rev = "85c382317a56bbdfac03ae95999c28fc0cde65d7";
- sha256 = "0w9l6nz583qyldz44jqdh4414rgm6n2fzbaj5hsr5j1bkdizq7xl";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/0569da79bd8145df334965c5d4364a50b6b548fa/recipes/clojure-cheatsheet";
- sha256 = "05sw3bkdcadslpsk64ds0ciavmdgqk7fr5q3z505vvafmszfnaqv";
- name = "recipe";
- };
- packageRequires = [ cider helm ];
- meta = {
- homepage = "https://melpa.org/#/clojure-cheatsheet";
- license = lib.licenses.free;
- };
- }) {};
clojure-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -10860,12 +11446,12 @@
melpaBuild {
pname = "clojure-mode";
ename = "clojure-mode";
- version = "20180709.648";
+ version = "20190324.2328";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "clojure-mode";
- rev = "e9da8797e577651b96875228e3804ef11b3c9ff0";
- sha256 = "0dpvmyanhbm164ma3ryhsqchi66vjwpyv97qq92zrd8arv8njnbh";
+ rev = "e898a949d6789acbea53fd036af786268b46c620";
+ sha256 = "1hds3g0vcd12lhjjnjx7rr8xgll7vg8kxpk9hqbc72p563h1sy97";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5e3cd2e6ee52692dc7b2a04245137130a9f521c7/recipes/clojure-mode";
@@ -10968,12 +11554,12 @@
melpaBuild {
pname = "clomacs";
ename = "clomacs";
- version = "20180722.757";
+ version = "20190313.817";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "clomacs";
- rev = "be07dc637553b86b6d5cfbbe7dcb4acaf897135e";
- sha256 = "0h05424xfj3higzjrigzkgmp7pal8zivgjy8kfndj2sjy5kyz5g9";
+ rev = "461be59e5f480af292c84fd6f7d88f1f885371a5";
+ sha256 = "1kglhcid32vxs8nc7j2jjbd0cbwxx2rc0y2wlhmcxpd3gsk2lwp3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/345f9797e87e3f5f957c167a5e3d33d1e31b50a3/recipes/clomacs";
@@ -10995,12 +11581,12 @@
melpaBuild {
pname = "closql";
ename = "closql";
- version = "20180627.1931";
+ version = "20181031.1458";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "closql";
- rev = "faed079570c2e70b0e4988177e35b7990afa4752";
- sha256 = "0ni2akjb1n5w6vz3b210c3bya9mbyyxiygn8hna707qnszd0li8r";
+ rev = "012b94f8695e194455111fd54eff0b94dd0dd0db";
+ sha256 = "1xhpfjjkjqfc1k2rj77cscclz5r7gpvv3hi202x178vdcpipjwar";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2df16abf56e53d4a1cc267a78797419520ff8a1c/recipes/closql";
@@ -11123,12 +11709,12 @@
melpaBuild {
pname = "cmake-font-lock";
ename = "cmake-font-lock";
- version = "20170117.1225";
+ version = "20190324.2150";
src = fetchFromGitHub {
owner = "Lindydancer";
repo = "cmake-font-lock";
- rev = "8be491b4b13338078e524e2fe6213c93e18a101e";
- sha256 = "0h96c670gki6csqfrhlnjxkpzx0m92l6pcsdhx93l3qbh23imcmm";
+ rev = "5b71ab212f272b7c62a9e7b21aa43a2533330b39";
+ sha256 = "0ykk5sgxnh77qb61k39fy9vpbgv2hgv5gkh9df1jfyj5lhxxxdcq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/383a7f191c10916ad40284fba94f967765ffeb7e/recipes/cmake-font-lock";
@@ -11153,12 +11739,12 @@
melpaBuild {
pname = "cmake-ide";
ename = "cmake-ide";
- version = "20180713.813";
+ version = "20190313.131";
src = fetchFromGitHub {
owner = "atilaneves";
repo = "cmake-ide";
- rev = "0fa6258692908c4c461d46827db0be6cf0a5d5b1";
- sha256 = "0jnhxz6f04f4ckxljhn0sraw3z6w2w8yjfksx2wdggwi1qhvn3vh";
+ rev = "bcd890250f8937bf624671cdfbe7e8a87f465f8c";
+ sha256 = "08hrhcrbdl7wyflg7ijk44r5vhig383axn96vgb60nmj96iq5r8n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/17e8a8a5205d222950dc8e9245549a48894b864a/recipes/cmake-ide";
@@ -11282,12 +11868,12 @@
melpaBuild {
pname = "cnfonts";
ename = "cnfonts";
- version = "20171205.111";
+ version = "20190314.432";
src = fetchFromGitHub {
owner = "tumashu";
repo = "cnfonts";
- rev = "4583e30d5058773606b830072df38a038d40203a";
- sha256 = "04vc3p4320h3ncxm8s21ijv524w5m0j5gx1f5pyw91k3avvz9hbx";
+ rev = "c31d13cc3c320fd5bf24bf8309c6d982a25c49ee";
+ sha256 = "0c50xacgcbk3kbkxbg713bmaidpmkhnsb89pn9v8p8rk5nz06b89";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0d5787ffeeee68ffa41f3e777071815084e0ed7a/recipes/cnfonts";
@@ -11403,6 +11989,33 @@
license = lib.licenses.free;
};
}) {};
+ code-stats = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , request }:
+ melpaBuild {
+ pname = "code-stats";
+ ename = "code-stats";
+ version = "20190406.1936";
+ src = fetchFromGitHub {
+ owner = "xuchunyang";
+ repo = "code-stats-emacs";
+ rev = "15242297279cb0dee01fbb93ef7536e337e20bb7";
+ sha256 = "1f2fmxpijggk804pa2m86z2n9kp11n4w5k83a7l2qw6c855ax8lx";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/20af5580926e9975605c0a245f6ac15c25f4921e/recipes/code-stats";
+ sha256 = "0mwjlhpmrbh3mbw3hjlsbv1fr4mxh068c9g0zcxq7wkksxx707if";
+ name = "recipe";
+ };
+ packageRequires = [ emacs request ];
+ meta = {
+ homepage = "https://melpa.org/#/code-stats";
+ license = lib.licenses.free;
+ };
+ }) {};
codebug = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -11428,27 +12041,27 @@
license = lib.licenses.free;
};
}) {};
- codesearch = callPackage ({ elog
- , fetchFromGitHub
+ codesearch = callPackage ({ fetchFromGitHub
, fetchurl
, lib
+ , log4e
, melpaBuild }:
melpaBuild {
pname = "codesearch";
ename = "codesearch";
- version = "20180508.822";
+ version = "20181006.731";
src = fetchFromGitHub {
owner = "abingham";
repo = "emacs-codesearch";
- rev = "e40efc62e9333db0593bd81b5c78d08b19bfb193";
- sha256 = "04xivg6f19mlpsv77jwasg4ii9vlv8amblm03siwhx53ib9wlcyc";
+ rev = "f6eb96f034a925444412cfa03e45e0ccbbafe3f2";
+ sha256 = "1xdkm1f04z1h3ivd6zm8hckf3n3fbi5rwybg4dwi5mim6w84i7j9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0da1c6971ac2d3e9ee67731d00a9e8ca2d169826/recipes/codesearch";
sha256 = "1zm7fqwiknk07c8aks1silnkxifkfbdzvbzg77wrap48k8mnw03l";
name = "recipe";
};
- packageRequires = [ elog ];
+ packageRequires = [ log4e ];
meta = {
homepage = "https://melpa.org/#/codesearch";
license = lib.licenses.free;
@@ -11621,12 +12234,12 @@
melpaBuild {
pname = "color-identifiers-mode";
ename = "color-identifiers-mode";
- version = "20180504.926";
+ version = "20181120.1151";
src = fetchFromGitHub {
owner = "ankurdave";
repo = "color-identifiers-mode";
- rev = "60ae3ab0fdffe0efae7e08950d7b2a96f4ea49e2";
- sha256 = "0f2ji7ip1cm25fbna6yib37fjc4f1pafh9zld6a61ajgy1b3wjda";
+ rev = "4ba39f0274e1f85e50c956c507f942d950891a20";
+ sha256 = "102vyyal2zv8smbc7a362ibk5kl5nylplfjjx9w8r5pyapygq7mq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5c735755e414fdf169aca5ec6f742533d21472e0/recipes/color-identifiers-mode";
@@ -11671,16 +12284,16 @@
melpaBuild {
pname = "color-theme";
ename = "color-theme";
- version = "20080305.34";
+ version = "20190220.315";
src = fetchFromGitHub {
- owner = "emacsorphanage";
+ owner = "emacsattic";
repo = "color-theme";
- rev = "f6bbc9eb7a136dd5f6e094cf1e9072b78a05e2de";
- sha256 = "1jlwz8wyilrry13pihmpa9v7zn4l4r6hrxr8qf3l7yinbhzs70p1";
+ rev = "3a2f6b615f5e2401e30d93a3e0adc210bbb4b7aa";
+ sha256 = "09imx996afh3j207163kg8sc92hd7wljkpban1pnn6f67bgyrvlv";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/be81fe3d1594473cb857d6d8d1345b60e512b802/recipes/color-theme";
- sha256 = "1j5gdx452fzk20cdcy09spp1vbzxdqq573j3yamnw7gkppbc6298";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/90fc6a19838f8e5ffe3b96747784d2f5628f7434/recipes/color-theme";
+ sha256 = "0sgjyiqi65ylvd926ywfjzh752bpch3szvx4z3la1r9gpkrnwspd";
name = "recipe";
};
packageRequires = [];
@@ -11766,26 +12379,27 @@
license = lib.licenses.free;
};
}) {};
- color-theme-sanityinc-solarized = callPackage ({ fetchFromGitHub
+ color-theme-sanityinc-solarized = callPackage ({ cl-lib ? null
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "color-theme-sanityinc-solarized";
ename = "color-theme-sanityinc-solarized";
- version = "20160429.1903";
+ version = "20190205.1659";
src = fetchFromGitHub {
owner = "purcell";
repo = "color-theme-sanityinc-solarized";
- rev = "6d1cf921881a0db6286ad6904aff2d17b2a335b3";
- sha256 = "0cw1al8dan7vglkm33wkznvmyma903ckd95l1ns6qmf1d55lnpig";
+ rev = "2c36f3ab322fe8a1e63a872c8b1d1a172cf9a8ce";
+ sha256 = "09zdxcjxx4dsg672n2sf3qv233wy9rajgafbp7lr2f2q165sl8hl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/color-theme-sanityinc-solarized";
sha256 = "0xg79hgb893f1nqx6q4q6hp4w6rvgp1aah1v2r3scg2jk057qxkf";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ cl-lib ];
meta = {
homepage = "https://melpa.org/#/color-theme-sanityinc-solarized";
license = lib.licenses.free;
@@ -11798,12 +12412,12 @@
melpaBuild {
pname = "color-theme-sanityinc-tomorrow";
ename = "color-theme-sanityinc-tomorrow";
- version = "20180713.212";
+ version = "20190314.1939";
src = fetchFromGitHub {
owner = "purcell";
repo = "color-theme-sanityinc-tomorrow";
- rev = "0360984a8a170df8a1dc0870cf547c0e3c4b5b71";
- sha256 = "0ff8jmzp02lmqp8pb0pa0wbqq3p59ypd3ljzwk1nbmzjw0xx8z6d";
+ rev = "9b3ff865632226baaefd92852e27ad5e3dcd0c70";
+ sha256 = "0dn9xsz1iwx9s398ynm8mk9xlf5yxvfbyqp9nsgfs4p8dd5cbiwz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/color-theme-sanityinc-tomorrow";
@@ -11919,7 +12533,8 @@
license = lib.licenses.free;
};
}) {};
- com-css-sort = callPackage ({ emacs
+ com-css-sort = callPackage ({ cl-lib ? null
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -11928,24 +12543,50 @@
melpaBuild {
pname = "com-css-sort";
ename = "com-css-sort";
- version = "20180607.1808";
+ version = "20190319.137";
src = fetchFromGitHub {
owner = "jcs090218";
repo = "com-css-sort";
- rev = "1564c035039a053936d186b4db7a71b34db99200";
- sha256 = "15caqg1sdd5kc81ipi9x2crqfhm6sdgwgvvk0gxx8dsr93rg22zy";
+ rev = "fd279a9ed89a8b9eb36e1be7764314b3b1be5e39";
+ sha256 = "0nndx0xib03sqhswwvfw1cfzvh70f3qi8d7y5iqk10bpwkmansz0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5189ae21fc97f6b96024a3279a26e43ddc23ae29/recipes/com-css-sort";
sha256 = "0hga2m735lvyj1wzybgp6wh1yv98xnandvavvg7g7mscvf2sl89f";
name = "recipe";
};
- packageRequires = [ emacs s ];
+ packageRequires = [ cl-lib emacs s ];
meta = {
homepage = "https://melpa.org/#/com-css-sort";
license = lib.licenses.free;
};
}) {};
+ comb = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "comb";
+ ename = "comb";
+ version = "20180831.21";
+ src = fetchFromGitHub {
+ owner = "cyrus-and";
+ repo = "comb";
+ rev = "8a68d313bf429763eb8aa78ece00230a668f2a1f";
+ sha256 = "1hh1lkan1ch5xyzrpfgzibf8dxmvaa1jfwlxyyhpnfs5h69h3245";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/1b236a1f3953475cbd7eb5c4289b092818ae08cf/recipes/comb";
+ sha256 = "0n4pkigr07hwj5nb0ngs6ay80psqv7nppp82rg5w38qf0mjs3pkp";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/comb";
+ license = lib.licenses.free;
+ };
+ }) {};
comint-intercept = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -12059,12 +12700,12 @@
melpaBuild {
pname = "comment-dwim-2";
ename = "comment-dwim-2";
- version = "20170809.1354";
+ version = "20190105.853";
src = fetchFromGitHub {
owner = "remyferre";
repo = "comment-dwim-2";
- rev = "8da8aba4cab4a0a1eef3aea2de219227526876e4";
- sha256 = "1bvgdm52bp39gdcqxb02bnxssmih887jgr82m3c09yfwkpnr2qry";
+ rev = "3dfdd58495c46a37708344a57c5c52beca6b2c1c";
+ sha256 = "08pi3y12i6wx69aj09nk5qd6lplwxq5wz3m7w5701988q39x62xl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4ac6ac97875117013515a36c9a4452fbd6c0d74c/recipes/comment-dwim-2";
@@ -12077,6 +12718,32 @@
license = lib.licenses.free;
};
}) {};
+ comment-or-uncomment-sexp = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "comment-or-uncomment-sexp";
+ ename = "comment-or-uncomment-sexp";
+ version = "20190225.322";
+ src = fetchFromGitHub {
+ owner = "Malabarba";
+ repo = "comment-or-uncomment-sexp";
+ rev = "bec730d3fc1e6c17ff1339eb134af16c034a4d95";
+ sha256 = "1jhyr854qraza75hjza8fjz2s06iydmdsa61vf5bf2kj5g1bfqkj";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d1e87e59e1a7c7c7d6eab7dd6b37114e567e5c13/recipes/comment-or-uncomment-sexp";
+ sha256 = "150gg1i593wgfzy0bg8jwgfc7a6hjnz84m2digjf3fpggvwv0rf8";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/comment-or-uncomment-sexp";
+ license = lib.licenses.free;
+ };
+ }) {};
comment-tags = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -12103,6 +12770,32 @@
license = lib.licenses.free;
};
}) {};
+ commentary-theme = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "commentary-theme";
+ ename = "commentary-theme";
+ version = "20181213.245";
+ src = fetchFromGitHub {
+ owner = "pzel";
+ repo = "commentary-theme";
+ rev = "9a825ae98166c9dbbf106e7be62ee69dd9f0342f";
+ sha256 = "1x30iyvvxggbh7xvp8lwpirvpqijchqf2fdaw4xrlbw5vajlaxcx";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/852b5f83c9870209080d2ed39fede3215ae43e64/recipes/commentary-theme";
+ sha256 = "1s3g40f0r0v8m1qqldvw64vs43i5xza7rwkvhxqcqmj6p1a7mqqw";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/commentary-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
commenter = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -12190,12 +12883,12 @@
melpaBuild {
pname = "company";
ename = "company";
- version = "20180704.701";
+ version = "20190402.1623";
src = fetchFromGitHub {
owner = "company-mode";
repo = "company-mode";
- rev = "1f836b6b16d313bddef2cccebf49f42d36c58e28";
- sha256 = "1r3x8shwhc24c8vkrcach99lfhpy180713f89frzn2cbmwyklyh4";
+ rev = "5bd57455c611ce54c9acedc8c9d83a14ab4f12c5";
+ sha256 = "1ny758skhg7n827583rm2m976sc9mkm2ivdrr2ibhz4ccham2d15";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/96e7b4184497d0d0db532947f2801398b72432e4/recipes/company";
@@ -12220,12 +12913,12 @@
melpaBuild {
pname = "company-anaconda";
ename = "company-anaconda";
- version = "20180610.2321";
+ version = "20181025.605";
src = fetchFromGitHub {
owner = "proofit404";
repo = "company-anaconda";
- rev = "ef6cbe26af1ee526a38139ed21cec8569c1b989d";
- sha256 = "1dk1gzd59abh123xqb7r8h5flf4f29mljh48qzkx0r7ppqdzqgnz";
+ rev = "0ab70de1740e67cee451abcf3685c7525ff9e95a";
+ sha256 = "182cijh6l82jj1r7iwd93h3np9c8fvcibjhv7860rk9ik41n7wil";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0eb23a75c8b57b4af1737c0508f03e66430e6076/recipes/company-anaconda";
@@ -12247,12 +12940,12 @@
melpaBuild {
pname = "company-ansible";
ename = "company-ansible";
- version = "20180701.1113";
+ version = "20190301.1311";
src = fetchFromGitHub {
owner = "krzysztof-magosa";
repo = "company-ansible";
- rev = "c6dc714e3a15f89671ae5e8fe668858b20ef63e8";
- sha256 = "01nly13i2bs77lrvkm26i96vrrigbxpb9cakski9fv3xrvfxq9bv";
+ rev = "c31efced8a9b461de5982ed94c234fda3df96f10";
+ sha256 = "0d2c3ckmwn36fwhvwfvqg86hfd2jwkg2n301chhxzs03v0mc03mx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7b44cd4bd9f9a7c942ca3f3bd88b2ce61ffff130/recipes/company-ansible";
@@ -12315,12 +13008,12 @@
melpaBuild {
pname = "company-auctex";
ename = "company-auctex";
- version = "20180330.1118";
+ version = "20180725.1212";
src = fetchFromGitHub {
owner = "alexeyr";
repo = "company-auctex";
- rev = "f24de90a14c46fc3b924875c658b319c7f209aff";
- sha256 = "0izi2p8whif6nlbippjw0zxkd0zilmgj2n0arx6k0zi7k4vbfsb7";
+ rev = "48c42c58ce2f0e693301b0cb2d085055410c1b25";
+ sha256 = "10qn7frn5wcmrlci3v6iliqzj7r9dls87h9zp3xkgrgn4bqprfp8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/189e1a60894db0787a4468b120fbab84be1b5d59/recipes/company-auctex";
@@ -12399,12 +13092,12 @@
melpaBuild {
pname = "company-box";
ename = "company-box";
- version = "20180607.845";
+ version = "20190311.1045";
src = fetchFromGitHub {
owner = "sebastiencs";
repo = "company-box";
- rev = "6e047e6fd7226a1b8292a74985db82bbccc679c7";
- sha256 = "0m6rzwg08jcr9kibzxf18rsxjb13igscjyf5zkx1cx7y16zv1i6b";
+ rev = "8fc6168f2d3a0275156dd3fdf46ba496adbab226";
+ sha256 = "0mmn7lzl69hmy8rlzhwqb2ffgk29mb2ybb149cdpk7ydv1h63hqn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a54879f4dd4dcb6867680567731547d604ad02bb/recipes/company-box";
@@ -12426,12 +13119,12 @@
melpaBuild {
pname = "company-c-headers";
ename = "company-c-headers";
- version = "20170531.1330";
+ version = "20180814.1030";
src = fetchFromGitHub {
owner = "randomphrase";
repo = "company-c-headers";
- rev = "e959d43bebf0a524f7378669983a39ee1379cc21";
- sha256 = "18fi1jp3scz5rrf877qd1ciwx29bzndb85ifnx4ki0jvznvfas8n";
+ rev = "41331192b3961c8e3a51540678e1d11eaa346f03";
+ sha256 = "1hl14pv8splirzr9riak8m48ngxy1c6wa2q6ds6aq849zx9dafqh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d97b5c53967e0ff767b3654c52622f4b5ddf1985/recipes/company-c-headers";
@@ -12472,33 +13165,6 @@
license = lib.licenses.free;
};
}) {};
- company-childframe = callPackage ({ company-posframe
- , emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "company-childframe";
- ename = "company-childframe";
- version = "20180704.2246";
- src = fetchFromGitHub {
- owner = "tumashu";
- repo = "company-childframe";
- rev = "562eaa1e3a0c39dd36f10cda37a3724384fde1df";
- sha256 = "0g40i3qwh0wnspwd4a5p08ndfjj21zmqv155c7ngp7bxnhvkn6vh";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/4fda072eb1e3f4feb9ad9834104f748f5b749a0d/recipes/company-childframe";
- sha256 = "1l8bd9fnw49apvwjgrlfywascbczavpaxns2ydymmb6ksj00rvzy";
- name = "recipe";
- };
- packageRequires = [ company-posframe emacs ];
- meta = {
- homepage = "https://melpa.org/#/company-childframe";
- license = lib.licenses.free;
- };
- }) {};
company-coq = callPackage ({ cl-lib ? null
, company
, company-math
@@ -12511,12 +13177,12 @@
melpaBuild {
pname = "company-coq";
ename = "company-coq";
- version = "20180307.510";
+ version = "20190222.1104";
src = fetchFromGitHub {
owner = "cpitclaudel";
repo = "company-coq";
- rev = "c2bd34f79472c27ee6f819820558c8b26f774748";
- sha256 = "1dvd7w93gly70x7j7dsn2n90w7n76k2bp96p4zlzxad94kvdj2a8";
+ rev = "93168e134099541a923e70f9d633c78de1aa0c6f";
+ sha256 = "0qa96iq99cwlmylzbrknkg3fkhc1x4ngwlpz9rppgzlghpfb3xs7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7f89e3097c654774981953ef125679fec0b5b7c9/recipes/company-coq";
@@ -12542,12 +13208,12 @@
melpaBuild {
pname = "company-dcd";
ename = "company-dcd";
- version = "20170516.210";
+ version = "20190115.1856";
src = fetchFromGitHub {
owner = "tsukimizake";
repo = "company-dcd";
- rev = "4832188a9e42287539a69c372fe1643166a6a7aa";
- sha256 = "07caaff8chabrgl4hqanq13p5qhzqx5fcg2synl8856d7v1456vc";
+ rev = "11e90949e546fcff1b1cd40887ad7b6701aa1653";
+ sha256 = "1n4f2hqmvwysbb1l6c5ah58b1bq8vxznk3ysszz8rs5gpqsizqd4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ad5be8c53911271fba03a88da7e9d518c6508ffe/recipes/company-dcd";
@@ -12577,12 +13243,12 @@
melpaBuild {
pname = "company-dict";
ename = "company-dict";
- version = "20180216.156";
+ version = "20190301.1605";
src = fetchFromGitHub {
owner = "hlissner";
repo = "emacs-company-dict";
- rev = "7ab6331d8095e9b93c726da754102fd708c0002e";
- sha256 = "18lfqankivzdijsklyi49a1v6nqixbmk4d1m6syqd63qj849aixa";
+ rev = "cd7b8394f6014c57897f65d335d6b2bd65dab1f4";
+ sha256 = "11whnjmy5dyg4wkwabpip8hqsmqys193m7aqbd7jl4hmq24hrwsw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/212c077def5b4933c6001056132181e1a5850a7c/recipes/company-dict";
@@ -12603,12 +13269,12 @@
melpaBuild {
pname = "company-distel";
ename = "company-distel";
- version = "20161002.2339";
+ version = "20180827.644";
src = fetchFromGitHub {
owner = "sebastiw";
repo = "distel-completion";
- rev = "2ba4eea51cecfa75cf62f58180460ee9ff43131f";
- sha256 = "1761lgplngmpn1vd8syc1h4g6q1dhngamz1j3n48z07c1ylzpkdd";
+ rev = "acc4c0a5521904203d797fe96b08e5fae4233c7e";
+ sha256 = "0yvp3dwa9mwfyrqla27ycwyjad4bp1267bxv0chxcr4528hnygl3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/90fff35dd9709b06802edef89d1fe6a96b7115a6/recipes/company-distel";
@@ -12660,12 +13326,12 @@
melpaBuild {
pname = "company-emacs-eclim";
ename = "company-emacs-eclim";
- version = "20170104.743";
+ version = "20180911.421";
src = fetchFromGitHub {
owner = "emacs-eclim";
repo = "emacs-eclim";
- rev = "94508ebd071ff1052d68a20f7f1bf1038439fe43";
- sha256 = "0l72zw93wv8ncn98d6ybnykhi3a60bc0kyx6z699wfhnnhhxhl0p";
+ rev = "edff7e0e30c87036710d88fb0b7a4644750858e8";
+ sha256 = "0ywifqdhv7cibgl42m7i15widna9i1dk5kl5rglyql7hy05nk9gj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e9d3075587fbd9ca188535fd945a7dc451c6d7e/recipes/company-emacs-eclim";
@@ -12687,12 +13353,12 @@
melpaBuild {
pname = "company-emoji";
ename = "company-emoji";
- version = "20161230.1937";
+ version = "20180925.1308";
src = fetchFromGitHub {
owner = "dunn";
repo = "company-emoji";
- rev = "8dc88ffe0773ef44321f245d39430c14a1bc2b82";
- sha256 = "1y8l9wnc13g79znyw2qsbm33da2bhkj270ppikkg9h4x2qpmxilq";
+ rev = "f0d91d5be0077b20b418a3ba37d36f431fae322f";
+ sha256 = "0aqqi1ksyglx7w347a99flpfa9pm1jakdvsgk4jr2ahv6j13nawg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5733dccdffe97911a30352fbcda2900c33d79810/recipes/company-emoji";
@@ -12828,14 +13494,14 @@
ename = "company-ghci";
version = "20160310.1800";
src = fetchFromGitHub {
- owner = "juiko";
+ owner = "orimh";
repo = "company-ghci";
rev = "c2d74a41166e76de2e78c87f582ba3a1179b2aa6";
sha256 = "02gq083lpbszy8pf7s5j61bjlm0hacv4md4g17n0q6448rix9yny";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/company-ghci";
- sha256 = "0q71qil4sndg72s2g5yg17w3n102wlba37y9jbx0l7hisa5l11gi";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/company-ghci";
+ sha256 = "11sygcn8jb4rcc1hfiadhsyanbhsmnalpz2qvh5iaba0l165bsgg";
name = "recipe";
};
packageRequires = [ company haskell-mode ];
@@ -12856,14 +13522,14 @@
ename = "company-glsl";
version = "20171015.1049";
src = fetchFromGitHub {
- owner = "GuidoSchmidt";
+ owner = "guidoschmidt";
repo = "company-glsl";
rev = "a262c12c3bcd0807718c4edcaf2b054e30ef0e26";
sha256 = "0338bym8ifvkgpbc4vyzf3nmlp6rc8lihyxcbym5m08612ln78mk";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/abab3b5a9762639812e2aabf9d288ed367dcdc22/recipes/company-glsl";
- sha256 = "0lzy3xln5780yjwhhcz6vnc2j0k0rc7jfvqc8bv0xfabikgadmkn";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/company-glsl";
+ sha256 = "1wzfdp6xz4nydfdcba8vs1za60lbfa0v4b8007dzn2fyg26rl326";
name = "recipe";
};
packageRequires = [ company emacs glsl-mode ];
@@ -12881,16 +13547,16 @@
melpaBuild {
pname = "company-go";
ename = "company-go";
- version = "20170825.943";
+ version = "20190202.1619";
src = fetchFromGitHub {
- owner = "nsf";
+ owner = "mdempsky";
repo = "gocode";
- rev = "84b76ec55b44739143088371a34ef30a4719dfe4";
- sha256 = "0ig9jsx9gv3cya11r0w07xpby9rzlh3iz02mir0z7ffnf8qawmrc";
+ rev = "7fb65232883f19a8305706b4b4ff32916ffbcaf5";
+ sha256 = "09yqziccv9mg5jlmhw8gslpcwwiiah0hs05nq0qnsbdnvc8bs4lr";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/04867a574773e8794335a2664d4f5e8b243f3ec9/recipes/company-go";
- sha256 = "1ncy5wlg3ywr17zrxb1d1bap4gdvwr35w9a8b0crz5h3l3y4cp29";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ef45683cbfe82bf8a9d6f3f1c59e3cf340accbe3/recipes/company-go";
+ sha256 = "1zhdckq1c9jzi5cf90w2m77fq6l67rjri4lnf8maq82gxqzk6wa5";
name = "recipe";
};
packageRequires = [ company go-mode ];
@@ -12938,12 +13604,12 @@
melpaBuild {
pname = "company-irony";
ename = "company-irony";
- version = "20170905.1346";
+ version = "20190124.1546";
src = fetchFromGitHub {
owner = "Sarcasm";
repo = "company-irony";
- rev = "52aca45bcd0f2cb0648fcafa2bbb4f8ad4b2fee7";
- sha256 = "1qgyam2vyjw90kpxns5cd6bq3qiqjhzpwrlvmi18vyb69qcgqd8a";
+ rev = "b44711dfce445610c1ffaec4951c6ff3882b216a";
+ sha256 = "0s8v6kfgngpz6ic0g0l6xi6j9692xpmcamidmbk3l2blb172mggr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d2b6a8d57b192325dcd30fddc9ff8dd1516ad680/recipes/company-irony";
@@ -13057,12 +13723,12 @@
melpaBuild {
pname = "company-lsp";
ename = "company-lsp";
- version = "20180617.1033";
+ version = "20190325.2253";
src = fetchFromGitHub {
owner = "tigersoldier";
repo = "company-lsp";
- rev = "1cb1990dcd1feabf87a726a0b2a15c6f79eb5525";
- sha256 = "09mg2yvvl5mmwbav1d5k5flk2jcz6a684r6bv8vspfs32wpz0kwg";
+ rev = "4218f180688eb3ecba454d00b0e68931a0aef5c9";
+ sha256 = "0pq4zxviy1cxp28dfnnrxxsi57g0d91chg1pshdhgcpcd7rb53rh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5125f53307c1af3d9ccf2bae3c25e7d23dfe1932/recipes/company-lsp";
@@ -13250,12 +13916,12 @@
melpaBuild {
pname = "company-php";
ename = "company-php";
- version = "20180510.1500";
+ version = "20190406.716";
src = fetchFromGitHub {
owner = "xcwen";
repo = "ac-php";
- rev = "e452a20a9f94113260b9cba9af7fb44cc8c647ef";
- sha256 = "08gvn4gq2j349rz24ask6nzqnvw15p9c8r2lby4n6n0zc6iaxzm5";
+ rev = "bd5aa196a4ece8fd5f606fdbf0b27a61d5dbd4dd";
+ sha256 = "1apbsa63rvnf0jczrpvn9jxvgam8sn2lhzlxapn9b6pwgivlps4x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/company-php";
@@ -13268,6 +13934,34 @@
license = lib.licenses.free;
};
}) {};
+ company-phpactor = callPackage ({ company
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , phpactor }:
+ melpaBuild {
+ pname = "company-phpactor";
+ ename = "company-phpactor";
+ version = "20190402.1916";
+ src = fetchFromGitHub {
+ owner = "emacs-php";
+ repo = "phpactor.el";
+ rev = "5dc331636786bdcee9ce2868d4d313c40aca1303";
+ sha256 = "0qwklrsd8hxjvcddjj4ks3p24nyc3rcsxs9hyn3jphxww2igjbiv";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/dc6edd22befea0aee9b11bc8df7d42c400e12f43/recipes/company-phpactor";
+ sha256 = "1a6szs85hmxm2xpkmc3dyx2daap7bjvpnrl4gcmbq26zbz2f0z0a";
+ name = "recipe";
+ };
+ packageRequires = [ company emacs phpactor ];
+ meta = {
+ homepage = "https://melpa.org/#/company-phpactor";
+ license = lib.licenses.free;
+ };
+ }) {};
company-plsense = callPackage ({ cl-lib ? null
, company
, dash
@@ -13335,12 +14029,12 @@
melpaBuild {
pname = "company-posframe";
ename = "company-posframe";
- version = "20180610.1010";
+ version = "20190313.528";
src = fetchFromGitHub {
owner = "tumashu";
repo = "company-posframe";
- rev = "47861f501891d3c67958353c25f4dce13b386c3d";
- sha256 = "03fs5w72wfnk0mr31q5kczlpk0rbim850pj6wzr0f6zn8j0p2lci";
+ rev = "74091d132dea4b6ccd98c1ce7cec1b76b0ab8ad3";
+ sha256 = "1jzaj3fjgplmzsxvmqh8z93filkk171ki8sk7iz9g44j0w7vmm38";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/68c1203ae710e5f7af3f0e5e2877aba6deaf1ac8/recipes/company-posframe";
@@ -13363,12 +14057,12 @@
melpaBuild {
pname = "company-prescient";
ename = "company-prescient";
- version = "20180626.1050";
+ version = "20190212.2235";
src = fetchFromGitHub {
owner = "raxod502";
repo = "prescient.el";
- rev = "515959a2523b43608c9d06dcf8adde8911ce42b9";
- sha256 = "1k8xk154sql3b2b7hpyxslcgl88aaxq5ak2sr760jsq2qk7878bw";
+ rev = "562d25a1c3c5b2e269d82f374f450e6aa90a970e";
+ sha256 = "1ncplx5p3cffyzg9ygzqqxj0vpvwrz9rp2n4z6c375a78fyydrk0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b92c34e493bbefab1d7747b0855d1ab2f984cb7c/recipes/company-prescient";
@@ -13475,12 +14169,12 @@
melpaBuild {
pname = "company-reftex";
ename = "company-reftex";
- version = "20180713.141";
+ version = "20181222.106";
src = fetchFromGitHub {
owner = "TheBB";
repo = "company-reftex";
- rev = "d96ce340851499452c8d4d64bee80a3d7f9e9275";
- sha256 = "1bh9h6frp6yibw1qyca1f2s375s5pn27ry2n4j036c5r4kx4wpx6";
+ rev = "33935e96540201adab43f3a765d62289eba9e286";
+ sha256 = "1sp4109fbj6cxq6v9lmkpkrlr6is340ibaqpslkkjyacjv6sv4cm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/84c938612d46d45b5bb05ee35178eaa2284023e0/recipes/company-reftex";
@@ -13539,12 +14233,12 @@
melpaBuild {
pname = "company-rtags";
ename = "company-rtags";
- version = "20170924.2244";
+ version = "20180729.2038";
src = fetchFromGitHub {
owner = "Andersbakken";
repo = "rtags";
- rev = "e4060b551575be378344c0cc1aedf11446b4f264";
- sha256 = "01xc5r2am0xck7q6jal3zyrqbzpx68fzqi9af7zb1klyw2s5v807";
+ rev = "7c470ba8e15740f37c3a7a9c56331c1cc4c0b1bb";
+ sha256 = "05czbkgq48jv0f9vainflikil51xiwd0h24jmmx5886wi3v1wb4c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/company-rtags";
@@ -13596,16 +14290,16 @@
melpaBuild {
pname = "company-solidity";
ename = "company-solidity";
- version = "20180407.1344";
+ version = "20181117.718";
src = fetchFromGitHub {
- owner = "ssmolkin1";
- repo = "company-solidity";
- rev = "8ea7b96c7a17f4a11ca47021067350bc3c6606c5";
- sha256 = "1gz43k7jckk520nvx124i4ap8bi61ah70wj3d40cbq77a3z8lmkw";
+ owner = "ethereum";
+ repo = "emacs-solidity";
+ rev = "d6c48a1cb64d3c8a825dc0d06c839f2cacd4d289";
+ sha256 = "14v71xf3z60s1fhpsz8b3l1v4na2ds0ddcp41y412fnrg4scbrhr";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ef246601ff6d92d6dfcd809f637e50d9838da0b8/recipes/company-solidity";
- sha256 = "076z5jqh486k2lkh9rgbhs71bws4fba68pjybr9yyf0sdc5m7kc6";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e561d869f4e32bad5d1a8678f67e591ff586d6de/recipes/company-solidity";
+ sha256 = "1rkja48j2m0g0azc34i715ckkqwjkb44y3b4a9vlxs8cjqza4w7q";
name = "recipe";
};
packageRequires = [ cl-lib company solidity-mode ];
@@ -13698,6 +14392,36 @@
license = lib.licenses.free;
};
}) {};
+ company-tabnine = callPackage ({ cl-lib ? null
+ , company
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s
+ , unicode-escape }:
+ melpaBuild {
+ pname = "company-tabnine";
+ ename = "company-tabnine";
+ version = "20181207.1531";
+ src = fetchFromGitHub {
+ owner = "TommyX12";
+ repo = "company-tabnine";
+ rev = "2d63df791027ec2bcc8956be6b7078d17f95217c";
+ sha256 = "06p7z0nnal26xb3kkh3ik0q42wkn146mr15bz3c1amfpkx60y1qi";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/94476897a71a271b985967334632836252eb131b/recipes/company-tabnine";
+ sha256 = "1x37xacrscmh9hq9mljbgdcl3pwfn2kmn567qv0jqys8ihbzi3v7";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib company emacs s unicode-escape ];
+ meta = {
+ homepage = "https://melpa.org/#/company-tabnine";
+ license = lib.licenses.free;
+ };
+ }) {};
company-tern = callPackage ({ cl-lib ? null
, company
, dash
@@ -13911,12 +14635,12 @@
melpaBuild {
pname = "composer";
ename = "composer";
- version = "20180415.743";
+ version = "20180923.440";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "composer.el";
- rev = "1d43edd8079e84df5e1b46c65e6783cb3ff9debd";
- sha256 = "0k6345mc2ppckbbmji4wkynlfgy00kr945ah8j2b62hqgm73h575";
+ rev = "6c1578b2352c81cc9a22616a70db2a14b7d2b67f";
+ sha256 = "0fijw3kcl4vyc5x7a1syqslsj13mwkq1k3bs4p60v2jg1fxqarrb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eb13cb0dba1696cc51132cd1ff723fa17f892a7c/recipes/composer";
@@ -13968,12 +14692,12 @@
melpaBuild {
pname = "conda";
ename = "conda";
- version = "20171122.716";
+ version = "20190129.1002";
src = fetchFromGitHub {
owner = "necaris";
repo = "conda.el";
- rev = "0bba56d80bb959a20838a024b174d1cf1e2cfd07";
- sha256 = "0gr3z9s4qzvkmh7wziw5x77w9vch1riqjv5g1kl995yv7v5lxmnp";
+ rev = "bc2f133d15e037e9dd24d61af734784b4b0d916d";
+ sha256 = "01iikrgljci3hv0v12dn07aqfq2yqky77h8kv48yv787gmlcx181";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fcf762e34837975f5440a1d81a7f09699778123e/recipes/conda";
@@ -13995,14 +14719,14 @@
ename = "config-general-mode";
version = "20171024.1140";
src = fetchFromGitHub {
- owner = "tlinden";
+ owner = "TLINDEN";
repo = "config-general-mode";
rev = "b4a8e6ba0bb027a77e4a0f701409f3e57bb2e4c0";
sha256 = "115sk0h6i1bfnxw1v11719926cvnq7gyisjcysvkam40hp3d5fx5";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/6c06831528e4bbc44aae1cc5cd6bec60150ae087/recipes/config-general-mode";
- sha256 = "1408xyzmb5aj1yrlgkymwy5x6rb1a9ynkx2m6hgj38qj6dz44cyy";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/config-general-mode";
+ sha256 = "1pqivnyb1yljzs3fd554s0971wr9y6g1dx3lgym9gi5jhpyza38z";
name = "recipe";
};
packageRequires = [];
@@ -14092,25 +14816,27 @@
, emacs
, fetchFromGitHub
, fetchurl
+ , flycheck
+ , hydra
, lib
, melpaBuild
- , parsec }:
+ , s }:
melpaBuild {
pname = "conllu-mode";
ename = "conllu-mode";
- version = "20180722.454";
+ version = "20190214.1317";
src = fetchFromGitHub {
owner = "odanoburu";
repo = "conllu-mode";
- rev = "fa2769b010c6e600711a04f083d1573505c61c2e";
- sha256 = "16hasrrsz566bpr4xcjmby3hxf4ad2msb9bx8cs6fndvxgy1zvyk";
+ rev = "162846e03f8ccb9dcec393dbf98e9391cca1c070";
+ sha256 = "122qz6igksbxvnbkyfnbx4i4qn3sr2kspqm7z9kl8mwl5x1bxa2d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/444f943baddfeafe29708d6d68aeeeedbb7aa7bd/recipes/conllu-mode";
sha256 = "1wffvvs8d0xcnz6mcm9rbr8imyj4npyc148yh0gzfzlgjm0fiz1v";
name = "recipe";
};
- packageRequires = [ cl-lib emacs parsec ];
+ packageRequires = [ cl-lib emacs flycheck hydra s ];
meta = {
homepage = "https://melpa.org/#/conllu-mode";
license = lib.licenses.free;
@@ -14141,6 +14867,32 @@
license = lib.licenses.free;
};
}) {};
+ constant-theme = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "constant-theme";
+ ename = "constant-theme";
+ version = "20180921.312";
+ src = fetchFromGitHub {
+ owner = "Jannis";
+ repo = "emacs-constant-theme";
+ rev = "0feb9f99d708633d62fa548c953ebbe68fd70de0";
+ sha256 = "14w92qh791zz22c1r47ncglh92ifgqxmz0pk5w61ka7zi7xqylg1";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/constant-theme";
+ sha256 = "13m4r37gscnqg3qmb0rs2r8sslp0irm7n4p6p496mmvljvjmpv6b";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/constant-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
contextual = callPackage ({ cl-lib ? null
, dash
, emacs
@@ -14151,16 +14903,16 @@
melpaBuild {
pname = "contextual";
ename = "contextual";
- version = "20160131.1037";
+ version = "20180726.100";
src = fetchFromGitHub {
- owner = "lshift-de";
+ owner = "e-user";
repo = "contextual";
- rev = "8134a2d8034c624f4fdbbb0b3893de12f4257909";
- sha256 = "0s4b7dkndhnh8q3plvg2whjx8zd7ffz4hnbn3xh86xd3k7sch7av";
+ rev = "7ad2bb36426fd182d4d5ee7fd9be1cc0db8c7a84";
+ sha256 = "0zk85y01w23zb9x60bc5w4q3p40cnyk9bsc6pd5h85rlaazbrpby";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/44e5b799e411b8e2d89c8e9aeb4720126ac908b7/recipes/contextual";
- sha256 = "0vribs0fa1xf5kwkmvzjwhiawni0p3v56c5l4dkz8d7wn2g6wfdx";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/de20db067590624bbd2ca5a7a537b7f11ada84f2/recipes/contextual";
+ sha256 = "1xwjjchmn3xqxbgvqishh8i75scc4kjgdzlp5j64d443pfgyr56a";
name = "recipe";
};
packageRequires = [ cl-lib dash emacs ];
@@ -14254,12 +15006,12 @@
melpaBuild {
pname = "copy-as-format";
ename = "copy-as-format";
- version = "20171215.1616";
+ version = "20190119.811";
src = fetchFromGitHub {
owner = "sshaw";
repo = "copy-as-format";
- rev = "971957166fe64d914ec4be209b4f80efeeabbb19";
- sha256 = "0ynzy2sb75w24d2kwjpkb3vl98yyz0sbcj6nd31y2r2n2kkdna24";
+ rev = "d2376c64334fe3de65d89d6d138a2187f9bf802f";
+ sha256 = "0i158bkra7zgq75j08knq2camvlhbs2v8zrsxiyp0mc4q949xysd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/42fe8a2113d1c15701abe7a7e0a68e939c3d789b/recipes/copy-as-format";
@@ -14369,14 +15121,14 @@
ename = "coq-commenter";
version = "20170822.1609";
src = fetchFromGitHub {
- owner = "ailrun";
+ owner = "Ailrun";
repo = "coq-commenter";
rev = "7fe9a2cc0ebdb0b1e54a24eb7971d757fb588ac3";
sha256 = "1rq0j6ds9snv21k2lzyja96qxxz8nrai5aj1k1si9zshld28mapx";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/c97d3f653057eab35c612109792884334be556fe/recipes/coq-commenter";
- sha256 = "19726z8yvgwjikbl95smdl60k58a5yf7cjbinnb7251d8mhd8562";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/coq-commenter";
+ sha256 = "1d6a40f8b4r8x08sy7qs335c9z744xmll326qzsjmxiqdkjv7h2k";
name = "recipe";
};
packageRequires = [ cl-lib dash s ];
@@ -14445,12 +15197,12 @@
melpaBuild {
pname = "counsel";
ename = "counsel";
- version = "20180719.1303";
+ version = "20190407.415";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "swiper";
- rev = "89bae2f783918609c074f7c594dcc19ce19b8d45";
- sha256 = "0a2r5x7la9hx42wiyf5fjalb29r1ykr2r3q2lhgf6lc3h2qnrhmx";
+ rev = "998890460ebb2860638f2e4d761977080cdcad34";
+ sha256 = "185rp0asa0plnwkafl7rxb2z78b6lmyp8jn943b5j8h3wb3wcaa5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/06c50f32b8d603db0d70e77907e36862cd66b811/recipes/counsel";
@@ -14472,12 +15224,12 @@
melpaBuild {
pname = "counsel-bbdb";
ename = "counsel-bbdb";
- version = "20171129.1737";
+ version = "20181128.520";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "counsel-bbdb";
- rev = "c86f4b9ef99c9db0b2c4196a300d61300dc2d0c1";
- sha256 = "1dchyg8cs7n0zbj6mr2z840yi06b2wja65k04idlcs6ngy1vc3sr";
+ rev = "df2890deb73b09f8055243bd91942ea887d9b7a1";
+ sha256 = "0bki658mvlchqf3prkzxz4217a95cxm58c1qmf84yp2n8h6gd0d8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0ed9bcdb1f25a6dd743c1dac2bb6cda73a5a5dc2/recipes/counsel-bbdb";
@@ -14501,12 +15253,12 @@
melpaBuild {
pname = "counsel-codesearch";
ename = "counsel-codesearch";
- version = "20180713.304";
+ version = "20180925.103";
src = fetchFromGitHub {
owner = "abingham";
repo = "emacs-counsel-codesearch";
- rev = "cb9f3df541e84b4b13905c3ad3658cad2f34b0cf";
- sha256 = "1invag9nnbsxajli6xph9fgdihs9j3hwkw2s8w297808if5gxnr3";
+ rev = "b7989fad3e06f301c31d5e896c42b6cc549a0e0c";
+ sha256 = "1qv82nvj0kddmajm6pniadnz96mqz8rhl0g2w2z5834r48higxqv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d3404c3cdfa6654ad80378ab258f0df68a6beeb9/recipes/counsel-codesearch";
@@ -14581,24 +15333,25 @@
, emacs
, fetchFromGitHub
, fetchurl
+ , ivy
, lib
, melpaBuild }:
melpaBuild {
pname = "counsel-etags";
ename = "counsel-etags";
- version = "20180605.613";
+ version = "20190323.1754";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "counsel-etags";
- rev = "9437ce4e4adb7140df6af0a4528069b9e54de44b";
- sha256 = "14q7w6pz3pslwr4s1f2b8wiq6k1jvp09mwml9x2j5ljw7j3145pi";
+ rev = "b8ff1b12ee6b9456969a5bd974a8ed470f1f1eb9";
+ sha256 = "178idbpphsa486sas1242x954zd0vf8c1hlfhmahgsij5jjd1vyv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/87528349a3ab305bfe98f30c5404913272817a38/recipes/counsel-etags";
sha256 = "1h3dlczm1m21d4h41vz9ngg5fi02g6f95qalfxdnsvz0d4w4yxk0";
name = "recipe";
};
- packageRequires = [ counsel emacs ];
+ packageRequires = [ counsel emacs ivy ];
meta = {
homepage = "https://melpa.org/#/counsel-etags";
license = lib.licenses.free;
@@ -14642,12 +15395,12 @@
melpaBuild {
pname = "counsel-notmuch";
ename = "counsel-notmuch";
- version = "20180713.1740";
+ version = "20181203.135";
src = fetchFromGitHub {
owner = "fuxialexander";
repo = "counsel-notmuch";
- rev = "f4c864eca400abe0bb7420bcee80f2f8259ca0ff";
- sha256 = "0f5w4m5qripca5agbgil0qvd4h9ypi63kpz90n744v60r3lddcjl";
+ rev = "a4a1562935e4180c42524c51609d1283e9be0688";
+ sha256 = "01k1321d961kc2i660a5595bqk0d85f16snsxngsn5si6y83kqr7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/54fe0be4e8e8b90cd2dc3cc8b9c573694c8f773b/recipes/counsel-notmuch";
@@ -14669,12 +15422,12 @@
melpaBuild {
pname = "counsel-org-capture-string";
ename = "counsel-org-capture-string";
- version = "20180707.217";
+ version = "20180816.24";
src = fetchFromGitHub {
owner = "akirak";
repo = "counsel-org-capture-string";
- rev = "14144773a23fd42ddee3522ffae44260c55ab9d5";
- sha256 = "0zknmcxhf97kflxm5bv9gjl9n390jjrbdz13600afs4kvzdad4z1";
+ rev = "0fd5d72397a9268a89dd26de2a6c355f127453ac";
+ sha256 = "19ijjiidxxysvkz9vnsgiymxd7w7zcs5bazn7dmahp5yaprlsjld";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/380d58ac9487f2fb1d4a791008fa60fb7165e7e3/recipes/counsel-org-capture-string";
@@ -14697,12 +15450,12 @@
melpaBuild {
pname = "counsel-org-clock";
ename = "counsel-org-clock";
- version = "20180623.617";
+ version = "20190406.2048";
src = fetchFromGitHub {
owner = "akirak";
repo = "counsel-org-clock";
- rev = "7b172847f19571fa8f4092899bff75fab0821b07";
- sha256 = "08ci1pb0w1aalhhsg8v0b37xapy72svfkzclk54f3813vxd2naxs";
+ rev = "ddf6b89652e4dbc0be5e8719213e7673c83959f1";
+ sha256 = "1fd8ll7jcfmy2dhhhsqh1l6wqfklma54bqpb4jnxmdn2w9p3ndmn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d21e10ba82b4ae0f8101031be16bc5f7e80ba5d5/recipes/counsel-org-clock";
@@ -14751,12 +15504,12 @@
melpaBuild {
pname = "counsel-projectile";
ename = "counsel-projectile";
- version = "20180718.842";
+ version = "20190325.156";
src = fetchFromGitHub {
owner = "ericdanan";
repo = "counsel-projectile";
- rev = "6ffcf45767543c72e817d9de8bca9db9156a48be";
- sha256 = "1zdnw9n32fgrpwqkd2v153gdhyq183avr78hj57cq48hp6vfwfa1";
+ rev = "fb19569c9799e3edac7504d21a5ecf49231e9500";
+ sha256 = "0n9rjqhplapxiwja5dap03frdvbd6y4i5q4ballmyrgg5pnc8l5k";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/389f16f886a385b02f466540f042a16eea8ba792/recipes/counsel-projectile";
@@ -14805,12 +15558,12 @@
melpaBuild {
pname = "counsel-spotify";
ename = "counsel-spotify";
- version = "20180319.2022";
+ version = "20190406.1325";
src = fetchFromGitHub {
owner = "Lautaro-Garcia";
repo = "counsel-spotify";
- rev = "9033e207dccdfea7fe590d2e102d50fcd2bd22e3";
- sha256 = "00mjcp3x558gh7f8yrj8y4ivq3pvml7y46rms8xah5zxavg6q52b";
+ rev = "f484e6efd3994704cfd16c87c298fbfa12d442cc";
+ sha256 = "0b5hykw3n96f0m50176hk639sbzdykhnp52xlp8g6l7p807x27w9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b386462518a5ebb6454f4d01582df98395239bcc/recipes/counsel-spotify";
@@ -14832,12 +15585,12 @@
melpaBuild {
pname = "counsel-tramp";
ename = "counsel-tramp";
- version = "20180311.2327";
+ version = "20190124.2351";
src = fetchFromGitHub {
owner = "masasam";
repo = "emacs-counsel-tramp";
- rev = "3f5ae75a6bde00bffeb2877b4ed4bd45610c0dfa";
- sha256 = "06dhhjrgpikzpdl1hck0ckjbx8yzx8jbymb3ajfxglgvrvid4l1k";
+ rev = "ac7728bac51afdcb63cd85ad22a8be5737d9d66f";
+ sha256 = "0nz0733x2b9b5nkwivvhv5c8747dng451na1sdfbkx5x9fjs5gc7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e1822b735b6bd533f658bd64ddccda29e19e9a5e/recipes/counsel-tramp";
@@ -15018,12 +15771,12 @@
melpaBuild {
pname = "cpputils-cmake";
ename = "cpputils-cmake";
- version = "20170819.259";
+ version = "20181005.2028";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "cpputils-cmake";
- rev = "4fa37dd075c716f98b67b96f3b6e022730df1c1b";
- sha256 = "194vayk2hvqm2nv1rr3myiadrfvk8fpch1qlbic9bzbgfrl74i41";
+ rev = "64b2b05eff5398b4cd522e66efaf14553ab18ff4";
+ sha256 = "0kmqk0ba9cacss3m34a8sdnmdir4ci7mv3j176ylm5af0x9yqc45";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9b84a159e97f7161d0705da5dd5e8c34ae5cb848/recipes/cpputils-cmake";
@@ -15044,12 +15797,12 @@
melpaBuild {
pname = "cql-mode";
ename = "cql-mode";
- version = "20160720.2039";
+ version = "20190314.1925";
src = fetchFromGitHub {
owner = "Yuki-Inoue";
repo = "cql-mode";
- rev = "2529ade55c125a89d8215f096a74733a90611c5d";
- sha256 = "1ikmz037bv7h0bjrr8qia5g127a0vd223y04ndbyd950gqc1lx4h";
+ rev = "d400c046850d3cf404778b2c47d6be4ff84ca04b";
+ sha256 = "016fs984fbn9k6q17mpxq8gbpspai71r52da8aq31f3jijxmrh5a";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1084dd0ec0f2e8fe6fa8e97b322833c14e8e59d1/recipes/cql-mode";
@@ -15072,12 +15825,12 @@
melpaBuild {
pname = "cquery";
ename = "cquery";
- version = "20180619.1953";
+ version = "20190117.2142";
src = fetchFromGitHub {
owner = "cquery-project";
repo = "emacs-cquery";
- rev = "fd881d5db6bc555b22993e8d3e517d30a56ea763";
- sha256 = "0n8962x68jcdff1wmq30fs5rbfgx9br2d10ylv3hfrg40abd0sad";
+ rev = "555e50984ebda177421fdcdc8c76cb29235d9694";
+ sha256 = "1d1m1lgc93fkg7dxb8d6ch68vh6w1zp3yy31bv78vaz8siqrmk16";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3cd3bffff0d2564c39735f844f9a02a660272caa/recipes/cquery";
@@ -15231,12 +15984,12 @@
melpaBuild {
pname = "cricbuzz";
ename = "cricbuzz";
- version = "20171227.1607";
+ version = "20180804.1554";
src = fetchFromGitHub {
owner = "lepisma";
repo = "cricbuzz.el";
- rev = "557f75f10525e7a4d50e83010b9ed07fbf9df889";
- sha256 = "18lc56l5vcbrw2agpgjcap5q0l1mi64khgkk00x7r9wm1zilf9wp";
+ rev = "0b95d45991bbcd2fa58d96ce921f6a57ba42c153";
+ sha256 = "1s77a2lfy7nnaxm3ai9dg8lbdxp0892z4gr0yxqrgzawc4qcbb3x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cricbuzz";
@@ -15275,6 +16028,32 @@
license = lib.licenses.free;
};
}) {};
+ crontab-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "crontab-mode";
+ ename = "crontab-mode";
+ version = "20190304.623";
+ src = fetchFromGitHub {
+ owner = "emacs-pe";
+ repo = "crontab-mode";
+ rev = "090ed61e919df6391df45a7645a0d8d5b0dae1cb";
+ sha256 = "1yz9vvh2x6s2y02n1z8aqgb40bxgs2s2mxmy1vmp2piffq81d09y";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0831d0f869cad4681b22296225307aa5bf185f3f/recipes/crontab-mode";
+ sha256 = "1lwkj5c8435xgqi9d4zgnp9dzi06byibf69fv9p3x79kv565g3gd";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/crontab-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
crux = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -15283,12 +16062,12 @@
melpaBuild {
pname = "crux";
ename = "crux";
- version = "20180611.2355";
+ version = "20181108.27";
src = fetchFromGitHub {
owner = "bbatsov";
repo = "crux";
- rev = "c79985f69b7cd96edb505199bd751f71ce6d4e58";
- sha256 = "0k58k3vzcxcgjaz230m18piq3gfw8w0h1g3n4jpp447indzwn4rr";
+ rev = "308f17d914e2cd79cbc809de66d02b03ceb82859";
+ sha256 = "0rf84finwlvmy0xpgyljjvnrijlmkzjyw9rh97svgxp9c1rzfk0x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/575e3442a925500a5806e0b900208c1e6bfd11ae/recipes/crux";
@@ -15308,12 +16087,12 @@
melpaBuild {
pname = "cryptol-mode";
ename = "cryptol-mode";
- version = "20180321.1108";
+ version = "20190130.1344";
src = fetchFromGitHub {
owner = "thoughtpolice";
repo = "cryptol-mode";
- rev = "91f8ad617e5db2fad57a7be1da211f22f3b51550";
- sha256 = "12jd2wc5icnkbvxjam7kgr8bdjavxjsy79vwi0hi3gzwiirx4ifg";
+ rev = "1d6bc05380481056b0615670a890a8234d997da9";
+ sha256 = "04cicqwmnwq80jydvgax27nyw8vxfcz5aiqlnslj36mh9qbjr01g";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/de12333bb429d84b2c214ac7ebb0219f67838f4f/recipes/cryptol-mode";
@@ -15360,12 +16139,12 @@
melpaBuild {
pname = "crystal-mode";
ename = "crystal-mode";
- version = "20180606.755";
+ version = "20180826.2029";
src = fetchFromGitHub {
owner = "crystal-lang-tools";
repo = "emacs-crystal-mode";
- rev = "7af6afdf8b90b13b419b58bbe9e096eb20527e5c";
- sha256 = "1v6h8i9avgqirg7mcac33vycjyslmvg760dk3mf1sv76xx78v5vz";
+ rev = "8649736fea8960a5e54c3ec934484f231a518ea5";
+ sha256 = "0ggg1zi3x7jphqa83zkcd19x2j30bqkfysn8cl8xahrikwhxmh49";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d4b9b47d7deecf0cf24a42b26d50021cb1219a69/recipes/crystal-mode";
@@ -15378,6 +16157,33 @@
license = lib.licenses.free;
};
}) {};
+ crystal-playground = callPackage ({ crystal-mode
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "crystal-playground";
+ ename = "crystal-playground";
+ version = "20180829.2201";
+ src = fetchFromGitHub {
+ owner = "jasonrobot";
+ repo = "crystal-playground";
+ rev = "532dc7e4239eb4bdd241bc4347d34760344c1ebb";
+ sha256 = "06vrmxikqi36wbnm66r5s5fxhkdlz76fjb3nhlighbqlym4bxpl1";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3e8d3a41e3307f415a144ff55e7a5fa95216cd6c/recipes/crystal-playground";
+ sha256 = "0789x443qrvxgrcha6rag11fwyr0aj1ixw6xc0l4d34fsy76ppwh";
+ name = "recipe";
+ };
+ packageRequires = [ crystal-mode emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/crystal-playground";
+ license = lib.licenses.free;
+ };
+ }) {};
csgo-conf-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -15410,12 +16216,12 @@
melpaBuild {
pname = "csharp-mode";
ename = "csharp-mode";
- version = "20180708.652";
+ version = "20181011.18";
src = fetchFromGitHub {
owner = "josteink";
repo = "csharp-mode";
- rev = "5e47b7764b3f4c97c260a902e8072d444dbd0f1b";
- sha256 = "1dnhpxcinrwc7dmwgzbg4lnly05h38f00zrfsjincvii6d8rjiw0";
+ rev = "239527c1f27cf5246505f1faf23269487fdbfdd2";
+ sha256 = "0ygc8mpsmicsm2j50kg22yllbj5ply56cwx9hvb6cflzmwlmgyvw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/736716bbcfd9c9fb1d10ce290cb4f66fe1c68f44/recipes/csharp-mode";
@@ -15438,12 +16244,12 @@
melpaBuild {
pname = "csound-mode";
ename = "csound-mode";
- version = "20180505.1225";
+ version = "20190321.859";
src = fetchFromGitHub {
owner = "hlolli";
repo = "csound-mode";
- rev = "5137de36e49b41ec428f35d9bfa08b5cc82e066c";
- sha256 = "0v4yv4v6l0m1rkj3cb35f6hqhvbwh48ii6vb9xnc99r984jrs4f4";
+ rev = "f4bc9236bbc5a696f7ff32d9402749536a332546";
+ sha256 = "0ds6cigm3pncsa5blqzfgisjn9v898ayj6nq2va6ssg73k0qfx1r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c940d29de11e43b4abf2901c466c94d426a21818/recipes/csound-mode";
@@ -15841,6 +16647,32 @@
license = lib.licenses.free;
};
}) {};
+ cyberpunk-2019-theme = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "cyberpunk-2019-theme";
+ ename = "cyberpunk-2019-theme";
+ version = "20190228.653";
+ src = fetchFromGitHub {
+ owner = "the-frey";
+ repo = "cyberpunk-2019";
+ rev = "77f41d0c15c59e13f11af5d285707dd21e72e342";
+ sha256 = "12gray55ifv98ysyqsa51xh4w2yis0gki9blpvcbac02sm5xysgm";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/1821a436d3d9f7c46cbd198f93951aa35bbf6ad7/recipes/cyberpunk-2019-theme";
+ sha256 = "09bg3avrsca308y3g86mrzi6klzr4ky8k5y2nbsmwarrarv29qyy";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/cyberpunk-2019-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
cyberpunk-theme = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -15848,12 +16680,12 @@
melpaBuild {
pname = "cyberpunk-theme";
ename = "cyberpunk-theme";
- version = "20180608.2209";
+ version = "20190109.1600";
src = fetchFromGitHub {
owner = "n3mo";
repo = "cyberpunk-theme.el";
- rev = "f8967e46b8bdb3eaf7b72474f2d70997dc1152e9";
- sha256 = "0vrkb07vh5b1azih86s0j917frdp5g6qg1pipddcr6lacgb7n0zl";
+ rev = "eb7b21b5655af9a0fa8c745ee1f16f8e073364e6";
+ sha256 = "1si63j3mm36lfhiw5pnlv24ffg4ghicd1q7gi5jl2mp9105vs627";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4c632d1e501d48dab54432ab111ce589aa229125/recipes/cyberpunk-theme";
@@ -15950,12 +16782,12 @@
melpaBuild {
pname = "cyphejor";
ename = "cyphejor";
- version = "20171231.2218";
+ version = "20181231.2304";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "cyphejor";
- rev = "d2faf26420ac16c4056f6eda067b845d33e102cd";
- sha256 = "0vg0n8xcqiv28i3xmnxzji77dbnyxrld4ncdzpa3hpc1j92s9a09";
+ rev = "7b1937abcded165efeabf37d26a7194a21cee3e6";
+ sha256 = "163mhk7vqga230dz9aqfm01r85x7j3n9bmxiqiazj6p91zq0sxfs";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ad7cacfa39d8f85e26372ef21898663aebb68e43/recipes/cyphejor";
@@ -16000,12 +16832,12 @@
melpaBuild {
pname = "cython-mode";
ename = "cython-mode";
- version = "20180213.854";
+ version = "20190111.1350";
src = fetchFromGitHub {
owner = "cython";
repo = "cython";
- rev = "9f3f99fd6378ffb17976d74356fd3ba7e22f85b3";
- sha256 = "164ksml3i5gmcwripjsn5byfvnnjf86wrkkd9saw481ym6imii3c";
+ rev = "1c6ab8b7fe1f80e1ffc2c105b8202f1eba230f53";
+ sha256 = "1f16ivvpnxmc47v0yblrmva8cpkj4fw3q8ya2hrdmbzbjlzfxlgi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/be9bfabe3f79153cb859efc7c3051db244a63879/recipes/cython-mode";
@@ -16051,12 +16883,12 @@
melpaBuild {
pname = "d-mode";
ename = "d-mode";
- version = "20180502.710";
+ version = "20181204.2207";
src = fetchFromGitHub {
owner = "Emacs-D-Mode-Maintainers";
repo = "Emacs-D-Mode";
- rev = "026fceb78e13d67778d72d90ba83f337d0144707";
- sha256 = "0yxmhdfxp6zplfpq52krx86n5sfa60rc1fjcd09g5f1621m31y70";
+ rev = "b5d936dfd4c1d0b68a0d911aadd4ba25df7af0e4";
+ sha256 = "0915kb9jcaixgindhj85fmykkhvj31ckp1yg6746fznwdgfrlifv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3c13e9ccc358743de660b1f0e89d6bb709c42bff/recipes/d-mode";
@@ -16128,12 +16960,12 @@
melpaBuild {
pname = "daemons";
ename = "daemons";
- version = "20180610.810";
+ version = "20190202.728";
src = fetchFromGitHub {
owner = "cbowdon";
repo = "daemons.el";
- rev = "dcf42cb3178d7245d6d49de346d5e2b44e5b7498";
- sha256 = "00bkzfaw3bqykcks610vk9wlpa2z360xn32bpsrycacwfv29j7g4";
+ rev = "fd7925b0c113e5bad2e4692430ce049405794910";
+ sha256 = "07l8k41ly92m3wkzlzyb9nmq4pd34xkpn7cjrdap7zfppd3iiq2r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1f780485e72ae2885f698fdab0156855f70831f1/recipes/daemons";
@@ -16203,12 +17035,12 @@
melpaBuild {
pname = "danneskjold-theme";
ename = "danneskjold-theme";
- version = "20180708.724";
+ version = "20190222.200";
src = fetchFromGitHub {
owner = "rails-to-cosmos";
repo = "danneskjold-theme";
- rev = "abc8c7fbe7ab071b8260e3355051304bb36adbd7";
- sha256 = "1zd6z66hfdb992r85mvjlaqfavyw5g4g6vak38zj8ycbjdj28p59";
+ rev = "1a341399df66d008965fddb6348ae86d7e96d268";
+ sha256 = "1cbrjqh8p4ia2psw0v0qvvlmx9g567b7xmwqgjm58x8x38003ym0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/557244a3b60c7cd3ca964ff843aa1e9d5a1e32ec/recipes/danneskjold-theme";
@@ -16221,7 +17053,8 @@
license = lib.licenses.free;
};
}) {};
- dante = callPackage ({ dash
+ dante = callPackage ({ company
+ , dash
, emacs
, f
, fetchFromGitHub
@@ -16235,24 +17068,66 @@
melpaBuild {
pname = "dante";
ename = "dante";
- version = "20180515.1312";
+ version = "20190320.154";
src = fetchFromGitHub {
owner = "jyp";
repo = "dante";
- rev = "0fd72ef60fe01aafbd11720cf3df2e7015847ff4";
- sha256 = "1faxalr54vzxiqbf8vr2nmxkpypyv5w67bjnlvqnyy9hzr5i3qwj";
+ rev = "d6be8fa2d49ac73b34578736ca6340573bbcb68a";
+ sha256 = "1lhzdvgy4jkzfx4p3cnprb68wray2d36x0aqcnw5g2dw7w6vc7fz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5afa8226077cbda4b76f52734cf8e0b745ab88e8/recipes/dante";
sha256 = "1j0qwjshh2227k63vd06bvrsccymqssx26yfzams1xf7bp6y0krs";
name = "recipe";
};
- packageRequires = [ dash emacs f flycheck haskell-mode lcr s ];
+ packageRequires = [ company dash emacs f flycheck haskell-mode lcr s ];
meta = {
homepage = "https://melpa.org/#/dante";
license = lib.licenses.free;
};
}) {};
+ dap-mode = callPackage ({ bui
+ , dash
+ , dash-functional
+ , emacs
+ , f
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , lsp-mode
+ , melpaBuild
+ , s
+ , tree-mode }:
+ melpaBuild {
+ pname = "dap-mode";
+ ename = "dap-mode";
+ version = "20190403.1040";
+ src = fetchFromGitHub {
+ owner = "emacs-lsp";
+ repo = "dap-mode";
+ rev = "f8f0f005f536ff22f6ca935dd804fa9ecb134d6a";
+ sha256 = "09ff6835aflmx0s1dj7bgn1m146c9cnd3j7dh54jrx1mcvywqrx4";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/67942b34975015dd6f2b5f6b43829cc13b1832c6/recipes/dap-mode";
+ sha256 = "041mmla70ld5783gn8g360klk3cw39pir5d41544zf3yssk12qpn";
+ name = "recipe";
+ };
+ packageRequires = [
+ bui
+ dash
+ dash-functional
+ emacs
+ f
+ lsp-mode
+ s
+ tree-mode
+ ];
+ meta = {
+ homepage = "https://melpa.org/#/dap-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
darcsum = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -16260,16 +17135,16 @@
melpaBuild {
pname = "darcsum";
ename = "darcsum";
- version = "20140315.2110";
+ version = "20190316.1515";
src = fetchFromGitHub {
- owner = "emacsorphanage";
+ owner = "emacsmirror";
repo = "darcsum";
- rev = "5bb38e444cc12940c6933a43792a89accdc2ad0e";
- sha256 = "11h2i0wn118anb9n3kab2hsv78zpiw4d95jal7c9xzhv6xxrz4g0";
+ rev = "6a8b690539d133c5e3d17cb23fe4365fbb6fb493";
+ sha256 = "1ajdm0p8rdyaqy0wwfslb1mqj9b2dpk8xkljjw6ddacph5hflhcm";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/30de78c9cf83de30093a5647976eeaf552d4b2cb/recipes/darcsum";
- sha256 = "0p3hwmwjjqwgkjws5b7gkad4yxh0gs2hr03ar18y43yahwgihvnv";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/be27e728327016b819535ef8cae10020e5a07c2e/recipes/darcsum";
+ sha256 = "1qr3jh05awxxh2qi1sv542vkryfja44zswa5wxwj7g2dr6ck9jr1";
name = "recipe";
};
packageRequires = [];
@@ -16436,12 +17311,12 @@
melpaBuild {
pname = "darkokai-theme";
ename = "darkokai-theme";
- version = "20180513.1857";
+ version = "20181019.1159";
src = fetchFromGitHub {
owner = "sjrmanning";
repo = "darkokai";
- rev = "bd5efef1edd42664bb731abd398d5d71a5d2d145";
- sha256 = "05k892zkdfzz05bypf4qdjm49n5gmf7swml2w80zc88dall3hmk9";
+ rev = "b887fc6080f8e021058bff7f53fad84c82c81a7a";
+ sha256 = "1rjpzf6n9vclyqfdz1nqaf9ky2jhk9jn1jmx9h2bd4kil9bjbyrm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/81387a5a70f7c42fbae16b52db765136795a37e1/recipes/darkokai-theme";
@@ -16462,12 +17337,12 @@
melpaBuild {
pname = "darktooth-theme";
ename = "darktooth-theme";
- version = "20180721.2039";
+ version = "20190201.1716";
src = fetchFromGitHub {
owner = "emacsfodder";
repo = "emacs-theme-darktooth";
- rev = "6060fe63e407fbd08a3acf8af05bdc6ea0bd422e";
- sha256 = "1y7kjfjxj560chb5rh4rs9x3k2z20vc5vbg974a1aj37ipla4qlb";
+ rev = "507853d70d14201b108432b697fdcd3785fc006e";
+ sha256 = "0ly3v8a80b31ffmzvr3h0x4igr1bgcpi92wbxj86r3z1c05s31rp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b7f62ac1566ced7332e83253f79078dc30cb7889/recipes/darktooth-theme";
@@ -16492,16 +17367,16 @@
melpaBuild {
pname = "dart-mode";
ename = "dart-mode";
- version = "20180721.2225";
+ version = "20190308.1714";
src = fetchFromGitHub {
- owner = "nex3";
+ owner = "bradyt";
repo = "dart-mode";
- rev = "9c9a63ed7bbf2b9d3521ead8c302489789552f9d";
- sha256 = "12izfp7516d201shnj0fgd4g9ca2ji2rigiifz7bp0ysmbbpy8nr";
+ rev = "d5776f1e9bfeb45eb30723eba3030691a8491545";
+ sha256 = "0dlkzfj1bvd62qqfj3wc46gbyg82cw995zsb7jyc8ziz9n1a383z";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dart-mode";
- sha256 = "00zvgxfxgk5jair796l6appyq5hc7hs2s2wglv1j4l7g50b05cla";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/dart-mode";
+ sha256 = "0zpvp86067a6l63wrpqxsm9fhv3n4ggbq8pg21vgiz54hk4x1xpp";
name = "recipe";
};
packageRequires = [ cl-lib dash emacs flycheck s ];
@@ -16517,12 +17392,12 @@
melpaBuild {
pname = "dash";
ename = "dash";
- version = "20180413.30";
+ version = "20190320.706";
src = fetchFromGitHub {
owner = "magnars";
repo = "dash.el";
- rev = "a74f4cfcdc8d0642a9f602ad494f0354f27dacc9";
- sha256 = "1kzijmjxjxgr7p8clphzvmm47vczckbs8mza9an77c25bn627ywl";
+ rev = "677c1561142db89cb151f50ce21f24096ca1a328";
+ sha256 = "0183iaipz13n5ga80qy49q25h7hj8bs7sz68547hn46zlnnwnbih";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/57eed8767c3e98614259c408dc0b5c54d3473883/recipes/dash";
@@ -16596,16 +17471,16 @@
melpaBuild {
pname = "dashboard";
ename = "dashboard";
- version = "20180704.2325";
+ version = "20190320.25";
src = fetchFromGitHub {
- owner = "rakanalh";
+ owner = "emacs-dashboard";
repo = "emacs-dashboard";
- rev = "41d959b752a294a18122817fb3ec2a2a9cf22856";
- sha256 = "0xcqaf39szm3wqga1lkr4rsh48sv7qxldznfy8vxxa57xama80l3";
+ rev = "17accfce424a18c4120ad99dfc1d7d93591dbce0";
+ sha256 = "0f40xj3wchpj3g9pv15f88vy86d0vllbwr1xli0yfv326lm0j97r";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/e9a79341ccaa82a8c065e71c02fe6aee22007c66/recipes/dashboard";
- sha256 = "08pdpjfrg8v80gljy146cwpz624dshhbz8843zl1zszwp2p00kqy";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ef3c6af6ff5d880e6336f8db32b22b64b182794e/recipes/dashboard";
+ sha256 = "19l7mv57ra3i8bz35zfq0wrrp8mk0bzhng6wqpbf9dax4pq3pnp9";
name = "recipe";
};
packageRequires = [ emacs page-break-lines ];
@@ -16614,6 +17489,62 @@
license = lib.licenses.free;
};
}) {};
+ dashboard-hackernews = callPackage ({ dashboard
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , request }:
+ melpaBuild {
+ pname = "dashboard-hackernews";
+ ename = "dashboard-hackernews";
+ version = "20190108.1805";
+ src = fetchFromGitHub {
+ owner = "hyakt";
+ repo = "emacs-dashboard-hackernews";
+ rev = "b71814716d8f78181b9d1990f06072460de0797e";
+ sha256 = "1dvv10xn2mh0nh85cd78y23cn8p9ygdhj4k7xs4fa6r7bhp0xvqm";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a5ba74a9b76458bfd53e9cea7bd704d1488c9c98/recipes/dashboard-hackernews";
+ sha256 = "0j5ai05g84cl6dhzw1cjvvhchg0sy7zwv355x87c5mg1kx0mrdpk";
+ name = "recipe";
+ };
+ packageRequires = [ dashboard emacs request ];
+ meta = {
+ homepage = "https://melpa.org/#/dashboard-hackernews";
+ license = lib.licenses.free;
+ };
+ }) {};
+ dashboard-project-status = callPackage ({ dashboard
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , git
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "dashboard-project-status";
+ ename = "dashboard-project-status";
+ version = "20190202.554";
+ src = fetchFromGitHub {
+ owner = "functionreturnfunction";
+ repo = "dashboard-project-status";
+ rev = "7675c138e9df8fe2c626e7ba9bbb8b6717671a41";
+ sha256 = "1sbjrc1l57q2ifmw6pf3n105qk3q7rskqy9811qijpsbcl1m819d";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/dfc05873c6532c866d89c4cc07eb84b447a25c70/recipes/dashboard-project-status";
+ sha256 = "1r25xmscz3lrjm6jjix416py26za5l1ck3xa77qbyrr4rf1gsakg";
+ name = "recipe";
+ };
+ packageRequires = [ dashboard emacs git ];
+ meta = {
+ homepage = "https://melpa.org/#/dashboard-project-status";
+ license = lib.licenses.free;
+ };
+ }) {};
date-at-point = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -16676,12 +17607,12 @@
melpaBuild {
pname = "datetime";
ename = "datetime";
- version = "20180325.1004";
+ version = "20190404.1137";
src = fetchFromGitHub {
owner = "doublep";
repo = "datetime";
- rev = "d8674ac11f9ebb702e5bbac10a4a6e5542958ef5";
- sha256 = "19d4wximzwdcs0i2r48k6m60wwxcx5f89jw75k4hr0wvx0352a82";
+ rev = "8c6d6fc991766e6bf9cefc4ea4b04eeae8116a84";
+ sha256 = "0c5y304pvns8jhy4fpz4jmbfxdgz8ms04hgrnsb0g168szc9g0s9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/91ef4352603cc69930ab3d63f0a90eee63f5f328/recipes/datetime";
@@ -16729,12 +17660,12 @@
melpaBuild {
pname = "datomic-snippets";
ename = "datomic-snippets";
- version = "20180116.752";
+ version = "20180817.345";
src = fetchFromGitHub {
owner = "magnars";
repo = "datomic-snippets";
- rev = "731fbd31b814ef1521bd7eb1558eeab6a4c2e01b";
- sha256 = "0sbrvd3z32wrpnmarwf9ya0b2c99pg82mxhvjw4b7hggxx65lqsj";
+ rev = "4a14228840d5252e13d2bf6209670f26345bbb84";
+ sha256 = "1nvng479sy7ykwy9a86qq48yzv8n0903g724srhf42v9c81fc9s7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4da8ec133ec5e1204966c1b12c9bc0ca1b50d643/recipes/datomic-snippets";
@@ -16837,12 +17768,12 @@
melpaBuild {
pname = "ddskk";
ename = "ddskk";
- version = "20180706.2232";
+ version = "20190215.1927";
src = fetchFromGitHub {
owner = "skk-dev";
repo = "ddskk";
- rev = "cb727af4ca4e119be6e9509f14bfd61d9c6b758a";
- sha256 = "0qpgj1zvx2y8rmba4pqiypqi6dalg5lalhfafcvhsnnz1553fp7n";
+ rev = "9a5397829359e2e0f37e26701a70515c0f9fcba8";
+ sha256 = "15463cf8vykh2865k52qs25awc4yv91bfk4x9swh7ccrczv0d33q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6eccccb79881eaa04af3ed6395cd2ab981d9c894/recipes/ddskk";
@@ -16861,30 +17792,53 @@
, fetchurl
, lib
, melpaBuild
- , projectile
, s
, spinner }:
melpaBuild {
pname = "deadgrep";
ename = "deadgrep";
- version = "20180714.1716";
+ version = "20190314.1507";
src = fetchFromGitHub {
owner = "Wilfred";
repo = "deadgrep";
- rev = "0b00536799b6ee6d64676a0eed670bf771d4e746";
- sha256 = "0fdflr7spkcrgn6pssajhh7dbpwbhxqqx22lv38a45zzbpxrirp0";
+ rev = "160e7adb7f043fc42ba6d4d891ad50ef1e063be7";
+ sha256 = "1sm92hj4ilq0h82fy5k5nzn7jq56yw2665ikqdcj89k9xldin6xi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/93389fae7233b83ea904e17bdaf83f8247cda3d8/recipes/deadgrep";
sha256 = "01m5ds7lic9g11a5iwzw86k6xcv56wbbzjm1343ckbbi255h9i09";
name = "recipe";
};
- packageRequires = [ dash emacs projectile s spinner ];
+ packageRequires = [ dash emacs s spinner ];
meta = {
homepage = "https://melpa.org/#/deadgrep";
license = lib.licenses.free;
};
}) {};
+ debian-el = callPackage ({ fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "debian-el";
+ ename = "debian-el";
+ version = "20181020.813";
+ src = fetchgit {
+ url = "https://salsa.debian.org/emacsen-team/debian-el.git";
+ rev = "a499822afc2154ca83edf6a605ed22c5a932fa12";
+ sha256 = "0bfgh6v0q93lfd0q628r11jd45cys89z4874a19w61cb0mfpvks0";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/1a381ec81eb160365f478c6a3af638c14558d7d6/recipes/debian-el";
+ sha256 = "0x74a4nm2p4w82kzrdqy90969sminsrhdzppld2mg63jg0wxb8ga";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/debian-el";
+ license = lib.licenses.free;
+ };
+ }) {};
debpaste = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -16944,12 +17898,12 @@
melpaBuild {
pname = "decide";
ename = "decide";
- version = "20180316.1101";
+ version = "20190201.1337";
src = fetchFromGitHub {
owner = "lifelike";
repo = "decide-mode";
- rev = "257f0e39ac60ca375942950b44eeaee04cb9d961";
- sha256 = "0hiv3wlqidj1qd8z5jy800spzrpbca2vgq4zg1lkzvbcmhqvcqqm";
+ rev = "4bfcc826dd5b1c30caec455d8baa4f363159eac6";
+ sha256 = "07rwflgqlsgqrw2v7rbshrbcr1qkgsx59y904jspvj310s8bsczg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6adcd300e2ac2c718989cf855fd7b3eef654df00/recipes/decide";
@@ -17040,26 +17994,27 @@
license = lib.licenses.free;
};
}) {};
- default-text-scale = callPackage ({ fetchFromGitHub
+ default-text-scale = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "default-text-scale";
ename = "default-text-scale";
- version = "20180520.2349";
+ version = "20190107.1218";
src = fetchFromGitHub {
owner = "purcell";
repo = "default-text-scale";
- rev = "512d701df5e2079cad33329184fd7683c3b0b0af";
- sha256 = "1zwrjlaxsxx7snyvyklhrchkbqg14lhr9xk7rhhik8fp4dy4f5yj";
+ rev = "f425d3765c4dea3f2e550720278f9d424579ee5d";
+ sha256 = "0h42jiwxrxjmk7ccwh3h25n7dy2rq61ncm5wx27jhkncc5jdm4h6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/db5e0b70e2d9c80aa41ae2c397f822789c2d3cc2/recipes/default-text-scale";
sha256 = "18r90ic38fnlsbg4gi3r962vban398x2bf3rqhrc6z4jk4aiv3mi";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/default-text-scale";
license = lib.licenses.free;
@@ -17099,12 +18054,12 @@
melpaBuild {
pname = "define-word";
ename = "define-word";
- version = "20180706.1329";
+ version = "20190128.759";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "define-word";
- rev = "637cd29837d4bd5567e17a11a479fd2edfb0e2c1";
- sha256 = "1gni89sgs7bnl0h42jyqcph9mhgingybwcmf29j8zm440zii5f9p";
+ rev = "df1118858fae492cf476a963c1174bfada141c7f";
+ sha256 = "0sspnc95y70dcms4551sg93m8998i78lnnrngr59cldr5hwzbr2l";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e318b30d8b2b89981f4b89d78e5a46e77d3de412/recipes/define-word";
@@ -17143,6 +18098,33 @@
license = lib.licenses.free;
};
}) {};
+ defrepeater = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "defrepeater";
+ ename = "defrepeater";
+ version = "20180829.2110";
+ src = fetchFromGitHub {
+ owner = "alphapapa";
+ repo = "defrepeater.el";
+ rev = "62b00ede57d2e115b9ef9f21268c021ae1186873";
+ sha256 = "106q2h4djcf1q9v31wmimj59fiqmclgxw13s8zjnhv3sc2m3z1ka";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f0d9cf994233ad098826c6933dfd57665044f598/recipes/defrepeater";
+ sha256 = "1zlp206dy5qipb7m3m77j4har258rxgwxg5ipflym4jj183maa39";
+ name = "recipe";
+ };
+ packageRequires = [ emacs s ];
+ meta = {
+ homepage = "https://melpa.org/#/defrepeater";
+ license = lib.licenses.free;
+ };
+ }) {};
deft = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -17150,12 +18132,12 @@
melpaBuild {
pname = "deft";
ename = "deft";
- version = "20180619.857";
+ version = "20181226.734";
src = fetchFromGitHub {
owner = "jrblevin";
repo = "deft";
- rev = "24ac778ab8c8247f7677dd20dd301f6eba85bd8d";
- sha256 = "1m26wplsjgvv2s4mcb47haqjni49xmpjy52rddkmh6p7frhayxi2";
+ rev = "f54e8a65a7e75a029657364055420374df45656d";
+ sha256 = "1vas6jgwli0jcxmxmcwvzwv4414q8kkmhqfz5m96r7l4lpgcrhdr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e2a0e4698d4e71ec28656594f6a83504a823490/recipes/deft";
@@ -17202,12 +18184,12 @@
melpaBuild {
pname = "demangle-mode";
ename = "demangle-mode";
- version = "20180515.1945";
+ version = "20190116.1857";
src = fetchFromGitHub {
owner = "liblit";
repo = "demangle-mode";
- rev = "374c84a0b190f0f0ea76b956035003228077d1e0";
- sha256 = "02z2mjillglyv65ijdlc62hbjddp3xv185xg7s93xz7ymg04c394";
+ rev = "b4659ca85c4f02e9043e91d71affb4a8ede87339";
+ sha256 = "1rybal9rvnhp4bsdpx57zjida6c9hm44qjvp1fha7fcynjp462iz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6ced9f4ffb051a8474d3f72695156416cf2dd8be/recipes/demangle-mode";
@@ -17279,12 +18261,12 @@
melpaBuild {
pname = "desktop-environment";
ename = "desktop-environment";
- version = "20180423.153";
+ version = "20190401.835";
src = fetchFromGitHub {
owner = "DamienCassou";
repo = "desktop-environment";
- rev = "62fbceded526b8e35c90803bcf80e33ebfe8473a";
- sha256 = "1j2kvdj3k9amj93w8cbh49rbf3vhnkbisw67hjhif62ajc19ip4k";
+ rev = "564a0f4e8acb747f825c34e0abc6d6690f5d5060";
+ sha256 = "0b8gnyhadnwppvwdlgm5fxiiawrwyf9kqxcas5hrjmlnyskdcall";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dfe988e0dd4a1272ecf7b2fe758ef0c81e2acad2/recipes/desktop-environment";
@@ -17350,6 +18332,32 @@
license = lib.licenses.free;
};
}) {};
+ detour = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "detour";
+ ename = "detour";
+ version = "20181122.1338";
+ src = fetchFromGitHub {
+ owner = "ska2342";
+ repo = "detour";
+ rev = "f41f17cf1cf4f3db41563ff011786b6567596fb4";
+ sha256 = "1mgz2gicp7wm41x8y8q4wwsa92pga67wngpf8473lb2jrzpf78k6";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/010af7946b10ded846225a19d375434b5d9427a8/recipes/detour";
+ sha256 = "0w63vqlzkvx54y8y71gzzdyxzm4430bqfyapzyrzrsmxh773hnmn";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/detour";
+ license = lib.licenses.free;
+ };
+ }) {};
devdocs = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -17360,13 +18368,13 @@
version = "20170731.150";
src = fetchFromGitHub {
owner = "xuchunyang";
- repo = "devdocs.el";
+ repo = "DevDocs.el";
rev = "a2d51e824f0cc48a9dd611cc740bc8b86143e611";
sha256 = "0nzh7pgvj4cs5d29lrrmbas29xdslgqzsqjmpapzqzbnrgprnbx8";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/a54ff5faeefabf484ef175433cfc2b8317993f74/recipes/devdocs";
- sha256 = "04a1yspk3dwx0lzyg03lrbvig4g6sqmavzwicshdyr7q1bny7ikn";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/devdocs";
+ sha256 = "14vab71fy5i1ccmzgfdg37lfs1ix3qwhcyk9lvbahcmwnbnimlzm";
name = "recipe";
};
packageRequires = [];
@@ -17404,23 +18412,24 @@
, fetchFromGitHub
, fetchurl
, lib
- , melpaBuild }:
+ , melpaBuild
+ , reformatter }:
melpaBuild {
pname = "dhall-mode";
ename = "dhall-mode";
- version = "20180715.213";
+ version = "20190113.1601";
src = fetchFromGitHub {
owner = "psibi";
repo = "dhall-mode";
- rev = "5aa24b844ee0371024b7b65d1682984d3c1d82bf";
- sha256 = "0ql595j63n6r7381sw8hvkcy2dsly3fxw8qb5g0w2g2f7902905x";
+ rev = "b59698e9f81ef30cc784729ee4d8c719e6c21bf6";
+ sha256 = "1aw6b2gkpclzahyyzxmj2025l8c82w83lz4ixxv5fk63yc9vj96l";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c7ab435077b2f47d75ddc0ff10c64ee2b46044e2/recipes/dhall-mode";
sha256 = "1zkspjwllcw9k4nlnif6jdwzl08ki39vmx90apw029n87xhvx7mp";
name = "recipe";
};
- packageRequires = [ emacs ];
+ packageRequires = [ emacs reformatter ];
meta = {
homepage = "https://melpa.org/#/dhall-mode";
license = lib.licenses.free;
@@ -17434,12 +18443,12 @@
melpaBuild {
pname = "diary-manager";
ename = "diary-manager";
- version = "20180626.1058";
+ version = "20181214.1926";
src = fetchFromGitHub {
owner = "raxod502";
repo = "diary-manager";
- rev = "01851f42aee0526995ea88c3d42b7fe12e1cb7fd";
- sha256 = "1q1zrqawrr844lzjc5l480im6rjdyagir0dr805vgyv31fhp1vmw";
+ rev = "919f724bb58e36b8626dd8d7c8475f71c0c54443";
+ sha256 = "12zg022bhfn4gsclb5wk8wh0bqyy0v5j37369haq6rb5jcc6x5fb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a014f4d862a2480f7edb1266f79ce0801cca13c2/recipes/diary-manager";
@@ -17461,12 +18470,12 @@
melpaBuild {
pname = "dic-lookup-w3m";
ename = "dic-lookup-w3m";
- version = "20170803.354";
+ version = "20180526.921";
src = fetchFromGitHub {
owner = "emacsorphanage";
repo = "dic-lookup-w3m";
- rev = "79aca5eb9c78e67cb85a386060d48113caad5ec3";
- sha256 = "18l2s37bnnzbgw22mivgw5isxck2y0n3nk7735r4ir5y5wqx88mr";
+ rev = "3254ab10cbf0078c7162557dd1f68dac28459cf9";
+ sha256 = "0g8kzaxjka7n9jdldh45m22nizgv0m0v94ns7vmmhf1hpsf3zfxz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/30de78c9cf83de30093a5647976eeaf552d4b2cb/recipes/dic-lookup-w3m";
@@ -17489,12 +18498,12 @@
melpaBuild {
pname = "dictcc";
ename = "dictcc";
- version = "20171213.1334";
+ version = "20190118.1202";
src = fetchFromGitHub {
owner = "cqql";
repo = "dictcc.el";
- rev = "a77cf1fadadcbde762466970b503c8a8916b35b2";
- sha256 = "0aaah14nc8ajqhbjmwp7257k2n8ay6g87spb734kxfs8irzg52fa";
+ rev = "3244897515db954eafeed9648e7a0011b89c3ce2";
+ sha256 = "1nlgz3i8kynhl6d6h5rszja14z5n7ri83mm5ks90nbdhjcqwk3qd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5e867df96915a0c4f22fdccd4e2096878895bda6/recipes/dictcc";
@@ -17516,12 +18525,12 @@
melpaBuild {
pname = "dictionary";
ename = "dictionary";
- version = "20140717.2029";
+ version = "20190403.1218";
src = fetchFromGitHub {
owner = "myrkr";
repo = "dictionary-el";
- rev = "a23b8f4a422d0de69a006ed010eff5795319db98";
- sha256 = "0gz03hji6mcrzvxd74qim63g159sc8ggb6hq3x42x5l01g980fbm";
+ rev = "6edc1d0a4156d33c3da0c1649c308b809fda46e1";
+ sha256 = "0g95q3yggzxr8d2gjxamfwx8xbzf182naxpb265r7v9awd35bqk5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5b08ed7b90e3283e177eff57cb02b12a093dc258/recipes/dictionary";
@@ -17543,12 +18552,12 @@
melpaBuild {
pname = "diff-hl";
ename = "diff-hl";
- version = "20180201.355";
+ version = "20190223.1533";
src = fetchFromGitHub {
owner = "dgutov";
repo = "diff-hl";
- rev = "190622d3fa2c3237529ec073a8fa00aee06023a1";
- sha256 = "0jh270anr2ralixgwsc3wn48jnw3qwz6m18lg0sgwgzyajh0fpb9";
+ rev = "84a5fe1900af2e5cc522f02749804f0d9f094bbf";
+ sha256 = "1xlsg728mz3cwhrsqvisa0aidic67nymd9g7h4c1h3q63j39yb2s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/diff-hl";
@@ -17599,14 +18608,14 @@
ename = "diffscuss-mode";
version = "20141014.1657";
src = fetchFromGitHub {
- owner = "hut8labs";
+ owner = "tomheon";
repo = "diffscuss";
rev = "bbc6dbed4b97d1eb9ae5dae021ed1e066129bd98";
sha256 = "0ppsgfzmdg0r418n2x0qxwhyqs7hjj8fgazc4xzgs8fsg4j3h7mr";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/17f89560f98f11810205ba58841cd5566766b436/recipes/diffscuss-mode";
- sha256 = "06jd7wh4yzryz0yjwa4a0xddz7srl5mif8ff1wvcpxsb66m2zbvh";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/diffscuss-mode";
+ sha256 = "1mycjis38gqwha7jgj05fzv0041ghk6khy5d2dlcyy2nh3bb68rb";
name = "recipe";
};
packageRequires = [];
@@ -17911,12 +18920,12 @@
melpaBuild {
pname = "dired-atool";
ename = "dired-atool";
- version = "20180302.2340";
+ version = "20181228.622";
src = fetchFromGitHub {
owner = "HKey";
repo = "dired-atool";
- rev = "b92e0106827d34fa686e189c7e9a537a3a947a8b";
- sha256 = "1i40zd7y1jf9skr3wi2zqv4awrgff244p1h89r707aq67v1j19yk";
+ rev = "09dbb769fe02f546da470369a12468ab4a0cceb2";
+ sha256 = "0j2dz4vy4i22185hhlwg2kprpis97xb12qvfdhvdcnz2vwy61sxa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0fe7b0857828a041ee06b30edd2cd488cc3394c7/recipes/dired-atool";
@@ -17957,6 +18966,7 @@
};
}) {};
dired-collapse = callPackage ({ dash
+ , dired-hacks-utils
, f
, fetchFromGitHub
, fetchurl
@@ -17965,19 +18975,19 @@
melpaBuild {
pname = "dired-collapse";
ename = "dired-collapse";
- version = "20180530.727";
+ version = "20180724.944";
src = fetchFromGitHub {
owner = "Fuco1";
repo = "dired-hacks";
- rev = "71a1cf4d791e640df1f05b5589f79e45c460da64";
- sha256 = "18l563jp9brflmsf7s5i6yklrs2nzcs93xm6h1w2wswzdssdna2b";
+ rev = "3fd347a0823312e966872bd0d26d9a75b2898c9c";
+ sha256 = "01q93n4b9js29r2grk53206f7blwp2pjyz8lf98x184f2sdrz9k7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6aab23df1451682ff18d9ad02c35cb7ec612bc38/recipes/dired-collapse";
sha256 = "1k8h5cl8r68rnr1a3jnbc0ydflzm5mad7v7f1q60wks5hv61dsd1";
name = "recipe";
};
- packageRequires = [ dash f ];
+ packageRequires = [ dash dired-hacks-utils f ];
meta = {
homepage = "https://melpa.org/#/dired-collapse";
license = lib.licenses.free;
@@ -18091,12 +19101,12 @@
melpaBuild {
pname = "dired-filetype-face";
ename = "dired-filetype-face";
- version = "20160822.655";
+ version = "20180907.639";
src = fetchFromGitHub {
owner = "jixiuf";
repo = "dired-filetype-face";
- rev = "72b3c88e8b82b3f8681d940757f7b2992bd80793";
- sha256 = "1sp6fr3qha5zas65q06b61bgqx0nfiarcgpydqv0drkn6dpaps8b";
+ rev = "7ade7f7e8c2d7518c65f3f0343a10c272da0f47e";
+ sha256 = "0s8mqz331iw2bk4xdvj9zljklqj8dxv0yaw100lddg37qmdf7lgl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4e6c8015af3d5f013272308a97e089a4e3ca847d/recipes/dired-filetype-face";
@@ -18120,12 +19130,12 @@
melpaBuild {
pname = "dired-filter";
ename = "dired-filter";
- version = "20171010.204";
+ version = "20190211.1220";
src = fetchFromGitHub {
owner = "Fuco1";
repo = "dired-hacks";
- rev = "64b3dbb0e8f631d1e11becd0458406404894550b";
- sha256 = "1nxn1517pf2i17bi0h5m5p2x8cvv30zgg6i6h8cjm4bwl1nx1ymc";
+ rev = "618b2037a3fc6940894a1030863298c96362c3b8";
+ sha256 = "061aadq4k7rfarp2yqzzldldr4k1g7m44jvnbsypddbnwqp6nf5c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/568e524b7bdf91b31655bdbb30fe9481d7a0ffbf/recipes/dired-filter";
@@ -18301,12 +19311,12 @@
melpaBuild {
pname = "dired-narrow";
ename = "dired-narrow";
- version = "20170309.329";
+ version = "20181114.923";
src = fetchFromGitHub {
owner = "Fuco1";
repo = "dired-hacks";
- rev = "342d75f1240ebe17959ec25a5b050b40156e10cb";
- sha256 = "18s8jax1k1p1x3r2rl398r1cxy0i2ss9vv23bgv3dna4hvwv65jc";
+ rev = "c7184dc8f6ed3f2330db8d8f21f01c4b08056dd3";
+ sha256 = "1i5a6srd3fpqdvvhyv0swybznimx9ilpm3sd76ha3shispyij1x5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8994330f90a925df17ae425ccdc87865df8e19cd/recipes/dired-narrow";
@@ -18328,12 +19338,12 @@
melpaBuild {
pname = "dired-open";
ename = "dired-open";
- version = "20160205.1213";
+ version = "20180922.413";
src = fetchFromGitHub {
owner = "Fuco1";
repo = "dired-hacks";
- rev = "49bb19a92a4256057f151da9ad6d0a91d46dacc0";
- sha256 = "0hdpn2q55qqvqffb70c8z72ah516l1d3gbzibrr5d0i31xggx4g3";
+ rev = "a45737d3a5aaac6928ebd7af041e5603dffaca64";
+ sha256 = "1bhz0x7sa4a56f5ha8h9w36y5pirvzhkhczyfwf4z74j4z5z44sm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/568e524b7bdf91b31655bdbb30fe9481d7a0ffbf/recipes/dired-open";
@@ -18434,16 +19444,16 @@
melpaBuild {
pname = "dired-recent";
ename = "dired-recent";
- version = "20180527.1259";
+ version = "20180921.1538";
src = fetchFromGitHub {
- owner = "vifon";
+ owner = "Vifon";
repo = "dired-recent.el";
- rev = "22104c87593f24ec513dfdf97fc4c8c91defec33";
- sha256 = "0ddpsfq1frzx9nkiakkrxm8x6xg8f5fpvqlln8ksys7x2cmzk092";
+ rev = "b67f0fd346b03012f3c31d0a979d16290140557b";
+ sha256 = "0nnaxynvwz346mr26l1whkd6myynr5fl0mhih3q1bkwsd93s0k4q";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d717543b63f9eb1ed6b8f78de84da717d3b8e4bc/recipes/dired-recent";
- sha256 = "1hspi9bazbij9h05qaljgn5035p409w28mzvmrl4j6isx306s61l";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/dired-recent";
+ sha256 = "1qvw7m6wzahc0xmf37cyl9lv1k9442j0kkzx6dl6f0wclw0v6hgs";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -18452,6 +19462,55 @@
license = lib.licenses.free;
};
}) {};
+ dired-rifle = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "dired-rifle";
+ ename = "dired-rifle";
+ version = "20181012.1431";
+ src = fetchFromGitHub {
+ owner = "Vifon";
+ repo = "dired-rifle.el";
+ rev = "a4f7b1e798397688b9c00d3507fcd395ece17a40";
+ sha256 = "09jp54drbx1hb4fj6bzh8ava7nk56pp500xsa9712vscg1f38fpz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/dired-rifle";
+ sha256 = "1x6i68i7f1c3k0w3w4zph16s046ccajyb2641fx0j8dl5367qgbc";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/dired-rifle";
+ license = lib.licenses.free;
+ };
+ }) {};
+ dired-rmjunk = callPackage ({ fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "dired-rmjunk";
+ ename = "dired-rmjunk";
+ version = "20190209.1633";
+ src = fetchgit {
+ url = "https://git.sr.ht/~jakob/dired-rmjunk";
+ rev = "5d94726b4e427bb21dcc6f043bc3fcfc98b27b7a";
+ sha256 = "0imxvaafxpndb3m07wd74xjn093hbib2g38kmrwxj26xkgzw60nc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/75d501ae9b64d9aa083f43358881a467a7cd2a04/recipes/dired-rmjunk";
+ sha256 = "1m07z6gcsd5i1xshgfxqrpcrqpl0ffa9ls2443za5wkgbalhxx47";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/dired-rmjunk";
+ license = lib.licenses.free;
+ };
+ }) {};
dired-rsync = callPackage ({ dash
, emacs
, fetchFromGitHub
@@ -18462,12 +19521,12 @@
melpaBuild {
pname = "dired-rsync";
ename = "dired-rsync";
- version = "20180625.1448";
+ version = "20190301.540";
src = fetchFromGitHub {
owner = "stsquad";
repo = "dired-rsync";
- rev = "1eb7488f36528166992fe50a89dbbfa6d8a0e58b";
- sha256 = "0dc30xx9k2l1x2mj8mzkzx7ppv5nzpsyp3wxrhbbjwhnv5micc5q";
+ rev = "ff229a32008438a2bfce7ef6c23e8e0d7a5f0c74";
+ sha256 = "0wlb27d7isclp5j2cmk31mdix6wx1cavjfnkk5306iwrbpirpv96";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ce9f41ad832cef527dde97f829a8b8339e6ac48b/recipes/dired-rsync";
@@ -18489,12 +19548,12 @@
melpaBuild {
pname = "dired-sidebar";
ename = "dired-sidebar";
- version = "20180709.2204";
+ version = "20190319.1811";
src = fetchFromGitHub {
owner = "jojojames";
repo = "dired-sidebar";
- rev = "e40075bbb43c4012b49fea2b40dbef1d3be3d82e";
- sha256 = "0jz57p47np4wn01y7ggsavgg9nnl1rnmqcl0y32w2c8xk22rhjlp";
+ rev = "c895f43e2ee77042f2f9596c4cde8f5f224b8403";
+ sha256 = "1wrlvlrv7lh71m6jambbpcxdg0416h1w5d5y673igkp0ri87n2q8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/30e15c8361b01195f198197e704828fbcac0e8d6/recipes/dired-sidebar";
@@ -18514,12 +19573,12 @@
melpaBuild {
pname = "dired-single";
ename = "dired-single";
- version = "20170804.544";
+ version = "20180823.2012";
src = fetchFromGitHub {
owner = "crocket";
repo = "dired-single";
- rev = "0dcc645de6397bf12c33229de67a503e4490c618";
- sha256 = "16073xjfx7cvv9g8dlyxwa4ca6x35vwarqq43mrl05nxcq0rfzv3";
+ rev = "b0ccca83df0542c5525c047ae283c0eadf500f5c";
+ sha256 = "14q8lp1x1b78ra9mk90n6dyrm1j9ny5pr7valgpkg8agqyqn7xmn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/41669decbb7ad5c4dbe152a863f16d87e7bba493/recipes/dired-single";
@@ -18541,12 +19600,12 @@
melpaBuild {
pname = "dired-subtree";
ename = "dired-subtree";
- version = "20170910.1521";
+ version = "20180922.915";
src = fetchFromGitHub {
owner = "Fuco1";
repo = "dired-hacks";
- rev = "3e7d46f898eba8611eafbfecf5333cc2325f89f5";
- sha256 = "1z2jc221cbgmy0rqb4ns5pq6fmfl7li3p9xhy6if2v8r82m5yn4q";
+ rev = "c5e9dcdf2ee6fd5660e2bfbb8c635674053df7c9";
+ sha256 = "1qcsklrvs8dajj7nyhd70ql4df3ayjkgxyf8ldm48ajms5qslkfb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d6a947ac9476f10b95a3c153ec784d2a8330dd4c/recipes/dired-subtree";
@@ -18566,12 +19625,12 @@
melpaBuild {
pname = "dired-toggle";
ename = "dired-toggle";
- version = "20140907.1349";
+ version = "20190402.2302";
src = fetchFromGitHub {
owner = "fasheng";
repo = "dired-toggle";
- rev = "84efb9ec9c327e4da53cdb7cda5b51dcd0ede0e5";
- sha256 = "1yx20h16hc1b04knsqhrxni0j8qgwnq7i5b0dlggq3dakcvqfxma";
+ rev = "509bf1f3c6d5e5f9bc29f94d88127e2d82d5c6ed";
+ sha256 = "1h91z38bflj1z1zy798a4ngkny2f7gp03xbf222jiyhwc9djgg8q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/17ae4c5ff42e0c48e53d93c88853f649f59034e6/recipes/dired-toggle";
@@ -18670,12 +19729,12 @@
melpaBuild {
pname = "direnv";
ename = "direnv";
- version = "20180513.123";
+ version = "20190319.718";
src = fetchFromGitHub {
owner = "wbolster";
repo = "emacs-direnv";
- rev = "6cf079fe8171bdf4bebefe02e8353d7f13847ebd";
- sha256 = "0vw9s70h5zjz5k225mzm893sv5pdb4lz5x7fc4r98iva0wipldgn";
+ rev = "8ad3672c56d65b1eacc012cc51a36ed544b4b160";
+ sha256 = "02blhinkkfh3iai6j1k5swplf5mkwijy3p7wy38rnd1gnyj2z4la";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5419809ee62b920463e359c8e1314cd0763657c1/recipes/direnv";
@@ -18800,12 +19859,12 @@
melpaBuild {
pname = "disable-mouse";
ename = "disable-mouse";
- version = "20171226.1715";
+ version = "20181225.1406";
src = fetchFromGitHub {
owner = "purcell";
repo = "disable-mouse";
- rev = "541363bd6353b8b05375552bab884a6315ea545c";
- sha256 = "1grs3cz2zdw49frvxy4vc1z3ld804kk5g2ad6ln5grprcd188bz9";
+ rev = "236d9b9d03544f92ebf44a2861c469c685857b67";
+ sha256 = "0lpmjzwzbpnhkwrwxai0g35mglhbccnlsc18zgf2rfhi8ggfla9b";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dbbc396373212fdf731e135cde391f27708ff015/recipes/disable-mouse";
@@ -19053,6 +20112,34 @@
license = lib.licenses.free;
};
}) {};
+ dist-file-mode = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "dist-file-mode";
+ ename = "dist-file-mode";
+ version = "20180829.2118";
+ src = fetchFromGitHub {
+ owner = "emacs-php";
+ repo = "dist-file-mode.el";
+ rev = "e1ce8f592bc5d4d86d2f09e334728ac0d524c761";
+ sha256 = "09rp83d81y9mm81isrwvacl21vgah7nhi5r4j2xbp13kgdn7my1w";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/dd10fbed2810a642600dba9dfe320fa6299e6d34/recipes/dist-file-mode";
+ sha256 = "1gbnkb0537gw8flv4gdi4jzb7y9dnbf9cfj2jw8y84axyfzbb4mf";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs s ];
+ meta = {
+ homepage = "https://melpa.org/#/dist-file-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
distel-completion-lib = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -19060,12 +20147,12 @@
melpaBuild {
pname = "distel-completion-lib";
ename = "distel-completion-lib";
- version = "20160816.406";
+ version = "20180827.644";
src = fetchFromGitHub {
owner = "sebastiw";
repo = "distel-completion";
- rev = "994c61dda2e3256b41fa2e53821c484b5ffd13e6";
- sha256 = "00nifdhwy89zmi50hln5p5albdx7ypm4mbdfjzhk4870crx4zjr2";
+ rev = "acc4c0a5521904203d797fe96b08e5fae4233c7e";
+ sha256 = "0yvp3dwa9mwfyrqla27ycwyjad4bp1267bxv0chxcr4528hnygl3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/90fff35dd9709b06802edef89d1fe6a96b7115a6/recipes/distel-completion-lib";
@@ -19128,6 +20215,7 @@
};
}) {};
dix = callPackage ({ cl-lib ? null
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -19135,19 +20223,19 @@
melpaBuild {
pname = "dix";
ename = "dix";
- version = "20170224.615";
+ version = "20181210.400";
src = fetchFromGitHub {
owner = "unhammer";
repo = "dix";
- rev = "bcc7fd7aef5d25171978c386c620e09d0ba8d2f8";
- sha256 = "12ny1a89xhjcnz03s1bw96y14kqb2w6cpf2rk8lv6kri7dasfq4n";
+ rev = "b973de948deb7aa2995b1895e1e62bbe3129b5a5";
+ sha256 = "1bjxyidcp7y309asbk4pfb4mzgb8j62fmp3w3zl2nahdgv1rja45";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/149eeba213b82aa0bcda1073aaf1aa02c2593f91/recipes/dix";
sha256 = "0c5fmknpy6kwlz7nx0csbbia1maz0szj7yha1p7wq28s3a5426xq";
name = "recipe";
};
- packageRequires = [ cl-lib ];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://melpa.org/#/dix";
license = lib.licenses.free;
@@ -19205,6 +20293,32 @@
license = lib.licenses.free;
};
}) {};
+ django-commands = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "django-commands";
+ ename = "django-commands";
+ version = "20190320.22";
+ src = fetchFromGitHub {
+ owner = "muffinmad";
+ repo = "emacs-django-commands";
+ rev = "1b19436a1160d1552207d4356d5e78793dabe100";
+ sha256 = "1zb8mf0dgdr83n61a54m5grhdr6nz75zrgwczpzfl3f66xkvfci9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fd217a23a9670c7eb826360b34df1a06ab3e450f/recipes/django-commands";
+ sha256 = "17k9bnig2cfnxbbz6k9vdk5k5gzhvn1h5j9wvww7n137c9vv0qmk";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/django-commands";
+ license = lib.licenses.free;
+ };
+ }) {};
django-manage = callPackage ({ fetchFromGitHub
, fetchurl
, hydra
@@ -19322,12 +20436,12 @@
melpaBuild {
pname = "djangonaut";
ename = "djangonaut";
- version = "20180710.1445";
+ version = "20180727.844";
src = fetchFromGitHub {
owner = "proofit404";
repo = "djangonaut";
- rev = "61a1ace3562c7352fd1665ceccc6b39be23daa80";
- sha256 = "02g3iij6hhhzws612l9hbvd8zlf6ggifgl8ckxaysxd80z2jc2rs";
+ rev = "487dbd19a312cf5b45183df82d5d57f5c5a403a2";
+ sha256 = "1fpbbv5w54r70b1xma36lp3kh5cn184bvq28apll5bd5bclii56y";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0c1281f59add99abf57bc858d6e0f9b2ae5b3c5c/recipes/djangonaut";
@@ -19340,6 +20454,32 @@
license = lib.licenses.free;
};
}) {};
+ djinni-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "djinni-mode";
+ ename = "djinni-mode";
+ version = "20190302.1739";
+ src = fetchFromGitHub {
+ owner = "danielmartin";
+ repo = "djinni-mode";
+ rev = "f0da31d8f45c4b1b2341cf88ec7f2d2e7d16267f";
+ sha256 = "1jfc2n5js596wmpy6g8jyysn9hwf151s952v3ph0wpcisl7wsiyv";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e6e88f64e21275c6755f2589d1afa16eb4e575b8/recipes/djinni-mode";
+ sha256 = "19222702dr7hfl7ffqp5z4sslg949p88rwvmg2al82i1a0wkgc98";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/djinni-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
dkdo = callPackage ({ dkmisc
, emacs
, fetchFromGitHub
@@ -19454,12 +20594,12 @@
melpaBuild {
pname = "dmenu";
ename = "dmenu";
- version = "20180118.445";
+ version = "20190329.2010";
src = fetchFromGitHub {
owner = "lujun9972";
repo = "el-dmenu";
- rev = "6e492cd4ee4fb39ecda92776707fc270f54d25e7";
- sha256 = "085ap58qfwr7gvrx68dy72z4ph1mvwka5i7ydx58m1a3bb9rshnw";
+ rev = "162f9f513d5dbd5f61f8d7adb48546f646d7d3fe";
+ sha256 = "1216ab5n7bmpjxrfj4b13mjq1rh6wsdk1dh8mgqxvwh1mydy5lsa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/98bcdd71a160b9c04f83cc5b939031c9e7b5eb59/recipes/dmenu";
@@ -19565,12 +20705,12 @@
melpaBuild {
pname = "docker";
ename = "docker";
- version = "20180710.743";
+ version = "20190407.218";
src = fetchFromGitHub {
owner = "Silex";
repo = "docker.el";
- rev = "7aee62326f8304fc5e3fc9de84bd56afe3572ed9";
- sha256 = "1lrgi7hp5a3j6c39jv3vn7x1ak66p5r1ijifwkrj95r1x0dxj3f2";
+ rev = "e127a157f8d0d9ffd465075ecf6558f36d2d3b24";
+ sha256 = "1g8r1faqp0z0vqp9qrl8m84pa0v2ddvc91klphdkfmldwv7rfipw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6c74bf8a41c17bc733636f9e7c05f3858d17936b/recipes/docker";
@@ -19683,12 +20823,12 @@
melpaBuild {
pname = "dockerfile-mode";
ename = "dockerfile-mode";
- version = "20180628.959";
+ version = "20181104.1000";
src = fetchFromGitHub {
owner = "spotify";
repo = "dockerfile-mode";
- rev = "64733f64ea9be1e5e534e590846869b75c62ed1f";
- sha256 = "00fk4qq3yhqia6y7pixx3qfmfxp61hdffkx6hmz6gbd6i1ibkmw4";
+ rev = "7223d92718f78fa3ab15667cdb2ed90cfeb579e7";
+ sha256 = "0hmipgl4rk6aih11i8mnspwdijjiwk2y0wns6lzs8bgkvy3c064r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1406f5a24115d29e3b140c360a51b977a369e4f9/recipes/dockerfile-mode";
@@ -19718,8 +20858,8 @@
sha256 = "0vqx8npw0i02dhw2yb7s4z7njw60r3xyncw4z8l6fj99pp6pfh15";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dokuwiki";
- sha256 = "0wfzzxx3n75zgxk06rlq7053hla84k79mk911by4jwk6km5adk55";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/dokuwiki";
+ sha256 = "0d92il37z1m1hgcgb6c6zaifllznzk1na4yv4bfsfqg25l0mid75";
name = "recipe";
};
packageRequires = [ emacs xml-rpc ];
@@ -19786,12 +20926,12 @@
melpaBuild {
pname = "doneburn-theme";
ename = "doneburn-theme";
- version = "20180502.1004";
+ version = "20181110.1057";
src = fetchFromGitHub {
owner = "manuel-uberti";
repo = "doneburn-theme";
- rev = "e27a599166ed5f1993e6eabdb223a0f374516e89";
- sha256 = "0ni6v7n6wfax5f3ndyx2rhizcr067adkiqgcvwl5smdykiw7gbsp";
+ rev = "9c31dd6d664436df73c776560c7a660041b3a5bf";
+ sha256 = "042jfjlhyk2lc4wbqsyvb09q5k3jsxsdi89ymwl59j0mvhxws7lj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7fc483d5f487f462567bba22d611f90fc8a1a709/recipes/doneburn-theme";
@@ -19838,31 +20978,23 @@
, fetchurl
, lib
, melpaBuild
- , projectile
, shrink-path }:
melpaBuild {
pname = "doom-modeline";
ename = "doom-modeline";
- version = "20180712.2015";
+ version = "20190406.12";
src = fetchFromGitHub {
owner = "seagle0128";
repo = "doom-modeline";
- rev = "8af6cb74f6f94ec863076966fd3b2d85ce386b02";
- sha256 = "1b9k30n63milm7xzdh6ya5z4h2gz0dqm0ndfpmy9kx3992mbljqw";
+ rev = "c5b5a4d2d24b67239993c398e5631e54908fe815";
+ sha256 = "0jfh10vnxaz93569yb11zqirj12487ly1gxxrr807583pn24b6n0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f4f610757f85fb01bd9b1dd212ddbea8f34f3ecd/recipes/doom-modeline";
sha256 = "0pscrhhgk4wpz1f2r94ficgan4f9blbhqzvav1wjahwp7fn5m29j";
name = "recipe";
};
- packageRequires = [
- all-the-icons
- dash
- eldoc-eval
- emacs
- projectile
- shrink-path
- ];
+ packageRequires = [ all-the-icons dash eldoc-eval emacs shrink-path ];
meta = {
homepage = "https://melpa.org/#/doom-modeline";
license = lib.licenses.free;
@@ -19878,12 +21010,12 @@
melpaBuild {
pname = "doom-themes";
ename = "doom-themes";
- version = "20180720.438";
+ version = "20190313.1520";
src = fetchFromGitHub {
owner = "hlissner";
repo = "emacs-doom-themes";
- rev = "75d43068733201b8c9c45f9e637ceaab2ff565a4";
- sha256 = "11pbk4clc3rxzibrrz8rbfx52kd3fkxdyl6wv8mi1s8p7jw4ffln";
+ rev = "cbac92578aba8eff8edd18b3e1ea72c295e3631e";
+ sha256 = "0v0002smmwjszl94950wmggs0ss9kfigzrhfvayhwcqw0m5h531c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c5084bc2c3fe378af6ff39d65e40649c6359b7b5/recipes/doom-themes";
@@ -19955,12 +21087,12 @@
melpaBuild {
pname = "dotnet";
ename = "dotnet";
- version = "20170827.838";
+ version = "20181117.731";
src = fetchFromGitHub {
owner = "julienXX";
repo = "dotnet.el";
- rev = "fc1c98025f4f9394ce9b70f9bdafd18d897f27f2";
- sha256 = "1pb45rpr2anqgxrdnp3sz3adx8gvpwvdms47gh75ran4sn191l19";
+ rev = "70ed170caeeecba5fddbd82b0d6aec967b6c6ee4";
+ sha256 = "1hdghrcyic1jng1k08fsq9fscyqx6s3rmsh9k21b91dfaxyaqj6b";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6ef473594ec57a747ad7d9d57d7287bcacf4b446/recipes/dotnet";
@@ -19973,6 +21105,32 @@
license = lib.licenses.free;
};
}) {};
+ double-saber = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "double-saber";
+ ename = "double-saber";
+ version = "20190325.1217";
+ src = fetchFromGitHub {
+ owner = "dp12";
+ repo = "double-saber";
+ rev = "5555dc28cbaa228fa8f9390738a4200e071380b8";
+ sha256 = "06ykn84hp4yvf6z2457jqgyck70y30361l8617ilb7g337hk15xl";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/19f5c0195ad9b278a7aaa3fd8e70c0004cc03500/recipes/double-saber";
+ sha256 = "0zsmyvlxm3my3xbj7m38539vk2dl7azi1v7jb41kdiavj2cc55zg";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/double-saber";
+ license = lib.licenses.free;
+ };
+ }) {};
download-region = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -20075,6 +21233,31 @@
license = lib.licenses.free;
};
}) {};
+ dpkg-dev-el = callPackage ({ debian-el
+ , fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "dpkg-dev-el";
+ ename = "dpkg-dev-el";
+ version = "20181021.1708";
+ src = fetchgit {
+ url = "https://salsa.debian.org/emacsen-team/dpkg-dev-el.git";
+ rev = "a80f8ac5d81720cce90cf3bc5fbb45d50b1953d7";
+ sha256 = "0358c6gvyb85zr5r79ar3q46c83gz39rawyhgcg1h1hqxgj6a2lx";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3e057df3608780a6191f761b9a81262c2eaa053c/recipes/dpkg-dev-el";
+ sha256 = "1cgfzxlw4m3wsl5fhck08pc2w7fw91mxk58yaprk9lkw4jxd1yjy";
+ name = "recipe";
+ };
+ packageRequires = [ debian-el ];
+ meta = {
+ homepage = "https://melpa.org/#/dpkg-dev-el";
+ license = lib.licenses.free;
+ };
+ }) {};
dr-racket-like-unicode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -20109,12 +21292,12 @@
melpaBuild {
pname = "dracula-theme";
ename = "dracula-theme";
- version = "20180710.624";
+ version = "20190107.1216";
src = fetchFromGitHub {
owner = "dracula";
repo = "emacs";
- rev = "a1c9888b7876ace60a536d27fb290e788bffc9cb";
- sha256 = "1bi257gp4rskwbvr1hkgz16r0pw4xqvaxgixzv4abb35vsc9gncx";
+ rev = "66e429f4d576346661ae3a111bafaa06febc1d94";
+ sha256 = "0lyy8vjzzcfcj4hm7scxl4cg4qm67rprzdj7dmyc3907yad4n023";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d63cb8906726f106e65f7d9895b49a38ffebf8d5/recipes/dracula-theme";
@@ -20187,14 +21370,14 @@
ename = "drawille";
version = "20160418.1138";
src = fetchFromGitHub {
- owner = "sshbio";
- repo = "drawille";
+ owner = "josuah";
+ repo = "drawille-el";
rev = "d582b455c01432bc80933650c52a1f586bd1b5ad";
sha256 = "1z3akh0ywzihr0ghk6f8x9z38mwqy3zg29p0q69h4i6yzhxpdmxa";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/e0920232421bf177f2ab8595fab7e203f40b1a34/recipes/drawille";
- sha256 = "01rl21hbj3hwy072yr27jl6iql331v131d3mr9zifg9v6f3jqbil";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/drawille";
+ sha256 = "0nkhy00jx06a7899dgyajidah29p9536mvjr7cyqm99ari70m7y9";
name = "recipe";
};
packageRequires = [ cl-lib ];
@@ -20263,12 +21446,12 @@
melpaBuild {
pname = "dropbox";
ename = "dropbox";
- version = "20170502.1722";
+ version = "20181208.1448";
src = fetchFromGitHub {
owner = "pavpanchekha";
repo = "dropbox.el";
- rev = "d85bbf6caa4203d6088ea29f5c057c1e9bcacd85";
- sha256 = "15fg46pb64sz17sz3bqcpvg0nlsy4fs7ppzdq7q1686q3ihczk31";
+ rev = "9fcb70c3e4e32b1612644d65e3b98f00255a40d4";
+ sha256 = "0a26cfv7ayalwgg78jm4r6m2wv1wjqy4s0y1lv6j8zv193mqzgdz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dropbox";
@@ -20339,16 +21522,16 @@
melpaBuild {
pname = "dsvn";
ename = "dsvn";
- version = "20130120.1257";
+ version = "20190316.1501";
src = fetchFromGitHub {
- owner = "emacsorphanage";
+ owner = "emacsmirror";
repo = "dsvn";
- rev = "b01e3601ac26735efa3f1fedc81e9a4f6e173635";
- sha256 = "1rfl10zqksvrry3l4g4h9gp3banmfas1n3qn9lsw8nbm259w1sf4";
+ rev = "c37d2412ba92aad647bcf5aeb151e620e8069f8d";
+ sha256 = "1bv4ivv9j5r0ax4vay1kmwv753y44qj6qprr38yh7ky0fpsml34c";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/30de78c9cf83de30093a5647976eeaf552d4b2cb/recipes/dsvn";
- sha256 = "1kgc0b8as7w1h9dsknv2h7dzr6jcrs0j0p376050pshgzcm79nm6";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/be27e728327016b819535ef8cae10020e5a07c2e/recipes/dsvn";
+ sha256 = "189navhhakmkhfc2afsls1jiaxg62wxvpmmn00jlnwlgjm97gdk3";
name = "recipe";
};
packageRequires = [];
@@ -20357,6 +21540,36 @@
license = lib.licenses.free;
};
}) {};
+ dtk = callPackage ({ cl-lib ? null
+ , dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s
+ , seq }:
+ melpaBuild {
+ pname = "dtk";
+ ename = "dtk";
+ version = "20181213.946";
+ src = fetchFromGitHub {
+ owner = "dtk01";
+ repo = "dtk";
+ rev = "7c278b81ffdced72d160e302356ac29fe592dc10";
+ sha256 = "13p53byz2fbzyam2p8v4i8c43ffsawacjdjgsris8nrqhgmi0vp6";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/39333468fb6e9493deb86511f0032610a412ec8a/recipes/dtk";
+ sha256 = "005x3j5q8dhphhh4c48l6qx7qi3jz9k02m86ww1bzwfzji55p9sp";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib dash emacs s seq ];
+ meta = {
+ homepage = "https://melpa.org/#/dtk";
+ license = lib.licenses.free;
+ };
+ }) {};
dtrace-script-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -20389,12 +21602,12 @@
melpaBuild {
pname = "dtrt-indent";
ename = "dtrt-indent";
- version = "20180628.1438";
+ version = "20190128.1301";
src = fetchFromGitHub {
owner = "jscheid";
repo = "dtrt-indent";
- rev = "084dac7ab36a89d2a7d6cb8f443b1eccbfd189e2";
- sha256 = "1afb7la1nfymhi9pzf00r3hf8w6h7scv22vps8jbijg27kvssk9k";
+ rev = "9ab9cb9d7f391fb09f61c9289c51c36374ddbcbb";
+ sha256 = "0pgf0pvqd8k4yzhdn2df9lp0y8hmlm2ccrh07jivwlccs95pcz7z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/61bcbcfa6c0f38a1d87f5b6913b8be6c50ef2994/recipes/dtrt-indent";
@@ -20496,12 +21709,12 @@
melpaBuild {
pname = "dumb-jump";
ename = "dumb-jump";
- version = "20180615.2114";
+ version = "20190327.1027";
src = fetchFromGitHub {
owner = "jacktasia";
repo = "dumb-jump";
- rev = "cad3c4040be06703a9b40aa36ba38f1dc0927a66";
- sha256 = "175nwn616xqhwayn78acf6ivkxdh3z1vfb0ihslidq1s3xsg5ypk";
+ rev = "6988b21a08b53fbfeaa6e0b0f182524257dec1e4";
+ sha256 = "1a0zs58j1027pllssb3pai2654wbvdbf2g0y3dqbg35gfqanaizp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dumb-jump";
@@ -20539,6 +21752,31 @@
license = lib.licenses.free;
};
}) {};
+ dune = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "dune";
+ ename = "dune";
+ version = "20190327.120";
+ src = fetchFromGitHub {
+ owner = "ocaml";
+ repo = "dune";
+ rev = "23f6db7f970293a992006025fcaea018e6485546";
+ sha256 = "1nzq3rrkz10gmvppdhwvhgf8nh1x912xizwn6nlj7qffin588r16";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/06648d1d37767cbdc7588d7a8f709d679d478a3b/recipes/dune";
+ sha256 = "1lqza4fjm9xxmdn8040bvsl467qzjy709dlmiq2241gfhxpmvvr7";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/dune";
+ license = lib.licenses.free;
+ };
+ }) {};
duplicate-thing = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -20546,12 +21784,12 @@
melpaBuild {
pname = "duplicate-thing";
ename = "duplicate-thing";
- version = "20120515.948";
+ version = "20181031.800";
src = fetchFromGitHub {
owner = "ongaeshi";
repo = "duplicate-thing";
- rev = "f6ed0232fd0653621afe450d53775a32a9d0e328";
- sha256 = "1qaiwm8mf4656gc1pdj8ivgy4abkjsypr52pvf4nrdkkln9qzfli";
+ rev = "9d8fd05e3e5caa35d3f2a0c0032c92f0c0908e21";
+ sha256 = "05lflc0r84c95vb81wbn44kh11cbgm42zn3y4ss0ychbf13mzdb5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/be28db1bfbd663af5b5c24bad50372fddd341982/recipes/duplicate-thing";
@@ -20599,15 +21837,15 @@
melpaBuild {
pname = "dyalog-mode";
ename = "dyalog-mode";
- version = "20180605.1413";
+ version = "20190305.137";
src = fetchhg {
url = "https://bitbucket.com/harsman/dyalog-mode";
- rev = "b2322f244c76";
- sha256 = "0vgi6cw14fp8iihzmnk7jifdlbqhhcgnh26r30mnvsbycmbnvf0r";
+ rev = "6f2a9d8f86be";
+ sha256 = "1hgn86mgi0xaa3s85f5kn7crdhirghfq62ri3wn0ywkg6jc0bln6";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/dyalog-mode";
- sha256 = "1y17nd2xd8b3mhaybws8dr7yanzwqij9gzfywisy65ckflm9kfyq";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/dyalog-mode";
+ sha256 = "0w61inyfvxiyihx5z9fk1ckawcd3cr6xiradbbwzmn25k99gkbgr";
name = "recipe";
};
packageRequires = [ cl-lib emacs ];
@@ -20623,12 +21861,12 @@
melpaBuild {
pname = "dylan-mode";
ename = "dylan-mode";
- version = "20160405.1514";
+ version = "20190108.1900";
src = fetchFromGitHub {
owner = "dylan-lang";
repo = "dylan-mode";
- rev = "7e8ba16bf125f0066d3e1caeefaba94a6d32ac72";
- sha256 = "0fxdv594k6p4kv6nc598rw51sy4x10dvbyhzn3gni2linb3v1c5h";
+ rev = "9a6ad5ff83f2dfc25ce3deee9d3ef71ed53964b5";
+ sha256 = "1d6krgiabkrj3mryaz79vmiqy0vkr5s8ji34yjd14v73ikzwxwkp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/94481ba3ebba6a99f11efab5a33e8bc6ea2d857a/recipes/dylan-mode";
@@ -20969,12 +22207,12 @@
melpaBuild {
pname = "eacl";
ename = "eacl";
- version = "20180607.658";
+ version = "20190206.1725";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "eacl";
- rev = "ccf1401b1acff67fe445c95e8be7b09e8c3ae5d8";
- sha256 = "0v02asdmhj5la9nqck2230s04gf518cjs7wa4lykf8j46bc13vac";
+ rev = "fe0091e62927e43e6ae2017e5170bc9c2272164b";
+ sha256 = "00zlb0lp16crqgp87fnmadphqrx1wc3lndcam4f3apcnxp1dybbg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8223bec7eed97f0bad300af9caa4c8207322d39a/recipes/eacl";
@@ -21046,12 +22284,12 @@
melpaBuild {
pname = "easy-hugo";
ename = "easy-hugo";
- version = "20180719.20";
+ version = "20181202.31";
src = fetchFromGitHub {
owner = "masasam";
repo = "emacs-easy-hugo";
- rev = "8bf48b973905c4ab488633226b3dfb3317d8c745";
- sha256 = "0yjxg1mql7ha6wa5wdkngs6y3lqz5y5y0hbsmpvqdw61paqm2ggs";
+ rev = "e7b6c75a7e46290d9d0cdac9ec56fbf35a6b9c98";
+ sha256 = "1xhyky1593qxq7kfbv2ighx957w5pizkki0q77nrvjxlwbqghgz2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/easy-hugo";
@@ -21072,12 +22310,12 @@
melpaBuild {
pname = "easy-jekyll";
ename = "easy-jekyll";
- version = "20180513.1107";
+ version = "20181202.145";
src = fetchFromGitHub {
owner = "masasam";
repo = "emacs-easy-jekyll";
- rev = "84c19d0380617ce2e40a2b42ce9bedf65e52779d";
- sha256 = "1vbb60vb98nqbwrxl6p3gcvjpnjlscp0hp4k53rcgjd75w9vbnsj";
+ rev = "5ee52c0bb01336a03a8f07e072841caf13f86c0a";
+ sha256 = "1xibnw3jmmwrc1z7hnifjzhq4mn2834lk7f22x7rwh857iamlply";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c3f281145bad12c27bdbef32ccc07b6a5f13b577/recipes/easy-jekyll";
@@ -21099,12 +22337,12 @@
melpaBuild {
pname = "easy-kill";
ename = "easy-kill";
- version = "20151030.2229";
+ version = "20181114.1530";
src = fetchFromGitHub {
owner = "leoliu";
repo = "easy-kill";
- rev = "af565684a71b24be1f602fda5b986d841fc33b3a";
- sha256 = "1l4wl9wyjgcvl44iziicz9kzhvdw8pz1hzgd41bbmwj7jrfb3fqv";
+ rev = "2a6309d98aa6b71df6bbbcdf15cab3187c521a6b";
+ sha256 = "1j8hl0f52fqb21775xn94sf9g12yqyg6z0ibgmxzmnl02ir4xr86";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7d0a74c2a7d8859e9311bc8d71f5e6cf5a8063b6/recipes/easy-kill";
@@ -21125,12 +22363,12 @@
melpaBuild {
pname = "easy-kill-extras";
ename = "easy-kill-extras";
- version = "20161028.504";
+ version = "20180920.634";
src = fetchFromGitHub {
owner = "knu";
repo = "easy-kill-extras.el";
- rev = "e60a74d7121eff7c263098aea2901cc05a5f6acd";
- sha256 = "1rabkb2pkafnfx68df1zjwbj8bl7361n35lvzrvldc3v85bfam48";
+ rev = "b8ce8350cc86e0229f195082557970cd51def960";
+ sha256 = "1f8db92zzk8g8yyj0g334mdbgqmzrs8xamm1d24jai1289hm29xa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7b55d93f78fefde47a2bd4ebbfd93c028fab1f40/recipes/easy-kill-extras";
@@ -21224,30 +22462,28 @@
license = lib.licenses.free;
};
}) {};
- ebib = callPackage ({ dash
- , emacs
+ ebib = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
, lib
, melpaBuild
- , parsebib
- , seq }:
+ , parsebib }:
melpaBuild {
pname = "ebib";
ename = "ebib";
- version = "20180428.1401";
+ version = "20190404.546";
src = fetchFromGitHub {
owner = "joostkremers";
repo = "ebib";
- rev = "212dea4a52f04eaa1d13a895fffea04f5884f12b";
- sha256 = "150dggfk79pk11qlzfl2sk1xaibdy0sbh6n94r7i2w235p2yg8p5";
+ rev = "6c1200a7e53ca192b3765f81006b586c557ab993";
+ sha256 = "1nbgjhd7whcr96szzjddynvyvm70qdrc92q82m8nkz9z2v514kz1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4e39cd8e8b4f61c04fa967def6a653bb22f45f5b/recipes/ebib";
sha256 = "1kdqf5nk9l6mr3698nqngrkw5dicgf7d24krir5wrcfbrsqrfmid";
name = "recipe";
};
- packageRequires = [ dash emacs parsebib seq ];
+ packageRequires = [ emacs parsebib ];
meta = {
homepage = "https://melpa.org/#/ebib";
license = lib.licenses.free;
@@ -21291,12 +22527,12 @@
melpaBuild {
pname = "eclim";
ename = "eclim";
- version = "20171113.1754";
+ version = "20181108.334";
src = fetchFromGitHub {
owner = "emacs-eclim";
repo = "emacs-eclim";
- rev = "4f27d04c30a026f24c0ff18c3a7d36e3fb5b57a5";
- sha256 = "1krrm123vzv6hw54kbkbh1xj6j090rdm4r2fcqp76b3hg8j8cpn1";
+ rev = "23f5b294f833ce58516d7b9ae08a7792d70022a1";
+ sha256 = "17q972354nkkynfjmwih4vp7s5dzdvr3nf7ni3ci095lzb0zzf4g";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e9d3075587fbd9ca188535fd945a7dc451c6d7e/recipes/eclim";
@@ -21316,12 +22552,12 @@
melpaBuild {
pname = "eclipse-theme";
ename = "eclipse-theme";
- version = "20160430.322";
+ version = "20190122.218";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "eclipse-theme";
- rev = "dc54d9312d97210823b922038076e2b1b132eff2";
- sha256 = "03yyagd37l9kgdnkqrkvrcgp5njyl4an0af7cfmcdnpyjghczf4d";
+ rev = "485cc1e7bd7eb6a42c6db803f4170ec4da18fc28";
+ sha256 = "0bp9ci7024sdayar2dpmgax200ipxg5wajw3d2vdj3f5v9qcyxsj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/81fcf3536ead18a91400f6936b3f789b4b594b9c/recipes/eclipse-theme";
@@ -21430,16 +22666,16 @@
melpaBuild {
pname = "edbi-django";
ename = "edbi-django";
- version = "20180627.300";
+ version = "20190212.617";
src = fetchFromGitHub {
owner = "proofit404";
repo = "edbi-django";
- rev = "5fe3fe82c8691af91dfc24ad3dc591ca228ec875";
- sha256 = "1ssznmfgr0g497j1syikzj8yndnjby7225fskkd5x2z3krjgs4id";
+ rev = "9b73db66c02a222fc62dc3bc590962f58c5b43d8";
+ sha256 = "1yinm4qzwpdmr4a0isbkiw6ny23gllajcppwh7g0d62di3v242dm";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/345cafbf5358f8179bcbcb895cace75f289c02f1/recipes/edbi-django";
- sha256 = "1s59hab35hwnspyklxbhi0js0sgdn0rc7y33dqjk0psjcikqymg1";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/10dd853022ab93e345761b04d760b3763f4d2384/recipes/edbi-django";
+ sha256 = "02vcbqgkvhlw9msf65777f85c8myxr95g2dz199nlfmz4vpqrkgq";
name = "recipe";
};
packageRequires = [ edbi emacs pythonic ];
@@ -21536,16 +22772,16 @@
melpaBuild {
pname = "ede-php-autoload";
ename = "ede-php-autoload";
- version = "20170428.933";
+ version = "20180901.555";
src = fetchFromGitHub {
- owner = "stevenremot";
+ owner = "emacs-php";
repo = "ede-php-autoload";
- rev = "65e502602dbc623257a820245d41f94cf2e1f07d";
- sha256 = "1569g3rnklxnnknrs9nmyjk9axrdhpr9pcz2ma925sb388jyrf5r";
+ rev = "8a4eeeaa93b8d87b65a107c4ebcbeb14528d9449";
+ sha256 = "109cys3d4pfaa2c6gb33p5b40cd6wmisx63w20cxpj86drx8iabf";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/8ee9f7fd9cbc3397cd9af34b08b75c3d9d8bc551/recipes/ede-php-autoload";
- sha256 = "0b7qbighncipgfaksvggpyldc5h0wxbjbiyaghglvycc4p1sfjd0";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/afc7ddfcf16e92889e54f30599b576a24823f60d/recipes/ede-php-autoload";
+ sha256 = "1255a1drpb50650i0yijahbp97chpw89mi9fvdrk3vf64xlysamq";
name = "recipe";
};
packageRequires = [];
@@ -21773,12 +23009,12 @@
melpaBuild {
pname = "edit-server";
ename = "edit-server";
- version = "20180120.752";
+ version = "20181016.425";
src = fetchFromGitHub {
owner = "stsquad";
repo = "emacs_chrome";
- rev = "de3b6483362637beeb185192bc92f23e75a15b82";
- sha256 = "06w0v2a3f2mjbhj206fdmpnisqj612swxrzg2zznk8hrgsimbnhl";
+ rev = "81eb5211f79cf5a2234b7a932f6006d27d506aa5";
+ sha256 = "0s30a2rr89qcw798xswmg2nnxhjf2rfl1z474vb37db22qnlnzgz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d98d69008b5ca8b92fa7a6045b9d1af86f269386/recipes/edit-server";
@@ -21818,6 +23054,7 @@
};
}) {};
editorconfig = callPackage ({ cl-lib ? null
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -21825,19 +23062,19 @@
melpaBuild {
pname = "editorconfig";
ename = "editorconfig";
- version = "20180708.228";
+ version = "20190405.705";
src = fetchFromGitHub {
owner = "editorconfig";
repo = "editorconfig-emacs";
- rev = "cc5a99005d6f3834cbc7acf78a517044c5dcdad6";
- sha256 = "05pkligzkvd7imn93mxcdsrmdsjarx5309hg0cyrxra76rngx2yv";
+ rev = "df102f4eee98c541fd855cd7acc82aba206e3222";
+ sha256 = "0wlna9d22qn6ly1in0w8pd9np7p65f2hglpimm7n8lr3485q2sdd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/50d4f2ed288ef38153a7eab44c036e4f075b51d0/recipes/editorconfig";
sha256 = "0zv96m07ml8i3k7zm7sdci4hn611n3ypna7zppfkwbdyr7d5k2gc";
name = "recipe";
};
- packageRequires = [ cl-lib ];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://melpa.org/#/editorconfig";
license = lib.licenses.free;
@@ -21877,12 +23114,12 @@
melpaBuild {
pname = "editorconfig-custom-majormode";
ename = "editorconfig-custom-majormode";
- version = "20180507.1942";
+ version = "20180815.1944";
src = fetchFromGitHub {
owner = "10sr";
repo = "editorconfig-custom-majormode-el";
- rev = "ae613f0a56364afbbab19d4377c108406d5cfc7c";
- sha256 = "0sm3xdysnqzc6nc2n7rcnr478l7qdy7bv8rhq500240aprzv63y4";
+ rev = "13ad1c83f847bedd4b3a19f9df7fd925853b19de";
+ sha256 = "1zagd6cliwm8xyhzfvpi7n7m58k78wv4ihc2snq00v7321jjh9bp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fcd47bf4630442ad1a941ad432cef64c7746aa71/recipes/editorconfig-custom-majormode";
@@ -21922,6 +23159,32 @@
license = lib.licenses.free;
};
}) {};
+ editorconfig-generate = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "editorconfig-generate";
+ ename = "editorconfig-generate";
+ version = "20181115.2235";
+ src = fetchFromGitHub {
+ owner = "10sr";
+ repo = "editorconfig-generate-el";
+ rev = "2921b53700dedf16b57d684439add187663954cd";
+ sha256 = "0dqmq0hq603r2qn4wjdzlmsv4csci8d36i259jmwf71v8m1j4rc7";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/dc1cfe5ce6bc3d247c5b7730ac6cb2d6c6198a0c/recipes/editorconfig-generate";
+ sha256 = "1xfm3vnr5ngi1vihs7cack8a6zyipvdq260v43cr0y8dqg3sn89i";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/editorconfig-generate";
+ license = lib.licenses.free;
+ };
+ }) {};
edn = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -22000,14 +23263,14 @@
ename = "efire";
version = "20151009.1331";
src = fetchFromGitHub {
- owner = "capitaomorte";
+ owner = "joaotavora";
repo = "efire";
rev = "d38dd6dd7974b7cb11bff6fd84846fd01163211a";
sha256 = "15sc4648lkxsgv2frcfb878z86a7vynixsp1x5i5rg66bd9gzhfy";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/39dc592e92f0377a354d1b17f42172409a836484/recipes/efire";
- sha256 = "1c8vdc58i0k7vvanwhckfc31226d3rb5xq77lh9ydgnd4i97gq2w";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/efire";
+ sha256 = "0dhgms6s0c889xx75khn1mqfn8i32z4rjlx2w7i0chm2abxbgd3m";
name = "recipe";
};
packageRequires = [ circe ];
@@ -22050,12 +23313,12 @@
melpaBuild {
pname = "egg";
ename = "egg";
- version = "20180713.218";
+ version = "20181125.2100";
src = fetchFromGitHub {
owner = "byplayer";
repo = "egg";
- rev = "5bf9879eec067e25a60f2363137c9e69f7b5cc68";
- sha256 = "0k7j76hqgnlci944vz1gbyifqd4fh6agmpmf5a883vimw5fpm2q9";
+ rev = "00e768a78ac3d25f457eed667d02cac568480bf9";
+ sha256 = "1ak23v9gqj6x104mzgihn0hi7w0kr76q1sl929wmbb9h8s3a54q8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a1c97870c2641d73685f07a12f010530cc186544/recipes/egg";
@@ -22075,16 +23338,16 @@
melpaBuild {
pname = "egison-mode";
ename = "egison-mode";
- version = "20160603.103";
+ version = "20181109.824";
src = fetchFromGitHub {
- owner = "egisatoshi";
- repo = "egison3";
- rev = "0f8289294b1a8de029f89643438e8384e7ee789f";
- sha256 = "1rkxz4gj11z1jpd3g71m6sbzb5j4ggm6sixk3r18wb8wv91v4fgs";
+ owner = "egison";
+ repo = "egison";
+ rev = "ddc6d910be421d891efc8c7c033b99b10364c4c3";
+ sha256 = "1rw5xjs4hnikj2swskczxn3x31811znsgzj72b975zbmd5vp98kd";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/f543dd136e2af6c36b12073ea75b3c4d4bc79769/recipes/egison-mode";
- sha256 = "0x11fhv8kkx34h831k2q70y5qfz7wnfia4ka5mbmps7mpr68zcwi";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/egison-mode";
+ sha256 = "0bch4863l9wxrss63fj46gy3nx3hp635709xr4c2arw0j7n82lzd";
name = "recipe";
};
packageRequires = [];
@@ -22096,25 +23359,26 @@
eglot = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
+ , flymake ? null
, jsonrpc
, lib
, melpaBuild }:
melpaBuild {
pname = "eglot";
ename = "eglot";
- version = "20180722.1107";
+ version = "20190213.124";
src = fetchFromGitHub {
owner = "joaotavora";
repo = "eglot";
- rev = "8d61ecaa8c38a02322c281ac7072e2884d63012f";
- sha256 = "0bcs97irg1qqsnjyby0ncm0kl64yrri3vgicfyakl978pixz5hr7";
+ rev = "7d6e3cf5d7ae098aa6c8572343c8bc9b8453aace";
+ sha256 = "1q616yp9zi9a76sjb9f901r4cck40p8f5rgxmdwsavagl5w8d8cz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6c644530eca56f93d94fac2c9d7663c35c2b8c01/recipes/eglot";
sha256 = "17w39hcgv4p49g841qaicjdx7xac72yxvsc83jf1rrakg713pj7y";
name = "recipe";
};
- packageRequires = [ emacs jsonrpc ];
+ packageRequires = [ emacs flymake jsonrpc ];
meta = {
homepage = "https://melpa.org/#/eglot";
license = lib.licenses.free;
@@ -22159,11 +23423,11 @@
melpaBuild {
pname = "eide";
ename = "eide";
- version = "20180626.1259";
+ version = "20190108.1316";
src = fetchgit {
url = "https://framagit.org/eide/eide.git";
- rev = "6bd4c3b67a532527b3514c72bf2d7371172b8a93";
- sha256 = "1jrbvzf7mk8jpdm3i9vipq9wsgny3ni896s12n68d9chby5cj65n";
+ rev = "3b6d48df2cc1731812b5bd72d11c205dee17b930";
+ sha256 = "1jl0fyiqiqqd9wf2cdk8l6fbnnbq72np6d2n6kya0gk4afj5kr6g";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a42244392719c620b47bc43a7a8501dab4b6f74e/recipes/eide";
@@ -22208,21 +23472,22 @@
, fetchFromGitHub
, fetchurl
, lib
+ , markdown-mode
, melpaBuild
+ , polymode
, request
- , request-deferred
, s
, skewer-mode
, websocket }:
melpaBuild {
pname = "ein";
ename = "ein";
- version = "20180626.1257";
+ version = "20190404.1625";
src = fetchFromGitHub {
owner = "millejoh";
repo = "emacs-ipython-notebook";
- rev = "cfd9c641c0c517738f33b7ead6de34d755ba24b1";
- sha256 = "03csx3pbgbch2s5kkckczcxd5gqghapgvhz71jihxqxsal1r6mzn";
+ rev = "5accc13b518b0db584b8a1a0b782dbc3171f4ec6";
+ sha256 = "02m062f2nj3giccbfq7cl3i4qm19rbcyzan42q3w5hqm4y0zy8zc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/215e163755fe391ce1f049622e7b9bf9a8aea95a/recipes/ein";
@@ -22234,8 +23499,9 @@
cl-generic
dash
deferred
+ markdown-mode
+ polymode
request
- request-deferred
s
skewer-mode
websocket
@@ -22278,12 +23544,12 @@
melpaBuild {
pname = "eink-theme";
ename = "eink-theme";
- version = "20170717.807";
+ version = "20190219.58";
src = fetchFromGitHub {
owner = "maio";
repo = "eink-emacs";
- rev = "4c990bb3428f725735fa1f733ef4c5ad61f632b0";
- sha256 = "0jxs36qdsx58ni5185qyi1c7gchyla3dpv4v9drj1n072ls82ld4";
+ rev = "326b07523dcb076d6209cdbc7fdbb73df296dbdb";
+ sha256 = "1s5w45p0in2ljrbhc7nsc0ppff5wybzwrwv60z1a6dnd8d679qfj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a1349c3f93ab60983f77c28f97048fa258b612a6/recipes/eink-theme";
@@ -22309,16 +23575,16 @@
melpaBuild {
pname = "ejc-sql";
ename = "ejc-sql";
- version = "20180701.1105";
+ version = "20190404.411";
src = fetchFromGitHub {
owner = "kostafey";
repo = "ejc-sql";
- rev = "f957bb5e1e9e1aab0c7f1770f5e8144b9c26c93f";
- sha256 = "09556l03wvszx9dpndcp3rz72r0yfg1s79b84zmrbliwyq740xbz";
+ rev = "8afdb7e8a28f916149b53345816e50667d4441b8";
+ sha256 = "1imc324b862d92yl7n9bqr92k1d1d7pnls73xy4q8lfrllik0ja2";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/8f2cd74717269ef7f10362077a91546723a72104/recipes/ejc-sql";
- sha256 = "0v9mmwc2gm58nky81q7fibj93zi7zbxq1jzjw55dg6cb6qb87vnx";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e01655679087504db1206b22435ba8eb7050aa23/recipes/ejc-sql";
+ sha256 = "13i55l6hwsxbmdxmvh6aajayivgskw4iagmj9in1qkd9rnrykhn9";
name = "recipe";
};
packageRequires = [ auto-complete clomacs dash direx emacs spinner ];
@@ -22385,12 +23651,12 @@
melpaBuild {
pname = "el-get";
ename = "el-get";
- version = "20180610.1821";
+ version = "20181005.1925";
src = fetchFromGitHub {
owner = "dimitri";
repo = "el-get";
- rev = "8e96907b8b2a95485b8e1e5a450510513ed9e524";
- sha256 = "0xzkgzhdr1dda95wx6i8ygb9wylxjm2j7n53mldz2gigswl6lsja";
+ rev = "08005ef89b468aae2269021a82c7edca3dadb438";
+ sha256 = "07pljkgg4na929hdw8kaddf3z9a7m0dspmgrdqf1b0mw1xg7cl58";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1c61197a2b616d6d3c6b652248cb166196846b44/recipes/el-get";
@@ -22495,12 +23761,12 @@
melpaBuild {
pname = "el-patch";
ename = "el-patch";
- version = "20180720.821";
+ version = "20190127.1455";
src = fetchFromGitHub {
owner = "raxod502";
repo = "el-patch";
- rev = "aaa4c4c1afaa48da9da210010f5131affbff720a";
- sha256 = "04hmhnx854519k53b8r04zmd21hi9bgs9j5yphv7kizn0cpbrjka";
+ rev = "879094151fa1b4d96435b92c53751b0b761ba46c";
+ sha256 = "1jn1mp0zhiyqgx6c4ywkq098c9k1pfzq128f2aq7a5vin4558s7p";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2f4f57e0edbae35597aa4a7744d22d2f971d5de5/recipes/el-patch";
@@ -22701,12 +23967,12 @@
melpaBuild {
pname = "el2org";
ename = "el2org";
- version = "20180311.855";
+ version = "20190313.651";
src = fetchFromGitHub {
owner = "tumashu";
repo = "el2org";
- rev = "81f1c97db8911f5bdf92c729630ab509de4ec73f";
- sha256 = "152y6a6qjch2w84axghzcqiswhx1cq5bq1r1gjfffh41wsddqb53";
+ rev = "d9792a9a861d4d43b0d3aefb2ec9268a6fbc83bc";
+ sha256 = "169fgx42n2s4gr6mq3zffxgdvkawvbyd6xja3djmp0yi8k85jazl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/el2org";
@@ -22731,13 +23997,13 @@
version = "20180316.643";
src = fetchFromGitHub {
owner = "NicolasPetton";
- repo = "Elbank";
+ repo = "elbank";
rev = "6dbd21e31fdf7cf62491f6d24b8198d4f91a031b";
sha256 = "1krqvwh6a4cqbqawmydq16ardnn6ddf7wm5605794j145dd2268v";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/05d252ee84adae2adc88fd325540f76b6cdaf010/recipes/elbank";
- sha256 = "1ry84aiajyrnrspf7w4yjm0rmdam8ijrz0s7291yr8c70hslc997";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/elbank";
+ sha256 = "1i1cdywcbdj9ykfczbagrqdpgf3c88f1kc0mdlj8mzyvjixx7mhk";
name = "recipe";
};
packageRequires = [ emacs seq ];
@@ -22785,12 +24051,12 @@
melpaBuild {
pname = "elcord";
ename = "elcord";
- version = "20180411.1207";
+ version = "20190321.1145";
src = fetchFromGitHub {
owner = "Mstrodl";
repo = "elcord";
- rev = "0cef4ca13b00d79507292d5591be8ffb7df5a9ca";
- sha256 = "1571r8iwrf4dagjr2pv7dgs1i0f20nq6jdkxm2dlwvkblcnlx3fm";
+ rev = "17d3e5b95e68d1b6c396ba0decd94a85226f6504";
+ sha256 = "1rhz34bwmjvi98yl9fq4did2pj62v3zpdyr1ryb9yfaz6b59baga";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cf2c52366a8f60b68a33a40ea92cc96e7f0933d2/recipes/elcord";
@@ -22813,12 +24079,12 @@
melpaBuild {
pname = "elcouch";
ename = "elcouch";
- version = "20180529.57";
+ version = "20180809.236";
src = fetchFromGitHub {
owner = "DamienCassou";
repo = "elcouch";
- rev = "608fe254a7ee69c43c69b905ef708189dc3e3192";
- sha256 = "0bn8xh3i962l8jzv33mmrd22fbig19bjw89hz9by5xa35q1nnvf5";
+ rev = "1491b04d2aa4a15dd61ef8df1710fd6724f0f384";
+ sha256 = "0a72nwy48sh97g75m3paj2h61j4a9jhar6n5jj6n0jk8jdrc0wwj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b5d9a35dd5a272a592d248993ea7e5dda8fdf0ab/recipes/elcouch";
@@ -22831,6 +24097,58 @@
license = lib.licenses.free;
};
}) {};
+ eldoc-box = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "eldoc-box";
+ ename = "eldoc-box";
+ version = "20190305.1306";
+ src = fetchFromGitHub {
+ owner = "casouri";
+ repo = "eldoc-box";
+ rev = "0d671026b923cef0b2e9f6e9339fa8b1de59543f";
+ sha256 = "02pqfdx8jxy5sn4iqamiqmkdllfdz56s1x9hh9qc6psxpjrb38m3";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aac2e64f9e0d06b95bdf0dece214263f75470ea8/recipes/eldoc-box";
+ sha256 = "11720hi2gvjwc4x2yrxnrhh76wf3sj3yd0vaa3sc22xa5g1wi40r";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/eldoc-box";
+ license = lib.licenses.free;
+ };
+ }) {};
+ eldoc-cmake = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "eldoc-cmake";
+ ename = "eldoc-cmake";
+ version = "20190323.548";
+ src = fetchFromGitHub {
+ owner = "ikirill";
+ repo = "eldoc-cmake";
+ rev = "1347b4bd643e8011094c4036a397b0acc4d879d7";
+ sha256 = "0m2shpwh55dl1ymmin638ldwkpi5n62iljszlfi5gjwyshd58db5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e19f92097e6003a893907aa46a2df755d2bf0b87/recipes/eldoc-cmake";
+ sha256 = "1y47zhxgisvsk0kgvlwrlspmjb2a6wrxwkiahxp9fkdc58r9w7v0";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/eldoc-cmake";
+ license = lib.licenses.free;
+ };
+ }) {};
eldoc-eval = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -22838,12 +24156,12 @@
melpaBuild {
pname = "eldoc-eval";
ename = "eldoc-eval";
- version = "20180607.457";
+ version = "20190106.1200";
src = fetchFromGitHub {
owner = "thierryvolpiatto";
repo = "eldoc-eval";
- rev = "f59a1ae7ecfa97ef659c7adb93e0673419acc485";
- sha256 = "1anpshps44zx4qrkddbxd24q63fm5y93zbwmsb1l2cwbykf5s5iz";
+ rev = "4a1cf92dc5c4eca7519eb32f61b95e9e9f5755e4";
+ sha256 = "1x90yjzlilzfdkslxi5ijdqi0pcldlz2p3m6nk17b8b3mayi7zj7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/63ba2004d3db4c5a71676dca82ad880328cf6073/recipes/eldoc-eval";
@@ -22866,12 +24184,12 @@
melpaBuild {
pname = "eldoc-overlay";
ename = "eldoc-overlay";
- version = "20171219.140";
+ version = "20190222.2143";
src = fetchFromGitHub {
owner = "stardiviner";
repo = "eldoc-overlay";
- rev = "b13a5641f694cda92740ccdb1ee2c475507eb206";
- sha256 = "0zn68h4mcdd3j8jfrpaa5d8f0irdwly5wj6v6pm54xc8x14wc141";
+ rev = "cfec077d9a699c88265af2e9480d5e76a3b3f833";
+ sha256 = "0c16i6y7675rzif5gj9s6rz3nc59339yp4fn27a56sly42qfnh9f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f865b248002d6d3ba9653c2221072a4aa54cd740/recipes/eldoc-overlay";
@@ -22914,24 +24232,23 @@
, fetchFromGitHub
, fetchurl
, lib
- , melpaBuild
- , names }:
+ , melpaBuild }:
melpaBuild {
pname = "electric-operator";
ename = "electric-operator";
- version = "20180627.1012";
+ version = "20190225.2327";
src = fetchFromGitHub {
owner = "davidshepherd7";
repo = "electric-operator";
- rev = "35db75d5c2dbed1eeab4e4126ccb84714136a307";
- sha256 = "18f043wpp8y18c4q86b0r4njl5biy2jgnnvja5vvprf6karbx5z5";
+ rev = "b6aec9502fffbb7b9459665122ea3908fa70a498";
+ sha256 = "0i9rifwkir9hxxw5pqpc8b0libgjf9hz9kdbywqh2pkqjvr2ypyl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/906cdf8647524bb76f644373cf8b65397d9053a5/recipes/electric-operator";
sha256 = "043bkpvvk42lmkll5jnz4q8i0m44y4wdxvkz6hiqhqcp1rv03nw2";
name = "recipe";
};
- packageRequires = [ dash emacs names ];
+ packageRequires = [ dash emacs ];
meta = {
homepage = "https://melpa.org/#/electric-operator";
license = lib.licenses.free;
@@ -23021,12 +24338,12 @@
melpaBuild {
pname = "elfeed";
ename = "elfeed";
- version = "20180713.529";
+ version = "20190407.1454";
src = fetchFromGitHub {
owner = "skeeto";
repo = "elfeed";
- rev = "a6fc231e47f1071cd4d1363926868761f7f0bcd8";
- sha256 = "0vlyrvzwj9rxhvnl6lawck8n2slrvhb96bxaf5pv37jqidrcsvyh";
+ rev = "2f19e61a41fb732704366ca9d62aa9f0f090408a";
+ sha256 = "13mmgxi71afl7kvx8gs75smacad69ywivcp7gwjid7bpn6rd2myy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/407ae027fcec444622c2a822074b95996df9e6af/recipes/elfeed";
@@ -23052,12 +24369,12 @@
melpaBuild {
pname = "elfeed-goodies";
ename = "elfeed-goodies";
- version = "20171126.2251";
+ version = "20190128.831";
src = fetchFromGitHub {
owner = "algernon";
repo = "elfeed-goodies";
- rev = "fc0c3e72f9fcd7bbf5237f6f2323bc666e8240b4";
- sha256 = "16qkh3cp764hayj4n003sm1q673bq7b3rzf1mii5f3xp6n8i84b7";
+ rev = "95b4ea632fbd5960927952ec8f3394eb88da4752";
+ sha256 = "0mfigkp77acqlnkj07vjzbcamwxp37zqxramp1qdf95psnz177q7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e6ebb8d23961fd9bfe101f7917caa3b405493f31/recipes/elfeed-goodies";
@@ -23089,12 +24406,12 @@
melpaBuild {
pname = "elfeed-org";
ename = "elfeed-org";
- version = "20180129.507";
+ version = "20181015.400";
src = fetchFromGitHub {
owner = "remyhonig";
repo = "elfeed-org";
- rev = "b9d09a554127244d4807a3d2d90e062df63b2fd5";
- sha256 = "0szij299pfxbgqfps8njnxa2w862zzn40crsbc1ppww267dbp60j";
+ rev = "607b8bf4923a995260a072559b77bee188614a06";
+ sha256 = "1m4v5z2ciqlmnr7gfzx6cbi81ck80fvy88fd0lpnhlqj2h9k5pys";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/elfeed-org";
@@ -23117,12 +24434,12 @@
melpaBuild {
pname = "elfeed-protocol";
ename = "elfeed-protocol";
- version = "20180409.813";
+ version = "20190312.509";
src = fetchFromGitHub {
owner = "fasheng";
repo = "elfeed-protocol";
- rev = "611a1f57373e3692abf5122652ea7f6f96d3f6ec";
- sha256 = "0z9xij39p6m2855ksk40qaf830d04smhl3ag9gjb4fhzvw671k76";
+ rev = "c5faca15ccfe7e03dc4ee1372a07671c20015737";
+ sha256 = "1cdg111dgpphlpv2csv9nr5p2zjk3qss7bf0y8485nnzcin4ip9f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3f1eef8add7cd2cfefe6fad6d8e69d65696e9677/recipes/elfeed-protocol";
@@ -23145,12 +24462,12 @@
melpaBuild {
pname = "elfeed-web";
ename = "elfeed-web";
- version = "20180513.524";
+ version = "20180829.1016";
src = fetchFromGitHub {
owner = "skeeto";
repo = "elfeed";
- rev = "7e0abfee1470ae6323b559a7a9f843dd0076d622";
- sha256 = "01x4ww63lvn04c7f3ab5vx2s20xqisvv8213qwswz7vr9nxja5yi";
+ rev = "3d1c6ecbe585f9fe6ca5a97a3fc352d68f303f9e";
+ sha256 = "1bzpl6lc7kq9bph4bfz1fn19207blrnhjr2g7yinhn0nnnjmxi8i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/62459d16ee44d5fcf170c0ebc981ca2c7d4672f2/recipes/elfeed-web";
@@ -23171,12 +24488,12 @@
melpaBuild {
pname = "elgrep";
ename = "elgrep";
- version = "20180302.527";
+ version = "20181126.59";
src = fetchFromGitHub {
owner = "TobiasZawada";
repo = "elgrep";
- rev = "01aece62e7910c50cd199ebbe70511776043f499";
- sha256 = "0hlf3i2w1jmjj66ynxf7gvvq86yy3px24ww13hz849ai0lx5nazk";
+ rev = "73679c28737f8d6d34444df46bed5293d4845f82";
+ sha256 = "091ghc7grd6znsfxnwg30w9i32818j6arxgnz9fkkwizngw5v9hv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0d9ab623b2d634936a79ff6f4b98b31825d44b6d/recipes/elgrep";
@@ -23226,12 +24543,12 @@
melpaBuild {
pname = "elisp-def";
ename = "elisp-def";
- version = "20180410.224";
+ version = "20180806.23";
src = fetchFromGitHub {
owner = "Wilfred";
repo = "elisp-def";
- rev = "ff0730b8110f776862b29bf0b66e396fab2aaafb";
- sha256 = "1zdbb1mgmb8hkzsmp6l4mv61831bw8ybfsfcwalnvrw5fvfwpaik";
+ rev = "368b04da68783601b52e3169312183381871cf9e";
+ sha256 = "0l1kj7xd4332xk821z24c14lhkpcmca5gmivpb8shlk10cvjvxjw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1f027b844efdc5946d2ad80d7052a8f3b96aac3d/recipes/elisp-def";
@@ -23244,6 +24561,32 @@
license = lib.licenses.free;
};
}) {};
+ elisp-demos = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "elisp-demos";
+ ename = "elisp-demos";
+ version = "20190314.929";
+ src = fetchFromGitHub {
+ owner = "xuchunyang";
+ repo = "elisp-demos";
+ rev = "8c3ee9e83f92876606432251569fd4ce62e7e764";
+ sha256 = "1z5x0rrn8486k1vm9v0g2wvjv8q7yr2n4jrb94ayp31z547yn0q9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e1bd1c7a4576d4874a8c5fc8ab2dbc65f0e5bc8c/recipes/elisp-demos";
+ sha256 = "1571l826x8ixlqd3nkqgizkzrq37af13ihrm1rvgaf5gl0va9ik8";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/elisp-demos";
+ license = lib.licenses.free;
+ };
+ }) {};
elisp-depend = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -23251,12 +24594,12 @@
melpaBuild {
pname = "elisp-depend";
ename = "elisp-depend";
- version = "20161230.750";
+ version = "20190325.414";
src = fetchFromGitHub {
owner = "emacsorphanage";
repo = "elisp-depend";
- rev = "005fdef289fff4bd636a1deef8de6b2737e5d073";
- sha256 = "1j39b6a6qhmxpknnxx8yn3sz39ldyvf4lmvi94c4cw7pq7dmmpma";
+ rev = "6679da9a6be5a845bb4804224c8394a9bc62168f";
+ sha256 = "09xbrk1li76fwa85kvd5xpr0zswrkh51p7a62sb8g422wpaqxiwx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7ea159f0cc8c6e4b8483401a6e6687ab4ed73b7f/recipes/elisp-depend";
@@ -23355,16 +24698,16 @@
melpaBuild {
pname = "elisp-refs";
ename = "elisp-refs";
- version = "20180715.1602";
+ version = "20190323.631";
src = fetchFromGitHub {
owner = "Wilfred";
- repo = "refs.el";
- rev = "c3fefb803bd0a1b6de654dbd380a8487804789a5";
- sha256 = "1va1lgc6dhqif11wxsd3b5kzv01q7ys800sly2v605153ajafqw4";
+ repo = "elisp-refs";
+ rev = "540daaf50a88ca0e7d7c8d5f09ca383362e67baf";
+ sha256 = "1qxnli3nsh5di1rxwrylvv4k818w18rq6dvlmsrkkp08m7byi4fz";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/60891099e241ebd32d39bdcfe4953529a5a3263e/recipes/elisp-refs";
- sha256 = "16h7dccmzvmap3knnwhjq79wm82xm3whria70vq5msl2y252f6cx";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/elisp-refs";
+ sha256 = "1pj3dm2z6m24179ibl7zhr8lhan2v2rjnm3abfciwp228piz1sfz";
name = "recipe";
};
packageRequires = [ dash loop s ];
@@ -23433,16 +24776,16 @@
melpaBuild {
pname = "elixir-mode";
ename = "elixir-mode";
- version = "20180711.545";
+ version = "20190319.1144";
src = fetchFromGitHub {
- owner = "elixir-lang";
+ owner = "elixir-editors";
repo = "emacs-elixir";
- rev = "90323cd7669eb472ee1f97b9d070056ebe225d15";
- sha256 = "06kq92r9nmw95l6isc87w0yb9jmd11bm09j3hwww4sn2bv5z2686";
+ rev = "b86aab218d67d041682e50b5c939308638bb0200";
+ sha256 = "0226ing29qqvnv9yr3bkyajimqw33ihfzcqj18nq83lfhwggbp19";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/6374ced0de38d83bf99147f702f30706615480ed/recipes/elixir-mode";
- sha256 = "1dba3jfg210i2rw8qy866396xn2xjgmbcyl006d6fibpr3j4lxaf";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/elixir-mode";
+ sha256 = "0d25p6sal1qg1xsq5yk343afnrxa0lzpx5gsh72khnx2i8pi40vz";
name = "recipe";
};
packageRequires = [ emacs pkg-info ];
@@ -23485,29 +24828,56 @@
, let-alist
, lib
, melpaBuild
+ , reformatter
, s
, seq }:
melpaBuild {
pname = "elm-mode";
ename = "elm-mode";
- version = "20180114.9";
+ version = "20190222.1325";
src = fetchFromGitHub {
owner = "jcollard";
repo = "elm-mode";
- rev = "09c6e62e14a2c9afaad03a867c7a268b6bc68ab0";
- sha256 = "0vc0m5rg9py01w07pifg3fp2z9cna6y21k2xmfns7p6i5c5fjj2g";
+ rev = "b59b66a5369816c3a6d47b3702b9007431b7b4cf";
+ sha256 = "13y4xhf4czir4fdl36lk9zhn6292x0lbxhdywpq55fy9ivz4pk6q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5d1a4d786b137f61ed3a1dd4ec236d0db120e571/recipes/elm-mode";
sha256 = "1gw9szkyr1spcx7qijddhxlm36h0hmfd53b4yzp1336yx44mlnd1";
name = "recipe";
};
- packageRequires = [ dash emacs f let-alist s seq ];
+ packageRequires = [ dash emacs f let-alist reformatter s seq ];
meta = {
homepage = "https://melpa.org/#/elm-mode";
license = lib.licenses.free;
};
}) {};
+ elm-test-runner = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "elm-test-runner";
+ ename = "elm-test-runner";
+ version = "20190105.1123";
+ src = fetchFromGitHub {
+ owner = "juanedi";
+ repo = "elm-test-runner";
+ rev = "a31d567a64d86d36e3675347abd696824a731e0c";
+ sha256 = "15kgz44ylni4anz461hihrhvg24jvd7jzykqdjacsznyphfv94m9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/064db8f60438927255458a7fbd8ae871f8264d67/recipes/elm-test-runner";
+ sha256 = "1axzp93a0xmbprskql4bdfnxnmcpfnq6xf7c4x7cgn5pbd1p6inz";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/elm-test-runner";
+ license = lib.licenses.free;
+ };
+ }) {};
elm-yasnippets = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -23569,12 +24939,12 @@
melpaBuild {
pname = "elmine";
ename = "elmine";
- version = "20170511.20";
+ version = "20190212.940";
src = fetchFromGitHub {
owner = "leoc";
repo = "elmine";
- rev = "432d2f2f7cb5b533f25b993d1001abcadcebe8ed";
- sha256 = "02lsxj9zkcaiqlzy986n1f65cfyd8pkrdljgplsbd9p0w8ys0s94";
+ rev = "2f020e41940b182deeca39786a3092a2d68b5eb7";
+ sha256 = "0x2av6zjd4kkyzxm2hcwjx9x8j2fzqg85pka57hqpk2fhfhsmy3s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/elmine";
@@ -23733,12 +25103,12 @@
melpaBuild {
pname = "elpa-clone";
ename = "elpa-clone";
- version = "20170502.514";
+ version = "20190109.1540";
src = fetchFromGitHub {
owner = "dochang";
repo = "elpa-clone";
- rev = "92f4c9d3570ad002575a90d0cc4a522c203a1110";
- sha256 = "0m5w5wgyslvakcqpr3d198sy3561w2h002gflw0jp47v17hba1r7";
+ rev = "5dddbab4c27ec6aca541a1f8e9792617f10fc325";
+ sha256 = "17lbdgwg97x8q8dbghylr2j0nwb72mpfl679qb0pl9184ih27qfc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/11861edd9c7f9deebd44fd1f8ef648e7a04caf2b/recipes/elpa-clone";
@@ -23759,12 +25129,12 @@
melpaBuild {
pname = "elpa-mirror";
ename = "elpa-mirror";
- version = "20180228.1636";
+ version = "20181012.1956";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "elpa-mirror";
- rev = "6ca78e3fb69ef582da1a01f1d193e07ae8223142";
- sha256 = "0s0c5qqg1cl63kig7kc4fx9rz4kgchxc3w3ywgh5csmgwlkpg0id";
+ rev = "7b881f881a0c8a8de14161cbd3869c2a7591706c";
+ sha256 = "1hrj6jkmk5b0q40nnpadn08b4cnals48rvlqrmfshjc7gz06kjcj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d64ce7042c45f29fb394be25ce415912182bac8b/recipes/elpa-mirror";
@@ -23791,12 +25161,12 @@
melpaBuild {
pname = "elpy";
ename = "elpy";
- version = "20180720.155";
+ version = "20190406.755";
src = fetchFromGitHub {
owner = "jorgenschaefer";
repo = "elpy";
- rev = "db0ee080424ef39b4cd2782a3dbd0afccaaafd04";
- sha256 = "0gzanxwv1g2hx80qm0m8iy1apsg51hhnh9rq1hicrwyvp1wzc24r";
+ rev = "2d4a968e8fe04e6ad099c526349633105a38f608";
+ sha256 = "13nbpd79vhfp7k9da59999l49hh0k1m8n9q9mdfrk4irrglzmm89";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1d8fcd8745bb15402c9f3b6f4573ea151415237a/recipes/elpy";
@@ -23854,12 +25224,12 @@
melpaBuild {
pname = "elquery";
ename = "elquery";
- version = "20180513.1912";
+ version = "20180917.1517";
src = fetchFromGitHub {
owner = "AdamNiederer";
repo = "elquery";
- rev = "7b2e40dcae09de9074fae1a7893b82b41987106b";
- sha256 = "1sfwsccpaipa5j10114jya8327nbllywgvzhxsqml0fwpg1ifyyq";
+ rev = "eac429d8550fbf1582c57d5e16fed9f320d6eb30";
+ sha256 = "1jkbrv5r5vzqjhadb4dcgks47gaj7aavzdkzc5gjn5zv5fmm1in2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/121f7d2091b83143402b44542db12e8f78275103/recipes/elquery";
@@ -23872,6 +25242,36 @@
license = lib.licenses.free;
};
}) {};
+ elsa = callPackage ({ cl-lib ? null
+ , dash
+ , emacs
+ , f
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , trinary }:
+ melpaBuild {
+ pname = "elsa";
+ ename = "elsa";
+ version = "20190331.858";
+ src = fetchFromGitHub {
+ owner = "emacs-elsa";
+ repo = "Elsa";
+ rev = "118a943c2c447fd0f05cd2cc7ebb5dbcc222be00";
+ sha256 = "0c2rbphkzj6cjf4fgy13fim2b8r3zdic3q6pgrymlcm9am0gdkdn";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f126c49fe01a1c21aca0f45643d44ecf4c3ad95b/recipes/elsa";
+ sha256 = "0g8l61fg9krqakp6fjvm6jr1lss3mll707rknhm5d2grr6ik3lvl";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib dash emacs f trinary ];
+ meta = {
+ homepage = "https://melpa.org/#/elsa";
+ license = lib.licenses.free;
+ };
+ }) {};
elscreen = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -23880,12 +25280,12 @@
melpaBuild {
pname = "elscreen";
ename = "elscreen";
- version = "20180320.1902";
+ version = "20181008.2151";
src = fetchFromGitHub {
owner = "knu";
repo = "elscreen";
- rev = "02164afab2c5fbff6e4aa7c59e0daedc6c504772";
- sha256 = "1jzp7w2c9xl8x8kdxcchgp8s3ygvj70pi2vwwg1qilkya7yv61p0";
+ rev = "cc58337faf5ba1eae7e87f75f6ff3758675688f2";
+ sha256 = "15kffci7qlhjwz1rlr0zg0z9rq0vlsxy295dvg96wiiz4fvs4jk2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e6140694c1dea0a573586d23d1f63d46c9b22936/recipes/elscreen";
@@ -23908,12 +25308,12 @@
melpaBuild {
pname = "elscreen-buffer-group";
ename = "elscreen-buffer-group";
- version = "20170808.1825";
+ version = "20181026.2228";
src = fetchFromGitHub {
owner = "jeffgran";
repo = "elscreen-buffer-group";
- rev = "a3cd4d7eae3cca87bede4b39a46d3c0641f8cd06";
- sha256 = "0flja2j5xqhxc0qrclnxcpyzvn7gyjynfpa3mp1hb250c313igy5";
+ rev = "cd671c4a86ff6e481d24d060b4069e518940f9c9";
+ sha256 = "1nff1frlni7lbxrk26idzxlm0npzrjvfmzsv3y9nwy9v8djsiwy3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9c6fedb7b6ef58089da4b35ad115f699b4b24ff2/recipes/elscreen-buffer-group";
@@ -24034,6 +25434,34 @@
license = lib.licenses.free;
};
}) {};
+ elscreen-tab = callPackage ({ dash
+ , elscreen
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "elscreen-tab";
+ ename = "elscreen-tab";
+ version = "20190203.819";
+ src = fetchFromGitHub {
+ owner = "aki-s";
+ repo = "elscreen-tab";
+ rev = "29d7a65c3e134dd476049c9aebc8d029238e71f7";
+ sha256 = "0303i61m1qg65d3i3hsy7pzdhw0icpx3im99qkfmy6lxi4h9nd0p";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/06a8348c6911936e16a98cf216578ea148e20e5d/recipes/elscreen-tab";
+ sha256 = "18krbs462cwi3pf72kn1zf1jf4gv9n3ffdg4v5bgb19i69sq7spi";
+ name = "recipe";
+ };
+ packageRequires = [ dash elscreen emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/elscreen-tab";
+ license = lib.licenses.free;
+ };
+ }) {};
elvish-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -24042,12 +25470,12 @@
melpaBuild {
pname = "elvish-mode";
ename = "elvish-mode";
- version = "20170913.1939";
+ version = "20180809.912";
src = fetchFromGitHub {
owner = "ALSchwalm";
repo = "elvish-mode";
- rev = "9cf31b453ac79b011b84e83ca11c964c4e647649";
- sha256 = "0ryg9c8pjw98a9l4hyjqwan7kcv492vzy0xxcrcfm69zn8vnw9k0";
+ rev = "c3a7e31564256b9755b1ab9fb40d32ad78cd1ad2";
+ sha256 = "0dxa8g49fq4h1ab3sawnbgy1fxaxxsdac3l6im34qfw4km8brp9y";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0fc724072702a565af471f9ae523a1e6e48e3f04/recipes/elvish-mode";
@@ -24094,12 +25522,12 @@
melpaBuild {
pname = "elx";
ename = "elx";
- version = "20180614.1957";
+ version = "20181111.207";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "elx";
- rev = "10a21c35915e249d5487aa3ced70fcfb749a9d0c";
- sha256 = "1jl2lp4gas89vx1xjx5gzh56fhx16mvfqwqs84cpxdbwb2qzch21";
+ rev = "c554db7e7f2c0c8a503def7739b8205193ba821f";
+ sha256 = "07i739v2w5dbhyfhvfw4phcrdk5sf7ncsd47y8hkf5m4zgw4kw4n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/57a2fb9524df3fdfdc54c403112e12bd70888b23/recipes/elx";
@@ -24221,12 +25649,12 @@
melpaBuild {
pname = "emacsql";
ename = "emacsql";
- version = "20180712.1052";
+ version = "20190310.622";
src = fetchFromGitHub {
owner = "skeeto";
repo = "emacsql";
- rev = "6f1e375a2ebb558138b73d2a63f2077da1028f92";
- sha256 = "046c9jr4azfz5cfpdlp160da3z9lcff12ldlvnzraxx8bzfbxqi5";
+ rev = "5ebd12b6ffaa9fbadefe8518eab07a028bbaf7c1";
+ sha256 = "19anva1mcm89hylhdjjjsc3gc32kv2wqp5qs6h7rca059kkqj277";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9c3b6175b5c64f03b0b9dfdc10f393081d681309/recipes/emacsql";
@@ -24302,12 +25730,12 @@
melpaBuild {
pname = "emacsql-sqlite";
ename = "emacsql-sqlite";
- version = "20180128.1252";
+ version = "20190108.825";
src = fetchFromGitHub {
owner = "skeeto";
repo = "emacsql";
- rev = "62d39157370219a1680265fa593f90ccd51457da";
- sha256 = "0ghl3g8n8wlw8rnmgbivlrm99wcwn93bv8flyalzs0z9j7p7fdq9";
+ rev = "60b99760c59afa58dc0241e0468e6fc40b8f199b";
+ sha256 = "0l376j85q7fnlz35db22vrz618g2d94j0qa21kl3cna81n8wpr5z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3cfa28c7314fa57fa9a3aaaadf9ef83f8ae541a9/recipes/emacsql-sqlite";
@@ -24431,12 +25859,12 @@
melpaBuild {
pname = "ember-mode";
ename = "ember-mode";
- version = "20171208.559";
+ version = "20190403.952";
src = fetchFromGitHub {
owner = "madnificent";
repo = "ember-mode";
- rev = "755256782478cb724edd8f111225d7c8d342f90c";
- sha256 = "02x12b26l9qyq9cmg56ys222qxbc8zldw40scq3mfhfqqk4b43g7";
+ rev = "3510afc5023d760a66aef260ba601c15a31dc878";
+ sha256 = "06y5nd2fs0xskjxhd1dn4g9y03i7xamv7jiwq8cm0c2mli5pjpr1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9ac1eef4ad87b1b6b6d8e63d340ba03dc013425b/recipes/ember-mode";
@@ -24502,6 +25930,35 @@
license = lib.licenses.free;
};
}) {};
+ emidje = callPackage ({ cider
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , magit-popup
+ , melpaBuild
+ , seq }:
+ melpaBuild {
+ pname = "emidje";
+ ename = "emidje";
+ version = "20190209.926";
+ src = fetchFromGitHub {
+ owner = "nubank";
+ repo = "emidje";
+ rev = "7e92f053964d925c97dc8cca8d4d70a3030021db";
+ sha256 = "0xg2bw9vzwvkx6xh4k2n6qhyhqg5iifl6aa0s7svvdnw35x00hv2";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/5d64b3b42b4b9acd3e9d84921df287f3217db83e/recipes/emidje";
+ sha256 = "1p2aa4wl2465gm7ljgr5lbvxfgx0g1w1170zdv3596hi07mccabs";
+ name = "recipe";
+ };
+ packageRequires = [ cider emacs magit-popup seq ];
+ meta = {
+ homepage = "https://melpa.org/#/emidje";
+ license = lib.licenses.free;
+ };
+ }) {};
emlib = callPackage ({ cl-lib ? null
, dash
, fetchFromGitHub
@@ -24562,11 +26019,11 @@
melpaBuild {
pname = "emms";
ename = "emms";
- version = "20180708.1823";
+ version = "20190221.847";
src = fetchgit {
url = "https://git.savannah.gnu.org/git/emms.git";
- rev = "9b702f38e3486d67cb67194e98ea72dda25be1af";
- sha256 = "13l0didxiagcv8rr9ifdjk92qpcghyqkqshpcr76ix4dm3mbaymk";
+ rev = "6013464eb7295fcd749b3146f758fc9295fbe11a";
+ sha256 = "0g7a31yn9p0iqr2im0l9d8fch58ffk5m7g3kfnn377pbyfh4hr11";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/emms";
@@ -24685,32 +26142,6 @@
license = lib.licenses.free;
};
}) {};
- emms-player-mpv = callPackage ({ emms
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "emms-player-mpv";
- ename = "emms-player-mpv";
- version = "20180503.1427";
- src = fetchFromGitHub {
- owner = "dochang";
- repo = "emms-player-mpv";
- rev = "9c9ffc6f00a737a6db6377681a88e5292ebcf86b";
- sha256 = "17kvkx63q30p5r2lsv6pqdm2zi8my3yn3js7j3c2qlygd9sf80pz";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/9679cb8d4b3b9dce1e0bff16647ea3f3e02c4189/recipes/emms-player-mpv";
- sha256 = "175rmqx3bgys4chw8ylyf9rk07sg0llwbs9ivrv2d3ayhcz1lg9y";
- name = "recipe";
- };
- packageRequires = [ emms ];
- meta = {
- homepage = "https://melpa.org/#/emms-player-mpv";
- license = lib.licenses.free;
- };
- }) {};
emms-player-mpv-jp-radios = callPackage ({ cl-lib ? null
, emacs
, emms
@@ -24934,12 +26365,12 @@
melpaBuild {
pname = "emojify";
ename = "emojify";
- version = "20180611.838";
+ version = "20190401.2053";
src = fetchFromGitHub {
owner = "iqbalansari";
repo = "emacs-emojify";
- rev = "38ae28d95b58e9fb86a3495a2dda3e5de254c4fc";
- sha256 = "1dk4kx5hvhcrmbhyx0ri9i934i8m3mcs76hk5h8qnbhdknmsh3rz";
+ rev = "4954a4f2cffe5c459727bee30cd221c59eacd839";
+ sha256 = "1y7swk97qllnk0lc3x8ya9lrd7d74ximjaa5pnj695knrf1ib0jn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/488d2751b5fd3bf00f5a6f0545530f44563b86d7/recipes/emojify";
@@ -24960,12 +26391,12 @@
melpaBuild {
pname = "emojify-logos";
ename = "emojify-logos";
- version = "20171125.214";
+ version = "20180814.217";
src = fetchFromGitHub {
owner = "mxgoldstein";
repo = "emojify-logos";
- rev = "96c74383a7c69e839ba41de3507154ca4ad564a1";
- sha256 = "1z2rhs2kvafcfqqvq78yb5zp0pnn9s0mhng0rymfghi704cdifm6";
+ rev = "a3e78bcbdf863092d4c9b026ac08bf7d1c7c0e8b";
+ sha256 = "1fhxf3nky9wlcn54q60f9254iawcccsrxw370q7cgpsrl1gj3dgp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/114d5596a7b36f47c150c413c6ecc74de36ca239/recipes/emojify-logos";
@@ -25016,21 +26447,20 @@
, paredit
, popup
, projectile
- , redshank
, s }:
melpaBuild {
pname = "emr";
ename = "emr";
- version = "20180708.1011";
+ version = "20180921.1415";
src = fetchFromGitHub {
- owner = "chrisbarrett";
+ owner = "Wilfred";
repo = "emacs-refactor";
- rev = "8e556aa5a932dcf21dff985c528cff41a99ba332";
- sha256 = "18m9ypdarwisksh7pyxgvp3shv2ikvqjijdgjgm0l4jz3vrflpqw";
+ rev = "8856b2ed7e45dd33a5f81e1302a2fba736c64dd6";
+ sha256 = "1swsh3ld5vlp3fx9dynri6rphpsn9i7n3amzlbzh36w0jkkjcz0m";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2cd2ebec5bd6465bffed284130e1d534f52169a9/recipes/emr";
- sha256 = "05vpfxg6lviclnms2zyrza8dc87m60mimlwd11ihvsbngi9gcw8x";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/emr";
+ sha256 = "02a7yzv6vxdazi26wk1ijadrjffd4iaf1abhpv642xib86pgpfd6";
name = "recipe";
};
packageRequires = [
@@ -25043,7 +26473,6 @@
paredit
popup
projectile
- redshank
s
];
meta = {
@@ -25110,12 +26539,12 @@
melpaBuild {
pname = "engine-mode";
ename = "engine-mode";
- version = "20180401.946";
+ version = "20181222.1227";
src = fetchFromGitHub {
owner = "hrs";
repo = "engine-mode";
- rev = "fd5a235b2c93b95143d676e6b654e388d7cdd956";
- sha256 = "0lynwd7s1mjppynh8424qk30jzcr384wvr21bqy6ylsxs19kqg0w";
+ rev = "117a9c0cbc1ff8ade7f17cd40d1d2f5eb24f51a3";
+ sha256 = "1pm6xi0bcab3mpmvy8g449d5iv8s3cjqqvm2rcnlz1d6223pszh0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ea1b5dfb6628cf17e77369f25341835aad425f54/recipes/engine-mode";
@@ -25136,12 +26565,12 @@
melpaBuild {
pname = "enh-ruby-mode";
ename = "enh-ruby-mode";
- version = "20180403.1251";
+ version = "20190407.413";
src = fetchFromGitHub {
owner = "zenspider";
repo = "enhanced-ruby-mode";
- rev = "fd50e71913e4dc714f71020701ab398a18b524b6";
- sha256 = "0al8bbhfjxqh40hkpiaziz5vsfy2m5saj7wcvs6xivz1ph5ass0b";
+ rev = "249c98e1345f71b03260dc4af747be9a7f1a8a07";
+ sha256 = "18gq393ply76hxd1k5myavzg5aayhyng89392mrhbshq437491kx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cd1ac1ce69b77b11f34c4175611a852e7ec0806c/recipes/enh-ruby-mode";
@@ -25391,12 +26820,12 @@
melpaBuild {
pname = "epkg";
ename = "epkg";
- version = "20180627.1353";
+ version = "20190314.1713";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "epkg";
- rev = "b3dac5d4596d304f17a283c5cfe9dc77989fa96a";
- sha256 = "17qdywa8qw6n8a3r4s1cbjbmh2a4vjnxp6fqhiglbbfc1xqw2p1n";
+ rev = "408d46a9d041b516e9fda0414058a287dfef37fb";
+ sha256 = "1csvjirm3w40jzpd1nqlqwv8nx5cscmwpmb2rhijj59fw12jllnc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2df16abf56e53d4a1cc267a78797419520ff8a1c/recipes/epkg";
@@ -25540,6 +26969,34 @@
license = lib.licenses.free;
};
}) {};
+ equake = callPackage ({ dash
+ , emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild
+ , tco }:
+ melpaBuild {
+ pname = "equake";
+ ename = "equake";
+ version = "20190403.1840";
+ src = fetchFromGitLab {
+ owner = "emacsomancer";
+ repo = "equake";
+ rev = "997ad912062cbdf8598d6f029319ee046649a26c";
+ sha256 = "04xzjsifam29y55wfhw29gviadp0f2pn4di6nnhrypxlir2mg3rz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/2a4a0ec11a9c720d7ed90addcb31d0a9d5594f5b/recipes/equake";
+ sha256 = "17r10d3acmhixbi24k19rx720qi8ss4v53n107arqmr04rkd1v2y";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs tco ];
+ meta = {
+ homepage = "https://melpa.org/#/equake";
+ license = lib.licenses.free;
+ };
+ }) {};
erc-colorize = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -25573,12 +27030,12 @@
melpaBuild {
pname = "erc-crypt";
ename = "erc-crypt";
- version = "20161228.739";
+ version = "20190318.1650";
src = fetchFromGitHub {
owner = "atomontage";
repo = "erc-crypt";
- rev = "731f9264a5bf08a8fc0b5ce69e72058c86f873a5";
- sha256 = "13jpq5ws5dm8fyjrskk4icxwz8k5wgh396cc8f8wxrjna4wb843w";
+ rev = "043b109409ee5b17bf06956fa46e1beb66d06ca4";
+ sha256 = "1k4y203m7d7cbgdyin3yq70ai9yw0rfln2v61xd7xa5zxvgvj2v2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a1a71b46c0370d2ed25aa3f39983048a04576ad5/recipes/erc-crypt";
@@ -25980,26 +27437,27 @@
license = lib.licenses.free;
};
}) {};
- eredis = callPackage ({ fetchFromGitHub
+ eredis = callPackage ({ dash
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "eredis";
ename = "eredis";
- version = "20180221.1313";
+ version = "20181118.1731";
src = fetchFromGitHub {
owner = "justinhj";
repo = "eredis";
- rev = "8a96034805fe0664132ce2e12deb9936503af2d4";
- sha256 = "1w4z98vr7iy6yxdk3lha7flk48ckxl2baaq8kx7abkirzfl8j4hh";
+ rev = "cfbfc25832f6fbc507bdd56b02e3a0b851a3c368";
+ sha256 = "1f2f57c0bz3c6p11hr69aar6z5gg33zvfvsm76ma11vx21qilz6i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/63f06713d06911f836fe2a4bf199b0794ac89cf0/recipes/eredis";
sha256 = "087lln2izn5bv7bprmbaciivf17vv4pz2cjl91hy2f0sww6nsiw8";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ dash ];
meta = {
homepage = "https://melpa.org/#/eredis";
license = lib.licenses.free;
@@ -26041,12 +27499,12 @@
melpaBuild {
pname = "ergoemacs-mode";
ename = "ergoemacs-mode";
- version = "20180709.645";
+ version = "20181127.1330";
src = fetchFromGitHub {
owner = "ergoemacs";
repo = "ergoemacs-mode";
- rev = "a5d46653fd3a521276630c81bf75d3e8d224e5cb";
- sha256 = "10y79z7xakjl4x95mvf8jjqxxsgkmz0k7czl0vwhk6j8c910v871";
+ rev = "cac7b5628d54fbce1b4e564fdfd36dc6b989c228";
+ sha256 = "0aimaq0crkbdpj7y01ydg052i5iqajf295nka099mi1yrbl2ppr3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/02920517987c7fc698de9952cbb09dfd41517c40/recipes/ergoemacs-mode";
@@ -26094,12 +27552,12 @@
melpaBuild {
pname = "erlang";
ename = "erlang";
- version = "20180618.557";
+ version = "20190404.228";
src = fetchFromGitHub {
owner = "erlang";
repo = "otp";
- rev = "9d5af99762b3795c763fb62c1516247bd3f8e12f";
- sha256 = "0anlp0qj2blgdjzdw8rxmpz659yzbdl3r69b6slm1c1aa77ayc17";
+ rev = "e3ca92be9f1945f50ef84631a826b431bad2bfe6";
+ sha256 = "14sbwlvn4nb33xrss9x3dn74nkzmr1gss029aycfd8sjclyzv1zn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d9cd526f43981e0826af59cdc4bb702f644781d9/recipes/erlang";
@@ -26112,6 +27570,33 @@
license = lib.licenses.free;
};
}) {};
+ erlstack-mode = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "erlstack-mode";
+ ename = "erlstack-mode";
+ version = "20190204.809";
+ src = fetchFromGitHub {
+ owner = "k32";
+ repo = "erlstack-mode";
+ rev = "0ab44afa899ee7e52e712e0a1644fb9f4d40d2a6";
+ sha256 = "1wnqzj9aycb67h9za2r97f2yflnwdr9qjg1kygr8rawxa1z7lim6";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6ee61c1c5f116082b37fb13d15052ed9bbbc1dac/recipes/erlstack-mode";
+ sha256 = "0b7mj0rs8k3hdv4v3v5vmdqs0y26mss7dzc0sjjxj4d095yddqqf";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/erlstack-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
eros = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -26188,7 +27673,8 @@
license = lib.licenses.free;
};
}) {};
- ert-junit = callPackage ({ ert ? null
+ ert-junit = callPackage ({ emacs
+ , ert ? null
, fetchgit
, fetchurl
, lib
@@ -26196,18 +27682,18 @@
melpaBuild {
pname = "ert-junit";
ename = "ert-junit";
- version = "20180511.1548";
+ version = "20181118.1456";
src = fetchgit {
url = "https://bitbucket.org/olanilsson/ert-junit";
- rev = "cd1f63627d4e6635086322f34be09ba535e26b97";
- sha256 = "0a2ddvpm8yparl3zq05mp239k5dgplcmc9s61ak9d5qn65l8mwyr";
+ rev = "b0649e94460aff5176dee5b33f28946bffb602d5";
+ sha256 = "0hj85hz4s1q4dalinhgahn8jn97s2pdpv41d9qqbvbdzwhhw2mrk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/27c627eacab54896a1363dbabc56250a65343dd8/recipes/ert-junit";
sha256 = "0bv22mhh1ahbjwi6s1csxkh11dmy0srabkddjd33l4havykxlg6g";
name = "recipe";
};
- packageRequires = [ ert ];
+ packageRequires = [ emacs ert ];
meta = {
homepage = "https://melpa.org/#/ert-junit";
license = lib.licenses.free;
@@ -26255,12 +27741,12 @@
melpaBuild {
pname = "ert-runner";
ename = "ert-runner";
- version = "20180215.857";
+ version = "20180831.445";
src = fetchFromGitHub {
owner = "rejeep";
repo = "ert-runner.el";
- rev = "0de42343a9de834320397d169c81725b2827e41f";
- sha256 = "0jc7n6mdv1kka47wmjjhgfw46l16mqlj5kkkyw16gd9g8dwcf6sr";
+ rev = "90b8fdd5970ef76a4649be60003b37f82cdc1a65";
+ sha256 = "04nxmyzncacj2wmzd84vv9wkkr2dk9lcb10dvygqmg3p1gadnwzz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0a1acc68f296e80b6ed99a1783e9f67be54ffac9/recipes/ert-runner";
@@ -26311,12 +27797,12 @@
melpaBuild {
pname = "es-mode";
ename = "es-mode";
- version = "20180212.1425";
+ version = "20181004.1517";
src = fetchFromGitHub {
owner = "dakrone";
repo = "es-mode";
- rev = "c5ad728ce3fc2c513108e0ada2cd0c08ab94f870";
- sha256 = "0drmxxqgml36fymn4gqxbjimh8dgmm4yr68hsmsd0iz1lxglgda1";
+ rev = "1b7aca9b4e9fcebf4a67682203035eaf75b692e2";
+ sha256 = "16vdy6kknwi1hxgkfrzc6jk9h41l6agyiw6k21j3dcz237ngrkhv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9912193f73c4beae03b295822bf41cb2298756e2/recipes/es-mode";
@@ -26391,12 +27877,12 @@
melpaBuild {
pname = "esh-autosuggest";
ename = "esh-autosuggest";
- version = "20171223.1855";
+ version = "20190227.2001";
src = fetchFromGitHub {
owner = "dieggsy";
repo = "esh-autosuggest";
- rev = "aa921f8975b0f95d1cb0044e6ad7f17529261610";
- sha256 = "19qhpvw5y7hvkqy8jdyrnm4m90jdxxdiaabcrjiwxmkzq3wgnx8q";
+ rev = "cdfe38ee16e1e125d37178f11a371ed7560f5b35";
+ sha256 = "1pglw16y9a68kdgyb04vl6nr0wynykwdgrkzhcis1xzhdllivkad";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dc3776068d6928fc1661a27cccaeb8fb85577099/recipes/esh-autosuggest";
@@ -26547,12 +28033,12 @@
melpaBuild {
pname = "eshell-fixed-prompt";
ename = "eshell-fixed-prompt";
- version = "20170804.635";
+ version = "20190111.1435";
src = fetchFromGitHub {
owner = "mallt";
repo = "eshell-fixed-prompt-mode";
- rev = "4351b214de6d4e8e45279930448e2f93b491848e";
- sha256 = "1zx3zn28m5dnvsnkpqd26szv9yzplnb6wyp9vfjfs3hnasrizbxc";
+ rev = "2c860029354bf1f69edc1f12e4a0d9aeb9054f5d";
+ sha256 = "1j1m661rgbfr04357wq2a7vhm04s3vrbw4r6y1k2cx2ap9amkb25";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/eshell-fixed-prompt";
@@ -26625,16 +28111,16 @@
melpaBuild {
pname = "eshell-prompt-extras";
ename = "eshell-prompt-extras";
- version = "20180109.2234";
+ version = "20181229.618";
src = fetchFromGitHub {
- owner = "hiddenlotus";
+ owner = "kaihaosw";
repo = "eshell-prompt-extras";
- rev = "1d8825dcc005b488c6366d0b3015fc6686194eea";
- sha256 = "1nqzd24wwvyzf3bn7m7vd4xqmj4p8z51h8cnli07yja17cr5gwx6";
+ rev = "5a328e1b9112c7f31ce2da7cde340f96626546b6";
+ sha256 = "0fwlvrzjygs12dcp89wy3rb3wa03mrvbzpmpvmz4x6dfpr7csznk";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/eshell-prompt-extras";
- sha256 = "0kh4lvjkayjdz5lqvdqmdcblxizxk9kwmigjwa68kx8z6ngmfwa5";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/eshell-prompt-extras";
+ sha256 = "0zkdb9a8dibk832b5hzb6wjich3l0lah5p64805rgd4qskzj10gx";
name = "recipe";
};
packageRequires = [];
@@ -26747,6 +28233,33 @@
license = lib.licenses.free;
};
}) {};
+ esonify = callPackage ({ cl-lib ? null
+ , deferred
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "esonify";
+ ename = "esonify";
+ version = "20190110.821";
+ src = fetchFromGitHub {
+ owner = "oflatt";
+ repo = "esonify";
+ rev = "bdc79d4ab2e3c449b5bef46e5cabc552beeed5c6";
+ sha256 = "03xl6a49pg3y1g3dl7fglrn956ynzj2vlviwlv08ngflvbn5shai";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/8a05dadbf515af6202d1cb96d4fdceb07bb7a6da/recipes/esonify";
+ sha256 = "0facvhl6p4v1h3magvp6lzahdzbgg7a15hbj9rgfncvfzfjzlq5a";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib deferred ];
+ meta = {
+ homepage = "https://melpa.org/#/esonify";
+ license = lib.licenses.free;
+ };
+ }) {};
espresso-theme = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -26754,16 +28267,16 @@
melpaBuild {
pname = "espresso-theme";
ename = "espresso-theme";
- version = "20170716.813";
+ version = "20181025.126";
src = fetchFromGitHub {
owner = "dgutov";
repo = "espresso-theme";
- rev = "e79c5c14732b7e34aab75dbcc968839536536c59";
- sha256 = "0jdyxyc6mk0vh35wgic8ikvs9cid7b5ffqx94pkg1kpridm2wrzc";
+ rev = "d2fa034eb833bf37cc6842017070725e0da9b046";
+ sha256 = "0fds36w6l2aaa88wjkd2ck561i0wwpxgz5ldadhbi5lvfwj9386m";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/27c929ec2eac0459c7018019702599e09ac908fd/recipes/espresso-theme";
- sha256 = "1bsff8fnq5z0f6cwg6wprz8qi3ivsqxpxx6v6fxfammn74qqyvb5";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/espresso-theme";
+ sha256 = "1njc1ppi1jvb3mdckr19kbk7g0a3dx8j4d6j101ygszzrr24ycmv";
name = "recipe";
};
packageRequires = [];
@@ -26800,6 +28313,32 @@
license = lib.licenses.free;
};
}) {};
+ espy = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "espy";
+ ename = "espy";
+ version = "20180929.902";
+ src = fetchFromGitHub {
+ owner = "walseb";
+ repo = "espy";
+ rev = "e5dadc232ad985ede2b7d68a09be4c8014ded56a";
+ sha256 = "08crl0q7xc8gx245cfylb3j5xncqviq402gizhv0lb6rs0bpsc4y";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/184718ee62f25b2bfed7d5126e02bce3290c50c4/recipes/espy";
+ sha256 = "1icyiygw7brn4lrp28szmk4kk94n5q1zlrzrl6z7y0hdhdsjflgg";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/espy";
+ license = lib.licenses.free;
+ };
+ }) {};
esqlite = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -26853,26 +28392,28 @@
license = lib.licenses.free;
};
}) {};
- ess = callPackage ({ fetchFromGitHub
+ ess = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
+ , julia-mode
, lib
, melpaBuild }:
melpaBuild {
pname = "ess";
ename = "ess";
- version = "20180720.131";
+ version = "20190407.721";
src = fetchFromGitHub {
owner = "emacs-ess";
repo = "ESS";
- rev = "167b61af2c36c300a2f1f9ecea2c670af685451b";
- sha256 = "1bcd652hq7j5azhmy470ha4279c5ld8db1gcqww65clay7gvnbkg";
+ rev = "1c2a5e9525d4bd66cf54aac087837a2f70d5bfd5";
+ sha256 = "11nkgxzykrw7cfcdb8mbrym92mna0y4lfv02fpy3l8zffcs71mcn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/156a6fa9e6ee16174d215c1dcd524aff847b3bf0/recipes/ess";
sha256 = "1psqrw9k7d2ha8zid2mkc6bgcyalrm3n53c00g3cgckkbahl7r6n";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs julia-mode ];
meta = {
homepage = "https://melpa.org/#/ess";
license = lib.licenses.free;
@@ -26915,12 +28456,12 @@
melpaBuild {
pname = "ess-smart-equals";
ename = "ess-smart-equals";
- version = "20150201.2201";
+ version = "20190203.2049";
src = fetchFromGitHub {
owner = "genovese";
repo = "ess-smart-equals";
- rev = "e0f5f18f01ed252fde50d051adf1fa6254a254c9";
- sha256 = "0ici253mllqyzcbhxrazfj2kl50brr8qid99fk9nlyfgh516ms1x";
+ rev = "746cf9e78c3b86cbbf78d69c335a8a4ff3da79d6";
+ sha256 = "1by8bzw3yl86mqzh7lwz5dca243n956jnd2rz4vilpgbh5cka2l3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4403cf87e05311d7fe0360f35f9634b9fdfc6f81/recipes/ess-smart-equals";
@@ -26941,12 +28482,12 @@
melpaBuild {
pname = "ess-smart-underscore";
ename = "ess-smart-underscore";
- version = "20170222.1715";
+ version = "20190308.1701";
src = fetchFromGitHub {
owner = "mattfidler";
repo = "ess-smart-underscore.el";
- rev = "02e8a03553f34fe7184afff97f20e560d6f8d617";
- sha256 = "0kk9n66xjm08cj6zdqxfn332fb4c2is4pdxgqamypdwsdjhcz57l";
+ rev = "aa871c5b0448515db439ea9bed6a8574e82ddb47";
+ sha256 = "0knb4zfva2m0vd8awcfy5kyd21rjdhxnc1n74qazr9y82l5w7i9b";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b4d6166f5c80cf37c79256402fa633ad2274d065/recipes/ess-smart-underscore";
@@ -26969,12 +28510,12 @@
melpaBuild {
pname = "ess-view";
ename = "ess-view";
- version = "20180525.1503";
+ version = "20181001.1030";
src = fetchFromGitHub {
owner = "GioBo";
repo = "ess-view";
- rev = "dab08b405dbda5aff71022c5cf021ea18b2bde0f";
- sha256 = "1qi7gp5aj64b7sddvcms1c1x5h7j7dcd0rw6h4liw0d0gjkq82br";
+ rev = "d4e5a340b7bcc58c434867b97923094bd0680283";
+ sha256 = "1yzki5f2k7gmj4m0871h4h46zalv2x71rbpa6glkfx7bm9kyc193";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/96960a8799138187b748a47ac007dc25d739fe10/recipes/ess-view";
@@ -26996,12 +28537,12 @@
melpaBuild {
pname = "esup";
ename = "esup";
- version = "20180506.1639";
+ version = "20180726.2042";
src = fetchFromGitHub {
owner = "jschaf";
repo = "esup";
- rev = "1182c490a7ddc275318c9eb25b8d5bbdf9b78d2b";
- sha256 = "1nkglqr42r2s0vqkj092j131a0ykjrj6qiawgw6id60yn0grhpqb";
+ rev = "5acb60e8d7a8fef854178f325682765820522b10";
+ sha256 = "0bfrnzwf1imxigd7mxisywi54h0jb79488z2hba53yplmvr80p7p";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b9d2948a42da5d4864404d2d11a924a4f235fc3b/recipes/esup";
@@ -27077,12 +28618,12 @@
melpaBuild {
pname = "eterm-256color";
ename = "eterm-256color";
- version = "20180520.523";
+ version = "20190122.2001";
src = fetchFromGitHub {
owner = "dieggsy";
repo = "eterm-256color";
- rev = "ef99d3a12ddce4aa06069c19e66e826f4cfc91e4";
- sha256 = "1q1m125qwga8397qx5ln326aw3x8vi2y8w065w0zccxrq7n21ds4";
+ rev = "0f0dab497239ebedbc9c4a48b3ec8cce4a47e980";
+ sha256 = "00ins8n92p5aspr6bjrvn5y5w0ximakk22yklsfmkav4h10al4as";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e556383f7e18c0215111aa720d4653465e91eff6/recipes/eterm-256color";
@@ -27205,25 +28746,24 @@
eval-sexp-fu = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
- , highlight
, lib
, melpaBuild }:
melpaBuild {
pname = "eval-sexp-fu";
ename = "eval-sexp-fu";
- version = "20180509.1903";
+ version = "20190109.9";
src = fetchFromGitHub {
owner = "hchbaw";
repo = "eval-sexp-fu.el";
- rev = "1cfd0f3e167d63080692fad97ffe0091b024ad73";
- sha256 = "0l20ja8s0881jlrlmba496iyizfa0j5bvc2x39rshn8qqyka2dq2";
+ rev = "e1d7165383c941b3f11c2715707adc3d91d129a0";
+ sha256 = "01mpnpgmlnfbi2yw9dxz5iw72mw3lk223bj172i4fnx3xdrrxbij";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4b1a896521cac1f54f7571ad5837ff215d01044d/recipes/eval-sexp-fu";
sha256 = "17cazf81z4cszflnfp66zyq2cclw5sp9539pxskdf267cf7r0ycs";
name = "recipe";
};
- packageRequires = [ cl-lib highlight ];
+ packageRequires = [ cl-lib ];
meta = {
homepage = "https://melpa.org/#/eval-sexp-fu";
license = lib.licenses.free;
@@ -27321,12 +28861,12 @@
melpaBuild {
pname = "evil";
ename = "evil";
- version = "20180517.1300";
+ version = "20190222.412";
src = fetchFromGitHub {
owner = "emacs-evil";
repo = "evil";
- rev = "230b87212c81aaa68ef5547a6b998d9c365fe139";
- sha256 = "0c9zy3bpck10gcrv79kd3h7i4ygd5bgbgy773n0lg7a2r5kwn1gx";
+ rev = "297b8f323754d967beeaed28080311f5afbe25c8";
+ sha256 = "047x7q643mw5vxq857zx83k2w0108gj2wii510cn9ixdxkwhc0ya";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/440482c0edac8ee8bd4fe22f6bc5c1607f34c7ad/recipes/evil";
@@ -27374,12 +28914,12 @@
melpaBuild {
pname = "evil-args";
ename = "evil-args";
- version = "20140329.1429";
+ version = "20180908.1457";
src = fetchFromGitHub {
owner = "wcsmith";
repo = "evil-args";
- rev = "b554f83a31dd47cac9799725f379675f54ed0a6a";
- sha256 = "08743swy936v8fhbaplrr0wpwlp7vplvy2iwkh56p7gb5gqmlfli";
+ rev = "758ad5ae54ad34202064fec192c88151c08cb387";
+ sha256 = "0k35glgsirc3cph8v5hhjrqfh4ndwh8a28qbr03y3jl8s453xcj7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0976c82a22f1a8701b9da0b8ba4753ed48191376/recipes/evil-args";
@@ -27421,6 +28961,32 @@
license = lib.licenses.free;
};
}) {};
+ evil-better-visual-line = callPackage ({ evil
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "evil-better-visual-line";
+ ename = "evil-better-visual-line";
+ version = "20181026.328";
+ src = fetchFromGitHub {
+ owner = "YourFin";
+ repo = "evil-better-visual-line";
+ rev = "05e8270ae62e71b652513407c561b136c258f04c";
+ sha256 = "1q7jsmk301ncpn18g5qk02ypbxc9irfh30rxi9k2ab8p35j3ml4i";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c46640394c29643eea4e59066bab9963db67b8d7/recipes/evil-better-visual-line";
+ sha256 = "00l6gd66apf0gphlx5hk9lcl7rmj7ag8kf558psyzcyvhpmff2bq";
+ name = "recipe";
+ };
+ packageRequires = [ evil ];
+ meta = {
+ homepage = "https://melpa.org/#/evil-better-visual-line";
+ license = lib.licenses.free;
+ };
+ }) {};
evil-cleverparens = callPackage ({ dash
, emacs
, evil
@@ -27516,16 +29082,16 @@
melpaBuild {
pname = "evil-collection";
ename = "evil-collection";
- version = "20180722.1341";
+ version = "20190327.1904";
src = fetchFromGitHub {
owner = "emacs-evil";
repo = "evil-collection";
- rev = "6e2c59c2ddd8b2d953c6152f467f41bc213533ee";
- sha256 = "0m6dg93shs3fl3qimiiicjwfyrk6mhghb7qgd21qgdnb3yj4fw5j";
+ rev = "28bf368cf14b87d1a96c71f8b2d422d7edf4c39b";
+ sha256 = "0r6p3pkrhrlbd77dn20n86rxkgpvrj62842s2nnmr9mk5bwd5fap";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/a9b93a8e3750e4e7767498e418f46d553d814604/recipes/evil-collection";
- sha256 = "1fggdlssb8sai00vbrxph8cama3r0f7w8qhmiajj4cy2il7jgmhy";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fbc35279115f6fdf1ce7d1ecef3b413c7ca9c4f1/recipes/evil-collection";
+ sha256 = "1l6x782ix873n90k9g00i9065h31dnhv07bgzrp28l7y7bivqwl7";
name = "recipe";
};
packageRequires = [ cl-lib emacs evil ];
@@ -27668,34 +29234,86 @@
license = lib.licenses.free;
};
}) {};
- evil-escape = callPackage ({ cl-lib ? null
- , emacs
- , evil
- , fetchFromGitHub
+ evil-escape = callPackage ({ fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "evil-escape";
ename = "evil-escape";
- version = "20180623.2019";
+ version = "20180910.534";
src = fetchFromGitHub {
owner = "syl20bnr";
repo = "evil-escape";
- rev = "73b30bfd912f40657b1306ee5849d215f0f9ffbd";
- sha256 = "0mqz7l1a4rxdj7g3fda17118f7y0vph4ica447ciad5vz3zx9i2z";
+ rev = "f4e9116bfbaac8c9d210c17ad488e0982291245f";
+ sha256 = "1whppnlzkjig1yrz0fjvp8cy86215gjahgh88166nzk95wlc3pvf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/evil-escape";
sha256 = "0jiwsgcqw8m6z4z82gx0m0r0vbvkcxc0czhn4mqjwkhhglwzgi8l";
name = "recipe";
};
- packageRequires = [ cl-lib emacs evil ];
+ packageRequires = [];
meta = {
homepage = "https://melpa.org/#/evil-escape";
license = lib.licenses.free;
};
}) {};
+ evil-ex-fasd = callPackage ({ emacs
+ , evil
+ , fasd
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "evil-ex-fasd";
+ ename = "evil-ex-fasd";
+ version = "20180902.2312";
+ src = fetchFromGitHub {
+ owner = "yqrashawn";
+ repo = "evil-ex-fasd";
+ rev = "ed8fbbe23a8a268d9dcbf1a6132e928ba2c655c5";
+ sha256 = "0fr57nlg7m65gzhnrwnqi5bgy4vzl0l0mxk63sr3561r8fnm8hbc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/8ebdddebb0272765ebbf72073da8c2158a05f624/recipes/evil-ex-fasd";
+ sha256 = "1zljsrpbsimldpc1wviw87vgm6941zz4wy8vhpplwkfbnywiwnp7";
+ name = "recipe";
+ };
+ packageRequires = [ emacs evil fasd ];
+ meta = {
+ homepage = "https://melpa.org/#/evil-ex-fasd";
+ license = lib.licenses.free;
+ };
+ }) {};
+ evil-ex-shell-command = callPackage ({ emacs
+ , evil
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "evil-ex-shell-command";
+ ename = "evil-ex-shell-command";
+ version = "20181225.1826";
+ src = fetchFromGitHub {
+ owner = "yqrashawn";
+ repo = "evil-ex-shell-command";
+ rev = "a6ca6d27c07f6a0807abfb5b8f8865f1d17f54aa";
+ sha256 = "0jx2cj6p8wag7aphbgf3ij5v71prxkbxpfia8nmcpmrpvjqpsb74";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6d4205a35cc0c4518ab1424d91bbc627e8cdae42/recipes/evil-ex-shell-command";
+ sha256 = "1lbk31l7g6n6lqm8rvsfqbagqvhkp0s2v6wz8x4fnrjj0ymd4syf";
+ name = "recipe";
+ };
+ packageRequires = [ emacs evil ];
+ meta = {
+ homepage = "https://melpa.org/#/evil-ex-shell-command";
+ license = lib.licenses.free;
+ };
+ }) {};
evil-exchange = callPackage ({ cl-lib ? null
, evil
, fetchFromGitHub
@@ -27732,12 +29350,12 @@
melpaBuild {
pname = "evil-expat";
ename = "evil-expat";
- version = "20180719.116";
+ version = "20190111.2140";
src = fetchFromGitHub {
owner = "edkolev";
repo = "evil-expat";
- rev = "3ff831784c5f301330ecced5ebd43cce42980d2b";
- sha256 = "15x9fl7r25dygzkc6hhw5yzza7g2dwgr7gvvim913ahnzk5g9nag";
+ rev = "4c344ea19b789002d759a202ffbf594730d2c59a";
+ sha256 = "16v7fnldxag6l1lsnrnhdjkga9qi78lbdfbb82k6pmv04991mbkr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f08f6396e66479eb9510727968c5bb01ac239476/recipes/evil-expat";
@@ -27814,12 +29432,12 @@
melpaBuild {
pname = "evil-fringe-mark";
ename = "evil-fringe-mark";
- version = "20180619.1534";
+ version = "20190319.2153";
src = fetchFromGitHub {
owner = "Andrew-William-Smith";
repo = "evil-fringe-mark";
- rev = "fdb147d5ec8fbe087c73604374b3d491f143f2b2";
- sha256 = "1cfsh0f4mfpm6pifxgk2v0h975hldvwdbx95zgw045w9sw325q5b";
+ rev = "a1689fddb7ee79aaa720a77aada1208b8afd5c20";
+ sha256 = "0pf8bl7bmcn1l0dlxkgbgwb1n2fxpzxwcr4jf06gzyrrmmwah526";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/70dcc07c389d5454de64fb08cd666d489d6d5483/recipes/evil-fringe-mark";
@@ -27868,12 +29486,12 @@
melpaBuild {
pname = "evil-goggles";
ename = "evil-goggles";
- version = "20180702.353";
+ version = "20181123.1146";
src = fetchFromGitHub {
owner = "edkolev";
repo = "evil-goggles";
- rev = "ea5ab4012af0eb451e2c0d996455c58f1554f7c1";
- sha256 = "18f96n8kkj1lza9za46dwjrsm4ni2s1gqbgdjjiqmkl06kj04fi8";
+ rev = "78454a7e8bd609edf0d93cb0a7f9ed576dd33546";
+ sha256 = "1yn72wmrda670h0bz3gdqh6k44ja60wkk9f4hijh9w1hw0vazk20";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/811b1261705b4c525e165fa9ee23ae191727a623/recipes/evil-goggles";
@@ -27996,24 +29614,25 @@
, evil
, fetchFromGitHub
, fetchurl
+ , ledger-mode
, lib
, melpaBuild }:
melpaBuild {
pname = "evil-ledger";
ename = "evil-ledger";
- version = "20170905.519";
+ version = "20180802.912";
src = fetchFromGitHub {
owner = "atheriel";
repo = "evil-ledger";
- rev = "17f3c4284fc4f8d9da4e1d805fbe712e0e02b8d4";
- sha256 = "1vjiyi1kv62w7mbvp149zncvk7p4js75m897b69gh05g68j4ckk2";
+ rev = "7a9f9f5d39c42fffdba8004f8982642351f2b233";
+ sha256 = "010r1qn9l3clqqrlia0y25bqjbrixvf8i409v10yxqb949jvw1vk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/500e99a1b92f0a0c144f843cd7645872034d9fbb/recipes/evil-ledger";
sha256 = "13idy2kbzhckzfwrjnzjrf8h2881w3v8pmhlcj26xcyf4ch0dq9r";
name = "recipe";
};
- packageRequires = [ emacs evil ];
+ packageRequires = [ emacs evil ledger-mode ];
meta = {
homepage = "https://melpa.org/#/evil-ledger";
license = lib.licenses.free;
@@ -28111,12 +29730,12 @@
melpaBuild {
pname = "evil-magit";
ename = "evil-magit";
- version = "20180702.853";
+ version = "20190224.1228";
src = fetchFromGitHub {
owner = "emacs-evil";
repo = "evil-magit";
- rev = "9f32c4e190e3d67f193485f12199275ff1a047f0";
- sha256 = "0lmsc02fb9s43gs7svqq57bsznqxxzjv6s79lz2hc0rhacxb5pp9";
+ rev = "e2fec5877994c0c19f0c25fa01f3d22cb0ab38ba";
+ sha256 = "134v7s03jvbhm70mavwab85r09i68g2a5bvriirh0chz1av2y16v";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/50315ec837d2951bf5b2bb75809a35dd7ffc8fe8/recipes/evil-magit";
@@ -28145,8 +29764,8 @@
sha256 = "01hccc49xxb6lnzr0lwkkwndbk4sv0jyyz3khbcxsgkpzjiydihv";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/089accfa2646fc4f265cb8e9b9a05dcf5aa4c4f6/recipes/evil-mark-replace";
- sha256 = "03cq43vlv1b53w4kw7mjvk026i8rzhhryfb27ddn6ipgc6xh68a0";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/evil-mark-replace";
+ sha256 = "14j2d46288shlixb57nh5vlqdi3aiv20djvcbhiw1cm9ar2c3y4v";
name = "recipe";
};
packageRequires = [ evil ];
@@ -28155,7 +29774,8 @@
license = lib.licenses.free;
};
}) {};
- evil-matchit = callPackage ({ evil
+ evil-matchit = callPackage ({ emacs
+ , evil
, fetchFromGitHub
, fetchurl
, lib
@@ -28163,19 +29783,19 @@
melpaBuild {
pname = "evil-matchit";
ename = "evil-matchit";
- version = "20180526.557";
+ version = "20190307.213";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "evil-matchit";
- rev = "1c428e192b5c8698f8550d8862593bdca5ef9bfc";
- sha256 = "1xip22vlzlki769hza3wssr41m5pl47ay7721fc4y5qv9yr9pjfa";
+ rev = "00ab601346a5646aa6db4935684021ec16650a58";
+ sha256 = "14wbsj1fwxz36qdnnf9qr2rz38qm4x3aj265asmvpfizgbm2jd4r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/aeab4a998bffbc784e8fb23927d348540baf9951/recipes/evil-matchit";
sha256 = "01z69n20qs4gngd28ry4kn825cax5km9hn96i87yrvq7nfa64swq";
name = "recipe";
};
- packageRequires = [ evil ];
+ packageRequires = [ emacs evil ];
meta = {
homepage = "https://melpa.org/#/evil-matchit";
license = lib.licenses.free;
@@ -28191,12 +29811,12 @@
melpaBuild {
pname = "evil-mc";
ename = "evil-mc";
- version = "20180603.2033";
+ version = "20190321.906";
src = fetchFromGitHub {
owner = "gabesoft";
repo = "evil-mc";
- rev = "779e7d35bf38b482c0fccacfbffd877e5f455457";
- sha256 = "0p0jc3vlf5q8b76adxznpsfp1clhm171ddwq63vsg6b5iwk0fpdz";
+ rev = "ef22ee1a9d9a82a9b954f27f82ddcb7cb0f634ec";
+ sha256 = "026nvajf9wbm47qw1napzsngqjrkq84d052ybhxf30as6pigj36s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/96770d778a03ab012fb82a3a0122983db6f9b0c4/recipes/evil-mc";
@@ -28277,12 +29897,12 @@
melpaBuild {
pname = "evil-multiedit";
ename = "evil-multiedit";
- version = "20180209.1819";
+ version = "20190102.2315";
src = fetchFromGitHub {
owner = "hlissner";
repo = "evil-multiedit";
- rev = "ea3d9177b74ab0bc65e55df9cc0a0b42e4ef815d";
- sha256 = "17zm35r474z8ras4xy7124pcb972d385pbdv4jxyj5vq042vq07w";
+ rev = "cb35914ffabb4f65d22ab2f812ff6e7622cc5c26";
+ sha256 = "19h3kqylqzbjv4297wkzzxdmn9yxbg6z4ga4ssrqri90xs7m3rw3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/997f5a6999d1add57fae33ba8eb3e3bc60d7bb56/recipes/evil-multiedit";
@@ -28303,12 +29923,12 @@
melpaBuild {
pname = "evil-nerd-commenter";
ename = "evil-nerd-commenter";
- version = "20180722.1625";
+ version = "20190407.128";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "evil-nerd-commenter";
- rev = "275c95c89cc09c7096bd6fd0deabd49f29634f5d";
- sha256 = "07k4d1dy1nm9g54zwqzdqhibz2a2zfi7q27z7k8wq0ibjph96nwh";
+ rev = "acc0f75cde9e4ffd946f7835c3b388fb77f633a7";
+ sha256 = "1r8shfdddys9vqvrxf7s6z83ydqx9xhqs9sa7klbsajryqcp50b7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a3e1ff69e7cc95a5b5d628524ad836833f4ee736/recipes/evil-nerd-commenter";
@@ -28321,6 +29941,31 @@
license = lib.licenses.free;
};
}) {};
+ evil-nl-break-undo = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "evil-nl-break-undo";
+ ename = "evil-nl-break-undo";
+ version = "20181125.1254";
+ src = fetchFromGitHub {
+ owner = "VanLaser";
+ repo = "evil-nl-break-undo";
+ rev = "8acaecadd32937f6f1d8c3f8141fcee0de7d324e";
+ sha256 = "1155bbp7mais3cf378zxnrxc5qg9qai7rcr7whd0ljf9i4aic0y9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a43ea989f52cebadc68c8e9c0f87f8f2e23b0974/recipes/evil-nl-break-undo";
+ sha256 = "0q6b459z06h4l47b5lcxlqbksf8sbazkk569r3h2577zpc56prfn";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/evil-nl-break-undo";
+ license = lib.licenses.free;
+ };
+ }) {};
evil-numbers = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -28427,6 +30072,35 @@
license = lib.licenses.free;
};
}) {};
+ evil-python-movement = callPackage ({ cl-lib ? null
+ , dash
+ , emacs
+ , evil
+ , fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "evil-python-movement";
+ ename = "evil-python-movement";
+ version = "20180724.720";
+ src = fetchgit {
+ url = "https://bitbucket.org/FelipeLema/evil-python-movement.el";
+ rev = "9936b3b7f8d96415d517c1f3604637889484a637";
+ sha256 = "11ivb95ilsw3svpna9n07yf8s9q3w36ia6js2qv6wf0d0dp2xb9r";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/130e6d17735ff86b962859528d7e50869f683251/recipes/evil-python-movement";
+ sha256 = "1qs0z93rpi9dz6hy64816afdr4k5gssyw2dhaxcn152ylg1yzkg3";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib dash emacs evil s ];
+ meta = {
+ homepage = "https://melpa.org/#/evil-python-movement";
+ license = lib.licenses.free;
+ };
+ }) {};
evil-quickscope = callPackage ({ evil
, fetchFromGitHub
, fetchurl
@@ -28623,12 +30297,12 @@
melpaBuild {
pname = "evil-snipe";
ename = "evil-snipe";
- version = "20180503.141";
+ version = "20180731.1031";
src = fetchFromGitHub {
owner = "hlissner";
repo = "evil-snipe";
- rev = "8120c2398cb5ca9a81369f7201b3db19cd71e965";
- sha256 = "0i6hjzidccxdy3dq7rrngfqlrrwb6yyc635fark3dnn90cpadwci";
+ rev = "8dd076cc56eb9b04494e4e303b86a959b048350b";
+ sha256 = "05zlmkyl1gms7pk2izh67j7xk4mb5y94jpyx63lg59yc391p5p07";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6748f3febbe2f098761e967b4dc67791186d0aa7/recipes/evil-snipe";
@@ -28703,12 +30377,12 @@
melpaBuild {
pname = "evil-surround";
ename = "evil-surround";
- version = "20180102.601";
+ version = "20190402.2118";
src = fetchFromGitHub {
owner = "emacs-evil";
repo = "evil-surround";
- rev = "5a20c9757eff64e1567d313eb254126aef2bf3b2";
- sha256 = "094vz707iyjknmhmhdlzc8sv8x86yxgx863c23nm6fjn5n5h7jmz";
+ rev = "68f7033322dcba3781dddb48465878e896a9f57b";
+ sha256 = "17wxib52qwpfi809lq3c1zsxqprmkk9ghg0q8zc3r7gq2f5d8yy8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2c9dc47a4c837c44429a74fd998fe468c00639f2/recipes/evil-surround";
@@ -28808,12 +30482,12 @@
melpaBuild {
pname = "evil-test-helpers";
ename = "evil-test-helpers";
- version = "20180109.1040";
+ version = "20190104.226";
src = fetchFromGitHub {
owner = "emacs-evil";
repo = "evil";
- rev = "49d6167d6bb97454afe1d06a5324483682de8ab6";
- sha256 = "0l3hmmkys3fw5yxs4kmjx5nrbjh9w19d0bfkryhbxhc5xszydvzz";
+ rev = "3766a521a60e6fb0073220199425de478de759ad";
+ sha256 = "1833w397xhac5g3pp25szr2gyvclxy91aw27azvbmsx94pyk2a3q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/87da8c50f9167ad9c3844b23becb6904f809611d/recipes/evil-test-helpers";
@@ -28835,12 +30509,12 @@
melpaBuild {
pname = "evil-text-object-python";
ename = "evil-text-object-python";
- version = "20160815.141";
+ version = "20181126.524";
src = fetchFromGitHub {
owner = "wbolster";
repo = "evil-text-object-python";
- rev = "7aae5558be25b4a33abdede8a91da1cc7d08f1bc";
- sha256 = "0qfqfqbq3jijnmg0rp6agz9skcv2drnpyn481c7f455z46xi87kl";
+ rev = "9a064fe6475429145cbcc3b270fcc963b67adb15";
+ sha256 = "074zpm6mmr1wfl6d5xdf8jk1fs4ccpbzf4ahhkwga9g71xiplszv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0d0893b07bc4a057561a1c1a85b7520c50f31e12/recipes/evil-text-object-python";
@@ -28908,6 +30582,87 @@
license = lib.licenses.free;
};
}) {};
+ evil-textobj-entire = callPackage ({ emacs
+ , evil
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "evil-textobj-entire";
+ ename = "evil-textobj-entire";
+ version = "20150422.554";
+ src = fetchFromGitHub {
+ owner = "supermomonga";
+ repo = "evil-textobj-entire";
+ rev = "5b3a98f3a69edc3a788f539f6ffef4a0ef5e853d";
+ sha256 = "0m3krfmc9llpywr0lbya36b2jbnzx1pylvhj0p1ss5rh735m00jy";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e1da0063a17d53f30e041e08161ad8fbc9942270/recipes/evil-textobj-entire";
+ sha256 = "0hkdnkv03b31330pnkijhhbyw00m7bxfvs3cgzfazsvvcsha4gmi";
+ name = "recipe";
+ };
+ packageRequires = [ emacs evil ];
+ meta = {
+ homepage = "https://melpa.org/#/evil-textobj-entire";
+ license = lib.licenses.free;
+ };
+ }) {};
+ evil-textobj-line = callPackage ({ evil
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "evil-textobj-line";
+ ename = "evil-textobj-line";
+ version = "20150729.822";
+ src = fetchFromGitHub {
+ owner = "syohex";
+ repo = "evil-textobj-line";
+ rev = "0209f9b84c7e1e1c42e346cdb8c0e36619471e5f";
+ sha256 = "0ln72zfrzn1bnv40kyzjchmfv3dgd2wm596lxacd2kygcx4a4gky";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/24bf766525ffdaded519ac9f78ae89d8ab5108ef/recipes/evil-textobj-line";
+ sha256 = "158w524qzj0f03ihid2fisxyf1g7vwpv3ckfkzi7c2l549jnsdsa";
+ name = "recipe";
+ };
+ packageRequires = [ evil ];
+ meta = {
+ homepage = "https://melpa.org/#/evil-textobj-line";
+ license = lib.licenses.free;
+ };
+ }) {};
+ evil-textobj-syntax = callPackage ({ emacs
+ , evil
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , names }:
+ melpaBuild {
+ pname = "evil-textobj-syntax";
+ ename = "evil-textobj-syntax";
+ version = "20181210.413";
+ src = fetchFromGitHub {
+ owner = "laishulu";
+ repo = "evil-textobj-syntax";
+ rev = "2d9ba8c75c754b409aea7469f46a5cfa52a872f3";
+ sha256 = "031p5i3274dazp7rz6m5y38shfgszm1clmkcf58qfqlvy978ammc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0dba37e5a2ba5ef1f397b37d6845acdc4872e5f2/recipes/evil-textobj-syntax";
+ sha256 = "0d0fg71xmbqhx91ljnkxmakcc0qn3341wjjmzax33qilz5syp3m9";
+ name = "recipe";
+ };
+ packageRequires = [ emacs evil names ];
+ meta = {
+ homepage = "https://melpa.org/#/evil-textobj-syntax";
+ license = lib.licenses.free;
+ };
+ }) {};
evil-tutor = callPackage ({ evil
, fetchFromGitHub
, fetchurl
@@ -28998,12 +30753,12 @@
melpaBuild {
pname = "evil-visual-mark-mode";
ename = "evil-visual-mark-mode";
- version = "20150202.1000";
+ version = "20190116.757";
src = fetchFromGitHub {
owner = "roman";
repo = "evil-visual-mark-mode";
- rev = "094ee37599492885ff3144918fcdd9b74dadaaa0";
- sha256 = "07cmql8zsqz1qchq2mp3qybbay499dk1yglisig6jfddcmrbbggz";
+ rev = "ac5997971972a9251f140b5542d82790ca4a43b4";
+ sha256 = "1gh5614l4zf15109zc64pnnc5rp5ilah9mavgr2rbv2874k3vs4n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/293cdd3387f26e4c8f21582d75a194963ac9cff7/recipes/evil-visual-mark-mode";
@@ -29179,12 +30934,12 @@
melpaBuild {
pname = "exec-path-from-shell";
ename = "exec-path-from-shell";
- version = "20180323.1904";
+ version = "20190105.1907";
src = fetchFromGitHub {
owner = "purcell";
repo = "exec-path-from-shell";
- rev = "4d0af1274797ce61f5d8c209339d5b9cdc49aca6";
- sha256 = "1h45vxyw0pa99fldnvca96rz1w1hl7mrgx5m51rknxascfvk6fqx";
+ rev = "76cd6e3fa8a7dac937af7e40507843dfae4f9184";
+ sha256 = "1ga8bpxngd3ph2hdiik92c612ki71qxw818i6rgx6f6a5r0sbf3p";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/exec-path-from-shell";
@@ -29205,11 +30960,11 @@
melpaBuild {
pname = "exiftool";
ename = "exiftool";
- version = "20170822.1432";
+ version = "20190203.1206";
src = fetchgit {
url = "https://git.systemreboot.net/exiftool.el/";
- rev = "3a07dbcb975577734d4abf6d68e1ab83a01951bb";
- sha256 = "10prrwvmc891vkzzgqmz0xd85xgi52ni83ydf0bvhfmcg0wmm0cc";
+ rev = "4131fa38160dabd5d7143aad8aca5db575749292";
+ sha256 = "0lbsa8v39aih8mcvvdm0jang05gm5br5g2fay3lccf73c9aimrfh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4835a76909d020781021e747fbc341111a94dbfa/recipes/exiftool";
@@ -29257,14 +31012,14 @@
ename = "expand-line";
version = "20151005.1907";
src = fetchFromGitHub {
- owner = "cheunghy";
+ owner = "zhangkaiyulw";
repo = "expand-line";
rev = "75a5d0241f35dd0748ab8ecb4ff16891535be372";
sha256 = "0wz4h5hrr5ci0w8pynd2nr1b2zl5hl4pa8gc16mcabik5927rf7z";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1c3fa6b17a8c6b08b0d77bdff0f91b7af34f4279/recipes/expand-line";
- sha256 = "07nfgp6jlrb9wxqy835j79i4g88714zndidkda84z16qn2y901a9";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/expand-line";
+ sha256 = "0bzz7zrpfdxhjxs7nzlmzjb9jfajhxkivzr5sm87mg3zx8b6gjyi";
name = "recipe";
};
packageRequires = [];
@@ -29280,12 +31035,12 @@
melpaBuild {
pname = "expand-region";
ename = "expand-region";
- version = "20180625.939";
+ version = "20190327.528";
src = fetchFromGitHub {
owner = "magnars";
repo = "expand-region.el";
- rev = "54e1b94fa8b65f066f731101a744287e956ae75f";
- sha256 = "113d804gmvxmg3f32w7m4dc14xpl47aw25255nyr0w5bxm7vmnah";
+ rev = "0ba6f41a7921ae24e8d3a2345dd5492052fe93f4";
+ sha256 = "0j92jj0ydqll3c4p14gwn6z0c3l44ali2yr3cnz3a96g00fd36y4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/expand-region";
@@ -29409,12 +31164,12 @@
melpaBuild {
pname = "extmap";
ename = "extmap";
- version = "20180205.1047";
+ version = "20181028.945";
src = fetchFromGitHub {
owner = "doublep";
repo = "extmap";
- rev = "3860b69fb19c962425d4e271ee0a24547b67d323";
- sha256 = "1vjwinb7m9l2bw324v4m1g4mc9yqjs84bfjci93m0a1ih8n4zdbr";
+ rev = "1139b57d8f4276fe56b8416fdaf4745f2cdfe7c3";
+ sha256 = "0jgyscjfparnby0whrmbgvsab2a7qkaqhysmh3s3jh635fndm253";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/91ef4352603cc69930ab3d63f0a90eee63f5f328/recipes/extmap";
@@ -29427,6 +31182,35 @@
license = lib.licenses.free;
};
}) {};
+ exunit = callPackage ({ dash
+ , emacs
+ , f
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "exunit";
+ ename = "exunit";
+ version = "20190215.1940";
+ src = fetchFromGitHub {
+ owner = "ananthakumaran";
+ repo = "exunit.el";
+ rev = "1b7763bc4822f3292a6b9b368693b0c271052eb8";
+ sha256 = "1g6w7gchw34acqwigsjhf93hx83w11wr6a2yv6p8ncw9r3vgbnh2";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/94e4fd4cf58b280d08d22aff4dd9c47201a29e72/recipes/exunit";
+ sha256 = "1wyxxy1hd50p17widf31sysp28adr09n8ksyd3hn6pnvyn2m0k81";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs f s ];
+ meta = {
+ homepage = "https://melpa.org/#/exunit";
+ license = lib.licenses.free;
+ };
+ }) {};
exwm-edit = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -29435,12 +31219,12 @@
melpaBuild {
pname = "exwm-edit";
ename = "exwm-edit";
- version = "20180629.137";
+ version = "20180905.43";
src = fetchFromGitHub {
owner = "agzam";
repo = "exwm-edit";
- rev = "6ea0a64e47d06204d826e146c3c3082dec5c4007";
- sha256 = "0sz2q4nj5inh42f37jfkc5z7fdw1lgsyz2fh5ljgjcvrd9xlb24l";
+ rev = "961c0f3ea45766b888c73d7353da13d329538034";
+ sha256 = "087pk5ckx753qrn6xpka9khhlp7iqlz76w7861x90av2f5cgy6fw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f247915e02e59ebd6a2a219e55870e034d41c938/recipes/exwm-edit";
@@ -29453,6 +31237,61 @@
license = lib.licenses.free;
};
}) {};
+ exwm-firefox-core = callPackage ({ emacs
+ , exwm
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "exwm-firefox-core";
+ ename = "exwm-firefox-core";
+ version = "20190402.1425";
+ src = fetchFromGitHub {
+ owner = "walseb";
+ repo = "exwm-firefox-core";
+ rev = "71539f3fce35095992c4975467e89a7833a2319d";
+ sha256 = "0psb180wcn2yg9r75nbpr54npaiqshpjy4hr03jpf2shzr9d9zlq";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/745a2b98c48b00cd794dfb97be4072813ee67ada/recipes/exwm-firefox-core";
+ sha256 = "1d6j8nrlb7lsyki796vpfidj8y2cz5lnqf8zzfqsbqf92kj5v9zd";
+ name = "recipe";
+ };
+ packageRequires = [ emacs exwm ];
+ meta = {
+ homepage = "https://melpa.org/#/exwm-firefox-core";
+ license = lib.licenses.free;
+ };
+ }) {};
+ exwm-firefox-evil = callPackage ({ emacs
+ , evil
+ , exwm
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "exwm-firefox-evil";
+ ename = "exwm-firefox-evil";
+ version = "20190403.1145";
+ src = fetchFromGitHub {
+ owner = "walseb";
+ repo = "exwm-firefox-evil";
+ rev = "e343ac57c945946c238f2f24fdf810e691c023c4";
+ sha256 = "0037fiv0nsid1bh492vmpcz4vi116hbp8c169k8yjalkb9y8sjn9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/09fa63c7bd639c0b7dda540504c74cdbbe4f9875/recipes/exwm-firefox-evil";
+ sha256 = "0wg3jydgj2fi5gxv3kwm1dvpxvc3ypn28kxlzfp801xrrfc241ml";
+ name = "recipe";
+ };
+ packageRequires = [ emacs evil exwm ];
+ meta = {
+ homepage = "https://melpa.org/#/exwm-firefox-evil";
+ license = lib.licenses.free;
+ };
+ }) {};
exwm-surf = callPackage ({ emacs
, exwm
, fetchFromGitHub
@@ -29494,12 +31333,12 @@
melpaBuild {
pname = "exwm-x";
ename = "exwm-x";
- version = "20180227.257";
+ version = "20190224.352";
src = fetchFromGitHub {
owner = "tumashu";
repo = "exwm-x";
- rev = "4f7946db67d6599baba6b3961e8f543a68707742";
- sha256 = "00lcn5106xig2y9gyir1f1gzyp2i05rwq1lbbbah8aipkdi3z9xl";
+ rev = "02ec31cd8996b1b3fe305405fef7334c4d08e72b";
+ sha256 = "18cgfnh7bp152gi4zv2skrkjbxs0v2zn6jk35rc48y8nfivps2f4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a0e6e23bcffdcd1e17c70599c563609050e5de40/recipes/exwm-x";
@@ -29529,12 +31368,12 @@
melpaBuild {
pname = "eyebrowse";
ename = "eyebrowse";
- version = "20180514.1219";
+ version = "20190322.233";
src = fetchFromGitHub {
owner = "wasamasa";
repo = "eyebrowse";
- rev = "ec7e11022032348ee23a3586a1306871f9d28b25";
- sha256 = "16mks2dr4k6bjr1xds9j2jwm7zwad4z67wa0qg9n50gyiyn4pl4g";
+ rev = "52e160997a1c4b1d463e8b9cc2ba3e27408c2a89";
+ sha256 = "0y2n08ykfc3hga5m969syysa2r4h3d2i1xfi0jjhpw3h7qrisbw8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/90d052bfc0b94cf177e33b2ffc01a45d254fc1b1/recipes/eyebrowse";
@@ -29635,12 +31474,12 @@
melpaBuild {
pname = "f";
ename = "f";
- version = "20180106.122";
+ version = "20190109.106";
src = fetchFromGitHub {
owner = "rejeep";
repo = "f.el";
- rev = "de6d4d40ddc844eee643e92d47b9d6a63fbebb48";
- sha256 = "1a47xk3yp1rp17fqg7ldl3d3fb888h0fz3sysqfdz1bfdgs8a9bk";
+ rev = "8191672377816a1975414cc1f116fd3b94b30bd0";
+ sha256 = "1b9wq6r6v44y11ldcj8czmah4ciibkm2261q4z9awd7v7iqlzf07";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/f";
@@ -29789,12 +31628,12 @@
melpaBuild {
pname = "faff-theme";
ename = "faff-theme";
- version = "20180702.1023";
+ version = "20190115.1307";
src = fetchFromGitHub {
owner = "WJCFerguson";
repo = "emacs-faff-theme";
- rev = "596c8cfbf1a7fbc3b93643359f8d0f4c612d69be";
- sha256 = "03jrlk5n9jd3mw6k36qblzl89yj6q8ir9krvilb3da170pr6b4pa";
+ rev = "cf76f8d700ae4e7c58b2ebb4bbe3b10a21a5658b";
+ sha256 = "1jap3fx29l542p4yjaimy1v0d2rnd5bprnz8clxhm80jn6km8v9d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0b35c169fe56a5612ff5a4242140f617fdcae14f/recipes/faff-theme";
@@ -30113,6 +31952,32 @@
license = lib.licenses.free;
};
}) {};
+ fd-dired = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "fd-dired";
+ ename = "fd-dired";
+ version = "20180731.349";
+ src = fetchFromGitHub {
+ owner = "yqrashawn";
+ repo = "fd-dired";
+ rev = "a92511929ce0d64d2bc05823920e12f106c4dfc7";
+ sha256 = "1l3mc39kb3w9pbc84998rz3g1n0ygr8pg9b9z5cgg638jh2cvzqm";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/1217e0d4f42df68cc22de9b4f27a36c0377509e3/recipes/fd-dired";
+ sha256 = "0g8zvg6b9hcxkmqn254y9khjm7jz2lz4mh7dhsxfcy64inaj0481";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/fd-dired";
+ license = lib.licenses.free;
+ };
+ }) {};
feature-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -30145,12 +32010,12 @@
melpaBuild {
pname = "feebleline";
ename = "feebleline";
- version = "20180604.515";
+ version = "20190402.825";
src = fetchFromGitHub {
owner = "tautologyclub";
repo = "feebleline";
- rev = "9ece1c02a60ed0209cda661bcb864a7e624e8aca";
- sha256 = "0fiq16bm28c9z62fdpr7n2fpnqbcmb278b72wi3gl386w34j6xl1";
+ rev = "d1df599254f4c250720ae98dd69dada89535a295";
+ sha256 = "10h59zd9hq81dyjw558k417kaqs5m9bhmx8mndcshh4cn1xfp5j3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/782295d8c530878bd0e20cde7e7f7f8f640953dd/recipes/feebleline";
@@ -30170,12 +32035,12 @@
melpaBuild {
pname = "fennel-mode";
ename = "fennel-mode";
- version = "20180509.1852";
+ version = "20190401.1108";
src = fetchFromGitLab {
owner = "technomancy";
repo = "fennel-mode";
- rev = "21e184b2a862290db9dcf839f0e4a2df480a642e";
- sha256 = "0l3770w47skbr95775mrwpmw6apmbjk18i6c1zcz05pc46rcr15s";
+ rev = "17678a7fc073c64cb0ec78f913154df377a42575";
+ sha256 = "0n2vz6vsi380gcgg3ihwjs3z2rc1hb8yh4xlzjwz01dhahj08p1x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cda0732050a17b2dc70b80afd6fc6bb9cf8bb60f/recipes/fennel-mode";
@@ -30455,12 +32320,12 @@
melpaBuild {
pname = "find-file-in-project";
ename = "find-file-in-project";
- version = "20180705.1832";
+ version = "20190330.1830";
src = fetchFromGitHub {
owner = "technomancy";
repo = "find-file-in-project";
- rev = "1c54325cb60bde7496dad4e19f4c2a857999df58";
- sha256 = "1pxqqpj6cdwbhca6vaj98d86f1l0vl09zp054wf0sv759l25ac0l";
+ rev = "33fc401eeda51c11dfecd78d961538aaef23761b";
+ sha256 = "1vrw2c88lanb5r8gapf62blccb98s864b5bn3fc5hj27ybd441vd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/find-file-in-project";
@@ -30480,16 +32345,16 @@
melpaBuild {
pname = "find-file-in-repository";
ename = "find-file-in-repository";
- version = "20151113.519";
+ version = "20190404.128";
src = fetchFromGitHub {
- owner = "hoffstaetter";
+ owner = "h";
repo = "find-file-in-repository";
- rev = "898fd7ea2727772ba09383a2ece7f3f7f1e77e29";
- sha256 = "090m5647dpc8r8fwi3mszvc8kp0420ma5sv0lmqr2fpxyn9ybkjh";
+ rev = "b44d78682082270dc6b59cdc911333d0d3e7edaa";
+ sha256 = "1icsxp2b3grvdbv6bh9hpxz1hrqa7vvjzajjwi2knvjbq41d99bn";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/58705ac6201b73851ce4ce9ebeb0e65463765961/recipes/find-file-in-repository";
- sha256 = "0q1ym06w2yn3nzpj018dj6h68f7rmkxczyl061mirjp8z9c6a9q6";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/find-file-in-repository";
+ sha256 = "02rihpfpckppnf5a2zgd5s3dspdhq4mr6qchlrzg2fd4byjxra9s";
name = "recipe";
};
packageRequires = [];
@@ -30686,12 +32551,12 @@
melpaBuild {
pname = "fireplace";
ename = "fireplace";
- version = "20160811.519";
+ version = "20181211.1127";
src = fetchFromGitHub {
owner = "johanvts";
repo = "emacs-fireplace";
- rev = "2b966ed65b714c613f79e9144d004dfa3b28f1ed";
- sha256 = "1f5053bbvjdmm64zv6r2qkswkpwvx0s3qz4bwm9zya583a6g0nv8";
+ rev = "571ffa7dd0ce46edca838df74d055aaa83da4d78";
+ sha256 = "1iw17rkihsn50p3zljag82v09zyav8bzgfn6mfa267fkf4f1fgjy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4c1ac52c1cfe7ccf46092c2d299ebbffdc1b7609/recipes/fireplace";
@@ -30737,16 +32602,16 @@
melpaBuild {
pname = "firrtl-mode";
ename = "firrtl-mode";
- version = "20180221.1555";
+ version = "20190223.1944";
src = fetchFromGitHub {
- owner = "ibm";
+ owner = "IBM";
repo = "firrtl-mode";
- rev = "1ac00d526018945389bcb2292dbdd8395381774a";
- sha256 = "02xznsiij39lhjr261vl7yz4k4i76vshh5kwa7ax95zpj2zbs0v6";
+ rev = "e55c555809037b7aaf2367ad2255f0a27addd23a";
+ sha256 = "1nsihyx9znblc4kxyk06r7alhd4wh67312zwp9discgyf4ksm572";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/8bbf9ab9db03410c35b8b73a23bf8062b10f0815/recipes/firrtl-mode";
- sha256 = "11n3wjr9sinqafjs88bznb5rppnignwkn4m4ppixi6xr31v3i4ws";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/firrtl-mode";
+ sha256 = "19r7wbw9pr05p8fywcnbbpdpklic2vd2bsy80r7xrzgs4fcl12as";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -30762,12 +32627,12 @@
melpaBuild {
pname = "fish-completion";
ename = "fish-completion";
- version = "20180616.1223";
+ version = "20190207.1358";
src = fetchFromGitLab {
owner = "Ambrevar";
repo = "emacs-fish-completion";
- rev = "bac15fda1392a891070574dfe5d2d50b10831e8b";
- sha256 = "029s1ha8pc4df0xng5c0xwv2rlcl423mgh1ffgnbh0fx7ybr5n4v";
+ rev = "23aafb993f8f74dca6e2f299030ca5d3e1aee95b";
+ sha256 = "04dcqhdb544i7c6np4prbq13cwfxw37czmpnm3j36di6c1g9gkzb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6d17ca0213ba5ef9dce92002e281e6f08c3492be/recipes/fish-completion";
@@ -30788,12 +32653,12 @@
melpaBuild {
pname = "fish-mode";
ename = "fish-mode";
- version = "20180306.818";
+ version = "20180826.2003";
src = fetchFromGitHub {
owner = "wwwjfy";
repo = "emacs-fish";
- rev = "bac709ac1235751952d6022dddc6307d9135d096";
- sha256 = "0a74ghmjjrxfdhk4mvq6lar4w6l6lc4iilabs99smqr2fn5rsslq";
+ rev = "35fc7c1e243a7410823088a571ecf378e9f3efa6";
+ sha256 = "0rn08dm4gn0g0nz080zxm0am1z6hfkinvzqwqszv96qkxy250ghp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/efac97c0f54a3300251020c4626056526c18b441/recipes/fish-mode";
@@ -30814,12 +32679,12 @@
melpaBuild {
pname = "fix-input";
ename = "fix-input";
- version = "20171231.2220";
+ version = "20181231.2308";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "fix-input";
- rev = "e053fcc641f1f835f2fdb71143e095c1889b8233";
- sha256 = "1w8vv2ijmsch02xsc1r97r6s3jz0dkd8kwz5wgiizq5ghx7x6x6j";
+ rev = "02ce45f104284bc9ea7f8e7d1dc73bf9cd3f47d7";
+ sha256 = "0xqid3s8q3swc2j4rj94lv8snk898www9ycp5l4264lii2dc7mnm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7d31f907997d1d07ec794a4f09824f43818f035c/recipes/fix-input";
@@ -30866,12 +32731,12 @@
melpaBuild {
pname = "fix-word";
ename = "fix-word";
- version = "20171231.2215";
+ version = "20190215.1238";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "fix-word";
- rev = "3e3339f5d44dd8be100cec1c88bcaefd328a2bde";
- sha256 = "0hd5bhq57qgabs881xfrz1v1n8sp1nv2hrfs386dx7g5b3ancr0i";
+ rev = "b3b3a3c8e33e425f9a8d0ec653adb6897c8efc03";
+ sha256 = "1nw9ih0knaqaban5nqp3anvr37mivylqs8sc8l3v1i9srlqnsj1m";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/22636390e8a15c09293a1506a901286dd72e565f/recipes/fix-word";
@@ -31135,12 +33000,12 @@
melpaBuild {
pname = "flex-compile";
ename = "flex-compile";
- version = "20180528.853";
+ version = "20181227.2248";
src = fetchFromGitHub {
owner = "plandes";
repo = "flex-compile";
- rev = "0b6259944e78f0bc6ee4407d97e3d09db8fd400e";
- sha256 = "1qzzrxq80fl14slirmgidmpazj1gmh9b12jkz72flsbdiy7whpal";
+ rev = "e91797c2185ed93e64fd5d11ab244d561278c744";
+ sha256 = "18nbwidahm2n7fwznk5flxnf7rq77r5649wz45j0g4zvqpi1nwkl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/259caeebc317e81ab9d532a371ea85656c2b1619/recipes/flex-compile";
@@ -31264,12 +33129,12 @@
melpaBuild {
pname = "floobits";
ename = "floobits";
- version = "20170802.1500";
+ version = "20180731.2224";
src = fetchFromGitHub {
owner = "Floobits";
repo = "floobits-emacs";
- rev = "ed5586d1bf94f36354091648e824ccb6fcaf807f";
- sha256 = "08m9snmkhdjmvw1pqww9l39xqas9f6yxksjxvfjjfnad8ak80x9b";
+ rev = "489b294a7f30ecd2af2edc0823dead8102f27af6";
+ sha256 = "1pw88qn6s8ln626c8mgxgpfax39h7ww4m930dp7gg4aklxjbspkn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/95c859e8440049579630b4c2bcc31e7eaa13b1f1/recipes/floobits";
@@ -31317,12 +33182,12 @@
melpaBuild {
pname = "flower";
ename = "flower";
- version = "20180618.1222";
+ version = "20190215.946";
src = fetchFromGitHub {
owner = "PositiveTechnologies";
repo = "flower";
- rev = "4d05448dc0118078ec320f564d87acaa740ae47c";
- sha256 = "02p74f5hfhrhv5l7b9cwfbczsgkpqajlmr66qmkdljgc8ksr86n2";
+ rev = "6ef1affa2d7090714ccc4494823de28cfc11da35";
+ sha256 = "1dp3g52j1i49bv802g27b7yszpxz0i28i4j74qp39qlld3k0gys0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c8a731715d360aea9af2b898242fd4eee5419d14/recipes/flower";
@@ -31335,6 +33200,58 @@
license = lib.licenses.free;
};
}) {};
+ flucui-themes = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flucui-themes";
+ ename = "flucui-themes";
+ version = "20190321.1613";
+ src = fetchFromGitHub {
+ owner = "MetroWind";
+ repo = "flucui-theme";
+ rev = "921ff298da71366eca3d1e4fc410126d405d5366";
+ sha256 = "0gqsr0xsxrbxsdfn3yhf76wxpqp63m1652ryvc2hwskkgj41y3nl";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/77d06aa7405f0badf5ab425ddeeb7a754c17d2af/recipes/flucui-themes";
+ sha256 = "0ki2vxjhccyi6w2y9qj6xbfqgvjd91wqkzn6qq8ig6ggqir7wc6a";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/flucui-themes";
+ license = lib.licenses.free;
+ };
+ }) {};
+ flutter = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flutter";
+ ename = "flutter";
+ version = "20190203.2201";
+ src = fetchFromGitHub {
+ owner = "amake";
+ repo = "flutter.el";
+ rev = "4a59efee1cde408c311ef21c6d3e6fd65868ed42";
+ sha256 = "1cn247dq85pkmv4wpv5pkfaizlphlns0nh97fgna2qr9ig3hpn6j";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/2dc736e396632d7a26c40b6b1de23f41b645722d/recipes/flutter";
+ sha256 = "1v8m3rvdivww9bsk52m0ap336ql5zi637byisil4wcivxabc4i94";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/flutter";
+ license = lib.licenses.free;
+ };
+ }) {};
fluxus-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -31455,12 +33372,12 @@
melpaBuild {
pname = "flycheck";
ename = "flycheck";
- version = "20180720.247";
+ version = "20190320.326";
src = fetchFromGitHub {
owner = "flycheck";
repo = "flycheck";
- rev = "740d6670384e76f86d675d8ab00ff21eb7e09fcb";
- sha256 = "0hskxg1q100j55wszlzscy90vhcaylz40b2wqkrad4bflx4dv2x5";
+ rev = "c311febff8c9bf07d6c6d486c32a07340ba62727";
+ sha256 = "0kfd1a6na2h19ysdr0yziii79mbaqwgd3sjx4f0nvs4rs907a3iq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/649f9c3576e81409ae396606798035173cc6669f/recipes/flycheck";
@@ -31481,12 +33398,12 @@
melpaBuild {
pname = "flycheck-apertium";
ename = "flycheck-apertium";
- version = "20160406.618";
+ version = "20181211.238";
src = fetchFromGitHub {
owner = "unhammer";
repo = "flycheck-apertium";
- rev = "71cf49d5aaee962b995583384bfa045a1d4c3db7";
- sha256 = "14idjjz6fhmq806mmncmqnr9bvcjks6spin8z6jb0gqcg1dbhm06";
+ rev = "22b60a17836477ac1edd15dc85b14f88ca871ba9";
+ sha256 = "0313h4yh85xndzvy3yzznar79ys0ng3rdsz0xa237xqsf71ypg4z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7f6cec0d312f0e86e17829e6fd8f87acabc0174f/recipes/flycheck-apertium";
@@ -31590,12 +33507,12 @@
melpaBuild {
pname = "flycheck-checkbashisms";
ename = "flycheck-checkbashisms";
- version = "20160224.906";
+ version = "20190402.1918";
src = fetchFromGitHub {
owner = "Gnouc";
repo = "flycheck-checkbashisms";
- rev = "39362240b8e38e6ddc1da2e2c2229e3fecdf6057";
- sha256 = "1s2zq97d7ryif6rlbvriz36dh23wmwi67v4q6krl77dfzcs705b3";
+ rev = "2e386775f1a0eb5d80e5d70e98474ee32ecafb24";
+ sha256 = "1ai4p0s6wh4sp972fxkjlc4mn6ai1zc27zh4vm63rfrayri1g31z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f5678ea5aef4dc8a517d6d9381a64f182645d344/recipes/flycheck-checkbashisms";
@@ -31644,12 +33561,12 @@
melpaBuild {
pname = "flycheck-clang-analyzer";
ename = "flycheck-clang-analyzer";
- version = "20180225.2039";
+ version = "20180917.725";
src = fetchFromGitHub {
owner = "alexmurray";
repo = "flycheck-clang-analyzer";
- rev = "adc9e7663bafcc9b740c09b691898413627e74ab";
- sha256 = "10c45myq9vgsssp5v3vnip4klj9dxk8dh42zap44f9lw99ascx2r";
+ rev = "5c707505e3ea806fddb54d031ab64351293d7c2d";
+ sha256 = "0frbblyibalzskw2kv294yz846g04wlvpyshfwm95vwilv1f305v";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8de7b717a1b0caf30f8f29d3e764b4756b93aeff/recipes/flycheck-clang-analyzer";
@@ -31997,14 +33914,14 @@
ename = "flycheck-demjsonlint";
version = "20161114.2318";
src = fetchFromGitHub {
- owner = "z4139jq";
+ owner = "uqix";
repo = "flycheck-demjsonlint";
rev = "1c433150fdf628dda4c9fad938bf7c79610b4460";
sha256 = "0kmvwmaxw64xjgchq8szk9mhbi6xp2jhv7qpgqndf4svia4pqws6";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/b66df1afde83607408fb1b30e1260f22015bf448/recipes/flycheck-demjsonlint";
- sha256 = "0prwgi6v48ng89vvizb901iq4ysmrlh0g2b3797p1a6z2mps0k57";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9a15a17a5aa78aed72958b2a1bde53f0c0ab5be7/recipes/flycheck-demjsonlint";
+ sha256 = "0bcfkc9fch1h6gva64j71kb9l8fc9rz6wk0s9w1c1chx1z4nlill";
name = "recipe";
};
packageRequires = [ flycheck ];
@@ -32127,12 +34044,12 @@
melpaBuild {
pname = "flycheck-dtrace";
ename = "flycheck-dtrace";
- version = "20180126.1135";
+ version = "20180903.930";
src = fetchFromGitHub {
owner = "juergenhoetzel";
repo = "flycheck-dtrace";
- rev = "c418a96cf1dc3bafc17b9bcd23d5097dcf334c92";
- sha256 = "00f7p895nfy9qr1hbcz7h8h8514rcv6ikrxl1pm4nvd045jicfyb";
+ rev = "951fab3a15c11d92b9fac1ea4791a80dfe034a00";
+ sha256 = "1qkzir3lzz4lc5kn55qb52cm5y7iy8w1ljq6xxzcjxfbk9980y0y";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cdcdd10fbcd58a5c67e4d07632212e7dedf42dbe/recipes/flycheck-dtrace";
@@ -32153,12 +34070,12 @@
melpaBuild {
pname = "flycheck-elixir";
ename = "flycheck-elixir";
- version = "20171122.507";
+ version = "20180809.2342";
src = fetchFromGitHub {
owner = "lbolla";
repo = "emacs-flycheck-elixir";
- rev = "1f19a739cdb93851c6b01b1e188e215d035cd4a1";
- sha256 = "01820hm6231z3zaq97jmmvdrpnyp38cb0m6xms5ihq2r1fqx8z2c";
+ rev = "11998d7e3e63a33453e934d25b3673f7c558e579";
+ sha256 = "1hdbg0hvb6hwzjma9mxy0h888c8j2z4g38gwixrdixzbw5727r75";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/da2ab73ab1426f71ea2b2bea2b418941856b3454/recipes/flycheck-elixir";
@@ -32175,29 +34092,87 @@
, fetchFromGitHub
, fetchurl
, flycheck
+ , let-alist
, lib
- , melpaBuild }:
+ , melpaBuild
+ , seq }:
melpaBuild {
pname = "flycheck-elm";
ename = "flycheck-elm";
- version = "20160717.257";
+ version = "20181106.1746";
src = fetchFromGitHub {
owner = "bsermons";
repo = "flycheck-elm";
- rev = "b401873ebd2176190a0a6fb4d61c2cca97d3b9fb";
- sha256 = "18apypk32dyg8zwvrcsza2j10z4zbpff04cz3xzhjskmkzw6210i";
+ rev = "debd0af563cb6c2944367a691c7fa3021d9378c1";
+ sha256 = "1vl0lss2n50pz5wscqj6vhjwb4hbg8xx2chh5vafsrnn0a3fryrd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/78bdcdaa660beda29acecb51761b95d8664d28ac/recipes/flycheck-elm";
sha256 = "06dpv19wgbw48gbf701c77vw1dkpddx8056wpim3zbvwwfwk8ra4";
name = "recipe";
};
- packageRequires = [ emacs flycheck ];
+ packageRequires = [ emacs flycheck let-alist seq ];
meta = {
homepage = "https://melpa.org/#/flycheck-elm";
license = lib.licenses.free;
};
}) {};
+ flycheck-elsa = callPackage ({ cask
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , seq }:
+ melpaBuild {
+ pname = "flycheck-elsa";
+ ename = "flycheck-elsa";
+ version = "20190211.1121";
+ src = fetchFromGitHub {
+ owner = "emacs-elsa";
+ repo = "flycheck-elsa";
+ rev = "d216bf97e6f4f200354f701fadff669403e18e46";
+ sha256 = "1r7xnph5q1si4kp3900nvh1il69nhrb1yfh9h13zwpwfql4add4n";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/2a15c49d2fc800a6b69304edd6dbad90aaa5053f/recipes/flycheck-elsa";
+ sha256 = "07a07hmy7cibm7263dw4x8kkv17g5hby8isaks7n2814ifblf30r";
+ name = "recipe";
+ };
+ packageRequires = [ cask emacs seq ];
+ meta = {
+ homepage = "https://melpa.org/#/flycheck-elsa";
+ license = lib.licenses.free;
+ };
+ }) {};
+ flycheck-ensime = callPackage ({ emacs
+ , ensime
+ , fetchFromGitHub
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flycheck-ensime";
+ ename = "flycheck-ensime";
+ version = "20190212.242";
+ src = fetchFromGitHub {
+ owner = "ncaq";
+ repo = "flycheck-ensime";
+ rev = "9fe000e7004725bc8c3b7554237d717bca9cd9ac";
+ sha256 = "0fl6p2hvcm1f5snx8a82h53kkfnbgycik0d5a7krcjgiby6w7wam";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c8d1ef354566c7f337c62accbd1d2f86ffcbd98a/recipes/flycheck-ensime";
+ sha256 = "11h7xwm8vwi8nca7yy9q0y30jcj77s07aa45xqz7n8rsqp6wdp3z";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ensime flycheck ];
+ meta = {
+ homepage = "https://melpa.org/#/flycheck-ensime";
+ license = lib.licenses.free;
+ };
+ }) {};
flycheck-flawfinder = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -32234,12 +34209,12 @@
melpaBuild {
pname = "flycheck-flow";
ename = "flycheck-flow";
- version = "20180216.1156";
+ version = "20190304.659";
src = fetchFromGitHub {
owner = "lbolla";
repo = "emacs-flycheck-flow";
- rev = "8173accf0e389f7ba0936d399da84839a7f887af";
- sha256 = "14g3mi8i4iy5f3fd3f7yx8ha18zi0kxqgn3sxkvdnk9rp1cdfnk1";
+ rev = "9e8e52cfc98af6a23fd906f9cb5d5d470d8cf82d";
+ sha256 = "14qldlisbmxzammr500gyha2hiv2xgyzfc6mysqii06kbcqn1ik1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4d18fb21d8ef9b33aa84bc26f5918e636c5771e5/recipes/flycheck-flow";
@@ -32288,12 +34263,12 @@
melpaBuild {
pname = "flycheck-golangci-lint";
ename = "flycheck-golangci-lint";
- version = "20180711.117";
+ version = "20190330.712";
src = fetchFromGitHub {
owner = "weijiangan";
repo = "flycheck-golangci-lint";
- rev = "b4b51aa6fe5335c0f46f2f83c7dc32e4141ff9f1";
- sha256 = "0kxzziq4d4x1li1cimjckxk5n1429017k39jbfxm4p1bzq1xd6q3";
+ rev = "8e446c68311048f0b87febf8ef0379e29d358851";
+ sha256 = "0xxxqk8ag082nwwq3dvhzvnbgn9c90mbda7qvi2y4qbh1p1nccqc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fffbecd6cb43866fc9f37ba2d2c998ef6186c6d5/recipes/flycheck-golangci-lint";
@@ -32342,12 +34317,12 @@
melpaBuild {
pname = "flycheck-gradle";
ename = "flycheck-gradle";
- version = "20180403.33";
+ version = "20190314.1934";
src = fetchFromGitHub {
owner = "jojojames";
repo = "flycheck-gradle";
- rev = "a14b45183e50993e8b28a4c57ad5db82b789faef";
- sha256 = "1n3i0fh0rvy29gykqamxayfbbv5jy3h6l375pw4ckydcqlp0dgxk";
+ rev = "1ca08bbc343362a923cbdc2010f66e41655e92ab";
+ sha256 = "14zvx7f2nszf8p14aibqa4pdg3ly7yw66a58bw2whjw9zfi9rnr0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/382d9afd2bbb0c137719c308a67d185b86d84331/recipes/flycheck-gradle";
@@ -32360,6 +34335,32 @@
license = lib.licenses.free;
};
}) {};
+ flycheck-grammalecte = callPackage ({ emacs
+ , fetchgit
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flycheck-grammalecte";
+ ename = "flycheck-grammalecte";
+ version = "20190212.805";
+ src = fetchgit {
+ url = "https://git.deparis.io/flycheck-grammalecte/";
+ rev = "2f4812eaa6e809051e23c34a085df2b704a15741";
+ sha256 = "0xzmr2c74f3375q4nx7zf2jpxawxdkid5mf5nw81wl2v55mv1k2q";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fdd82aa0568d998a3d176b5ee47b8a227438ea09/recipes/flycheck-grammalecte";
+ sha256 = "0xqg995a42cl6mvmpi68ay56fgs636cbzg65q5si5yc1yzgl74nv";
+ name = "recipe";
+ };
+ packageRequires = [ emacs flycheck ];
+ meta = {
+ homepage = "https://melpa.org/#/flycheck-grammalecte";
+ license = lib.licenses.free;
+ };
+ }) {};
flycheck-haskell = callPackage ({ dash
, emacs
, fetchFromGitHub
@@ -32373,12 +34374,12 @@
melpaBuild {
pname = "flycheck-haskell";
ename = "flycheck-haskell";
- version = "20180611.1442";
+ version = "20181207.846";
src = fetchFromGitHub {
owner = "flycheck";
repo = "flycheck-haskell";
- rev = "32877c2912d435c30c0202680611d127862a372c";
- sha256 = "1glqpgk27fabhs8g6h6g0mlaxbvg2vb2z99rr27nk938f0mv65za";
+ rev = "32ddff87165a7d3a35e7318bee997b5b4bd41278";
+ sha256 = "10pgsbagq6qj4mshq5sypv0q0khck92b30sc793b4g1pfpsxvgjn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6ca601613788ae830655e148a222625035195f55/recipes/flycheck-haskell";
@@ -32418,6 +34419,32 @@
license = lib.licenses.free;
};
}) {};
+ flycheck-ini-pyinilint = callPackage ({ fetchFromGitLab
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flycheck-ini-pyinilint";
+ ename = "flycheck-ini-pyinilint";
+ version = "20190312.1231";
+ src = fetchFromGitLab {
+ owner = "danieljrmay";
+ repo = "flycheck-ini-pyinilint";
+ rev = "54744a78d06373404933fedc3ca836916e83de51";
+ sha256 = "1zdvan6l2s97s7swnccq21z1ja8vl64l757j3hg50ipq8j5yy9dl";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c2a1d0b4be0dd3e238ad2e3a157b11ecc82c0639/recipes/flycheck-ini-pyinilint";
+ sha256 = "028ksrlrrsn2wsz7kqf3qk4pp3scs7zvp74c4xj52rm4hh7ycbl7";
+ name = "recipe";
+ };
+ packageRequires = [ flycheck ];
+ meta = {
+ homepage = "https://melpa.org/#/flycheck-ini-pyinilint";
+ license = lib.licenses.free;
+ };
+ }) {};
flycheck-inline = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -32427,12 +34454,12 @@
melpaBuild {
pname = "flycheck-inline";
ename = "flycheck-inline";
- version = "20180529.614";
+ version = "20190320.911";
src = fetchFromGitHub {
owner = "flycheck";
repo = "flycheck-inline";
- rev = "816d37bd7f7034502a7569515df1898a3bcd155c";
- sha256 = "12lsf5f6866jgj5s40gcsg377gzvwni8bla6bx4l5jjn36lf1nvi";
+ rev = "cf9eceabff8370f3b834b943a5777b9f914583f9";
+ sha256 = "1sk8r90iqxpzrg0lpq4vd8ywdi08i0bbmgdivmr510jw2bpi3wp4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a9ecc3a4696d2b3b0f0b8b1ca6e5285380ac046a/recipes/flycheck-inline";
@@ -32508,12 +34535,12 @@
melpaBuild {
pname = "flycheck-joker";
ename = "flycheck-joker";
- version = "20180712.2102";
+ version = "20180912.2204";
src = fetchFromGitHub {
owner = "candid82";
repo = "flycheck-joker";
- rev = "0d8d5683a273093ca12841bf93d10dae97ccbc5d";
- sha256 = "0r9w0ky1522yz1jdi8fd36lpdjm30vxq41x77vswikqxvscri3dq";
+ rev = "51e99e697761ee8dab863930910abdba7607c1bd";
+ sha256 = "07pxfvnrgp7f3rb27j1zrq04pncvga4291krqqy3dzwazsjplz48";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/599bf33a5d4a4a590b355001e532cab4e1ee9ef6/recipes/flycheck-joker";
@@ -32587,12 +34614,12 @@
melpaBuild {
pname = "flycheck-ledger";
ename = "flycheck-ledger";
- version = "20180125.31";
+ version = "20180818.2021";
src = fetchFromGitHub {
owner = "purcell";
repo = "flycheck-ledger";
- rev = "044f28d126d1bce55c4b78ba6d5bc92e1f6cfd69";
- sha256 = "1k14jwz79mjsm0cfig5lc0byfrhvm495wrkybdl36b56q4qhxf58";
+ rev = "8d7f52a4c7f80ca396ef0fc6c7d8e9f005778dfc";
+ sha256 = "0m5zhyzrh4lx7vzwdgdwcfkipdvi3y8kavhckbd7vd9zwx539ij1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dc715e6849aa5d6017e2478514c4a0d84c7ddbe5/recipes/flycheck-ledger";
@@ -32668,12 +34695,12 @@
melpaBuild {
pname = "flycheck-mercury";
ename = "flycheck-mercury";
- version = "20151122.2334";
+ version = "20181118.1152";
src = fetchFromGitHub {
owner = "flycheck";
repo = "flycheck-mercury";
- rev = "fa9e433a0a912f0fae9e4dec9ea616ef99fcf861";
- sha256 = "0isqa6ybdd4166h3rdcg0b8pcxn00v8dav58xwfcj92nhzvs0qca";
+ rev = "b6807a8db70981e21a91a93324c31e49de85c89f";
+ sha256 = "15pjqglpcwm4wy0cxk1man3ar0n56qi1bjrr1fxfjq2xwsgsfagh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a775d12d9b9b6f27a44aeffbbb18de46a9e1b532/recipes/flycheck-mercury";
@@ -32722,12 +34749,12 @@
melpaBuild {
pname = "flycheck-mmark";
ename = "flycheck-mmark";
- version = "20180203.932";
+ version = "20181231.2257";
src = fetchFromGitHub {
owner = "mmark-md";
repo = "flycheck-mmark";
- rev = "7fdcc48ff6ffa5e7db126a76f4948ab08b9eb8d4";
- sha256 = "0g6a8nm5mxgca7psyi127ky68mal0lj7n486fgrwsg3bxglbsk5m";
+ rev = "a11563dcb9ed48f71274e0c6eb9e76b65d44bf40";
+ sha256 = "00pg5cds9s82aip9bh9f6qlknzcfdxlj37gi8cffknxxgmvrrjbc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2fd10423ab80e32245bb494005c8f87a8987fffb/recipes/flycheck-mmark";
@@ -32748,12 +34775,12 @@
melpaBuild {
pname = "flycheck-mypy";
ename = "flycheck-mypy";
- version = "20180518.4";
+ version = "20180907.316";
src = fetchFromGitHub {
owner = "lbolla";
repo = "emacs-flycheck-mypy";
- rev = "043e8bba13a6d5e760cde8374c8f77d90946a1f5";
- sha256 = "0rcw8nxs5n9l8gdgs1yy240qnbad60j1m15xdy35s99nq7x1ksvn";
+ rev = "6f99166f5229c7b4298cff1818b7eaece1c9c8bd";
+ sha256 = "06rdwjljhficbdf74qzlxsy02xhd8msp79fx75nwbxbd84q6dr5w";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b1f5ad8263ee33b8950ff68e39dca5b1f1748c1b/recipes/flycheck-mypy";
@@ -32829,12 +34856,12 @@
melpaBuild {
pname = "flycheck-objc-clang";
ename = "flycheck-objc-clang";
- version = "20180410.422";
+ version = "20181116.401";
src = fetchFromGitHub {
owner = "GyazSquare";
repo = "flycheck-objc-clang";
- rev = "f4a76ac199b67ff383ab5e70434c9b98b48c92d5";
- sha256 = "0ryanx4vmy9jwqjnwvma6dm136y4fh227cyhz206km6595bbn3nc";
+ rev = "a3781e47f14068c811534a3348bf479eeb3f2041";
+ sha256 = "00a2wg6g74plbmva3bwms7brdlv9i28w51yxisiv04la126m69js";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4ff4412f507371b93cfb85fc744e54110cd87338/recipes/flycheck-objc-clang";
@@ -32903,6 +34930,34 @@
license = lib.licenses.free;
};
}) {};
+ flycheck-pact = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild
+ , pact-mode }:
+ melpaBuild {
+ pname = "flycheck-pact";
+ ename = "flycheck-pact";
+ version = "20180920.1352";
+ src = fetchFromGitHub {
+ owner = "kadena-io";
+ repo = "flycheck-pact";
+ rev = "0e10045064ef89ec8b6f5a473073d47b976a2ca3";
+ sha256 = "072jc0vrjg531ydk5bjrjpmbvdk81yw75jqjnvb7alkib6jn5f9r";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0ffc77b2ddcd4f9c27a2306459cf2fcde7880e3e/recipes/flycheck-pact";
+ sha256 = "1nxmh6p2id4cxzs7jxdrk88g8qmvk33nbzmrqhm7962iqizlvnrw";
+ name = "recipe";
+ };
+ packageRequires = [ emacs flycheck pact-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/flycheck-pact";
+ license = lib.licenses.free;
+ };
+ }) {};
flycheck-perl6 = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -32940,12 +34995,12 @@
melpaBuild {
pname = "flycheck-phpstan";
ename = "flycheck-phpstan";
- version = "20180430.358";
+ version = "20190227.842";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "phpstan.el";
- rev = "3653f2a316f4199cbd3238e984eea2325e2618d5";
- sha256 = "1dyba8hpr16nsdv1i45pl3w97728w7p8vl9gf5gvd18xcll4848d";
+ rev = "1151b8d418af532fdf0732b9793b479c64a364e3";
+ sha256 = "0wb9pshgcrq2w9d9fpkywz299ihcb9fffh3fdk8rm1r8irylrjkh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5a2b6cc39957e6d7185bd2bdfa3755e5b1f474a6/recipes/flycheck-phpstan";
@@ -33022,12 +35077,12 @@
melpaBuild {
pname = "flycheck-pony";
ename = "flycheck-pony";
- version = "20160501.1417";
+ version = "20190226.1835";
src = fetchFromGitHub {
owner = "SeanTAllen";
repo = "flycheck-pony";
- rev = "3d3387133a44f5b3f0fb178ef4addf6e1ce1df2f";
- sha256 = "1da10q378k5kbcj0rrpzhm7r3ym4rfwc7v1ialcndbmflsn09m5s";
+ rev = "9356cbcd404eaf381ab0c4b0f9c47232f723fa7e";
+ sha256 = "1rzz3cl0pxn3hhrkxcdiy17wl4dzbn8kxm3hq90zmhag1gbfy4zz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e2bcb82f4ddb92243058c9ab1a67d4f7ef87b155/recipes/flycheck-pony";
@@ -33106,12 +35161,12 @@
melpaBuild {
pname = "flycheck-posframe";
ename = "flycheck-posframe";
- version = "20180321.2307";
+ version = "20190327.411";
src = fetchFromGitHub {
owner = "alexmurray";
repo = "flycheck-posframe";
- rev = "61bdfd4b04e1651163fdcaa7dc631ad073b3e513";
- sha256 = "1r5cwmrszp5cvzlcc4dyhajxd0zrgxjpc0arhr2jkw1fc3d611x9";
+ rev = "d1591cfaef04c67e1a01a32833f140ab27c33773";
+ sha256 = "1c1fxl8l8z5b6k4hb2bk6n6w4diyg9sz04qbqq91qls8rwnnvy0a";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/124f2a7833e3386a0bf57c8111d782ae7a7ee02e/recipes/flycheck-posframe";
@@ -33150,36 +35205,6 @@
license = lib.licenses.free;
};
}) {};
- flycheck-purescript = callPackage ({ dash
- , emacs
- , fetchFromGitHub
- , fetchurl
- , flycheck
- , let-alist
- , lib
- , melpaBuild
- , seq }:
- melpaBuild {
- pname = "flycheck-purescript";
- ename = "flycheck-purescript";
- version = "20161121.907";
- src = fetchFromGitHub {
- owner = "emacs-pe";
- repo = "flycheck-purescript";
- rev = "60087203dfc9a1338a77c5d621480eac6f0426e1";
- sha256 = "00iyy7gfhxyz4zna423c6y4wyx0rcd6kd1z50s22bi31bya9w8k1";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/a315aad238fa223058a495e1ca8c71da6447024c/recipes/flycheck-purescript";
- sha256 = "05j1iscyg9khw0zq63676zrisragklxp48hmbc7vrbmbiy964lwd";
- name = "recipe";
- };
- packageRequires = [ dash emacs flycheck let-alist seq ];
- meta = {
- homepage = "https://melpa.org/#/flycheck-purescript";
- license = lib.licenses.free;
- };
- }) {};
flycheck-pycheckers = callPackage ({ fetchFromGitHub
, fetchurl
, flycheck
@@ -33188,12 +35213,12 @@
melpaBuild {
pname = "flycheck-pycheckers";
ename = "flycheck-pycheckers";
- version = "20180717.2300";
+ version = "20190308.1115";
src = fetchFromGitHub {
owner = "msherry";
repo = "flycheck-pycheckers";
- rev = "f85eb69318729689d09f69e955d800ddc6124d6a";
- sha256 = "0dw342g27mhnfpv83ni7gjx47issmk94hinrakjaf91vm3bjwaag";
+ rev = "15951d3dfec4c63e4761af53a85f2ade6182bf82";
+ sha256 = "01lbh1g2ndgsk71qyskx9aii95bbw787mrf98zh7ihk2ak5nskaz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/af36dca316b318d25d65c9e842f15f736e19ea63/recipes/flycheck-pycheckers";
@@ -33232,29 +35257,31 @@
license = lib.licenses.free;
};
}) {};
- flycheck-rebar3 = callPackage ({ fetchFromGitHub
- , fetchurl
- , flycheck
- , lib
- , melpaBuild }:
+ flycheck-pyre = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild }:
melpaBuild {
- pname = "flycheck-rebar3";
- ename = "flycheck-rebar3";
- version = "20161030.615";
+ pname = "flycheck-pyre";
+ ename = "flycheck-pyre";
+ version = "20190215.422";
src = fetchFromGitHub {
- owner = "joedevivo";
- repo = "flycheck-rebar3";
- rev = "56a7c94857f0a0ea6a2a73c476a1a2faadc0f7c6";
- sha256 = "1pas49arri2vs9zm3r8jl4md74p5fpips3imc3s7nafbfrhh8ix3";
+ owner = "linnik";
+ repo = "flycheck-pyre";
+ rev = "0560122caae207d99d8af1ac2b4e5d6f6a1ce444";
+ sha256 = "0f58127197q6yfylz53nigyn7v91pcsdd91ywfgq5lrl0f5fvmdy";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2acff5eea030b91e457df8aa75243993c87ca00e/recipes/flycheck-rebar3";
- sha256 = "1ml9k61n5vy4c2q6c10q9j10ky0iqkinx21bl7hip1r6b5b1kmmc";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aca6199ebfbf93f844c8f7a3db785dec079ef8af/recipes/flycheck-pyre";
+ sha256 = "0h7ccxw9ymlmr2vq3p61cbfxfcjs8pzm73654s13c18rbl6dzfxv";
name = "recipe";
};
- packageRequires = [ flycheck ];
+ packageRequires = [ cl-lib emacs flycheck ];
meta = {
- homepage = "https://melpa.org/#/flycheck-rebar3";
+ homepage = "https://melpa.org/#/flycheck-pyre";
license = lib.licenses.free;
};
}) {};
@@ -33298,12 +35325,12 @@
melpaBuild {
pname = "flycheck-rust";
ename = "flycheck-rust";
- version = "20180327.945";
+ version = "20190319.846";
src = fetchFromGitHub {
owner = "flycheck";
repo = "flycheck-rust";
- rev = "a722204cff5bffe26b8f127c7003cfc9ed00e34b";
- sha256 = "1z0zkf4dxkma6qz83ysyhbfvr0sg2cwxvsapc9j9l1x9nskybv2g";
+ rev = "a139cd53c5062697e9ed94ad80b803c37d999600";
+ sha256 = "1fh6j5w2387nh2fwwjphkhq17cgj5m2q5k0fhidvgc2w65lzbr1r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/68d8cdf3d225b13ebbbe5ce81a01366f33266aed/recipes/flycheck-rust";
@@ -33316,6 +35343,33 @@
license = lib.licenses.free;
};
}) {};
+ flycheck-soar = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flycheck-soar";
+ ename = "flycheck-soar";
+ version = "20181106.52";
+ src = fetchFromGitHub {
+ owner = "tszg";
+ repo = "flycheck-soar";
+ rev = "d2f03a0af9b625a645f3194dc24cfeee94d92760";
+ sha256 = "02ll2nw2x45nfmxdj1ps62jr663spy01vy8gfg1qh2rl1pjviwqw";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/15cae578c5ba5152be0726f046b5f2dc4719a387/recipes/flycheck-soar";
+ sha256 = "14xpq3pdfwacmhl9x8fdzcsanpf6zljdzh6gwclw724k720acbdl";
+ name = "recipe";
+ };
+ packageRequires = [ emacs flycheck ];
+ meta = {
+ homepage = "https://melpa.org/#/flycheck-soar";
+ license = lib.licenses.free;
+ };
+ }) {};
flycheck-stack = callPackage ({ fetchFromGitHub
, fetchurl
, flycheck
@@ -33408,12 +35462,12 @@
melpaBuild {
pname = "flycheck-swift3";
ename = "flycheck-swift3";
- version = "20180411.652";
+ version = "20190125.2050";
src = fetchFromGitHub {
owner = "GyazSquare";
repo = "flycheck-swift3";
- rev = "06a6f98d7e498860b345bbd03e96bfe59608f508";
- sha256 = "0h1n4x0fvqfb6jcapbab1ck6bj4d7irbn9zz2hxv2rlrkqxfsmh3";
+ rev = "ba4e831ff04b180323435214dd4cca8184968ad1";
+ sha256 = "1ss2s3q2mv07ph87i2fki1nxq6b51xs4i1mll1faplj2nrr2hyzm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f1fb8c731c118327dc0bbb726e046fec46bcfb82/recipes/flycheck-swift3";
@@ -33435,12 +35489,12 @@
melpaBuild {
pname = "flycheck-swiftlint";
ename = "flycheck-swiftlint";
- version = "20180312.1656";
+ version = "20180829.2040";
src = fetchFromGitHub {
owner = "jojojames";
repo = "flycheck-swiftlint";
- rev = "8496fd4499ef5c0e0cfeb65f4d76c6f9dd8991f3";
- sha256 = "0d2s9brccv7lgw2vnglhhaq29mxb3pxiclhx4w28gb76x8r2rsf7";
+ rev = "65101873c4c9f8e7eac9471188b161eeddda1555";
+ sha256 = "007n0jv5z159pw5bcqcycv6h31rl0z16m22yrhqi94yc14jlw5ma";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7e2a979726507e974a0a19dfc2ca6884157025be/recipes/flycheck-swiftlint";
@@ -33545,12 +35599,12 @@
melpaBuild {
pname = "flycheck-vale";
ename = "flycheck-vale";
- version = "20180308.2243";
+ version = "20180928.42";
src = fetchFromGitHub {
owner = "abingham";
repo = "flycheck-vale";
- rev = "7777e0d4cf961b6ee6ae4ef917636121d18b3ee8";
- sha256 = "1k0bhyy2r9c79lld7mbhw8n4c1hlzwr5qp5wmcxzya0fnp3s6g9j";
+ rev = "131dacdf55e2b469d64543e4ae373aa93ec40a4f";
+ sha256 = "07927h7d8qpf7wi6ish8lh15x414qz4298bik3p7vgls7qr8di4h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7693eeb536e601589b49f96d0e2734cd08fad4f2/recipes/flycheck-vale";
@@ -33563,6 +35617,34 @@
license = lib.licenses.free;
};
}) {};
+ flycheck-vdm = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild
+ , vdm-mode }:
+ melpaBuild {
+ pname = "flycheck-vdm";
+ ename = "flycheck-vdm";
+ version = "20190304.39";
+ src = fetchFromGitHub {
+ owner = "peterwvj";
+ repo = "vdm-mode";
+ rev = "103993147b24325ef68099d087dce9ac501f02f9";
+ sha256 = "1amwm9m6d0z5pjkp9ng8xma57058br3fvnhk64placlln6fkajbz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f246b9dcf7915a845b9e2cd44cc1a0833b412c8f/recipes/flycheck-vdm";
+ sha256 = "15ng1l8gfp8iz50yb5d39dy57763gd2x8j6z6rz0byiykgxhl9zg";
+ name = "recipe";
+ };
+ packageRequires = [ emacs flycheck vdm-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/flycheck-vdm";
+ license = lib.licenses.free;
+ };
+ }) {};
flycheck-xcode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -33655,12 +35737,12 @@
melpaBuild {
pname = "flycheck-ycmd";
ename = "flycheck-ycmd";
- version = "20180207.843";
+ version = "20181015.2318";
src = fetchFromGitHub {
owner = "abingham";
repo = "emacs-ycmd";
- rev = "e21c99de8fd2992031adaa758df0d495e55d682a";
- sha256 = "1l9xsqlcqi25mdka806gz3h4y4x0dh00n6bajh3x908ayixjgf91";
+ rev = "ef87d020d3314efbac2e8925c115d0ac5c128c2a";
+ sha256 = "143xc0ji8s3par4jfz8fxwrxqwfhndc1w8vrzpsycxc36mryzy26";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flycheck-ycmd";
@@ -33777,6 +35859,33 @@
license = lib.licenses.free;
};
}) {};
+ flymake-diagnostic-at-point = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , popup }:
+ melpaBuild {
+ pname = "flymake-diagnostic-at-point";
+ ename = "flymake-diagnostic-at-point";
+ version = "20180815.304";
+ src = fetchFromGitHub {
+ owner = "meqif";
+ repo = "flymake-diagnostic-at-point";
+ rev = "379616b1c6f5ebeaf08fbe54ae765008a78b3be7";
+ sha256 = "1wbzrxxz5z1xg2lwmqgglvixxf1xm3gl6mdyj9idsbym05azm3hg";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b7ae169ca3b59d3b876d52148dac573b7f083ac3/recipes/flymake-diagnostic-at-point";
+ sha256 = "0cdxb9w5sq6z6wramj1bss5vwqzxkmdyzb1di39rghyh243cdrzx";
+ name = "recipe";
+ };
+ packageRequires = [ emacs popup ];
+ meta = {
+ homepage = "https://melpa.org/#/flymake-diagnostic-at-point";
+ license = lib.licenses.free;
+ };
+ }) {};
flymake-easy = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -33903,6 +36012,32 @@
license = lib.licenses.free;
};
}) {};
+ flymake-gradle = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flymake-gradle";
+ ename = "flymake-gradle";
+ version = "20190314.1933";
+ src = fetchFromGitHub {
+ owner = "jojojames";
+ repo = "flymake-gradle";
+ rev = "dbedd29b78d4828ef57d4de20867be5df3eaab99";
+ sha256 = "0g6h09lz68b4dvqv5sksr7gkab0599fbm07xnc2mk01lzbas43b0";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/7cccc8537324e0faf7fd35325e3ccd3b2e05771a/recipes/flymake-gradle";
+ sha256 = "00wpymzw2j2zx37nq8qf77pk04r0hxlmlwykcj6yzq9bfgi75wnf";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/flymake-gradle";
+ license = lib.licenses.free;
+ };
+ }) {};
flymake-haml = callPackage ({ fetchFromGitHub
, fetchurl
, flymake-easy
@@ -34059,6 +36194,32 @@
license = lib.licenses.free;
};
}) {};
+ flymake-ktlint = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flymake-ktlint";
+ ename = "flymake-ktlint";
+ version = "20180830.2046";
+ src = fetchFromGitHub {
+ owner = "jojojames";
+ repo = "flymake-ktlint";
+ rev = "bea8bf350802c06756efd4e6dfba65f31dc41d78";
+ sha256 = "0sycdd3har8rxg8jm55nl25g8f41y3rsnsn4sblb7pbz5x5i6ixc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/7b2e630e5e16044fb8ffe251f4fa58fb8f3d6bb9/recipes/flymake-ktlint";
+ sha256 = "07v90pkhmrz59m6hf1lzxq4h3kk4qblihw4qgz5phbj4l5pahivd";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/flymake-ktlint";
+ license = lib.licenses.free;
+ };
+ }) {};
flymake-less = callPackage ({ fetchFromGitHub
, fetchurl
, flymake-easy
@@ -34121,14 +36282,14 @@
ename = "flymake-perlcritic";
version = "20120328.114";
src = fetchFromGitHub {
- owner = "illusori";
+ owner = "flymake";
repo = "emacs-flymake-perlcritic";
rev = "0692d6ad5495f6e5438bde0a10345829b8e1def8";
sha256 = "11r982h5fhjkmm9ld8wfdip0ghinw523nm1w4fmy830g0bbkgkrq";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/flymake-perlcritic";
- sha256 = "0hibnh463wzhvpix7gygpgs04gi6salwjrsjc6d43lxlsn3y1im8";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/flymake-perlcritic";
+ sha256 = "1i0bc81cby2nsala2mhghzv7clhbf1gpp54vdxiq2wdanqy25vmk";
name = "recipe";
};
packageRequires = [ flymake ];
@@ -34241,6 +36402,32 @@
license = lib.licenses.free;
};
}) {};
+ flymake-racket = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flymake-racket";
+ ename = "flymake-racket";
+ version = "20180911.1809";
+ src = fetchFromGitHub {
+ owner = "jojojames";
+ repo = "flymake-racket";
+ rev = "7900d9c1a34a55ca281cc997e9620f5f31cc098c";
+ sha256 = "10iygb5wmdqc2fk398l918bz56myd858h6xvgd8ml1av7v5x3zmp";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/67f2b469ea8df6d0db6b9ece91f544c0e7dd3ab2/recipes/flymake-racket";
+ sha256 = "173dyn8bxggyh0g97gg5f0si3905116i3k6s3islsblgrz00gjcn";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/flymake-racket";
+ license = lib.licenses.free;
+ };
+ }) {};
flymake-ruby = callPackage ({ fetchFromGitHub
, fetchurl
, flymake-easy
@@ -34345,6 +36532,32 @@
license = lib.licenses.free;
};
}) {};
+ flymake-shellcheck = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flymake-shellcheck";
+ ename = "flymake-shellcheck";
+ version = "20181213.1624";
+ src = fetchFromGitHub {
+ owner = "federicotdn";
+ repo = "flymake-shellcheck";
+ rev = "ee240f2177510ffadbb21220e2b2376edff05020";
+ sha256 = "1nrpgxwkybz7wd0751j9224fvg0lfmkdxqac39mlbzx8ypk6sy3q";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/8dccb106ff6c9cb4b14440be9026c3e427dddff2/recipes/flymake-shellcheck";
+ sha256 = "1gvm4sh1sga3gkkg0zi7ynvp9b09sx16cclj2qzawmgfv2c111vy";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/flymake-shellcheck";
+ license = lib.licenses.free;
+ };
+ }) {};
flymake-solidity = callPackage ({ fetchFromGitHub
, fetchurl
, flymake-easy
@@ -34397,6 +36610,32 @@
license = lib.licenses.free;
};
}) {};
+ flymake-vnu = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flymake-vnu";
+ ename = "flymake-vnu";
+ version = "20181127.1816";
+ src = fetchFromGitHub {
+ owner = "theneosloth";
+ repo = "flymake-vnu";
+ rev = "7c4ab9d12611756ad5a80d866890b2f9b73fb611";
+ sha256 = "1jzdypfbvdbm9z6ankl35bzlpf32iymzlvxmdykddzwzbhkj1npf";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0cfb4c70ebb75088ef6fb39efde91429802b4671/recipes/flymake-vnu";
+ sha256 = "05i6sfylg716cr0k0hyvkmag25qcqh51plljv6sw8250fwxwn0xn";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/flymake-vnu";
+ license = lib.licenses.free;
+ };
+ }) {};
flymake-yaml = callPackage ({ fetchFromGitHub
, fetchurl
, flymake-easy
@@ -34481,12 +36720,12 @@
melpaBuild {
pname = "flyspell-correct";
ename = "flyspell-correct";
- version = "20180427.1135";
+ version = "20181223.348";
src = fetchFromGitHub {
owner = "d12frosted";
repo = "flyspell-correct";
- rev = "e47b83e5efb524dfab5a6f92304b319fa6376ae0";
- sha256 = "1w1idyryxq496i1plx8xjyfidakyncx3sa9j3ik7x148ywaf8kwm";
+ rev = "cf492832a59d1b1112868fff430a6f74f9baf83a";
+ sha256 = "102nf4abm6kpk3mkf850hq55x61nvv919p66jdg9ry732682987b";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fa06fbe3bc40ae5e3f6d10dee93a9d49e9288ba5/recipes/flyspell-correct";
@@ -34508,12 +36747,12 @@
melpaBuild {
pname = "flyspell-correct-helm";
ename = "flyspell-correct-helm";
- version = "20180427.1135";
+ version = "20181205.1132";
src = fetchFromGitHub {
owner = "d12frosted";
repo = "flyspell-correct";
- rev = "e47b83e5efb524dfab5a6f92304b319fa6376ae0";
- sha256 = "1w1idyryxq496i1plx8xjyfidakyncx3sa9j3ik7x148ywaf8kwm";
+ rev = "2f5548ded6991b22ad291372640aecaf6eac7a39";
+ sha256 = "1xwm0kg3x403x5s2bg9f42qwbc9hq4x7lhqjw95q7jsbq5nq4kiy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7b9302d8f804c77eb81fee7ed27f13cb1176f6/recipes/flyspell-correct-helm";
@@ -34535,12 +36774,12 @@
melpaBuild {
pname = "flyspell-correct-ivy";
ename = "flyspell-correct-ivy";
- version = "20180427.1135";
+ version = "20181205.1132";
src = fetchFromGitHub {
owner = "d12frosted";
repo = "flyspell-correct";
- rev = "e47b83e5efb524dfab5a6f92304b319fa6376ae0";
- sha256 = "1w1idyryxq496i1plx8xjyfidakyncx3sa9j3ik7x148ywaf8kwm";
+ rev = "2f5548ded6991b22ad291372640aecaf6eac7a39";
+ sha256 = "1xwm0kg3x403x5s2bg9f42qwbc9hq4x7lhqjw95q7jsbq5nq4kiy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7b9302d8f804c77eb81fee7ed27f13cb1176f6/recipes/flyspell-correct-ivy";
@@ -34562,12 +36801,12 @@
melpaBuild {
pname = "flyspell-correct-popup";
ename = "flyspell-correct-popup";
- version = "20180427.1135";
+ version = "20181205.1132";
src = fetchFromGitHub {
owner = "d12frosted";
repo = "flyspell-correct";
- rev = "e47b83e5efb524dfab5a6f92304b319fa6376ae0";
- sha256 = "1w1idyryxq496i1plx8xjyfidakyncx3sa9j3ik7x148ywaf8kwm";
+ rev = "2f5548ded6991b22ad291372640aecaf6eac7a39";
+ sha256 = "1xwm0kg3x403x5s2bg9f42qwbc9hq4x7lhqjw95q7jsbq5nq4kiy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7b9302d8f804c77eb81fee7ed27f13cb1176f6/recipes/flyspell-correct-popup";
@@ -34696,12 +36935,12 @@
melpaBuild {
pname = "focus";
ename = "focus";
- version = "20171203.2103";
+ version = "20190317.1942";
src = fetchFromGitHub {
owner = "larstvei";
repo = "Focus";
- rev = "045ee6175e9340f873db03445c74ff9eefa35a27";
- sha256 = "1hrx8bj4gf0dqbfxgvis62zxnkiyms6v730s55vd8711zxdl0pw4";
+ rev = "ab42b8779929beeb7878c7fb3d3ccd80d9327c7f";
+ sha256 = "079v1syid7h2vr2ya6hs6hl0pgj60qdsw60mqw4cj2zllmkrkwj4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4e8f1217224514f9b048b7101c89e3b1a305821e/recipes/focus";
@@ -34748,12 +36987,12 @@
melpaBuild {
pname = "foggy-night-theme";
ename = "foggy-night-theme";
- version = "20160209.708";
+ version = "20190123.814";
src = fetchFromGitHub {
owner = "mswift42";
repo = "foggy-night-theme";
- rev = "60a12abdac29c2d913e1cf24485d0cc083e26093";
- sha256 = "1mnak9k0hz99jq2p7gydxajzvx2vcql8yzwcm0v80a6xji2whl70";
+ rev = "14894e06ee5c6e14db36f2cb07387ee971c1736f";
+ sha256 = "1rjhb8gjlnw002y8sjn2d976qdsjgvp9hsrlca1h5wmmkfha9knp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/65b3f5959241e601fdf9469e407d153cebcbe24c/recipes/foggy-night-theme";
@@ -34824,12 +37063,12 @@
melpaBuild {
pname = "fold-this";
ename = "fold-this";
- version = "20180224.40";
+ version = "20180828.636";
src = fetchFromGitHub {
owner = "magnars";
repo = "fold-this.el";
- rev = "4fb509a4176e950d083a5321ad62742f2e9bcb7b";
- sha256 = "1csazxx6wnnriklbrdqxmf7nc67gqb7c5zppr797bk4j4calskgf";
+ rev = "49bdb7fe6a8f207afb1f05382372674a7c876ba8";
+ sha256 = "1h9afb019y1c488c2s6w7nas32b89lngrl7f90rd8i9ynm5lbvr0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9853fcb99bd8717c77fa2b3bafb6e85d0d5d491c/recipes/fold-this";
@@ -35006,12 +37245,12 @@
melpaBuild {
pname = "forecast";
ename = "forecast";
- version = "20180429.1515";
+ version = "20190124.1028";
src = fetchFromGitHub {
owner = "cadadr";
repo = "elisp";
- rev = "ffe03506694c94de0444995f973a925deccc400a";
- sha256 = "02wcvka96zdlq3myfar7dqywfil2b77bc6ydmgcphwn3as3kl08r";
+ rev = "b19b37be332bada6b18d4d895edf6ce78ab420c4";
+ sha256 = "0i97l8fdrjjb6dzfcqgss5yj4ibkiaxnj32sm6nyr2s7bijkvi4x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a7ea18a56370348715dec91f75adc162c800dd10/recipes/forecast";
@@ -35105,6 +37344,52 @@
license = lib.licenses.free;
};
}) {};
+ forge = callPackage ({ closql
+ , dash
+ , emacs
+ , emacsql-sqlite
+ , fetchFromGitHub
+ , fetchurl
+ , ghub
+ , graphql
+ , let-alist
+ , lib
+ , magit
+ , markdown-mode
+ , melpaBuild
+ , transient }:
+ melpaBuild {
+ pname = "forge";
+ ename = "forge";
+ version = "20190407.915";
+ src = fetchFromGitHub {
+ owner = "magit";
+ repo = "forge";
+ rev = "d803da1d817453684c644ef2822c7e29cee768e3";
+ sha256 = "1d10wb5j6lnc2r87qhwmfzbs9gav178g8vwsgx9cfhzzk9hyqd02";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/23512cf8152161322960d72a5ec49a7595003477/recipes/forge";
+ sha256 = "0a1yvdxx43zq9ivwmg34wyybkw4vhgzd2c54cchsbrbr972x9522";
+ name = "recipe";
+ };
+ packageRequires = [
+ closql
+ dash
+ emacs
+ emacsql-sqlite
+ ghub
+ graphql
+ let-alist
+ magit
+ markdown-mode
+ transient
+ ];
+ meta = {
+ homepage = "https://melpa.org/#/forge";
+ license = lib.licenses.free;
+ };
+ }) {};
form-feed = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -35131,6 +37416,7 @@
};
}) {};
format-all = callPackage ({ cl-lib ? null
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -35138,19 +37424,19 @@
melpaBuild {
pname = "format-all";
ename = "format-all";
- version = "20180722.159";
+ version = "20190330.1206";
src = fetchFromGitHub {
owner = "lassik";
repo = "emacs-format-all-the-code";
- rev = "6b0bd2fadb8f672e93bc58f2de94be97f5a1b6d6";
- sha256 = "1y2y2ank4bll0h4bsd0d60aqq5hlylna9zvg18q3n68isqagn7zh";
+ rev = "7dd5c5e9f73ae36bb78567ee429ac88220938b6c";
+ sha256 = "0j20k0d7v5zjdr2hkn3r9vymw343qkp1j8gj6jylr3j51c4gd2x3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f53143ebd42ef5be793b86d50b23f0a57617d6cc/recipes/format-all";
sha256 = "1kmnv8ypxvgm3p79cc1wk8032fh7bl1pripys180vw89r2748qs9";
name = "recipe";
};
- packageRequires = [ cl-lib ];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://melpa.org/#/format-all";
license = lib.licenses.free;
@@ -35181,6 +37467,33 @@
license = lib.licenses.free;
};
}) {};
+ format-table = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "format-table";
+ ename = "format-table";
+ version = "20181223.816";
+ src = fetchFromGitHub {
+ owner = "functionreturnfunction";
+ repo = "format-table";
+ rev = "dfcae3a867e574577fc09a43b045889ff155b58f";
+ sha256 = "1z9l1qmv5hw7bgchi5f68nzsz9arjwsazvd6viq6k6jmjzncli6q";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e307ead5e8a291cb5dfe316f3b13144e71b6a1b7/recipes/format-table";
+ sha256 = "1fwjilx0n9m8q0macq231i73zvridjfgqlhw7d1xblw4qp82rzvp";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/format-table";
+ license = lib.licenses.free;
+ };
+ }) {};
forth-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -35242,12 +37555,12 @@
melpaBuild {
pname = "fortune-cookie";
ename = "fortune-cookie";
- version = "20170407.1517";
+ version = "20181223.42";
src = fetchFromGitHub {
owner = "andschwa";
repo = "fortune-cookie";
- rev = "bad99a2cd090f6646c7ee1125b95dd98744939c6";
- sha256 = "1kiflisiabc39lxi5hcazfvcwrpasl01lqsi2sri6pyrcrjyh8mf";
+ rev = "6c1c08f5be83822c0b762872ab25e3dbee96f333";
+ sha256 = "0gnidiryappk9naazwv0dd3b1dyd284zkwnhy2b1z3zkc9i7awfq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ab0d56626c9bf847c693b4d9ddb08acee636054f/recipes/fortune-cookie";
@@ -35260,32 +37573,6 @@
license = lib.licenses.free;
};
}) {};
- fountain-mode = callPackage ({ emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "fountain-mode";
- ename = "fountain-mode";
- version = "20180715.145";
- src = fetchFromGitHub {
- owner = "rnkn";
- repo = "fountain-mode";
- rev = "3f253598f2eb6c5eec71af967978a3ecf890240d";
- sha256 = "1m3fq5mg87v48y0v9a5mlxjs49yqxkb718r6ympbihzknjh2a0qq";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/913386ac8d5049d37154da3ab32bde408a226511/recipes/fountain-mode";
- sha256 = "1i55gcjy8ycr1ww2fh1a2j0bchx1bsfs0zd6v4cv5zdgy7vw6840";
- name = "recipe";
- };
- packageRequires = [ emacs ];
- meta = {
- homepage = "https://melpa.org/#/fountain-mode";
- license = lib.licenses.free;
- };
- }) {};
fraktur-mode = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -35347,12 +37634,12 @@
melpaBuild {
pname = "frame-mode";
ename = "frame-mode";
- version = "20170419.1427";
+ version = "20190306.1949";
src = fetchFromGitHub {
owner = "IvanMalison";
repo = "frame-mode";
- rev = "c0feebf8eab91ac0646a4d30be946e551bb5267f";
- sha256 = "19a7vxr1qhxr1yh9mvlhrbnpmqk9qmbmb4gwxrwdsqrac3fs3lr7";
+ rev = "4551bf43bc087448ce0edcd67c36f68649e95274";
+ sha256 = "0p3j6h8rcxwjmylg9rx86n6y6bysicif1hxan6xdwz3pskkhm3lj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e83da89eeee834cc14c0b128d55ef3634f76fd0/recipes/frame-mode";
@@ -35375,12 +37662,12 @@
melpaBuild {
pname = "frame-purpose";
ename = "frame-purpose";
- version = "20180623.1757";
+ version = "20190114.603";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "frame-purpose.el";
- rev = "6cff3bff74f9cf1dc31bbc5e1f9a513a5f55def6";
- sha256 = "08pmmzjdbvp09rxn3d332101qmg6c4xx2y6dwzczii70ac7m5v9f";
+ rev = "78f978f13589ec5c5370187c008c8aa83e6e71b4";
+ sha256 = "0zd981jsbf8fj5a3s7agbg32f6x3s7g87jlz13msgpgmkfhpx3gx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/033bd36a2419f4521944ccbfe8ce1eb56af20472/recipes/frame-purpose";
@@ -35455,12 +37742,12 @@
melpaBuild {
pname = "frameshot";
ename = "frameshot";
- version = "20180228.408";
+ version = "20181219.1300";
src = fetchFromGitHub {
owner = "tarsius";
repo = "frameshot";
- rev = "65994602fdf3d8881f0cabffebbce6c0e493e3c8";
- sha256 = "0crvvacpajlhdida54gvv4y11xx78qscr6nznx0bhdb12sj3n45q";
+ rev = "3830aae976603ff4e41e09fdca7554594075694c";
+ sha256 = "1sbxr78gl822gl0ky7iz1wb558ch9gp7igg4aq63gjlq6wfx2v93";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e5cfaa4b5fda97054d45691fad9d79b559f2df14/recipes/frameshot";
@@ -35612,14 +37899,14 @@
ename = "fsbot-data-browser";
version = "20160921.833";
src = fetchFromGitHub {
- owner = "benaiah";
+ owner = "Benaiah";
repo = "fsbot-data-browser";
rev = "6bca4f7de63e31839d2542f6c678b79931dec344";
sha256 = "0lvpgfp89sz6f6rn576g1g88s0q3ibj5ghydjwfcg9w6h7vx5b5s";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/37a0901b98e1c66be6906234e6d6520a6e940e97/recipes/fsbot-data-browser";
- sha256 = "0jijvl07jk200fs01ln4dmw5nx9jg3f9b7gjaknyd18vyvbwr3s5";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/fsbot-data-browser";
+ sha256 = "14d4d8lasvgj520rmqgnzk6mi16znzcdvja9p8164fr9l41wnzgd";
name = "recipe";
};
packageRequires = [];
@@ -35642,12 +37929,12 @@
melpaBuild {
pname = "fsharp-mode";
ename = "fsharp-mode";
- version = "20180518.1120";
+ version = "20190304.517";
src = fetchFromGitHub {
owner = "rneatherway";
repo = "emacs-fsharp-mode-bin";
- rev = "68d2121a7317d90fe3794c9295d117f4aebd1438";
- sha256 = "0mymvik20slbgsasjpn6nkqcb4z6z4mvd1sf1xalv0qjk24vrlmk";
+ rev = "386994e7d420872a31d7dd2eee9610d8ace98faa";
+ sha256 = "15blnkcrsmm6896dpdzcx3xqzxzkc0x8d5bg9b5sw7qca6vnjbqk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dc45611e2b629d8bc5f74555368f964420b79541/recipes/fsharp-mode";
@@ -35682,12 +37969,12 @@
melpaBuild {
pname = "fstar-mode";
ename = "fstar-mode";
- version = "20180713.1329";
+ version = "20190319.1401";
src = fetchFromGitHub {
owner = "FStarLang";
repo = "fstar-mode.el";
- rev = "a42763cdd81d6520651dfaad7a7e8c7388bad54c";
- sha256 = "10nbzm22p9pgsh6zgc9fjy3v1i5vw8877g8f4x3fi8lvpv1ynwps";
+ rev = "d63d1c48573c82317e5b5991486d1595094bcccd";
+ sha256 = "0zz4dv28lpycjryb2lswpjwh4lhf6hh73grisk0ql33hg4rmsqwx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c58ace42342c3d3ff5a56d86a16206f2ecb45f77/recipes/fstar-mode";
@@ -35890,6 +38177,7 @@
};
}) {};
futhark-mode = callPackage ({ cl-lib ? null
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -35897,19 +38185,19 @@
melpaBuild {
pname = "futhark-mode";
ename = "futhark-mode";
- version = "20180619.949";
+ version = "20190302.124";
src = fetchFromGitHub {
owner = "diku-dk";
repo = "futhark-mode";
- rev = "f834d03aeef2230315e541646e375e6c38a6a10c";
- sha256 = "0ma8v56lv8bbb5159wg2nv286s5nn3jnjfy8kmrx751sw7jmzr2l";
+ rev = "7140d0fcd509fac6deeda5b4065ede5ee5922466";
+ sha256 = "06dpspyyqqwb2vhdxmxgw0n8kpb2zw5qczp4bck9vkayqxqb8ahn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/97210774b450b7611d2bfdf36e04a425835d86b9/recipes/futhark-mode";
sha256 = "1sck984a8m0i9n07jnhpnin6k060756g73ix34ghzd65j5f0pvlw";
name = "recipe";
};
- packageRequires = [ cl-lib ];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://melpa.org/#/futhark-mode";
license = lib.licenses.free;
@@ -36103,12 +38391,12 @@
melpaBuild {
pname = "gams-mode";
ename = "gams-mode";
- version = "20180416.206";
+ version = "20181111.2201";
src = fetchFromGitHub {
owner = "ShiroTakeda";
repo = "gams-mode";
- rev = "0a7f3f5d44ea59c34677049882f0a34ff9935bc9";
- sha256 = "0wl2dfcfvjy23gcwk6qfxbxjlykw438fi9h1y2855adcc9zrhwzx";
+ rev = "fd88a310614a7c6e39e45ca65c4273ad90e3b688";
+ sha256 = "0bvvar05zqfk1y5nqv1w6ji2mysdx62v7nxajnmbp386ldcjs4bn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c895a716636b00c2a158d33aab18f664a8601833/recipes/gams-mode";
@@ -36153,11 +38441,11 @@
melpaBuild {
pname = "gap-mode";
ename = "gap-mode";
- version = "20160204.736";
+ version = "20180808.2145";
src = fetchhg {
url = "https://bitbucket.com/gvol/gap-mode";
- rev = "617eff4ff846";
- sha256 = "08dx8ijivhsfmqkxn33121qcjd6nckpn0jdlh0lhx4z4zg8x37bl";
+ rev = "00f251070b10";
+ sha256 = "0rk5smpzpdqzpmb5cp2l40042i51z3f40fkd3hma40id0ql2gy2w";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/83ec19a4ebac6b2d0fd84939b393848f82620978/recipes/gap-mode";
@@ -36309,12 +38597,12 @@
melpaBuild {
pname = "geiser";
ename = "geiser";
- version = "20180626.440";
+ version = "20190224.1248";
src = fetchFromGitLab {
owner = "jaor";
repo = "geiser";
- rev = "1bdd966a4fbe0c8bd5bcb04dad5213e47a1534e6";
- sha256 = "165vssixx16lvig7hjgh75pi15r53s3n8fn8wyfzdbnkihkwmqbk";
+ rev = "156970ff1402512b4bbf53a5e1c22156cb0e2f9c";
+ sha256 = "0n295p54zigbdiclfkacz3rqkxr6aib1npz0x8nkhnhv5avcwgyf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/67dc8d6e33f3522043f96761b23ea68c9c27084e/recipes/geiser";
@@ -36336,12 +38624,12 @@
melpaBuild {
pname = "general";
ename = "general";
- version = "20180628.1112";
+ version = "20190308.1342";
src = fetchFromGitHub {
owner = "noctuid";
repo = "general.el";
- rev = "e690ef9e706f7eea071357520709ef5407a42159";
- sha256 = "1kgd0v9lgwsxa1p7n3cgsd2f62wi86hcjslb0vf96b9l1n1wjwdl";
+ rev = "5f1ae7fcf24c0a9d9aec164944796783c8d77d09";
+ sha256 = "0xr4jbghr32q31hlsffslc43jj9qnn9pkz2v2pbl1ba4rh8dafjz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d86383b443622d78f6d8ff7b8ac74c8d72879d26/recipes/general";
@@ -36390,12 +38678,12 @@
melpaBuild {
pname = "german-holidays";
ename = "german-holidays";
- version = "20161011.13";
+ version = "20181212.2244";
src = fetchFromGitHub {
owner = "rudolfochrist";
repo = "german-holidays";
- rev = "d7d540c229c1a8be68ee09fbda08fe3ea31b7d29";
- sha256 = "1rfka83jwd68k93vn3f7llxd6z0ma5k98gws0081y8i9fc21fnsd";
+ rev = "a8462dffccaf2b665f2032e646b5370e993a386a";
+ sha256 = "1rf8p42pl7jmmdiibfcamlbr3kg6kslffv8vbpwn20xm2ii13rxz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bf5b3807ff989b13f95e8d6fad2f26a42ff0643c/recipes/german-holidays";
@@ -36444,16 +38732,16 @@
melpaBuild {
pname = "gf";
ename = "gf";
- version = "20180606.1455";
+ version = "20181028.842";
src = fetchFromGitHub {
- owner = "grammaticalframework";
+ owner = "GrammaticalFramework";
repo = "gf-emacs-mode";
- rev = "41070ecd1cd64fa52cf299dc09a5ea19aca4cf05";
- sha256 = "090jy6p94syvf20b61l2jnm7m5pv6d2qxfjhr1wm0bg1wkvyw50c";
+ rev = "49fa46db67634530499be969ffd3c436a22d4404";
+ sha256 = "0q234wzzmq1r53dv7z798liwkcbpnvc8mnxvkyfxd94f6za9ylgz";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1c2cc74eb19c54219cd5c5c11d886074859f0948/recipes/gf";
- sha256 = "170q5a7lwa9pbpn0ghcfzny0jfn42wgns1lcv8fngr0k1njfj6v8";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/gf";
+ sha256 = "0vk866gy97zk8dbx48azjlpnrnf0snc50zlhbzv1is97d9frjici";
name = "recipe";
};
packageRequires = [ ht s ];
@@ -36487,8 +38775,7 @@
license = lib.licenses.free;
};
}) {};
- ggtags = callPackage ({ cl-lib ? null
- , emacs
+ ggtags = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -36496,19 +38783,19 @@
melpaBuild {
pname = "ggtags";
ename = "ggtags";
- version = "20180418.657";
+ version = "20190320.1508";
src = fetchFromGitHub {
owner = "leoliu";
repo = "ggtags";
- rev = "bf263afd377992f7c5d9e8f727bd381e74feb327";
- sha256 = "182wqrkvk4asa483sb2zcym5np3z4h7l7ncpcrfgcs80jqbcaywx";
+ rev = "4d9000034d352cd983ae6626f560e434d0b3e9ca";
+ sha256 = "1h89prfxdr50drsira3qqvh1mb7v09p4w8jpb7aapq2jl5fl2knc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b158bb1bc2fbe3de61a6b21174eac7b1457edda2/recipes/ggtags";
sha256 = "1cmry4knxbx9257ivhfxsd09z07z3g3wjihi99nrwmhb9h4mpqyw";
name = "recipe";
};
- packageRequires = [ cl-lib emacs ];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/ggtags";
license = lib.licenses.free;
@@ -36724,28 +39011,31 @@
license = lib.licenses.free;
};
}) {};
- ghub = callPackage ({ emacs
+ ghub = callPackage ({ dash
+ , emacs
, fetchFromGitHub
, fetchurl
+ , graphql
, let-alist
, lib
- , melpaBuild }:
+ , melpaBuild
+ , treepy }:
melpaBuild {
pname = "ghub";
ename = "ghub";
- version = "20180715.1159";
+ version = "20190319.1643";
src = fetchFromGitHub {
owner = "magit";
repo = "ghub";
- rev = "4202c1f389a5ad0b7841be0ac8ab3cc3b6b77cb6";
- sha256 = "1adi6wsfkhx46x28fajjf45jw60hkqqgg9y7wdzzq0a2vkp3hwya";
+ rev = "c7ca6780bcd4d00d22e668e74b25f865ba892a45";
+ sha256 = "0icy333p2f9bsg552hjliqi6b9cmygf2ix10xgbam1zzh1b77clz";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/70a4dbd62fd6ebb4e056d0e97fa1a958437ddc91/recipes/ghub";
- sha256 = "031bzp61aal2id5sazwjz30svydjvxvphw5wbv5cyy4dqyh7w2ps";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f403587f77380d1db214aa34933a9b5cce1ef2bd/recipes/ghub";
+ sha256 = "15kjyi8ialpr1zjqvw68w9pa5sigcwy2szq21yvcy295z7ylzy4i";
name = "recipe";
};
- packageRequires = [ emacs let-alist ];
+ packageRequires = [ dash emacs graphql let-alist treepy ];
meta = {
homepage = "https://melpa.org/#/ghub";
license = lib.licenses.free;
@@ -36761,12 +39051,12 @@
melpaBuild {
pname = "ghub-plus";
ename = "ghub+";
- version = "20180602.1545";
+ version = "20181112.1632";
src = fetchFromGitHub {
owner = "vermiculus";
repo = "ghub-plus";
- rev = "b4a9662f5a6562f8d1dfdda2f009ec78a107c9a2";
- sha256 = "0xi7xhdla64xbcfqi8x8yzqc6v6rrqxd4q8lcrv7sw08ap5ykfas";
+ rev = "51ebffe549286b3c0b0565a373f44f4d64fc57af";
+ sha256 = "11fr6ri95a9wkc0mqrkhjxz1fm2cb52151fc88k73l93mggib3ak";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/03a412fd25218ff6f302734e078a699ff0234e36/recipes/ghub+";
@@ -36787,12 +39077,12 @@
melpaBuild {
pname = "gif-screencast";
ename = "gif-screencast";
- version = "20180616.1230";
+ version = "20190326.149";
src = fetchFromGitLab {
owner = "Ambrevar";
repo = "emacs-gif-screencast";
- rev = "12b25442b97b84abae74ecb5190a9d14ff7cfe5a";
- sha256 = "0p7gfccvrv2267abldsyjdqbj4rg25wdy6vmcygiggl3lk0wrnwz";
+ rev = "248d1e158405e6cba2c65ecaed40e2c59b089cd8";
+ sha256 = "19xqi5mgalnnhb4hw0fh7py2s2dllldx1xxbhwhknkdpifai8hl8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6d17ca0213ba5ef9dce92002e281e6f08c3492be/recipes/gif-screencast";
@@ -36839,12 +39129,12 @@
melpaBuild {
pname = "gildas-mode";
ename = "gildas-mode";
- version = "20150919.1501";
+ version = "20181021.2349";
src = fetchFromGitHub {
owner = "smaret";
repo = "gildas-mode";
- rev = "1ac31c83ac363550d8ceb0041924d984cd62683f";
- sha256 = "0a8wwczh9g8b0gpc4hlgg9n6y9n4x18b4pchm4arjsccmh3l5bs3";
+ rev = "d0c9e997e2aa0bcd9b8b7db082d69100448cb1b2";
+ sha256 = "11290b6daly9nn73iw0s6386hzjk3q2iywdhiazxscxaxzhx2c8c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f43d3aec955d31023056baba971805f0ebbb6702/recipes/gildas-mode";
@@ -36945,12 +39235,12 @@
melpaBuild {
pname = "git-attr";
ename = "git-attr";
- version = "20180204.15";
+ version = "20180925.1303";
src = fetchFromGitHub {
owner = "arnested";
repo = "emacs-git-attr";
- rev = "c03078637a00ea301cbcc7ae301ae928b10af889";
- sha256 = "05wzy8g0yjkks0zmcvwn9dmr6kxk1bz91xic3c08b0j1z5lbsdv7";
+ rev = "3e43a0cf616b00a4bbd3c6b49fd2397f3103796f";
+ sha256 = "1alpr4gnkikwzljz0fdbrx5hs3zy5s2fz7qyxdz0nx9hv8zb5ir5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3417e4bc586df60b5e6239b1f7683b87953f5b7c/recipes/git-attr";
@@ -37022,12 +39312,12 @@
melpaBuild {
pname = "git-command";
ename = "git-command";
- version = "20160111.503";
+ version = "20190310.2211";
src = fetchFromGitHub {
owner = "10sr";
repo = "git-command-el";
- rev = "a2c192aa779f81a99a10f0eb6dd018f13b2ff949";
- sha256 = "1irqmypgc4l1jlzj4g65ihpic3ffnnkcg1hlysj7qpip5nbflqgl";
+ rev = "89169f4b8e8d2546cac81d38bf584764e630812e";
+ sha256 = "1dgy9c7q0lxx5k5vdjcil6405qjpqpyq3s0ndh8fn6ybbhap9jda";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8a55d697bc95a7026c7788c13e4765e1b71075e3/recipes/git-command";
@@ -37050,12 +39340,12 @@
melpaBuild {
pname = "git-commit";
ename = "git-commit";
- version = "20180713.1444";
+ version = "20190319.1652";
src = fetchFromGitHub {
owner = "magit";
repo = "magit";
- rev = "d7412da3277d6ec5810e7ac20d64eb6c5cc0c30b";
- sha256 = "02xfxp6bsp9g0sz9kaykibygqxndgqa59w0a6flma4mkkgwsid9c";
+ rev = "24fd932a2344306be82efec599212b0535abf253";
+ sha256 = "14b1czjwjhi6xlnfg7vdjvp2fc927cpd8r1xp8kvnfjviwmav6gf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/git-commit";
@@ -37266,12 +39556,12 @@
melpaBuild {
pname = "git-lens";
ename = "git-lens";
- version = "20180328.717";
+ version = "20190319.642";
src = fetchFromGitLab {
owner = "pidu";
repo = "git-lens";
- rev = "ea49e2e005af977a08331f8caa8f64d102b3b932";
- sha256 = "0prx0xbnhhp46c09nnzpz07jgr3s5ngrw8zjksf48abr8acwywfv";
+ rev = "f6cc0a37c9c5c422c49c32650e70bc4721707985";
+ sha256 = "05bkpg7xz8644np9imsj5ms821sbsb784ap5fjdnnn69kllz0d33";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a52b516b7b10bdada2f64499c8f43f85a236f254/recipes/git-lens";
@@ -37292,12 +39582,12 @@
melpaBuild {
pname = "git-link";
ename = "git-link";
- version = "20180708.943";
+ version = "20190309.1526";
src = fetchFromGitHub {
owner = "sshaw";
repo = "git-link";
- rev = "efd14ab5f17f5942d25e165210447f3983f3250e";
- sha256 = "0rd2g4s73xk8m595aa11vr59gnn5mx7lbcf0040w1xqvlrryzyc9";
+ rev = "1dbabfed4c5c3c5ac6ffa9035a9c3d4c6cc7f885";
+ sha256 = "1b115d5rsb9m8lqjplg3qp0bxfc5cij5fgp0j21zspqwqvj7h0hq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1385443585e628e3d4efb3badb7611e9d653e0c9/recipes/git-link";
@@ -37372,12 +39662,12 @@
melpaBuild {
pname = "git-ps1-mode";
ename = "git-ps1-mode";
- version = "20180413.247";
+ version = "20181114.1949";
src = fetchFromGitHub {
owner = "10sr";
repo = "git-ps1-mode-el";
- rev = "6a06bf57cbe614ab26032b153d3dcf4fb4bfa7ee";
- sha256 = "1lgvzla1bg7gmkj41hmzhiqcbdmdw9ycpzfvpl6xl0sm0fk3j3rj";
+ rev = "b9188e26a64fa6f8678da6cbf5e3e865065f4f04";
+ sha256 = "0l9y6x53li7fqfrwb4037psn92xciylanj0fmmy8jy6n51dlzxyn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ea177b5ea168828881bd8dcd29ef6b4cb81317f0/recipes/git-ps1-mode";
@@ -37390,27 +39680,53 @@
license = lib.licenses.free;
};
}) {};
+ git-time-metric = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "git-time-metric";
+ ename = "git-time-metric";
+ version = "20181116.1211";
+ src = fetchFromGitHub {
+ owner = "c301";
+ repo = "gtm-emacs-plugin";
+ rev = "287108ed1d6885dc795eb3bad4476aa08c626186";
+ sha256 = "0cq4jn2vvcm8hyzmmnnvbmffygxnnv0v71kqlgjm8lcil0xsf84d";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/7f6f8839be619d3eeb6ab83b630441bf8c0ca024/recipes/git-time-metric";
+ sha256 = "1lwpj3z1i532v59vcpkcp1bkad7i2gmlk2yspjhvyvsgp1slsxl1";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/git-time-metric";
+ license = lib.licenses.free;
+ };
+ }) {};
git-timemachine = callPackage ({ emacs
, fetchFromGitLab
, fetchurl
, lib
- , melpaBuild }:
+ , melpaBuild
+ , transient }:
melpaBuild {
pname = "git-timemachine";
ename = "git-timemachine";
- version = "20180607.120";
+ version = "20190317.847";
src = fetchFromGitLab {
owner = "pidu";
repo = "git-timemachine";
- rev = "90a980578249c102da3e904fccdc9a2a5a0e7bcc";
- sha256 = "027zpl603kad2x59wzygiblpc84cn945fnqpm7m1yi3lw4smxsbr";
+ rev = "b97f93d66cffcd69281346845d3a1e32197eda29";
+ sha256 = "08zsn3lsnnf01wkv5ls38jga02s5dnf0j3gigy4qd6im3j3d04m1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a52b516b7b10bdada2f64499c8f43f85a236f254/recipes/git-timemachine";
sha256 = "06xdzic7j3d3pqgwxp1q6fs8sf3mi02a9phjvhk90kyvbr8h94ck";
name = "recipe";
};
- packageRequires = [ emacs ];
+ packageRequires = [ emacs transient ];
meta = {
homepage = "https://melpa.org/#/git-timemachine";
license = lib.licenses.free;
@@ -37581,12 +39897,12 @@
melpaBuild {
pname = "github-elpa";
ename = "github-elpa";
- version = "20180704.2247";
+ version = "20180831.111";
src = fetchFromGitHub {
owner = "10sr";
repo = "github-elpa";
- rev = "abe92cc25c9d75dab4f8bcf0eccafdd8a26774d6";
- sha256 = "0rx61fsvl99r2p3f3y7rgwf7m084lqi0xsdz0w8cml67sd5qm54g";
+ rev = "cbde5bc239687e07347cecf46ba5aa31948ebe1d";
+ sha256 = "1d7a9mp2kpcw1gvn9j3k8p0896i07m53xkbcx1vbg013w8kpwpak";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/81ec06e370f51b750ba3313b661d7386710cffb0/recipes/github-elpa";
@@ -37635,13 +39951,13 @@
version = "20171109.451";
src = fetchFromGitHub {
owner = "philiparvidsson";
- repo = "GitHub-Modern-Theme-For-Emacs";
+ repo = "GitHub-Modern-Theme-for-Emacs";
rev = "a7e7b8e5e9c122138e79e837caf9b7299e748d44";
sha256 = "0agfy3wiznb2ksfa00g7066mb0vps4g74mj6nl9wkvx847dzg34h";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d5506d93bd8cf59cd281091b377c1bb9a4243666/recipes/github-modern-theme";
- sha256 = "1falal6cffiih3q8q9xdyv7bkzw43p56d8ln13g9ad1jz319b3fi";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/github-modern-theme";
+ sha256 = "07xv4psw34mrpb1f5fsvj8vcm9k3xlm43zxr6qmj00p46b35z25r";
name = "recipe";
};
packageRequires = [];
@@ -37705,6 +40021,35 @@
license = lib.licenses.free;
};
}) {};
+ github-review = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , ghub
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "github-review";
+ ename = "github-review";
+ version = "20190327.32";
+ src = fetchFromGitHub {
+ owner = "charignon";
+ repo = "github-review";
+ rev = "9c3ffe30fba5d02e9951e76d1a5be2ed046663da";
+ sha256 = "078rv6f2p3wrznhgvmkhd071bwy72007f5l2m2a0r1k2i3vbfaja";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3b57420d20c799c0472dae4ab7e017d53dafb262/recipes/github-review";
+ sha256 = "1vh24bmvafv9px80gwgcgk7d9z6pjxaadzz7fba8r3m3fzhv4v58";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ghub s ];
+ meta = {
+ homepage = "https://melpa.org/#/github-review";
+ license = lib.licenses.free;
+ };
+ }) {};
github-search = callPackage ({ fetchFromGitHub
, fetchurl
, gh
@@ -37741,12 +40086,12 @@
melpaBuild {
pname = "github-stars";
ename = "github-stars";
- version = "20180328.433";
+ version = "20181117.2048";
src = fetchFromGitHub {
owner = "xuchunyang";
repo = "github-stars.el";
- rev = "283dbe4d10f2b11d15d6871e86c28b8f42759b63";
- sha256 = "1bdhvf2mjg818mfl8w9c2b8prqbd0v59xnjjkaq8qwgb7n7925bq";
+ rev = "807de6da3ab32d278d68a1b709c012f6bfa4d280";
+ sha256 = "152gqg2kvfnfflndx15zkyzapzfkv741rwd0g3m7dn37mblnhgvl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/58df7d536f9711e10ecaa6e0a37b9ad255e8fca5/recipes/github-stars";
@@ -37769,13 +40114,13 @@
version = "20170630.1501";
src = fetchFromGitHub {
owner = "philiparvidsson";
- repo = "emacs-github-theme";
+ repo = "GitHub-Theme-for-Emacs";
rev = "29f00a51d949a248a5f6355a97131e216747c797";
sha256 = "16ldfz1k0hxc1b785gzrf70hg0q88ijjxp39hb62iax1k1aw9vlw";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/f4ace4a150faa312ef531182f328a3e039045bd7/recipes/github-theme";
- sha256 = "1c22p17a1d0s30cj40zrszyznch6nji2risq3b47jhh9i6m32jif";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/github-theme";
+ sha256 = "132jahd8vvhzhhkm71dzq6x46wmaakbbxg9s7r9779bfwbrms9j9";
name = "recipe";
};
packageRequires = [];
@@ -37873,12 +40218,12 @@
melpaBuild {
pname = "gitlab-ci-mode";
ename = "gitlab-ci-mode";
- version = "20180604.1503";
+ version = "20190323.952";
src = fetchFromGitLab {
owner = "joewreschnig";
repo = "gitlab-ci-mode";
- rev = "b9fd692d27351e959c4d272a2149def63ef1c00c";
- sha256 = "132b0m3sp6vwknr665aw1mwx1q69ksrmr6xih7qi6nfgny6938qc";
+ rev = "cfd39298a87e989473278d819dc0498a43fce45d";
+ sha256 = "1naa7fngfzdj884kfriv777d99ksn36kxqv5rl5zv6h1sl25c6pr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d7915ddcf21fdec539a86bb86c209cf0bbd378cb/recipes/gitlab-ci-mode";
@@ -37901,12 +40246,12 @@
melpaBuild {
pname = "gitlab-ci-mode-flycheck";
ename = "gitlab-ci-mode-flycheck";
- version = "20180604.1504";
+ version = "20190323.1129";
src = fetchFromGitLab {
owner = "joewreschnig";
repo = "gitlab-ci-mode-flycheck";
- rev = "30ea0eab74b24818f187242b079845785035e967";
- sha256 = "0awv24znkxs0h8pkj4b5jwjajxkf1agam09m5glr8zn5g3xbj798";
+ rev = "eba81cfb7224fd1fa4e4da90d11729cc7ea12f72";
+ sha256 = "1w1simnlffg56j79gal1qf1nlav9f8fmr2zfswfrmcv6cac6fhj9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d7915ddcf21fdec539a86bb86c209cf0bbd378cb/recipes/gitlab-ci-mode-flycheck";
@@ -38027,33 +40372,6 @@
license = lib.licenses.free;
};
}) {};
- glab = callPackage ({ emacs
- , fetchFromGitHub
- , fetchurl
- , ghub
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "glab";
- ename = "glab";
- version = "20180419.308";
- src = fetchFromGitHub {
- owner = "magit";
- repo = "ghub";
- rev = "4831933da059ee084a16016558b9ccd8c581a8ff";
- sha256 = "1b5jrpj3z989r3mf4jfch8rnaaa5hyb2395xz3v37f0vsphd7s0y";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/70a4dbd62fd6ebb4e056d0e97fa1a958437ddc91/recipes/glab";
- sha256 = "0ym8bgym11mdv5bw22lgkcxyqy7qgxxm0yjmrq8qx7i55gqayyb8";
- name = "recipe";
- };
- packageRequires = [ emacs ghub ];
- meta = {
- homepage = "https://melpa.org/#/glab";
- license = lib.licenses.free;
- };
- }) {};
glsl-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -38061,12 +40379,12 @@
melpaBuild {
pname = "glsl-mode";
ename = "glsl-mode";
- version = "20170927.736";
+ version = "20190326.1251";
src = fetchFromGitHub {
owner = "jimhourihan";
repo = "glsl-mode";
- rev = "384968506cf25c5c2df61b32fdfdbd041e3bf651";
- sha256 = "0729s4w010vw4ajvh1zpni7szxv9rpm6jk2y9hp7qyi67zbgjjgc";
+ rev = "ee5d6aa5631e26792fa27c7e418224d514454591";
+ sha256 = "1acgx4k4cb6pgvwzdgck9v9gk3ffnmvl7ylsljbi7pjxsiqkzp45";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c416822d54df436f29dcf9a5f26398685fdc17a2/recipes/glsl-mode";
@@ -38242,12 +40560,12 @@
melpaBuild {
pname = "gnu-apl-mode";
ename = "gnu-apl-mode";
- version = "20180129.2300";
+ version = "20181217.54";
src = fetchFromGitHub {
owner = "lokedhs";
repo = "gnu-apl-mode";
- rev = "fa569827c916ed46e410e9f28e4b4d28f8567654";
- sha256 = "0x1i1xcd3d34c9c87isd39d9ra69ywd01ag0hgkkgdzrk44znshj";
+ rev = "3b5b13abeb424e8ed399379fdefc168422664def";
+ sha256 = "0nhbfzfwl44ffvhzrnkjxaxz2nfrp1a7zcy6fg6cm13c2z40jslp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/369a55301bba0c4f7ce27f6e141944a523beaa0f/recipes/gnu-apl-mode";
@@ -38361,6 +40679,32 @@
license = lib.licenses.free;
};
}) {};
+ gnus-recent = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "gnus-recent";
+ ename = "gnus-recent";
+ version = "20190115.951";
+ src = fetchFromGitHub {
+ owner = "unhammer";
+ repo = "gnus-recent";
+ rev = "c6b287532fe82e95dce5a488f752c122567f9348";
+ sha256 = "1lpjs5qgvplbbm2waixiyj3mk4698h09150chm1mwxjc0np2acj1";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0b80d94cf1a8b8e2d4da5d45f65231aa4884a3a0/recipes/gnus-recent";
+ sha256 = "14xac6bmn61bk0h6dby14111iijz0j254v4mh77lf0ydbz6wxjf1";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/gnus-recent";
+ license = lib.licenses.free;
+ };
+ }) {};
gnus-select-account = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -38499,16 +40843,16 @@
melpaBuild {
pname = "go-autocomplete";
ename = "go-autocomplete";
- version = "20170626.323";
+ version = "20150903.1940";
src = fetchFromGitHub {
- owner = "nsf";
+ owner = "mdempsky";
repo = "gocode";
- rev = "beae6bdcc6fc300059038961b7a3e977e0fb7c61";
- sha256 = "0fhs17v2x24nhs0kd2yjzr56jni2767yrjxims6phsaxs9m5aih2";
+ rev = "ccbc3bda7debb16fa6672e719f8f74fa2523c321";
+ sha256 = "0gshb5d20v342disc290pry8i6p60srl2ip186kb4sk692lk0ily";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/04867a574773e8794335a2664d4f5e8b243f3ec9/recipes/go-autocomplete";
- sha256 = "1ldsq81a167dk2r2mvzyp3v3j2mxc4l9p6b12i7pv8zrjlkhma5a";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ef45683cbfe82bf8a9d6f3f1c59e3cf340accbe3/recipes/go-autocomplete";
+ sha256 = "15ns1zzw6kblcbih7dmjvk1p0f6f3p2wpgx4gnd9ax0fcj65ghwi";
name = "recipe";
};
packageRequires = [ auto-complete ];
@@ -38737,12 +41081,12 @@
melpaBuild {
pname = "go-guru";
ename = "go-guru";
- version = "20180628.310";
+ version = "20181011.2030";
src = fetchFromGitHub {
owner = "dominikh";
repo = "go-mode.el";
- rev = "7f87c32464d2eb22ac7a413cac741a89fbfdc740";
- sha256 = "06znpm5zfi41rcdrjgf79w9zifn2my56sfys5fyafqc53rjya4pv";
+ rev = "120fb911f1d8038f828da85eed8aaad977dabd8c";
+ sha256 = "18qx1mf4fgrzm8g89c4y7zvwl3djrbbkhar242zl5ab5218dsp0s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0cede3a468b6f7e4ad88e9fa985f0fdee7d195f5/recipes/go-guru";
@@ -38755,6 +41099,32 @@
license = lib.licenses.free;
};
}) {};
+ go-imenu = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "go-imenu";
+ ename = "go-imenu";
+ version = "20181029.329";
+ src = fetchFromGitHub {
+ owner = "brantou";
+ repo = "go-imenu.el";
+ rev = "00bb69c1c71453f43ab2d6622a74e3c8e6b454b9";
+ sha256 = "1bwcsph6ywnqf2dbzh82vzw7m6g5qyxzjln8n3470h06iv7jhic2";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d602b6071787018e3e0a68b4852eb978b34acbea/recipes/go-imenu";
+ sha256 = "0s8rc7rkqlywrhnm2h8yygn87jhjc492wmsvnr1rxl62wf5cijms";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/go-imenu";
+ license = lib.licenses.free;
+ };
+ }) {};
go-impl = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -38814,12 +41184,12 @@
melpaBuild {
pname = "go-mode";
ename = "go-mode";
- version = "20180327.830";
+ version = "20181011.2029";
src = fetchFromGitHub {
owner = "dominikh";
repo = "go-mode.el";
- rev = "7c50c800bc06f7e3b2f2d3fc0410e2cea78a5cb3";
- sha256 = "1ain754h3kglk1qiqjkc3mwcyl2wmqywv4qkqfp7wkyyj34gncb6";
+ rev = "be9186c658c33e2cfd09e8808e578d525dcbf2a2";
+ sha256 = "086qj1rmfkk7x0a1p76z33rycgrcawmyg7h3k9j978v4k1xa5xnf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0cede3a468b6f7e4ad88e9fa985f0fdee7d195f5/recipes/go-mode";
@@ -38842,12 +41212,12 @@
melpaBuild {
pname = "go-playground";
ename = "go-playground";
- version = "20170226.43";
+ version = "20181103.1146";
src = fetchFromGitHub {
owner = "grafov";
repo = "go-playground";
- rev = "559d53bbc507394aaca3683325d17286637bf4f0";
- sha256 = "04hxgi27cyhs07mb0wz21q11b1nxmfsx56gynxjc2gqj2wb5i086";
+ rev = "790562506dc941648d7a54fd21677871942251e4";
+ sha256 = "06aaxx7qk1g7sk80rr3jgz6qrqlh5zlf57h9di740645kmyr6vkd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/900aabb7bc2350698f8740d72a5fad69c9219c33/recipes/go-playground";
@@ -38905,12 +41275,12 @@
melpaBuild {
pname = "go-projectile";
ename = "go-projectile";
- version = "20170302.1705";
+ version = "20181023.1444";
src = fetchFromGitHub {
owner = "dougm";
repo = "go-projectile";
- rev = "4c449eae696d4e3a15078c336c98ea779da227ab";
- sha256 = "1cyvd2va0vgbh7im5rhapyd66ql469cl2hswg946qj961kdxc7s9";
+ rev = "7910884b4de560f3fc70b53752f658ef9cdc02cd";
+ sha256 = "03bh8k95qrc3q1sja05bbv3jszh6rgdv56jpi8g06yxk53457a1n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3559a179be2a5cda71ee0a5a18bead4b3a1a8138/recipes/go-projectile";
@@ -39342,12 +41712,12 @@
melpaBuild {
pname = "google-contacts";
ename = "google-contacts";
- version = "20171027.1033";
+ version = "20180919.614";
src = fetchFromGitHub {
owner = "jd";
repo = "google-contacts.el";
- rev = "a40389bae006ae094aeb1a39fae9891ca687c0fa";
- sha256 = "06mfdmr3dlmk4gyq8fxqv78c5jyis8vxx4ih2azcr5c831pkayzi";
+ rev = "2273582713712a58e71156a8a29972d42e8e690e";
+ sha256 = "1iw5khd3mcgq7vmpm2xw1s713glc8c569n4mgrmmggg73sjnj4kf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/671afe0ff3889ae8c4b2d7b8617a3a25c16f3f0f/recipes/google-contacts";
@@ -39368,12 +41738,12 @@
melpaBuild {
pname = "google-maps";
ename = "google-maps";
- version = "20171002.734";
+ version = "20181121.732";
src = fetchFromGitHub {
owner = "jd";
repo = "google-maps.el";
- rev = "c0e5dccfdc9f7f77ff8f29177547be47833d7156";
- sha256 = "1agsfmbd2zbn1xs05kxlb32hhkmrri3hdmcrvf0w1fcsgc5a9085";
+ rev = "2eb16ff609f5a9f8d02c15238a111fbb7db6c146";
+ sha256 = "1bl0dnksbf14d0xcnvdy9qpvzc5c8jwkxpmfvgayj6djikxnw2md";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/671afe0ff3889ae8c4b2d7b8617a3a25c16f3f0f/recipes/google-maps";
@@ -39419,12 +41789,12 @@
melpaBuild {
pname = "google-translate";
ename = "google-translate";
- version = "20170713.119";
+ version = "20190206.429";
src = fetchFromGitHub {
owner = "atykhonov";
repo = "google-translate";
- rev = "486c63bbfa0338589589f628703c38112035a5b2";
- sha256 = "08b4lxnwy9iqxacbjjljybvvdkl9g2dy6vga6hw7h7h32qra8w2j";
+ rev = "bf119aac424994d2aa91fce9630adc01ed0ea617";
+ sha256 = "05ljjw7kbnszygw3w085kv57swfiiqxri2b5xvsf5dw3pc3g7j3c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e3c275e59cbfe6e40f9cd4c470fc66544c9a6d21/recipes/google-translate";
@@ -39575,23 +41945,24 @@
goto-chg = callPackage ({ fetchFromGitHub
, fetchurl
, lib
- , melpaBuild }:
+ , melpaBuild
+ , undo-tree }:
melpaBuild {
pname = "goto-chg";
ename = "goto-chg";
- version = "20180105.1033";
+ version = "20190110.1314";
src = fetchFromGitHub {
owner = "emacs-evil";
repo = "goto-chg";
- rev = "e5b38e4e1378f6ea48fa9e8439f49c2998654aa4";
- sha256 = "1fxdvgdafavc4sad5i8g0wvpdqzlgzmvfi07yrah1c5vwkrslbvj";
+ rev = "1829a13026c597e358f716d2c7793202458120b5";
+ sha256 = "1y603maw9xwdj3qiarmf1bp13461f9f5ackzicsbynl0i9la3qki";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cf1fc176430fe3ab55ce537a0efc59780bb812be/recipes/goto-chg";
sha256 = "1yd4jq4zql4av9nr1sdk4nsnnk54c3brgjhpczndy1ipiaxlnydy";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ undo-tree ];
meta = {
homepage = "https://melpa.org/#/goto-chg";
license = lib.licenses.free;
@@ -39648,6 +42019,32 @@
license = lib.licenses.free;
};
}) {};
+ goto-line-preview = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "goto-line-preview";
+ ename = "goto-line-preview";
+ version = "20190307.2336";
+ src = fetchFromGitHub {
+ owner = "jcs090218";
+ repo = "goto-line-preview";
+ rev = "1e361d8c0b9596154db579e6ae5edbd51e12eedc";
+ sha256 = "16zil8kjv7lfmy11g88p1cm24j9db319fgkwzsgf2vzp1m15l0pc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/231e0b056114a63aa472ccfc0cd24f2f12a31600/recipes/goto-line-preview";
+ sha256 = "1mbc9p96rrxpafdfx7wq50aj4fd3c47p7pqjwqqfdgk9dskmsjc2";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/goto-line-preview";
+ license = lib.licenses.free;
+ };
+ }) {};
govc = callPackage ({ dash
, emacs
, fetchFromGitHub
@@ -39711,12 +42108,12 @@
melpaBuild {
pname = "gpastel";
ename = "gpastel";
- version = "20180419.2350";
+ version = "20181229.604";
src = fetchFromGitHub {
owner = "DamienCassou";
repo = "gpastel";
- rev = "21b7d79530134d6a47eeb252b684f884c769d291";
- sha256 = "1s1gnkpz6byf6by8r1bl9vq3slmsdavjb2ybp2zgic48favz1qm2";
+ rev = "8a5522b274f79d55d7c9a0b2aaf062526f9253c7";
+ sha256 = "01pnnqcxni55xr7r2lxcnsqiszm2w5iwnjcwp748p1faq6ywhi19";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9b70e05ff0a074f9e2f1373e8495dc8df462deea/recipes/gpastel";
@@ -39737,12 +42134,12 @@
melpaBuild {
pname = "grab-mac-link";
ename = "grab-mac-link";
- version = "20180328.745";
+ version = "20190302.646";
src = fetchFromGitHub {
owner = "xuchunyang";
repo = "grab-mac-link.el";
- rev = "35edb57d136c2a9726fd14e6a59cce4fc0248771";
- sha256 = "1c3g6ygi71qm3lqvhjjzxkpdhwkpx4qwm8mhinwffcib5hagrafn";
+ rev = "94e6130d7542bafdf594e45606d1148b0a5687f7";
+ sha256 = "0p55gs2xkfw2lgzkaxjy869hqi1gqnxbxgndvkczzj3f0nzfsa0y";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e4cc8a72a9f161f024ed9415ad281dbea5f07a18/recipes/grab-mac-link";
@@ -39984,6 +42381,32 @@
license = lib.licenses.free;
};
}) {};
+ graphql = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "graphql";
+ ename = "graphql";
+ version = "20180911.1731";
+ src = fetchFromGitHub {
+ owner = "vermiculus";
+ repo = "graphql.el";
+ rev = "672dd9ebd7e67d8089388b0c484cd650e76565f3";
+ sha256 = "0sp0skc1rnhi39szfbq1i99pdgd3bhn4c15cff05iqhjy2d4hniw";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3e801ae56f11b64a5a3e52cf1a6c152940ab8c97/recipes/graphql";
+ sha256 = "139fng2psn535ymqa7c6hm1r7ja1gs5mdvb487jj6fh0bl9wq8la";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/graphql";
+ license = lib.licenses.free;
+ };
+ }) {};
graphql-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -39992,12 +42415,12 @@
melpaBuild {
pname = "graphql-mode";
ename = "graphql-mode";
- version = "20180303.1558";
+ version = "20190320.57";
src = fetchFromGitHub {
owner = "davazp";
repo = "graphql-mode";
- rev = "36b1a4ed9fe78ccd1f386111644e69a5424a1a7b";
- sha256 = "1azq0igx07aff9r7fbl0l4vbr44c4ylfq41g5rahbc70spd85bk6";
+ rev = "ebd6502c0901dd2864a6ac893659a0cd74b6ba73";
+ sha256 = "169bp2ps0i931qlcn0nsngs8dycqzlr3dcb5smnlmbjylmqi9yjq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3850073e6706d4d8151bc6ab12963a19deae8be9/recipes/graphql-mode";
@@ -40017,12 +42440,12 @@
melpaBuild {
pname = "graphviz-dot-mode";
ename = "graphviz-dot-mode";
- version = "20171103.127";
+ version = "20181117.2151";
src = fetchFromGitHub {
owner = "ppareit";
repo = "graphviz-dot-mode";
- rev = "c456a2b65c734089e6c44e87209a5a432a741b1a";
- sha256 = "0j1r2rspaakw37b0mx7pwpvdsvixq9sw3xjbww5piihzpdxz58z1";
+ rev = "243de72e09ddd5cdc4863613af8b749827a5e1cd";
+ sha256 = "10ss7mhlkqvxh7y2w7njzh3hiz3r7y49a3q9j41bwipia4yzq4n5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6e2f1e66b33fd95142be4622c996911e38d56281/recipes/graphviz-dot-mode";
@@ -40111,6 +42534,32 @@
license = lib.licenses.free;
};
}) {};
+ greek-polytonic = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "greek-polytonic";
+ ename = "greek-polytonic";
+ version = "20190303.558";
+ src = fetchFromGitHub {
+ owner = "jhanschoo";
+ repo = "greek-polytonic";
+ rev = "114cba0f57cc077871693c799b807df2292341ec";
+ sha256 = "09prvjnhvirip6s0rlsp7pyyaj9xswvvjskxb2977ymki8ijxmqf";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/bf0e6206be0e6f416c59323cf10bf052882863f3/recipes/greek-polytonic";
+ sha256 = "0rp5iwiznp95r8srxvq72hna2hgcqj4q1dvg2ma86cqzgqwr4xnw";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/greek-polytonic";
+ license = lib.licenses.free;
+ };
+ }) {};
green-is-the-new-black-theme = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -40118,12 +42567,12 @@
melpaBuild {
pname = "green-is-the-new-black-theme";
ename = "green-is-the-new-black-theme";
- version = "20180322.1903";
+ version = "20190313.1205";
src = fetchFromGitHub {
owner = "fredcamps";
repo = "green-is-the-new-black-emacs";
- rev = "8a03687a2b8b55c5dc7f099086019278d505d8d8";
- sha256 = "07j5sv8dskqxpbzr5f58n75cziyqm9v01c3f7wmwfs8jl7h5nc4m";
+ rev = "65a2b7e7cc6497fbc851319225842a1624bfecc5";
+ sha256 = "1jlmrakj8kf7n2zzmrsacrmvlcwfl27a4zwrvigw28z13z7g5a3g";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3e42528d5677fd90515cad47266c07ea3d4363fb/recipes/green-is-the-new-black-theme";
@@ -40168,12 +42617,12 @@
melpaBuild {
pname = "green-screen-theme";
ename = "green-screen-theme";
- version = "20171130.234";
+ version = "20180816.802";
src = fetchFromGitHub {
owner = "rbanffy";
repo = "green-screen-emacs";
- rev = "c348ea0adf0e6ae99294a05be183a7b425a4bab0";
- sha256 = "1rqhac5j06gpc9gp44g4r3zdkw1baskwrz3bw1n1haw4a1k0657q";
+ rev = "774e8f6c033786406267f71ec07319d906a30b75";
+ sha256 = "0f12lqgfi1vlhq8p5ia04vlmvmyb4f40q7dm2nbh5y8r6k89hisg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/821744ca106f1b74941524782e4581fc93800fed/recipes/green-screen-theme";
@@ -40246,12 +42695,12 @@
melpaBuild {
pname = "grep-context";
ename = "grep-context";
- version = "20180415.435";
+ version = "20181002.954";
src = fetchFromGitHub {
owner = "mkcms";
repo = "grep-context";
- rev = "4c63d0f2654dee1e249c2054d118d674a757bd45";
- sha256 = "0n2bc9q6bvbfpaqivp3ajy9ad1wr7hfdd98qhnspsap67p73kfn4";
+ rev = "5a4e3efdf775755c1bbefcfe4b461c1166d81d7d";
+ sha256 = "00q7l4a3c0ay6g5ff9bfa2qgkiswsyh4s6pqnpg0zpzhvv5710f5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/41dbaf627ae4ef86c222d2b6b5d3523fdb9a4637/recipes/grep-context";
@@ -40379,12 +42828,12 @@
melpaBuild {
pname = "groovy-mode";
ename = "groovy-mode";
- version = "20180601.738";
+ version = "20190407.1614";
src = fetchFromGitHub {
owner = "Groovy-Emacs-Modes";
repo = "groovy-emacs-modes";
- rev = "a5afa3ac0a23c1bdebea014d06e5c30dde56ee8b";
- sha256 = "04jciwr7614cw3dl9hfiypmqc28njbrin6j3g5r27xn1f91sd5ni";
+ rev = "aa531c659758b896ff8fbd307080ce0d1d04ebfb";
+ sha256 = "0jcqldpgx9b0xsvxvj7lgqrb39cwn7adggrlxfcm0pgc40dpfwb4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3fe318b4e51a280a55c01fa30455e4a180df8bd6/recipes/groovy-mode";
@@ -40458,16 +42907,16 @@
melpaBuild {
pname = "gruvbox-theme";
ename = "gruvbox-theme";
- version = "20180623.2009";
+ version = "20190406.1946";
src = fetchFromGitHub {
- owner = "Greduan";
+ owner = "greduan";
repo = "emacs-theme-gruvbox";
- rev = "796999e5db2a0e43ad64c062c1bec3c966d095bc";
- sha256 = "0qj5k0c1592ikrb7gcibqwf8hhj6lq4cw7zrb3kmpk4zakzy7a2w";
+ rev = "f05bfb9d8be4270dc919d14410f16f7da1fcd9e0";
+ sha256 = "126kqvgjy71rimr4f7sgnh2j73i3i0s650bx84jl8n4k48x0hwz5";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2bd48c87919f64ced9f3add4860751bb34cb5ecb/recipes/gruvbox-theme";
- sha256 = "042mnwlmixygk2mf24ygk7rkv1rfavc5a36hs9x8b68jnf3khj32";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/gruvbox-theme";
+ sha256 = "12z89fjfqcp9rx2f2x9wcffgxxv3kjn1dabyk0cjf286hgvmgz88";
name = "recipe";
};
packageRequires = [ autothemer ];
@@ -40508,12 +42957,12 @@
melpaBuild {
pname = "gscholar-bibtex";
ename = "gscholar-bibtex";
- version = "20170913.1457";
+ version = "20190129.2155";
src = fetchFromGitHub {
owner = "cute-jumper";
repo = "gscholar-bibtex";
- rev = "ba4ce159e385d695d8560e8b06b3cbe48424861c";
- sha256 = "0idnfhk17avp0r4706grjqqkz0xl98gs0bx7wrkvwym3y2gadlz2";
+ rev = "3b651e3de116860eb1f1aef9b547a561784871fe";
+ sha256 = "0wwjz4k1hsc1z489ygz4kh3dh23d7pnkgg2js07as7038hmhkjcb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9fa546d3dce59b07a623ee83e3befe139dc10481/recipes/gscholar-bibtex";
@@ -40560,12 +43009,12 @@
melpaBuild {
pname = "guess-language";
ename = "guess-language";
- version = "20170620.308";
+ version = "20190325.736";
src = fetchFromGitHub {
owner = "tmalsburg";
repo = "guess-language.el";
- rev = "1f1602f74d7159e7fb8c90f92ec5a3d1df5429da";
- sha256 = "1764v96sdn3zvpd35ppn31ib4p8cvdrj0bfmbplxg2xhp7xkgmca";
+ rev = "e64d88f287a547198e4c96e2fff543e103f2b456";
+ sha256 = "0dmbr7gylnc1dsjaldfw51nmli66lizs1w5a8p1zacpf7w5kf7x2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6e78cb707943fcaaba0414d7af2af717efce84d0/recipes/guess-language";
@@ -40646,12 +43095,12 @@
melpaBuild {
pname = "guix";
ename = "guix";
- version = "20180705.315";
+ version = "20190107.1126";
src = fetchFromGitHub {
owner = "alezost";
repo = "guix.el";
- rev = "f220e82b2dd94fb349ae37665912a42196d53975";
- sha256 = "12k2qib7qbxxkidsnw2a44jakw0lgbz8kksgxfbqmaryzi35wh5v";
+ rev = "c4c96663fefe7e007c372e7d24d6e7016b70e4ee";
+ sha256 = "1730q2dm84f15ycjdf3dgl2j8770mhr6qnyzxgac3zzkjr8pyvq7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b3d8c73e8a946b8265487a0825d615d80aa3337d/recipes/guix";
@@ -40773,12 +43222,12 @@
melpaBuild {
pname = "habamax-theme";
ename = "habamax-theme";
- version = "20180702.958";
+ version = "20181001.150";
src = fetchFromGitHub {
owner = "habamax";
repo = "habamax-theme";
- rev = "b40e3e7c637e67c8f9164b0db9e75c0ec4eb6a0f";
- sha256 = "0fgvnfqgg6gqrwlb8yibs4nybvskd6awxqdpj4yy9jfqibggppld";
+ rev = "6e86a1b23b6e2aaf40d4374b5673da00a28be447";
+ sha256 = "0k96mdxg28bbm14d6rdlin8l4c75i9wicj3mxrd0bys0shxl9jm6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/77386484ad0b31c2818fae52cd312821c4632cb8/recipes/habamax-theme";
@@ -40800,12 +43249,12 @@
melpaBuild {
pname = "habitica";
ename = "habitica";
- version = "20171022.1922";
+ version = "20190401.2121";
src = fetchFromGitHub {
owner = "abrochard";
repo = "emacs-habitica";
- rev = "e51ff7436fe1da10404e2c0872b15d6a7a926717";
- sha256 = "1hiiqf82nagnpq2qdcdv6y2blfiqs6f8ia8k66a4zn5xgwpd13f4";
+ rev = "4f708d0fc0564fa3b624452b9f24ba4a6eeae181";
+ sha256 = "1g0flh50j2gzx3414id758klvrxgdk5p26hpxdab46f8kvjylgip";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cf9543db3564f4806440ed8c5c30fecbbc625fa1/recipes/habitica";
@@ -40818,6 +43267,33 @@
license = lib.licenses.free;
};
}) {};
+ hack-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "hack-mode";
+ ename = "hack-mode";
+ version = "20190407.1646";
+ src = fetchFromGitHub {
+ owner = "hhvm";
+ repo = "hack-mode";
+ rev = "831bab05b283a719a4762fec0082cc599def93c7";
+ sha256 = "1nzlzldmnz9hc9i09lzs4wqqvwv0x5n69kv0lq9rs5cqjm7yyphq";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/27e238e5d2aaca810fd3fb6836ca49c9fa07cc87/recipes/hack-mode";
+ sha256 = "1zs7p6fczj526wz9kvyhmxqkgrkfkkrvm9ma4cg349sfpjpxwkbl";
+ name = "recipe";
+ };
+ packageRequires = [ emacs s ];
+ meta = {
+ homepage = "https://melpa.org/#/hack-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
hack-time-mode = callPackage ({ emacs
, fetchFromGitLab
, fetchurl
@@ -40854,14 +43330,14 @@
ename = "hacker-typer";
version = "20170206.720";
src = fetchFromGitHub {
- owner = "therockmandolinist";
+ owner = "dieggsy";
repo = "emacs-hacker-typer";
rev = "d5a23714a4ccc5071580622f278597d5973f40bd";
sha256 = "13wp7cg9d9ij44inxxyk1knczglxrbfaq50wyhc4x5zfhz5yw7wx";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/8e04a3a1606ea23865c04d93e3dc77cb55b9931f/recipes/hacker-typer";
- sha256 = "128y562cxi8rblnqjdzhqc6b58bxi67f6hz569gqw4jywz0xcd0g";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/hacker-typer";
+ sha256 = "0vf18hylhszvplam6c4yynr53zc3n816p9k36gywm6awwblfpyfb";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -40872,25 +43348,24 @@
}) {};
hackernews = callPackage ({ fetchFromGitHub
, fetchurl
- , json ? null
, lib
, melpaBuild }:
melpaBuild {
pname = "hackernews";
ename = "hackernews";
- version = "20180220.419";
+ version = "20190211.1535";
src = fetchFromGitHub {
owner = "clarete";
repo = "hackernews.el";
- rev = "89077fdb98ab1e77459c7839decdf21b87f4341b";
- sha256 = "11id6gp6mz97sm2izz6y47n3sphlibdb6nzvbkcxl7l7av53wxg7";
+ rev = "30798c7bc8cb7cd732d49a274d74057b4ce6cf74";
+ sha256 = "1iifzz2n8ca6275rwmd3xp9lv0jp3c8nzhmrw3aarsnwdmxr1hmh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c43a342e47e5ede468bcf51a60d4dea3926f51bd/recipes/hackernews";
sha256 = "1x1jf5gkhmpiby5rmy0sziywh6c1f1n0p4f6dlz6ifbwns7har6a";
name = "recipe";
};
- packageRequires = [ json ];
+ packageRequires = [];
meta = {
homepage = "https://melpa.org/#/hackernews";
license = lib.licenses.free;
@@ -40905,14 +43380,14 @@
ename = "hal-mode";
version = "20160704.1046";
src = fetchFromGitHub {
- owner = "strahlex";
+ owner = "machinekoder";
repo = "hal-mode";
rev = "cd2f66f219ee520198d4586fb6b169cef7ad3f21";
sha256 = "0xibwmngijq0wv9hkahs5nh02qj3ma0bkczl07hx8wnl6j27f0nj";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/955a4d94110bb2048d899a3d7671937e69d5ac79/recipes/hal-mode";
- sha256 = "1b1hvlm80awbyjjs5d51v46hw8a2jfz8dv9r61h7vvwh9a8wpgk2";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/hal-mode";
+ sha256 = "0nlan5f3llhn04p86a6l47dl9g83a51wzrchs2q8rvfcy4161nn4";
name = "recipe";
};
packageRequires = [];
@@ -41009,12 +43484,12 @@
melpaBuild {
pname = "haml-mode";
ename = "haml-mode";
- version = "20170923.2153";
+ version = "20190219.1302";
src = fetchFromGitHub {
owner = "nex3";
repo = "haml-mode";
- rev = "1cbb2de8f0fc25f35448c5cad04642f28078f3bb";
- sha256 = "1045bf7bq914d3577kg9xakm4yciwwsvlh5qwfk4wnsraf7rld0r";
+ rev = "bf5b6c11b1206759d2b28af48765e04882dd1fc4";
+ sha256 = "1zh19b9az4ql87vjmjm0j7y6c4ir6w3rh0n4sxzqqpnv8xpd4b44";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/haml-mode";
@@ -41294,12 +43769,12 @@
melpaBuild {
pname = "haskell-mode";
ename = "haskell-mode";
- version = "20180601.143";
+ version = "20181122.23";
src = fetchFromGitHub {
owner = "haskell";
repo = "haskell-mode";
- rev = "dd0ea640fa449d021399a17db65e4d50d3f0f2a9";
- sha256 = "0cc8mhjn4qhn3zs3x7azkjnvalg156b6h0n13b8wzlvyp9ka28yj";
+ rev = "4aa88752ab23bca3ded36a9c9fd9c34cffbb129b";
+ sha256 = "0697l2rpfacjapazvxhrnp0524zjgvw13c3168czljijknx3b54r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7f18b4dcbad4192b0153a316cff6533272898f1a/recipes/haskell-mode";
@@ -41363,6 +43838,32 @@
license = lib.licenses.free;
};
}) {};
+ hasklig-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "hasklig-mode";
+ ename = "hasklig-mode";
+ version = "20181110.1059";
+ src = fetchFromGitHub {
+ owner = "minad";
+ repo = "hasklig-mode";
+ rev = "386c098c93a744f6b30ad937d193eebf0fd79e1b";
+ sha256 = "0m1cn59fzsfqc6j1892yaaddh6g6mwiqnp1ssxhic5fcm2xk00rz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/15a60278102de9e078b613456126945737718ce9/recipes/hasklig-mode";
+ sha256 = "0gz0k9ahk0jpdp893ckbby9ilkac1zp95kpfqdnpfy0a036xfwm7";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/hasklig-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
hasky-extensions = callPackage ({ avy-menu
, emacs
, fetchFromGitHub
@@ -41372,12 +43873,12 @@
melpaBuild {
pname = "hasky-extensions";
ename = "hasky-extensions";
- version = "20180107.2112";
+ version = "20190204.1216";
src = fetchFromGitHub {
owner = "hasky-mode";
repo = "hasky-extensions";
- rev = "d75dc57f4eaeb92785bde6c26c1031710be1cf00";
- sha256 = "135rn33ldrhz3z6fg1rcdaxs1dnahliw782qc4ffxkays186id63";
+ rev = "eb1437f815bd93946ecf707e8d24dc704c273586";
+ sha256 = "1r8xbfxjig2qgkvfd2yy1b5vpn1l49h504b0zbdir9hkipwzmls9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e3f73e3df8476fa231d04211866671dd74911603/recipes/hasky-extensions";
@@ -41400,12 +43901,12 @@
melpaBuild {
pname = "hasky-stack";
ename = "hasky-stack";
- version = "20180331.208";
+ version = "20190304.1448";
src = fetchFromGitHub {
owner = "hasky-mode";
repo = "hasky-stack";
- rev = "3e17ce07dd6b0207474e4ff14ad7b8c467382947";
- sha256 = "0cdsdlgapf9xxj928hlb7ch9x8rznayrvj7n8j2vzfa0kfmg7qwf";
+ rev = "a3176aece9a9ab0a36ae795965f83f4c1fa243bf";
+ sha256 = "1j9cvy95wnmssg68y7hcjr0fh117ix1ypa0k7rxqn84na7hyhdpl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c3faf544872478c3bccf2fe7dc51d406031e4d80/recipes/hasky-stack";
@@ -41662,12 +44163,12 @@
melpaBuild {
pname = "helm";
ename = "helm";
- version = "20180719.1206";
+ version = "20190407.1013";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm";
- rev = "345842e1a36b8dfa23eb516e8a8cb64783505f6b";
- sha256 = "0k8i2ay8mmqfxsfyg12mp2rg27h9xqbvvsfmd38xgc2ni4c1sd1f";
+ rev = "a52049cc51a7db2f2a98c93e0eef7a419271c7a7";
+ sha256 = "0yb1hjs79g5417cw3kihdk8hvjx3lllf63qn0mn59zk62s9cdw68";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7e8bccffdf69479892d76b9336a4bec3f35e919d/recipes/helm";
@@ -41881,12 +44382,12 @@
melpaBuild {
pname = "helm-backup";
ename = "helm-backup";
- version = "20171204.2357";
+ version = "20180910.2314";
src = fetchFromGitHub {
owner = "antham";
repo = "helm-backup";
- rev = "a2c0fa16113e628500d6822c6605280b94e24038";
- sha256 = "0j4dkz9za2zng43dx8ph688gl5973isxr89v5bw160c65n4lbc6w";
+ rev = "691fe542f38fc7c8cca409997f6a0ff5d76ad6c2";
+ sha256 = "0zi1md5f1haqcrclqfk4ilvr6hbm389kl3ajnyx230rq22vmb9ca";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5e6eba7b201e91211e43c39e501f6066f0afeb8b/recipes/helm-backup";
@@ -41940,12 +44441,12 @@
melpaBuild {
pname = "helm-bibtex";
ename = "helm-bibtex";
- version = "20180612.619";
+ version = "20190214.809";
src = fetchFromGitHub {
owner = "tmalsburg";
repo = "helm-bibtex";
- rev = "21f802aaf5b78dec18b72601dd8276c5244e39f5";
- sha256 = "13jg728v8k227p68ngiwknlygzqdvasg6n9ax1a2xgjbx3di12vv";
+ rev = "72cdad743706f4bed185f7be918f67a8c3dcb59f";
+ sha256 = "17f2gf4rsg3fqsj4kwiyi7cnr1q4xiam8b31kv2p1smh4qw8yfnh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f4118a7721435240cf8489daa4dd39369208855b/recipes/helm-bibtex";
@@ -42368,6 +44869,7 @@
}) {};
helm-codesearch = callPackage ({ cl-lib ? null
, dash
+ , emacs
, fetchFromGitHub
, fetchurl
, helm
@@ -42377,19 +44879,19 @@
melpaBuild {
pname = "helm-codesearch";
ename = "helm-codesearch";
- version = "20180203.2033";
+ version = "20190405.411";
src = fetchFromGitHub {
owner = "youngker";
repo = "helm-codesearch.el";
- rev = "87a68168b7c1490769305db0df60035e47799a75";
- sha256 = "0wiyz0kh2m2mpjhnl2mvsx2gvhkmmk0xaw432mxr48zz9jjnlha9";
+ rev = "1dd925cdc7527f4e1cfb433d823d1be805455df3";
+ sha256 = "1dpym7bwaavw9ggdhvma32f3kd0psrb4s2pcgni0j53hmawl7szr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0a992824e46a4170e2f0915f7a507fcb8a9ef0a6/recipes/helm-codesearch";
sha256 = "1v21zwcyx73bc1lcfk60v8xim31bwdk4p06g9i4qag3cijdlli9q";
name = "recipe";
};
- packageRequires = [ cl-lib dash helm s ];
+ packageRequires = [ cl-lib dash emacs helm s ];
meta = {
homepage = "https://melpa.org/#/helm-codesearch";
license = lib.licenses.free;
@@ -42433,12 +44935,12 @@
melpaBuild {
pname = "helm-company";
ename = "helm-company";
- version = "20180213.1405";
+ version = "20180828.912";
src = fetchFromGitHub {
owner = "Sodel-the-Vociferous";
repo = "helm-company";
- rev = "acc9c7901e094c1591327a0db1ec7a439f67a84d";
- sha256 = "1d4q9clp0q56br80c21a4wz1gc4jw3mdy97z9mq07x9i8rhlppzs";
+ rev = "d3fc093a0e833b4dee6561c00d6df3d62aa50f3f";
+ sha256 = "1ciirsanhajdqm5iwl8k9ywf4jha1wdv4sc4d9kslyrfr9zn4q6k";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8acf7420f2ac8a36474594bc34316f187b43d771/recipes/helm-company";
@@ -42460,12 +44962,12 @@
melpaBuild {
pname = "helm-core";
ename = "helm-core";
- version = "20180712.137";
+ version = "20190407.1014";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm";
- rev = "8de42d08f45a7052ed858132de43a76f933f58f7";
- sha256 = "1g36knyppz8lfbcn84hx6ivf8b34s26wx5dh4xw85sq6pwi5yn7s";
+ rev = "a1791980f9ddca1989c65a67e6997bdde481dc27";
+ sha256 = "1g6gj6wq3yiazyf73zk8hqc3nv52fg42g5gv5n8v766a3fb7bisq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7a700c5665e6d72cb4cecf7fb5a2dd43ef9bf7/recipes/helm-core";
@@ -42489,12 +44991,12 @@
melpaBuild {
pname = "helm-cscope";
ename = "helm-cscope";
- version = "20170326.22";
+ version = "20190406.151";
src = fetchFromGitHub {
owner = "alpha22jp";
repo = "helm-cscope.el";
- rev = "3cc7259ab4989f9f7ca039e703cdac14b907530a";
- sha256 = "0gh4csq6v6lqqpi966iwl2238wgkmr3vxb4kxffajpk8r0cq1c9x";
+ rev = "e4698933e26524c025533cbb8fd1e1ab61e1d940";
+ sha256 = "0lq0qhgacafz56kblkghs6pgh4linw3s2646zcamy0psksmxjcli";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3d2e3460df1ec750053bc8402ad6eb822c10c697/recipes/helm-cscope";
@@ -42544,12 +45046,12 @@
melpaBuild {
pname = "helm-ctest";
ename = "helm-ctest";
- version = "20180125.2058";
+ version = "20180821.305";
src = fetchFromGitHub {
owner = "danlamanna";
repo = "helm-ctest";
- rev = "034927a922f40d9f5978786feed9bc9fe1f7655f";
- sha256 = "0mbsxlc0isfzqlwvwqxyjkcdvpn9a6qsa29r7mqqihy0jkqi4473";
+ rev = "0c73689692a290f56080e95325c15362e90d529b";
+ sha256 = "143vyd64w3gycc68jcsji474nz2ggda58hgwq6hyiwb7s0gm1gd3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1cc85ff5554df10fc2066eec4d90de3b25536923/recipes/helm-ctest";
@@ -42571,12 +45073,12 @@
melpaBuild {
pname = "helm-dash";
ename = "helm-dash";
- version = "20180503.218";
+ version = "20190316.1309";
src = fetchFromGitHub {
owner = "areina";
repo = "helm-dash";
- rev = "0ac2db529577fa63f2ed32310062873c585b91de";
- sha256 = "0jsa4vvhbcndv47gssjnk3fwbld73jhf0f5l7hjkq82ckimw0bvi";
+ rev = "192b862185df661439a06de644791171e899348a";
+ sha256 = "06am5vnr4hsxkvh2b8q8kb80y5x1h3qyv7gwggswwhfa7w2vba3w";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-dash";
@@ -42733,14 +45235,14 @@
ename = "helm-dired-recent-dirs";
version = "20131228.614";
src = fetchFromGitHub {
- owner = "akisute3";
+ owner = "yynozk";
repo = "helm-dired-recent-dirs";
rev = "3bcd125b44f5a707588ae3868777d91192351523";
sha256 = "14sifdrfg8ydvi9mj8qm2bfphbffglxrkb5ky4q5b3j96bn8v110";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/b4e24a676ec0c5804b80c1497606b32c4f2cbe9d/recipes/helm-dired-recent-dirs";
- sha256 = "0kh0n5674ksswjzi9gji2qmx8v8g0axx8xbi0m3zby9nwcpv4qzs";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/helm-dired-recent-dirs";
+ sha256 = "1rm47if91hk6hi4xil9vb6rs415s5kvhwc6zkrmcvay9hiw9vrpw";
name = "recipe";
};
packageRequires = [ helm ];
@@ -42845,12 +45347,12 @@
melpaBuild {
pname = "helm-emms";
ename = "helm-emms";
- version = "20180405.2228";
+ version = "20190304.232";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm-emms";
- rev = "d3f9bdef8ff0d093eaf6e26af50ea905ab53fdec";
- sha256 = "0bdb8xp0yp3gijpa9i2rc17gfzjhzlm92vdzw93i10qpd1xhj4aa";
+ rev = "b785cb845a98a643eba9d5d53c9c0b4e6810a3cd";
+ sha256 = "1595r09y3rmwd46nnhvjja3hb8j2ila295ijxv61cg52ws4wginh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/db836b671705607f6cd9bce8229884b1f29b4a76/recipes/helm-emms";
@@ -42899,12 +45401,12 @@
melpaBuild {
pname = "helm-eww";
ename = "helm-eww";
- version = "20180511.618";
+ version = "20190315.207";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm-eww";
- rev = "1a09f11b2376dec8237df40140f056be8a256ef0";
- sha256 = "1kqdjhz2xiqw3bxjhfl9namhqrkbc2x70gcv6ljljya5hbkm62sm";
+ rev = "76ba59fda8dd6f32a1bc7c6df0b43c6f76169911";
+ sha256 = "0hpq1h0p69c9k6hkd2mjpprx213sc5475q7pr2zpmwrjdzgcv70z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/455a32c1d4642dc6752408c4f5055f5f4d1288eb/recipes/helm-eww";
@@ -42954,12 +45456,12 @@
melpaBuild {
pname = "helm-exwm";
ename = "helm-exwm";
- version = "20180703.919";
+ version = "20180827.137";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm-exwm";
- rev = "56266f261ba3b3d2753b374b50da20eb768c06f5";
- sha256 = "064ziinqa5sdv7rfjn0y278l12kld176fr88k4h78pgf2f2n7cd8";
+ rev = "e21c6ffabadd2fe8d6c7805b6027cc59a6f914e9";
+ sha256 = "11fyqk3h9cqynifc2zzqn0czrcj082wkdg1qhbj97nl4gcj787rl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8ecdf9e00cf19fabbeade12a66d66cd010561366/recipes/helm-exwm";
@@ -43383,12 +45885,12 @@
melpaBuild {
pname = "helm-github-stars";
ename = "helm-github-stars";
- version = "20180717.1811";
+ version = "20190326.924";
src = fetchFromGitHub {
owner = "Sliim";
repo = "helm-github-stars";
- rev = "809cf88e2984b121348b1046e1d3890f1fd580b4";
- sha256 = "09ywdsymh479syq9ps15bgyqf5gr94z8wn4jvlcxqz5aq5fil9vq";
+ rev = "8cea100f788832ad28c2a61b8fc805298383e263";
+ sha256 = "0ml324fi7bqh32d2vg41y13zqj4yx0hsqp5nmb6sw74qics7g9ma";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2e77f4a75504ca3e1091cdc757e91fb1ae361fa7/recipes/helm-github-stars";
@@ -43601,12 +46103,12 @@
melpaBuild {
pname = "helm-hatena-bookmark";
ename = "helm-hatena-bookmark";
- version = "20170821.646";
+ version = "20180803.2246";
src = fetchFromGitHub {
owner = "masutaka";
repo = "emacs-helm-hatena-bookmark";
- rev = "d64833a5bbb4ae112ed176f6473232e526138572";
- sha256 = "01b6nlbidk93arnnd2irm088qlws4i4p1sagsh9v153x6sk0r38k";
+ rev = "274e18182fe20c11e96009387a8e38e8cd2a1d7e";
+ sha256 = "13s36gyb37asgrc9qca9d196i5bnxqy4acmda5cas08b48wp4lxk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3e9335ad16d4151dd4970c4a3ad1fee9a84404fa/recipes/helm-hatena-bookmark";
@@ -43885,6 +46387,34 @@
license = lib.licenses.free;
};
}) {};
+ helm-jira = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , helm
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "helm-jira";
+ ename = "helm-jira";
+ version = "20180802.115";
+ src = fetchFromGitHub {
+ owner = "DeX3";
+ repo = "helm-jira";
+ rev = "75d6ed5bd7a041fa8c1adb21cbbbe57b5a7c7cc7";
+ sha256 = "08cczc4jnkdgvzs0s3wq2dqmhnsvyhpl65dydmi7pmayl7zg6jir";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b91a22c2117403e278a8116ea1180bed736ae1e3/recipes/helm-jira";
+ sha256 = "1fb2hk97zlr30gzln8b5x7xc3v119ki8kbiyh7shxnaqx7dy1ihs";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs helm ];
+ meta = {
+ homepage = "https://melpa.org/#/helm-jira";
+ license = lib.licenses.free;
+ };
+ }) {};
helm-js-codemod = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -44116,12 +46646,12 @@
melpaBuild {
pname = "helm-ls-git";
ename = "helm-ls-git";
- version = "20180711.223";
+ version = "20190104.2322";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm-ls-git";
- rev = "e38cee59c42fbf16b6de239a537d27af58473394";
- sha256 = "0c53x1dzb80xs6qsmd6py7b9g7d0zva0dhvvxmipjy48dlzr3k5z";
+ rev = "0702bc1950f26358c1a024bdbb2d0b1d7dcd2e51";
+ sha256 = "0ndgnnsknan2f5jy1aiwcll1kxqyzcjc9kh6vkyd8d4dw7rskldg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b487b4c0db9092bb7e32aad9265b79a9d18c8478/recipes/helm-ls-git";
@@ -44170,16 +46700,16 @@
melpaBuild {
pname = "helm-ls-svn";
ename = "helm-ls-svn";
- version = "20150717.39";
+ version = "20190316.1503";
src = fetchFromGitHub {
- owner = "emacsorphanage";
+ owner = "emacsmirror";
repo = "helm-ls-svn";
- rev = "4d4dc1a272f27fba5fdd7cc47e5d309b53c63ae3";
- sha256 = "0b7gah21rkfd43mb89lrwaqrrwq646abh7wi4q74sx796gmpz4dz";
+ rev = "a6043e1187282f649e2cb9f0e722a42daf41294b";
+ sha256 = "0jh3q2nx3hn6v1qvip5sbfsvf9zy74ppn1rl037d0hlssh6qir9j";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/30de78c9cf83de30093a5647976eeaf552d4b2cb/recipes/helm-ls-svn";
- sha256 = "0rqsy6gk114khqr28bp2fi0ixaa8wbqd952yxph517p1pbfwxy66";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/be27e728327016b819535ef8cae10020e5a07c2e/recipes/helm-ls-svn";
+ sha256 = "10rbplwagmwp8lvhandzlinnzl1vcsvdlnjk9jpj3nw42x9wahx4";
name = "recipe";
};
packageRequires = [ cl-lib emacs helm ];
@@ -44188,28 +46718,84 @@
license = lib.licenses.free;
};
}) {};
+ helm-lsp = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , helm
+ , lib
+ , lsp-mode
+ , melpaBuild }:
+ melpaBuild {
+ pname = "helm-lsp";
+ ename = "helm-lsp";
+ version = "20190104.1334";
+ src = fetchFromGitHub {
+ owner = "emacs-lsp";
+ repo = "helm-lsp";
+ rev = "78e2d936589f60f61ebed21c896416a59375aa46";
+ sha256 = "1cmcvzffqrmnbyrzi7brh118236ycb5bmr6np6c3h6janmhmml8n";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/67942b34975015dd6f2b5f6b43829cc13b1832c6/recipes/helm-lsp";
+ sha256 = "0hzwz243n45xcm3rnzmd6z8zrqy9660fy0l8mb940960cjzsxf3m";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs helm lsp-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/helm-lsp";
+ license = lib.licenses.free;
+ };
+ }) {};
+ helm-lxc = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , helm
+ , lib
+ , lxc-tramp
+ , melpaBuild }:
+ melpaBuild {
+ pname = "helm-lxc";
+ ename = "helm-lxc";
+ version = "20190116.1250";
+ src = fetchFromGitHub {
+ owner = "montag451";
+ repo = "helm-lxc";
+ rev = "6f11ea39c48816215fbd2df6c4bdaa90241aeac7";
+ sha256 = "19f2jbjid1kfnqyqz9jnzy3blp5is23r14ss9iaky4wwb4gs0847";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/7a7717154a657bb7c27b25579ea2c1b31b5c0b5f/recipes/helm-lxc";
+ sha256 = "0mhxbs99isbvls34g0415iy3fry7kanala6624gp5l5isbmn95rm";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs helm lxc-tramp ];
+ meta = {
+ homepage = "https://melpa.org/#/helm-lxc";
+ license = lib.licenses.free;
+ };
+ }) {};
helm-make = callPackage ({ fetchFromGitHub
, fetchurl
- , helm
, lib
- , melpaBuild
- , projectile }:
+ , melpaBuild }:
melpaBuild {
pname = "helm-make";
ename = "helm-make";
- version = "20180602.653";
+ version = "20190403.624";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "helm-make";
- rev = "014e81c638fae3ad891a0b9317ae368d9eee7c5f";
- sha256 = "1p7pdrq4vh9adk9m19dyapadaz6karlcksmah3g4l1c8zr0awf4h";
+ rev = "12c94f765401157d9ae0ba701636b50c9e313486";
+ sha256 = "1qanvb2wggmznxvyx8cpfs0ah6ysk0sqp2ccki8c20835l0awnyv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0f25f066c60d4caff1fbf885bc944cac47515ec8/recipes/helm-make";
sha256 = "1r6jjy1rlsii6p6pinbz7h6gcw4vmcycd3vj338bfbnqp5rrf2mc";
name = "recipe";
};
- packageRequires = [ helm projectile ];
+ packageRequires = [];
meta = {
homepage = "https://melpa.org/#/helm-make";
license = lib.licenses.free;
@@ -44336,12 +46922,12 @@
melpaBuild {
pname = "helm-navi";
ename = "helm-navi";
- version = "20170402.752";
+ version = "20181225.1629";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm-navi";
- rev = "eb5d53f2abc640bea90e3c221562913c4d144638";
- sha256 = "0d2nm35hnp26xlpp4s60ddg8mn89bpaa5b6qsap9ff6kqxfnhww1";
+ rev = "3b9abcc39ce7c657bc2dcc054b850dc2a7cf0448";
+ sha256 = "1kxv8qx7s51fnzrslwqrgayqvyq30ycnb84p5qy7jf0rf69hxxjh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e5ffbc25c0eb30b9c96594d50f47cd0383aa8ebc/recipes/helm-navi";
@@ -44390,12 +46976,12 @@
melpaBuild {
pname = "helm-notmuch";
ename = "helm-notmuch";
- version = "20180521.407";
+ version = "20190320.348";
src = fetchFromGitHub {
owner = "xuchunyang";
repo = "helm-notmuch";
- rev = "3176305a700c571e3bd6cdb37598708ad283ea73";
- sha256 = "097h2v5dxlcyb5myk9ijbjnf1qfi52ivaqq56hf5yll3k7i9m65d";
+ rev = "97a01497e079a7b6505987e9feba6b603bbec288";
+ sha256 = "1k038dbdpaa411gl4071x19fklhnizhr346plxw23lsnxir9dhqc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/98667b3aa43d3e0f6174eeef82acaf71d7019aac/recipes/helm-notmuch";
@@ -44448,12 +47034,12 @@
melpaBuild {
pname = "helm-org-rifle";
ename = "helm-org-rifle";
- version = "20180712.1545";
+ version = "20181216.329";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "helm-org-rifle";
- rev = "b712ced914da3ae733ee7c355261071d4eed4876";
- sha256 = "0s8dq2x73p6dfrkyiq7zajl24wrsdmh6wgwrjjf9d6hdla64pfy8";
+ rev = "23f4ae05f5a9d1894f4afdb9ef774c342eb7e787";
+ sha256 = "040jmacydgp56gd48ddfn1yk8bsdaawhdkpb0nr898q0bkk5arzj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f39cc94dde5aaf0d6cfea5c98dd52cdb0bcb1615/recipes/helm-org-rifle";
@@ -44522,7 +47108,7 @@
}) {};
helm-pass = callPackage ({ auth-source-pass
, emacs
- , fetchFromGitLab
+ , fetchFromGitHub
, fetchurl
, helm
, lib
@@ -44531,16 +47117,16 @@
melpaBuild {
pname = "helm-pass";
ename = "helm-pass";
- version = "20180607.1648";
- src = fetchFromGitLab {
- owner = "jabranham";
+ version = "20190315.635";
+ src = fetchFromGitHub {
+ owner = "emacs-helm";
repo = "helm-pass";
- rev = "fdff8f8f2e2b8a61caed7b6c171624700dbe1346";
- sha256 = "1rq4gsz924m06l01x0058cgxxmqwvh4jga8fb7lwviispxi21nbn";
+ rev = "ed5798f2d83937575e8f23fde33323bca9e85131";
+ sha256 = "0vglaknmir3yv4iwibwn8r40ran8d04gcyp99hx73ldmf3zqpnxv";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7d3c7af03e0bca3f834c32827cbcca29e29ef4db/recipes/helm-pass";
- sha256 = "0a2yqd99j295ingljrvrni4z8qvlk9l827xi3rmkpafhhysch66h";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4a34e0ab66491540dd0c5b62c7f60684056b16d5/recipes/helm-pass";
+ sha256 = "153cj58x2xcmjs2n4fl1jsv8zir4z9jwg1w00ghv70k5j3rwsjkp";
name = "recipe";
};
packageRequires = [ auth-source-pass emacs helm password-store ];
@@ -44722,12 +47308,12 @@
melpaBuild {
pname = "helm-projectile";
ename = "helm-projectile";
- version = "20180722.1426";
+ version = "20180815.814";
src = fetchFromGitHub {
owner = "bbatsov";
repo = "helm-projectile";
- rev = "74349fc9132502af2b2e6ca9a51185ae4c9391b4";
- sha256 = "0b24gypvbr1k7pks4fvniwa6smi4vflr5lgd3b82y2ah0b8x758m";
+ rev = "8a2dbc973548fac89356c11d70f7f474ea1367a5";
+ sha256 = "1lyka93dw4ndpw1qr1ixrng5lfdbz84yha5zl37imvkg68v6zi1x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8bc4e3a5af7ba86d277c73a1966a91c87d3d855a/recipes/helm-projectile";
@@ -44783,8 +47369,8 @@
sha256 = "03ys40rr0pvgp35j5scw9c28j184f1c9m58a3x0c8f0lgyfpssjk";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/550eb9f42c90fd9e80714579c12ee6bfcacb5bb7/recipes/helm-pt";
- sha256 = "1imhy0bsm9aldv0pvf88280qdya01lznxpx5gi5wffhrz17yh4pi";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/helm-pt";
+ sha256 = "1pvipzjw9h668jkbwwkmphvp806fs9q4mb2v2bjxpb0f3kn2qk3n";
name = "recipe";
};
packageRequires = [ helm ];
@@ -45021,12 +47607,12 @@
melpaBuild {
pname = "helm-rg";
ename = "helm-rg";
- version = "20180629.220";
+ version = "20190130.934";
src = fetchFromGitHub {
owner = "cosmicexplorer";
repo = "helm-rg";
- rev = "008b4b06036d95921f176f222e6055255516116d";
- sha256 = "1zkcqcvr2svfa7i4d0vghr80nnksgmvdhfigb3r6prv9v84ghwkm";
+ rev = "2cac4b6f9ab16962d63003c3f8b07e4d4f9899db";
+ sha256 = "18nvndrqshvl79awixvsc9d7xi8npbyr10d7clbr0y2l405bwx4j";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/958fbafdcb214f1ec89fd0d84c6600c89890e0cf/recipes/helm-rg";
@@ -45310,6 +47896,35 @@
license = lib.licenses.free;
};
}) {};
+ helm-slime = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , helm-core
+ , lib
+ , melpaBuild
+ , slime }:
+ melpaBuild {
+ pname = "helm-slime";
+ ename = "helm-slime";
+ version = "20190315.212";
+ src = fetchFromGitHub {
+ owner = "emacs-helm";
+ repo = "helm-slime";
+ rev = "ebe80eebd1dfba1f1c837876c8f73cefc8c4db87";
+ sha256 = "1qhb9446rpj17pm0hi3miy5gs5k3ld43bq29kzy0y26bf7ivfcjv";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c35d43a7a8219de4a7f675147f598966aaecb9db/recipes/helm-slime";
+ sha256 = "0qv4c1dd28zqbjxpshga967szrh75a4k51n4x86xkbax7ycca4hh";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs helm-core slime ];
+ meta = {
+ homepage = "https://melpa.org/#/helm-slime";
+ license = lib.licenses.free;
+ };
+ }) {};
helm-smex = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -45402,12 +48017,12 @@
melpaBuild {
pname = "helm-spotify-plus";
ename = "helm-spotify-plus";
- version = "20180107.338";
+ version = "20181229.345";
src = fetchFromGitHub {
owner = "wandersoncferreira";
repo = "helm-spotify-plus";
- rev = "c0903491da0adf215ad44bd31e11604da95062d6";
- sha256 = "0wqj28i5l43xf8l24g4qn6vra489f0lp7nb5rj7yywy6siikmvx6";
+ rev = "8404541463a398007c7a38a28df10d89f3ef9668";
+ sha256 = "0mqyzac48pmmazxb9vl9b5jymr53blzlmjbkmdsxnmk6gml27acr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/306aa9fd29f1495eef71476dfcba3b494223b0a9/recipes/helm-spotify-plus";
@@ -45483,12 +48098,12 @@
melpaBuild {
pname = "helm-system-packages";
ename = "helm-system-packages";
- version = "20180628.1131";
+ version = "20190325.315";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm-system-packages";
- rev = "d510562f4ea21245496199dffb731d00152f8a2b";
- sha256 = "0qzv395gm1i56f7rahx44b0v816mjk7fx52nwkwspdmixyzckzn2";
+ rev = "9e43d446bbf2dd00dfda1d4aef2501fb2400bb1d";
+ sha256 = "1rijsmqg5hfrrrkcc9nyy2smw6jnkxhqd9yqpd3rywj7dvb40blc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0c46cfb0fcda0500e15d04106150a072a1a75ccc/recipes/helm-system-packages";
@@ -45513,14 +48128,14 @@
ename = "helm-systemd";
version = "20180130.2034";
src = fetchFromGitHub {
- owner = "lompik";
+ owner = "Lompik";
repo = "helm-systemd";
rev = "96f5cd3ee3412539c2f8d145201f47c4f8e53b4f";
sha256 = "0wyabh76q2lighd7qxpkzp35fkblxlz8g7p4lpgfwvjid0ixmnvq";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-systemd";
- sha256 = "0k2yqmvwswihcn75wzn5923z5y4njarmvdlx3j7w3hwsxh6k1mcw";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/helm-systemd";
+ sha256 = "1m1by9i37ban3zkznyamp5vxizj8zsz06fdscdhmky1grf6ri4r8";
name = "recipe";
};
packageRequires = [ emacs helm with-editor ];
@@ -45538,12 +48153,12 @@
melpaBuild {
pname = "helm-tail";
ename = "helm-tail";
- version = "20180624.203";
+ version = "20181123.2039";
src = fetchFromGitHub {
owner = "akirak";
repo = "helm-tail";
- rev = "ff3895e2fbc6d3cc6503bc295a49bba70654aaef";
- sha256 = "0ixdr93axjqdqv2m4yvpnf2v4g7c1d1hkqhid2lfg8vaqb9dvqpw";
+ rev = "1f5a6355aa3bdb00b9b0bc93db29c17f0d6701e3";
+ sha256 = "1ad0khw26m22xpdv0iyg5gac92i8m455sznsfh16vxaa98gq0c4q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/74b235c2ecf8c8f8206670bca3b915deb4b77c2b/recipes/helm-tail";
@@ -45556,6 +48171,33 @@
license = lib.licenses.free;
};
}) {};
+ helm-taskswitch = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , helm
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "helm-taskswitch";
+ ename = "helm-taskswitch";
+ version = "20190304.614";
+ src = fetchFromGitHub {
+ owner = "bdc34";
+ repo = "helm-taskswitch";
+ rev = "00fe3a1f535dc63ec8ad1a46739f08c27fc5087c";
+ sha256 = "1y8nmh4aq450xqvc69zcr23gahzk3d6z4y0vpd73m0mys1rmvrng";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3602b1f7b9a75cc82c4bde9ea12b2509465db30f/recipes/helm-taskswitch";
+ sha256 = "01yvdbwlixif670f4lffpsk9kvlhgrmh95jw0vc568x0bd3j2a02";
+ name = "recipe";
+ };
+ packageRequires = [ emacs helm ];
+ meta = {
+ homepage = "https://melpa.org/#/helm-taskswitch";
+ license = lib.licenses.free;
+ };
+ }) {};
helm-themes = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -45592,12 +48234,12 @@
melpaBuild {
pname = "helm-tramp";
ename = "helm-tramp";
- version = "20180610.717";
+ version = "20190124.2047";
src = fetchFromGitHub {
owner = "masasam";
repo = "emacs-helm-tramp";
- rev = "07d2f02166038c14052009f6fb9c2a163118e2cc";
- sha256 = "1yi4wq484nrjb1yphp6dbaqjgfq7hr78gh9v9cys7dqg910ngy4f";
+ rev = "a7456cee86a83d68c966475fab90ab94006fd23c";
+ sha256 = "1yrwv3xzbqndns9lda70vpv75vipgjd5j9s1dx1ggfhx21kbnf9w";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-tramp";
@@ -45676,12 +48318,12 @@
melpaBuild {
pname = "helm-w3m";
ename = "helm-w3m";
- version = "20171102.216";
+ version = "20181029.26";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm-w3m";
- rev = "8345b7e60702911f54eb6571e429c0d31878957d";
- sha256 = "05izdvs8hwkkmz6hvlm2b5p5jmha39nsnnzzhnli70jrbqj013cq";
+ rev = "c15d926631198d6d759ec8881837bcca5a64963b";
+ sha256 = "0qaqcwhwmckfmg3axiad35azn0l74k1niw4ix0v1bn2vqrxanqcw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f683fc9c7990e9ecb8a94808a7d03eb90c5569b1/recipes/helm-w3m";
@@ -45758,12 +48400,12 @@
melpaBuild {
pname = "helm-xref";
ename = "helm-xref";
- version = "20180528.816";
+ version = "20190212.2259";
src = fetchFromGitHub {
owner = "brotzeit";
repo = "helm-xref";
- rev = "6f7e8eeec5cc4db64a76ba242c0f2f61e7ee1e46";
- sha256 = "13f47b3pv37181bbvpaws2z4jcfbim8b2b7zh988gbm579qi4fq6";
+ rev = "c258209ee6c21774ba3df89d3c6bd7afbb86af9f";
+ sha256 = "1mznr67ivddms0vhaj4aglfkhfzssifrrv65pfm8ny76gwlvx73z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6d1796688ed0d6957557d960ca28e450f9bcb6cf/recipes/helm-xref";
@@ -45786,12 +48428,12 @@
melpaBuild {
pname = "helm-youtube";
ename = "helm-youtube";
- version = "20161113.1848";
+ version = "20190101.933";
src = fetchFromGitHub {
owner = "maximus12793";
repo = "helm-youtube";
- rev = "7a944bc25f0f9e915011e9325caf46b46fcaa1b8";
- sha256 = "0948rq6i4ibwhmi6m2k23f83yvf56vwgri1sg2060d901zd86cxy";
+ rev = "e7272f1648c7fa836ea5ac1a61770b4931ab4709";
+ sha256 = "062i1gkwa1rmxaw5mf20vc3nqsj6g6hfbggcglgd3wfn9rckvlqb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7537f732091b96b6c1b96c0174895278eba6776a/recipes/helm-youtube";
@@ -45858,6 +48500,32 @@
license = lib.licenses.free;
};
}) {};
+ help-find-org-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "help-find-org-mode";
+ ename = "help-find-org-mode";
+ version = "20181203.1834";
+ src = fetchFromGitHub {
+ owner = "EricCrosson";
+ repo = "help-find-org-mode";
+ rev = "c6fa2c8a8e9381572190010a9fa01f2be78f2790";
+ sha256 = "1szjqaw31r5070wpbj5rcai124c66bs32x35w1hsxyvzs5k85wg9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/572003398d1bba572fa9f6332b25ade9306bf718/recipes/help-find-org-mode";
+ sha256 = "149rd61bcvgrwhnhlqriw6fn6fr4pwr4ynmj2bwcp558nwf0py0b";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/help-find-org-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
helpful = callPackage ({ dash
, dash-functional
, elisp-refs
@@ -45872,12 +48540,12 @@
melpaBuild {
pname = "helpful";
ename = "helpful";
- version = "20180722.1557";
+ version = "20190407.1536";
src = fetchFromGitHub {
owner = "Wilfred";
repo = "helpful";
- rev = "89668dd787248c7f0d35d4ab26f4a61f2efefdcb";
- sha256 = "0fwgvpp6bchvr0fr1s1rb56dywbgw8345v8i3c9sp2xa3ahqmvri";
+ rev = "53ae44bd2384de5e2513496ccf6ca2fce6767299";
+ sha256 = "1fpqnimqbrwhpv714iw46i0dyb4gxdvh08640xbwbqpm9p546lm7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/889d34b654de13bd413d46071a5ff191cbf3d157/recipes/helpful";
@@ -45898,16 +48566,16 @@
melpaBuild {
pname = "hemera-theme";
ename = "hemera-theme";
- version = "20170910.603";
+ version = "20180916.224";
src = fetchFromGitHub {
- owner = "GuidoSchmidt";
+ owner = "guidoschmidt";
repo = "emacs-hemera-theme";
- rev = "354ae3b788c11ac08e6e2fe7c86adc621e2b16fd";
- sha256 = "00cfi9gsn9fvjpgxkz931p02gs8dcgwwsaqz3anss9qadxxmi9xv";
+ rev = "b67c902b210b37b00cac68726822404543147ba8";
+ sha256 = "1q31kz5p97pby26lyb6r0jfcx5pdyax3sfba4lp8dzmxpisz2g2p";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/3440905a20bc91bb2637a87c04ff8410379f150d/recipes/hemera-theme";
- sha256 = "0lxm06gv5f75s86320m8wh3dirdcspb6zd5n1a6l0pnn585xqkrn";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/hemera-theme";
+ sha256 = "00d8dmmn7mhzj6ai0qgdkj4hy1qpdcyiriky97prydibjvljq239";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -45999,12 +48667,12 @@
melpaBuild {
pname = "hexo";
ename = "hexo";
- version = "20180223.1944";
+ version = "20180814.1919";
src = fetchFromGitHub {
owner = "kuanyui";
repo = "hexo.el";
- rev = "ff21ab2d95e13666f36a243989ffea2027842191";
- sha256 = "1g7i4vlpac7npx8c7f7i9w3f30is7q7zsxp0sqwp7x7rsa5783nn";
+ rev = "6bca18f911f6b2cd5c055ed73ddec98c385f9f86";
+ sha256 = "1zawz3nry832rhx80hyfqfs0gfw3hyrn96060zj3n75avx13rr8j";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/21de1b7db0fa4af4fc0014207d41893a0713d738/recipes/hexo";
@@ -46226,11 +48894,11 @@
melpaBuild {
pname = "highlight";
ename = "highlight";
- version = "20180604.2335";
+ version = "20181002.451";
src = fetchgit {
url = "https://framagit.org/steckerhalter/highlight.el.git";
- rev = "6f92253690dde26d9bfd21546fdf68ef2fdd486b";
- sha256 = "01c911p0bqq391hv7lfvz51fyismrvbkk5yyzwipmx0wrr9qjgfv";
+ rev = "ea733e17884aeae19172407e20559fc693fdd3a7";
+ sha256 = "13ajbhpwvdmk0mzaffj45gxqmq13b57d81iqdpg9q2l2wjk95jq7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f0a8eb0eefe88b4ea683a4743c0f8393506e014b/recipes/highlight";
@@ -46251,12 +48919,12 @@
melpaBuild {
pname = "highlight-blocks";
ename = "highlight-blocks";
- version = "20151201.815";
+ version = "20190318.857";
src = fetchFromGitHub {
owner = "Fanael";
repo = "highlight-blocks";
- rev = "9c4240a5d16008db430d1a81c76dad474d3deb0c";
- sha256 = "0c65jk00j88qxfki2g88hy9g6n92rzskwcn1fbmwcw3qgaz4b6w5";
+ rev = "33cf3d36662faa36c86c8d53e4d5a3922efa3eb8";
+ sha256 = "04v5y04v4n06ig8zld6axrxpz07s70sn5ckxcy8gnz5qm0zvr7mx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eaf524488c408483ea8f2c3a71174b1b5fc3f5da/recipes/highlight-blocks";
@@ -46276,12 +48944,12 @@
melpaBuild {
pname = "highlight-context-line";
ename = "highlight-context-line";
- version = "20170319.1442";
+ version = "20181122.1403";
src = fetchFromGitHub {
owner = "ska2342";
repo = "highlight-context-line";
- rev = "f91e99c178831830801299b9c3a512c4d70871a0";
- sha256 = "0q8z7i0jijj0yjz9smsqhx2hgrps0vyspadpc1ssb8vn5mn7vngb";
+ rev = "c3257c0ca9dba76167bbd7e0718a65ecd26ef26f";
+ sha256 = "10mv1hd33msafp3r62p9zhwivy0l876ci9xjh7nqc9621qxxd5rw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/00df721571ff67fe158251fa843c8f515ded3469/recipes/highlight-context-line";
@@ -46302,12 +48970,12 @@
melpaBuild {
pname = "highlight-defined";
ename = "highlight-defined";
- version = "20141225.730";
+ version = "20181106.918";
src = fetchFromGitHub {
owner = "Fanael";
repo = "highlight-defined";
- rev = "243478cc204ab42d29805ed610961cbb260c1dfd";
- sha256 = "1l10xnjyvcbv1v8xlldaca7z3fk5qav7nsbhfnjxxd0bgh5v9by2";
+ rev = "8e05be23e555ab05edc6fb188f5ce28ef495c946";
+ sha256 = "1xqs8shzka47ns4a60ba2i2kgjcq9vl9w1518ffhb4x2x41lr4ri";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/acc9b816796b9f142c53f90593952b43c962d2d8/recipes/highlight-defined";
@@ -46320,6 +48988,31 @@
license = lib.licenses.free;
};
}) {};
+ highlight-doxygen = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "highlight-doxygen";
+ ename = "highlight-doxygen";
+ version = "20180829.1118";
+ src = fetchFromGitHub {
+ owner = "Lindydancer";
+ repo = "highlight-doxygen";
+ rev = "53f2250018725fa19548e1771ee79fcc23641694";
+ sha256 = "0l6zh5cmp771h30i16bv3qvcq40pz9fxn3j7a8yx708vanb4d7kc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0153353e5abfa7513e74485049eaa384aaddbd58/recipes/highlight-doxygen";
+ sha256 = "0jkzf2mqn7y465c77vglaj3mr0cpfy2z810mywd1q21d71lsqmbl";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/highlight-doxygen";
+ license = lib.licenses.free;
+ };
+ }) {};
highlight-escape-sequences = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -46379,12 +49072,12 @@
melpaBuild {
pname = "highlight-indent-guides";
ename = "highlight-indent-guides";
- version = "20180529.1039";
+ version = "20190107.1603";
src = fetchFromGitHub {
owner = "DarthFennec";
repo = "highlight-indent-guides";
- rev = "88b9bc22efc2006cc7a650c81b95c210a96828ba";
- sha256 = "0qv9010q1ylgh3l0yxlg7js6pxc8bkdxw20r6vrihglb5qf49m08";
+ rev = "0b10f38c54ffc099861ce8463e16a1b07ddbb203";
+ sha256 = "0fa41y9gdci60417zksj9bgjx1knwh781i3dfphkgr7qbx25iky7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c8acca65a5c134d4405900a43b422c4f4e18b586/recipes/highlight-indent-guides";
@@ -46404,12 +49097,12 @@
melpaBuild {
pname = "highlight-indentation";
ename = "highlight-indentation";
- version = "20171218.137";
+ version = "20181204.39";
src = fetchFromGitHub {
owner = "antonj";
repo = "Highlight-Indentation-for-Emacs";
- rev = "35e2c1d4f8f368685893128f77f90454cb9c2708";
- sha256 = "1rmqi8k8p0f3aawh2l119hsfnnd060bv9hhjx13pabid8xhhvs73";
+ rev = "d03803f2c06749c430443a3d24e039cbafc9c58f";
+ sha256 = "1jq0gf4kcx9hvrw40rnw5c2qynjpjw1vsjbi2i4lqjbsnfnxn4wz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/31c443de5088410c0fe1b1c18f664b33ad259277/recipes/highlight-indentation";
@@ -46457,12 +49150,12 @@
melpaBuild {
pname = "highlight-numbers";
ename = "highlight-numbers";
- version = "20170905.342";
+ version = "20181013.1044";
src = fetchFromGitHub {
owner = "Fanael";
repo = "highlight-numbers";
- rev = "f952ecb7448c125d4ef82ee6ad136b25e640d74a";
- sha256 = "0fgb63iwdaakzm9cddivmr2j0mmay3512wmd14dh804a62j5l2pv";
+ rev = "8b4744c7f46c72b1d3d599d4fb75ef8183dee307";
+ sha256 = "075ip8h7bdin0yvvhn5nkwnz58arlaw1imr866ghp12q5rl4shmc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/882e3a4877ddd22cc52f56f0ce3d55b6e4831c7a/recipes/highlight-numbers";
@@ -46632,12 +49325,12 @@
melpaBuild {
pname = "highlight-thing";
ename = "highlight-thing";
- version = "20170919.704";
+ version = "20181229.501";
src = fetchFromGitHub {
owner = "fgeller";
repo = "highlight-thing.el";
- rev = "efa9abbef9b23d24179fad2518ac03e31d2dd9a9";
- sha256 = "1a39nvlcih26qsjb5s0051j9c9vqv5l66m7wl3ja4pnxx9k4754g";
+ rev = "361a3301ba37663c8e27ba75d2743a2501f4b8b9";
+ sha256 = "07ywg6idbwm91wbzpdp57w3n84pbbjyzmf5gp3m7qvm2h0xxv9av";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/84b6cb403ff9a588771d051e472596f4e3cc974d/recipes/highlight-thing";
@@ -46702,33 +49395,6 @@
license = lib.licenses.free;
};
}) {};
- himp = callPackage ({ emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild
- , vimish-fold }:
- melpaBuild {
- pname = "himp";
- ename = "himp";
- version = "20170814.1215";
- src = fetchFromGitHub {
- owner = "mkcms";
- repo = "himp";
- rev = "140234b7f7cde03cf858c5011a2ab63e3bc802ec";
- sha256 = "1g3ivash185anw8i67di1mxdfxa9py51prdy5ixl95vpqk5nmwbw";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/51b31fb1fa7052d16d659313d249eef01ca3ee88/recipes/himp";
- sha256 = "1igzlvm4g4rcnlvnwi5kn1jfvyrw2vnmp1kpvfnv7w9n6d8kflla";
- name = "recipe";
- };
- packageRequires = [ emacs vimish-fold ];
- meta = {
- homepage = "https://melpa.org/#/himp";
- license = lib.licenses.free;
- };
- }) {};
hindent = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -46739,14 +49405,14 @@
ename = "hindent";
version = "20180518.202";
src = fetchFromGitHub {
- owner = "chrisdone";
+ owner = "commercialhaskell";
repo = "hindent";
rev = "dc47d8b98ebd6ee7fdd7de5f75e65e5b5eedf72f";
sha256 = "0xp3mpiyrc6886bi9rih4vbmsar56h8i5sapigd3gn2pv2v688bc";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/dbae71a47446095f768be35e689025aed57f462f/recipes/hindent";
- sha256 = "1f3vzgnqigwbwvglxv0ziz3kyp5dxjraw3vlghkpw39f57mky4xz";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9a15a17a5aa78aed72958b2a1bde53f0c0ab5be7/recipes/hindent";
+ sha256 = "0az2zhdi73sa3h1q1c0bayqdk22a7ngrvsg9fr8b0i39sn3w8y07";
name = "recipe";
};
packageRequires = [ cl-lib ];
@@ -46838,12 +49504,12 @@
melpaBuild {
pname = "historian";
ename = "historian";
- version = "20180619.1223";
+ version = "20190110.1913";
src = fetchFromGitHub {
owner = "PythonNut";
repo = "historian.el";
- rev = "6be869f585b854eb849303c452ab4f91dab04fa9";
- sha256 = "07iw04aibmiz5fn97dafyk5k67yl525w6i1gwzazil4wb81q4b21";
+ rev = "64f4ef8cd4e417dfa090138a2d4ea1e72fd4456a";
+ sha256 = "0py43kml7fcf1k28pali7n9nhsjp003j02cpynqcz6hmk8zr7b48";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f16dacf64c52767c0c8aef653ac5d1a7a3bd0883/recipes/historian";
@@ -46984,6 +49650,33 @@
license = lib.licenses.free;
};
}) {};
+ hl-fill-column = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , names }:
+ melpaBuild {
+ pname = "hl-fill-column";
+ ename = "hl-fill-column";
+ version = "20181210.404";
+ src = fetchFromGitHub {
+ owner = "laishulu";
+ repo = "hl-fill-column";
+ rev = "d6d121a71458052df5371ca2e2d867632d0b2eba";
+ sha256 = "122i9f6sl8jhpdy6fwfr287lg66rcynknaq3qhf760wmdx1lpij9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/68c40d7b6af664e01083b78c60b6a8e66b278a4e/recipes/hl-fill-column";
+ sha256 = "1kv77zfz1rd60cajjgljn8b04j6szqwwc3ialfxf6wdzh1w28jd3";
+ name = "recipe";
+ };
+ packageRequires = [ emacs names ];
+ meta = {
+ homepage = "https://melpa.org/#/hl-fill-column";
+ license = lib.licenses.free;
+ };
+ }) {};
hl-indent = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -47043,12 +49736,12 @@
melpaBuild {
pname = "hl-todo";
ename = "hl-todo";
- version = "20180709.2155";
+ version = "20190404.1434";
src = fetchFromGitHub {
owner = "tarsius";
repo = "hl-todo";
- rev = "3401f322d954e635372995bf5cc77dae171a78ba";
- sha256 = "1dk4sb2z07cnndzs4dclqgnp3bldl2k3acr21cfdvp87flvpph0y";
+ rev = "f7d97056d17ef7fc04f4fa0b65a703d1d1a5a6b8";
+ sha256 = "07aj9zkr1142xdwmlrccpxpgyrzj9n2rdk74zcmn0jiryg8k8lnc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7c262f6a1a10e8b3cc30151cad2e34ceb66c6ed7/recipes/hl-todo";
@@ -47072,12 +49765,12 @@
melpaBuild {
pname = "hledger-mode";
ename = "hledger-mode";
- version = "20171201.1156";
+ version = "20190222.801";
src = fetchFromGitHub {
owner = "narendraj9";
repo = "hledger-mode";
- rev = "594ce27f898ba027cb7f326179ff7875072b03e0";
- sha256 = "1jla31az52qygabd99m8ibq60f4almkbjlg1z63kz7zl98hfxnw7";
+ rev = "096fdbded583ee1d99719633222baa46231d85f6";
+ sha256 = "1zf9d2z53c8n2mral05l55bd28y8xvrixvz4k2dw6zckxlhnfmiv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/hledger-mode";
@@ -47097,12 +49790,12 @@
melpaBuild {
pname = "hlint-refactor";
ename = "hlint-refactor";
- version = "20170817.2148";
+ version = "20190115.100";
src = fetchFromGitHub {
owner = "mpickering";
repo = "hlint-refactor-mode";
- rev = "92c69aa01c65968e86c15db087bb1ea785e4736c";
- sha256 = "0khnn8qk0948hlq513i7nhf7vg09iwznmj3bgw1b5k5r8j6lhs0g";
+ rev = "c4307f86aad6d02e32e9b30cb6edc115584c791c";
+ sha256 = "1c71w9s34n0i7mm4njchxn6s3ri1y6mh3akgbg4nq41d42h8iap3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/384ffc463cc6edb4806f8da68bd251e662718e65/recipes/hlint-refactor";
@@ -47244,6 +49937,33 @@
license = lib.licenses.free;
};
}) {};
+ home-end = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , keypress-multi-event
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "home-end";
+ ename = "home-end";
+ version = "20180817.155";
+ src = fetchFromGitHub {
+ owner = "Boruch-Baum";
+ repo = "emacs-home-end";
+ rev = "211914c5e7b25f35f02626575a9b10536f81ba1d";
+ sha256 = "1ppjm0sb4svarnqcv6j581sqnjjsps27ghx63759v9wkylqyi995";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f67c9cf33e0f11a9bd6e1521af86d180177111c4/recipes/home-end";
+ sha256 = "0xnpb0n4kd7b0m80g2a88ylfk5gbvkcgwb78nig98dmgjg48z2ly";
+ name = "recipe";
+ };
+ packageRequires = [ emacs keypress-multi-event ];
+ meta = {
+ homepage = "https://melpa.org/#/home-end";
+ license = lib.licenses.free;
+ };
+ }) {};
homebrew-mode = callPackage ({ dash
, emacs
, fetchFromGitHub
@@ -47379,31 +50099,6 @@
license = lib.licenses.free;
};
}) {};
- how-many-lines-in-project = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "how-many-lines-in-project";
- ename = "how-many-lines-in-project";
- version = "20140806.2142";
- src = fetchFromGitHub {
- owner = "hiddenlotus";
- repo = "how-many-lines-in-project";
- rev = "8a37ef885d004fe2ce231bfe05ed4867c6192d9b";
- sha256 = "0vygbdjy2dv7n50vrkcnqyswq48sgas0zzjfsac8x5g9vhxjkawj";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/how-many-lines-in-project";
- sha256 = "1dfh1ydpjbrawqpsj6kydvy8sz3rlwn4ma5cizfw5spd2gcmj1zb";
- name = "recipe";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/how-many-lines-in-project";
- license = lib.licenses.free;
- };
- }) {};
howdoi = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -47437,11 +50132,11 @@
melpaBuild {
pname = "howm";
ename = "howm";
- version = "20180225.205";
+ version = "20180929.514";
src = fetchgit {
url = "https://scm.osdn.net/gitroot/howm/howm.git";
- rev = "b932fa603f074049637907d35594f73c3fba45d0";
- sha256 = "189j3061g2s1286434x3zyh6xyjycfrd2sqxx655biicy1xxyk52";
+ rev = "f707233a99f425d67ddb86b197edeaa3f03a280d";
+ sha256 = "1k1fv6yyydxcv8rm5f3cyly0fl0vmxgqxdk9wnakabcb14d32ws4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0099a1f9b0efb3fc3a1420cfe71a647ec6458998/recipes/howm";
@@ -47454,6 +50149,32 @@
license = lib.licenses.free;
};
}) {};
+ hsluv = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , seq }:
+ melpaBuild {
+ pname = "hsluv";
+ ename = "hsluv";
+ version = "20181127.406";
+ src = fetchFromGitHub {
+ owner = "hsluv";
+ repo = "hsluv-emacs";
+ rev = "bc6e27d25b62f5a2f79836a32e8de6125f4d1564";
+ sha256 = "08jkba7z0w1ma9j2y93aic3sbgnzxyyiradk69qylnl60q4xnx19";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b74189f827ed54760c758f0364e573809ab32a22/recipes/hsluv";
+ sha256 = "1g7g8434q2a4vpzxa4y5vrplzjali89px3gr8vhzfhscxg6mdcki";
+ name = "recipe";
+ };
+ packageRequires = [ seq ];
+ meta = {
+ homepage = "https://melpa.org/#/hsluv";
+ license = lib.licenses.free;
+ };
+ }) {};
ht = callPackage ({ dash
, fetchFromGitHub
, fetchurl
@@ -47462,12 +50183,12 @@
melpaBuild {
pname = "ht";
ename = "ht";
- version = "20180129.1434";
+ version = "20190404.502";
src = fetchFromGitHub {
owner = "Wilfred";
repo = "ht.el";
- rev = "5a665d00dc8fda77bad2a43277d8809c23e46ab8";
- sha256 = "0w0zi393ixgi154c6dq2i1kf3kraqyfw8alfxcn6fhhxy1g9p02y";
+ rev = "095fde55294bd20dc7f46d614e1b0504e3830cfa";
+ sha256 = "1kfxcvrn8z87g99cihpkzriylzivnvf25ffqpyb9f2f0ri7xk1y5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6c7589bca1c1dfcc0fe76779f6847fda946ab981/recipes/ht";
@@ -47618,12 +50339,12 @@
melpaBuild {
pname = "htmlize";
ename = "htmlize";
- version = "20180412.1244";
+ version = "20180923.1129";
src = fetchFromGitHub {
owner = "hniksic";
repo = "emacs-htmlize";
- rev = "315a8f23cfd3e87642ff9e30ae3300c7a84244d5";
- sha256 = "0pjiid5a16xx9n5bvfff612mpli00y9nbzjapn9f1y79yl99yvxy";
+ rev = "8db0aa6aab77475a732b7363f0d57bd3933c18fd";
+ sha256 = "19hwcqla1mnp5k8mll4in1pimqpa8zmqd8yfmxkikldmwwsilaq0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/075aa00a0757c6cd1ad392f0300bf5f1b937648d/recipes/htmlize";
@@ -47636,6 +50357,32 @@
license = lib.licenses.free;
};
}) {};
+ htmltagwrap = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "htmltagwrap";
+ ename = "htmltagwrap";
+ version = "20181211.606";
+ src = fetchFromGitHub {
+ owner = "jcs090218";
+ repo = "htmltagwrap";
+ rev = "c9722bcaf449ca3e52628827d063233f4c8a7d1f";
+ sha256 = "0xd9841b9jfxsnmv5083yhh8d9fskyy7d0h0fhk922qcvhx0swhq";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3ab8c9de8a9a1d0f8a7dd70d2cb191fec8714592/recipes/htmltagwrap";
+ sha256 = "1084vq3qpyjakph5yb95r0f7a4bjqfnhj5pnpv7qk39xnr640mxb";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/htmltagwrap";
+ license = lib.licenses.free;
+ };
+ }) {};
http = callPackage ({ edit-indirect
, emacs
, fetchFromGitHub
@@ -47646,12 +50393,12 @@
melpaBuild {
pname = "http";
ename = "http";
- version = "20170906.1111";
+ version = "20181008.1421";
src = fetchFromGitHub {
owner = "emacs-pe";
repo = "http.el";
- rev = "193a7bf843dd6b6805c7b18dab31f50c8325d710";
- sha256 = "1v6adfy1774axplsjfsdkm0azfwb5g7iq26zcss4mj966q1633xv";
+ rev = "1bbfff5994e16ffc185c4ac28d792cb040da3351";
+ sha256 = "0bs2l487mn8zkx3h7zgynm5cq54w8wlr150izaxynqddcpkrr44h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c7c63aaf27240706d84e464881d40cfb7cbe9ee3/recipes/http";
@@ -47856,12 +50603,12 @@
melpaBuild {
pname = "hy-mode";
ename = "hy-mode";
- version = "20180702.1240";
+ version = "20190310.1021";
src = fetchFromGitHub {
owner = "hylang";
repo = "hy-mode";
- rev = "71a12a9208c4b87859bcbb6978e7915dd518e8dd";
- sha256 = "1px4kws91y581bg2zaav2nx972v73r4r0j135p5cbnynvkrknhnz";
+ rev = "d7b4609a0c2ecc2a64f4328e63cf0899d72d930e";
+ sha256 = "0gh81qk4yhgq46fm9a1cjs26d5vj3ip03i474b7v4aa7bc327jp7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fc9ab5cf16b61bb27559cd8ec5cf665a5aab2154/recipes/hy-mode";
@@ -47955,28 +50702,56 @@
, fetchFromGitHub
, fetchurl
, lib
+ , lv
, melpaBuild }:
melpaBuild {
pname = "hydra";
ename = "hydra";
- version = "20180703.802";
+ version = "20190405.315";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "hydra";
- rev = "87cc74b2644daa2e9e660bc8a447c84a0ddeeab6";
- sha256 = "1pizlg7qbzjy6jrs1ivhxx5kfnlbkkfwf5q3jl4695gh7z0spfkb";
+ rev = "480ae6313763a6af6dab85ed629aff2e2037bef0";
+ sha256 = "0zs9nc0mix3cqgcn5p5my5nk3826ly4ydrpx1qjgc7m2aj2smxgv";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/a4375d8ae519290fd5018626b075c226016f951d/recipes/hydra";
- sha256 = "1c59l43p39ins3dn9690gm6llwm4b9p0pk78lip0dwlx736drdbw";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/82d9e1bfd501ed2d1cd11319c5e1eb17482e8922/recipes/hydra";
+ sha256 = "1s1hj70jjbira054q8ly1pcr0818hh91qnhj0zwbv7milmvv2wwd";
name = "recipe";
};
- packageRequires = [ cl-lib ];
+ packageRequires = [ cl-lib lv ];
meta = {
homepage = "https://melpa.org/#/hydra";
license = lib.licenses.free;
};
}) {};
+ hyperspace = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "hyperspace";
+ ename = "hyperspace";
+ version = "20190216.2236";
+ src = fetchFromGitHub {
+ owner = "ieure";
+ repo = "hyperspace-el";
+ rev = "b059349eb9af5756e590cf2e5baf9432b6a9b96d";
+ sha256 = "0c49n8y7y5wg6zpzzr1hqzv6w8nbiywmalmnd3z22qzwb0qc0cbh";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0696a12acba676015640de63fc6e011128bca71c/recipes/hyperspace";
+ sha256 = "0ya41c9bxvspj81n5209p9b4c9p1i6jcp710n9i9jawpahwpqlkw";
+ name = "recipe";
+ };
+ packageRequires = [ emacs s ];
+ meta = {
+ homepage = "https://melpa.org/#/hyperspace";
+ license = lib.licenses.free;
+ };
+ }) {};
i2b2-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -48034,12 +50809,12 @@
melpaBuild {
pname = "ialign";
ename = "ialign";
- version = "20180705.453";
+ version = "20181202.346";
src = fetchFromGitHub {
owner = "mkcms";
repo = "interactive-align";
- rev = "e92664e673647826161a19e9cfc327fa8c69ba6e";
- sha256 = "0x3naly4qh3q2ngm91y1pkm5s59kqgbgydax46hp6jnasdk4klk5";
+ rev = "e1308c8f6aea05ad6dbcaa33b9bee4eb7e05ee39";
+ sha256 = "0b7a2z4v1nyyaw0lvql9xrakpsi1a6kflqr74k56ndm3ivmqwx09";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/072f1f7ce17e2972863bce10af9c52b3c6502eab/recipes/ialign";
@@ -48102,7 +50877,34 @@
license = lib.licenses.free;
};
}) {};
- ibuffer-projectile = callPackage ({ fetchFromGitHub
+ ibuffer-project = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ibuffer-project";
+ ename = "ibuffer-project";
+ version = "20181216.1325";
+ src = fetchFromGitHub {
+ owner = "muffinmad";
+ repo = "emacs-ibuffer-project";
+ rev = "7424e71062f2cb969c3e9951203022414dea37fb";
+ sha256 = "02rr81ddpand0hb3yaskklhpknnqfjkcqaa2w77xi4xlzjdima01";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/895d692a678322e2d082ead155b679fa24a3a82d/recipes/ibuffer-project";
+ sha256 = "14lpjf9lsjzvkbp5ai95ymgl6h8waq80623hnamg6mv83vg7w135";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/ibuffer-project";
+ license = lib.licenses.free;
+ };
+ }) {};
+ ibuffer-projectile = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild
@@ -48110,19 +50912,19 @@
melpaBuild {
pname = "ibuffer-projectile";
ename = "ibuffer-projectile";
- version = "20180324.2025";
+ version = "20181201.1952";
src = fetchFromGitHub {
owner = "purcell";
repo = "ibuffer-projectile";
- rev = "1e89bfa7cae0629d29f24af3d81774b88b3cede0";
- sha256 = "0y0pvjic5n5wmkrjzjjnhz2xaknib6w5p01vgv2jf5ylwq84wray";
+ rev = "76496214144687cee0b5139be2e61b1e400cac87";
+ sha256 = "0vv9xwb1qd5x8zhqmmsn1nrpd11cql9hxb7483nsdhcfwl4apqav";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/363a6a888945f2c8b02f5715539439ba744d737d/recipes/ibuffer-projectile";
sha256 = "1qh4krggmsc6lx5mg60n8aakmi3f6ppl1gw094vfcsni96jl34fk";
name = "recipe";
};
- packageRequires = [ projectile ];
+ packageRequires = [ emacs projectile ];
meta = {
homepage = "https://melpa.org/#/ibuffer-projectile";
license = lib.licenses.free;
@@ -48213,12 +51015,12 @@
melpaBuild {
pname = "ibuffer-vc";
ename = "ibuffer-vc";
- version = "20171106.2341";
+ version = "20181225.1427";
src = fetchFromGitHub {
owner = "purcell";
repo = "ibuffer-vc";
- rev = "83d60aefd21e2aa20c7217d224f38a40bb75e63b";
- sha256 = "06jk5ccsfivh6bf6ppkli6cni39rvmm9asack1056f9q6jq6l8p1";
+ rev = "64cb03887bcae6127e80f0d9342c33206e21d2d2";
+ sha256 = "1ayqa7l5ny7g01pb3917w2phnsdfw69scw3lk6bpa773pq00n2vi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/ibuffer-vc";
@@ -48307,6 +51109,31 @@
license = lib.licenses.free;
};
}) {};
+ idle-highlight-in-visible-buffers-mode = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "idle-highlight-in-visible-buffers-mode";
+ ename = "idle-highlight-in-visible-buffers-mode";
+ version = "20181027.831";
+ src = fetchFromGitHub {
+ owner = "ignacy";
+ repo = "idle-highlight-in-visible-buffers-mode";
+ rev = "8d8de309d5bd4b035c01bf7f0cfc6e079c79d898";
+ sha256 = "194r7f4ngwx03n74rs26hqn9wypn9idjizvmffpsjpxfr7wr9z7l";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b5a533be3b8dea556438d93ac48853dd3a9690f1/recipes/idle-highlight-in-visible-buffers-mode";
+ sha256 = "0kv06qlv1zp5hwaya0l90z6d5lhxcg69qac6x24ky6kf97vcdq72";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/idle-highlight-in-visible-buffers-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
idle-highlight-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -48332,6 +51159,31 @@
license = lib.licenses.free;
};
}) {};
+ idle-org-agenda = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "idle-org-agenda";
+ ename = "idle-org-agenda";
+ version = "20190106.1044";
+ src = fetchFromGitHub {
+ owner = "enisozgen";
+ repo = "idle-org-agenda";
+ rev = "bfdf1b4f4096acdd081b3549d6b838f4ca4f7d0d";
+ sha256 = "0rv8nhd2mgdbmziz49lm4hcbfyhk1wb5k0l9zsyrgn50rs32akhp";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/de55ad7d9b8b3bed6a646f526a7b20c272eb4e26/recipes/idle-org-agenda";
+ sha256 = "12g18gqwb520iqvs4v6jv0fjxsa3m6an1lq13saa4gwqixja1rrv";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/idle-org-agenda";
+ license = lib.licenses.free;
+ };
+ }) {};
idle-require = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -48417,12 +51269,12 @@
melpaBuild {
pname = "ido-complete-space-or-hyphen";
ename = "ido-complete-space-or-hyphen";
- version = "20130228.208";
+ version = "20180928.1850";
src = fetchFromGitHub {
owner = "doitian";
repo = "ido-complete-space-or-hyphen";
- rev = "3fe1fe1e1a743f8deb8f4025977647afecd58f14";
- sha256 = "1aih8n10lcrw0bdgvlrkxzhkpxpmphw07cvbp6zd27ia25037fzw";
+ rev = "ed60ebed113e4e1552efeab0c416f7c88428268e";
+ sha256 = "15h0alwi7qfqyi7w7gdl06ykxvafbx1p4614rg81kmzgs4dpqgy3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/59e11094068d3a0c0e4edc1f82158c43d3b15e0e/recipes/ido-complete-space-or-hyphen";
@@ -48446,12 +51298,12 @@
melpaBuild {
pname = "ido-completing-read-plus";
ename = "ido-completing-read+";
- version = "20180627.1944";
+ version = "20190308.836";
src = fetchFromGitHub {
owner = "DarwinAwardWinner";
repo = "ido-completing-read-plus";
- rev = "03bdf989a9af88d4eeed4003ae74c98baf58ff72";
- sha256 = "08d77ysbzd25rm8rjslckhqlsyim047c9zwq2ybbzqpjy3q52qfy";
+ rev = "d56125deac540a2ab396d6d71f7c1eeae7f37588";
+ sha256 = "11wn2xf7dbgfhwdrjazshf4c5im1yxnqpyvq8633fjc1cn9s7vxw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6104efc035bcf469d133ab9a2caf42c9d4482334/recipes/ido-completing-read+";
@@ -48526,12 +51378,12 @@
melpaBuild {
pname = "ido-flex-with-migemo";
ename = "ido-flex-with-migemo";
- version = "20180323.456";
+ version = "20190124.1937";
src = fetchFromGitHub {
owner = "ROCKTAKEY";
repo = "ido-flex-with-migemo";
- rev = "02fa776e44cb5756205aa574ebfd5c3f86f4cf3c";
- sha256 = "0cyszakyj3kb2bdy6wb5y3m3w6y1fniakjlx92g8mvb6ycwkj2p3";
+ rev = "676742cda0b7bb8a0bf6aa06f345cdc43c30cefa";
+ sha256 = "0y54mf45540p4w021wgmym9gzm8i4hfx1a3bc94mafs6zw68vxqm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1647d1ae7400ddbc8367c355ade16b5c360b42fc/recipes/ido-flex-with-migemo";
@@ -48603,12 +51455,12 @@
melpaBuild {
pname = "ido-hacks";
ename = "ido-hacks";
- version = "20150331.1209";
+ version = "20190206.1353";
src = fetchFromGitHub {
owner = "scottjad";
repo = "ido-hacks";
- rev = "b7e7514a0e011e4d767d1f5755c5eae9d85f83dc";
- sha256 = "01p4az128k1jvd9i1gshgg87z6048cw9cnm57l8qdlw01c3h6dkx";
+ rev = "d2153a3e8d23436ee07ecae2a106f434361a10c5";
+ sha256 = "0rq5jmij691cccv4x8h8aiclnzx04v08axgz30prp6p71dxlrdms";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4ac3074d28e76133835366273219e180c6e75b18/recipes/ido-hacks";
@@ -48915,12 +51767,12 @@
melpaBuild {
pname = "idris-mode";
ename = "idris-mode";
- version = "20180416.2245";
+ version = "20190228.1943";
src = fetchFromGitHub {
owner = "idris-hackers";
repo = "idris-mode";
- rev = "2cd2ace9327248e141c35127b8ef9114a1301a1d";
- sha256 = "1bszb2bccjvamxbyyhbmw7hqhs71yyx4x0bxzszs9036f6p1znph";
+ rev = "cb6aa30e76b6fdb7138db6d9673d5e8dc074177f";
+ sha256 = "1b1aspkl442li8a6ahl8267wv4y8kdl42fi3w67ra0gpzj4788s8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/17a86efca3bdebef7c92ba6ece2de214d283c627/recipes/idris-mode";
@@ -48966,12 +51818,12 @@
melpaBuild {
pname = "iedit";
ename = "iedit";
- version = "20180207.219";
+ version = "20181114.150";
src = fetchFromGitHub {
owner = "victorhge";
repo = "iedit";
- rev = "412490db4387ad9d040bfb5854f25de4c40c2146";
- sha256 = "1995j0yvvls5i7zfxw8zwfk05in8b0n82k05qdrap29v6nq2v4bx";
+ rev = "35505ad860be27feaee71e8caf646706bf8ee31d";
+ sha256 = "154d0zxn4vn4y2xglccpxkzlmg9k1g58hldgimv67x9cphsc0mpi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/iedit";
@@ -49016,12 +51868,12 @@
melpaBuild {
pname = "iflipb";
ename = "iflipb";
- version = "20171113.1244";
+ version = "20190312.1242";
src = fetchFromGitHub {
owner = "jrosdahl";
repo = "iflipb";
- rev = "a5ad1fbd1173cff5228dab265515c92c0778f86a";
- sha256 = "0gyxd5d57j0x93mqnfwwdf28plp102xh0ag2d2iws7y1d5m99wm2";
+ rev = "50b39e0bca46da43f60d69e6066ddff910bdb144";
+ sha256 = "0xxs7b0k51kjy4za7cz7bnl5s3crn1h5kxd03zhir3gy2d5cpwrw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fad6fc8bc3c0be0d5789a0d7626ebc3f298b4318/recipes/iflipb";
@@ -49272,12 +52124,12 @@
melpaBuild {
pname = "imenu-list";
ename = "imenu-list";
- version = "20180601.702";
+ version = "20190115.1330";
src = fetchFromGitHub {
owner = "bmag";
repo = "imenu-list";
- rev = "04f0632f7b8c81be8747617768c57b66e5d60994";
- sha256 = "0lmcnbps7fbqcsimynil5xq9d7n4jmcclw1qprbj8yjk42lxz0d1";
+ rev = "46008738f8fef578a763c308cf6695e5b4d4aa77";
+ sha256 = "14l3yw9y1nk103s7z5i1fmd6kvlb2p6ayi6sf9l1x1ydg9glrpl8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/86dea881a5b2d0458449f08b82c2614ad9abd068/recipes/imenu-list";
@@ -49343,6 +52195,32 @@
license = lib.licenses.free;
};
}) {};
+ immaterial-theme = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "immaterial-theme";
+ ename = "immaterial-theme";
+ version = "20190301.2259";
+ src = fetchFromGitHub {
+ owner = "petergardfjall";
+ repo = "emacs-immaterial-theme";
+ rev = "b7ad831e49f5f4512f216f1f99b2d0eba3cc0815";
+ sha256 = "0p363khj7mz9dq0dm12ksd6aamrkmm5a7vcsp0j8cmbc6r6a060c";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9a95d88bb00b1313da82929bc2733d726d2041d7/recipes/immaterial-theme";
+ sha256 = "15gwqjfpls7lqc37s70vnhycnry5g9grn6shk2wpijrxfnmyqjhj";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/immaterial-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
immortal-scratch = callPackage ({ fetchhg
, fetchurl
, lib
@@ -49402,12 +52280,12 @@
melpaBuild {
pname = "impatient-mode";
ename = "impatient-mode";
- version = "20180528.916";
+ version = "20181002.531";
src = fetchFromGitHub {
owner = "skeeto";
repo = "impatient-mode";
- rev = "96c068d5add95595dc5be42115d100cf99f908ba";
- sha256 = "18fawpnqcm1yv7f83sz05pjihwydmafmccfmizyg0hlgayhj0izf";
+ rev = "96f6a05f8de74e19d570217fe83f0734623ddb0c";
+ sha256 = "1qddy3b3fmxgkpl10p0hvmgrzhkrxyxg72sxxg5ndfwvjpf2rf91";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/aaa64c4d43139075d77f4518de94bcbe475d21fc/recipes/impatient-mode";
@@ -49612,26 +52490,26 @@
, fetchFromGitHub
, fetchurl
, js2-mode
+ , js2-refactor
, lib
, melpaBuild
- , seq
- , websocket }:
+ , seq }:
melpaBuild {
pname = "indium";
ename = "indium";
- version = "20180521.1355";
+ version = "20190305.1308";
src = fetchFromGitHub {
owner = "NicolasPetton";
repo = "Indium";
- rev = "bc9ab60ded9af501fb4424359737cbff29cecfb1";
- sha256 = "1f6asv98vsxkizb1nf37q6wacqdbqnqzk035j6sdsmj7p3plb3iy";
+ rev = "09a97c0aabb9d972e86cd7453e3f9663ba896447";
+ sha256 = "1zzc02k6745y32mbvca4nbl55gbshvrd6ya0i04v2q1vvlx30mi3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4292058cc6e31cabc0de575134427bce7fcef541/recipes/indium";
sha256 = "024ljx7v8xahmr8jm41fiy8i5jbg48ybqp5n67k4jwg819cz8wvl";
name = "recipe";
};
- packageRequires = [ company emacs js2-mode seq websocket ];
+ packageRequires = [ company emacs js2-mode js2-refactor seq ];
meta = {
homepage = "https://melpa.org/#/indium";
license = lib.licenses.free;
@@ -49671,12 +52549,12 @@
melpaBuild {
pname = "inf-clojure";
ename = "inf-clojure";
- version = "20180402.1403";
+ version = "20190327.908";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "inf-clojure";
- rev = "59868ff0433f7631c362ce25879bd4271d350ebc";
- sha256 = "1xh901krzwmvkj0rdq0hjbf41vsf92mr0w9vjb9ki660wnnjw8wc";
+ rev = "16455abd28933af7c7d6f22dd41414a3c3c66d63";
+ sha256 = "0qdrp48i6kn0fa1qjy8gf1c3asgl5dj012dhl1xd4vp3qmgshgrw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5d6112e06d1efcb7cb5652b0bec8d282d7f67bd9/recipes/inf-clojure";
@@ -49725,14 +52603,14 @@
ename = "inf-mongo";
version = "20180408.638";
src = fetchFromGitHub {
- owner = "tobiassvn";
+ owner = "endofunky";
repo = "inf-mongo";
rev = "2e498d1c88bd1904eeec18ed06b1a0cf8bdc2a92";
sha256 = "1m6skisj6r3fbxadpwwgf3a3934b2qvwb7zj975qksxq56ij0wkq";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/be9b27d5354d4b30cc9dd3be730d79e5a5bc1f74/recipes/inf-mongo";
- sha256 = "09hf3jmacsk4hl0rxk35cza8vjl0xfmv19dagb8h8fli97fb65hh";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/inf-mongo";
+ sha256 = "0f12yb3dgkjnpr4d36jwfnncqzz7kl3bnnrmjw7hv223p2ryzwpx";
name = "recipe";
};
packageRequires = [];
@@ -49748,12 +52626,12 @@
melpaBuild {
pname = "inf-ruby";
ename = "inf-ruby";
- version = "20180521.648";
+ version = "20190219.347";
src = fetchFromGitHub {
owner = "nonsequitur";
repo = "inf-ruby";
- rev = "49d59a7897f594e3be74ecbddae83719f9a6c0f0";
- sha256 = "1bkv825n1316sisajzrqza3mz0pjc03r6bl40dhgqf8qyjkkcq3c";
+ rev = "ca10d72e0c64fb7947246c77a409a5443f1f4ba0";
+ sha256 = "0m2cavxg8ksji56vj87gwr9r23rk0w3mbafq86kq88ljhb1fbpx3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/inf-ruby";
@@ -49766,31 +52644,6 @@
license = lib.licenses.free;
};
}) {};
- inferior-spim = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "inferior-spim";
- ename = "inferior-spim";
- version = "20160826.646";
- src = fetchFromGitHub {
- owner = "hiddenlotus";
- repo = "inferior-spim";
- rev = "93f67ee49f1c6899a7efd52ea4e80e9f9da3371c";
- sha256 = "1ffa29clfsr3wb00irzqlazk9d0qmjxn9wy8zfca61lh0ax5khbg";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d2ce70b5dc05096a6de46069e8d26323d3df78b6/recipes/inferior-spim";
- sha256 = "1bl29ww55vabgly84wdg18qq1md4vxzvsb6kvxymf6bpw55k313s";
- name = "recipe";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/inferior-spim";
- license = lib.licenses.free;
- };
- }) {};
inflections = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -50056,12 +52909,12 @@
melpaBuild {
pname = "inkpot-theme";
ename = "inkpot-theme";
- version = "20171217.144";
+ version = "20181118.2306";
src = fetchFromGitHub {
owner = "ideasman42";
repo = "emacs-inkpot-theme";
- rev = "8d59548ff5171bf6be6acc58d111674579646124";
- sha256 = "0r63rb99nm7fpw8yn3gkbfka12jqwzkdhv97hm89nvdrxdnbggfs";
+ rev = "054c125b49247a08af5a391992817776fd0e8af6";
+ sha256 = "06g4xsirag4gjd9khii4yhca29g5z9507lyyxxk35k36ckarg07i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dd3e02aaf8865d8038b9c590c8545e7a1b21d620/recipes/inkpot-theme";
@@ -50336,12 +53189,12 @@
melpaBuild {
pname = "intero";
ename = "intero";
- version = "20180703.18";
+ version = "20190308.834";
src = fetchFromGitHub {
owner = "commercialhaskell";
repo = "intero";
- rev = "60e2e3f76f647b20d9de8418f9576ea157e21864";
- sha256 = "0srim6q3p749xpqp28c6zfxf0aj0d87jdc1smn62wc37fxkf1wgq";
+ rev = "8da81244783fbf03afb49660423c875f2e874fba";
+ sha256 = "17vibxapzp4wf0dfc56x98wsf3wy98ghj5h10nyf7xcfwy6k0rja";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1b56ca344ad944e03b669a9974e9b734b5b445bb/recipes/intero";
@@ -50619,12 +53472,12 @@
melpaBuild {
pname = "ipython-shell-send";
ename = "ipython-shell-send";
- version = "20171212.318";
+ version = "20190220.1446";
src = fetchFromGitHub {
owner = "jackkamm";
repo = "ipython-shell-send-el";
- rev = "36523a387c15ee1652a5b0e291d4d4838da5e912";
- sha256 = "1iba7jpagc0n436pbylpcbwbdxk6bw7y0i7pjgxxwfm8akaj9i68";
+ rev = "0faed86faff02a361f23ce5fc923d0e9b09bb2da";
+ sha256 = "1nx92rmxgrxy9hfi7f2ny3q4zqrzy6jalr85lall7r74aifprrkv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9d3513d38f94de4d86124b5d5a33be8d5f0bfa43/recipes/ipython-shell-send";
@@ -50645,12 +53498,12 @@
melpaBuild {
pname = "iqa";
ename = "iqa";
- version = "20170722.834";
+ version = "20181024.1553";
src = fetchFromGitHub {
owner = "a13";
repo = "iqa.el";
- rev = "08e3f70d0a3ed95a0c5675ae88e7966474ecc45a";
- sha256 = "1n7ghcixk16n6x8p7128mqjfcsalxfyp3asydnijw7qp358l7f9r";
+ rev = "b45614f5204ed851de0abe93907aa94de5e37379";
+ sha256 = "11wrmiwlp91x59cn9k2j2pqgvzbrnzvf81dqgm9l5ph5fym0jqsd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a9bd2e952d98f7ac2dc823581b07b65e951e9e45/recipes/iqa";
@@ -50722,12 +53575,12 @@
melpaBuild {
pname = "irony";
ename = "irony";
- version = "20180703.1040";
+ version = "20190125.434";
src = fetchFromGitHub {
owner = "Sarcasm";
repo = "irony-mode";
- rev = "91353a291509f0615fabaedcd92663cd6d94d345";
- sha256 = "12951pqrk5r9wr4ir1nr810g8p6ddyldh1m6f48r7999fb5y14rw";
+ rev = "93b91d746a5ae3ec99f9c7614522de08edc1426c";
+ sha256 = "0pgdg13prr4j4dv7s7wfgrnn6h2z61aggqvlsqvid1vfr3xbg5wb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d2b6a8d57b192325dcd30fddc9ff8dd1516ad680/recipes/irony";
@@ -50826,12 +53679,12 @@
melpaBuild {
pname = "isend-mode";
ename = "isend-mode";
- version = "20171118.745";
+ version = "20190201.32";
src = fetchFromGitHub {
owner = "ffevotte";
repo = "isend-mode.el";
- rev = "88d4576e70e5874115c305ab2767d181dfda5985";
- sha256 = "0pnzy5000m34f20q97my8ahcsgr0fqyhmfzbmds5bc269vsnbr6g";
+ rev = "94184d5eb4a7f96e60351d2580eb0d20f22ab72d";
+ sha256 = "1wn7ji76pp2xpfh4yiayll5b0wlfxkb11bgk24hpx22bhjnw3ivj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8ef6e4dab78a4c333647a85ed07a81da8083ec0c/recipes/isend-mode";
@@ -50869,6 +53722,32 @@
license = lib.licenses.free;
};
}) {};
+ isolate = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "isolate";
+ ename = "isolate";
+ version = "20190205.1929";
+ src = fetchFromGitHub {
+ owner = "casouri";
+ repo = "isolate";
+ rev = "3bb82f52b0df39c9b57fb68ba622b2906d0eecff";
+ sha256 = "00h9d6d6l8cxih8ix6kckc6dhzmq9hbfmgfmfpmf6f67c4ikcv8m";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c8091f8d72c24a103f6dcaadc18bbec745c1c3d3/recipes/isolate";
+ sha256 = "1ldyvw01nq2ynxaaqmw9ihk9kwfss9rqpaydn9f41bqj15xrypjc";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/isolate";
+ license = lib.licenses.free;
+ };
+ }) {};
isortify = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -50878,12 +53757,12 @@
melpaBuild {
pname = "isortify";
ename = "isortify";
- version = "20180612.622";
+ version = "20190315.1304";
src = fetchFromGitHub {
owner = "proofit404";
repo = "isortify";
- rev = "442f12fa91695a43a4b542f7b82d6ac9b004729b";
- sha256 = "02rjyza8a0j3a2jfm9ps8gvsjqx3gxznaxw1d1zjam0a87fp7p1k";
+ rev = "4d8ecfcadf58ea51368e66ecf6f2a95a95953fcf";
+ sha256 = "0gslib1r9d9dqd9r89dfg8npkybjw2bjdrbs0z2qcnfa82x4fq4z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9d4ad18492e7f4a56a1515873bc0b66fa49829bb/recipes/isortify";
@@ -50980,12 +53859,12 @@
melpaBuild {
pname = "iter2";
ename = "iter2";
- version = "20180510.633";
+ version = "20190113.624";
src = fetchFromGitHub {
owner = "doublep";
repo = "iter2";
- rev = "f8fb8dc7230cdcd37c5d0e4e5a432125c13816d2";
- sha256 = "13q8p9cjz9c9j2l4vlwy6nvwh9y3b0aclg1b32zfdqhs6kmypisd";
+ rev = "fc1fcea5379bc7728a25dd81546886213e3db6fa";
+ sha256 = "1gvm5gfgmcw4mibi8899x9ry1zqm3ij6yl0dnmdqmv9dbv1zlqp2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d94316660051ee0ba0c12e380e6203986440368f/recipes/iter2";
@@ -51088,12 +53967,12 @@
melpaBuild {
pname = "ivy";
ename = "ivy";
- version = "20180719.1037";
+ version = "20190407.1029";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "swiper";
- rev = "31e18fd15780c5f6eedbe3d6a14f86aade673d01";
- sha256 = "0xv9ddgq218xy68bbf7d8l243g932viwlqmlk04jmalk3qyv4hj9";
+ rev = "11b00073cb348aedf1d648a991bab71e20178268";
+ sha256 = "1pylfgjrgcapya3dmivcaq5vnqx6h8lrq3xnx7sq11sw5fn6sw0n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/06c24112a5e17c423a4d92607356b25eb90a9a7b/recipes/ivy";
@@ -51120,12 +53999,12 @@
melpaBuild {
pname = "ivy-bibtex";
ename = "ivy-bibtex";
- version = "20180612.619";
+ version = "20190214.809";
src = fetchFromGitHub {
owner = "tmalsburg";
repo = "helm-bibtex";
- rev = "21f802aaf5b78dec18b72601dd8276c5244e39f5";
- sha256 = "13jg728v8k227p68ngiwknlygzqdvasg6n9ax1a2xgjbx3di12vv";
+ rev = "72cdad743706f4bed185f7be918f67a8c3dcb59f";
+ sha256 = "17f2gf4rsg3fqsj4kwiyi7cnr1q4xiam8b31kv2p1smh4qw8yfnh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c23c09225c57a9b9abe0a0a770a9184ae2e58f7c/recipes/ivy-bibtex";
@@ -51178,12 +54057,12 @@
melpaBuild {
pname = "ivy-erlang-complete";
ename = "ivy-erlang-complete";
- version = "20180715.2144";
+ version = "20190406.1036";
src = fetchFromGitHub {
owner = "s-kostyaev";
repo = "ivy-erlang-complete";
- rev = "6dad91e4951ed6fd8886bfee587144da18b57049";
- sha256 = "1padq39s8k4p16bgxi0cyy1q0rqa89w38a0nzkc3kvnq3iycixlp";
+ rev = "f3a7088ba62746932ac0084e254e4235b93febcc";
+ sha256 = "0sdxcx1ihb51khi5chdm80mzwh8ygfs86pndgh5gq8dzbqpi2ax4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac1b9e350d3f066e4e56202ebb443134d5fc3669/recipes/ivy-erlang-complete";
@@ -51196,6 +54075,33 @@
license = lib.licenses.free;
};
}) {};
+ ivy-explorer = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , ivy
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ivy-explorer";
+ ename = "ivy-explorer";
+ version = "20190318.908";
+ src = fetchFromGitHub {
+ owner = "clemera";
+ repo = "ivy-explorer";
+ rev = "5bf3b915bdb78f58fc657e616262d967266a4500";
+ sha256 = "1nfabcphfsbza4zrw4f23ajv6bh4jrma0k9ygphv7pzg7hc48jf8";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/8b590a6e0d11fda3d93e4d92f847138f8968b332/recipes/ivy-explorer";
+ sha256 = "088ciy051b3kcd6anm66fnkg510c72hrfgdbgdf4mb9z4d9bk056";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ivy ];
+ meta = {
+ homepage = "https://melpa.org/#/ivy-explorer";
+ license = lib.licenses.free;
+ };
+ }) {};
ivy-feedwrangler = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -51232,12 +54138,12 @@
melpaBuild {
pname = "ivy-gitlab";
ename = "ivy-gitlab";
- version = "20180312.947";
+ version = "20181228.26";
src = fetchFromGitHub {
owner = "nlamirault";
repo = "emacs-gitlab";
- rev = "68318aca3206d50701039c9aae39734ca29a49f9";
- sha256 = "0arsjdn0anp7pacwxd3cw4db8a7pgzjlnwav1l3maaz1176h4lpb";
+ rev = "8c2324c02119500f094c2f92dfaba4c9977ce1ba";
+ sha256 = "056c4fb5sj2y4h94klx2g24n1g3qdi7ifzs8ksw5v6hcj9lrkb1n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/35d4d4f22e4c567954287b2a1cabcb595497095a/recipes/ivy-gitlab";
@@ -51261,12 +54167,12 @@
melpaBuild {
pname = "ivy-historian";
ename = "ivy-historian";
- version = "20170715.2120";
+ version = "20190110.1913";
src = fetchFromGitHub {
owner = "PythonNut";
repo = "historian.el";
- rev = "6cc124987e18501a1f6f9a384144a22424be3ad8";
- sha256 = "1r2p8fqbc1ms9wrhkxqqmmi8cyba1xdsy9yk2yq1rrivhqpl9fq7";
+ rev = "64f4ef8cd4e417dfa090138a2d4ea1e72fd4456a";
+ sha256 = "0py43kml7fcf1k28pali7n9nhsjp003j02cpynqcz6hmk8zr7b48";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fb79cbc9af6cd443b9de97817d24bcc9050d5940/recipes/ivy-historian";
@@ -51289,12 +54195,12 @@
melpaBuild {
pname = "ivy-hydra";
ename = "ivy-hydra";
- version = "20180614.1500";
+ version = "20190328.845";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "swiper";
- rev = "8c1a191764446397f31d4c8e47e687f5b521e46f";
- sha256 = "14csqz3mj33rjby8vgzlarcymn97jx8678w4n6mfd9m1h40fb7nv";
+ rev = "c56ad2a551d8915525201590ef38a658bbeeb54b";
+ sha256 = "0fmi5dk30xa6ra6br09abxhvha8rx9l28qkajfj5namk5id3s388";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/06c24112a5e17c423a4d92607356b25eb90a9a7b/recipes/ivy-hydra";
@@ -51363,6 +54269,34 @@
license = lib.licenses.free;
};
}) {};
+ ivy-omni-org = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , ivy
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ivy-omni-org";
+ ename = "ivy-omni-org";
+ version = "20190308.1936";
+ src = fetchFromGitHub {
+ owner = "akirak";
+ repo = "ivy-omni-org";
+ rev = "ab18ca56759aa3428ca017da223dd2eb17feb078";
+ sha256 = "1c5mk3dbbjan3fh5sy03dhhdmjawbrnqdf6m1sdkpv379hf9py2f";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4eaad7323462d6c7fd343ede0d2df8c67885e542/recipes/ivy-omni-org";
+ sha256 = "1mxdglp0frplv75bik2fl2ybbl0yqfd5r70alcgx1zmba18kaj20";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ivy ];
+ meta = {
+ homepage = "https://melpa.org/#/ivy-omni-org";
+ license = lib.licenses.free;
+ };
+ }) {};
ivy-pages = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -51456,12 +54390,12 @@
melpaBuild {
pname = "ivy-posframe";
ename = "ivy-posframe";
- version = "20180707.2016";
+ version = "20190407.544";
src = fetchFromGitHub {
owner = "tumashu";
repo = "ivy-posframe";
- rev = "ff2578a044dbe3ba5711ed727cc778b5aa108676";
- sha256 = "0nphklyn3czr5zvdl5m31fc3sc80mn0izdmmxnq9cj7hz8fc61ch";
+ rev = "3aabf14e24c407c39ee5af85e18cb26f1f157af5";
+ sha256 = "04pv0mcl69cys7lcsyr1ms45wjq5xcq9q23d5r351h8qn3q4bcwf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9e7c6f7ca439683abf11dcaa38672ac139c0da4f/recipes/ivy-posframe";
@@ -51484,12 +54418,12 @@
melpaBuild {
pname = "ivy-prescient";
ename = "ivy-prescient";
- version = "20180716.907";
+ version = "20190313.2133";
src = fetchFromGitHub {
owner = "raxod502";
repo = "prescient.el";
- rev = "a1464272d62f4054c314d1a3196f7b7673325752";
- sha256 = "1w6xbyrk48mdv7iyspqkjv7ppp4r8rf1dispk08p8qig2d9crvl7";
+ rev = "6a729df6e97af2bbbdce4a4536a237e47e51555d";
+ sha256 = "0j55qbwmqn89q8ngzaq6pryp9xxdag99ggvs24n0yw6qwpw7v2h5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a92495d09689932ab9f0b716078ceeeb9cc154e0/recipes/ivy-prescient";
@@ -51539,16 +54473,16 @@
melpaBuild {
pname = "ivy-rich";
ename = "ivy-rich";
- version = "20180704.1845";
+ version = "20190316.2315";
src = fetchFromGitHub {
- owner = "yevgnen";
+ owner = "Yevgnen";
repo = "ivy-rich";
- rev = "6575eb27510e841607b9e8cea87998a50fbc7be7";
- sha256 = "0agnpkkwvhf3g0cpl1c8p5dj4cnlg3890pg73p4rvrv2i27ni2h4";
+ rev = "16af79860493f924319ccb6c3588a61aded94948";
+ sha256 = "0c9jqppmywijyjh0b5fv5p1jricj6vrvkrnfm7na02zh26rjx1qj";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/0fc297f4949e8040d1b0b3271c9a70c64887b960/recipes/ivy-rich";
- sha256 = "0knkqc403gch4dp1q114h64cwwisxwnsxjqbl3cnidlwkn7lzk7m";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/ivy-rich";
+ sha256 = "1il1lhxxg694j9w65qwzjm4p4l3q1h1hfndybj6z1cb72ijw27fr";
name = "recipe";
};
packageRequires = [ emacs ivy ];
@@ -51601,8 +54535,8 @@
sha256 = "07208qdk1a77dgh9qmpn164x5mgkzvprsdvb7y35ax12r2q541b8";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/97909da7899d4187e8eb6b3284f6225ebec7fa51/recipes/ivy-todo";
- sha256 = "12sfg2rbnk73a34ap94g4g70gx13llcgsrmfdrgrzk83a2274a2r";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/ivy-todo";
+ sha256 = "06mn430zkisnqrmad81gn88pl7lz0m8rm1yvpngpakwwnhwm0q96";
name = "recipe";
};
packageRequires = [ emacs ivy ];
@@ -51647,12 +54581,12 @@
melpaBuild {
pname = "ivy-xref";
ename = "ivy-xref";
- version = "20180701.2117";
+ version = "20180821.511";
src = fetchFromGitHub {
owner = "alexmurray";
repo = "ivy-xref";
- rev = "f8ab1eeab05f025a97ddf2f239862db14e3430e9";
- sha256 = "0k6v3iamdchwnlpr1vbw1wjzc8hr2745qpvmwa74rsqgbj79p9pg";
+ rev = "61864f82e554121be0a26ba0a1d8f48b669dd5f0";
+ sha256 = "0cgl8lzw0rzswqsl8wk6b39bm2781mwvz3qwm06r2n3kjy7c79b4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a4cd8724e8a4119b61950a97b88219bf56ce3945/recipes/ivy-xref";
@@ -51665,7 +54599,8 @@
license = lib.licenses.free;
};
}) {};
- ivy-yasnippet = callPackage ({ dash
+ ivy-yasnippet = callPackage ({ cl-lib ? null
+ , dash
, emacs
, fetchFromGitHub
, fetchurl
@@ -51676,24 +54611,53 @@
melpaBuild {
pname = "ivy-yasnippet";
ename = "ivy-yasnippet";
- version = "20180620.2336";
+ version = "20181002.955";
src = fetchFromGitHub {
owner = "mkcms";
repo = "ivy-yasnippet";
- rev = "817c52a0f74dcd156c7f8c6433dfb6b32753428a";
- sha256 = "1qx71alaj3bzis6qd3vs9jg52lkr871830rbpgxy1s7ks6qj79yd";
+ rev = "32580b4fd23ebf9ca7dde96704f7d53df6e253cd";
+ sha256 = "1wfg6mmd5gl1qgvayyzpxlkh9s7jgn20y8l1vh1zbj1czvv51xp8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8c76857d716afab46f5efe46e353935921d5f217/recipes/ivy-yasnippet";
sha256 = "180q6hrsnkssbf9x9bj74dyy26kym4akbsjlj81x4193nnmc5w67";
name = "recipe";
};
- packageRequires = [ dash emacs ivy yasnippet ];
+ packageRequires = [ cl-lib dash emacs ivy yasnippet ];
meta = {
homepage = "https://melpa.org/#/ivy-yasnippet";
license = lib.licenses.free;
};
}) {};
+ ivy-ycmd = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , ivy
+ , lib
+ , melpaBuild
+ , ycmd }:
+ melpaBuild {
+ pname = "ivy-ycmd";
+ ename = "ivy-ycmd";
+ version = "20180909.525";
+ src = fetchFromGitHub {
+ owner = "abingham";
+ repo = "emacs-ivy-ycmd";
+ rev = "25bfee8f676e4ecbb645e4f30b47083410a00c58";
+ sha256 = "1ywrkx8ddncy4qhv5gh4qf1cpapyvny42i51p91j9ip7xmihy6lm";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/22e925d1b66f53d25eb1b3a2746dea82e8555783/recipes/ivy-ycmd";
+ sha256 = "0vlf75qv9m84gx83rxz0acnlx5lspq92d94q82ba2p4cc6yjyvj3";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ivy ycmd ];
+ meta = {
+ homepage = "https://melpa.org/#/ivy-ycmd";
+ license = lib.licenses.free;
+ };
+ }) {};
ivy-youtube = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -51704,12 +54668,12 @@
melpaBuild {
pname = "ivy-youtube";
ename = "ivy-youtube";
- version = "20171112.732";
+ version = "20181126.239";
src = fetchFromGitHub {
owner = "squiter";
repo = "ivy-youtube";
- rev = "23e1089d4c4fc32db20df14ba10078aabf117e87";
- sha256 = "0m70vxjj49kf8bzni2qchgzgx808z1fcfh02cflkhjcb77dkq8d6";
+ rev = "849b6db7ef02b080a86c1b887488e2935c31059a";
+ sha256 = "0f90dq8qhmsnm2hvnvzyb20nq0vmgnqzqa693scq69dv5rdjgwyj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ivy-youtube";
@@ -51802,22 +54766,23 @@
, fetchurl
, fsm
, lib
- , melpaBuild }:
+ , melpaBuild
+ , srv }:
melpaBuild {
pname = "jabber";
ename = "jabber";
- version = "20170423.513";
+ version = "20180927.1625";
src = fetchgit {
url = "https://github.com/legoscia/emacs-jabber.git";
- rev = "3de7fb40ab9c82ada2a4b5f364a2417345953050";
- sha256 = "0miq8y9yfnhihwxayzri81s21qwqm5vyj3h7j95q5kmdml661fb4";
+ rev = "fff33826f42e040dad7ef64ea312d85215d3b0a1";
+ sha256 = "1fif38qhiaxskfmqin82n9334bzrkgd1h5ip1djcm571i670gj74";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7dbf3c2ffee5a4d71466ce037c618e0434a346/recipes/jabber";
sha256 = "04d2jdzs3c790ms70px8xvyip1liqvd3jy2mbs8qqbwyiccb74xx";
name = "recipe";
};
- packageRequires = [ fsm ];
+ packageRequires = [ fsm srv ];
meta = {
homepage = "https://melpa.org/#/jabber";
license = lib.licenses.free;
@@ -51857,11 +54822,11 @@
melpaBuild {
pname = "jack-connect";
ename = "jack-connect";
- version = "20141207.407";
+ version = "20190311.1220";
src = fetchgit {
url = "https://bitbucket.org/sbarbit/jack-connect";
- rev = "b00658dfe3d5d67431c18ffa693d5a3705067ba0";
- sha256 = "1a33z07m9rh42pbcjv7sd640gf6jjzs4yn6idx52g8i5vzns0dkh";
+ rev = "3be5f03ba39ffab65e974cf1624cf38588639dcb";
+ sha256 = "1lb7z060jrbr0ijzif5p3qg70lg21h1a6jyzyfqfhwf2iwa3mkcj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c0f5c5f8051f3046baebb08f41b0ca0bf0d73c85/recipes/jack-connect";
@@ -51932,12 +54897,12 @@
melpaBuild {
pname = "japanese-holidays";
ename = "japanese-holidays";
- version = "20160927.2318";
+ version = "20190317.520";
src = fetchFromGitHub {
owner = "emacs-jp";
repo = "japanese-holidays";
- rev = "4207ee349356837ebfbf0badb6c42f256412c833";
- sha256 = "1n4imcnwqdixd8ybc06hmmh6l28gv0c6mvrpwg7fh9lgsvmgbxb3";
+ rev = "f04662cf1e96a2ef9fd7be43e9723fe355025d50";
+ sha256 = "0zlmr48wpccd1y5xxyzfrc1n7g7j3pjnhx7v0ms57plk9wbz1yp2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/80088028a1322e99e5fc50bebe08fcb6d1a2a44d/recipes/japanese-holidays";
@@ -51958,12 +54923,12 @@
melpaBuild {
pname = "japanlaw";
ename = "japanlaw";
- version = "20160129.20";
+ version = "20160614.2343";
src = fetchFromGitHub {
owner = "mhayashi1120";
repo = "japanlaw.el";
- rev = "ad318559d626652d1bc59baa8ab86d5075361e33";
- sha256 = "1wjgjbzk66a4bv60lkf76g1bd9rw892kx36ijvr9vl6z760rrrcm";
+ rev = "db8825309bec3eb8c89ff29bad4ecd2f54bbef81";
+ sha256 = "04hrfqbl88dqpgbqby6708q5ghgkyfgkl4awbd5dfzzs9nfbmmyk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6192e1db76f017c3b1315453144cffc47cdd495d/recipes/japanlaw";
@@ -52297,12 +55262,12 @@
melpaBuild {
pname = "jdee";
ename = "jdee";
- version = "20180711.1336";
+ version = "20190217.229";
src = fetchFromGitHub {
owner = "jdee-emacs";
repo = "jdee";
- rev = "9192578df89dc92c88a7faf71d8aaf4f60bcb84c";
- sha256 = "0ahpygiw7ik82y75khhhr8d81883cpnld10xdcarzj0mblhi3vqf";
+ rev = "1b1bdf01864d38173c9972234b02f81b47781757";
+ sha256 = "08nspkv8gxhiqyqyjlv0gf59ccfrkddxd0664dzygnz9dzannhrs";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a6d2c98f3bf2075e33d95c7befe205df802e798d/recipes/jdee";
@@ -52354,12 +55319,12 @@
melpaBuild {
pname = "jedi-core";
ename = "jedi-core";
- version = "20170121.610";
+ version = "20181206.1601";
src = fetchFromGitHub {
owner = "tkf";
repo = "emacs-jedi";
- rev = "de1f5597b600c0cb7661b5f451da2af4cb722571";
- sha256 = "120l9zfh432ffj5n6q4x16msvnqwcazkaxib2n19k4pdyvpd1gbp";
+ rev = "615544c6ca81bbc53140aefe345e2120110c1660";
+ sha256 = "0lc8p7xswsm5kir2paw3l65psq9fz4xd81r9ip3d7hsyab4jnvvf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bded1840a39fbf1e014c01276eb2f9c5a4fc218f/recipes/jedi-core";
@@ -52504,6 +55469,48 @@
license = lib.licenses.free;
};
}) {};
+ jest = callPackage ({ cl-lib ? null
+ , dash
+ , dash-functional
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , js2-mode
+ , lib
+ , magit-popup
+ , melpaBuild
+ , projectile
+ , s }:
+ melpaBuild {
+ pname = "jest";
+ ename = "jest";
+ version = "20181215.2059";
+ src = fetchFromGitHub {
+ owner = "emiller88";
+ repo = "emacs-jest";
+ rev = "b753aa69511ac1219c39ea1584dd1571b55a221e";
+ sha256 = "0csf6ld88b8722j6favx19ilsfc0mc56k6kmv6d2nixj1xl0pl27";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a656c058c423ea6396b831d45c6dbb9bce6c4881/recipes/jest";
+ sha256 = "10xsqcjskh2s6mlh07vf10whaas3aqm18hk3w309r3n1qmqihf75";
+ name = "recipe";
+ };
+ packageRequires = [
+ cl-lib
+ dash
+ dash-functional
+ emacs
+ js2-mode
+ magit-popup
+ projectile
+ s
+ ];
+ meta = {
+ homepage = "https://melpa.org/#/jest";
+ license = lib.licenses.free;
+ };
+ }) {};
jetbrains = callPackage ({ cl-lib ? null
, emacs
, f
@@ -52729,12 +55736,12 @@
melpaBuild {
pname = "jq-mode";
ename = "jq-mode";
- version = "20180407.1048";
+ version = "20181103.558";
src = fetchFromGitHub {
owner = "ljos";
repo = "jq-mode";
- rev = "72ea5e35e0a66c7275cf4fe4af25a619761653d7";
- sha256 = "0xgkmadbbs3zid11pn6silb25kyng424ikgx0wib48yzcra0kdw4";
+ rev = "d6bbd83baf0746f22564f7ae92db44e06da6e08c";
+ sha256 = "1sk603258gvnfrvl641xfmgapg67z44wnlx6qba73wn3f2055765";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/318705966e26e58f87b53c115c519db95874ac1c/recipes/jq-mode";
@@ -52807,12 +55814,12 @@
melpaBuild {
pname = "js-auto-format-mode";
ename = "js-auto-format-mode";
- version = "20180123.830";
+ version = "20180807.652";
src = fetchFromGitHub {
owner = "ybiquitous";
repo = "js-auto-format-mode";
- rev = "1558fb539e0beb7f98901280d695968a2351384d";
- sha256 = "16l2mjklazmfpdin3vz3ddf083phhyrhi18n0rfhv5rwh9m23wr9";
+ rev = "59caa137c4beec4dec4a7d7ebf8bcb6af44d72f0";
+ sha256 = "10xxg8lc4g9wdl4lz7kx6la23agpbq4ls1mn5d4y364j8nfcxf9g";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2d3be16771b5b5fde639da3ee97890620354ee7a/recipes/js-auto-format-mode";
@@ -52859,12 +55866,12 @@
melpaBuild {
pname = "js-comint";
ename = "js-comint";
- version = "20171129.2056";
+ version = "20181106.1438";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "js-comint";
- rev = "83e932e4a83d1a69098ee87e0ab911d299368e60";
- sha256 = "1r2fwsdfkbqnm4n4dwlp7gc267ghj4vd0naj431w7pl529dmrb6x";
+ rev = "01be9d821269c513665d00416f6dac5c77808801";
+ sha256 = "17933bxyq6jff2ibaxj2w4d9i9a5hbcfv5kh84m2vqgxcilvlx2a";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bc9d20b95e369e5a73c85a4a9385d3a8f9edd4ca/recipes/js-comint";
@@ -52940,12 +55947,12 @@
melpaBuild {
pname = "js-import";
ename = "js-import";
- version = "20170115.853";
+ version = "20190218.519";
src = fetchFromGitHub {
owner = "jakoblind";
repo = "js-import";
- rev = "7b1b7c963e3df9c76ed6cfb66c908c80775c6cfb";
- sha256 = "03a13bcipk32hdvh5bm2z8kxs4b2xp3r1phwxmvb49lxx6417bs9";
+ rev = "2ab3b120cc94ebf4bee2d959c8869440bc4c7484";
+ sha256 = "1fv8lpjanyn6chf502lz0j438hfxhqz1b0z2kxsd4jgy20ixchmg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/js-import";
@@ -53020,12 +56027,12 @@
melpaBuild {
pname = "js2-mode";
ename = "js2-mode";
- version = "20180627.744";
+ version = "20190307.849";
src = fetchFromGitHub {
owner = "mooz";
repo = "js2-mode";
- rev = "3bea9ab39b6c0b6dd442d69fe53183c1f7652284";
- sha256 = "039ffsqc40ydg4ma4ycvw76rxa6s8g54dbvcm8fyypkb8ibn7yn6";
+ rev = "7db4871cf50fab1a1086680ead2c70d1e454be6a";
+ sha256 = "1rg263ry06wny5lcmmlzaafq5bqy9llik8ymhbak7gmjypb699fq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/js2-mode";
@@ -53127,12 +56134,12 @@
melpaBuild {
pname = "jsfmt";
ename = "jsfmt";
- version = "20150727.1525";
+ version = "20180920.308";
src = fetchFromGitHub {
owner = "brettlangdon";
repo = "jsfmt.el";
- rev = "68109120f553fbc651fafb6fc35ed83c3e79f8a6";
- sha256 = "0h9gx5cl3lashk0n8pv9yzb0mm8dyziddfbwfqfm70638p93ylhc";
+ rev = "ca141a135c7700eaedef92561d334e1fb7dc28a1";
+ sha256 = "13b2y6q6hqgdf32vyph407jlgki8xf5kflqz8zi0hcrmb8wkrd5x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4ddc99843dec18a295dfc36e7b429f0e1ab7fb71/recipes/jsfmt";
@@ -53154,12 +56161,12 @@
melpaBuild {
pname = "json-mode";
ename = "json-mode";
- version = "20180718.109";
+ version = "20190122.2022";
src = fetchFromGitHub {
owner = "joshwnj";
repo = "json-mode";
- rev = "ffc92b1eefc54963703b43be140f4c8c8ad348f7";
- sha256 = "186m03fhbv8v8kz5nmhrsakhl2mh0hn365yrx36i28i8mbnwzah7";
+ rev = "0e819e519ae17a2686e0881c4ca51fa873fa9b83";
+ sha256 = "0m4i6b5qmakdc0h8npsyajdp06jq03cb1c5rkj6x0khnjw9fv2fl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/03d0ff6c8d724cf39446fa27f52aa5cc1a3cefb6/recipes/json-mode";
@@ -53181,12 +56188,12 @@
melpaBuild {
pname = "json-navigator";
ename = "json-navigator";
- version = "20171220.19";
+ version = "20190131.231";
src = fetchFromGitHub {
owner = "DamienCassou";
repo = "json-navigator";
- rev = "7a1fec93500c46ccba4086d10115d8188607d0d0";
- sha256 = "03gjvzlyf90sh2q735qfbbjyqx4z9c3yc8jjp2sjpmp5fjvdm9yf";
+ rev = "f4cde60c4203fc70cc7ff22ed1d6579159ce2598";
+ sha256 = "0xrjbx6rkm8a6pmzhdph0r6l468hj827dvvq2hxhcm8v5gk6m690";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/62d4d68bd473652b80988a68250e9190b886ad6e/recipes/json-navigator";
@@ -53285,12 +56292,12 @@
melpaBuild {
pname = "jsonnet-mode";
ename = "jsonnet-mode";
- version = "20180310.2256";
+ version = "20181211.1053";
src = fetchFromGitHub {
owner = "mgyucht";
repo = "jsonnet-mode";
- rev = "4eb52cff8ce6020f5a6309a1c0465b5cdd6c698e";
- sha256 = "0l9q6g00yxz5j1hchd2vim33n39zshv7qmmga1zf8qcn20yxz7mm";
+ rev = "2b90b4e12a11c42df0f1e5db327a50555b6ff023";
+ sha256 = "0j1dggxq1rm47cbi7khask40sj1wrcd0jki4m7j15qaxw7ryihhm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ba17372732723f73e8eeb6e7c47abc0edeb20da4/recipes/jsonnet-mode";
@@ -53345,14 +56352,14 @@
ename = "jst";
version = "20150604.438";
src = fetchFromGitHub {
- owner = "cheunghy";
+ owner = "zhangkaiyulw";
repo = "jst-mode";
rev = "865ff97449a4cbbcb40d38b4908cf4d7b22a5108";
sha256 = "066ql5czrzikznlx7vww6m8h0pfkixfm8qnydfwpfndcqq6ypd90";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/85d7aec81b7b8ff3721fd577cbdc10ed2288f76d/recipes/jst";
- sha256 = "0hp1f7p6m1gfv1a3plavzkzn87dllb5g2xrgg3mch4qsgdbqx65i";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/jst";
+ sha256 = "1kxf8ckhsh0sgc4xqkkyh7ghk17farqqz35ibvmyrkl9s19ydj1q";
name = "recipe";
};
packageRequires = [ dash emacs f pcache s ];
@@ -53417,16 +56424,16 @@
melpaBuild {
pname = "julia-mode";
ename = "julia-mode";
- version = "20171116.642";
+ version = "20190407.1419";
src = fetchFromGitHub {
- owner = "JuliaLang";
+ owner = "JuliaEditorSupport";
repo = "julia-emacs";
- rev = "2ef6992125a85674532a1e37dacd5c60bee4feeb";
- sha256 = "0vjsaws0rqrkv1mqxwf9lp8qmaq92piippybsf4ncizxwbnh8x6d";
+ rev = "8449c95a05ab5d75a48192c2da7f0e7f4d16714c";
+ sha256 = "02v1hw7h460ypwn45n3jv6d06jcsg2hm5l764ay22116znvaz9n7";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/8522d197cb1b2c139959e7189765001c5ee7e61a/recipes/julia-mode";
- sha256 = "0m49v67fs5yq0q3lwkcfmrzsjdzi1qrkfjyvjcdwnfmp29w14kq6";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/julia-mode";
+ sha256 = "1f26j3nxspwrvnsk3kmam8rw4jwikwmi9a5zwsx9aa1rrasg58w3";
name = "recipe";
};
packageRequires = [];
@@ -53443,12 +56450,12 @@
melpaBuild {
pname = "julia-repl";
ename = "julia-repl";
- version = "20171116.46";
+ version = "20190124.259";
src = fetchFromGitHub {
owner = "tpapp";
repo = "julia-repl";
- rev = "f808a12e7ebe403f82036899c2dace640be73154";
- sha256 = "1lh4pbxrnld205ga58036jwnxkmgabdd8hyr6g7fahw94llq2cpa";
+ rev = "54b4aa31d96e6945d07304dcb189289e2f8be1b4";
+ sha256 = "1jjygzz3v9iw7ixvfqvy0faa4nkg2dl5qp8jd3yxbawyx6g304n9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9a2a494969a9caf2f4513b12504379c9685047dc/recipes/julia-repl";
@@ -53643,6 +56650,36 @@
license = lib.licenses.free;
};
}) {};
+ jupyter = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , simple-httpd
+ , websocket
+ , zmq }:
+ melpaBuild {
+ pname = "jupyter";
+ ename = "jupyter";
+ version = "20190406.1040";
+ src = fetchFromGitHub {
+ owner = "dzop";
+ repo = "emacs-jupyter";
+ rev = "53c2ffdd513206cbe45f44b848dc053de2c17db1";
+ sha256 = "1fwq8zvsjc8y4jvqnq5aa03an2pffayaiq92h39bbmf8hv59b6xd";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a63a933e193a52e60950331ec982c5f5cdfaa5d9/recipes/jupyter";
+ sha256 = "0p83mkvip1gn5ag2j6s68wzfgg2sf15iyxh7ylads3yw44h26wvi";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs simple-httpd websocket zmq ];
+ meta = {
+ homepage = "https://melpa.org/#/jupyter";
+ license = lib.licenses.free;
+ };
+ }) {};
jvm-mode = callPackage ({ dash
, emacs
, fetchFromGitHub
@@ -53670,6 +56707,33 @@
license = lib.licenses.free;
};
}) {};
+ k8s-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , yaml-mode }:
+ melpaBuild {
+ pname = "k8s-mode";
+ ename = "k8s-mode";
+ version = "20181230.2341";
+ src = fetchFromGitHub {
+ owner = "TxGVNN";
+ repo = "emacs-k8s-mode";
+ rev = "bd435186d807dc20e40cb72abf57542a3ddcc9c9";
+ sha256 = "06hxs2syashv0r4d6w8v8p7pzab3cxwf3ymx5lrpicq5zjc3x3h5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/44085c3f730315a5fc2a9a003ffa16d5df9f9a52/recipes/k8s-mode";
+ sha256 = "14m4s0l61a2h38pdq6iczva24cl3mqdkw99k1q0drisdrvy57f33";
+ name = "recipe";
+ };
+ packageRequires = [ emacs yaml-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/k8s-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
kaesar = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -53888,12 +56952,12 @@
melpaBuild {
pname = "kaolin-themes";
ename = "kaolin-themes";
- version = "20180722.1037";
+ version = "20190405.39";
src = fetchFromGitHub {
owner = "ogdenwebb";
repo = "emacs-kaolin-themes";
- rev = "8d0d8513541c293646aaff886d1fb81621d3cf45";
- sha256 = "00bn5wr4wvdn4nn1minlqnbj57rdb8biv4w9bmkgipsmkr27zaxz";
+ rev = "dcaf5b5d7f2bbfe0ac8d224b4dbb24a68775314b";
+ sha256 = "06qnpnm67d89jkl504kyqd724pab6jlha9zkd1b95rj17b54ng8l";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/043a4e3bd5301ef8f4df2cbda0b3f4111eb399e4/recipes/kaolin-themes";
@@ -53933,6 +56997,34 @@
license = lib.licenses.free;
};
}) {};
+ kapacitor = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , magit
+ , magit-popup
+ , melpaBuild }:
+ melpaBuild {
+ pname = "kapacitor";
+ ename = "kapacitor";
+ version = "20180909.2142";
+ src = fetchFromGitHub {
+ owner = "Manoj321";
+ repo = "kapacitor-el";
+ rev = "b0e95f98b965f215be6ead14779949d5cf358ea5";
+ sha256 = "0ahi9ar32kwf7cinxp29c3yhjfibg509pvxv5s0gn31szdqq216p";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/db1f8cfcda2fa2b9be74a6cd9f95608e8b3f50bb/recipes/kapacitor";
+ sha256 = "108b3y71p7s3lcwbqxp7hy2l304yj4hxm2nq8iv7ljr8av1q7kn6";
+ name = "recipe";
+ };
+ packageRequires = [ emacs magit magit-popup ];
+ meta = {
+ homepage = "https://melpa.org/#/kapacitor";
+ license = lib.licenses.free;
+ };
+ }) {};
karma = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -54145,12 +57237,12 @@
melpaBuild {
pname = "keycast";
ename = "keycast";
- version = "20180318.1321";
+ version = "20190316.1835";
src = fetchFromGitHub {
owner = "tarsius";
repo = "keycast";
- rev = "0d28c26b07a062ab58c01c6cbedc3e68bd4ec8a1";
- sha256 = "0wfy5wbr150y57mlzsxhb6bq9ycqj2jk5i6nhwl4q8b6xd3mh6p6";
+ rev = "fe416461b15543138ad4fef8ef5e2c364a6b5b2c";
+ sha256 = "15q2kc7mlmr856ldh6bkba26zq8fwia26cv1gsqwj3jmhml6mlq1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/aaaf62c586818f2493667ad6ec8877234a58da53/recipes/keycast";
@@ -54265,6 +57357,32 @@
license = lib.licenses.free;
};
}) {};
+ keypress-multi-event = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "keypress-multi-event";
+ ename = "keypress-multi-event";
+ version = "20190108.2130";
+ src = fetchFromGitHub {
+ owner = "Boruch-Baum";
+ repo = "emacs-keypress-multi-event";
+ rev = "9de65a27e10d8ae47aa6d28c02c3eb82ee8c0b2e";
+ sha256 = "1ybbayxfix63rwc8p5kl4wxxlk6vg53abw40fqrlkbc6qrr7nm5c";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fd02baaf1d49d55b066695d8fa9887c454bb1750/recipes/keypress-multi-event";
+ sha256 = "07va7w6vgjf6jqrfzpsq8732b8aka07g29h661yh1xn4x6464hyp";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/keypress-multi-event";
+ license = lib.licenses.free;
+ };
+ }) {};
keyset = callPackage ({ cl-lib ? null
, dash
, fetchFromGitHub
@@ -54292,6 +57410,35 @@
license = lib.licenses.free;
};
}) {};
+ keystore-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , origami
+ , s
+ , seq }:
+ melpaBuild {
+ pname = "keystore-mode";
+ ename = "keystore-mode";
+ version = "20190316.700";
+ src = fetchFromGitHub {
+ owner = "peterpaul";
+ repo = "keystore-mode";
+ rev = "65ffee8834cb171c53e917ae8c183db6f646f471";
+ sha256 = "1lzjqzbaq0wd9gims4mj8rga8wmj4kvig63cvnygd93f0sbbirkk";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/7870d808fc19096ed6ecde5e9297b28254466210/recipes/keystore-mode";
+ sha256 = "1r1my7jgjv2zvkhdwd8ml6489x48gzanz4lvdiw5m2hymb53fdg6";
+ name = "recipe";
+ };
+ packageRequires = [ emacs origami s seq ];
+ meta = {
+ homepage = "https://melpa.org/#/keystore-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
keyswap = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -54350,17 +57497,18 @@
, melpaBuild }:
melpaBuild {
pname = "kfg";
+ ename = "kfg";
version = "20140908.2238";
src = fetchFromGitHub {
- owner = "abingham";
+ owner = "czipperz";
repo = "kfg";
- rev = "d2c9dd26618fb2f7bf1e7b6eae193b1cceba3c97";
- sha256 = "0xq835xzywks4b4kaz5i0pp759i23kibs5gkvvxasw0dncqh7j5c";
+ rev = "ffc35b77f227d4c64a1271ec30d31333ffeb0013";
+ sha256 = "0y8s2zfz1r1nfwkkfyxc3vfmlagp9wg8i3zpyj3jcifilxq6i63v";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/9b212de583b43dd05d2acd15bb2245e735d0b14c/recipes/kfg";
- sha256 = "0vvvxl6a4ac27igwmsgzpf0whf9h2pjl9d89fd9fizad6gi8x1fs";
- name = "kfg";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/2990f45632697ce23e7cd9db807d8ae2d3bf61d2/recipes/kfg";
+ sha256 = "0kj79wwj2ih2ba57y3hl2l9pwjpsqns5waa8vi5g7agmqva0mh5b";
+ name = "recipe";
};
packageRequires = [ f ];
meta = {
@@ -54404,12 +57552,12 @@
melpaBuild {
pname = "kill-or-bury-alive";
ename = "kill-or-bury-alive";
- version = "20171231.2218";
+ version = "20181231.2304";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "kill-or-bury-alive";
- rev = "d21aa7a12f1a76d47249db36eb9825242df9d512";
- sha256 = "1m790afdrns8afh7f690slq2gcya5bp7630fxwi8fqp5vil7lswg";
+ rev = "e4a3c0f75c966826092b83e1fff5a3bc8ba55572";
+ sha256 = "1zi471b2clkaz19qkn9p0qgrjvaxxxzdm7hqqicjfv5fmgpydk9v";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/25016ed09b6333bd79b989a8f6b7b03cd92e08b3/recipes/kill-or-bury-alive";
@@ -54454,12 +57602,12 @@
melpaBuild {
pname = "killer";
ename = "killer";
- version = "20120808.422";
+ version = "20190127.1610";
src = fetchFromGitHub {
owner = "tarsius";
repo = "killer";
- rev = "7bbb223f875402a7b2abee4baa5a54f10bd97212";
- sha256 = "05rbh5hkj3jsn9pw0qa4d5a5pi6367vdqkijcn9k14fdfbmyd30x";
+ rev = "ace0547944933440384ceeb5876b1f68c082d540";
+ sha256 = "06nzxd9nc1d569354xj7w88i0y5l99pyag691aribsh771rxbfz4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bd8c3ec8fa272273128134dea96c0c999a524549/recipes/killer";
@@ -54560,12 +57708,12 @@
melpaBuild {
pname = "kiwix";
ename = "kiwix";
- version = "20170927.120";
+ version = "20190324.2052";
src = fetchFromGitHub {
owner = "stardiviner";
repo = "kiwix.el";
- rev = "86dbead6c0017beefd92a0b64a0bb5f5d12c5b16";
- sha256 = "142mm1wy8zvlkzairnc1rjdi1lsq1asfk4zdbs1aria1nxz1sx6x";
+ rev = "c662f3dc5d924a4b64b7af4af28f15f27b7cea1e";
+ sha256 = "0i11sfnqvjqqb625cgfzibs6yszx891y4dy7fd6wzmdpclcyzr8z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/kiwix";
@@ -54655,7 +57803,7 @@
license = lib.licenses.free;
};
}) {};
- kodi-remote = callPackage ({ elnode
+ kodi-remote = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
, json ? null
@@ -54666,19 +57814,19 @@
melpaBuild {
pname = "kodi-remote";
ename = "kodi-remote";
- version = "20180609.1654";
+ version = "20190322.1303";
src = fetchFromGitHub {
owner = "spiderbit";
repo = "kodi-remote.el";
- rev = "bca7250bb69e09c1a9829e15ef4aed1f486777eb";
- sha256 = "1d67gvhkvcdii2nj0ngh5lnvv1y3iw1ccl70lmi39srz5p2hjw59";
+ rev = "861d81af05b061e1343124753d8493e5a21baf7b";
+ sha256 = "1cb1s3ksscva8fw1ss8z6nc530g00njrs2kk3flqisnc41l6njsq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/08f06dd824e67250afafdecc25128ba794ca971f/recipes/kodi-remote";
sha256 = "0f3n7b3plsw28xpz07lf5pv71b6s2xjhq2h23gpyg0r69v99chh5";
name = "recipe";
};
- packageRequires = [ elnode json let-alist request ];
+ packageRequires = [ cl-lib json let-alist request ];
meta = {
homepage = "https://melpa.org/#/kodi-remote";
license = lib.licenses.free;
@@ -54742,12 +57890,12 @@
melpaBuild {
pname = "korean-holidays";
ename = "korean-holidays";
- version = "20170228.2045";
+ version = "20190102.758";
src = fetchFromGitHub {
owner = "tttuuu888";
repo = "korean-holidays";
- rev = "aed79c24e3f91d8f9508367758b18e5fa3a9eaf4";
- sha256 = "1kqbxnjmp7hxjcv8zhy9v8v6220l9vd7rgqicjln4yrjz82z4579";
+ rev = "3f90ed86f46f8e5533f23baa40e2513ac497ca2b";
+ sha256 = "0y88b4mr73qcshr87750jkjzz1mc2wwra6ca3y8spv4qc6cadwls";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/korean-holidays";
@@ -54794,12 +57942,12 @@
melpaBuild {
pname = "kotlin-mode";
ename = "kotlin-mode";
- version = "20180219.853";
+ version = "20190116.1255";
src = fetchFromGitHub {
owner = "Emacs-Kotlin-Mode-Maintainers";
repo = "kotlin-mode";
- rev = "a2c2628d55c4e8b018ffe9f55ca38d89302a1bbc";
- sha256 = "12zng3rq134f0d49fr2rsf0jgmxl3qc7kkhziy7r27hx6ny9h8z2";
+ rev = "0e542ae2f78420618df8b0123dfe168a37dce333";
+ sha256 = "1rv3vxw3dx477sapfd0hj3pkl3x0sihdsyl671azbcr02z67xl6p";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9f2560e913b215821221c96069a1385fe4e19c3e/recipes/kotlin-mode";
@@ -54846,14 +57994,14 @@
ename = "kroman";
version = "20150827.1640";
src = fetchFromGitHub {
- owner = "cheunghy";
+ owner = "zhangkaiyulw";
repo = "kroman-el";
rev = "431144a3cd629a2812a668a29ad85182368dc9b0";
sha256 = "0miywc3vfqi3hjb7lk8baz1y2nbp9phjjxclqriyqra4gw4n0vhc";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/07ff16db526dce9d720a858aa14010f297bf31a6/recipes/kroman";
- sha256 = "0y9ji3c8kndrz605n7b4w5xq0qp093d61hxwhblm3qrh3370mws7";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/kroman";
+ sha256 = "0rcy3343pmlqzqzhmz2c3r0b44pn8fsyp39mvn9nmdnaxsn6q3k8";
name = "recipe";
};
packageRequires = [];
@@ -54888,29 +58036,57 @@
license = lib.licenses.free;
};
}) {};
+ kubel = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , magit-popup
+ , melpaBuild }:
+ melpaBuild {
+ pname = "kubel";
+ ename = "kubel";
+ version = "20190314.1007";
+ src = fetchFromGitHub {
+ owner = "abrochard";
+ repo = "kubel";
+ rev = "b8e1c67635dadaec3a289fa28111f6fcb817ef10";
+ sha256 = "1dk44xq1bwlji48bbw1l4i4mqszsp1shfmmfs4q6gxyjs0hzbwpg";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f1c7ff1c44946f232730066d6c8c25d5b41ffda7/recipes/kubel";
+ sha256 = "1rm85bwpsqj600jvri508nn5i17ynyd84aanf8cqqxk5d2wf9x1n";
+ name = "recipe";
+ };
+ packageRequires = [ emacs magit-popup ];
+ meta = {
+ homepage = "https://melpa.org/#/kubel";
+ license = lib.licenses.free;
+ };
+ }) {};
kubernetes = callPackage ({ dash
, emacs
, fetchFromGitHub
, fetchurl
, lib
, magit
+ , magit-popup
, melpaBuild }:
melpaBuild {
pname = "kubernetes";
ename = "kubernetes";
- version = "20180706.520";
+ version = "20190327.1744";
src = fetchFromGitHub {
owner = "chrisbarrett";
repo = "kubernetes-el";
- rev = "2b5ce22b12bd8a569cb0a8019a395173e3a13523";
- sha256 = "19abr8q9mz3g5i0jb5j6p3jll93jrpvzgj14q2l81c4dng0yamdc";
+ rev = "5839c89b7187573346813bc3dd6b43b5acdda7cb";
+ sha256 = "0wmadjlrcnjv10cmxkmb02n3fvns7hghlk0zcpxjis2gfmng9px7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/16850227ea48f6f38102b9cdf80e0758766a24d2/recipes/kubernetes";
sha256 = "06357a8y3rpvid03r9vhmjgq97hmiah5g8gff32dij9424vidil9";
name = "recipe";
};
- packageRequires = [ dash emacs magit ];
+ packageRequires = [ dash emacs magit magit-popup ];
meta = {
homepage = "https://melpa.org/#/kubernetes";
license = lib.licenses.free;
@@ -54943,6 +58119,33 @@
license = lib.licenses.free;
};
}) {};
+ kubernetes-helm = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , yaml-mode }:
+ melpaBuild {
+ pname = "kubernetes-helm";
+ ename = "kubernetes-helm";
+ version = "20190131.1920";
+ src = fetchFromGitHub {
+ owner = "abrochard";
+ repo = "kubernetes-helm";
+ rev = "1d50cb87600630e02bd52894a480627630084636";
+ sha256 = "03z0mqg4lyvcnb33c1s3z9l0m47c1ahf45vaz80nh5sz3b4maii3";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/269c73e26b3d0cc51bbac8b63bb3782f7428ab40/recipes/kubernetes-helm";
+ sha256 = "0rik7qz5m2hxylmdsjdnrlj52sm7c669milxxp5i1a1c44621xa6";
+ name = "recipe";
+ };
+ packageRequires = [ emacs yaml-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/kubernetes-helm";
+ license = lib.licenses.free;
+ };
+ }) {};
kubernetes-tramp = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -54952,12 +58155,12 @@
melpaBuild {
pname = "kubernetes-tramp";
ename = "kubernetes-tramp";
- version = "20171026.922";
+ version = "20181228.122";
src = fetchFromGitHub {
owner = "gruggiero";
repo = "kubernetes-tramp";
- rev = "9fa84df71f6e88bc23a756cdf2df393a35aec945";
- sha256 = "1l1ibc97ahp3zwwypqfg3201qdxad4sdpdaq7nsfb87gh46vsbz8";
+ rev = "8713571b66940f8f3f496b55baa23cdf1df7a869";
+ sha256 = "05xbpdgxglqw7s2chay32s5kmglpd446dg3vh02d1462lh474snf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8ea4b15e64a9dc33b9977650488693cacadd1ab1/recipes/kubernetes-tramp";
@@ -55047,6 +58250,32 @@
license = lib.licenses.free;
};
}) {};
+ lab-themes = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "lab-themes";
+ ename = "lab-themes";
+ version = "20190320.1127";
+ src = fetchFromGitHub {
+ owner = "MetroWind";
+ repo = "lab-theme";
+ rev = "06b55ef3d82a8ad23189caf8de76ef81fc0aba31";
+ sha256 = "0dgs2gp5q3hfp8j1gbdkf26jwjjw04ggx34zrv35wg8yr26ah440";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c5817cb4cb3a573f93bacfb8ef340bef0e1c5df4/recipes/lab-themes";
+ sha256 = "10gvrrbqp6rxc9kwk8315pa1ldmja42vwr31xskjaq0l4fd28kx0";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/lab-themes";
+ license = lib.licenses.free;
+ };
+ }) {};
labburn-theme = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -55072,6 +58301,32 @@
license = lib.licenses.free;
};
}) {};
+ lammps-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "lammps-mode";
+ ename = "lammps-mode";
+ version = "20180801.619";
+ src = fetchFromGitHub {
+ owner = "HaoZeke";
+ repo = "lammps-mode";
+ rev = "a5b68d7a59975770b56ee8f6e66fa4f703a72ffe";
+ sha256 = "1ma33bszv7d6am47n5r74ja4ks7n46m8xfkkr3vcqymlfhbdpq73";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/8f5471a8e17977c17ad84b12a77fe80f37eda25e/recipes/lammps-mode";
+ sha256 = "06i48pxp9vq4z7hffna0cndr6iblapim169659pmhidbc4pp7bm4";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/lammps-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
lang-refactor-perl = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -55131,12 +58386,12 @@
melpaBuild {
pname = "langtool";
ename = "langtool";
- version = "20180409.316";
+ version = "20190303.1427";
src = fetchFromGitHub {
owner = "mhayashi1120";
repo = "Emacs-langtool";
- rev = "d93286722cff3fecf8641a4a6c3b0691f30362fe";
- sha256 = "17xa055705n4jb7nafqvqgl0a6fdaxp3b3q8q0gsv5vzycsc74ga";
+ rev = "81f2b8a07b29bbdd558db4b68dd904f4c0eb10a4";
+ sha256 = "01w765n5bib060f0hci34f0vchf90b4r8gr1ng2c4yx20dvdjnqh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/503845e79e67c921f1fde31447f3dd4da2b6f993/recipes/langtool";
@@ -55176,6 +58431,33 @@
license = lib.licenses.free;
};
}) {};
+ language-id = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "language-id";
+ ename = "language-id";
+ version = "20190207.257";
+ src = fetchFromGitHub {
+ owner = "lassik";
+ repo = "emacs-language-id";
+ rev = "9145c75eaa41a7a9deda928f704b99db056d3e9d";
+ sha256 = "10dwrb610jdal6ifpj34mmy8qqbca2sgfmvn4p4qpcc967sv4f1r";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d03af6375bc7ba4612c43dea805d7f392f046f87/recipes/language-id";
+ sha256 = "0p7hg005bmzy38sv2881fq1x2i7yjdhfjbki4y2av485c418rqz8";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/language-id";
+ license = lib.licenses.free;
+ };
+ }) {};
lastpass = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -55238,12 +58520,12 @@
melpaBuild {
pname = "latex-math-preview";
ename = "latex-math-preview";
- version = "20170522.1455";
+ version = "20190123.2";
src = fetchFromGitLab {
owner = "latex-math-preview";
repo = "latex-math-preview";
- rev = "775887a89447dd19541b121161cc02e9799d0d3a";
- sha256 = "1mp6bpl8992pi40vs6b86q922h4z8879mrjalldv5dyz57ym5fsq";
+ rev = "90fd86da2d9514882146a5db40cb916fc533cf55";
+ sha256 = "063vnjhnxm2z9shkdv1j8kwyf37syczfkzxzh5z7w7aidvx55jzj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9e413b7684e9199510b00035825aa861d670e072/recipes/latex-math-preview";
@@ -55287,12 +58569,12 @@
melpaBuild {
pname = "latex-preview-pane";
ename = "latex-preview-pane";
- version = "20180222.951";
+ version = "20181008.1122";
src = fetchFromGitHub {
owner = "jsinglet";
repo = "latex-preview-pane";
- rev = "e7dbe0df3ca938128ab394cdf04f3e40eb5b139e";
- sha256 = "1i8mc2qdyyg04rm946vqmmw021c4v8aq7yvxsgl53mfbx9snm3dv";
+ rev = "5297668a89996b50b2b62f99cba01cc544dbed2e";
+ sha256 = "1m4f5p53275k8i9p0y105kkrp9nx1bwn6726my9s5dwnjhr5dnp2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bb3227f2e35d701915a8d3479d20581dcbe3a778/recipes/latex-preview-pane";
@@ -55494,12 +58776,12 @@
melpaBuild {
pname = "lcr";
ename = "lcr";
- version = "20180414.1256";
+ version = "20180902.1219";
src = fetchFromGitHub {
owner = "jyp";
repo = "lcr";
- rev = "49a59d80a4b55cc421cb55430ff8258887382c3d";
- sha256 = "1fds0s0if9m155v5hk5l0ihc6wr331qif5bc013w04hrlkn4v5jh";
+ rev = "c14f40692292d59156c7632dbdd2867c086aa75f";
+ sha256 = "0mc55icihxqpf8b05990q1lc2nj2792wcgyr73xsiqx0963sjaj8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/29374d3da932675b7b3e28ab8906690dad9c9cbe/recipes/lcr";
@@ -55525,12 +58807,12 @@
melpaBuild {
pname = "lean-mode";
ename = "lean-mode";
- version = "20180712.57";
+ version = "20180906.945";
src = fetchFromGitHub {
owner = "leanprover";
repo = "lean-mode";
- rev = "529b8fa535cfa090a6b62566794161556ffade80";
- sha256 = "0gqwc65m42kkal390a7qx1r5b9ixsbg6avn8s35n5r1qf2w0qx5p";
+ rev = "a9912c73387aa69183e12e4a5335128a7965c420";
+ sha256 = "1w0cmircqnbi0qyi6sl3nnshjy2fdgaav88lj30g3qmnyiac1dnz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/42f4d6438c8aeb94ebc1782f2f5e2abd17f0ffde/recipes/lean-mode";
@@ -55575,6 +58857,33 @@
license = lib.licenses.free;
};
}) {};
+ ledger-import = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , ledger-mode
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ledger-import";
+ ename = "ledger-import";
+ version = "20190131.1205";
+ src = fetchFromGitHub {
+ owner = "DamienCassou";
+ repo = "ledger-import";
+ rev = "2c199fcc8671c2ec82e62cea7716289426b7407c";
+ sha256 = "0szi5k05qja28nx0rnl3amh3qf2f470sycdjgmpazgqh4zpkngsp";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4a1e2a9546b8b40f5f880197cb8166a6a715451f/recipes/ledger-import";
+ sha256 = "1lcibmjk2d49vsa89wri7bbf695mjq2ikddz3nlzb6ljywsnqzm4";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ledger-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/ledger-import";
+ license = lib.licenses.free;
+ };
+ }) {};
ledger-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -55583,12 +58892,12 @@
melpaBuild {
pname = "ledger-mode";
ename = "ledger-mode";
- version = "20180705.138";
+ version = "20190317.912";
src = fetchFromGitHub {
owner = "ledger";
repo = "ledger-mode";
- rev = "ac93ac5c36dd66fc97417697d92688c5e2570024";
- sha256 = "0yhr1d40wk2h514p6rjpnhvdxwjdbmr3bkh1wnc6pafpcryhydi1";
+ rev = "c59bbfcc3274d113dec68121786546979f33dad0";
+ sha256 = "0p7dp31jlia1qdz15lqqzaf8laa847qcsgn5p79nl82kbzkxvq13";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1549048b6f57fbe9d1f7fcda74b78a7294327b7b/recipes/ledger-mode";
@@ -55714,12 +59023,12 @@
melpaBuild {
pname = "lentic";
ename = "lentic";
- version = "20161202.1352";
+ version = "20190102.1324";
src = fetchFromGitHub {
owner = "phillord";
repo = "lentic";
- rev = "c744f3d3be20ce2a9f25890db2b4500438dfa547";
- sha256 = "1rvjmn70ncrsv6rzxhjiplibf0ypkg0qlg21ra53bhvy6vlizdsi";
+ rev = "90fb12acdfe9d6ace2c52c7557c91a66ce1448b5";
+ sha256 = "09llb5cwmj5a934z2fn39yh7h5p26hcjpyjbxjn00x0hhqnw31v2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cbb6f9cc3c1040b80fbf3f2df2ac2c3c8d18b6b1/recipes/lentic";
@@ -55842,12 +59151,12 @@
melpaBuild {
pname = "leuven-theme";
ename = "leuven-theme";
- version = "20170919.252";
+ version = "20190308.734";
src = fetchFromGitHub {
owner = "fniessen";
repo = "emacs-leuven-theme";
- rev = "9d31a9d4ed763d6309e9d44985cd8b4a5a2fb500";
- sha256 = "0vr535a32cgkna0h1z8ac9cb4al3jb01bybn956rz51qdbzm2d1h";
+ rev = "916c0f3b562b5b0e4f4294b83decda941fb183b1";
+ sha256 = "1garn9rkn1jmv1w329qdw0mbn11j467kfp64902ncajl3590x2ly";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b09451f4eb2be820e94d3fecbf4ec7cecd2cabdc/recipes/leuven-theme";
@@ -55970,12 +59279,12 @@
melpaBuild {
pname = "libgit";
ename = "libgit";
- version = "20180624.2359";
+ version = "20190323.1055";
src = fetchFromGitHub {
owner = "magit";
repo = "libegit2";
- rev = "5e8dedb8275d394ce423a73ce39934302fa84f50";
- sha256 = "1nr9h8qkkjv1r5jzyydxqmq02kxays1yqxlqd7s9968gqacyqkyv";
+ rev = "f80d380156a1ba2a9caf7e964cb96acccde8b514";
+ sha256 = "0azq7ni5z2fpl43s63zalnf2n3y55dsq4dp1v2yhq9j6sm5ds1di";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/993a5abe3a9e8b160f0d68283eeca6af033abc79/recipes/libgit";
@@ -56021,12 +59330,12 @@
melpaBuild {
pname = "libmpdel";
ename = "libmpdel";
- version = "20180606.453";
+ version = "20190124.614";
src = fetchFromGitHub {
owner = "mpdel";
repo = "libmpdel";
- rev = "fcc719c2f23df4b5838eab76a40fef11055203de";
- sha256 = "0qw6rrb16bbhwg1gci4ymn2nshzf21lcf2nyphxbn4vcv400cw4k";
+ rev = "a0100e020347ccc319ec18c687353dc521c64328";
+ sha256 = "0vm4j5n2h74c0kyn61lx9fbxj39gvd22yh7a3grbcp1i94wkjm8x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bb25443752e18e47afc63d5497cc5052c388a607/recipes/libmpdel";
@@ -56099,12 +59408,12 @@
melpaBuild {
pname = "line-reminder";
ename = "line-reminder";
- version = "20180602.2252";
+ version = "20190407.809";
src = fetchFromGitHub {
owner = "jcs090218";
repo = "line-reminder";
- rev = "0db41599b7663c4c8257aaf733323e84e95ef042";
- sha256 = "09pzynms4m4m54fk2ci1wizkgrqkgh4mqyrj9wzpwpkdik7zvr7b";
+ rev = "9de2c301f433453dc0ff06e7c78f580dd6f5314f";
+ sha256 = "1cza4bi1plw3r4j2bxkm4w57db9nxvcf3p8xfvicipsv556k934r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/456f760f7f7d4151e18f08b2f1154c5880423b21/recipes/line-reminder";
@@ -56193,6 +59502,31 @@
license = lib.licenses.free;
};
}) {};
+ linguistic = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "linguistic";
+ ename = "linguistic";
+ version = "20181129.1316";
+ src = fetchFromGitHub {
+ owner = "andcarnivorous";
+ repo = "linguistic";
+ rev = "23e47e98cdb09ee61883669b6d8a11bf6449862c";
+ sha256 = "1bz2w43v1w5xlkbmhmb423nisyhja6qkgwhl68r5vjxqj1gxn2xj";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aedc03a846b873edf2426c422abb8c75732158f8/recipes/linguistic";
+ sha256 = "0yhyrr7yknvky6fb6js0lfxbl13i6a218kya7cpj2dpzdckcbhca";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/linguistic";
+ license = lib.licenses.free;
+ };
+ }) {};
link = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -56228,12 +59562,12 @@
melpaBuild {
pname = "link-hint";
ename = "link-hint";
- version = "20180519.1430";
+ version = "20190312.1604";
src = fetchFromGitHub {
owner = "noctuid";
repo = "link-hint.el";
- rev = "23df5fa36ab182452be6b772475eab67b846dd92";
- sha256 = "0b7i2jasc5bsphix9fhvmi3ddj42f5n5liczrrfv4p9k14px3b10";
+ rev = "d74a483652486260c052941fedeadddb1ea71f88";
+ sha256 = "0dghxd165fbds6czy9bfwpid3i4irgp3q08n9mg57sfifi0cmij0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d24b48fe0bc127ae6ac4084be8059aacb8445afd/recipes/link-hint";
@@ -56393,12 +59727,12 @@
melpaBuild {
pname = "lisp-extra-font-lock";
ename = "lisp-extra-font-lock";
- version = "20160930.1227";
+ version = "20181008.1221";
src = fetchFromGitHub {
owner = "Lindydancer";
repo = "lisp-extra-font-lock";
- rev = "092f5a6e75ddfc8051b252f10e182723a17980e4";
- sha256 = "0cdjgnh2hzwpim4vl2siykfsfni1z5h45vn5dcm52yx8p10s7mzd";
+ rev = "4605eccbe1a7fcbd3cacf5b71249435413b4db4f";
+ sha256 = "152vcp3mdlv33jf5va4rinl1d0k960gnfhbrqqrafazgx9j3ya8w";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/13e01d4faf9ecb4dde8b6eb4acdb0e48e3e5b6ea/recipes/lisp-extra-font-lock";
@@ -56449,12 +59783,12 @@
melpaBuild {
pname = "lispy";
ename = "lispy";
- version = "20180716.839";
+ version = "20190404.822";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "lispy";
- rev = "a8b0e0afb73b7687cae370fc84384db65bd73fca";
- sha256 = "0y9k91gabgab7fwml4grhna2vzfwbxl9l1n58f5nl9xhia6zfqzi";
+ rev = "18557185e2ed71502fd96ee7a176ddec7df2e626";
+ sha256 = "13vnaqv4r50bjlyppxapg8pp6mc4ql0c5g2xkmmfklqagy2lja65";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e23c062ff32d7aeae486c01e29c56a74727dcf1d/recipes/lispy";
@@ -56503,12 +59837,12 @@
melpaBuild {
pname = "lispyville";
ename = "lispyville";
- version = "20180704.458";
+ version = "20181217.647";
src = fetchFromGitHub {
owner = "noctuid";
repo = "lispyville";
- rev = "aea9df65cc0916789e20c0eb7575624a19388bee";
- sha256 = "05maf5aacjfiap7fyl7mnx1chbs6k30cl1k5af6ar45lhvg7srva";
+ rev = "d28b937f0cabd8ce61e2020fe9a733ca80d82c74";
+ sha256 = "0f6srwj1qqkfkbmp5n5pjvi6gm7b7xav05p5hrs2i83rjrakzzqx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b5d96d3603dc328467fcce29d3ac1b0a02833d51/recipes/lispyville";
@@ -56574,7 +59908,7 @@
license = lib.licenses.free;
};
}) {};
- list-unicode-display = callPackage ({ cl-lib ? null
+ list-unicode-display = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -56582,19 +59916,19 @@
melpaBuild {
pname = "list-unicode-display";
ename = "list-unicode-display";
- version = "20150219.101";
+ version = "20181121.1516";
src = fetchFromGitHub {
owner = "purcell";
repo = "list-unicode-display";
- rev = "59770cf3572bd36c3e9ba044846dc420c0dca09b";
- sha256 = "05nn4db8s8h4mn3fxhwsa111ayvlq1raf6bifh7jciyw7a2c3aww";
+ rev = "62fbf84dbf0b9a4cbbbeede69d5392fe2774391b";
+ sha256 = "0397inzyqssy8j1yz1j5mgjnwyx559f82hy4w8kz1hv3mhih8lp0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0c8e2a974a56665b97d7622b0428994edadc88a0/recipes/list-unicode-display";
sha256 = "01x9i5k5vhjscmkx0l6r27w1cdp9n6xk1pdjf98z3y88dnsmyfha";
name = "recipe";
};
- packageRequires = [ cl-lib ];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/list-unicode-display";
license = lib.licenses.free;
@@ -56755,6 +60089,33 @@
license = lib.licenses.free;
};
}) {};
+ literate-elisp = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "literate-elisp";
+ ename = "literate-elisp";
+ version = "20190109.521";
+ src = fetchFromGitHub {
+ owner = "jingtaozf";
+ repo = "literate-elisp";
+ rev = "0724b62d98cb9d9c7f3d171c322a1059648746f5";
+ sha256 = "0nnfp8rj4avn462w3fwln8c7sai3psz7kp97r3iyq4v9wavgdni2";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fd4c1c4da2a5571babda9a29a56b8972ad0687c0/recipes/literate-elisp";
+ sha256 = "10vc3m54jp2wqjrmn9plq6lb5zfiy6jy0acpp09q3z325z0sql9j";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/literate-elisp";
+ license = lib.licenses.free;
+ };
+ }) {};
literate-starter-kit = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -56791,12 +60152,12 @@
melpaBuild {
pname = "live-code-talks";
ename = "live-code-talks";
- version = "20150115.1423";
+ version = "20180907.947";
src = fetchFromGitHub {
owner = "david-christiansen";
repo = "live-code-talks";
- rev = "fece58108939a53104f88d348298c9e122f25b75";
- sha256 = "1j0qa96vlsqybhp0082a466qb1hd2b0621306brl9pfl5srf5jsj";
+ rev = "97f16a9ee4e6ff3e0f9291eaead772c66e3e12ae";
+ sha256 = "1clcm1yps38wdyj415hh7bl20fcpfin92hh5njsldqbvgcpndaqi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/live-code-talks";
@@ -56817,12 +60178,12 @@
melpaBuild {
pname = "live-py-mode";
ename = "live-py-mode";
- version = "20180330.1758";
+ version = "20190330.1041";
src = fetchFromGitHub {
owner = "donkirkby";
repo = "live-py-plugin";
- rev = "ab2f9bea32dbad11a6464a4880e5487645a0f65a";
- sha256 = "0w3kpszsrh0gj0a62iqhnhm3flmmgq0pl0d6w5r61mvlq9wck5dv";
+ rev = "63140187ba2b68c2c55d91aa7a07b5c5d15422d9";
+ sha256 = "0arhhl684p0nhxhc53sbhcc1rmv3v107s5j0ymwnfa4rnyahz2ii";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c7615237e80b46b5c50cb51a3ed5b07d92566fb7/recipes/live-py-mode";
@@ -56947,11 +60308,11 @@
melpaBuild {
pname = "lms";
ename = "lms";
- version = "20170804.922";
+ version = "20181216.1446";
src = fetchhg {
url = "https://bitbucket.com/inigoserna/lms.el";
- rev = "f07ac3678e27";
- sha256 = "15l3nfrddblfzqxgvf0dmmsk4h5l80l6r2kgxcfk8s01msjka3sl";
+ rev = "38302acf2aa3";
+ sha256 = "0da14qr7lgkfxksnhf37ss5w6wxkw9qv5hvxk7z76jyzwqdc6w4x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b8be8497494b8543a8257c9ea92444baf7674951/recipes/lms";
@@ -56964,6 +60325,33 @@
license = lib.licenses.free;
};
}) {};
+ load-bash-alias = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , seq }:
+ melpaBuild {
+ pname = "load-bash-alias";
+ ename = "load-bash-alias";
+ version = "20181220.955";
+ src = fetchFromGitHub {
+ owner = "daviderestivo";
+ repo = "load-bash-alias";
+ rev = "50df445bace7896318f10c58d26b673635704215";
+ sha256 = "0m84ylx4j4bp898xc43yrkrk3csr2ppv3c51nirx5gdc5hnhykxj";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/063fa99446bb54fadbbad1af90427462afe8bd8d/recipes/load-bash-alias";
+ sha256 = "1maq7wykhn3cvxl8fiws3d2d63zlkzgpd3d9jz3rhyi9rcjcjzak";
+ name = "recipe";
+ };
+ packageRequires = [ emacs seq ];
+ meta = {
+ homepage = "https://melpa.org/#/load-bash-alias";
+ license = lib.licenses.free;
+ };
+ }) {};
load-env-vars = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -57073,12 +60461,12 @@
melpaBuild {
pname = "loccur";
ename = "loccur";
- version = "20161227.251";
+ version = "20181203.1238";
src = fetchFromGitHub {
owner = "fourier";
repo = "loccur";
- rev = "650d91dda0d313c8f445a0803c07809d857dee0f";
- sha256 = "09xc2207dhlbw0x9pks2gay09adzijzcabdwg55iszrs7pxjjfa0";
+ rev = "194d70e6be82c4622b7460ca46ced38109ac0507";
+ sha256 = "136ixa0w94imwacdjispcn81v5i7pb0qqzy6bzgjw2cr9z9539bx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/72550b043794331e85bc4b124f6d8ab70d969eff/recipes/loccur";
@@ -57252,11 +60640,11 @@
melpaBuild {
pname = "lognav-mode";
ename = "lognav-mode";
- version = "20180708.322";
+ version = "20190217.832";
src = fetchhg {
url = "https://bitbucket.com/ellisvelo/lognav-mode";
- rev = "73aba5c1b9c6";
- sha256 = "0bshlkxzb1wbvm5fpsmqd51z4y1nfqkh802ddd8pfs5k22lv21sk";
+ rev = "bec9f3eba66e";
+ sha256 = "19axhlcny5i4hfrhxivalxrhpghy2czj92cflq0gb5b6ar6zgkyg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ad86b93f4982a0c6291c771e12c8f42ace3b88f9/recipes/lognav-mode";
@@ -57320,6 +60708,7 @@
}) {};
logview = callPackage ({ datetime
, emacs
+ , extmap
, fetchFromGitHub
, fetchurl
, lib
@@ -57327,19 +60716,19 @@
melpaBuild {
pname = "logview";
ename = "logview";
- version = "20180522.1054";
+ version = "20181027.1057";
src = fetchFromGitHub {
owner = "doublep";
repo = "logview";
- rev = "902c881f5e1ca802761b856b3945bd418847dd79";
- sha256 = "1df41wabldg1ahcbqi5szwml5hqdjm6p3hj5b8ajkkagykrnh8xg";
+ rev = "bd662d467dbd7c93cfe1e3058e4f11c49314fd6a";
+ sha256 = "03s4q5xdz84cjn4qkfhsc3l9y3v5avrl2i5dby4bgsg2zj7n7f73";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1df3c11ed7738f32e6ae457647e62847701c8b19/recipes/logview";
sha256 = "0gks3j5avx8k3427a36lv7gr95id3cylaamgn5qwbg14s54y0vsh";
name = "recipe";
};
- packageRequires = [ datetime emacs ];
+ packageRequires = [ datetime emacs extmap ];
meta = {
homepage = "https://melpa.org/#/logview";
license = lib.licenses.free;
@@ -57497,55 +60886,30 @@
license = lib.licenses.free;
};
}) {};
- lsp-go = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , melpaBuild }:
- melpaBuild {
- pname = "lsp-go";
- ename = "lsp-go";
- version = "20180630.1101";
- src = fetchFromGitHub {
- owner = "emacs-lsp";
- repo = "lsp-go";
- rev = "0d354e1682fe1db074a924d7812f6ea62048d73d";
- sha256 = "0rk1brvy9hmjwykzf3pgli7h5gp3m6ra4yspv0rknbd2drzw4r94";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-go";
- sha256 = "1yg21qqlf8ma734vaz6xrfym2058gvx7llsqy94fbbg1fg61c32c";
- name = "recipe";
- };
- packageRequires = [ lsp-mode ];
- meta = {
- homepage = "https://melpa.org/#/lsp-go";
- license = lib.licenses.free;
- };
- }) {};
- lsp-hack = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , melpaBuild }:
+ lsp-elixir = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , lsp-mode
+ , melpaBuild }:
melpaBuild {
- pname = "lsp-hack";
- ename = "lsp-hack";
- version = "20180703.1837";
+ pname = "lsp-elixir";
+ ename = "lsp-elixir";
+ version = "20190105.1259";
src = fetchFromGitHub {
- owner = "jra3";
- repo = "lsp-hack";
- rev = "a3b6725dc7b16246d71a7d4ddbddd0fec1a009eb";
- sha256 = "1amkdlc0dpxv953f8v7l5i3a54gm6nxrdmrizkgc28plbvcpqdqy";
+ owner = "elixir-lsp";
+ repo = "lsp-elixir.el";
+ rev = "9fd091c092144a09c0df2d477257c1f4c37bb985";
+ sha256 = "0m5hxlx0cnx4rdcz5chxqp074z9h1wj1nvg8dzmilsnmg3kmsshx";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/a70d8442c653554d28dc87425913424ab42ab5c8/recipes/lsp-hack";
- sha256 = "1xfvk4hqs748b9dm8dirb2mdpnhq9mybgsbcj258yydr57d9zijs";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c875a05e68d09ecf37f7e13149f2624c70164ea3/recipes/lsp-elixir";
+ sha256 = "0mimb67swcq2yis0s6w2bkk7sgqv7lyvz1hrh48h2q6qr3ywmq0n";
name = "recipe";
};
- packageRequires = [ lsp-mode ];
+ packageRequires = [ emacs lsp-mode ];
meta = {
- homepage = "https://melpa.org/#/lsp-hack";
+ homepage = "https://melpa.org/#/lsp-elixir";
license = lib.licenses.free;
};
}) {};
@@ -57558,12 +60922,12 @@
melpaBuild {
pname = "lsp-haskell";
ename = "lsp-haskell";
- version = "20180131.459";
+ version = "20190328.2248";
src = fetchFromGitHub {
owner = "emacs-lsp";
repo = "lsp-haskell";
- rev = "bd7d0a4c3b54dbaa4c89b80f4f0268d717b4dd6f";
- sha256 = "13dp655kdi6z6s9is0q1qf6yvmfxzv7bjjlhp2f7bjiv2jh5yzyv";
+ rev = "33e3ac438338b0a78971cd26aa919482d290c51b";
+ sha256 = "1ihc6djxsdrd0q9f79bs0qwxxhw3bnw1kxw2rq92drfnypqbiqcq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-haskell";
@@ -57576,32 +60940,6 @@
license = lib.licenses.free;
};
}) {};
- lsp-html = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , melpaBuild }:
- melpaBuild {
- pname = "lsp-html";
- ename = "lsp-html";
- version = "20180629.25";
- src = fetchFromGitHub {
- owner = "emacs-lsp";
- repo = "lsp-html";
- rev = "478927767c3c2bd06b052807126e5d48be53755a";
- sha256 = "0833mrmbhfzm2xhf91wl7bp4h54h2qaxy4lidy05ngm407wbjypd";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/204acff0d1a8c6dc79ef34cc464435a1504d7c15/recipes/lsp-html";
- sha256 = "0fd53k8spfm2s618gvchr0jsbc0a0varklc05cdjvjxyxk04ssmc";
- name = "recipe";
- };
- packageRequires = [ lsp-mode ];
- meta = {
- homepage = "https://melpa.org/#/lsp-html";
- license = lib.licenses.free;
- };
- }) {};
lsp-intellij = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -57611,12 +60949,12 @@
melpaBuild {
pname = "lsp-intellij";
ename = "lsp-intellij";
- version = "20180621.1131";
+ version = "20180831.1351";
src = fetchFromGitHub {
owner = "Ruin0x11";
repo = "lsp-intellij";
- rev = "0911f703ac50164a702b6ee213173e763eda3094";
- sha256 = "1nc4bi6annxd4i94wznh28di3pvq73yvz3g4nhs1l95jczl13rpj";
+ rev = "cf30f0ac63bd0140e758840b8ab070e8313697b2";
+ sha256 = "0ghw2as9fbnfhrr1nbqk97jcl7yb451xpmfbksxh7mvjm3lhmyvz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9d72cbb85fe4e0c6bea9a704dc1545f88efa56d2/recipes/lsp-intellij";
@@ -57629,28 +60967,43 @@
license = lib.licenses.free;
};
}) {};
- lsp-java = callPackage ({ emacs
+ lsp-java = callPackage ({ dash
+ , dash-functional
+ , emacs
+ , f
, fetchFromGitHub
, fetchurl
+ , ht
, lib
, lsp-mode
- , melpaBuild }:
+ , markdown-mode
+ , melpaBuild
+ , request }:
melpaBuild {
pname = "lsp-java";
ename = "lsp-java";
- version = "20180701.111";
+ version = "20190405.1133";
src = fetchFromGitHub {
owner = "emacs-lsp";
repo = "lsp-java";
- rev = "b3d671ccc264b32492e30f48b4d5a52f6b88145d";
- sha256 = "17dqz2fmsczl46vq6id9918hxy5b332lncgwzrzjbbpqi3ysa1s3";
+ rev = "311a0747e6d54acf1b9b14d5c1f967e6fcbb97c5";
+ sha256 = "0p0j2rb44f4v3mnhs3633xwprxa3ya6i7bzdvrz8r89ccrv3zmig";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-java";
- sha256 = "1y5wxggkr7v4a2a3h2n01911gd1xv047dikbvyy1gappf05fdngj";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c03cb07862c5f35487fb4fb3cc44623774724717/recipes/lsp-java";
+ sha256 = "0rrl9mh25w1avvyww840d3yh8nw0shirspxl2nxqwwdaymbkg2wr";
name = "recipe";
};
- packageRequires = [ emacs lsp-mode ];
+ packageRequires = [
+ dash
+ dash-functional
+ emacs
+ f
+ ht
+ lsp-mode
+ markdown-mode
+ request
+ ];
meta = {
homepage = "https://melpa.org/#/lsp-java";
license = lib.licenses.free;
@@ -57666,12 +61019,12 @@
melpaBuild {
pname = "lsp-javacomp";
ename = "lsp-javacomp";
- version = "20180218.2334";
+ version = "20190124.955";
src = fetchFromGitHub {
owner = "tigersoldier";
repo = "lsp-javacomp";
- rev = "4423fc41974e25ddf4a46fb13bd64680d52b420a";
- sha256 = "1k66h5l52al3glsz261j2lcfl8pddxh55m8slr9p1kaxzr67fl6a";
+ rev = "82aa4ad6ca03a74565c35e855b318b1887bcd89b";
+ sha256 = "0r0ig73hsa0gyx8s6hr1mbdgf9m1n2zh2v7yhq3405l4if08s5m6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6b8a1c034554579a7e271409fa72020cfe441f68/recipes/lsp-javacomp";
@@ -57684,222 +61037,147 @@
license = lib.licenses.free;
};
}) {};
- lsp-javascript-flow = callPackage ({ emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , melpaBuild }:
- melpaBuild {
- pname = "lsp-javascript-flow";
- ename = "lsp-javascript-flow";
- version = "20180612.2208";
- src = fetchFromGitHub {
- owner = "emacs-lsp";
- repo = "lsp-javascript";
- rev = "b9873765270ac5c76013efe6fae0beb60f55f85c";
- sha256 = "1cpwivz6cy9rs5s3723j0y3wf6bhr4avazdyl1f2gv3xiwr0gbns";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/f9a28de5ce89080ba224e07734b3ba0b0992acd6/recipes/lsp-javascript-flow";
- sha256 = "1bydgcmgzbx2pqna19h1avrlrlfv6gvsii1n839q4bhiwn3452f7";
- name = "recipe";
- };
- packageRequires = [ emacs lsp-mode ];
- meta = {
- homepage = "https://melpa.org/#/lsp-javascript-flow";
- license = lib.licenses.free;
- };
- }) {};
- lsp-javascript-typescript = callPackage ({ emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , melpaBuild
- , typescript-mode }:
- melpaBuild {
- pname = "lsp-javascript-typescript";
- ename = "lsp-javascript-typescript";
- version = "20180614.1311";
- src = fetchFromGitHub {
- owner = "emacs-lsp";
- repo = "lsp-javascript";
- rev = "7e7c5f66b02321f402712841064347cb872c41e4";
- sha256 = "1ilhnbdvfjanv0cjwk289dq1whpf69qzw0hh9ak37gbi4pqvsbdv";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/97b6ddeb34297aacfefdd4c227ad520b70a12bc6/recipes/lsp-javascript-typescript";
- sha256 = "01i6dimwz5s143cbcfi2rflfgkj569avx103wnlbcfd87apj7813";
- name = "recipe";
- };
- packageRequires = [ emacs lsp-mode typescript-mode ];
- meta = {
- homepage = "https://melpa.org/#/lsp-javascript-typescript";
- license = lib.licenses.free;
- };
- }) {};
- lsp-mode = callPackage ({ emacs
+ lsp-mode = callPackage ({ dash
+ , dash-functional
+ , emacs
+ , f
, fetchFromGitHub
, fetchurl
+ , ht
, lib
- , melpaBuild }:
+ , melpaBuild
+ , spinner }:
melpaBuild {
pname = "lsp-mode";
ename = "lsp-mode";
- version = "20180708.1914";
+ version = "20190407.1213";
src = fetchFromGitHub {
owner = "emacs-lsp";
repo = "lsp-mode";
- rev = "5ea5c6398a923e24c4fedf6d782004b4dc4cb254";
- sha256 = "1pn9lnd8r4zl35hqwi00qcsb6v6aj533hbm7faj1d3nndlf2qmbh";
+ rev = "ab418329df23590212ecfee313791c6c551223e1";
+ sha256 = "0pwfpcdn2ijvpsm3i2kgk6r8m9f297xsvlz5x1fa57b4002j8vzl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-mode";
sha256 = "0cklwllqxzsvs4wvvvsc1pqpmp9w99m8wimpby6v6wlijfg6y1m9";
name = "recipe";
};
- packageRequires = [ emacs ];
+ packageRequires = [ dash dash-functional emacs f ht spinner ];
meta = {
homepage = "https://melpa.org/#/lsp-mode";
license = lib.licenses.free;
};
}) {};
- lsp-ocaml = callPackage ({ emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , melpaBuild }:
- melpaBuild {
- pname = "lsp-ocaml";
- ename = "lsp-ocaml";
- version = "20180610.1154";
- src = fetchFromGitHub {
- owner = "emacs-lsp";
- repo = "lsp-ocaml";
- rev = "5a8c776b6d75b502703243b3d628fccd813481b0";
- sha256 = "1431f8r8c4h8jbghggk1s2bwqr1qlxys3d52xsvf35bbk1gki5an";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7be2d7a7af3d744c531e5e018d791bf2566df428/recipes/lsp-ocaml";
- sha256 = "17334qcgqrz4jd5npizyq20fmxy07z2p3pq98s5np2kc4h9ara33";
- name = "recipe";
- };
- packageRequires = [ emacs lsp-mode ];
- meta = {
- homepage = "https://melpa.org/#/lsp-ocaml";
- license = lib.licenses.free;
- };
- }) {};
- lsp-php = callPackage ({ emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , melpaBuild }:
+ lsp-p4 = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , lsp-mode
+ , melpaBuild }:
melpaBuild {
- pname = "lsp-php";
- ename = "lsp-php";
- version = "20180331.944";
+ pname = "lsp-p4";
+ ename = "lsp-p4";
+ version = "20190127.249";
src = fetchFromGitHub {
- owner = "emacs-lsp";
- repo = "lsp-php";
- rev = "3189a13c605e1615b7ce2cd12f09c1ed92a88178";
- sha256 = "1kv708yrx57j0cvz9vcam4rwfincgbbr7rdbxdmnfmwnx4ylgckg";
+ owner = "dmakarov";
+ repo = "p4ls";
+ rev = "084e33a5782f9153502d9b03e63d9cbbe81cdaeb";
+ sha256 = "0id3rw2p35cs7ax85590qs16zybgrjcapsnly5ifzjk0a5k7548c";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/9fda03716433077e440c0fb8357207f7a348552c/recipes/lsp-php";
- sha256 = "0ds3hivkb7zxkz6crn6h9apvavvm899vwq4mkav4cbijsl4q33l0";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/53f0da8b3d2903adeffdbc3d8df7d630bfd9ff71/recipes/lsp-p4";
+ sha256 = "0cd3n17lqwz08zfkm9g5cr1cj2asznlbhxrym2a7b7shdmn3yx5f";
name = "recipe";
};
- packageRequires = [ emacs lsp-mode ];
+ packageRequires = [ lsp-mode ];
meta = {
- homepage = "https://melpa.org/#/lsp-php";
+ homepage = "https://melpa.org/#/lsp-p4";
license = lib.licenses.free;
};
}) {};
- lsp-python = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , melpaBuild }:
+ lsp-scala = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , lsp-mode
+ , melpaBuild
+ , sbt-mode }:
melpaBuild {
- pname = "lsp-python";
- ename = "lsp-python";
- version = "20180609.16";
+ pname = "lsp-scala";
+ ename = "lsp-scala";
+ version = "20190116.1332";
src = fetchFromGitHub {
- owner = "emacs-lsp";
- repo = "lsp-python";
- rev = "28a3ad4e98af5ede860ef4c2fe47048ce676559b";
- sha256 = "0y8cglfmjn4j1apyjr66vpqln3rzqdkada3ggxlap4iirgb5iqgf";
+ owner = "rossabaker";
+ repo = "lsp-scala";
+ rev = "b68820cc7aaa9c4f818c4f7999188c20655c3be3";
+ sha256 = "1zq2kjsdf88wi4i2my14hw8am9q5dpyfryak1mvp2hpy661hmy7k";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-python";
- sha256 = "0x8cyvkwp4znliiwf3qfrhnk80h8n1jfyyq0n5yfccsgk7gpm8qx";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fd494da0c0c2e2e58afc26d8e79aeeea41c6ee09/recipes/lsp-scala";
+ sha256 = "1r8ha0q9gphcs6ihqswgvbhs9b6v6n1pvlqxwjnjwpdhsr5fsw1p";
name = "recipe";
};
- packageRequires = [ lsp-mode ];
+ packageRequires = [ emacs lsp-mode sbt-mode ];
meta = {
- homepage = "https://melpa.org/#/lsp-python";
+ homepage = "https://melpa.org/#/lsp-scala";
license = lib.licenses.free;
};
}) {};
- lsp-rust = callPackage ({ dash
- , emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , markdown-mode
- , melpaBuild
- , rust-mode }:
+ lsp-sourcekit = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , lsp-mode
+ , melpaBuild }:
melpaBuild {
- pname = "lsp-rust";
- ename = "lsp-rust";
- version = "20180305.508";
+ pname = "lsp-sourcekit";
+ ename = "lsp-sourcekit";
+ version = "20181216.650";
src = fetchFromGitHub {
owner = "emacs-lsp";
- repo = "lsp-rust";
- rev = "ecc889cc8735b280e0e6e84d2f4526b0048148b3";
- sha256 = "0wmci5lij5721xpfsj3mnvr3z1j8b9s0w76dhzd0lnyaknvyv1rs";
+ repo = "lsp-sourcekit";
+ rev = "99cac71aba68b2ae85c9295d71dda8bc513a85e2";
+ sha256 = "0z2yj04if4dhqq2c7am5kzdapaj4l3k0blmy1cp55pr0fkhn8mpj";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-rust";
- sha256 = "0p86223pfpi4hh8m66ccksxgl0yi7zrigd1gmbz0bzqa6yjgbp28";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a1e15078916dc053ca2413a6afae51df22321e9e/recipes/lsp-sourcekit";
+ sha256 = "1n3lkpyk2mb8a5qc2h00d6dgbp4ws8pwzqljplnnm35sqg6an76k";
name = "recipe";
};
- packageRequires = [ dash emacs lsp-mode markdown-mode rust-mode ];
+ packageRequires = [ emacs lsp-mode ];
meta = {
- homepage = "https://melpa.org/#/lsp-rust";
+ homepage = "https://melpa.org/#/lsp-sourcekit";
license = lib.licenses.free;
};
}) {};
- lsp-typescript = callPackage ({ emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , melpaBuild
- , typescript-mode }:
+ lsp-treemacs = callPackage ({ dash
+ , dash-functional
+ , emacs
+ , f
+ , fetchFromGitHub
+ , fetchurl
+ , ht
+ , lib
+ , lsp-mode
+ , melpaBuild
+ , treemacs }:
melpaBuild {
- pname = "lsp-typescript";
- ename = "lsp-typescript";
- version = "20180614.1311";
+ pname = "lsp-treemacs";
+ ename = "lsp-treemacs";
+ version = "20190328.2351";
src = fetchFromGitHub {
owner = "emacs-lsp";
- repo = "lsp-javascript";
- rev = "7e7c5f66b02321f402712841064347cb872c41e4";
- sha256 = "1ilhnbdvfjanv0cjwk289dq1whpf69qzw0hh9ak37gbi4pqvsbdv";
+ repo = "lsp-treemacs";
+ rev = "5b3f0d3242b272cc31b7620766ff7a7a3d997f20";
+ sha256 = "1q7qn1m4qy70qghiq3ac3ri69hq3g0kfxp4sf3bzssh9v2yvxwcl";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/e7903d6b51132c0d8ad209f13ffe915c1bc5a76d/recipes/lsp-typescript";
- sha256 = "1d1yrcgg1bdsikcb2j8cayhlh9hdnna3rc1pphq0kn81gk0rgbrq";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b9996b16461fe7c16b315ef30aa6b75c724f8fef/recipes/lsp-treemacs";
+ sha256 = "1lgpph7mp4mhvg47fnl7janw2nh8wv1bwap69spgc3qprwbg2hd1";
name = "recipe";
};
- packageRequires = [ emacs lsp-mode typescript-mode ];
+ packageRequires = [ dash dash-functional emacs f ht lsp-mode treemacs ];
meta = {
- homepage = "https://melpa.org/#/lsp-typescript";
+ homepage = "https://melpa.org/#/lsp-treemacs";
license = lib.licenses.free;
};
}) {};
@@ -57908,7 +61186,6 @@
, emacs
, fetchFromGitHub
, fetchurl
- , flycheck
, lib
, lsp-mode
, markdown-mode
@@ -57916,58 +61193,24 @@
melpaBuild {
pname = "lsp-ui";
ename = "lsp-ui";
- version = "20180618.1951";
+ version = "20190328.2057";
src = fetchFromGitHub {
owner = "emacs-lsp";
repo = "lsp-ui";
- rev = "bd5970edae874338bd01d0bc50c4671ea4cae390";
- sha256 = "0s5an922wfias2n0h5jqa2n4mxvrfg6sav470him4dbwqqrgx5ck";
+ rev = "d4088c7471bdb3ba95f2fb0b60277ad95b34a25f";
+ sha256 = "0xmfxv68s0m0pwlbs05vx3y94pdwfyswqpzzji714nqzx1ixfqyb";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1e4fa7cdf71f49f6998b26d81de9522248bc58e6/recipes/lsp-ui";
- sha256 = "00y5i44yd79z0v00a9lvgixb4mrx9nq5vcgmib70h41ffffaq42j";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b7c78c9b07ede9949d14df74b188d4c1a3365196/recipes/lsp-ui";
+ sha256 = "0fylav8b54g020z039zm1mx26d257715bfn9nnpw9i0b97539lqi";
name = "recipe";
};
- packageRequires = [
- dash
- dash-functional
- emacs
- flycheck
- lsp-mode
- markdown-mode
- ];
+ packageRequires = [ dash dash-functional emacs lsp-mode markdown-mode ];
meta = {
homepage = "https://melpa.org/#/lsp-ui";
license = lib.licenses.free;
};
}) {};
- lsp-vue = callPackage ({ emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , melpaBuild }:
- melpaBuild {
- pname = "lsp-vue";
- ename = "lsp-vue";
- version = "20180628.15";
- src = fetchFromGitHub {
- owner = "emacs-lsp";
- repo = "lsp-vue";
- rev = "3c3f364f70d300101a37a239a6bf8c382176f238";
- sha256 = "0m5bi99y02jvjv25jpm5sj50x4k75md9p6qqq5bzsdj3b07d2gxx";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/0d9eb7699630fd7e11f38b4ba278a497633c9733/recipes/lsp-vue";
- sha256 = "1df3dva31livffy9bzassgqpps3bf9nbqmhngzh8bnhjvvrbj5ic";
- name = "recipe";
- };
- packageRequires = [ emacs lsp-mode ];
- meta = {
- homepage = "https://melpa.org/#/lsp-vue";
- license = lib.licenses.free;
- };
- }) {};
lua-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -57975,12 +61218,12 @@
melpaBuild {
pname = "lua-mode";
ename = "lua-mode";
- version = "20180323.321";
+ version = "20190113.250";
src = fetchFromGitHub {
owner = "immerrr";
repo = "lua-mode";
- rev = "99312b8d6c500ba3067da6d81efcfbbea05a1cbd";
- sha256 = "04m9njcpdmar3njjz4x2qq26xk0k6qprcfzx8whlmvapqf8w19iz";
+ rev = "95c64bb5634035630e8c59d10d4a1d1003265743";
+ sha256 = "0cawb544qylifkvqads307n0nfqg7lvyphqbpbzr2xvr5iyi4901";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/lua-mode";
@@ -58028,12 +61271,12 @@
melpaBuild {
pname = "lush-theme";
ename = "lush-theme";
- version = "20141107.806";
+ version = "20180816.1500";
src = fetchFromGitHub {
owner = "andre-richter";
repo = "emacs-lush-theme";
- rev = "fd69cf6e254b329d7997acd37fe04c17139f3435";
- sha256 = "0gcyxvkpfi1vsa7gyx13rb29x86j2i2nnqldli1sna4v87jw288g";
+ rev = "7cfc993709d712f75c51b505078608c9e1c11466";
+ sha256 = "0v17srm3l8p556d4j5im2bn7brxv7v0g2crlm4gb8x1cwjrbajzf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8b29b2f36852e711ce3520d71e83921a1dcb9ccf/recipes/lush-theme";
@@ -58078,12 +61321,12 @@
melpaBuild {
pname = "lv";
ename = "lv";
- version = "20160912.756";
+ version = "20181110.940";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "hydra";
- rev = "a07b92a8755dfb064701210b634e2dc4839552ac";
- sha256 = "11k0ifmr90vdinibhyqqyqrmpxbn9c5pjpzhr4p66wv6249s540w";
+ rev = "5c5b9ca3262594c92f8f73c98db5ed0f1efd0319";
+ sha256 = "0dvh4sg1s76jy41vsy6dh3a4b8vr5msldnyssmqzdqwrsw64hl6r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5114349617617673d5055fe28cb8f8c86cf41f83/recipes/lv";
@@ -58148,6 +61391,33 @@
license = lib.licenses.free;
};
}) {};
+ lxd-tramp = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "lxd-tramp";
+ ename = "lxd-tramp";
+ version = "20181022.1707";
+ src = fetchFromGitHub {
+ owner = "onixie";
+ repo = "lxd-tramp";
+ rev = "f335c76245f62b02cf67a9376eca6f3863c8a75a";
+ sha256 = "0byhafxcc4qw08b16fd00nkyqz1jmq7js0l5q4lda4xdpfgl1a65";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7778f5961eaaa356e5e383ef2323c5713e5bf2/recipes/lxd-tramp";
+ sha256 = "0i611z4pksrf4zf0h8wnradqbcad5f43dq8bg3dsik0jdcjlvg5p";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/lxd-tramp";
+ license = lib.licenses.free;
+ };
+ }) {};
lyrics = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -58157,12 +61427,12 @@
melpaBuild {
pname = "lyrics";
ename = "lyrics";
- version = "20180123.2004";
+ version = "20180812.1141";
src = fetchFromGitHub {
owner = "emacs-pe";
repo = "lyrics.el";
- rev = "fb35b387796f64f48b4daa5a163f4a576210f200";
- sha256 = "17al49f633h3fsa6aq9v5c1r8dp2gj97f46z1fhmgxbijmpfzs0w";
+ rev = "d0b920be634a5be81ad49418cfaada0f0a57d6cd";
+ sha256 = "0926avnlxi8qkr1faplk1aj4lji0ixa4lv81badi5zsmpyyrwmm7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b04c8f3dfa9fc07cc0ff3df5c4069f864b6db92e/recipes/lyrics";
@@ -58412,41 +61682,57 @@
license = lib.licenses.free;
};
}) {};
+ magik-mode = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "magik-mode";
+ ename = "magik-mode";
+ version = "20190305.1229";
+ src = fetchFromGitHub {
+ owner = "roadrunner1776";
+ repo = "magik";
+ rev = "743c5160ff2993534014862538961515047ed357";
+ sha256 = "0sggdkp01ryknmfv828lqc5lkpks2vlqrqc0hblynyxs8w0azmf8";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/291cce8e8e3475348b446ba38833eb1e37d4db65/recipes/magik-mode";
+ sha256 = "1d6n7mpwavrajcgai6j0y5khhgc4jaag1ig1xx8w04mr48xrjxqk";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/magik-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
magit = callPackage ({ async
, dash
, emacs
, fetchFromGitHub
, fetchurl
- , ghub
, git-commit
, lib
- , magit-popup
, melpaBuild
+ , transient
, with-editor }:
melpaBuild {
pname = "magit";
ename = "magit";
- version = "20180720.1712";
+ version = "20190405.1004";
src = fetchFromGitHub {
owner = "magit";
repo = "magit";
- rev = "c5269547ae178f4893a8ec662f71b0e032d4c0fa";
- sha256 = "1qyyi1pyb1hr66b43ka0sshafizddxgzlbqlnlfncb2rm8fyab0h";
+ rev = "e19833d9d639221ed78f310b800b464db5600a3f";
+ sha256 = "05fmzpqzsfa22ghmbgkirii64i5473463nniik5ck51j5w3z1vd7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac8feccfa0f4eb5bda2ef561a6be66ba145c00e0/recipes/magit";
sha256 = "03iv74rgng5fcy3qfr76hiy0hj6x2z0pis1yj8wm1naq5rc55hjn";
name = "recipe";
};
- packageRequires = [
- async
- dash
- emacs
- ghub
- git-commit
- magit-popup
- with-editor
- ];
+ packageRequires = [ async dash emacs git-commit transient with-editor ];
meta = {
homepage = "https://melpa.org/#/magit";
license = lib.licenses.free;
@@ -58461,12 +61747,12 @@
melpaBuild {
pname = "magit-annex";
ename = "magit-annex";
- version = "20180715.1812";
+ version = "20190217.2127";
src = fetchFromGitHub {
owner = "magit";
repo = "magit-annex";
- rev = "e36674fa052431342942ce42c3e396318a5bb5b0";
- sha256 = "085qwg8f68j6lcdfm0ri6a8fjvb2z7qwkvaflcff7rr7hjbmnb29";
+ rev = "2b6b51c2f295ffc724bac8e8fde9b161972f9cfe";
+ sha256 = "0v5saypcc5s6z1sa6hc3hmigzh7bnmp3247n2a9g259w21f7bcwa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-annex";
@@ -58625,12 +61911,12 @@
melpaBuild {
pname = "magit-imerge";
ename = "magit-imerge";
- version = "20180609.858";
+ version = "20190218.2153";
src = fetchFromGitHub {
owner = "magit";
repo = "magit-imerge";
- rev = "6f64cd84f1cfed9ee976a9059494128c9b52bdf4";
- sha256 = "0adgkqp4s70qph73xrgxr56c2vrfmmqn0c4llzvxp0yp7linnr8d";
+ rev = "54f2e25eb5f9e9763a60808ecfc1edef7f276ce0";
+ sha256 = "0i16s3kc5k1sr2fgq72n0nmrwqphrg5zppmvri653120nga7b5lx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e78a5c27eedfc9b1d79e37e8d333c5d253f31a3c/recipes/magit-imerge";
@@ -58655,14 +61941,14 @@
ename = "magit-lfs";
version = "20170312.1524";
src = fetchFromGitHub {
- owner = "ailrun";
+ owner = "Ailrun";
repo = "magit-lfs";
rev = "9897c59109ce34755cbd35eff689680351c45fba";
sha256 = "05cy0pw5lcyzcqxycvwbw39l88405lc92x0w1lvhlbwwylpbhw2s";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1a92f0963d8df3e299a999948828173dac38a612/recipes/magit-lfs";
- sha256 = "1im9skj74jdi7jh0fnyyk8a4g4sk48clgn107ggf69lnfpxh8xxa";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/magit-lfs";
+ sha256 = "1xc32f2k3dwpqncnrr3xyr2963ywa0006z3c01nypxgs1xkfsbdx";
name = "recipe";
};
packageRequires = [ dash emacs magit ];
@@ -58737,12 +62023,12 @@
melpaBuild {
pname = "magit-popup";
ename = "magit-popup";
- version = "20180618.1602";
+ version = "20190223.1434";
src = fetchFromGitHub {
owner = "magit";
repo = "magit-popup";
- rev = "e2060ccb3105555f55992a995587221820341b24";
- sha256 = "1z1xi6mkz1h0vxbhwp1ypn5jpa0a859b296k4ds2j1i18h1lvgad";
+ rev = "4250c3a606011e3ff2477e3b5bbde2b493f3c85c";
+ sha256 = "073x1yf96b623yphylnf0ysannr91vawzgjdv1smkcrgd4451hr3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0263ca6aea7bf6eae26a637454affbda6bd106df/recipes/magit-popup";
@@ -58755,28 +62041,82 @@
license = lib.licenses.free;
};
}) {};
- magit-stgit = callPackage ({ emacs
- , fetchFromGitHub
+ magit-rbr = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , magit
+ , melpaBuild }:
+ melpaBuild {
+ pname = "magit-rbr";
+ ename = "magit-rbr";
+ version = "20181009.1316";
+ src = fetchFromGitHub {
+ owner = "fanatoly";
+ repo = "magit-rbr";
+ rev = "029203b3e48537205052a058e964f058cd802c3c";
+ sha256 = "1z48m0al8bb4ppic483jvika9q47c67g7fazk25431sr5rv9h4d2";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/10427817a1fc2fa8aaf11897719cbb851d9e4b15/recipes/magit-rbr";
+ sha256 = "086vb7xrgyrazc3a7bpyhy219szvrvl59l8wlqakimx0mav7qipr";
+ name = "recipe";
+ };
+ packageRequires = [ emacs magit ];
+ meta = {
+ homepage = "https://melpa.org/#/magit-rbr";
+ license = lib.licenses.free;
+ };
+ }) {};
+ magit-reviewboard = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , magit
+ , melpaBuild
+ , request
+ , s }:
+ melpaBuild {
+ pname = "magit-reviewboard";
+ ename = "magit-reviewboard";
+ version = "20190211.1444";
+ src = fetchFromGitHub {
+ owner = "jtamagnan";
+ repo = "magit-reviewboard";
+ rev = "f3d5ed914243e3930f9c06f59021305e7e43e67d";
+ sha256 = "0xlhy328h2wxklpy71dhy1fk7zv6hs2v4jrl1mm9x5mnrbrdfvxx";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f3715fa1df69350205e4269b7090c46b343d8bf0/recipes/magit-reviewboard";
+ sha256 = "1sxqij3370vn6ap52lf4hdlcxfj9mj17sb5r4kk5msjbw3bzdmzr";
+ name = "recipe";
+ };
+ packageRequires = [ emacs magit request s ];
+ meta = {
+ homepage = "https://melpa.org/#/magit-reviewboard";
+ license = lib.licenses.free;
+ };
+ }) {};
+ magit-stgit = callPackage ({ fetchFromGitHub
, fetchurl
, lib
- , magit
, melpaBuild }:
melpaBuild {
pname = "magit-stgit";
ename = "magit-stgit";
- version = "20180522.542";
+ version = "20190313.455";
src = fetchFromGitHub {
- owner = "magit";
+ owner = "emacsorphanage";
repo = "magit-stgit";
- rev = "186e60489f5449d87d94aca24b9d65e2f26a3bc5";
- sha256 = "134555zdc7abrfl9hlyy3l3raljzn3kk4zfcmr70xkx2qjjdl9a2";
+ rev = "d1ba02851071326bc2d58dd8e95093c666e3ceb8";
+ sha256 = "00xrqcv3h5qbvi4klv23fdf2kcgfrzb2r77qmjilv5wsy6dlw71h";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-stgit";
- sha256 = "12wg1ig2jzy2np76brpwxdix9pwv75chviq3c24qyv4y80pd11sv";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/72a38bbc5bba53dfb971f17213287caf0d190db0/recipes/magit-stgit";
+ sha256 = "1spli6yq258zwx95y16s27hr7hlc2h0kc9mjnvjjl13y2l6shm0i";
name = "recipe";
};
- packageRequires = [ emacs magit ];
+ packageRequires = [];
meta = {
homepage = "https://melpa.org/#/magit-stgit";
license = lib.licenses.free;
@@ -58791,16 +62131,16 @@
melpaBuild {
pname = "magit-svn";
ename = "magit-svn";
- version = "20170213.433";
+ version = "20190324.759";
src = fetchFromGitHub {
- owner = "magit";
+ owner = "emacsorphanage";
repo = "magit-svn";
- rev = "c833903732a14478f5c4cfc561bae7c50671b36c";
- sha256 = "01kcsc53q3mbhgjssjpby7ypnhqsr48rkl1xz3ahaypmlp929gl9";
+ rev = "f7dad9b0f6b81b23550ea5cca0f3219f184b746c";
+ sha256 = "1dpljj5l0jf28xsynj9wsgbn6wh6llx0wxvigrv37ccvrz4k2fgg";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-svn";
- sha256 = "02n732z06f0bhxqkxzlvm36bpqr40pas09zbzpfdk4pb6f9f80s0";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a1ff188d509aec104e9d21a640cf5bc3addedf00/recipes/magit-svn";
+ sha256 = "1dww5fc5phai3wk9lp85h6y08ai3vxgggsqj78a3mlcn2adwwc01";
name = "recipe";
};
packageRequires = [ emacs magit ];
@@ -58818,12 +62158,12 @@
melpaBuild {
pname = "magit-tbdiff";
ename = "magit-tbdiff";
- version = "20180527.652";
+ version = "20190219.2015";
src = fetchFromGitHub {
owner = "magit";
repo = "magit-tbdiff";
- rev = "15af196860defda2554aa16ddc172a55ccf03a0d";
- sha256 = "0d24y9sj2qzcm5an37yd7s0gxbq5q8p9xlgxyzz60ln30hwnx107";
+ rev = "48075990d10f7947191c24050e7012d99759f191";
+ sha256 = "10nbkc49d15z9xzlskbc8fv4zckscini4favj8m2ikgfxdyd35h1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ad97eea866c8732e3adc17551d37a6d1ae511e6c/recipes/magit-tbdiff";
@@ -58836,9 +62176,7 @@
license = lib.licenses.free;
};
}) {};
- magit-todos = callPackage ({ a
- , anaphora
- , async
+ magit-todos = callPackage ({ async
, dash
, emacs
, f
@@ -58853,30 +62191,19 @@
melpaBuild {
pname = "magit-todos";
ename = "magit-todos";
- version = "20180716.2339";
+ version = "20190114.650";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "magit-todos";
- rev = "d12e2e3ccad4b87d5df5285ade0c56ec5f46ad63";
- sha256 = "006yy13hjzalwz7pz0br32zifxlxrrf8cvnz0j3km55sxpdvqmil";
+ rev = "14e5347c98f42166ad7061b8663d368bb0d4fba4";
+ sha256 = "1czaf38w0z1pkjwmlhxrln9nmd3zp1j7gmhaf82bw15d8xcl4kbh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b4544ab55d2c8b8c3b7eb739b9fb90ebb246d68b/recipes/magit-todos";
sha256 = "0vqmbw0qj8a5wf4ig9hgc0v3l1agdkvgprzjv178hs00297br2s8";
name = "recipe";
};
- packageRequires = [
- a
- anaphora
- async
- dash
- emacs
- f
- hl-todo
- magit
- pcre2el
- s
- ];
+ packageRequires = [ async dash emacs f hl-todo magit pcre2el s ];
meta = {
homepage = "https://melpa.org/#/magit-todos";
license = lib.licenses.free;
@@ -58893,14 +62220,14 @@
ename = "magit-topgit";
version = "20160313.1254";
src = fetchFromGitHub {
- owner = "magit";
+ owner = "greenrd";
repo = "magit-topgit";
rev = "243fdfa7ce62dce4efd01b6b818a2791868db2f0";
sha256 = "06fbjv3zd92lvg4xjsp9l4jkxx2glhng3ys3s9jmvy5y49pymwb2";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-topgit";
- sha256 = "1ngrgf40n1g6ncd5nqgr0zgxwlkmv9k4fik96dgzysgwincx683i";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/magit-topgit";
+ sha256 = "1194hdcphir4cmvzg9cxrjiyg70hr9zmml2rljih94vl7zrw7335";
name = "recipe";
};
packageRequires = [ emacs magit ];
@@ -58922,15 +62249,15 @@
melpaBuild {
pname = "magithub";
ename = "magithub";
- version = "20180625.2104";
+ version = "20190118.1347";
src = fetchFromGitHub {
owner = "vermiculus";
repo = "magithub";
- rev = "bc318ec9953b919195fbaa980b6873b6af7bed81";
- sha256 = "1c8sfrahxk8q7jarvxmrwsgdy8xcjhky14vc268jbrrz197yp006";
+ rev = "18e66c284af911f3e3178550384d050536db42ac";
+ sha256 = "00r2fp6zbs7321ixdbrh8fj3s6b1bg85hcc2jim6k8pdvssavz1x";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/magithub";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e555b46f5de7591aa8e10a7cf67421e26a676db8/recipes/magithub";
sha256 = "11par5rncsa866gazdw98d4902rvyjnnwbiwpndlyh06ak0lryab";
name = "recipe";
};
@@ -58950,12 +62277,12 @@
melpaBuild {
pname = "magma-mode";
ename = "magma-mode";
- version = "20180413.727";
+ version = "20181205.908";
src = fetchFromGitHub {
owner = "ThibautVerron";
repo = "magma-mode";
- rev = "db5bff33611027418ba387c7e223d5de82dd9e94";
- sha256 = "0k973dwk2frcdjdpxv26v584ldyhprny001l48wwwiyc2mf08bzk";
+ rev = "bded7fd29722dcfd451422530877067915fd7c80";
+ sha256 = "0x858v67kjpqbijlg2fbs4qj0g92b3d6f3rjphzcm8776shwp6ry";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/59764a0aab7c3f32b5a872a3d10a7e144f273a7e/recipes/magma-mode";
@@ -59020,6 +62347,34 @@
license = lib.licenses.free;
};
}) {};
+ major-mode-hydra = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , pretty-hydra }:
+ melpaBuild {
+ pname = "major-mode-hydra";
+ ename = "major-mode-hydra";
+ version = "20190226.1946";
+ src = fetchFromGitHub {
+ owner = "jerrypnz";
+ repo = "major-mode-hydra.el";
+ rev = "2142be970874c679300e539a1d9d0f048eb72a7f";
+ sha256 = "00hxv2nlzz4kgyzrldhqfnvnrhdcb82lm90xdbvn059f1v1zihn3";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/865917fcc75c4118afc89b8bcc20ebdb6302f15d/recipes/major-mode-hydra";
+ sha256 = "0654wnsw38sca97kvp8p3k1h6r91iqs873gcjaaxd7a96sisvafd";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs pretty-hydra ];
+ meta = {
+ homepage = "https://melpa.org/#/major-mode-hydra";
+ license = lib.licenses.free;
+ };
+ }) {};
major-mode-icons = callPackage ({ all-the-icons
, emacs
, fetchFromGitHub
@@ -59323,12 +62678,12 @@
melpaBuild {
pname = "mandm-theme";
ename = "mandm-theme";
- version = "20170925.321";
+ version = "20180915.1240";
src = fetchFromGitHub {
owner = "choppsv1";
repo = "emacs-mandm-theme";
- rev = "078d6d6f11bd48193c5de590cfb0e3d0d687ffc9";
- sha256 = "070280438388q57lpzvd5wdk16abmxixiq01n68hdskfcipdkn2d";
+ rev = "b560aa0129c55a2f4fcc5e67a7d6c66ee4dc3124";
+ sha256 = "17af3bs55c6bxf1izvfgg0kag5az64ncbabgbh6ry14nv3r9lwy6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mandm-theme";
@@ -59410,26 +62765,27 @@
license = lib.licenses.free;
};
}) {};
- map-progress = callPackage ({ fetchFromGitHub
+ map-progress = callPackage ({ cl-lib ? null
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "map-progress";
ename = "map-progress";
- version = "20140310.1432";
+ version = "20190127.1616";
src = fetchFromGitHub {
owner = "tarsius";
repo = "map-progress";
- rev = "3167eb218510953fb97e7d50948a625eaa3f0005";
- sha256 = "0pd6bh7wrrh59blp86a2jl2vi4qkzx49z0hy7dkc71ccg0wjsgz1";
+ rev = "1fb916159cd054c233ce3c80d9d01adfae640297";
+ sha256 = "1hbk35l9aljp4jqg8cv67q6b2jbcx0g665j90fygxqibrf6r52a8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5ed3335eaf0be7368059bcdb52c46f5e47c0c1a5/recipes/map-progress";
sha256 = "0zc5vii72gbfwbb35w8m30c8r9zck971hwgcn1a4wjczgn4vkln7";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ cl-lib ];
meta = {
homepage = "https://melpa.org/#/map-progress";
license = lib.licenses.free;
@@ -59443,12 +62799,12 @@
melpaBuild {
pname = "map-regexp";
ename = "map-regexp";
- version = "20130522.1403";
+ version = "20190127.1618";
src = fetchFromGitHub {
owner = "tarsius";
repo = "map-regexp";
- rev = "b8e06284ec1c593d7d2bda5f35597a63de46333f";
- sha256 = "0kk1sk3cr4dbmgq4wzml8kdf14dn9jbyq4bwmvk0i7dic9vwn21c";
+ rev = "ae2d1c22f786ad987aef3e319925e80160a887a0";
+ sha256 = "1ybhizafdhzm7fg8s6gm13fbrz1vnrc7ifq8gvrrm89wl3qi5z7f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/927314443ecc00d94e7125de669e82832c5a125c/recipes/map-regexp";
@@ -59549,12 +62905,12 @@
melpaBuild {
pname = "markdown-mode";
ename = "markdown-mode";
- version = "20180707.555";
+ version = "20190304.1919";
src = fetchFromGitHub {
owner = "jrblevin";
repo = "markdown-mode";
- rev = "b92f00d10e2582028d4306d3be8730add58e9fa1";
- sha256 = "0cwfc4l7rqwa9hgxz73lzm6czjqnif39dkcmacxb2gi9gpxwlxjn";
+ rev = "115f77df9755c6a453f3e5d9623ff885d207ea82";
+ sha256 = "0a26gz2m5v0jkawlqb723yiqsns4sg7inalr8fk1x08khnckkzyz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/74610ec93d4478e835f8b3b446279efc0c71d644/recipes/markdown-mode";
@@ -59626,32 +62982,24 @@
, lib
, markdown-mode
, melpaBuild
- , uuidgen
, web-server
, websocket }:
melpaBuild {
pname = "markdown-preview-mode";
ename = "markdown-preview-mode";
- version = "20171121.2323";
+ version = "20181213.539";
src = fetchFromGitHub {
owner = "ancane";
repo = "markdown-preview-mode";
- rev = "4ec15183fc9fadb9368902c9b77a2d0e1196d1c6";
- sha256 = "1zvpcnn0lafd6pvp5d42rid20dqi7zrpyai1q0kagpv3grbbyzc8";
+ rev = "f98d9114ca87e3e8e5ce70e601d13061eda15415";
+ sha256 = "1d1id99gagymvzdfa1mwqh8y3szm8ii47rpijkfi1qnifjg5jaq9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d3c5d222cf0d7eca6a4e3eb914907f8ca58e40f0/recipes/markdown-preview-mode";
sha256 = "1cam5wfxca91q3i1kl0qbdvnfy62hr5ksargi4430kgaz34bcbyn";
name = "recipe";
};
- packageRequires = [
- cl-lib
- emacs
- markdown-mode
- uuidgen
- web-server
- websocket
- ];
+ packageRequires = [ cl-lib emacs markdown-mode web-server websocket ];
meta = {
homepage = "https://melpa.org/#/markdown-preview-mode";
license = lib.licenses.free;
@@ -59711,6 +63059,32 @@
license = lib.licenses.free;
};
}) {};
+ markless = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "markless";
+ ename = "markless";
+ version = "20190306.202";
+ src = fetchFromGitHub {
+ owner = "shirakumo";
+ repo = "markless.el";
+ rev = "78632f86e3b5a1e3d74b2ab86f4c95b10e5eae94";
+ sha256 = "1hmf5qlxpli61a9pwg09hbsdn1lg4l8czvrvw09js3vrbv7xh3ds";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/5542e142d47f6f52839a44b8ee16327f88869f50/recipes/markless";
+ sha256 = "1a5kp46xj4b5kgcypacxcwhjjwi4m7f6shdda8l8my3s3x8ji5bj";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/markless";
+ license = lib.licenses.free;
+ };
+ }) {};
markup = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -59852,12 +63226,12 @@
melpaBuild {
pname = "mastodon";
ename = "mastodon";
- version = "20180305.1909";
+ version = "20190304.1944";
src = fetchFromGitHub {
owner = "jdenen";
repo = "mastodon.el";
- rev = "ae8dabda04e377a6ac22cb854e4844f68073f533";
- sha256 = "1avf2wkzd14dj27i9skm3mn3ipkr1zp93yrwxrk2q5kphj1qji2j";
+ rev = "5095797ef32b922d2a624fa6beb970b5e9cf5ca0";
+ sha256 = "0hwax6y9dghqwsbnb6f1bnc7gh8xsh5cvcnayk2sn49x8b0zi5h1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/809d963b69b154325faaf61e54ca87b94c1c9a90/recipes/mastodon";
@@ -59903,12 +63277,12 @@
melpaBuild {
pname = "math-symbol-lists";
ename = "math-symbol-lists";
- version = "20170221.553";
+ version = "20190102.1031";
src = fetchFromGitHub {
owner = "vspinu";
repo = "math-symbol-lists";
- rev = "1af8fdcab7941a62287c2d04b8876e1538f39c60";
- sha256 = "1kj9r2mvmvnj6m2bwhbj8fspqiq8fdrhkaj0ir43f7qmd4imblsj";
+ rev = "e15ec26a010b4f38111bc150c51ecb1a319f6bdb";
+ sha256 = "11jk0xdlc8zk2way1d85n2khmydzzvpjhh8bbjbdsv8d1z3j9yfh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fadff01600d57f5b9ea9c0c47ed109e058114998/recipes/math-symbol-lists";
@@ -59954,11 +63328,11 @@
melpaBuild {
pname = "matlab-mode";
ename = "matlab-mode";
- version = "20180125.1010";
+ version = "20180928.826";
src = fetchgit {
url = "https://git.code.sf.net/p/matlab-emacs/src";
- rev = "50266ff812607e55bddacd71a46d1b96e36fb0bd";
- sha256 = "1spyfnkw6j0v947m6yj6mv6ni1za0a9m9iycpjycpcb42q7d9rlg";
+ rev = "3fbca4259b2584bde08df07ba51944d7e3e2b4f4";
+ sha256 = "1diqx2k16iyj5a7kcc58kyl6mzw05cyq6ia4z3fciz716gkspgpi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6f78cff288077e04f8c9e4c2e5be9f3c33d8ff49/recipes/matlab-mode";
@@ -60056,12 +63430,12 @@
melpaBuild {
pname = "mb-url";
ename = "mb-url";
- version = "20161224.1806";
+ version = "20181225.924";
src = fetchFromGitHub {
owner = "dochang";
repo = "mb-url";
- rev = "129a0bb6a684be76fb9f09010e710065d0e5baaa";
- sha256 = "1apy7abjhdbgh8001rzv41q40bfl444rcz62lvgdwj3lg45zb8xc";
+ rev = "23078f2e59808890268401f294d860ba51bc71d9";
+ sha256 = "07b9w9vd22ma4s3qhplmg84sylihz920byyi9qa7dwj7b59d4avf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dd9a8ff6e094b061a7b9d790df1fd4086c5d0a9d/recipes/mb-url";
@@ -60134,12 +63508,12 @@
melpaBuild {
pname = "mbsync";
ename = "mbsync";
- version = "20180530.33";
+ version = "20181001.2340";
src = fetchFromGitHub {
owner = "dimitri";
repo = "mbsync-el";
- rev = "bca442138f24f20479b89bd5d77b012ab06f4232";
- sha256 = "1wb3wasfcqcwdlvhgr6y334mgjdkis1s6lf1bbypw9dzi1xmkj21";
+ rev = "f549eccde6033449d24cd5b6148599484850c403";
+ sha256 = "1pdj41rq3pq4jdb5pma5j495xj7w7jgn8pnz1z1zwg75pn7ydfp0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3ef6ffa53bb0ce2ba796555e39f59534fc134aa5/recipes/mbsync";
@@ -60160,12 +63534,12 @@
melpaBuild {
pname = "mc-extras";
ename = "mc-extras";
- version = "20180519.2139";
+ version = "20181109.935";
src = fetchFromGitHub {
owner = "knu";
repo = "mc-extras.el";
- rev = "fac7e42d03078b4ca0fa72f191995c727143a0d1";
- sha256 = "097rzzd3r43f406axpvf4xfc5fxpb3v2dcrlxk5axpvr0m31b0d1";
+ rev = "053abc52181b8718559d7361a587bbb795faf164";
+ sha256 = "16y48qrd20m20vypvys5jp4v4gc1qrqlkm75s1pk1r68i9zrw481";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/12747bb8603ebc09ce0873f3317a99e34d818313/recipes/mc-extras";
@@ -60217,12 +63591,12 @@
melpaBuild {
pname = "md4rd";
ename = "md4rd";
- version = "20180625.2236";
+ version = "20190312.1940";
src = fetchFromGitHub {
owner = "ahungry";
repo = "md4rd";
- rev = "3a6c5055330f1cad455cbeb6ad6f9eb4751a8309";
- sha256 = "1c0g6f6myllqz6mymqxbpi392fg1hvzas0ah2wmyw5ycmaafpz3d";
+ rev = "443c8059af4925d11c93a1293663165c52472f08";
+ sha256 = "1n6g6k4adzkkn1g7z4j27s35xy12c1fg2r08gv345ddr3wplq4ri";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/48d4a3b3337e16e68631409d1de0ce67ae22b837/recipes/md4rd";
@@ -60271,12 +63645,12 @@
melpaBuild {
pname = "meghanada";
ename = "meghanada";
- version = "20180717.1810";
+ version = "20190225.625";
src = fetchFromGitHub {
owner = "mopemope";
repo = "meghanada-emacs";
- rev = "1fe888ad929f0ebed9a8cde7bb0a605881e1386c";
- sha256 = "1b7cri71fikvyxcc6q9rci1zc4q45a1bvz00ks7gvx6w2sd7h5gd";
+ rev = "7ea4885b79224c024f5cde4bb7d6b98c77b84eda";
+ sha256 = "0zigc6f02qdv8fj5wfpw56dw1glk3q204qxyipazsv6pm62v0y01";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4c75c69b2f00be9a93144f632738272c1e375785/recipes/meghanada";
@@ -60296,12 +63670,12 @@
melpaBuild {
pname = "melancholy-theme";
ename = "melancholy-theme";
- version = "20170220.1248";
+ version = "20190406.1618";
src = fetchFromGitHub {
owner = "techquila";
repo = "melancholy-theme";
- rev = "a9e13ca7051731b3a2c2aece9f3e3033b9a5e41d";
- sha256 = "13wgh3w9wh1y1ynsbz4zi2vj14h8z1kj5vhq4w6szs0y0zzjb9zj";
+ rev = "a5fb97b52c56c612474fec4ec45472fe13bd4c20";
+ sha256 = "0syx0h8930j58bky14wnrba8iafzi3hdsb11kvsb48vdqv2minrq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8b8f708d1300d401697c099709718fcb70d5db1f/recipes/melancholy-theme";
@@ -60418,7 +63792,8 @@
license = lib.licenses.free;
};
}) {};
- mentor = callPackage ({ cl-lib ? null
+ mentor = callPackage ({ async
+ , cl-lib ? null
, fetchFromGitHub
, fetchurl
, lib
@@ -60428,19 +63803,19 @@
melpaBuild {
pname = "mentor";
ename = "mentor";
- version = "20170105.221";
+ version = "20190407.1142";
src = fetchFromGitHub {
owner = "skangas";
repo = "mentor";
- rev = "9a160d718b02a95b1bb24072cca87b4348e1e261";
- sha256 = "16n5dd00ajr2qqwm51v1whf2kmyr27mx30n3xlydf9np3f34hlax";
+ rev = "467c531f0c40ca924b3bb971e264727f7332e681";
+ sha256 = "1hjfw59wlkkqff2r7m81hcin6px6sdw8bfh2mnz0cbfs1gw2y15i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/083de4bd25b6b013a31b9d5ecdffad139a4ba91e/recipes/mentor";
sha256 = "0nkf7f90m2qf11l97zwvb114yrpbqk1xxr2bh2nvbx8m1c8nad9s";
name = "recipe";
};
- packageRequires = [ cl-lib seq xml-rpc ];
+ packageRequires = [ async cl-lib seq xml-rpc ];
meta = {
homepage = "https://melpa.org/#/mentor";
license = lib.licenses.free;
@@ -60453,16 +63828,16 @@
melpaBuild {
pname = "merlin";
ename = "merlin";
- version = "20180214.242";
+ version = "20190323.230";
src = fetchFromGitHub {
- owner = "the-lambda-church";
+ owner = "ocaml";
repo = "merlin";
- rev = "0a14a7df44cd8f5cea7928f3097b5bb5257cb61d";
- sha256 = "145r8bhvkar0fwajsg4msyg40na8ii0xbrwbi9b81cx1g17k5c7k";
+ rev = "1ab2b90f4508855ac0caab51a6a5dad3e48cdb00";
+ sha256 = "0cn46b2im7k2j3p8r34pmqmdrxxwls14l21mjjfll2fc329s3shr";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/b1b9bfd3164e62758dc0a3362d85c6627ed7cbf8/recipes/merlin";
- sha256 = "177cy9xcrjckxv8gvi1zhg2ndfr8cmsr37inyvpi5dxqy6d6alhp";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9338298a79b7f2d654df90b0f553aeed1428de13/recipes/merlin";
+ sha256 = "0r4wc5ann6239bagj364yyzw4y3lcpkl5nnn0vmx4hgkwdg509fn";
name = "recipe";
};
packageRequires = [];
@@ -60480,16 +63855,16 @@
melpaBuild {
pname = "merlin-eldoc";
ename = "merlin-eldoc";
- version = "20180630.1026";
+ version = "20190314.106";
src = fetchFromGitHub {
- owner = "khady";
+ owner = "Khady";
repo = "merlin-eldoc";
- rev = "6e1626d755a8bee0a03f89a951bdf69eaf4db5f9";
- sha256 = "1xa8dfdi7w8ip7m6n0cqz28p9zvqsshd76zg27g4pmhgv1n3fnkc";
+ rev = "09760346e34ac22f2b55f43f0e36a2865c3b8026";
+ sha256 = "12bba6f6qxi6azlafzhymqyaf57qi479n34crixmk8v69ivdch8y";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/a7130ec893175323775e887babbcec7a1e324c01/recipes/merlin-eldoc";
- sha256 = "0r4997813yz81zvmdgvr0xcp9c321h55z39lajpj1plmrs3c7bry";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/merlin-eldoc";
+ sha256 = "0bx383nxd97as0d362n1jn62k2rypxvxhcjasgwf0cr8vxr244fp";
name = "recipe";
};
packageRequires = [ emacs merlin ];
@@ -60506,12 +63881,12 @@
melpaBuild {
pname = "meson-mode";
ename = "meson-mode";
- version = "20170901.1135";
+ version = "20181115.1325";
src = fetchFromGitHub {
owner = "wentasah";
repo = "meson-mode";
- rev = "212d9f38a08074f1cb6e914e12b60bc52dcb8bee";
- sha256 = "1kv7413y5530frs1nrp0nl40h9j0idwp7vlg761r260200m8sl3v";
+ rev = "b507a87455af906e6c49aa4af70eba5b1d1af9ef";
+ sha256 = "046kf04vqq1wf9ncxq40fcjcgl18hk4vii5wl3m08rpvdwbnmfwr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4702a31ffd6b9c34f96d151f2611a1bfb25baa88/recipes/meson-mode";
@@ -60556,12 +63931,12 @@
melpaBuild {
pname = "meta-presenter";
ename = "meta-presenter";
- version = "20170425.1934";
+ version = "20190318.859";
src = fetchFromGitHub {
owner = "myTerminal";
repo = "meta-presenter";
- rev = "7ba8d30e36ce6de6e563c7f3a41a24d288787c48";
- sha256 = "0m23qsbai8j0bx0px7v3ipw92i4y8maxibna6zqrw3msv1j3s7cw";
+ rev = "3d8c762a7dd7ac39032a3601bd6a717f206e670d";
+ sha256 = "0r9zzmglmkkmxcqh0pdlg279mpd524k2rwn56kyvj5i3i8zw9rpl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b73e9424515b3ddea220b786e91c57ee22bed87f/recipes/meta-presenter";
@@ -60600,6 +63975,32 @@
license = lib.licenses.free;
};
}) {};
+ metamorph = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "metamorph";
+ ename = "metamorph";
+ version = "20180930.1328";
+ src = fetchFromGitHub {
+ owner = "AdamNiederer";
+ repo = "metamorph";
+ rev = "d9dc7037b7eed7b3fe85ea50e91f332e3f831514";
+ sha256 = "1zprgjh1wyqbpy1qvng57r6jm10k6vffpb6znm47fm8xx1h0s8k4";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/741982c7ce83a77d0b43d196eeac6e949dc5fd81/recipes/metamorph";
+ sha256 = "0mqzqwwzb4x2j6jh6acx5ni9z5k56586jv4n88d3fi4vry9k4mv3";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/metamorph";
+ license = lib.licenses.free;
+ };
+ }) {};
metascript-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -60634,16 +64035,16 @@
melpaBuild {
pname = "metaweblog";
ename = "metaweblog";
- version = "20171216.1840";
+ version = "20190211.1838";
src = fetchFromGitHub {
- owner = "punchagan";
+ owner = "org2blog";
repo = "metaweblog";
- rev = "aa14380eb7e7b879a0c16c96866b20a987cd3f2a";
- sha256 = "146w9laysdqbikpzr2gc9vnjrdsa87d8i13f2swlh1kvq2dn3rz5";
+ rev = "844c8b5b4483fa75378c4bec526d63cae0b211d9";
+ sha256 = "0rxqkj7r38vr4qjnc2dric9sjdjm6vgnv0c9vfcb29v17hkg3aah";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/metaweblog";
- sha256 = "10kwqnfafby4ap0572mfkkdssr13y9p2gl9z3nmxqjjy04fkfi8b";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/metaweblog";
+ sha256 = "0qgmcvq1fhgljia9ncjgvgrv0mzih0l9mglwbwcszn613wmx8bkg";
name = "recipe";
};
packageRequires = [ xml-rpc ];
@@ -60659,12 +64060,12 @@
melpaBuild {
pname = "mew";
ename = "mew";
- version = "20180709.1817";
+ version = "20190307.1729";
src = fetchFromGitHub {
owner = "kazu-yamamoto";
repo = "Mew";
- rev = "d4eac40c09ef349e09f0169bc2725d050dc8c7ad";
- sha256 = "03k2nw8v9xzani2sk37x4abbmljm5h2ixxpczhv8njpqfmy8rm8x";
+ rev = "0dacffb71bd0c8aa7e104658833c1d50776eb3a4";
+ sha256 = "00qq5aysjxv3a1b0x6k5idxvam9g5jzbrmiy25x32wih6a6abg33";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/362dfc4d0fdb3e5cb39564160de62c3440ce182e/recipes/mew";
@@ -60686,14 +64087,14 @@
ename = "mexican-holidays";
version = "20160109.1342";
src = fetchFromGitHub {
- owner = "shopClerk";
+ owner = "sggutier";
repo = "mexican-holidays";
rev = "43ced1f9e40a04be6927d1a1be64060f9be4f5c5";
sha256 = "0bhllmyk1r9y63jw5gx10v09791w33lc54qs31gcxbnss094l6py";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/17cf468b17eead32f38e0386e8ec60ecfe11b767/recipes/mexican-holidays";
- sha256 = "0awf4vv6mbp1xr92nsgdn513g4adqhp21k12q4fbm85b2l3jlspb";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/mexican-holidays";
+ sha256 = "0an6kkr2vwkqc9219rgn74683h7f4cmd1g74lirn0qhqcfcb5yrc";
name = "recipe";
};
packageRequires = [];
@@ -60710,12 +64111,12 @@
melpaBuild {
pname = "mgmtconfig-mode";
ename = "mgmtconfig-mode";
- version = "20180222.1257";
+ version = "20190324.1208";
src = fetchFromGitHub {
owner = "purpleidea";
repo = "mgmt";
- rev = "f01eea33e9b396f1e7501944216271d0d9b8df6f";
- sha256 = "19grypbx6kxgdlqnj1h7rz2clvrwk98z5sk9dar0077ncp2k1f80";
+ rev = "07f542b4d753fe2f182b5e139450217a633491f8";
+ sha256 = "0nbj3fh3wsl9065mad04c7avc2pq4lqrdng1xkwdng6l361f2wak";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4cf3dd70ae73c2b049e201a3547bbeb9bb117983/recipes/mgmtconfig-mode";
@@ -60736,12 +64137,12 @@
melpaBuild {
pname = "mhc";
ename = "mhc";
- version = "20180717.2009";
+ version = "20190116.2146";
src = fetchFromGitHub {
owner = "yoshinari-nomura";
repo = "mhc";
- rev = "e29e69ab2f282131039a63f56f48e39d56c175d9";
- sha256 = "0lxn4vg3qxzdxad1fv0ssnw4rjhzvrys4k3lqx87sbg28l9ykk77";
+ rev = "a0a7e01587c47b11f4aa87ac977ca43298a75570";
+ sha256 = "1wxyp4snkarbbrqb1a28hdf286cwf08v0fbi9pl9mw4q7sn598s2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d8d3efa0fcd6cd4af94bc99b35614ef6402cbdba/recipes/mhc";
@@ -60841,12 +64242,12 @@
melpaBuild {
pname = "migemo";
ename = "migemo";
- version = "20160924.741";
+ version = "20190111.2116";
src = fetchFromGitHub {
owner = "emacs-jp";
repo = "migemo";
- rev = "e4744efae1b2fdea2bbd2ceaff0f6ea0bb739f5a";
- sha256 = "12p50kg2h78qi8892jj4g3wa4fjm7gjiqf6qw52zyx3kvgwxgxwa";
+ rev = "09936ee27a5f3678fdf57b8a0faaa0ff150435cc";
+ sha256 = "0wfik7y3ybh4yrrlpydawx5zw0syv7wm7b1mckz2rbv3d863z0n5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2424b0328a0198a03359455abdb3024a8067c857/recipes/migemo";
@@ -60916,12 +64317,12 @@
melpaBuild {
pname = "mingus";
ename = "mingus";
- version = "20180712.2336";
+ version = "20190106.643";
src = fetchFromGitHub {
owner = "pft";
repo = "mingus";
- rev = "686d383f48b196c916c5fcb6ddc3bcff8a0c4b14";
- sha256 = "0vv6aqalbpshr0fadh248lirqa6a0dcixccby2kbvdsf79s7xzx8";
+ rev = "4223be618f57f10f18114a74393a71955b568884";
+ sha256 = "14i06i999wfpr0a0lvhnh6g4mm5xmawscjd9d7ibc055h94h3i2a";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6699927f1ded5c97f2ce1861f8e54a5453264cca/recipes/mingus";
@@ -61092,12 +64493,12 @@
melpaBuild {
pname = "minimal-theme";
ename = "minimal-theme";
- version = "20160608.322";
+ version = "20190113.1332";
src = fetchFromGitHub {
owner = "anler";
repo = "minimal-theme";
- rev = "430e0d3fc2044c16aa9f10961841febbd60df285";
- sha256 = "1rmcvdydgwppma1v2yajz6yzhns8bh3gdb09338jlk0nkp1akpfj";
+ rev = "063b4d8ca33d55d04c341f0b2b777ec241a3e201";
+ sha256 = "0lvg7iym6sxhgl4ab9a6x8c2mh2d32vkf0033bs3vphx657gra6l";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6f26b8281f9bd05e3c8f2ef21838275711e622c9/recipes/minimal-theme";
@@ -61119,12 +64520,12 @@
melpaBuild {
pname = "minions";
ename = "minions";
- version = "20180709.1012";
+ version = "20181030.1401";
src = fetchFromGitHub {
owner = "tarsius";
repo = "minions";
- rev = "2f5e73e15d0021e7ba26cf09f1cd2734b018fb69";
- sha256 = "12acfjmk6n40k5mb2hy1izbk483y83bc3d54r76l750sbm3kpdar";
+ rev = "d36d2445420460c81bcd4822d0bfcbafaec2c682";
+ sha256 = "0q2y37zfxlbfvgdn70ikg3abp8vljna4ir9nyqlz1awmz5i1c43s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/769a2167d7f6dfdbbfda058ddea036f80b97d230/recipes/minions";
@@ -61272,12 +64673,12 @@
melpaBuild {
pname = "mixed-pitch";
ename = "mixed-pitch";
- version = "20180410.917";
+ version = "20190307.1410";
src = fetchFromGitLab {
owner = "jabranham";
repo = "mixed-pitch";
- rev = "b6b1601c7a3eb9ab23e33192bc479bccc4dd5e7b";
- sha256 = "0g3mcbsjgcwg196ygj21i454ifyf0898r0xlkar1fqdl8lckb8zj";
+ rev = "15bb9ec6d8be0812a46917205be6c3a1c78f68ff";
+ sha256 = "1458sy5b6bis1i0k23jdqk6hfqg0ghk637r3ajql2g19ym48rf58";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7d3c7af03e0bca3f834c32827cbcca29e29ef4db/recipes/mixed-pitch";
@@ -61376,12 +64777,12 @@
melpaBuild {
pname = "mmt";
ename = "mmt";
- version = "20171231.2219";
+ version = "20181231.2307";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "mmt";
- rev = "b8cc8d29e185c15a1e43ecc2a78e36a6d2f86b8f";
- sha256 = "17v26116g05py2yd24a5rjlr2lbdacahglxar10k5291v9i4msdw";
+ rev = "db0f27b10bba0b26cdd208e9f6467bf455021e48";
+ sha256 = "09imvxvbz57vfk9m1ljz81srllfr97p0k8n753g3qxs7p1ipaji5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d1137bb53ecd92b1a8537abcd2635602c5ab3277/recipes/mmt";
@@ -61426,12 +64827,12 @@
melpaBuild {
pname = "mo-vi-ment-mode";
ename = "mo-vi-ment-mode";
- version = "20131028.2333";
+ version = "20181216.1806";
src = fetchFromGitHub {
owner = "AjayMT";
repo = "mo-vi-ment";
- rev = "6386db71640ed9415bbfa5f42296335f5da7d454";
- sha256 = "0rkjkr5ak75s2h8293ifgvq063xb1lsf0z0679bmvymq6li8gz6h";
+ rev = "e8b525ffc5faa31d36ecc5496b40f0f5c3603c08";
+ sha256 = "16ic8yhjfk0ijlcw7a270p7953w750qza3xdbf4vygkiqqkxiv84";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/85487df36bab0a4d2ea034dbe01c8f095a7efddc/recipes/mo-vi-ment-mode";
@@ -61559,12 +64960,12 @@
melpaBuild {
pname = "modalka";
ename = "modalka";
- version = "20171231.2213";
+ version = "20181231.2300";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "modalka";
- rev = "e69ec8fa01e86cb789f7f2b27b6d5a47e1ca3069";
- sha256 = "10yn56vamcfblilsnfqfagssr4060gr7qbpnqa2fjqv1l8fg6jrf";
+ rev = "6f07d94f9315d8f25adcfd69f8416780d96626af";
+ sha256 = "1avjspidddrsqg16ah6gk4vc728xfnczpcr1a45sq34jnw9wpi8q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fa0a02da851a603b81e183f461da55bf4c71f0e9/recipes/modalka";
@@ -61586,12 +64987,12 @@
melpaBuild {
pname = "mode-icons";
ename = "mode-icons";
- version = "20170216.620";
+ version = "20180910.804";
src = fetchFromGitHub {
owner = "ryuslash";
repo = "mode-icons";
- rev = "dd0a161272823294f2b9afb8b919fd11323ef6b4";
- sha256 = "1d1rhqi0adac8jgz977jrnbnf9kan8cwr1fghlxb2q7p33kp1d29";
+ rev = "26138d825cba7e6bd882707a909505d5536acb9b";
+ sha256 = "1z62g5dhv36x5an89za8h5vdab0ss7af13p42kjnjrs54f50pv9f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0fda2b54a0ff0b6fc3bd6d20cfcbbf63cae5380f/recipes/mode-icons";
@@ -61611,12 +65012,12 @@
melpaBuild {
pname = "mode-line-bell";
ename = "mode-line-bell";
- version = "20171231.1939";
+ version = "20181028.2216";
src = fetchFromGitHub {
owner = "purcell";
repo = "mode-line-bell";
- rev = "dd5c6d85079a25015704cc1132be3dc5388bf48b";
- sha256 = "152qaibhkiw9cij1k4m27mlsvnsvpdk113nsrf6d37czynfly6b3";
+ rev = "4985ba42f5a19f46ddbf9b3622453a9694995ce5";
+ sha256 = "13n3di05lgqfm4f8krn3p36yika5znhymp5vr2d747x54hqmgh7y";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/26f19808655b0242a1e9e5e5d41f7f794542e243/recipes/mode-line-bell";
@@ -61661,12 +65062,12 @@
melpaBuild {
pname = "modern-cpp-font-lock";
ename = "modern-cpp-font-lock";
- version = "20180110.1231";
+ version = "20190331.828";
src = fetchFromGitHub {
owner = "ludwigpacifici";
repo = "modern-cpp-font-lock";
- rev = "9b10e1831bac34685be89e32e83ed969c4bac683";
- sha256 = "0csaky9k24hd3qjhb3kyraycvlsdkjhmw6bbd36z0q0ac56sd2sg";
+ rev = "02f104701bc34c146d22e3143ae59ef362999098";
+ sha256 = "14vxxvvm12jnq4llb759h8y4w3cv71d3xic1mbp0jmyd0j4dkqzp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4bfc2386049adfe7a8e20da9b69fb73d6cb71387/recipes/modern-cpp-font-lock";
@@ -61837,12 +65238,12 @@
melpaBuild {
pname = "monky";
ename = "monky";
- version = "20180716.720";
+ version = "20190402.825";
src = fetchFromGitHub {
owner = "ananthakumaran";
repo = "monky";
- rev = "f1aaea2b8334d5870c8179f2c70b4088882caff8";
- sha256 = "1ibfigbkir4y87wl7nhz6z5fb13gqmhiby1315yqw8p7d604am56";
+ rev = "bb2fbb43c9b1894160ca47560338a0be30cc0233";
+ sha256 = "0ai8gcrd66jrhxmmwysfaqxpl0347qd9xdqys82284528hd89ms9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9b33d35e3004f3cc8a5c17aa1ee07dd21d2d46dc/recipes/monky";
@@ -61913,12 +65314,12 @@
melpaBuild {
pname = "monokai-theme";
ename = "monokai-theme";
- version = "20180402.221";
+ version = "20180730.629";
src = fetchFromGitHub {
owner = "oneKelvinSmith";
repo = "monokai-emacs";
- rev = "1143c072f5153ae1a69807e5e8af163069b947d2";
- sha256 = "0dy8c3349j7fmp8052hbgvk0b7ldlv5jqpg0paq1i0hlypivd30i";
+ rev = "f4ef092129f4a35edaee0a9b2219c17e86309730";
+ sha256 = "1dshz153y25pmff0pn2rsvgxsv0jv0pjn5cpzvr5x11b65ijwshy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2bc9ce95a02fc4bcf7bc7547849c1c15d6db5089/recipes/monokai-theme";
@@ -61939,12 +65340,12 @@
melpaBuild {
pname = "monotropic-theme";
ename = "monotropic-theme";
- version = "20180218.357";
+ version = "20181015.530";
src = fetchFromGitHub {
owner = "caffo";
repo = "monotropic-theme";
- rev = "b46e94a712e01cebe69a6f7d950e91d7c7dd1b66";
- sha256 = "0lmyfqi6c5f2cr9ha1l2qnc4ayigb1zj9gz8xi5xxadhad3zymwh";
+ rev = "36df566aa8225e303f6c9d90c00740dd678a415e";
+ sha256 = "05n8s3719f6yrh4fi5xyzzlhpsgpbc60mmfmzycxlb4sinq9bfks";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/38222d109ece0030b0bfafb242aa100694b2bfcf/recipes/monotropic-theme";
@@ -61964,12 +65365,12 @@
melpaBuild {
pname = "monroe";
ename = "monroe";
- version = "20180703.1046";
+ version = "20190109.547";
src = fetchFromGitHub {
owner = "sanel";
repo = "monroe";
- rev = "36fd5b250de51f8bfa62bbe6ce35e8690e0ad120";
- sha256 = "1aw823a5llv196rzqhqvh7bk2npwzy1fgaj24xv0x2g5fk9n85hv";
+ rev = "2f472fdc09c1b36c291ddb5ed9aecc331fd7e082";
+ sha256 = "1g9v7z2bk2vcknpff31y9pf6cw8xrb5hxsh8cjci7i5w2abp7qbj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/590e5e784c5a1c12a241d90c9a0794d2737a61ef/recipes/monroe";
@@ -61990,12 +65391,12 @@
melpaBuild {
pname = "moody";
ename = "moody";
- version = "20180403.549";
+ version = "20190203.947";
src = fetchFromGitHub {
owner = "tarsius";
repo = "moody";
- rev = "adf652f35cba1bb3d0f254e1905e2deeeb0fbdba";
- sha256 = "1zspq29n60r0kd9fy7d50zdypljigwcjb0qa5gkwiipnhpcnf9bp";
+ rev = "e0975e844876f0962b2e9481c26739397bd23541";
+ sha256 = "0jci21ycsyf1mblcv8vbii4wisw1zcs15q5xwld7ai24kgj70269";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/63521fe6a1e540544a07231cc94144439e8caea7/recipes/moody";
@@ -62016,12 +65417,12 @@
melpaBuild {
pname = "moom";
ename = "moom";
- version = "20180618.1245";
+ version = "20180909.2138";
src = fetchFromGitHub {
owner = "takaxp";
repo = "moom";
- rev = "54b50eac555c9195ad39060e31fd4aac5662b5fd";
- sha256 = "1xxxwy67fcgll6m0wiypv3r85vg45g8f6fkhx5m52cs3w8iav7il";
+ rev = "a8820f19a8168ab395ba835872606280ad96916d";
+ sha256 = "1lpkmbabw9n50hf7yr6n4aim8x0km1wa15mpf7mv9w91ca2blg5d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c55081230ee02346ed02e0ab19ee2302e7b9ffa7/recipes/moom";
@@ -62484,12 +65885,12 @@
melpaBuild {
pname = "mpdel";
ename = "mpdel";
- version = "20180606.512";
+ version = "20190124.621";
src = fetchFromGitHub {
owner = "mpdel";
repo = "mpdel";
- rev = "a1e05828e3bc03679530b4cfff1306706171cb78";
- sha256 = "1avfhkklhkkazy1b0ymcmc0walrs29ak36vbvaxs480r5s16dkjd";
+ rev = "ad63914b95b5655b873341a778b98896d8de5ad8";
+ sha256 = "1znv7mbdjhz6vggzyj7ys0014gsvqd16b0hgvngbhjdrk8cm5a5q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bb25443752e18e47afc63d5497cc5052c388a607/recipes/mpdel";
@@ -62611,6 +66012,33 @@
license = lib.licenses.free;
};
}) {};
+ ms-python = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , lsp-mode
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ms-python";
+ ename = "ms-python";
+ version = "20190318.1929";
+ src = fetchFromGitHub {
+ owner = "xhcoding";
+ repo = "ms-python";
+ rev = "5412bb664b5c8d7fca1a98ccb50ffc5a2592a75c";
+ sha256 = "1wp1vhll9wsr5wpq6d2gjzc9nwvn6n61x80kmprr7m1mr6zav9bk";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6373142d80e84db8dec47abd0cdc562352b16681/recipes/ms-python";
+ sha256 = "1zws8vsxmiwiy4ndxlnl8hn98gfkhf50w7mvq9plr4z6z1adzdi0";
+ name = "recipe";
+ };
+ packageRequires = [ emacs lsp-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/ms-python";
+ license = lib.licenses.free;
+ };
+ }) {};
msvc = callPackage ({ ac-clang
, cedet ? null
, cl-lib ? null
@@ -62729,12 +66157,12 @@
melpaBuild {
pname = "mu4e-conversation";
ename = "mu4e-conversation";
- version = "20180722.159";
+ version = "20190305.836";
src = fetchFromGitLab {
owner = "ambrevar";
repo = "mu4e-conversation";
- rev = "223cc66e99c7665326e3d991d6d383cb0d7512bb";
- sha256 = "1ncawxcgsnk6ila5h30ka66x350xnkpxadlpnszbf3lc3w2scxjp";
+ rev = "fc3c9d3aca3cfae87001f95d505fab4fed597df0";
+ sha256 = "06br06ld9brvki53jrw2zsarz1fnr4ajd7va9yb6y3sphphz0vc6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7638aecc7a2cd4b1646c6e32fe83e18ef212bbaa/recipes/mu4e-conversation";
@@ -62756,12 +66184,12 @@
melpaBuild {
pname = "mu4e-jump-to-list";
ename = "mu4e-jump-to-list";
- version = "20180425.1132";
+ version = "20190129.1548";
src = fetchFromGitLab {
owner = "wavexx";
repo = "mu4e-jump-to-list.el";
- rev = "e336ffe84b55edaaf4e48040d4d9156a9f4c881e";
- sha256 = "0ff7a64vk0kd1sl52ncwj2xf3sh0kb0yln1cmdxdz0hyfsnc8d1h";
+ rev = "b63360eab8975acce04e803a5919abbe2daf863c";
+ sha256 = "1f7vxkv60smi2zjcg3bl8l7wjhrc35980wprmiy8568lvin6afbh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c1cf98dff029d494007fe25d29bd8bcfecc5b8e6/recipes/mu4e-jump-to-list";
@@ -62943,11 +66371,11 @@
melpaBuild {
pname = "multi-project";
ename = "multi-project";
- version = "20171217.1211";
+ version = "20190217.832";
src = fetchhg {
url = "https://bitbucket.com/ellisvelo/multi-project";
- rev = "a6e7c1542c0b";
- sha256 = "1wh7xlas6chdliya847092j5rkngxxg1m9a98y2r782ywgyl7xv6";
+ rev = "13bd84412236";
+ sha256 = "1i97m9iyslg34vbg2aqjy4hzad78qsi0jjkh83xgrdn0hax2x9wy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/multi-project";
@@ -62969,12 +66397,12 @@
melpaBuild {
pname = "multi-run";
ename = "multi-run";
- version = "20180122.709";
+ version = "20190401.1458";
src = fetchFromGitHub {
owner = "sagarjha";
repo = "multi-run";
- rev = "87d9eed414999fd94685148d39e5308c099e65ca";
- sha256 = "0m4wk6sf01b7bq5agmyfcm9kpmwmd90wbvh7fkhs61mrs86s2zw8";
+ rev = "74905979f35e06fff4046cd26542bcb1e4f08cb1";
+ sha256 = "16ifp19qh5jy6vvqw2cyyym9sd810n2gdhpjl8vws2svnxrh1mba";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e05ad99477bb97343232ded7083fddb810ae1781/recipes/multi-run";
@@ -63095,12 +66523,12 @@
melpaBuild {
pname = "multiple-cursors";
ename = "multiple-cursors";
- version = "20180615.518";
+ version = "20190317.511";
src = fetchFromGitHub {
owner = "magnars";
repo = "multiple-cursors.el";
- rev = "9c49874fa444a4e7255ec05f62c01daed31c7b09";
- sha256 = "176jyz5sfxn9sp94ymd8ksimmribhdrw2fr7wpwyf4wi17ksvxq4";
+ rev = "fc6a6a74626b8458f2a36d802165a7f74114fafd";
+ sha256 = "0rya3zdbs9z8f8pqr1nbsri30m76iyr5fbi0wvh0y1xyr93y33j3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a5f015e6b88be2a5ded363bd882a558e94d1f391/recipes/multiple-cursors";
@@ -63122,12 +66550,12 @@
melpaBuild {
pname = "multitran";
ename = "multitran";
- version = "20180320.956";
+ version = "20190402.1304";
src = fetchFromGitHub {
owner = "zevlg";
repo = "multitran.el";
- rev = "d826eff6ada28799a9ff6c8a4c2884b2ef1e36fb";
- sha256 = "0rk8fidq8fp9k4m21wvkld3w8g13nbfpxnj10g35c16n5wa0ydkb";
+ rev = "a0521a3455f95638ab4c37ac112026928eab09a2";
+ sha256 = "0i7wy3g229yssf0n75cch4d3sk73br7673razws5dzrwhmmvi3nb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d665759fa6491b77103920a75c18a561f6800c1c/recipes/multitran";
@@ -63271,6 +66699,32 @@
license = lib.licenses.free;
};
}) {};
+ mutt-mode = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "mutt-mode";
+ ename = "mutt-mode";
+ version = "20190302.715";
+ src = fetchFromGitLab {
+ owner = "flexw";
+ repo = "mutt-mode";
+ rev = "92763c5ff9abbf4ef91ce15fa7cc6b23da1cfa2d";
+ sha256 = "0n04500kr4d3qg6g98nzmdjcdy7qqs5r7f9cbi50r15jr9ihsjvx";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/7d9da58f247dee4f06cbcf6ed532134bc474d309/recipes/mutt-mode";
+ sha256 = "0k1r2lsh8s054aapyf7diki00sxf1wdm01cavlqxbvv3zg2gym8d";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/mutt-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
mvn = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -63278,12 +66732,12 @@
melpaBuild {
pname = "mvn";
ename = "mvn";
- version = "20160211.743";
+ version = "20181002.917";
src = fetchFromGitHub {
owner = "apg";
repo = "mvn-el";
- rev = "8a65b4eb88c9801aa3bff1921b600c72dfb8791a";
- sha256 = "1jg3xrk44lspxli0zr02jcsl8phj0ns7ly3dkd7rx2wgsk69ari3";
+ rev = "ffa40235b7dabb6c6c165f64f32a963cde8031f0";
+ sha256 = "0ximk0aan7jqn5x7fk4pj35bxhi6zaspvyxrmac9kxaiz8znwffr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/mvn";
@@ -63329,12 +66783,12 @@
melpaBuild {
pname = "mwim";
ename = "mwim";
- version = "20180227.852";
+ version = "20181110.1100";
src = fetchFromGitHub {
owner = "alezost";
repo = "mwim.el";
- rev = "462207227b98a6a4356d51419f5ad5ba9356e5cf";
- sha256 = "06lw6064i82daasgm87gm58d142pypqc1q3cnx1cm35hyj4skd32";
+ rev = "b4f3edb4c0fb8f8b71cecbf8095c2c25a8ffbf85";
+ sha256 = "0l3k611gp9g2x2vfmh92wnhnda81dslpwwpb8mxmzk308man77ya";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b7e1aa2fa1294b27ed7b6c5bdd5844fa5c37df72/recipes/mwim";
@@ -63363,8 +66817,8 @@
sha256 = "0ci1kdc7qs04yny6sxhbncb3d4gzcsdhk2w51phpb8m2rilm0xgl";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/08911f0409c238d009c22051ede04a8d4cdcafa9/recipes/mxf-view";
- sha256 = "08xyfi74pja2cyfmhigq83yxwfhf9k1797wfz7hrxx9zw6kqa840";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/mxf-view";
+ sha256 = "1a8hlp0r04p1cww3dmsqdxlm3ll522wjb0rnmj80d7mqizkbf52p";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -63460,12 +66914,12 @@
melpaBuild {
pname = "mysql-to-org";
ename = "mysql-to-org";
- version = "20180123.714";
+ version = "20181012.1334";
src = fetchFromGitHub {
owner = "mallt";
repo = "mysql-to-org-mode";
- rev = "2526205ad484ad3fa38d41e7d537ace38c27645c";
- sha256 = "1yinix08mzr7v2jm3yx1j3h15cw7i202wi100nmnmvqrylpd9zr2";
+ rev = "a8a0c15b04c9a9e9d936908731bf43e6faf81fa8";
+ sha256 = "0qi2q3ggq7fjwxl8ir6dbysfm31dzvcsp0nhm6xrk8gv6xfsyvlh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/mysql-to-org";
@@ -63512,12 +66966,12 @@
melpaBuild {
pname = "myterminal-controls";
ename = "myterminal-controls";
- version = "20170425.1936";
+ version = "20190331.2104";
src = fetchFromGitHub {
owner = "myTerminal";
repo = "myterminal-controls";
- rev = "59ff3a02e34969a2ac608906937cb65cb514f9f1";
- sha256 = "11b0m09n1qqhjbdmcilb1g1408k17700qn37m3wavjrcjvdhnd5n";
+ rev = "df144b269bc274162602e50c692be20ac9b90547";
+ sha256 = "02bd47rx2ykz5hhrf1szcqz7s9r5fxz7n3hnwlqap2r6xcv6cpvk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4a82a45d9fcafea0795f832bce1bdd7bc83667e2/recipes/myterminal-controls";
@@ -63585,6 +67039,32 @@
license = lib.licenses.free;
};
}) {};
+ named-timer = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "named-timer";
+ ename = "named-timer";
+ version = "20181120.1424";
+ src = fetchFromGitHub {
+ owner = "DarwinAwardWinner";
+ repo = "emacs-named-timer";
+ rev = "670b81e3eddef2e7353a4eedc9553a85306445db";
+ sha256 = "1inbizxlfgndwxsn8cwnpf4vm42rby7pkjqxyzl7ldq4qln7q8v1";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3e8248bab40fddc97fe48dbd103bc2aa51eb287f/recipes/named-timer";
+ sha256 = "1k2gkm193fh02vsj8h9kn0y1azispcz1b3ywwmb3cbif51l956g3";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/named-timer";
+ license = lib.licenses.free;
+ };
+ }) {};
nameframe = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -63825,12 +67305,12 @@
melpaBuild {
pname = "naquadah-theme";
ename = "naquadah-theme";
- version = "20180212.440";
+ version = "20190225.627";
src = fetchFromGitHub {
owner = "jd";
repo = "naquadah-theme";
- rev = "999056526db5095ce600c83672fc80cb744bd93e";
- sha256 = "1f10598m4vcpr4md6hpdvv46zi6159rajxyzrrlkiz0g94v8y6rl";
+ rev = "430c3b7bd51922cb616b3f60301f4e2604816ed8";
+ sha256 = "0z2dn05xgbdfw6rwgsq31rm5dr098dk411qk83fbx2bkdxxfr60w";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/671afe0ff3889ae8c4b2d7b8617a3a25c16f3f0f/recipes/naquadah-theme";
@@ -64006,12 +67486,12 @@
melpaBuild {
pname = "navi-mode";
ename = "navi-mode";
- version = "20180515.1948";
+ version = "20190101.1723";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "navi";
- rev = "7c3fd1a9b520300abfdb1b7c3de21403e81a95bf";
- sha256 = "1k5g3ij6rq20jllb7w21sp068lvcc2cjrxm2yq76bjaajbfsa501";
+ rev = "d3b66180e93e009c1bae352a7e74edf58f81487e";
+ sha256 = "1dcvvkl6cm3f81l6abnzbwnbc7rymchp2dlswsmmykxyrxsabfdk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8edf78a0ecd2ff8e6e066b80751a31e11a068c3f/recipes/navi-mode";
@@ -64136,12 +67616,12 @@
melpaBuild {
pname = "neato-graph-bar";
ename = "neato-graph-bar";
- version = "20171230.1753";
+ version = "20181130.849";
src = fetchFromGitLab {
owner = "RobertCochran";
repo = "neato-graph-bar";
- rev = "c59f15ed9a40aecc174aa22c4bbfa7978e182705";
- sha256 = "0bdgsxdlwpkd3hjnw1jmj30slakzmj2pinj3pyr5qqba9apxnvri";
+ rev = "a7ae35afd67911e8924f36e646bce0d3e3c1bbe6";
+ sha256 = "0sx2m2j00xhcb8l7fw595zsn9wjhcj4xb163rjqd3d1wjrk6fpn8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/49c5bd4e1506a28ada9856e5f70e520890123d16/recipes/neato-graph-bar";
@@ -64212,12 +67692,12 @@
melpaBuild {
pname = "neotree";
ename = "neotree";
- version = "20180616.903";
+ version = "20181121.1226";
src = fetchFromGitHub {
owner = "jaypei";
repo = "emacs-neotree";
- rev = "4f8d80fd51c712df7b11ae8491be3527db46f612";
- sha256 = "04w784pln671nmji7hwyka1vaj20114gfxyh513glhn78by2y5s1";
+ rev = "c2420a4b344a9337760981c451783f0ff9df8bbf";
+ sha256 = "1wfx37kvsfwrql8zs2739nx7wb51m26vwlcz1jygbrb62n6wq14k";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9caf2e12762d334563496d2c75fae6c74cfe5c1c/recipes/neotree";
@@ -64238,12 +67718,12 @@
melpaBuild {
pname = "nerdtab";
ename = "nerdtab";
- version = "20180527.408";
+ version = "20180810.2039";
src = fetchFromGitHub {
owner = "casouri";
repo = "nerdtab";
- rev = "7af72c3d798ec3a44e6bc8cec18200198192ad9a";
- sha256 = "0n8av79pdq7as45pfd81pffrpg1wrd3ppdk7zd0i85rmyknnix7r";
+ rev = "601d531fa3748db733fbdff157a0f1cdf8a66416";
+ sha256 = "0l9pbgpp90rhji42zmcn8rlp6pnhkplnpn8w6xflw51iwhdkm1rb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/59bc273db1d34997ea5d51cc6adc33ec785bc7f3/recipes/nerdtab";
@@ -64265,12 +67745,12 @@
melpaBuild {
pname = "netease-music";
ename = "netease-music";
- version = "20180429.1822";
+ version = "20181028.554";
src = fetchFromGitHub {
owner = "nicehiro";
repo = "netease-music";
- rev = "aecf451fd69f9faa9f86232550ebf8ced5a48254";
- sha256 = "0cb5adrnprlhrpcw06wi84fiva3mwac92rxfi5pgcw9ga213qhy8";
+ rev = "31c31cff44d2889c0456ac11d5d38227f15f03b6";
+ sha256 = "0fwph4vyp0w4ir2g9bvvmspsgwpl9wqpn43x36y8ihgb3n32wcw8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ca3d4a8f8d9080e26a8fe2c38c0001d5cfc3c88c/recipes/netease-music";
@@ -64445,12 +67925,12 @@
melpaBuild {
pname = "ng2-mode";
ename = "ng2-mode";
- version = "20180520.1731";
+ version = "20181211.1610";
src = fetchFromGitHub {
owner = "AdamNiederer";
repo = "ng2-mode";
- rev = "177248bca3787fabab70f3026ccf390395171f0d";
- sha256 = "1s6nvjby3vxh0sfmxg4c43vj9fkr8358v8plqvczpnjk3jxk4xvm";
+ rev = "aea614669669b40b67484d1c7dc50bd0a3efc011";
+ sha256 = "19cmv9lxkmjfi6qiblwmy4r144hfk668l4pgbcvgs72lmrg26ik4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a856ecd8aca2d9232bb20fa7019de9e1dbbb19f4/recipes/ng2-mode";
@@ -64605,12 +68085,12 @@
melpaBuild {
pname = "nim-mode";
ename = "nim-mode";
- version = "20180516.1309";
+ version = "20181219.923";
src = fetchFromGitHub {
owner = "nim-lang";
repo = "nim-mode";
- rev = "35f4b2cb2d4c142f6f7f0e3ffb06c87b81bb8c26";
- sha256 = "1c4gl09sm8hiwa308xifj4vnnhiv3hvqs7zk0cz245k8pba612ih";
+ rev = "a508b4b22497194bc36ffff3744c49977ecd96dc";
+ sha256 = "1p7q3vw8xhqgy6d5nnn23kjc66r53z7hxlbz35nr0jcz5ysnrk65";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dc2ccb5f24b9d55c77eaa7952a9e6a2e0ed7be24/recipes/nim-mode";
@@ -64623,26 +68103,27 @@
license = lib.licenses.free;
};
}) {};
- nimbus-theme = callPackage ({ fetchFromGitHub
+ nimbus-theme = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "nimbus-theme";
ename = "nimbus-theme";
- version = "20180606.1936";
+ version = "20190405.1111";
src = fetchFromGitHub {
owner = "m-cat";
repo = "nimbus-theme";
- rev = "d4adcf0e821648aef066f9b97808a3c691615749";
- sha256 = "0hvyvc5pvv0n4dv4y1h09vq84gzbf2xjavpiryfxb100hcjicjss";
+ rev = "5d957b3e8939cebd008b113c8c4d581a66aba36c";
+ sha256 = "0msdb2pyr51430crcnjvsfajd9j4cbk1l09f5r8z3nqadp5df6cj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fc0e6b456b76e2379c64a86ad844362c58146dc6/recipes/nimbus-theme";
sha256 = "1hy4rc1v5wg7n6nazdq09gadirb0qvn887mmdavwjnnac45xyi18";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/nimbus-theme";
license = lib.licenses.free;
@@ -64656,16 +68137,16 @@
melpaBuild {
pname = "ninja-mode";
ename = "ninja-mode";
- version = "20141203.2159";
+ version = "20181024.739";
src = fetchFromGitHub {
- owner = "martine";
+ owner = "ninja-build";
repo = "ninja";
- rev = "d3238428c6ed77eb08dfc57854325634401481e2";
- sha256 = "05scnv74g9m70dfj1y71iw0dw38zbb77h2s7kciicr9pdrvdg8d4";
+ rev = "d2045dedc39885e702176b2b5e05bc77024ae3aa";
+ sha256 = "0jmvjpq7fabb0bjdd4dncb1vdfizya0rjs57d6wvgc8hbgfjsvj8";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/aed2f32a02cb38c49163d90b1b503362e2e4a480/recipes/ninja-mode";
- sha256 = "1m7f25sbkz8k343giczrnw2ah5i3mk4c7csi8kk9x5y16030asik";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/ninja-mode";
+ sha256 = "1v6wy9qllbxl37fp9h47000lwp557qss6fdjb3a1f20msg8f70av";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -64709,12 +68190,12 @@
melpaBuild {
pname = "nix-mode";
ename = "nix-mode";
- version = "20180629.1501";
+ version = "20190119.125";
src = fetchFromGitHub {
owner = "NixOS";
repo = "nix-mode";
- rev = "57ac40d53b4f4fe0d61fcabb41f8f3992384048e";
- sha256 = "0l5m5p3rsrjf7ghik3z1bglf255cwliglgr3hiv6qpp121k4p0ga";
+ rev = "1e53bed4d47c526c71113569f592c82845a17784";
+ sha256 = "172s5lxlns633gbi6sq6iws269chalh5k501n3wffp5i3b2xzdyq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e1870d786dbfac3b14386c8030e06f2d13ab9da6/recipes/nix-mode";
@@ -64762,12 +68243,12 @@
melpaBuild {
pname = "nix-update";
ename = "nix-update";
- version = "20180424.1748";
+ version = "20190124.1135";
src = fetchFromGitHub {
owner = "jwiegley";
repo = "nix-update-el";
- rev = "d92b2c190dbaeb16751be724fe381f8a796c424c";
- sha256 = "0lqhc7nnw96pz9alq75w6zmjb6carmaak1g2cf4csslqbihnbriz";
+ rev = "fc6c39c2da3fcfa62f4796816c084a6389c8b6e7";
+ sha256 = "01cpl4w49m5dfkx7l8g1q183s341iz6vkjv2q4fbx93avd7msjgi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c59e828d4cad3d75344b34b9666349250e53b6ea/recipes/nix-update";
@@ -64816,12 +68297,12 @@
melpaBuild {
pname = "nlinum-hl";
ename = "nlinum-hl";
- version = "20170613.1748";
+ version = "20190301.1317";
src = fetchFromGitHub {
owner = "hlissner";
repo = "emacs-nlinum-hl";
- rev = "46e26d1e3d5bfe9a3f79a5cce21f3c442ac10da8";
- sha256 = "1yi3rg6j8r0c7a70dghj838vfslwdvjcy6w7735pfbdb073mpzfs";
+ rev = "dc6b365a58e06c7d637a76a31c71a40b20da8b56";
+ sha256 = "1fvvyc77iggil9mzy8hd4vx8xw96bkfx6pmlb9ami428qp8r45g7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b13a886535a5c33fe389a6b616988b7377249625/recipes/nlinum-hl";
@@ -64949,12 +68430,12 @@
melpaBuild {
pname = "no-littering";
ename = "no-littering";
- version = "20180620.600";
+ version = "20190224.1309";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "no-littering";
- rev = "f1ac5274ba49e3533c356c4cd6d5f8ebed0ec517";
- sha256 = "07w2x6s29332m3q1cy1igbjqpsyfq3l9x9gk0chn4n0c93wa0174";
+ rev = "974f105ea17729aa77a5bf1b4d70cb6e09b4cd6a";
+ sha256 = "08bgcj8n72zcyzx1qlg4pksnp6ppnzw51a57fw677bri4awny6pi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/57a2fb9524df3fdfdc54c403112e12bd70888b23/recipes/no-littering";
@@ -64968,6 +68449,7 @@
};
}) {};
noaa = callPackage ({ cl-lib ? null
+ , dash
, emacs
, fetchFromGitHub
, fetchurl
@@ -64977,19 +68459,19 @@
melpaBuild {
pname = "noaa";
ename = "noaa";
- version = "20180419.1133";
+ version = "20190202.834";
src = fetchFromGitHub {
owner = "thomp";
repo = "noaa";
- rev = "e99f7702512de49f93138dce6e0a7cfe2bc5eed3";
- sha256 = "1fhq6bly76qj67dbkbdlhl0icqpl4h1k3lip9ig64d8fqykpi8al";
+ rev = "532eb14328027ee29e124768feec23a8ef7ee798";
+ sha256 = "1qc9im01fw7k9907a9d2a87hndyyn3sk1kw31cylsvrzsb7ss9f9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1272203f85375e50d951451bd5fd3baffd57bbfa/recipes/noaa";
sha256 = "11hzpmgapmf6dc5imvj5jvzcy7hfddyz74lqmrq8128i72q1sj0v";
name = "recipe";
};
- packageRequires = [ cl-lib emacs request ];
+ packageRequires = [ cl-lib dash emacs request ];
meta = {
homepage = "https://melpa.org/#/noaa";
license = lib.licenses.free;
@@ -65104,12 +68586,12 @@
melpaBuild {
pname = "nodejs-repl";
ename = "nodejs-repl";
- version = "20170722.443";
+ version = "20181024.954";
src = fetchFromGitHub {
owner = "abicky";
repo = "nodejs-repl.el";
- rev = "4a4104dbf2cd314e90f35d200f28bd93c34708d0";
- sha256 = "1hcvi4nhgfrjalq8nw20kjjpcf4xmjid70qpqdv8dsgfann5i3wl";
+ rev = "d518947584c8041a36ffa103e2d487d852cd12ee";
+ sha256 = "05ccv87rnw7fss3lib8m9sywjrj6n92fnd7mmhmjh27g2klqc83z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/14f22f97416111fcb02e299ff2b20c44fb75f049/recipes/nodejs-repl";
@@ -65148,6 +68630,32 @@
license = lib.licenses.free;
};
}) {};
+ nodenv = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "nodenv";
+ ename = "nodenv";
+ version = "20181023.843";
+ src = fetchFromGitHub {
+ owner = "twlz0ne";
+ repo = "nodenv.el";
+ rev = "832fb0cbac4513edde7ebd6d1ab971c54313be36";
+ sha256 = "0hn29y8gv9y9646yacnhirx2iz1z7h0p3wrzjn5axbhw0y382qhq";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/272df58a1112c8c082c740d54bd37469af513d4a/recipes/nodenv";
+ sha256 = "15wqlpswp4m19widnls21rm5n0ijfhmw3vyx0ch5k2bhi4a5rip6";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/nodenv";
+ license = lib.licenses.free;
+ };
+ }) {};
noflet = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -65207,12 +68715,12 @@
melpaBuild {
pname = "nord-theme";
ename = "nord-theme";
- version = "20180102.1001";
+ version = "20180913.1049";
src = fetchFromGitHub {
owner = "arcticicestudio";
repo = "nord-emacs";
- rev = "b5c1dc762fe3acaa88a0ce9640085d45d0109c43";
- sha256 = "0j1cbwlh646gkjp70maqbq7izchgc23wdax50ykgkw3mxhjrlsf2";
+ rev = "c4e0b5548e2f3a149658617b33813cb115bdecfe";
+ sha256 = "0am2gpk63b4cjlpdy1z2mrhq09q1hi54jqpmh2rvdvijsvp6335q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/31cb60069825abe3998c8b43bc9177b39a7f3659/recipes/nord-theme";
@@ -65307,11 +68815,11 @@
melpaBuild {
pname = "notmuch";
ename = "notmuch";
- version = "20180503.1659";
+ version = "20190331.920";
src = fetchgit {
url = "https://git.notmuchmail.org/git/notmuch";
- rev = "c20a5eb80520a11cb697a45b0d9553c68e2199c8";
- sha256 = "13gpsgx5k26x8r38q56y01mfz2r1haxw76hc52mq8vypfl1gpw3x";
+ rev = "8e584392dce53d322b9403306991944c5578b1f0";
+ sha256 = "1yi7f2fz3bl9x2n05iv6vsdvahyyxn6520wp7hs73cq75wqc174r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d05fbde3aabfec4efdd19a33fd2b1297905acb5a/recipes/notmuch";
@@ -65360,12 +68868,12 @@
melpaBuild {
pname = "nov";
ename = "nov";
- version = "20180617.1444";
+ version = "20190115.1054";
src = fetchFromGitHub {
owner = "wasamasa";
repo = "nov.el";
- rev = "3be6e8cd1a6311b0782ca2aa3d9961bec6183632";
- sha256 = "1i7caa7s0c2qmf8bf9bi6sp7yavpnxlck6gm9fc0lkywrjfq0ixs";
+ rev = "b720d91ca3b0a0fcb5387428716ea57f652c75b3";
+ sha256 = "0yp8i4gnw4h2557793pjvxqwn8cjrzz0z5y21w8r8ffmw24x51if";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cf543955ba2d5d0074fa2a5ba176f9415f6e006d/recipes/nov";
@@ -65386,12 +68894,12 @@
melpaBuild {
pname = "nova-theme";
ename = "nova-theme";
- version = "20180530.801";
+ version = "20190220.1638";
src = fetchFromGitHub {
owner = "muirmanders";
repo = "emacs-nova-theme";
- rev = "2f41855ac250d822d2e8cec4610c8645718bd7e3";
- sha256 = "0gc4jw9mdv2kmhwwf1avxr0magrdhpqlxakd29dxjq9md8qybrvj";
+ rev = "b37c4cf078a811f40e30dbb790fe26845d601cd9";
+ sha256 = "1wxl6b14429kqvrm6mb2zmcxixcz7l4k8p5y408jr0yjdw3rlpki";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/16457166c17fb1cc074a34c61e52ebc285c0eacc/recipes/nova-theme";
@@ -65509,6 +69017,32 @@
license = lib.licenses.free;
};
}) {};
+ ns-auto-titlebar = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ns-auto-titlebar";
+ ename = "ns-auto-titlebar";
+ version = "20181022.1454";
+ src = fetchFromGitHub {
+ owner = "purcell";
+ repo = "ns-auto-titlebar";
+ rev = "b16092e8058af63ad2bc222f166b0aa3cb66bf9d";
+ sha256 = "0m1ih8ca4702zrkhl3zdvwbci96wyjlxhpfx95w372k25rca87dq";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d22ebb5ef16df0c56d6031cb1c7f312dca514482/recipes/ns-auto-titlebar";
+ sha256 = "1wk4y2jwl65z18cv57m8zkcg31wp9by74z2zvccxzl7mwlhy7kqg";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/ns-auto-titlebar";
+ license = lib.licenses.free;
+ };
+ }) {};
nsis-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -65534,11 +69068,38 @@
license = lib.licenses.free;
};
}) {};
+ nswbuff = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "nswbuff";
+ ename = "nswbuff";
+ version = "20190320.40";
+ src = fetchFromGitHub {
+ owner = "joostkremers";
+ repo = "nswbuff";
+ rev = "362da7f3687e2eb5bb11667347de85f4a9d002bc";
+ sha256 = "0l2xfz8z5qd4hz3kv6zn7h6qq3narkilri8a071y1n8j31jps4ma";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c0f7e952f3fbec691df51d19224f701e6530f16e/recipes/nswbuff";
+ sha256 = "1fq2dp9jlhfl9rqw6ldh0xnm0hx9ama2wf87s51qgqxxdn9ngk8x";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/nswbuff";
+ license = lib.licenses.free;
+ };
+ }) {};
nu-mode = callPackage ({ ace-window
, avy
, fetchFromGitHub
, fetchurl
, lib
+ , lv
, melpaBuild
, transpose-frame
, undo-tree
@@ -65546,12 +69107,12 @@
melpaBuild {
pname = "nu-mode";
ename = "nu-mode";
- version = "20180619.1428";
+ version = "20190404.1332";
src = fetchFromGitHub {
owner = "pyluyten";
repo = "emacs-nu";
- rev = "22cf474e70c4e72045bfb1630814ef03e3b76096";
- sha256 = "0hfrf92kf3p91d5yn3b4i8x24j20v42rph4dvspmbmkfcyh9qinh";
+ rev = "d5fb4d26d1b0bb383ea2827cc5af5dfb2a269d2b";
+ sha256 = "0nd7ypin9kl784iqffznld6kknghdjywqnjw5nwinfgkwhcrjpdd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/230d5f8fdd965a24b8ff3cc94acf378d04815fca/recipes/nu-mode";
@@ -65561,6 +69122,7 @@
packageRequires = [
ace-window
avy
+ lv
transpose-frame
undo-tree
which-key
@@ -65786,14 +69348,14 @@
ename = "nyx-theme";
version = "20170910.607";
src = fetchFromGitHub {
- owner = "GuidoSchmidt";
+ owner = "guidoschmidt";
repo = "emacs-nyx-theme";
rev = "afe2b8c3b5421b4c292d182dcf77079b278e93d8";
sha256 = "1qamw4x3yrygy8qkicy6smxksnsfkkp76hlnivswh7dm3fr23v6m";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/3440905a20bc91bb2637a87c04ff8410379f150d/recipes/nyx-theme";
- sha256 = "17ajpsbwbal1rwgd38kckh1kvnd412h6fkvj2x4j5rqvjr9nhgr6";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/nyx-theme";
+ sha256 = "11629h7jfnq2sahwiiqx01qpv3xb0iqvcqm5k9w1zhg01jhjfmw2";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -65802,6 +69364,31 @@
license = lib.licenses.free;
};
}) {};
+ nz-holidays = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "nz-holidays";
+ ename = "nz-holidays";
+ version = "20190307.1437";
+ src = fetchFromGitHub {
+ owner = "techquila";
+ repo = "nz-holidays";
+ rev = "b609dbb02e6824600b43d3976c8a428347c7df93";
+ sha256 = "10z563jmgwz22jv720rssc3irbl9624icfp059pp0qirnlg2ibx0";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4dfbe628247fc73d9a0963b7e9b92b07854817c9/recipes/nz-holidays";
+ sha256 = "0h6dnwpinm3bxir1l69ggf483gjfglpi46z3ffiac3yl3h00j5m6";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/nz-holidays";
+ license = lib.licenses.free;
+ };
+ }) {};
o-blog = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -65852,6 +69439,34 @@
license = lib.licenses.free;
};
}) {};
+ ob-ammonite = callPackage ({ ammonite-term-repl
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s
+ , xterm-color }:
+ melpaBuild {
+ pname = "ob-ammonite";
+ ename = "ob-ammonite";
+ version = "20190218.2351";
+ src = fetchFromGitHub {
+ owner = "zwild";
+ repo = "ob-ammonite";
+ rev = "c9832401f0f782aa5ca73c289c5aaa93076d77a6";
+ sha256 = "1igy3c239gaxcby6ap2hhfk0kdh3g1mkfx8hh5f2c46ncv4zrhf0";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/508358506a6994baf120be2acba86762f5727c6c/recipes/ob-ammonite";
+ sha256 = "0wr7p3sfn9m8vz87lzas943zcm8vkzgfki9pbs3rh3fxvdc197lb";
+ name = "recipe";
+ };
+ packageRequires = [ ammonite-term-repl s xterm-color ];
+ meta = {
+ homepage = "https://melpa.org/#/ob-ammonite";
+ license = lib.licenses.free;
+ };
+ }) {};
ob-applescript = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -65888,12 +69503,12 @@
melpaBuild {
pname = "ob-async";
ename = "ob-async";
- version = "20180624.1553";
+ version = "20190219.2310";
src = fetchFromGitHub {
owner = "astahlman";
repo = "ob-async";
- rev = "2333106205fd3fa244ccdfbd95fcabf29eb81116";
- sha256 = "0lqazlzqsqhhkag7k82ar2clbhhm17mv4bdw0fh8nh4bkpph7p5a";
+ rev = "73e57a9297849bb50336799ae7858777b6b386ee";
+ sha256 = "1g2agc6qwklg5cxfgm28fc5swlw54sn66lqk7q0hjn1gdq9rdqdm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ob-async";
@@ -65915,11 +69530,11 @@
melpaBuild {
pname = "ob-axiom";
ename = "ob-axiom";
- version = "20171103.1548";
+ version = "20190223.431";
src = fetchgit {
url = "https://bitbucket.org/pdo/axiom-environment";
- rev = "38cea35e98997e0baf25ab6a1d70ac6daa83a73a";
- sha256 = "1g1br2va3qz4r0pxmg4254vyscwal6kl2vh0nzlgjpck7x19id5i";
+ rev = "3fde83f160e785fe4647ddb849df3cc64b23d27c";
+ sha256 = "0n102k1zch706kls2s196fcc84pjsc0mnhasb5vi27bhk229x8q5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8b4c6b03c5ff78ce327dcf66b175e266bbc53dbf/recipes/ob-axiom";
@@ -65990,12 +69605,12 @@
melpaBuild {
pname = "ob-cfengine3";
ename = "ob-cfengine3";
- version = "20180102.1012";
+ version = "20190329.1503";
src = fetchFromGitHub {
owner = "nickanderson";
repo = "ob-cfengine3";
- rev = "2d15491e91ba84f5242610fdffafe31d4d68dc4a";
- sha256 = "1fp9ll4kp3qjyj0ai1fygrwzja7yblq7si8h7hsgwfmcr261d15v";
+ rev = "96e74940351894512dca89cff473c46e74458587";
+ sha256 = "04kdg0dwbzdr4pr7y55iiax9ba0y0is8prgn98y9gj9d383r2mif";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d068233c438e76cbcc6e9a97cbec9b2550a18ed6/recipes/ob-cfengine3";
@@ -66303,12 +69918,12 @@
melpaBuild {
pname = "ob-go";
ename = "ob-go";
- version = "20170731.1057";
+ version = "20190201.1240";
src = fetchFromGitHub {
owner = "pope";
repo = "ob-go";
- rev = "28a0250cd969974936e44dfdccb0265632d25f84";
- sha256 = "1g595miqn7wdmphvgi06ijqzjy801nal226kbghk9p002s3xzzn0";
+ rev = "2067ed55f4c1d33a43cb3f6948609d240a8915f5";
+ sha256 = "069w9dymiv97cvlpzabf193nyw174r38lz5j11x23x956ladvpbw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3afb687d6d3d1e52336ca9a7343278a9f37c3d54/recipes/ob-go";
@@ -66321,6 +69936,34 @@
license = lib.licenses.free;
};
}) {};
+ ob-html-chrome = callPackage ({ emacs
+ , f
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "ob-html-chrome";
+ ename = "ob-html-chrome";
+ version = "20181219.242";
+ src = fetchFromGitHub {
+ owner = "nikclayton";
+ repo = "ob-html-chrome";
+ rev = "7af6e4a24ed0aaf67751bdf752c7ca0ba02bb8d4";
+ sha256 = "0h33y11921ajw60b4hqpg0nvdvx3w3cia90wf53c5zg2bckcrfjh";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ac4380b5ea63c5296e517fccafa4d6a69dc73d0d/recipes/ob-html-chrome";
+ sha256 = "1z3bi5i9n6dqvarl32syb6y36px3pf0pppqxn02rrx1rwvg81iql";
+ name = "recipe";
+ };
+ packageRequires = [ emacs f s ];
+ meta = {
+ homepage = "https://melpa.org/#/ob-html-chrome";
+ license = lib.licenses.free;
+ };
+ }) {};
ob-http = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -66412,12 +70055,12 @@
melpaBuild {
pname = "ob-kotlin";
ename = "ob-kotlin";
- version = "20170725.718";
+ version = "20180823.621";
src = fetchFromGitHub {
owner = "zweifisch";
repo = "ob-kotlin";
- rev = "3b2f57e9944cfc36f2714dc550db42159904929a";
- sha256 = "1fgfl4j0jgz56a1w8h2mvnzisz123c1xz7ga380bg1hmy44dbv5j";
+ rev = "b817ffb7fd03a25897eb2aba24af2035bbe3cfa8";
+ sha256 = "1w31cj1wbblm9raav4kxbykf124k6rvn0ryxfn6myvv1x900w02a";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7aa74d349eb55aafddfc4327b6160ae2da80d689/recipes/ob-kotlin";
@@ -66488,12 +70131,12 @@
melpaBuild {
pname = "ob-ml-marklogic";
ename = "ob-ml-marklogic";
- version = "20170622.1133";
+ version = "20190311.2023";
src = fetchFromGitHub {
owner = "ndw";
repo = "ob-ml-marklogic";
- rev = "f678af0f440b3030e311ed6fbc444200be04da91";
- sha256 = "1fszg6bn927bi1dx4zgiq0wr7zxrjv8sjrwgn9mansbljszbmccm";
+ rev = "adc16f6e4d056245fc8dc680383297e1c11d1e78";
+ sha256 = "1kwazr0kixr64jggrh7gs172qcprz7ifg1zdm4cf0947nsspjnc1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/edce412552d4798450493e0a3dbe768f38f77cc7/recipes/ob-ml-marklogic";
@@ -66542,14 +70185,14 @@
ename = "ob-nim";
version = "20170809.1130";
src = fetchFromGitHub {
- owner = "lompik";
+ owner = "Lompik";
repo = "ob-nim";
rev = "742b6b1fccdb245807b540f41f7f422b27f36230";
sha256 = "0qnx9b40y1vxb7wsznnn29chl80fwlh42g2gm9l1p8jvli3jm2wp";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7263ebadeabe36359c14ffb36deda2bc75f2ca61/recipes/ob-nim";
- sha256 = "07i9n9z9xswbisq4rvgg7vbqj28c6j1xk96kpdbk8ffdvgybcpfz";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/ob-nim";
+ sha256 = "0j8mk12d29jyhhj4dlc0jykqmqy8g0yrbv7f2sqig83wj531bwza";
name = "recipe";
};
packageRequires = [ cl-lib ];
@@ -66591,12 +70234,12 @@
melpaBuild {
pname = "ob-restclient";
ename = "ob-restclient";
- version = "20180703.902";
+ version = "20180904.9";
src = fetchFromGitHub {
owner = "alf";
repo = "ob-restclient.el";
- rev = "3af542c0895d7b4fabe84275ac5c7a214340c8ec";
- sha256 = "0khrvpn92kxpfndzybk9h2and5a7rzazvj598lpwllfs1y8fbsas";
+ rev = "00b2c5a6637ab6e504708612357ffb29b5416e4b";
+ sha256 = "03jsdczywys5df1ac7bmli31wkxvbsymd5k0s6iaz62kc454l3wj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/28c1d3af3f8b2f598b80b03b64de5d15cbb3f13d/recipes/ob-restclient";
@@ -66616,12 +70259,12 @@
melpaBuild {
pname = "ob-rust";
ename = "ob-rust";
- version = "20180606.1646";
+ version = "20180911.835";
src = fetchFromGitHub {
owner = "micanzhang";
repo = "ob-rust";
- rev = "a0e3c62ac3d4d44ae73746b5a45c04322c908bd3";
- sha256 = "1hjn27k9jnykipb9lbk2py83abaawvsm503pkzmggd4zzpf6f9qq";
+ rev = "f57b489d931d6a7f9ca2b688af3352fd706f5f6b";
+ sha256 = "1fsvfy2yr22mhjkdn0bv3n3i8039a5gw5rs1cq41msv8ghb2cp0i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/843affc2fd481647c5377bf9a96b636b39718034/recipes/ob-rust";
@@ -66696,12 +70339,12 @@
melpaBuild {
pname = "ob-sql-mode";
ename = "ob-sql-mode";
- version = "20180426.1211";
+ version = "20190212.1255";
src = fetchFromGitHub {
owner = "nikclayton";
repo = "ob-sql-mode";
- rev = "8d36d312bec4a742bec8890373948a888cac18de";
- sha256 = "1q69acl5lrnac14r8mddvdphvfl4wphqilfgm8l2f5nzhi9cmn02";
+ rev = "49dac3b64f9eaebe9d406e398f95a40b2993e6d0";
+ sha256 = "0js5ygc43qi83jzfcri2nv71ii4q7a9yc1m4q34iyn0zli70r4gh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ob-sql-mode";
@@ -66740,6 +70383,34 @@
license = lib.licenses.free;
};
}) {};
+ ob-tmux = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s
+ , seq }:
+ melpaBuild {
+ pname = "ob-tmux";
+ ename = "ob-tmux";
+ version = "20180831.317";
+ src = fetchFromGitHub {
+ owner = "ahendriksen";
+ repo = "ob-tmux";
+ rev = "73bed0ebad27f0ad57ea67582494543eb2fab73d";
+ sha256 = "0wgfjm3xf4wz8kfxnijfmgkifp6f6fwk5y31vdwadkjjggbhp0pk";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a3f47fbfe745972e690e8028f893bb38ba30978d/recipes/ob-tmux";
+ sha256 = "12c0m2xxd75lbc98h7cwprmdn823mh2ii59pxr6fgnq7araqkz20";
+ name = "recipe";
+ };
+ packageRequires = [ emacs s seq ];
+ meta = {
+ homepage = "https://melpa.org/#/ob-tmux";
+ license = lib.licenses.free;
+ };
+ }) {};
ob-translate = callPackage ({ fetchFromGitHub
, fetchurl
, google-translate
@@ -66895,6 +70566,33 @@
license = lib.licenses.free;
};
}) {};
+ objed = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "objed";
+ ename = "objed";
+ version = "20190407.1014";
+ src = fetchFromGitHub {
+ owner = "clemera";
+ repo = "objed";
+ rev = "5aa473d7c276f1ed5956e51b7f7df4e35d0ec895";
+ sha256 = "00gmssf91gp76b5rl0glggfwpilld7hg7w2fy6binvgjbn8ncr46";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4abc6d927a2bf238d23256adcc9f09a751c90374/recipes/objed";
+ sha256 = "0iqvwa664fzklajqgnss7igjh7jr9v9i8dp9acm42g8ingp9zf7b";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/objed";
+ license = lib.licenses.free;
+ };
+ }) {};
obsidian-theme = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -67130,12 +70828,12 @@
melpaBuild {
pname = "octopress";
ename = "octopress";
- version = "20170813.615";
+ version = "20190122.1707";
src = fetchFromGitHub {
owner = "aaronbieber";
repo = "octopress.el";
- rev = "b4c25df9e3ccf49ac27c0a152daa4e27d1247d56";
- sha256 = "0zidh929sc1wi695ibzglbybfvxz2rj1365mij97088wwdk5dyz8";
+ rev = "f2c92d5420f14fc9167c7de1873836510e652de2";
+ sha256 = "0s5sv685h350zky46fr95bs1w814g8ksjndxwmgarldklxilsyji";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7205d3d43797755077f19f57f531b4b39e77bae3/recipes/octopress";
@@ -67148,6 +70846,33 @@
license = lib.licenses.free;
};
}) {};
+ oer-reveal = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org-re-reveal }:
+ melpaBuild {
+ pname = "oer-reveal";
+ ename = "oer-reveal";
+ version = "20190407.1005";
+ src = fetchFromGitLab {
+ owner = "oer";
+ repo = "oer-reveal";
+ rev = "a42da802360d3dd90711e353ea83ac4c74f8bbc7";
+ sha256 = "0yw9dnz33p8v6084fa2w3cvlcjpi5gi86aphpzfza42cxbc3wwss";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/5982e377cd4cc2e72bfe4650c473c9f6b71085e3/recipes/oer-reveal";
+ sha256 = "1j43in64p0janfr48v2llh888c337cv66yl6xswidnqysndfg6pg";
+ name = "recipe";
+ };
+ packageRequires = [ emacs org-re-reveal ];
+ meta = {
+ homepage = "https://melpa.org/#/oer-reveal";
+ license = lib.licenses.free;
+ };
+ }) {};
offlineimap = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -67233,12 +70958,12 @@
melpaBuild {
pname = "olivetti";
ename = "olivetti";
- version = "20180531.37";
+ version = "20190330.933";
src = fetchFromGitHub {
owner = "rnkn";
repo = "olivetti";
- rev = "02272654f1d920ea2da5a4b553acd5e5cc096ab1";
- sha256 = "0f7i2f42mlr27d9wa9h2zvz0k0xyqvwndzgz81x8gsm0w1iv15k9";
+ rev = "cb22f8ab14b7a7ad3b3650b0e36a1b61d1253950";
+ sha256 = "149zf7cbd8jzj4a4rpi2vbg0z90zqsdiizb1yy579phg3v2s4b69";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/697334ca3cdb9630572ae267811bd5c2a67d2a95/recipes/olivetti";
@@ -67452,17 +71177,16 @@
, lib
, melpaBuild
, popup
- , s
- , shut-up }:
+ , s }:
melpaBuild {
pname = "omnisharp";
ename = "omnisharp";
- version = "20180606.318";
+ version = "20190227.2222";
src = fetchFromGitHub {
owner = "OmniSharp";
repo = "omnisharp-emacs";
- rev = "ef369f79f5e65077b640b0d7525a1c9a3739713f";
- sha256 = "19awri250vya7c4pjmkwwxxnsimw0rjy75gary0g1hzr492zibdb";
+ rev = "be97227714bc14b625c5cbf6eaa9a2a74c940631";
+ sha256 = "1b3zpckbhpada02yq6lzag8b1ayaw4py4i3rvq2lz5qbjpchhv5k";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e327c483be04de32638b420c5b4e043d12a2cd01/recipes/omnisharp";
@@ -67479,7 +71203,6 @@
flycheck
popup
s
- shut-up
];
meta = {
homepage = "https://melpa.org/#/omnisharp";
@@ -67574,12 +71297,12 @@
melpaBuild {
pname = "one-themes";
ename = "one-themes";
- version = "20180507.1008";
+ version = "20181030.442";
src = fetchFromGitHub {
owner = "balajisivaraman";
repo = "emacs-one-themes";
- rev = "fb633009a173dee56cf581198d9c26871189edf8";
- sha256 = "0920g4mvqf97v6akw4fc1aq8aq2mnm8ah2xlkcgsc4a78bhk7aq1";
+ rev = "1b50f2f88fe5e207cbe6d68db710361e3bc4a9ce";
+ sha256 = "1jap6i7kavvwv7bis4x8s7a3ww4srsm3qb05r2vbchfgk7adw92m";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/504fb2fa2fe17eb008f7e9b8f7fb394f4a3ebd28/recipes/one-themes";
@@ -67901,6 +71624,33 @@
license = lib.licenses.free;
};
}) {};
+ ordinal = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ordinal";
+ ename = "ordinal";
+ version = "20190104.621";
+ src = fetchFromGitHub {
+ owner = "zonuexe";
+ repo = "ordinal.el";
+ rev = "bfad160d7c4b6faecfe5ac986bb4858cf7149b59";
+ sha256 = "1zmsac4jg3yvr3n7pkz8fhpgw9b6lqm9zcq3xh8zmb1x4ckf33z8";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ea3dd6fe4cacc229dd1371cb66dd1cfd07321bf4/recipes/ordinal";
+ sha256 = "19s27mv7kqcg9qxa844al7q1hk0qbiqh93g1n54r3b6s980dlgcv";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/ordinal";
+ license = lib.licenses.free;
+ };
+ }) {};
org-ac = callPackage ({ auto-complete-pcmp
, fetchFromGitHub
, fetchurl
@@ -67967,14 +71717,14 @@
ename = "org-alert";
version = "20180523.1833";
src = fetchFromGitHub {
- owner = "groksteve";
+ owner = "spegoraro";
repo = "org-alert";
rev = "f87bff4acbd839acb4d2245b56b2c3d21f950911";
sha256 = "05xhp1ggpcgd48vcrxf9l43aasxfjw1ypgzpq3gp7031x83m9rr6";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2976b7f9271bc46679a5774ff5f388b81a9f0cf8/recipes/org-alert";
- sha256 = "0n5a24iv8cj395xr0gfgi0hs237dd98zm2fws05k47vy3ygni152";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org-alert";
+ sha256 = "01bb0s22wa14lyr9wi58cvk4b03xqq268y3dvxbrhymw1ld97zk2";
name = "recipe";
};
packageRequires = [ alert dash s ];
@@ -68094,12 +71844,12 @@
melpaBuild {
pname = "org-board";
ename = "org-board";
- version = "20180530.1120";
+ version = "20190203.624";
src = fetchFromGitHub {
owner = "scallywag";
repo = "org-board";
- rev = "8899d8f8c1977df2397793a54868317463120553";
- sha256 = "190rf8hi1233rjmr78cqy03m1vspcsdbzcf64xs8n4vckyb18vl4";
+ rev = "4fe9c9d67b5649c317df32fb027d5b61c37c15f3";
+ sha256 = "1crr5rag71sgzddpmrxiqkal5csc19bkbfrsqrq3a7r1d91bb7y5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d8063ee17586d9b1e7415f7b924239826b81ab08/recipes/org-board";
@@ -68113,6 +71863,7 @@
};
}) {};
org-bookmark-heading = callPackage ({ emacs
+ , f
, fetchFromGitHub
, fetchurl
, lib
@@ -68120,19 +71871,19 @@
melpaBuild {
pname = "org-bookmark-heading";
ename = "org-bookmark-heading";
- version = "20170510.1008";
+ version = "20180904.1009";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "org-bookmark-heading";
- rev = "8e184f1ab1ef68417db9f12c7dce4d221fe6d496";
- sha256 = "1bhkfn2x02vpd0rxdgwz6lyycdnak2hxplna0hizim1k804gkxwn";
+ rev = "eba5ef7a3c992c4a9da86f64d12fca0c1158208a";
+ sha256 = "1amq48yldydg9prcxvxn5yi0k8xk87h1azscr9hh9phnll2yys1d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eaadbd149399c6e3c48ac5cbeedeb29a3f5791f1/recipes/org-bookmark-heading";
sha256 = "1q92rg9d945ypcpb7kig2r0cr7nb7avsylaa7nxjib25advx80n9";
name = "recipe";
};
- packageRequires = [ emacs ];
+ packageRequires = [ emacs f ];
meta = {
homepage = "https://melpa.org/#/org-bookmark-heading";
license = lib.licenses.free;
@@ -68147,12 +71898,12 @@
melpaBuild {
pname = "org-brain";
ename = "org-brain";
- version = "20180712.1410";
+ version = "20190305.616";
src = fetchFromGitHub {
owner = "Kungsgeten";
repo = "org-brain";
- rev = "d8dc1c4914c6200eaf44e36bf51a3cf02ef88fb9";
- sha256 = "1lygmnxyqgp0pm7gjy38vlkycyipqwhmyhmwqs3xr2hxgb9rlfd3";
+ rev = "62cf65d3586cfeecb6339adcacc0515a36bbcc63";
+ sha256 = "0vjq1nnk5qq0362ccp367sxj1qwz0ahmb4qkfcz92fkpzhxch2v9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/47480fbae06e4110d50bc89db7df05fa80afc7d3/recipes/org-brain";
@@ -68172,12 +71923,12 @@
melpaBuild {
pname = "org-bullets";
ename = "org-bullets";
- version = "20171127.526";
+ version = "20180208.1543";
src = fetchFromGitHub {
owner = "emacsorphanage";
repo = "org-bullets";
- rev = "5b096148bc37306f73b27da838dca751d5b1936f";
- sha256 = "1yxikvbsbrqv9kjh1dc55w3xm44x4s7gamxq4f6jm045p8abfqrr";
+ rev = "b56f2e3812626f2c4ac1686073d102c71f4a8513";
+ sha256 = "0a0dml6y49n3469vrfpgci40k4xxlk0q4kh2b27shjb440wrmv4x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fe60fc3c60d87b5fd7aa24e858c79753d5f7d2f6/recipes/org-bullets";
@@ -68232,8 +71983,8 @@
sha256 = "01ffkk79wz2qkh9h9cjl59j34wvbiqzzxbbc9a06lh2rc946wgis";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/b20edd229469b33ea87c40cfd06aa0bf95d149de/recipes/org-capture-pop-frame";
- sha256 = "0g0b3vifwg39rb0fmad7y955dcqccnm01c6m27cv2x4xfib8ik3w";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/org-capture-pop-frame";
+ sha256 = "1k0njip25527nkn8w11yl7dbk3zv9p9lhx0a9xx293havjxygvyi";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -68278,12 +72029,12 @@
melpaBuild {
pname = "org-chef";
ename = "org-chef";
- version = "20180706.1835";
+ version = "20190320.1617";
src = fetchFromGitHub {
owner = "Chobbes";
repo = "org-chef";
- rev = "6b004af05d05c981b9cf9d24a525242e36129b46";
- sha256 = "1jb2s3q02z8rjzcdxmnk91p4f75illdfjmmz93yv0izp5irhm9s7";
+ rev = "22fc63ca946a3e684c4298e0482cec9acb1af0fb";
+ sha256 = "1fnlazvj2fhhiv33b5f43d5h32c4n1sz7kav6g5gnb90sb6qnzly";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/23b9e64887a290fca7c7ab2718f627f8d728575f/recipes/org-chef";
@@ -68304,12 +72055,12 @@
melpaBuild {
pname = "org-cliplink";
ename = "org-cliplink";
- version = "20180717.408";
+ version = "20181022.539";
src = fetchFromGitHub {
owner = "rexim";
repo = "org-cliplink";
- rev = "7d35b09ebdb160a2aee3145766454a11d27b3fb7";
- sha256 = "0kskxy07i2yhb36ncsqxm50m2cry40qc7gg4x4z7rhbmski653ab";
+ rev = "7ab98f2b17a627e907b50c27737ec1a8ae8b0f3d";
+ sha256 = "0rwh5602d6hd0nvr3j50m2xz48a2kwknnn0f4aabshhb5x0ry5g8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7ddb13c59441fdf4eb1ba3816e147279dea7d429/recipes/org-cliplink";
@@ -68332,12 +72083,12 @@
melpaBuild {
pname = "org-clock-convenience";
ename = "org-clock-convenience";
- version = "20160830.1156";
+ version = "20190130.810";
src = fetchFromGitHub {
owner = "dfeich";
repo = "org-clock-convenience";
- rev = "d4f98e95d75d78822ddfab6b67bc971516f9773c";
- sha256 = "0s69jqadrgsmlv74386i900gr6xr3kgr5x1n75gqf4rsdmhx4s5d";
+ rev = "7d14699a15ad6c5b9a63246a11188c77f8800e94";
+ sha256 = "05r6jgh8ys4ihpns7g64n4zbnvyy5fvndf9v7zinq2nk6grb393q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a80ed929181cdd28886ca598a0c387a31d239b2e/recipes/org-clock-convenience";
@@ -68377,6 +72128,32 @@
license = lib.licenses.free;
};
}) {};
+ org-clock-split = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-clock-split";
+ ename = "org-clock-split";
+ version = "20180909.1347";
+ src = fetchFromGitHub {
+ owner = "justintaft";
+ repo = "org-clock-split";
+ rev = "b2f1497b62e7f4a767be02e249e4ac95d4f8f21c";
+ sha256 = "099jxkyx7ikfqz99sx632a6c0mc630qkix3c307sm7y317jcdz8l";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/dc8517485e39093a3be387213f766d1df7d50061/recipes/org-clock-split";
+ sha256 = "1ihqp4ilz4a3qs2lrc3j0lqkjh782510m2nbzba89pasgl4c4jhw";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/org-clock-split";
+ license = lib.licenses.free;
+ };
+ }) {};
org-clock-today = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -68481,6 +72258,34 @@
license = lib.licenses.free;
};
}) {};
+ org-d20 = callPackage ({ dash
+ , emacs
+ , fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s
+ , seq }:
+ melpaBuild {
+ pname = "org-d20";
+ ename = "org-d20";
+ version = "20190120.1417";
+ src = fetchgit {
+ url = "https://git.spwhitton.name/org-d20";
+ rev = "0154efc1f20fca5c1c0bedd59920512d0f72b7a1";
+ sha256 = "0rapd9rwazpb1fpzp93b0may9qyhf6drx9vqqb1pvigav3j892hi";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/98bf91038196dfb59c491c9ed96c6b6a0cb311a9/recipes/org-d20";
+ sha256 = "158n900ifb1mfckd0gjmb9gpzibh8a2x56flbn2r035gcdbb7wc5";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs s seq ];
+ meta = {
+ homepage = "https://melpa.org/#/org-d20";
+ license = lib.licenses.free;
+ };
+ }) {};
org-dashboard = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -68516,14 +72321,14 @@
ename = "org-doing";
version = "20161017.920";
src = fetchFromGitHub {
- owner = "omouse";
+ owner = "rudolfolah";
repo = "org-doing";
rev = "4819e75c827c2115bd28f3b3148d846aa64ccd9b";
sha256 = "0pb7ljysh8ap572f9y813js6lvvac4kjky2a5r39hv28px33hmx5";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/4c497b87e14ab614c963f4b2f041bc0111b6e936/recipes/org-doing";
- sha256 = "17w49z78fvbz182sxv9mnryj124gm9jbdmbybppjqz4rk6wvnm2j";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org-doing";
+ sha256 = "10vg0wl8dsy12r51178qi4rzi94img692z5x3zv8dxa29lmn26xs";
name = "recipe";
};
packageRequires = [];
@@ -68541,12 +72346,12 @@
melpaBuild {
pname = "org-dotemacs";
ename = "org-dotemacs";
- version = "20151119.1022";
+ version = "20190116.1355";
src = fetchFromGitHub {
owner = "vapniks";
repo = "org-dotemacs";
- rev = "99a066508fedf8c80a3bfef08e015e612499d417";
- sha256 = "15zrnd168n4pwa1bj5fz79hcrgw61braf0b095rsfhjh5w2sasy7";
+ rev = "5f504f36af6bcb9dbe9869c7ed54851d3db742e7";
+ sha256 = "0pxphad9qxssqxr50g0mf20b7247xjp9a6fmb494bj8yv6wnn9m9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4c1847184312c8c95e7e81e5b3b73e5621cc2509/recipes/org-dotemacs";
@@ -68567,12 +72372,12 @@
melpaBuild {
pname = "org-download";
ename = "org-download";
- version = "20180625.842";
+ version = "20190404.605";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "org-download";
- rev = "434447251343164e3aacd9db17e67dd2a10b6e65";
- sha256 = "1ckkwdyvxiwhlxl00fd96v01vb71bdnzb3xyl04pxwjsydcbsai0";
+ rev = "055c92e56ac156dddd3185fd7d088d8b5a27e7d2";
+ sha256 = "1xfl6jyrw023filx0xj8gdmfkz7fx3r51l4gpxw9ca8b88yljxlf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/edab283bc9ca736499207518b4c9f5e71e822bd9/recipes/org-download";
@@ -68776,6 +72581,32 @@
license = lib.licenses.free;
};
}) {};
+ org-emms = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-emms";
+ ename = "org-emms";
+ version = "20181010.414";
+ src = fetchFromGitLab {
+ owner = "jagrg";
+ repo = "org-emms";
+ rev = "07a8917f3d628c32e5de1dbd118ac08203772533";
+ sha256 = "1sqsm5sv311xfdk4f4rsnvprdf2v2vm7l1b3vqi7pc0g8adlnw1d";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4fa5c221790acca40316510fd495951f418c8e15/recipes/org-emms";
+ sha256 = "0g7d2y1dgy2hgiwaxz9crxf3nv8aqzxhyf2jmnmhphdv2s9ipvjw";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/org-emms";
+ license = lib.licenses.free;
+ };
+ }) {};
org-evil = callPackage ({ dash
, evil
, fetchFromGitHub
@@ -68842,16 +72673,16 @@
melpaBuild {
pname = "org-gcal";
ename = "org-gcal";
- version = "20170420.1401";
+ version = "20190401.1041";
src = fetchFromGitHub {
- owner = "myuhe";
+ owner = "kidd";
repo = "org-gcal.el";
- rev = "270ae5d94a5d2e22cdd1fc4063534483a0dfef87";
- sha256 = "0j6i05qczv14k1rw5bry6ys66ykh46dx9837lyswfl0mwrgl3i04";
+ rev = "3874040bd86050db60b982bb62acafb69b6a4d9b";
+ sha256 = "1dffrws0rvxvsg9jqjx239zxssd6sskqv3x58mm5vvhna423cm67";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1c2d5bd8d8f2616dae19b9232d9442fe423d6e5e/recipes/org-gcal";
- sha256 = "1mp6cm0rhd4r9pfvsjjp86sdqxjbbg7gk41zx0zf0s772smddy3q";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d97c701819ea8deaa8a9664db1f391200ee52c4f/recipes/org-gcal";
+ sha256 = "014h67ba0cwi4i1llngypscyvyrm74ljh067i3iapx5a18q7xw5v";
name = "recipe";
};
packageRequires = [ alert cl-lib emacs org request-deferred ];
@@ -68947,16 +72778,16 @@
melpaBuild {
pname = "org-index";
ename = "org-index";
- version = "20180720.127";
+ version = "20190330.35";
src = fetchFromGitHub {
- owner = "marcihm";
+ owner = "marcIhm";
repo = "org-index";
- rev = "54b1485eea187575840e4eac79b950273d243455";
- sha256 = "1fmq30768cqhz52frkvrcr52wzbpaqbgwvgl28gac2dxzypg9zgb";
+ rev = "4b6f5f743bcdba14e2c2fd71a32caa21b11ef739";
+ sha256 = "08a9wj77bhi6y19xnvibcz7x5wbg8ismfppzxz45kmydniwzpli9";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/54946e733901986304f7a7a5139b2818ebf97eb3/recipes/org-index";
- sha256 = "1dp52xqrhby2xyi6p2d0ggp5irqsqwicp62ndg5wszyd33clxab5";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/org-index";
+ sha256 = "092q92hwvknwm3v2shp8dm59qdamfivx9z9v23msysy7x2mhg98f";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -68994,6 +72825,7 @@
};
}) {};
org-jira = callPackage ({ cl-lib ? null
+ , dash
, emacs
, fetchFromGitHub
, fetchurl
@@ -69004,19 +72836,19 @@
melpaBuild {
pname = "org-jira";
ename = "org-jira";
- version = "20180625.2111";
+ version = "20181223.2159";
src = fetchFromGitHub {
owner = "ahungry";
repo = "org-jira";
- rev = "03d6ebcf177db7b208c6a99386695e839f314314";
- sha256 = "07hy37by9ics7rc1sgkpg8qk2xzp67ny4i4rkd7q7j4abqdr131v";
+ rev = "4b67f6cc2460f64df7b50983d018f9e29db48b1a";
+ sha256 = "13hwyz5l9d07w0wyjym9vd9x2ndn906r6c5ir2qkji9rvlp6drnl";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/730a585e5c9216a2428a134c09abcc20bc7c631d/recipes/org-jira";
- sha256 = "0dvh9k0i75jxyy3v01c4cfyws8ij6718hsivi2xyrgig7pwp16ib";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e0a2fae6eecb6b4b36fe97ad99691e2c5456586f/recipes/org-jira";
+ sha256 = "1sbypbz00ki222zpm47yplyprx7h2q076b3l07qfilk0sr8kf4ql";
name = "recipe";
};
- packageRequires = [ cl-lib emacs request s ];
+ packageRequires = [ cl-lib dash emacs request s ];
meta = {
homepage = "https://melpa.org/#/org-jira";
license = lib.licenses.free;
@@ -69030,12 +72862,12 @@
melpaBuild {
pname = "org-journal";
ename = "org-journal";
- version = "20180603.102";
+ version = "20190329.1315";
src = fetchFromGitHub {
owner = "bastibe";
repo = "org-journal";
- rev = "2395db4deb255c05d0d3a75c95f53263b74939c9";
- sha256 = "018wjn7v8a1z4z1sycz7b01rdck73ap13cr3lvfqvp9mms94qq71";
+ rev = "bca2c39c692f7c58dbbe03698748187f87822043";
+ sha256 = "1zlbi1d4kny0sf9g4drqk1q4zdm91l2xmlvzz360nwm8ha88nx29";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/org-journal";
@@ -69048,34 +72880,89 @@
license = lib.licenses.free;
};
}) {};
+ org-journal-list = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-journal-list";
+ ename = "org-journal-list";
+ version = "20190221.1252";
+ src = fetchFromGitHub {
+ owner = "huytd";
+ repo = "org-journal-list";
+ rev = "2b26d00181bb49bff64b31ad020490acd1b6ae02";
+ sha256 = "0bcj9b7c4pyyvxlgnysl5lhs9ndp60xwizd85zrkd2mh2m8sbq9v";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/7c0186e507b6b309a35abb076988da740cee8f84/recipes/org-journal-list";
+ sha256 = "1aw6pf747n3z00xg8viakckm0bb6m9hnrkxphhhsfvqqgwfpzkb9";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/org-journal-list";
+ license = lib.licenses.free;
+ };
+ }) {};
org-kanban = callPackage ({ dash
, emacs
, fetchFromGitHub
, fetchurl
, lib
, melpaBuild
- , org }:
+ , org
+ , s }:
melpaBuild {
pname = "org-kanban";
ename = "org-kanban";
- version = "20180722.1158";
+ version = "20190323.944";
src = fetchFromGitHub {
owner = "gizmomogwai";
repo = "org-kanban";
- rev = "4f499e97c4583e99b042f579110a8be197337bda";
- sha256 = "0z7k240j1jqw8dqxwqr06ljnlmx3q0grrbangfr5py9z48dc63vl";
+ rev = "03387a779167c4acbc04d4970cd33c52a2ca0bcd";
+ sha256 = "0arjx1a7skdlmagyy0bbxwc134dn951y99yv4jg6l64j1f31y0yg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a9f3a10c126fa43a6fa60ee7f8e50c7a9661dbc1/recipes/org-kanban";
sha256 = "1flgqa2pwzw6b2zm3j09i9bvz1i8k03mbwj6l75yrk29lh4njq41";
name = "recipe";
};
- packageRequires = [ dash emacs org ];
+ packageRequires = [ dash emacs org s ];
meta = {
homepage = "https://melpa.org/#/org-kanban";
license = lib.licenses.free;
};
}) {};
+ org-kindle = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , seq }:
+ melpaBuild {
+ pname = "org-kindle";
+ ename = "org-kindle";
+ version = "20190314.2139";
+ src = fetchFromGitHub {
+ owner = "stardiviner";
+ repo = "org-kindle";
+ rev = "612a2894bbbff8a6cf54709d591fee86005755de";
+ sha256 = "1h3pbjiy5v8lp3p6dry4jk3pvdp7hpkc517d3w9ldhz6nmaiccgg";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/29d08205620d51d4d76e3a4a6124884b5a6b9db7/recipes/org-kindle";
+ sha256 = "17sxvyh3z5pn2353iz2v6xjxp98yxwd4n7wkqsa9nwihsw5mmrrw";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs seq ];
+ meta = {
+ homepage = "https://melpa.org/#/org-kindle";
+ license = lib.licenses.free;
+ };
+ }) {};
org-link-minor-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -69165,12 +73052,12 @@
melpaBuild {
pname = "org-listcruncher";
ename = "org-listcruncher";
- version = "20180630.1326";
+ version = "20180814.2303";
src = fetchFromGitHub {
owner = "dfeich";
repo = "org-listcruncher";
- rev = "6fb86f740f8b9fb283049132e108863d1918a893";
- sha256 = "04nykrcmsx5pqhyk305n0xh828fmdng2pqhhnylisnwds1v13cbp";
+ rev = "daa948f54631dda96ed83a2c63265e176b177ff3";
+ sha256 = "0r6gmadd20w3giw40973kyl83954pdmhslxagn6vafh1ygg9vi83";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5bed5078a3e56a825be61d158ca8321763b92f7c/recipes/org-listcruncher";
@@ -69194,12 +73081,12 @@
melpaBuild {
pname = "org-make-toc";
ename = "org-make-toc";
- version = "20180614.1959";
+ version = "20190103.2112";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "org-make-toc";
- rev = "c27e3600473100daa3007fb134cd3fe13e821d90";
- sha256 = "0078qpimkx6ps1cnyb1kaxiz4k93ppm7axsbrm18qic6mvp6i2nc";
+ rev = "9adeaf9da23fd3f7600821526f7e41f4ed17dd4a";
+ sha256 = "122fvv6waq70qcccgwnmyfmci48k8zc7vzmagadypmw8grgdjdx2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/df87749128bcfd27ca93a65084a2e88cd9ed5c3f/recipes/org-make-toc";
@@ -69221,12 +73108,12 @@
melpaBuild {
pname = "org-mime";
ename = "org-mime";
- version = "20180607.2350";
+ version = "20190402.321";
src = fetchFromGitHub {
owner = "org-mime";
repo = "org-mime";
- rev = "895a7c31bb6aa0913b902ece414d0ad29dc8cf1f";
- sha256 = "1s0z2zljbk2nsd8rrpknrydi3b7rzfrc21bq396pxhfz11irz3pb";
+ rev = "0db41d5b4e9ef9df640e7212a22708ce636b3986";
+ sha256 = "0lcn69vzx5987yz4byxvnk8z7nc2bbww7my6v0hxqkra9xh0iqlm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/521678fa13884dae69c2b4b7a2af718b2eea4b28/recipes/org-mime";
@@ -69249,12 +73136,12 @@
melpaBuild {
pname = "org-mind-map";
ename = "org-mind-map";
- version = "20180614.1352";
+ version = "20180826.1640";
src = fetchFromGitHub {
owner = "theodorewiles";
repo = "org-mind-map";
- rev = "c0578ee519ad54451e758e401acae2914f52c47a";
- sha256 = "1z43c3vwmd8h8nnncp6fya0l73rfqmb6ij01mp027pxpazq3skhc";
+ rev = "41df4b2e30455494f1848b4e06cc9208aa9e902b";
+ sha256 = "0y0yjb0w6s5yxklcxkmylmw031plxhl9dvachx325mb9qcwskycp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3c8683ee547a6a99f8d258561c3ae157b1f427f2/recipes/org-mind-map";
@@ -69319,6 +73206,33 @@
license = lib.licenses.free;
};
}) {};
+ org-msg = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , htmlize
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-msg";
+ ename = "org-msg";
+ version = "20181111.1015";
+ src = fetchFromGitHub {
+ owner = "jeremy-compostella";
+ repo = "org-msg";
+ rev = "9c9ae7b37dc1404ff6d4de4b543ae01dd1562914";
+ sha256 = "1gbjinnrn1y5506xjp8nmr15gh6pgwnwq1g8q30xmb3dbrrc43hx";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6aec5f72baa870fe57df0fd366696329651a221f/recipes/org-msg";
+ sha256 = "0pznyvjks4ga204nv9v1rn7y7ixki437gknp2h854kpf6pdlb2jy";
+ name = "recipe";
+ };
+ packageRequires = [ emacs htmlize ];
+ meta = {
+ homepage = "https://melpa.org/#/org-msg";
+ license = lib.licenses.free;
+ };
+ }) {};
org-multiple-keymap = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -69385,12 +73299,12 @@
melpaBuild {
pname = "org-noter";
ename = "org-noter";
- version = "20180722.853";
+ version = "20190307.926";
src = fetchFromGitHub {
owner = "weirdNox";
repo = "org-noter";
- rev = "447c890e173884e9ca459b73ac3a771fc59e8512";
- sha256 = "01akk7zdyijclb3igmm56xyz2h9ffc0j0skawb1xwwrni7aphnbm";
+ rev = "f6f7a8d3af1c3e7e26173b245ba4a95e3cf03074";
+ sha256 = "092d8icw5pny685yqkm0c5bx6d7axgh6rcvnc3yri84dlbdzpfbv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4a2bc0d95dc2744277d6acbba1f7483b4c14d75c/recipes/org-noter";
@@ -69565,11 +73479,11 @@
melpaBuild {
pname = "org-parser";
ename = "org-parser";
- version = "20171002.2136";
+ version = "20190206.2121";
src = fetchhg {
url = "https://bitbucket.com/zck/org-parser.el";
- rev = "105050acee08";
- sha256 = "1y1ikk950awxhvx4d930ymqa8ds6a0wlywzx09jvrnkvbisd4l63";
+ rev = "8610aef8dc87";
+ sha256 = "0vqh37y2b0dc8p9c04ici1h9n9ghd1jizcr1c2zvp75cyqsz09wv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/28d55005cbce276cda21021a8d9368568cb4bcc6/recipes/org-parser";
@@ -69636,6 +73550,36 @@
license = lib.licenses.free;
};
}) {};
+ org-pivotal = callPackage ({ a
+ , dash
+ , dash-functional
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , request }:
+ melpaBuild {
+ pname = "org-pivotal";
+ ename = "org-pivotal";
+ version = "20181216.636";
+ src = fetchFromGitHub {
+ owner = "org-pivotal";
+ repo = "org-pivotal";
+ rev = "d18e91a9f4480b0b25c1b6283ff6522e15276d62";
+ sha256 = "1f1n461h8wa7rx3z728dws0sfkgdvww3jjwq120q0dfyjibcfjri";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c1257d38bbd3a9944135b000e962f30ab28f5464/recipes/org-pivotal";
+ sha256 = "1gv4968akh2wx92d7q1i1mpl9ndygkq8ssdwg6cf19wp8mk18088";
+ name = "recipe";
+ };
+ packageRequires = [ a dash dash-functional emacs request ];
+ meta = {
+ homepage = "https://melpa.org/#/org-pivotal";
+ license = lib.licenses.free;
+ };
+ }) {};
org-pomodoro = callPackage ({ alert
, cl-lib ? null
, fetchFromGitHub
@@ -69689,6 +73633,60 @@
license = lib.licenses.free;
};
}) {};
+ org-present-remote = callPackage ({ elnode
+ , emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org-present }:
+ melpaBuild {
+ pname = "org-present-remote";
+ ename = "org-present-remote";
+ version = "20181001.1441";
+ src = fetchFromGitLab {
+ owner = "duncan-bayne";
+ repo = "org-present-remote";
+ rev = "aca889be14400d68fb6b86bb89702942883e06b9";
+ sha256 = "0xmsaza4i702hvm49kg8hh871isr4j5ra8w3yc27n2447jlsniif";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/66b092084565634cac8dd07b7b1694d0ddb236ba/recipes/org-present-remote";
+ sha256 = "06xxxa8hxfxx47bs6wxi8nbgqc8nm82c3h0yv1ddlm35qfscggks";
+ name = "recipe";
+ };
+ packageRequires = [ elnode emacs org-present ];
+ meta = {
+ homepage = "https://melpa.org/#/org-present-remote";
+ license = lib.licenses.free;
+ };
+ }) {};
+ org-pretty-tags = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-pretty-tags";
+ ename = "org-pretty-tags";
+ version = "20190327.1447";
+ src = fetchFromGitLab {
+ owner = "marcowahl";
+ repo = "org-pretty-tags";
+ rev = "6ac9c35e489dbe3a2e9c3101b49d8b0ea77cad23";
+ sha256 = "0scar1938xlr8c3zsbfw5z8mzrrr3255qisl9rjyh4kw80vai8bs";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9ad60399420764d4ef5d6acddae9241205937e78/recipes/org-pretty-tags";
+ sha256 = "19cxfjl6c0yhsc7kfjd6imckcvzdsaws3yd1s3nazhnkm3kan3h4";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/org-pretty-tags";
+ license = lib.licenses.free;
+ };
+ }) {};
org-preview-html = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -69728,12 +73726,12 @@
melpaBuild {
pname = "org-projectile";
ename = "org-projectile";
- version = "20180531.1942";
+ version = "20190130.639";
src = fetchFromGitHub {
owner = "IvanMalison";
repo = "org-projectile";
- rev = "e57023c0e33e4a0f848fcfec1902e13e6a92f711";
- sha256 = "03svxxx6jh0c5517yvp7g5lfvjn3n4r169j589iii0fcjp4qri3n";
+ rev = "0291ef425c96d02d634fc7e199146d7c3da0455b";
+ sha256 = "0ljpvykz9s92j9ixkxbwxj5lw0prslmq3ipw0plgzzz3rvf4j75a";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9d7a7ab98f364d3d5e93f83f0cb3d80a95f28689/recipes/org-projectile";
@@ -69836,12 +73834,12 @@
melpaBuild {
pname = "org-random-todo";
ename = "org-random-todo";
- version = "20180312.104";
+ version = "20190214.1257";
src = fetchFromGitHub {
owner = "unhammer";
repo = "org-random-todo";
- rev = "8357350a66bbc4e0e5cb590acc104d39870cf736";
- sha256 = "1cl1abgflbnnmvakb1z69rpr2gsm3hyg20iggwl6pn2fl0pf5wf5";
+ rev = "4f7677af740e8f3f7cfaf630ae2e594a125af760";
+ sha256 = "1xk4vp2138p58jdxn51vnmpnij5bzc2jbpq7y8avdcv0p7618fdc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/80fad6244ea3e5bdf7f448c9f62374fae45bae78/recipes/org-random-todo";
@@ -69859,28 +73857,85 @@
, fetchFromGitHub
, fetchurl
, lib
- , melpaBuild }:
+ , melpaBuild
+ , org }:
melpaBuild {
pname = "org-randomnote";
ename = "org-randomnote";
- version = "20171210.557";
+ version = "20190403.933";
src = fetchFromGitHub {
owner = "mwfogleman";
repo = "org-randomnote";
- rev = "c544202d6cba1c1618ed39b2a45fa0ffc5f83e60";
- sha256 = "1ny7qq3av43kbzd9q2rsqi04sg7n9snaqss3nazr80mpswx906dx";
+ rev = "f35a9d948751ad409aa057bfb68f1d008fdf9442";
+ sha256 = "01nf3h5sg74lph1hjj7q77pxn6xxv4zq9cjnd97a7bfbpilq86a0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d92cb392b23701948176ba12516df5ae6608e950/recipes/org-randomnote";
sha256 = "06i42ig7icap1i1mqzv5cqwhnmsrzpjmjbjjn49nv26ljr3mjw0b";
name = "recipe";
};
- packageRequires = [ dash f ];
+ packageRequires = [ dash f org ];
meta = {
homepage = "https://melpa.org/#/org-randomnote";
license = lib.licenses.free;
};
}) {};
+ org-re-reveal = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , htmlize
+ , lib
+ , melpaBuild
+ , org }:
+ melpaBuild {
+ pname = "org-re-reveal";
+ ename = "org-re-reveal";
+ version = "20190405.959";
+ src = fetchFromGitLab {
+ owner = "oer";
+ repo = "org-re-reveal";
+ rev = "871b37110dfc806b9183ec9c9550942bba190d0f";
+ sha256 = "1f1n2lbql1ik69b4bqwm0y9hpgf4glbk6k7jcd0xd62fq8x1yigc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c3e6c90a6b9004fbf0fbc08556f8effbcde8b468/recipes/org-re-reveal";
+ sha256 = "05p8iml0fapi4yf7ky45kf7m0ksz917lxg7c4pdd9hjkjmz29xn9";
+ name = "recipe";
+ };
+ packageRequires = [ emacs htmlize org ];
+ meta = {
+ homepage = "https://melpa.org/#/org-re-reveal";
+ license = lib.licenses.free;
+ };
+ }) {};
+ org-re-reveal-ref = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org-re-reveal
+ , org-ref }:
+ melpaBuild {
+ pname = "org-re-reveal-ref";
+ ename = "org-re-reveal-ref";
+ version = "20190301.704";
+ src = fetchFromGitLab {
+ owner = "oer";
+ repo = "org-re-reveal-ref";
+ rev = "7b13e1ab54eecebd92e73bf52a0d504816e5702d";
+ sha256 = "0na74q70zn8zh22vc7r3d7r8pnv2610pg28chdvbrn92l0m8i1fw";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/391ef29288507aa2b0ad5d568419b66e5a883b2f/recipes/org-re-reveal-ref";
+ sha256 = "0dd5b4g8ih98ma25jwlvdwgfadc75qcxr9zm74x5r6pr87amcb7n";
+ name = "recipe";
+ };
+ packageRequires = [ emacs org-re-reveal org-ref ];
+ meta = {
+ homepage = "https://melpa.org/#/org-re-reveal-ref";
+ license = lib.licenses.free;
+ };
+ }) {};
org-readme = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -69946,6 +74001,33 @@
license = lib.licenses.free;
};
}) {};
+ org-recur = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org }:
+ melpaBuild {
+ pname = "org-recur";
+ ename = "org-recur";
+ version = "20190304.235";
+ src = fetchFromGitHub {
+ owner = "m-cat";
+ repo = "org-recur";
+ rev = "28abdfcfdbcda36702ce568ccd8a5f3e40797d16";
+ sha256 = "0gk54251dh73srgxcfqq49q2daf5mp63lzl9c876wcixk5g6qmj6";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/cbdf8c9a3c7c289ce13542a12769a7f3d7f53d72/recipes/org-recur";
+ sha256 = "0qlpwia2dg4l00jahc3si0mi27gv6zlvkbdx0rq37dh61dabgkiq";
+ name = "recipe";
+ };
+ packageRequires = [ emacs org ];
+ meta = {
+ homepage = "https://melpa.org/#/org-recur";
+ license = lib.licenses.free;
+ };
+ }) {};
org-redmine = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -69989,12 +74071,12 @@
melpaBuild {
pname = "org-ref";
ename = "org-ref";
- version = "20180706.614";
+ version = "20190318.858";
src = fetchFromGitHub {
owner = "jkitchin";
repo = "org-ref";
- rev = "0f951f8b59adc1ad4e82f514eaf1e3487b9a036e";
- sha256 = "1d4f89ssy6wgsyl4w1linns73k22lkmcvhq5rc8sg9vdsb8inw6k";
+ rev = "e73bcc5bc07555f5eed4b63d14e4f209bb877c20";
+ sha256 = "17ijwzmzclp0gfscy42ir2j997l34smf868j1f6kr00snyagzjxk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/550e4dcef2f74fbd96474561c1cb6c4fd80091fe/recipes/org-ref";
@@ -70044,6 +74126,33 @@
license = lib.licenses.free;
};
}) {};
+ org-reverse-datetree = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-reverse-datetree";
+ ename = "org-reverse-datetree";
+ version = "20190404.2002";
+ src = fetchFromGitHub {
+ owner = "akirak";
+ repo = "org-reverse-datetree";
+ rev = "99e7ae3d0860dfe0f4d647ceb045f8b00bf1fe77";
+ sha256 = "1ji8c2480ib48n1lq4ypgq524slgzfszpxwsv1q2wyqnjzbc2csv";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a08612af18bb620955f7b5450eba3f44cdb60673/recipes/org-reverse-datetree";
+ sha256 = "0fiwba8hh9617d1zqvxxz2l8p2iq56lkv5c16q7prc69m0s5zhjb";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/org-reverse-datetree";
+ license = lib.licenses.free;
+ };
+ }) {};
org-review = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -70077,12 +74186,12 @@
melpaBuild {
pname = "org-rich-yank";
ename = "org-rich-yank";
- version = "20180430.644";
+ version = "20181120.554";
src = fetchFromGitHub {
owner = "unhammer";
repo = "org-rich-yank";
- rev = "b29bd06f295424fc15b3b8c1b3f78f501d67db47";
- sha256 = "0c4ywznxwf7hdc4x434d90hp440rplc4nsih4aswjkb7lx38lp9a";
+ rev = "d2f350c5296cf05d6c84b02762ba44f09a02b4e3";
+ sha256 = "0gxb0fnh5gxjmld0hnk5hli0cvdd8gjd27m30bk2b80kwldxlq1z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1261823d88459b6ac42d6c55c157a326173663df/recipes/org-rich-yank";
@@ -70148,31 +74257,84 @@
license = lib.licenses.free;
};
}) {};
- org-send-ebook = callPackage ({ cl-lib ? null
- , emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild
- , seq }:
+ org-snooze = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
melpaBuild {
- pname = "org-send-ebook";
- ename = "org-send-ebook";
- version = "20180401.1015";
+ pname = "org-snooze";
+ ename = "org-snooze";
+ version = "20181229.624";
src = fetchFromGitHub {
- owner = "stardiviner";
- repo = "org-send-ebook";
- rev = "efa80f3c1a26347097a16eca4dda2610627fcdf0";
- sha256 = "097cpr9v0c03117z76cy0b9faq3zjvi45anvgrw4bkbgs5mh9x2l";
+ owner = "xueeinstein";
+ repo = "org-snooze.el";
+ rev = "8799adc14a20f3489063d279ff69312de3180bf9";
+ sha256 = "0ni5vm6b8c09ybn9rg3smdsxq1mxyqvndi00wn718my7939g82kb";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/646106cf43649544056285aef8c4035b6e5bbbdb/recipes/org-send-ebook";
- sha256 = "0gvnrl4rfqn3zd0wmj4bhd63zkjk68lwwcgmsqrfw7af22wlfv3d";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fd04816fb53fe01fa9924ec928c1dd41f2219d6a/recipes/org-snooze";
+ sha256 = "00iwjj249vzqnfvbmlzrjig1sfhzbpv9kcpz95i3ir1w1qhw5119";
name = "recipe";
};
- packageRequires = [ cl-lib emacs seq ];
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/org-snooze";
+ license = lib.licenses.free;
+ };
+ }) {};
+ org-sql = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-sql";
+ ename = "org-sql";
+ version = "20190402.2035";
+ src = fetchFromGitHub {
+ owner = "ndwarshuis";
+ repo = "org-sql";
+ rev = "3793b270d5cd5ec047d7a32f2b34033592ffddf9";
+ sha256 = "0hlp4qdpdh5a1jnj8mas8vnmfd5j7g6vkyczblgi2f5vvfvls0v6";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/012573a35a302e9bb6f127cf28ac04f93796400e/recipes/org-sql";
+ sha256 = "15alnx74pmr6jc2yx2c1dbpk0fbdzil8bffj7cfj7ywj2xadmzpg";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/org-sql";
+ license = lib.licenses.free;
+ };
+ }) {};
+ org-starter = callPackage ({ dash
+ , dash-functional
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-starter";
+ ename = "org-starter";
+ version = "20190406.314";
+ src = fetchFromGitHub {
+ owner = "akirak";
+ repo = "org-starter";
+ rev = "4fa28564cab2acfde56ca815882caa9e715c848a";
+ sha256 = "1vjv2y3g02v5sg88z0kqig3jn0ryvck9s2syzdjpfsxp2jwbsw7a";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/7bdd9c835184ef1a6fabfaf7adb56a51514b75ea/recipes/org-starter";
+ sha256 = "0vb11g5lvkvazrdzgdjvl8w7y5rr5nppg6685gq9pl6hw3sda0bs";
+ name = "recipe";
+ };
+ packageRequires = [ dash dash-functional emacs ];
meta = {
- homepage = "https://melpa.org/#/org-send-ebook";
+ homepage = "https://melpa.org/#/org-starter";
license = lib.licenses.free;
};
}) {};
@@ -70184,12 +74346,12 @@
melpaBuild {
pname = "org-static-blog";
ename = "org-static-blog";
- version = "20180527.2348";
+ version = "20190403.526";
src = fetchFromGitHub {
owner = "bastibe";
repo = "org-static-blog";
- rev = "f69d2fd6671fb250fbd87df5efa898a7bf5b9bda";
- sha256 = "1h9c96rbxxk1jypib5f9pfi5zkimkvhxi61j0sps6r39435dd3w7";
+ rev = "0269bbaa6de78a3fce8d926f54bb6e7b975f9c3a";
+ sha256 = "1f1v73x58fd80hwm0pfmjp4fijcx2y6zvcpas1ys3sjl2230z8s5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e0768d41a3de625c04ac8644ef2e05f17ee99908/recipes/org-static-blog";
@@ -70211,12 +74373,12 @@
melpaBuild {
pname = "org-sticky-header";
ename = "org-sticky-header";
- version = "20170422.2135";
+ version = "20190406.1613";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "org-sticky-header";
- rev = "a435bffa3d155bdc2ad536f4da869f884e38773e";
- sha256 = "1gq0xcb1824kgjcfy868sf0a6xv4qmnzl4pmv8zlp8jb5d1ghlic";
+ rev = "2847035ec559a46bd7b555f220f819c88371d538";
+ sha256 = "0g6hdg11jzzpw7h0f6p795l5aj6pag2nhhfbx90cg28j61d28vwh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bc9a600bd156eb766ba5ce37e16f3e8253f37ee8/recipes/org-sticky-header";
@@ -70241,12 +74403,12 @@
melpaBuild {
pname = "org-super-agenda";
ename = "org-super-agenda";
- version = "20180714.1348";
+ version = "20190314.2321";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "org-super-agenda";
- rev = "3b5e8faeec1333aca3cafbbaa350dacc95412086";
- sha256 = "1l19c1pbxgyrc19jv8zp8mv60xhwf50g8fc7jmc24p73ckvff7w4";
+ rev = "eaad1198590de9346ccf374ae835c76667e5c653";
+ sha256 = "03grvmqrpnpw47pbanr6cs3h8bygijwf0bin7j1q622fi16x3bx6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fd27b2df7594a867529de4b84c8107f82dabe2e9/recipes/org-super-agenda";
@@ -70269,12 +74431,12 @@
melpaBuild {
pname = "org-sync";
ename = "org-sync";
- version = "20180221.1127";
+ version = "20181203.1623";
src = fetchFromGitHub {
owner = "arbox";
repo = "org-sync";
- rev = "fedddd20384de9919ba8e0b08344ff9356508805";
- sha256 = "0hkr5m795srmx8vzqaa4rhrnnm7qyxnadj5wlkdgsa8c3vcjl5gc";
+ rev = "e34a385fa9e658c8341a0a6e6bc3472d4d536bb8";
+ sha256 = "1xk0wqr66wjh00wgbr4f0q02zchmzdgpz2inz316zfjm4cik8y5c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/923ddbaf1a158caac5e666a396a8dc66969d204a/recipes/org-sync";
@@ -70297,12 +74459,12 @@
melpaBuild {
pname = "org-sync-snippets";
ename = "org-sync-snippets";
- version = "20170824.1128";
+ version = "20190318.1044";
src = fetchFromGitHub {
owner = "abrochard";
repo = "org-sync-snippets";
- rev = "0f264a032d371d7dbb4a7cbaf0ea2f91b5a629ca";
- sha256 = "0j680cla1zlxkwnslxwnxd5h6v1vvwr9byi1aawm9gxvz11x7vsj";
+ rev = "50cefe5a37196ed1af3d330d6871c3b37fa90d41";
+ sha256 = "13d1adymxn3b579syyaszgg98h3kh3hwn97pdfzghfli1cd9fb9y";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/96aff3f39adfa0c68aca8ff8d3b11fbfd889327e/recipes/org-sync-snippets";
@@ -70448,6 +74610,33 @@
license = lib.licenses.free;
};
}) {};
+ org-timeline = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-timeline";
+ ename = "org-timeline";
+ version = "20190213.1106";
+ src = fetchFromGitHub {
+ owner = "Fuco1";
+ repo = "org-timeline";
+ rev = "aed995c1db6c8bfd9db0a75a978f5e261aab38e5";
+ sha256 = "1jz44lag1j4rawqjpcgb9zrs88vfi7vjgdh756hs2ln7i1cnvgh5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/298bd714f6cefd83d594b0eea731a01fb2faf1ad/recipes/org-timeline";
+ sha256 = "0zlhjzjc7jwqh6wcys17hraz76n2hnjwffis02x71maclrf2cfdd";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/org-timeline";
+ license = lib.licenses.free;
+ };
+ }) {};
org-toodledo = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -70537,12 +74726,12 @@
melpaBuild {
pname = "org-tree-slide";
ename = "org-tree-slide";
- version = "20180424.1636";
+ version = "20181226.147";
src = fetchFromGitHub {
owner = "takaxp";
repo = "org-tree-slide";
- rev = "6608f8d43bf40acbddeb4434715283e5884c8a02";
- sha256 = "0cp1pbpvb8dyg5milrhlarsygdfyzpy44yhf7xhrbfmk96v8073w";
+ rev = "603a383117b8c19004baeecfe34837e20568fdbd";
+ sha256 = "0c6q2pdsq2dn66b3ghbz8p85qnaklq1pjyj6gja32w040nnzs413";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6160c259bc4bbcf3b98c220222430f798ee6463f/recipes/org-tree-slide";
@@ -70567,12 +74756,12 @@
melpaBuild {
pname = "org-trello";
ename = "org-trello";
- version = "20180330.2331";
+ version = "20190304.100";
src = fetchFromGitHub {
owner = "org-trello";
repo = "org-trello";
- rev = "e2e8a3d45057645e4caae7d46a79d2d9be2894bd";
- sha256 = "12yw54hg1lhfxw6mvxjsvbiv7cg1zwm3ccsl7g127vbf0yp2dhrl";
+ rev = "f02e92f5d7be03289f774875fc4e6877fe7b1aaa";
+ sha256 = "0c0f6wf7d86nq3kwvjr429ddxz3q3aylm2apahw19hxx212vipb3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/188ed8dc1ce2704838f7a2883c41243598150a46/recipes/org-trello";
@@ -70593,12 +74782,12 @@
melpaBuild {
pname = "org-variable-pitch";
ename = "org-variable-pitch";
- version = "20180429.1515";
+ version = "20190128.1251";
src = fetchFromGitHub {
owner = "cadadr";
repo = "elisp";
- rev = "ffe03506694c94de0444995f973a925deccc400a";
- sha256 = "02wcvka96zdlq3myfar7dqywfil2b77bc6ydmgcphwn3as3kl08r";
+ rev = "05bd1d5db68df144bc7552a460371d94a2cb5b3c";
+ sha256 = "0v3swpbhi27nlwcav3iwanckqzirjvz6gl49if8kskmp8pdvy5fs";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9632b7e98772b584d6420f8d0f9652d67118e05e/recipes/org-variable-pitch";
@@ -70669,30 +74858,33 @@
, lib
, melpaBuild
, org
+ , request
, s }:
melpaBuild {
pname = "org-web-tools";
ename = "org-web-tools";
- version = "20180531.1808";
+ version = "20190115.952";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "org-web-tools";
- rev = "58c37ab50e99775cf4ed3d6884aa9c3f45d855de";
- sha256 = "18kwlwv85qdaahp71r43h2hv1pn078jkfqfpmb7vvsks23i4vvh2";
+ rev = "d98fe92f71705662a9c56ad01f04ddf23ac7cb19";
+ sha256 = "0igninqrb9l54g0fqfcp9h30k5xgc1amz522fwmx78fpr3rw258b";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f082bfb480649d21f586b7eb331c19d57e7a84cf/recipes/org-web-tools";
sha256 = "19zpspap85fjqg5a20ps34rcigb0ws986pj6dzd7xik8s6ia29s7";
name = "recipe";
};
- packageRequires = [ dash emacs esxml org s ];
+ packageRequires = [ dash emacs esxml org request s ];
meta = {
homepage = "https://melpa.org/#/org-web-tools";
license = lib.licenses.free;
};
}) {};
org-wild-notifier = callPackage ({ alert
+ , async
, dash
+ , dash-functional
, emacs
, fetchFromGitHub
, fetchurl
@@ -70701,19 +74893,19 @@
melpaBuild {
pname = "org-wild-notifier";
ename = "org-wild-notifier";
- version = "20180221.2025";
+ version = "20190312.1013";
src = fetchFromGitHub {
owner = "akhramov";
repo = "org-wild-notifier.el";
- rev = "d0df145d9bbb72b2c315b7d8007cb6a59fea2095";
- sha256 = "1xcnb5x539776b6ljd9qyl9jadp2r4qg805m4m8yfz9sk00dv7yl";
+ rev = "db143f812ed65f5ab6c75d0d686b73da20300b32";
+ sha256 = "17p2r8y6ihl51i6r1gh0lfxyqnsfx0098ylzx7i0fb8slffjbk2i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/114552a24f73f13b253e3db4885039b680f6ef33/recipes/org-wild-notifier";
sha256 = "1lmpa614jnkpmfg3m1d2wjn9w0zig3gwd02n3dyjn23n71fiyhkp";
name = "recipe";
};
- packageRequires = [ alert dash emacs ];
+ packageRequires = [ alert async dash dash-functional emacs ];
meta = {
homepage = "https://melpa.org/#/org-wild-notifier";
license = lib.licenses.free;
@@ -70753,6 +74945,7 @@
org2blog = callPackage ({ fetchFromGitHub
, fetchurl
, htmlize
+ , hydra
, lib
, melpaBuild
, metaweblog
@@ -70761,19 +74954,19 @@
melpaBuild {
pname = "org2blog";
ename = "org2blog";
- version = "20171218.1911";
+ version = "20190308.2042";
src = fetchFromGitHub {
- owner = "punchagan";
+ owner = "org2blog";
repo = "org2blog";
- rev = "04ea7e80497ab7f7bc0d097f1807d3a085074812";
- sha256 = "1qpw5bs5qjlpw3hphbf2jg0h8bdrcgrb8xavdsx8viwjl013d4ps";
+ rev = "bd6dd6b1b3ce57a72e7c229d3f035fc7c0d3860b";
+ sha256 = "0c7viqq8cxkd6xxbvq53dbp1slsjjxs2fb2lyi3njfg18v5c6fks";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org2blog";
- sha256 = "1xa03k9z8fq74w0w3vfkigz24i6c8s4vib077l16vqik7wg4yh40";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org2blog";
+ sha256 = "15nr6f45z0i265llf8xs87958l5hvafh518k0s7jan7x1l6w5q33";
name = "recipe";
};
- packageRequires = [ htmlize metaweblog org xml-rpc ];
+ packageRequires = [ htmlize hydra metaweblog org xml-rpc ];
meta = {
homepage = "https://melpa.org/#/org2blog";
license = lib.licenses.free;
@@ -70787,12 +74980,12 @@
melpaBuild {
pname = "org2ctex";
ename = "org2ctex";
- version = "20171016.2343";
+ version = "20181011.1851";
src = fetchFromGitHub {
owner = "tumashu";
repo = "org2ctex";
- rev = "1b74aa9cf45de224ffd6aa9b93f0debddc2b48bc";
- sha256 = "17qkz3ja87hhq41hvlxvdzqipmi1gn38khd00dshsxhk5hg7i99a";
+ rev = "2143992462594ce63733305f75f7c7d08123710a";
+ sha256 = "0xrg66yx4xrmkswbapaz21q4i6qm2199zvxqvgaxd8qyk19fc46c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8f77fe537ca8ee2ddb6e3efe71f3b3c560c52c7d/recipes/org2ctex";
@@ -70968,12 +75161,12 @@
melpaBuild {
pname = "organize-imports-java";
ename = "organize-imports-java";
- version = "20180623.1209";
+ version = "20190304.1047";
src = fetchFromGitHub {
owner = "jcs090218";
repo = "organize-imports-java";
- rev = "cd21c23f903384ffe0eca5e6511bdf893457ab19";
- sha256 = "196rwbj8ayccrm7qz72fxk5lngpi00vg9hn4v05krwfhg496yp0k";
+ rev = "e201750cee13876dbea2fba8508ade1b9f76b29a";
+ sha256 = "0lnsxa3aiyaww62z4y07ciwak2gxv881qraz6sl5csfjdmbycii1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ad0242f941ff44b4897c94d336bc0af498582dd7/recipes/organize-imports-java";
@@ -70995,12 +75188,12 @@
melpaBuild {
pname = "orgbox";
ename = "orgbox";
- version = "20140528.1826";
+ version = "20180826.1918";
src = fetchFromGitHub {
owner = "yasuhito";
repo = "orgbox";
- rev = "612dd2250dbae01c85342923223f9063aae535c5";
- sha256 = "02mxp17p7bj4xamg0m6zk832hmpqcgzc7bjbjcnvbvrawhc255hy";
+ rev = "609e5e37348815ec3ba53ab6d643e38b0cc4fe17";
+ sha256 = "0kg5ns87p8v6vsb7abgqcfnzi55fbgi7b5dj98hrvnlkv4sqz7pc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b1948eca5a18f35b61b9a0baf532753fd105ba3a/recipes/orgbox";
@@ -71024,12 +75217,12 @@
melpaBuild {
pname = "orgit";
ename = "orgit";
- version = "20180318.1301";
+ version = "20190304.1007";
src = fetchFromGitHub {
owner = "magit";
repo = "orgit";
- rev = "d909f92d3b1b42184143fd5e6d4c6a2762477ab7";
- sha256 = "1jdc874bxkpbfpllak3vmfsn82p930s565bzff341vzv7aw2528c";
+ rev = "2456436a7e64d26bcf455b3890a586acaa3e7f93";
+ sha256 = "1i52dq2ynddb1irgigr5mdwfbfd3bvm1f29jnzd7nlc0nk186nvh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/73b5f7c44c90540e4cbdc003d9881f0ac22cc7bc/recipes/orgit";
@@ -71133,12 +75326,12 @@
melpaBuild {
pname = "orgtbl-aggregate";
ename = "orgtbl-aggregate";
- version = "20180620.1043";
+ version = "20180731.1454";
src = fetchFromGitHub {
owner = "tbanel";
repo = "orgaggregate";
- rev = "10996132229aff46a46d37b4983d8afb54446b07";
- sha256 = "19f4gwixhr9v669ggbriyd4rnq43bz8qzqllxzfdbygm39vm2ira";
+ rev = "1079dfc3ca0f86fef6ca3e251f3829e031aef8c4";
+ sha256 = "17acwy9x23xh2fb3xhy5w3lz6ssnrv5nf33zsqadra9y1cxs9fcc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bf64b53c9d49718a8ffc39b14c90539b36840280/recipes/orgtbl-aggregate";
@@ -71538,6 +75731,32 @@
license = lib.licenses.free;
};
}) {};
+ outline-minor-faces = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "outline-minor-faces";
+ ename = "outline-minor-faces";
+ version = "20181122.321";
+ src = fetchFromGitHub {
+ owner = "tarsius";
+ repo = "outline-minor-faces";
+ rev = "8788f3e6f922f54b4eccfb80e4c246203a7e81c3";
+ sha256 = "1ms4mgh8jlvyhdsx5166jqfjdx6rqfbhaqzfrzplgcn6v37097l4";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f252e45e8bd6e8af1267755d108f378a974ddaf1/recipes/outline-minor-faces";
+ sha256 = "1728imdqmmfqw5f67w8xsailn2b09y4xgdr769pd6kx8z6lsi8zb";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/outline-minor-faces";
+ license = lib.licenses.free;
+ };
+ }) {};
outline-toc = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -71622,12 +75841,12 @@
melpaBuild {
pname = "outorg";
ename = "outorg";
- version = "20170414.1215";
+ version = "20181224.121";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "outorg";
- rev = "78b0695121fb974bc4e971eb4ef7f8afd6d89d64";
- sha256 = "03aclh4m3f7rb821gr9pwvnqkkl91px3qxdcarpf3ypa1x4fxvlj";
+ rev = "91065d2c1700e8da0ca360373391f1d8741128e6";
+ sha256 = "1dqkyw3ll370j23r2yz51yc973a8ky5prmfgl79idv4rjzc5g72q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8edf78a0ecd2ff8e6e066b80751a31e11a068c3f/recipes/outorg";
@@ -71675,12 +75894,12 @@
melpaBuild {
pname = "outshine";
ename = "outshine";
- version = "20180625.1259";
+ version = "20190313.453";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "outshine";
- rev = "8712df02b97a148e11de2761f3e707623db6f9c2";
- sha256 = "18xpc0wa2xwb9f3lkmrvfd6wh42ca2msx5rwcwy9sra0x7qqiacf";
+ rev = "210cc88bf9ee2fca2a283e4de89d4abe849d706b";
+ sha256 = "0wi5kjsi3mbj4h64m09dgyzn67dmbxvrlib7vnc6p3qacqmzlmn9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8edf78a0ecd2ff8e6e066b80751a31e11a068c3f/recipes/outshine";
@@ -71727,12 +75946,12 @@
melpaBuild {
pname = "overcast-theme";
ename = "overcast-theme";
- version = "20180315.1243";
+ version = "20190326.946";
src = fetchFromGitHub {
owner = "myTerminal";
repo = "overcast-theme";
- rev = "faafe7c19106cb4db29ba716d117fbb6ebdda3f4";
- sha256 = "1kjvx2wjb9ksdr7w0c4xnvqa4sbplj6rwlh85lbmcg8lwkb1s2sy";
+ rev = "769078cb4a6ea87a31fcea0218c06e1ec689b97c";
+ sha256 = "044g4y8ykh41b3ybxsgsrqvnkq8i1q8q8livh64b2qqrrjzq6mxg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d86691c61fc880954a05502a6474cc2fa0d0a43b/recipes/overcast-theme";
@@ -71810,12 +76029,12 @@
melpaBuild {
pname = "ox-asciidoc";
ename = "ox-asciidoc";
- version = "20171111.354";
+ version = "20181229.2220";
src = fetchFromGitHub {
owner = "yashi";
repo = "org-asciidoc";
- rev = "e75d9565dd07dc59d11fa92d392ab47cecb3c902";
- sha256 = "1irv8k8l99kk5qqgapj1bfg9ppnd4fkkagm96mgxf0bxax0pblhn";
+ rev = "e931362e641f97d17dc738d22bb461e54045786d";
+ sha256 = "045kci7xvlp0kg8gmplnybc7ydv66hkl88dxgd113ac7ipf9zir7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3b268064f09ae5c3d15064b7d197c7af767fb278/recipes/ox-asciidoc";
@@ -71890,12 +76109,12 @@
melpaBuild {
pname = "ox-epub";
ename = "ox-epub";
- version = "20171202.1713";
+ version = "20181101.1154";
src = fetchFromGitHub {
owner = "ofosos";
repo = "ox-epub";
- rev = "7991155e4b80bafee616108014be5281c22bae83";
- sha256 = "09di3qq0nc9m3dnqik392vbdps829wlkxdsjlcpdm0dfms9wq10v";
+ rev = "a66eeb00daa01ad403ac1a1db953ddbf9054be07";
+ sha256 = "0ws2dpybrafck07q12w0avxglwr7crf4xcqxqnp48sj993v2qggx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c3ac31dfef00e83fa6b716ea006f35afb5dc6cd5/recipes/ox-epub";
@@ -71968,12 +76187,12 @@
melpaBuild {
pname = "ox-hugo";
ename = "ox-hugo";
- version = "20180720.1121";
+ version = "20190317.2148";
src = fetchFromGitHub {
owner = "kaushalmodi";
repo = "ox-hugo";
- rev = "b7e04248bfdc3188e7f1dbd3d55b8d3b9c40906c";
- sha256 = "0nfkrw4qvmhap19q6a1i8yml80jkrlrvzni9dfvxm8qjhihd74kc";
+ rev = "86a6196a431df4a9f81dbd00657e20a03c622c03";
+ sha256 = "098gwyrzkr8fj54jfdirc1m9rbcr2rsmi1klm0fv6hzfh8di1j93";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e1240bb7b5bb8773f804b987901566a20e3e8a9/recipes/ox-hugo";
@@ -72042,6 +76261,31 @@
license = lib.licenses.free;
};
}) {};
+ ox-jekyll-md = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ox-jekyll-md";
+ ename = "ox-jekyll-md";
+ version = "20180831.1032";
+ src = fetchFromGitHub {
+ owner = "gonsie";
+ repo = "ox-jekyll-md";
+ rev = "f997f41d89afd2360973ef8118b5221f17bba757";
+ sha256 = "1padg3nq2fn7f5x96z19iqmknk5z3aa8yyipz0v3bdv0a3iqngli";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4e7ddae7938158d9da24bee861a88d4875235269/recipes/ox-jekyll-md";
+ sha256 = "0lfnrikrismcd2zyfb0sf3pwwx12cyki7kzs2mjlswq3sap8w544";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/ox-jekyll-md";
+ license = lib.licenses.free;
+ };
+ }) {};
ox-jira = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -72068,6 +76312,33 @@
license = lib.licenses.free;
};
}) {};
+ ox-mdx-deck = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , ox-hugo }:
+ melpaBuild {
+ pname = "ox-mdx-deck";
+ ename = "ox-mdx-deck";
+ version = "20181115.1047";
+ src = fetchFromGitHub {
+ owner = "WolfeCub";
+ repo = "ox-mdx-deck";
+ rev = "f3dbc35870b69a5d8971b1647da8c5468f520c5d";
+ sha256 = "0v82d3ylmrh6pbha4kxs3lif40jfa3sd0adqarmz7yyqccv9ixkk";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/13d1a86dfe682f65daf529f9f62dd494fd860be9/recipes/ox-mdx-deck";
+ sha256 = "1k41sbqcfrj485ps11f6xdb1kxp7kh22k0zhn9vrjb5mxwdilfyl";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ox-hugo ];
+ meta = {
+ homepage = "https://melpa.org/#/ox-mdx-deck";
+ license = lib.licenses.free;
+ };
+ }) {};
ox-mediawiki = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -72257,6 +76528,33 @@
license = lib.licenses.free;
};
}) {};
+ ox-rfc = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org }:
+ melpaBuild {
+ pname = "ox-rfc";
+ ename = "ox-rfc";
+ version = "20190310.2321";
+ src = fetchFromGitHub {
+ owner = "choppsv1";
+ repo = "org-rfc-export";
+ rev = "b0345990036a2322609a6fa360deba079d7001fe";
+ sha256 = "05962hwww6wkbd9p4svnc5ynbsgnnfryf900nr65qap41bzxfa3y";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d3f49159d6a379bf435e2af8920176fd84693a60/recipes/ox-rfc";
+ sha256 = "0vqh923223rmhy39p4lwmdv6azba7cddkc1zi5pp3zpcijmhxzk4";
+ name = "recipe";
+ };
+ packageRequires = [ emacs org ];
+ meta = {
+ homepage = "https://melpa.org/#/ox-rfc";
+ license = lib.licenses.free;
+ };
+ }) {};
ox-rst = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -72284,6 +76582,86 @@
license = lib.licenses.free;
};
}) {};
+ ox-slack = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org
+ , ox-gfm }:
+ melpaBuild {
+ pname = "ox-slack";
+ ename = "ox-slack";
+ version = "20181119.331";
+ src = fetchFromGitHub {
+ owner = "titaniumbones";
+ repo = "ox-slack";
+ rev = "96d90914e6df1a0141657fc51f1dc5bb8f1da6bd";
+ sha256 = "1cda5c35wm7aqyj7yj80wkwb79dgzlzis1dlpysdxv30ahcf4w8p";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/55fda67a19f8799f00c8304a14ab88dde236aa48/recipes/ox-slack";
+ sha256 = "0ggw64lx93crfzm1sfwqhsfhaprkbyrjay88nyn43frf7c5l4a63";
+ name = "recipe";
+ };
+ packageRequires = [ org ox-gfm ];
+ meta = {
+ homepage = "https://melpa.org/#/ox-slack";
+ license = lib.licenses.free;
+ };
+ }) {};
+ ox-slimhtml = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ox-slimhtml";
+ ename = "ox-slimhtml";
+ version = "20181219.50";
+ src = fetchFromGitHub {
+ owner = "balddotcat";
+ repo = "ox-slimhtml";
+ rev = "a764ef64235845e4f5cfd73244d6cf1e7fee903b";
+ sha256 = "14h0kks7i2k53fwbsqb4giafacm58inppqpr5mbj904cy146g29f";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6fae8e3c4abd37a651d4cbdb337a74f1a7c7366a/recipes/ox-slimhtml";
+ sha256 = "16jrw8n26iy69ibr29bp3pqp4lm66alihks37qipd2g5grqqfdnd";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/ox-slimhtml";
+ license = lib.licenses.free;
+ };
+ }) {};
+ ox-spectacle = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org }:
+ melpaBuild {
+ pname = "ox-spectacle";
+ ename = "ox-spectacle";
+ version = "20181211.153";
+ src = fetchFromGitHub {
+ owner = "lorniu";
+ repo = "ox-spectacle";
+ rev = "9d3ec9a6326289074d8620e97d65e3105307ff51";
+ sha256 = "1gm8wwpsq10cfppzl104g3x2g9bha1209p2n8mj9azv71b9mszqx";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f441e1b3ee30065f8a68c9b0b45d9db0cac8a289/recipes/ox-spectacle";
+ sha256 = "1nf4765dihlcjbifhb9dinqin27ivqj2s8wzh1hj4vc3n8mdx5pr";
+ name = "recipe";
+ };
+ packageRequires = [ org ];
+ meta = {
+ homepage = "https://melpa.org/#/ox-spectacle";
+ license = lib.licenses.free;
+ };
+ }) {};
ox-textile = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -72442,6 +76820,33 @@
license = lib.licenses.free;
};
}) {};
+ ox-wk = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org }:
+ melpaBuild {
+ pname = "ox-wk";
+ ename = "ox-wk";
+ version = "20181111.134";
+ src = fetchFromGitHub {
+ owner = "w-vi";
+ repo = "ox-wk.el";
+ rev = "9fc37e7e2f789b0ba07cb117ea1e1dcd14a2fd83";
+ sha256 = "00wsx21nmnvci2wfvxaci1kdxplavi2a4dw8ahvl7ncr3b60219f";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0947993df2d9bee493c2c25760f1ac5bcc1136ac/recipes/ox-wk";
+ sha256 = "0rb4xkkqb65ly01lb1gl3gyz4yj9hzv4ydbdzsbvmpj0hrdw5nv3";
+ name = "recipe";
+ };
+ packageRequires = [ emacs org ];
+ meta = {
+ homepage = "https://melpa.org/#/ox-wk";
+ license = lib.licenses.free;
+ };
+ }) {};
p4 = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -72492,6 +76897,60 @@
license = lib.licenses.free;
};
}) {};
+ pacfiles-mode = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "pacfiles-mode";
+ ename = "pacfiles-mode";
+ version = "20181028.1044";
+ src = fetchFromGitHub {
+ owner = "UndeadKernel";
+ repo = "pacfiles-mode";
+ rev = "ff58f387e0f85ca20c4c9f119bf13303bf8b5a76";
+ sha256 = "1my9qhnla61wgrhf0izjx0kyjrxwyz3cfh3xp80mmnxhxrrf21kl";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/bec20443188d9218235c4b31840544a7b1e0690d/recipes/pacfiles-mode";
+ sha256 = "08yc3w7zvckg8s1g707hvbbkvi2k52jrk2iwlj0sk22ih3q3yaa9";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/pacfiles-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
+ pack = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "pack";
+ ename = "pack";
+ version = "20190312.249";
+ src = fetchFromGitHub {
+ owner = "10sr";
+ repo = "pack-el";
+ rev = "6a41f8db54e0cf0e6b1219bd6745a7c09c7bd6b3";
+ sha256 = "0vha9kbdak14p96m43h9qcp9fxqsbsx9lj0qj48rh8wp97nczi3s";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/96f55c1f15ca24134da378a1ea31f7bb31c84ea9/recipes/pack";
+ sha256 = "0lwdhfrpqwpqqg3yhcyj11jv2mm8k9k54qdxlhdi8sxj1fdxmanw";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/pack";
+ license = lib.licenses.free;
+ };
+ }) {};
package-build = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -72500,12 +76959,12 @@
melpaBuild {
pname = "package-build";
ename = "package-build";
- version = "20180628.2221";
+ version = "20190313.2140";
src = fetchFromGitHub {
owner = "melpa";
repo = "package-build";
- rev = "befbd7fcb9d1c7143e3ce432eaae69160112e96d";
- sha256 = "04mfnmcxrcd4kg5wcwkcnqk4ixr2mxhpc4aj3xgm5j1b3slma7zf";
+ rev = "d023f14b78feddf890cb7e1ded47704c9e2b0303";
+ sha256 = "16zrgg2jxnsmiza448067nggbdy78xgn90cz2mcvxqnpvgkrc1kz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/948fb86b710aafe6bc71f95554655dfdfcab0cca/recipes/package-build";
@@ -72552,16 +77011,16 @@
melpaBuild {
pname = "package-lint";
ename = "package-lint";
- version = "20180608.2119";
+ version = "20190307.1612";
src = fetchFromGitHub {
owner = "purcell";
repo = "package-lint";
- rev = "318a608ff94229dfd2e953e4fd6f37bab27adfaa";
- sha256 = "1ib41dp1dafnkmjga2imhgpgxmwrn4rsi72ylwhh6y9s7a55i8zp";
+ rev = "e494a1a9027e73fa07fc42236b953792ce0a32bf";
+ sha256 = "0vwr1v491a0hp6dx5ipsf5zd3zmi7igd1j59wzl6njmq9miarzy1";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/9744d8521b4ac5aeb1f28229c0897af7260c6f78/recipes/package-lint";
- sha256 = "0w7nkj4yz5yqmhr3mr7kxa6aqqfs75m3l2578s39940a5sdzirwy";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/dbfb0250a58b2e31c32ff1496ed66a3c5439bd67/recipes/package-lint";
+ sha256 = "05akg9cgcqbgja966iv2j878y14d5wvky6m9clkfbw5wyg66xpr0";
name = "recipe";
};
packageRequires = [ cl-lib emacs ];
@@ -72570,6 +77029,33 @@
license = lib.licenses.free;
};
}) {};
+ package-lint-flymake = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , package-lint }:
+ melpaBuild {
+ pname = "package-lint-flymake";
+ ename = "package-lint-flymake";
+ version = "20181117.56";
+ src = fetchFromGitHub {
+ owner = "purcell";
+ repo = "package-lint";
+ rev = "83f34f747a13633c92210e6110e3c5377397761c";
+ sha256 = "0mljhvc03a8fj3zn5rz8i3mfcb8vd4xfaxmb7m7h9gr8ap3lwz7g";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/dbfb0250a58b2e31c32ff1496ed66a3c5439bd67/recipes/package-lint-flymake";
+ sha256 = "076v3xvbxym7dwwl95j8kynj9kj2xw3gzq6qv6qkm0xls7df4yjz";
+ name = "recipe";
+ };
+ packageRequires = [ emacs package-lint ];
+ meta = {
+ homepage = "https://melpa.org/#/package-lint-flymake";
+ license = lib.licenses.free;
+ };
+ }) {};
package-plus = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -72704,6 +77190,32 @@
license = lib.licenses.free;
};
}) {};
+ pact-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "pact-mode";
+ ename = "pact-mode";
+ version = "20180905.947";
+ src = fetchFromGitHub {
+ owner = "kadena-io";
+ repo = "pact-mode";
+ rev = "5f401b282e2f8f897fd67e882312875f967be4d6";
+ sha256 = "1nqr7jw2anyicr9pxypsmqqwzjn9qnn770gsmdz6r2xam55j81vg";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b8e11b488c937ac9290f2e6acde92a87024a9012/recipes/pact-mode";
+ sha256 = "1awmczhz4cl2vxrn0h1wqkrhy1n9p4j3ayksvgifr4cfhqlsxk6v";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/pact-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
paganini-theme = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -72712,12 +77224,12 @@
melpaBuild {
pname = "paganini-theme";
ename = "paganini-theme";
- version = "20180710.821";
+ version = "20180815.1221";
src = fetchFromGitHub {
owner = "onurtemizkan";
repo = "paganini";
- rev = "c7474dd275dca81e77542987c459b4baba1fe190";
- sha256 = "0pvrsv3a94rp7g2p9is3f3mqkqlnd7kcpspdfn7wry3ighc0gqzq";
+ rev = "255c5a2a8abee9c5935465ec42b9c3604c178c3c";
+ sha256 = "0qhmj8dyy722ds8cmwghhxknwwis1w64wix2hdmzs21c5pa5hgkw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d6fbb609b411df4fe6f66a7afe27eda7d297f140/recipes/paganini-theme";
@@ -72738,12 +77250,12 @@
melpaBuild {
pname = "page-break-lines";
ename = "page-break-lines";
- version = "20171210.31";
+ version = "20181221.1508";
src = fetchFromGitHub {
owner = "purcell";
repo = "page-break-lines";
- rev = "fd3b7e38ad8747cd009ead7ef1bb150849ccc693";
- sha256 = "0ik5v2kd0l5a6sznld5ncdb4lsyqbbw7axs0qwxc968b540k9zq5";
+ rev = "87e801efb816b24e83ebf84c052001e178e180bc";
+ sha256 = "0y2ag7gfspcndjmap87n8mxn5kglb80fzpdmramzjjsrcx7dwdix";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/page-break-lines";
@@ -72872,16 +77384,16 @@
melpaBuild {
pname = "pamparam";
ename = "pamparam";
- version = "20180415.48";
+ version = "20190122.612";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "pamparam";
- rev = "8fa25d06fb2ae6d992e738a10d8b2150e109d9bf";
- sha256 = "0p50cfmwgwahb1czqvgx2kvnd3k46zl0pybvxlyf45y4c4kr8wjp";
+ rev = "3593cea568da1b479e408180a75890e53d047429";
+ sha256 = "0ayvkzxwncx9gqw9j0c06fy9x2i5fs9nbc77fprxcifiz7kl3x9s";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/067b5e3594641447478db8c1ffcb36d63018b1b2/recipes/pamparam";
- sha256 = "0xwz1il9ldkfprin3rva407m4wm7c48blwfn4mgaxmqafy4p0g9f";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/03de45e491e970cc5733950a825b98545b5ac24b/recipes/pamparam";
+ sha256 = "01n35a3fnwbb7w2qpk8b5f9wwmr6d5jcjzcv6gnc1768a43p9yzf";
name = "recipe";
};
packageRequires = [ emacs hydra lispy worf ];
@@ -72890,6 +77402,32 @@
license = lib.licenses.free;
};
}) {};
+ panda = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "panda";
+ ename = "panda";
+ version = "20190401.2306";
+ src = fetchFromGitHub {
+ owner = "sebasmonia";
+ repo = "panda";
+ rev = "a7f2045cc568a5ec8b97734abdbb8618990748ca";
+ sha256 = "0a6ravwfjaf70mkkpd174y6w1hp2q18wjl5mmpa9gzyfa0c27v1q";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/69800de45dda180450ed9d47a24181b659d9d1ae/recipes/panda";
+ sha256 = "04app7ni9q04v7pi1ppi5qgx5klcpawflmbsj58y33gz29di1zjk";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/panda";
+ license = lib.licenses.free;
+ };
+ }) {};
panda-theme = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -72898,12 +77436,12 @@
melpaBuild {
pname = "panda-theme";
ename = "panda-theme";
- version = "20180203.2318";
+ version = "20181128.938";
src = fetchFromGitHub {
owner = "jamiecollinson";
repo = "emacs-panda-theme";
- rev = "548b06f3e37f017fa3996015016fb0e565b84d93";
- sha256 = "1f2kzmk03vkq5jdkad6hg2rqjll1l91g48dh2piwdqrkjjbkwsvy";
+ rev = "60aa47c7a930377807da0d601351ad91e8ca446a";
+ sha256 = "169khnipnxv0y412wc2r5nsh9d9zwpdyip0l9ayyzb19zdjl1l47";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a90ca1275ceab8e1ea4fdfa9049fbd24a5fd0bf5/recipes/panda-theme";
@@ -72951,12 +77489,12 @@
melpaBuild {
pname = "pandoc-mode";
ename = "pandoc-mode";
- version = "20180710.746";
+ version = "20190211.1312";
src = fetchFromGitHub {
owner = "joostkremers";
repo = "pandoc-mode";
- rev = "f1fa01d3fd079a82c0561e6227b5e984910ec458";
- sha256 = "0yy7h87zykdc8mrvam7rqjfibzbvci2phxzipq0cfq1mcq7ypdlm";
+ rev = "d135bb5b8874f1b16c053215ecb29e22f0f79657";
+ sha256 = "1gmw78vjl82xlb4ajfiaf4q6hg35xadhjcvy7kyzr0kzs1zkkk4n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4e39cd8e8b4f61c04fa967def6a653bb22f45f5b/recipes/pandoc-mode";
@@ -73002,12 +77540,12 @@
melpaBuild {
pname = "paper-theme";
ename = "paper-theme";
- version = "20180429.1515";
+ version = "20190124.1028";
src = fetchFromGitHub {
owner = "cadadr";
repo = "elisp";
- rev = "ffe03506694c94de0444995f973a925deccc400a";
- sha256 = "02wcvka96zdlq3myfar7dqywfil2b77bc6ydmgcphwn3as3kl08r";
+ rev = "b19b37be332bada6b18d4d895edf6ce78ab420c4";
+ sha256 = "0i97l8fdrjjb6dzfcqgss5yj4ibkiaxnj32sm6nyr2s7bijkvi4x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a7ea18a56370348715dec91f75adc162c800dd10/recipes/paper-theme";
@@ -73061,12 +77599,12 @@
melpaBuild {
pname = "paradox";
ename = "paradox";
- version = "20180216.334";
+ version = "20190406.1609";
src = fetchFromGitHub {
owner = "Malabarba";
repo = "paradox";
- rev = "e5dd26f67ba8fa8ab1631a00ddea4117805b3fd0";
- sha256 = "09x8glw949hivbzikki5blgjkzyws69hck501ym99663k4irdir1";
+ rev = "7ccf2403b5d056bd6cbf75c110420e3f5f0e8c0b";
+ sha256 = "1vq1qj8gif2215z4zqxlkqqn9qcb1v5rpzphhrcn6lwvl20qfja0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6aed365c42987d64d0cd9a8a6178339b1b39e8/recipes/paradox";
@@ -73240,12 +77778,12 @@
melpaBuild {
pname = "parinfer";
ename = "parinfer";
- version = "20180718.16";
+ version = "20180904.144";
src = fetchFromGitHub {
owner = "DogLooksGood";
repo = "parinfer-mode";
- rev = "04dd27a3f39d6dbe8e4e717a6f7dac26c9798bd8";
- sha256 = "1n1ggfzyvnw9w3acqahiv4pnzhlmvr5rzv15m3iw35w77yki87x4";
+ rev = "a7c041454e05ec2b88333a73e72debaa671ed596";
+ sha256 = "14ld7r2867aqa1rzk75bzf6qivqd1va4ilawggnxbbx5j2d82r1d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/470ab2b5cceef23692523b4668b15a0775a0a5ba/recipes/parinfer";
@@ -73258,6 +77796,32 @@
license = lib.licenses.free;
};
}) {};
+ parrot = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "parrot";
+ ename = "parrot";
+ version = "20190311.1625";
+ src = fetchFromGitHub {
+ owner = "dp12";
+ repo = "parrot";
+ rev = "4d77eafc6bfacfe45dae805ceca101331d3d08d0";
+ sha256 = "0lqcw0scn2jcs15vybd1x7k7hiykrcsvimqj58s45m2pnaia57ql";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b1b393ffb9b7691e8fc99bee5fc676463038a68d/recipes/parrot";
+ sha256 = "0m67b80vc3qivcxs4w6fpzdg6h9d8s75251rlhnbc0xp7271zgnk";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/parrot";
+ license = lib.licenses.free;
+ };
+ }) {};
parse-csv = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -73291,12 +77855,12 @@
melpaBuild {
pname = "parsebib";
ename = "parsebib";
- version = "20180116.627";
+ version = "20181219.128";
src = fetchFromGitHub {
owner = "joostkremers";
repo = "parsebib";
- rev = "683c970a6fb51591bc88ee80e295fedee876e044";
- sha256 = "0mpgyy9qfb5x4fvlmb274hgayjbwf0bgk65dxyx31zikjwpcd56p";
+ rev = "9a5f1730b8ef1fb6c29262a8ba79f8136e5548d4";
+ sha256 = "1d9x57njgl16yyjmscmai5ml9wrqfh35ilcz2s674s8fa4krqw72";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c39633957475dcd6a033760ba20a957716cce59c/recipes/parsebib";
@@ -73318,12 +77882,12 @@
melpaBuild {
pname = "parsec";
ename = "parsec";
- version = "20171202.2031";
+ version = "20180729.1716";
src = fetchFromGitHub {
owner = "cute-jumper";
repo = "parsec.el";
- rev = "212f848d95c2614a86f135c1bf3de15ef0e09805";
- sha256 = "11qr9i55530pzmiwilfazaqxcjw8sx1iry19jvzdqsffjqvx2mnl";
+ rev = "2cbbbc2254aa7bcaa4fb5e07c8c1bf2f381dba26";
+ sha256 = "1g1s8s45g3kkbi3h7w0pmadmzdswb64mkdvdpg2lihg341kx37gm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/248aaf5ff9c98cd3e439d0a26611cdefe6b6c32a/recipes/parsec";
@@ -73345,12 +77909,12 @@
melpaBuild {
pname = "parseclj";
ename = "parseclj";
- version = "20180602.1306";
+ version = "20190327.151";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "parseclj";
- rev = "dc0d165b0a8633f5b11ed9175a6e421c52f4d314";
- sha256 = "1ra1z9xp8v4qsw00dzr3w7a9qznj2laarc3s09n1wnr8xbp6nwxk";
+ rev = "dec638c5ca02deac7b83718828279c5d0b49725f";
+ sha256 = "15ylphnmk4dyrympi143g08jan8na31ncdzsifjhh68kisw7xzl4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e2a977779a7ee49f57b849b14e581210a7f47d61/recipes/parseclj";
@@ -73363,6 +77927,34 @@
license = lib.licenses.free;
};
}) {};
+ parseedn = callPackage ({ a
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , parseclj }:
+ melpaBuild {
+ pname = "parseedn";
+ ename = "parseedn";
+ version = "20190331.358";
+ src = fetchFromGitHub {
+ owner = "clojure-emacs";
+ repo = "parseedn";
+ rev = "8f0582da3f1dbce24e93aee7ca26eefea6053f43";
+ sha256 = "0lfs8pbqb30iw3zbz0f1lz4g4ryqf737vz1pf01wdf6kwy6qdrf0";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/462a022a83186b8c70e888cc8df42601777504dd/recipes/parseedn";
+ sha256 = "0lb0qkvsga90ysa3a1pn8ydf108lsq2azxzzm7xvxbgk0d1xzhjp";
+ name = "recipe";
+ };
+ packageRequires = [ a emacs parseclj ];
+ meta = {
+ homepage = "https://melpa.org/#/parseedn";
+ license = lib.licenses.free;
+ };
+ }) {};
pasp-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -73400,12 +77992,12 @@
melpaBuild {
pname = "pass";
ename = "pass";
- version = "20180201.451";
+ version = "20190102.511";
src = fetchFromGitHub {
owner = "NicolasPetton";
repo = "pass";
- rev = "da08fed8dbe1bac980088d47b01f90154dbb8d8b";
- sha256 = "1j5fdcqmqw62zvmwd80bjvkrr5vg59l5k6673hvvhjx77c8nvidv";
+ rev = "cd79375005a1c1d8b45d38fefa91eef0bd23182c";
+ sha256 = "05h4hacv3yygyjcjj004qbyqjpkl4pyhwgp25gsz8mw5c66l70cx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/428c2d53db69bed8938ec3486dfcf7fc048cd4e8/recipes/pass";
@@ -73427,12 +78019,12 @@
melpaBuild {
pname = "passmm";
ename = "passmm";
- version = "20180622.1626";
+ version = "20181130.812";
src = fetchFromGitHub {
owner = "pjones";
repo = "passmm";
- rev = "f6130373b84a2d7180a04f6bd533148aa778d8fc";
- sha256 = "19sszl0vjsy0wk0bysm938c3sj458faj4dhw8fqb2nhm6l5v194r";
+ rev = "b25a92048c788a8477cc5ffe14c0c4a4df19d79a";
+ sha256 = "1jg2rs010fmw10ld0bfl6x7af3v9yqfy9ga5ixmam3qpilc8c4fw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8ae2a1e10375f9cd55d19502c9740b2737eba209/recipes/passmm";
@@ -73532,12 +78124,12 @@
melpaBuild {
pname = "password-store";
ename = "password-store";
- version = "20170829.1633";
+ version = "20190405.1930";
src = fetchFromGitHub {
owner = "zx2c4";
repo = "password-store";
- rev = "65cead8c0fdb07ce3821f6b97bdcb32684d0c3f7";
- sha256 = "0rm364l9mg2gl16ng5zd02gkfq8592mhrp81sk1v0wwh8wlyrzrh";
+ rev = "5c9f614cc43c963a49b695abef8cb9be3f146e85";
+ sha256 = "00sllhdr9xcb30x93aqh0j8pp7gqcn57yawkkx7jb8bbdmqkimcg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/207f8ec84572176749d328cb2bbc4e87c36f202c/recipes/password-store";
@@ -73560,12 +78152,12 @@
melpaBuild {
pname = "password-store-otp";
ename = "password-store-otp";
- version = "20170928.18";
+ version = "20180814.2310";
src = fetchFromGitHub {
owner = "volrath";
repo = "password-store-otp.el";
- rev = "a39a64a91de36e87b852339635bd3c5fb0e32441";
- sha256 = "0gb48blvnn6ci2wl45z81p41ny7vbgl610hqy6b2hyr2171qjd60";
+ rev = "1819cd88463cd98a5be9a63273b09202dc2bba63";
+ sha256 = "1p53bpwbkjfq4b7znqy0283f7rv7hj4lpcrd9vcvwby6vz4312j7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fc89d02554a6ff150ad42634879073892f3e88be/recipes/password-store-otp";
@@ -73760,6 +78352,32 @@
license = lib.licenses.free;
};
}) {};
+ path-helper = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "path-helper";
+ ename = "path-helper";
+ version = "20181208.1429";
+ src = fetchFromGitHub {
+ owner = "arouanet";
+ repo = "path-helper";
+ rev = "34538affb3f341b3c56a875bb094ddb2b859a8ef";
+ sha256 = "0qzsalbxksb44f0x7fndl2qyp1yf575qs56skfzmpnpa82dck88g";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a70b1a41e45d215be27d392429dcd4f82904295f/recipes/path-helper";
+ sha256 = "0fff3l88jgflqpxlcfxfyp2prc2ichajvm7c8i19qhvw70sbasny";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/path-helper";
+ license = lib.licenses.free;
+ };
+ }) {};
pathify = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -73844,12 +78462,12 @@
melpaBuild {
pname = "pc-bufsw";
ename = "pc-bufsw";
- version = "20180107.1040";
+ version = "20181221.56";
src = fetchFromGitHub {
owner = "ibukanov";
repo = "pc-bufsw";
- rev = "b99ba484e18ebf2b88654704146746490bb7625f";
- sha256 = "184nnkfh7n6vbbmvykvklr1dn3dcwjj3w800irdg55bbnkxxzkj4";
+ rev = "762d47b2f278c072643cf2a1ddc785516483d74a";
+ sha256 = "1by9p0j6c21y04cc4ls7f87gks631lv1mxk0aqhh41rml5kj4l22";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5f2bbd34d673935846c286e73a1e2efaa00ab01a/recipes/pc-bufsw";
@@ -73921,12 +78539,12 @@
melpaBuild {
pname = "pcmpl-args";
ename = "pcmpl-args";
- version = "20120911.2224";
+ version = "20190223.813";
src = fetchFromGitHub {
owner = "JonWaltman";
repo = "pcmpl-args.el";
- rev = "2ba03b3125ada8037585e545b88bd85b79da5c37";
- sha256 = "0pwx1nbgciy28rivvrgka46zihmag9ljrs40bvscgd9rkragm4zy";
+ rev = "7bc360c2e5f84e2fc4024a9783c164b4df174acb";
+ sha256 = "1gigcf9xh8a4478wr35smglz1csxamnjs82kqb45kbl9cndsz22s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/pcmpl-args";
@@ -73971,16 +78589,16 @@
melpaBuild {
pname = "pcmpl-homebrew";
ename = "pcmpl-homebrew";
- version = "20170110.1609";
+ version = "20190212.1918";
src = fetchFromGitHub {
- owner = "hiddenlotus";
+ owner = "kaihaosw";
repo = "pcmpl-homebrew";
- rev = "d001520fec4715c9a4c73f02fd948bac371cc50a";
- sha256 = "0mw8w2jd9qgyhxdbnvjays5q6c83i0sb3diizrkq23axprfg6d70";
+ rev = "bebc91c1a0392173f2d1ca2127da137565d79b4d";
+ sha256 = "11f5xmdlym32j00rkqgwzcnawqwx5i2j7f92n3133r1f7w4gkvix";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/pcmpl-homebrew";
- sha256 = "11yd18s79iszp8gas97hqpa0b0whgh7dvlyci3nd4z28467p83v8";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/pcmpl-homebrew";
+ sha256 = "1mfkg9i2hqq8mkhnc8yzc9br9wlhjv17vdvjzwhkybcbmhqf2qkm";
name = "recipe";
};
packageRequires = [];
@@ -73999,16 +78617,16 @@
melpaBuild {
pname = "pcmpl-pip";
ename = "pcmpl-pip";
- version = "20171201.33";
+ version = "20181229.620";
src = fetchFromGitHub {
- owner = "hiddenlotus";
+ owner = "kaihaosw";
repo = "pcmpl-pip";
- rev = "8b001b579fc015f80ee0e4f3211058b830bf7c47";
- sha256 = "0f8s2gn82dhyrnv0j688697xy0ig2yhn5m94gwhcllxq5a3yhbdg";
+ rev = "ebb672d4494f876f611639e65df4e28e566c06b5";
+ sha256 = "0m0x41ymjqax7y7cy6ssgnrl708vr7xazac3nyznwfdsls1mzmbg";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/pcmpl-pip";
- sha256 = "19a3np5swpqvrx133yvziqnr2pvj8zi0b725j8kxhp2bj1g1c6hr";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/pcmpl-pip";
+ sha256 = "17nmgq4wgv4yl2rsdf32585hfa58j0825mzzajrlwgmjiqx9i778";
name = "recipe";
};
packageRequires = [ f s seq ];
@@ -74131,12 +78749,12 @@
melpaBuild {
pname = "pdf-tools";
ename = "pdf-tools";
- version = "20180428.827";
+ version = "20190308.2344";
src = fetchFromGitHub {
owner = "politza";
repo = "pdf-tools";
- rev = "5209f620c85e6c7c23e96768ebae6b5c6f79f3e1";
- sha256 = "0dv3phzjp6z2f5bbl6m7ll073p81w1fkq543mp44g2cqb9dvq24s";
+ rev = "9a63f3909e5a331b6974deb03abd2c4bad42c2d9";
+ sha256 = "11i4kbwclwyvznyd9q69fq36fjasvs72ziz0555hl3fjbbq0n71q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8e3d53913f4e8a618e125fa9c1efb3787fbf002d/recipes/pdf-tools";
@@ -74149,6 +78767,32 @@
license = lib.licenses.free;
};
}) {};
+ pdfgrep = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "pdfgrep";
+ ename = "pdfgrep";
+ version = "20181007.1028";
+ src = fetchFromGitHub {
+ owner = "jeremy-compostella";
+ repo = "pdfgrep";
+ rev = "e251cd5c88a4ba5cb69008ba412d329f4d59e1d2";
+ sha256 = "0fy6h8ys490kw63l9jigsa0cf1psybyd9gcljpddnjd3nhkdwikw";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/55b0c24f883fe589d1159ce3845cf250a0f47feb/recipes/pdfgrep";
+ sha256 = "0q511l57xv1s6z496jrlz6j2nf0fync0dlbm4r800p49lbh4abl3";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/pdfgrep";
+ license = lib.licenses.free;
+ };
+ }) {};
peacock-theme = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -74259,11 +78903,11 @@
melpaBuild {
pname = "pelican-mode";
ename = "pelican-mode";
- version = "20180604.1507";
+ version = "20190124.1536";
src = fetchgit {
url = "https://git.korewanetadesu.com/pelican-mode.git";
- rev = "209ad24318e1f28675da430aa10ef3467694b9ac";
- sha256 = "1hiyl2iy2pa38bfr0z4axxmq3b79c31djyxqchx5mwzl9427dfsr";
+ rev = "a69934885c7a3b303049e2418333b3915b8f8fb8";
+ sha256 = "0wxmm9x07f0g31k68pfkds7m8d2jivcnc5m6a3dxfhygz20wc5n4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/aede5994c2e76c7fd860661c1e3252fb741f9228/recipes/pelican-mode";
@@ -74386,12 +79030,12 @@
melpaBuild {
pname = "persistent-scratch";
ename = "persistent-scratch";
- version = "20180425.1811";
+ version = "20190128.1043";
src = fetchFromGitHub {
owner = "Fanael";
repo = "persistent-scratch";
- rev = "0bfd717d28ce9e262741b06341c61306602c7711";
- sha256 = "1fq3m3p81rrvv1yp0cxfznphx7gava11sn09x706lmm1js62jnip";
+ rev = "71371a7ce9846754276350fd577dc7543eb52878";
+ sha256 = "0n638krbrs2hx97cgkb5nc0fbrd8wsbmb7mz3ym5mx5pvdyxnlgv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f1e32702bfa15490b692d5db59e22d2c07b292d1/recipes/persistent-scratch";
@@ -74441,12 +79085,12 @@
melpaBuild {
pname = "persp-fr";
ename = "persp-fr";
- version = "20180103.642";
+ version = "20180801.27";
src = fetchFromGitHub {
owner = "rocher";
repo = "persp-fr";
- rev = "aeb3b5de6135269091bb9aa0396973766c27fc88";
- sha256 = "0l6hlgn54iw2f6ry0gw79rsbz1r4svxf2xwffi580vi68wrcnvf2";
+ rev = "3f536440b120499464106fd25f182d7580192870";
+ sha256 = "0bnplxv6igry7ak3wvn2b88zm4aarv35z4z5q38x52k4zac94rl8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8e09213dddf003a1275eafb767431a507ecf7639/recipes/persp-fr";
@@ -74466,12 +79110,12 @@
melpaBuild {
pname = "persp-mode";
ename = "persp-mode";
- version = "20180604.1018";
+ version = "20180930.1020";
src = fetchFromGitHub {
owner = "Bad-ptr";
repo = "persp-mode.el";
- rev = "cc1d16aeb17f45d7141fcdc45f8bbffa03b3127f";
- sha256 = "1qjnzdrx5a5nv742wvcv50jgjis6a44xwl29gj4k9ix5phgc2n9l";
+ rev = "689f63e7370cd9424d84b9f7b2eb3d1955443313";
+ sha256 = "141yakk7xfs0b58far1zqmwimim139bbzk0ymyzgghf5vyb5lxin";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/caad63d14f770f07d09b6174b7b40c5ab06a1083/recipes/persp-mode";
@@ -74548,12 +79192,12 @@
melpaBuild {
pname = "perspective";
ename = "perspective";
- version = "20180717.1403";
+ version = "20181119.1714";
src = fetchFromGitHub {
owner = "nex3";
repo = "perspective-el";
- rev = "8e2f122de408d7866136dd861d513a9575cf32e6";
- sha256 = "0pd5sqrrz6y3md20yh6ffy32jdcgb1gc9b4j14pm6r54bqxik68h";
+ rev = "2c8cf56d170c3eb1fcc1a8fe41026b780e0ffead";
+ sha256 = "0xlib2f8fjmwk8r0p6r8y5ni687xmixqp9s40rgxc15ikin54hhf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/perspective";
@@ -74601,12 +79245,12 @@
melpaBuild {
pname = "pfuture";
ename = "pfuture";
- version = "20180715.524";
+ version = "20190322.52";
src = fetchFromGitHub {
owner = "Alexander-Miller";
repo = "pfuture";
- rev = "e39d0d2953a5db7d9f567596865239012e506ac4";
- sha256 = "0nd1asv8a0iqjvgaaxy4pyyfxcyk3rlyxndia78rzskkl53dqrc6";
+ rev = "766cfb7d2df8ebc6144fb644d4d858f66657f60d";
+ sha256 = "1zjkpanfxhdfq75dy5x2m541qxpcnh67d7aiijdgkb0g5v3yb61d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5fb70c9f56a58b5c7a2e8b69b191aa2fc7c9bcc8/recipes/pfuture";
@@ -75071,12 +79715,12 @@
melpaBuild {
pname = "php-cs-fixer";
ename = "php-cs-fixer";
- version = "20170506.1133";
+ version = "20190207.326";
src = fetchFromGitHub {
owner = "OVYA";
repo = "php-cs-fixer";
- rev = "2e28b82d192c6f420ecb8cbef04256f3c9c47c4b";
- sha256 = "1lh37z4z09nz4wfp8ly94dwrmjsqpg6phw5r8y4gjhfnfbgpq4b9";
+ rev = "6540006710daf2b2d47576968ea826a83a40a6bf";
+ sha256 = "089x26akvkfm772v8n3x3l5wpkhvlgad2byrcbh0a1vyhnjb2fvd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a3631c4b81c1784995ae9e74d832e301d79214e2/recipes/php-cs-fixer";
@@ -75123,16 +79767,16 @@
melpaBuild {
pname = "php-mode";
ename = "php-mode";
- version = "20180608.250";
+ version = "20190401.1042";
src = fetchFromGitHub {
- owner = "ejmr";
+ owner = "emacs-php";
repo = "php-mode";
- rev = "cf1907be2ddca079146ef258ba95d525f17787e3";
- sha256 = "1dpyid4qp8lak6pvhjh1p5nwbgz67nq1yhwir54k4wk39r1g6i08";
+ rev = "bcde734c37ca36e6c2a925038760247b09ca8825";
+ sha256 = "0shrssfjbqykpyz8kmchizgcl2m29bxp1n1331csi0lnqkb9v540";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7cdbc35fee67b87b87ec72aa00e6dca77aef17c4/recipes/php-mode";
- sha256 = "1lc4d3fgxhanqr3b8zr99z0la6cpzs2rksj806lnsfw38klvi89y";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/2e41dc09413eaa93704e7d9f55bd2bd01f658806/recipes/php-mode";
+ sha256 = "1gqmcynz2wx09xjnk70db1a2pbnrh1vfm5vd6mks1s10y59bh0zq";
name = "recipe";
};
packageRequires = [ cl-lib emacs ];
@@ -75168,26 +79812,28 @@
}) {};
php-runtime = callPackage ({ cl-lib ? null
, emacs
+ , f
, fetchFromGitHub
, fetchurl
, lib
- , melpaBuild }:
+ , melpaBuild
+ , s }:
melpaBuild {
pname = "php-runtime";
ename = "php-runtime";
- version = "20180110.934";
+ version = "20181212.1025";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "php-runtime.el";
- rev = "fa4312863245511462b75cb31df2f8558288f4df";
- sha256 = "1glwy0cgnn0z4rnd45pqy0bmyaddhxfjlj778hz7ghy40h9kqbdn";
+ rev = "017e0e70f07d6b25e37d5c5f4d271a914b677631";
+ sha256 = "1c74xd6p3hfanpd4920agvnar9rjbyvz33kwrzw9vywzrs68ncvh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/615c9ac208d8c20082a8ac83e49e93d99e2cbc89/recipes/php-runtime";
sha256 = "0dvnwajrjsgyqzglzpkx9vwx3f55mrag6dsbdjqc9vvpvxhmgfwb";
name = "recipe";
};
- packageRequires = [ cl-lib emacs ];
+ packageRequires = [ cl-lib emacs f s ];
meta = {
homepage = "https://melpa.org/#/php-runtime";
license = lib.licenses.free;
@@ -75222,28 +79868,30 @@
};
}) {};
phpactor = callPackage ({ cl-lib ? null
+ , composer
, emacs
, f
, fetchFromGitHub
, fetchurl
, lib
- , melpaBuild }:
+ , melpaBuild
+ , php-runtime }:
melpaBuild {
pname = "phpactor";
ename = "phpactor";
- version = "20180721.1022";
+ version = "20190402.1916";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "phpactor.el";
- rev = "a09b2eb76228b39a9a6823dc6782e44bafc4b974";
- sha256 = "10x999z1rlnjdvnpq4c7gf6n19a47nj954y3vbshb15d6wzxd923";
+ rev = "5dc331636786bdcee9ce2868d4d313c40aca1303";
+ sha256 = "0qwklrsd8hxjvcddjj4ks3p24nyc3rcsxs9hyn3jphxww2igjbiv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d67b98ecd541c227c011615f67d7a0890f5e1af3/recipes/phpactor";
sha256 = "0w2iszi74y3s6rcn6p2ic545cg319y4jpy83npbh5m98y8jma84m";
name = "recipe";
};
- packageRequires = [ cl-lib emacs f ];
+ packageRequires = [ cl-lib composer emacs f php-runtime ];
meta = {
homepage = "https://melpa.org/#/phpactor";
license = lib.licenses.free;
@@ -75257,12 +79905,12 @@
melpaBuild {
pname = "phpcbf";
ename = "phpcbf";
- version = "20180519.138";
+ version = "20181227.2023";
src = fetchFromGitHub {
owner = "nishimaki10";
repo = "emacs-phpcbf";
- rev = "a31020fc4c5add7339e009faea66894dc02a77f1";
- sha256 = "04iw5is9h6a0i650mymyxq32z02rzl6k7pvwmv849rka16xhw1aq";
+ rev = "fb0bc6073a57126cf1a8404723aa0a715dd761aa";
+ sha256 = "0k2wl137nippcfx3g35kfprz2fiv8rbbi7dcpxciwnbqmn6ry7rf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/77ef54e3fb2715a081786dc54f99ae74def5c77c/recipes/phpcbf";
@@ -75283,12 +79931,12 @@
melpaBuild {
pname = "phpstan";
ename = "phpstan";
- version = "20180721.1235";
+ version = "20190227.842";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "phpstan.el";
- rev = "09102b062b607affc93f2d8a113a9fc9f9cf3016";
- sha256 = "0n21vyvd5c42v03xcfx94dz252z3s413i0f9pwjrssq2yd3x2bgm";
+ rev = "1151b8d418af532fdf0732b9793b479c64a364e3";
+ sha256 = "0wb9pshgcrq2w9d9fpkywz299ihcb9fffh3fdk8rm1r8irylrjkh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5a2b6cc39957e6d7185bd2bdfa3755e5b1f474a6/recipes/phpstan";
@@ -75313,12 +79961,12 @@
melpaBuild {
pname = "phpunit";
ename = "phpunit";
- version = "20171127.301";
+ version = "20180829.738";
src = fetchFromGitHub {
owner = "nlamirault";
repo = "phpunit.el";
- rev = "a13706733f98be3639c47311fc820b3b50f4bc33";
- sha256 = "0vfvybjinj0knim4ax0xspz7zr3n2y9ap1lvwqx1gwydr06w4jrl";
+ rev = "fe6bc91c3bd8b329c6d26ad883a025f06b5121ee";
+ sha256 = "1silbfmv85r73pbc7f5cm4znc6644ngihfnhibk1fgp9j0rf7ahc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0670b42c0c998daa7bf01080757976ac3589ec06/recipes/phpunit";
@@ -75365,12 +80013,12 @@
melpaBuild {
pname = "pickle";
ename = "pickle";
- version = "20180627.1937";
+ version = "20190122.948";
src = fetchFromGitHub {
owner = "ahungry";
repo = "pickle-mode";
- rev = "568570b7d376026fbcb7c3df1ad8f605bd14c820";
- sha256 = "0dg44js5l1p93h73x7zh4znr0iwgmms7qr4v4594ab6sg7cc54jm";
+ rev = "0d0b1925b7b79e2c80a1877351e3c6ce52935c4b";
+ sha256 = "0hbymja9109fzw34ra5iyxvhfv0x8ffr8sayqihdfmrs2ymh045z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4cb71882f074d3fef1f5a7b504dafcb6adff8ed4/recipes/pickle";
@@ -75390,12 +80038,12 @@
melpaBuild {
pname = "picolisp-mode";
ename = "picolisp-mode";
- version = "20150516.155";
+ version = "20190104.2320";
src = fetchFromGitHub {
owner = "flexibeast";
repo = "picolisp-mode";
- rev = "1a537b14090813f46cbba54636d40365e1a8067e";
- sha256 = "0p91ysyjksbravnw3l78mshay6swgb5k1zi5bbppppk8zkmdp115";
+ rev = "39e54f31b5d10483aac2765bf5cc4ad92f9e4467";
+ sha256 = "054hmmpcxg56r9qhk006mm7y6b2bb6pjxk48fbynhbwmhwnn79ps";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fe116998dadeef6e61c0791efb396f9b8befa5d6/recipes/picolisp-mode";
@@ -75416,12 +80064,12 @@
melpaBuild {
pname = "picpocket";
ename = "picpocket";
- version = "20180610.359";
+ version = "20180914.1119";
src = fetchFromGitHub {
owner = "johanclaesson";
repo = "picpocket";
- rev = "ce4b6ed088384f2414af82e8e4eae5b92c2874bf";
- sha256 = "15vpbcv83mc4j1pvrk7xic0klh2bl9gzg2xxs7c2lmnix52hy8mv";
+ rev = "f0f9947a097b2a02901d6d0bb427c7a6e02f2af7";
+ sha256 = "0fnafiax2xb97vkvr8fd2x3rpnw72661k0p163mkvp1zp59zy6is";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e88dc89311d4bfe82dc15f22b84c4b76abb3fd69/recipes/picpocket";
@@ -75562,6 +80210,32 @@
license = lib.licenses.free;
};
}) {};
+ pine-script-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "pine-script-mode";
+ ename = "pine-script-mode";
+ version = "20181109.1751";
+ src = fetchFromGitHub {
+ owner = "EricCrosson";
+ repo = "pine-script-mode";
+ rev = "9176de41a5c80f7b56e41fb7a9ba7350885a2512";
+ sha256 = "1kxdrqa420zbl73jlakilvn1ja83vfqnhqdirgfvp23z4xhcddq6";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/287b781147fe41089fa8c76570bc30539e43e5bc/recipes/pine-script-mode";
+ sha256 = "0ihijbcx7m4vhxr1fnfkwjdk6ka1mqzxb8z164yh8yn73qs0saiq";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/pine-script-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
pinot = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -75673,12 +80347,12 @@
melpaBuild {
pname = "pip-requirements";
ename = "pip-requirements";
- version = "20180602.1034";
+ version = "20181027.929";
src = fetchFromGitHub {
owner = "Wilfred";
repo = "pip-requirements.el";
- rev = "4eff2953317272e145649effb1956081a31645ee";
- sha256 = "1hnkfbcsrf69pz71pka4hp8dv4qvq431x5ahind4iwz9lzsfhhwq";
+ rev = "216cd1690f80cc965d4ae47b8753fc185f778ff6";
+ sha256 = "0da3q0n5nn0l96kk49kanw5knx3jmga439zbmiii76na16bg5y3i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5eaf6987f92070ccc33d3e28c6bb2b96f72ba1aa/recipes/pip-requirements";
@@ -75697,23 +80371,24 @@
, fetchurl
, lib
, melpaBuild
+ , pyvenv
, s }:
melpaBuild {
pname = "pipenv";
ename = "pipenv";
- version = "20180718.2247";
+ version = "20190307.355";
src = fetchFromGitHub {
owner = "pwalsh";
repo = "pipenv.el";
- rev = "05e98e80be2dd92f14ffb9f6048f98547a9f0253";
- sha256 = "1gdy31nlxac1c500jpcnvgb32lcg0xfqgiiyci4s958cwn1yn704";
+ rev = "189cf5a4d425b6bdcd26742a460cf12cc540f524";
+ sha256 = "0dcd7gmjs5s17h55nnpyppxg3zf96p3w8bsb9sk2wy1jwxn566cm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d46738976f5dfaf899ee778b1ba6dcee455fd271/recipes/pipenv";
sha256 = "110ddg6yjglp49rgn1ck41rl97q92nm6zx86mxjmcqq35cxmc6g1";
name = "recipe";
};
- packageRequires = [ emacs f s ];
+ packageRequires = [ emacs f pyvenv s ];
meta = {
homepage = "https://melpa.org/#/pipenv";
license = lib.licenses.free;
@@ -75858,12 +80533,12 @@
melpaBuild {
pname = "pkgbuild-mode";
ename = "pkgbuild-mode";
- version = "20180609.931";
+ version = "20181216.531";
src = fetchFromGitHub {
owner = "juergenhoetzel";
repo = "pkgbuild-mode";
- rev = "b19759d8c4fcb27ac3455d277ad8b81886f0ad97";
- sha256 = "038xgic6ngvgsbn3ss3nvhdy3bhq425sas5lgg8z1nql8f4rz2kb";
+ rev = "e30e37730b5f30bc0dd5b9328fbf4cb3e6f46fdd";
+ sha256 = "1ijx067hlbr4yz9b9h58pwlqd4rgjgm27f5s1f9f3rwb249s36s1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/pkgbuild-mode";
@@ -75909,12 +80584,12 @@
melpaBuild {
pname = "plan9-theme";
ename = "plan9-theme";
- version = "20180606.2035";
+ version = "20180804.741";
src = fetchFromGitHub {
owner = "john2x";
repo = "plan9-theme.el";
- rev = "4c9455033e877b7ce464bc99de32f310cf0bcda9";
- sha256 = "0arbhpms38i75a9dpqn9krv64bx47jaiccanqdgzf4slcb8kvk6z";
+ rev = "4c1050b8ed42e0f99ef64c77ec370a786bd0003c";
+ sha256 = "1l2bgdip617zkd9470rja1qyijpc896dvmc6dgclvaz1ajgjwa9j";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cdc4c2bafaa09e38edd485a9091db689fbda2fe6/recipes/plan9-theme";
@@ -75953,26 +80628,27 @@
license = lib.licenses.free;
};
}) {};
- plantuml-mode = callPackage ({ fetchFromGitHub
+ plantuml-mode = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "plantuml-mode";
ename = "plantuml-mode";
- version = "20170819.1033";
+ version = "20190316.458";
src = fetchFromGitHub {
owner = "skuro";
repo = "plantuml-mode";
- rev = "5a2e8d0dd2ba9286fc3c82d8689d25050290f68d";
- sha256 = "1gcv5gmps371wd2sjbq4g5p2yj2ip8lpn81lypwb5xavqa7gjhlv";
+ rev = "2b84a2df523904c180a3556c851f59beb0e070d7";
+ sha256 = "0l4nxda55ipbrzy0nj59d1vf97m2h9ydviq9r7hiw4mjfq31lzsv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/38e74bb9923044323f34473a5b13867fe39bed25/recipes/plantuml-mode";
sha256 = "03srbg34512vxcqn95q4r7h2aqbqq0sd5c9ffnbx2a75vsblqc6h";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/plantuml-mode";
license = lib.licenses.free;
@@ -76415,12 +81091,12 @@
melpaBuild {
pname = "pocket-reader";
ename = "pocket-reader";
- version = "20180719.1453";
+ version = "20181219.130";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "pocket-reader.el";
- rev = "baef400c607cb192fac9157d3f6ce5e1573628bd";
- sha256 = "12j1za5d98svll26xi8igxk0zh8vz4i0bbscx8m39gn0grh5kmnb";
+ rev = "a7f080ec3e9522f942166de61b24a375b8f1c2bb";
+ sha256 = "0l7dln7qcrgzm73vk7jp8wr2kibg18973xmdzyyc162hdnlbrpb0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/835a7bf2f72987183e9d15ada7ae747fb5715c11/recipes/pocket-reader";
@@ -76469,6 +81145,33 @@
license = lib.licenses.free;
};
}) {};
+ poet-client = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , request }:
+ melpaBuild {
+ pname = "poet-client";
+ ename = "poet-client";
+ version = "20190123.2254";
+ src = fetchFromGitHub {
+ owner = "wailo";
+ repo = "emacs-poet";
+ rev = "bca73c57f1daa33eec7763adcbc9733f65f9864d";
+ sha256 = "129xc278kryh097y4jxqkzbsw6y39b8yxxq5sp7y0a1cm10gwdwj";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a0b003773edaa728ed49f0de2ca64a00cb60d13a/recipes/poet-client";
+ sha256 = "11yj57915ly8j2byp5c395lip73iv1chrzxdlxilhnll1brvmaw0";
+ name = "recipe";
+ };
+ packageRequires = [ emacs request ];
+ meta = {
+ homepage = "https://melpa.org/#/poet-client";
+ license = lib.licenses.free;
+ };
+ }) {};
poet-theme = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -76476,12 +81179,12 @@
melpaBuild {
pname = "poet-theme";
ename = "poet-theme";
- version = "20180603.1523";
+ version = "20190127.1420";
src = fetchFromGitHub {
owner = "kunalb";
repo = "poet";
- rev = "fddb662bfc55c535e5b13b3368e430916d8be70c";
- sha256 = "1dicjjh68rs1mzzgy81s1phjbdc5mirwxb3ym8y1yirpb2hj4bal";
+ rev = "e16d47de40c9ec434adb8b861223f0bf95495240";
+ sha256 = "1nf34m5agygd93q45bsi3zxbzf9jyz11hncwyi6q8mnanxr2imfa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/40bbe29dee56f7989d8e87c03f4842e2b191acc3/recipes/poet-theme";
@@ -76578,12 +81281,12 @@
melpaBuild {
pname = "pollen-mode";
ename = "pollen-mode";
- version = "20180404.612";
+ version = "20190309.2138";
src = fetchFromGitHub {
owner = "lijunsong";
repo = "pollen-mode";
- rev = "df4eab5b490cb478a092e6bab6b07f9e2f9c6fad";
- sha256 = "0x8bnf0n109ard5zdmma04w0wv5jb1r7qh5smsa1kjvws98gnp57";
+ rev = "819edf830e9519f8ca57e9cef31211e3f444d11a";
+ sha256 = "0c06kfbyk2g0kxwlh6g3r7ij06ip6x9ni0bin24drwr0qj2vis2d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/97bda0616abe3bb632fc4231e5317d9472dfd14f/recipes/pollen-mode";
@@ -76596,6 +81299,207 @@
license = lib.licenses.free;
};
}) {};
+ poly-R = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , poly-markdown
+ , poly-noweb
+ , polymode }:
+ melpaBuild {
+ pname = "poly-R";
+ ename = "poly-R";
+ version = "20190323.1424";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-R";
+ rev = "3d90219d7e099ba65449681700ffc62cf88d9cc4";
+ sha256 = "1327rqdhc0xaad2k5rjwma6wwky72a8bfqmw1wqy0d4wzbn2wbrf";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-R";
+ sha256 = "1v2was6pdynwm22b4n2hkwyrr0c0iir9kp1wz4hjab8haqxz68ii";
+ name = "recipe";
+ };
+ packageRequires = [ emacs poly-markdown poly-noweb polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-R";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-ansible = callPackage ({ ansible
+ , ansible-doc
+ , fetchFromGitLab
+ , fetchurl
+ , jinja2-mode
+ , lib
+ , melpaBuild
+ , polymode
+ , yaml-mode }:
+ melpaBuild {
+ pname = "poly-ansible";
+ ename = "poly-ansible";
+ version = "20181222.717";
+ src = fetchFromGitLab {
+ owner = "mavit";
+ repo = "poly-ansible";
+ rev = "2cb970a0e27b41ae85bc51d24ef36fa2c7b34bbc";
+ sha256 = "04vf6zgcra47j3phxbb43q5sa5ldavnbiwwdlw1xipg44991j6md";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6d8beef5daa1804f68c30138cb03b5085a282c34/recipes/poly-ansible";
+ sha256 = "158z3nbqgrh71myyp4l263lw1gn4iiwxv8pl7fdlyp80hz5zs60y";
+ name = "recipe";
+ };
+ packageRequires = [
+ ansible
+ ansible-doc
+ jinja2-mode
+ polymode
+ yaml-mode
+ ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-ansible";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-erb = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , polymode }:
+ melpaBuild {
+ pname = "poly-erb";
+ ename = "poly-erb";
+ version = "20190317.723";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-erb";
+ rev = "5339b0ba665cbf62dc09571e9fbc5e824c5bf5e4";
+ sha256 = "13bvgh0y4nlwxyxph7xs1m9akwb9cln2s5bnnn6fhwhgamsbqcvi";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-erb";
+ sha256 = "01c1z2jll497k1y8835pp54n121y0gkyz1pdxcdjjqv7ia8jwfyy";
+ name = "recipe";
+ };
+ packageRequires = [ emacs polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-erb";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-markdown = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , markdown-mode
+ , melpaBuild
+ , polymode }:
+ melpaBuild {
+ pname = "poly-markdown";
+ ename = "poly-markdown";
+ version = "20190317.652";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-markdown";
+ rev = "852755d339197ea5b2197b64a97d0b9c03b94e9c";
+ sha256 = "00y510ky587frzpzbyi82rqngi8ifnfzd5r15lh9w34v3dxjif6f";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-markdown";
+ sha256 = "0pxai5x2vz6j742s3bpcy82dxja6441fsgclhz1hbv2ykazbm141";
+ name = "recipe";
+ };
+ packageRequires = [ emacs markdown-mode polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-markdown";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-noweb = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , polymode }:
+ melpaBuild {
+ pname = "poly-noweb";
+ ename = "poly-noweb";
+ version = "20190317.652";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-noweb";
+ rev = "1ce8d4f5c69376255e7be03fd03aa3b3bc00cfb5";
+ sha256 = "00n86lyrgffznspryc5h9bgqz5m0c0zwsxf9mlli62jf6c3wsd1q";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-noweb";
+ sha256 = "1692js29wdjpxvcbcaxysbsq6pxdqr38frqf88ksldlz35cmy62b";
+ name = "recipe";
+ };
+ packageRequires = [ emacs polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-noweb";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-org = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , polymode }:
+ melpaBuild {
+ pname = "poly-org";
+ ename = "poly-org";
+ version = "20190320.1337";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-org";
+ rev = "28421de2993de4da1e1db3b34a1215ce3ccc1d8b";
+ sha256 = "14f2752j55gj9is4prcx601km716vsq1fg25157bniiwd42vinqs";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-org";
+ sha256 = "1xrhdjmz3p5d3sgbfpmf6wksa1cpxqhy1wg17b5x8ah4w4yhpdca";
+ name = "recipe";
+ };
+ packageRequires = [ emacs polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-org";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-rst = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , polymode }:
+ melpaBuild {
+ pname = "poly-rst";
+ ename = "poly-rst";
+ version = "20190317.735";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-rst";
+ rev = "62a5cb9403f48f5c060244903ba0d14cb6822f6c";
+ sha256 = "1m2w9rlgpvdki083vyl9916fjb7dl7rd418kha3la46wks7z8ca5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d3fb89f58903245a8df75060ddd695a05cedb322/recipes/poly-rst";
+ sha256 = "08sdnjb5zvlynyxkmajn1j9gnjdjj81ycid9ziydvrb7hb88x2m4";
+ name = "recipe";
+ };
+ packageRequires = [ emacs polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-rst";
+ license = lib.licenses.free;
+ };
+ }) {};
poly-ruby = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -76605,12 +81509,12 @@
melpaBuild {
pname = "poly-ruby";
ename = "poly-ruby";
- version = "20170802.648";
+ version = "20180905.229";
src = fetchFromGitHub {
owner = "knu";
repo = "poly-ruby.el";
- rev = "e6f50a92d29a5ff567d70cafa6621c4f89056d11";
- sha256 = "1pdimvcrjq0k6a9kijcl6zmsmmvssdqsdkgcz14qs4444qly4l9b";
+ rev = "794ebb926ace23e9c1398da934701951432dcea2";
+ sha256 = "1ffm81hg1gah7hb9x556hda5g4j3gk4c986q9gaacvfizqak3gyy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/68213703359324d09553a2164f1f6ecca7c16854/recipes/poly-ruby";
@@ -76623,6 +81527,34 @@
license = lib.licenses.free;
};
}) {};
+ poly-slim = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , polymode
+ , slim-mode }:
+ melpaBuild {
+ pname = "poly-slim";
+ ename = "poly-slim";
+ version = "20190320.1342";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-slim";
+ rev = "1b9fe0fc9fb7f65975be22322d17dc49bdac7c4a";
+ sha256 = "1czjanp9h4l7jry2gkb7596zhdmh3m29931npfdk1fb0lafrqhik";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-slim";
+ sha256 = "15nh0d8y79rwc24akxfpf346jypadfgjjn6vlgaj6xjnj7wsp7ax";
+ name = "recipe";
+ };
+ packageRequires = [ emacs polymode slim-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-slim";
+ license = lib.licenses.free;
+ };
+ }) {};
polymode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -76631,16 +81563,16 @@
melpaBuild {
pname = "polymode";
ename = "polymode";
- version = "20170307.322";
+ version = "20190406.303";
src = fetchFromGitHub {
- owner = "vspinu";
+ owner = "polymode";
repo = "polymode";
- rev = "0340f5e7e55235832e59673f027cc79a23cbdcd6";
- sha256 = "057cybkq3cy07n5s332k071sjiky3mziy003lza4rh75mgqkwhmh";
+ rev = "0327dcac0f25e175e26f3774c24683d6bd6fc7a0";
+ sha256 = "0g0mkvk0ky8akm7bpf78n2zm4a52m89aiq0bfc2y87dgpbnvjyp4";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/polymode";
- sha256 = "0md02l7vhghvzplxa04sphimhphmksvmz079zykxajcvpm2rgwc8";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/polymode";
+ sha256 = "15i9masklpy4iwskc7dzqjhb430ggn0496z4wb1zjj0b9xx4wj66";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -76683,12 +81615,12 @@
melpaBuild {
pname = "pomodoro";
ename = "pomodoro";
- version = "20150716.1046";
+ version = "20190201.1352";
src = fetchFromGitHub {
owner = "baudtack";
repo = "pomodoro.el";
- rev = "4a299b8f5e6623010224dcb3e524ff288c6a082c";
- sha256 = "1dlk0ypw8316vgvb7z2p7fvaiz1wcy1l8crixypaya1zdsnh9v1z";
+ rev = "6cd665ceeaca1f70954aa4caef6f085179f94c69";
+ sha256 = "08z2nja3bhjgg6k7bb0cr8v02y8gaxkmxmfcvvgiixw3kfrnkpwn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0b5c2c50eb87952d01c1b338b7d3e4b3a4546555/recipes/pomodoro";
@@ -76760,12 +81692,12 @@
melpaBuild {
pname = "ponylang-mode";
ename = "ponylang-mode";
- version = "20171028.1356";
+ version = "20180804.821";
src = fetchFromGitHub {
owner = "SeanTAllen";
repo = "ponylang-mode";
- rev = "5e23459dc395eb77fa4c6cfa3d6c08b1b185a6df";
- sha256 = "0iwdnv56200w53ba4f66vih7gha2nb36ajnvbqixc0byibwcsnc9";
+ rev = "963abdcdb398b71fb13a4f7d2ffde23eb20e2a23";
+ sha256 = "1h0y6x4h7higwdq569h2lk0iddd23c3csqjk7y5phvc0lq812xs0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7d51adec3c6519d6ffe9b3f7f8a86b4dbc2c9817/recipes/ponylang-mode";
@@ -77075,12 +82007,12 @@
melpaBuild {
pname = "posframe";
ename = "posframe";
- version = "20180708.702";
+ version = "20190407.549";
src = fetchFromGitHub {
owner = "tumashu";
repo = "posframe";
- rev = "945761dc70c62a04747c4c892bdf5fc38670e50e";
- sha256 = "051gr067ac0bd59nzs4jqjqc27kbb6gl8whs106jwn39z0b0ndri";
+ rev = "11c2fa2d6e0236f20c83da86c37b005c64b8c5cb";
+ sha256 = "1m1vgv3ps99xdrvya7w7jlfm068ik3wswpl2hnr858vmyjp4ggi6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fa3488f2ede1201faf4a147313456ed90271f050/recipes/posframe";
@@ -77179,12 +82111,12 @@
melpaBuild {
pname = "powerline";
ename = "powerline";
- version = "20180321.1948";
+ version = "20190322.1913";
src = fetchFromGitHub {
owner = "milkypostman";
repo = "powerline";
- rev = "af5ef31a33c3589a9be0b2a55a2741582e605efd";
- sha256 = "0zynj4pl9717xbj8g1mac3haiybdndb034bnqk03bb42iyrwy767";
+ rev = "6ef4a06c3c583045accbc957b6f449b7c0c57cd8";
+ sha256 = "1ybm5y03if4wbzhx5p05wwgf2d8l2c4vwi22d0ygvlwrzfk8n5dl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f805053cd4dd9ed53ee0df17ad69429bc62325bb/recipes/powerline";
@@ -77232,12 +82164,12 @@
melpaBuild {
pname = "powershell";
ename = "powershell";
- version = "20180616.2328";
+ version = "20190113.45";
src = fetchFromGitHub {
owner = "jschaf";
repo = "powershell.el";
- rev = "4e215e4cd683c727315301d1b61bef4f9773abec";
- sha256 = "0dhl3cn2szvrj4084ly1f4fiwgixasvwi6skdchfvzbpx9q05dlv";
+ rev = "87cba2c5e0510bda3915b8324ae67ac52adcae31";
+ sha256 = "1dlyl8h539y75av144869ckz7difgmc1y2a2ngym7i6id22j1plp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7002c50f2734675134791916aa9d8b82b4582fcb/recipes/powershell";
@@ -77364,12 +82296,12 @@
melpaBuild {
pname = "prescient";
ename = "prescient";
- version = "20180702.1140";
+ version = "20190227.1043";
src = fetchFromGitHub {
owner = "raxod502";
repo = "prescient.el";
- rev = "18ddbe85e040dcf6fa9aeba8c8ce9d143921423a";
- sha256 = "1jaw3awjs1w65nclas891gramr2ib3svy8sph989wjbmlbg377zh";
+ rev = "9d15739133bac00ae222c98211a6735f41d88f86";
+ sha256 = "17ci1kdrw5j0h284i7akmjqnw465fawz5n2bqwqlpvzd6ghc2z8b";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ec02349e31531c347e4a43fbde56ae4386898cc6/recipes/prescient";
@@ -77484,6 +82416,36 @@
license = lib.licenses.free;
};
}) {};
+ pretty-hydra = callPackage ({ dash
+ , dash-functional
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , hydra
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "pretty-hydra";
+ ename = "pretty-hydra";
+ version = "20190226.1946";
+ src = fetchFromGitHub {
+ owner = "jerrypnz";
+ repo = "major-mode-hydra.el";
+ rev = "2142be970874c679300e539a1d9d0f048eb72a7f";
+ sha256 = "00hxv2nlzz4kgyzrldhqfnvnrhdcb82lm90xdbvn059f1v1zihn3";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/865917fcc75c4118afc89b8bcc20ebdb6302f15d/recipes/pretty-hydra";
+ sha256 = "0gp4cbffpa17svs7fzxighyly7c8brsn3avv3hqvd590kkz3fkri";
+ name = "recipe";
+ };
+ packageRequires = [ dash dash-functional emacs hydra s ];
+ meta = {
+ homepage = "https://melpa.org/#/pretty-hydra";
+ license = lib.licenses.free;
+ };
+ }) {};
pretty-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -77491,16 +82453,16 @@
melpaBuild {
pname = "pretty-mode";
ename = "pretty-mode";
- version = "20160614.1146";
+ version = "20190209.1302";
src = fetchFromGitHub {
- owner = "akatov";
+ owner = "pretty-mode";
repo = "pretty-mode";
- rev = "500085206e25b98d00b9ec996f91c87ba569c4ce";
- sha256 = "0m7ii971zxlz8a9yx2ljf9fmd8k6hc9w1q8mi5xi32v9viccjabs";
+ rev = "26119b4e28e294980bd16564a13c73dc963b98cc";
+ sha256 = "08sr73469zh0cn14lf3w2x4n7yf203pgr4hs3a218a5n51dksla3";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/4a2fe9feae4c1f007e51272a97917a63dcf6bbe5/recipes/pretty-mode";
- sha256 = "1zxi4nj7vnchiiz1ndx17b719a1wipiqniykzn4pa1w7dsnqg21f";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/pretty-mode";
+ sha256 = "0zm6azbl70qmq2ybi576wfs3mx0ny54mf97b94ac501miv4fv0mq";
name = "recipe";
};
packageRequires = [];
@@ -77569,14 +82531,14 @@
ename = "private";
version = "20150121.1757";
src = fetchFromGitHub {
- owner = "cheunghy";
+ owner = "zhangkaiyulw";
repo = "private";
rev = "f57f1c2f6bfe900bd40b252688df4c6ed6a5f44b";
sha256 = "0720vrb9nwy4c069fk7adw5f50g9dji1wra9s3jwazr8jn45k0mn";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/6c4195e20f942f7c9499731f51d3eba14eefd650/recipes/private";
- sha256 = "1glpcwcyndyn683q9mg99hr0h3l8pz7rrhbnfak01v826d5cnk9g";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/private";
+ sha256 = "1mvma2xgjy9vkh468x80xlri6qfr7d494la1j6r1clkjsn5kg7hr";
name = "recipe";
};
packageRequires = [ aes ];
@@ -77826,12 +82788,12 @@
melpaBuild {
pname = "project-abbrev";
ename = "project-abbrev";
- version = "20180705.1954";
+ version = "20181206.902";
src = fetchFromGitHub {
owner = "jcs090218";
repo = "project-abbrev";
- rev = "ca4bddd72a73d43332c5b262e6a104a341882af5";
- sha256 = "15nbfdc0z4wp8hakrc5m6bqn6klv22xxs3c3z6c49sdrlhqr9jvy";
+ rev = "21572d56a70fc95ef2d3782310e634f1a2623bc5";
+ sha256 = "0f8vd0yqa7k27jl9hxfqdfk6qs9q8p11j2iabdxi0v3wddhq3s2v";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/11580720cfbbbaeed9d914abb8a48705c195b159/recipes/project-abbrev";
@@ -77880,12 +82842,12 @@
melpaBuild {
pname = "project-persist";
ename = "project-persist";
- version = "20150519.1324";
+ version = "20180906.602";
src = fetchFromGitHub {
owner = "rdallasgray";
repo = "project-persist";
- rev = "a4e5de1833edb60656d8a04357c527d34e81d27c";
- sha256 = "1x7hwda1w59b8hvzxyk996wdz6phs6rchh3f1ydf0ab6x7m7xvjr";
+ rev = "26d9435bef44da2a1b0892eba822f9f487b98eec";
+ sha256 = "0ja2pnbw11a2gwywfyfbdpk8rkm8imy04wkshpnlh0nwn7lf0clm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bd81d1f8a30ed951ed94b9a4db13a2f7735ea878/recipes/project-persist";
@@ -77984,12 +82946,12 @@
melpaBuild {
pname = "projectile";
ename = "projectile";
- version = "20180721.352";
+ version = "20190402.2319";
src = fetchFromGitHub {
owner = "bbatsov";
repo = "projectile";
- rev = "06f7148ad5168476879c11dcacc02e76439a0226";
- sha256 = "167libx4b0xgnrz5xafbpylig4jmmn4dmqwqqcrf9953p37pn8ga";
+ rev = "5bd9db6f4b0a9e1c27136561b134a4d119552cdb";
+ sha256 = "1k9r5ssm4wavypd8m5mb64fgia68jzpkk1p0p598qcywvbxlbw35";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/projectile";
@@ -78067,12 +83029,12 @@
melpaBuild {
pname = "projectile-git-autofetch";
ename = "projectile-git-autofetch";
- version = "20180418.1636";
+ version = "20190103.1235";
src = fetchFromGitHub {
owner = "andrmuel";
repo = "projectile-git-autofetch";
- rev = "55855886bccb5a22fbeb2b1c86ef2e9ff4de9067";
- sha256 = "11h6ix7j145azg69kha46g2ggrmqff178p1krp12wv07iv3sijj6";
+ rev = "c6b4b99046122bc965e25cd20c737483d84fa8cc";
+ sha256 = "08hs4pbx0bw9lsfkc9za66am9ayyshlys5jrdh2aln1rfxrrr6hj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7fdfdeb69fd78fc1bb2c62392f860a8c434f1762/recipes/projectile-git-autofetch";
@@ -78127,12 +83089,12 @@
melpaBuild {
pname = "projectile-rails";
ename = "projectile-rails";
- version = "20180718.55";
+ version = "20190110.208";
src = fetchFromGitHub {
owner = "asok";
repo = "projectile-rails";
- rev = "38fa072fe2d63890a439cc29a19671da39e975bd";
- sha256 = "17fj0qmxnbj48d2mnpz0dw2060whi29b8d2qb9sa9irrwfb63ayw";
+ rev = "78f5cbe2c212ce19d4732212c46472d1c412659f";
+ sha256 = "09aby7yxk28rqz0vaps889idl5n41wj72pa0dr7bqmidq8i5jv4h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b16532bb8d08f7385bca4b83ab4e030d7b453524/recipes/projectile-rails";
@@ -78154,12 +83116,12 @@
melpaBuild {
pname = "projectile-ripgrep";
ename = "projectile-ripgrep";
- version = "20180301.651";
+ version = "20180914.800";
src = fetchFromGitHub {
owner = "nlamirault";
repo = "ripgrep.el";
- rev = "1f4338eeeb4bb3084a4b43762fa69a2c93ddff85";
- sha256 = "0im6l8gn3msl5jks3qif0jmi358kj46a50p2lirpjh6rnilmnanq";
+ rev = "93eca9138f6d6eea1af92f476c797ce19fa573d9";
+ sha256 = "0b1pa7srl1qmxaylv6iqy7rn4ajv9l87agpjrni01al01z6jfk1x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/195f340855b403128645b59c8adce1b45e90cd18/recipes/projectile-ripgrep";
@@ -78294,12 +83256,12 @@
melpaBuild {
pname = "projector";
ename = "projector";
- version = "20180712.1549";
+ version = "20190107.1325";
src = fetchFromGitHub {
owner = "waymondo";
repo = "projector.el";
- rev = "aeecd317b3031834569d2cd51171e377eacd0685";
- sha256 = "1nnggqrla6w58ll19fh01fndhssqx7l1blw21r8j9rv1vvjmvf3p";
+ rev = "b7ee3f78e54525c969316c3c717ec3b83f074b00";
+ sha256 = "09c8cfpz4i4vs7b0q4srg52spjwc1carr8n52xggk6dc5gbrg5wd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/420ffea4549f59677a16c1ee89c77b866487e302/recipes/projector";
@@ -78374,12 +83336,12 @@
melpaBuild {
pname = "promise";
ename = "promise";
- version = "20180409.252";
+ version = "20190405.105";
src = fetchFromGitHub {
owner = "chuntaro";
repo = "emacs-promise";
- rev = "f623fa7466983fd1ba7034371f599434c03da723";
- sha256 = "1ffk5scab9whn27xz4wyik5vl235ngvhx30fd05abq97d6l7hndl";
+ rev = "f237a52200b514d642a5e89f1437b0245f063e5d";
+ sha256 = "0k8bdz5lnipyj1bnyf3vwaqyd1y7wc6mxavqigv435r04520fmx7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3eaf5ac668008759677b9cc6f11406abd573012a/recipes/promise";
@@ -78443,6 +83405,32 @@
license = lib.licenses.free;
};
}) {};
+ proof-general = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "proof-general";
+ ename = "proof-general";
+ version = "20190212.633";
+ src = fetchFromGitHub {
+ owner = "ProofGeneral";
+ repo = "PG";
+ rev = "8f90ac961c22099a615c03ed07576aaef820e06d";
+ sha256 = "07rwy1q0pii1k7z18hpfs768w07n7qg0wrvcqkrjfii3hx19vbwf";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/135c8f2a04739145b500b8742a697907e398d270/recipes/proof-general";
+ sha256 = "10zif9ax4d3m8sa9y2xqz7g24xa2r3m2x5l0zqa06wm4afq29p87";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/proof-general";
+ license = lib.licenses.free;
+ };
+ }) {};
prop-menu = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -78608,12 +83596,12 @@
melpaBuild {
pname = "proxy-mode";
ename = "proxy-mode";
- version = "20180520.2030";
+ version = "20190129.1608";
src = fetchFromGitHub {
owner = "stardiviner";
repo = "proxy-mode";
- rev = "1cf689c2408945081215550589936a7eaab14987";
- sha256 = "0xvc33xwrdh71kmv1g85gb28ba7yx8cz6257dgh6sx7ligz7cmvd";
+ rev = "a6c55e97dbe4ec4df9dc21d234cabe806dce3a29";
+ sha256 = "13xa19k0xyqq03ypih0lrkm97l2c5zha8mwl264h9vamn81i8vm2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/25224d3bcdb625314e931d5acc22f60c7192a84b/recipes/proxy-mode";
@@ -78626,8 +83614,7 @@
license = lib.licenses.free;
};
}) {};
- psc-ide = callPackage ({ cl-lib ? null
- , company
+ psc-ide = callPackage ({ company
, dash
, dash-functional
, emacs
@@ -78642,20 +83629,19 @@
melpaBuild {
pname = "psc-ide";
ename = "psc-ide";
- version = "20180605.302";
+ version = "20190326.1410";
src = fetchFromGitHub {
- owner = "epost";
+ owner = "purescript-emacs";
repo = "psc-ide-emacs";
- rev = "f71120b0c0d3192f79488ab000b9a689e5145ce4";
- sha256 = "1lg3bqspjmcdmfyjpnx5l9zy0lmicgnszcdbysjmf4q5jxqd3lhd";
+ rev = "a10cc85565f330ee277698b27f3f715fef2e1ce2";
+ sha256 = "1nj8g31zys86p2kb1yrx9w0657qg3ckz5awfwz5wd5w1axxigk23";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/384ffc463cc6edb4806f8da68bd251e662718e65/recipes/psc-ide";
- sha256 = "1f8bphrbksz7si9flyhz54brb7w1lcz19pmn92hjwx7kd4nl18i9";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9eb5ff1de1d207317df052ecbd65dbe0f8766f5d/recipes/psc-ide";
+ sha256 = "0gvq4cmmnbh4afzhmpqmizlvyr2fmd88jwdcac3w4b25fvhzr8hp";
name = "recipe";
};
packageRequires = [
- cl-lib
company
dash
dash-functional
@@ -78671,29 +83657,28 @@
};
}) {};
psci = callPackage ({ dash
- , f
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
, melpaBuild
- , purescript-mode
- , s }:
+ , purescript-mode }:
melpaBuild {
pname = "psci";
ename = "psci";
- version = "20180418.533";
+ version = "20190307.1624";
src = fetchFromGitHub {
owner = "purescript-emacs";
repo = "emacs-psci";
- rev = "3f5ef1141a97c4b5507204d48e8aeccd553e4591";
- sha256 = "1g06hqr23mg8457azkjp7wjsqavj48c0mjck0igi6mc2rh310930";
+ rev = "3c10918a3a1d1dc613c222801deb465d4fbb2143";
+ sha256 = "14dj7jsyamkr05dqqlks8p12nb94gw0pj4dmnh1p771020b8drw0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3451719ce5096383db082917716a5ed8346fc186/recipes/psci";
sha256 = "1iwkr58b910vrwwxyk00psy74vp201vmm3b0cm4k5fh3glr31vp9";
name = "recipe";
};
- packageRequires = [ dash f purescript-mode s ];
+ packageRequires = [ dash emacs purescript-mode ];
meta = {
homepage = "https://melpa.org/#/psci";
license = lib.licenses.free;
@@ -78709,12 +83694,12 @@
melpaBuild {
pname = "psession";
ename = "psession";
- version = "20180423.2159";
+ version = "20181214.2338";
src = fetchFromGitHub {
owner = "thierryvolpiatto";
repo = "psession";
- rev = "702d20897c0839568201bc6921d5f0f80b8778c0";
- sha256 = "0ynd69fyjpgs6rs3kkznpx19kmdmd25wb46bj9zq61gj138b6p33";
+ rev = "983830eabdbea2bdd72fcdf2f05ca5c271fd4122";
+ sha256 = "09vw3wn69y712b9vpcr8m95if7xn63k3hsc6w9jwkz3xnlrz66q4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/669342d2b3e6cb622f196571d776a98ec8f3b1d3/recipes/psession";
@@ -78737,12 +83722,12 @@
melpaBuild {
pname = "psysh";
ename = "psysh";
- version = "20171022.2229";
+ version = "20181128.922";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "psysh.el";
- rev = "926af4ae0c068ed699fc939f4b3e642aaa6f7c9e";
- sha256 = "0k6kb4xbfxcvd7dm3kb600mq56xyy086zi7nal04jkv9lc59bwn7";
+ rev = "4709a57cdcf7103c4a606be89849ea3ead2d38a5";
+ sha256 = "1apf6mnqp9bg5dfykgvsn02z0xpyx6k34sd2pvicicig7w09kzvb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eb13cb0dba1696cc51132cd1ff723fa17f892a7c/recipes/psysh";
@@ -78780,6 +83765,35 @@
license = lib.licenses.free;
};
}) {};
+ pubmed = callPackage ({ deferred
+ , emacs
+ , esxml
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "pubmed";
+ ename = "pubmed";
+ version = "20190316.1651";
+ src = fetchFromGitLab {
+ owner = "fvdbeek";
+ repo = "emacs-pubmed";
+ rev = "195e5f6e0cb7b5c20723c2b6adc3ac19543cfcdc";
+ sha256 = "0c37kk8lzhlywlg7gagk62c7k21zy6cg9lhz0jy5sab1icrdzps5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ee84560c15e7389e902fb4a4c548c08be231de82/recipes/pubmed";
+ sha256 = "048kh442dnzgwz4wml2a5griav8zyrfzn5b43n9ky84pm7lgcxp3";
+ name = "recipe";
+ };
+ packageRequires = [ deferred emacs esxml s ];
+ meta = {
+ homepage = "https://melpa.org/#/pubmed";
+ license = lib.licenses.free;
+ };
+ }) {};
pug-mode = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -78814,12 +83828,12 @@
melpaBuild {
pname = "pulseaudio-control";
ename = "pulseaudio-control";
- version = "20180627.450";
+ version = "20190331.18";
src = fetchFromGitHub {
owner = "flexibeast";
repo = "pulseaudio-control";
- rev = "1da372ec79f5d2fb901d1f9f0679fee8848fd011";
- sha256 = "02xrsms2pjqdk6327midi61i5vg2h9cq5jwaxv43ldm68wl7hi6k";
+ rev = "638a02b0b59cd9662abbbb9dc947d0fed115b72d";
+ sha256 = "0kiqm9vcp2gi4a4c7isgffppx4bchf03vwlx8h70yhfycns2v0bk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7964f226e12c3a27ff856e28f4b030ebf304aea2/recipes/pulseaudio-control";
@@ -78918,12 +83932,12 @@
melpaBuild {
pname = "puppet-mode";
ename = "puppet-mode";
- version = "20171220.2249";
+ version = "20180813.1247";
src = fetchFromGitHub {
owner = "voxpupuli";
repo = "puppet-mode";
- rev = "b3ed5057166a4f49dfa9be638523a348b55a2fd2";
- sha256 = "0sgws5cl4vc8707l66lq0zi1p6pxik0474ihg9jczh2xxnq4clsk";
+ rev = "7dee1b5a5debac6e56f9107492a413b6c0edb94d";
+ sha256 = "01isn90h50p5c6cgzwhb1jq8yacj0fxw9ppfqrnynckg6ydpvg74";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1de94f0ab39ab18dfd0b050e337f502d894fb3ad/recipes/puppet-mode";
@@ -78936,31 +83950,57 @@
license = lib.licenses.free;
};
}) {};
- purescript-mode = callPackage ({ fetchFromGitHub
+ purescript-mode = callPackage ({ cl-lib ? null
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "purescript-mode";
ename = "purescript-mode";
- version = "20180120.709";
+ version = "20190227.1345";
src = fetchFromGitHub {
- owner = "dysinger";
+ owner = "purescript-emacs";
repo = "purescript-mode";
- rev = "b76c7f37f1a3527e8ace66bbd584851e1f803cc8";
- sha256 = "0nnrfs1siz4wwn56razlig6cvi8fqgcgk5wv5b0iyizq8a8wwia7";
+ rev = "43d8d205506d10ef829e77079fc4b8c569998f44";
+ sha256 = "0xbqy408532gnknfj78cnp9raqcmfk4scaxym7nzb8ffh2bd721n";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/77175fa470e517fa134751fbb38e144eb5b979ff/recipes/purescript-mode";
- sha256 = "00gz752mh7144nsaka5q3q4681jp845kc5vcy2nbfnqp9b24l55m";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/55462ed7e9bf353f26c5315015436b2a1b37f9bc/recipes/purescript-mode";
+ sha256 = "1g30xbv3xvv52r873465a2lp6fnws9q8dz277697qm0mgxkpimbp";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ cl-lib ];
meta = {
homepage = "https://melpa.org/#/purescript-mode";
license = lib.licenses.free;
};
}) {};
+ purp-theme = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "purp-theme";
+ ename = "purp-theme";
+ version = "20181211.1102";
+ src = fetchFromGitHub {
+ owner = "gnuvince";
+ repo = "purp";
+ rev = "4f5a95b132779f5219f7dc6bd6a412b7de1d8d1b";
+ sha256 = "1cbnw3fj5hy4wjkwrzikjpg1mk3dj9ic0bhdiyv9d6sv26d5f1sz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9e731ed27d812d822ebb1dbd639441ce59c4ecf7/recipes/purp-theme";
+ sha256 = "1ni8nnyfg4g49fw5m4pxa8fr147pyyvqa5gmydggv5r1xmldgsli";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/purp-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
purple-haze-theme = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -79328,12 +84368,12 @@
melpaBuild {
pname = "pydoc";
ename = "pydoc";
- version = "20180509.1519";
+ version = "20181024.1751";
src = fetchFromGitHub {
owner = "statmobile";
repo = "pydoc";
- rev = "253a95571fa80548e2174c89fa965e689030f09c";
- sha256 = "1linfl31i6wpbhyrrjw3xxxxi5d2747ng3bn3fk87ihd9zlbx6wz";
+ rev = "abb948e27efaf2452f339c62cd99a1c69930bbfe";
+ sha256 = "1da08x2hjjd9d832fwrd4rbd3h6f7m031kkxh53v9xdavkp0xqf1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5c4988a66040ddf659492bdb0ae2b9617c342c69/recipes/pydoc";
@@ -79488,12 +84528,12 @@
melpaBuild {
pname = "pyim";
ename = "pyim";
- version = "20180712.640";
+ version = "20190405.2125";
src = fetchFromGitHub {
owner = "tumashu";
repo = "pyim";
- rev = "b0ad82aa86124d74f9dfbdcad24199e111e5445c";
- sha256 = "03dq9mnz5mdbk3q9id0i4wf41r9ap3p5avihd0f4m77sspjfn9ix";
+ rev = "a80a203b7149d927a92d9bc27278117df44f05f2";
+ sha256 = "1z6yinn5azn4g1g6y4p55a579xm3rhhn9sxbmjlpd2ff66ahi8z3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/151a0af91a58e27f724854d85d5dd9668229fe8d/recipes/pyim";
@@ -79541,14 +84581,14 @@
ename = "pyim-cangjie5dict";
version = "20170729.1946";
src = fetchFromGitHub {
- owner = "erstern";
+ owner = "HesperusArcher";
repo = "pyim-cangjie5dict";
rev = "c8618590780b818db1a67a29bc47c5d25903517a";
sha256 = "0p49h2kn8wy3b51zahzyc1cy24h3b44cg5yjpmv4w23dhsr4zlz8";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/27a58729115b038abe813601bf16bba1524cdb2c/recipes/pyim-cangjie5dict";
- sha256 = "0k2nxdlrj3m09javv599ajwd8cd5mjz0hj1j51zpv4y0l1n801bn";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9a15a17a5aa78aed72958b2a1bde53f0c0ab5be7/recipes/pyim-cangjie5dict";
+ sha256 = "1l2k8kfnfciacp1zps8j1g6ijzv1k3g9198079l8c8xlw789irlv";
name = "recipe";
};
packageRequires = [ pyim ];
@@ -79565,12 +84605,12 @@
melpaBuild {
pname = "pyim-wbdict";
ename = "pyim-wbdict";
- version = "20170724.1527";
+ version = "20190201.1500";
src = fetchFromGitHub {
owner = "tumashu";
repo = "pyim-wbdict";
- rev = "114489ed97e825ae11a8d09da6e873820cf23106";
- sha256 = "187wx418pj4h8p8baf4943v9dsb6mfbn0n19r8xiil1z2cmm4ygc";
+ rev = "9799b689643052078f53d69342a82315251490f4";
+ sha256 = "1rqlckmlmwmnqvk8bbcyvwr54p6x9b1fph5f17anzlvwffdjsw5c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ab1cb8bc623d1f12f78fa42ce8b16514e5b07c51/recipes/pyim-wbdict";
@@ -79701,12 +84741,12 @@
melpaBuild {
pname = "pyramid";
ename = "pyramid";
- version = "20180718.1420";
+ version = "20181212.404";
src = fetchFromGitHub {
owner = "dakra";
repo = "pyramid.el";
- rev = "63b7ce47d3f79c8fdd06ea0cbdb519ae3e481aea";
- sha256 = "0al7sk1kj8czffxsc5dfhnpx7wh1iwxb3a3wx8ghgkgj5iw1y466";
+ rev = "277f7c623f489fd31c56d6e131c5481a71b6a926";
+ sha256 = "1xpb08m5zjyxpq45mmhfysxgaga2xj9r6nw6zs2rx0zkv6qjklnr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f786a47c2a6243c693163680146606c71502d0be/recipes/pyramid";
@@ -79727,12 +84767,12 @@
melpaBuild {
pname = "pytest";
ename = "pytest";
- version = "20170614.745";
+ version = "20181005.824";
src = fetchFromGitHub {
owner = "ionrock";
repo = "pytest-el";
- rev = "013fccd684fc8f2092d6e1ec4203ec574e12051d";
- sha256 = "0yjnq2lyh6jr5xz29n6xxmp4lcy28wrcmw05j0zgcjdshri1pd43";
+ rev = "1bfa7549001e61ecd59cd6eae7c6656a924d1ba4";
+ sha256 = "1ry0czn0qjjiw75v47jamxbfzh70jxai6lvf3pp5v87wp1xhnznh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/33a854a27adbaf57d344340199f90d52747b8450/recipes/pytest";
@@ -79745,6 +84785,32 @@
license = lib.licenses.free;
};
}) {};
+ pytest-pdb-break = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "pytest-pdb-break";
+ ename = "pytest-pdb-break";
+ version = "20190307.2255";
+ src = fetchFromGitHub {
+ owner = "poppyschmo";
+ repo = "pytest-pdb-break";
+ rev = "9966507e1a3f2c4a5249ee96a93790cca82d91c5";
+ sha256 = "1is1v28bqk43dqmhjggxlfxz3l7va4686k8y2hxmhrl80hg54182";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4ed7d5d5e81818dad55edda73fbeca8c5021b932/recipes/pytest-pdb-break";
+ sha256 = "0dxn53y9zjlip0bjynjql984wrf39pmg5fsx1qgsrj1bw78xqw26";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/pytest-pdb-break";
+ license = lib.licenses.free;
+ };
+ }) {};
python-cell = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -79752,12 +84818,12 @@
melpaBuild {
pname = "python-cell";
ename = "python-cell";
- version = "20131029.1616";
+ version = "20190217.1023";
src = fetchFromGitHub {
owner = "thisch";
repo = "python-cell.el";
- rev = "ccacd91a19be784860d687eb1e8ce88fddaacaf6";
- sha256 = "1cnjdgw3x6yb5k06z57xifywlg0kdx9ai4f1ajc0wx9aax8r5gav";
+ rev = "665725446b194dbaaff9645dd880524368dd710a";
+ sha256 = "1rjh16jacp98i0l78ij5lfp5f0b42qhfzms2x8zwr9j2aj1csy2h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0549866c5e96f673ec9dec298e7ff9d5779d443b/recipes/python-cell";
@@ -79878,12 +84944,12 @@
melpaBuild {
pname = "python-mode";
ename = "python-mode";
- version = "20180721.1147";
+ version = "20190313.409";
src = fetchFromGitLab {
owner = "python-mode-devs";
repo = "python-mode";
- rev = "acb7714fd24ce06e1800fb955d547d367c64439d";
- sha256 = "1bmd0qc7qbzpxfg0wj4fs4qmdqdjar2zn8ljgr845j7qbxd0hcav";
+ rev = "e916afc06f2a9bc1f02d93081ee0ee1ec2e8740b";
+ sha256 = "03vc619iq7hd5q7m5rlxlq7h1irc288x2hr6gnm58b711gyax5fk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/82861e1ab114451af5e1106d53195afd3605448a/recipes/python-mode";
@@ -79909,12 +84975,12 @@
melpaBuild {
pname = "python-pytest";
ename = "python-pytest";
- version = "20180614.253";
+ version = "20180725.446";
src = fetchFromGitHub {
owner = "wbolster";
repo = "emacs-python-pytest";
- rev = "1ddb1ec183872dbcf383a4cc60b60944aaba7727";
- sha256 = "190ccqvdnxdsslsdn7c2b3a2377jrrpi4gj8rdbbksmjyr20gbf2";
+ rev = "09ad688df207ee9b02c990d3897a9e2841931d97";
+ sha256 = "18v7kxdhrayxg2pgbysm0y47xpdvwa15fmazpkfg0q8dfp2j3022";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d95442748827911e082a55f4fd7c348a3757e274/recipes/python-pytest";
@@ -79968,12 +85034,12 @@
melpaBuild {
pname = "python-test";
ename = "python-test";
- version = "20171112.2137";
+ version = "20181017.1729";
src = fetchFromGitHub {
owner = "emacs-pe";
repo = "python-test.el";
- rev = "f00b9de14647b15b6f36ceee77d7e9e08dd074a4";
- sha256 = "1ba3r79afd5za36g09imp546bbvx2v9j58hl1bhjahx992wywrch";
+ rev = "f899975b133539e19ba822e4b0bfd1a28572967e";
+ sha256 = "0ww0qf9hsd8j31dc0p3fmsiqsir3mqbd4pwv4i29qidmbgrk3cv0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0ea68b3aa9c057e81a3e90a359a38ac16cb26c2f/recipes/python-test";
@@ -79996,12 +85062,12 @@
melpaBuild {
pname = "python-x";
ename = "python-x";
- version = "20180218.1447";
+ version = "20180802.1042";
src = fetchFromGitLab {
owner = "wavexx";
repo = "python-x.el";
- rev = "35d6719953e809a07c0bb8f770deb5fa712d00e5";
- sha256 = "1s24a9ji549nhlanm13gq7ghnz0zj6mwpbbmbqk8igsw3arx2nvr";
+ rev = "74d8c7eb824846de94705b1e74ee03ef109868d1";
+ sha256 = "00vy3qqkg3zzvjk1cmkl72nmvjdhrccybd36ggnzszq73szcl7n2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c1cf98dff029d494007fe25d29bd8bcfecc5b8e6/recipes/python-x";
@@ -80024,12 +85090,12 @@
melpaBuild {
pname = "pythonic";
ename = "pythonic";
- version = "20180624.2212";
+ version = "20190214.1016";
src = fetchFromGitHub {
owner = "proofit404";
repo = "pythonic";
- rev = "838eaf47c23628c5e88a59796bbe4653c57bf5c0";
- sha256 = "11gq0crq9ng6wy15kpv3zgahczyzv8clakwal1mvb6b5jq6ndmb5";
+ rev = "16c16202b76d33edd6a95814b2a9c298437f9832";
+ sha256 = "1j8jslc0p85kl1fgl108ccvavqcvjda7hsc4ks9avill18w3dm5h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5589c55d459f15717914061d0f0f4caa32caa13c/recipes/pythonic";
@@ -80049,12 +85115,12 @@
melpaBuild {
pname = "pyvenv";
ename = "pyvenv";
- version = "20180720.214";
+ version = "20181228.922";
src = fetchFromGitHub {
owner = "jorgenschaefer";
repo = "pyvenv";
- rev = "5824c8986bc3d21b1b0ab6a00d396bedbe1506b2";
- sha256 = "0qdaxfl6bhxg41r6fhpqwzjrxmjnp7pznrk1r3zfyris60ih91cq";
+ rev = "fa6a028349733b0ecb407c4cfb3a715b71931eec";
+ sha256 = "1x052fsavb94x3scpqd6n9spqgzaahzbdxhg4qa5sy6hqsabn6zh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e37236b89b9705ba7a9d134b1fb2c3c003953a9b/recipes/pyvenv";
@@ -80067,6 +85133,32 @@
license = lib.licenses.free;
};
}) {};
+ q-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "q-mode";
+ ename = "q-mode";
+ version = "20181216.947";
+ src = fetchFromGitHub {
+ owner = "psaris";
+ repo = "q-mode";
+ rev = "7a13fb68a0ad3d843c8cdc188cf0adb9723f42f7";
+ sha256 = "0di229ma7jr9jcck36qjrzilkbp428kkx53qs6c9xw9jhv6yklbz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fff65433eff01d6239809df4c047f0e4349cc4a9/recipes/q-mode";
+ sha256 = "1vv3hynd6k050nxln83l703ymzyh1kl69cdy4yabdvmkqw4gbshz";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/q-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
qiita = callPackage ({ fetchFromGitHub
, fetchurl
, helm
@@ -80171,6 +85263,31 @@
license = lib.licenses.free;
};
}) {};
+ quack = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "quack";
+ ename = "quack";
+ version = "20181106.501";
+ src = fetchFromGitHub {
+ owner = "emacsmirror";
+ repo = "quack";
+ rev = "2146805ce2b5a9b155d73929986f11e713787e26";
+ sha256 = "005wkji4wjqqilgmqy81rjqr8zx4gl39mari2ahvr9mfps2ypmjz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aa58bf19d4b65ec785677a36709794ae5aebded4/recipes/quack";
+ sha256 = "18f3py9vr08589g9kvbcn2nvpd074rx45ni9k66cwl3hjb3hdkg5";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/quack";
+ license = lib.licenses.free;
+ };
+ }) {};
quasi-monochrome-theme = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -80178,12 +85295,12 @@
melpaBuild {
pname = "quasi-monochrome-theme";
ename = "quasi-monochrome-theme";
- version = "20180516.813";
+ version = "20181213.27";
src = fetchFromGitHub {
owner = "lbolla";
repo = "emacs-quasi-monochrome";
- rev = "e803bc0c2e38f350feb8297a092812e5204781c7";
- sha256 = "0s1pqyxahkz5rrczk8m7xiqm41rjhxsyfdl2klp2l8ih13zlwf6i";
+ rev = "68060dbbc0bbfe4924387392874186c5a29bb434";
+ sha256 = "0zp2xr0bjfqrpb0bqczzick1vvbjmipjavrdi70kw6a9caynvq22";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a9c8498e4bcca19c4c24b2fd0db035c3da477e2a/recipes/quasi-monochrome-theme";
@@ -80204,11 +85321,11 @@
melpaBuild {
pname = "quelpa";
ename = "quelpa";
- version = "20180711.1338";
+ version = "20190217.450";
src = fetchgit {
url = "https://framagit.org/steckerhalter/quelpa.git";
- rev = "66c760b43eb6158f520df4e514f1d9c8e4ddee71";
- sha256 = "0qz5zfj24cmaw903xszf8zg4hmas6q8k6bx5c10vq45rwqkdcgva";
+ rev = "716048b5ee048797551a59a4bd121026486db214";
+ sha256 = "05926kvgp7mbdmwlfn2sdqzxg0b5nxr41m08p8mywfwjqjvnsvw8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a496196d405c152600d44ef4aa28557f489c542c/recipes/quelpa";
@@ -80231,11 +85348,11 @@
melpaBuild {
pname = "quelpa-use-package";
ename = "quelpa-use-package";
- version = "20180617.2356";
+ version = "20190210.1038";
src = fetchgit {
url = "https://framagit.org/steckerhalter/quelpa-use-package.git";
- rev = "54ebc63607647fe4f26b56519d81e18f0e70a689";
- sha256 = "1f007lkjb42rlfsnwkj61fdqyncw4587x8a9qbhq583bfh2d3p5c";
+ rev = "6f3cc87caa6cb8795079c5cab3c6665970859098";
+ sha256 = "129pigh1njn50s1lq81blcn54bkb6hwrlxg0sk7m1zsf6rybw0rf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a496196d405c152600d44ef4aa28557f489c542c/recipes/quelpa-use-package";
@@ -80281,12 +85398,12 @@
melpaBuild {
pname = "quick-peek";
ename = "quick-peek";
- version = "20180525.711";
+ version = "20190208.715";
src = fetchFromGitHub {
owner = "cpitclaudel";
repo = "quick-peek";
- rev = "3cc57cc12f4b5f27a18cc5fb0c32c3a943c16158";
- sha256 = "0wrgdny402z95234kn86k17qn1v3sg8bfdn48y9mg52dk7wnsxvf";
+ rev = "fd8a6c81422932539d221f39f18c90f2811f2dd9";
+ sha256 = "18jr3syd7jd809qq1j61zwaaclmqn24qyb0mv0q8sj6ac4vzl1c3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/68f59a3048ec6196b138b6584a22ce70baa38284/recipes/quick-peek";
@@ -80428,6 +85545,32 @@
license = lib.licenses.free;
};
}) {};
+ quilt = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "quilt";
+ ename = "quilt";
+ version = "20190303.2140";
+ src = fetchFromGitHub {
+ owner = "jstranik";
+ repo = "emacs-quilt";
+ rev = "161ce2d8ba225bccef0ea8ae4937251b8ccaa892";
+ sha256 = "0r9j71rc2jcwfr6yqg8qx4fwypqg1d7p31af258ixygs3qy69x14";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/28ad2d71574c1995287371cfd73648871b9271f0/recipes/quilt";
+ sha256 = "0fgni5khjbxy28i2vdwhcvs0z0yx43ll0c4s8br4w7q9s0nlcvmv";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/quilt";
+ license = lib.licenses.free;
+ };
+ }) {};
quiz = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -80495,12 +85638,12 @@
melpaBuild {
pname = "racer";
ename = "racer";
- version = "20180708.2325";
+ version = "20190319.1756";
src = fetchFromGitHub {
owner = "racer-rust";
repo = "emacs-racer";
- rev = "dd7f179efbab6597eb7eb1d66883f168b3dc5573";
- sha256 = "0drawn72lg6xxzg85909gfgrckh641m70gzqzrabcdqizfcxm5pk";
+ rev = "9d8984ef384932e0e7647ecb057db7ad1e9833f1";
+ sha256 = "10q26bkv26fgdcvs6cn2vb2i4359yn7a4n3r7vs8qfpnck7i0j8x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/97b97037c19655a3ddffee9a86359961f26c155c/recipes/racer";
@@ -80523,16 +85666,16 @@
melpaBuild {
pname = "racket-mode";
ename = "racket-mode";
- version = "20180719.854";
+ version = "20190405.745";
src = fetchFromGitHub {
owner = "greghendershott";
repo = "racket-mode";
- rev = "0f75097771a8ad9b9356c915ba877353aff1e7f6";
- sha256 = "0ms31sjxxww93j0f731ww7yj3adl2scpr3m1zx4w5094mi69babg";
+ rev = "b2681c50afd180ed3a89345e015926eb31dba30d";
+ sha256 = "038f03y8nmzfjdbxcyfg6sd6y9zimlc9yvcs9lggvps1ni2y4j58";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7ad88d92cf02e718c9318d197dd458a2ecfc0f46/recipes/racket-mode";
- sha256 = "04sr55zrgwyi48sj4ssm4rmm327yxs7hvjhxclnkhaaigrmrv7jb";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9af8dea03aba378f21c6109faf48278b4d2bf59f/recipes/racket-mode";
+ sha256 = "0cmlz314w5227br0vns5d7jhpspv1byzalgzv8f9v2qjyvk6jvsn";
name = "recipe";
};
packageRequires = [ emacs faceup s ];
@@ -80573,12 +85716,12 @@
melpaBuild {
pname = "railscasts-reloaded-theme";
ename = "railscasts-reloaded-theme";
- version = "20180131.2246";
+ version = "20190307.2359";
src = fetchFromGitHub {
owner = "thegeorgeous";
repo = "railscasts-reloaded-theme";
- rev = "6312f01470dcc73537dbdaaccabd59c4d18d23a9";
- sha256 = "1fqpqgkpn36kj3fb4na0w4cjwln05rvy6w1q5czas8z37rk2bs33";
+ rev = "c6a1cf13a164f22b026b0959527c3b98c2b1aa49";
+ sha256 = "00clkjrp2nfchhznilxjb56bcdv1an50cawnz6747ck22x0ycbfn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9817851bd06cbae30fb8f429401f1bbc0dc7be09/recipes/railscasts-reloaded-theme";
@@ -81163,12 +86306,12 @@
melpaBuild {
pname = "react-snippets";
ename = "react-snippets";
- version = "20170803.1550";
+ version = "20181002.346";
src = fetchFromGitHub {
owner = "johnmastro";
repo = "react-snippets.el";
- rev = "bfc4b68b81374a6a080240592641091a7e8a6d61";
- sha256 = "1wna4v8l3j0ppjv4nj72lhp0yh6vbka6bvl1paqqfvay300kiqjb";
+ rev = "87ccb640d265fe799583ab55605b84d113223694";
+ sha256 = "0zs78mn37ngy86blmp2xfy7jr5p0s6r0qq6z3z924amrhy5bwdqc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3720192fdfa45f9b83259ab39356f469c5ac85b4/recipes/react-snippets";
@@ -81267,16 +86410,16 @@
melpaBuild {
pname = "real-auto-save";
ename = "real-auto-save";
- version = "20180107.1850";
+ version = "20190224.646";
src = fetchFromGitHub {
- owner = "chillaranand";
+ owner = "ChillarAnand";
repo = "real-auto-save";
- rev = "d813632c1e754539cc92953ac4c3609105f9af58";
- sha256 = "0gz0w7zxl865shz9mf5xv8xi5mjq969600jqh4laazvhyk32skmg";
+ rev = "824ad04121493723b08838c8b96559947dca7ed9";
+ sha256 = "1szpjv04rp9x9ph44a5s56a2y96z5x474bccsjnmn6yhingh5qik";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/525039a3dc29190829bf50d608ef09bc4a8557af/recipes/real-auto-save";
- sha256 = "03dbbizpyg62v6zbq8hd16ikrifz8m2bdlbb3g67f2834xqmxha8";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/real-auto-save";
+ sha256 = "1li0b2d93ffxjq4jdyzyvjdy5h7q5xllys0w4748d2bhr8q35p3w";
name = "recipe";
};
packageRequires = [];
@@ -81297,16 +86440,16 @@
melpaBuild {
pname = "realgud";
ename = "realgud";
- version = "20180710.1953";
+ version = "20190121.1643";
src = fetchFromGitHub {
- owner = "rocky";
- repo = "emacs-dbgr";
- rev = "da2a74b50a770a2c1166656a05ba9d132a2a5c73";
- sha256 = "0w5lbwjaraw11sj36a9hsywa187g97hnvksrd6wbf8prbfwhghlx";
+ owner = "realgud";
+ repo = "realgud";
+ rev = "1da5f2b5161bd5d5671b38ab182084e2d89e7c45";
+ sha256 = "19ijc3v1wz01631hyc3x1bgx9kczhdzc99jlxxfq9y5yr8p1s2qa";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7ca56f05df6c8430a5cbdc55caac58ba79ed6ce5/recipes/realgud";
- sha256 = "0qmvd35ng1aqclwj3pskn58c0fi98kvx9666wp3smgj3n88vgy15";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/7a21be3673962d5706f12efa5179a5426bdce82b/recipes/realgud";
+ sha256 = "14n6d3jfhpa29nf4ywdg3aw4i51lfkr99b4z8q4833pmpz1jbq2c";
name = "recipe";
};
packageRequires = [
@@ -81333,14 +86476,14 @@
ename = "realgud-byebug";
version = "20180308.1923";
src = fetchFromGitHub {
- owner = "rocky";
+ owner = "realgud";
repo = "realgud-byebug";
rev = "de603d58aa9ef72a2619247a0234fccf6bc2cc9a";
sha256 = "1hk2z7axy1v5yvx4xgkisfk00varq5rf8j88f0l63ywylyw1fwhl";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7ca56f05df6c8430a5cbdc55caac58ba79ed6ce5/recipes/realgud-byebug";
- sha256 = "1m4pqnvnnfzq7b9bv5fkz70pifklddwqrwbwnrfyiawx9vdgrpz9";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/realgud-byebug";
+ sha256 = "1akv9raa6yb5h4lsvz7mxlnd9l7adg2rpgw7ski6036n6facn18a";
name = "recipe";
};
packageRequires = [ cl-lib emacs realgud ];
@@ -81361,14 +86504,14 @@
ename = "realgud-old-debuggers";
version = "20170316.31";
src = fetchFromGitHub {
- owner = "rocky";
+ owner = "realgud";
repo = "realgud-old-debuggers";
rev = "1e1d573a6ba731afbe68c1309a316457ca3fbb94";
sha256 = "1gk8k9lqbvqq4ngw0ffp3sqhkaj23n54m3ndh2ba9gvlmx7mxm7g";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/260b4d5a85c380dda0f7bb0370e3ffa8cc3c0275/recipes/realgud-old-debuggers";
- sha256 = "0iwi1byfwcpviaizdw9wzdcjlbk35ql4wfzj0ynh331g0hmibhs9";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/realgud-old-debuggers";
+ sha256 = "14kig9yxss9nfc0cc54ph80pbdrmh1mdazypiwxbnj2nk1dk3qsv";
name = "recipe";
};
packageRequires = [ cl-lib emacs realgud ];
@@ -81389,14 +86532,14 @@
ename = "realgud-pry";
version = "20160805.745";
src = fetchFromGitHub {
- owner = "rocky";
+ owner = "realgud";
repo = "realgud-pry";
rev = "fca36075a223f6a4a643764199babe3d1dfde2ac";
sha256 = "08jnav5v5q1mwgk9x100magm3jcprzfhmx8z6x8vcmp7xf79n1pp";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7ca56f05df6c8430a5cbdc55caac58ba79ed6ce5/recipes/realgud-pry";
- sha256 = "1p5ijig5rczndcykllq0vy6w4askwl0yd8b5fqg7yl5yx45r8xgs";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/realgud-pry";
+ sha256 = "1f8qap30r26gg33i76474zk6fs3r9qjf7jrxpm4xwpbjraggqy3z";
name = "recipe";
};
packageRequires = [ cl-lib emacs realgud ];
@@ -81415,14 +86558,14 @@
ename = "realgud-rdb2";
version = "20160303.43";
src = fetchFromGitHub {
- owner = "rocky";
+ owner = "realgud";
repo = "realgud-ruby-debugger2";
rev = "e63eeed131517a9e8225f972c9f6c975c8121e41";
sha256 = "0skaw5fzvqk56mfk3ciy9n85vznq1sxv6w575v3jd80w2dns4yay";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7ca56f05df6c8430a5cbdc55caac58ba79ed6ce5/recipes/realgud-rdb2";
- sha256 = "0wqvgb3h2b0ys76sq2z462cjv0fajqc41f7wqvf53wfcs2zw4l9y";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/realgud-rdb2";
+ sha256 = "16pk034g26xnbsz0w9z8p76jiaraz8lvbf5hf0mmg1f5f4xlinz7";
name = "recipe";
};
packageRequires = [ realgud ];
@@ -81439,12 +86582,12 @@
melpaBuild {
pname = "reason-mode";
ename = "reason-mode";
- version = "20180722.437";
+ version = "20190210.941";
src = fetchFromGitHub {
owner = "reasonml-editor";
repo = "reason-mode";
- rev = "5777cce583039df82a49c6fc8b57c99f127b2565";
- sha256 = "0baxdq02i0lwk2ll3jddfz5w1paq496vd3if2p7vfipgf79y0n8g";
+ rev = "8eabf39fe84280e0753c1c0c4b8ecb7b8f94f68f";
+ sha256 = "1hbz3bzlb0r0ss5vl8ahl9x2vp049agms8hxwma0ycs6ai1ygcn1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f9f1a18c13601f3a4fd7b1bbfe7d5da07746e492/recipes/reason-mode";
@@ -81457,6 +86600,32 @@
license = lib.licenses.free;
};
}) {};
+ reazon = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "reazon";
+ ename = "reazon";
+ version = "20180921.737";
+ src = fetchFromGitHub {
+ owner = "nickdrozd";
+ repo = "reazon";
+ rev = "020be6467a83957adcbdcb192b61f2c76a94079b";
+ sha256 = "18la2g0srybr10vm1dajgbxi67j1l0cs08mr696hxb6m558yxdv5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/77020b6ea36a4115bdddbc9599fe4f4193ecc29d/recipes/reazon";
+ sha256 = "1lymdc1lnwr7s8s15mnjcavxdyqncy2rkfdj571lf1a37y52jcj1";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/reazon";
+ license = lib.licenses.free;
+ };
+ }) {};
rebecca-theme = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -81559,6 +86728,33 @@
license = lib.licenses.free;
};
}) {};
+ recently = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "recently";
+ ename = "recently";
+ version = "20190317.534";
+ src = fetchFromGitHub {
+ owner = "10sr";
+ repo = "recently-el";
+ rev = "7b5d1128becb387d759a3a95f6afb9ef54be792a";
+ sha256 = "0wghawh47jd2j5s77h1b69fg5njff1yccx1xpvwmlj6ssh3p38xp";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/bb8d1628e1787cba10fc612f3351e4085e9a3153/recipes/recently";
+ sha256 = "1928v1897l1n42zrzqfwkq6nckf9y822qcwy99294rq0b4z83kxs";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/recently";
+ license = lib.licenses.free;
+ };
+ }) {};
recompile-on-save = callPackage ({ cl-lib ? null
, dash
, fetchFromGitHub
@@ -81670,12 +86866,12 @@
melpaBuild {
pname = "recursive-narrow";
ename = "recursive-narrow";
- version = "20140902.1027";
+ version = "20190306.721";
src = fetchFromGitHub {
owner = "nflath";
repo = "recursive-narrow";
- rev = "bc0cab88234ca92640d4b8da0d83e132c1897922";
- sha256 = "1mj7lyadzn3bwig3f9zariq5z4fg6liqnjvfd34yx88xc52nwf33";
+ rev = "5e3e2067d5a148d7e64e64e0355d3b6860e4c259";
+ sha256 = "1dxghz1fb2l7y7qphqk0kk732vazlk1n1fl6dlqhqhccj450h2qa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/recursive-narrow";
@@ -81777,12 +86973,12 @@
melpaBuild {
pname = "redshank";
ename = "redshank";
- version = "20180128.1348";
+ version = "20180729.2107";
src = fetchFromGitHub {
owner = "emacsattic";
repo = "redshank";
- rev = "f3eef7d4891570e6bcb74eb52c73edb765a639b8";
- sha256 = "00mihmjd0amr9wzb3qsz69bp7y5iqx9vvh1hg77i57zlm88x6ma6";
+ rev = "d059c5841044aa163664f8bf87c1d981bf0a04fe";
+ sha256 = "1545z1dd85zg8sg2r5r5gdnmgxbxwjvl5xklx5nvpd0gbxlwbpqk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2677a5cf74ebace6510517f47eaa43b35f736683/recipes/redshank";
@@ -81821,6 +87017,32 @@
license = lib.licenses.free;
};
}) {};
+ redtt = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "redtt";
+ ename = "redtt";
+ version = "20181120.1621";
+ src = fetchFromGitHub {
+ owner = "RedPRL";
+ repo = "redtt";
+ rev = "c95d1a0787fb92eb011df690b4bdc1029a611c0b";
+ sha256 = "1l9agj28ik4b57rxai1jp23bc4l832m72znkqacch0gvxx553q2w";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/8db65908885f753bf65849b89ebabe0c4df664f9/recipes/redtt";
+ sha256 = "0gnqik2p2rb8c1mp3vrz1xf7z89xfcx5pi4lqsdnwjhxjh2534zk";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/redtt";
+ license = lib.licenses.free;
+ };
+ }) {};
refine = callPackage ({ dash
, emacs
, fetchFromGitHub
@@ -81851,6 +87073,32 @@
license = lib.licenses.free;
};
}) {};
+ reformatter = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "reformatter";
+ ename = "reformatter";
+ version = "20190209.2001";
+ src = fetchFromGitHub {
+ owner = "purcell";
+ repo = "reformatter.el";
+ rev = "00413b21ec418f92f3c7d8235a809cf50a10f288";
+ sha256 = "0hmi6c3kf7plg3pdcyiiwhl5ckdr5p43d9y9172kw89y6ivf4635";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/58de8cf8864867f7b3969f3a048a4844837078b4/recipes/reformatter";
+ sha256 = "0z4wa0bmhz55c54vx7qxkl9x7ix20mmgygv91sqll68l10g63l0c";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/reformatter";
+ license = lib.licenses.free;
+ };
+ }) {};
regex-dsl = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -81933,16 +87181,16 @@
melpaBuild {
pname = "region-convert";
ename = "region-convert";
- version = "20161118.1859";
+ version = "20181220.2128";
src = fetchFromGitHub {
owner = "zonuexe";
- repo = "right-click-context";
- rev = "32f572b4f9ff6f9a062a914b4f8ba66f43e7ee8a";
- sha256 = "1lsr7ljzvfs84jnlk2igg8h0ki09gzw2ihgl2p6wdn27d47blcwd";
+ repo = "region-convert.el";
+ rev = "173c86b4b3fc187d54bcd85b4d7df27a5ee24965";
+ sha256 = "1paljjwr6sfl835m24vj2j4x3zdh3whwayj6dvyfarbhhcwbwphj";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ddcf4612cccb9a53425c5f0324206d70549d9d9e/recipes/region-convert";
- sha256 = "0daghvxc6gxgric1aa1gw036gbpbzilqz72gr1inqy92hz7xrxfm";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f6963fc11d697b95ebbdaf7fe27c91a6229d08b6/recipes/region-convert";
+ sha256 = "16i1b83jms7djkyb3n0crfxgpz05m68f4nrlvzxjj7fb56mvf9j7";
name = "recipe";
};
packageRequires = [];
@@ -81958,12 +87206,12 @@
melpaBuild {
pname = "region-state";
ename = "region-state";
- version = "20151128.238";
+ version = "20181205.946";
src = fetchFromGitHub {
owner = "xuchunyang";
repo = "region-state.el";
- rev = "07ffb7d9ada2fcd204f3447f078c265d25f36f60";
- sha256 = "0gsh0x1rqxvzrszdyna9d8b8w22mqnd9yqcwzay2prc6rpl26g1f";
+ rev = "f9e3926036a7c261b20bad9bf46f68ead8c15024";
+ sha256 = "1wb46m7qdhbjkgzwf6yg0hsjh44dq8sa1w99k7czy1yq2i2mz1k6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/716e82eb4ca0845f59a743556b37be8a1ecb29af/recipes/region-state";
@@ -81983,12 +87231,12 @@
melpaBuild {
pname = "register-channel";
ename = "register-channel";
- version = "20150513.2059";
+ version = "20180926.1649";
src = fetchFromGitHub {
owner = "YangZhao11";
repo = "register-channel";
- rev = "f62f9a62ebd2537d4a8c8f2e358562c67d2aefc1";
- sha256 = "01k3v4yiilz1k6drv7b2x6zbjx6dlz7cch8rq63mwc7v8kvdnqmi";
+ rev = "9272923757402d177a0b2deab1d9c3c74601c48e";
+ sha256 = "0k9qgrbzbxx4sjffnr02qx5wm71i3m61w7mh2j4hq9jf8k6nbkq4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ad44618ac36e96d04f5c44c77637ea6229e61b4c/recipes/register-channel";
@@ -82002,22 +87250,23 @@
};
}) {};
related = callPackage ({ cl-lib ? null
- , fetchgit
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "related";
ename = "related";
- version = "20161002.2310";
- src = fetchgit {
- url = "https://bitbucket.org/julien-montmartin/related";
- rev = "0065a2e16eeaa9bface49f7f0815b9cf9719f441";
- sha256 = "0gaj1mqv77dahw6zfqlf8q624b2ba589chgaa22vy4vg3lz6qzks";
+ version = "20190327.324";
+ src = fetchFromGitHub {
+ owner = "julien-montmartin";
+ repo = "related";
+ rev = "546c7e811b290470288b617f2c27106bd83ccd33";
+ sha256 = "0kn07wgnz5bkkq66qfq16rvw9l7zgh0hzrsa705j1zbd6vc3wygs";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/6248cbbb6c977c9c9332a34b449eb090dd9322b3/recipes/related";
- sha256 = "0nm2dnmz4a5z187mzggsj8xrdy1x84lxx79rmwcrkh1d7jzjhi6f";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/555932a7b9cf11b50a61c2a9dd2636fd6844fac8/recipes/related";
+ sha256 = "08cfr5qbm1h5j4v3vf3kjjwb9nxsrk74lx9gi1icdhqw631h3yxf";
name = "recipe";
};
packageRequires = [ cl-lib ];
@@ -82134,6 +87383,31 @@
license = lib.licenses.free;
};
}) {};
+ renpy = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "renpy";
+ ename = "renpy";
+ version = "20180907.1234";
+ src = fetchFromGitHub {
+ owner = "billywade";
+ repo = "renpy-mode";
+ rev = "cf9c9ead6084210a4c0290a0d999a099b8d00a81";
+ sha256 = "1blv8f1qr0nd7j7ciyba05n5a4jijffqmchxjhl7nxljlghwiy27";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/cc928aed12275dc3780d7d8acc6ceca0f69ef63f/recipes/renpy";
+ sha256 = "1xfk3j13wzgxg56izbwad0kw4izg0hdzkh7h7cfdmdf4v6mxc7f0";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/renpy";
+ license = lib.licenses.free;
+ };
+ }) {};
repeatable-motion = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -82298,12 +87572,12 @@
melpaBuild {
pname = "replace-with-inflections";
ename = "replace-with-inflections";
- version = "20170911.245";
+ version = "20180830.2335";
src = fetchFromGitHub {
owner = "knu";
repo = "replace-with-inflections.el";
- rev = "e286036a5d1dbac06a72a1e831b2a8d9cad27238";
- sha256 = "1szbps1k3na3w9djkqxm3s1anm12505ajr7ay9j7pmd00qf75379";
+ rev = "d9201e047856492f282da65459b28aba25998dbb";
+ sha256 = "09yvn489z33hww7mi1flh344faxrpbkzqhm0i6xb2rridcj7acqh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7892eb506b8f4260bde4be2805bf3b2d594ab640/recipes/replace-with-inflections";
@@ -82324,12 +87598,12 @@
melpaBuild {
pname = "repo";
ename = "repo";
- version = "20170213.139";
+ version = "20190326.944";
src = fetchFromGitHub {
owner = "canatella";
repo = "repo-el";
- rev = "9f03c0d90c9036b96e531c17d529f3855364d47a";
- sha256 = "1ggxs40mbk50aqhqqfdcz6izvlvsz53s93dj3ndxvgdxkpkxr6yn";
+ rev = "c53c06169dec4e556982fb06ca780ca4708dc436";
+ sha256 = "1brsc8k590qc4x93qydiq8ylq26zbdv8565fz194zpik9d239mja";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1729d4ea9498549fff3594b971fcde5f81592f84/recipes/repo";
@@ -82343,7 +87617,7 @@
};
}) {};
req-package = callPackage ({ dash
- , fetchFromGitHub
+ , fetchFromGitLab
, fetchurl
, ht
, lib
@@ -82353,16 +87627,16 @@
melpaBuild {
pname = "req-package";
ename = "req-package";
- version = "20180506.2350";
- src = fetchFromGitHub {
+ version = "20180121.2100";
+ src = fetchFromGitLab {
owner = "edvorg";
repo = "req-package";
- rev = "f97d7531a3e7526f2d7b008868eb647c80d0de5d";
- sha256 = "1yl1ap5jlrkvhw47c1xyb9q4khqqnz38y5rvbvw4zib1ik9vwhmc";
+ rev = "0c0ac7451149dac6bfda2adfe959d1df1c273de6";
+ sha256 = "0sx3kw1gpliifbc0gh2z1lvig68v3gwqjbj0izgn77js8kqxad84";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/f58a801f0791566d0c39493a5f82ff0d15d7ab41/recipes/req-package";
- sha256 = "1438f60dnmc3a2dh6hd0wslrh25nd3af797aif70kv6qc71h87vf";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aa5bc1909f807ec03ad441d78013ba8626cd410a/recipes/req-package";
+ sha256 = "1zjhc6f9qcb3j72k1llp6vym25lxnvq1jgqgmnrjxxwc4fhxx595";
name = "recipe";
};
packageRequires = [ dash ht log4e use-package ];
@@ -82379,12 +87653,12 @@
melpaBuild {
pname = "request";
ename = "request";
- version = "20170131.1747";
+ version = "20181129.338";
src = fetchFromGitHub {
owner = "tkf";
repo = "emacs-request";
- rev = "a3d080e57eb8be606fbf39d1baff94e1b16e1fb8";
- sha256 = "0wyxqbb35yqf6ci47531lk32d6fppamx9d8826kdz983vm87him7";
+ rev = "b929e7c7b877b074f9ce582999bb6e196e0f745d";
+ sha256 = "1xzar6mgchrq9q7sj4q9cch5sharxfj85sffhcgza7fz0vl5b0hc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8d113615dde757a60ce91e156f0714a1394c4bfc/recipes/request";
@@ -82406,12 +87680,12 @@
melpaBuild {
pname = "request-deferred";
ename = "request-deferred";
- version = "20160419.1605";
+ version = "20181128.1917";
src = fetchFromGitHub {
owner = "tkf";
repo = "emacs-request";
- rev = "aeae9028de5c489b07a5f5df29682eff47f80f6b";
- sha256 = "002blp30bvi8l9b9mzjk8ib6xv3fps3j8cqrvbdj6dw2yvrcfl1g";
+ rev = "a8d8d0714612d3b45188c6cd4237e091cc6d1366";
+ sha256 = "1rar2b781gr8sb34n638a31f4pg5xh64xkmamvdr37i8wrr9i4cy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8d113615dde757a60ce91e156f0714a1394c4bfc/recipes/request-deferred";
@@ -82488,12 +87762,12 @@
melpaBuild {
pname = "resize-window";
ename = "resize-window";
- version = "20170704.2212";
+ version = "20180917.2238";
src = fetchFromGitHub {
owner = "dpsutton";
repo = "resize-window";
- rev = "e281aca5a1b371aff20d7bfc6abc456de22e19dd";
- sha256 = "1d8jzhwif80bgj5pxa36hbavjrlmjg12yzxypl40d1wrjamq854c";
+ rev = "09dc5968f1c988c51fcd6ea5d68bb38b7541eb66";
+ sha256 = "02hzn0r9bzpmhjij1fvj6q3qvha8rwyn53m4yw995bg9xk32c0hj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/601a8d8f9046db6c4d50af983a11fa2501304028/recipes/resize-window";
@@ -82538,12 +87812,12 @@
melpaBuild {
pname = "restclient";
ename = "restclient";
- version = "20180316.851";
+ version = "20190405.1308";
src = fetchFromGitHub {
owner = "pashky";
repo = "restclient.el";
- rev = "859d944796ce298b5779d9d256bd8d271d57e221";
- sha256 = "18grh9pislyr1mnj05nd2wj2ns8wy2irsxi7y203qkhkhqaamdgn";
+ rev = "236810ad1d4b13f27e85931c0d8bb3549a35e865";
+ sha256 = "0f0hn91k6s4vkqzac3x9sma4sx78m4b6h7fpkc4jslv2v0b0dplv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/59303304fe1f724596245556dd90f6afffba425d/recipes/restclient";
@@ -82693,12 +87967,12 @@
melpaBuild {
pname = "review-mode";
ename = "review-mode";
- version = "20180312.535";
+ version = "20181213.1915";
src = fetchFromGitHub {
owner = "kmuto";
repo = "review-el";
- rev = "bf38b0ce8be2eef1cf810ac6f3664d2190bb9ef7";
- sha256 = "0vmv19qvpba715xqx18dmlxq9kgkzvkf6jfd03bdcj2lh804y3pb";
+ rev = "978be7337628c746f2cb237094c65187a11d7682";
+ sha256 = "07zli33hfdz0h4b491dl664gv7naky8db3kajxb3ncbizx99dz9m";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f2f9e2667389577d0703874ca69ebe4800ae3e01/recipes/review-mode";
@@ -82719,12 +87993,12 @@
melpaBuild {
pname = "reykjavik-theme";
ename = "reykjavik-theme";
- version = "20160109.0";
+ version = "20180823.844";
src = fetchFromGitHub {
owner = "mswift42";
repo = "reykjavik-theme";
- rev = "0d04f21a8d4c98accd278a1ba360ea3fa7cac812";
- sha256 = "07gcz2zmz1hhrailad9jfjflkyf1lkm8cdyvnd752064dkdja7y7";
+ rev = "2cd0043ae6d046f812a95bb26398ea23141beccc";
+ sha256 = "0rk0fw5b1lz7if779h3bngc86iix8v9k8bz3zw8icwfwmjsgg1fh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/10bf153e2b84050304ba2532f5eb41c7a4e7632f/recipes/reykjavik-theme";
@@ -82743,23 +88017,24 @@
, fetchurl
, lib
, melpaBuild
- , s }:
+ , s
+ , wgrep }:
melpaBuild {
pname = "rg";
ename = "rg";
- version = "20180626.1041";
+ version = "20190403.833";
src = fetchFromGitHub {
owner = "dajva";
repo = "rg.el";
- rev = "ca5afceb3dd84590ffadd525a9643befbae0959f";
- sha256 = "03f13vcknlwdbq4997q82z6gl718mv83k88rnynh1m4v4hcpwv09";
+ rev = "acd8be6a1ee129fe8b3802bfcffe9b56bfa72320";
+ sha256 = "0av0dipf6jjqhixzv7gnf1w8rlncgpwcxr3jn9lidx9acr8yprwa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9ce1f721867383a841957370946f283f996fa76f/recipes/rg";
sha256 = "0i78qvqdznh1z3b0mnzihv07j8b9r86dc1lsa1qlzacv6a2i9sbm";
name = "recipe";
};
- packageRequires = [ cl-lib emacs s ];
+ packageRequires = [ cl-lib emacs s wgrep ];
meta = {
homepage = "https://melpa.org/#/rg";
license = lib.licenses.free;
@@ -82824,12 +88099,12 @@
melpaBuild {
pname = "rich-minority";
ename = "rich-minority";
- version = "20170813.622";
+ version = "20190321.658";
src = fetchFromGitHub {
owner = "Malabarba";
repo = "rich-minority";
- rev = "333e4669f76a0fb68b433117d377711e418a525e";
- sha256 = "0ms42fnfis6y2h717cqhngzv7ysgf8340rsfm2i7rx2gbdynr1ic";
+ rev = "04bc21b109c4507e16747b709d55f9be9553779c";
+ sha256 = "15m39qqllkj1a328dyl23a830ix6m1f9sfmj19nwrsysxqik7vg6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6aed365c42987d64d0cd9a8a6178339b1b39e8/recipes/rich-minority";
@@ -82842,6 +88117,34 @@
license = lib.licenses.free;
};
}) {};
+ right-click-context = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , popup }:
+ melpaBuild {
+ pname = "right-click-context";
+ ename = "right-click-context";
+ version = "20181220.2128";
+ src = fetchFromGitHub {
+ owner = "zonuexe";
+ repo = "right-click-context";
+ rev = "173c86b4b3fc187d54bcd85b4d7df27a5ee24965";
+ sha256 = "1paljjwr6sfl835m24vj2j4x3zdh3whwayj6dvyfarbhhcwbwphj";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f6963fc11d697b95ebbdaf7fe27c91a6229d08b6/recipes/right-click-context";
+ sha256 = "189nkxkc7lr2fm5qgmylmz6xv6mpphslj4fgpmr8ynnx9z3nxms2";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs popup ];
+ meta = {
+ homepage = "https://melpa.org/#/right-click-context";
+ license = lib.licenses.free;
+ };
+ }) {};
rigid-tabs = callPackage ({ emacs
, fetchFromGitLab
, fetchurl
@@ -82876,12 +88179,12 @@
melpaBuild {
pname = "rimero-theme";
ename = "rimero-theme";
- version = "20180630.515";
+ version = "20180901.648";
src = fetchFromGitHub {
owner = "yveszoundi";
repo = "emacs-rimero-theme";
- rev = "dc6917b7404d3f79044046c231a195c40c9d0a88";
- sha256 = "0zjs76lp4mpds7hkxbks2lj77ifbnzgq74xdl6minfcxc3wjkbvi";
+ rev = "a2e706c2b34f749019979a133f08a2d94a1104b3";
+ sha256 = "1kcvvaizggzi7s3dlh611bkirdf6y89kzddc273drdks705s01wh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c6d07b0c021001195e6e0951c890566a5a784ce1/recipes/rimero-theme";
@@ -82955,12 +88258,12 @@
melpaBuild {
pname = "ripgrep";
ename = "ripgrep";
- version = "20180323.920";
+ version = "20190215.41";
src = fetchFromGitHub {
owner = "nlamirault";
repo = "ripgrep.el";
- rev = "a1f8f030bf5daea92dd13b953720a6c13dd3557c";
- sha256 = "0mpysjcbw9qxy1lcwsd2rqf72xahpdpn88xcq0cnk1y2jam8gjkf";
+ rev = "40e871dcc4519a70981e9f28acea304692a60978";
+ sha256 = "0snn12iibz5frsx6yk6c31hb8knvsd568ghw9jjka5vxdjzap7p9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e8d789818876e959a1a59690f1dd7d4efa6d608b/recipes/ripgrep";
@@ -83008,12 +88311,12 @@
melpaBuild {
pname = "rjsx-mode";
ename = "rjsx-mode";
- version = "20180624.1758";
+ version = "20190311.1817";
src = fetchFromGitHub {
owner = "felipeochoa";
repo = "rjsx-mode";
- rev = "8bdb234f2b66a2ce0563b676447ebb8db37d593f";
- sha256 = "047mfmj6rklxiqg43ji4gb5qr86z8q1717imsjffrkbjq3iqlw6j";
+ rev = "03dd8d1683501e81b58674d64c3032b7b718402c";
+ sha256 = "1kc44g9f38klpjklmz9n50a28nqv7prz6ck6ghdr6bnj1s98pb8a";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b83be7efdef2457e1320fe3dec46484fbd20263c/recipes/rjsx-mode";
@@ -83026,6 +88329,32 @@
license = lib.licenses.free;
};
}) {};
+ rmsbolt = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "rmsbolt";
+ ename = "rmsbolt";
+ version = "20181227.655";
+ src = fetchFromGitLab {
+ owner = "jgkamat";
+ repo = "rmsbolt";
+ rev = "246377bbff99734f30daedf2c47c03283c97e7c5";
+ sha256 = "05v16g2drc57cjcdjqy9rk5m4i74v8raspgfsc62qbapy4kqvn78";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/798e7978f3ee32b3667956da8dc2dc7f005b6996/recipes/rmsbolt";
+ sha256 = "0mgzc4q9mmnqjafp2i9qp0plc7qnh4kmkgjs1c7frk9x07navscf";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/rmsbolt";
+ license = lib.licenses.free;
+ };
+ }) {};
robe = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -83035,12 +88364,12 @@
melpaBuild {
pname = "robe";
ename = "robe";
- version = "20171116.1249";
+ version = "20190305.1346";
src = fetchFromGitHub {
owner = "dgutov";
repo = "robe";
- rev = "7829f4fdda41eee0add8868646ab86e6b17de4b4";
- sha256 = "1h526m21g0yqpry8dh42aj8nv4lp74dc1cmcyfb16sx5rrk0vx27";
+ rev = "69abadccf36220167f5d158dbdd3a801b3b89eff";
+ sha256 = "087jl5b220i6g7shfbfxvxvv6zdlgagvrhwf4axllybif1p47nd3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/673f920d02fe761bc080b73db7d37dbf5b6d86d8/recipes/robe";
@@ -83060,12 +88389,12 @@
melpaBuild {
pname = "robots-txt-mode";
ename = "robots-txt-mode";
- version = "20170908.642";
+ version = "20180919.841";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "robots-txt-mode";
- rev = "4a77674ab2963b829d3b751741c4ce1169e87f6b";
- sha256 = "1ynmb9gpryfrml80kkv71k11j7r91mgyzh1q8xx52s0b4mkd33zc";
+ rev = "f8fc7ee50a3d5d7a2838772ed298fb69b9051c5c";
+ sha256 = "11qyzsfp2kmi6sd24m30y537mic9xg7y29npninrjihr6k9rw3a2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eb13cb0dba1696cc51132cd1ff723fa17f892a7c/recipes/robots-txt-mode";
@@ -83111,12 +88440,12 @@
melpaBuild {
pname = "rope-read-mode";
ename = "rope-read-mode";
- version = "20171003.719";
+ version = "20190315.907";
src = fetchFromGitHub {
owner = "marcowahl";
repo = "rope-read-mode";
- rev = "77b183a6f5450138388509f54a6a2ce442766e50";
- sha256 = "0ddm7gwr51ip8mc79jxkvp52sxhlvs0kyy59v7r7pf5mbadbpsbz";
+ rev = "3542bf0199d242729e198beac3305cc88497dc89";
+ sha256 = "0l6r2g3i475nlzrwra38f6w5izl3ajd4dilf4yvcs66ah9bzhh2r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/14a674559aa485e92357a8b941304ae8167b9c3e/recipes/rope-read-mode";
@@ -83212,12 +88541,12 @@
melpaBuild {
pname = "rpn-calc";
ename = "rpn-calc";
- version = "20170522.1842";
+ version = "20181121.354";
src = fetchFromGitHub {
owner = "zk-phi";
repo = "rpn-calc";
- rev = "66fcb64dbfddfc23823356b6213215bd7ab5efc6";
- sha256 = "1lgabs97x6h4yrgwln8hsxi47wgl46jzhf162wa1almdbqbp9100";
+ rev = "27279f89c80eb3f28ff9f981eff06502056943e2";
+ sha256 = "0klzhscdvzwpcrfkq2v28in5fv01zqabgxdrziyhj666sly1scjq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/47d5b3c931cdbc2351e01d15e2b98c78081c9506/recipes/rpn-calc";
@@ -83264,12 +88593,12 @@
melpaBuild {
pname = "rspec-mode";
ename = "rspec-mode";
- version = "20180614.448";
+ version = "20190326.722";
src = fetchFromGitHub {
owner = "pezra";
repo = "rspec-mode";
- rev = "dda1ece81bd2802c4097e5c963fac33a444659cb";
- sha256 = "1d8i2y9r1im346df3ishsx16g5264pfq930whbj9hipfml6s8ddy";
+ rev = "3285c225d0ed99b2dd91ae9e65b2c961082b03e5";
+ sha256 = "1s5yj4n8qd3ypm505573s4gs63s5kmir4wphknn7hwsa1qxxzp55";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cd83e61b10da20198de990aa081b47d3b0b44d43/recipes/rspec-mode";
@@ -83289,12 +88618,12 @@
melpaBuild {
pname = "rtags";
ename = "rtags";
- version = "20180619.823";
+ version = "20190320.817";
src = fetchFromGitHub {
owner = "Andersbakken";
repo = "rtags";
- rev = "015cde3b77d9971e890f25b54cccfdb2582970fa";
- sha256 = "00fs8181nrgnx9bcsc479rhgvxx7hh8byxnzi9g6kl4ak1cmc7jx";
+ rev = "3232afea229ee090df61bc58786a1de65894f413";
+ sha256 = "0z3xj5s1p14sk8na7xhx4kxc2kz3sg7z58iz5mlaf6mdna85cy3x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/rtags";
@@ -83368,16 +88697,16 @@
melpaBuild {
pname = "rubocop";
ename = "rubocop";
- version = "20170311.2211";
+ version = "20190326.724";
src = fetchFromGitHub {
- owner = "bbatsov";
+ owner = "rubocop-hq";
repo = "rubocop-emacs";
- rev = "980bedb455e3551d35a212fae515c054888907c1";
- sha256 = "152ara2p59imry2ymfnk5mycbc07rblcmfmqjgm5fijb2x94xv8p";
+ rev = "03bf15558a6eb65e4f74000cab29412efd46660e";
+ sha256 = "0bl1l2qbpdknn93wr95a49gdnpl3pwpjj3rka3s44hvihny9p8q0";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/00f2cf3e8e28bce5c26c86aba54390ffff48d7da/recipes/rubocop";
- sha256 = "114azl0fasmnq0fxxyiif3363mpg8qz3ynx91in5acqzh902fa3q";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/rubocop";
+ sha256 = "07ma4fv015wzpj5j4rdb0ckwwmhkxs3k5vy33qxgwghqmn6xby6x";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -83394,12 +88723,12 @@
melpaBuild {
pname = "rubocopfmt";
ename = "rubocopfmt";
- version = "20180519.748";
+ version = "20181009.1003";
src = fetchFromGitHub {
owner = "jimeh";
repo = "rubocopfmt.el";
- rev = "34c69c9c923d0da223f7569a6ecc842095adcf85";
- sha256 = "0aa683r16gvpv07i0gzbil81kgxbgk4pjn510xgalan3fk20nal4";
+ rev = "fc96145719a65b2551339d087ddd95b72e14646f";
+ sha256 = "12sfzvb5lf20d4kqa1fzhz8s48lgr8w0x7qimjcy5c75yjb123wl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac01edffceea771d8fe41326e28dd9881f1661ab/recipes/rubocopfmt";
@@ -83421,16 +88750,16 @@
melpaBuild {
pname = "ruby-additional";
ename = "ruby-additional";
- version = "20180316.1937";
+ version = "20181221.359";
src = fetchFromGitHub {
- owner = "emacsorphanage";
- repo = "ruby-additional";
- rev = "97998d908e3720c7cb45a80aeda4b55f3b8ea0f0";
- sha256 = "1jmnz1y2q5994x7j6gfqrbpjyd2rsnrjis8xlx14hplmfgm2scd5";
+ owner = "ruby";
+ repo = "elisp";
+ rev = "75bccbb384e6907df47ab69acdccb4536806c890";
+ sha256 = "1ic92ga7sy71qknn22xjbxrhpbq3sgb1ngfm2d0gjdmr0x6q8xkc";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/30de78c9cf83de30093a5647976eeaf552d4b2cb/recipes/ruby-additional";
- sha256 = "1ivxn787k64q5jl0dxmxbj240ykcyvfhfam5fdvrwvc3yysk2dx7";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/30fa1f6cb1128fc0c0e751330714f228e5616786/recipes/ruby-additional";
+ sha256 = "09g4zz6pfzhxlhac2d041bys7qis4w4shpdn4bpskm1rnmvm10s7";
name = "recipe";
};
packageRequires = [ emacs ruby-mode ];
@@ -83573,12 +88902,12 @@
melpaBuild {
pname = "ruby-hash-syntax";
ename = "ruby-hash-syntax";
- version = "20180323.1909";
+ version = "20190109.1427";
src = fetchFromGitHub {
owner = "purcell";
repo = "ruby-hash-syntax";
- rev = "89fc364a837d7a78ecce34380f09c073a83e30e0";
- sha256 = "1nwf3681fa6lfqr14n9wihckpi220hvamv1ppzmrhn4k49vxljy8";
+ rev = "577ab383c142e3a0697ce73480158a8b489038da";
+ sha256 = "06hm4pl3mzlyx4d3v94rm2w33q9wnwpdl7qas3fnks691d9apg7x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c7d21a43a4bf267507bdc746ec9d0fd82049c0af/recipes/ruby-hash-syntax";
@@ -83651,16 +88980,16 @@
melpaBuild {
pname = "ruby-test-mode";
ename = "ruby-test-mode";
- version = "20171016.931";
+ version = "20190313.805";
src = fetchFromGitHub {
- owner = "r0man";
+ owner = "ruby-test-mode";
repo = "ruby-test-mode";
- rev = "87f6d770f8d2326c8d36099aeee5d577f3e2af69";
- sha256 = "0qiwc2h5hyh6np16a2gfcchbnyh7v5wnzd8idr64cmd9blg3jh8d";
+ rev = "aa11267824561eb2b6a40b3dc5e2ad1cfb800f84";
+ sha256 = "1k2mv2zgjsq8sn6lr5ad1xicb786xkvj8v588xavn1m50brn1gc9";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ruby-test-mode";
- sha256 = "06j1q9m08jkwlnkccppf2qlcs48nr8ic9sjdv90rnixc18bw7bpk";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f781a76a519afc0222cdf7255822a23e33745deb/recipes/ruby-test-mode";
+ sha256 = "08x9pskxz1hvvqablx5mdp1g54n28kpmd10qwrasq2zjbdjghj48";
name = "recipe";
};
packageRequires = [ pcre2el ruby-mode ];
@@ -83847,6 +89176,31 @@
license = lib.licenses.free;
};
}) {};
+ rust-auto-use = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "rust-auto-use";
+ ename = "rust-auto-use";
+ version = "20181124.2237";
+ src = fetchFromGitHub {
+ owner = "vmalloc";
+ repo = "rust-auto-use.el";
+ rev = "d924505ecd954625dcb2d56dfba97111dc6a17fa";
+ sha256 = "1yw9l13dgkfsdv4kgpbvzx12g8bqycclgq2gk4b1r29mxy72wnpq";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a9584d883934e36400ec1924755df34149ad2f9f/recipes/rust-auto-use";
+ sha256 = "0jdg8xgxry0h9nbb9m446gpw54rymw3152n84lvsg5bv51861114";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/rust-auto-use";
+ license = lib.licenses.free;
+ };
+ }) {};
rust-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -83855,12 +89209,12 @@
melpaBuild {
pname = "rust-mode";
ename = "rust-mode";
- version = "20180626.1512";
+ version = "20190304.536";
src = fetchFromGitHub {
owner = "rust-lang";
repo = "rust-mode";
- rev = "106aeab800fb3404baf231845d3e3549ec235afa";
- sha256 = "0bcrklyicxh032rrp585rl5mxd26nb61dp6r5bl935rlcmxzsczh";
+ rev = "a871d108c745276e93ff1dec7c65e2e5a57e6d8c";
+ sha256 = "12yyc9d1b5jj2mqxdgjn95ah9dnxbl8jkq2mrxyrr9y34c6fycr6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8f6e5d990d699d571dccbdeb13327b33389bb113/recipes/rust-mode";
@@ -83877,24 +89231,23 @@
, fetchFromGitHub
, fetchurl
, lib
- , melpaBuild
- , rust-mode }:
+ , melpaBuild }:
melpaBuild {
pname = "rust-playground";
ename = "rust-playground";
- version = "20180507.1032";
+ version = "20180807.458";
src = fetchFromGitHub {
owner = "grafov";
repo = "rust-playground";
- rev = "2f22ec74e4158984e0e70cf0bf728bbd42eb661b";
- sha256 = "1p80zghdk3hsfj36z30sfkllqr3b4yi279zkg0la9kfg6785x2cg";
+ rev = "092c8b11d62dea23953a004744833092bac85fe1";
+ sha256 = "0n2c1pjbvy46ic0k84jd3ffwwb5hibjqc1wv7knzkldi5agigfsh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rust-playground";
sha256 = "0ml0zr9vz2vjd9wr0v706w4v4qqfzpa56rdzfak2kb5llx53j89v";
name = "recipe";
};
- packageRequires = [ emacs rust-mode ];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/rust-playground";
license = lib.licenses.free;
@@ -83905,27 +89258,44 @@
, f
, fetchFromGitHub
, fetchurl
+ , ht
+ , let-alist
, lib
+ , markdown-mode
, melpaBuild
, projectile
, s
+ , seq
+ , spinner
, xterm-color }:
melpaBuild {
pname = "rustic";
ename = "rustic";
- version = "20180722.1209";
+ version = "20190318.1112";
src = fetchFromGitHub {
owner = "brotzeit";
repo = "rustic";
- rev = "15e4d58ded3436b4da4b1a54e5f527ca3d5de22b";
- sha256 = "1jra1l0bz7bxkgsc0jgi9xmf1vipvzazkg40m58hhlbq1hynxm8z";
+ rev = "e73f29bd273670a1193e595ff13641ec0675cfb4";
+ sha256 = "1jfvvq4yz3ypw32q10g926ys1y4j1dyskpbl25qgqnw5dwjy7vsk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/716c14a2ed8f5817c09c1ff530a4980c17b44bb3/recipes/rustic";
sha256 = "13bwrdqmm6xb34k8r72c0r3b9aym5dwsalp63bkfh9k9kq9hic0n";
name = "recipe";
};
- packageRequires = [ dash emacs f projectile s xterm-color ];
+ packageRequires = [
+ dash
+ emacs
+ f
+ ht
+ let-alist
+ markdown-mode
+ projectile
+ s
+ seq
+ spinner
+ xterm-color
+ ];
meta = {
homepage = "https://melpa.org/#/rustic";
license = lib.licenses.free;
@@ -84204,12 +89574,12 @@
melpaBuild {
pname = "salt-mode";
ename = "salt-mode";
- version = "20180118.1754";
+ version = "20181225.357";
src = fetchFromGitHub {
owner = "glynnforrest";
repo = "salt-mode";
- rev = "e46c28ef77663391519646c79641c9d177f70d35";
- sha256 = "13zk20bif05qgpqsx9hf6ri7qkxqq7nicp2lb84dg7id24md22x9";
+ rev = "adecd8d1016722a916d190e8738435668d664cca";
+ sha256 = "0ncf3sr25vcjrcc9mn59mg0kkv59y6mlir2a7an3drzqlyfr44i0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9dcf1a93a06fc42581521c88cfd988b03bedc000/recipes/salt-mode";
@@ -84230,12 +89600,12 @@
melpaBuild {
pname = "sane-term";
ename = "sane-term";
- version = "20160620.647";
+ version = "20181129.1701";
src = fetchFromGitHub {
owner = "adamrt";
repo = "sane-term";
- rev = "034033141b2eb467e2d0b79c8ce1da1f8ff2f013";
- sha256 = "0nhs916h52hxbp479ma01p6i0zfap26n4fvyx83822pisbcd3krb";
+ rev = "ae0b3c024b66275f22809e2b41f428b01c259b96";
+ sha256 = "1468byxxd0ysqzmi9ssypfhfyqrjgj5w7sx42qgw66m57sis8ra3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sane-term";
@@ -84282,12 +89652,12 @@
melpaBuild {
pname = "sauron";
ename = "sauron";
- version = "20171105.247";
+ version = "20181216.400";
src = fetchFromGitHub {
owner = "djcb";
repo = "sauron";
- rev = "50f09bfc6f5bf79e72a1223e345ee720b507e56a";
- sha256 = "1k80vzgky4fcakxs3h0yb7g3zpn4382p8zz730kk1ibfd7i56a68";
+ rev = "6a26e9df1e6a49b0ea4ccfd843a032033162a287";
+ sha256 = "1pqw72mmi84813pigk0gcygrqw5ql2074kj55pihy784dm853rfg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9d30dcc4715422133e1bb00ad7a8e25b060387e4/recipes/sauron";
@@ -84384,14 +89754,14 @@
ename = "say-what-im-doing";
version = "20160706.1231";
src = fetchFromGitHub {
- owner = "benaiah";
+ owner = "Benaiah";
repo = "say-what-im-doing";
rev = "5b2ce6783b02805bcac1107a149bfba3852cd9d5";
sha256 = "0wy4hrc44ajl88krp6qy40szl2kl2wc3xjz3y4n250d1v81k25xi";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/4d22ddcd4ad9514fe0c36f299e7463a4b7e771d7/recipes/say-what-im-doing";
- sha256 = "1hgh842f7gs2sxy7s6zq57nsqy4jjlnjcga6hwzcx0kw3albgz7x";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/say-what-im-doing";
+ sha256 = "0wi7318q7mms4wjbzhnsw298bjh7g957dnra0bvg87vv48pz3yfp";
name = "recipe";
};
packageRequires = [];
@@ -84408,16 +89778,16 @@
melpaBuild {
pname = "sayid";
ename = "sayid";
- version = "20180404.1139";
+ version = "20181223.35";
src = fetchFromGitHub {
- owner = "bpiel";
+ owner = "clojure-emacs";
repo = "sayid";
- rev = "8ea70573e6eb1a0d1a450fd501f38c2cf26ce27f";
- sha256 = "02yp3h16yzys27lxcxn7qzb23z95vjdaxhinz0swdixgr5qwwc77";
+ rev = "3322ec3d6503f0e706b0b16d09865c00b92e7979";
+ sha256 = "0sfc5fsb1h35ayzxaj5bz0za7zjbs6vxgzc7fqfvrpjazsv3jbcq";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2bd2e05f9c9328d8f9ae434c86697a4a04af8b0d/recipes/sayid";
- sha256 = "0chz46wmwmsn4ys59pn7lqs4assqy2hv43rvka7kq61jdl4g6fgs";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9a15a17a5aa78aed72958b2a1bde53f0c0ab5be7/recipes/sayid";
+ sha256 = "065mxb2la3dq2zqyb8dfksb18fpqym04nnax5rrp19izcw488qsm";
name = "recipe";
};
packageRequires = [ cider ];
@@ -84528,6 +89898,33 @@
license = lib.licenses.free;
};
}) {};
+ scalariform = callPackage ({ f
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "scalariform";
+ ename = "scalariform";
+ version = "20190113.1815";
+ src = fetchFromGitHub {
+ owner = "zwild";
+ repo = "scalariform";
+ rev = "f4b04508a65ce8593d15c260322c527dda5810a3";
+ sha256 = "1c2z6kp17gw77h9y6v75dvcp6ywpsyfcxlrzr5iank4ipgplsbha";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/1912f795e5842be534160e3879bfb96f3440e163/recipes/scalariform";
+ sha256 = "096y63j91910hqsy6qvz16c9lzyi7ni3r7h039z5zw2v97aggh9i";
+ name = "recipe";
+ };
+ packageRequires = [ f s ];
+ meta = {
+ homepage = "https://melpa.org/#/scalariform";
+ license = lib.licenses.free;
+ };
+ }) {};
scf-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -84560,12 +89957,12 @@
melpaBuild {
pname = "scheme-complete";
ename = "scheme-complete";
- version = "20170824.713";
+ version = "20181029.555";
src = fetchFromGitHub {
owner = "ashinn";
repo = "scheme-complete";
- rev = "4c77038048cbcf34b5907f0439c93058a71a2d2b";
- sha256 = "14b1bajgvim48j7y4pss73lyxqfyazjnxn1dgvvmkvngm3k1a4y8";
+ rev = "b86ee41d48664839181498313f4f3dc2fef17d6f";
+ sha256 = "1by7ky8za6idam4m4xgmf0f5ss0cacd7wv53glhmjb4nslxhgl7d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0fda2b54a0ff0b6fc3bd6d20cfcbbf63cae5380f/recipes/scheme-complete";
@@ -84578,31 +89975,6 @@
license = lib.licenses.free;
};
}) {};
- scheme-here = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "scheme-here";
- ename = "scheme-here";
- version = "20141028.18";
- src = fetchFromGitHub {
- owner = "hiddenlotus";
- repo = "scheme-here";
- rev = "fccf668bb8f1d481be6e70fffa2b52ea681e32a5";
- sha256 = "1m5aqcm4pd0m0rz3r09i52q55nlx3ga7hca9xlzf0gwcyyn8xzyg";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/scheme-here";
- sha256 = "04lmkf3zc396anlp9s9irdkqavsc0lzlpzprswd4r2kp4xp7kcks";
- name = "recipe";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/scheme-here";
- license = lib.licenses.free;
- };
- }) {};
schrute = callPackage ({ emacs
, fetchgit
, fetchurl
@@ -84743,12 +90115,12 @@
melpaBuild {
pname = "scpaste";
ename = "scpaste";
- version = "20171101.922";
+ version = "20190228.1351";
src = fetchFromGitHub {
owner = "technomancy";
repo = "scpaste";
- rev = "10559d6b0feb34dc60f039a237052adcca77b5d9";
- sha256 = "10z8jpi6f3mhq8ymxcv1lc291sqr2kzvgwx8mlmck0bmlys12pqc";
+ rev = "568faaa70fa0413e2d165ad232cd4c6ec2815197";
+ sha256 = "160m4w0i9cj4zxmmsknmnvycscj9y8da39y1362kv7dpmwnxsxcp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9007fb32097bc63731c3615dae9342fcef2558a2/recipes/scpaste";
@@ -84761,26 +90133,27 @@
license = lib.licenses.free;
};
}) {};
- scratch = callPackage ({ fetchFromGitHub
+ scratch = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "scratch";
ename = "scratch";
- version = "20170614.1401";
+ version = "20190313.2314";
src = fetchFromGitHub {
owner = "ieure";
repo = "scratch-el";
- rev = "2cdf2b841ce7a0987093f65b0cc431947549f897";
- sha256 = "0wscsndynjmnliajqaz28r1ww81j8wh84zwaaswx51abhwgl0idf";
+ rev = "4813d82b39a451f2a6d5b730cd7ec49a9bdabcca";
+ sha256 = "0yiwq2gc4gdgfhaagpawhb7yrzc4fsnyb10w5d0q4whv64cj8555";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b46813f928eadfa08a1d4bf94ceeb96dbc2a7c72/recipes/scratch";
sha256 = "1an30pr64fz13s6lghlcb36b7hn3961vv0yipfp9s140ccygdvh7";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/scratch";
license = lib.licenses.free;
@@ -84924,14 +90297,14 @@
ename = "scratches";
version = "20151005.2116";
src = fetchFromGitHub {
- owner = "cheunghy";
+ owner = "zhangkaiyulw";
repo = "scratches";
rev = "9441afe6396ca38f08029123fab5d87429cbf315";
sha256 = "10hmy0p4pkrzvvyisk4rjc6hqqyk2sir1rszqgmkhrdywl010vlc";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/3691aaaed27d0cf67af417f75fbb693ab856bd47/recipes/scratches";
- sha256 = "0409v1wi10q48rrh8iib6dw9icmswfrpjx9x7xcma994z080d2fy";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/scratches";
+ sha256 = "116bjy1m35h83r2c354i2xk1br87nmvd99kbzax0wgkkkcjff8c4";
name = "recipe";
};
packageRequires = [ dash f ];
@@ -84948,12 +90321,12 @@
melpaBuild {
pname = "scribble-mode";
ename = "scribble-mode";
- version = "20160124.1528";
+ version = "20181203.1925";
src = fetchFromGitHub {
owner = "emacs-pe";
repo = "scribble-mode";
- rev = "7e83ddf30b7089607c1653eced3edef459d4ad16";
- sha256 = "14bpdn89ry1im84zcx3jq64q2gl0jxfz9x7fy0szdas7ycrhjghz";
+ rev = "217945d54de5e4bb207033f2116baa28f5c5ecf2";
+ sha256 = "1s5ccw1a5ack01wd94ywfcrar9j98agchwdh30q7iyxr0d2z4sii";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6469c2b389d757003da69da727905228eb564d50/recipes/scribble-mode";
@@ -84966,6 +90339,32 @@
license = lib.licenses.free;
};
}) {};
+ scrollkeeper = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "scrollkeeper";
+ ename = "scrollkeeper";
+ version = "20190108.2229";
+ src = fetchFromGitHub {
+ owner = "alphapapa";
+ repo = "scrollkeeper.el";
+ rev = "3c4ac6b6b44686d31c260ee0b19daaee59bdccd6";
+ sha256 = "18pp4k12g5dyma362461gdp4ds5d3lx9gky2ishsq39949pkz7qz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d9ad5b16ff61c1f8ba1e030ee0988aa51a437022/recipes/scrollkeeper";
+ sha256 = "16wqlyxznall4kmd8l68q4d11qyilj8vsji36h7llprxa2m9pg12";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/scrollkeeper";
+ license = lib.licenses.free;
+ };
+ }) {};
scrooge = callPackage ({ cl-lib ? null
, dash
, emacs
@@ -85155,26 +90554,28 @@
secretaria = callPackage ({ alert
, emacs
, f
- , fetchgit
+ , fetchFromGitLab
, fetchurl
, lib
, melpaBuild
+ , org
, s }:
melpaBuild {
pname = "secretaria";
ename = "secretaria";
- version = "20180104.720";
- src = fetchgit {
- url = "https://bitbucket.org/shackra/secretaria.el";
- rev = "e9d59d264ba30f8055a1ee1576fe9296d5b41055";
- sha256 = "10ijr9babki05j3wlhwsym85q868kirivsml7jlmi1csnn2y3c6b";
+ version = "20190116.1200";
+ src = fetchFromGitLab {
+ owner = "shackra";
+ repo = "secretaria";
+ rev = "e619a41b8c2600204c064d33394a3c1b85fc2879";
+ sha256 = "09fddglyiz7j6ymxlwsq1zpigp5vhg31r2p6nr4lsblww3ypbapg";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7b4c9ccbf2eeaa290f3b9d1e5eaaeb5b5547b365/recipes/secretaria";
- sha256 = "1a8jf91wplzazssh0s8ld0g8rp57gdfvxlsyn643w3mbp3ny8ybv";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3eeddbcf95315da40d021a6913ccf344849c4284/recipes/secretaria";
+ sha256 = "04pcibzdljcfiha4yh10van8gsjrzn6bdkvkm2ahfcwrmscfn3hf";
name = "recipe";
};
- packageRequires = [ alert emacs f s ];
+ packageRequires = [ alert emacs f org s ];
meta = {
homepage = "https://melpa.org/#/secretaria";
license = lib.licenses.free;
@@ -85369,12 +90770,12 @@
melpaBuild {
pname = "semi";
ename = "semi";
- version = "20180204.1448";
+ version = "20190405.739";
src = fetchFromGitHub {
owner = "wanderlust";
repo = "semi";
- rev = "44aa82ecf78273d8ff4c84f2121b885fb7149f41";
- sha256 = "1wl12gsz9pn4wzgbffv3ymr49kcxjggc2jx19kxqyjmwdnw004yf";
+ rev = "13bb56eb978439957964032cc3118a8bea43d7f4";
+ sha256 = "0328yis2hwzsgdi6rkrj5yhl5qlz48grnqkp3y56xyb6wf25cn96";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e78849c2d1df187b7f0ef4c34985a341e640ad3e/recipes/semi";
@@ -85641,12 +91042,12 @@
melpaBuild {
pname = "sesman";
ename = "sesman";
- version = "20180719.213";
+ version = "20190213.850";
src = fetchFromGitHub {
owner = "vspinu";
repo = "sesman";
- rev = "43b0c9ef2a9ba7608d27c24fb0daedc1deabf179";
- sha256 = "1w0fy74snc7gy7cmxfmlbvmdgpywi3grj5ph72liinxlpl1cw218";
+ rev = "3df33018f1c42f09db21cebe39a25b389fe35f02";
+ sha256 = "0z5jb4vpbjsi63w3wjy6d2lgz33qdfvrgfb3bszv4hcf6a96y7fc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/31110e9bd82ad9c817e6cb597fa9c26c4cdc93ed/recipes/sesman";
@@ -85691,12 +91092,12 @@
melpaBuild {
pname = "seti-theme";
ename = "seti-theme";
- version = "20161208.836";
+ version = "20190201.1048";
src = fetchFromGitHub {
owner = "caisah";
repo = "seti-theme";
- rev = "cbfef2fc15d19ce4c8326e65fafdd61737077132";
- sha256 = "191mvz6d6j764q1sj2496i6lq0q42b5qh5zfdvf0yl39pzbwx8jx";
+ rev = "9d76db0b91d4f574dd96ac80fad41da35bffa109";
+ sha256 = "14fqkkvjbq2gj737k3yz3s0dkya33fi0dj4wds99zyzss2xp37f8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/088924b78575359996cf30745497b287cfb11f37/recipes/seti-theme";
@@ -85767,12 +91168,12 @@
melpaBuild {
pname = "shackle";
ename = "shackle";
- version = "20171209.1401";
+ version = "20190201.1046";
src = fetchFromGitHub {
owner = "wasamasa";
repo = "shackle";
- rev = "4189c1c773aab533969b587f7801ffbcd1d7d613";
- sha256 = "1gh30sryh884mpwxpkf0ngkcvixjrxxf4bgq4nqm9n969sr5bhsq";
+ rev = "242bacc940c18b6f9c156e1912155d45537fd827";
+ sha256 = "0qqx8py21jaq1bdafkfqx18ns4zn305qg84zbmy65spiqnfq8hwk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/806e7d00f763f3fc4e3b8ebd483070ac6c5d0f21/recipes/shackle";
@@ -86149,12 +91550,12 @@
melpaBuild {
pname = "shen-elisp";
ename = "shen-elisp";
- version = "20170427.1502";
+ version = "20180915.1328";
src = fetchFromGitHub {
owner = "deech";
repo = "shen-elisp";
- rev = "ffe17dee05f75539cf5e4c59395e4c7400ececaa";
- sha256 = "10dq3qj1q8i6f604zws97xrvjxwrdcjj3ygh6xpna00cvf40llc2";
+ rev = "73b74c8d6e3a2ea34b667d177d9f130765bfe501";
+ sha256 = "1ym048cmkghx373fb7n5m6r73q5nfa62m10mqr4nzhsizgyzdbrn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/shen-elisp";
@@ -86226,16 +91627,16 @@
melpaBuild {
pname = "shimbun";
ename = "shimbun";
- version = "20180325.2048";
+ version = "20190404.1600";
src = fetchFromGitHub {
- owner = "emacsorphanage";
- repo = "w3m";
- rev = "59339a69a069fecf7b15148cbc141a6c1811edd6";
- sha256 = "1al8kjmp2jm2ssla8vhalrvpclragh999mgby5524cppwlzz592b";
+ owner = "emacs-w3m";
+ repo = "emacs-w3m";
+ rev = "28f7af52ec09f7c6feb608431f0afae59c69d4fa";
+ sha256 = "0njaf3pwilcxac1hd1w7ilrcmjv2iaxb4zzkwjnk73f1smgcxy2m";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/30de78c9cf83de30093a5647976eeaf552d4b2cb/recipes/shimbun";
- sha256 = "1rjykr0y5jfd6r3shm8x23yyra6qjsb55jrfc45rhpb89klyg1nk";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c5a423647410357f0e63afba5b52bbe880fce969/recipes/shimbun";
+ sha256 = "04d9kkj4fididhq220c1vjmlzmaqnii95c1ca86kzjbm2bqakkcd";
name = "recipe";
};
packageRequires = [];
@@ -86454,23 +91855,23 @@
license = lib.licenses.free;
};
}) {};
- shrink-whitespace = callPackage ({ fetchFromGitHub
+ shrink-whitespace = callPackage ({ fetchFromGitLab
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "shrink-whitespace";
ename = "shrink-whitespace";
- version = "20150916.1215";
- src = fetchFromGitHub {
+ version = "20181002.2021";
+ src = fetchFromGitLab {
owner = "jcpetkovich";
repo = "shrink-whitespace.el";
- rev = "8d4263d974fbe66417c0bb9edc155ecc2f48e4b7";
- sha256 = "07zzyfibs2c7w4gpvdh9003frznbg7zdnrx0nv8bvn0b68d3yz0m";
+ rev = "0407b89c142bd17e65edb666f35e2c6755bd0867";
+ sha256 = "1qxdi2jm3zl5f55c6irsbnxrmqw039pcm99jafn7hg5z5zc3xhbx";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/shrink-whitespace";
- sha256 = "0baqv4wr1wi4wd7cfhqf4y24qkpd72lax596z5lj934ihwf3gggw";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a403093706d57887111e0d012e85273addaf0d35/recipes/shrink-whitespace";
+ sha256 = "12i6xlcgk27bsdfnlcdjww8vxbx1yilaqa0pkh5n0hxb66zi6x15";
name = "recipe";
};
packageRequires = [];
@@ -86514,12 +91915,12 @@
melpaBuild {
pname = "shx";
ename = "shx";
- version = "20180528.1408";
+ version = "20190309.1056";
src = fetchFromGitHub {
owner = "riscy";
repo = "shx-for-emacs";
- rev = "207e6cd292a26fb1162072e2e20df9aa5efd61ef";
- sha256 = "1hnjmnnmg6axgw4z57rmc8h8wpnbi2rwyr4bv2sdrkk12d3i2kp5";
+ rev = "a70f0cdc3c80b7b5b15d287d9b03e49f943bad57";
+ sha256 = "0ihwiw9dxr6vln4dmg5dp75353ip9nc80hjfl1w3j0g3m8vhjbs2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7a2ff78ae3c4289ebf9e06cdfd8f8082c395a16f/recipes/shx";
@@ -86564,12 +91965,12 @@
melpaBuild {
pname = "sicp";
ename = "sicp";
- version = "20171028.1523";
+ version = "20180823.522";
src = fetchFromGitHub {
owner = "webframp";
repo = "sicp-info";
- rev = "8e13f7ff4695a05471486d37a6c5f979a5b965fb";
- sha256 = "15krfnj2qz4j2ns4a05a4wwaknhx77m4jhazg7zvz9xm4b4j1qm8";
+ rev = "33acfa10a058aa65b6b22084a5b86a82410d794e";
+ sha256 = "1l8isy8kicr4xa6iilxj0cf0f5rqmkidzr6pigql74204db56jhd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1363d7b6e95375ac63f07eed2b3947f4f81bc9ba/recipes/sicp";
@@ -86590,12 +91991,12 @@
melpaBuild {
pname = "side-notes";
ename = "side-notes";
- version = "20180523.2328";
+ version = "20190403.137";
src = fetchFromGitHub {
owner = "rnkn";
repo = "side-notes";
- rev = "981ac308b9b5d58e2af20485377e693d2a6e15aa";
- sha256 = "1hjj6pkl83b9fldzf2bixdny85l5mn81a9kf25kyp0cc6apvwsqr";
+ rev = "2319ee180a4a67175b9e95322cd30b3ac70a9bdf";
+ sha256 = "05xaj5lhxaf07frzcayx5ybz778sgx8bplg5i75x24b7miqdcjl2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/24a71c493adfb79bcd5172d65aa0751e9a6ab556/recipes/side-notes";
@@ -86615,12 +92016,12 @@
melpaBuild {
pname = "sift";
ename = "sift";
- version = "20160107.215";
+ version = "20190104.917";
src = fetchFromGitHub {
owner = "nlamirault";
repo = "sift.el";
- rev = "8c3f3d14a351a2394027d72ee0599aa73b9f0d13";
- sha256 = "1ma6djvhvjai07v1g9a36lfa3nw8zsy6x5vliwcdnkf44gs287ra";
+ rev = "16bdffd2edf9300db50a81dc0b456da7ad6da86c";
+ sha256 = "0wg7dnn721ff3h22s8bs2g4alrixzrry1m509md20qdklz9d6iwy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sift";
@@ -86644,14 +92045,14 @@
ename = "signal";
version = "20160816.738";
src = fetchFromGitHub {
- owner = "Mola-T";
+ owner = "mola-T";
repo = "signal";
rev = "aa58327e2297df921d72a0370468b48663efd438";
sha256 = "1gzfdk3ks56h8q4xk69aaxkhkg9jhs55iqdicyvq7x9wmjn6b7xw";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/signal";
- sha256 = "0y4crwpnmwm8bi9jazrph4yj0nnva2i1js8h3bw3sizy20a4yf00";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/signal";
+ sha256 = "1g8sbszh7cnhpfaql8jn22bsdjdyjdnjb00xr43krr6smc1dr2xq";
name = "recipe";
};
packageRequires = [ cl-lib emacs ];
@@ -86744,12 +92145,12 @@
melpaBuild {
pname = "simple-bookmarks";
ename = "simple-bookmarks";
- version = "20160804.701";
+ version = "20190204.626";
src = fetchFromGitHub {
owner = "jtkDvlp";
repo = "simple-bookmarks";
- rev = "e89e8163a0705e28e9346320a1ee13c1aae249af";
- sha256 = "0bx8inaihfs48rzi01nlr3wp2iw0bnk318hhgpd4zg64ap3sgdsv";
+ rev = "54e8d771bcdb0eb235b31c0aa9642171369500e5";
+ sha256 = "0i4yw341b7iml2j8mxclixsrdqlvixfxpabaxp4jh70aq2zfw1cf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a60dd50c388a75ce21a5aec9acf938835d7afdbc/recipes/simple-bookmarks";
@@ -86797,12 +92198,12 @@
melpaBuild {
pname = "simple-httpd";
ename = "simple-httpd";
- version = "20180528.903";
+ version = "20190110.705";
src = fetchFromGitHub {
owner = "skeeto";
repo = "emacs-web-server";
- rev = "a5eb49a6567e33586fba15dd649d63ca6e964314";
- sha256 = "0dpn92rg813c4pq7a1vzj3znyxzp2lmvxqz6pzcqi0l2xn5r3wvb";
+ rev = "f1c160f83cbfecc63ec6c6e2a94590b500ecf458";
+ sha256 = "1rxc8y0nfhanyp1l6vz20jg2d4wdjwy9gwicpmfhq0nmafxydw7z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/simple-httpd";
@@ -86850,12 +92251,12 @@
melpaBuild {
pname = "simple-paren";
ename = "simple-paren";
- version = "20180427.218";
+ version = "20190315.1156";
src = fetchFromGitHub {
owner = "andreas-roehler";
repo = "simple-paren";
- rev = "8d735905306c587851eff1445898499c01c530ca";
- sha256 = "0fv8s9h9sdiahi49al7zp0ldrlxi0dj46i2il75y7ay70l29wza2";
+ rev = "2530d5419301c80bc584ee4888ce2d048fba8add";
+ sha256 = "0zcak1x2b7y0g29c0njblspawxjxkbkgyn3100wawfcswyav3nri";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5e8886feb4a034fddd40d7381508b09db79f608f/recipes/simple-paren";
@@ -86927,12 +92328,12 @@
melpaBuild {
pname = "simpleclip";
ename = "simpleclip";
- version = "20170803.540";
+ version = "20181105.836";
src = fetchFromGitHub {
owner = "rolandwalker";
repo = "simpleclip";
- rev = "d461c462c237cd896553adb468cd77499d0d26ad";
- sha256 = "1dfa1sa7rbadj36nbzyxbpbvkdlh1s5n0mx6hxn52psqin1ra6yn";
+ rev = "2468b08ad829aaf4a90246541978be3974c60ab8";
+ sha256 = "1pkv4mi0pmi3hwbl3yyzahin5xv4zkd0jw8xh1cdipymndga4iwq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7c921e27d6aafc1b82d37f6beb8407840034377a/recipes/simpleclip";
@@ -86974,23 +92375,25 @@
, fetchurl
, lib
, melpaBuild
- , request-deferred }:
+ , request-deferred
+ , unicode-escape
+ , uuidgen }:
melpaBuild {
pname = "simplenote2";
ename = "simplenote2";
- version = "20171201.1806";
+ version = "20190321.233";
src = fetchFromGitHub {
owner = "alpha22jp";
repo = "simplenote2.el";
- rev = "0fd6dbd0566af29964078e4b74baf69c2f52381a";
- sha256 = "0qlwmxrz2kngri7ywy64bja0najq9m6asq2gr53ns0mkq1ngf0l8";
+ rev = "760ffecda63bd218876b623f46d332e3ef079be6";
+ sha256 = "1swb6xvdw6dql6wdj8y5kaaicwrafiz5jwnfl5h1viw08b98q8dv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1ac16abd2ce075a8bed4b7b52aed71cb12b38518/recipes/simplenote2";
sha256 = "1qdzbwhzmsga65wmrd0mb3rbs71nlyqqb6f4v7kvfxzyis50cswm";
name = "recipe";
};
- packageRequires = [ request-deferred ];
+ packageRequires = [ request-deferred unicode-escape uuidgen ];
meta = {
homepage = "https://melpa.org/#/simplenote2";
license = lib.licenses.free;
@@ -87036,12 +92439,12 @@
melpaBuild {
pname = "skeletor";
ename = "skeletor";
- version = "20170616.1746";
+ version = "20190211.1939";
src = fetchFromGitHub {
owner = "chrisbarrett";
repo = "skeletor.el";
- rev = "01c330ec115fc29bba5d9bdf6c15beb4a44e2281";
- sha256 = "0i3axni8y4s5n2s7qbqzz3sadcfhr3369q7qn8psk29qbicjw5wv";
+ rev = "47c5b761aee8452716c97a69949ac2f675affe13";
+ sha256 = "12bdgykfh4mwsqdazxjdvha62h3q3v33159ypy91f6x59y01fi0n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e63aefc869900c2af6f958dc138f9c72c63e2b8/recipes/skeletor";
@@ -87198,12 +92601,12 @@
melpaBuild {
pname = "slack";
ename = "slack";
- version = "20180712.2222";
+ version = "20190402.2337";
src = fetchFromGitHub {
owner = "yuya373";
repo = "emacs-slack";
- rev = "cec90237ed46443f8f67886a2188d518b0f3c7dc";
- sha256 = "0npim0rrq0jkw8vj5d8iwfi64nz3mqnciamjs9hamzkiv6z9yxkw";
+ rev = "53816e274ce1c65fdfbd93fe0076fdaf79bbfbf2";
+ sha256 = "0z9cbajam923v07fji0zmn240z3dgqv77csn9aanv5qpi6xkm1sp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f0258cc41de809b67811a5dde3d475c429df0695/recipes/slack";
@@ -87276,16 +92679,16 @@
melpaBuild {
pname = "slime";
ename = "slime";
- version = "20180719.1821";
+ version = "20190319.230";
src = fetchFromGitHub {
owner = "slime";
repo = "slime";
- rev = "289e4d7117b034dea668a6d28f9ddb7eb80f57ed";
- sha256 = "0sanswnqyk50hgkr0p0zhxm3dfg72p4xcv7ivf2vivfqq68pyvym";
+ rev = "6945edd4a6532e84caca53fbb44b09ca14cd50cc";
+ sha256 = "1g6pq3xri7r54whradbrc1kbsj96x65x3nqcpy2a05h4wqbn8psk";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/14c60acbfde13d5e9256cea83d4d0d33e037d4b9/recipes/slime";
- sha256 = "04zcvjg0bbx5mdbsk9yn7rlprakl89dq6jmnq5v2g0n6q0mh6ign";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/47609a81b81330820f6ddf717400dc7fa06aaabf/recipes/slime";
+ sha256 = "1ds8iprxr04wdhnnw4129v5l3w3k5rjp5ax156ppqr5i7wxx1zac";
name = "recipe";
};
packageRequires = [ cl-lib macrostep ];
@@ -87304,12 +92707,12 @@
melpaBuild {
pname = "slime-company";
ename = "slime-company";
- version = "20180119.1043";
+ version = "20190117.738";
src = fetchFromGitHub {
owner = "anwyn";
repo = "slime-company";
- rev = "4c2e2805540dea700130607fa235018a87e4a070";
- sha256 = "0ihwchp6hc1rxmahrhaly1cnhqs6k6ks32iiywwsyw7fjc34alc4";
+ rev = "7290cbad711a62f76c28e5638d1a4d77197a358c";
+ sha256 = "0kslq8kq8dc192bpiaalyqisv3841h3dxy1wxk8hw3nyyww08mgx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/abe5036c6de996a723bc800e0f031314e1188660/recipes/slime-company";
@@ -87333,12 +92736,12 @@
melpaBuild {
pname = "slime-docker";
ename = "slime-docker";
- version = "20171004.1151";
+ version = "20181126.624";
src = fetchFromGitHub {
owner = "daewok";
repo = "slime-docker";
- rev = "13fa8be2fca516f3ff5fb70fa79dd8404bf86439";
- sha256 = "005zkypg2hkyzpkcv1rzfrmg8amg1bp0534y13xjqq3rz1p602bx";
+ rev = "8b511c8c922f6944867f3cfaa7268988384064f1";
+ sha256 = "0k7rvvyrrbbg9z46bxvzc4z4lnn9hjmv23m47ag191cqgag6r4fq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/15ec3f7208287161571c8fc3b29369ceabb44e5f/recipes/slime-docker";
@@ -87453,6 +92856,32 @@
license = lib.licenses.free;
};
}) {};
+ slow-keys = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "slow-keys";
+ ename = "slow-keys";
+ version = "20180830.2159";
+ src = fetchFromGitHub {
+ owner = "manuel-uberti";
+ repo = "slow-keys";
+ rev = "b93ad77f9fc1d14e080d7d64864fc9cb222248b6";
+ sha256 = "1s4yk6w9fqf6hmimjcq8r7b54v7f2hz3isihiaidj3sv5zclhflw";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/5d16756967dd9077399b92cde2ddd7784739b693/recipes/slow-keys";
+ sha256 = "03p0qx8a3g8mapjhdf9pjp3n0ng2pxmizpqn87wk8mbc8cmlwk2w";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/slow-keys";
+ license = lib.licenses.free;
+ };
+ }) {};
slstats = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -87488,16 +92917,16 @@
melpaBuild {
pname = "sly";
ename = "sly";
- version = "20180722.1611";
+ version = "20190315.1523";
src = fetchFromGitHub {
- owner = "capitaomorte";
+ owner = "joaotavora";
repo = "sly";
- rev = "4b260fdda880f8287327c0c0055e2f18fd91201d";
- sha256 = "05s248657hgi4sp8g1d5zsq1x4nwxvairzx17psqkwflxc11cpv6";
+ rev = "0a622da46251e620433d76f5ed98e40ef375ee01";
+ sha256 = "0zzda1fjskgkr162j3zi7y23zi3k4kg1hbcpcb1jyyp0bq8vwla5";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/79e7213183df892c5058a766b5805a1854bfbaec/recipes/sly";
- sha256 = "1pmyqjk8fdlzwvrlx8h6fq0savksfny78fhmr8r7b07pi20y6n9l";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/974d8812a4c5e45221ce3c32ae72c15ed29665c3/recipes/sly";
+ sha256 = "000g5qpy45zqrh3g4mk70mh2lakadfq18djrq7cabagw1qmhqy41";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -87516,14 +92945,14 @@
ename = "sly-hello-world";
version = "20160119.636";
src = fetchFromGitHub {
- owner = "capitaomorte";
+ owner = "joaotavora";
repo = "sly-hello-world";
rev = "1bfcca692b6ec0670ed309ffe29eb9384397c183";
sha256 = "1fxsv83fcv5l7cndsysd8salvfwsabvd84sm7zli2ksf678774gp";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d52ef4b249a42432eed6a260a758e26b50bc31d6/recipes/sly-hello-world";
- sha256 = "03ybjgczp6ssk4hmwd486vshlk7ql27k1lyhmvk26gmrf554z90n";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/sly-hello-world";
+ sha256 = "0mry5r0qc2w9k31kifqfc9slmh8mp2pz44qb36f41i3znckf7xy4";
name = "recipe";
};
packageRequires = [ sly ];
@@ -87543,14 +92972,14 @@
ename = "sly-macrostep";
version = "20160119.434";
src = fetchFromGitHub {
- owner = "capitaomorte";
+ owner = "joaotavora";
repo = "sly-macrostep";
rev = "b0830871e2bd96ed58876aed6b49f1328d78a3cb";
sha256 = "00lw6hkxs71abjyi7nhzi8j6n55jyhzsp81ycn6f2liyp4rmqgi7";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/74a0acfc6261d1c9e62ece0397f6b4d873ef5bb7/recipes/sly-macrostep";
- sha256 = "1i004mb0bg13j3zhdsjz1795dh0ry8winzvdghr1wardc9np60h7";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/sly-macrostep";
+ sha256 = "0gg9r5np2008593n1igq5chda1a3x1iblj0r4mqnnxa0r1hdsw3j";
name = "recipe";
};
packageRequires = [ macrostep sly ];
@@ -87569,14 +92998,14 @@
ename = "sly-named-readtables";
version = "20150817.816";
src = fetchFromGitHub {
- owner = "capitaomorte";
+ owner = "joaotavora";
repo = "sly-named-readtables";
rev = "f3c28a2e636bd1776b6c7dbc563ef5080bed9f5c";
sha256 = "1yw1fg1vc6l85v7d6bg16lknxpg7ns1gfw0bxyzyb698zmwzsv60";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7e5a29c194bb7fc1a82131b7a9bd4c465660a2bd/recipes/sly-named-readtables";
- sha256 = "11ymzbj1ji7avfjqafj9p5zx0m4y1jfjcmyanpjq1frdcz639ir9";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/sly-named-readtables";
+ sha256 = "0wy0z9m8632qlcxb4pw3csc52yaq7dj7gdf3pbg0wb67f32ihihz";
name = "recipe";
};
packageRequires = [ sly ];
@@ -87595,14 +93024,14 @@
ename = "sly-quicklisp";
version = "20170112.135";
src = fetchFromGitHub {
- owner = "capitaomorte";
+ owner = "joaotavora";
repo = "sly-quicklisp";
rev = "8a9e3c0c07c6861ec33b338cc46ac12e7ce6a477";
sha256 = "17xx79s2nx8prmg0xhfs9i8sdprbysaajc8k4131lnahj65v159l";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/330d04e4e79eee221bcffb8be3e46e097306b175/recipes/sly-quicklisp";
- sha256 = "1hpcz84g9c6g0x8qal02xgjj02gxqz3bysyz0l59jxiga0m634v8";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/sly-quicklisp";
+ sha256 = "0j0qkvs2v563dz2rd70dfmd0qpdwicymx59zv3gn57z5a8m14866";
name = "recipe";
};
packageRequires = [ sly ];
@@ -87848,12 +93277,12 @@
melpaBuild {
pname = "smart-jump";
ename = "smart-jump";
- version = "20180709.2205";
+ version = "20190216.1206";
src = fetchFromGitHub {
owner = "jojojames";
repo = "smart-jump";
- rev = "1b216416a977dc94a6f3b5e40adde7b502d97c2f";
- sha256 = "1rrd4x2pcy473gbha2dysawzqywlfp8yhl6xq6z8s2ggp9c825dn";
+ rev = "f8f98f1c032352f5d8d465a45b3b5b49cd9247d6";
+ sha256 = "00v6a04ywxvikfwwgf85hr4p77xlm7shyai558ww3vf2gyhw1ily";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/52f29e14e61b28cd1637ca5d6bd878d91a71251f/recipes/smart-jump";
@@ -87875,14 +93304,14 @@
ename = "smart-mark";
version = "20150911.1910";
src = fetchFromGitHub {
- owner = "cheunghy";
+ owner = "zhangkaiyulw";
repo = "smart-mark";
rev = "d179cdc3f53001a5ce99d5095f493cdf3a792567";
sha256 = "0kd3rh6idlaqand9i6sc44s1iahg5jdhqs9jpvivxlycj6z9p7m8";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7a0a35a06aedbfe6f66d9d8498d325540367d3ea/recipes/smart-mark";
- sha256 = "1vv65sa0pwl407mbxcp653kycgx8jz87n6wshias1dp9lv21pj6v";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/smart-mark";
+ sha256 = "0kx34983qqxkx2afql1daj155294dkbinw861lhx537614fq7wmn";
name = "recipe";
};
packageRequires = [];
@@ -87900,12 +93329,12 @@
melpaBuild {
pname = "smart-mode-line";
ename = "smart-mode-line";
- version = "20180422.1459";
+ version = "20190327.1241";
src = fetchFromGitHub {
owner = "Malabarba";
repo = "smart-mode-line";
- rev = "96e7ea0caba37fec485ea8b683afb4aed46d1d24";
- sha256 = "0rrb1mgnj1hw92hl0m9ybvilrd070n6a44lb6jj42hk8ybb0cxh2";
+ rev = "268319aafee710ce8916c8612a5a8dcdce55fc1b";
+ sha256 = "0j1m5xms3jgkd19baqnsyx2dzrc85c17nx49d1wklicn17kkawyb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6aed365c42987d64d0cd9a8a6178339b1b39e8/recipes/smart-mode-line";
@@ -87918,6 +93347,33 @@
license = lib.licenses.free;
};
}) {};
+ smart-mode-line-atom-one-dark-theme = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , smart-mode-line }:
+ melpaBuild {
+ pname = "smart-mode-line-atom-one-dark-theme";
+ ename = "smart-mode-line-atom-one-dark-theme";
+ version = "20181220.956";
+ src = fetchFromGitHub {
+ owner = "daviderestivo";
+ repo = "smart-mode-line-atom-one-dark-theme";
+ rev = "79261aeafa89664039201e3d3f405bc8b0a6aa8d";
+ sha256 = "06x1na621cm7183im2g2gxkvaqm0yfr9b9i0fbz9bwkcmijxrgmw";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0a6f3addec8d8fa957bfbc81071d3a434e843cf0/recipes/smart-mode-line-atom-one-dark-theme";
+ sha256 = "02hasm2vjvw3r9xkdnn2ddsval8vvhvx15dsac0jp3cc1y1qkm27";
+ name = "recipe";
+ };
+ packageRequires = [ emacs smart-mode-line ];
+ meta = {
+ homepage = "https://melpa.org/#/smart-mode-line-atom-one-dark-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
smart-mode-line-powerline-theme = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -88136,12 +93592,12 @@
melpaBuild {
pname = "smartparens";
ename = "smartparens";
- version = "20180717.335";
+ version = "20190128.947";
src = fetchFromGitHub {
owner = "Fuco1";
repo = "smartparens";
- rev = "34b53320f4ac41a60d641c5363cd5e02db37089e";
- sha256 = "1yv31wzf7wzkqpvmr3rdiphg4h7224bjfv5pr17gmgzjv9hlq3k2";
+ rev = "4d1571019080fec63b11474db32380b5fa4eb418";
+ sha256 = "0r9lf7vsaw8z1dydi850azha1ig1ldid8yn6zx1da2fvfpgyly7v";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bd98f85461ef7134502d4f2aa8ce1bc764f3bda3/recipes/smartparens";
@@ -88542,12 +93998,12 @@
melpaBuild {
pname = "snakemake-mode";
ename = "snakemake-mode";
- version = "20180519.1739";
+ version = "20181007.1950";
src = fetchFromGitHub {
owner = "kyleam";
repo = "snakemake-mode";
- rev = "8bc919296755ce58f52fd800ee21863c7aefb430";
- sha256 = "1zdiy0w95f9wm27czwjzxqyb5v16q61l1q8xrahh471x9pij632s";
+ rev = "0cadd2bbd20aae1555561e81ed72fec43ec7296e";
+ sha256 = "1i4cwdyhfyawfx07i63iqdx524mlphgbrl44wqqnnxrbdqm0h534";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c3a5b51fee1c9e6ce7e21555faa355d118d34b8d/recipes/snakemake-mode";
@@ -88806,12 +94262,12 @@
melpaBuild {
pname = "solaire-mode";
ename = "solaire-mode";
- version = "20180521.235";
+ version = "20190312.2257";
src = fetchFromGitHub {
owner = "hlissner";
repo = "emacs-solaire-mode";
- rev = "abf2ce4da77d0877efb4a035687390ce921eda4f";
- sha256 = "15wszz841vd9i59gq2xxh8rk7bh7agwglh2dwhxgs70m24hsp3p4";
+ rev = "d648ad7c06554c14077335b631410df989536e97";
+ sha256 = "0ajwf4ymqpskxjmd2fnr5g66wdncq1rsiv50yk3z0zxls6jap7d6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/52c69070eef3003eb53e1436c538779c74670ce6/recipes/solaire-mode";
@@ -88834,12 +94290,12 @@
melpaBuild {
pname = "solarized-theme";
ename = "solarized-theme";
- version = "20180621.1407";
+ version = "20190219.1751";
src = fetchFromGitHub {
owner = "bbatsov";
repo = "solarized-emacs";
- rev = "f829e99dd1508a1cdaf9146511012a33b0d4f68b";
- sha256 = "1a83qsz41v208iasqwfnblgzhgjjwg1lkc0vgxndvq1kk2sj18dg";
+ rev = "74c6b5acd6892faeafd08029898663d81ab0a4d5";
+ sha256 = "03pkc5bads459sx5a562ikpf5a6py0iqv7lihva7rqa8dj43jx0h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/solarized-theme";
@@ -88852,6 +94308,33 @@
license = lib.licenses.free;
};
}) {};
+ solidity-flycheck = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild
+ , solidity-mode }:
+ melpaBuild {
+ pname = "solidity-flycheck";
+ ename = "solidity-flycheck";
+ version = "20181117.718";
+ src = fetchFromGitHub {
+ owner = "ethereum";
+ repo = "emacs-solidity";
+ rev = "d6c48a1cb64d3c8a825dc0d06c839f2cacd4d289";
+ sha256 = "14v71xf3z60s1fhpsz8b3l1v4na2ds0ddcp41y412fnrg4scbrhr";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e561d869f4e32bad5d1a8678f67e591ff586d6de/recipes/solidity-flycheck";
+ sha256 = "1lx64y77q33a2lrg5sj5h56gicw1lk8qmxmva5bgc4zxxd8qwz6f";
+ name = "recipe";
+ };
+ packageRequires = [ flycheck solidity-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/solidity-flycheck";
+ license = lib.licenses.free;
+ };
+ }) {};
solidity-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -88859,16 +94342,16 @@
melpaBuild {
pname = "solidity-mode";
ename = "solidity-mode";
- version = "20180721.1614";
+ version = "20190302.109";
src = fetchFromGitHub {
owner = "ethereum";
repo = "emacs-solidity";
- rev = "d89dae03c9c6cb86f4e935081cb828c6c5c62830";
- sha256 = "11n3z0ibgsw16r34ba8i6fl43b1hx4q7b6v6g12kmfpss86dvv1d";
+ rev = "47f15b2663a6cf92ae6ebf655841a9509ad79017";
+ sha256 = "0zhr5fcv8vlkcnya36y9smpgw7ylb0fkx0px8zr0zhr2f9xgjmph";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/bb9df5ec0692352b6494d435d11166f4ea26c99e/recipes/solidity-mode";
- sha256 = "1qdzdivrf5yaa80p61b9r1gryw112v5l2m2jkvkc7glhkhrcvwsx";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/02d3fdae111b14a87aaa7a1b3f44e545c5e3d2ac/recipes/solidity-mode";
+ sha256 = "15vz3ayl1p3dn2cavm68rqv901c1b7dxm2j8iazwzj3q15ln8xvn";
name = "recipe";
};
packageRequires = [];
@@ -88968,14 +94451,14 @@
ename = "sos";
version = "20141214.2003";
src = fetchFromGitHub {
- owner = "omouse";
+ owner = "rudolfolah";
repo = "emacs-sos";
rev = "2469bf1d7c47a55b0ffa8a6ceef0bb21252b3c3a";
sha256 = "0zhz1j389jmfcxmzvp3gj2bkg996nk1mcf0sxw04wbyivh38hnql";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/36e02223b4ff9c0be4662991d734ca4a4e756f4b/recipes/sos";
- sha256 = "1gkd0plx7152s3dj8a9lwlwh8bgs1m006s80l10agclx6aay8rvb";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/sos";
+ sha256 = "0d0n2h7lbif32qgz0z2c36536mrx36d22gq86xm7kmxday6iy19k";
name = "recipe";
};
packageRequires = [ org ];
@@ -89021,12 +94504,12 @@
melpaBuild {
pname = "sotlisp";
ename = "sotlisp";
- version = "20180706.1049";
+ version = "20190211.1226";
src = fetchFromGitHub {
owner = "Malabarba";
repo = "speed-of-thought-lisp";
- rev = "cc5730c0803a6e0f18e22d6027784b915d304318";
- sha256 = "1s1l2lscjnv8f60ncynv82xrqg5npj1m77z28fxlx53calj6k0qk";
+ rev = "ed2356a325c7a4a88ec1bd31381c8666e8997e97";
+ sha256 = "1r7skjxiaqdkrhjrxh1sgzikip9sdr8apphgawvq4x6lir8g8jfz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6aed365c42987d64d0cd9a8a6178339b1b39e8/recipes/sotlisp";
@@ -89048,12 +94531,12 @@
melpaBuild {
pname = "sound-wav";
ename = "sound-wav";
- version = "20160725.724";
+ version = "20181126.926";
src = fetchFromGitHub {
owner = "syohex";
repo = "emacs-sound-wav";
- rev = "406868043761524118c27b1207be0f8bbda8798e";
- sha256 = "1vwszcxknkjq4q32vb4dab4rlyd7w0l3pl5rpl08haczmr2frl4d";
+ rev = "49a9f10334b914cf6429e49b5449e0711a3aa251";
+ sha256 = "1zg32gn0r06qcp6i5fxwns8xv5nqpc6hfzqajwj0hfvhkqdndv4j";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8333470e3d84d5433be489a23e065c876bed2ab2/recipes/sound-wav";
@@ -89280,12 +94763,12 @@
melpaBuild {
pname = "spaceline";
ename = "spaceline";
- version = "20180628.46";
+ version = "20181223.1224";
src = fetchFromGitHub {
owner = "TheBB";
repo = "spaceline";
- rev = "29ced71ed0097cd5eba15d6bfdbafd9d18f5bd82";
- sha256 = "1l929zlma30h4b3bkldzn0pp5wps4ws0pylzw141nj0l3r7b3lcg";
+ rev = "ae45a819ea7ae52febb4d7d82170af44dff10f19";
+ sha256 = "01dyi0s8yilkgs0ifi489004195l4zrm9dqbybip4136l9zmlini";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/46e4c876aeeb0bb0d0e81dcbb8363a5db9c3ff61/recipes/spaceline";
@@ -89309,12 +94792,12 @@
melpaBuild {
pname = "spaceline-all-the-icons";
ename = "spaceline-all-the-icons";
- version = "20170829.120";
+ version = "20190325.902";
src = fetchFromGitHub {
owner = "domtronn";
repo = "spaceline-all-the-icons.el";
- rev = "e2e195f64a541d72b6d0ba0451f1e3072234b820";
- sha256 = "0lrf62gsss19z2ca4hg5c08b3nbkqaa33fqrbfa126v2c98bj583";
+ rev = "5afd48c10f1bd42d9b9648c5e64596b72f3e9042";
+ sha256 = "1chv6lv216qa88fm2wil45x19dzahcclr9p5vizcziq180dnmass";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d039e057c1d441592da8f54e6d524b395b030375/recipes/spaceline-all-the-icons";
@@ -89334,12 +94817,12 @@
melpaBuild {
pname = "spacemacs-theme";
ename = "spacemacs-theme";
- version = "20180618.1129";
+ version = "20190116.1307";
src = fetchFromGitHub {
owner = "nashamri";
repo = "spacemacs-theme";
- rev = "af8a6093cd729c158da0532a8345612956553c8b";
- sha256 = "0890cdqacm2zri0mj9fdyyd5zplvl2p4gl499073qk076840l21f";
+ rev = "3eae3726faf39aa2a9e4c919a657f335282fefb7";
+ sha256 = "0csj0mygv3mlvlxi600i5pkxjirqg58fa7rsh205733iyqxpff93";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6c8ac39214856c1598beca0bd609e011b562346f/recipes/spacemacs-theme";
@@ -89489,12 +94972,12 @@
melpaBuild {
pname = "speechd-el";
ename = "speechd-el";
- version = "20180105.1217";
+ version = "20190103.1226";
src = fetchFromGitHub {
owner = "brailcom";
repo = "speechd-el";
- rev = "0b25d3eb7ae219d2af9a7e9df2f3334652156bf5";
- sha256 = "00b2851pgrzvcl828l48gxrmy779w8s1k4ngf8pf0sh1y9bd2715";
+ rev = "d97b5d5abb9d51da6e96c0f55ba7e50cb12aaa2e";
+ sha256 = "1adx34fi8v6mxvnvlw1gf6baadp3si2wwi71kcvqz1cqcf0fk4p7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/96669a664122c2fb69acd4cad2d7bf75d3e8272d/recipes/speechd-el";
@@ -89516,12 +94999,12 @@
melpaBuild {
pname = "speed-type";
ename = "speed-type";
- version = "20171230.847";
+ version = "20190227.2200";
src = fetchFromGitHub {
owner = "parkouss";
repo = "speed-type";
- rev = "7a67fcd7bf825eee890097bd4a1b3c4f531a1135";
- sha256 = "0nlmqgf4rg5qmkhpsal7j18wr5h74971k6d0wzw7rmjmpnjqhzvc";
+ rev = "d905b79ba3c80c556562ce18a96760202826eedc";
+ sha256 = "1pwi9f7iv604cv91j05r77bac2g17daya621g11lmfk1w09k35d5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d6c33b5bd15875baea0fd2f24ee8ec9414a6f7aa/recipes/speed-type";
@@ -89681,14 +95164,14 @@
ename = "spiral";
version = "20180223.340";
src = fetchFromGitHub {
- owner = "unrepl";
+ owner = "Unrepl";
repo = "spiral";
rev = "907b9792467139a942ba7b07ca0276b90770baf9";
sha256 = "1rggzzvya26abbzd8bc2kpv59kzgm75wqv1vwqnj9c8im1jvs1na";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/77609e10c836a26de43ddb304ecfa275e314da21/recipes/spiral";
- sha256 = "18rww2nfy5s22czabk71wqzrb53r0p2635872vr44b6kfwlb6qcw";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/spiral";
+ sha256 = "074ymaksb3dgrsrdsi6xdlvigki5l2v66r8204xv50yc88z7l8qr";
name = "recipe";
};
packageRequires = [ a avy clojure-mode emacs highlight treepy ];
@@ -89756,12 +95239,12 @@
melpaBuild {
pname = "spotify";
ename = "spotify";
- version = "20170302.2229";
+ version = "20181030.110";
src = fetchFromGitHub {
owner = "remvee";
repo = "spotify-el";
- rev = "2825b5cac8406969405096660aeab6e5fef765eb";
- sha256 = "1270c4l7dxxsnzkifwa0ncgv078da9pzhlyxpdfbdbsj8w70plzm";
+ rev = "29577cf1188161f98b8358c149aaf47b2c137902";
+ sha256 = "0h6yhfvvyd9sd5d37d3ng3z56zfb546vl95qjq16kcvxq00hdn1v";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/spotify";
@@ -89992,12 +95475,12 @@
melpaBuild {
pname = "sql-impala";
ename = "sql-impala";
- version = "20160427.1658";
+ version = "20181217.2010";
src = fetchFromGitHub {
owner = "jterk";
repo = "sql-impala";
- rev = "68248e9851b153850542ed1f709298bb9ab59610";
- sha256 = "12zyw8b8s3jga560wv141gc4yvlbldvfcmpibns8wrpx2w8aivfj";
+ rev = "466e7c0c789ec3e5e8a276c8f6754f91bb584c3e";
+ sha256 = "02psgbm06wivdm2cmjnj2vy05lnljxn44hj2arw2fr7x2qwn9r35";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sql-impala";
@@ -90010,6 +95493,58 @@
license = lib.licenses.free;
};
}) {};
+ sql-presto = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "sql-presto";
+ ename = "sql-presto";
+ version = "20190113.942";
+ src = fetchFromGitHub {
+ owner = "kat-co";
+ repo = "sql-prestodb";
+ rev = "bcda455e300a1af75c7bb805882329bc844703b2";
+ sha256 = "00whmsylr802fx87yqbr06rbymyln7kq7750pcz26xm1jgja7cax";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a21349775e018822a06bca3c3c338879548e286f/recipes/sql-presto";
+ sha256 = "1rjfgvwgl63xn047vmsmj1s31wvrd24v6ibf9nri6qmffhv9i9zb";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/sql-presto";
+ license = lib.licenses.free;
+ };
+ }) {};
+ sqlformat = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , reformatter }:
+ melpaBuild {
+ pname = "sqlformat";
+ ename = "sqlformat";
+ version = "20190113.1750";
+ src = fetchFromGitHub {
+ owner = "purcell";
+ repo = "sqlformat";
+ rev = "e9f5446f5a11304cfd1315d499838016752410c5";
+ sha256 = "1wj9ls0858wxc9vrkzgs46j45gm0s7f4yhsaki64dm44l02l5xsy";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6bdaa1ccae12f2ea779ac6989607d8027feac2c9/recipes/sqlformat";
+ sha256 = "07lf2gx629429b41qr04gl98gplb538gb5hw7idzrmi3higrmv8m";
+ name = "recipe";
+ };
+ packageRequires = [ emacs reformatter ];
+ meta = {
+ homepage = "https://melpa.org/#/sqlformat";
+ license = lib.licenses.free;
+ };
+ }) {};
sqlite = callPackage ({ fetchFromGitLab
, fetchurl
, lib
@@ -90093,12 +95628,12 @@
melpaBuild {
pname = "srcery-theme";
ename = "srcery-theme";
- version = "20180623.619";
+ version = "20181231.503";
src = fetchFromGitHub {
owner = "srcery-colors";
repo = "srcery-emacs";
- rev = "b81c4ff3805e3857f77008982efe30f27b78e7e7";
- sha256 = "1v7qlgdalff7m943zcgyg4da692g7sk18xj6l9zpwpnbxix8iirr";
+ rev = "561d83d5bbd4c1c939ad9f52863e75b969af320d";
+ sha256 = "19zxc4f559s6x0qlkb181h1wpyd0mrdl08dc3fhn9h1hg1lmn11p";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2654fc05f55c7fab7d550b7db1d187edc9ff0f42/recipes/srcery-theme";
@@ -90137,6 +95672,32 @@
license = lib.licenses.free;
};
}) {};
+ srv = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "srv";
+ ename = "srv";
+ version = "20180715.1259";
+ src = fetchFromGitHub {
+ owner = "legoscia";
+ repo = "srv.el";
+ rev = "b1eb7b109bc1c616dbf027429a90dc3b1a4263f1";
+ sha256 = "05kp8ajbqk7vxzkv23akyk2m7yg81pbrxpl3dsw67101sjazsybi";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6b0b7f22631e7749da484ced9192d8ae5e1be941/recipes/srv";
+ sha256 = "0xrgbi63vg0msxkcmcnvijkxa9y0s7613liqac7fs9514yvkbwin";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/srv";
+ license = lib.licenses.free;
+ };
+ }) {};
ssass-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -90205,8 +95766,8 @@
sha256 = "0895n7bss4wdydic1gflr03f2cwdyqywl16gvb599lpn288jhwvz";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/b9a9e4bd0205908bfb99762c7daaf3be276bb03a/recipes/ssh-agency";
- sha256 = "0lci3fhl2p9mwilvq1njzy13dkq5cp5ighymf3zs4gzm3w0ih3h8";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/ssh-agency";
+ sha256 = "1b25fl1kk4mwsd25pg9s0lazlpmaa6s9wnfgvlqk8k65d7p7idzz";
name = "recipe";
};
packageRequires = [ dash emacs ];
@@ -90222,12 +95783,12 @@
melpaBuild {
pname = "ssh-config-mode";
ename = "ssh-config-mode";
- version = "20180609.251";
+ version = "20180922.251";
src = fetchFromGitHub {
owner = "jhgorrell";
repo = "ssh-config-mode-el";
- rev = "5429a02b8f7431c40e4a50e5d1ac2cd2d08c6511";
- sha256 = "1fid0713f0m1pwwppwh49k5cyrr3akvksfj3g9p4lndpqgwc1rcd";
+ rev = "1ec676c021269c7b9cf814cf1d12f6acdcc25588";
+ sha256 = "14d9zzfks4kqfqp54qzb2m74bd0rb25sff9rx2d90b5svmvbg15p";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/750b16ee631b4c2014f2ebf767609bab4b8ee421/recipes/ssh-config-mode";
@@ -90248,12 +95809,12 @@
melpaBuild {
pname = "ssh-deploy";
ename = "ssh-deploy";
- version = "20180713.650";
+ version = "20190208.54";
src = fetchFromGitHub {
owner = "cjohansson";
repo = "emacs-ssh-deploy";
- rev = "b13ba60ea175798cfd1395ab833082789724073d";
- sha256 = "0fgcxvs2ngv65chnkb9w5rrak187xkwxiwmpc25iqvrrnrfr43s6";
+ rev = "a57ae0c5906277e3a293ff1396325e26345bc475";
+ sha256 = "0434c0r8ar8g4qn7isql6qivy1lf7jjdzr49gabxh8v8m1ysxy18";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ssh-deploy";
@@ -90275,12 +95836,12 @@
melpaBuild {
pname = "ssh-tunnels";
ename = "ssh-tunnels";
- version = "20180703.1327";
+ version = "20181129.736";
src = fetchFromGitHub {
owner = "death";
repo = "ssh-tunnels";
- rev = "a6b6ae9a5d17afa9ea39ca8c071e889deefcf8a3";
- sha256 = "01j0yvii46bd46miihkyggw1lkcr76j03wiw682ir5i1s6lli9k9";
+ rev = "903bfd0d2d225c7e37fcc8c7596bd0a387384f05";
+ sha256 = "0idxzza4n7cdhaw56zvz549i0ciihm74bqbq5ivsabvqg07r6qwm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b093a3a9a836bae8ce37a21188c64e9a878066e8/recipes/ssh-tunnels";
@@ -90765,12 +96326,12 @@
melpaBuild {
pname = "string-inflection";
ename = "string-inflection";
- version = "20180518.1707";
+ version = "20180827.601";
src = fetchFromGitHub {
owner = "akicho8";
repo = "string-inflection";
- rev = "a9de404b2ece932da9b1c9aa1c29dbf7cf506e76";
- sha256 = "1km8xxb0zc3yll1yzlsrrz14ch3inblpq2nhglwp1wskqwdhwly5";
+ rev = "e9a50855a4c718592c28a5a892f164ecf46e39a8";
+ sha256 = "03kvp5xrv9p46m4w25jr5nvi801yafq5vxzif42y0dav7ifmmdfp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5c2e2b6dba8686236c2595475cfddac5fd700e60/recipes/string-inflection";
@@ -91042,12 +96603,12 @@
melpaBuild {
pname = "sublimity";
ename = "sublimity";
- version = "20170820.827";
+ version = "20181121.511";
src = fetchFromGitHub {
owner = "zk-phi";
repo = "sublimity";
- rev = "62b0c526c599a0178a16a75f16513fc1f93a0d53";
- sha256 = "0kncjm6133a84z9rvygn5dqnwdj036sw6cf1pi595rk3f9r2ccg5";
+ rev = "4c8d0280815978fc11e1c5f86266a11c717b0c89";
+ sha256 = "1618ba3m36crh2wmmisi3ls5ijdqrwr58yda810jik0b6fjzzacv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c1e78cd1e5366a9b6d04237e9bf6a7e73424be52/recipes/sublimity";
@@ -91094,12 +96655,12 @@
melpaBuild {
pname = "sudo-edit";
ename = "sudo-edit";
- version = "20180608.911";
+ version = "20180731.1208";
src = fetchFromGitHub {
owner = "nflath";
repo = "sudo-edit";
- rev = "185edd69729b2adc8dccd015266636dae2df83d3";
- sha256 = "1rffxd2jjz40hjlsv7fh49pa24sym387d98sckkr95g3m9y1blvp";
+ rev = "cc3d478937b1accd38742bfceba92af02ee9357d";
+ sha256 = "1qv58x5j5a3v1s2ylhck1ykbfclq0mbi0gsvaql3nyv8cxazqlwl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3b08d4bbdb23b988db5ed7cb5a2a925b7c2e242e/recipes/sudo-edit";
@@ -91176,12 +96737,12 @@
melpaBuild {
pname = "suggest";
ename = "suggest";
- version = "20180722.350";
+ version = "20180916.1159";
src = fetchFromGitHub {
owner = "Wilfred";
repo = "suggest.el";
- rev = "06784aba76d2681456871bd79304b62b4957b411";
- sha256 = "0qi4slfdx0x9z2rzd2ibcl2zjqcrxvnh672l5xkyhjh873f16xar";
+ rev = "58ea3b20544410b90ca3286cbda3d71c823c3bf9";
+ sha256 = "00xbr3fbdjbmvy9nswzqxliavarqkgfa5ms6irfnbpng1ypmcvgf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b9fd27e812549587dc2ec26bb58974177ff263ff/recipes/suggest";
@@ -91237,8 +96798,8 @@
sha256 = "18qfcrr4xlwwhhaq7dwh31bbl84a53akgrw2c6lynnyyi4vk2wpq";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/bfd68b90234222dbf5907a29d506b6c4e61a372b/recipes/sunburn-theme";
- sha256 = "09shmaaii0lfd52v49cazn91sj4jz2siqbanw682vi7zsl79jx9f";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/sunburn-theme";
+ sha256 = "07nz7vr0yzf5746d8khlzl6ghaj44yfp0ar9ylbpdpfj7rdx17sa";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -91280,12 +96841,12 @@
melpaBuild {
pname = "sunshine";
ename = "sunshine";
- version = "20180325.548";
+ version = "20181029.954";
src = fetchFromGitHub {
owner = "aaronbieber";
repo = "sunshine.el";
- rev = "ecaccac91010f8d464646a0360b1676be71e6600";
- sha256 = "0n9ppy22ijc2cgs5xix8nks7abn0shvh0v0f2ir1j7v1ckjsklc5";
+ rev = "8959dea03377e61aaca0124ac8d2703daaae6b9a";
+ sha256 = "1shzhl5bi5dkmvc07mc7sknm5id89iivjkcxsrdcw004g08hr8y0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4a0ff9a4ef4bbe8de722a4f77f4a56a851497ff1/recipes/sunshine";
@@ -91305,12 +96866,12 @@
melpaBuild {
pname = "suomalainen-kalenteri";
ename = "suomalainen-kalenteri";
- version = "20170801.126";
+ version = "20190310.110";
src = fetchFromGitHub {
owner = "tlikonen";
repo = "suomalainen-kalenteri";
- rev = "c702e33cb6e13cb28bd761844e95be112a3c04f3";
- sha256 = "13avc3ba6vhysmhrcxfpkamggfpal479gn7k9n7509dpwp06dv8h";
+ rev = "c8c03fe9bae57d4e15c287aef4f98911a3529240";
+ sha256 = "1n4nz309rr1cpx1c5aighakpcmrbzzg2xprh5hi4kln0rngggycp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/181adf1b16253481674663fd28b195172231b7da/recipes/suomalainen-kalenteri";
@@ -91331,12 +96892,12 @@
melpaBuild {
pname = "super-save";
ename = "super-save";
- version = "20171008.3";
+ version = "20180929.27";
src = fetchFromGitHub {
owner = "bbatsov";
repo = "super-save";
- rev = "1c8fbd5e18277e4af0ada2678a854b1c9072db38";
- sha256 = "0mh7xp71l9xybbv17b1rsbpa60bwjw79ql9krj1kzy2c2pv9hmff";
+ rev = "62512f60d6685d8601e2021d95e77603b6d96885";
+ sha256 = "0cn39d1qfm119bxb9sdl43ya2vvadfp22qwdn3j843wyf92hpdn4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9730b65787b26d3909952cf246a01bd349e5fbab/recipes/super-save";
@@ -91512,12 +97073,12 @@
melpaBuild {
pname = "swap-regions";
ename = "swap-regions";
- version = "20180116.253";
+ version = "20180915.646";
src = fetchFromGitHub {
owner = "xuchunyang";
repo = "swap-regions.el";
- rev = "6e7a1bc68f11afe00809c8e27c13bca08393a91c";
- sha256 = "02z552qsc96big3davdj3yaz6f4fg72ljpn7nvzccp2wwchzfa1c";
+ rev = "f4fd9880cf690e003fcde88dcf2b46adbbbb03cd";
+ sha256 = "1d45yanqk4w0idqwkrwig1dl22wr820k11r3gynv7an643k4wngp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6805c7710618ed1178ffd3488295d4d6b33e8ebe/recipes/swap-regions";
@@ -91568,16 +97129,16 @@
melpaBuild {
pname = "swift-mode";
ename = "swift-mode";
- version = "20180721.35";
+ version = "20190205.32";
src = fetchFromGitHub {
- owner = "chrisbarrett";
+ owner = "swift-emacs";
repo = "swift-mode";
- rev = "d2f2f1da6085c6fad2709b951d6891dd139a6080";
- sha256 = "1ldf593qzbscwlngbabxb52kcpriwhglk95l82qs8y3q1x6aj0cw";
+ rev = "13628495bdb2dcf30eea04412e1d3e3c80b8e999";
+ sha256 = "1rl2rh1mzy7ig5wsd63lk3plrw7ivf2gir6w0ls2k0n2qxav3qb1";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/19cb133191cd6f9623e99e958d360113595e756a/recipes/swift-mode";
- sha256 = "1imr53f8agfza9zxs1h1mwyhg7yaywqqffd1lsvm1m84nvxvri2d";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/swift-mode";
+ sha256 = "103nix9k2agxgfpwyhsracixl4xvzqlgidd25r1fpj679hr42bg8";
name = "recipe";
};
packageRequires = [ emacs seq ];
@@ -91621,12 +97182,12 @@
melpaBuild {
pname = "swiper";
ename = "swiper";
- version = "20180713.946";
+ version = "20190407.1029";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "swiper";
- rev = "93d51d6188956da2592c1458b68d7cef48d967ae";
- sha256 = "024kj37xa4s49z8klcmn3a30zy3yzk5n9j9damzqmzd4d8klawi6";
+ rev = "11b00073cb348aedf1d648a991bab71e20178268";
+ sha256 = "1pylfgjrgcapya3dmivcaq5vnqx6h8lrq3xnx7sq11sw5fn6sw0n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e64cad81615ef3ec34fab1f438b0c55134833c97/recipes/swiper";
@@ -91700,12 +97261,12 @@
melpaBuild {
pname = "switch-window";
ename = "switch-window";
- version = "20180623.1115";
+ version = "20181103.2040";
src = fetchFromGitHub {
owner = "dimitri";
repo = "switch-window";
- rev = "a5dc9a9c68ba77d86d7170f183ba1e003569ad8e";
- sha256 = "0466lk1spk6bl1fnc0v7gwr71msccc25a3j7jzd7h0zssc2l403c";
+ rev = "204f9fc1a39868a2d16ab9370a142c8c9c7a0943";
+ sha256 = "0rci96asgamr6qp6nkyr5vwrnslswjxcjd96yccy4aivh0g66yfg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7d2204e3b53ade1e400e143ac219f3c7ab63a1e9/recipes/switch-window";
@@ -91784,12 +97345,12 @@
melpaBuild {
pname = "sx";
ename = "sx";
- version = "20180606.36";
+ version = "20190114.723";
src = fetchFromGitHub {
owner = "vermiculus";
repo = "sx.el";
- rev = "46d9498e8f501697920c79437909cdddc93d5ec6";
- sha256 = "0z21f2v8464bj0jj6y9w7b5hpz1m2r761hanc4b802k8bxb8mxh0";
+ rev = "49358eae36dd4bb5b9207313b30df085e7f25cef";
+ sha256 = "08x2bli821b47sp1jwgg8k8q292z4ryl052rfna0vkcjqv6l5bav";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f16958a09820233fbe2abe403561fd9a012d0046/recipes/sx";
@@ -91810,12 +97371,12 @@
melpaBuild {
pname = "symbol-overlay";
ename = "symbol-overlay";
- version = "20180412.339";
+ version = "20190305.843";
src = fetchFromGitHub {
owner = "wolray";
repo = "symbol-overlay";
- rev = "b76f510037eb8e0ea018272495f356c71ff5b758";
- sha256 = "0dlb7rm4adm2ccqga5a1w6m2jvs4ics9ihf76hqyx4px9m9ca1ll";
+ rev = "88c3ed02a06bea87ab7e41918b39e07bb3fc255b";
+ sha256 = "0yr2n6vld3shlcsmfvwgkrnw0zxry0bfkzd8y1ylfr826qll2cmv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c2a468ebe1a3e5a35ef40c59a62befbf8960bd7b/recipes/symbol-overlay";
@@ -91994,12 +97555,12 @@
melpaBuild {
pname = "synosaurus";
ename = "synosaurus";
- version = "20180125.1034";
+ version = "20190305.1406";
src = fetchFromGitHub {
owner = "hpdeifel";
repo = "synosaurus";
- rev = "ceeb06e24d3af3643862ecfdb263590eec1f492f";
- sha256 = "1qdppyx24zmz9dzm9kjvcx30g6znik602mg2h2s835cww9n97idm";
+ rev = "bc26f5c22b4d08dd09d0852435814977433c9521";
+ sha256 = "0hpcnslgs5qh3knapw1x7imia3b1yplicpddnzzpxnjsp7psypwh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/synosaurus";
@@ -92048,12 +97609,12 @@
melpaBuild {
pname = "syntactic-close";
ename = "syntactic-close";
- version = "20180722.935";
+ version = "20181026.931";
src = fetchFromGitHub {
owner = "emacs-berlin";
repo = "syntactic-close";
- rev = "128d5bf059512a55c77cac0e96a7775f38184139";
- sha256 = "0l9hklj39p6rsl2dcw6pka39glkp6qvyccqdy7qcnwxmffy204m6";
+ rev = "426975d73c474eb4e6a0af20f34455aac6e89610";
+ sha256 = "1gyhz4mzd5gcfy9mx65aym8abz4wfdgy229aj1ng1c0j32fjk9rm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f2c15c0c8ee37a1de042a974c6daddbfa7f33f1d/recipes/syntactic-close";
@@ -92123,12 +97684,12 @@
melpaBuild {
pname = "system-packages";
ename = "system-packages";
- version = "20180516.1450";
+ version = "20181219.821";
src = fetchFromGitLab {
owner = "jabranham";
repo = "system-packages";
- rev = "7f59e325e8607aeb3036c7fb1590b0f8e2caa063";
- sha256 = "0k7jflghql0sa7my1qfzz0prpwk54rmb244k6jwhbgsyfsspr12l";
+ rev = "25da03bab9757009d095dc1ef3e93d8b1ef2d7c4";
+ sha256 = "1qy9617dfcnaaa2ppw90chl7x4mkdm47j1ayis9s266gcphd14rk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7d3c7af03e0bca3f834c32827cbcca29e29ef4db/recipes/system-packages";
@@ -92280,14 +97841,14 @@
ename = "tab-jump-out";
version = "20151005.1830";
src = fetchFromGitHub {
- owner = "cheunghy";
+ owner = "zhangkaiyulw";
repo = "tab-jump-out";
rev = "1c3fec1826d2891177ea78e4e7cce1dc67e83e51";
sha256 = "0h7sfbca1nzcjylwl7zp25yj6wxnlx8g8a50zc6sg6jg4rggi2fm";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/3691aaaed27d0cf67af417f75fbb693ab856bd47/recipes/tab-jump-out";
- sha256 = "0nlbyzym8l8g9w2xvykpcl5r449v30gal2k1dnz74rq4y8w4rh7n";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/tab-jump-out";
+ sha256 = "1p2hkj0d9hbiwbf746l3rad8a5x6hk97b0ajl6q6cwbmy2qm3cca";
name = "recipe";
};
packageRequires = [ dash emacs ];
@@ -92303,12 +97864,12 @@
melpaBuild {
pname = "tabbar";
ename = "tabbar";
- version = "20160524.1401";
+ version = "20180726.1035";
src = fetchFromGitHub {
owner = "dholm";
repo = "tabbar";
- rev = "b6c285a7d59dcdb1f17716f0b60787922fa4be82";
- sha256 = "1akvwm4dqq4ihphlsdn8d1mm08q923y2iqh15lvc0cd0hxp3ni0q";
+ rev = "82bbda31cbe8ef367dd6501c3aa14b7f2c835910";
+ sha256 = "01sw76wp8bvh21h30pkc3kjr98c8m6qid6misk1y7hkyld0bzxay";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/806420d75561cbeffbc1b387345a56c21cc20179/recipes/tabbar";
@@ -92358,12 +97919,12 @@
melpaBuild {
pname = "tablist";
ename = "tablist";
- version = "20170219.1935";
+ version = "20190129.1013";
src = fetchFromGitHub {
owner = "politza";
repo = "tablist";
- rev = "c834a84efb6efa32497efe1e73160fade741b836";
- sha256 = "0nkrndgg0zrqxb7hilqbrywi8n1lcf3jxjjp1hfn5f0arxy64pcv";
+ rev = "af8703139d80be54b6c3077dd3e54ca7f3087043";
+ sha256 = "15gnwainawzaidhclfqa2pyp6hgh172xxx127hvq6fabc1zm4ykg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5fc0c6c02d609fb22710560337bd577f4b1e0c8f/recipes/tablist";
@@ -92537,12 +98098,12 @@
melpaBuild {
pname = "tao-theme";
ename = "tao-theme";
- version = "20171221.1001";
+ version = "20190204.304";
src = fetchFromGitHub {
owner = "11111000000";
repo = "tao-theme-emacs";
- rev = "a97df8c51d77696787aaf55c67207f19c803fabe";
- sha256 = "1djp4gbs6gr956a5hpkwh5laasc7pypqip32l7djd7405vx5ixp2";
+ rev = "c5107fbe7e752f4e58c2d2147ff18a1ebb12937c";
+ sha256 = "07vvlglmkj87hpxz79s3bl2cjn71vain57fdxs7j9vlr5jkchxwn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/94b70f11655944080507744fd06464607727ecef/recipes/tao-theme";
@@ -92562,12 +98123,12 @@
melpaBuild {
pname = "taskpaper-mode";
ename = "taskpaper-mode";
- version = "20180710.158";
+ version = "20190225.703";
src = fetchFromGitHub {
owner = "saf-dmitry";
repo = "taskpaper-mode";
- rev = "e822c44ebc5b15750ba68af67417ea5fe67641c0";
- sha256 = "08ilrykg9ggksxwrkns0jkbjjvpzxb5w1l2s2krxnf4nj5d9x3qb";
+ rev = "4b15b0f473a42ff40742cd790d06a08452276bef";
+ sha256 = "1visq29mg5a0czx4bgq7jzqk4xbqbdhsxv85n4cji8h8rzagn21c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f969b1cd58dfd22041a8a2b116db0f48e321e546/recipes/taskpaper-mode";
@@ -92670,17 +98231,18 @@
, melpaBuild }:
melpaBuild {
pname = "tc";
- version = "20150113.1926";
+ ename = "tc";
+ version = "20181108.2028";
src = fetchFromGitHub {
- owner = "kozo2";
+ owner = "kanchoku";
repo = "tc";
- rev = "6aa9d27c475be8d009adf9cd417f2cdf348a91e8";
- sha256 = "1xpkrlfqb0np9zyxk41f3pxfkw98ii4q0xh8whq4llv5bmfxynzk";
+ rev = "5496f8dee27c4d925977da3cca6fcacf9b45bc58";
+ sha256 = "1clf56sxvrky05qzk5kri01r0jz4zfwysxzs3iix0aljrz8mdi8w";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/55fa57c74237ec7afe651d162228fae595579fe5/recipes/tc";
- sha256 = "13qdnfslnik4f97lz9bxayyhgcp1knh5gaqy00ps863j3vpzjb9s";
- name = "tc";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9fddfc79ed2c614c33e90ba80f300912fdab88a3/recipes/tc";
+ sha256 = "05lnsaizlh4wqjkp0wqcm1756r9ia46as8zf01k8qsi0mm452g6q";
+ name = "recipe";
};
packageRequires = [];
meta = {
@@ -92697,12 +98259,12 @@
melpaBuild {
pname = "tco";
ename = "tco";
- version = "20160810.1712";
+ version = "20190308.1655";
src = fetchFromGitHub {
owner = "Wilfred";
repo = "tco.el";
- rev = "5d3498c5f44d3a44c9aabbba71b590f6a2f85145";
- sha256 = "0vzixcp6anxdxchafj7lzs4pxfnzkqhqlyz05dxasby71zx7g49v";
+ rev = "482db5313f090b17ed22ccd856f0e141dc75afe6";
+ sha256 = "1z7xkbrqznk6ni687qqknp8labcyhl8y6576hjfri89fn21385y9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ca33f97f0394585c8ccb31cab0ee776d1655907c/recipes/tco";
@@ -92765,6 +98327,32 @@
license = lib.licenses.free;
};
}) {};
+ teacode-expand = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "teacode-expand";
+ ename = "teacode-expand";
+ version = "20181230.2240";
+ src = fetchFromGitHub {
+ owner = "raguay";
+ repo = "TeaCode-Expand";
+ rev = "7df6f9ec95da1fb47bbae489bb3f2c27ed3a9b3a";
+ sha256 = "0z0297zrvd8zf8bmf4kf9gzf6qajs4abdy6appb3swz3z2v3nqkb";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/8b23b0f701627ed18886f29ffd33ef7fb1f82e04/recipes/teacode-expand";
+ sha256 = "1hkh7mzzwrk7a8ihss7kyncw9mkwr4iw06gv5y6kg806qc4f1nn3";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/teacode-expand";
+ license = lib.licenses.free;
+ };
+ }) {};
telepathy = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -92801,12 +98389,12 @@
melpaBuild {
pname = "telephone-line";
ename = "telephone-line";
- version = "20180601.1943";
+ version = "20190127.723";
src = fetchFromGitHub {
owner = "dbordak";
repo = "telephone-line";
- rev = "1cc28a7811245e6f24234b36fc1004a1357a3df3";
- sha256 = "1qjlil6xy6jacz1lhwz76n5xqx1xw2bqlnkijrka04v9gws42jaj";
+ rev = "17901f39119702cb6754ae6907549c7b795fe747";
+ sha256 = "05mys10x3cn39b5ddn6ic2x9kh74gwm3g478bc3gbia5x5acl11c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9c998b70365fb0a210c3b9639db84034c7d45097/recipes/telephone-line";
@@ -92865,8 +98453,8 @@
sha256 = "155yyinh342k8fz8g4xzz0glqkxkjl6p6y2wym6p12phk7v2x3ic";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/0f89e65ce7b302a0330f0110564320c724acc254/recipes/temporary-persistent";
- sha256 = "1q141cdnwchfra6gp6fs0nlkxv6fdf8rx5ry04kcpr9a1y56z362";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/temporary-persistent";
+ sha256 = "0afjcad97pzbrjs1v80l6c98vi5asgaxcn2rq95gz1ld7nn0a9zh";
name = "recipe";
};
packageRequires = [ dash emacs names s ];
@@ -93076,12 +98664,12 @@
melpaBuild {
pname = "term-projectile";
ename = "term-projectile";
- version = "20170421.105";
+ version = "20190306.2000";
src = fetchFromGitHub {
owner = "IvanMalison";
repo = "term-manager";
- rev = "7180f09078f89aadb83061420ca8fd58d929b629";
- sha256 = "1d1szcdpgmkp6r9qsvk7pv0swl626d5svna2xqr3lrpgqzmsjcnk";
+ rev = "fad6760e66f64661e77e952f06b2fbef1e88e4fe";
+ sha256 = "0b8r4g80jw2gdpwyc63fz1cssi1iygwdcqzqvjdaawrw3v7cbxx3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5260876280148fae28a459f07932cebb059b560e/recipes/term-projectile";
@@ -93101,12 +98689,12 @@
melpaBuild {
pname = "term-run";
ename = "term-run";
- version = "20151228.105";
+ version = "20190317.2055";
src = fetchFromGitHub {
owner = "10sr";
repo = "term-run-el";
- rev = "54650dbbabb13cb2a6c0670ff6b24b29717a6a8b";
- sha256 = "149pl3zxg5kriydk5h6j95jyly6i23w4w4g4a99s4zi6ljiny6c6";
+ rev = "72db83728c22314522bdba692b145f48711052a0";
+ sha256 = "149vska920b4c18gij7jgwyr8flzlym719jxpjch8m2bvwiya0dk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7cad6343104bfe5724e068660af79a6249010164/recipes/term-run";
@@ -93145,6 +98733,32 @@
license = lib.licenses.free;
};
}) {};
+ terminal-focus-reporting = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "terminal-focus-reporting";
+ ename = "terminal-focus-reporting";
+ version = "20180830.19";
+ src = fetchFromGitHub {
+ owner = "veelenga";
+ repo = "terminal-focus-reporting.el";
+ rev = "8b84bf18f4c5f1b59a11692eb706f13c3598d9a5";
+ sha256 = "0bbcl0mq62f22n2aipgzx93164x81bgybfd0x7gvsfva76qs8pc4";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/19e7149a0a2db7df7f890a2c1ad22266e97694d7/recipes/terminal-focus-reporting";
+ sha256 = "0iwq0rabq0sdn4apa5ibfp912j76w7hzg3q5lbxp7fspfwwynvg2";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/terminal-focus-reporting";
+ license = lib.licenses.free;
+ };
+ }) {};
terminal-here = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -93172,6 +98786,33 @@
license = lib.licenses.free;
};
}) {};
+ terminal-toggle = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , popwin }:
+ melpaBuild {
+ pname = "terminal-toggle";
+ ename = "terminal-toggle";
+ version = "20190226.710";
+ src = fetchFromGitHub {
+ owner = "mtekman";
+ repo = "terminal-toggle.el";
+ rev = "f824d634aef3600cb7a8e2ddf9e8444c6607c160";
+ sha256 = "150xvmr5vsydg0197m1k62mwy2810mzh1iwqj9yl9fg47fbzbg0i";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/673974fe768f88a7c67c929bb6b9b27fc028d4e2/recipes/terminal-toggle";
+ sha256 = "0l1gklcgas2g0kx5q59dzhv20pki5hxv4h3rsbrwbpq5rxkxymbx";
+ name = "recipe";
+ };
+ packageRequires = [ emacs popwin ];
+ meta = {
+ homepage = "https://melpa.org/#/terminal-toggle";
+ license = lib.licenses.free;
+ };
+ }) {};
tern = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -93182,12 +98823,12 @@
melpaBuild {
pname = "tern";
ename = "tern";
- version = "20170925.1333";
+ version = "20181107.2322";
src = fetchFromGitHub {
owner = "ternjs";
repo = "tern";
- rev = "5c395b5d696aad5a185724f56c74a7f83349f3bd";
- sha256 = "11sp1jz0fn8gnc28qvyrmc7qxr1gn5r3vxv6gp46p7cmgg9mflri";
+ rev = "40a0c74db3888b997a9115720ff91c399bb1b146";
+ sha256 = "0dh0bfs0knikzn4gvjh9274yhbg3ndw46qmj4jy0kxh7gfl2lpkh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eaecd67af24050c72c5df73c3a12e717f95d5059/recipes/tern";
@@ -93257,34 +98898,6 @@
license = lib.licenses.free;
};
}) {};
- tern-django = callPackage ({ emacs
- , f
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild
- , tern }:
- melpaBuild {
- pname = "tern-django";
- ename = "tern-django";
- version = "20160221.1123";
- src = fetchFromGitHub {
- owner = "proofit404";
- repo = "tern-django";
- rev = "856fc98dc5e7cb4c8bc200f99150cc6187c82861";
- sha256 = "15jzqwfr1958s21qzimvv87kckqyq01bimqgawb51b6xi9ib3biv";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/e9e128a795e4949e3d4c2f01db0161a34935f635/recipes/tern-django";
- sha256 = "1pjaaffadaw8h2n7yv01ks19gw59dmh8bp8vw51hx1082r3yfvv0";
- name = "recipe";
- };
- packageRequires = [ emacs f tern ];
- meta = {
- homepage = "https://melpa.org/#/tern-django";
- license = lib.licenses.free;
- };
- }) {};
terraform-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -93422,16 +99035,16 @@
melpaBuild {
pname = "tex-smart-umlauts";
ename = "tex-smart-umlauts";
- version = "20160427.58";
+ version = "20190316.1515";
src = fetchFromGitHub {
- owner = "emacsorphanage";
+ owner = "emacsmirror";
repo = "tex-smart-umlauts";
- rev = "5261b931443558f4252489a1e6616034848aff02";
- sha256 = "1rq1l52mgbasgwvjwpivjrfjf8l8r85wdkfpbw8213449qh9c9zh";
+ rev = "f15ed781b1fb38bf3e46c481dd602c3999920b99";
+ sha256 = "11ky141a33vm961jpj1spz9wxb4mfgw8drqxg2a6yk2rinkf0wcl";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/30de78c9cf83de30093a5647976eeaf552d4b2cb/recipes/tex-smart-umlauts";
- sha256 = "05q5mzl0pya682hdmjyp09hh121dc5y4d5vgqjffx3yfd5kgsy5w";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/be27e728327016b819535ef8cae10020e5a07c2e/recipes/tex-smart-umlauts";
+ sha256 = "1bygl7fjm83j8lhkipczjs812837x9p3pqn8waykfbb7v05s81fr";
name = "recipe";
};
packageRequires = [];
@@ -93449,12 +99062,12 @@
melpaBuild {
pname = "texfrag";
ename = "texfrag";
- version = "20180318.1647";
+ version = "20181001.53";
src = fetchFromGitHub {
owner = "TobiasZawada";
repo = "texfrag";
- rev = "8bb74e2d38139d6497545581a3507c6f7b4fa5e2";
- sha256 = "03pqbx2mwz2lz7027da0aiyh12f2jifdfvxh0s83qshsnw6sipmk";
+ rev = "87ebd2653c39abe0b02a91ab2182e6fff562f6c7";
+ sha256 = "0fi9cih597g6iigrvdyfxa9cc3irsvfcbzf74fkp62ggpmqlal90";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/756649bbe2dc6233c66c3d128a8096be12231078/recipes/texfrag";
@@ -93602,12 +99215,12 @@
melpaBuild {
pname = "tfsmacs";
ename = "tfsmacs";
- version = "20180629.1011";
+ version = "20180911.1414";
src = fetchFromGitHub {
owner = "sebasmonia";
repo = "tfsmacs";
- rev = "8eb5906aa7e1ec469f6347545afabca787b2b223";
- sha256 = "0an6hz0kd5mvcx61xhdi62zw15x6yqqx8mmm7jsd008kifrk27d4";
+ rev = "13ee3f528ff616880611f563a68d921250692ef8";
+ sha256 = "035avqp9m1mbffvc1xd5qvyg93vsxjsphmf394mq15gawqs33ik4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b449d004bdb498c2a1d155671070e0745c7d7598/recipes/tfsmacs";
@@ -93653,12 +99266,12 @@
melpaBuild {
pname = "theme-looper";
ename = "theme-looper";
- version = "20170425.606";
+ version = "20190402.1924";
src = fetchFromGitHub {
owner = "myTerminal";
repo = "theme-looper";
- rev = "5e3a3ea7ad31d4b38efa2cc08f0063b230736da9";
- sha256 = "06khrrjlhnzckr2zisdbx4pj6r8kmv7dbdzvzh74qz79x337lvzn";
+ rev = "a9195e1899dcd7dd5c630d053841c1ab958f1728";
+ sha256 = "1mw2w09fr4s3621q4xb1027yf268hi1lc1ypabhgrckclih81aiy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/theme-looper";
@@ -93800,26 +99413,27 @@
license = lib.licenses.free;
};
}) {};
- thrift = callPackage ({ fetchFromGitHub
+ thrift = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "thrift";
ename = "thrift";
- version = "20140312.1348";
+ version = "20180905.350";
src = fetchFromGitHub {
- owner = "apache";
- repo = "thrift";
- rev = "98bebac1520bcf1dd5392535e06a751d7b2af58e";
- sha256 = "185hrigx5q15c2jimzbklmi4z6kzigsarqwr805llsmsmg9pp3wi";
+ owner = "facebook";
+ repo = "fbthrift";
+ rev = "a1960cc1a78ada27872913a145395f6bd45c8fd9";
+ sha256 = "1az66smmfdkm4rzb8pripsb8ymyvvpncpapg69byf0hqhklln55z";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/857ab7e3a5c290265d88ebacb9685b3faee586e5/recipes/thrift";
- sha256 = "0p1hxmm7gvhyigz8aylncgqbhk6cyf75rbcqis7x552g605mhiy9";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0dca078c0c467bc44290a922ad5627d6a34194f8/recipes/thrift";
+ sha256 = "13isxx16h7rg8q5a68qmgrf3rknhfrx1qh6fb5njlznfwhrqry3y";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/thrift";
license = lib.licenses.free;
@@ -93885,12 +99499,12 @@
melpaBuild {
pname = "tidal";
ename = "tidal";
- version = "20180410.1245";
+ version = "20190320.1458";
src = fetchFromGitHub {
owner = "tidalcycles";
repo = "Tidal";
- rev = "ef658d3df0604f3dec955a150509ec1cc68fbd98";
- sha256 = "1ild1gnbcrw830b8d3byvqlmgm27609dgailmxgin6z7g1pg4r7z";
+ rev = "a6eed4908c8b78f0c98b9cb8cd290814afd1252b";
+ sha256 = "1hwcc713vrx5ypcxsidwp25mvcg24bk8fqy7k04w7np4hhc6szql";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/16a26659a16199b5bb066be6e5c4a40419bda018/recipes/tidal";
@@ -93915,12 +99529,12 @@
melpaBuild {
pname = "tide";
ename = "tide";
- version = "20180713.30";
+ version = "20190321.911";
src = fetchFromGitHub {
owner = "ananthakumaran";
repo = "tide";
- rev = "4aaa1b3d3a978a76d773f2fbee6143eda9085f23";
- sha256 = "1vkgjy5gfiwqjnq5mbxbfh4c1f6kn2pbibki6hmq593wd4212lnn";
+ rev = "f1a3d411a3b9b7992d24f53e6afa02840a652780";
+ sha256 = "19m96firhn3rxjxxcn8d9sbbprhrmxg99lc5k665pdvdmdf1kbvx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a21e063011ebbb03ac70bdcf0a379f9e383bdfab/recipes/tide";
@@ -94049,12 +99663,12 @@
melpaBuild {
pname = "timesheet";
ename = "timesheet";
- version = "20160530.1445";
+ version = "20180801.1902";
src = fetchFromGitHub {
owner = "tmarble";
repo = "timesheet.el";
- rev = "2ed6fea9b508eb7eaff659d9a34a09ba064d4df8";
- sha256 = "028d1sn29idznzsc95w2c1sdz3rpmf3vgk2365li0vvs99s51hi2";
+ rev = "67ca6a9f6733052066b438301fb2dd81b8b3f6eb";
+ sha256 = "0rmh8lik27pmq95858jbjzgvf6rsfdnpynwcagj1fgkval5kzdbs";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/40009ef2f6845c83242ca5d0a8c9c2c1e4ef8a9d/recipes/timesheet";
@@ -94317,6 +99931,34 @@
license = lib.licenses.free;
};
}) {};
+ tmux-pane = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , names
+ , s }:
+ melpaBuild {
+ pname = "tmux-pane";
+ ename = "tmux-pane";
+ version = "20181210.410";
+ src = fetchFromGitHub {
+ owner = "laishulu";
+ repo = "emacs-tmux-pane";
+ rev = "5e83ec65a1d38af9b8a389bdf34a78d13437e63d";
+ sha256 = "1451d51ml36i1pgksjkd4x2y8zjf4in9q8m6gda3b25v57fnkg2i";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/8bc165e115a2c457e44ac2762cf6a9f07f1b99c4/recipes/tmux-pane";
+ sha256 = "0mv5y367i1wmk5kp8ms09xhrwvb4cwa08p39qy6mkakdhiby5m9q";
+ name = "recipe";
+ };
+ packageRequires = [ emacs names s ];
+ meta = {
+ homepage = "https://melpa.org/#/tmux-pane";
+ license = lib.licenses.free;
+ };
+ }) {};
toc-org = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -94324,12 +99966,12 @@
melpaBuild {
pname = "toc-org";
ename = "toc-org";
- version = "20180613.840";
+ version = "20181108.821";
src = fetchFromGitHub {
owner = "snosov1";
repo = "toc-org";
- rev = "e38e81af3f12633579c62f2ccf4bd0c8f18e2b88";
- sha256 = "13jdz0b4jqpb5idfxszlsapfk7h488773m3ipj1ayfapxmly92gm";
+ rev = "ebff38bfa4cc95476a20a349014e2d1862ff4647";
+ sha256 = "0ml075741iw9n4apiy9iv30wx4bgzpn6iisrzx3mxjl85kgmlmf2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1305d88eca984a66039444da1ea64f29f1950206/recipes/toc-org";
@@ -94646,6 +100288,32 @@
license = lib.licenses.free;
};
}) {};
+ torus = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "torus";
+ ename = "torus";
+ version = "20190325.53";
+ src = fetchFromGitHub {
+ owner = "chimay";
+ repo = "torus";
+ rev = "863886f10db77f3d1b16815d77561b6c81d88352";
+ sha256 = "1v1l51rdcnbkq4cb4ig6l1mymhwj7dxidyx4r9g7wzw00g3ncvwb";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/efc3b538861084cc13ff067a9258e55dc006b70d/recipes/torus";
+ sha256 = "0zjidnc7nwbxs90spp373hx92vksd72vz4avmi4dbmhi89rdfhh0";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/torus";
+ license = lib.licenses.free;
+ };
+ }) {};
total-lines = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -94775,7 +100443,8 @@
license = lib.licenses.free;
};
}) {};
- traad = callPackage ({ dash
+ traad = callPackage ({ bind-map
+ , dash
, deferred
, f
, fetchFromGitHub
@@ -94789,12 +100458,12 @@
melpaBuild {
pname = "traad";
ename = "traad";
- version = "20180720.512";
+ version = "20180729.1748";
src = fetchFromGitHub {
owner = "abingham";
repo = "emacs-traad";
- rev = "1a4bb39dc36ac79fe540923096411e75a6dcfdf4";
- sha256 = "0jj81p7v6qrqnlgyqdjygvzrid1phgrx5j4kfnsd3gy2k0i9k3vj";
+ rev = "98e23363b7e8a590a2f55976123a8c3da75c87a5";
+ sha256 = "121p80vsa3xff1anwy876gvlpm0jdbfm5vaxszds73wrv6gih8m3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2b3eb31c077fcaff94b74b757c1ce17650333943/recipes/traad";
@@ -94802,6 +100471,7 @@
name = "recipe";
};
packageRequires = [
+ bind-map
dash
deferred
f
@@ -94927,14 +100597,14 @@
ename = "transfer-sh";
version = "20180603.731";
src = fetchFromGitHub {
- owner = "Brillow";
+ owner = "SRoskamp";
repo = "transfer-sh.el";
rev = "55da85f963d347255a2b46568954923679331798";
sha256 = "0yv4i4ps379kz1q9qmjh4q3pk5ik77xw86faxmwpjx4yzp1wsz9v";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/b4f74dd06d4d5249beaf67b2befec4251c8c18ed/recipes/transfer-sh";
- sha256 = "1gii2avqg9mdmdj2r562s9382fcmw53w9zsvprpnkcyhxhgfy8sy";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/transfer-sh";
+ sha256 = "0xc6dkmayk935grmy8883l4cyv4zrq3fb77fj16knfj4yw8w6c9j";
name = "recipe";
};
packageRequires = [ async ];
@@ -94943,6 +100613,33 @@
license = lib.licenses.free;
};
}) {};
+ transient = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "transient";
+ ename = "transient";
+ version = "20190319.1228";
+ src = fetchFromGitHub {
+ owner = "magit";
+ repo = "transient";
+ rev = "9e30038d2d69e4ad0f3333777137af52e4771442";
+ sha256 = "0mp4sfnaznqy5klslgnma5aj7k07r1qka2qnr48qi4shgq3s23jy";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ee7bfefdf4423d63706a6dcf128886ca6b514e6b/recipes/transient";
+ sha256 = "04xkdspn475dlch5fcw21phhdhshxlbyznjbi0l7qk8snm130qpv";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/transient";
+ license = lib.licenses.free;
+ };
+ }) {};
transmission = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -94952,12 +100649,12 @@
melpaBuild {
pname = "transmission";
ename = "transmission";
- version = "20180610.1653";
+ version = "20190210.1846";
src = fetchFromGitHub {
owner = "holomorph";
repo = "transmission";
- rev = "7e8c3690bb54bd8c3ff89b89092ccaa94e116652";
- sha256 = "0wwnd2fc4b8ir58vxb69nw4rcyri2yhdpaphsgrs8dw9ziixpmvx";
+ rev = "7293beeb8a49cf6822abd16a9f4b9e4bef0a9296";
+ sha256 = "0pbmxl5654l1y213pq2h65dyrr78jlkybbdwz1dq52km98mpnf3r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9ed7e414687c0bd82b140a1bd8044084d094d18f/recipes/transmission";
@@ -95090,16 +100787,16 @@
melpaBuild {
pname = "treemacs";
ename = "treemacs";
- version = "20180722.503";
+ version = "20190405.748";
src = fetchFromGitHub {
owner = "Alexander-Miller";
repo = "treemacs";
- rev = "98d02cb1ca4742c6b3d7148c82109d4a0b0df27e";
- sha256 = "0kk36i7d6pddx97zxpa37mz1pa7kygbyrqzl73mmx4cbisk3c2gw";
+ rev = "32a241d0aaa5c713815a1a040eea52a5c2b01589";
+ sha256 = "0s6znv09y1ngca5hxw85niqhp5ddg9f0w88qjkp2ryva1q1wc0c3";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/91038c1ab2f463102263dcc3701c0fdaad55de4c/recipes/treemacs";
- sha256 = "1wcsn0kzrbawyyhxmsmrsxr1vp0llkxw6r7zx53pwyc82ia64nlv";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/37cca017cf529a0553ba73bcb824a945ec8b1137/recipes/treemacs";
+ sha256 = "0is4waygw902vkha4jwav0i05298zhf4d559m91gmsfg1cfrlrr3";
name = "recipe";
};
packageRequires = [ ace-window cl-lib dash emacs f ht hydra pfuture s ];
@@ -95117,16 +100814,16 @@
melpaBuild {
pname = "treemacs-evil";
ename = "treemacs-evil";
- version = "20180622.426";
+ version = "20190214.1221";
src = fetchFromGitHub {
owner = "Alexander-Miller";
repo = "treemacs";
- rev = "d0f874c90990400c02a8029d4efe815d3548ba5c";
- sha256 = "0hclgsv96gr50z9cqj97rp45c5r50q2zb6hq5jcx3xmlw12k9pk7";
+ rev = "de1ba5217ca4c41fc36d405832b749b6fffd2b82";
+ sha256 = "0wk280qs99py3s3lykm3pd3v3nbml1c9hkal29cx0475m12fc5lw";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/91038c1ab2f463102263dcc3701c0fdaad55de4c/recipes/treemacs-evil";
- sha256 = "1i2mxqwnqb2jz775qg3z4lf7pk4mgi646fyyi2la5gdcnq6a46mg";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/37cca017cf529a0553ba73bcb824a945ec8b1137/recipes/treemacs-evil";
+ sha256 = "144klr1gqqzfqy7fx9lzngc2vljy6mnz7awk0z5f8vfclczkihw2";
name = "recipe";
};
packageRequires = [ evil treemacs ];
@@ -95135,6 +100832,63 @@
license = lib.licenses.free;
};
}) {};
+ treemacs-icons-dired = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , treemacs }:
+ melpaBuild {
+ pname = "treemacs-icons-dired";
+ ename = "treemacs-icons-dired";
+ version = "20190327.858";
+ src = fetchFromGitHub {
+ owner = "Alexander-Miller";
+ repo = "treemacs";
+ rev = "abc387a6bfbf3654914624651a593eb1aba85ca9";
+ sha256 = "1mjx5c60h47kgszmpk96f5ymyh5any8ksbrxa3hcmz52s77lmd74";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/37cca017cf529a0553ba73bcb824a945ec8b1137/recipes/treemacs-icons-dired";
+ sha256 = "075897b11aaj9h59gbcldz2wd5557h86pq28qkijbgay4i3piv9v";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs treemacs ];
+ meta = {
+ homepage = "https://melpa.org/#/treemacs-icons-dired";
+ license = lib.licenses.free;
+ };
+ }) {};
+ treemacs-magit = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , magit
+ , melpaBuild
+ , pfuture
+ , treemacs }:
+ melpaBuild {
+ pname = "treemacs-magit";
+ ename = "treemacs-magit";
+ version = "20190327.2335";
+ src = fetchFromGitHub {
+ owner = "Alexander-Miller";
+ repo = "treemacs";
+ rev = "4e5f182eb11c5e4ee752de4972a92adab1320d29";
+ sha256 = "189gvc5v0ggy4xm81f0467al20qzbfb0gw2vg4l7y07bf3fzzvq8";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/1719c6bfc346e63f58221ea2c6e625b98f4ea368/recipes/treemacs-magit";
+ sha256 = "10c32rf76w26hhg1pyjlwj94adpjz1kic4hzapbckvcyzcwz6fql";
+ name = "recipe";
+ };
+ packageRequires = [ emacs magit pfuture treemacs ];
+ meta = {
+ homepage = "https://melpa.org/#/treemacs-magit";
+ license = lib.licenses.free;
+ };
+ }) {};
treemacs-projectile = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -95144,16 +100898,16 @@
melpaBuild {
pname = "treemacs-projectile";
ename = "treemacs-projectile";
- version = "20180614.1021";
+ version = "20190402.2237";
src = fetchFromGitHub {
owner = "Alexander-Miller";
repo = "treemacs";
- rev = "cbc75759fd54a772fcb67bd8babacf1b2020ba88";
- sha256 = "18aafgiircgb5max35zqzdfb0yjmgjqacax9sfy39ihh9x9z0vc1";
+ rev = "2392ac22caa196ed6850f0accf9d7cd24b11375d";
+ sha256 = "0d1k9nmvycbw46b4fjsj15srnmdahfklrh3c6r6sr95ngwl17dic";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/91038c1ab2f463102263dcc3701c0fdaad55de4c/recipes/treemacs-projectile";
- sha256 = "1vyifik30673bwlfvbmw8pzz7f3wd4q6zzssvbj8d23zhk8kh8vc";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/37cca017cf529a0553ba73bcb824a945ec8b1137/recipes/treemacs-projectile";
+ sha256 = "1lldvpasvgsd5xvnlafddqp47w7rdvf3vqfhr26rxn99kj5s9xzp";
name = "recipe";
};
packageRequires = [ projectile treemacs ];
@@ -95170,12 +100924,12 @@
melpaBuild {
pname = "treepy";
ename = "treepy";
- version = "20180722.538";
+ version = "20180723.2356";
src = fetchFromGitHub {
owner = "volrath";
repo = "treepy.el";
- rev = "ae972c73dbf56452a4fe5dca635a75c502a78a15";
- sha256 = "1r3410v4y4zc6xdpf6z0947ivbw055zy1pcplr4215nr5346m6nc";
+ rev = "b40e6b09eb9be45da67b8c9e4990a5a0d7a2a09d";
+ sha256 = "04zwm6gx9pxfvgfkizx6pvb1ql8pqxjyzqp8flz0432x0gq5nlxk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/63c94a703841f8c11948200d86d98145bc62162c/recipes/treepy";
@@ -95199,12 +100953,12 @@
melpaBuild {
pname = "trident-mode";
ename = "trident-mode";
- version = "20130726.1207";
+ version = "20190329.433";
src = fetchFromGitHub {
owner = "johnmastro";
repo = "trident-mode.el";
- rev = "ad3201f47e114de35df189c3d80f0fdea9507ea9";
- sha256 = "08484fhc69rk16g52f9bzc1kzpif61ddfchxjbj1qqqammbx11ym";
+ rev = "a128f766e1138e6e04146312b7c8ebbad0dae131";
+ sha256 = "141gvvwzql7pnv0d161cj2hpvpkav27lp1gdk1ilf45b3fqqqa87";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/trident-mode";
@@ -95217,6 +100971,32 @@
license = lib.licenses.free;
};
}) {};
+ trinary = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "trinary";
+ ename = "trinary";
+ version = "20180904.1613";
+ src = fetchFromGitHub {
+ owner = "emacs-elsa";
+ repo = "trinary-logic";
+ rev = "886232c6d7e92a8e9fe573eef46754ebe321f90d";
+ sha256 = "10h6p2dwl2k2p35pi3n8y85qh5y0zrr9nhfr4sviwzj1nbqdrvdr";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/48fff02dde8a678e151f2765ea7c3a383912c68b/recipes/trinary";
+ sha256 = "1k2jpay1wx2m54fpja9mrhqyk15ikml8xf15irh8yrxb3hah8f8k";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/trinary";
+ license = lib.licenses.free;
+ };
+ }) {};
trr = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -95276,12 +101056,12 @@
melpaBuild {
pname = "try";
ename = "try";
- version = "20170226.805";
+ version = "20181203.1836";
src = fetchFromGitHub {
owner = "larstvei";
repo = "Try";
- rev = "271b0a362cadf44d0694628b9e213f54516ef913";
- sha256 = "1fvpi02c6awyrwg2yqjapvcv4132qvmvd9bkbwpjmndxpicsann3";
+ rev = "8831ded1784df43a2bd56c25ad3d0650cdb9df1d";
+ sha256 = "0y26ybdsljph49w2834wssxgdx8ij7b6v4gp8jpgnbx118gr4jsz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/13c0ed40ad02fa0893cbf4dd9617dccb624f064b/recipes/try";
@@ -95301,16 +101081,16 @@
melpaBuild {
pname = "ts-comint";
ename = "ts-comint";
- version = "20171105.2247";
+ version = "20181218.2319";
src = fetchFromGitHub {
- owner = "josteink";
+ owner = "emacs-typescript";
repo = "ts-comint";
- rev = "8817dc7b3a6eb78c3cad42e5677c2113274a1963";
- sha256 = "17cw9710ib80d626vv6bx6vdjdin78h6pja1lsr4r6mz8c5ihwxj";
+ rev = "b280cfe9fe5ecec9d5970043b6b2866f644b39ad";
+ sha256 = "15lf20w3diixcbpsw3vdqlpnpjp3v1spgxkiymq05q1mcy30n39n";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/84e7004395083b66fce7ff4676af818bc798058a/recipes/ts-comint";
- sha256 = "18swvzkzcwn0wks58flsjpn9dddzcznij67xifyz6009l4fgdrzd";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4a1c08c22704ac689235b8d5cc36cc437ba7356a/recipes/ts-comint";
+ sha256 = "0cmh8ww6myiaz42867d0dqfi64lxrbna1lcwl6x6rmdgf15k6c1m";
name = "recipe";
};
packageRequires = [];
@@ -95398,6 +101178,7 @@
};
}) {};
tuareg = callPackage ({ caml
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -95405,19 +101186,19 @@
melpaBuild {
pname = "tuareg";
ename = "tuareg";
- version = "20180512.1306";
+ version = "20190407.807";
src = fetchFromGitHub {
owner = "ocaml";
repo = "tuareg";
- rev = "faa976ac930d3fba42ec59881046929c90ffa8f3";
- sha256 = "1f29bwivmdd6k7wblmrlwf7q43kdkrdadf5r3mk372p04d7c2nrx";
+ rev = "9157f25980dede0599c6f9a42cc492081752f515";
+ sha256 = "0lvjh3a1sl1y29hsfh8dm7hjf25q0mmagdiv8bm07a680wgfii9x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/01fb6435a1dfeebdf4e7fa3f4f5928bc75526809/recipes/tuareg";
sha256 = "0wx723dmjlpm86xdabl9n8p22zbbxpapyfn6ifz0b0pvhh49ip7q";
name = "recipe";
};
- packageRequires = [ caml ];
+ packageRequires = [ caml emacs ];
meta = {
homepage = "https://melpa.org/#/tuareg";
license = lib.licenses.free;
@@ -95513,14 +101294,14 @@
ename = "turing-machine";
version = "20180221.2038";
src = fetchFromGitHub {
- owner = "therockmandolinist";
+ owner = "dieggsy";
repo = "turing-machine";
rev = "ad1dccc9c445f9e4465e1c67cbbfea9583153047";
sha256 = "0qaz4r5ahg2fxsfyxilb8c9956i5ra9vg80l82slm8vrnsinzll6";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/a003b40a52a92b3ab4d1ffc003f570d4fa6bfbde/recipes/turing-machine";
- sha256 = "1ndy953q9hr1psqqkkqsffyvj800cnqdxcrixqiw0ls77f2kczcn";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/turing-machine";
+ sha256 = "0q9a31m5wnz9j9l4i8czdl7z12nrcdjw72w8sqvf94ri2g5dbpkq";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -95688,12 +101469,12 @@
melpaBuild {
pname = "twittering-mode";
ename = "twittering-mode";
- version = "20180507.721";
+ version = "20181121.602";
src = fetchFromGitHub {
owner = "hayamiz";
repo = "twittering-mode";
- rev = "6d10d1765a7b4de4c723395c8a2200a1649beeb0";
- sha256 = "0pzj1yslggha5hh98ah634s03p7185wppzxfx53xws0mid6wsf85";
+ rev = "114891e8fdb4f06b1326a6cf795e49c205cf9e29";
+ sha256 = "1w1p5pg3ambixhc5l7490wf5qasw3xv9qg6f0xhfsnqk44fp70ia";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/twittering-mode";
@@ -95706,53 +101487,27 @@
license = lib.licenses.free;
};
}) {};
- typed-clojure-mode = callPackage ({ cider
- , clojure-mode
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "typed-clojure-mode";
- ename = "typed-clojure-mode";
- version = "20151003.1122";
- src = fetchFromGitHub {
- owner = "typedclojure";
- repo = "typed-clojure-mode";
- rev = "3abd53d8cc1ad77ffe76e02849d0ab7731fd8364";
- sha256 = "1i826xq77nh4s7qlj63r2iznbn319l1l3fzpbjb2nj0m00bwvxl6";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/961471c194b508a5025f00a5be02d316b26f330a/recipes/typed-clojure-mode";
- sha256 = "1579zkhk2lwl5ij7dm9n2drggs5fmhpljrshc4ghhvig7nlyqjy3";
- name = "recipe";
- };
- packageRequires = [ cider clojure-mode ];
- meta = {
- homepage = "https://melpa.org/#/typed-clojure-mode";
- license = lib.licenses.free;
- };
- }) {};
- typescript-mode = callPackage ({ fetchFromGitHub
+ typescript-mode = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "typescript-mode";
ename = "typescript-mode";
- version = "20180708.1003";
+ version = "20181221.105";
src = fetchFromGitHub {
- owner = "ananthakumaran";
+ owner = "emacs-typescript";
repo = "typescript.el";
- rev = "f9cd0dd539d5d23f2b466de0cf20f9b0aef07258";
- sha256 = "1f6j2xyws9ksv192si4hznyhglhqgk7v1i31wm2kf7m007yw2ibi";
+ rev = "e608305ade7145df5637b22bbd2a1d190aaff048";
+ sha256 = "11cj1gis2mirz8kfljgam5dzd9c0wqzsb0jkxc9xrz48akpyikqx";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d3f534a1e2cee4ad2e32e32802c5080207417b3d/recipes/typescript-mode";
- sha256 = "01jyqy44ir59n9c2f6gh4xzwfmzdpnys1lw4lnsy6kirqgbsq9ha";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/94455323364d5a6b00e2786d577134eb350826b4/recipes/typescript-mode";
+ sha256 = "1abnik2dq0zfnp8pk8x6zy962qww78xadm87xyiwz17559g88d82";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/typescript-mode";
license = lib.licenses.free;
@@ -95765,12 +101520,12 @@
melpaBuild {
pname = "typing";
ename = "typing";
- version = "20171115.2331";
+ version = "20180830.1503";
src = fetchFromGitHub {
owner = "kensanata";
repo = "typing";
- rev = "1ada06484695b8959f4a7c41cacf7f78c2aad998";
- sha256 = "0mh1y960zd7878j7nhrjijck6jxxqnbmxr579s095k7yk2ynpkkg";
+ rev = "a2ef25dde2d8eb91bd9c0c6164cb5208208647fa";
+ sha256 = "1dbh0srbf54lgd60ia79y9cfnq3kxlgw01qzdjs9mk3nfazzpgnv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e6e75695594ce17b618ad8786c8a04e283f68b11/recipes/typing";
@@ -95818,12 +101573,12 @@
melpaBuild {
pname = "typit";
ename = "typit";
- version = "20180317.107";
+ version = "20181231.2302";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "typit";
- rev = "4fe50d616fc60e77eb9b5a824c0a1ca4010b0746";
- sha256 = "0j5s86s9wb33fqw415mmkysdasyj3vdx9l8l6ca6f89ps6znr636";
+ rev = "819a65ef22ec7a03c109aa7e8169e6ba174b17a1";
+ sha256 = "0gvlb3vra01m8gbl0qqsy9lbkrmzfs8q33n626fny5hz23pba7l6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d17d019155e19c156f123dcd702f18cfba488701/recipes/typit";
@@ -96120,6 +101875,32 @@
license = lib.licenses.free;
};
}) {};
+ undo-propose = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "undo-propose";
+ ename = "undo-propose";
+ version = "20190322.917";
+ src = fetchFromGitHub {
+ owner = "jackkamm";
+ repo = "undo-propose-el";
+ rev = "036e66c1ac4b0358b34727d2c9b65853347dad89";
+ sha256 = "1ah2x0fwf2ybz3i4cjs19fmx7aq1xfgnh4x623qy12v7ab4pvd3m";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/308eec15ebfd301b34f0d9f019250c9089c4d6e2/recipes/undo-propose";
+ sha256 = "0r0xswj9n24ghw44l1m1izapjqrfvcw8qn3qp61s2ly0i7la185j";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/undo-propose";
+ license = lib.licenses.free;
+ };
+ }) {};
undohist = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -96272,12 +102053,12 @@
melpaBuild {
pname = "unicode-fonts";
ename = "unicode-fonts";
- version = "20150826.1532";
+ version = "20181001.809";
src = fetchFromGitHub {
owner = "rolandwalker";
repo = "unicode-fonts";
- rev = "a36597d83e0248bd0e6b2c1d5fb95bff72add527";
- sha256 = "0fbwncna6gxlynq9196djpkjhayzk8kxlsxg0gasdgqx1nyxl0mk";
+ rev = "7b88ae84e589f6c8b9386b2fb5a02ff4ccb91169";
+ sha256 = "07wzcfj92jiadgd6nj5rmxky2aiaxs89j7zywp877xdp4vv0v512";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/83459421dd2eb3d60ec668c3d5bb38d99ee64aff/recipes/unicode-fonts";
@@ -96320,6 +102101,32 @@
license = lib.licenses.free;
};
}) {};
+ unicode-math-input = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "unicode-math-input";
+ ename = "unicode-math-input";
+ version = "20181230.423";
+ src = fetchFromGitHub {
+ owner = "astoff";
+ repo = "unicode-math-input.el";
+ rev = "6ad698bf4a8c64dd969ac58cf09ee66783cfcdce";
+ sha256 = "0g72zh4a8mimmsiq53k0y9w4xmfhvdymksxdrkiygc3vji2jv6na";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e0d39bc129500e55b99c11b3d27e042619777414/recipes/unicode-math-input";
+ sha256 = "1hra3vf6nzh99piagbxsmp0sizvki2jl7qkfmlwd5nwmicw0ykrq";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/unicode-math-input";
+ license = lib.licenses.free;
+ };
+ }) {};
unicode-progress-reporter = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -96357,12 +102164,12 @@
melpaBuild {
pname = "unicode-troll-stopper";
ename = "unicode-troll-stopper";
- version = "20151023.1831";
+ version = "20190208.2011";
src = fetchFromGitHub {
owner = "camsaul";
repo = "emacs-unicode-troll-stopper";
- rev = "7d1331b17b29db56fbdaecec39e5fcac5b92e46f";
- sha256 = "1zpqm309x73af2i6qch7qqwr1ibnkz0r0jyvw6py4imnank9hg83";
+ rev = "5e8be35a7bf6382384a701663f7438ee27e4b67c";
+ sha256 = "0xjh017kjhj93j72r5hdpiabv76szlmpivlfyhg9vzysdmix45qv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b463925a98b7dde78d85693c7681fd2346d90895/recipes/unicode-troll-stopper";
@@ -96539,12 +102346,12 @@
melpaBuild {
pname = "universal-emotions-emoticons";
ename = "universal-emotions-emoticons";
- version = "20171209.1820";
+ version = "20180729.1241";
src = fetchFromGitHub {
owner = "grettke";
repo = "universal-emotions-emoticons";
- rev = "9f249b39172bf9b8e148856ad941eee485161215";
- sha256 = "1qn757pn1hcfik05i458bic32dm812xznsfz5vgxn2v8wxihjlf8";
+ rev = "9cedd09ee65cb9fa71f27b0ab46a8353bdc00902";
+ sha256 = "17blqfnf384l2hd2igrw5p0zblw6bxz69vvzli22nr84kpkh5jx4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/57f913112c98db2248cf69e44deb69fd09cee042/recipes/universal-emotions-emoticons";
@@ -96557,26 +102364,27 @@
license = lib.licenses.free;
};
}) {};
- unkillable-scratch = callPackage ({ fetchFromGitHub
+ unkillable-scratch = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "unkillable-scratch";
ename = "unkillable-scratch";
- version = "20160504.1903";
+ version = "20190308.1617";
src = fetchFromGitHub {
owner = "EricCrosson";
repo = "unkillable-scratch";
- rev = "0e1d9e1574e497171a7ccfbcb8c994cb9c5880da";
- sha256 = "0bhdqpxq6cly4b6v4ya1ksw0yfdb9g2f2ifbjn4gfcq6j4zszbdm";
+ rev = "a484c27516f2ee20e239713a95bd7de4f35f8501";
+ sha256 = "06pslqk97q858a3y6z7rgmc16nzqlkaj9phrqmxkq354lkllndlx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/822ac5610f333e41b676a29ef45a6f8bfea3162e/recipes/unkillable-scratch";
sha256 = "0ghbpa9pf7k6vd2mjxkpqg2qfl4sd40ir6mrk1rxr1rv8s0afkf7";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/unkillable-scratch";
license = lib.licenses.free;
@@ -96645,12 +102453,12 @@
melpaBuild {
pname = "uptimes";
ename = "uptimes";
- version = "20180416.623";
+ version = "20190328.156";
src = fetchFromGitHub {
owner = "davep";
repo = "uptimes.el";
- rev = "5e81f8bb419836602819045e7d5a74b76ad3e69c";
- sha256 = "04l452k249s3ilfj0da0k7rrfyjnxxdsipa2al46xqjds8l3h2rn";
+ rev = "1f726d31b502d764a3e3191aaf92ed4855105131";
+ sha256 = "1ymv5fh0bfjzkkd8vc9f1n8921bx1czbb29s0rw6zy37vkhs6v3s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/72099e35ce3e34ec6afc6a3f87a4da07ec91499a/recipes/uptimes";
@@ -96713,6 +102521,32 @@
license = lib.licenses.free;
};
}) {};
+ urscript-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "urscript-mode";
+ ename = "urscript-mode";
+ version = "20190219.804";
+ src = fetchFromGitHub {
+ owner = "guidoschmidt";
+ repo = "urscript-mode";
+ rev = "b341f96b129ead8fb74d680cb4f546985bf110a9";
+ sha256 = "0qhncqsvsrpgc47ixsp436imfm0l6pd1kbpjjk426wrnzaszrpkc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b4ae680b51a85749ed254215bbd4a35909961049/recipes/urscript-mode";
+ sha256 = "1jjmpg9r7vwa8284chx9yc1ifn36m7ml1ks4ls8hnsxachbv7wlh";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/urscript-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
usage-memo = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -96747,12 +102581,12 @@
melpaBuild {
pname = "use-package";
ename = "use-package";
- version = "20180715.1101";
+ version = "20190405.1347";
src = fetchFromGitHub {
owner = "jwiegley";
repo = "use-package";
- rev = "3fb8f39f5901a4c0ef7887283e56e60b541675ea";
- sha256 = "0am5kh073x52lrh1225m5wl4r18wffznlvhrrmm1wbya6n406q9h";
+ rev = "0ee88b5cac41acf974c4bedb8859931ead8bfc79";
+ sha256 = "0gv976iajc0qf9pbqyljc9mdnyirf353d3w6h38khwqmqv11p6br";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/51a19a251c879a566d4ae451d94fcb35e38a478b/recipes/use-package";
@@ -96776,12 +102610,12 @@
melpaBuild {
pname = "use-package-chords";
ename = "use-package-chords";
- version = "20180703.1258";
+ version = "20181024.1622";
src = fetchFromGitHub {
owner = "jwiegley";
repo = "use-package";
- rev = "4f0f5856798b8575d3d466fce2a3aed0ebf1acf1";
- sha256 = "1j1wgyhb0lvj0znkq56q5vv3irfgb6w3mwpcrvxq0b0wkwr121gz";
+ rev = "763bf5337dab14b318a3ddce29140de1ed8fb35b";
+ sha256 = "08v4rsl3x5dj7ihpnzbyxjbg2ls2kybcsb0rcxjh5anj4hmcsyly";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6240afa625290187785e4b7535ee7b0d7aad8969/recipes/use-package-chords";
@@ -96794,7 +102628,7 @@
license = lib.licenses.free;
};
}) {};
- use-package-el-get = callPackage ({ fetchFromGitHub
+ use-package-el-get = callPackage ({ fetchFromGitLab
, fetchurl
, lib
, melpaBuild
@@ -96803,15 +102637,15 @@
pname = "use-package-el-get";
ename = "use-package-el-get";
version = "20180130.2105";
- src = fetchFromGitHub {
+ src = fetchFromGitLab {
owner = "edvorg";
repo = "use-package-el-get";
rev = "f33c448ed43ecb003b60ff601ee7ef9b08cff947";
sha256 = "1wzn3h8k7aydj3hxxws64b0v4cr3b77cf7z128xh3v6xz2w62m4z";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ee4a96cf467bcab171a0adfd4ef754abec1a9971/recipes/use-package-el-get";
- sha256 = "0sg9ijkjax6w25p0q7rw5rjn8r2i83z5jfzjkvy8pxil5cg8zyh0";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aca60522257353fbfd9d032f8c3cae7914d6bd36/recipes/use-package-el-get";
+ sha256 = "143vydssjxmkcgs661hz6nhg310r8qypn2a4vyxy5sb31wqcclzg";
name = "recipe";
};
packageRequires = [ use-package ];
@@ -96829,12 +102663,12 @@
melpaBuild {
pname = "use-package-ensure-system-package";
ename = "use-package-ensure-system-package";
- version = "20180710.29";
+ version = "20180913.801";
src = fetchFromGitHub {
owner = "jwiegley";
repo = "use-package";
- rev = "cfce01be52162d2eb4526bbb9b3bf721cca74202";
- sha256 = "0wlyl0zya165kbf5f8swnkkbqnzxwggyc597xz0wy5wmiyr55v4l";
+ rev = "2b89ca4b9102baaf3f84f3fc8177c8a17288e291";
+ sha256 = "18xpjqvnrk72jybbd5xipnsbngkj38hqd9vfq0kb42fhiv1v5b92";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6240afa625290187785e4b7535ee7b0d7aad8969/recipes/use-package-ensure-system-package";
@@ -96847,6 +102681,33 @@
license = lib.licenses.free;
};
}) {};
+ use-package-hydra = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild
+ , use-package }:
+ melpaBuild {
+ pname = "use-package-hydra";
+ ename = "use-package-hydra";
+ version = "20181227.2345";
+ src = fetchFromGitLab {
+ owner = "to1ne";
+ repo = "use-package-hydra";
+ rev = "8cd55a1128fbdf6327bb38a199d206225896d146";
+ sha256 = "19dja25illcvwpx8j1kigw8dzby41bm57prx1bhaxkmsakxyl863";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/28589bb76442601930a4591e200c8e1db119caf6/recipes/use-package-hydra";
+ sha256 = "0q2qfav2y1p6vxfvdblqlpjmj0z7z8w843jpry9g07d8kc4959f6";
+ name = "recipe";
+ };
+ packageRequires = [ emacs use-package ];
+ meta = {
+ homepage = "https://melpa.org/#/use-package-hydra";
+ license = lib.licenses.free;
+ };
+ }) {};
use-ttf = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -96856,12 +102717,12 @@
melpaBuild {
pname = "use-ttf";
ename = "use-ttf";
- version = "20180608.2252";
+ version = "20181206.902";
src = fetchFromGitHub {
owner = "jcs090218";
repo = "use-ttf";
- rev = "be1599e10ae5c095cd263a1d9be3e8270f770f55";
- sha256 = "141gpnpj4gia7wyn60v24r0ysr0m2cx0p3sdh956hsk6bh29l78h";
+ rev = "569b5df758bb85b69a98b3bed108b0735179eed9";
+ sha256 = "0ama7qqi32vp5mgsdbz6vixp6h5jhkq1m82jqrrgddcd5ih8zan1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8af853b2db58300ba1685e3547a9f96c05b04df6/recipes/use-ttf";
@@ -96908,12 +102769,12 @@
melpaBuild {
pname = "utop";
ename = "utop";
- version = "20180706.1549";
+ version = "20181010.1455";
src = fetchFromGitHub {
owner = "diml";
repo = "utop";
- rev = "48100fcf769bdaeb4a6c93bbb33c37b85c1dcb10";
- sha256 = "1cr1i5ywn9abqbrl4iq1c82vdjwrbh43v67zv1a8i4fvh99yzlv1";
+ rev = "ea38850e606dd18c94e2ccabc28485fec1c8f91f";
+ sha256 = "0g7mj1qag9d7mn58l3lh7as0w4bj7rq3r6d3mykafgyjaajsxnx0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/30489fe52b4031184e54f994770aa3291257bc9d/recipes/utop";
@@ -97037,12 +102898,12 @@
melpaBuild {
pname = "vagrant-tramp";
ename = "vagrant-tramp";
- version = "20160427.1632";
+ version = "20190125.1059";
src = fetchFromGitHub {
owner = "dougm";
repo = "vagrant-tramp";
- rev = "453ba605b28d2964bb4e10074f1e6891ebb4d2d6";
- sha256 = "138gw90wa2qyzyicig3cwhpb1xc5bh9g0vb87y91afjlykhzr6a5";
+ rev = "77256deca35bb797cbba499837f3658d1a17d2e3";
+ sha256 = "0j7ff9b3ic4a6kzn7k0c52knlgangql7sjsxahwvym6w18r52d5a";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/baea9f16e245aec3f62e55471358c7208f61372d/recipes/vagrant-tramp";
@@ -97235,6 +103096,32 @@
license = lib.licenses.free;
};
}) {};
+ vc-hgcmd = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "vc-hgcmd";
+ ename = "vc-hgcmd";
+ version = "20190404.1202";
+ src = fetchFromGitHub {
+ owner = "muffinmad";
+ repo = "emacs-vc-hgcmd";
+ rev = "6379ef242cc2ac8366a6e6f1c588245577c76a3a";
+ sha256 = "1zvggg9kpl6d2wrsjlrnjmb0dhmwmd9x6q2yj3g08bv6gsz3nfil";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/111142342ab81dcaa88a831ba620be499a334c3f/recipes/vc-hgcmd";
+ sha256 = "11p8r94s72x47nkxlarxwy33im167jpjas8b9i8dkrz2iggwn5xk";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/vc-hgcmd";
+ license = lib.licenses.free;
+ };
+ }) {};
vc-msg = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -97269,12 +103156,12 @@
melpaBuild {
pname = "vc-osc";
ename = "vc-osc";
- version = "20161119.1155";
+ version = "20190402.1649";
src = fetchFromGitHub {
owner = "aspiers";
repo = "vc-osc";
- rev = "8c09a0d5f69237285101554261b77d76b546a24b";
- sha256 = "153zwhljkjl0dajd1l6p5icva0bnpa2rj8byjblb3xv8rq7p1fzc";
+ rev = "bf5a515ed85f7d7cdfe66ed5bf4ef7554f8561e5";
+ sha256 = "1jk09vspns327j9mfy32dd71n3nfynn17h2njc4sczrgd4yzc2wd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/70a1fa5fdfdfa9ec5607524be62eb44fe82e91b0/recipes/vc-osc";
@@ -97287,31 +103174,6 @@
license = lib.licenses.free;
};
}) {};
- vcl-mode = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "vcl-mode";
- ename = "vcl-mode";
- version = "20170119.1251";
- src = fetchFromGitHub {
- owner = "ssm";
- repo = "vcl-mode";
- rev = "3d86c1352a7370d558d25f4c8f7be744e7d27332";
- sha256 = "1zp59p8pw65qy7s9y17a52y1pm35hajdfn3p1kfm1y3vmfxf9x3a";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/bcbe3892fd20e624117de534ca92ba3fba1669a1/recipes/vcl-mode";
- sha256 = "1h0a1briinp9ka7ga3ipdhyf7yfinwvf7babv36myi720900wcq5";
- name = "recipe";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/vcl-mode";
- license = lib.licenses.free;
- };
- }) {};
vcomp = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -97319,12 +103181,12 @@
melpaBuild {
pname = "vcomp";
ename = "vcomp";
- version = "20140906.1508";
+ version = "20190127.1620";
src = fetchFromGitHub {
owner = "tarsius";
repo = "vcomp";
- rev = "092ef48a78e950c0576269d889be6caf9f6e61c5";
- sha256 = "0fzz26c1pdaz3i58ndhzd2520mhny487daqs21yajxi9x2m00zrl";
+ rev = "f839b3b3257a564b19d7f9557dc8bcbbe0b95842";
+ sha256 = "1xd42bdi6x89gc9xjrwvzzdaanv9vwlbbjwp25bs1nsd53k5nvak";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/561442ea9f75ebe8444db1a0c40f7756fcbca482/recipes/vcomp";
@@ -97346,12 +103208,12 @@
melpaBuild {
pname = "vdiff";
ename = "vdiff";
- version = "20180719.1327";
+ version = "20190226.1903";
src = fetchFromGitHub {
owner = "justbur";
repo = "emacs-vdiff";
- rev = "40ffc92c566b55264f48167a02c17518743870b4";
- sha256 = "0r17cw58yabrkjrqis5bz7ikr1lgczpzd7zz895fzqrg4n901bj5";
+ rev = "a1a82dec623a241b0e9ed19fd65da6e7073d59ac";
+ sha256 = "15b33ksy7m1128zz8d300z5b6hx2d9hhrfyb2h67rggaq7qh82za";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e90f19c8fa4b0d267d269b76f117995e812e899c/recipes/vdiff";
@@ -97370,23 +103232,24 @@
, lib
, magit
, melpaBuild
+ , transient
, vdiff }:
melpaBuild {
pname = "vdiff-magit";
ename = "vdiff-magit";
- version = "20180719.1401";
+ version = "20190304.907";
src = fetchFromGitHub {
owner = "justbur";
repo = "emacs-vdiff-magit";
- rev = "73912622680ce761779158526e993933a2dbcb9e";
- sha256 = "1vcqfi94xs0ri5zv5h1pw8i0jy1gbx8811i2fshw70f1rmlzmaid";
+ rev = "b100d126c69e5c26a61ae05aa1778bcc4302b597";
+ sha256 = "16cjmrzflf2i1w01973sl944xrfanakba8sb4dpwi79d92xp03xy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2159275fabde8ec8b297f6635546b1314d519b8b/recipes/vdiff-magit";
sha256 = "1vjc1r5xfdg9bmscgppx1fps1w5bd0zpp6ab5z5dxlg2zx2vdldw";
name = "recipe";
};
- packageRequires = [ emacs magit vdiff ];
+ packageRequires = [ emacs magit transient vdiff ];
meta = {
homepage = "https://melpa.org/#/vdiff-magit";
license = lib.licenses.free;
@@ -97403,12 +103266,12 @@
melpaBuild {
pname = "vdirel";
ename = "vdirel";
- version = "20170605.43";
+ version = "20181001.435";
src = fetchFromGitHub {
owner = "DamienCassou";
repo = "vdirel";
- rev = "a1e6ea3ed5faaf70667c62bc5591dc810331cb1a";
- sha256 = "1z8q3akm0hq7z7nqclra1wv7a6m0cbskhnd3ca4v9wf9dajiwnsb";
+ rev = "dfe5f9478405b8292f85fc911db92e81b627626a";
+ sha256 = "1m1k5sfmvi3hw8l4qd4sfhi9h8wk9jd4psb62m4bjf5gbk5ld1pw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/72b5ea3f4444c3de73d986a28e1d12bf47c40246/recipes/vdirel";
@@ -97421,6 +103284,86 @@
license = lib.licenses.free;
};
}) {};
+ vdm-comint = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , vdm-mode }:
+ melpaBuild {
+ pname = "vdm-comint";
+ ename = "vdm-comint";
+ version = "20181127.1223";
+ src = fetchFromGitHub {
+ owner = "peterwvj";
+ repo = "vdm-mode";
+ rev = "e131edb0d35de28bd47d6128dd70d9a6fc46e0fa";
+ sha256 = "090a0imk7dr6vqq4lf806pvajqc499x2gmi0k7rgc1696rbyzhb5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/077f586e59fe3b6085e1f19b3c18b218de5d4046/recipes/vdm-comint";
+ sha256 = "1r7jg7dkzfs4n230n0jk23w0ncqsiwkslf2gmjfzfqg8qklr9bhs";
+ name = "recipe";
+ };
+ packageRequires = [ emacs vdm-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/vdm-comint";
+ license = lib.licenses.free;
+ };
+ }) {};
+ vdm-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "vdm-mode";
+ ename = "vdm-mode";
+ version = "20190328.708";
+ src = fetchFromGitHub {
+ owner = "peterwvj";
+ repo = "vdm-mode";
+ rev = "89e7db6ee1a89b8c1f7ce36ce6800c32b5c4ba2d";
+ sha256 = "1vfqkfw39yg7379s6b28n8nyswv1jq7caljfbnyrndsag6z4j50k";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/70a6c89d41235f7e8463a47400004a32b2979a5a/recipes/vdm-mode";
+ sha256 = "1h72731vcsjqsbii1wbzpa114x09aqbkbnz5fg9fnjq9rybz6rn7";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/vdm-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
+ vdm-snippets = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , yasnippet }:
+ melpaBuild {
+ pname = "vdm-snippets";
+ ename = "vdm-snippets";
+ version = "20190313.422";
+ src = fetchFromGitHub {
+ owner = "peterwvj";
+ repo = "vdm-mode";
+ rev = "dc1756dd151752b3f538d68326059f8861e4ac66";
+ sha256 = "02pkiz700g86n7fs1rygp6im0rhx6x8ag7fjc8sci02igf74hb30";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f246b9dcf7915a845b9e2cd44cc1a0833b412c8f/recipes/vdm-snippets";
+ sha256 = "1js1hjs2r9bbqm50bl389y87xn68f30xrh2z6nd5kz2hdgkm6lhj";
+ name = "recipe";
+ };
+ packageRequires = [ emacs yasnippet ];
+ meta = {
+ homepage = "https://melpa.org/#/vdm-snippets";
+ license = lib.licenses.free;
+ };
+ }) {};
vector-utils = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -97446,6 +103389,34 @@
license = lib.licenses.free;
};
}) {};
+ veri-kompass = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org }:
+ melpaBuild {
+ pname = "veri-kompass";
+ ename = "veri-kompass";
+ version = "20181110.133";
+ src = fetchFromGitLab {
+ owner = "koral";
+ repo = "veri-kompass";
+ rev = "72aa690da9a349601c9befe454d456d46b17fee6";
+ sha256 = "0da47w45a1q04srsc0kgjp4lacgaa6abf2b11qjgckm3drahifgg";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/18c3a69bec780e3e7456b310db6f0eec2a35c753/recipes/veri-kompass";
+ sha256 = "103x4003qj0z9ki6xz4hymamyhipzfxz94x4gszk3k2qnvkjkxnj";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs org ];
+ meta = {
+ homepage = "https://melpa.org/#/veri-kompass";
+ license = lib.licenses.free;
+ };
+ }) {};
verify-url = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -97506,12 +103477,12 @@
melpaBuild {
pname = "vertica-snippets";
ename = "vertica-snippets";
- version = "20180208.154";
+ version = "20190403.256";
src = fetchFromGitHub {
owner = "baron42bba";
repo = "vertica-snippets";
- rev = "5959d86c77d4b8f67383f65f7f6ca3e0db2a9529";
- sha256 = "0hmvd2kly7k51qfhkg6rzcq0a5ksskr1r0x07i0imz0idm77g29z";
+ rev = "b7a2e9660762a213fa001355e67ca671d9496339";
+ sha256 = "0n5f5zgg7yvy6f5l746vi7z4y9gmjk7m9bdk68xhfz8pgyjaji3s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d3c8cb5c0fdbb6820a08091d8936dd53a3c43c56/recipes/vertica-snippets";
@@ -97532,12 +103503,12 @@
melpaBuild {
pname = "vertigo";
ename = "vertigo";
- version = "20180408.920";
+ version = "20180829.1530";
src = fetchFromGitHub {
owner = "noctuid";
repo = "vertigo.el";
- rev = "117450dfad5d5ad45d40995cdf9a626cf9c2b136";
- sha256 = "1bxf2kzdj4xmy6wmajwvn40msp2q4szp25ylah49biw92dwi2bzw";
+ rev = "6303d17270ea92290a6960890bca515274f1682b";
+ sha256 = "0570x63l1j75issnq23hrhhpisv2jm18fn5mspsvbs4xy2hy4h8i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f1957e7fa03b6b8eb2f3250bd814d707bce3cfa3/recipes/vertigo";
@@ -97580,25 +103551,26 @@
, fetchurl
, ggtags
, helm
+ , helm-rg
, lib
, melpaBuild
, outshine }:
melpaBuild {
pname = "vhdl-tools";
ename = "vhdl-tools";
- version = "20180610.958";
+ version = "20190301.506";
src = fetchFromGitHub {
owner = "csantosb";
repo = "vhdl-tools";
- rev = "4e9df06c3519be22f1f713d18c80d325a5b0c3d2";
- sha256 = "0n6mmbg8g3ip3dkbc4kxqxsd4p1h7jry25n1cqvzm24x1adwlcfm";
+ rev = "d2c072a0426fa413227f1e4f7ef9fe76c0eb412b";
+ sha256 = "0bqdz4iiv5d58bsc0pjx3npr5n8f7wzikv0l0jcpw70v4v6337r6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/69fe2f8fb98ac1af1d3185f62ae1c89e646cfebf/recipes/vhdl-tools";
sha256 = "006d9xv60a90xalagczkziiimwsr1np9nn25zvnc4nlbf8j3fbbw";
name = "recipe";
};
- packageRequires = [ emacs ggtags helm outshine ];
+ packageRequires = [ emacs ggtags helm helm-rg outshine ];
meta = {
homepage = "https://melpa.org/#/vhdl-tools";
license = lib.licenses.free;
@@ -97664,14 +103636,14 @@
ename = "viking-mode";
version = "20160705.1327";
src = fetchFromGitHub {
- owner = "tlinden";
+ owner = "TLINDEN";
repo = "viking-mode";
rev = "c76aa265d13ad91d6890d242e142d05e31f0340b";
sha256 = "1944p3kbskzj4d9w9prbi7z59lrn087v3gphbhwjplz6mvwbl8g6";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5805575f353c14a62d00543a23eb4c638d9d52dc/recipes/viking-mode";
- sha256 = "13g6gw8yc4pgi1zjig6nlpnsh52dzmprisq95r6lx6hk0xbzrx16";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/viking-mode";
+ sha256 = "12z9807ya0gsgx7h3zdvpx7jksjjrglz3qqyz65wj71sibjfry4m";
name = "recipe";
};
packageRequires = [];
@@ -97742,12 +103714,12 @@
melpaBuild {
pname = "vimish-fold";
ename = "vimish-fold";
- version = "20171231.2212";
+ version = "20181231.2300";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "vimish-fold";
- rev = "1469c953bc20d21d87ce5d92def767e551cda07c";
- sha256 = "0nywz6nk1qanx7z9sykf28h9c2qj7xzs9w4hya4vmhwigqqbhldl";
+ rev = "5ae201fc9a7024dd9c8d1713a00dd42cf1290d6e";
+ sha256 = "0rwfzhqrs4gw5j9irzdy9lwk5m8ycaxdqp5b3gb238a2jqfcxnbz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b4862b0a3d43f073e645803cbbf11d973a4b51d5/recipes/vimish-fold";
@@ -97767,12 +103739,12 @@
melpaBuild {
pname = "vimrc-mode";
ename = "vimrc-mode";
- version = "20170814.1837";
+ version = "20181116.1119";
src = fetchFromGitHub {
owner = "mcandre";
repo = "vimrc-mode";
- rev = "ba8140fba6e03a35b123acbd62fc8c6f0a03bf4a";
- sha256 = "07pwmjaa24hh20bcanmxgnaf050c0j6190i0qfvpd0gpc4p80pxx";
+ rev = "13bc150a870d5d4a95f1111e4740e2b22813c30e";
+ sha256 = "0026dqs3hwygk2k2xfra90w5sfnxrfj7l69jz7sq5glavbf340pk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/vimrc-mode";
@@ -97819,12 +103791,12 @@
melpaBuild {
pname = "virtualenvwrapper";
ename = "virtualenvwrapper";
- version = "20180211.1744";
+ version = "20190223.1119";
src = fetchFromGitHub {
owner = "porterjamesj";
repo = "virtualenvwrapper.el";
- rev = "bf13158dde071bdf4901709ed101aba6b8a25f7f";
- sha256 = "003nj9i6kfjyw1bdz1y3dssp3ff7irhsfq21r430xvdfnzrby4ky";
+ rev = "f753e5ad91c2ff5d11bec424aa8cec141efa6925";
+ sha256 = "062pbnplb3w9h64qsj71d9fvgicp1x63n05mgvgymjh2rnx7py0d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/acc9b816796b9f142c53f90593952b43c962d2d8/recipes/virtualenvwrapper";
@@ -97895,12 +103867,12 @@
melpaBuild {
pname = "visual-fill-column";
ename = "visual-fill-column";
- version = "20180511.211";
+ version = "20190405.1454";
src = fetchFromGitHub {
owner = "joostkremers";
repo = "visual-fill-column";
- rev = "606d86e38ca99704cf745fe9cadd603d6001cb0d";
- sha256 = "1fjzlw6i4jpd0lmdxkzgaypgr2cx5klkb6xwc5k684ly3xp8snc2";
+ rev = "a84e36e483ac14eddf1a905e9025534a06bbc0d1";
+ sha256 = "1l7j6h9x57gr46i88h830fg4qs2yqi5r08z6vdxnx4m5gdv0ll0s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c7628c805840c4687686d0b9dc5007342864721e/recipes/visual-fill-column";
@@ -98077,13 +104049,13 @@
version = "20150718.1309";
src = fetchFromGitHub {
owner = "dbrock";
- repo = "volume-el";
+ repo = "volume.el";
rev = "ecc1550b3c8b501d37e0f0116b54b535d15f90f6";
sha256 = "0ymibjq6iwab5ia1fglhz4gm5cnbi792018fmrabcqkisj2zsjb7";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/bde261750a2754c5bcf01b9a9260429609b8c2bf/recipes/volume";
- sha256 = "1r01v453bpyh561j8ja36609hy60gc30arvmz4z3c1cybhv8sk1i";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/volume";
+ sha256 = "1gm2zaf6qwbdhayaj153882qm21cl4qdyjkdnqrlssb2mcgf017w";
name = "recipe";
};
packageRequires = [];
@@ -98092,6 +104064,32 @@
license = lib.licenses.free;
};
}) {};
+ vscode-icon = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "vscode-icon";
+ ename = "vscode-icon";
+ version = "20180922.1450";
+ src = fetchFromGitHub {
+ owner = "jojojames";
+ repo = "vscode-icon-emacs";
+ rev = "3ad83ee122d312775a101c975424a2c87c3a80b1";
+ sha256 = "0pd9j1bp8lqda8r6kgmxinf6x8aqfg1aikgk2svlcf1g8z31m66i";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/90a07c96a9223a9ad477cbea895ba522523c5be4/recipes/vscode-icon";
+ sha256 = "0rhsqzgxl7hs52kniyi8yn4f953g7dgx49j4lzf2yr33ydxiw9d3";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/vscode-icon";
+ license = lib.licenses.free;
+ };
+ }) {};
vue-html-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -98128,16 +104126,16 @@
melpaBuild {
pname = "vue-mode";
ename = "vue-mode";
- version = "20180515.2012";
+ version = "20190212.1412";
src = fetchFromGitHub {
- owner = "CodeFalling";
+ owner = "AdamNiederer";
repo = "vue-mode";
- rev = "5491a4a765814c392de13617ca3ad4a32edd6399";
- sha256 = "10m5kc0zsvfwr1km66c36qzs6bckq1x0cx4r79vs7sxwwfz8mq2b";
+ rev = "a2e60b0fd245f8f502025dd32399a9f10b82dcb3";
+ sha256 = "1ybz7djmcp2mpga04g7jlsfkjirajg8w5z6jx0dsyqk69rd21gln";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2e5e0a9fff332aeec09f6d3d758e2b67dfdf8397/recipes/vue-mode";
- sha256 = "0gy7a5sliaijq0666l55vbkg15anrw7k1828szdn1ppkraw14bn0";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/vue-mode";
+ sha256 = "0npzn7pycqfdakv4plkigq8aw1bqhz3y03y3ypx21q5a186ds0g5";
name = "recipe";
};
packageRequires = [ edit-indirect mmm-mode ssass-mode vue-html-mode ];
@@ -98204,16 +104202,16 @@
melpaBuild {
pname = "w3m";
ename = "w3m";
- version = "20180404.2220";
+ version = "20190404.1609";
src = fetchFromGitHub {
- owner = "emacsorphanage";
- repo = "w3m";
- rev = "ea64ccb3d792b60f0815309f588bf46b1f0ca80e";
- sha256 = "13dhr36177363x5zjbm5ig4g9xg0x6j0j37smzqlwy2bp244mm06";
+ owner = "emacs-w3m";
+ repo = "emacs-w3m";
+ rev = "0b85cb2dd4deb348edff25b40e17332af49ad981";
+ sha256 = "0sjc6giwzvkndyh6r6v2jiggdqln6y8v39809dn9lj0gj9wz3p4d";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/30de78c9cf83de30093a5647976eeaf552d4b2cb/recipes/w3m";
- sha256 = "0a4jql7ky62ickccbr2xnyggix5wf726d4pfz7mi3yxlw6i8m79s";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/85c53c48caab0845101c487e4fee7e2cda15f706/recipes/w3m";
+ sha256 = "1fnib1y79g50jz9wll63j0xf2awgkrlk6hwx0w6nzg0xsbfbkdvk";
name = "recipe";
};
packageRequires = [];
@@ -98306,12 +104304,12 @@
melpaBuild {
pname = "wakatime-mode";
ename = "wakatime-mode";
- version = "20170517.2053";
+ version = "20180920.2";
src = fetchFromGitHub {
owner = "wakatime";
repo = "wakatime-mode";
- rev = "b1eae15f38a367017e519c10837c44650631b154";
- sha256 = "0l2nwjz978lamlikipljw143j40bnli7rzf9rixsia9iby4krl25";
+ rev = "2531cb58287770883ba534d20b3288955c4d6ef3";
+ sha256 = "12wa845lwvwg38801mk880izfhjs50ssy5alj1743c2bz7ig5grk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a46036a0e53afbebacafd3bc9545c99af79ccfcc/recipes/wakatime-mode";
@@ -98332,12 +104330,12 @@
melpaBuild {
pname = "wakib-keys";
ename = "wakib-keys";
- version = "20180610.1952";
+ version = "20180818.1129";
src = fetchFromGitHub {
owner = "darkstego";
repo = "wakib-keys";
- rev = "682e3241ebc9147f4e316627cbff456dd316e372";
- sha256 = "191j9pk989jwhczwimr8smx1qiiwy5d85j195z8aqg252m656fnw";
+ rev = "a858979620bd22801e5ce214dd46d69b19ccd357";
+ sha256 = "1zvjwm4qr82zhp4nb9mjzklqxa2iasw3i623fwp9a2fzn3c2cyx5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b8ef5ae0dcb92e1cf019be3d53ab9b47d89f45bd/recipes/wakib-keys";
@@ -98350,6 +104348,34 @@
license = lib.licenses.free;
};
}) {};
+ walkclj = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , parseclj
+ , treepy }:
+ melpaBuild {
+ pname = "walkclj";
+ ename = "walkclj";
+ version = "20180718.200";
+ src = fetchFromGitHub {
+ owner = "plexus";
+ repo = "walkclj";
+ rev = "2e54fa813b11d1a87c890cdf117f30165a193024";
+ sha256 = "0bgvniw3ibcjsmzwrndg6pxwbpnpnxsb8ijs2gxg5kbm1hqqly32";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/44472b35938fe70d4cb3d15397495fe321fcd464/recipes/walkclj";
+ sha256 = "0m971dlazildhgj8jqg4x679i6s6p80mbpri7l24ynxk45wix22m";
+ name = "recipe";
+ };
+ packageRequires = [ emacs parseclj treepy ];
+ meta = {
+ homepage = "https://melpa.org/#/walkclj";
+ license = lib.licenses.free;
+ };
+ }) {};
wand = callPackage ({ dash
, fetchFromGitHub
, fetchurl
@@ -98359,12 +104385,12 @@
melpaBuild {
pname = "wand";
ename = "wand";
- version = "20180112.454";
+ version = "20180815.331";
src = fetchFromGitHub {
owner = "cmpitg";
repo = "wand";
- rev = "e8939812e03255fff3e15c5d0f9d4da849aaf07b";
- sha256 = "0l79vhf0s5rz9s02bmcfyx7yn4pvn3dnxkr50qfhqajrvfx1105g";
+ rev = "5c0d4833a3afc57e4b2398250139729cc9131d16";
+ sha256 = "1d7zv5mk9mqlp40hzbf62y080a2aqvjw4x7y9frh33217r8h5b6i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/38be840bbb32094b753ec169b717a70817006655/recipes/wand";
@@ -98413,12 +104439,12 @@
melpaBuild {
pname = "wanderlust";
ename = "wanderlust";
- version = "20180605.631";
+ version = "20190406.601";
src = fetchFromGitHub {
owner = "wanderlust";
repo = "wanderlust";
- rev = "395826e99b84051396d503392f52462b6cb683a5";
- sha256 = "1i182aq8fmp232flwdvf3v6367pmzxvjjn4snvsy16wk5710vg3b";
+ rev = "6528a0032342ec7bf6a95dda9b60d67292eaadfc";
+ sha256 = "0pdqz0ypdxr90zlna7jhcvvxbqjn367amxh91f76npvrcpi1s016";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/426172b72026d1adeb1bf3fcc6b0407875047333/recipes/wanderlust";
@@ -98582,6 +104608,31 @@
license = lib.licenses.free;
};
}) {};
+ wdl-mode = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "wdl-mode";
+ ename = "wdl-mode";
+ version = "20180831.1246";
+ src = fetchFromGitHub {
+ owner = "zhanxw";
+ repo = "wdl-mode";
+ rev = "cef86e5afc136ae5ad9324cd6e6d6f860b889bcf";
+ sha256 = "0j7sv3dcpq2fvcip9834v6k8q1d8bpnbxnvz1g691lmc58z1a86a";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/8cf1f20913d765ae36ecc2c9a69470ff51124e56/recipes/wdl-mode";
+ sha256 = "1zhrs0cdsr8mxh9zn8cy6inzxcygk0lgsyw1d190253v1kk6072i";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/wdl-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
weather-metno = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -98694,12 +104745,12 @@
melpaBuild {
pname = "web-mode";
ename = "web-mode";
- version = "20180628.422";
+ version = "20190301.900";
src = fetchFromGitHub {
owner = "fxbois";
repo = "web-mode";
- rev = "471e1235d976e209de5262e75ecf7cc3e1fec39f";
- sha256 = "00m3yyx83sfdsn70iqr80vpj060nfddb2j6gzzsdmsnm0nl0hg8j";
+ rev = "c8a3b33e088d2a910c000804966b804bba33f982";
+ sha256 = "04py5kqzhmgw2g9rqjlx9cffz71xbcdn1sjiglibmawqgy83chk3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6f0565555eaa356141422c5175d6cca4e9eb5c00/recipes/web-mode";
@@ -98721,12 +104772,12 @@
melpaBuild {
pname = "web-mode-edit-element";
ename = "web-mode-edit-element";
- version = "20161114.954";
+ version = "20181214.509";
src = fetchFromGitHub {
owner = "jtkDvlp";
repo = "web-mode-edit-element";
- rev = "8b8ac07aa8c920dafd94c96a51effb0d6c0ed1ce";
- sha256 = "0aj1ibmnrbaxrkwjf1fac2qzazrj39pql3prcibnchc2bmp191aa";
+ rev = "30f0f697212a85a9b881549fc272fa7c96d3e703";
+ sha256 = "1qnk4skzj6b47h8c2yg05hc7iv8y4102izlfc490307y264rv051";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/web-mode-edit-element";
@@ -98773,12 +104824,12 @@
melpaBuild {
pname = "web-search";
ename = "web-search";
- version = "20170911.1246";
+ version = "20181027.2225";
src = fetchFromGitHub {
owner = "xuchunyang";
repo = "web-search.el";
- rev = "410c490ecf82a3693db3eb62003302233471ff84";
- sha256 = "0hib0ffwikdydkm5asmvzj6l49pd9694psnn2c010j3ixw6i8gsl";
+ rev = "24f5b49774f4fb60c903c2b65598590d1c6456d9";
+ sha256 = "1f7ysgc9gnfrlhb7y19ynfl5h1ckbqrm8hqly3kr2n2cvlzj9g2i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/503ef2042cc14dbe53e7121b8d0b5ccbdf6c882b/recipes/web-search";
@@ -98799,12 +104850,12 @@
melpaBuild {
pname = "web-server";
ename = "web-server";
- version = "20140905.1706";
+ version = "20190309.1813";
src = fetchFromGitHub {
owner = "eschulte";
repo = "emacs-web-server";
- rev = "469cd3bc117bfb8da0c03a2a2fb185e80c81d068";
- sha256 = "0mbhyk7sgisx0l0xiz2xgy4jfbgwazlnxjvajsh4nysyig5rys05";
+ rev = "cafa5b7582c57252a0884b2c33da9b18fb678713";
+ sha256 = "1c0lfqmbs5hvz3fh3c8wgp6ipwmxrwx9xj264bjpj3phixd5419y";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/70e724b4e6c76d0299d5ea8d2211f48c1c611afe/recipes/web-server";
@@ -98880,12 +104931,12 @@
melpaBuild {
pname = "webpaste";
ename = "webpaste";
- version = "20180127.1434";
+ version = "20190310.348";
src = fetchFromGitHub {
owner = "etu";
repo = "webpaste.el";
- rev = "14fd97bc3c8554d9394b698610dca1186ff68b03";
- sha256 = "1q7pqkww6ggh9sdnqa4vbq6nzivw0w011w3mvwx1mi4zp0dv50zs";
+ rev = "7345c5f62d5cff4d84379eaf5dc8b2bb8bc4f99c";
+ sha256 = "00dfp2dyj9cvcvvpsh4g61b37477c8ahfj3xig2x2kgfz15lk89n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/13847d91c1780783e516943adee8a3530c757e17/recipes/webpaste";
@@ -98906,12 +104957,12 @@
melpaBuild {
pname = "websocket";
ename = "websocket";
- version = "20180422.1716";
+ version = "20190405.2119";
src = fetchFromGitHub {
owner = "ahyatt";
repo = "emacs-websocket";
- rev = "0d96ba2ff5a25c6cd6c66f417cc9b5f38a4308ba";
- sha256 = "1dgrf7na6r6mmkknphzshlbd5fnzisg0qn0j7vfpa38wgsymaq52";
+ rev = "d34f5f095dced553eb3f30924a22a88e6763f4b4";
+ sha256 = "08qi79a0lb2d3hqbv3hanwwhhqv29z5h97v4417apnd045jl855k";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/websocket";
@@ -99039,12 +105090,12 @@
melpaBuild {
pname = "wgrep";
ename = "wgrep";
- version = "20180710.2326";
+ version = "20181228.1640";
src = fetchFromGitHub {
owner = "mhayashi1120";
repo = "Emacs-wgrep";
- rev = "414be70bd313e482cd9f0b70fd2daad4ee23497c";
- sha256 = "1sdhd587q3pg92lhiayph87azhalmf1gzrnsprkmqvnphv7mvks9";
+ rev = "b22834e4597b5dfe06621d23cf93351d790df930";
+ sha256 = "07p0wwigc99hx09n5fkzf5yxkr7z19rqy8wgxk5m1pyp1i75wiq8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9648e3df896fcd97b3757a727108bc78261973cc/recipes/wgrep";
@@ -99083,8 +105134,7 @@
license = lib.licenses.free;
};
}) {};
- wgrep-ag = callPackage ({ cl-lib ? null
- , fetchFromGitHub
+ wgrep-ag = callPackage ({ fetchFromGitHub
, fetchurl
, lib
, melpaBuild
@@ -99092,19 +105142,19 @@
melpaBuild {
pname = "wgrep-ag";
ename = "wgrep-ag";
- version = "20160923.403";
+ version = "20181228.1724";
src = fetchFromGitHub {
owner = "mhayashi1120";
repo = "Emacs-wgrep";
- rev = "4e9f3d9822acab2d353c858d33ddaebb629fbfe8";
- sha256 = "14xja70gh9v3565fkl4b46swfrkmh6j6zg9pxwj5h1gicqrgaiwz";
+ rev = "36c5e8d0e03bc16b19d30a603730065f74b5b767";
+ sha256 = "0pgyf9vfcahb495q01hi1mvkmv846w4rj6zyf52is8x7sjj7x44s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2c50b704343c4cac5e2a62a67e284ba6d8e15f8a/recipes/wgrep-ag";
sha256 = "1b2mj06kws29ha7g16l5d1s3p3nwyw8rprbpaiijdk9nxqcm0a8a";
name = "recipe";
};
- packageRequires = [ cl-lib wgrep ];
+ packageRequires = [ wgrep ];
meta = {
homepage = "https://melpa.org/#/wgrep-ag";
license = lib.licenses.free;
@@ -99118,12 +105168,12 @@
melpaBuild {
pname = "wgrep-helm";
ename = "wgrep-helm";
- version = "20170510.1539";
+ version = "20190401.1456";
src = fetchFromGitHub {
owner = "mhayashi1120";
repo = "Emacs-wgrep";
- rev = "1cdd7c136f1e7565bb13d2df69be3dc77b83698d";
- sha256 = "057p99hq0r6z1k8sl15w3sxrqvlv0g9wp39zy1pqhccv2mn3g2d6";
+ rev = "379afd89ebd76f63842c8589127d66096a8bb595";
+ sha256 = "0v1qx8z1xj9qzirlycbihnkpwcklyi3a0j8lil78pmdpixdbgh47";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9648e3df896fcd97b3757a727108bc78261973cc/recipes/wgrep-helm";
@@ -99195,12 +105245,12 @@
melpaBuild {
pname = "which-key";
ename = "which-key";
- version = "20180621.1238";
+ version = "20190315.548";
src = fetchFromGitHub {
owner = "justbur";
repo = "emacs-which-key";
- rev = "ff79dfff66f880885c5893dd6fd05dc51173a476";
- sha256 = "0x9bmm4s5gq9k9x1rkwxr8zz8p2hgsxvzpji138m8m4j809l6cn4";
+ rev = "187ac0eb8990b62d4bfd83aac10a0ae68cdd2ff5";
+ sha256 = "0zl2vksl5jk3l23z4v7m05xha6l953c84zw1ffalcqxrrcs0737r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/315865a3df97c0694f648633d44b8b34df1ac76d/recipes/which-key";
@@ -99298,12 +105348,12 @@
melpaBuild {
pname = "whitespace-cleanup-mode";
ename = "whitespace-cleanup-mode";
- version = "20170505.1923";
+ version = "20190106.1222";
src = fetchFromGitHub {
owner = "purcell";
repo = "whitespace-cleanup-mode";
- rev = "d375bfb61cb70947a93004cba8ea17a0bc76f5a9";
- sha256 = "0w6jwg1lyz0hwkhbx3kx6yddakff6azj2ipyxw26rv886gx8a226";
+ rev = "72427144b054b0238a86e1348c45d986b8830d9d";
+ sha256 = "1zlk534jbwrsabcg3kqlzk4h4hwya60lh6q2n1v4yn4rpf5ghsag";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b461cfe450d7ce6bd0c14be3460cacffc1a32e6f/recipes/whitespace-cleanup-mode";
@@ -99349,12 +105399,12 @@
melpaBuild {
pname = "whole-line-or-region";
ename = "whole-line-or-region";
- version = "20180324.2119";
+ version = "20181211.1556";
src = fetchFromGitHub {
owner = "purcell";
repo = "whole-line-or-region";
- rev = "944290d443a395ef0578531929186d6274ab03e9";
- sha256 = "04hbs8hrm5csnjxvxkfbd9fky0rd6xpr105cy0bvya5c14anzcd4";
+ rev = "d816cf566f02a37ab46b44675e9f538a63a47d05";
+ sha256 = "1b8n02dv5fyspsgi7daz6i790hp6s0lkiyj7gz8q34sf2924knvf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/whole-line-or-region";
@@ -99481,12 +105531,12 @@
melpaBuild {
pname = "wiki-summary";
ename = "wiki-summary";
- version = "20150408.1422";
+ version = "20181010.1124";
src = fetchFromGitHub {
owner = "jozefg";
repo = "wiki-summary.el";
- rev = "ec11f6b7177a3fc50702c771d347d1e86f4462fc";
- sha256 = "0c1j12lzkgb6rfq2zyfk9mj11qilymcpfp9lf38pkki527akxixl";
+ rev = "fa41ab6e50b3b80e54148af9d4bac18fd0405000";
+ sha256 = "0qcnqwiylkkb7132bzra49k7jg8kq13jif8096vpg4xzpcq5lpj2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/31877f182ab82fd5bb73ec4ddd8526a032d9edf9/recipes/wiki-summary";
@@ -99702,8 +105752,7 @@
license = lib.licenses.free;
};
}) {};
- window-purpose = callPackage ({ cl-lib ? null
- , emacs
+ window-purpose = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
, imenu-list
@@ -99713,19 +105762,19 @@
melpaBuild {
pname = "window-purpose";
ename = "window-purpose";
- version = "20180531.1336";
+ version = "20190405.401";
src = fetchFromGitHub {
owner = "bmag";
repo = "emacs-purpose";
- rev = "8737c5d8cb4a0d749771a04a136a784e5d519d5e";
- sha256 = "0w186mgs7ww52mvqrp02bnwazznhyy6j2g8r21x2d4ri3vavmwrl";
+ rev = "fb649bb07de63a70ecdace464eadcaafe01e1995";
+ sha256 = "1x8njfpb21siqh4b931557qdj4qxvzcj995dm91l6c3k8yh76hy8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5813120ab674f6db7d0a486433d8faa6cfec1727/recipes/window-purpose";
sha256 = "1y70jrba3gf9fyf2qdihfshbsblzb88yv9fkcswdzrpq5kmgwp84";
name = "recipe";
};
- packageRequires = [ cl-lib emacs imenu-list let-alist ];
+ packageRequires = [ emacs imenu-list let-alist ];
meta = {
homepage = "https://melpa.org/#/window-purpose";
license = lib.licenses.free;
@@ -99738,12 +105787,12 @@
melpaBuild {
pname = "windsize";
ename = "windsize";
- version = "20151121.540";
+ version = "20181029.1557";
src = fetchFromGitHub {
owner = "grammati";
repo = "windsize";
- rev = "beb6376fdf52afa6f220c89032448460faf76e7f";
- sha256 = "0hijf56ahbc5inn7n39nj96d948c4d05n9d5ci3g3vbl5hsyb121";
+ rev = "62c2846bbe95b0a73e996c75e4a644d05f57aaaa";
+ sha256 = "13kfrmv3vmkfanxv9nym5v43hx5p7xkgqmx65zcxh4gcbaham1mi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/windsize";
@@ -99869,12 +105918,12 @@
melpaBuild {
pname = "winum";
ename = "winum";
- version = "20171028.702";
+ version = "20181119.905";
src = fetchFromGitHub {
owner = "deb0ch";
repo = "emacs-winum";
- rev = "c56d1cdb8d1723eb4c0d7a7eb3ecd2697739146c";
- sha256 = "09jd5srlnd4060hs719qil84ssmnvq196bz7ywaswgapv1gs1h6r";
+ rev = "efcb14fd306afbc738666e6b2e5a8a1bb5904392";
+ sha256 = "0v1qmw3svydk7dlqbcymy1g1bygkfpb2h4b97zdp12xvd8mww9ny";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c1caa7a54a910a44322fdee300e8cce6ddcde071/recipes/winum";
@@ -99897,8 +105946,8 @@
version = "20180520.58";
src = fetchhg {
url = "https://bitbucket.com/ArneBab/wisp";
- rev = "db4210a0af51";
- sha256 = "0f3yn8dxg21q711533d1zgxwr2y3df1msmchvd5x4rikm8nayp8a";
+ rev = "62d6a170aefd";
+ sha256 = "1hz5f70s6zi1mnz8si2zwj8n15jfqgqn5ag06h3x50w53hvzk41p";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/wisp-mode";
@@ -99946,12 +105995,12 @@
melpaBuild {
pname = "with-editor";
ename = "with-editor";
- version = "20180618.1602";
+ version = "20190224.131";
src = fetchFromGitHub {
owner = "magit";
repo = "with-editor";
- rev = "fb9fdde14eddd5bd180d4baabfedc45e5492e115";
- sha256 = "07jfqnh4mvpky3mm7wyrdwpwnk2a7r1v2k7q5rxmg8i59k99q7bn";
+ rev = "38df9bfc2227bcb7ac4899c83a03756d5f171450";
+ sha256 = "00jz4a3004w10l6ip7wcb4zbvlsi8wbgnjpgr5p030y21q6gk5ki";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8c52c840dc35f3fd17ec660e113ddbb53aa99076/recipes/with-editor";
@@ -100019,6 +106068,33 @@
license = lib.licenses.free;
};
}) {};
+ with-venv = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "with-venv";
+ ename = "with-venv";
+ version = "20190123.1834";
+ src = fetchFromGitHub {
+ owner = "10sr";
+ repo = "with-venv-el";
+ rev = "4dd29606e2f29de1488c0678736b3ea92876f09e";
+ sha256 = "1i3dsvkvcmf5zmfwy988bz9wp7jbcpdrijdzcfqyy5spkqgv031c";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/555a2e49f18fbae59913459466babf8d55bd2151/recipes/with-venv";
+ sha256 = "090jird410wn2w9pwr2d9pjw5xghcdxc4l578zay2akygg3c6blm";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/with-venv";
+ license = lib.licenses.free;
+ };
+ }) {};
wn-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -100214,12 +106290,12 @@
melpaBuild {
pname = "worf";
ename = "worf";
- version = "20180620.1011";
+ version = "20190404.323";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "worf";
- rev = "b48e0c9bbd617ed8a8962174d804ce7a6da1c10a";
- sha256 = "14xik793sgjcg8nby8v77x1x8zspgkhz95kzzlzqalbblak3mgbs";
+ rev = "57c4c1a02532fdc8c2393cec69d89ef423ed529e";
+ sha256 = "1nn2hkj0lnk81ga4976h2dbgfarnidrvcf9zfcz6gxxrsp7knh8c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f00f8765e35c21dd1a4b5c01c239ed4d15170ab7/recipes/worf";
@@ -100364,6 +106440,35 @@
license = lib.licenses.free;
};
}) {};
+ writefreely = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org
+ , ox-gfm
+ , request }:
+ melpaBuild {
+ pname = "writefreely";
+ ename = "writefreely";
+ version = "20190326.835";
+ src = fetchFromGitHub {
+ owner = "dangom";
+ repo = "writefreely.el";
+ rev = "61296a15f31aef92972ffa6865edadaf4f4127ca";
+ sha256 = "19ksdcnm0rm1imzysl9lb3nx5ysnfyx07krqghxs8kbd9c5zvlyc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/55ea1ad03ce5b5178435b8042be383065795ee71/recipes/writefreely";
+ sha256 = "1lvar4kmzq3x7nmidklcryqscb5xzvkzbyn59a8ns0bml5sfrqyj";
+ name = "recipe";
+ };
+ packageRequires = [ emacs org ox-gfm request ];
+ meta = {
+ homepage = "https://melpa.org/#/writefreely";
+ license = lib.licenses.free;
+ };
+ }) {};
writegood-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -100398,12 +106503,12 @@
melpaBuild {
pname = "writeroom-mode";
ename = "writeroom-mode";
- version = "20170623.327";
+ version = "20190406.1435";
src = fetchFromGitHub {
owner = "joostkremers";
repo = "writeroom-mode";
- rev = "9e924dd7dd83f10b026c89cddef7e1646f1a3869";
- sha256 = "1v7hbmi9dqdqyr3png1xwhg3k05jr2q6jdjmj48bxiixl9zhcq9p";
+ rev = "ebe522ba5a0367cf82ed03ffeb63fe597b84f4a1";
+ sha256 = "0w2lmkkij79khjpswk2zxj371fa9ws94j9dqzrgzf37lnimgnsff";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4e39cd8e8b4f61c04fa967def6a653bb22f45f5b/recipes/writeroom-mode";
@@ -100448,12 +106553,12 @@
melpaBuild {
pname = "wsd-mode";
ename = "wsd-mode";
- version = "20170731.837";
+ version = "20180807.430";
src = fetchFromGitHub {
owner = "josteink";
repo = "wsd-mode";
- rev = "566ae4b45b4a34b985f1b363d6cdbd463ab6aba6";
- sha256 = "0k30i1gq6ljxwf97f6nlz8b6blh6hg0b4syfx64lzf0zc22di2l4";
+ rev = "0583df8efb742c90dc56df00f9714e13512cf6d9";
+ sha256 = "0f90qm5zx7lkyvaz519fln4hijfyammc675105f19492h1bc1bva";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/04867a574773e8794335a2664d4f5e8b243f3ec9/recipes/wsd-mode";
@@ -100493,6 +106598,32 @@
license = lib.licenses.free;
};
}) {};
+ wucuo = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "wucuo";
+ ename = "wucuo";
+ version = "20181106.1457";
+ src = fetchFromGitHub {
+ owner = "redguardtoo";
+ repo = "wucuo";
+ rev = "4e988c101fe82f2e8c7b3710d15982fe28b8d32d";
+ sha256 = "0g558miz9f4g8jlq532fs9yxj3il62zajgcjfndall2853hn54af";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/819cacef2c31d750829980f3f6c3bfb72f36bbdd/recipes/wucuo";
+ sha256 = "084fcv4dkflpka9vmxmxqdl0cgmjjh9wc6axr65j1ffmqd933y4a";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/wucuo";
+ license = lib.licenses.free;
+ };
+ }) {};
wwtime = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -100555,14 +106686,14 @@
ename = "x-path-walker";
version = "20160922.1135";
src = fetchFromGitHub {
- owner = "lompik";
+ owner = "Lompik";
repo = "x-path-walker";
rev = "3b01dbd7a039c6c84fdf8c8ee53ba72090ee950a";
sha256 = "1gb3lnl3gvckbakc4fy22fcvif3xdfkdaw334xmp33phjb8gjqvj";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/c51f2aba59cb93f4bb104a7dde214963cbf002a6/recipes/x-path-walker";
- sha256 = "03l83ph0d8g5pxnzp1gs3gdbwl3vhgvyk186yhqy6sbknq627k2x";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/x-path-walker";
+ sha256 = "1k72c0i17k31p404nkzqkw25cpcfk66bmd0vjzwg34cnwcgfhnjg";
name = "recipe";
};
packageRequires = [ helm-core ];
@@ -100580,12 +106711,12 @@
melpaBuild {
pname = "x509-mode";
ename = "x509-mode";
- version = "20180702.36";
+ version = "20180921.103";
src = fetchFromGitHub {
owner = "jobbflykt";
repo = "x509-mode";
- rev = "89bdeca8c7494eaaea115031b3235f0bfbd4d945";
- sha256 = "04m51c7w7nzh5nwpsyzwdcdfk1gsj9cy56xz51x53kla7xbwkdl8";
+ rev = "9eb24c8721dcad9888b70213d06d770bc2386db7";
+ sha256 = "1gr099bn4qn2b5jasbs4r04pf6wqsnpf2632vzvshzm9nkz4qnhg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/27145423eb4e68e006ef96868a35b99d119a3099/recipes/x509-mode";
@@ -100659,12 +106790,12 @@
melpaBuild {
pname = "xah-elisp-mode";
ename = "xah-elisp-mode";
- version = "20180710.124";
+ version = "20190124.2246";
src = fetchFromGitHub {
owner = "xahlee";
repo = "xah-elisp-mode";
- rev = "b2fe52007d90934053a6ba885b77d228d6c2bff6";
- sha256 = "1ma095ivzxblm0daxmgf3lcs59nkxgh4bfaw8vqxysfy0svqrff7";
+ rev = "a09c51e450bf4b39bdc3f4063c2946baec7ae3b1";
+ sha256 = "0hpdm6qns2i5zpavqq6zd7dyl9lxsxyic52jzjfisqv3gjrz8zpp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/05eed39bae37cc8359d2cc678052cbbcc946e379/recipes/xah-elisp-mode";
@@ -100685,12 +106816,12 @@
melpaBuild {
pname = "xah-find";
ename = "xah-find";
- version = "20180310.450";
+ version = "20190314.1339";
src = fetchFromGitHub {
owner = "xahlee";
repo = "xah-find";
- rev = "0cd985675c286bfa5f07ab9d00231f8a23505537";
- sha256 = "01h5wdbzf7swrmddai2vsakr8rsqg447w9bnp7akxla426fsr8wg";
+ rev = "a39f1ff9a7cf56e92b56c6f179741569b9172a48";
+ sha256 = "16d2dh08dxdm06ik3sfx00filxqpy646vv1qh5kb36zs8ydzjg3z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/05eed39bae37cc8359d2cc678052cbbcc946e379/recipes/xah-find";
@@ -100711,12 +106842,12 @@
melpaBuild {
pname = "xah-fly-keys";
ename = "xah-fly-keys";
- version = "20180702.1521";
+ version = "20190222.2316";
src = fetchFromGitHub {
owner = "xahlee";
repo = "xah-fly-keys";
- rev = "11db1184a7f68ee6be0cafe5bd9a304cb0036488";
- sha256 = "0j4mx27fnx95ri8sm3zsp0xwk4n8civbnn2ld1932kazbhwfwgqv";
+ rev = "cc8b3bc26998bc29f82e87667c0d1ef90894ff66";
+ sha256 = "19q20mp5gzkm0ch5wz1jxajkb8cqmknsldlzb7jsa8hzyvl2mb7m";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/05eed39bae37cc8359d2cc678052cbbcc946e379/recipes/xah-fly-keys";
@@ -100763,12 +106894,12 @@
melpaBuild {
pname = "xah-lookup";
ename = "xah-lookup";
- version = "20171108.241";
+ version = "20181225.1142";
src = fetchFromGitHub {
owner = "xahlee";
repo = "lookup-word-on-internet";
- rev = "3029d8ec04e841c57b7482c244a1733eb4c77cb5";
- sha256 = "0ygkl663cqs25kicfnpy06j3sm6jjpagvv90wx3llspjy9adcxvx";
+ rev = "2cafbf3605a8f2ac4c56392c5b1f75adc3b11f24";
+ sha256 = "1xr2fp6dylv098g7m7x31j7jllr87545snab3qw5r32rzsa7fswz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/05eed39bae37cc8359d2cc678052cbbcc946e379/recipes/xah-lookup";
@@ -100789,12 +106920,12 @@
melpaBuild {
pname = "xah-math-input";
ename = "xah-math-input";
- version = "20180709.2228";
+ version = "20190206.858";
src = fetchFromGitHub {
owner = "xahlee";
repo = "xah-math-input";
- rev = "87e46fcaaada3e87dc828e75a52bec05c8c4c262";
- sha256 = "1vb53wr93n2m419y81c6naixxc6791bjynbfydm234da7ixsc7mk";
+ rev = "af787f87815b85d56c35bbe0f22e03a31c8e670d";
+ sha256 = "05fqjyzz6c0nclhqc7qxs3hg99d3yxb3qjzn1wc26m6jcmm2l6zd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/05eed39bae37cc8359d2cc678052cbbcc946e379/recipes/xah-math-input";
@@ -100946,12 +107077,12 @@
melpaBuild {
pname = "xcode-project";
ename = "xcode-project";
- version = "20180509.1218";
+ version = "20181025.544";
src = fetchFromGitHub {
owner = "nhojb";
repo = "xcode-project";
- rev = "fe95fb1d1da89f4f03d5dff330fd2d663101f8f0";
- sha256 = "1fvk92zbl4rl0kz0wnrmrry1amcpqxqqprsjgn209b4i7sh05p06";
+ rev = "0bf9a4230fab7830350c750c39beda99ef74d72f";
+ sha256 = "0746f2niclmlx90skvdb1xdac0nqj8a9pd9ap8n89ckb5r6f9hbg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/49b866ebf7e707bc74525f83dd5038e6e860fcef/recipes/xcode-project";
@@ -101074,12 +107205,12 @@
melpaBuild {
pname = "xml-rpc";
ename = "xml-rpc";
- version = "20160430.1458";
+ version = "20181002.653";
src = fetchFromGitHub {
owner = "hexmode";
repo = "xml-rpc-el";
- rev = "0ab093d60140d19e31d217c8abdc7dbdac944486";
- sha256 = "0g52bmamcd54acyk6i47ar5jawad6ycvm9g656inb994wprnjin9";
+ rev = "8f624f8b964e9145acb504e4457c9510e87dd93c";
+ sha256 = "0xa54z52rsfl3n0xgmbycj4zazp8ksgdwcq56swzs6wp72zlalmj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/547d773e07d6229d2135d1b081b5401039ffad39/recipes/xml-rpc";
@@ -101252,16 +107383,16 @@
melpaBuild {
pname = "xresources-theme";
ename = "xresources-theme";
- version = "20160331.702";
+ version = "20190108.1051";
src = fetchFromGitHub {
- owner = "CQQL";
+ owner = "cqql";
repo = "xresources-theme";
- rev = "09a0bfc1684161dd1cdc899c027808a99646a652";
- sha256 = "171vffga2yzxqmgh77vila6x96bz1i6818f1pfaxblw1hz2ga341";
+ rev = "5239acb51aa2dfa89a207e57012108d8fcf60562";
+ sha256 = "13pls0f85n5rpbrbqcmrmcznv9hxiaglrnwpzivrli33cba92fpm";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/4cef3a5683ea572f823d915ec2a94d591ac915d6/recipes/xresources-theme";
- sha256 = "0spqa3xn3p2lmvlc5hdn7prq4vb70nkyrryx1kavha9igzhlyaga";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/xresources-theme";
+ sha256 = "1vsbvg9w5g6y2qlb8ssn12ax31r7fbslfi9vcgvmjydcr8r1z0zs";
name = "recipe";
};
packageRequires = [];
@@ -101278,12 +107409,12 @@
melpaBuild {
pname = "xterm-color";
ename = "xterm-color";
- version = "20180202.1518";
+ version = "20190407.1110";
src = fetchFromGitHub {
owner = "atomontage";
repo = "xterm-color";
- rev = "42374a98f1039e105cad9f16ce585dffc96a3f1c";
- sha256 = "09mzzql76z3gn39qnfjspm8waps8msbkilmlk3n2zrizpbps6crj";
+ rev = "749307da49323883c15d8789a958fa74607228cc";
+ sha256 = "0hh18vxkr71p4ipzly4w6jx4qy4c1zrfzz2q38vshh1x78lcm77l";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b34a42f1bf5641871da8ce2b688325023262b643/recipes/xterm-color";
@@ -101460,12 +107591,12 @@
melpaBuild {
pname = "yahoo-weather";
ename = "yahoo-weather";
- version = "20170822.1544";
+ version = "20181025.2020";
src = fetchFromGitHub {
owner = "lujun9972";
repo = "yahoo-weather-mode";
- rev = "a74e29bc81b13efe285b87fa4d0694d75f8e2bb5";
- sha256 = "1nimmv84q5zsv81ji3nmvpmi30f8xh0ypa88hpdpykc5iirj1m0x";
+ rev = "1d2db14daa1706e03dfe4379397eb89234a56400";
+ sha256 = "01hydsjj427j4xyy8cwiz5kn67vwwi1qnih5qfyw04w29r9njh1n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ae5ca93d48a2d24787c3d4ed7ab3a65aa8023f4f/recipes/yahoo-weather";
@@ -101529,6 +107660,33 @@
license = lib.licenses.free;
};
}) {};
+ yaml-imenu = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , yaml-mode }:
+ melpaBuild {
+ pname = "yaml-imenu";
+ ename = "yaml-imenu";
+ version = "20180930.2327";
+ src = fetchFromGitHub {
+ owner = "knu";
+ repo = "yaml-imenu.el";
+ rev = "78a383098807014d9e7f2941196d8271677158cd";
+ sha256 = "1f85m0h19wjb0xrwkxrh7vrpphm8l5nkrv82zsl097dqw3ijj3f1";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/71e7c2df9e34093ad2634d5a56133fa30126fb5c/recipes/yaml-imenu";
+ sha256 = "03r7020gyr96m1z7p947nb7z8szzlkqv21g1hm10sqa8qp7k0qli";
+ name = "recipe";
+ };
+ packageRequires = [ emacs yaml-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/yaml-imenu";
+ license = lib.licenses.free;
+ };
+ }) {};
yaml-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -101639,12 +107797,12 @@
melpaBuild {
pname = "yankpad";
ename = "yankpad";
- version = "20180624.1615";
+ version = "20190319.716";
src = fetchFromGitHub {
owner = "Kungsgeten";
repo = "yankpad";
- rev = "ad8ce33fec5d9eb2a7e1111b1097e4015f78c0ed";
- sha256 = "03645wr6ksx6f7q3wpjcx3c7n1bm4v03j8kjkxx2790y77yns3ri";
+ rev = "91effa1b160cc984c99f126152690da9cba95e30";
+ sha256 = "03dqicig1axdadmj8xdzcwnnvvf3k8j0y5wjwjp6rszhzlk0ag60";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e64746d10f9e0158621a7c4dc41dc2eca6ad573c/recipes/yankpad";
@@ -101664,12 +107822,12 @@
melpaBuild {
pname = "yapfify";
ename = "yapfify";
- version = "20180105.1447";
+ version = "20180830.33";
src = fetchFromGitHub {
owner = "JorisE";
repo = "yapfify";
- rev = "9e63a9135bd8dbfbee55819837a3aa0d119c5e6f";
- sha256 = "1bf09hah2g8x0jbrdh4fm1v01qjymiv38yvv8a5qmfpv5k93lcrc";
+ rev = "b858225e1debe6734ee718e5c3c209152652a8b3";
+ sha256 = "16bpshqk47slcifx9v70ka202lnbspkcjdl5npxpf12abc1syh06";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/060c32d8e9fdc56fe702d265a935d74d76082f86/recipes/yapfify";
@@ -101818,12 +107976,12 @@
melpaBuild {
pname = "yasnippet";
ename = "yasnippet";
- version = "20180620.1750";
+ version = "20181015.512";
src = fetchFromGitHub {
owner = "joaotavora";
repo = "yasnippet";
- rev = "d3bb879356288ef38975fbf85947c7371b8c9759";
- sha256 = "1bmwgbi303z1mvar46077vj4974bf7596fs0p4ncnqhcjl75m80j";
+ rev = "1d96da2e08664c31ff7f6f7441da1f4fa5680b1f";
+ sha256 = "01sjmc62rvyjysp031pwiqizk6b8i1jdxnq4v24ikx7d2f3bmpjy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5d1927dc3351d3522de1baccdc4ce200ba52bd6e/recipes/yasnippet";
@@ -101844,12 +108002,12 @@
melpaBuild {
pname = "yasnippet-snippets";
ename = "yasnippet-snippets";
- version = "20180714.622";
+ version = "20190316.319";
src = fetchFromGitHub {
owner = "AndreaCrotti";
repo = "yasnippet-snippets";
- rev = "d153af6d1d8ab8dfbc57f4065cee72f86d5cd2c4";
- sha256 = "0dkhac40kiyqnq42c2fcdb1jzshgakabq4rq796qfhjpc5j8x5wk";
+ rev = "e378404d01ad031bdc88b9bcb01d5c877c26eca6";
+ sha256 = "1g82j3a7y5f9viy24alg6ihd1535l2m6pdj4bg53j9nh19xi9jb7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/42490bbdac871bce302fbc9a0488ff7de354627e/recipes/yasnippet-snippets";
@@ -101896,11 +108054,11 @@
melpaBuild {
pname = "yatex";
ename = "yatex";
- version = "20180601.2357";
+ version = "20190406.910";
src = fetchhg {
url = "https://www.yatex.org/hgrepos/yatex";
- rev = "ea6956f10ce7";
- sha256 = "192x3qi781hf4xpx2b33clc2xsq1d7vi3fzjv82d5pq1687kjl93";
+ rev = "2ed79846fd53";
+ sha256 = "0yx4679h2g7c8di7vbg9a2341fr988badibn1i38b1qjcrinfm1b";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9854c39fc1889891fe460d0d5ac9224de3f6c635/recipes/yatex";
@@ -101979,12 +108137,12 @@
melpaBuild {
pname = "ycmd";
ename = "ycmd";
- version = "20180520.353";
+ version = "20180724.556";
src = fetchFromGitHub {
owner = "abingham";
repo = "emacs-ycmd";
- rev = "966594701c1eef1f6d4dad0c71c6d43a029977d7";
- sha256 = "05b8l82l3p15r072zhmmwpcnxyyyrhzka5gc3vkzz2sa7wa7sp7j";
+ rev = "fe35b7f2e3d9370941b9e537c9bc578d814acce2";
+ sha256 = "10h3whhz4bli4r6d945qdwv0627842l84vp6binqzw7lddd72y6g";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4b25378540c64d0214797348579671bf2b8cc696/recipes/ycmd";
@@ -102032,6 +108190,33 @@
license = lib.licenses.free;
};
}) {};
+ yequake = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "yequake";
+ ename = "yequake";
+ version = "20190114.1155";
+ src = fetchFromGitHub {
+ owner = "alphapapa";
+ repo = "yequake";
+ rev = "e1e62d802db8d6ca513ebeaadf808c8a3b748086";
+ sha256 = "1rpfqxr3735v0avbsqw01amxncd6wn4avky7k08k9p7n6kn3m4m2";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/194968f221b2f60042a3684e1ca3e1c18adbde8e/recipes/yequake";
+ sha256 = "1ps5r6k2903w9qbr3aszw3l3mgcg2zlnxlzbak99314if5k6aiak";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/yequake";
+ license = lib.licenses.free;
+ };
+ }) {};
yesql-ghosts = callPackage ({ cider
, dash
, fetchFromGitHub
@@ -102067,12 +108252,12 @@
melpaBuild {
pname = "yoficator";
ename = "yoficator";
- version = "20180129.1252";
+ version = "20181220.555";
src = fetchFromGitLab {
owner = "link2xt";
repo = "yoficator";
- rev = "e0dc076cb0d1999cb41585b5f36322681109fe86";
- sha256 = "1vq07ndxrdry26dx3ci4yz1a1qdcr20yznj62y2f0wkyccrai9y9";
+ rev = "95840df90063ba16a5f43c84de0746af6dfc01fc";
+ sha256 = "1k9fxvc4jwbxddakig5lnk5xy79g3f6wn5151wdfk9ynq0m2fyrf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5156f01564978718dd99ab3a54f19b6512de5c3c/recipes/yoficator";
@@ -102251,12 +108436,12 @@
melpaBuild {
pname = "zenburn-theme";
ename = "zenburn-theme";
- version = "20180531.902";
+ version = "20190317.1146";
src = fetchFromGitHub {
owner = "bbatsov";
repo = "zenburn-emacs";
- rev = "eea429cb2cbde8674b2a17ccc2bda94b54575c01";
- sha256 = "12nyjxvlvr1m7wrkfv7l4w16h8n66ssw2mvwcl4b7xbx4d45x1da";
+ rev = "0f14f780420602da823271fb2eb6251ff4daab9e";
+ sha256 = "0anv22dhqpsgvag8vbvgdfbs50054715rhfj9z4qkysxwzzysmjr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/zenburn-theme";
@@ -102319,6 +108504,32 @@
license = lib.licenses.free;
};
}) {};
+ zeno-theme = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "zeno-theme";
+ ename = "zeno-theme";
+ version = "20181026.1818";
+ src = fetchFromGitHub {
+ owner = "jbharat";
+ repo = "zeno-theme";
+ rev = "0914c4a5b1b9499e7f1ca5699b1c3ea2f4be3f1a";
+ sha256 = "1zl1ks7n35i9mn5w7ac3j15820fbgpbcmmysv25crvi4g9z94mqj";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9703a222f51dc283e9462cceb5afeb009f7401dc/recipes/zeno-theme";
+ sha256 = "0bqv1gdqlh7i48ckpgss6h9mmc9hpkqlb94aam0kkq2ga125gmwc";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/zeno-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
zephir-mode = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -102350,26 +108561,24 @@
zerodark-theme = callPackage ({ all-the-icons
, fetchFromGitHub
, fetchurl
- , flycheck
, lib
- , magit
, melpaBuild }:
melpaBuild {
pname = "zerodark-theme";
ename = "zerodark-theme";
- version = "20180528.26";
+ version = "20181218.49";
src = fetchFromGitHub {
owner = "NicolasPetton";
repo = "zerodark-theme";
- rev = "876cafc58a54c567456c4823f8c16edce94ba3ac";
- sha256 = "1g03d1sd1v91f2i66v4m02jy487r9dczif4rnrrwpi5j2iq0ycqx";
+ rev = "a697570aeb5b8c008961e0869f5e05740f43113d";
+ sha256 = "02i2vra853wb8nng37ybii70b3z6p10j5s3jnv9j2dlcnajbfvbr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d00b78ead693e844e35c760fe2c39b8ed6cb0d81/recipes/zerodark-theme";
sha256 = "1nqzswmnq6h0av4rivqm237h7ghp7asa2nvls7nz4ma467p9qhp9";
name = "recipe";
};
- packageRequires = [ all-the-icons flycheck magit ];
+ packageRequires = [ all-the-icons ];
meta = {
homepage = "https://melpa.org/#/zerodark-theme";
license = lib.licenses.free;
@@ -102383,16 +108592,16 @@
melpaBuild {
pname = "zig-mode";
ename = "zig-mode";
- version = "20180309.1458";
+ version = "20190108.1817";
src = fetchFromGitHub {
- owner = "zig-lang";
+ owner = "ziglang";
repo = "zig-mode";
- rev = "4f281e4748a4eae64efaa98d9dfd9b7c163fbed8";
- sha256 = "0pip0kgbxh4cf60j2kzgb9lvrm5vksg83mllk1pcs9mkbxdgjyww";
+ rev = "c2deea85dd65c3e73c2771c56a998cbdeb9ff717";
+ sha256 = "10k7i2fj3imbq09fkcgd4kjp7n1dn46119jqrd6kbx5inlkq1782";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5cba49d25ebbaa9240d5d87d0c7ca48d928b2e4b/recipes/zig-mode";
- sha256 = "005lsgnsaj8rjkzbhi23g99xy9zln4ggkad11xqmn4xa6g199wly";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/zig-mode";
+ sha256 = "1kg1x0l65nqqpzn5np41ya9khr1yqcg5ki7z3jw0g4wxdbz7lrbx";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -102426,6 +108635,33 @@
license = lib.licenses.free;
};
}) {};
+ zmq = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "zmq";
+ ename = "zmq";
+ version = "20190326.852";
+ src = fetchFromGitHub {
+ owner = "dzop";
+ repo = "emacs-zmq";
+ rev = "3965bec1ac232f0f7f35e7e91626e192688407b4";
+ sha256 = "02lcgq53gsg3li6fhga4njxfs5vb6xdh07r8z4cq9rmwfm0wilfq";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/72f4dcc2723de826bf1af7235ac6d9119a243c63/recipes/zmq";
+ sha256 = "14bbh00a58xgxyxl8zjxl57rf6351fnwsnk4cvvy341fvf86dklc";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/zmq";
+ license = lib.licenses.free;
+ };
+ }) {};
znc = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -102773,12 +109009,12 @@
melpaBuild {
pname = "zoutline";
ename = "zoutline";
- version = "20180314.1059";
+ version = "20190211.851";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "zoutline";
- rev = "b3ee0f0e0b916838c2d2c249beba74ffdb8d5699";
- sha256 = "0sd0017piw0dis6dhpq5dkqd3acisxqgipl7dj8gmc1vnswhdwr8";
+ rev = "2232139b64f9adabe81f48dd8d2f059e3f19edda";
+ sha256 = "1hq8m8n1zq63k04z9h1wmp69r8mv6vb9fzxgslwl683kid6srqwi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4a26341f491145938aee9b531cd861200bfa2f6d/recipes/zoutline";
@@ -102791,6 +109027,32 @@
license = lib.licenses.free;
};
}) {};
+ zpl-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "zpl-mode";
+ ename = "zpl-mode";
+ version = "20180906.359";
+ src = fetchFromGitHub {
+ owner = "ax487";
+ repo = "zpl-mode";
+ rev = "35e7e23c6baf31b5e65dd7405c8ab9b13c70637e";
+ sha256 = "147d7ylpk77zcsjim0my6cbyms28yd7mfaigmzm009jc1bn4r7f5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0bf11cd6ceb2633f968134d80f37d32f91c48227/recipes/zpl-mode";
+ sha256 = "0wqhwzanvc1gpnykfqzi02p9zx0c1n6gnavg5dv1mlmc8x0hr67s";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/zpl-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
zpresent = callPackage ({ dash
, emacs
, fetchhg
@@ -102819,6 +109081,32 @@
license = lib.licenses.free;
};
}) {};
+ zprint-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "zprint-mode";
+ ename = "zprint-mode";
+ version = "20181111.1145";
+ src = fetchFromGitHub {
+ owner = "pesterhazy";
+ repo = "zprint-mode.el";
+ rev = "6b979f6cb50d1f3da0ec44f39fd0dd893785ca44";
+ sha256 = "0fbm0klda8rbybp6rb1296czn8gc1c7bvcyd40qlg5jy1wxwjbd3";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/125f6358dd8d715b61b12de5d39215453e53ea10/recipes/zprint-mode";
+ sha256 = "07ziwnk1c620s7rp42fylpw5vgin0p7aapp3g8aif60vcb8g3m7y";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/zprint-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
ztree = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -102855,13 +109143,13 @@
version = "20170112.2205";
src = fetchFromGitHub {
owner = "philiparvidsson";
- repo = "emacs-zweilight-theme";
+ repo = "Zweilight-Theme-for-Emacs";
rev = "890f27c939d8a358c9ef0f402fc3314f475ec874";
sha256 = "0pl254c61405n6sgr01qj4z42vqdvbmf59nz55cl23l2q7kdbfdv";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/37422e259ada59122e1b4a31a4ae4dc00be797b9/recipes/zweilight-theme";
- sha256 = "1ykhnyiv5jvn34178mzg2cy6ynvc7jild6zwdqwr3qay87zffmjf";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/zweilight-theme";
+ sha256 = "1j8skn9hz1zkpdg7q0njv5b50cbvrixjjmkp43p58gx98q02p0kq";
name = "recipe";
};
packageRequires = [];
@@ -102905,12 +109193,12 @@
melpaBuild {
pname = "zzz-to-char";
ename = "zzz-to-char";
- version = "20171231.2219";
+ version = "20190216.257";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "zzz-to-char";
- rev = "8ddda49de3356d8fa0308d79b5d68272baf2c57b";
- sha256 = "17d8mmmgj2w4nm2nfg12g35i7zbp4bp47ix5ifqqm1zvwmbmzrqx";
+ rev = "9f08bf94c56a39a2b65f90b852da76dfa6ec2a6f";
+ sha256 = "1ln22xcqcs6hbxs99lmwhsjx1rbg7ksfpl17zfsvpnf5c28by3lm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7063cbc1f1501ce81552d7ef1d42d1309f547c42/recipes/zzz-to-char";
@@ -102923,4 +109211,4 @@
license = lib.licenses.free;
};
}) {};
- }
+ }
\ No newline at end of file
diff --git a/pkgs/applications/editors/emacs-modes/melpa-packages.nix b/pkgs/applications/editors/emacs-modes/melpa-packages.nix
index bec845b815ce7687fb250a5a1180a4d08491b9ac..6f15d33f78b6ea86365ce2b8d2ae119ce1dfc34d 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-packages.nix
@@ -59,8 +59,11 @@ self:
inherit (self.melpaPackages) easy-kill;
};
- # missing git
- egg = markBroken super.egg;
+ egg = super.egg.overrideAttrs (attrs: {
+ # searches for Git at build time
+ nativeBuildInputs =
+ (attrs.nativeBuildInputs or []) ++ [ external.git ];
+ });
# upstream issue: missing file header
elmine = markBroken super.elmine;
@@ -86,6 +89,12 @@ self:
# Expects bash to be at /bin/bash
flycheck-rtags = markBroken super.flycheck-rtags;
+ forge = super.forge.overrideAttrs (attrs: {
+ # searches for Git at build time
+ nativeBuildInputs =
+ (attrs.nativeBuildInputs or []) ++ [ external.git ];
+ });
+
# build timeout
graphene = markBroken super.graphene;
@@ -124,11 +133,7 @@ self:
maxframe = markBroken super.maxframe;
magit =
- (super.magit.override {
- # version of magit-popup needs to match magit
- # https://github.com/magit/magit/issues/3286
- inherit (self.melpaPackages) magit-popup;
- }).overrideAttrs (attrs: {
+ super.magit.overrideAttrs (attrs: {
# searches for Git at build time
nativeBuildInputs =
(attrs.nativeBuildInputs or []) ++ [ external.git ];
@@ -146,6 +151,30 @@ self:
(attrs.nativeBuildInputs or []) ++ [ external.git ];
});
+ magithub = super.magithub.overrideAttrs (attrs: {
+ # searches for Git at build time
+ nativeBuildInputs =
+ (attrs.nativeBuildInputs or []) ++ [ external.git ];
+ });
+
+ magit-svn = super.magit-svn.overrideAttrs (attrs: {
+ # searches for Git at build time
+ nativeBuildInputs =
+ (attrs.nativeBuildInputs or []) ++ [ external.git ];
+ });
+
+ magit-todos = super.magit-todos.overrideAttrs (attrs: {
+ # searches for Git at build time
+ nativeBuildInputs =
+ (attrs.nativeBuildInputs or []) ++ [ external.git ];
+ });
+
+ magit-filenotify = super.magit-filenotify.overrideAttrs (attrs: {
+ # searches for Git at build time
+ nativeBuildInputs =
+ (attrs.nativeBuildInputs or []) ++ [ external.git ];
+ });
+
# missing OCaml
merlin = markBroken super.merlin;
@@ -180,6 +209,13 @@ self:
# upstream issue: missing file header
qiita = markBroken super.qiita;
+ racer = super.racer.overrideAttrs (attrs: {
+ postPatch = attrs.postPatch or "" + ''
+ substituteInPlace racer.el \
+ --replace /usr/local/src/rust/src ${external.rustPlatform.rustcSrc}
+ '';
+ });
+
# upstream issue: missing file footer
seoul256-theme = markBroken super.seoul256-theme;
diff --git a/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix b/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix
index df0ec7fcb12e0a8e50acf91381486e59355485d0..e1f83e9cefad83f3e63c7035d6fbdfb40e8687ec 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-stable-generated.nix
@@ -33,12 +33,12 @@
melpaBuild {
pname = "a";
ename = "a";
- version = "0.1.0.-3.4";
+ version = "0.1.1";
src = fetchFromGitHub {
owner = "plexus";
repo = "a.el";
- rev = "3af0122abac723f0d3dc21ee50eeb81afa26d361";
- sha256 = "0grwpy4ssmn2m8aihfkxb7ifl7ql2hgicw16wzl0crpy5fndh1mp";
+ rev = "8583685c32069a73ccae0100e990e7b39c901737";
+ sha256 = "00v9w6qg3bkwdhypq0ssf0phdh0f4bcq59c20lngd6vhk0204dqi";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a226f1d81cd1ae81b91c1102fbe40aac2eddcaa8/recipes/a";
@@ -103,6 +103,35 @@
license = lib.licenses.free;
};
}) {};
+ abs-mode = callPackage ({ emacs
+ , erlang
+ , fetchFromGitHub
+ , fetchurl
+ , flymake ? null
+ , lib
+ , maude-mode
+ , melpaBuild }:
+ melpaBuild {
+ pname = "abs-mode";
+ ename = "abs-mode";
+ version = "1.5";
+ src = fetchFromGitHub {
+ owner = "abstools";
+ repo = "abs-mode";
+ rev = "a9a512992f681669dc59fe9ca86f12b9688b5454";
+ sha256 = "0v6d7cxnj4mil7c7y4m1csiznl6rmzxg9snwhhv6wdqfw112kn8j";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aabccc4061e7764069796e12ee9688b67651cf70/recipes/abs-mode";
+ sha256 = "148y99iaxcnjaacw017chwq0sq05ywgy5jx1lhp9ly7innrl9i1k";
+ name = "recipe";
+ };
+ packageRequires = [ emacs erlang flymake maude-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/abs-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
abyss-theme = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -442,14 +471,14 @@
ename = "ac-html";
version = "0.31";
src = fetchFromGitHub {
- owner = "cheunghy";
+ owner = "zhangkaiyulw";
repo = "ac-html";
rev = "415a78c3b84855b0c0411832d21a0fb63239b184";
sha256 = "19v9515ixg22m7h7riix8w3vyhzax1m2pbwdirp59v532xn9b0cz";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ce370d60b2f4dd0570b631f6ca92a221e1fe2de6/recipes/ac-html";
- sha256 = "0qf8f75b6dvy844dq8vh8d9c6k599rh1ynjcif9bwvdpf6pxwvqa";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/ac-html";
+ sha256 = "1vidmvylwwvraf8k63dvxv47ism49n6pp0f38l5rl4iaznhkdr84";
name = "recipe";
};
packageRequires = [ auto-complete web-completion-data ];
@@ -628,7 +657,7 @@
melpaBuild {
pname = "ac-php";
ename = "ac-php";
- version = "2.0.5";
+ version = "2.0.7";
src = fetchFromGitHub {
owner = "xcwen";
repo = "ac-php";
@@ -660,12 +689,12 @@
melpaBuild {
pname = "ac-php-core";
ename = "ac-php-core";
- version = "2.0.5";
+ version = "2.0.7";
src = fetchFromGitHub {
owner = "xcwen";
repo = "ac-php";
- rev = "c815709f46b87cd3677f0b29eecae4973709645a";
- sha256 = "04rbq9q86am6fm4z78pm7lkgjr2p01iq41yfd0qmas5bnvfbzsvk";
+ rev = "e270e65338d5e57d0df4e167d39cd7c11537f385";
+ sha256 = "16ahvzqlbla7qid7xq0s6g1s8pfxxixvjq7vh0v2w5c1rvqc2vb7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/ac-php-core";
@@ -715,12 +744,12 @@
melpaBuild {
pname = "ac-rtags";
ename = "ac-rtags";
- version = "2.18";
+ version = "2.31";
src = fetchFromGitHub {
owner = "Andersbakken";
repo = "rtags";
- rev = "7e6b6f21935eedbe4678ba91c5531ac162b51a5a";
- sha256 = "12629d1s8rplhjh17n3bmgnkpscq4gljgyl84j8qyhh40dwq1qk0";
+ rev = "5e51faa79016b3302d8037e13329a4320de524f5";
+ sha256 = "0qw6l96k2hxv3jvjw3nvas7m73jqj7mcchawzss8by92l61n0cx7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/ac-rtags";
@@ -1029,30 +1058,6 @@
license = lib.licenses.free;
};
}) {};
- ack-menu = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "ack-menu";
- version = "0.2.3";
- src = fetchFromGitHub {
- owner = "chumpage";
- repo = "ack-menu";
- rev = "37e9979eb65e3803fc00829377397b4e6f2bd059";
- sha256 = "0hib4a8385q2czi1yqs0hwnva2xi7kw0bdfnrgha1hrl30rilp2f";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/8ff331ed45e5b7697e4862e723408602ecc98bc7/recipes/ack-menu";
- sha256 = "1d2kw04ndxji2qjcm1b65qnxpp08zx8gbia8bl6x6mnjb2isc2d9";
- name = "ack-menu";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/ack-menu";
- license = lib.licenses.free;
- };
- }) {};
actionscript-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -1078,6 +1083,34 @@
license = lib.licenses.free;
};
}) {};
+ activity-watch-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , projectile
+ , request }:
+ melpaBuild {
+ pname = "activity-watch-mode";
+ ename = "activity-watch-mode";
+ version = "1.0.2";
+ src = fetchFromGitHub {
+ owner = "pauldub";
+ repo = "activity-watch-mode";
+ rev = "27a0841b32dfd2b691a1dcf3a4a50d74660676b1";
+ sha256 = "1hfmll3g33529pshzvh2gxqr0h53p1v68wq0zlq2h2wfml89bzr9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9780c413da8001651191fb8f9708fe9691d714cf/recipes/activity-watch-mode";
+ sha256 = "0k0ai6658gb43c4ylrq66zqzrfh6ksvkf0kxj2qx8a5a1aw9bd4d";
+ name = "recipe";
+ };
+ packageRequires = [ emacs projectile request ];
+ meta = {
+ homepage = "https://melpa.org/#/activity-watch-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
adafruit-wisdom = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -1302,8 +1335,8 @@
sha256 = "02nkcin0piv7s93c9plhy361dbqr78m0gd19myc7qb7gnm36kzpn";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d8674b54ad5e17d1da1e499c7d8113f8acd8fd5d/recipes/ahk-mode";
- sha256 = "066l4hsb49wbyv381qgn9k4hn8gxlzi20h3qaim9grngjj5ljbni";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/ahk-mode";
+ sha256 = "0jx5vhlfw5r6l4125bjjbf7dl1589ac6j419swx26k3p8p58d93r";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -1455,12 +1488,12 @@
melpaBuild {
pname = "alect-themes";
ename = "alect-themes";
- version = "0.8";
+ version = "0.9";
src = fetchFromGitHub {
owner = "alezost";
repo = "alect-themes";
- rev = "1812abbe0079d1075525d9fb2da6fcfec7db3766";
- sha256 = "0sl2njnhm37cya06y39ls8p3zwpjwyv1pd7w3yfk5frz24vaxlcq";
+ rev = "a24065dc780738e914140d617bfe119c889d9c78";
+ sha256 = "0nffxpdm0sa7bynwi0rmlwpc4qmvbda5ankhzz7fmk4ap9fkjxv9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/84c25a290ae4bcc4674434c83c66ae128e4c4282/recipes/alect-themes";
@@ -1473,7 +1506,8 @@
license = lib.licenses.free;
};
}) {};
- alert = callPackage ({ fetchFromGitHub
+ alert = callPackage ({ cl-lib ? null
+ , fetchFromGitHub
, fetchurl
, gntp
, lib
@@ -1482,19 +1516,19 @@
melpaBuild {
pname = "alert";
ename = "alert";
- version = "1.2";
+ version = "1.3";
src = fetchFromGitHub {
owner = "jwiegley";
repo = "alert";
- rev = "b301478e34a5c8bd27c17fc7605e6dd576e97935";
- sha256 = "1vpc3q40m6dcrslki4bg725j4kv6c6xfxwjjl1ilg7la49fwwf26";
+ rev = "9f329be87820474925f29b52a1131084c8ea95b9";
+ sha256 = "0lc0p5cl4hfrzw1z2ghb11k1lvljn5m08jw5fmgwgxv667kwh49r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/113953825ac4ff98d90a5375eb48d8b7bfa224e7/recipes/alert";
sha256 = "0x3cvczq09jvshz435jw2fjm69457x2wxdvvbbjq46nfnybhi118";
name = "recipe";
};
- packageRequires = [ gntp log4e ];
+ packageRequires = [ cl-lib gntp log4e ];
meta = {
homepage = "https://melpa.org/#/alert";
license = lib.licenses.free;
@@ -1686,12 +1720,12 @@
melpaBuild {
pname = "android-mode";
ename = "android-mode";
- version = "0.5.0";
+ version = "0.5.1";
src = fetchFromGitHub {
owner = "remvee";
repo = "android-mode";
- rev = "f274da87429617b0b9c5889d46b36de64d982da4";
- sha256 = "17m4hp2qb54widwadv23amc1lasnbwzh2ipc6180fnajg8zcbvyw";
+ rev = "f8cabafaa266b56fcf4b3c6942b3ae062735251a";
+ sha256 = "0npx54w565mkxkgkpv02dgmfc44i1256p0w331pf3nfxq145xh27";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/77633aa340803a433570327943fbe31b396f4355/recipes/android-mode";
@@ -1713,14 +1747,14 @@
ename = "angular-mode";
version = "1.0";
src = fetchFromGitHub {
- owner = "omouse";
+ owner = "rudolfolah";
repo = "angularjs-mode";
rev = "026558260eb2890c72df6a59ae8762669772282b";
sha256 = "0ljwaccb0jrp7zrnkp0383185vg3r9pf324al72d445syff5pa6y";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7b120c7f97e8d313387d2e9d9210e7fcdd10523b/recipes/angular-mode";
- sha256 = "1bwfmjldnxki0lqi3ys6r2a3nlhbwm1dibsg2dvzirq8qql02w1i";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/angular-mode";
+ sha256 = "0pq4lyhppzi806n1k07n0gdhr8z8z71ri12my0pl81rl5j2z69l2";
name = "recipe";
};
packageRequires = [];
@@ -1756,6 +1790,36 @@
license = lib.licenses.free;
};
}) {};
+ anki-mode = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , markdown-mode
+ , melpaBuild
+ , request
+ , s }:
+ melpaBuild {
+ pname = "anki-mode";
+ ename = "anki-mode";
+ version = "0.1";
+ src = fetchFromGitHub {
+ owner = "davidshepherd7";
+ repo = "anki-mode";
+ rev = "06dd1bd49b7a2b43cf9b744dd5caf67809f39d74";
+ sha256 = "0ryyyihvvrcipj2bkx24cx1ibgcymnsbn79ibvmhb3wbad3hr072";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fc02d06e7c7e9230e4b082923b889e1e83676263/recipes/anki-mode";
+ sha256 = "1d429ws6kmswcyk0dnb303z01kq475n60a520hj258x23vp8802q";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs markdown-mode request s ];
+ meta = {
+ homepage = "https://melpa.org/#/anki-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
annotate = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -1842,12 +1906,12 @@
melpaBuild {
pname = "ansible";
ename = "ansible";
- version = "0.1.0";
+ version = "0.2.0";
src = fetchFromGitHub {
owner = "k1LoW";
repo = "emacs-ansible";
- rev = "e9b9431738de4808d8ef70871069f68885cc0d98";
- sha256 = "03d240jngxw51ybrsjw8kdxygrr0ymdckzwga2jr1bqf26v559j2";
+ rev = "8a097176d6772b6667254dbbe19c5fb64527bf5d";
+ sha256 = "1m2cb88jb1wxa9rydkbn5llx2gql453l87b4cgzsjllha6j1488k";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8e45bf58b980ff542a5e887707a6361eb5ac0492/recipes/ansible";
@@ -2141,6 +2205,32 @@
license = lib.licenses.free;
};
}) {};
+ archive-rpm = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "archive-rpm";
+ ename = "archive-rpm";
+ version = "0.1";
+ src = fetchFromGitHub {
+ owner = "legoscia";
+ repo = "archive-rpm";
+ rev = "59f83caebbd2f92fd634f6968e6d17b50ffa3dc7";
+ sha256 = "11ssqaax4jl7r3z5agzmc74sjsfvl0m3xvp015ncqzpzysla47g3";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e5f5653e62afdc022eac30bda3d21bd2d2625d2e/recipes/archive-rpm";
+ sha256 = "0s53zbn71lb008gw3f0b5w4q0pw0vgiqbffgnyib24sh03ijl7z7";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/archive-rpm";
+ license = lib.licenses.free;
+ };
+ }) {};
artbollocks-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -2227,12 +2317,12 @@
melpaBuild {
pname = "assess";
ename = "assess";
- version = "0.4";
+ version = "0.5";
src = fetchFromGitHub {
owner = "phillord";
repo = "assess";
- rev = "87118057b3ae0e6542fa5e22050eb44d6efe8baa";
- sha256 = "0cilb32zr38x9kfzfyr1ciag5pzbgp1dk62r7lhn8dxc2ip6f11j";
+ rev = "7a3189a5870fb20d179ff3ea761707a046814966";
+ sha256 = "0qif6q4j0i5p2izj9p7sv1j2s6a95zklswfx8x2shv22dkphznkl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6f917a34506193f2674b195569dfd3c13ba62c1d/recipes/assess";
@@ -2323,6 +2413,36 @@
license = lib.licenses.free;
};
}) {};
+ attrap = callPackage ({ dash
+ , emacs
+ , f
+ , fetchFromGitHub
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "attrap";
+ ename = "attrap";
+ version = "1.0";
+ src = fetchFromGitHub {
+ owner = "jyp";
+ repo = "attrap";
+ rev = "a971acb251e343d4c6b0253f69dcce0c2cee0fac";
+ sha256 = "0p93y151730ga7v9xa5gkp306s32qw53086i829fcbxf83c2wslv";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b7420eca80a8c1776d68b1f121511cc265cc70dc/recipes/attrap";
+ sha256 = "1gxnrlsn9xcnnx0nhjxnhrz9bdpk2kpzjhj8jhjmwws9y361fimh";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs f flycheck s ];
+ meta = {
+ homepage = "https://melpa.org/#/attrap";
+ license = lib.licenses.free;
+ };
+ }) {};
auctex-latexmk = callPackage ({ auctex
, fetchFromGitHub
, fetchurl
@@ -2410,12 +2530,12 @@
melpaBuild {
pname = "auth-source-pass";
ename = "auth-source-pass";
- version = "4.0.1";
+ version = "4.0.2";
src = fetchFromGitHub {
owner = "DamienCassou";
repo = "auth-password-store";
- rev = "5690092e40c790384692d8e8da3451e6878d8c17";
- sha256 = "1dv202z8briifd4aqn8yvn4kd6zi1cabb2p86qcjj40lzkgn6w3p";
+ rev = "5822a35fa8cb74b8fc34600e82dbba1d341ce745";
+ sha256 = "0qkyqnfx596s0ycavm4ri0nbzmy2c6g7ifgql798p0pwwjgbsjyy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5e268441634a6e58a00e577d6e2292fa226c11b8/recipes/auth-source-pass";
@@ -2437,12 +2557,12 @@
melpaBuild {
pname = "auto-compile";
ename = "auto-compile";
- version = "1.4.3";
+ version = "1.5.1";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "auto-compile";
- rev = "6ce4255ab9a0b010ef8414c5bd9a6d6d9eea012f";
- sha256 = "013vw4sgw6hpz7kskilndv7i7ik40asrkgicghjbygwk0lj5ran3";
+ rev = "e6bbb1371324c8884af3b201e9adbc9296eb2ff4";
+ sha256 = "1jyn7yvbvk7cydy3pzwqlb0yxf5cxdiipa1gnigdk9wdbj68wjjk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/57a2fb9524df3fdfdc54c403112e12bd70888b23/recipes/auto-compile";
@@ -2830,14 +2950,14 @@
ename = "autopair";
version = "0.6.1";
src = fetchFromGitHub {
- owner = "capitaomorte";
+ owner = "joaotavora";
repo = "autopair";
rev = "2d1eb81d12f71248ad305e70cceddf08d4fe2b39";
sha256 = "0g6kd1r0wizamw26bhp5jkvpsd98rcybkfchc622b9v5b89a07nq";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/autopair";
- sha256 = "161qhk8rc1ldj9hpg0k9phka0gflz9vny7gc8rnylk90p6asmr28";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4150455d424326667390f72f6edd22b274d9fa01/recipes/autopair";
+ sha256 = "0l2ypsj3dkasm0lj9jmnaqjs3rv97ldfw8cmayv77mzfd6lhjmh3";
name = "recipe";
};
packageRequires = [ cl-lib ];
@@ -2858,14 +2978,14 @@
ename = "autothemer";
version = "0.2.2";
src = fetchFromGitHub {
- owner = "sebastiansturm";
+ owner = "jasonm23";
repo = "autothemer";
rev = "8c467f57571c154129d660dfccebd151c998f2d9";
sha256 = "0cd2pqh6k32sjidkcd8682y4l6mx52xw4a05f38kk8nsrk28m74k";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/3d7d7beed6ba10d7aa6a36328a696ba2d0d21dc2/recipes/autothemer";
- sha256 = "1lcyqfzx7qpkr3ajk0zi0mn32yvcwn06f61vhghn9c66xambsr7f";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9a15a17a5aa78aed72958b2a1bde53f0c0ab5be7/recipes/autothemer";
+ sha256 = "0wahmbihyr3dx4lgiwi7041gvmmqlzlv7ss25fw90srs9n2h05gj";
name = "recipe";
};
packageRequires = [ cl-lib dash emacs ];
@@ -3043,6 +3163,33 @@
license = lib.licenses.free;
};
}) {};
+ backline = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , outline-minor-faces }:
+ melpaBuild {
+ pname = "backline";
+ ename = "backline";
+ version = "0.1.3";
+ src = fetchFromGitHub {
+ owner = "tarsius";
+ repo = "backline";
+ rev = "960deaef1d87658f79a0bd95c85946371d211590";
+ sha256 = "017w7qa74laq04h359znn9kjsqpl91gypsqsldpnlrb25jw0z0gl";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f252e45e8bd6e8af1267755d108f378a974ddaf1/recipes/backline";
+ sha256 = "0y5y048s6r3mcgjfxpmwarnhn6lh00j9cla6qjsd83f79hw5cq4y";
+ name = "recipe";
+ };
+ packageRequires = [ emacs outline-minor-faces ];
+ meta = {
+ homepage = "https://melpa.org/#/backline";
+ license = lib.licenses.free;
+ };
+ }) {};
badwolf-theme = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -3077,12 +3224,12 @@
melpaBuild {
pname = "banner-comment";
ename = "banner-comment";
- version = "2.6.2";
+ version = "2.7";
src = fetchFromGitHub {
owner = "WJCFerguson";
repo = "banner-comment";
- rev = "fedbb071d043106a30e378ee58b96e349e8068ed";
- sha256 = "1d6yp96rv6p9f3b8ddrpzb3ng2v0vlqb1akcpd7dria6y6aai8l4";
+ rev = "ac52f6b24e590787a385c08cc3751d6f2ddca815";
+ sha256 = "1630py97ldh3w71s26jbcxk58529g03sl0padnzqj0rbqy82yw8w";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4bb69f15cb6be38a86abf4d15450a29c9a819068/recipes/banner-comment";
@@ -3171,31 +3318,57 @@
license = lib.licenses.free;
};
}) {};
- bbcode-mode = callPackage ({ fetchFromGitHub
+ bbcode-mode = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "bbcode-mode";
ename = "bbcode-mode";
- version = "2.1.0";
+ version = "2.3.0";
src = fetchFromGitHub {
owner = "lassik";
- repo = "bbcode-mode";
- rev = "73c56a40301c8b017d3e64c08dccc80d1dc47e59";
- sha256 = "0g0dxk33pz18awv7ncv64c2a4lmdx9sigppkvq2mb9za47azk8dh";
+ repo = "emacs-bbcode-mode";
+ rev = "e16619c80ea21154b4a4ccc2e13d0077e97c9caf";
+ sha256 = "0l7jygskxmbckf3xhbjzgwzkrj2m6z1n3i2l7qc9ii4i3mhpx0ai";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1ef095d23cc043f5d14a9deea788ed71d90c586c/recipes/bbcode-mode";
- sha256 = "1kfxzp0916gdphp4dkk4xbramsbqmg6mazvfqni86mra41rdq6sb";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/57c307eecfc0fccfdc525ce6ff63a69ff3b78874/recipes/bbcode-mode";
+ sha256 = "0rrhvwb4hrg2sbjbpgdghcgrc6gwpq3vax28r5mlacn5w5x31qjb";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://melpa.org/#/bbcode-mode";
license = lib.licenses.free;
};
}) {};
+ bbdb = callPackage ({ fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "bbdb";
+ ename = "bbdb";
+ version = "3.2";
+ src = fetchgit {
+ url = "https://git.savannah.nongnu.org/git/bbdb.git";
+ rev = "307bad59bc3debf250a8617ab699b50a9402c0ae";
+ sha256 = "1i01yyr6cya2dmdpydam72mnvxj4p3mj7pbnw19lrjlfzahmajir";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/bbdb";
+ sha256 = "0mm8n3dbi8lap3pjr97n2f675iy7sg476sm1vxygbc3j67rq1zb2";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/bbdb";
+ license = lib.licenses.free;
+ };
+ }) {};
bbdb- = callPackage ({ bbdb
, fetchFromGitHub
, fetchurl
@@ -3454,6 +3627,33 @@
license = lib.licenses.free;
};
}) {};
+ bibclean-format = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , reformatter }:
+ melpaBuild {
+ pname = "bibclean-format";
+ ename = "bibclean-format";
+ version = "0.0.2";
+ src = fetchFromGitHub {
+ owner = "peterwvj";
+ repo = "bibclean-format";
+ rev = "b4003950a925d1c659bc359ab5e88e4441775d77";
+ sha256 = "1x5hbs9j4ms93p080267kjyqpk81il3x7q87awf6qzz5xhc20d3b";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a96cc66b22e7ec145ffa3031089a3d60e77b8c42/recipes/bibclean-format";
+ sha256 = "1lvi1r612jb6w0j6mbq93gk9f7hmb1pn42lfs47gvf0prmjf1zyb";
+ name = "recipe";
+ };
+ packageRequires = [ emacs reformatter ];
+ meta = {
+ homepage = "https://melpa.org/#/bibclean-format";
+ license = lib.licenses.free;
+ };
+ }) {};
biblio = callPackage ({ biblio-core
, emacs
, fetchFromGitHub
@@ -3518,12 +3718,12 @@
melpaBuild {
pname = "bicycle";
ename = "bicycle";
- version = "0.1.0";
+ version = "0.2.0";
src = fetchFromGitHub {
owner = "tarsius";
repo = "bicycle";
- rev = "30c451e6c6910c5aa5ed2b189679ca5e3bc0d6f7";
- sha256 = "1kyiyq79shwkycgl3373pwgqbg1aqxsai44yl9vw17s37hhff70n";
+ rev = "42a5db3514019d539500a67f913411f5533a1eb3";
+ sha256 = "1nanf0dp7kqzs2mc8gzr9qzn9v6q86sdr35pzysdl41xqydxpsrd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ec9b4138ffaf81b556e01b85ce4b112e77909260/recipes/bicycle";
@@ -3544,12 +3744,12 @@
melpaBuild {
pname = "bifocal";
ename = "bifocal";
- version = "0.0.3";
+ version = "0.0.5";
src = fetchFromGitHub {
owner = "riscy";
repo = "bifocal-mode";
- rev = "a8b222b069a6bd64531b4780905989797bad8abe";
- sha256 = "0c6vzh35lj3pg9wd4v2fy6xdmcg9kq3n5br6rp4lx257gxglzpwh";
+ rev = "add30c678488cec04976a85ba8cda20805938a01";
+ sha256 = "01j8s6c3qm4scxy1dk07l41y0n55gz83zzfi254kc2vyx02vqg7f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/79e71995bd8452bad2e717884f148ec74c9735fc/recipes/bifocal";
@@ -3588,6 +3788,33 @@
license = lib.licenses.free;
};
}) {};
+ bind-chord = callPackage ({ bind-key
+ , fetchFromGitHub
+ , fetchurl
+ , key-chord
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "bind-chord";
+ ename = "bind-chord";
+ version = "2.4";
+ src = fetchFromGitHub {
+ owner = "jwiegley";
+ repo = "use-package";
+ rev = "33127b706e66fb20dfa40d94eb553dd7d6ef9197";
+ sha256 = "1iz7ibdvf3bnfkwfhakigvrdzg69qgx3z7qayq54spx3rpxf7x0b";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6240afa625290187785e4b7535ee7b0d7aad8969/recipes/bind-chord";
+ sha256 = "1hyhs3iypyg5730a20axcfzrrglm4nbgdz8x1ifkaa0iy5zc9hb0";
+ name = "recipe";
+ };
+ packageRequires = [ bind-key key-chord ];
+ meta = {
+ homepage = "https://melpa.org/#/bind-chord";
+ license = lib.licenses.free;
+ };
+ }) {};
bind-key = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -3595,12 +3822,12 @@
melpaBuild {
pname = "bind-key";
ename = "bind-key";
- version = "2.3";
+ version = "2.4";
src = fetchFromGitHub {
owner = "jwiegley";
repo = "use-package";
- rev = "d867b0370e4e311c71665ccaa418374a15097461";
- sha256 = "193a9x1d6c8hprinrls2mpplrab2syn64zjyfgxwzisjqgik02dy";
+ rev = "c03d153e5882109e24c016d3afa6940af673ede6";
+ sha256 = "0zyl8dfg8acf99966sp8i5iky1mvn2h016viqk48s0hjv9va0wii";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d39d33af6b6c9af9fe49bda319ea05c711a1b16e/recipes/bind-key";
@@ -3696,12 +3923,12 @@
melpaBuild {
pname = "bm";
ename = "bm";
- version = "201807";
+ version = "201808";
src = fetchFromGitHub {
owner = "joodland";
repo = "bm";
- rev = "b1bc10b1e9f01c48a7eedb9b08a22d05e7baed3c";
- sha256 = "16kfzi6chf28jyrsmz0jba3qq3mvxqambsdh09vr76ivmwbv48gh";
+ rev = "d224b6cd8341db4c2e11263c346dd44fb37fcd88";
+ sha256 = "18xwm1xj436bwa2l3dkfx6hlj19y6f0xqd3jbd06j4g3idpryqma";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/bm";
@@ -3714,6 +3941,33 @@
license = lib.licenses.free;
};
}) {};
+ bnf-mode = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "bnf-mode";
+ ename = "bnf-mode";
+ version = "0.3.2";
+ src = fetchFromGitHub {
+ owner = "sergeyklay";
+ repo = "bnf-mode";
+ rev = "ac004f60012d648bf8c0e87d841935461279587a";
+ sha256 = "0v9lc2kr8x8r59z7vlv89l7slcq3m05k9abd5ds46v4xv15bh2jp";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/217bde4ccd2d68dc14b1bfee22fbc99cd4109952/recipes/bnf-mode";
+ sha256 = "027pn2lvqsxyj9ii5svql2sw4xm9wrd9zy7ms8vayv737w5xd3n1";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/bnf-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
bnfc = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -3846,26 +4100,30 @@
license = lib.licenses.free;
};
}) {};
- borg = callPackage ({ fetchFromGitHub
+ borg = callPackage ({ dash
+ , emacs
+ , epkg
+ , fetchFromGitHub
, fetchurl
, lib
+ , magit
, melpaBuild }:
melpaBuild {
pname = "borg";
ename = "borg";
- version = "2.0.0";
+ version = "3.1.0";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "borg";
- rev = "34eac585d6829e17ce59b09fe6ad5d675302c096";
- sha256 = "1q7k2c7pxcywg6xjk8awg73skyw59a6w4aa9sxbsz9vdj2zn04k9";
+ rev = "4ffec24967ba805be2b2f1750e7cfffb85e26a1f";
+ sha256 = "0hrl6sg6p73d8f7xkpr3z30k4w5f5c52ygcd4db8zrh8lgnvxb9q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/878ab90d444f3a1fd2c9f9068ca7b477e218f1da/recipes/borg";
sha256 = "0gn4hf7hn190gl0kg59nr6jzjnb39c0hy9b3brrsfld9hyxga9jr";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ dash emacs epkg magit ];
meta = {
homepage = "https://melpa.org/#/borg";
license = lib.licenses.free;
@@ -4191,12 +4449,12 @@
melpaBuild {
pname = "bui";
ename = "bui";
- version = "1.1.0";
+ version = "1.2.1";
src = fetchFromGitHub {
owner = "alezost";
repo = "bui.el";
- rev = "3bf8af2f339d2483203eda2c97a61b8771c3269d";
- sha256 = "1qx7cdm7jd15rf1silwj1yh0mg5fhldfi001k1msi50nyni90c82";
+ rev = "9162c24b75799857d54838d961c60776ffcd657e";
+ sha256 = "0sszdl4kvqbihdh8d7mybpp0d8yw2p3gyiipjcxz9xhvvmw3ww4x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/38b7c9345de75a707b4a73e8bb8e2f213e4fd739/recipes/bui";
@@ -4209,6 +4467,34 @@
license = lib.licenses.free;
};
}) {};
+ build-farm = callPackage ({ bui
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , magit-popup
+ , melpaBuild }:
+ melpaBuild {
+ pname = "build-farm";
+ ename = "build-farm";
+ version = "0.2.2";
+ src = fetchFromGitHub {
+ owner = "alezost";
+ repo = "build-farm.el";
+ rev = "5c268a3c235ace0d79ef1ec82c440120317e06f5";
+ sha256 = "0i0bwbav5861j2y15j9nd5m9rdqg9q97zgcbld8pivr9nyxy63lz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/bc97bf56ea50788ecbbbb1f46e188e8487370936/recipes/build-farm";
+ sha256 = "0dbq3sc1x0cj06hv3mlk0zw0cijdwjszicylv14m1wahal33xjrw";
+ name = "recipe";
+ };
+ packageRequires = [ bui emacs magit-popup ];
+ meta = {
+ homepage = "https://melpa.org/#/build-farm";
+ license = lib.licenses.free;
+ };
+ }) {};
build-status = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -4245,14 +4531,14 @@
ename = "bundler";
version = "1.1.0";
src = fetchFromGitHub {
- owner = "tobiassvn";
+ owner = "endofunky";
repo = "bundler.el";
rev = "4cb4fafe092d587cc9e58ff61cf900fb7f409adf";
sha256 = "18d74nwcpk1i8adxzfwz1lgqqcxsc4wkrb490v64pph79dxsi80h";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ade7d0f0f0e553b48634e60ecaf7b91d0776d5f0/recipes/bundler";
- sha256 = "0i5ybc6i8ackxpaa75kwrg44zdq3jkvy48c42vaaafpddjwjnsy4";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/bundler";
+ sha256 = "1jvcrxwsf9yd5vhirfdmjl52n6hffr1vikd386qbn32vgqcsba7a";
name = "recipe";
};
packageRequires = [ inf-ruby ];
@@ -4268,12 +4554,12 @@
melpaBuild {
pname = "bury-successful-compilation";
ename = "bury-successful-compilation";
- version = "0.1";
+ version = "0.1.2";
src = fetchFromGitHub {
owner = "EricCrosson";
repo = "bury-successful-compilation";
- rev = "7b16dc71b43914928cc16da674e69d7af975238a";
- sha256 = "08ny1iycsgpal99g180w9yvk6ql8qn2kkc9xk9lmfv5p1wqm3l4w";
+ rev = "064817b44a431476305099301311def0a2d9d543";
+ sha256 = "13ilv4zbzwb5rz0gf69z8pvxazvwlmb5shkb055l42ksxslp49hh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f66e2e23c7a1fa0ce6fa8a0e814242b7c46c299c/recipes/bury-successful-compilation";
@@ -4321,12 +4607,12 @@
melpaBuild {
pname = "buttercup";
ename = "buttercup";
- version = "1.12";
+ version = "1.16";
src = fetchFromGitHub {
owner = "jorgenschaefer";
repo = "emacs-buttercup";
- rev = "39d625ce53bb1e1b9b03d9c9c70aa81e94fcc66a";
- sha256 = "1y97af0kl0yiirnajn44jcz865acndjwkr3zhpf65lm0bbaxfp2a";
+ rev = "810fa6fb8dab06610dbf2b5ccbc64b4d0ecc7485";
+ sha256 = "0dckgcyzsav6ld78bcyrrygy1cz1jvqgav6vy8f6klpmk3r8xrl1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d4b187cb5b3cc5b546bfa6b94b6792e6363242d1/recipes/buttercup";
@@ -4339,6 +4625,32 @@
license = lib.licenses.free;
};
}) {};
+ buttercup-junit = callPackage ({ buttercup
+ , emacs
+ , fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "buttercup-junit";
+ ename = "buttercup-junit";
+ version = "1.1.0";
+ src = fetchgit {
+ url = "https://bitbucket.org/olanilsson/buttercup-junit";
+ rev = "1b3214d3d74d998c475f54035643231d8bcffbee";
+ sha256 = "120ayxx7f8vdmjwdvycjpkc9acb03z1l0jf2ndigyg64jb8q7a4g";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f1030960afe994da338d78607233319b3f7f0c8b/recipes/buttercup-junit";
+ sha256 = "1v848vbwxqrw9sdsvjaggkspavmbwkmqshf321m4n8srvi51383w";
+ name = "recipe";
+ };
+ packageRequires = [ buttercup emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/buttercup-junit";
+ license = lib.licenses.free;
+ };
+ }) {};
button-lock = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -4390,6 +4702,32 @@
license = lib.licenses.free;
};
}) {};
+ caddyfile-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "caddyfile-mode";
+ ename = "caddyfile-mode";
+ version = "0.2";
+ src = fetchFromGitHub {
+ owner = "Schnouki";
+ repo = "caddyfile-mode";
+ rev = "b0371063adc18d3cbd6dd673ea4fe39d27825d1b";
+ sha256 = "1w0jfh8z9q2b0av66gckmb9d9dvx0wqmjf54avgynlmh3a7gv7lz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ec771222056dcb6c67e133cd6aa6b4e4d03ac264/recipes/caddyfile-mode";
+ sha256 = "12d57xcpp78lmcr95nfp0r9g7lkw8kfxf9c3rc7g53kh5xaaj4i2";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/caddyfile-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
cake-inflector = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -4423,12 +4761,12 @@
melpaBuild {
pname = "calendar-norway";
ename = "calendar-norway";
- version = "0.9.3";
+ version = "0.9.4";
src = fetchFromGitHub {
owner = "unhammer";
repo = "calendar-norway.el";
- rev = "8501b2ee515e995f345365391b03f44c812cabdf";
- sha256 = "0lch835rq2rqyh0vyi75dhyl7hm6bv27f2z753wggh0jyg6qxi7a";
+ rev = "8d1fda8268caa74ba5e712c7675ed3c34e46e2d4";
+ sha256 = "011c8pz1g805a7c3djai39yasd2idfp4c2dcrvf7kbls27ayrl6d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c5d01230027d5cec9da2545a9ce9270a611f6567/recipes/calendar-norway";
@@ -4606,12 +4944,12 @@
melpaBuild {
pname = "camcorder";
ename = "camcorder";
- version = "0.2";
+ version = "1.0";
src = fetchFromGitHub {
owner = "Malabarba";
repo = "camcorder.el";
- rev = "a2b5e0629ee3c01ead684e148965ac68e533efbd";
- sha256 = "0v927m3l5cf0j0rs0nfk5whwqmmxs941d8qalxi19j1ihspjz8d6";
+ rev = "b11ca61491a27681bb3131b72b51c105fd996bed";
+ sha256 = "11p42cmk9sj2ilpx6nnlbzff85qi0m27wk49da2ipal28wcx2452";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6aed365c42987d64d0cd9a8a6178339b1b39e8/recipes/camcorder";
@@ -4631,7 +4969,7 @@
melpaBuild {
pname = "caml";
ename = "caml";
- version = "4.7.0";
+ version = "4.7.1";
src = fetchFromGitHub {
owner = "ocaml";
repo = "ocaml";
@@ -4649,6 +4987,35 @@
license = lib.licenses.free;
};
}) {};
+ cangjie = callPackage ({ dash
+ , emacs
+ , f
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "cangjie";
+ ename = "cangjie";
+ version = "0.7.2";
+ src = fetchFromGitHub {
+ owner = "kisaragi-hiu";
+ repo = "cangjie.el";
+ rev = "f4dcb691e3bda6971cb89b07f368dd285179a8ff";
+ sha256 = "0hvwaj1g1szyhjvyxhwflq45bbcvvgv391wa7qkwlxmrvvfhp9k2";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ed79fc972f7fe69d7bad5d1cdde3a276885a9fe8/recipes/cangjie";
+ sha256 = "0gdp6dlkzkkd8r3cmwakwxlxsbysb351n1lr9sq4d60gbbskklln";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs f s ];
+ meta = {
+ homepage = "https://melpa.org/#/cangjie";
+ license = lib.licenses.free;
+ };
+ }) {};
cargo = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -5018,7 +5385,7 @@
melpaBuild {
pname = "cfengine-code-style";
ename = "cfengine-code-style";
- version = "3.12.0";
+ version = "3.13.0";
src = fetchFromGitHub {
owner = "cfengine";
repo = "core";
@@ -5309,23 +5676,32 @@
, pkg-info
, queue
, seq
+ , sesman
, spinner }:
melpaBuild {
pname = "cider";
ename = "cider";
- version = "0.17.0";
+ version = "0.21.0";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "cider";
- rev = "5b1c148078b3c6083f7777f2c3349d5c6403fdba";
- sha256 = "0yl1s84kq3438rbndzaxsxghjps82pgjpv76n5dwbkzcwpb84wn9";
+ rev = "200c88adb1314b5811ba749af42ffb6817c1ca1b";
+ sha256 = "0lbrwj67fnvynkdkzvnzp3p8vqlz0ldrcs317vg60bqfhx7hvqkj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/55a937aed818dbe41530037da315f705205f189b/recipes/cider";
sha256 = "1a6hb728a3ir18c2dn9zfd3jn79fi5xjn5gqr7ljy6qb063xd4qx";
name = "recipe";
};
- packageRequires = [ clojure-mode emacs pkg-info queue seq spinner ];
+ packageRequires = [
+ clojure-mode
+ emacs
+ pkg-info
+ queue
+ seq
+ sesman
+ spinner
+ ];
meta = {
homepage = "https://melpa.org/#/cider";
license = lib.licenses.free;
@@ -5335,30 +5711,56 @@
, eval-sexp-fu
, fetchFromGitHub
, fetchurl
- , highlight
, lib
, melpaBuild }:
melpaBuild {
pname = "cider-eval-sexp-fu";
ename = "cider-eval-sexp-fu";
- version = "1.1";
+ version = "1.2";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "cider-eval-sexp-fu";
- rev = "6b437bf073b21543e72d76fd0392a28fba7cbfbe";
- sha256 = "1frpr5dwg7aa0pjr2sarck498lj11li8xi36s5qa8qhflgl29jpn";
+ rev = "7fd229f1441356866aedba611fd0cf4e89b50921";
+ sha256 = "01gky548v3758fyr317lkwsc9aacab6m9d9vk1mrr3qyvmciwd51";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/947f4d106d70f95ca8aac124ab0d90b2975208df/recipes/cider-eval-sexp-fu";
sha256 = "1n4sgv042qd9560pllabysx0c5snly6i22bk126y8f8rn0zj58iq";
name = "recipe";
};
- packageRequires = [ emacs eval-sexp-fu highlight ];
+ packageRequires = [ emacs eval-sexp-fu ];
meta = {
homepage = "https://melpa.org/#/cider-eval-sexp-fu";
license = lib.licenses.free;
};
}) {};
+ cider-hydra = callPackage ({ cider
+ , fetchFromGitHub
+ , fetchurl
+ , hydra
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "cider-hydra";
+ ename = "cider-hydra";
+ version = "0.1.0";
+ src = fetchFromGitHub {
+ owner = "clojure-emacs";
+ repo = "cider-hydra";
+ rev = "5956c3909cd9beae11f64973e4f0d830cea7860d";
+ sha256 = "1hnari85c4y5sc8cdv2idkg2qv058crz54xdidnphr1wgw5zhvpk";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/51d5e6471f88337c478ee5c189f037aaec937f56/recipes/cider-hydra";
+ sha256 = "1qjgfrj3ck70vkyc9c00mif0jq5hc2yan2hql31qzbpqzg3pi2r7";
+ name = "recipe";
+ };
+ packageRequires = [ cider hydra ];
+ meta = {
+ homepage = "https://melpa.org/#/cider-hydra";
+ license = lib.licenses.free;
+ };
+ }) {};
cil-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -5394,14 +5796,14 @@
ename = "circadian";
version = "0.3.2";
src = fetchFromGitHub {
- owner = "GuidoSchmidt";
+ owner = "guidoschmidt";
repo = "circadian.el";
rev = "9894361dcd6ffb6d4629b4cbbabda2153699eb8e";
sha256 = "0wpsykmai3idz0bgfl07hwl9nr4x9sgprvqgw8jln4dz2wf5gdic";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/3440905a20bc91bb2637a87c04ff8410379f150d/recipes/circadian";
- sha256 = "13797y1w1636bibisz5i5p2xp0smd3apnhc1nx8ijm75smx679id";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/circadian";
+ sha256 = "1xxrhifw371yc4i2cddzcdmqh5dfc905wyl88765098685q8k4bp";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -5418,12 +5820,12 @@
melpaBuild {
pname = "circe";
ename = "circe";
- version = "2.10";
+ version = "2.11";
src = fetchFromGitHub {
owner = "jorgenschaefer";
repo = "circe";
- rev = "fedfa7eb8516a53fa70b6a1f4fce4b5ab66ea91f";
- sha256 = "10gi14kwxd81blddpvqh95lgmpbfgp0m955naxix3bs3r6a75n4s";
+ rev = "6ccd4b494cbae9d28091217654f052eaea321007";
+ sha256 = "0cr9flk310yn2jgvj4hbqw9nj5wlfi0fazdkqafzidgz6iq150wd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a2b295656d53fddc76cacc86b239e5648e49e3a4/recipes/circe";
@@ -5546,6 +5948,32 @@
license = lib.licenses.free;
};
}) {};
+ cl-libify = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "cl-libify";
+ ename = "cl-libify";
+ version = "0.2";
+ src = fetchFromGitHub {
+ owner = "purcell";
+ repo = "cl-libify";
+ rev = "f7df5d868ada173bc81860ef81ece359f13ae4e4";
+ sha256 = "1xp0zajp4rsnxkfzrmz0m5bihk0n1hgwc1cm9q163b2azsvixxmw";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/22088f8779652072871d5c472c67f34bd0470129/recipes/cl-libify";
+ sha256 = "0p3b57vfzhk348hb7bcnkq4ihi4qzsy4hcdvwa1h85i84vwyzk5d";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/cl-libify";
+ license = lib.licenses.free;
+ };
+ }) {};
click-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -5581,12 +6009,12 @@
melpaBuild {
pname = "cliphist";
ename = "cliphist";
- version = "0.5.5";
+ version = "0.5.6";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "cliphist";
- rev = "e454254f8bd9dbaea28e95c786d7297a2d4e920a";
- sha256 = "1lxsy78kmrrb82y7nlaaaq2qsly7f3wa8jw1bagjax4rwvld0vim";
+ rev = "232ab0b3f6d502de61ebe76681a6a04d4223b877";
+ sha256 = "0is772r0b7i8rvra9zb94g9aczv8b6q0dmdk67wbli5rv5drfjyq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/82d86dae4ad8efc8ef342883c164c56e43079171/recipes/cliphist";
@@ -5608,14 +6036,14 @@
ename = "clips-mode";
version = "0.7";
src = fetchFromGitHub {
- owner = "grettke";
+ owner = "clips-mode";
repo = "clips-mode";
rev = "f7869b67c2a8f061ce05f1e48abbcb41a6c455ce";
sha256 = "07r01g5xcr3w0kq09m4rb8ws0ss77szczycybvas4379sf3g8dv9";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d28484bf5e9ad72778ad63f73deeea1eb1263236/recipes/clips-mode";
- sha256 = "083wrhjn04rg8vr6j0ziffdbdhbfn63wzl4q7yzpkf8qckh6mxhf";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/clips-mode";
+ sha256 = "1ckk8ajr1x8y2h8jx2q233xs69nip3kjn0wp3xgfbwx7hjcbk7kr";
name = "recipe";
};
packageRequires = [];
@@ -5642,16 +6070,16 @@
melpaBuild {
pname = "clj-refactor";
ename = "clj-refactor";
- version = "2.3.1";
+ version = "2.4.0";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "clj-refactor.el";
- rev = "9005de31ed05122d3db9f503fbc69722abf3634b";
- sha256 = "1pvxwvx36fl971j9dfhfk33sqg70nsw57brsi6kgphq7dgzmv7dk";
+ rev = "3d5d1fbf28bfcc00f917cd96d6784968dcbbc962";
+ sha256 = "1z9278syijnzxfwlghz7bps3jp4cdl0fxg6igwpjfl8ln56hxazk";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/3a2db268e55d10f7d1d5a5f02d35b2c27b12b78e/recipes/clj-refactor";
- sha256 = "1qvds6dylazvrzz1ji2z2ldw72pa2nxqacb9d04gasmkqc32ipvz";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/clj-refactor";
+ sha256 = "05x0820x34pidcz03z96qs685y2700g7ha0dx4vy1xr7fg356c3z";
name = "recipe";
};
packageRequires = [
@@ -5727,33 +6155,6 @@
license = lib.licenses.free;
};
}) {};
- clojure-cheatsheet = callPackage ({ cider
- , fetchFromGitHub
- , fetchurl
- , helm
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "clojure-cheatsheet";
- ename = "clojure-cheatsheet";
- version = "0.4.0";
- src = fetchFromGitHub {
- owner = "clojure-emacs";
- repo = "clojure-cheatsheet";
- rev = "f8db406b7b13a580c142d08865c9a03c101235fa";
- sha256 = "1x1kfycf3023z0r3v7xqci59k8jv5wn2vqc9y0nx7k5qgifmswrx";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/0569da79bd8145df334965c5d4364a50b6b548fa/recipes/clojure-cheatsheet";
- sha256 = "05sw3bkdcadslpsk64ds0ciavmdgqk7fr5q3z505vvafmszfnaqv";
- name = "recipe";
- };
- packageRequires = [ cider helm ];
- meta = {
- homepage = "https://melpa.org/#/clojure-cheatsheet";
- license = lib.licenses.free;
- };
- }) {};
clojure-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -5762,12 +6163,12 @@
melpaBuild {
pname = "clojure-mode";
ename = "clojure-mode";
- version = "5.8.1";
+ version = "5.10.0";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "clojure-mode";
- rev = "09831e36efaaa3aa284c241cca1f53ac55cbe410";
- sha256 = "1fw5lbyyhjcfl23i1day8shs3diihvlqx59372c7k7gw8wb8phnq";
+ rev = "a4ed7a4152f8a6514dd3fd82532aa5a2bdba024f";
+ sha256 = "09l1zjnc2g028nw9jv3ksklmff0ar3m5n89qxmdb2nz3ncmj0lir";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5e3cd2e6ee52692dc7b2a04245137130a9f521c7/recipes/clojure-mode";
@@ -5788,7 +6189,7 @@
melpaBuild {
pname = "clojure-mode-extra-font-locking";
ename = "clojure-mode-extra-font-locking";
- version = "5.8.1";
+ version = "5.10.0";
src = fetchFromGitHub {
owner = "clojure-emacs";
repo = "clojure-mode";
@@ -5859,6 +6260,35 @@
license = lib.licenses.free;
};
}) {};
+ clomacs = callPackage ({ cider
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s
+ , simple-httpd }:
+ melpaBuild {
+ pname = "clomacs";
+ ename = "clomacs";
+ version = "0.0.3";
+ src = fetchFromGitHub {
+ owner = "clojure-emacs";
+ repo = "clomacs";
+ rev = "d9783d42dbab9710afff5654bf931b00e9df4ac1";
+ sha256 = "0jwnsyg0vi9ghn9yfd97rjj9j9ja3ig8h63n4zjw71ww3bcdldc6";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/345f9797e87e3f5f957c167a5e3d33d1e31b50a3/recipes/clomacs";
+ sha256 = "1vfjzrzp58ap75i0dh5bwnlkb8qbpfmrd3fg9n6aaibvvd2m3hyh";
+ name = "recipe";
+ };
+ packageRequires = [ cider emacs s simple-httpd ];
+ meta = {
+ homepage = "https://melpa.org/#/clomacs";
+ license = lib.licenses.free;
+ };
+ }) {};
closql = callPackage ({ emacs
, emacsql-sqlite
, fetchFromGitHub
@@ -5868,12 +6298,12 @@
melpaBuild {
pname = "closql";
ename = "closql";
- version = "0.6.0";
+ version = "1.0.0";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "closql";
- rev = "faed079570c2e70b0e4988177e35b7990afa4752";
- sha256 = "0ni2akjb1n5w6vz3b210c3bya9mbyyxiygn8hna707qnszd0li8r";
+ rev = "012b94f8695e194455111fd54eff0b94dd0dd0db";
+ sha256 = "1xhpfjjkjqfc1k2rj77cscclz5r7gpvv3hi202x178vdcpipjwar";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2df16abf56e53d4a1cc267a78797419520ff8a1c/recipes/closql";
@@ -5974,12 +6404,12 @@
melpaBuild {
pname = "cmake-mode";
ename = "cmake-mode";
- version = "3.12.0";
+ version = "3.14.1";
src = fetchFromGitHub {
owner = "Kitware";
repo = "CMake";
- rev = "d88451568dae61422d9d1b5796ad450ad28e0eb6";
- sha256 = "1hg99q4w0cfhm53qmiqirzrfk1bnx1lmb5kx2swfwcrxyyp80kby";
+ rev = "8d478c0003cc9bb4836038fc1a27d3bbd40348d2";
+ sha256 = "0i4rs8m7qf9milc9csy38r7m0j5xqy2q75fqmyxd4xpfmkf4a2v7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/598723893ae4bc2e60f527a072efe6ed9d4e2488/recipes/cmake-mode";
@@ -6043,6 +6473,33 @@
license = lib.licenses.free;
};
}) {};
+ code-stats = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , request }:
+ melpaBuild {
+ pname = "code-stats";
+ ename = "code-stats";
+ version = "0.1";
+ src = fetchFromGitHub {
+ owner = "xuchunyang";
+ repo = "code-stats-emacs";
+ rev = "20d60ded0743f01206c3c2e92ab73788def9adcb";
+ sha256 = "0g8pqqpwmc646krdpfkri8q7pwnj8sb3pma5mfkwg8lvj6ddcx27";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/20af5580926e9975605c0a245f6ac15c25f4921e/recipes/code-stats";
+ sha256 = "0mwjlhpmrbh3mbw3hjlsbv1fr4mxh068c9g0zcxq7wkksxx707if";
+ name = "recipe";
+ };
+ packageRequires = [ emacs request ];
+ meta = {
+ homepage = "https://melpa.org/#/code-stats";
+ license = lib.licenses.free;
+ };
+ }) {};
codic = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -6226,6 +6683,32 @@
license = lib.licenses.free;
};
}) {};
+ comb = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "comb";
+ ename = "comb";
+ version = "0.2.0";
+ src = fetchFromGitHub {
+ owner = "cyrus-and";
+ repo = "comb";
+ rev = "8a68d313bf429763eb8aa78ece00230a668f2a1f";
+ sha256 = "1hh1lkan1ch5xyzrpfgzibf8dxmvaa1jfwlxyyhpnfs5h69h3245";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/1b236a1f3953475cbd7eb5c4289b092818ae08cf/recipes/comb";
+ sha256 = "0n4pkigr07hwj5nb0ngs6ay80psqv7nppp82rg5w38qf0mjs3pkp";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/comb";
+ license = lib.licenses.free;
+ };
+ }) {};
commander = callPackage ({ cl-lib ? null
, dash
, f
@@ -6307,6 +6790,32 @@
license = lib.licenses.free;
};
}) {};
+ commentary-theme = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "commentary-theme";
+ ename = "commentary-theme";
+ version = "0.4.0";
+ src = fetchFromGitHub {
+ owner = "pzel";
+ repo = "commentary-theme";
+ rev = "9a825ae98166c9dbbf106e7be62ee69dd9f0342f";
+ sha256 = "1x30iyvvxggbh7xvp8lwpirvpqijchqf2fdaw4xrlbw5vajlaxcx";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/852b5f83c9870209080d2ed39fede3215ae43e64/recipes/commentary-theme";
+ sha256 = "1s3g40f0r0v8m1qqldvw64vs43i5xza7rwkvhxqcqmj6p1a7mqqw";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/commentary-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
commenter = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -6368,12 +6877,12 @@
melpaBuild {
pname = "company";
ename = "company";
- version = "0.9.6";
+ version = "0.9.9";
src = fetchFromGitHub {
owner = "company-mode";
repo = "company-mode";
- rev = "4711695af3df93f1bbceee165c505fea5bfc49ac";
- sha256 = "0x8zwq88k85ikzr0klm6nfa6i1wbykzfa790cg9cmi7wrsywimm1";
+ rev = "ac82e875e144b227e926c09c53def9b0c059115c";
+ sha256 = "07zjaaf6nd6zkh0208774lw7bx7cfnl25zfgva51wki20rcq6cjp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/96e7b4184497d0d0db532947f2801398b72432e4/recipes/company";
@@ -6511,12 +7020,12 @@
melpaBuild {
pname = "company-dict";
ename = "company-dict";
- version = "1.2.7";
+ version = "1.2.8";
src = fetchFromGitHub {
owner = "hlissner";
repo = "emacs-company-dict";
- rev = "cc2f7aecc0a9d5b44c471a5550a49fd3ca535360";
- sha256 = "1swd87p4vxlxqcajfh0clypqdwdkn85k3iy9gms1hm4m23wj6a4m";
+ rev = "cd7b8394f6014c57897f65d335d6b2bd65dab1f4";
+ sha256 = "11whnjmy5dyg4wkwabpip8hqsmqys193m7aqbd7jl4hmq24hrwsw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/212c077def5b4933c6001056132181e1a5850a7c/recipes/company-dict";
@@ -6595,12 +7104,12 @@
melpaBuild {
pname = "company-emoji";
ename = "company-emoji";
- version = "2.5.0";
+ version = "2.5.1";
src = fetchFromGitHub {
owner = "dunn";
repo = "company-emoji";
- rev = "8dc88ffe0773ef44321f245d39430c14a1bc2b82";
- sha256 = "1y8l9wnc13g79znyw2qsbm33da2bhkj270ppikkg9h4x2qpmxilq";
+ rev = "271909be44f86bcc294739ca45992cdc3caee39f";
+ sha256 = "1rihgld1wxwfdpqv7d9gcgd8xpnms5kpw61z30y18fmkxhhmid3c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5733dccdffe97911a30352fbcda2900c33d79810/recipes/company-emoji";
@@ -6673,25 +7182,24 @@
company-go = callPackage ({ company
, fetchFromGitHub
, fetchurl
- , go-mode
, lib
, melpaBuild }:
melpaBuild {
pname = "company-go";
ename = "company-go";
- version = "20170907";
+ version = "20150303";
src = fetchFromGitHub {
- owner = "nsf";
+ owner = "mdempsky";
repo = "gocode";
- rev = "84b76ec55b44739143088371a34ef30a4719dfe4";
- sha256 = "0ig9jsx9gv3cya11r0w07xpby9rzlh3iz02mir0z7ffnf8qawmrc";
+ rev = "3109790fda3785bbad336e3dd85aaaa4604dbe8b";
+ sha256 = "1sn6fvskb8drxphxjn57nr7y0wfh3y6xiksym1fqx68znzwf7ckh";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/04867a574773e8794335a2664d4f5e8b243f3ec9/recipes/company-go";
- sha256 = "1ncy5wlg3ywr17zrxb1d1bap4gdvwr35w9a8b0crz5h3l3y4cp29";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ef45683cbfe82bf8a9d6f3f1c59e3cf340accbe3/recipes/company-go";
+ sha256 = "1zhdckq1c9jzi5cf90w2m77fq6l67rjri4lnf8maq82gxqzk6wa5";
name = "recipe";
};
- packageRequires = [ company go-mode ];
+ packageRequires = [ company ];
meta = {
homepage = "https://melpa.org/#/company-go";
license = lib.licenses.free;
@@ -6795,12 +7303,12 @@
melpaBuild {
pname = "company-lsp";
ename = "company-lsp";
- version = "2.0.1";
+ version = "2.1.0";
src = fetchFromGitHub {
owner = "tigersoldier";
repo = "company-lsp";
- rev = "4512d062c38922d8b8cf402ca6043c246e915694";
- sha256 = "0q95lgw02qy5dn3vpdhspmvjhnfzmmn2asajaf15q5lkjbsvxfrk";
+ rev = "4eb6949f19892be7bf682381cde005791a48583a";
+ sha256 = "1hy1x2w0yp5brm7714d1hziz3rpkywb5jp3yj78ibmi9ifny9vri";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5125f53307c1af3d9ccf2bae3c25e7d23dfe1932/recipes/company-lsp";
@@ -6905,12 +7413,12 @@
melpaBuild {
pname = "company-php";
ename = "company-php";
- version = "2.0.5";
+ version = "2.0.7";
src = fetchFromGitHub {
owner = "xcwen";
repo = "ac-php";
- rev = "e452a20a9f94113260b9cba9af7fb44cc8c647ef";
- sha256 = "08gvn4gq2j349rz24ask6nzqnvw15p9c8r2lby4n6n0zc6iaxzm5";
+ rev = "11234d073f363edff255e8632b728777e2807d01";
+ sha256 = "15rinvamhzbx0n1fxwpq7nbjqgqvksgf4q8k3lkyy6ifchwiqys4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/company-php";
@@ -6923,6 +7431,34 @@
license = lib.licenses.free;
};
}) {};
+ company-phpactor = callPackage ({ cl-lib ? null
+ , company
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "company-phpactor";
+ ename = "company-phpactor";
+ version = "0.1.0";
+ src = fetchFromGitHub {
+ owner = "emacs-php";
+ repo = "phpactor.el";
+ rev = "61e4eab638168b7034eef0f11e35a89223fa7687";
+ sha256 = "0dsa1mygb96nlz5gppf0sny3lxaacvmvnkg84c0cs6x223s6zfx8";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/dc6edd22befea0aee9b11bc8df7d42c400e12f43/recipes/company-phpactor";
+ sha256 = "1a6szs85hmxm2xpkmc3dyx2daap7bjvpnrl4gcmbq26zbz2f0z0a";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib company emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/company-phpactor";
+ license = lib.licenses.free;
+ };
+ }) {};
company-prescient = callPackage ({ company
, emacs
, fetchFromGitHub
@@ -6933,12 +7469,12 @@
melpaBuild {
pname = "company-prescient";
ename = "company-prescient";
- version = "2.0";
+ version = "2.2.2";
src = fetchFromGitHub {
owner = "raxod502";
repo = "prescient.el";
- rev = "515959a2523b43608c9d06dcf8adde8911ce42b9";
- sha256 = "1k8xk154sql3b2b7hpyxslcgl88aaxq5ak2sr760jsq2qk7878bw";
+ rev = "562d25a1c3c5b2e269d82f374f450e6aa90a970e";
+ sha256 = "1ncplx5p3cffyzg9ygzqqxj0vpvwrz9rp2n4z6c375a78fyydrk0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b92c34e493bbefab1d7747b0855d1ab2f984cb7c/recipes/company-prescient";
@@ -7025,12 +7561,12 @@
melpaBuild {
pname = "company-rtags";
ename = "company-rtags";
- version = "2.18";
+ version = "2.31";
src = fetchFromGitHub {
owner = "Andersbakken";
repo = "rtags";
- rev = "e4060b551575be378344c0cc1aedf11446b4f264";
- sha256 = "01xc5r2am0xck7q6jal3zyrqbzpx68fzqi9af7zb1klyw2s5v807";
+ rev = "7c470ba8e15740f37c3a7a9c56331c1cc4c0b1bb";
+ sha256 = "05czbkgq48jv0f9vainflikil51xiwd0h24jmmx5886wi3v1wb4c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/company-rtags";
@@ -7072,6 +7608,33 @@
license = lib.licenses.free;
};
}) {};
+ company-solidity = callPackage ({ cl-lib ? null
+ , company
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "company-solidity";
+ ename = "company-solidity";
+ version = "0.1.9";
+ src = fetchFromGitHub {
+ owner = "ethereum";
+ repo = "emacs-solidity";
+ rev = "d0ff4dea49540f37301d869f2797fca2492f55d5";
+ sha256 = "1wcy5z4wggn3zs9h1kyvm0ji51ppjcqdmym3mmxbrhan6a0kq724";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e561d869f4e32bad5d1a8678f67e591ff586d6de/recipes/company-solidity";
+ sha256 = "1rkja48j2m0g0azc34i715ckkqwjkb44y3b4a9vlxs8cjqza4w7q";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib company ];
+ meta = {
+ homepage = "https://melpa.org/#/company-solidity";
+ license = lib.licenses.free;
+ };
+ }) {};
company-sourcekit = callPackage ({ company
, dash
, dash-functional
@@ -7281,25 +7844,26 @@
, fetchurl
, lib
, melpaBuild
+ , php-runtime
, request
, s
, seq }:
melpaBuild {
pname = "composer";
ename = "composer";
- version = "0.0.8";
+ version = "0.1.1";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "composer.el";
- rev = "2d16d3bb65c53e9e26f4b7b22ad38590a4a48ee1";
- sha256 = "1zxqqd12p1db75icbwbdj51fvp8zzhivi8ssnxda1r5y5crbiqdv";
+ rev = "d88741009cf7cae0a75e3cc7a19dd9143fcc92f9";
+ sha256 = "0iqm8997pl3pni7a49igj8q6sp37bjdshjwl6d95bqrjkjf9ll08";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eb13cb0dba1696cc51132cd1ff723fa17f892a7c/recipes/composer";
sha256 = "01w9cywhfngkrl9az8kfpzm12nc0zwmax01pyxlbi2l2icmvp5s1";
name = "recipe";
};
- packageRequires = [ emacs f request s seq ];
+ packageRequires = [ emacs f php-runtime request s seq ];
meta = {
homepage = "https://melpa.org/#/composer";
license = lib.licenses.free;
@@ -7391,25 +7955,27 @@
, emacs
, fetchFromGitHub
, fetchurl
+ , flycheck
+ , hydra
, lib
, melpaBuild
- , parsec }:
+ , s }:
melpaBuild {
pname = "conllu-mode";
ename = "conllu-mode";
- version = "0.1.0";
+ version = "0.5.0";
src = fetchFromGitHub {
owner = "odanoburu";
repo = "conllu-mode";
- rev = "993fd6bc2b5c7b70815a3ecede1642f607513615";
- sha256 = "0x6ga4h084qcf9h6nak7c66qq1slq907n64sqx41gnd3zbscmwxa";
+ rev = "d1b5b682e0a481ab74caed20bbca6177edb83080";
+ sha256 = "1n98aqh3pyvaz1lwsqpcpv1nzrij79r342iiw2h90v4mf2r665dy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/444f943baddfeafe29708d6d68aeeeedbb7aa7bd/recipes/conllu-mode";
sha256 = "1wffvvs8d0xcnz6mcm9rbr8imyj4npyc148yh0gzfzlgjm0fiz1v";
name = "recipe";
};
- packageRequires = [ cl-lib emacs parsec ];
+ packageRequires = [ cl-lib emacs flycheck hydra s ];
meta = {
homepage = "https://melpa.org/#/conllu-mode";
license = lib.licenses.free;
@@ -7452,14 +8018,14 @@
ename = "contextual";
version = "1.0.1";
src = fetchFromGitHub {
- owner = "lshift-de";
+ owner = "e-user";
repo = "contextual";
rev = "8134a2d8034c624f4fdbbb0b3893de12f4257909";
sha256 = "0s4b7dkndhnh8q3plvg2whjx8zd7ffz4hnbn3xh86xd3k7sch7av";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/44e5b799e411b8e2d89c8e9aeb4720126ac908b7/recipes/contextual";
- sha256 = "0vribs0fa1xf5kwkmvzjwhiawni0p3v56c5l4dkz8d7wn2g6wfdx";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/de20db067590624bbd2ca5a7a537b7f11ada84f2/recipes/contextual";
+ sha256 = "1xwjjchmn3xqxbgvqishh8i75scc4kjgdzlp5j64d443pfgyr56a";
name = "recipe";
};
packageRequires = [ cl-lib dash emacs ];
@@ -7501,12 +8067,12 @@
melpaBuild {
pname = "copy-as-format";
ename = "copy-as-format";
- version = "0.0.7";
+ version = "0.0.8";
src = fetchFromGitHub {
owner = "sshaw";
repo = "copy-as-format";
- rev = "971957166fe64d914ec4be209b4f80efeeabbb19";
- sha256 = "0ynzy2sb75w24d2kwjpkb3vl98yyz0sbcj6nd31y2r2n2kkdna24";
+ rev = "d2376c64334fe3de65d89d6d138a2187f9bf802f";
+ sha256 = "0i158bkra7zgq75j08knq2camvlhbs2v8zrsxiyp0mc4q949xysd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/42fe8a2113d1c15701abe7a7e0a68e939c3d789b/recipes/copy-as-format";
@@ -7637,12 +8203,12 @@
melpaBuild {
pname = "counsel";
ename = "counsel";
- version = "0.10.0";
+ version = "0.11.0";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "swiper";
- rev = "4a2cee03519f98cf95b29905dec2566a39ff717e";
- sha256 = "14vnigqb5c3yi4q9ysw1fiwdqyqwyklqpb9wnjf81chm7s2mshnr";
+ rev = "525b2e4887dd839045313f32d3ddeb5cab4c7a7e";
+ sha256 = "009n8zjycs62cv4i1k9adbb284wz2w3r13xki2740sj34k683v13";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/06c50f32b8d603db0d70e77907e36862cd66b811/recipes/counsel";
@@ -7664,12 +8230,12 @@
melpaBuild {
pname = "counsel-bbdb";
ename = "counsel-bbdb";
- version = "0.0.3";
+ version = "0.0.4";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "counsel-bbdb";
- rev = "c86f4b9ef99c9db0b2c4196a300d61300dc2d0c1";
- sha256 = "1dchyg8cs7n0zbj6mr2z840yi06b2wja65k04idlcs6ngy1vc3sr";
+ rev = "df2890deb73b09f8055243bd91942ea887d9b7a1";
+ sha256 = "0bki658mvlchqf3prkzxz4217a95cxm58c1qmf84yp2n8h6gd0d8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0ed9bcdb1f25a6dd743c1dac2bb6cda73a5a5dc2/recipes/counsel-bbdb";
@@ -7716,24 +8282,25 @@
, emacs
, fetchFromGitHub
, fetchurl
+ , ivy
, lib
, melpaBuild }:
melpaBuild {
pname = "counsel-etags";
ename = "counsel-etags";
- version = "1.6.2";
+ version = "1.8.3";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "counsel-etags";
- rev = "9437ce4e4adb7140df6af0a4528069b9e54de44b";
- sha256 = "14q7w6pz3pslwr4s1f2b8wiq6k1jvp09mwml9x2j5ljw7j3145pi";
+ rev = "e6fcff2254383fe680cc1d05580778128da2ca57";
+ sha256 = "1d8nlrbsyza6q7yqm9248bxxsf49qf6hchg3zwv0l11acn3w8np5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/87528349a3ab305bfe98f30c5404913272817a38/recipes/counsel-etags";
sha256 = "1h3dlczm1m21d4h41vz9ngg5fi02g6f95qalfxdnsvz0d4w4yxk0";
name = "recipe";
};
- packageRequires = [ counsel emacs ];
+ packageRequires = [ counsel emacs ivy ];
meta = {
homepage = "https://melpa.org/#/counsel-etags";
license = lib.licenses.free;
@@ -7775,12 +8342,12 @@
melpaBuild {
pname = "counsel-projectile";
ename = "counsel-projectile";
- version = "0.2.0";
+ version = "0.3.0";
src = fetchFromGitHub {
owner = "ericdanan";
repo = "counsel-projectile";
- rev = "536872f022f449548bdb97faa1776d1d44499d73";
- sha256 = "0pm5sqhr24n2ffycazxgl3d3dl7gai8svwz01vc0pgx9c0x75kl8";
+ rev = "d64e5275c578a494102852c466a3696bde466739";
+ sha256 = "1inc4ndl0ysfwvxk4avbgpj4qi9rc93da6476a5c81xmwpsv8wmq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/389f16f886a385b02f466540f042a16eea8ba792/recipes/counsel-projectile";
@@ -7802,12 +8369,12 @@
melpaBuild {
pname = "counsel-tramp";
ename = "counsel-tramp";
- version = "0.4.1";
+ version = "0.6.2";
src = fetchFromGitHub {
owner = "masasam";
repo = "emacs-counsel-tramp";
- rev = "3f5ae75a6bde00bffeb2877b4ed4bd45610c0dfa";
- sha256 = "06dhhjrgpikzpdl1hck0ckjbx8yzx8jbymb3ajfxglgvrvid4l1k";
+ rev = "ac7728bac51afdcb63cd85ad22a8be5737d9d66f";
+ sha256 = "0nz0733x2b9b5nkwivvhv5c8747dng451na1sdfbkx5x9fjs5gc7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e1822b735b6bd533f658bd64ddccda29e19e9a5e/recipes/counsel-tramp";
@@ -7963,12 +8530,12 @@
melpaBuild {
pname = "cricbuzz";
ename = "cricbuzz";
- version = "0.3.5";
+ version = "0.3.6";
src = fetchFromGitHub {
owner = "lepisma";
repo = "cricbuzz.el";
- rev = "557f75f10525e7a4d50e83010b9ed07fbf9df889";
- sha256 = "18lc56l5vcbrw2agpgjcap5q0l1mi64khgkk00x7r9wm1zilf9wp";
+ rev = "0b95d45991bbcd2fa58d96ce921f6a57ba42c153";
+ sha256 = "1s77a2lfy7nnaxm3ai9dg8lbdxp0892z4gr0yxqrgzawc4qcbb3x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/cricbuzz";
@@ -8402,7 +8969,7 @@
melpaBuild {
pname = "cython-mode";
ename = "cython-mode";
- version = "0.28.4";
+ version = "0.29.6";
src = fetchFromGitHub {
owner = "cython";
repo = "cython";
@@ -8479,12 +9046,12 @@
melpaBuild {
pname = "daemons";
ename = "daemons";
- version = "1.2.0";
+ version = "2.0.0";
src = fetchFromGitHub {
owner = "cbowdon";
repo = "daemons.el";
- rev = "9e6868e2559ea7d70fbad8c419798124f406cc40";
- sha256 = "00ijgm22ck76gw0x79krl05yy0m8a502yfakazfy5xhpn1zi6ab7";
+ rev = "dcf42cb3178d7245d6d49de346d5e2b44e5b7498";
+ sha256 = "00bkzfaw3bqykcks610vk9wlpa2z360xn32bpsrycacwfv29j7g4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1f780485e72ae2885f698fdab0156855f70831f1/recipes/daemons";
@@ -8497,37 +9064,81 @@
license = lib.licenses.free;
};
}) {};
- dante = callPackage ({ dash
+ dante = callPackage ({ company
+ , dash
, emacs
, f
, fetchFromGitHub
, fetchurl
, flycheck
, haskell-mode
+ , lcr
, lib
, melpaBuild
, s }:
melpaBuild {
pname = "dante";
ename = "dante";
- version = "1.4";
+ version = "1.5";
src = fetchFromGitHub {
owner = "jyp";
repo = "dante";
- rev = "3500ade60c5c4e831b04c92c56dc888063335d3b";
- sha256 = "07nc1bgb67nlsf567cky6kvd3blm0w7nwpr92xga7jm6dqnqhlkg";
+ rev = "3bd1bfdd775a309565a850e37dfbd42f1b33068e";
+ sha256 = "0f76snwsy735r7pl3gdzvajsmpd12qkj03lyjxq1x44a79a1gfwk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5afa8226077cbda4b76f52734cf8e0b745ab88e8/recipes/dante";
sha256 = "1j0qwjshh2227k63vd06bvrsccymqssx26yfzams1xf7bp6y0krs";
name = "recipe";
};
- packageRequires = [ dash emacs f flycheck haskell-mode s ];
+ packageRequires = [ company dash emacs f flycheck haskell-mode lcr s ];
meta = {
homepage = "https://melpa.org/#/dante";
license = lib.licenses.free;
};
}) {};
+ dap-mode = callPackage ({ bui
+ , dash
+ , dash-functional
+ , emacs
+ , f
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , lsp-mode
+ , melpaBuild
+ , s
+ , tree-mode }:
+ melpaBuild {
+ pname = "dap-mode";
+ ename = "dap-mode";
+ version = "0.2";
+ src = fetchFromGitHub {
+ owner = "emacs-lsp";
+ repo = "dap-mode";
+ rev = "240da34149e2d8893b647f15ff30f217aba4ac89";
+ sha256 = "1y3s28xb66w8yynwlavn6d7ysjv0d5ziyga5fjyj0jk1037mjg6y";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/67942b34975015dd6f2b5f6b43829cc13b1832c6/recipes/dap-mode";
+ sha256 = "041mmla70ld5783gn8g360klk3cw39pir5d41544zf3yssk12qpn";
+ name = "recipe";
+ };
+ packageRequires = [
+ bui
+ dash
+ dash-functional
+ emacs
+ f
+ lsp-mode
+ s
+ tree-mode
+ ];
+ meta = {
+ homepage = "https://melpa.org/#/dap-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
darcula-theme = callPackage ({ fetchFromGitLab
, fetchurl
, lib
@@ -8561,12 +9172,12 @@
melpaBuild {
pname = "darktooth-theme";
ename = "darktooth-theme";
- version = "0.3.7";
+ version = "0.3.10";
src = fetchFromGitHub {
owner = "emacsfodder";
repo = "emacs-theme-darktooth";
- rev = "fb66992286c009e594eb7bb9ee2f1cdc3bebb555";
- sha256 = "0n7qgnyl4rdvgwjb7gz6m1c22mxwg8bp08r7lz27z0b1bcyw94sc";
+ rev = "ae14a9be19b6fbd287e0f5ad156e7942cd6a5bc6";
+ sha256 = "1jisiz0blksjl6d8q7bnvnlfrwalqfpd93fs66i8pgllhf5z7j19";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b7f62ac1566ced7332e83253f79078dc30cb7889/recipes/darktooth-theme";
@@ -8591,16 +9202,16 @@
melpaBuild {
pname = "dart-mode";
ename = "dart-mode";
- version = "1.0.3";
+ version = "1.0.4";
src = fetchFromGitHub {
- owner = "nex3";
+ owner = "bradyt";
repo = "dart-mode";
- rev = "f3a7c7b71fb12d02fa02700bc10426cb10010d01";
- sha256 = "1g0c37qfqki7v1a5rxf6sy7k07i529rw3f1wmjl7g1zhd9bwsml2";
+ rev = "d78c5c796da53108a824967932cf6c773426e10f";
+ sha256 = "1x04vhmwg0hn54dfskwp8dnghjyyn8rha3vpfqw37qjchf3js3f0";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/dart-mode";
- sha256 = "00zvgxfxgk5jair796l6appyq5hc7hs2s2wglv1j4l7g50b05cla";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/dart-mode";
+ sha256 = "0zpvp86067a6l63wrpqxsm9fhv3n4ggbq8pg21vgiz54hk4x1xpp";
name = "recipe";
};
packageRequires = [ cl-lib dash emacs flycheck s ];
@@ -8616,12 +9227,12 @@
melpaBuild {
pname = "dash";
ename = "dash";
- version = "2.14.1";
+ version = "2.15.0";
src = fetchFromGitHub {
owner = "magnars";
repo = "dash.el";
- rev = "a74f4cfcdc8d0642a9f602ad494f0354f27dacc9";
- sha256 = "1kzijmjxjxgr7p8clphzvmm47vczckbs8mza9an77c25bn627ywl";
+ rev = "63022432e1f7bcc5af9582f29d4ed0552a2e658b";
+ sha256 = "0dx8q3jr8fh73cfl7mqi5dq0012ambpvc74d2c71fsv9rfw85693";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/57eed8767c3e98614259c408dc0b5c54d3473883/recipes/dash";
@@ -8643,7 +9254,7 @@
melpaBuild {
pname = "dash-functional";
ename = "dash-functional";
- version = "2.14.1";
+ version = "2.15.0";
src = fetchFromGitHub {
owner = "magnars";
repo = "dash.el";
@@ -8670,16 +9281,16 @@
melpaBuild {
pname = "dashboard";
ename = "dashboard";
- version = "1.2.4";
+ version = "1.3.1";
src = fetchFromGitHub {
- owner = "rakanalh";
+ owner = "emacs-dashboard";
repo = "emacs-dashboard";
- rev = "8594c4f55448148b720eda5b72d51667fb7a8a39";
- sha256 = "1hhh1kfsz87qfmh45wjf2r93rz79rq0vbyxlfrsl02092zjbl1zr";
+ rev = "17accfce424a18c4120ad99dfc1d7d93591dbce0";
+ sha256 = "0f40xj3wchpj3g9pv15f88vy86d0vllbwr1xli0yfv326lm0j97r";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/e9a79341ccaa82a8c065e71c02fe6aee22007c66/recipes/dashboard";
- sha256 = "08pdpjfrg8v80gljy146cwpz624dshhbz8843zl1zszwp2p00kqy";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ef3c6af6ff5d880e6336f8db32b22b64b182794e/recipes/dashboard";
+ sha256 = "19l7mv57ra3i8bz35zfq0wrrp8mk0bzhng6wqpbf9dax4pq3pnp9";
name = "recipe";
};
packageRequires = [ emacs page-break-lines ];
@@ -8688,6 +9299,34 @@
license = lib.licenses.free;
};
}) {};
+ dashboard-project-status = callPackage ({ dashboard
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , git
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "dashboard-project-status";
+ ename = "dashboard-project-status";
+ version = "0.0.1";
+ src = fetchFromGitHub {
+ owner = "functionreturnfunction";
+ repo = "dashboard-project-status";
+ rev = "d3ac9f4992cc9ddad12f98e6ace26c8673ce473d";
+ sha256 = "1zm566dq5xavfyma7304lvq78cpbblk22v2zgsbdy8hpk94rxj8m";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/dfc05873c6532c866d89c4cc07eb84b447a25c70/recipes/dashboard-project-status";
+ sha256 = "1r25xmscz3lrjm6jjix416py26za5l1ck3xa77qbyrr4rf1gsakg";
+ name = "recipe";
+ };
+ packageRequires = [ dashboard emacs git ];
+ meta = {
+ homepage = "https://melpa.org/#/dashboard-project-status";
+ license = lib.licenses.free;
+ };
+ }) {};
date-at-point = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -8750,12 +9389,12 @@
melpaBuild {
pname = "datetime";
ename = "datetime";
- version = "0.4.1";
+ version = "0.6.4";
src = fetchFromGitHub {
owner = "doublep";
repo = "datetime";
- rev = "d8674ac11f9ebb702e5bbac10a4a6e5542958ef5";
- sha256 = "19d4wximzwdcs0i2r48k6m60wwxcx5f89jw75k4hr0wvx0352a82";
+ rev = "8c6d6fc991766e6bf9cefc4ea4b04eeae8116a84";
+ sha256 = "0c5y304pvns8jhy4fpz4jmbfxdgz8ms04hgrnsb0g168szc9g0s9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/91ef4352603cc69930ab3d63f0a90eee63f5f328/recipes/datetime";
@@ -8780,12 +9419,12 @@
melpaBuild {
pname = "deadgrep";
ename = "deadgrep";
- version = "0.4";
+ version = "0.6";
src = fetchFromGitHub {
owner = "Wilfred";
repo = "deadgrep";
- rev = "160fa79bc76fa79ab727e369c5053bd61ca62a49";
- sha256 = "0csval9g9w606dvj24rv2x5f6rbaj1lczavvcldq0wgj8fivkyh1";
+ rev = "c29f617569a82d67b2061f74c08f431520fc3f54";
+ sha256 = "12j84yp94f2763gwpc07zqfi0ikz9n1a5ciyvcpsgfxpj8bkngzx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/93389fae7233b83ea904e17bdaf83f8247cda3d8/recipes/deadgrep";
@@ -8798,6 +9437,30 @@
license = lib.licenses.free;
};
}) {};
+ debian-el = callPackage ({ fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "debian-el";
+ ename = "debian-el";
+ version = "37.4";
+ src = fetchgit {
+ url = "https://salsa.debian.org/emacsen-team/debian-el.git";
+ rev = "9690c4adb71e0fc7d00fea24b49ba944f913f4f5";
+ sha256 = "118yyhmfwpdlqvz5xjqfr4mmpjznkja3jn63n43z66q0apfhhk61";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/1a381ec81eb160365f478c6a3af638c14558d7d6/recipes/debian-el";
+ sha256 = "0x74a4nm2p4w82kzrdqy90969sminsrhdzppld2mg63jg0wxb8ga";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/debian-el";
+ license = lib.licenses.free;
+ };
+ }) {};
debpaste = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -9116,12 +9779,12 @@
melpaBuild {
pname = "diary-manager";
ename = "diary-manager";
- version = "2.0.1";
+ version = "2.0.2";
src = fetchFromGitHub {
owner = "raxod502";
repo = "diary-manager";
- rev = "01851f42aee0526995ea88c3d42b7fe12e1cb7fd";
- sha256 = "1q1zrqawrr844lzjc5l480im6rjdyagir0dr805vgyv31fhp1vmw";
+ rev = "919f724bb58e36b8626dd8d7c8475f71c0c54443";
+ sha256 = "12zg022bhfn4gsclb5wk8wh0bqyy0v5j37369haq6rb5jcc6x5fb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a014f4d862a2480f7edb1266f79ce0801cca13c2/recipes/diary-manager";
@@ -9134,6 +9797,34 @@
license = lib.licenses.free;
};
}) {};
+ dictcc = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , ivy
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "dictcc";
+ ename = "dictcc";
+ version = "1.0.1";
+ src = fetchFromGitHub {
+ owner = "cqql";
+ repo = "dictcc.el";
+ rev = "3244897515db954eafeed9648e7a0011b89c3ce2";
+ sha256 = "1nlgz3i8kynhl6d6h5rszja14z5n7ri83mm5ks90nbdhjcqwk3qd";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/5e867df96915a0c4f22fdccd4e2096878895bda6/recipes/dictcc";
+ sha256 = "0x1y742hb3dm7xmh5810dlqki38kybw68rmg9adcchm2rn86jqlm";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ivy ];
+ meta = {
+ homepage = "https://melpa.org/#/dictcc";
+ license = lib.licenses.free;
+ };
+ }) {};
dictionary = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -9160,6 +9851,7 @@
};
}) {};
diff-hl = callPackage ({ cl-lib ? null
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -9167,19 +9859,19 @@
melpaBuild {
pname = "diff-hl";
ename = "diff-hl";
- version = "1.8.4";
+ version = "1.8.6";
src = fetchFromGitHub {
owner = "dgutov";
repo = "diff-hl";
- rev = "e93367512080e540dc5dd126dfcb38b4a5e9415b";
- sha256 = "03pvh213w0sgyvv0xrkj43bs53p2xfr7162yhzdh24qwa8dd23qv";
+ rev = "84a5fe1900af2e5cc522f02749804f0d9f094bbf";
+ sha256 = "1xlsg728mz3cwhrsqvisa0aidic67nymd9g7h4c1h3q63j39yb2s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/diff-hl";
sha256 = "135jgjfaiq6kj72ji5k22v4pqc8gjjmcv80r5rkjbjigzlvcvvj2";
name = "recipe";
};
- packageRequires = [ cl-lib ];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://melpa.org/#/diff-hl";
license = lib.licenses.free;
@@ -9405,12 +10097,12 @@
melpaBuild {
pname = "dired-atool";
ename = "dired-atool";
- version = "1.1.0";
+ version = "1.2.0";
src = fetchFromGitHub {
owner = "HKey";
repo = "dired-atool";
- rev = "a2470f805c8cfbeee459b000edaaa5474bac35f9";
- sha256 = "1d813b4wiamif48v0za5invnss52mn7yw3hzrlxd4918gy5y2r74";
+ rev = "09dbb769fe02f546da470369a12468ab4a0cceb2";
+ sha256 = "0j2dz4vy4i22185hhlwg2kprpis97xb12qvfdhvdcnz2vwy61sxa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0fe7b0857828a041ee06b30edd2cd488cc3394c7/recipes/dired-atool";
@@ -9681,6 +10373,31 @@
license = lib.licenses.free;
};
}) {};
+ dired-toggle = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "dired-toggle";
+ ename = "dired-toggle";
+ version = "0.1.2";
+ src = fetchFromGitHub {
+ owner = "fasheng";
+ repo = "dired-toggle";
+ rev = "509bf1f3c6d5e5f9bc29f94d88127e2d82d5c6ed";
+ sha256 = "1h91z38bflj1z1zy798a4ngkny2f7gp03xbf222jiyhwc9djgg8q";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/17ae4c5ff42e0c48e53d93c88853f649f59034e6/recipes/dired-toggle";
+ sha256 = "18v571kp440n5g1d7pj86rr8dgbbm324f9vblkdbdvn13c5dczf5";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/dired-toggle";
+ license = lib.licenses.free;
+ };
+ }) {};
dired-toggle-sudo = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -9767,12 +10484,12 @@
melpaBuild {
pname = "direnv";
ename = "direnv";
- version = "1.4.0";
+ version = "1.5.0";
src = fetchFromGitHub {
owner = "wbolster";
repo = "emacs-direnv";
- rev = "03c4edffba45722a9511d6d10992578f140d095f";
- sha256 = "1b8xp0yprpy1sc8hmim6jcdmgpc8yj6wjzgj4rdy77k7l96016v8";
+ rev = "8ad3672c56d65b1eacc012cc51a36ed544b4b160";
+ sha256 = "02blhinkkfh3iai6j1k5swplf5mkwijy3p7wy38rnd1gnyj2z4la";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5419809ee62b920463e359c8e1314cd0763657c1/recipes/direnv";
@@ -9937,30 +10654,8 @@
license = lib.licenses.free;
};
}) {};
- ditz-mode = callPackage ({ fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "ditz-mode";
- version = "0.3";
- src = fetchhg {
- url = "https://bitbucket.com/zondo/ditz-mode";
- rev = "beac4c1f3b7e";
- sha256 = "1cbsy4lchl41zmyxfq828cjpl3h2dwvn8xf1qgf2lbscdb6cwbwb";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/02e2a2a25f42929626d7237511136ba6826dad33/recipes/ditz-mode";
- sha256 = "0shzm9l31n4ffjs1d26ykxsycd478lhlpl8xcwzbjryywg4gf5nd";
- name = "ditz-mode";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/ditz-mode";
- license = lib.licenses.free;
- };
- }) {};
dix = callPackage ({ cl-lib ? null
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -9968,19 +10663,19 @@
melpaBuild {
pname = "dix";
ename = "dix";
- version = "0.3.5";
+ version = "0.4.1";
src = fetchFromGitHub {
owner = "unhammer";
repo = "dix";
- rev = "86880826a0cc878e2e5d50bc835eed5c8e2f001a";
- sha256 = "00qyzpqdw4im7c4bqqpiayv4kr9iqlm6mhsziazjvrjsvvi0p9ij";
+ rev = "b973de948deb7aa2995b1895e1e62bbe3129b5a5";
+ sha256 = "1bjxyidcp7y309asbk4pfb4mzgb8j62fmp3w3zl2nahdgv1rja45";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/149eeba213b82aa0bcda1073aaf1aa02c2593f91/recipes/dix";
sha256 = "0c5fmknpy6kwlz7nx0csbbia1maz0szj7yha1p7wq28s3a5426xq";
name = "recipe";
};
- packageRequires = [ cl-lib ];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://melpa.org/#/dix";
license = lib.licenses.free;
@@ -9995,7 +10690,7 @@
melpaBuild {
pname = "dix-evil";
ename = "dix-evil";
- version = "0.3.5";
+ version = "0.4.1";
src = fetchFromGitHub {
owner = "unhammer";
repo = "dix";
@@ -10013,6 +10708,32 @@
license = lib.licenses.free;
};
}) {};
+ django-commands = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "django-commands";
+ ename = "django-commands";
+ version = "1.3.2";
+ src = fetchFromGitHub {
+ owner = "muffinmad";
+ repo = "emacs-django-commands";
+ rev = "1b19436a1160d1552207d4356d5e78793dabe100";
+ sha256 = "1zb8mf0dgdr83n61a54m5grhdr6nz75zrgwczpzfl3f66xkvfci9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fd217a23a9670c7eb826360b34df1a06ab3e450f/recipes/django-commands";
+ sha256 = "17k9bnig2cfnxbbz6k9vdk5k5gzhvn1h5j9wvww7n137c9vv0qmk";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/django-commands";
+ license = lib.licenses.free;
+ };
+ }) {};
docker = callPackage ({ dash
, docker-tramp
, emacs
@@ -10027,12 +10748,12 @@
melpaBuild {
pname = "docker";
ename = "docker";
- version = "0.7.0";
+ version = "1.3.0";
src = fetchFromGitHub {
owner = "Silex";
repo = "docker.el";
- rev = "0bcc50fa0c94c1647511d37efcb46fa8b5d23db3";
- sha256 = "12qggbxjmj939zzv774cqydfa3ykw7v77qphkjvlx2j2vq7r1d90";
+ rev = "e127a157f8d0d9ffd465075ecf6558f36d2d3b24";
+ sha256 = "1g8r1faqp0z0vqp9qrl8m84pa0v2ddvc91klphdkfmldwv7rfipw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6c74bf8a41c17bc733636f9e7c05f3858d17936b/recipes/docker";
@@ -10192,31 +10913,23 @@
, fetchurl
, lib
, melpaBuild
- , projectile
, shrink-path }:
melpaBuild {
pname = "doom-modeline";
ename = "doom-modeline";
- version = "0.2.0";
+ version = "1.9.6";
src = fetchFromGitHub {
owner = "seagle0128";
repo = "doom-modeline";
- rev = "845e0319d3cce53424e2c804290c16014df53709";
- sha256 = "135152m1a96549blh658lvk4q76dy3bhnl2f0vf78q1pxnrv9mx1";
+ rev = "64f1cf5de1689b76f04575758c07a74f1e9727a0";
+ sha256 = "0yklidlr9dv508mzmpnxlffyrc49vs3dxi2axlzf4yd89ng7x4lm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f4f610757f85fb01bd9b1dd212ddbea8f34f3ecd/recipes/doom-modeline";
sha256 = "0pscrhhgk4wpz1f2r94ficgan4f9blbhqzvav1wjahwp7fn5m29j";
name = "recipe";
};
- packageRequires = [
- all-the-icons
- dash
- eldoc-eval
- emacs
- projectile
- shrink-path
- ];
+ packageRequires = [ all-the-icons dash eldoc-eval emacs shrink-path ];
meta = {
homepage = "https://melpa.org/#/doom-modeline";
license = lib.licenses.free;
@@ -10232,12 +10945,12 @@
melpaBuild {
pname = "doom-themes";
ename = "doom-themes";
- version = "2.1.1";
+ version = "2.1.6";
src = fetchFromGitHub {
owner = "hlissner";
repo = "emacs-doom-themes";
- rev = "98120f9b362b53983e932f126cf92848297b745a";
- sha256 = "03pnnbqa09iqyypgbgwlkxr6w1j46rla6pivbq7fy366yk2x03x0";
+ rev = "39e6971e81181b86a57f65cd0ea31376203a9756";
+ sha256 = "042pzcdhxi2z07jcscgjbaki9nrrm0cbgbbrnymd1r4q8ckkn8l9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c5084bc2c3fe378af6ff39d65e40649c6359b7b5/recipes/doom-themes";
@@ -10276,6 +10989,32 @@
license = lib.licenses.free;
};
}) {};
+ double-saber = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "double-saber";
+ ename = "double-saber";
+ version = "0.0.3";
+ src = fetchFromGitHub {
+ owner = "dp12";
+ repo = "double-saber";
+ rev = "5555dc28cbaa228fa8f9390738a4200e071380b8";
+ sha256 = "06ykn84hp4yvf6z2457jqgyck70y30361l8617ilb7g337hk15xl";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/19f5c0195ad9b278a7aaa3fd8e70c0004cc03500/recipes/double-saber";
+ sha256 = "0zsmyvlxm3my3xbj7m38539vk2dl7azi1v7jb41kdiavj2cc55zg";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/double-saber";
+ license = lib.licenses.free;
+ };
+ }) {};
downplay-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -10301,6 +11040,31 @@
license = lib.licenses.free;
};
}) {};
+ dpkg-dev-el = callPackage ({ debian-el
+ , fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "dpkg-dev-el";
+ ename = "dpkg-dev-el";
+ version = "37.1";
+ src = fetchgit {
+ url = "https://salsa.debian.org/emacsen-team/dpkg-dev-el.git";
+ rev = "04fb5c930269e64ed73a13fa909588002f4e4e4f";
+ sha256 = "0i0m4hdpdr4wz3r8cgxslwhm23z7002648dm7cw7cf3fwd4gi47q";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3e057df3608780a6191f761b9a81262c2eaa053c/recipes/dpkg-dev-el";
+ sha256 = "1cgfzxlw4m3wsl5fhck08pc2w7fw91mxk58yaprk9lkw4jxd1yjy";
+ name = "recipe";
+ };
+ packageRequires = [ debian-el ];
+ meta = {
+ homepage = "https://melpa.org/#/dpkg-dev-el";
+ license = lib.licenses.free;
+ };
+ }) {};
dr-racket-like-unicode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -10335,12 +11099,12 @@
melpaBuild {
pname = "dracula-theme";
ename = "dracula-theme";
- version = "1.4.0";
+ version = "1.5.1";
src = fetchFromGitHub {
owner = "dracula";
repo = "emacs";
- rev = "1f649824d996b1ecdcc5980210b774f0cb950e9a";
- sha256 = "1gsj8na6nnz0vv9j215wdf39q834chc6pmk9mv8hcvcbdbc4f8wa";
+ rev = "66e429f4d576346661ae3a111bafaa06febc1d94";
+ sha256 = "0lyy8vjzzcfcj4hm7scxl4cg4qm67rprzdj7dmyc3907yad4n023";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d63cb8906726f106e65f7d9895b49a38ffebf8d5/recipes/dracula-theme";
@@ -10461,12 +11225,12 @@
melpaBuild {
pname = "dtrt-indent";
ename = "dtrt-indent";
- version = "0.7";
+ version = "0.8";
src = fetchFromGitHub {
owner = "jscheid";
repo = "dtrt-indent";
- rev = "0ac070c9576e4ebab12cd6800ac2ac3abcecc2c1";
- sha256 = "0dambn5l0wvbhccvhh5hbz9hw66y4mp1la3wj85dl9kgr7hq1ry7";
+ rev = "9ab9cb9d7f391fb09f61c9289c51c36374ddbcbb";
+ sha256 = "0pgf0pvqd8k4yzhdn2df9lp0y8hmlm2ccrh07jivwlccs95pcz7z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/61bcbcfa6c0f38a1d87f5b6913b8be6c50ef2994/recipes/dtrt-indent";
@@ -10535,28 +11299,28 @@
license = lib.licenses.free;
};
}) {};
- dyalog-mode = callPackage ({ cl-lib ? null
- , emacs
- , fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
+ dune = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
melpaBuild {
- pname = "dyalog-mode";
- version = "0.7";
- src = fetchhg {
- url = "https://bitbucket.com/harsman/dyalog-mode";
- rev = "87db00b912be";
- sha256 = "0jg289fj4q83dwj7i0w5zq8bwqxzwzzmyhvdrk6cfw3q6rlwk5fp";
+ pname = "dune";
+ ename = "dune";
+ version = "1.8.2";
+ src = fetchFromGitHub {
+ owner = "ocaml";
+ repo = "dune";
+ rev = "d7bfa6005cf6043df24d824ffc5a2243e70bce20";
+ sha256 = "07c615kfpxawpv1fxlvk5nf48bcf54gs5fhad8fcvmknsq4lj7ib";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/dyalog-mode";
- sha256 = "1y17nd2xd8b3mhaybws8dr7yanzwqij9gzfywisy65ckflm9kfyq";
- name = "dyalog-mode";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/06648d1d37767cbdc7588d7a8f709d679d478a3b/recipes/dune";
+ sha256 = "1lqza4fjm9xxmdn8040bvsl467qzjy709dlmiq2241gfhxpmvvr7";
+ name = "recipe";
};
- packageRequires = [ cl-lib emacs ];
+ packageRequires = [];
meta = {
- homepage = "https://melpa.org/#/dyalog-mode";
+ homepage = "https://melpa.org/#/dune";
license = lib.licenses.free;
};
}) {};
@@ -10782,12 +11546,12 @@
melpaBuild {
pname = "eacl";
ename = "eacl";
- version = "1.1.3";
+ version = "2.0.1";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "eacl";
- rev = "ccf1401b1acff67fe445c95e8be7b09e8c3ae5d8";
- sha256 = "0v02asdmhj5la9nqck2230s04gf518cjs7wa4lykf8j46bc13vac";
+ rev = "ba6a95838422ec33191beaa12b3e43b67c105abc";
+ sha256 = "0ksn11sm3g1ja5lpjz3hrzzw8b480mfcb3q589m52qjgvvn5iyfv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8223bec7eed97f0bad300af9caa4c8207322d39a/recipes/eacl";
@@ -10809,12 +11573,12 @@
melpaBuild {
pname = "easy-hugo";
ename = "easy-hugo";
- version = "3.3.30";
+ version = "3.8.37";
src = fetchFromGitHub {
owner = "masasam";
repo = "emacs-easy-hugo";
- rev = "8bf48b973905c4ab488633226b3dfb3317d8c745";
- sha256 = "0yjxg1mql7ha6wa5wdkngs6y3lqz5y5y0hbsmpvqdw61paqm2ggs";
+ rev = "e7b6c75a7e46290d9d0cdac9ec56fbf35a6b9c98";
+ sha256 = "1xhyky1593qxq7kfbv2ighx957w5pizkki0q77nrvjxlwbqghgz2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/easy-hugo";
@@ -10835,12 +11599,12 @@
melpaBuild {
pname = "easy-jekyll";
ename = "easy-jekyll";
- version = "1.6.15";
+ version = "2.0.19";
src = fetchFromGitHub {
owner = "masasam";
repo = "emacs-easy-jekyll";
- rev = "84c19d0380617ce2e40a2b42ce9bedf65e52779d";
- sha256 = "1vbb60vb98nqbwrxl6p3gcvjpnjlscp0hp4k53rcgjd75w9vbnsj";
+ rev = "5ee52c0bb01336a03a8f07e072841caf13f86c0a";
+ sha256 = "1xibnw3jmmwrc1z7hnifjzhq4mn2834lk7f22x7rwh857iamlply";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c3f281145bad12c27bdbef32ccc07b6a5f13b577/recipes/easy-jekyll";
@@ -10888,12 +11652,12 @@
melpaBuild {
pname = "easy-kill-extras";
ename = "easy-kill-extras";
- version = "0.9.4.1";
+ version = "0.9.6";
src = fetchFromGitHub {
owner = "knu";
repo = "easy-kill-extras.el";
- rev = "e60a74d7121eff7c263098aea2901cc05a5f6acd";
- sha256 = "1rabkb2pkafnfx68df1zjwbj8bl7361n35lvzrvldc3v85bfam48";
+ rev = "b8ce8350cc86e0229f195082557970cd51def960";
+ sha256 = "1f8db92zzk8g8yyj0g334mdbgqmzrs8xamm1d24jai1289hm29xa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7b55d93f78fefde47a2bd4ebbfd93c028fab1f40/recipes/easy-kill-extras";
@@ -10987,30 +11751,28 @@
license = lib.licenses.free;
};
}) {};
- ebib = callPackage ({ dash
- , emacs
+ ebib = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
, lib
, melpaBuild
- , parsebib
- , seq }:
+ , parsebib }:
melpaBuild {
pname = "ebib";
ename = "ebib";
- version = "2.11.11";
+ version = "2.16.3";
src = fetchFromGitHub {
owner = "joostkremers";
repo = "ebib";
- rev = "212dea4a52f04eaa1d13a895fffea04f5884f12b";
- sha256 = "150dggfk79pk11qlzfl2sk1xaibdy0sbh6n94r7i2w235p2yg8p5";
+ rev = "4d842a1eec68e08acc9d4d77d7d7c3014d5cd55e";
+ sha256 = "03fkj0grbv9xh1vb441rcxannjmkvaklqziwhxkrij287d2f0ak4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4e39cd8e8b4f61c04fa967def6a653bb22f45f5b/recipes/ebib";
sha256 = "1kdqf5nk9l6mr3698nqngrkw5dicgf7d24krir5wrcfbrsqrfmid";
name = "recipe";
};
- packageRequires = [ dash emacs parsebib seq ];
+ packageRequires = [ emacs parsebib ];
meta = {
homepage = "https://melpa.org/#/ebib";
license = lib.licenses.free;
@@ -11141,14 +11903,14 @@
ename = "ede-php-autoload";
version = "1.1.0";
src = fetchFromGitHub {
- owner = "stevenremot";
+ owner = "emacs-php";
repo = "ede-php-autoload";
rev = "3f13302b9e8dbb6a24205c4bc21acadff487d30b";
sha256 = "03mjw824d0l2g8n07ys3j89x8chbx64znhhz14y6ni4b9650njdf";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/8ee9f7fd9cbc3397cd9af34b08b75c3d9d8bc551/recipes/ede-php-autoload";
- sha256 = "0b7qbighncipgfaksvggpyldc5h0wxbjbiyaghglvycc4p1sfjd0";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/afc7ddfcf16e92889e54f30599b576a24823f60d/recipes/ede-php-autoload";
+ sha256 = "1255a1drpb50650i0yijahbp97chpw89mi9fvdrk3vf64xlysamq";
name = "recipe";
};
packageRequires = [];
@@ -11290,6 +12052,7 @@
};
}) {};
editorconfig = callPackage ({ cl-lib ? null
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -11297,19 +12060,19 @@
melpaBuild {
pname = "editorconfig";
ename = "editorconfig";
- version = "0.7.12";
+ version = "0.8.0";
src = fetchFromGitHub {
owner = "editorconfig";
repo = "editorconfig-emacs";
- rev = "ae856b02a6513521bdf6a77a7ef51805fb0abf57";
- sha256 = "0y13276ajz12rw1xcfqnr7q6kkk6zi0f55p10nblfkhxclhr0f7z";
+ rev = "4b6c34d5d77025a11ae68462af9bf0a822a13242";
+ sha256 = "1b2cpqz75pivl323bs60j5rszwi787x6vy68csycikqz9mhpmjn9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/50d4f2ed288ef38153a7eab44c036e4f075b51d0/recipes/editorconfig";
sha256 = "0zv96m07ml8i3k7zm7sdci4hn611n3ypna7zppfkwbdyr7d5k2gc";
name = "recipe";
};
- packageRequires = [ cl-lib ];
+ packageRequires = [ cl-lib emacs ];
meta = {
homepage = "https://melpa.org/#/editorconfig";
license = lib.licenses.free;
@@ -11430,12 +12193,12 @@
melpaBuild {
pname = "egg";
ename = "egg";
- version = "1.0.9";
+ version = "1.1.4";
src = fetchFromGitHub {
owner = "byplayer";
repo = "egg";
- rev = "59e87b5f150ba5add385b29f8e07cb41e6588bca";
- sha256 = "16cs1ba2v2pm8wsm6z71s7ad619f45vi4v6hwqswi6fljjhmc175";
+ rev = "00e768a78ac3d25f457eed667d02cac568480bf9";
+ sha256 = "1ak23v9gqj6x104mzgihn0hi7w0kr76q1sl929wmbb9h8s3a54q8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a1c97870c2641d73685f07a12f010530cc186544/recipes/egg";
@@ -11455,16 +12218,16 @@
melpaBuild {
pname = "egison-mode";
ename = "egison-mode";
- version = "3.7.10";
+ version = "3.7.14";
src = fetchFromGitHub {
- owner = "egisatoshi";
- repo = "egison3";
- rev = "0f8289294b1a8de029f89643438e8384e7ee789f";
- sha256 = "1rkxz4gj11z1jpd3g71m6sbzb5j4ggm6sixk3r18wb8wv91v4fgs";
+ owner = "egison";
+ repo = "egison";
+ rev = "ddc6d910be421d891efc8c7c033b99b10364c4c3";
+ sha256 = "1rw5xjs4hnikj2swskczxn3x31811znsgzj72b975zbmd5vp98kd";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/f543dd136e2af6c36b12073ea75b3c4d4bc79769/recipes/egison-mode";
- sha256 = "0x11fhv8kkx34h831k2q70y5qfz7wnfia4ka5mbmps7mpr68zcwi";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/egison-mode";
+ sha256 = "0bch4863l9wxrss63fj46gy3nx3hp635709xr4c2arw0j7n82lzd";
name = "recipe";
};
packageRequires = [];
@@ -11476,25 +12239,26 @@
eglot = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
+ , flymake ? null
, jsonrpc
, lib
, melpaBuild }:
melpaBuild {
pname = "eglot";
ename = "eglot";
- version = "1.1";
+ version = "1.4";
src = fetchFromGitHub {
owner = "joaotavora";
repo = "eglot";
- rev = "9211f162dc3eb956c51faeb3e7195603fa84c60c";
- sha256 = "0p3fry60xvh7za0p8pyz4h21nzj6df1cbl9lxdzd19rwfd35fzpp";
+ rev = "35597d262b53bde52faa46ee6ae8c597d93114e8";
+ sha256 = "1qx3ixaaaffhmbh3ifi5041lp7xp4ab4x4n1mal3wcpp70asxvdp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6c644530eca56f93d94fac2c9d7663c35c2b8c01/recipes/eglot";
sha256 = "17w39hcgv4p49g841qaicjdx7xac72yxvsc83jf1rrakg713pj7y";
name = "recipe";
};
- packageRequires = [ emacs jsonrpc ];
+ packageRequires = [ emacs flymake jsonrpc ];
meta = {
homepage = "https://melpa.org/#/eglot";
license = lib.licenses.free;
@@ -11533,19 +12297,18 @@
, lib
, melpaBuild
, request
- , request-deferred
, s
, skewer-mode
, websocket }:
melpaBuild {
pname = "ein";
ename = "ein";
- version = "0.14.1";
+ version = "0.15.0";
src = fetchFromGitHub {
owner = "millejoh";
repo = "emacs-ipython-notebook";
- rev = "fcf9bff0af071f5e2020ac77d9a9473325e4c5bb";
- sha256 = "1xk7k4av9hy0i7zqwpzis0rjp5myvxs52k45ah00zg8wi5hybq1x";
+ rev = "f2e9193da64ee6a0398165e3d6f0855ab3d6eff2";
+ sha256 = "10hkk5v9lgwcwr6kd095kpw1zab6658x3j17mwa6bfp2in2sjsv3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/215e163755fe391ce1f049622e7b9bf9a8aea95a/recipes/ein";
@@ -11558,7 +12321,6 @@
dash
deferred
request
- request-deferred
s
skewer-mode
websocket
@@ -11593,6 +12355,37 @@
license = lib.licenses.free;
};
}) {};
+ ejc-sql = callPackage ({ auto-complete
+ , clomacs
+ , dash
+ , direx
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , spinner }:
+ melpaBuild {
+ pname = "ejc-sql";
+ ename = "ejc-sql";
+ version = "0.2";
+ src = fetchFromGitHub {
+ owner = "kostafey";
+ repo = "ejc-sql";
+ rev = "82879290aca8ef1ec7a0f8b968b5b7f355907e8e";
+ sha256 = "00qw1md2i6izpafpz2mj7i22sq1pnzgfsv2kvpq00aqbink47k83";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e01655679087504db1206b22435ba8eb7050aa23/recipes/ejc-sql";
+ sha256 = "13i55l6hwsxbmdxmvh6aajayivgskw4iagmj9in1qkd9rnrykhn9";
+ name = "recipe";
+ };
+ packageRequires = [ auto-complete clomacs dash direx emacs spinner ];
+ meta = {
+ homepage = "https://melpa.org/#/ejc-sql";
+ license = lib.licenses.free;
+ };
+ }) {};
el-autoyas = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -11735,12 +12528,12 @@
melpaBuild {
pname = "el-patch";
ename = "el-patch";
- version = "2.1";
+ version = "2.2.2";
src = fetchFromGitHub {
owner = "raxod502";
repo = "el-patch";
- rev = "c10108162bc72b8d09ccf9c914e892e1209f9c20";
- sha256 = "0fibq04fncv8pia8xjaxc6gc4x046cg26ag6dw6gg0wj79gpyrv9";
+ rev = "66510e01598a2c4ce6c973e0b6c1691d8d24c8e6";
+ sha256 = "1mvb9fpzj65yfhjcbvbdqjaa8adn64ik8zccpppls3fq656rwbml";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2f4f57e0edbae35597aa4a7744d22d2f971d5de5/recipes/el-patch";
@@ -11841,13 +12634,13 @@
version = "1.2";
src = fetchFromGitHub {
owner = "NicolasPetton";
- repo = "Elbank";
+ repo = "elbank";
rev = "f494716105b1a9f4f52f43bc3dd37c9cd0309bf5";
sha256 = "0bvx6nq0gjjbjs0mzd1x1ajyjpa181z0n4kv4aknh3is210gbpbb";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/05d252ee84adae2adc88fd325540f76b6cdaf010/recipes/elbank";
- sha256 = "1ry84aiajyrnrspf7w4yjm0rmdam8ijrz0s7291yr8c70hslc997";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/elbank";
+ sha256 = "1i1cdywcbdj9ykfczbagrqdpgf3c88f1kc0mdlj8mzyvjixx7mhk";
name = "recipe";
};
packageRequires = [ emacs seq ];
@@ -11884,6 +12677,32 @@
license = lib.licenses.free;
};
}) {};
+ eldoc-box = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "eldoc-box";
+ ename = "eldoc-box";
+ version = "1.8";
+ src = fetchFromGitHub {
+ owner = "casouri";
+ repo = "eldoc-box";
+ rev = "61dd07f6709ed04f09615d04457b4cfe73c7ace1";
+ sha256 = "1ajg8x5s9yranidx17jz0da7439lwsdkw105531zq9547n31as65";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aac2e64f9e0d06b95bdf0dece214263f75470ea8/recipes/eldoc-box";
+ sha256 = "11720hi2gvjwc4x2yrxnrhh76wf3sj3yd0vaa3sc22xa5g1wi40r";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/eldoc-box";
+ license = lib.licenses.free;
+ };
+ }) {};
eldoc-eval = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -11919,12 +12738,12 @@
melpaBuild {
pname = "electric-operator";
ename = "electric-operator";
- version = "1.0.0";
+ version = "1.1.0";
src = fetchFromGitHub {
owner = "davidshepherd7";
repo = "electric-operator";
- rev = "16df9e16da8efe25d410ba17165d7f5c1ad4e043";
- sha256 = "010zr6dgix6bf8xshs8kascpzcrg83vqd1w71qin9anw6rf3z4d4";
+ rev = "21e6b84754118912768263a393442a7aefb4742b";
+ sha256 = "1bgz5vn4piax8jm0ixqlds0qj5my26zczaxs21fah11pwbdc0xyk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/906cdf8647524bb76f644373cf8b65397d9053a5/recipes/electric-operator";
@@ -11971,12 +12790,12 @@
melpaBuild {
pname = "elfeed";
ename = "elfeed";
- version = "3.0.0";
+ version = "3.1.0";
src = fetchFromGitHub {
owner = "skeeto";
repo = "elfeed";
- rev = "7e0abfee1470ae6323b559a7a9f843dd0076d622";
- sha256 = "01x4ww63lvn04c7f3ab5vx2s20xqisvv8213qwswz7vr9nxja5yi";
+ rev = "3d1c6ecbe585f9fe6ca5a97a3fc352d68f303f9e";
+ sha256 = "1bzpl6lc7kq9bph4bfz1fn19207blrnhjr2g7yinhn0nnnjmxi8i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/407ae027fcec444622c2a822074b95996df9e6af/recipes/elfeed";
@@ -11999,12 +12818,12 @@
melpaBuild {
pname = "elfeed-protocol";
ename = "elfeed-protocol";
- version = "0.5.3";
+ version = "0.5.9";
src = fetchFromGitHub {
owner = "fasheng";
repo = "elfeed-protocol";
- rev = "611a1f57373e3692abf5122652ea7f6f96d3f6ec";
- sha256 = "0z9xij39p6m2855ksk40qaf830d04smhl3ag9gjb4fhzvw671k76";
+ rev = "c5faca15ccfe7e03dc4ee1372a07671c20015737";
+ sha256 = "1cdg111dgpphlpv2csv9nr5p2zjk3qss7bf0y8485nnzcin4ip9f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3f1eef8add7cd2cfefe6fad6d8e69d65696e9677/recipes/elfeed-protocol";
@@ -12027,12 +12846,12 @@
melpaBuild {
pname = "elfeed-web";
ename = "elfeed-web";
- version = "3.0.0";
+ version = "3.1.0";
src = fetchFromGitHub {
owner = "skeeto";
repo = "elfeed";
- rev = "7e0abfee1470ae6323b559a7a9f843dd0076d622";
- sha256 = "01x4ww63lvn04c7f3ab5vx2s20xqisvv8213qwswz7vr9nxja5yi";
+ rev = "3d1c6ecbe585f9fe6ca5a97a3fc352d68f303f9e";
+ sha256 = "1bzpl6lc7kq9bph4bfz1fn19207blrnhjr2g7yinhn0nnnjmxi8i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/62459d16ee44d5fcf170c0ebc981ca2c7d4672f2/recipes/elfeed-web";
@@ -12113,13 +12932,13 @@
version = "1.3";
src = fetchFromGitHub {
owner = "Wilfred";
- repo = "refs.el";
+ repo = "elisp-refs";
rev = "788f6f65d5171b1887b3ff9e4cad900e8046b2b1";
sha256 = "0c7hcbjqynw6k5idpmfxn6xbr192ahhk8a2g72npap97flpw6cdq";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/60891099e241ebd32d39bdcfe4953529a5a3263e/recipes/elisp-refs";
- sha256 = "16h7dccmzvmap3knnwhjq79wm82xm3whria70vq5msl2y252f6cx";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/elisp-refs";
+ sha256 = "1pj3dm2z6m24179ibl7zhr8lhan2v2rjnm3abfciwp228piz1sfz";
name = "recipe";
};
packageRequires = [ dash loop s ];
@@ -12165,14 +12984,14 @@
ename = "elixir-mode";
version = "2.3.1";
src = fetchFromGitHub {
- owner = "elixir-lang";
+ owner = "elixir-editors";
repo = "emacs-elixir";
rev = "a1f4d60ec555574c945201359d2e32b183c69f4b";
sha256 = "06bi68x49v6f7flpz279mm4jpg31ll3s274givm3pvr8slcxs6xg";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/6374ced0de38d83bf99147f702f30706615480ed/recipes/elixir-mode";
- sha256 = "1dba3jfg210i2rw8qy866396xn2xjgmbcyl006d6fibpr3j4lxaf";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/elixir-mode";
+ sha256 = "0d25p6sal1qg1xsq5yk343afnrxa0lzpx5gsh72khnx2i8pi40vz";
name = "recipe";
};
packageRequires = [ emacs pkg-info ];
@@ -12322,12 +13141,12 @@
melpaBuild {
pname = "elpa-clone";
ename = "elpa-clone";
- version = "0.0.6";
+ version = "0.0.7";
src = fetchFromGitHub {
owner = "dochang";
repo = "elpa-clone";
- rev = "92f4c9d3570ad002575a90d0cc4a522c203a1110";
- sha256 = "0m5w5wgyslvakcqpr3d198sy3561w2h002gflw0jp47v17hba1r7";
+ rev = "5dddbab4c27ec6aca541a1f8e9792617f10fc325";
+ sha256 = "17lbdgwg97x8q8dbghylr2j0nwb72mpfl679qb0pl9184ih27qfc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/11861edd9c7f9deebd44fd1f8ef648e7a04caf2b/recipes/elpa-clone";
@@ -12380,12 +13199,12 @@
melpaBuild {
pname = "elpy";
ename = "elpy";
- version = "1.22.0";
+ version = "1.28.0";
src = fetchFromGitHub {
owner = "jorgenschaefer";
repo = "elpy";
- rev = "47eac168f38e40fc07f56ea37fb1bee7f645e42a";
- sha256 = "09inijph1r0l94balf0z01g2dgx22y53c346cxf4fkm2hcjd2fd7";
+ rev = "b4803b554d78941e871cd976ff7828294e85c991";
+ sha256 = "073bwxwjzcbmvpcz9q2xjwzx9x7hkvjni6fwvikh6yawzjp56jis";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1d8fcd8745bb15402c9f3b6f4573ea151415237a/recipes/elpy";
@@ -12485,6 +13304,34 @@
license = lib.licenses.free;
};
}) {};
+ elscreen-tab = callPackage ({ dash
+ , elscreen
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "elscreen-tab";
+ ename = "elscreen-tab";
+ version = "1.0.0";
+ src = fetchFromGitHub {
+ owner = "aki-s";
+ repo = "elscreen-tab";
+ rev = "29d7a65c3e134dd476049c9aebc8d029238e71f7";
+ sha256 = "0303i61m1qg65d3i3hsy7pzdhw0icpx3im99qkfmy6lxi4h9nd0p";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/06a8348c6911936e16a98cf216578ea148e20e5d/recipes/elscreen-tab";
+ sha256 = "18krbs462cwi3pf72kn1zf1jf4gv9n3ffdg4v5bgb19i69sq7spi";
+ name = "recipe";
+ };
+ packageRequires = [ dash elscreen emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/elscreen-tab";
+ license = lib.licenses.free;
+ };
+ }) {};
elwm = callPackage ({ dash
, fetchFromGitHub
, fetchurl
@@ -12519,12 +13366,12 @@
melpaBuild {
pname = "elx";
ename = "elx";
- version = "1.2.4";
+ version = "1.2.6";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "elx";
- rev = "10a21c35915e249d5487aa3ced70fcfb749a9d0c";
- sha256 = "1jl2lp4gas89vx1xjx5gzh56fhx16mvfqwqs84cpxdbwb2qzch21";
+ rev = "c554db7e7f2c0c8a503def7739b8205193ba821f";
+ sha256 = "07i739v2w5dbhyfhvfw4phcrdk5sf7ncsd47y8hkf5m4zgw4kw4n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/57a2fb9524df3fdfdc54c403112e12bd70888b23/recipes/elx";
@@ -12613,38 +13460,33 @@
license = lib.licenses.free;
};
}) {};
- emacsql = callPackage ({ cl-generic
- , cl-lib ? null
- , emacs
+ emacsql = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
- , finalize
, lib
, melpaBuild }:
melpaBuild {
pname = "emacsql";
ename = "emacsql";
- version = "2.0.3";
+ version = "3.0.0";
src = fetchFromGitHub {
owner = "skeeto";
repo = "emacsql";
- rev = "dcf0dda9391f3978896547582efb72b5632c2ffe";
- sha256 = "07gvx0bbpf6j3g8kpk9908wf8fx1yb3075v6407wjxxighl0n5zz";
+ rev = "8c5f095458aa37e4146b80d9319ee63571734127";
+ sha256 = "1c84gxr1majqj4b59wgdy3lzm3ap66w9qsrnkx8hdbk9895ak81g";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9c3b6175b5c64f03b0b9dfdc10f393081d681309/recipes/emacsql";
sha256 = "0c2d0kymzr53wh87fq1wy2x5ahfsymz0cw8qbrqx0k613l3mpr38";
name = "recipe";
};
- packageRequires = [ cl-generic cl-lib emacs finalize ];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/emacsql";
license = lib.licenses.free;
};
}) {};
- emacsql-mysql = callPackage ({ cl-generic
- , cl-lib ? null
- , emacs
+ emacsql-mysql = callPackage ({ emacs
, emacsql
, fetchFromGitHub
, fetchurl
@@ -12653,57 +13495,52 @@
melpaBuild {
pname = "emacsql-mysql";
ename = "emacsql-mysql";
- version = "2.0.3";
+ version = "3.0.0";
src = fetchFromGitHub {
owner = "skeeto";
repo = "emacsql";
- rev = "5df2891557f52eadd094eca618775163b1618af5";
- sha256 = "18916pxlgamprv9lk0g0bfyx040imyfzry5r35gyf4s4jb8kjnsm";
+ rev = "ea613c5191dcaa2583d3f7d5737b31bb88a07ed5";
+ sha256 = "1i733wjvpd6lhdnwr8w2k0c8s7v7r9ivsmxxgdndlhdnkm17ca5j";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9cc47c05fb0d282531c9560252090586e9f6196e/recipes/emacsql-mysql";
sha256 = "1c20zhpdzfqjds6kcjhiq1m5ch53fsx6n1xk30i35kkg1wxaaqzy";
name = "recipe";
};
- packageRequires = [ cl-generic cl-lib emacs emacsql ];
+ packageRequires = [ emacs emacsql ];
meta = {
homepage = "https://melpa.org/#/emacsql-mysql";
license = lib.licenses.free;
};
}) {};
- emacsql-psql = callPackage ({ cl-generic
- , cl-lib ? null
- , emacs
+ emacsql-psql = callPackage ({ emacs
, emacsql
, fetchFromGitHub
, fetchurl
, lib
- , melpaBuild
- , pg }:
+ , melpaBuild }:
melpaBuild {
pname = "emacsql-psql";
ename = "emacsql-psql";
- version = "2.0.3";
+ version = "3.0.0";
src = fetchFromGitHub {
owner = "skeeto";
repo = "emacsql";
- rev = "5df2891557f52eadd094eca618775163b1618af5";
- sha256 = "18916pxlgamprv9lk0g0bfyx040imyfzry5r35gyf4s4jb8kjnsm";
+ rev = "ea613c5191dcaa2583d3f7d5737b31bb88a07ed5";
+ sha256 = "1i733wjvpd6lhdnwr8w2k0c8s7v7r9ivsmxxgdndlhdnkm17ca5j";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9cc47c05fb0d282531c9560252090586e9f6196e/recipes/emacsql-psql";
sha256 = "1aa1g9jyjmz6w0lmi2cf67926ad3xvs0qsg7lrccnllr9k0flly3";
name = "recipe";
};
- packageRequires = [ cl-generic cl-lib emacs emacsql pg ];
+ packageRequires = [ emacs emacsql ];
meta = {
homepage = "https://melpa.org/#/emacsql-psql";
license = lib.licenses.free;
};
}) {};
- emacsql-sqlite = callPackage ({ cl-generic
- , cl-lib ? null
- , emacs
+ emacsql-sqlite = callPackage ({ emacs
, emacsql
, fetchFromGitHub
, fetchurl
@@ -12712,19 +13549,19 @@
melpaBuild {
pname = "emacsql-sqlite";
ename = "emacsql-sqlite";
- version = "2.0.3";
+ version = "3.0.0";
src = fetchFromGitHub {
owner = "skeeto";
repo = "emacsql";
- rev = "e597696682a9a7f9d2a8350dfe1f7beb05365da4";
- sha256 = "1900aca9nbcwmmmpm5h46zblzay47i2v4x4zb0w7mnzcidq8g1h4";
+ rev = "62d39157370219a1680265fa593f90ccd51457da";
+ sha256 = "0ghl3g8n8wlw8rnmgbivlrm99wcwn93bv8flyalzs0z9j7p7fdq9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3cfa28c7314fa57fa9a3aaaadf9ef83f8ae541a9/recipes/emacsql-sqlite";
sha256 = "1y81nabzzb9f7b8azb9giy23ckywcbrrg4b88gw5qyjizbb3h70x";
name = "recipe";
};
- packageRequires = [ cl-generic cl-lib emacs emacsql ];
+ packageRequires = [ emacs emacsql ];
meta = {
homepage = "https://melpa.org/#/emacsql-sqlite";
license = lib.licenses.free;
@@ -12833,6 +13670,34 @@
license = lib.licenses.free;
};
}) {};
+ emidje = callPackage ({ cider
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , seq }:
+ melpaBuild {
+ pname = "emidje";
+ ename = "emidje";
+ version = "1.1.0";
+ src = fetchFromGitHub {
+ owner = "nubank";
+ repo = "emidje";
+ rev = "e3ab498a21cefae2690b9bcf3f125517a6b984cc";
+ sha256 = "004f4dqcw6m473hxj0zll9nwl4iq652d1fymcn2id0p42l7cf2kv";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/5d64b3b42b4b9acd3e9d84921df287f3217db83e/recipes/emidje";
+ sha256 = "1p2aa4wl2465gm7ljgr5lbvxfgx0g1w1170zdv3596hi07mccabs";
+ name = "recipe";
+ };
+ packageRequires = [ cider emacs seq ];
+ meta = {
+ homepage = "https://melpa.org/#/emidje";
+ license = lib.licenses.free;
+ };
+ }) {};
emmet-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -12866,11 +13731,11 @@
melpaBuild {
pname = "emms";
ename = "emms";
- version = "5.0";
+ version = "5.1";
src = fetchgit {
url = "https://git.savannah.gnu.org/git/emms.git";
- rev = "cffef39bd9297154b3ed91a68f8fc230e0f87fba";
- sha256 = "1xzfpmcp3vnslv38ql7ympmmcbl0q3wzdvkbfn245g94iyz3a97f";
+ rev = "47b1054683f4fa0a1ecd9999cb94c5c34994e018";
+ sha256 = "1lrkj4gy592mrym0qfb05hydpr7c2sbk6ap5q19zkblizf0gnad6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/emms";
@@ -12910,32 +13775,6 @@
license = lib.licenses.free;
};
}) {};
- emms-player-mpv = callPackage ({ emms
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "emms-player-mpv";
- ename = "emms-player-mpv";
- version = "0.2.0";
- src = fetchFromGitHub {
- owner = "dochang";
- repo = "emms-player-mpv";
- rev = "9c9ffc6f00a737a6db6377681a88e5292ebcf86b";
- sha256 = "17kvkx63q30p5r2lsv6pqdm2zi8my3yn3js7j3c2qlygd9sf80pz";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/9679cb8d4b3b9dce1e0bff16647ea3f3e02c4189/recipes/emms-player-mpv";
- sha256 = "175rmqx3bgys4chw8ylyf9rk07sg0llwbs9ivrv2d3ayhcz1lg9y";
- name = "recipe";
- };
- packageRequires = [ emms ];
- meta = {
- homepage = "https://melpa.org/#/emms-player-mpv";
- license = lib.licenses.free;
- };
- }) {};
emms-player-simple-mpv = callPackage ({ cl-lib ? null
, emacs
, emms
@@ -13083,21 +13922,20 @@
, paredit
, popup
, projectile
- , redshank
, s }:
melpaBuild {
pname = "emr";
ename = "emr";
- version = "0.3.7";
+ version = "0.3.8";
src = fetchFromGitHub {
- owner = "chrisbarrett";
+ owner = "Wilfred";
repo = "emacs-refactor";
- rev = "ff330b50526fa6da34bd410b506cb89408ef8c1e";
- sha256 = "1jbyg3b1y8rs2s7xq79gzllfnxcr1whg6zja2kl7zk23kkn65s7r";
+ rev = "f25e3354e5e97deef359aef5386c69dea20b07b0";
+ sha256 = "107br10jwza4pwsx8gskh9kp2g28yzxclmwd2l9z137nmf24gm3a";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2cd2ebec5bd6465bffed284130e1d534f52169a9/recipes/emr";
- sha256 = "05vpfxg6lviclnms2zyrza8dc87m60mimlwd11ihvsbngi9gcw8x";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/emr";
+ sha256 = "02a7yzv6vxdazi26wk1ijadrjffd4iaf1abhpv642xib86pgpfd6";
name = "recipe";
};
packageRequires = [
@@ -13110,7 +13948,6 @@
paredit
popup
projectile
- redshank
s
];
meta = {
@@ -13151,12 +13988,12 @@
melpaBuild {
pname = "enh-ruby-mode";
ename = "enh-ruby-mode";
- version = "20180330";
+ version = "20190325";
src = fetchFromGitHub {
owner = "zenspider";
repo = "enhanced-ruby-mode";
- rev = "b9d7d986c761e7f43993da0c3012e4fe77b19281";
- sha256 = "190x5l5jhyxhfy57hvxk06yzxji2r3f99vw6a8ngyshvyxap7wq3";
+ rev = "c478bdf32979f7b26068d1df0bd30d737a192b1e";
+ sha256 = "13m59n8xzbhn079h6dj2inabscd0pyq9z4p0vz0nhsgak1jq5ccv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cd1ac1ce69b77b11f34c4175611a852e7ec0806c/recipes/enh-ruby-mode";
@@ -13325,12 +14162,12 @@
melpaBuild {
pname = "epkg";
ename = "epkg";
- version = "3.1.0";
+ version = "3.2.0";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "epkg";
- rev = "b3dac5d4596d304f17a283c5cfe9dc77989fa96a";
- sha256 = "17qdywa8qw6n8a3r4s1cbjbmh2a4vjnxp6fqhiglbbfc1xqw2p1n";
+ rev = "4243b363d038b28650479b23949cb7dfd319542b";
+ sha256 = "0a1cw3jnnm47n0c5l8q4vf3arx244wqs7lcwsjblbnp7svcx0q4h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2df16abf56e53d4a1cc267a78797419520ff8a1c/recipes/epkg";
@@ -13404,12 +14241,12 @@
melpaBuild {
pname = "erc-crypt";
ename = "erc-crypt";
- version = "1.6";
+ version = "1.7";
src = fetchFromGitHub {
owner = "atomontage";
repo = "erc-crypt";
- rev = "731f9264a5bf08a8fc0b5ce69e72058c86f873a5";
- sha256 = "13jpq5ws5dm8fyjrskk4icxwz8k5wgh396cc8f8wxrjna4wb843w";
+ rev = "1c8b1caed52a5994aab8bd4dd196881ed537d3aa";
+ sha256 = "0w1b4pqipzdlkak9807k8xgzlc6vvni86ab92snm07909kby9xd0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a1a71b46c0370d2ed25aa3f39983048a04576ad5/recipes/erc-crypt";
@@ -13422,33 +14259,6 @@
license = lib.licenses.free;
};
}) {};
- erc-hipchatify = callPackage ({ alert
- , emacs
- , fetchhg
- , fetchurl
- , lib
- , melpaBuild
- , request
- , s }:
- melpaBuild {
- pname = "erc-hipchatify";
- version = "0.1";
- src = fetchhg {
- url = "https://bitbucket.com/seanfarley/erc-hipchatify";
- rev = "a53227513692";
- sha256 = "0av0y65hz7fbiiqzmk5mmw6jv7fivhcd1w3s2xn5y5jpgps56mrc";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/b60e01e7064ce486fdac3d1b39fd4a1296b0dac5/recipes/erc-hipchatify";
- sha256 = "1a4gl05i757vvap0rzrfwms7mhw80sa84gvbwafrvj3x11rja24x";
- name = "erc-hipchatify";
- };
- packageRequires = [ alert emacs request s ];
- meta = {
- homepage = "https://melpa.org/#/erc-hipchatify";
- license = lib.licenses.free;
- };
- }) {};
erc-hl-nicks = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -13578,6 +14388,32 @@
license = lib.licenses.free;
};
}) {};
+ eredis = callPackage ({ dash
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "eredis";
+ ename = "eredis";
+ version = "0.9.6";
+ src = fetchFromGitHub {
+ owner = "justinhj";
+ repo = "eredis";
+ rev = "cfbfc25832f6fbc507bdd56b02e3a0b851a3c368";
+ sha256 = "1f2f57c0bz3c6p11hr69aar6z5gg33zvfvsm76ma11vx21qilz6i";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/63f06713d06911f836fe2a4bf199b0794ac89cf0/recipes/eredis";
+ sha256 = "087lln2izn5bv7bprmbaciivf17vv4pz2cjl91hy2f0sww6nsiw8";
+ name = "recipe";
+ };
+ packageRequires = [ dash ];
+ meta = {
+ homepage = "https://melpa.org/#/eredis";
+ license = lib.licenses.free;
+ };
+ }) {};
erefactor = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -13640,12 +14476,12 @@
melpaBuild {
pname = "erlang";
ename = "erlang";
- version = "21.0.3";
+ version = "22.0.-1.2";
src = fetchFromGitHub {
owner = "erlang";
repo = "otp";
- rev = "9d5af99762b3795c763fb62c1516247bd3f8e12f";
- sha256 = "0anlp0qj2blgdjzdw8rxmpz659yzbdl3r69b6slm1c1aa77ayc17";
+ rev = "221f6053f7f71747e6e86f9f1122816887cf9d21";
+ sha256 = "0jk64dcp46867rja2y5xai626fp2qrvwdfzb6in1x6gl8iyhkc39";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d9cd526f43981e0826af59cdc4bb702f644781d9/recipes/erlang";
@@ -13658,6 +14494,31 @@
license = lib.licenses.free;
};
}) {};
+ erlstack-mode = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "erlstack-mode";
+ ename = "erlstack-mode";
+ version = "0.1.0";
+ src = fetchFromGitHub {
+ owner = "k32";
+ repo = "erlstack-mode";
+ rev = "07398e929978b0eaf2bf119e97cba7b9f9e90d2a";
+ sha256 = "1gf9k3z9v1s7d01s551ys87j05xh3lpnvv86dq86rz8xinc09kac";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6ee61c1c5f116082b37fb13d15052ed9bbbc1dac/recipes/erlstack-mode";
+ sha256 = "0b7mj0rs8k3hdv4v3v5vmdqs0y26mss7dzc0sjjxj4d095yddqqf";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/erlstack-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
ert-async = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -13683,7 +14544,8 @@
license = lib.licenses.free;
};
}) {};
- ert-junit = callPackage ({ ert ? null
+ ert-junit = callPackage ({ emacs
+ , ert ? null
, fetchgit
, fetchurl
, lib
@@ -13691,18 +14553,18 @@
melpaBuild {
pname = "ert-junit";
ename = "ert-junit";
- version = "0.3";
+ version = "0.4.0";
src = fetchgit {
url = "https://bitbucket.org/olanilsson/ert-junit";
- rev = "cd1f63627d4e6635086322f34be09ba535e26b97";
- sha256 = "0a2ddvpm8yparl3zq05mp239k5dgplcmc9s61ak9d5qn65l8mwyr";
+ rev = "b0649e94460aff5176dee5b33f28946bffb602d5";
+ sha256 = "0hj85hz4s1q4dalinhgahn8jn97s2pdpv41d9qqbvbdzwhhw2mrk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/27c627eacab54896a1363dbabc56250a65343dd8/recipes/ert-junit";
sha256 = "0bv22mhh1ahbjwi6s1csxkh11dmy0srabkddjd33l4havykxlg6g";
name = "recipe";
};
- packageRequires = [ ert ];
+ packageRequires = [ emacs ert ];
meta = {
homepage = "https://melpa.org/#/ert-junit";
license = lib.licenses.free;
@@ -13855,12 +14717,12 @@
melpaBuild {
pname = "esh-autosuggest";
ename = "esh-autosuggest";
- version = "2.0.0";
+ version = "2.0.1";
src = fetchFromGitHub {
owner = "dieggsy";
repo = "esh-autosuggest";
- rev = "95078aa17a104bc724283df48af36abfe4125853";
- sha256 = "0fwxk26wlk2wkqs82zs5m3rd6670mjf6bar928cqam1f63fvx09q";
+ rev = "a6d5eb3337d010bd2a2d677ff304cd53adc291a0";
+ sha256 = "0l2nnlr3b6df1xn0qjf5d5ryy1wcs1jczyfy795vsasd5gm3g0xh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dc3776068d6928fc1661a27cccaeb8fb85577099/recipes/esh-autosuggest";
@@ -14014,14 +14876,14 @@
ename = "eshell-prompt-extras";
version = "0.96";
src = fetchFromGitHub {
- owner = "hiddenlotus";
+ owner = "kaihaosw";
repo = "eshell-prompt-extras";
rev = "7581c109673c40aceff278cd524273f50ffe170d";
sha256 = "1m1jisjz974cfz89i6l2zq666yzhsqipc6dmqlrm8mw81fxsfm1h";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/eshell-prompt-extras";
- sha256 = "0kh4lvjkayjdz5lqvdqmdcblxizxk9kwmigjwa68kx8z6ngmfwa5";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/eshell-prompt-extras";
+ sha256 = "0zkdb9a8dibk832b5hzb6wjich3l0lah5p64805rgd4qskzj10gx";
name = "recipe";
};
packageRequires = [];
@@ -14170,12 +15032,12 @@
melpaBuild {
pname = "ess";
ename = "ess";
- version = "17.11";
+ version = "18.10.2";
src = fetchFromGitHub {
owner = "emacs-ess";
repo = "ESS";
- rev = "f59a95e72ba2803229cc9aeb7559186c528dbcea";
- sha256 = "0lwajgf39r75g239plbhlbppgj7vyc5via72qq906jqy89b5iic7";
+ rev = "d4cd65da6dbfabf37fc6c7a4c49fb49cf289a11c";
+ sha256 = "1avhb5mr8yyaa8gqccf8ghbl36iff61ha6444myvgqszd2a6pd8q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/156a6fa9e6ee16174d215c1dcd524aff847b3bf0/recipes/ess";
@@ -14216,26 +15078,54 @@
license = lib.licenses.free;
};
}) {};
- ess-smart-underscore = callPackage ({ fetchFromGitHub
+ ess-smart-equals = callPackage ({ emacs
+ , ess
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ess-smart-equals";
+ ename = "ess-smart-equals";
+ version = "0.3.1";
+ src = fetchFromGitHub {
+ owner = "genovese";
+ repo = "ess-smart-equals";
+ rev = "746cf9e78c3b86cbbf78d69c335a8a4ff3da79d6";
+ sha256 = "1by8bzw3yl86mqzh7lwz5dca243n956jnd2rz4vilpgbh5cka2l3";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4403cf87e05311d7fe0360f35f9634b9fdfc6f81/recipes/ess-smart-equals";
+ sha256 = "0mfmxmsqr2byj56psx4h08cjc2j3aac3xqr04yd47k2mlivnyrxp";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ess ];
+ meta = {
+ homepage = "https://melpa.org/#/ess-smart-equals";
+ license = lib.licenses.free;
+ };
+ }) {};
+ ess-smart-underscore = callPackage ({ ess
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "ess-smart-underscore";
ename = "ess-smart-underscore";
- version = "0.79";
+ version = "0.81";
src = fetchFromGitHub {
owner = "mattfidler";
repo = "ess-smart-underscore.el";
- rev = "ef18a160aeb3b1a7ae5fe93759f8e92147da8746";
- sha256 = "1avb6dng4xgw3bp7bw0j60wl6s4y26alfys9vwwj29rlzvjrlh74";
+ rev = "ed4b37e8976124a182196a721068a8e334b6aa97";
+ sha256 = "00hkq5q1ra9mqjj08f357m1lg1wx1sj4nm0rb382vhf31mlj15m7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b4d6166f5c80cf37c79256402fa633ad2274d065/recipes/ess-smart-underscore";
sha256 = "01pki1xa8zpgvldcbjwg6vmslj7ddf44hsx976xipc95vrdk15r2";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ ess ];
meta = {
homepage = "https://melpa.org/#/ess-smart-underscore";
license = lib.licenses.free;
@@ -14377,25 +15267,24 @@
eval-sexp-fu = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
- , highlight
, lib
, melpaBuild }:
melpaBuild {
pname = "eval-sexp-fu";
ename = "eval-sexp-fu";
- version = "0.4.2";
+ version = "0.5.0";
src = fetchFromGitHub {
owner = "hchbaw";
repo = "eval-sexp-fu.el";
- rev = "1cfd0f3e167d63080692fad97ffe0091b024ad73";
- sha256 = "0l20ja8s0881jlrlmba496iyizfa0j5bvc2x39rshn8qqyka2dq2";
+ rev = "e1d7165383c941b3f11c2715707adc3d91d129a0";
+ sha256 = "01mpnpgmlnfbi2yw9dxz5iw72mw3lk223bj172i4fnx3xdrrxbij";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4b1a896521cac1f54f7571ad5837ff215d01044d/recipes/eval-sexp-fu";
sha256 = "17cazf81z4cszflnfp66zyq2cclw5sp9539pxskdf267cf7r0ycs";
name = "recipe";
};
- packageRequires = [ cl-lib highlight ];
+ packageRequires = [ cl-lib ];
meta = {
homepage = "https://melpa.org/#/eval-sexp-fu";
license = lib.licenses.free;
@@ -14438,12 +15327,12 @@
melpaBuild {
pname = "evil";
ename = "evil";
- version = "1.2.13";
+ version = "1.2.14";
src = fetchFromGitHub {
owner = "emacs-evil";
repo = "evil";
- rev = "427cf5faa57e8794ac93f594dc3d1972e687a25a";
- sha256 = "02xc9zgrabnlwk3wlsxbzbhdzi3fm5fk8kimvgdcp8vsnpdcrhql";
+ rev = "3766a521a60e6fb0073220199425de478de759ad";
+ sha256 = "1833w397xhac5g3pp25szr2gyvclxy91aw27azvbmsx94pyk2a3q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/440482c0edac8ee8bd4fe22f6bc5c1607f34c7ad/recipes/evil";
@@ -14537,6 +15426,34 @@
license = lib.licenses.free;
};
}) {};
+ evil-collection = callPackage ({ cl-lib ? null
+ , emacs
+ , evil
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "evil-collection";
+ ename = "evil-collection";
+ version = "0.0.1";
+ src = fetchFromGitHub {
+ owner = "emacs-evil";
+ repo = "evil-collection";
+ rev = "733f8d0d289fcbb58705acd1049b618826a3c011";
+ sha256 = "01hr5wf693s2djs6l83nfpq6wyyws99c5nwil6hpqhvrwp4f5h95";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fbc35279115f6fdf1ce7d1ecef3b413c7ca9c4f1/recipes/evil-collection";
+ sha256 = "1l6x782ix873n90k9g00i9065h31dnhv07bgzrp28l7y7bivqwl7";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs evil ];
+ meta = {
+ homepage = "https://melpa.org/#/evil-collection";
+ license = lib.licenses.free;
+ };
+ }) {};
evil-commentary = callPackage ({ evil
, fetchFromGitHub
, fetchurl
@@ -14743,8 +15660,8 @@
sha256 = "01hccc49xxb6lnzr0lwkkwndbk4sv0jyyz3khbcxsgkpzjiydihv";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/089accfa2646fc4f265cb8e9b9a05dcf5aa4c4f6/recipes/evil-mark-replace";
- sha256 = "03cq43vlv1b53w4kw7mjvk026i8rzhhryfb27ddn6ipgc6xh68a0";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/evil-mark-replace";
+ sha256 = "14j2d46288shlixb57nh5vlqdi3aiv20djvcbhiw1cm9ar2c3y4v";
name = "recipe";
};
packageRequires = [ evil ];
@@ -14753,7 +15670,8 @@
license = lib.licenses.free;
};
}) {};
- evil-matchit = callPackage ({ evil
+ evil-matchit = callPackage ({ emacs
+ , evil
, fetchFromGitHub
, fetchurl
, lib
@@ -14761,19 +15679,19 @@
melpaBuild {
pname = "evil-matchit";
ename = "evil-matchit";
- version = "2.2.8";
+ version = "2.2.9";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "evil-matchit";
- rev = "8a10046f25e4b707ccf8ff6fbcb74e71bd32498d";
- sha256 = "0ik105g50frj87c5awy4gkq43gm4hmlzr6klx7x5fbyjx9d9f2id";
+ rev = "7d65b4167b1f0086c2b42b3aec805e47a0d355c4";
+ sha256 = "12if45pxfndy3d7r4gd3zx4d3jk4d64fdmwkhc3y5zhqq9h9iy4c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/aeab4a998bffbc784e8fb23927d348540baf9951/recipes/evil-matchit";
sha256 = "01z69n20qs4gngd28ry4kn825cax5km9hn96i87yrvq7nfa64swq";
name = "recipe";
};
- packageRequires = [ evil ];
+ packageRequires = [ emacs evil ];
meta = {
homepage = "https://melpa.org/#/evil-matchit";
license = lib.licenses.free;
@@ -14818,12 +15736,12 @@
melpaBuild {
pname = "evil-multiedit";
ename = "evil-multiedit";
- version = "1.3.8";
+ version = "1.3.9";
src = fetchFromGitHub {
owner = "hlissner";
repo = "evil-multiedit";
- rev = "c0cb6858399863e51935dae62c7c61ebc68f92eb";
- sha256 = "010y4vxj7rr5kr4csbh72s60ndqzqxdrvgkyb65vxb5vskr1n1wm";
+ rev = "cb35914ffabb4f65d22ab2f812ff6e7622cc5c26";
+ sha256 = "19h3kqylqzbjv4297wkzzxdmn9yxbg6z4ga4ssrqri90xs7m3rw3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/997f5a6999d1add57fae33ba8eb3e3bc60d7bb56/recipes/evil-multiedit";
@@ -14844,12 +15762,12 @@
melpaBuild {
pname = "evil-nerd-commenter";
ename = "evil-nerd-commenter";
- version = "3.2.3";
+ version = "3.3.7";
src = fetchFromGitHub {
owner = "redguardtoo";
repo = "evil-nerd-commenter";
- rev = "34d411715ead5829d6d8969511047feb703b067e";
- sha256 = "0ax846dy2hbrbvkj7nzfkcl5i1x9rga8bvg0ln55ivhq0iiy1lkv";
+ rev = "acc0f75cde9e4ffd946f7835c3b388fb77f633a7";
+ sha256 = "1r8shfdddys9vqvrxf7s6z83ydqx9xhqs9sa7klbsajryqcp50b7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a3e1ff69e7cc95a5b5d628524ad836833f4ee736/recipes/evil-nerd-commenter";
@@ -15164,12 +16082,12 @@
melpaBuild {
pname = "evil-surround";
ename = "evil-surround";
- version = "1.0.1";
+ version = "1.0.3";
src = fetchFromGitHub {
owner = "emacs-evil";
repo = "evil-surround";
- rev = "55c820083a5f28d5361baeb9cd7da92549e5b3f5";
- sha256 = "0qnv0c1byvzlclc8yaq6jjy61vza3zq2i773b30ss0rfpa03p13z";
+ rev = "1a4bc20f158aa9f4e4811a6363cc65ea24f167ce";
+ sha256 = "1sq7692k8ph4czqqg3f5cqlmk10q8mfkrnknnv79l9sza9jqfw9r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2c9dc47a4c837c44429a74fd998fe468c00639f2/recipes/evil-surround";
@@ -15216,12 +16134,12 @@
melpaBuild {
pname = "evil-test-helpers";
ename = "evil-test-helpers";
- version = "1.2.13";
+ version = "1.2.14";
src = fetchFromGitHub {
owner = "emacs-evil";
repo = "evil";
- rev = "427cf5faa57e8794ac93f594dc3d1972e687a25a";
- sha256 = "02xc9zgrabnlwk3wlsxbzbhdzi3fm5fk8kimvgdcp8vsnpdcrhql";
+ rev = "3766a521a60e6fb0073220199425de478de759ad";
+ sha256 = "1833w397xhac5g3pp25szr2gyvclxy91aw27azvbmsx94pyk2a3q";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/87da8c50f9167ad9c3844b23becb6904f809611d/recipes/evil-test-helpers";
@@ -15505,11 +16423,11 @@
melpaBuild {
pname = "exiftool";
ename = "exiftool";
- version = "0.3";
+ version = "0.3.1";
src = fetchgit {
url = "https://git.systemreboot.net/exiftool.el/";
- rev = "8dd70ba5214a73960361a0c6220bb4aa72b9e478";
- sha256 = "0sb71bj8djppzac02bpl3v7fy0jlidd4aagg8bmmgyp7zx84xws8";
+ rev = "4131fa38160dabd5d7143aad8aca5db575749292";
+ sha256 = "0lbsa8v39aih8mcvvdm0jang05gm5br5g2fay3lccf73c9aimrfh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4835a76909d020781021e747fbc341111a94dbfa/recipes/exiftool";
@@ -15581,12 +16499,12 @@
melpaBuild {
pname = "exsqlaim-mode";
ename = "exsqlaim-mode";
- version = "0.0.1";
+ version = "0.0.2";
src = fetchFromGitHub {
owner = "ahmadnazir";
repo = "exsqlaim-mode";
- rev = "e77d2a07addffd7df4393019d9c3dad1ab1925d9";
- sha256 = "19v5sf3nf6dciakvs7ksbg66b5z1hybc4ivs24hm6k3fziblfzzs";
+ rev = "a2e0a62ec8b87193d8eaa695774bfd689324b06c";
+ sha256 = "1gj1q2h1ja30jizkjql12cxlppj07ykr4wxqca9msy043zdhqnkk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7f660d7629bc27144c99ebcba45f1b06b14c5745/recipes/exsqlaim-mode";
@@ -15632,12 +16550,12 @@
melpaBuild {
pname = "extmap";
ename = "extmap";
- version = "1.0";
+ version = "1.1";
src = fetchFromGitHub {
owner = "doublep";
repo = "extmap";
- rev = "3860b69fb19c962425d4e271ee0a24547b67d323";
- sha256 = "1vjwinb7m9l2bw324v4m1g4mc9yqjs84bfjci93m0a1ih8n4zdbr";
+ rev = "1139b57d8f4276fe56b8416fdaf4745f2cdfe7c3";
+ sha256 = "0jgyscjfparnby0whrmbgvsab2a7qkaqhysmh3s3jh635fndm253";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/91ef4352603cc69930ab3d63f0a90eee63f5f328/recipes/extmap";
@@ -15664,12 +16582,12 @@
melpaBuild {
pname = "exwm-x";
ename = "exwm-x";
- version = "1.8.1";
+ version = "1.9.0";
src = fetchFromGitHub {
owner = "tumashu";
repo = "exwm-x";
- rev = "4f7946db67d6599baba6b3961e8f543a68707742";
- sha256 = "00lcn5106xig2y9gyir1f1gzyp2i05rwq1lbbbah8aipkdi3z9xl";
+ rev = "88c8b70be678ce0e9fa31e191ffd3f76bbfee61f";
+ sha256 = "03l3dl7s1qys1kkh40rm1sfx7axy1b8sf5f6nyksj9ps6d30p5i4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a0e6e23bcffdcd1e17c70599c563609050e5de40/recipes/exwm-x";
@@ -15854,12 +16772,12 @@
melpaBuild {
pname = "faff-theme";
ename = "faff-theme";
- version = "2.2";
+ version = "2.4";
src = fetchFromGitHub {
owner = "WJCFerguson";
repo = "emacs-faff-theme";
- rev = "8fbdf71a2e63a8ec997c387bd8319c0dc825a938";
- sha256 = "17ckad411h033l4cpg337vkwvyxrpvqvi9pa56p7mpxzfg3q8a3v";
+ rev = "e4721d00852ebd3a745db7e0ed7c9889c013f945";
+ sha256 = "0gqi9lzdbn5kh6p8a4kxjfyxb4yakpkac49lyaqcipz6spzhhzf1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0b35c169fe56a5612ff5a4242140f617fdcae14f/recipes/faff-theme";
@@ -16051,6 +16969,31 @@
license = lib.licenses.free;
};
}) {};
+ fd-dired = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "fd-dired";
+ ename = "fd-dired";
+ version = "0.1.0";
+ src = fetchFromGitHub {
+ owner = "yqrashawn";
+ repo = "fd-dired";
+ rev = "b30ebe827a244b4f27f5387be4b50d074ca67e1b";
+ sha256 = "09856pzkybs85msz0awqjw2r3b1hc9wybwq1j30qx14zzbcr3gvf";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/1217e0d4f42df68cc22de9b4f27a36c0377509e3/recipes/fd-dired";
+ sha256 = "0g8zvg6b9hcxkmqn254y9khjm7jz2lz4mh7dhsxfcy64inaj0481";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/fd-dired";
+ license = lib.licenses.free;
+ };
+ }) {};
feature-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -16191,12 +17134,12 @@
melpaBuild {
pname = "find-file-in-project";
ename = "find-file-in-project";
- version = "5.6.8";
+ version = "5.7.4";
src = fetchFromGitHub {
owner = "technomancy";
repo = "find-file-in-project";
- rev = "1c54325cb60bde7496dad4e19f4c2a857999df58";
- sha256 = "1pxqqpj6cdwbhca6vaj98d86f1l0vl09zp054wf0sv759l25ac0l";
+ rev = "389251757643daffc58e46d195c48f880d4089d5";
+ sha256 = "0758mk7fcz39zn2ihz267091lg8qiyrjz0dd3kqgfqvrc7c2n9am";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/find-file-in-project";
@@ -16218,14 +17161,14 @@
ename = "find-file-in-repository";
version = "1.2";
src = fetchFromGitHub {
- owner = "hoffstaetter";
+ owner = "h";
repo = "find-file-in-repository";
rev = "8b888f85029a2ff9159a724b42aeacdb051c3420";
sha256 = "0wbmmrd7brf4498pdyilz17rzv7221cj8sd4h11gac2r72f1q2md";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/58705ac6201b73851ce4ce9ebeb0e65463765961/recipes/find-file-in-repository";
- sha256 = "0q1ym06w2yn3nzpj018dj6h68f7rmkxczyl061mirjp8z9c6a9q6";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/find-file-in-repository";
+ sha256 = "02rihpfpckppnf5a2zgd5s3dspdhq4mr6qchlrzg2fd4byjxra9s";
name = "recipe";
};
packageRequires = [];
@@ -16338,6 +17281,31 @@
license = lib.licenses.free;
};
}) {};
+ fish-completion = callPackage ({ fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "fish-completion";
+ ename = "fish-completion";
+ version = "1.0";
+ src = fetchFromGitLab {
+ owner = "Ambrevar";
+ repo = "emacs-fish-completion";
+ rev = "23aafb993f8f74dca6e2f299030ca5d3e1aee95b";
+ sha256 = "04dcqhdb544i7c6np4prbq13cwfxw37czmpnm3j36di6c1g9gkzb";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6d17ca0213ba5ef9dce92002e281e6f08c3492be/recipes/fish-completion";
+ sha256 = "1y7vwh7w0shnrnp8x1m1sa0p7kdyz5mg1mfs263gm38in2biym9i";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/fish-completion";
+ license = lib.licenses.free;
+ };
+ }) {};
fish-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -16424,12 +17392,12 @@
melpaBuild {
pname = "fix-word";
ename = "fix-word";
- version = "0.1.2";
+ version = "0.2.0";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "fix-word";
- rev = "91552cbceac8e2b7c23036f044fc84f5c6f8e338";
- sha256 = "1pilsd3hkryyl4sd6s4nvmraszkdmcn3qdqi939yjgzp4lz3q412";
+ rev = "b3b3a3c8e33e425f9a8d0ec653adb6897c8efc03";
+ sha256 = "1nw9ih0knaqaban5nqp3anvr37mivylqs8sc8l3v1i9srlqnsj1m";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/22636390e8a15c09293a1506a901286dd72e565f/recipes/fix-word";
@@ -16543,12 +17511,12 @@
melpaBuild {
pname = "floobits";
ename = "floobits";
- version = "1.9.2";
+ version = "1.9.3";
src = fetchFromGitHub {
owner = "Floobits";
repo = "floobits-emacs";
- rev = "ed5586d1bf94f36354091648e824ccb6fcaf807f";
- sha256 = "08m9snmkhdjmvw1pqww9l39xqas9f6yxksjxvfjjfnad8ak80x9b";
+ rev = "489b294a7f30ecd2af2edc0823dead8102f27af6";
+ sha256 = "1pw88qn6s8ln626c8mgxgpfax39h7ww4m930dp7gg4aklxjbspkn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/95c859e8440049579630b4c2bcc31e7eaa13b1f1/recipes/floobits";
@@ -16596,12 +17564,12 @@
melpaBuild {
pname = "flower";
ename = "flower";
- version = "0.4.2";
+ version = "0.4.6";
src = fetchFromGitHub {
owner = "PositiveTechnologies";
repo = "flower";
- rev = "4d05448dc0118078ec320f564d87acaa740ae47c";
- sha256 = "02p74f5hfhrhv5l7b9cwfbczsgkpqajlmr66qmkdljgc8ksr86n2";
+ rev = "6ef1affa2d7090714ccc4494823de28cfc11da35";
+ sha256 = "1dp3g52j1i49bv802g27b7yszpxz0i28i4j74qp39qlld3k0gys0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c8a731715d360aea9af2b898242fd4eee5419d14/recipes/flower";
@@ -16705,12 +17673,12 @@
melpaBuild {
pname = "flycheck-apertium";
ename = "flycheck-apertium";
- version = "0.2";
+ version = "0.3.0";
src = fetchFromGitHub {
owner = "unhammer";
repo = "flycheck-apertium";
- rev = "71cf49d5aaee962b995583384bfa045a1d4c3db7";
- sha256 = "14idjjz6fhmq806mmncmqnr9bvcjks6spin8z6jb0gqcg1dbhm06";
+ rev = "e146ab1b929c50450ba0708e1bdd9fed85606964";
+ sha256 = "1g1m7pm84mkmjx7hdspb5k6n8aqphphxb5gya725qy1wqi950jqz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7f6cec0d312f0e86e17829e6fd8f87acabc0174f/recipes/flycheck-apertium";
@@ -16942,6 +17910,32 @@
license = lib.licenses.free;
};
}) {};
+ flycheck-grammalecte = callPackage ({ emacs
+ , fetchgit
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flycheck-grammalecte";
+ ename = "flycheck-grammalecte";
+ version = "0.7";
+ src = fetchgit {
+ url = "https://git.deparis.io/flycheck-grammalecte/";
+ rev = "2f4812eaa6e809051e23c34a085df2b704a15741";
+ sha256 = "0xzmr2c74f3375q4nx7zf2jpxawxdkid5mf5nw81wl2v55mv1k2q";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fdd82aa0568d998a3d176b5ee47b8a227438ea09/recipes/flycheck-grammalecte";
+ sha256 = "0xqg995a42cl6mvmpi68ay56fgs636cbzg65q5si5yc1yzgl74nv";
+ name = "recipe";
+ };
+ packageRequires = [ emacs flycheck ];
+ meta = {
+ homepage = "https://melpa.org/#/flycheck-grammalecte";
+ license = lib.licenses.free;
+ };
+ }) {};
flycheck-haskell = callPackage ({ dash
, emacs
, fetchFromGitHub
@@ -16999,6 +17993,32 @@
license = lib.licenses.free;
};
}) {};
+ flycheck-ini-pyinilint = callPackage ({ fetchFromGitLab
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "flycheck-ini-pyinilint";
+ ename = "flycheck-ini-pyinilint";
+ version = "0.3";
+ src = fetchFromGitLab {
+ owner = "danieljrmay";
+ repo = "flycheck-ini-pyinilint";
+ rev = "54744a78d06373404933fedc3ca836916e83de51";
+ sha256 = "1zdvan6l2s97s7swnccq21z1ja8vl64l757j3hg50ipq8j5yy9dl";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c2a1d0b4be0dd3e238ad2e3a157b11ecc82c0639/recipes/flycheck-ini-pyinilint";
+ sha256 = "028ksrlrrsn2wsz7kqf3qk4pp3scs7zvp74c4xj52rm4hh7ycbl7";
+ name = "recipe";
+ };
+ packageRequires = [ flycheck ];
+ meta = {
+ homepage = "https://melpa.org/#/flycheck-ini-pyinilint";
+ license = lib.licenses.free;
+ };
+ }) {};
flycheck-irony = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -17035,12 +18055,12 @@
melpaBuild {
pname = "flycheck-joker";
ename = "flycheck-joker";
- version = "1.2.0";
+ version = "1.3.0";
src = fetchFromGitHub {
owner = "candid82";
repo = "flycheck-joker";
- rev = "0d8d5683a273093ca12841bf93d10dae97ccbc5d";
- sha256 = "0r9w0ky1522yz1jdi8fd36lpdjm30vxq41x77vswikqxvscri3dq";
+ rev = "51e99e697761ee8dab863930910abdba7607c1bd";
+ sha256 = "07pxfvnrgp7f3rb27j1zrq04pncvga4291krqqy3dzwazsjplz48";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/599bf33a5d4a4a590b355001e532cab4e1ee9ef6/recipes/flycheck-joker";
@@ -17223,12 +18243,12 @@
melpaBuild {
pname = "flycheck-objc-clang";
ename = "flycheck-objc-clang";
- version = "2.0.2";
+ version = "2.0.4";
src = fetchFromGitHub {
owner = "GyazSquare";
repo = "flycheck-objc-clang";
- rev = "f4a76ac199b67ff383ab5e70434c9b98b48c92d5";
- sha256 = "0ryanx4vmy9jwqjnwvma6dm136y4fh227cyhz206km6595bbn3nc";
+ rev = "a3781e47f14068c811534a3348bf479eeb3f2041";
+ sha256 = "00a2wg6g74plbmva3bwms7brdlv9i28w51yxisiv04la126m69js";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4ff4412f507371b93cfb85fc744e54110cd87338/recipes/flycheck-objc-clang";
@@ -17307,12 +18327,12 @@
melpaBuild {
pname = "flycheck-phpstan";
ename = "flycheck-phpstan";
- version = "0.2.2";
+ version = "0.3.0";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "phpstan.el";
- rev = "3653f2a316f4199cbd3238e984eea2325e2618d5";
- sha256 = "1dyba8hpr16nsdv1i45pl3w97728w7p8vl9gf5gvd18xcll4848d";
+ rev = "1151b8d418af532fdf0732b9793b479c64a364e3";
+ sha256 = "0wb9pshgcrq2w9d9fpkywz299ihcb9fffh3fdk8rm1r8irylrjkh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5a2b6cc39957e6d7185bd2bdfa3755e5b1f474a6/recipes/flycheck-phpstan";
@@ -17333,12 +18353,12 @@
melpaBuild {
pname = "flycheck-pony";
ename = "flycheck-pony";
- version = "0.2.1";
+ version = "0.2.2";
src = fetchFromGitHub {
owner = "SeanTAllen";
repo = "flycheck-pony";
- rev = "3d3387133a44f5b3f0fb178ef4addf6e1ce1df2f";
- sha256 = "1da10q378k5kbcj0rrpzhm7r3ym4rfwc7v1ialcndbmflsn09m5s";
+ rev = "9356cbcd404eaf381ab0c4b0f9c47232f723fa7e";
+ sha256 = "1rzz3cl0pxn3hhrkxcdiy17wl4dzbn8kxm3hq90zmhag1gbfy4zz";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e2bcb82f4ddb92243058c9ab1a67d4f7ef87b155/recipes/flycheck-pony";
@@ -17415,12 +18435,12 @@
melpaBuild {
pname = "flycheck-pycheckers";
ename = "flycheck-pycheckers";
- version = "0.9";
+ version = "0.12";
src = fetchFromGitHub {
owner = "msherry";
repo = "flycheck-pycheckers";
- rev = "526488b4d8a2067ca666ed8f4de631db79651fb3";
- sha256 = "17arb41j884gg8xdbc7nf0raahzinkslkpr161497dvs2xfpb9zi";
+ rev = "6acbba5120ea2c860a0856580e29157b14b9716d";
+ sha256 = "0ji5al46bz1mki4zlsyxv8d3dkssdz63in2zxhcf4kvpmdazxk4g";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/af36dca316b318d25d65c9e842f15f736e19ea63/recipes/flycheck-pycheckers";
@@ -17433,32 +18453,6 @@
license = lib.licenses.free;
};
}) {};
- flycheck-rebar3 = callPackage ({ fetchFromGitHub
- , fetchurl
- , flycheck
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "flycheck-rebar3";
- ename = "flycheck-rebar3";
- version = "1.1.0";
- src = fetchFromGitHub {
- owner = "joedevivo";
- repo = "flycheck-rebar3";
- rev = "56a7c94857f0a0ea6a2a73c476a1a2faadc0f7c6";
- sha256 = "1pas49arri2vs9zm3r8jl4md74p5fpips3imc3s7nafbfrhh8ix3";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2acff5eea030b91e457df8aa75243993c87ca00e/recipes/flycheck-rebar3";
- sha256 = "1ml9k61n5vy4c2q6c10q9j10ky0iqkinx21bl7hip1r6b5b1kmmc";
- name = "recipe";
- };
- packageRequires = [ flycheck ];
- meta = {
- homepage = "https://melpa.org/#/flycheck-rebar3";
- license = lib.licenses.free;
- };
- }) {};
flycheck-rtags = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -17469,12 +18463,12 @@
melpaBuild {
pname = "flycheck-rtags";
ename = "flycheck-rtags";
- version = "2.18";
+ version = "2.31";
src = fetchFromGitHub {
owner = "Andersbakken";
repo = "rtags";
- rev = "7e6b6f21935eedbe4678ba91c5531ac162b51a5a";
- sha256 = "12629d1s8rplhjh17n3bmgnkpscq4gljgyl84j8qyhh40dwq1qk0";
+ rev = "5dbb594a7202c4a2e84329cf821bd28bfbea5ae3";
+ sha256 = "0x210bqv7618g85nzjy4x9gy31qcbjgppmk8zbpmqk59f2bp7bac";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/flycheck-rtags";
@@ -17487,6 +18481,36 @@
license = lib.licenses.free;
};
}) {};
+ flycheck-rust = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , flycheck
+ , let-alist
+ , lib
+ , melpaBuild
+ , seq }:
+ melpaBuild {
+ pname = "flycheck-rust";
+ ename = "flycheck-rust";
+ version = "1.1";
+ src = fetchFromGitHub {
+ owner = "flycheck";
+ repo = "flycheck-rust";
+ rev = "a139cd53c5062697e9ed94ad80b803c37d999600";
+ sha256 = "1fh6j5w2387nh2fwwjphkhq17cgj5m2q5k0fhidvgc2w65lzbr1r";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/68d8cdf3d225b13ebbbe5ce81a01366f33266aed/recipes/flycheck-rust";
+ sha256 = "1k0n0y6lbp71v4465dwq7864vp1qqyx7zjz0kssszcpx5gl1596w";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs flycheck let-alist seq ];
+ meta = {
+ homepage = "https://melpa.org/#/flycheck-rust";
+ license = lib.licenses.free;
+ };
+ }) {};
flycheck-status-emoji = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -17552,12 +18576,12 @@
melpaBuild {
pname = "flycheck-swift3";
ename = "flycheck-swift3";
- version = "2.0.2";
+ version = "2.0.5";
src = fetchFromGitHub {
owner = "GyazSquare";
repo = "flycheck-swift3";
- rev = "06a6f98d7e498860b345bbd03e96bfe59608f508";
- sha256 = "0h1n4x0fvqfb6jcapbab1ck6bj4d7irbn9zz2hxv2rlrkqxfsmh3";
+ rev = "ba4e831ff04b180323435214dd4cca8184968ad1";
+ sha256 = "1ss2s3q2mv07ph87i2fki1nxq6b51xs4i1mll1faplj2nrr2hyzm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f1fb8c731c118327dc0bbb726e046fec46bcfb82/recipes/flycheck-swift3";
@@ -17625,6 +18649,34 @@
license = lib.licenses.free;
};
}) {};
+ flycheck-vdm = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , flycheck
+ , lib
+ , melpaBuild
+ , vdm-mode }:
+ melpaBuild {
+ pname = "flycheck-vdm";
+ ename = "flycheck-vdm";
+ version = "0.0.4";
+ src = fetchFromGitHub {
+ owner = "peterwvj";
+ repo = "vdm-mode";
+ rev = "e131edb0d35de28bd47d6128dd70d9a6fc46e0fa";
+ sha256 = "090a0imk7dr6vqq4lf806pvajqc499x2gmi0k7rgc1696rbyzhb5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f246b9dcf7915a845b9e2cd44cc1a0833b412c8f/recipes/flycheck-vdm";
+ sha256 = "15ng1l8gfp8iz50yb5d39dy57763gd2x8j6z6rz0byiykgxhl9zg";
+ name = "recipe";
+ };
+ packageRequires = [ emacs flycheck vdm-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/flycheck-vdm";
+ license = lib.licenses.free;
+ };
+ }) {};
flycheck-yamllint = callPackage ({ fetchFromGitHub
, fetchurl
, flycheck
@@ -17759,6 +18811,33 @@
license = lib.licenses.free;
};
}) {};
+ flymake-diagnostic-at-point = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , popup }:
+ melpaBuild {
+ pname = "flymake-diagnostic-at-point";
+ ename = "flymake-diagnostic-at-point";
+ version = "1.2.0";
+ src = fetchFromGitHub {
+ owner = "meqif";
+ repo = "flymake-diagnostic-at-point";
+ rev = "379616b1c6f5ebeaf08fbe54ae765008a78b3be7";
+ sha256 = "1wbzrxxz5z1xg2lwmqgglvixxf1xm3gl6mdyj9idsbym05azm3hg";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b7ae169ca3b59d3b876d52148dac573b7f083ac3/recipes/flymake-diagnostic-at-point";
+ sha256 = "0cdxb9w5sq6z6wramj1bss5vwqzxkmdyzb1di39rghyh243cdrzx";
+ name = "recipe";
+ };
+ packageRequires = [ emacs popup ];
+ meta = {
+ homepage = "https://melpa.org/#/flymake-diagnostic-at-point";
+ license = lib.licenses.free;
+ };
+ }) {};
flymake-easy = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -17974,14 +19053,14 @@
ename = "flymake-perlcritic";
version = "1.0.3";
src = fetchFromGitHub {
- owner = "illusori";
+ owner = "flymake";
repo = "emacs-flymake-perlcritic";
rev = "0692d6ad5495f6e5438bde0a10345829b8e1def8";
sha256 = "11r982h5fhjkmm9ld8wfdip0ghinw523nm1w4fmy830g0bbkgkrq";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/flymake-perlcritic";
- sha256 = "0hibnh463wzhvpix7gygpgs04gi6salwjrsjc6d43lxlsn3y1im8";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/flymake-perlcritic";
+ sha256 = "1i0bc81cby2nsala2mhghzv7clhbf1gpp54vdxiq2wdanqy25vmk";
name = "recipe";
};
packageRequires = [ flymake ];
@@ -18127,12 +19206,12 @@
melpaBuild {
pname = "flyspell-correct";
ename = "flyspell-correct";
- version = "0.4";
+ version = "0.5";
src = fetchFromGitHub {
owner = "d12frosted";
repo = "flyspell-correct";
- rev = "7e7f94a36699c7e7bba728df722e13a7b4af4b73";
- sha256 = "16lbhbgyrpp9ig9li1v31bs9i5z8dchjb1vrkcih020p3g9vwi27";
+ rev = "a9b53c52ab350aead0851e140d813cfd7b1bd680";
+ sha256 = "1r9hmz7sihhy7npv6nxp04sy57glzmfax5d67mwn96fdnc0yhlnd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fa06fbe3bc40ae5e3f6d10dee93a9d49e9288ba5/recipes/flyspell-correct";
@@ -18154,12 +19233,12 @@
melpaBuild {
pname = "flyspell-correct-helm";
ename = "flyspell-correct-helm";
- version = "0.4";
+ version = "0.5";
src = fetchFromGitHub {
owner = "d12frosted";
repo = "flyspell-correct";
- rev = "7e7f94a36699c7e7bba728df722e13a7b4af4b73";
- sha256 = "16lbhbgyrpp9ig9li1v31bs9i5z8dchjb1vrkcih020p3g9vwi27";
+ rev = "a9b53c52ab350aead0851e140d813cfd7b1bd680";
+ sha256 = "1r9hmz7sihhy7npv6nxp04sy57glzmfax5d67mwn96fdnc0yhlnd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7b9302d8f804c77eb81fee7ed27f13cb1176f6/recipes/flyspell-correct-helm";
@@ -18181,12 +19260,12 @@
melpaBuild {
pname = "flyspell-correct-ivy";
ename = "flyspell-correct-ivy";
- version = "0.4";
+ version = "0.5";
src = fetchFromGitHub {
owner = "d12frosted";
repo = "flyspell-correct";
- rev = "7e7f94a36699c7e7bba728df722e13a7b4af4b73";
- sha256 = "16lbhbgyrpp9ig9li1v31bs9i5z8dchjb1vrkcih020p3g9vwi27";
+ rev = "a9b53c52ab350aead0851e140d813cfd7b1bd680";
+ sha256 = "1r9hmz7sihhy7npv6nxp04sy57glzmfax5d67mwn96fdnc0yhlnd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7b9302d8f804c77eb81fee7ed27f13cb1176f6/recipes/flyspell-correct-ivy";
@@ -18208,12 +19287,12 @@
melpaBuild {
pname = "flyspell-correct-popup";
ename = "flyspell-correct-popup";
- version = "0.4";
+ version = "0.5";
src = fetchFromGitHub {
owner = "d12frosted";
repo = "flyspell-correct";
- rev = "7e7f94a36699c7e7bba728df722e13a7b4af4b73";
- sha256 = "16lbhbgyrpp9ig9li1v31bs9i5z8dchjb1vrkcih020p3g9vwi27";
+ rev = "a9b53c52ab350aead0851e140d813cfd7b1bd680";
+ sha256 = "1r9hmz7sihhy7npv6nxp04sy57glzmfax5d67mwn96fdnc0yhlnd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7b9302d8f804c77eb81fee7ed27f13cb1176f6/recipes/flyspell-correct-popup";
@@ -18463,26 +19542,27 @@
license = lib.licenses.free;
};
}) {};
- fontify-face = callPackage ({ fetchFromGitHub
+ fontify-face = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "fontify-face";
ename = "fontify-face";
- version = "1.0.0";
+ version = "1.1.0";
src = fetchFromGitHub {
owner = "Fuco1";
repo = "fontify-face";
- rev = "5bbd4bbbb69f3fe156af53d32000a4b769ed4cbd";
- sha256 = "0s2vwzjd08xj4vpmx7knyrld44k6dd9mhync50r580wpgrgfxm04";
+ rev = "fc3325c98427523d86f0b411e0515cec51ac3d8a";
+ sha256 = "1zfld9a17xhisfwhmfxvx1x63ksl6jg5g99kbivj4nq70sf26dpw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/72bd6750dd5a7d9ed6e408e690f76c260ffd7d9e/recipes/fontify-face";
sha256 = "1w7xlkladqkbh7gpnkbi53a7k9p5wzma4y9jgwbc58hng9ggm1k0";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/fontify-face";
license = lib.licenses.free;
@@ -18518,6 +19598,52 @@
license = lib.licenses.free;
};
}) {};
+ forge = callPackage ({ closql
+ , dash
+ , emacs
+ , emacsql-sqlite
+ , fetchFromGitHub
+ , fetchurl
+ , ghub
+ , graphql
+ , let-alist
+ , lib
+ , magit
+ , magit-popup
+ , markdown-mode
+ , melpaBuild }:
+ melpaBuild {
+ pname = "forge";
+ ename = "forge";
+ version = "0.1.0";
+ src = fetchFromGitHub {
+ owner = "magit";
+ repo = "forge";
+ rev = "f5fc99935e2059ddede9766ce4bb96d99dcd203b";
+ sha256 = "0jipyqj3r4gkdwpcy0m5ij7x510r2admi8fbzwfysqyrwahs60nv";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/23512cf8152161322960d72a5ec49a7595003477/recipes/forge";
+ sha256 = "0a1yvdxx43zq9ivwmg34wyybkw4vhgzd2c54cchsbrbr972x9522";
+ name = "recipe";
+ };
+ packageRequires = [
+ closql
+ dash
+ emacs
+ emacsql-sqlite
+ ghub
+ graphql
+ let-alist
+ magit
+ magit-popup
+ markdown-mode
+ ];
+ meta = {
+ homepage = "https://melpa.org/#/forge";
+ license = lib.licenses.free;
+ };
+ }) {};
form-feed = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -18568,6 +19694,33 @@
license = lib.licenses.free;
};
}) {};
+ format-table = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "format-table";
+ ename = "format-table";
+ version = "0.0.1";
+ src = fetchFromGitHub {
+ owner = "functionreturnfunction";
+ repo = "format-table";
+ rev = "dfcae3a867e574577fc09a43b045889ff155b58f";
+ sha256 = "1z9l1qmv5hw7bgchi5f68nzsz9arjwsazvd6viq6k6jmjzncli6q";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e307ead5e8a291cb5dfe316f3b13144e71b6a1b7/recipes/format-table";
+ sha256 = "1fwjilx0n9m8q0macq231i73zvridjfgqlhw7d1xblw4qp82rzvp";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/format-table";
+ license = lib.licenses.free;
+ };
+ }) {};
fortune-cookie = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -18593,29 +19746,31 @@
license = lib.licenses.free;
};
}) {};
- fountain-mode = callPackage ({ emacs
+ frame-purpose = callPackage ({ dash
+ , dash-functional
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
- pname = "fountain-mode";
- ename = "fountain-mode";
- version = "2.5.3";
+ pname = "frame-purpose";
+ ename = "frame-purpose";
+ version = "1.0";
src = fetchFromGitHub {
- owner = "rnkn";
- repo = "fountain-mode";
- rev = "8269066a9035fcf50eb835de3745a62c1cb96660";
- sha256 = "1s1wyhjdyp12iz3zk333z5wlbxl5x3hki9q16164fk9ifhkrppxd";
+ owner = "alphapapa";
+ repo = "frame-purpose.el";
+ rev = "60778ef3c02cb09a7ccc323732c89bf374dfbffe";
+ sha256 = "0jq2aam1yvccw887ighd1wm2xkvk5bv53ffiz3crcl16a255aj4q";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/913386ac8d5049d37154da3ab32bde408a226511/recipes/fountain-mode";
- sha256 = "1i55gcjy8ycr1ww2fh1a2j0bchx1bsfs0zd6v4cv5zdgy7vw6840";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/033bd36a2419f4521944ccbfe8ce1eb56af20472/recipes/frame-purpose";
+ sha256 = "0mvzryfakz5g8smsg4ciaa0bs0jp692rnjbahp9vl62ml5dp62fz";
name = "recipe";
};
- packageRequires = [ emacs ];
+ packageRequires = [ dash dash-functional emacs ];
meta = {
- homepage = "https://melpa.org/#/fountain-mode";
+ homepage = "https://melpa.org/#/frame-purpose";
license = lib.licenses.free;
};
}) {};
@@ -18654,12 +19809,12 @@
melpaBuild {
pname = "frameshot";
ename = "frameshot";
- version = "0.1.1";
+ version = "0.2.2";
src = fetchFromGitHub {
owner = "tarsius";
repo = "frameshot";
- rev = "65994602fdf3d8881f0cabffebbce6c0e493e3c8";
- sha256 = "0crvvacpajlhdida54gvv4y11xx78qscr6nznx0bhdb12sj3n45q";
+ rev = "3830aae976603ff4e41e09fdca7554594075694c";
+ sha256 = "1sbxr78gl822gl0ky7iz1wb558ch9gp7igg4aq63gjlq6wfx2v93";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e5cfaa4b5fda97054d45691fad9d79b559f2df14/recipes/frameshot";
@@ -18732,14 +19887,14 @@
ename = "fsbot-data-browser";
version = "0.3";
src = fetchFromGitHub {
- owner = "benaiah";
+ owner = "Benaiah";
repo = "fsbot-data-browser";
rev = "6bca4f7de63e31839d2542f6c678b79931dec344";
sha256 = "0lvpgfp89sz6f6rn576g1g88s0q3ibj5ghydjwfcg9w6h7vx5b5s";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/37a0901b98e1c66be6906234e6d6520a6e940e97/recipes/fsbot-data-browser";
- sha256 = "0jijvl07jk200fs01ln4dmw5nx9jg3f9b7gjaknyd18vyvbwr3s5";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/fsbot-data-browser";
+ sha256 = "14d4d8lasvgj520rmqgnzk6mi16znzcdvja9p8164fr9l41wnzgd";
name = "recipe";
};
packageRequires = [];
@@ -18762,12 +19917,12 @@
melpaBuild {
pname = "fsharp-mode";
ename = "fsharp-mode";
- version = "1.9.12";
+ version = "1.9.13";
src = fetchFromGitHub {
owner = "rneatherway";
repo = "emacs-fsharp-mode-bin";
- rev = "68d2121a7317d90fe3794c9295d117f4aebd1438";
- sha256 = "0mymvik20slbgsasjpn6nkqcb4z6z4mvd1sf1xalv0qjk24vrlmk";
+ rev = "386994e7d420872a31d7dd2eee9610d8ace98faa";
+ sha256 = "15blnkcrsmm6896dpdzcx3xqzxzkc0x8d5bg9b5sw7qca6vnjbqk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dc45611e2b629d8bc5f74555368f964420b79541/recipes/fsharp-mode";
@@ -18815,6 +19970,33 @@
license = lib.licenses.free;
};
}) {};
+ fuel = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "fuel";
+ ename = "fuel";
+ version = "0.98";
+ src = fetchFromGitHub {
+ owner = "factor";
+ repo = "factor";
+ rev = "780bbd49cf82c9746ca5a3f42f4a4a27266ccee9";
+ sha256 = "1fs6200rsbnk2lagz8qj17iynaf4c1fvb6sm03i53shsbarak2c3";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/1e2a0e4698d4e71ec28656594f6a83504a823490/recipes/fuel";
+ sha256 = "08hzzg5dhqkl5c5lfhwcwmx8m8z3k1nxshn2wlpqf5gch8f2nj6z";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/fuel";
+ license = lib.licenses.free;
+ };
+ }) {};
full-ack = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -18892,31 +20074,6 @@
license = lib.licenses.free;
};
}) {};
- futhark-mode = callPackage ({ cl-lib ? null
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "futhark-mode";
- version = "0.4.1";
- src = fetchFromGitHub {
- owner = "HIPERFIT";
- repo = "futhark";
- rev = "784e3147196bfe82ea9499628467335ea1d036f9";
- sha256 = "07dqqpacvap034jzvdvnpjyryzicbvjx2imnsghsxw9m52jsb9wn";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/0607f01aad7e77d53595ad8db95d32acfd29b148/recipes/futhark-mode";
- sha256 = "1k22xkg6vd60hk58zkxhmsw2gs6ikzmidvxcdglnr46m6x7r7pnq";
- name = "futhark-mode";
- };
- packageRequires = [ cl-lib ];
- meta = {
- homepage = "https://melpa.org/#/futhark-mode";
- license = lib.licenses.free;
- };
- }) {};
fuzzy = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -19238,16 +20395,16 @@
melpaBuild {
pname = "gf";
ename = "gf";
- version = "1.0.1";
+ version = "1.1.2";
src = fetchFromGitHub {
- owner = "grammaticalframework";
+ owner = "GrammaticalFramework";
repo = "gf-emacs-mode";
- rev = "4ab35bb727bd0717e0691d3c490f72551e13d683";
- sha256 = "0al1ad92ga84wm0kx66wplnn1p05mxf7ik4r5gknr8jp6aa1lcqd";
+ rev = "49fa46db67634530499be969ffd3c436a22d4404";
+ sha256 = "0q234wzzmq1r53dv7z798liwkcbpnvc8mnxvkyfxd94f6za9ylgz";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1c2cc74eb19c54219cd5c5c11d886074859f0948/recipes/gf";
- sha256 = "170q5a7lwa9pbpn0ghcfzny0jfn42wgns1lcv8fngr0k1njfj6v8";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/gf";
+ sha256 = "0vk866gy97zk8dbx48azjlpnrnf0snc50zlhbzv1is97d9frjici";
name = "recipe";
};
packageRequires = [ ht s ];
@@ -19290,12 +20447,12 @@
melpaBuild {
pname = "ggtags";
ename = "ggtags";
- version = "0.8.12";
+ version = "0.8.13";
src = fetchFromGitHub {
owner = "leoliu";
repo = "ggtags";
- rev = "7a7ee76a8055531482927e6abf7e0ef676165dd2";
- sha256 = "1kyg26wdimy5k5icglgqg9gdfvzkgk4xis12nx1xkh01j2imzl97";
+ rev = "17a121af1b375a6a5c5acec52f2ffd2b9715d244";
+ sha256 = "10hryphjjyi13gvk8sy8r5y7nvs0hbw8ycjqj9snai0c1f9xrdsa";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b158bb1bc2fbe3de61a6b21174eac7b1457edda2/recipes/ggtags";
@@ -19413,28 +20570,31 @@
license = lib.licenses.free;
};
}) {};
- ghub = callPackage ({ emacs
+ ghub = callPackage ({ dash
+ , emacs
, fetchFromGitHub
, fetchurl
+ , graphql
, let-alist
, lib
- , melpaBuild }:
+ , melpaBuild
+ , treepy }:
melpaBuild {
pname = "ghub";
ename = "ghub";
- version = "2.0.1";
+ version = "3.2.0";
src = fetchFromGitHub {
owner = "magit";
repo = "ghub";
- rev = "9496d29d645823b52db347d5571cfd3c4ddcff06";
- sha256 = "1xa5pdzp18ykm59kc10bx3rqh0c1vq203yrikvqdj1gx088ksmj7";
+ rev = "1a886a9910b3fe9f51624322a46d3ef5f9e83ae8";
+ sha256 = "0mw48z3nfh1yrw9phb9da4705mrwmc7f2zbwn5hdpvw0ga2hd2qn";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/70a4dbd62fd6ebb4e056d0e97fa1a958437ddc91/recipes/ghub";
- sha256 = "031bzp61aal2id5sazwjz30svydjvxvphw5wbv5cyy4dqyh7w2ps";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f403587f77380d1db214aa34933a9b5cce1ef2bd/recipes/ghub";
+ sha256 = "15kjyi8ialpr1zjqvw68w9pa5sigcwy2szq21yvcy295z7ylzy4i";
name = "recipe";
};
- packageRequires = [ emacs let-alist ];
+ packageRequires = [ dash emacs graphql let-alist treepy ];
meta = {
homepage = "https://melpa.org/#/ghub";
license = lib.licenses.free;
@@ -19556,12 +20716,12 @@
melpaBuild {
pname = "git-attr";
ename = "git-attr";
- version = "0.0.3";
+ version = "1.0.0";
src = fetchFromGitHub {
owner = "arnested";
repo = "emacs-git-attr";
- rev = "c03078637a00ea301cbcc7ae301ae928b10af889";
- sha256 = "05wzy8g0yjkks0zmcvwn9dmr6kxk1bz91xic3c08b0j1z5lbsdv7";
+ rev = "3e43a0cf616b00a4bbd3c6b49fd2397f3103796f";
+ sha256 = "1alpr4gnkikwzljz0fdbrx5hs3zy5s2fz7qyxdz0nx9hv8zb5ir5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3417e4bc586df60b5e6239b1f7683b87953f5b7c/recipes/git-attr";
@@ -19637,12 +20797,12 @@
melpaBuild {
pname = "git-commit";
ename = "git-commit";
- version = "2.13.0";
+ version = "2.90.1";
src = fetchFromGitHub {
owner = "magit";
repo = "magit";
- rev = "e03685e813330a750c1d2e525a8f8c74901fccfb";
- sha256 = "119x8lg8alf97j8r3swmy6yf9112a9s2z2584n74bk847mxl2qwz";
+ rev = "791901b2f1d26fa0a383147fe77948a9abc753da";
+ sha256 = "1kw94sdczswsyzn1zlk5s5aplpdv4qd7qcqc5zfxsmsfwm3jacl4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/git-commit";
@@ -19829,12 +20989,12 @@
melpaBuild {
pname = "git-link";
ename = "git-link";
- version = "0.7.1";
+ version = "0.7.3";
src = fetchFromGitHub {
owner = "sshaw";
repo = "git-link";
- rev = "efd14ab5f17f5942d25e165210447f3983f3250e";
- sha256 = "0rd2g4s73xk8m595aa11vr59gnn5mx7lbcf0040w1xqvlrryzyc9";
+ rev = "1dbabfed4c5c3c5ac6ffa9035a9c3d4c6cc7f885";
+ sha256 = "1b115d5rsb9m8lqjplg3qp0bxfc5cij5fgp0j21zspqwqvj7h0hq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1385443585e628e3d4efb3badb7611e9d653e0c9/recipes/git-link";
@@ -19903,23 +21063,24 @@
, fetchFromGitLab
, fetchurl
, lib
- , melpaBuild }:
+ , melpaBuild
+ , transient }:
melpaBuild {
pname = "git-timemachine";
ename = "git-timemachine";
- version = "4.5";
+ version = "4.10";
src = fetchFromGitLab {
owner = "pidu";
repo = "git-timemachine";
- rev = "dbcb92ffaa5f8350d47f4fbd74512f4000b8c043";
- sha256 = "1ml06jfjyrcqmbpr5hqvbpi3yy6l2aa836jq8qjla1h74g9qka7z";
+ rev = "b97f93d66cffcd69281346845d3a1e32197eda29";
+ sha256 = "08zsn3lsnnf01wkv5ls38jga02s5dnf0j3gigy4qd6im3j3d04m1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a52b516b7b10bdada2f64499c8f43f85a236f254/recipes/git-timemachine";
sha256 = "06xdzic7j3d3pqgwxp1q6fs8sf3mi02a9phjvhk90kyvbr8h94ck";
name = "recipe";
};
- packageRequires = [ emacs ];
+ packageRequires = [ emacs transient ];
meta = {
homepage = "https://melpa.org/#/git-timemachine";
license = lib.licenses.free;
@@ -19958,7 +21119,7 @@
melpaBuild {
pname = "gitattributes-mode";
ename = "gitattributes-mode";
- version = "1.2.7";
+ version = "1.2.8";
src = fetchFromGitHub {
owner = "magit";
repo = "git-modes";
@@ -20008,7 +21169,7 @@
melpaBuild {
pname = "gitconfig-mode";
ename = "gitconfig-mode";
- version = "1.2.7";
+ version = "1.2.8";
src = fetchFromGitHub {
owner = "magit";
repo = "git-modes";
@@ -20168,7 +21329,7 @@
melpaBuild {
pname = "gitignore-mode";
ename = "gitignore-mode";
- version = "1.2.7";
+ version = "1.2.8";
src = fetchFromGitHub {
owner = "magit";
repo = "git-modes";
@@ -20224,12 +21385,12 @@
melpaBuild {
pname = "gitlab-ci-mode";
ename = "gitlab-ci-mode";
- version = "20180306.1";
+ version = "20190222.11.8";
src = fetchFromGitLab {
owner = "joewreschnig";
repo = "gitlab-ci-mode";
- rev = "313431fa5b8b5ce4512909dfc15675bb99395f6f";
- sha256 = "0zdj3f0a5fg4vwhbv851jv4fs1dqfz2w4jsxqbri2zhzdjxc97vn";
+ rev = "ee4bd839c11405f770543d789ad668f0ecc9eaec";
+ sha256 = "1qp6h1yyp8259cxygxi1y4r9jk21qd3l46ggnfhz0p6lpqphc5bq";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d7915ddcf21fdec539a86bb86c209cf0bbd378cb/recipes/gitlab-ci-mode";
@@ -20348,33 +21509,6 @@
license = lib.licenses.free;
};
}) {};
- glab = callPackage ({ emacs
- , fetchFromGitHub
- , fetchurl
- , ghub
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "glab";
- ename = "glab";
- version = "2.0.1";
- src = fetchFromGitHub {
- owner = "magit";
- repo = "ghub";
- rev = "4831933da059ee084a16016558b9ccd8c581a8ff";
- sha256 = "1b5jrpj3z989r3mf4jfch8rnaaa5hyb2395xz3v37f0vsphd7s0y";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/70a4dbd62fd6ebb4e056d0e97fa1a958437ddc91/recipes/glab";
- sha256 = "0ym8bgym11mdv5bw22lgkcxyqy7qgxxm0yjmrq8qx7i55gqayyb8";
- name = "recipe";
- };
- packageRequires = [ emacs ghub ];
- meta = {
- homepage = "https://melpa.org/#/glab";
- license = lib.licenses.free;
- };
- }) {};
gmail-message-mode = callPackage ({ fetchFromGitHub
, fetchurl
, ham-mode
@@ -20527,6 +21661,32 @@
license = lib.licenses.free;
};
}) {};
+ gnus-recent = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "gnus-recent";
+ ename = "gnus-recent";
+ version = "0.2.0";
+ src = fetchFromGitHub {
+ owner = "unhammer";
+ repo = "gnus-recent";
+ rev = "df85e5810c02f613bfa6e236674de969d6e00ae1";
+ sha256 = "0hvsp9y0vzcr9c2wglh0wdavjmp2n2hbhlsr1bfvnfxk97ka0y5r";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0b80d94cf1a8b8e2d4da5d45f65231aa4884a3a0/recipes/gnus-recent";
+ sha256 = "14xac6bmn61bk0h6dby14111iijz0j254v4mh77lf0ydbz6wxjf1";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/gnus-recent";
+ license = lib.licenses.free;
+ };
+ }) {};
gnus-x-gm-raw = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -20589,16 +21749,16 @@
melpaBuild {
pname = "go-autocomplete";
ename = "go-autocomplete";
- version = "20170907";
+ version = "20150303";
src = fetchFromGitHub {
- owner = "nsf";
+ owner = "mdempsky";
repo = "gocode";
- rev = "beae6bdcc6fc300059038961b7a3e977e0fb7c61";
- sha256 = "0fhs17v2x24nhs0kd2yjzr56jni2767yrjxims6phsaxs9m5aih2";
+ rev = "b6fffd0527b4ab22df0170d7243317ab2773622e";
+ sha256 = "1kdicb69dlm06r3skfk8bxygyjr5cvymal8fvbd8zzzfdzgnj7lg";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/04867a574773e8794335a2664d4f5e8b243f3ec9/recipes/go-autocomplete";
- sha256 = "1ldsq81a167dk2r2mvzyp3v3j2mxc4l9p6b12i7pv8zrjlkhma5a";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ef45683cbfe82bf8a9d6f3f1c59e3cf340accbe3/recipes/go-autocomplete";
+ sha256 = "15ns1zzw6kblcbih7dmjvk1p0f6f3p2wpgx4gnd9ax0fcj65ghwi";
name = "recipe";
};
packageRequires = [ auto-complete ];
@@ -20765,6 +21925,32 @@
license = lib.licenses.free;
};
}) {};
+ go-imenu = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "go-imenu";
+ ename = "go-imenu";
+ version = "0.1.0";
+ src = fetchFromGitHub {
+ owner = "brantou";
+ repo = "go-imenu.el";
+ rev = "fc1566fbe396fc8c94f7de99d9c7191b47cd48d9";
+ sha256 = "0qygxqrzx009cd59b452ampakr9rwmj1skl8pic9an4wjz742qlg";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d602b6071787018e3e0a68b4852eb978b34acbea/recipes/go-imenu";
+ sha256 = "0s8rc7rkqlywrhnm2h8yygn87jhjc492wmsvnr1rxl62wf5cijms";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/go-imenu";
+ license = lib.licenses.free;
+ };
+ }) {};
go-impl = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -21033,12 +22219,12 @@
melpaBuild {
pname = "google-translate";
ename = "google-translate";
- version = "0.11.14";
+ version = "0.11.17";
src = fetchFromGitHub {
owner = "atykhonov";
repo = "google-translate";
- rev = "486c63bbfa0338589589f628703c38112035a5b2";
- sha256 = "08b4lxnwy9iqxacbjjljybvvdkl9g2dy6vga6hw7h7h32qra8w2j";
+ rev = "bf119aac424994d2aa91fce9630adc01ed0ea617";
+ sha256 = "05ljjw7kbnszygw3w085kv57swfiiqxri2b5xvsf5dw3pc3g7j3c";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e3c275e59cbfe6e40f9cd4c470fc66544c9a6d21/recipes/google-translate";
@@ -21138,12 +22324,12 @@
melpaBuild {
pname = "goto-chg";
ename = "goto-chg";
- version = "1.7.2";
+ version = "1.7.3";
src = fetchFromGitHub {
owner = "emacs-evil";
repo = "goto-chg";
- rev = "e5b38e4e1378f6ea48fa9e8439f49c2998654aa4";
- sha256 = "1fxdvgdafavc4sad5i8g0wvpdqzlgzmvfi07yrah1c5vwkrslbvj";
+ rev = "16a63aae80db90713fb1f7d378c5d591c2ce15ff";
+ sha256 = "0kpalpssfrwcqrmp47i3j2x04m01fm7cspwsm6fks8pn71lagcwm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cf1fc176430fe3ab55ce537a0efc59780bb812be/recipes/goto-chg";
@@ -21219,7 +22405,7 @@
melpaBuild {
pname = "govc";
ename = "govc";
- version = "0.18.0";
+ version = "0.20.0";
src = fetchFromGitHub {
owner = "vmware";
repo = "govmomi";
@@ -21245,12 +22431,12 @@
melpaBuild {
pname = "gpastel";
ename = "gpastel";
- version = "0.3.0";
+ version = "0.5.0";
src = fetchFromGitHub {
owner = "DamienCassou";
repo = "gpastel";
- rev = "21b7d79530134d6a47eeb252b684f884c769d291";
- sha256 = "1s1gnkpz6byf6by8r1bl9vq3slmsdavjb2ybp2zgic48favz1qm2";
+ rev = "8a5522b274f79d55d7c9a0b2aaf062526f9253c7";
+ sha256 = "01pnnqcxni55xr7r2lxcnsqiszm2w5iwnjcwp748p1faq6ywhi19";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9b70e05ff0a074f9e2f1373e8495dc8df462deea/recipes/gpastel";
@@ -21500,12 +22686,12 @@
melpaBuild {
pname = "graphene-meta-theme";
ename = "graphene-meta-theme";
- version = "0.0.5";
+ version = "0.0.6";
src = fetchFromGitHub {
owner = "rdallasgray";
repo = "graphene-meta-theme";
- rev = "62cc73fee31f1bd9474027b83a249feee050271e";
- sha256 = "1ydl6dlg5z4infq8j09izwgs6n97yza6nbq5rs1xfv00zd9gr63c";
+ rev = "8e75528529f460b1b5910467c4fc1f516e1a57b9";
+ sha256 = "03wllxivl95gsknjkmljm3kgjkwixwxaksaxv8i9c0zjrb2wwm24";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/44af719ede73c9fe7787272d7868587ce8966e3d/recipes/graphene-meta-theme";
@@ -21518,6 +22704,32 @@
license = lib.licenses.free;
};
}) {};
+ graphql = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "graphql";
+ ename = "graphql";
+ version = "0.1.1";
+ src = fetchFromGitHub {
+ owner = "vermiculus";
+ repo = "graphql.el";
+ rev = "672dd9ebd7e67d8089388b0c484cd650e76565f3";
+ sha256 = "0sp0skc1rnhi39szfbq1i99pdgd3bhn4c15cff05iqhjy2d4hniw";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3e801ae56f11b64a5a3e52cf1a6c152940ab8c97/recipes/graphql";
+ sha256 = "139fng2psn535ymqa7c6hm1r7ja1gs5mdvb487jj6fh0bl9wq8la";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/graphql";
+ license = lib.licenses.free;
+ };
+ }) {};
graphviz-dot-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -21568,31 +22780,6 @@
license = lib.licenses.free;
};
}) {};
- grass-mode = callPackage ({ cl-lib ? null
- , dash
- , fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "grass-mode";
- version = "0.1";
- src = fetchhg {
- url = "https://bitbucket.com/tws/grass-mode.el";
- rev = "1ae8eae88117";
- sha256 = "1sl3d5759fjm98pb50ykz2c05czb2298ipccwj2qz2hdzq63hfv8";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/grass-mode";
- sha256 = "1lq6bk4bwgcy4ra3d9rlca3fk87ydg7xnnqcqjg0pw4m9xnr3f7v";
- name = "grass-mode";
- };
- packageRequires = [ cl-lib dash ];
- meta = {
- homepage = "https://melpa.org/#/grass-mode";
- license = lib.licenses.free;
- };
- }) {};
green-is-the-new-black-theme = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -21600,12 +22787,12 @@
melpaBuild {
pname = "green-is-the-new-black-theme";
ename = "green-is-the-new-black-theme";
- version = "0.0.6";
+ version = "0.4.0";
src = fetchFromGitHub {
owner = "fredcamps";
repo = "green-is-the-new-black-emacs";
- rev = "8a03687a2b8b55c5dc7f099086019278d505d8d8";
- sha256 = "07j5sv8dskqxpbzr5f58n75cziyqm9v01c3f7wmwfs8jl7h5nc4m";
+ rev = "b8307a377bfb21a99494fa2c5de0b9ba10c3fce6";
+ sha256 = "154jymgi58k4z5q7j0p2gclqjsq0w1809ybz7myngbvd0wjmcbp9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3e42528d5677fd90515cad47266c07ea3d4363fb/recipes/green-is-the-new-black-theme";
@@ -21625,12 +22812,12 @@
melpaBuild {
pname = "green-screen-theme";
ename = "green-screen-theme";
- version = "1.0.24";
+ version = "1.0.26";
src = fetchFromGitHub {
owner = "rbanffy";
repo = "green-screen-emacs";
- rev = "c348ea0adf0e6ae99294a05be183a7b425a4bab0";
- sha256 = "1rqhac5j06gpc9gp44g4r3zdkw1baskwrz3bw1n1haw4a1k0657q";
+ rev = "774e8f6c033786406267f71ec07319d906a30b75";
+ sha256 = "0f12lqgfi1vlhq8p5ia04vlmvmyb4f40q7dm2nbh5y8r6k89hisg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/821744ca106f1b74941524782e4581fc93800fed/recipes/green-screen-theme";
@@ -21671,29 +22858,6 @@
license = lib.licenses.free;
};
}) {};
- grin = callPackage ({ fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "grin";
- version = "1.0";
- src = fetchhg {
- url = "https://bitbucket.com/dariusp686/emacs-grin";
- rev = "f541aa22da52";
- sha256 = "0rqpgc50z86j4waijfm6kw4zjmzqfii6nnvyix4rkd4y3ryny1x2";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/grin";
- sha256 = "0rak710fp9c7wx39qn4dc9d0xfjr5w7hwklxh99v1x1ihkla9378";
- name = "grin";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/grin";
- license = lib.licenses.free;
- };
- }) {};
grizzl = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -21834,16 +22998,16 @@
melpaBuild {
pname = "gruvbox-theme";
ename = "gruvbox-theme";
- version = "1.26.0";
+ version = "1.27.0";
src = fetchFromGitHub {
- owner = "Greduan";
+ owner = "greduan";
repo = "emacs-theme-gruvbox";
- rev = "796999e5db2a0e43ad64c062c1bec3c966d095bc";
- sha256 = "0qj5k0c1592ikrb7gcibqwf8hhj6lq4cw7zrb3kmpk4zakzy7a2w";
+ rev = "f05bfb9d8be4270dc919d14410f16f7da1fcd9e0";
+ sha256 = "126kqvgjy71rimr4f7sgnh2j73i3i0s650bx84jl8n4k48x0hwz5";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2bd48c87919f64ced9f3add4860751bb34cb5ecb/recipes/gruvbox-theme";
- sha256 = "042mnwlmixygk2mf24ygk7rkv1rfavc5a36hs9x8b68jnf3khj32";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/gruvbox-theme";
+ sha256 = "12z89fjfqcp9rx2f2x9wcffgxxv3kjn1dabyk0cjf286hgvmgz88";
name = "recipe";
};
packageRequires = [ autothemer ];
@@ -21943,12 +23107,12 @@
melpaBuild {
pname = "guix";
ename = "guix";
- version = "0.4.1.1";
+ version = "0.5.1.1";
src = fetchFromGitHub {
owner = "alezost";
repo = "guix.el";
- rev = "60a922a0d48747f1c1d945a725f40a9d1f1fa3a9";
- sha256 = "0jp0bjy9l2m3kii0p1fnqmvsbz9hafv5s5840czsda3mc9x9c7b0";
+ rev = "c4c96663fefe7e007c372e7d24d6e7016b70e4ee";
+ sha256 = "1730q2dm84f15ycjdf3dgl2j8770mhr6qnyzxgac3zzkjr8pyvq7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b3d8c73e8a946b8265487a0825d615d80aa3337d/recipes/guix";
@@ -22022,14 +23186,14 @@
ename = "hacker-typer";
version = "1.0.6";
src = fetchFromGitHub {
- owner = "therockmandolinist";
+ owner = "dieggsy";
repo = "emacs-hacker-typer";
rev = "d5a23714a4ccc5071580622f278597d5973f40bd";
sha256 = "13wp7cg9d9ij44inxxyk1knczglxrbfaq50wyhc4x5zfhz5yw7wx";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/8e04a3a1606ea23865c04d93e3dc77cb55b9931f/recipes/hacker-typer";
- sha256 = "128y562cxi8rblnqjdzhqc6b58bxi67f6hz569gqw4jywz0xcd0g";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3416586d4d782cdd61a56159c5f80a0ca9b3ddf4/recipes/hacker-typer";
+ sha256 = "0vf18hylhszvplam6c4yynr53zc3n816p9k36gywm6awwblfpyfb";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -22046,12 +23210,12 @@
melpaBuild {
pname = "hackernews";
ename = "hackernews";
- version = "0.4.0";
+ version = "0.5.0";
src = fetchFromGitHub {
owner = "clarete";
repo = "hackernews.el";
- rev = "22a15dc57dd6aab7793c0f9c2b72e161e0bee00c";
- sha256 = "0bpbiadv4bf3lllsm0w1jcw8nc7c9zl97m972hbxb1dgv90gvs5b";
+ rev = "916c3da8da45c757f5ec2faeed57fa370513d4ac";
+ sha256 = "09bxaaczana1cfvxyk9aagjvdszkj0j1yldl5r4xa60b59lxihsg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c43a342e47e5ede468bcf51a60d4dea3926f51bd/recipes/hackernews";
@@ -22412,12 +23576,12 @@
melpaBuild {
pname = "hasky-stack";
ename = "hasky-stack";
- version = "0.8.0";
+ version = "0.9.0";
src = fetchFromGitHub {
owner = "hasky-mode";
repo = "hasky-stack";
- rev = "3e17ce07dd6b0207474e4ff14ad7b8c467382947";
- sha256 = "0cdsdlgapf9xxj928hlb7ch9x8rznayrvj7n8j2vzfa0kfmg7qwf";
+ rev = "a3176aece9a9ab0a36ae795965f83f4c1fa243bf";
+ sha256 = "1j9cvy95wnmssg68y7hcjr0fh117ix1ypa0k7rxqn84na7hyhdpl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c3faf544872478c3bccf2fe7dc51d406031e4d80/recipes/hasky-stack";
@@ -22519,12 +23683,12 @@
melpaBuild {
pname = "helm";
ename = "helm";
- version = "2.9.8";
+ version = "3.1";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm";
- rev = "8de42d08f45a7052ed858132de43a76f933f58f7";
- sha256 = "1g36knyppz8lfbcn84hx6ivf8b34s26wx5dh4xw85sq6pwi5yn7s";
+ rev = "8de179db41598515f1db758b8d35728a3fd58f18";
+ sha256 = "1x3nv8zvp8vvl30bm2d83hd7zxb0ca64pc8kwb81ml9al6r3mm01";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7e8bccffdf69479892d76b9336a4bec3f35e919d/recipes/helm";
@@ -22627,12 +23791,12 @@
melpaBuild {
pname = "helm-backup";
ename = "helm-backup";
- version = "1.0.0";
+ version = "1.1.1";
src = fetchFromGitHub {
owner = "antham";
repo = "helm-backup";
- rev = "3f39d296ddc77df758b812c50e3c267dd03db8bb";
- sha256 = "05528ajhmvkc50i65wcb3bi1w4i3y1vvr56dvq6yp7cbyw9r7b8w";
+ rev = "45a86a41ac44f90d4db2c0e9339233ee7f0be0b8";
+ sha256 = "0pr4qd6mi9g91lndqnk4w26lq3w8pxcgxragxj3209dgwqsxps95";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5e6eba7b201e91211e43c39e501f6066f0afeb8b/recipes/helm-backup";
@@ -22872,6 +24036,7 @@
}) {};
helm-codesearch = callPackage ({ cl-lib ? null
, dash
+ , emacs
, fetchFromGitHub
, fetchurl
, helm
@@ -22881,19 +24046,19 @@
melpaBuild {
pname = "helm-codesearch";
ename = "helm-codesearch";
- version = "0.4.0";
+ version = "0.5.0";
src = fetchFromGitHub {
owner = "youngker";
repo = "helm-codesearch.el";
- rev = "e80e76e492f626659b88dbe362b11aa0a3b0a116";
- sha256 = "16njr3xcvpzg4x6qq2pwk80pca9pxhc6vjvfy3dzy4hi9nxryrs6";
+ rev = "a6bac6b8a063b91b444a72318b163b266742db9b";
+ sha256 = "0xmplh7q5wvrkfha8qc9hx7sjyc8dsms0wrvj2y7zg35siw1561l";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0a992824e46a4170e2f0915f7a507fcb8a9ef0a6/recipes/helm-codesearch";
sha256 = "1v21zwcyx73bc1lcfk60v8xim31bwdk4p06g9i4qag3cijdlli9q";
name = "recipe";
};
- packageRequires = [ cl-lib dash helm s ];
+ packageRequires = [ cl-lib dash emacs helm s ];
meta = {
homepage = "https://melpa.org/#/helm-codesearch";
license = lib.licenses.free;
@@ -22937,12 +24102,12 @@
melpaBuild {
pname = "helm-company";
ename = "helm-company";
- version = "0.2.2";
+ version = "0.2.3";
src = fetchFromGitHub {
owner = "Sodel-the-Vociferous";
repo = "helm-company";
- rev = "acc9c7901e094c1591327a0db1ec7a439f67a84d";
- sha256 = "1d4q9clp0q56br80c21a4wz1gc4jw3mdy97z9mq07x9i8rhlppzs";
+ rev = "5b5c15745d92aff7280698c7619994e2481098b4";
+ sha256 = "1r5b24hamq8d5n418xpf80jn37s357hbc9rd5siw6gwkjn2jykx7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8acf7420f2ac8a36474594bc34316f187b43d771/recipes/helm-company";
@@ -22964,12 +24129,12 @@
melpaBuild {
pname = "helm-core";
ename = "helm-core";
- version = "2.9.8";
+ version = "3.1";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm";
- rev = "8de42d08f45a7052ed858132de43a76f933f58f7";
- sha256 = "1g36knyppz8lfbcn84hx6ivf8b34s26wx5dh4xw85sq6pwi5yn7s";
+ rev = "19381fb02817de196dba0f344e06e7751a1816f6";
+ sha256 = "1jh4nmmx8iwqdvpwwzq3c6f5hwyla000bmbyc2p5anmfwzsfp0lb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7a700c5665e6d72cb4cecf7fb5a2dd43ef9bf7/recipes/helm-core";
@@ -23173,6 +24338,34 @@
license = lib.licenses.free;
};
}) {};
+ helm-eww = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , helm
+ , lib
+ , melpaBuild
+ , seq }:
+ melpaBuild {
+ pname = "helm-eww";
+ ename = "helm-eww";
+ version = "1.2";
+ src = fetchFromGitHub {
+ owner = "emacs-helm";
+ repo = "helm-eww";
+ rev = "76ba59fda8dd6f32a1bc7c6df0b43c6f76169911";
+ sha256 = "0hpq1h0p69c9k6hkd2mjpprx213sc5475q7pr2zpmwrjdzgcv70z";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/455a32c1d4642dc6752408c4f5055f5f4d1288eb/recipes/helm-eww";
+ sha256 = "0pl8s7jmk1kak13bal43kp2awjji9lgr3npq9m09zms121rh709w";
+ name = "recipe";
+ };
+ packageRequires = [ emacs helm seq ];
+ meta = {
+ homepage = "https://melpa.org/#/helm-eww";
+ license = lib.licenses.free;
+ };
+ }) {};
helm-ext = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -23346,12 +24539,12 @@
melpaBuild {
pname = "helm-github-stars";
ename = "helm-github-stars";
- version = "1.3.5";
+ version = "1.3.6";
src = fetchFromGitHub {
owner = "Sliim";
repo = "helm-github-stars";
- rev = "809cf88e2984b121348b1046e1d3890f1fd580b4";
- sha256 = "09ywdsymh479syq9ps15bgyqf5gr94z8wn4jvlcxqz5aq5fil9vq";
+ rev = "8cea100f788832ad28c2a61b8fc805298383e263";
+ sha256 = "0ml324fi7bqh32d2vg41y13zqj4yx0hsqp5nmb6sw74qics7g9ma";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2e77f4a75504ca3e1091cdc757e91fb1ae361fa7/recipes/helm-github-stars";
@@ -23457,12 +24650,12 @@
melpaBuild {
pname = "helm-hatena-bookmark";
ename = "helm-hatena-bookmark";
- version = "2.2.3";
+ version = "2.3.0";
src = fetchFromGitHub {
owner = "masutaka";
repo = "emacs-helm-hatena-bookmark";
- rev = "d64833a5bbb4ae112ed176f6473232e526138572";
- sha256 = "01b6nlbidk93arnnd2irm088qlws4i4p1sagsh9v153x6sk0r38k";
+ rev = "274e18182fe20c11e96009387a8e38e8cd2a1d7e";
+ sha256 = "13s36gyb37asgrc9qca9d196i5bnxqy4acmda5cas08b48wp4lxk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3e9335ad16d4151dd4970c4a3ad1fee9a84404fa/recipes/helm-hatena-bookmark";
@@ -23529,30 +24722,6 @@
license = lib.licenses.free;
};
}) {};
- helm-lobsters = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "helm-lobsters";
- version = "0.1.0";
- src = fetchFromGitHub {
- owner = "julienXX";
- repo = "helm-lobste.rs";
- rev = "d798bebb1a65e255c8ec791753a0c78e6b19243b";
- sha256 = "1nd562lffc41r3y5x7y46f37ra97avllk2m95w23f9g42h47f1ar";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/6247e3786131e5b2a7824804e49927ed65d266d5/recipes/helm-lobsters";
- sha256 = "0dkb78n373kywxj8zba2s5a2g85vx19rdswv9i78xjwv1lqh8cpp";
- name = "helm-lobsters";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/helm-lobsters";
- license = lib.licenses.free;
- };
- }) {};
helm-ls-git = callPackage ({ fetchFromGitHub
, fetchurl
, helm
@@ -23751,12 +24920,12 @@
melpaBuild {
pname = "helm-notmuch";
ename = "helm-notmuch";
- version = "1.1";
+ version = "1.2";
src = fetchFromGitHub {
owner = "xuchunyang";
repo = "helm-notmuch";
- rev = "782c221bf293eee55990de5b54171f08d881dcee";
- sha256 = "04mlsjqhh2nw2javxz8m1hbnsq0s70dw5pnwdbx8s9dk1p8ikxvw";
+ rev = "97a01497e079a7b6505987e9feba6b603bbec288";
+ sha256 = "1k038dbdpaa411gl4071x19fklhnizhr346plxw23lsnxir9dhqc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/98667b3aa43d3e0f6174eeef82acaf71d7019aac/recipes/helm-notmuch";
@@ -23809,12 +24978,12 @@
melpaBuild {
pname = "helm-org-rifle";
ename = "helm-org-rifle";
- version = "1.6.0";
+ version = "1.6.1";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "helm-org-rifle";
- rev = "349a3d717d4201404d88c1ee71eb2cd8dc17aeb2";
- sha256 = "1i35cy8yk9r6k2fq07cnbqf7wlfmdqhwihffqkzdp2wm5m762mnv";
+ rev = "f2c7f9e203287e3f6e5647406d21454218553e5a";
+ sha256 = "1r38xhwvgbv6kn5x159phz3xgss7f1rc7icq27rnr4d8aj91wm6k";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f39cc94dde5aaf0d6cfea5c98dd52cdb0bcb1615/recipes/helm-org-rifle";
@@ -23881,6 +25050,35 @@
license = lib.licenses.free;
};
}) {};
+ helm-pass = callPackage ({ auth-source-pass
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , helm
+ , lib
+ , melpaBuild
+ , password-store }:
+ melpaBuild {
+ pname = "helm-pass";
+ ename = "helm-pass";
+ version = "0.3";
+ src = fetchFromGitHub {
+ owner = "emacs-helm";
+ repo = "helm-pass";
+ rev = "ed5798f2d83937575e8f23fde33323bca9e85131";
+ sha256 = "0vglaknmir3yv4iwibwn8r40ran8d04gcyp99hx73ldmf3zqpnxv";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4a34e0ab66491540dd0c5b62c7f60684056b16d5/recipes/helm-pass";
+ sha256 = "153cj58x2xcmjs2n4fl1jsv8zir4z9jwg1w00ghv70k5j3rwsjkp";
+ name = "recipe";
+ };
+ packageRequires = [ auth-source-pass emacs helm password-store ];
+ meta = {
+ homepage = "https://melpa.org/#/helm-pass";
+ license = lib.licenses.free;
+ };
+ }) {};
helm-perldoc = callPackage ({ cl-lib ? null
, deferred
, fetchFromGitHub
@@ -24034,8 +25232,8 @@
sha256 = "0jm6nnnjyd4kmm1knh0mq3xhnw2hvs3linwlynj8yaliqvlv6brv";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/550eb9f42c90fd9e80714579c12ee6bfcacb5bb7/recipes/helm-pt";
- sha256 = "1imhy0bsm9aldv0pvf88280qdya01lznxpx5gi5wffhrz17yh4pi";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/helm-pt";
+ sha256 = "1pvipzjw9h668jkbwwkmphvp806fs9q4mb2v2bjxpb0f3kn2qk3n";
name = "recipe";
};
packageRequires = [ helm ];
@@ -24242,7 +25440,7 @@
melpaBuild {
pname = "helm-rtags";
ename = "helm-rtags";
- version = "2.18";
+ version = "2.31";
src = fetchFromGitHub {
owner = "Andersbakken";
repo = "rtags";
@@ -24316,6 +25514,35 @@
license = lib.licenses.free;
};
}) {};
+ helm-slime = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , helm-core
+ , lib
+ , melpaBuild
+ , slime }:
+ melpaBuild {
+ pname = "helm-slime";
+ ename = "helm-slime";
+ version = "0.3.0";
+ src = fetchFromGitHub {
+ owner = "emacs-helm";
+ repo = "helm-slime";
+ rev = "ebe80eebd1dfba1f1c837876c8f73cefc8c4db87";
+ sha256 = "1qhb9446rpj17pm0hi3miy5gs5k3ld43bq29kzy0y26bf7ivfcjv";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c35d43a7a8219de4a7f675147f598966aaecb9db/recipes/helm-slime";
+ sha256 = "0qv4c1dd28zqbjxpshga967szrh75a4k51n4x86xkbax7ycca4hh";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs helm-core slime ];
+ meta = {
+ homepage = "https://melpa.org/#/helm-slime";
+ license = lib.licenses.free;
+ };
+ }) {};
helm-smex = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -24408,12 +25635,12 @@
melpaBuild {
pname = "helm-system-packages";
ename = "helm-system-packages";
- version = "1.10.0";
+ version = "1.10.1";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm-system-packages";
- rev = "a82a25a94a670b36e34c5ae192f41b4a104955e5";
- sha256 = "0y5wzvfycb1bvgdk782xyl744fih43vz14wmq6gcqjarw6xfniz5";
+ rev = "2b4636dc861ffe2c4a2025b67ab40460f85b9563";
+ sha256 = "01by0c4lqi2cw8xmbxkjw7m9x78zssm31sx4hdpw5j35s2951j0f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0c46cfb0fcda0500e15d04106150a072a1a75ccc/recipes/helm-system-packages";
@@ -24426,6 +25653,33 @@
license = lib.licenses.free;
};
}) {};
+ helm-taskswitch = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , helm
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "helm-taskswitch";
+ ename = "helm-taskswitch";
+ version = "1.0.4";
+ src = fetchFromGitHub {
+ owner = "bdc34";
+ repo = "helm-taskswitch";
+ rev = "de494738f8e5f7d6e681199dd3aad91e5bdb7691";
+ sha256 = "01a4z0x5p94hglcnakxdgi4cq0cvz48c3dg58b7y2cq1nwjdw8d7";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3602b1f7b9a75cc82c4bde9ea12b2509465db30f/recipes/helm-taskswitch";
+ sha256 = "01yvdbwlixif670f4lffpsk9kvlhgrmh95jw0vc568x0bd3j2a02";
+ name = "recipe";
+ };
+ packageRequires = [ emacs helm ];
+ meta = {
+ homepage = "https://melpa.org/#/helm-taskswitch";
+ license = lib.licenses.free;
+ };
+ }) {};
helm-themes = callPackage ({ fetchFromGitHub
, fetchurl
, helm
@@ -24461,12 +25715,12 @@
melpaBuild {
pname = "helm-tramp";
ename = "helm-tramp";
- version = "1.0.5";
+ version = "1.2.6";
src = fetchFromGitHub {
owner = "masasam";
repo = "emacs-helm-tramp";
- rev = "07d2f02166038c14052009f6fb9c2a163118e2cc";
- sha256 = "1yi4wq484nrjb1yphp6dbaqjgfq7hr78gh9v9cys7dqg910ngy4f";
+ rev = "a7456cee86a83d68c966475fab90ab94006fd23c";
+ sha256 = "1yrwv3xzbqndns9lda70vpv75vipgjd5j9s1dx1ggfhx21kbnf9w";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-tramp";
@@ -24591,6 +25845,32 @@
license = lib.licenses.free;
};
}) {};
+ help-find-org-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "help-find-org-mode";
+ ename = "help-find-org-mode";
+ version = "1.0.0";
+ src = fetchFromGitHub {
+ owner = "EricCrosson";
+ repo = "help-find-org-mode";
+ rev = "c6fa2c8a8e9381572190010a9fa01f2be78f2790";
+ sha256 = "1szjqaw31r5070wpbj5rcai124c66bs32x35w1hsxyvzs5k85wg9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/572003398d1bba572fa9f6332b25ade9306bf718/recipes/help-find-org-mode";
+ sha256 = "149rd61bcvgrwhnhlqriw6fn6fr4pwr4ynmj2bwcp558nwf0py0b";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/help-find-org-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
helpful = callPackage ({ dash
, dash-functional
, elisp-refs
@@ -24605,12 +25885,12 @@
melpaBuild {
pname = "helpful";
ename = "helpful";
- version = "0.12";
+ version = "0.16";
src = fetchFromGitHub {
owner = "Wilfred";
repo = "helpful";
- rev = "5f3fb4752de3868e688ff2046790bda569bb6e23";
- sha256 = "0z56icc8pmm537n34gy8a50a0i42glr58i860xmzlpxdn9f66dxp";
+ rev = "a20eef8fd3fb33abe35dd2ed1590184bc2975b69";
+ sha256 = "1pzlx3galyryd3hd84hnd7r5s6yl9sdrfhy1s6dgz40glw41wmpr";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/889d34b654de13bd413d46071a5ff191cbf3d157/recipes/helpful";
@@ -24758,12 +26038,12 @@
melpaBuild {
pname = "highlight-blocks";
ename = "highlight-blocks";
- version = "0.1.16";
+ version = "0.1.17";
src = fetchFromGitHub {
owner = "Fanael";
repo = "highlight-blocks";
- rev = "9c4240a5d16008db430d1a81c76dad474d3deb0c";
- sha256 = "0c65jk00j88qxfki2g88hy9g6n92rzskwcn1fbmwcw3qgaz4b6w5";
+ rev = "33cf3d36662faa36c86c8d53e4d5a3922efa3eb8";
+ sha256 = "04v5y04v4n06ig8zld6axrxpz07s70sn5ckxcy8gnz5qm0zvr7mx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eaf524488c408483ea8f2c3a71174b1b5fc3f5da/recipes/highlight-blocks";
@@ -24776,6 +26056,31 @@
license = lib.licenses.free;
};
}) {};
+ highlight-context-line = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "highlight-context-line";
+ ename = "highlight-context-line";
+ version = "2.0";
+ src = fetchFromGitHub {
+ owner = "ska2342";
+ repo = "highlight-context-line";
+ rev = "c3257c0ca9dba76167bbd7e0718a65ecd26ef26f";
+ sha256 = "10mv1hd33msafp3r62p9zhwivy0l876ci9xjh7nqc9621qxxd5rw";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/00df721571ff67fe158251fa843c8f515ded3469/recipes/highlight-context-line";
+ sha256 = "0zmqcfsr2j0m2l76c8h6lmdqwrd1b38gi6yp5sdib0m4vj9d0pnd";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/highlight-context-line";
+ license = lib.licenses.free;
+ };
+ }) {};
highlight-defined = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -24940,14 +26245,14 @@
ename = "hindent";
version = "5.2.6";
src = fetchFromGitHub {
- owner = "chrisdone";
+ owner = "commercialhaskell";
repo = "hindent";
rev = "dc47d8b98ebd6ee7fdd7de5f75e65e5b5eedf72f";
sha256 = "0xp3mpiyrc6886bi9rih4vbmsar56h8i5sapigd3gn2pv2v688bc";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/dbae71a47446095f768be35e689025aed57f462f/recipes/hindent";
- sha256 = "1f3vzgnqigwbwvglxv0ziz3kyp5dxjraw3vlghkpw39f57mky4xz";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9a15a17a5aa78aed72958b2a1bde53f0c0ab5be7/recipes/hindent";
+ sha256 = "0az2zhdi73sa3h1q1c0bayqdk22a7ngrvsg9fr8b0i39sn3w8y07";
name = "recipe";
};
packageRequires = [ cl-lib ];
@@ -25115,12 +26420,12 @@
melpaBuild {
pname = "hl-todo";
ename = "hl-todo";
- version = "1.9.0";
+ version = "2.2.0";
src = fetchFromGitHub {
owner = "tarsius";
repo = "hl-todo";
- rev = "770c9862ed79a2437b764050a1006c62f9e32747";
- sha256 = "0vp8n7ymy7i3db2mqgj2a3sbd2hisj9kjvl6apn6y0bpw5vknfdy";
+ rev = "099d0f6d583009b0c5de8e51e38972d6e14e0587";
+ sha256 = "1sfpwwkhfv6a9hd8kgb4h9axc3x2mq3z32i6iaz1q1l6w6k8v0r3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7c262f6a1a10e8b3cc30151cad2e34ceb66c6ed7/recipes/hl-todo";
@@ -25300,12 +26605,12 @@
melpaBuild {
pname = "htmlize";
ename = "htmlize";
- version = "1.53";
+ version = "1.54";
src = fetchFromGitHub {
owner = "hniksic";
repo = "emacs-htmlize";
- rev = "1bc2f1b0feb852fa5a289a1d72646b16ac84adf1";
- sha256 = "0dr235c0z8is3pi5xdgqyqljg6px0b2aya6qb79zkyi477bmz4ip";
+ rev = "a8b73f1393b2d73541ba4a8fd716c0d07ce50276";
+ sha256 = "1d5hj8wibp1lxs697y7i4yrpv9gqq821gxmpqqkn2jwrb70nsngl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/075aa00a0757c6cd1ad392f0300bf5f1b937648d/recipes/htmlize";
@@ -25546,8 +26851,8 @@
sha256 = "0ln4z2796ycy33g5jcxkqvm7638qxy4sipsab7d2864hh700cikg";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/a4375d8ae519290fd5018626b075c226016f951d/recipes/hydra";
- sha256 = "1c59l43p39ins3dn9690gm6llwm4b9p0pk78lip0dwlx736drdbw";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/82d9e1bfd501ed2d1cd11319c5e1eb17482e8922/recipes/hydra";
+ sha256 = "1s1hj70jjbira054q8ly1pcr0818hh91qnhj0zwbv7milmvv2wwd";
name = "recipe";
};
packageRequires = [ cl-lib ];
@@ -25556,6 +26861,33 @@
license = lib.licenses.free;
};
}) {};
+ hyperspace = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "hyperspace";
+ ename = "hyperspace";
+ version = "0.8.4";
+ src = fetchFromGitHub {
+ owner = "ieure";
+ repo = "hyperspace-el";
+ rev = "5fdd680dc2e7b8a064cfdf93d6948546ff51afc2";
+ sha256 = "1r5h55zcm5n2vx126q16ndhgdchcj59qqcybhsqw69vk02x96arg";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0696a12acba676015640de63fc6e011128bca71c/recipes/hyperspace";
+ sha256 = "0ya41c9bxvspj81n5209p9b4c9p1i6jcp710n9i9jawpahwpqlkw";
+ name = "recipe";
+ };
+ packageRequires = [ emacs s ];
+ meta = {
+ homepage = "https://melpa.org/#/hyperspace";
+ license = lib.licenses.free;
+ };
+ }) {};
ialign = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -25684,6 +27016,31 @@
license = lib.licenses.free;
};
}) {};
+ idle-highlight-in-visible-buffers-mode = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "idle-highlight-in-visible-buffers-mode";
+ ename = "idle-highlight-in-visible-buffers-mode";
+ version = "0.2.0";
+ src = fetchFromGitHub {
+ owner = "ignacy";
+ repo = "idle-highlight-in-visible-buffers-mode";
+ rev = "8d8de309d5bd4b035c01bf7f0cfc6e079c79d898";
+ sha256 = "194r7f4ngwx03n74rs26hqn9wypn9idjizvmffpsjpxfr7wr9z7l";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b5a533be3b8dea556438d93ac48853dd3a9690f1/recipes/idle-highlight-in-visible-buffers-mode";
+ sha256 = "0kv06qlv1zp5hwaya0l90z6d5lhxcg69qac6x24ky6kf97vcdq72";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/idle-highlight-in-visible-buffers-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
idle-highlight-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -25771,12 +27128,12 @@
melpaBuild {
pname = "ido-completing-read-plus";
ename = "ido-completing-read+";
- version = "4.11";
+ version = "4.12";
src = fetchFromGitHub {
owner = "DarwinAwardWinner";
repo = "ido-completing-read-plus";
- rev = "03bdf989a9af88d4eeed4003ae74c98baf58ff72";
- sha256 = "08d77ysbzd25rm8rjslckhqlsyim047c9zwq2ybbzqpjy3q52qfy";
+ rev = "d56125deac540a2ab396d6d71f7c1eeae7f37588";
+ sha256 = "11wn2xf7dbgfhwdrjazshf4c5im1yxnqpyvq8633fjc1cn9s7vxw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6104efc035bcf469d133ab9a2caf42c9d4482334/recipes/ido-completing-read+";
@@ -26281,6 +27638,32 @@
license = lib.licenses.free;
};
}) {};
+ immaterial-theme = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "immaterial-theme";
+ ename = "immaterial-theme";
+ version = "0.1.2";
+ src = fetchFromGitHub {
+ owner = "petergardfjall";
+ repo = "emacs-immaterial-theme";
+ rev = "b7ad831e49f5f4512f216f1f99b2d0eba3cc0815";
+ sha256 = "0p363khj7mz9dq0dm12ksd6aamrkmm5a7vcsp0j8cmbc6r6a060c";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9a95d88bb00b1313da82929bc2733d726d2041d7/recipes/immaterial-theme";
+ sha256 = "15gwqjfpls7lqc37s70vnhycnry5g9grn6shk2wpijrxfnmyqjhj";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/immaterial-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
immutant-server = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -26446,26 +27829,26 @@
, fetchFromGitHub
, fetchurl
, js2-mode
+ , js2-refactor
, lib
, melpaBuild
- , seq
- , websocket }:
+ , seq }:
melpaBuild {
pname = "indium";
ename = "indium";
- version = "1.2.0";
+ version = "2.1.1";
src = fetchFromGitHub {
owner = "NicolasPetton";
repo = "Indium";
- rev = "5ece767ea30a350dcdb1a4defaca174e85efedc5";
- sha256 = "1djkzjxv7idqg5pmbqf60lmvibp3ccvgdkdwb48wzn2yvnqr2vw6";
+ rev = "fd5de13204b3b5f0d2a598fbe74c5a6ac13125bd";
+ sha256 = "1v2r9k589l3rsxvijs783dsk5fpl00hrpk6xffirc6rhbkij9bjh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4292058cc6e31cabc0de575134427bce7fcef541/recipes/indium";
sha256 = "024ljx7v8xahmr8jm41fiy8i5jbg48ybqp5n67k4jwg819cz8wvl";
name = "recipe";
};
- packageRequires = [ company emacs js2-mode seq websocket ];
+ packageRequires = [ company emacs js2-mode js2-refactor seq ];
meta = {
homepage = "https://melpa.org/#/indium";
license = lib.licenses.free;
@@ -26805,29 +28188,6 @@
license = lib.licenses.free;
};
}) {};
- instapaper = callPackage ({ fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "instapaper";
- version = "0.9.5";
- src = fetchhg {
- url = "https://bitbucket.com/jfm/emacs-instapaper";
- rev = "8daa0058ede7";
- sha256 = "0krscid3yz2b7kv75gd9fs92zgfl7pnl77dbp5gycv5rmw5mivp8";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/instapaper";
- sha256 = "1yibdpj3lx6vr33s75s1y415lxqljrk7pqc901f8nfa01kca7axn";
- name = "instapaper";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/instapaper";
- license = lib.licenses.free;
- };
- }) {};
intel-hex-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -26914,12 +28274,12 @@
melpaBuild {
pname = "intero";
ename = "intero";
- version = "0.1.31";
+ version = "0.1.37";
src = fetchFromGitHub {
owner = "commercialhaskell";
repo = "intero";
- rev = "14a31536061fa6ad643456f79abe39636c48ffd9";
- sha256 = "0gabipr8bvxhigidkivczqyv67nl6ylf0gipb0f4lxs8mcnwzcvn";
+ rev = "e5ca92990f0647d2d0e4a6009534910e4d2c7f00";
+ sha256 = "0bn4al2q324zlazhlsca7gw2d3s4nmvd24spdqwimfq2y769pb73";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1b56ca344ad944e03b669a9974e9b734b5b445bb/recipes/intero";
@@ -26932,30 +28292,6 @@
license = lib.licenses.free;
};
}) {};
- inverse-acme-theme = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "inverse-acme-theme";
- version = "1.12.0";
- src = fetchFromGitHub {
- owner = "dcjohnson";
- repo = "inverse-acme-theme";
- rev = "e57f494fd94e49321a6396f530b8a13bae8b57df";
- sha256 = "16f9vszl0f1dkjvqk5hxi570gf4l8p6fk27p0d7j11grsck0yzly";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1c44dbc8d3ca29d8715af755b845af7236e95406/recipes/inverse-acme-theme";
- sha256 = "03g6h8dpn42qnr593ryhj22lj1h2nx4rdr1knhkvxygfv3c4lgh5";
- name = "inverse-acme-theme";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/inverse-acme-theme";
- license = lib.licenses.free;
- };
- }) {};
iplayer = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -26989,12 +28325,12 @@
melpaBuild {
pname = "ipython-shell-send";
ename = "ipython-shell-send";
- version = "1.0.2";
+ version = "1.1.1";
src = fetchFromGitHub {
owner = "jackkamm";
repo = "ipython-shell-send-el";
- rev = "36523a387c15ee1652a5b0e291d4d4838da5e912";
- sha256 = "1iba7jpagc0n436pbylpcbwbdxk6bw7y0i7pjgxxwfm8akaj9i68";
+ rev = "0faed86faff02a361f23ce5fc923d0e9b09bb2da";
+ sha256 = "1nx92rmxgrxy9hfi7f2ny3q4zqrzy6jalr85lall7r74aifprrkv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9d3513d38f94de4d86124b5d5a33be8d5f0bfa43/recipes/ipython-shell-send";
@@ -27041,12 +28377,12 @@
melpaBuild {
pname = "irony";
ename = "irony";
- version = "1.2.0";
+ version = "1.3.1";
src = fetchFromGitHub {
owner = "Sarcasm";
repo = "irony-mode";
- rev = "78b06aa2df5251adaabb6c749febc1f1bd2ad605";
- sha256 = "0nhjrnlmss535jbshjjd30vydbr8py21vkx4p294w6d8vg2rssf8";
+ rev = "79d5fc6152659f62b0f2e4df75665f5b625e9642";
+ sha256 = "09i2f99ysisv2d4a0cpn75c0azhbashvz6ja5xy09i2a5svzgzpx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d2b6a8d57b192325dcd30fddc9ff8dd1516ad680/recipes/irony";
@@ -27084,6 +28420,32 @@
license = lib.licenses.free;
};
}) {};
+ isolate = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "isolate";
+ ename = "isolate";
+ version = "1.2";
+ src = fetchFromGitHub {
+ owner = "casouri";
+ repo = "isolate";
+ rev = "700aa3c7945580c876d29c3c064282c33ebb365c";
+ sha256 = "0j96rzfabn6lgv9xxyndpq3d2nys5z1brrrd7bga786zzwlp78a9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c8091f8d72c24a103f6dcaadc18bbec745c1c3d3/recipes/isolate";
+ sha256 = "1ldyvw01nq2ynxaaqmw9ihk9kwfss9rqpaydn9f41bqj15xrypjc";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/isolate";
+ license = lib.licenses.free;
+ };
+ }) {};
iter2 = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -27092,12 +28454,12 @@
melpaBuild {
pname = "iter2";
ename = "iter2";
- version = "0.9.7";
+ version = "0.9.10";
src = fetchFromGitHub {
owner = "doublep";
repo = "iter2";
- rev = "f8fb8dc7230cdcd37c5d0e4e5a432125c13816d2";
- sha256 = "13q8p9cjz9c9j2l4vlwy6nvwh9y3b0aclg1b32zfdqhs6kmypisd";
+ rev = "fc1fcea5379bc7728a25dd81546886213e3db6fa";
+ sha256 = "1gvm5gfgmcw4mibi8899x9ry1zqm3ij6yl0dnmdqmv9dbv1zlqp2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d94316660051ee0ba0c12e380e6203986440368f/recipes/iter2";
@@ -27118,12 +28480,12 @@
melpaBuild {
pname = "ivy";
ename = "ivy";
- version = "0.10.0";
+ version = "0.11.0";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "swiper";
- rev = "4a2cee03519f98cf95b29905dec2566a39ff717e";
- sha256 = "14vnigqb5c3yi4q9ysw1fiwdqyqwyklqpb9wnjf81chm7s2mshnr";
+ rev = "525b2e4887dd839045313f32d3ddeb5cab4c7a7e";
+ sha256 = "009n8zjycs62cv4i1k9adbb284wz2w3r13xki2740sj34k683v13";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/06c24112a5e17c423a4d92607356b25eb90a9a7b/recipes/ivy";
@@ -27226,6 +28588,33 @@
license = lib.licenses.free;
};
}) {};
+ ivy-explorer = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , ivy
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ivy-explorer";
+ ename = "ivy-explorer";
+ version = "0.3.2";
+ src = fetchFromGitHub {
+ owner = "clemera";
+ repo = "ivy-explorer";
+ rev = "14adb6164f1d1646f503c3e4bd9aa559805f93d7";
+ sha256 = "0ffajyl21vz4662738dgga140yrkkcfynhhnk42fzrn5z5zqlwp1";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/8b590a6e0d11fda3d93e4d92f847138f8968b332/recipes/ivy-explorer";
+ sha256 = "088ciy051b3kcd6anm66fnkg510c72hrfgdbgdf4mb9z4d9bk056";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ivy ];
+ meta = {
+ homepage = "https://melpa.org/#/ivy-explorer";
+ license = lib.licenses.free;
+ };
+ }) {};
ivy-feedwrangler = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -27290,12 +28679,12 @@
melpaBuild {
pname = "ivy-hydra";
ename = "ivy-hydra";
- version = "0.10.0";
+ version = "0.11.0";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "swiper";
- rev = "4a2cee03519f98cf95b29905dec2566a39ff717e";
- sha256 = "14vnigqb5c3yi4q9ysw1fiwdqyqwyklqpb9wnjf81chm7s2mshnr";
+ rev = "525b2e4887dd839045313f32d3ddeb5cab4c7a7e";
+ sha256 = "009n8zjycs62cv4i1k9adbb284wz2w3r13xki2740sj34k683v13";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/06c24112a5e17c423a4d92607356b25eb90a9a7b/recipes/ivy-hydra";
@@ -27374,12 +28763,12 @@
melpaBuild {
pname = "ivy-prescient";
ename = "ivy-prescient";
- version = "2.0";
+ version = "2.2.2";
src = fetchFromGitHub {
owner = "raxod502";
repo = "prescient.el";
- rev = "515959a2523b43608c9d06dcf8adde8911ce42b9";
- sha256 = "1k8xk154sql3b2b7hpyxslcgl88aaxq5ak2sr760jsq2qk7878bw";
+ rev = "562d25a1c3c5b2e269d82f374f450e6aa90a970e";
+ sha256 = "1ncplx5p3cffyzg9ygzqqxj0vpvwrz9rp2n4z6c375a78fyydrk0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a92495d09689932ab9f0b716078ceeeb9cc154e0/recipes/ivy-prescient";
@@ -27420,6 +28809,33 @@
license = lib.licenses.free;
};
}) {};
+ ivy-rich = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , ivy
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ivy-rich";
+ ename = "ivy-rich";
+ version = "0.1.4";
+ src = fetchFromGitHub {
+ owner = "Yevgnen";
+ repo = "ivy-rich";
+ rev = "25e36b10eff7fd299fcc03f15288b4fff33974e4";
+ sha256 = "070y28ldp5dvh12b7qv27mqdgxiq2dll7fx432hb2i6mk8lz5hpp";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/ivy-rich";
+ sha256 = "1il1lhxxg694j9w65qwzjm4p4l3q1h1hfndybj6z1cb72ijw27fr";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ivy ];
+ meta = {
+ homepage = "https://melpa.org/#/ivy-rich";
+ license = lib.licenses.free;
+ };
+ }) {};
ivy-rtags = callPackage ({ fetchFromGitHub
, fetchurl
, ivy
@@ -27429,7 +28845,7 @@
melpaBuild {
pname = "ivy-rtags";
ename = "ivy-rtags";
- version = "2.18";
+ version = "2.31";
src = fetchFromGitHub {
owner = "Andersbakken";
repo = "rtags";
@@ -27551,29 +28967,6 @@
license = lib.licenses.free;
};
}) {};
- jabber = callPackage ({ fetchgit
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "jabber";
- version = "0.8.92";
- src = fetchgit {
- url = "https://git.code.sf.net/p/emacs-jabber/git";
- rev = "2999f58619dd9c20cc6cac8060c4c850a504cbbd";
- sha256 = "03x93wkd8syj2ybf5ymwcm6khx0h5nhrl8pyync1520294pq6i1i";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/caaa21f235c4864f6008fb454d0a970a2fd22a86/recipes/jabber";
- sha256 = "0saajvfpzgcsqa7h7aa6l0bns6swr40c46md6s0d90x9lrvwp7ws";
- name = "jabber";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/jabber";
- license = lib.licenses.free;
- };
- }) {};
jade-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -27874,12 +29267,12 @@
melpaBuild {
pname = "jq-mode";
ename = "jq-mode";
- version = "0.3.0";
+ version = "0.4.1";
src = fetchFromGitHub {
owner = "ljos";
repo = "jq-mode";
- rev = "8384a1926cc22000e5e42f86f28d807fd6149f8e";
- sha256 = "0fa84jln0vddrc218s8scz6hx12ym0wimh6dm58wqxias7gm9fgk";
+ rev = "d6bbd83baf0746f22564f7ae92db44e06da6e08c";
+ sha256 = "1sk603258gvnfrvl641xfmgapg67z44wnlx6qba73wn3f2055765";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/318705966e26e58f87b53c115c519db95874ac1c/recipes/jq-mode";
@@ -27900,12 +29293,12 @@
melpaBuild {
pname = "js-auto-format-mode";
ename = "js-auto-format-mode";
- version = "1.1.0";
+ version = "1.1.1";
src = fetchFromGitHub {
owner = "ybiquitous";
repo = "js-auto-format-mode";
- rev = "1558fb539e0beb7f98901280d695968a2351384d";
- sha256 = "16l2mjklazmfpdin3vz3ddf083phhyrhi18n0rfhv5rwh9m23wr9";
+ rev = "59caa137c4beec4dec4a7d7ebf8bcb6af44d72f0";
+ sha256 = "10xxg8lc4g9wdl4lz7kx6la23agpbq4ls1mn5d4y364j8nfcxf9g";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2d3be16771b5b5fde639da3ee97890620354ee7a/recipes/js-auto-format-mode";
@@ -28005,12 +29398,12 @@
melpaBuild {
pname = "js2-mode";
ename = "js2-mode";
- version = "20180301";
+ version = "20190219";
src = fetchFromGitHub {
owner = "mooz";
repo = "js2-mode";
- rev = "38e425785d5ea4600c3642f6500062ecedf694a4";
- sha256 = "1afvm8cp9h0v0pk7v3jwag6f608v1787l7m7a9541ld616cgb5x7";
+ rev = "58006dfafbad43213162e21f57112e5e193caed2";
+ sha256 = "02nrqb1khk7mhr4417pdlbb9whmyfpjjrsvg8lzsr8wlz9l3hqkg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cae2ac3513e371a256be0f1a7468e38e686c2487/recipes/js2-mode";
@@ -28139,12 +29532,12 @@
melpaBuild {
pname = "json-navigator";
ename = "json-navigator";
- version = "0.1.0";
+ version = "0.1.1";
src = fetchFromGitHub {
owner = "DamienCassou";
repo = "json-navigator";
- rev = "bc5634fc78d2e43ebd3c255350829877f3e4549c";
- sha256 = "1j2lic9sn00j6pzq5qslv9m2z0rvsxkvz73z8swp7vcrsgz7qvqd";
+ rev = "f4cde60c4203fc70cc7ff22ed1d6579159ce2598";
+ sha256 = "0xrjbx6rkm8a6pmzhdph0r6l468hj827dvvq2hxhcm8v5gk6m690";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/62d4d68bd473652b80988a68250e9190b886ad6e/recipes/json-navigator";
@@ -28259,6 +29652,32 @@
license = lib.licenses.free;
};
}) {};
+ julia-repl = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "julia-repl";
+ ename = "julia-repl";
+ version = "1.0.2";
+ src = fetchFromGitHub {
+ owner = "tpapp";
+ repo = "julia-repl";
+ rev = "d8b94c6dbfa47fd51540b9d5b1bb0c2dfce3ebc2";
+ sha256 = "027ib0i5af23s3kxsfbxh3jgw944crry0v4c7yxz9l8r8p3wpq1k";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9a2a494969a9caf2f4513b12504379c9685047dc/recipes/julia-repl";
+ sha256 = "1k8a54s7g64zasmmnywygr0ra3s3din5mkqb7b5van2l0d4hcmzn";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/julia-repl";
+ license = lib.licenses.free;
+ };
+ }) {};
jump = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -28312,6 +29731,36 @@
license = lib.licenses.free;
};
}) {};
+ jupyter = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , simple-httpd
+ , websocket
+ , zmq }:
+ melpaBuild {
+ pname = "jupyter";
+ ename = "jupyter";
+ version = "0.7.3";
+ src = fetchFromGitHub {
+ owner = "dzop";
+ repo = "emacs-jupyter";
+ rev = "83af335166a28e131159fc95586a0d0abe8efde4";
+ sha256 = "1bq6lsip5m8ci8j8h26lj892zims6d76jv713bry3pzc66lj6570";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a63a933e193a52e60950331ec982c5f5cdfaa5d9/recipes/jupyter";
+ sha256 = "0p83mkvip1gn5ag2j6s68wzfgg2sf15iyxh7ylads3yw44h26wvi";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs simple-httpd websocket zmq ];
+ meta = {
+ homepage = "https://melpa.org/#/jupyter";
+ license = lib.licenses.free;
+ };
+ }) {};
jvm-mode = callPackage ({ dash
, emacs
, fetchFromGitHub
@@ -28454,12 +29903,12 @@
melpaBuild {
pname = "kaolin-themes";
ename = "kaolin-themes";
- version = "1.3.5";
+ version = "1.5.0";
src = fetchFromGitHub {
owner = "ogdenwebb";
repo = "emacs-kaolin-themes";
- rev = "e183b7adb06338046f1a17a94e18ec67e62d4e42";
- sha256 = "1mvspqll53p8rz66588lvdflwfx4av6cnzigid6n10d1cy35p5vg";
+ rev = "08eac2883e87ad8cf17331a86fa447a7a8bc73b4";
+ sha256 = "06wl0zmxxv2gx9cka80sa7s3kra756nn8w1d6z4d5banwcc8nmjm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/043a4e3bd5301ef8f4df2cbda0b3f4111eb399e4/recipes/kaolin-themes";
@@ -28581,12 +30030,12 @@
melpaBuild {
pname = "keycast";
ename = "keycast";
- version = "0.1.1";
+ version = "0.1.3";
src = fetchFromGitHub {
owner = "tarsius";
repo = "keycast";
- rev = "0d28c26b07a062ab58c01c6cbedc3e68bd4ec8a1";
- sha256 = "0wfy5wbr150y57mlzsxhb6bq9ycqj2jk5i6nhwl4q8b6xd3mh6p6";
+ rev = "7c45ff05c1e9b50a3304da71906764b6c4f6f3a4";
+ sha256 = "0bbzdjy66f8xpckkrcic1r9g9zw3d243nvp5mm4yfc9qdnx1hr6p";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/aaaf62c586818f2493667ad6ec8877234a58da53/recipes/keycast";
@@ -28813,12 +30262,12 @@
melpaBuild {
pname = "killer";
ename = "killer";
- version = "0.2.2";
+ version = "1.0.0";
src = fetchFromGitHub {
owner = "tarsius";
repo = "killer";
- rev = "52256640aebbb8c25f8527843c2425b848031cd8";
- sha256 = "0imylcaiwpzvvb3g8kpsna1vk7v7bwdjfcsa98i41m1rv9yla86l";
+ rev = "ace0547944933440384ceeb5876b1f68c082d540";
+ sha256 = "06nzxd9nc1d569354xj7w88i0y5l99pyag691aribsh771rxbfz4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bd8c3ec8fa272273128134dea96c0c999a524549/recipes/killer";
@@ -28865,12 +30314,12 @@
melpaBuild {
pname = "kiwix";
ename = "kiwix";
- version = "0.4.0";
+ version = "1.0.0";
src = fetchFromGitHub {
owner = "stardiviner";
repo = "kiwix.el";
- rev = "b84a5ff33efdf13dda22ed32ea37a09b15cd1690";
- sha256 = "07nb141hxjabin8vr14hpn80vzrjaq1b3h6p76m0bwxvzbi8765r";
+ rev = "c662f3dc5d924a4b64b7af4af28f15f27b7cea1e";
+ sha256 = "0i11sfnqvjqqb625cgfzibs6yszx891y4dy7fd6wzmdpclcyzr8z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/kiwix";
@@ -29067,6 +30516,33 @@
license = lib.licenses.free;
};
}) {};
+ language-id = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "language-id";
+ ename = "language-id";
+ version = "0.1";
+ src = fetchFromGitHub {
+ owner = "lassik";
+ repo = "emacs-language-id";
+ rev = "9145c75eaa41a7a9deda928f704b99db056d3e9d";
+ sha256 = "10dwrb610jdal6ifpj34mmy8qqbca2sgfmvn4p4qpcc967sv4f1r";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d03af6375bc7ba4612c43dea805d7f392f046f87/recipes/language-id";
+ sha256 = "0p7hg005bmzy38sv2881fq1x2i7yjdhfjbki4y2av485c418rqz8";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/language-id";
+ license = lib.licenses.free;
+ };
+ }) {};
latex-extra = callPackage ({ auctex
, cl-lib ? null
, fetchFromGitHub
@@ -29101,12 +30577,12 @@
melpaBuild {
pname = "latex-math-preview";
ename = "latex-math-preview";
- version = "0.7.2";
+ version = "0.7.3";
src = fetchFromGitLab {
owner = "latex-math-preview";
repo = "latex-math-preview";
- rev = "c1c87c4c5501f98b97af19f7e3454a2369265edc";
- sha256 = "118xrgrnwsmsysmframf6bmb0gkrdrm3jbkgivzxs41cw92fhbzw";
+ rev = "90fd86da2d9514882146a5db40cb916fc533cf55";
+ sha256 = "063vnjhnxm2z9shkdv1j8kwyf37syczfkzxzh5z7w7aidvx55jzj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9e413b7684e9199510b00035825aa861d670e072/recipes/latex-math-preview";
@@ -29179,12 +30655,12 @@
melpaBuild {
pname = "lcr";
ename = "lcr";
- version = "0.9";
+ version = "1.1";
src = fetchFromGitHub {
owner = "jyp";
repo = "lcr";
- rev = "3bc341205bba437c8fec4fefefaf39793c0405ae";
- sha256 = "0jvdnb3fn33wq7ixb7ayrallq1j5gc9nh3i3nmy03yg11h60h1am";
+ rev = "c14f40692292d59156c7632dbdd2867c086aa75f";
+ sha256 = "0mc55icihxqpf8b05990q1lc2nj2792wcgyr73xsiqx0963sjaj8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/29374d3da932675b7b3e28ab8906690dad9c9cbe/recipes/lcr";
@@ -29229,6 +30705,33 @@
license = lib.licenses.free;
};
}) {};
+ ledger-import = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , ledger-mode
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ledger-import";
+ ename = "ledger-import";
+ version = "1.1.0";
+ src = fetchFromGitHub {
+ owner = "DamienCassou";
+ repo = "ledger-import";
+ rev = "2c199fcc8671c2ec82e62cea7716289426b7407c";
+ sha256 = "0szi5k05qja28nx0rnl3amh3qf2f470sycdjgmpazgqh4zpkngsp";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4a1e2a9546b8b40f5f880197cb8166a6a715451f/recipes/ledger-import";
+ sha256 = "1lcibmjk2d49vsa89wri7bbf695mjq2ikddz3nlzb6ljywsnqzm4";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ledger-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/ledger-import";
+ license = lib.licenses.free;
+ };
+ }) {};
ledger-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -29487,6 +30990,31 @@
license = lib.licenses.free;
};
}) {};
+ linguistic = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "linguistic";
+ ename = "linguistic";
+ version = "0.2";
+ src = fetchFromGitHub {
+ owner = "andcarnivorous";
+ repo = "linguistic";
+ rev = "18e28a7e54efb140c17e16836bc5dac766c9522e";
+ sha256 = "12b9i3rdh16pq9q88bsg771y11rrbj9w74v2qr2bfymbp358qk17";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aedc03a846b873edf2426c422abb8c75732158f8/recipes/linguistic";
+ sha256 = "0yhyrr7yknvky6fb6js0lfxbl13i6a218kya7cpj2dpzdckcbhca";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/linguistic";
+ license = lib.licenses.free;
+ };
+ }) {};
link = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -29512,30 +31040,6 @@
license = lib.licenses.free;
};
}) {};
- link-hint = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "link-hint";
- version = "0.1";
- src = fetchFromGitHub {
- owner = "noctuid";
- repo = "link-hint.el";
- rev = "d26b5330e6e42b4bed4e4730054b4c5e308ceab2";
- sha256 = "1v4fadxv7ym6lc09nd2xpz2k5vrikjv7annw99ii5cqrwhqa5838";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d24b48fe0bc127ae6ac4084be8059aacb8445afd/recipes/link-hint";
- sha256 = "12fb2zm9jnh92fc2nzmzmwjlhi64rhakwbh9lsydx9svsvkgcs89";
- name = "link-hint";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/link-hint";
- license = lib.licenses.free;
- };
- }) {};
linum-relative = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -29781,6 +31285,33 @@
license = lib.licenses.free;
};
}) {};
+ literate-elisp = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "literate-elisp";
+ ename = "literate-elisp";
+ version = "0.4";
+ src = fetchFromGitHub {
+ owner = "jingtaozf";
+ repo = "literate-elisp";
+ rev = "0724b62d98cb9d9c7f3d171c322a1059648746f5";
+ sha256 = "0nnfp8rj4avn462w3fwln8c7sai3psz7kp97r3iyq4v9wavgdni2";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fd4c1c4da2a5571babda9a29a56b8972ad0687c0/recipes/literate-elisp";
+ sha256 = "10vc3m54jp2wqjrmn9plq6lb5zfiy6jy0acpp09q3z325z0sql9j";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/literate-elisp";
+ license = lib.licenses.free;
+ };
+ }) {};
live-code-talks = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -29817,12 +31348,12 @@
melpaBuild {
pname = "live-py-mode";
ename = "live-py-mode";
- version = "2.22.0";
+ version = "2.25.0";
src = fetchFromGitHub {
owner = "donkirkby";
repo = "live-py-plugin";
- rev = "ab2f9bea32dbad11a6464a4880e5487645a0f65a";
- sha256 = "0w3kpszsrh0gj0a62iqhnhm3flmmgq0pl0d6w5r61mvlq9wck5dv";
+ rev = "63140187ba2b68c2c55d91aa7a07b5c5d15422d9";
+ sha256 = "0arhhl684p0nhxhc53sbhcc1rmv3v107s5j0ymwnfa4rnyahz2ii";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c7615237e80b46b5c50cb51a3ed5b07d92566fb7/recipes/live-py-mode";
@@ -29860,30 +31391,6 @@
license = lib.licenses.free;
};
}) {};
- lms = callPackage ({ emacs
- , fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "lms";
- version = "0.7";
- src = fetchhg {
- url = "https://bitbucket.com/inigoserna/lms.el";
- rev = "f07ac3678e27";
- sha256 = "15l3nfrddblfzqxgvf0dmmsk4h5l80l6r2kgxcfk8s01msjka3sl";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/b8be8497494b8543a8257c9ea92444baf7674951/recipes/lms";
- sha256 = "1ckrh6qbh5y2y3yzl2iyq8nqlpy4qp6vzc72ijcgayvcflb01vr1";
- name = "lms";
- };
- packageRequires = [ emacs ];
- meta = {
- homepage = "https://melpa.org/#/lms";
- license = lib.licenses.free;
- };
- }) {};
load-relative = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -30012,6 +31519,7 @@
}) {};
logview = callPackage ({ datetime
, emacs
+ , extmap
, fetchFromGitHub
, fetchurl
, lib
@@ -30019,19 +31527,19 @@
melpaBuild {
pname = "logview";
ename = "logview";
- version = "0.11.1";
+ version = "0.12";
src = fetchFromGitHub {
owner = "doublep";
repo = "logview";
- rev = "902c881f5e1ca802761b856b3945bd418847dd79";
- sha256 = "1df41wabldg1ahcbqi5szwml5hqdjm6p3hj5b8ajkkagykrnh8xg";
+ rev = "bd662d467dbd7c93cfe1e3058e4f11c49314fd6a";
+ sha256 = "03s4q5xdz84cjn4qkfhsc3l9y3v5avrl2i5dby4bgsg2zj7n7f73";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1df3c11ed7738f32e6ae457647e62847701c8b19/recipes/logview";
sha256 = "0gks3j5avx8k3427a36lv7gr95id3cylaamgn5qwbg14s54y0vsh";
name = "recipe";
};
- packageRequires = [ datetime emacs ];
+ packageRequires = [ datetime emacs extmap ];
meta = {
homepage = "https://melpa.org/#/logview";
license = lib.licenses.free;
@@ -30088,56 +31596,132 @@
license = lib.licenses.free;
};
}) {};
- lsp-mode = callPackage ({ emacs
+ lsp-java = callPackage ({ dash
+ , dash-functional
+ , emacs
+ , f
, fetchFromGitHub
, fetchurl
+ , ht
, lib
- , melpaBuild }:
+ , lsp-mode
+ , markdown-mode
+ , melpaBuild
+ , request }:
+ melpaBuild {
+ pname = "lsp-java";
+ ename = "lsp-java";
+ version = "2.1";
+ src = fetchFromGitHub {
+ owner = "emacs-lsp";
+ repo = "lsp-java";
+ rev = "17a1ec97e30b0690c5f79bc8223f23b7e7dfe577";
+ sha256 = "11gpd3yy2018s6m3s3pzkhknhgbs7cf38jsg6ma5lidmygjivpjc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c03cb07862c5f35487fb4fb3cc44623774724717/recipes/lsp-java";
+ sha256 = "0rrl9mh25w1avvyww840d3yh8nw0shirspxl2nxqwwdaymbkg2wr";
+ name = "recipe";
+ };
+ packageRequires = [
+ dash
+ dash-functional
+ emacs
+ f
+ ht
+ lsp-mode
+ markdown-mode
+ request
+ ];
+ meta = {
+ homepage = "https://melpa.org/#/lsp-java";
+ license = lib.licenses.free;
+ };
+ }) {};
+ lsp-mode = callPackage ({ dash
+ , dash-functional
+ , emacs
+ , f
+ , fetchFromGitHub
+ , fetchurl
+ , ht
+ , lib
+ , melpaBuild
+ , spinner }:
melpaBuild {
pname = "lsp-mode";
ename = "lsp-mode";
- version = "4.2";
+ version = "6.0";
src = fetchFromGitHub {
owner = "emacs-lsp";
repo = "lsp-mode";
- rev = "8d20214293637beca0e8d50a864ac4980b9064e8";
- sha256 = "0l8i5ra5hzbj3r6qw26v7lqjdvc4yb956j2h2nv7ahmd4g5f95np";
+ rev = "789b672500dcbb2350bb5b667ffc0fd037a8b2e3";
+ sha256 = "1v1mq6ixzlgiazj8fmg4xaqhsqn3l89iqy74yndhvzh2rdf0pbkl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1a7b69312e688211089a23b75910c05efb507e35/recipes/lsp-mode";
sha256 = "0cklwllqxzsvs4wvvvsc1pqpmp9w99m8wimpby6v6wlijfg6y1m9";
name = "recipe";
};
- packageRequires = [ emacs ];
+ packageRequires = [ dash dash-functional emacs f ht spinner ];
meta = {
homepage = "https://melpa.org/#/lsp-mode";
license = lib.licenses.free;
};
}) {};
- lsp-ocaml = callPackage ({ emacs
- , fetchFromGitHub
- , fetchurl
- , lib
- , lsp-mode
- , melpaBuild }:
+ lsp-p4 = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , lsp-mode
+ , melpaBuild }:
melpaBuild {
- pname = "lsp-ocaml";
- ename = "lsp-ocaml";
- version = "0.2.0";
+ pname = "lsp-p4";
+ ename = "lsp-p4";
+ version = "0.1";
+ src = fetchFromGitHub {
+ owner = "dmakarov";
+ repo = "p4ls";
+ rev = "49eb7c25b95b02da34eb02e5858eb06d34e628e1";
+ sha256 = "07z4k60b32k2mzxnl5lxnz5zd4y1p9jc6gqn57d3hwpz3mn8mjzx";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/53f0da8b3d2903adeffdbc3d8df7d630bfd9ff71/recipes/lsp-p4";
+ sha256 = "0cd3n17lqwz08zfkm9g5cr1cj2asznlbhxrym2a7b7shdmn3yx5f";
+ name = "recipe";
+ };
+ packageRequires = [ lsp-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/lsp-p4";
+ license = lib.licenses.free;
+ };
+ }) {};
+ lsp-ui = callPackage ({ dash
+ , dash-functional
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , lsp-mode
+ , markdown-mode
+ , melpaBuild }:
+ melpaBuild {
+ pname = "lsp-ui";
+ ename = "lsp-ui";
+ version = "6.0";
src = fetchFromGitHub {
owner = "emacs-lsp";
- repo = "lsp-ocaml";
- rev = "5a8c776b6d75b502703243b3d628fccd813481b0";
- sha256 = "1431f8r8c4h8jbghggk1s2bwqr1qlxys3d52xsvf35bbk1gki5an";
+ repo = "lsp-ui";
+ rev = "a8c50a93952afae3cd8948fecf4c1a3dc7f3e094";
+ sha256 = "1r4327fd8cvjxfwkddp5c4bdskyncbs4sx9m3z2w4d773y2jrakc";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7be2d7a7af3d744c531e5e018d791bf2566df428/recipes/lsp-ocaml";
- sha256 = "17334qcgqrz4jd5npizyq20fmxy07z2p3pq98s5np2kc4h9ara33";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b7c78c9b07ede9949d14df74b188d4c1a3365196/recipes/lsp-ui";
+ sha256 = "0fylav8b54g020z039zm1mx26d257715bfn9nnpw9i0b97539lqi";
name = "recipe";
};
- packageRequires = [ emacs lsp-mode ];
+ packageRequires = [ dash dash-functional emacs lsp-mode markdown-mode ];
meta = {
- homepage = "https://melpa.org/#/lsp-ocaml";
+ homepage = "https://melpa.org/#/lsp-ui";
license = lib.licenses.free;
};
}) {};
@@ -30380,7 +31964,6 @@
, fetchurl
, ghub
, git-commit
- , let-alist
, lib
, magit-popup
, melpaBuild
@@ -30388,12 +31971,12 @@
melpaBuild {
pname = "magit";
ename = "magit";
- version = "2.13.0";
+ version = "2.90.1";
src = fetchFromGitHub {
owner = "magit";
repo = "magit";
- rev = "e03685e813330a750c1d2e525a8f8c74901fccfb";
- sha256 = "119x8lg8alf97j8r3swmy6yf9112a9s2z2584n74bk847mxl2qwz";
+ rev = "791901b2f1d26fa0a383147fe77948a9abc753da";
+ sha256 = "1kw94sdczswsyzn1zlk5s5aplpdv4qd7qcqc5zfxsmsfwm3jacl4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac8feccfa0f4eb5bda2ef561a6be66ba145c00e0/recipes/magit";
@@ -30406,7 +31989,6 @@
emacs
ghub
git-commit
- let-alist
magit-popup
with-editor
];
@@ -30424,12 +32006,12 @@
melpaBuild {
pname = "magit-annex";
ename = "magit-annex";
- version = "1.6.0";
+ version = "1.7.1";
src = fetchFromGitHub {
owner = "magit";
repo = "magit-annex";
- rev = "42ccbe9137718151accc85abc2726b4f3729b5cb";
- sha256 = "1zrqm4nhy1d2pg6gwd6m4225smcns5pl8kpcpi3072gprblncphl";
+ rev = "21cb2927d672cc6bf631d8373a361b1766ccf004";
+ sha256 = "07r0d2i1hws63wfv1jys63r3lmrl4ywwi76gi7srwhzhqdr1af0n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-annex";
@@ -30588,12 +32170,12 @@
melpaBuild {
pname = "magit-imerge";
ename = "magit-imerge";
- version = "0.3.1";
+ version = "1.0.0";
src = fetchFromGitHub {
owner = "magit";
repo = "magit-imerge";
- rev = "d798ceef08c01f0475c78d394544a2ae910a9cea";
- sha256 = "0x86b9xh8j9qywqh78w6b6jj75yzzdcz17cqz8sy48y12zy2skpi";
+ rev = "5b45efa65317886640c339d1c71d2b9e00e98b77";
+ sha256 = "02597aq00fq7b9284kq7s55ddrjb6xhh1l280gq3czi75658d3db";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e78a5c27eedfc9b1d79e37e8d333c5d253f31a3c/recipes/magit-imerge";
@@ -30643,12 +32225,12 @@
melpaBuild {
pname = "magit-popup";
ename = "magit-popup";
- version = "2.12.3";
+ version = "2.13.0";
src = fetchFromGitHub {
owner = "magit";
repo = "magit-popup";
- rev = "32e6da899abd6657c098534c5775fc7177047f49";
- sha256 = "0nrvs7gwd9kn4n808akrydn7zggvy9zyk38yrcmm561kw0h0h903";
+ rev = "4250c3a606011e3ff2477e3b5bbde2b493f3c85c";
+ sha256 = "073x1yf96b623yphylnf0ysannr91vawzgjdv1smkcrgd4451hr3";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0263ca6aea7bf6eae26a637454affbda6bd106df/recipes/magit-popup";
@@ -30672,14 +32254,14 @@
ename = "magit-stgit";
version = "2.1.3";
src = fetchFromGitHub {
- owner = "magit";
+ owner = "emacsorphanage";
repo = "magit-stgit";
rev = "9d13effdbc213a0c8dcce78e1825011631fa0652";
sha256 = "163a1rddl54jgxm5dygnbp1pz1as4hhjszan1rcabvzcfnfdpakj";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-stgit";
- sha256 = "12wg1ig2jzy2np76brpwxdix9pwv75chviq3c24qyv4y80pd11sv";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/72a38bbc5bba53dfb971f17213287caf0d190db0/recipes/magit-stgit";
+ sha256 = "1spli6yq258zwx95y16s27hr7hlc2h0kc9mjnvjjl13y2l6shm0i";
name = "recipe";
};
packageRequires = [ emacs magit ];
@@ -30699,14 +32281,14 @@
ename = "magit-svn";
version = "2.2.1";
src = fetchFromGitHub {
- owner = "magit";
+ owner = "emacsorphanage";
repo = "magit-svn";
rev = "c833903732a14478f5c4cfc561bae7c50671b36c";
sha256 = "01kcsc53q3mbhgjssjpby7ypnhqsr48rkl1xz3ahaypmlp929gl9";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-svn";
- sha256 = "02n732z06f0bhxqkxzlvm36bpqr40pas09zbzpfdk4pb6f9f80s0";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a1ff188d509aec104e9d21a640cf5bc3addedf00/recipes/magit-svn";
+ sha256 = "1dww5fc5phai3wk9lp85h6y08ai3vxgggsqj78a3mlcn2adwwc01";
name = "recipe";
};
packageRequires = [ emacs magit ];
@@ -30724,12 +32306,12 @@
melpaBuild {
pname = "magit-tbdiff";
ename = "magit-tbdiff";
- version = "0.2.0";
+ version = "1.0.0";
src = fetchFromGitHub {
owner = "magit";
repo = "magit-tbdiff";
- rev = "2e7d54d290260e5834cca06863d78fc563d7373c";
- sha256 = "07i0bnjkflgrrg246z996slzy28b2kjhhv13z0lcb72w46l935yr";
+ rev = "4273bfab1d2b620d68d890fbaaa78c56cf210059";
+ sha256 = "0d1cn0nshxnvgjvl9j7wsai75pvsxmrmkdj57xdpyggwxgcpl1m4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ad97eea866c8732e3adc17551d37a6d1ae511e6c/recipes/magit-tbdiff";
@@ -30742,9 +32324,7 @@
license = lib.licenses.free;
};
}) {};
- magit-todos = callPackage ({ a
- , anaphora
- , async
+ magit-todos = callPackage ({ async
, dash
, emacs
, f
@@ -30759,30 +32339,19 @@
melpaBuild {
pname = "magit-todos";
ename = "magit-todos";
- version = "1.0.3";
+ version = "1.1.7";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "magit-todos";
- rev = "d12e2e3ccad4b87d5df5285ade0c56ec5f46ad63";
- sha256 = "006yy13hjzalwz7pz0br32zifxlxrrf8cvnz0j3km55sxpdvqmil";
+ rev = "42dde9c5df2e0d59b30faf866e0a9e9a75cd4be0";
+ sha256 = "0qagdxpik64n4rw9scy451ws5sw00v64ri9g2dcw7b66bx2c6c6w";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b4544ab55d2c8b8c3b7eb739b9fb90ebb246d68b/recipes/magit-todos";
sha256 = "0vqmbw0qj8a5wf4ig9hgc0v3l1agdkvgprzjv178hs00297br2s8";
name = "recipe";
};
- packageRequires = [
- a
- anaphora
- async
- dash
- emacs
- f
- hl-todo
- magit
- pcre2el
- s
- ];
+ packageRequires = [ async dash emacs f hl-todo magit pcre2el s ];
meta = {
homepage = "https://melpa.org/#/magit-todos";
license = lib.licenses.free;
@@ -30799,14 +32368,14 @@
ename = "magit-topgit";
version = "2.1.2";
src = fetchFromGitHub {
- owner = "magit";
+ owner = "greenrd";
repo = "magit-topgit";
rev = "243fdfa7ce62dce4efd01b6b818a2791868db2f0";
sha256 = "06fbjv3zd92lvg4xjsp9l4jkxx2glhng3ys3s9jmvy5y49pymwb2";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/cec5af50ae7634cc566adfbfdf0f95c3e2951c0c/recipes/magit-topgit";
- sha256 = "1ngrgf40n1g6ncd5nqgr0zgxwlkmv9k4fik96dgzysgwincx683i";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/magit-topgit";
+ sha256 = "1194hdcphir4cmvzg9cxrjiyg70hr9zmml2rljih94vl7zrw7335";
name = "recipe";
};
packageRequires = [ emacs magit ];
@@ -30836,7 +32405,7 @@
sha256 = "1iq8c939c0a6v8gq31vcjw6nxwnz4fpavcd6xf4h2rb6rkmxmhvl";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/magithub";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e555b46f5de7591aa8e10a7cf67421e26a676db8/recipes/magithub";
sha256 = "11par5rncsa866gazdw98d4902rvyjnnwbiwpndlyh06ak0lryab";
name = "recipe";
};
@@ -30846,6 +32415,34 @@
license = lib.licenses.free;
};
}) {};
+ major-mode-hydra = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , pretty-hydra }:
+ melpaBuild {
+ pname = "major-mode-hydra";
+ ename = "major-mode-hydra";
+ version = "0.1.0";
+ src = fetchFromGitHub {
+ owner = "jerrypnz";
+ repo = "major-mode-hydra.el";
+ rev = "9e7f9ed20d3ea0fa0bb953528aa0d17dbc46e995";
+ sha256 = "07plrmy6w186n2czxp00dw8dprh3jnrjm7wk6sycyn571y0ryq4q";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/865917fcc75c4118afc89b8bcc20ebdb6302f15d/recipes/major-mode-hydra";
+ sha256 = "0654wnsw38sca97kvp8p3k1h6r91iqs873gcjaaxd7a96sisvafd";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs pretty-hydra ];
+ meta = {
+ homepage = "https://melpa.org/#/major-mode-hydra";
+ license = lib.licenses.free;
+ };
+ }) {};
make-color = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -30953,26 +32550,27 @@
license = lib.licenses.free;
};
}) {};
- map-progress = callPackage ({ fetchFromGitHub
+ map-progress = callPackage ({ cl-lib ? null
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "map-progress";
ename = "map-progress";
- version = "0.5.0";
+ version = "1.0.0";
src = fetchFromGitHub {
owner = "tarsius";
repo = "map-progress";
- rev = "6b8ef6b60626772082b2e80ec54d1f1275e1a1b8";
- sha256 = "1fkijm0gikbwmxa9hf7s1rcwb0ipzjygd1mlicsm78rxvdd8k877";
+ rev = "1fb916159cd054c233ce3c80d9d01adfae640297";
+ sha256 = "1hbk35l9aljp4jqg8cv67q6b2jbcx0g665j90fygxqibrf6r52a8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5ed3335eaf0be7368059bcdb52c46f5e47c0c1a5/recipes/map-progress";
sha256 = "0zc5vii72gbfwbb35w8m30c8r9zck971hwgcn1a4wjczgn4vkln7";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ cl-lib ];
meta = {
homepage = "https://melpa.org/#/map-progress";
license = lib.licenses.free;
@@ -30986,12 +32584,12 @@
melpaBuild {
pname = "map-regexp";
ename = "map-regexp";
- version = "0.3.0";
+ version = "1.0.0";
src = fetchFromGitHub {
owner = "tarsius";
repo = "map-regexp";
- rev = "b8e06284ec1c593d7d2bda5f35597a63de46333f";
- sha256 = "0kk1sk3cr4dbmgq4wzml8kdf14dn9jbyq4bwmvk0i7dic9vwn21c";
+ rev = "ae2d1c22f786ad987aef3e319925e80160a887a0";
+ sha256 = "1ybhizafdhzm7fg8s6gm13fbrz1vnrc7ifq8gvrrm89wl3qi5z7f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/927314443ecc00d94e7125de669e82832c5a125c/recipes/map-regexp";
@@ -31118,32 +32716,24 @@
, lib
, markdown-mode
, melpaBuild
- , uuidgen
, web-server
, websocket }:
melpaBuild {
pname = "markdown-preview-mode";
ename = "markdown-preview-mode";
- version = "0.9";
+ version = "0.9.2";
src = fetchFromGitHub {
owner = "ancane";
repo = "markdown-preview-mode";
- rev = "134fd336750b8b3165bc906f0a7161c25eb6f589";
- sha256 = "0j1jdvmn8psarjdl1j4d3rsjmnb3gcissh2l78xj2c8vckmp2g24";
+ rev = "f98d9114ca87e3e8e5ce70e601d13061eda15415";
+ sha256 = "1d1id99gagymvzdfa1mwqh8y3szm8ii47rpijkfi1qnifjg5jaq9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d3c5d222cf0d7eca6a4e3eb914907f8ca58e40f0/recipes/markdown-preview-mode";
sha256 = "1cam5wfxca91q3i1kl0qbdvnfy62hr5ksargi4430kgaz34bcbyn";
name = "recipe";
};
- packageRequires = [
- cl-lib
- emacs
- markdown-mode
- uuidgen
- web-server
- websocket
- ];
+ packageRequires = [ cl-lib emacs markdown-mode web-server websocket ];
meta = {
homepage = "https://melpa.org/#/markdown-preview-mode";
license = lib.licenses.free;
@@ -31264,12 +32854,12 @@
melpaBuild {
pname = "mastodon";
ename = "mastodon";
- version = "0.7.2";
+ version = "0.9.0";
src = fetchFromGitHub {
owner = "jdenen";
repo = "mastodon.el";
- rev = "ae8dabda04e377a6ac22cb854e4844f68073f533";
- sha256 = "1avf2wkzd14dj27i9skm3mn3ipkr1zp93yrwxrk2q5kphj1qji2j";
+ rev = "5095797ef32b922d2a624fa6beb970b5e9cf5ca0";
+ sha256 = "0hwax6y9dghqwsbnb6f1bnc7gh8xsh5cvcnayk2sn49x8b0zi5h1";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/809d963b69b154325faaf61e54ca87b94c1c9a90/recipes/mastodon";
@@ -31315,12 +32905,12 @@
melpaBuild {
pname = "math-symbol-lists";
ename = "math-symbol-lists";
- version = "1.2";
+ version = "1.2.1";
src = fetchFromGitHub {
owner = "vspinu";
repo = "math-symbol-lists";
- rev = "328f792599e4e298d164e3c6331a2426d82ebf64";
- sha256 = "1kj9r2mvmvnj6m2bwhbj8fspqiq8fdrhkaj0ir43f7qmd4imblsj";
+ rev = "e15ec26a010b4f38111bc150c51ecb1a319f6bdb";
+ sha256 = "11jk0xdlc8zk2way1d85n2khmydzzvpjhh8bbjbdsv8d1z3j9yfh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fadff01600d57f5b9ea9c0c47ed109e058114998/recipes/math-symbol-lists";
@@ -31393,12 +32983,12 @@
melpaBuild {
pname = "mb-url";
ename = "mb-url";
- version = "0.1.0";
+ version = "0.4.0";
src = fetchFromGitHub {
owner = "dochang";
repo = "mb-url";
- rev = "129a0bb6a684be76fb9f09010e710065d0e5baaa";
- sha256 = "1apy7abjhdbgh8001rzv41q40bfl444rcz62lvgdwj3lg45zb8xc";
+ rev = "23078f2e59808890268401f294d860ba51bc71d9";
+ sha256 = "07b9w9vd22ma4s3qhplmg84sylihz920byyi9qa7dwj7b59d4avf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dd9a8ff6e094b061a7b9d790df1fd4086c5d0a9d/recipes/mb-url";
@@ -31464,6 +33054,38 @@
license = lib.licenses.free;
};
}) {};
+ md4rd = callPackage ({ cl-lib ? null
+ , dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , hierarchy
+ , lib
+ , melpaBuild
+ , request
+ , s
+ , tree-mode }:
+ melpaBuild {
+ pname = "md4rd";
+ ename = "md4rd";
+ version = "0.3.1";
+ src = fetchFromGitHub {
+ owner = "ahungry";
+ repo = "md4rd";
+ rev = "443c8059af4925d11c93a1293663165c52472f08";
+ sha256 = "1n6g6k4adzkkn1g7z4j27s35xy12c1fg2r08gv345ddr3wplq4ri";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/48d4a3b3337e16e68631409d1de0ce67ae22b837/recipes/md4rd";
+ sha256 = "0ayr5qw0cz7bd46djfhm8slr2kfgssi5bsnzqcasr8n4lyg9jvfc";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib dash emacs hierarchy request s tree-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/md4rd";
+ license = lib.licenses.free;
+ };
+ }) {};
mediawiki = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -31500,12 +33122,12 @@
melpaBuild {
pname = "meghanada";
ename = "meghanada";
- version = "1.0.8";
+ version = "1.0.13";
src = fetchFromGitHub {
owner = "mopemope";
repo = "meghanada-emacs";
- rev = "1fe888ad929f0ebed9a8cde7bb0a605881e1386c";
- sha256 = "1b7cri71fikvyxcc6q9rci1zc4q45a1bvz00ks7gvx6w2sd7h5gd";
+ rev = "5f792cfe77b77aced5e70a118aba159f6e59234a";
+ sha256 = "0scj5wdd9xhpfj5cvjib8x9hzfkylb5h484ndch0vc1l79nlb650";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4c75c69b2f00be9a93144f632738272c1e375785/recipes/meghanada";
@@ -31569,7 +33191,8 @@
license = lib.licenses.free;
};
}) {};
- mentor = callPackage ({ cl-lib ? null
+ mentor = callPackage ({ async
+ , cl-lib ? null
, fetchFromGitHub
, fetchurl
, lib
@@ -31579,19 +33202,19 @@
melpaBuild {
pname = "mentor";
ename = "mentor";
- version = "0.3.1";
+ version = "0.3.4";
src = fetchFromGitHub {
owner = "skangas";
repo = "mentor";
- rev = "2b6aea26fd998d6e6fdac5e6b768f9a1751e268a";
- sha256 = "1j6wf2z4816qj17bm45frhmxk1snsad3jvkjpasyg8pscf4kqi07";
+ rev = "9415472470ff23ee9600d94123c51c455d63018d";
+ sha256 = "05gfprcrh9p06arsni58nf60inlf1zbd18i678r9xd4q0v35k491";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/083de4bd25b6b013a31b9d5ecdffad139a4ba91e/recipes/mentor";
sha256 = "0nkf7f90m2qf11l97zwvb114yrpbqk1xxr2bh2nvbx8m1c8nad9s";
name = "recipe";
};
- packageRequires = [ cl-lib seq xml-rpc ];
+ packageRequires = [ async cl-lib seq xml-rpc ];
meta = {
homepage = "https://melpa.org/#/mentor";
license = lib.licenses.free;
@@ -31604,16 +33227,16 @@
melpaBuild {
pname = "merlin";
ename = "merlin";
- version = "3.1.0";
+ version = "3.2.2";
src = fetchFromGitHub {
- owner = "the-lambda-church";
+ owner = "ocaml";
repo = "merlin";
- rev = "a9149b6ec88b455e0e040da6a6c0ca325d052904";
- sha256 = "1f9aqlic7i9ib5lfsix731bkzh857djcgfsqggxy95xvxswm8xpr";
+ rev = "8bcd99c8e5de984f04966674dcbb1c40c5d89045";
+ sha256 = "1dd9mj8z6xpbvvgp489nxsscj8hcar4mx920d61cyxnxgz1phq5p";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/b1b9bfd3164e62758dc0a3362d85c6627ed7cbf8/recipes/merlin";
- sha256 = "177cy9xcrjckxv8gvi1zhg2ndfr8cmsr37inyvpi5dxqy6d6alhp";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9338298a79b7f2d654df90b0f553aeed1428de13/recipes/merlin";
+ sha256 = "0r4wc5ann6239bagj364yyzw4y3lcpkl5nnn0vmx4hgkwdg509fn";
name = "recipe";
};
packageRequires = [];
@@ -31626,23 +33249,24 @@
, fetchFromGitHub
, fetchurl
, lib
- , melpaBuild }:
+ , melpaBuild
+ , merlin }:
melpaBuild {
pname = "merlin-eldoc";
ename = "merlin-eldoc";
- version = "1.2";
+ version = "1.3";
src = fetchFromGitHub {
- owner = "khady";
+ owner = "Khady";
repo = "merlin-eldoc";
- rev = "33544dcc389003ed6e3eabdade90c81db62ab0af";
- sha256 = "0p24l4jnsiaq3a36dq99pb74djnzjx7qjddns3w5l9s1hkrh79g5";
+ rev = "bbb1a10f2131c09a7f7f844d4da98efd77f927ae";
+ sha256 = "11gggay8srycpckclqvcmad6ym3lx2sxgj670z89br91jdwmkr2f";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/a7130ec893175323775e887babbcec7a1e324c01/recipes/merlin-eldoc";
- sha256 = "0r4997813yz81zvmdgvr0xcp9c321h55z39lajpj1plmrs3c7bry";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/merlin-eldoc";
+ sha256 = "0bx383nxd97as0d362n1jn62k2rypxvxhcjasgwf0cr8vxr244fp";
name = "recipe";
};
- packageRequires = [ emacs ];
+ packageRequires = [ emacs merlin ];
meta = {
homepage = "https://melpa.org/#/merlin-eldoc";
license = lib.licenses.free;
@@ -31681,12 +33305,12 @@
melpaBuild {
pname = "meta-presenter";
ename = "meta-presenter";
- version = "1.0.0";
+ version = "1.1.0";
src = fetchFromGitHub {
owner = "myTerminal";
repo = "meta-presenter";
- rev = "7ba8d30e36ce6de6e563c7f3a41a24d288787c48";
- sha256 = "0m23qsbai8j0bx0px7v3ipw92i4y8maxibna6zqrw3msv1j3s7cw";
+ rev = "3d8c762a7dd7ac39032a3601bd6a717f206e670d";
+ sha256 = "0r9zzmglmkkmxcqh0pdlg279mpd524k2rwn56kyvj5i3i8zw9rpl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b73e9424515b3ddea220b786e91c57ee22bed87f/recipes/meta-presenter";
@@ -31709,14 +33333,14 @@
ename = "metaweblog";
version = "1.0.1";
src = fetchFromGitHub {
- owner = "punchagan";
+ owner = "org2blog";
repo = "metaweblog";
rev = "aa14380eb7e7b879a0c16c96866b20a987cd3f2a";
sha256 = "146w9laysdqbikpzr2gc9vnjrdsa87d8i13f2swlh1kvq2dn3rz5";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/metaweblog";
- sha256 = "10kwqnfafby4ap0572mfkkdssr13y9p2gl9z3nmxqjjy04fkfi8b";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/metaweblog";
+ sha256 = "0qgmcvq1fhgljia9ncjgvgrv0mzih0l9mglwbwcszn613wmx8bkg";
name = "recipe";
};
packageRequires = [ xml-rpc ];
@@ -31758,7 +33382,7 @@
melpaBuild {
pname = "mgmtconfig-mode";
ename = "mgmtconfig-mode";
- version = "0.0.15";
+ version = "0.0.18";
src = fetchFromGitHub {
owner = "purpleidea";
repo = "mgmt";
@@ -31784,12 +33408,12 @@
melpaBuild {
pname = "mhc";
ename = "mhc";
- version = "1.2.0";
+ version = "1.2.1";
src = fetchFromGitHub {
owner = "yoshinari-nomura";
repo = "mhc";
- rev = "e29e69ab2f282131039a63f56f48e39d56c175d9";
- sha256 = "0lxn4vg3qxzdxad1fv0ssnw4rjhzvrys4k3lqx87sbg28l9ykk77";
+ rev = "a0a7e01587c47b11f4aa87ac977ca43298a75570";
+ sha256 = "1wxyp4snkarbbrqb1a28hdf286cwf08v0fbi9pl9mw4q7sn598s2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d8d3efa0fcd6cd4af94bc99b35614ef6402cbdba/recipes/mhc";
@@ -31802,26 +33426,27 @@
license = lib.licenses.free;
};
}) {};
- migemo = callPackage ({ fetchFromGitHub
+ migemo = callPackage ({ cl-lib ? null
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "migemo";
ename = "migemo";
- version = "1.9.1";
+ version = "1.9.2";
src = fetchFromGitHub {
owner = "emacs-jp";
repo = "migemo";
- rev = "97e07796573c4c47f286bfe8eeb6428cb474526e";
- sha256 = "1ckb5hymwj4wmsxakalsky4mkzn9vxhxr6416b2cr6r5jxj4xgsl";
+ rev = "09936ee27a5f3678fdf57b8a0faaa0ff150435cc";
+ sha256 = "0wfik7y3ybh4yrrlpydawx5zw0syv7wm7b1mckz2rbv3d863z0n5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2424b0328a0198a03359455abdb3024a8067c857/recipes/migemo";
sha256 = "0y49imdwygv5zd7cyh9ngda4gyb2mld2a4s7zh4yzlh7z5ha9qkr";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ cl-lib ];
meta = {
homepage = "https://melpa.org/#/migemo";
license = lib.licenses.free;
@@ -31961,12 +33586,12 @@
melpaBuild {
pname = "minions";
ename = "minions";
- version = "0.2.0";
+ version = "0.3.1";
src = fetchFromGitHub {
owner = "tarsius";
repo = "minions";
- rev = "536653d2dcae8362f2d02fee3ca8b65d4c875db7";
- sha256 = "1wa35cbffvzg0ciif93nv6jv7b0m72ixic0w8iwc5wbbvk9k5wip";
+ rev = "d36d2445420460c81bcd4822d0bfcbafaec2c682";
+ sha256 = "0q2y37zfxlbfvgdn70ikg3abp8vljna4ir9nyqlz1awmz5i1c43s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/769a2167d7f6dfdbbfda058ddea036f80b97d230/recipes/minions";
@@ -32030,6 +33655,32 @@
license = lib.licenses.free;
};
}) {};
+ mixed-pitch = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "mixed-pitch";
+ ename = "mixed-pitch";
+ version = "1.0.1";
+ src = fetchFromGitLab {
+ owner = "jabranham";
+ repo = "mixed-pitch";
+ rev = "15bb9ec6d8be0812a46917205be6c3a1c78f68ff";
+ sha256 = "1458sy5b6bis1i0k23jdqk6hfqg0ghk637r3ajql2g19ym48rf58";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/7d3c7af03e0bca3f834c32827cbcca29e29ef4db/recipes/mixed-pitch";
+ sha256 = "1gda4jl946qlbf8rqm0mk493kwy8yqldr21cr583l6b6gl1nb4qf";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/mixed-pitch";
+ license = lib.licenses.free;
+ };
+ }) {};
mmm-jinja2 = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -32056,30 +33707,6 @@
license = lib.licenses.free;
};
}) {};
- mmm-mako = callPackage ({ fetchhg
- , fetchurl
- , lib
- , melpaBuild
- , mmm-mode }:
- melpaBuild {
- pname = "mmm-mako";
- version = "1.1";
- src = fetchhg {
- url = "https://bitbucket.com/pjenvey/mmm-mako";
- rev = "5c9ff92137b5";
- sha256 = "0rpp748ym79sxccp9pyrwri14m7624zzb80srfgjfdpysrrs0jrr";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/mmm-mako";
- sha256 = "0a4af5q9wxafrid8visp30cz6073ig0c961b78vmmgqrwvvxd3kn";
- name = "mmm-mako";
- };
- packageRequires = [ mmm-mode ];
- meta = {
- homepage = "https://melpa.org/#/mmm-mako";
- license = lib.licenses.free;
- };
- }) {};
mmt = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -32239,6 +33866,31 @@
license = lib.licenses.free;
};
}) {};
+ mode-line-bell = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "mode-line-bell";
+ ename = "mode-line-bell";
+ version = "0.2";
+ src = fetchFromGitHub {
+ owner = "purcell";
+ repo = "mode-line-bell";
+ rev = "4985ba42f5a19f46ddbf9b3622453a9694995ce5";
+ sha256 = "13n3di05lgqfm4f8krn3p36yika5znhymp5vr2d747x54hqmgh7y";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/26f19808655b0242a1e9e5e5d41f7f794542e243/recipes/mode-line-bell";
+ sha256 = "1ri771hb91b7hd203f8zp83h5hcndh8ccc1y8shhqmak6a6l04wk";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/mode-line-bell";
+ license = lib.licenses.free;
+ };
+ }) {};
mode-line-debug = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -32398,12 +34050,12 @@
melpaBuild {
pname = "moody";
ename = "moody";
- version = "0.3.0";
+ version = "0.4.1";
src = fetchFromGitHub {
owner = "tarsius";
repo = "moody";
- rev = "adf652f35cba1bb3d0f254e1905e2deeeb0fbdba";
- sha256 = "1zspq29n60r0kd9fy7d50zdypljigwcjb0qa5gkwiipnhpcnf9bp";
+ rev = "e0975e844876f0962b2e9481c26739397bd23541";
+ sha256 = "0jci21ycsyf1mblcv8vbii4wisw1zcs15q5xwld7ai24kgj70269";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/63521fe6a1e540544a07231cc94144439e8caea7/recipes/moody";
@@ -32923,30 +34575,6 @@
license = lib.licenses.free;
};
}) {};
- multi-project = callPackage ({ emacs
- , fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "multi-project";
- version = "0.0.26";
- src = fetchhg {
- url = "https://bitbucket.com/ellisvelo/multi-project";
- rev = "a6e7c1542c0b";
- sha256 = "1wh7xlas6chdliya847092j5rkngxxg1m9a98y2r782ywgyl7xv6";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/multi-project";
- sha256 = "19dy2wl5ad1xldiznlw2vjvr9ja8h9wiv6igcggixq56fhngp40x";
- name = "multi-project";
- };
- packageRequires = [ emacs ];
- meta = {
- homepage = "https://melpa.org/#/multi-project";
- license = lib.licenses.free;
- };
- }) {};
multi-run = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -33191,12 +34819,12 @@
melpaBuild {
pname = "myterminal-controls";
ename = "myterminal-controls";
- version = "1.0.0";
+ version = "1.3.0";
src = fetchFromGitHub {
owner = "myTerminal";
repo = "myterminal-controls";
- rev = "59ff3a02e34969a2ac608906937cb65cb514f9f1";
- sha256 = "11b0m09n1qqhjbdmcilb1g1408k17700qn37m3wavjrcjvdhnd5n";
+ rev = "df144b269bc274162602e50c692be20ac9b90547";
+ sha256 = "02bd47rx2ykz5hhrf1szcqz7s9r5fxz7n3hnwlqap2r6xcv6cpvk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4a82a45d9fcafea0795f832bce1bdd7bc83667e2/recipes/myterminal-controls";
@@ -33688,16 +35316,16 @@
melpaBuild {
pname = "ninja-mode";
ename = "ninja-mode";
- version = "1.8.2";
+ version = "1.9.0";
src = fetchFromGitHub {
- owner = "martine";
+ owner = "ninja-build";
repo = "ninja";
- rev = "484c16336f19bd8970bb6e75322d61b92a229899";
- sha256 = "1wc0cvmfhpvfzdy127d1n812q93dd9sp3mmqnc8jzy8i3frqqqq6";
+ rev = "6d5a4b9eb973e9d82d63f8f9a421fad97d20e6d0";
+ sha256 = "1y5bkgd4kx0gm371k78fk0bjbjfnjxah88brgrvj9x29vw4vgl91";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/aed2f32a02cb38c49163d90b1b503362e2e4a480/recipes/ninja-mode";
- sha256 = "1m7f25sbkz8k343giczrnw2ah5i3mk4c7csi8kk9x5y16030asik";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/ninja-mode";
+ sha256 = "1v6wy9qllbxl37fp9h47000lwp557qss6fdjb3a1f20msg8f70av";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -33741,12 +35369,12 @@
melpaBuild {
pname = "nix-mode";
ename = "nix-mode";
- version = "1.2.2";
+ version = "1.3.0";
src = fetchFromGitHub {
owner = "NixOS";
repo = "nix-mode";
- rev = "cc23fd6a0e394aeeed603e2bfeb4a5ebc63db660";
- sha256 = "1vz3s2jx14nzy53f04d821n4f2s22ys5h9s7af6cnpynkwawyhhq";
+ rev = "1389a6b25a22328f2a1333718882c7aa8a1f42c4";
+ sha256 = "15n2prz07fsb6v0pyb1zkgamps6f6ynbfk8nv71g994k83x0178d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e1870d786dbfac3b14386c8030e06f2d13ab9da6/recipes/nix-mode";
@@ -33786,6 +35414,34 @@
license = lib.licenses.free;
};
}) {};
+ nlinum-hl = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , nlinum }:
+ melpaBuild {
+ pname = "nlinum-hl";
+ ename = "nlinum-hl";
+ version = "1.0.6";
+ src = fetchFromGitHub {
+ owner = "hlissner";
+ repo = "emacs-nlinum-hl";
+ rev = "dc6b365a58e06c7d637a76a31c71a40b20da8b56";
+ sha256 = "1fvvyc77iggil9mzy8hd4vx8xw96bkfx6pmlb9ami428qp8r45g7";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b13a886535a5c33fe389a6b616988b7377249625/recipes/nlinum-hl";
+ sha256 = "17lcp1ira7yhch9npg9sf3npwg06yh9zyhg0lnb22xg09lbndj0x";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs nlinum ];
+ meta = {
+ homepage = "https://melpa.org/#/nlinum-hl";
+ license = lib.licenses.free;
+ };
+ }) {};
no-littering = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -33794,12 +35450,12 @@
melpaBuild {
pname = "no-littering";
ename = "no-littering";
- version = "0.5.14";
+ version = "1.0.1";
src = fetchFromGitHub {
owner = "emacscollective";
repo = "no-littering";
- rev = "9bffebc0f4858a06ba374f1d48a7dffd3537b93e";
- sha256 = "02dhplz597r5qp1mljy1npx2kzg07l938d2xivwy9cd6jlkj35ya";
+ rev = "5a6f483dca3c8a2dcf3a56ab07ffbea21b2926a1";
+ sha256 = "0r45bz68d3bx1bnnp28gkyw9rsnly5dy2b9h1b2gjn1hpfs7clci";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/57a2fb9524df3fdfdc54c403112e12bd70888b23/recipes/no-littering";
@@ -33844,12 +35500,12 @@
melpaBuild {
pname = "nodejs-repl";
ename = "nodejs-repl";
- version = "0.1.6";
+ version = "0.2.1";
src = fetchFromGitHub {
owner = "abicky";
repo = "nodejs-repl.el";
- rev = "16770656a4072f8fbbd29d0cace4893a3d5541b1";
- sha256 = "1hcvi4nhgfrjalq8nw20kjjpcf4xmjid70qpqdv8dsgfann5i3wl";
+ rev = "3f79caf542403ac80c7a1c3542f493f97a0c26ef";
+ sha256 = "05ccv87rnw7fss3lib8m9sywjrj6n92fnd7mmhmjh27g2klqc83z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/14f22f97416111fcb02e299ff2b20c44fb75f049/recipes/nodejs-repl";
@@ -33940,29 +35596,6 @@
license = lib.licenses.free;
};
}) {};
- nose = callPackage ({ fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "nose";
- version = "0.1.1";
- src = fetchhg {
- url = "https://bitbucket.com/durin42/nosemacs";
- rev = "194d7789bf79";
- sha256 = "07bhzddaxdjd591xmg59yd657a1is0q515291jd83mjsmgq258bm";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/nose";
- sha256 = "1xdqsxq06x2m9rcfn1qh89g0mz1rvzl246d3sfmciwcyl932x682";
- name = "nose";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/nose";
- license = lib.licenses.free;
- };
- }) {};
notmuch = callPackage ({ fetchgit
, fetchurl
, lib
@@ -33970,11 +35603,11 @@
melpaBuild {
pname = "notmuch";
ename = "notmuch";
- version = "0.27";
+ version = "0.28.3";
src = fetchgit {
url = "https://git.notmuchmail.org/git/notmuch";
- rev = "c20a5eb80520a11cb697a45b0d9553c68e2199c8";
- sha256 = "13gpsgx5k26x8r38q56y01mfz2r1haxw76hc52mq8vypfl1gpw3x";
+ rev = "3c752b855f900f5251df9997514b4d27d9f38e83";
+ sha256 = "07k5bsifxlsy6caqgk467cfgqw3mgfb5cqb80nc5v4fcjfh0wwcv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d05fbde3aabfec4efdd19a33fd2b1297905acb5a/recipes/notmuch";
@@ -34023,12 +35656,12 @@
melpaBuild {
pname = "nov";
ename = "nov";
- version = "0.2.4";
+ version = "0.2.7";
src = fetchFromGitHub {
owner = "wasamasa";
repo = "nov.el";
- rev = "3be6e8cd1a6311b0782ca2aa3d9961bec6183632";
- sha256 = "1i7caa7s0c2qmf8bf9bi6sp7yavpnxlck6gm9fc0lkywrjfq0ixs";
+ rev = "3bb7a4038f0c2100df671c9f1f33b785ed4ae296";
+ sha256 = "1s2av1yrzsqslgjfiislf9bljdk0rxpyq2vrbyralfnj2wvgpk9m";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/cf543955ba2d5d0074fa2a5ba176f9415f6e006d/recipes/nov";
@@ -34118,6 +35751,32 @@
license = lib.licenses.free;
};
}) {};
+ ns-auto-titlebar = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ns-auto-titlebar";
+ ename = "ns-auto-titlebar";
+ version = "0.3";
+ src = fetchFromGitHub {
+ owner = "purcell";
+ repo = "ns-auto-titlebar";
+ rev = "b16092e8058af63ad2bc222f166b0aa3cb66bf9d";
+ sha256 = "0m1ih8ca4702zrkhl3zdvwbci96wyjlxhpfx95w372k25rca87dq";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d22ebb5ef16df0c56d6031cb1c7f312dca514482/recipes/ns-auto-titlebar";
+ sha256 = "1wk4y2jwl65z18cv57m8zkcg31wp9by74z2zvccxzl7mwlhy7kqg";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/ns-auto-titlebar";
+ license = lib.licenses.free;
+ };
+ }) {};
nsis-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -34405,6 +36064,31 @@
license = lib.licenses.free;
};
}) {};
+ ob-ml-marklogic = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ob-ml-marklogic";
+ ename = "ob-ml-marklogic";
+ version = "1.1.0";
+ src = fetchFromGitHub {
+ owner = "ndw";
+ repo = "ob-ml-marklogic";
+ rev = "d5660ad14f29e17cd26ae92eeb585b24030e9570";
+ sha256 = "1aqllsn965km3796q92w3a3z92hkpm5i0l6p4fm3va9xq7j79cyc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/edce412552d4798450493e0a3dbe768f38f77cc7/recipes/ob-ml-marklogic";
+ sha256 = "1y5cgba7gzlmhdrs0k7clgrxixdl4najj5271x1m023jch7bz7xl";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/ob-ml-marklogic";
+ license = lib.licenses.free;
+ };
+ }) {};
ob-prolog = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -34484,6 +36168,34 @@
license = lib.licenses.free;
};
}) {};
+ ob-tmux = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s
+ , seq }:
+ melpaBuild {
+ pname = "ob-tmux";
+ ename = "ob-tmux";
+ version = "0.1.5";
+ src = fetchFromGitHub {
+ owner = "ahendriksen";
+ repo = "ob-tmux";
+ rev = "8886f31291e979b41215f3eb97670732efffea34";
+ sha256 = "0j77n1lawkx94hyv89xsvmrbqhd8x19ycrvxrwhc0mzlxh7rxjcy";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a3f47fbfe745972e690e8028f893bb38ba30978d/recipes/ob-tmux";
+ sha256 = "12c0m2xxd75lbc98h7cwprmdn823mh2ii59pxr6fgnq7araqkz20";
+ name = "recipe";
+ };
+ packageRequires = [ emacs s seq ];
+ meta = {
+ homepage = "https://melpa.org/#/ob-tmux";
+ license = lib.licenses.free;
+ };
+ }) {};
ob-translate = callPackage ({ fetchFromGitHub
, fetchurl
, google-translate
@@ -34562,6 +36274,33 @@
license = lib.licenses.free;
};
}) {};
+ objed = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "objed";
+ ename = "objed";
+ version = "0.8.1";
+ src = fetchFromGitHub {
+ owner = "clemera";
+ repo = "objed";
+ rev = "4798b5b9fd531562ac17d6148e86cd8cdc1bc985";
+ sha256 = "16ans9pmzfjqdz0gi92yaah0vv6g4vmjbq3g1jqhcykin6ba8lpg";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4abc6d927a2bf238d23256adcc9f09a751c90374/recipes/objed";
+ sha256 = "0iqvwa664fzklajqgnss7igjh7jr9v9i8dp9acm42g8ingp9zf7b";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/objed";
+ license = lib.licenses.free;
+ };
+ }) {};
ocodo-svg-modelines = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -34595,12 +36334,12 @@
melpaBuild {
pname = "ocp-indent";
ename = "ocp-indent";
- version = "1.6.1";
+ version = "1.7.0";
src = fetchFromGitHub {
owner = "OCamlPro";
repo = "ocp-indent";
- rev = "5d83bc71d12c89850cb0fdff50d4830adb705b6c";
- sha256 = "0rcaa11mjqka032g94wgw9llqpflyk3ywr3lr6jyxbh1rjvnipnw";
+ rev = "b15fd7585b42f89d745fad69ed1f2b70ecb8757d";
+ sha256 = "0aszx9kxfbrlg0amsl3j3kdwn6n0a5fl33kvl8rgyv543p2jcx8f";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e1af061328b15360ed25a232cc6b8fbce4a7b098/recipes/ocp-indent";
@@ -35005,6 +36744,33 @@
license = lib.licenses.free;
};
}) {};
+ ordinal = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ordinal";
+ ename = "ordinal";
+ version = "0.0.1";
+ src = fetchFromGitHub {
+ owner = "zonuexe";
+ repo = "ordinal.el";
+ rev = "bfad160d7c4b6faecfe5ac986bb4858cf7149b59";
+ sha256 = "1zmsac4jg3yvr3n7pkz8fhpgw9b6lqm9zcq3xh8zmb1x4ckf33z8";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ea3dd6fe4cacc229dd1371cb66dd1cfd07321bf4/recipes/ordinal";
+ sha256 = "19s27mv7kqcg9qxa844al7q1hk0qbiqh93g1n54r3b6s980dlgcv";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/ordinal";
+ license = lib.licenses.free;
+ };
+ }) {};
org-ac = callPackage ({ auto-complete-pcmp
, fetchFromGitHub
, fetchurl
@@ -35071,14 +36837,14 @@
ename = "org-alert";
version = "0.1.0";
src = fetchFromGitHub {
- owner = "groksteve";
+ owner = "spegoraro";
repo = "org-alert";
rev = "685c18aa5ce994360c7f9e8bbf49590c412187ac";
sha256 = "0gkv2sfl9nb64qqh5xhgq68r9kfmsny3vpcmnzk2mqjcb9nh657s";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2976b7f9271bc46679a5774ff5f388b81a9f0cf8/recipes/org-alert";
- sha256 = "0n5a24iv8cj395xr0gfgi0hs237dd98zm2fws05k47vy3ygni152";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org-alert";
+ sha256 = "01bb0s22wa14lyr9wi58cvk4b03xqq268y3dvxbrhymw1ld97zk2";
name = "recipe";
};
packageRequires = [ alert dash s ];
@@ -35324,6 +37090,33 @@
license = lib.licenses.free;
};
}) {};
+ org-d20 = callPackage ({ dash
+ , fetchgit
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s
+ , seq }:
+ melpaBuild {
+ pname = "org-d20";
+ ename = "org-d20";
+ version = "0.2";
+ src = fetchgit {
+ url = "https://git.spwhitton.name/org-d20";
+ rev = "a88a3bb5e43940c2965edd8de27ecf7a2065d86b";
+ sha256 = "08s05hpyg52qhvf487cy8x6p2ln8mkiw49kmcavmkmpss2zsqdpn";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/98bf91038196dfb59c491c9ed96c6b6a0cb311a9/recipes/org-d20";
+ sha256 = "158n900ifb1mfckd0gjmb9gpzibh8a2x56flbn2r035gcdbb7wc5";
+ name = "recipe";
+ };
+ packageRequires = [ dash s seq ];
+ meta = {
+ homepage = "https://melpa.org/#/org-d20";
+ license = lib.licenses.free;
+ };
+ }) {};
org-doing = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -35333,14 +37126,14 @@
ename = "org-doing";
version = "0.1";
src = fetchFromGitHub {
- owner = "omouse";
+ owner = "rudolfolah";
repo = "org-doing";
rev = "e099514cfc162f8fe3d383456a7964743b0455d5";
sha256 = "1hvnrw0y3chlfv6zxsczmm8zybrnakn3x13ykv2zblw96am9kd2s";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/4c497b87e14ab614c963f4b2f041bc0111b6e936/recipes/org-doing";
- sha256 = "17w49z78fvbz182sxv9mnryj124gm9jbdmbybppjqz4rk6wvnm2j";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org-doing";
+ sha256 = "10vg0wl8dsy12r51178qi4rzi94img692z5x3zv8dxa29lmn26xs";
name = "recipe";
};
packageRequires = [];
@@ -35498,14 +37291,14 @@
ename = "org-gcal";
version = "0.2";
src = fetchFromGitHub {
- owner = "myuhe";
+ owner = "kidd";
repo = "org-gcal.el";
rev = "badd3629e6243563c30ff1dd0452b7601f6cc036";
sha256 = "1pxfcyf447h18220izi8qlnwdr8rlwn5kds8gr5i1v90s6hpa498";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/1c2d5bd8d8f2616dae19b9232d9442fe423d6e5e/recipes/org-gcal";
- sha256 = "1mp6cm0rhd4r9pfvsjjp86sdqxjbbg7gk41zx0zf0s772smddy3q";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d97c701819ea8deaa8a9664db1f391200ee52c4f/recipes/org-gcal";
+ sha256 = "014h67ba0cwi4i1llngypscyvyrm74ljh067i3iapx5a18q7xw5v";
name = "recipe";
};
packageRequires = [ alert cl-lib emacs org request-deferred ];
@@ -35575,16 +37368,16 @@
melpaBuild {
pname = "org-index";
ename = "org-index";
- version = "5.8.9";
+ version = "5.12.0";
src = fetchFromGitHub {
- owner = "marcihm";
+ owner = "marcIhm";
repo = "org-index";
- rev = "c26f48ec26f5d345e354845c7686fed4751d2136";
- sha256 = "0n571b2r0c6l9jklqgr0nxz5ca2jw7yfqpngl21lq06zz95lw9lw";
+ rev = "fc9635edd4bf394059e53a1fa16cdd8ab5b7b468";
+ sha256 = "0qzqlfnrc2x4mm40wrsmpbh61129ww2a2sk4s1px49fi8552vqyq";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/54946e733901986304f7a7a5139b2818ebf97eb3/recipes/org-index";
- sha256 = "1dp52xqrhby2xyi6p2d0ggp5irqsqwicp62ndg5wszyd33clxab5";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/org-index";
+ sha256 = "092q92hwvknwm3v2shp8dm59qdamfivx9z9v23msysy7x2mhg98f";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -35594,6 +37387,7 @@
};
}) {};
org-jira = callPackage ({ cl-lib ? null
+ , dash
, emacs
, fetchFromGitHub
, fetchurl
@@ -35604,19 +37398,19 @@
melpaBuild {
pname = "org-jira";
ename = "org-jira";
- version = "3.1.1";
+ version = "4.3.1";
src = fetchFromGitHub {
owner = "ahungry";
repo = "org-jira";
- rev = "03d6ebcf177db7b208c6a99386695e839f314314";
- sha256 = "07hy37by9ics7rc1sgkpg8qk2xzp67ny4i4rkd7q7j4abqdr131v";
+ rev = "3a6c9fd6886f9dbd11b055fb3bf54513fa278940";
+ sha256 = "1l80r2a9zzbfk2c78i40h0ww79vm9v4j6xi2h5i4w9kqh10rs6h2";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/730a585e5c9216a2428a134c09abcc20bc7c631d/recipes/org-jira";
- sha256 = "0dvh9k0i75jxyy3v01c4cfyws8ij6718hsivi2xyrgig7pwp16ib";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e0a2fae6eecb6b4b36fe97ad99691e2c5456586f/recipes/org-jira";
+ sha256 = "1sbypbz00ki222zpm47yplyprx7h2q076b3l07qfilk0sr8kf4ql";
name = "recipe";
};
- packageRequires = [ cl-lib emacs request s ];
+ packageRequires = [ cl-lib dash emacs request s ];
meta = {
homepage = "https://melpa.org/#/org-jira";
license = lib.licenses.free;
@@ -35630,12 +37424,12 @@
melpaBuild {
pname = "org-journal";
ename = "org-journal";
- version = "1.14.2";
+ version = "1.15.1";
src = fetchFromGitHub {
owner = "bastibe";
repo = "org-journal";
- rev = "2395db4deb255c05d0d3a75c95f53263b74939c9";
- sha256 = "018wjn7v8a1z4z1sycz7b01rdck73ap13cr3lvfqvp9mms94qq71";
+ rev = "af2819c41b34fc88e2aee473fbdf695451ba167c";
+ sha256 = "05kxs63ssgc6h47cjldxxmx9ggy1fyaxxrxzaq078gj56411gmld";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7fabdb05de9b8ec18a3a566f99688b50443b6b44/recipes/org-journal";
@@ -35654,23 +37448,24 @@
, fetchurl
, lib
, melpaBuild
- , org }:
+ , org
+ , s }:
melpaBuild {
pname = "org-kanban";
ename = "org-kanban";
- version = "0.4.6";
+ version = "0.4.13";
src = fetchFromGitHub {
owner = "gizmomogwai";
repo = "org-kanban";
- rev = "84c9e429ec9fcbe8d6091f15545ee7ebfc1cb589";
- sha256 = "1jpl56mpw0l2camknzcpng6ji4yb6gz2g29i019iprz9cik5g0xm";
+ rev = "03387a779167c4acbc04d4970cd33c52a2ca0bcd";
+ sha256 = "0arjx1a7skdlmagyy0bbxwc134dn951y99yv4jg6l64j1f31y0yg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a9f3a10c126fa43a6fa60ee7f8e50c7a9661dbc1/recipes/org-kanban";
sha256 = "1flgqa2pwzw6b2zm3j09i9bvz1i8k03mbwj6l75yrk29lh4njq41";
name = "recipe";
};
- packageRequires = [ dash emacs org ];
+ packageRequires = [ dash emacs org s ];
meta = {
homepage = "https://melpa.org/#/org-kanban";
license = lib.licenses.free;
@@ -35740,12 +37535,12 @@
melpaBuild {
pname = "org-make-toc";
ename = "org-make-toc";
- version = "0.2";
+ version = "0.3";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "org-make-toc";
- rev = "c27e3600473100daa3007fb134cd3fe13e821d90";
- sha256 = "0078qpimkx6ps1cnyb1kaxiz4k93ppm7axsbrm18qic6mvp6i2nc";
+ rev = "f1a51017b0f85e0cb9ae7d0d8240f2115f57886c";
+ sha256 = "0syhj8q4pv33xgl5qa6x27yhwqvfhffw5xqp819hj4qs1ddlc7j5";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/df87749128bcfd27ca93a65084a2e88cd9ed5c3f/recipes/org-make-toc";
@@ -35767,12 +37562,12 @@
melpaBuild {
pname = "org-mime";
ename = "org-mime";
- version = "0.1.1";
+ version = "0.1.5";
src = fetchFromGitHub {
owner = "org-mime";
repo = "org-mime";
- rev = "0752659f7a19cead182584fabc9544464f69b83e";
- sha256 = "06lay5w03ah3w156spgh4bv2ma4x42pyhr3glfxw7vplfr5klvfz";
+ rev = "0db41d5b4e9ef9df640e7212a22708ce636b3986";
+ sha256 = "0lcn69vzx5987yz4byxvnk8z7nc2bbww7my6v0hxqkra9xh0iqlm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/521678fa13884dae69c2b4b7a2af718b2eea4b28/recipes/org-mime";
@@ -35849,12 +37644,12 @@
melpaBuild {
pname = "org-noter";
ename = "org-noter";
- version = "1.1.0";
+ version = "1.3.0";
src = fetchFromGitHub {
owner = "weirdNox";
repo = "org-noter";
- rev = "8f86583bd573cb0f146aae5d2394e615efb0cafe";
- sha256 = "0fgmn7gqh146zrmvc1p7dik93sjajay0n8i8qdd4sbdzw64shzl1";
+ rev = "8fb007c329fee8cceca97338ae0e88aaafcb8535";
+ sha256 = "0qcdw1px07ggnp74gb3hibd69cq8np9bdpcpvlkm5k32qxhsnwjy";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4a2bc0d95dc2744277d6acbba1f7483b4c14d75c/recipes/org-noter";
@@ -36001,6 +37796,32 @@
license = lib.licenses.free;
};
}) {};
+ org-pretty-tags = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-pretty-tags";
+ ename = "org-pretty-tags";
+ version = "0.2.0";
+ src = fetchFromGitLab {
+ owner = "marcowahl";
+ repo = "org-pretty-tags";
+ rev = "f6146857d1e173a59b322efa5fd18f4bfb204214";
+ sha256 = "1vkz3cnavh1x3340qpwmdak7gkpi925mja6xbwxmix03gaz3l3cm";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9ad60399420764d4ef5d6acddae9241205937e78/recipes/org-pretty-tags";
+ sha256 = "19cxfjl6c0yhsc7kfjd6imckcvzdsaws3yd1s3nazhnkm3kan3h4";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/org-pretty-tags";
+ license = lib.licenses.free;
+ };
+ }) {};
org-projectile = callPackage ({ dash
, emacs
, fetchFromGitHub
@@ -36093,12 +37914,12 @@
melpaBuild {
pname = "org-random-todo";
ename = "org-random-todo";
- version = "0.5.2";
+ version = "0.5.3";
src = fetchFromGitHub {
owner = "unhammer";
repo = "org-random-todo";
- rev = "60364c18725d2f3898a9099e7e546ae406dd6578";
- sha256 = "0k86hqmqilvkam886mb85v991ivwnglallwj4l9ghszl7awy207m";
+ rev = "09228e55f1cc702053d305fdea2b094b548e6dbe";
+ sha256 = "0msgsbz39zc9zqgy1s5kmgcqggamnxr98j6bghyqpkxc96zyvp73";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/80fad6244ea3e5bdf7f448c9f62374fae45bae78/recipes/org-random-todo";
@@ -36111,6 +37932,34 @@
license = lib.licenses.free;
};
}) {};
+ org-re-reveal = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , htmlize
+ , lib
+ , melpaBuild
+ , org }:
+ melpaBuild {
+ pname = "org-re-reveal";
+ ename = "org-re-reveal";
+ version = "1.0.3";
+ src = fetchFromGitLab {
+ owner = "oer";
+ repo = "org-re-reveal";
+ rev = "50cc6574c77f12d423f6cd096d8f76feb3673abc";
+ sha256 = "1v3z30gpimg4spf6zzqwp9b597zxk89h0vpq6xp58js4rjg4ixk8";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c3e6c90a6b9004fbf0fbc08556f8effbcde8b468/recipes/org-re-reveal";
+ sha256 = "05p8iml0fapi4yf7ky45kf7m0ksz917lxg7c4pdd9hjkjmz29xn9";
+ name = "recipe";
+ };
+ packageRequires = [ emacs htmlize org ];
+ meta = {
+ homepage = "https://melpa.org/#/org-re-reveal";
+ license = lib.licenses.free;
+ };
+ }) {};
org-readme = callPackage ({ fetchFromGitHub
, fetchurl
, header2
@@ -36140,6 +37989,35 @@
license = lib.licenses.free;
};
}) {};
+ org-recent-headings = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , frecency
+ , lib
+ , melpaBuild
+ , org }:
+ melpaBuild {
+ pname = "org-recent-headings";
+ ename = "org-recent-headings";
+ version = "0.1";
+ src = fetchFromGitHub {
+ owner = "alphapapa";
+ repo = "org-recent-headings";
+ rev = "01633b51ac3958b41cc6c79e6d3714047a91c1e9";
+ sha256 = "0gsrzmg3mssh9s28yjm9m866fnhm1pcligssz1q6brga6dm6f2yy";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/668b79c179cbdb77c4049e7c620433255f63d808/recipes/org-recent-headings";
+ sha256 = "0b51pyxdk8fdbksx7h1c88sw1liwng8wkjfb1q7w7lglw6f8sjsa";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs frecency org ];
+ meta = {
+ homepage = "https://melpa.org/#/org-recent-headings";
+ license = lib.licenses.free;
+ };
+ }) {};
org-ref = callPackage ({ dash
, emacs
, f
@@ -36219,12 +38097,12 @@
melpaBuild {
pname = "org-rich-yank";
ename = "org-rich-yank";
- version = "0.2.0";
+ version = "0.2.1";
src = fetchFromGitHub {
owner = "unhammer";
repo = "org-rich-yank";
- rev = "f6bbf973bef7063c6ab475db25a630bc7ee317da";
- sha256 = "1by1ymypwlnnnh8fx4ndcwsrif83xyx56mlvmv2lx6wmyliv0py9";
+ rev = "d2f350c5296cf05d6c84b02762ba44f09a02b4e3";
+ sha256 = "0gxb0fnh5gxjmld0hnk5hli0cvdd8gjd27m30bk2b80kwldxlq1z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1261823d88459b6ac42d6c55c157a326173663df/recipes/org-rich-yank";
@@ -36237,6 +38115,32 @@
license = lib.licenses.free;
};
}) {};
+ org-snooze = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-snooze";
+ ename = "org-snooze";
+ version = "0.1.0";
+ src = fetchFromGitHub {
+ owner = "xueeinstein";
+ repo = "org-snooze.el";
+ rev = "6d30b0dcdfe9538e4400e49046291b7d07274164";
+ sha256 = "0qxk6gldgcc0fbraa0l85nk4rpvn5b5nbgzkh1p8d2bkjcxjcm4g";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fd04816fb53fe01fa9924ec928c1dd41f2219d6a/recipes/org-snooze";
+ sha256 = "00iwjj249vzqnfvbmlzrjig1sfhzbpv9kcpz95i3ir1w1qhw5119";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/org-snooze";
+ license = lib.licenses.free;
+ };
+ }) {};
org-static-blog = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -36263,6 +38167,63 @@
license = lib.licenses.free;
};
}) {};
+ org-sticky-header = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org }:
+ melpaBuild {
+ pname = "org-sticky-header";
+ ename = "org-sticky-header";
+ version = "1.0.1";
+ src = fetchFromGitHub {
+ owner = "alphapapa";
+ repo = "org-sticky-header";
+ rev = "2847035ec559a46bd7b555f220f819c88371d538";
+ sha256 = "0g6hdg11jzzpw7h0f6p795l5aj6pag2nhhfbx90cg28j61d28vwh";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/bc9a600bd156eb766ba5ce37e16f3e8253f37ee8/recipes/org-sticky-header";
+ sha256 = "0ign3vjckmxp7n3625wb53qlch07c3s4l67jsvk38dhhcsg1rhnj";
+ name = "recipe";
+ };
+ packageRequires = [ emacs org ];
+ meta = {
+ homepage = "https://melpa.org/#/org-sticky-header";
+ license = lib.licenses.free;
+ };
+ }) {};
+ org-super-agenda = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , ht
+ , lib
+ , melpaBuild
+ , org
+ , s }:
+ melpaBuild {
+ pname = "org-super-agenda";
+ ename = "org-super-agenda";
+ version = "1.1";
+ src = fetchFromGitHub {
+ owner = "alphapapa";
+ repo = "org-super-agenda";
+ rev = "a7abfb677f7ab5453f74e89eba0c461307ee20ee";
+ sha256 = "0vzf91lsxnhwf52kvm8ycpf0wb9c8l91689vyhwgv4wz8q6cvjwp";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fd27b2df7594a867529de4b84c8107f82dabe2e9/recipes/org-super-agenda";
+ sha256 = "1h3kqvpjq2w0n8qiqwb8wcpdy2g4ac7j6kin0943g7p5gm5yf0ra";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ht org s ];
+ meta = {
+ homepage = "https://melpa.org/#/org-super-agenda";
+ license = lib.licenses.free;
+ };
+ }) {};
org-sync = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -36423,6 +38384,33 @@
license = lib.licenses.free;
};
}) {};
+ org-timeline = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "org-timeline";
+ ename = "org-timeline";
+ version = "0.3.0";
+ src = fetchFromGitHub {
+ owner = "Fuco1";
+ repo = "org-timeline";
+ rev = "aed995c1db6c8bfd9db0a75a978f5e261aab38e5";
+ sha256 = "1jz44lag1j4rawqjpcgb9zrs88vfi7vjgdh756hs2ln7i1cnvgh5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/298bd714f6cefd83d594b0eea731a01fb2faf1ad/recipes/org-timeline";
+ sha256 = "0zlhjzjc7jwqh6wcys17hraz76n2hnjwffis02x71maclrf2cfdd";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/org-timeline";
+ license = lib.licenses.free;
+ };
+ }) {};
org-toodledo = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -36582,7 +38570,39 @@
license = lib.licenses.free;
};
}) {};
+ org-web-tools = callPackage ({ dash
+ , emacs
+ , esxml
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org
+ , request
+ , s }:
+ melpaBuild {
+ pname = "org-web-tools";
+ ename = "org-web-tools";
+ version = "1.1.1";
+ src = fetchFromGitHub {
+ owner = "alphapapa";
+ repo = "org-web-tools";
+ rev = "ca87319cd42eaa2eb02213e81dec19b7bd2918f7";
+ sha256 = "0v4qad54r0z7dr7kg5lpfdsazi44qvrbybx9aciyl4w9grfajphb";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f082bfb480649d21f586b7eb331c19d57e7a84cf/recipes/org-web-tools";
+ sha256 = "19zpspap85fjqg5a20ps34rcigb0ws986pj6dzd7xik8s6ia29s7";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs esxml org request s ];
+ meta = {
+ homepage = "https://melpa.org/#/org-web-tools";
+ license = lib.licenses.free;
+ };
+ }) {};
org-wild-notifier = callPackage ({ alert
+ , async
, dash
, emacs
, fetchFromGitHub
@@ -36592,19 +38612,19 @@
melpaBuild {
pname = "org-wild-notifier";
ename = "org-wild-notifier";
- version = "0.2.4";
+ version = "0.3.0";
src = fetchFromGitHub {
owner = "akhramov";
repo = "org-wild-notifier.el";
- rev = "5da63fc00db20b60eb46a241cc8308547d85b3ad";
- sha256 = "1269az078d6d0x7ims2qa6wdv8ql2hn70fwigfqw116v9602ywjr";
+ rev = "65054365e4b279cef97acc6d20235c4ca422cf04";
+ sha256 = "1h6nb1g075anbqw0a5pdfy5194hldhngvdx20naf5y2nznqj7dn7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/114552a24f73f13b253e3db4885039b680f6ef33/recipes/org-wild-notifier";
sha256 = "1lmpa614jnkpmfg3m1d2wjn9w0zig3gwd02n3dyjn23n71fiyhkp";
name = "recipe";
};
- packageRequires = [ alert dash emacs ];
+ packageRequires = [ alert async dash emacs ];
meta = {
homepage = "https://melpa.org/#/org-wild-notifier";
license = lib.licenses.free;
@@ -36613,6 +38633,7 @@
org2blog = callPackage ({ fetchFromGitHub
, fetchurl
, htmlize
+ , hydra
, lib
, melpaBuild
, metaweblog
@@ -36621,19 +38642,19 @@
melpaBuild {
pname = "org2blog";
ename = "org2blog";
- version = "1.0.2";
+ version = "1.0.3";
src = fetchFromGitHub {
- owner = "punchagan";
+ owner = "org2blog";
repo = "org2blog";
- rev = "bd2028b6a79daa63fc5481deaed63c4efc681be0";
- sha256 = "1qpw5bs5qjlpw3hphbf2jg0h8bdrcgrb8xavdsx8viwjl013d4ps";
+ rev = "55dbed00ebe5c841c43800b39764682759ecf326";
+ sha256 = "1fncgiwyigvmkc40bm1nr4nlkm828a04jv33jsnzjzyi2n00mbgx";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/org2blog";
- sha256 = "1xa03k9z8fq74w0w3vfkigz24i6c8s4vib077l16vqik7wg4yh40";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/org2blog";
+ sha256 = "15nr6f45z0i265llf8xs87958l5hvafh518k0s7jan7x1l6w5q33";
name = "recipe";
};
- packageRequires = [ htmlize metaweblog org xml-rpc ];
+ packageRequires = [ htmlize hydra metaweblog org xml-rpc ];
meta = {
homepage = "https://melpa.org/#/org2blog";
license = lib.licenses.free;
@@ -36747,12 +38768,12 @@
melpaBuild {
pname = "orgit";
ename = "orgit";
- version = "1.5.1";
+ version = "1.5.3";
src = fetchFromGitHub {
owner = "magit";
repo = "orgit";
- rev = "d909f92d3b1b42184143fd5e6d4c6a2762477ab7";
- sha256 = "1jdc874bxkpbfpllak3vmfsn82p930s565bzff341vzv7aw2528c";
+ rev = "ea79e0567ae65fc922fcb05da0f7f4af8eae1973";
+ sha256 = "1ywavzki510rslsgfm0cnn3mlh644p61ha2nfb715xhkg7cd3j9g";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/73b5f7c44c90540e4cbdc003d9881f0ac22cc7bc/recipes/orgit";
@@ -36972,6 +38993,32 @@
license = lib.licenses.free;
};
}) {};
+ outline-minor-faces = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "outline-minor-faces";
+ ename = "outline-minor-faces";
+ version = "0.1.1";
+ src = fetchFromGitHub {
+ owner = "tarsius";
+ repo = "outline-minor-faces";
+ rev = "8788f3e6f922f54b4eccfb80e4c246203a7e81c3";
+ sha256 = "1ms4mgh8jlvyhdsx5166jqfjdx6rqfbhaqzfrzplgcn6v37097l4";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f252e45e8bd6e8af1267755d108f378a974ddaf1/recipes/outline-minor-faces";
+ sha256 = "1728imdqmmfqw5f67w8xsailn2b09y4xgdr769pd6kx8z6lsi8zb";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/outline-minor-faces";
+ license = lib.licenses.free;
+ };
+ }) {};
outlook = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -37023,26 +39070,28 @@
license = lib.licenses.free;
};
}) {};
- outshine = callPackage ({ fetchFromGitHub
+ outshine = callPackage ({ cl-lib ? null
+ , fetchFromGitHub
, fetchurl
, lib
- , melpaBuild }:
+ , melpaBuild
+ , outorg }:
melpaBuild {
pname = "outshine";
ename = "outshine";
- version = "2.0";
+ version = "3.0.1";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "outshine";
- rev = "2313595aa2d72ec35e5bee31d1513752eafac01c";
- sha256 = "1jw09qh4vcp3d4qbp9bi4a4kxy88jrxfskh3r1pdbcjlci4wfhjm";
+ rev = "3edf0c61e94d36d174120c8080a98023e30a58a2";
+ sha256 = "1lh9f5dgdbwfyzxk6nsg1xwdjs8gc6p9mbyyhp6f8fnk3h0y88cg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8edf78a0ecd2ff8e6e066b80751a31e11a068c3f/recipes/outshine";
sha256 = "1qqmvs17hq5s047nqplg4sa09xg5ck6zwqyg91xmbh71bx80v28v";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ cl-lib outorg ];
meta = {
homepage = "https://melpa.org/#/outshine";
license = lib.licenses.free;
@@ -37082,12 +39131,12 @@
melpaBuild {
pname = "overcast-theme";
ename = "overcast-theme";
- version = "1.1.0";
+ version = "1.3.0";
src = fetchFromGitHub {
owner = "myTerminal";
repo = "overcast-theme";
- rev = "faafe7c19106cb4db29ba716d117fbb6ebdda3f4";
- sha256 = "1kjvx2wjb9ksdr7w0c4xnvqa4sbplj6rwlh85lbmcg8lwkb1s2sy";
+ rev = "769078cb4a6ea87a31fcea0218c06e1ec689b97c";
+ sha256 = "044g4y8ykh41b3ybxsgsrqvnkq8i1q8q8livh64b2qqrrjzq6mxg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d86691c61fc880954a05502a6474cc2fa0d0a43b/recipes/overcast-theme";
@@ -37293,6 +39342,33 @@
license = lib.licenses.free;
};
}) {};
+ ox-slimhtml = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "ox-slimhtml";
+ ename = "ox-slimhtml";
+ version = "0.4.5";
+ src = fetchFromGitHub {
+ owner = "balddotcat";
+ repo = "ox-slimhtml";
+ rev = "a764ef64235845e4f5cfd73244d6cf1e7fee903b";
+ sha256 = "14h0kks7i2k53fwbsqb4giafacm58inppqpr5mbj904cy146g29f";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6fae8e3c4abd37a651d4cbdb337a74f1a7c7366a/recipes/ox-slimhtml";
+ sha256 = "16jrw8n26iy69ibr29bp3pqp4lm66alihks37qipd2g5grqqfdnd";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/ox-slimhtml";
+ license = lib.licenses.free;
+ };
+ }) {};
ox-twbs = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -37318,6 +39394,33 @@
license = lib.licenses.free;
};
}) {};
+ ox-wk = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , org }:
+ melpaBuild {
+ pname = "ox-wk";
+ ename = "ox-wk";
+ version = "0.2.0";
+ src = fetchFromGitHub {
+ owner = "w-vi";
+ repo = "ox-wk.el";
+ rev = "9fc37e7e2f789b0ba07cb117ea1e1dcd14a2fd83";
+ sha256 = "00wsx21nmnvci2wfvxaci1kdxplavi2a4dw8ahvl7ncr3b60219f";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0947993df2d9bee493c2c25760f1ac5bcc1136ac/recipes/ox-wk";
+ sha256 = "0rb4xkkqb65ly01lb1gl3gyz4yj9hzv4ydbdzsbvmpj0hrdw5nv3";
+ name = "recipe";
+ };
+ packageRequires = [ emacs org ];
+ meta = {
+ homepage = "https://melpa.org/#/ox-wk";
+ license = lib.licenses.free;
+ };
+ }) {};
pabbrev = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -37343,6 +39446,59 @@
license = lib.licenses.free;
};
}) {};
+ pacfiles-mode = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "pacfiles-mode";
+ ename = "pacfiles-mode";
+ version = "1.0";
+ src = fetchFromGitHub {
+ owner = "UndeadKernel";
+ repo = "pacfiles-mode";
+ rev = "180eea7ba33dc4fa5c116b01649c4e9ba3f43276";
+ sha256 = "07ki2dz459nv4jshmgk2gq1b8c0x3iqy3nf9rwv0w3b3qm70gn3f";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/bec20443188d9218235c4b31840544a7b1e0690d/recipes/pacfiles-mode";
+ sha256 = "08yc3w7zvckg8s1g707hvbbkvi2k52jrk2iwlj0sk22ih3q3yaa9";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/pacfiles-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
+ pack = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "pack";
+ ename = "pack";
+ version = "0.1";
+ src = fetchFromGitHub {
+ owner = "10sr";
+ repo = "pack-el";
+ rev = "ef811927254b0fea170e2f2ddb94f6dd7c356dde";
+ sha256 = "0bza802nzncmpnnzzrfqk4b8svbmgjnhrl28mvagi42wci19qf0x";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/96f55c1f15ca24134da378a1ea31f7bb31c84ea9/recipes/pack";
+ sha256 = "0lwdhfrpqwpqqg3yhcyj11jv2mm8k9k54qdxlhdi8sxj1fdxmanw";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/pack";
+ license = lib.licenses.free;
+ };
+ }) {};
package-build = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -37351,12 +39507,12 @@
melpaBuild {
pname = "package-build";
ename = "package-build";
- version = "2.2";
+ version = "2.3";
src = fetchFromGitHub {
owner = "melpa";
repo = "package-build";
- rev = "9aac3517bde14346eadbe2c7d354672a456b9db3";
- sha256 = "0wa7d5vzxql499knlpbs07l5mw7kmxgwzv63i42arm1sqfplq5df";
+ rev = "385cd427ce15ca1715f3dd758b6aa408bf0186b1";
+ sha256 = "1412pjghyvzkdlsrrs0ql30vw591bhyk1wlbf49f15dzjbspx3w0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/948fb86b710aafe6bc71f95554655dfdfcab0cca/recipes/package-build";
@@ -37378,16 +39534,16 @@
melpaBuild {
pname = "package-lint";
ename = "package-lint";
- version = "0.5";
+ version = "0.7";
src = fetchFromGitHub {
owner = "purcell";
repo = "package-lint";
- rev = "f3ad224da996126873ee75484caafa874476ace6";
- sha256 = "03hgzm1d8srimkp9qpb3xi6sh8rvkdwkv7mr005fzhax6awd5a2h";
+ rev = "4c90df4919f7b96921a939b3bd88bedfd08d041e";
+ sha256 = "0nhznvsl3l3v7w5x2afw0ay31r6jrdvgr1ys9mhcmd1fsk57bj2r";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/9744d8521b4ac5aeb1f28229c0897af7260c6f78/recipes/package-lint";
- sha256 = "0w7nkj4yz5yqmhr3mr7kxa6aqqfs75m3l2578s39940a5sdzirwy";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/dbfb0250a58b2e31c32ff1496ed66a3c5439bd67/recipes/package-lint";
+ sha256 = "05akg9cgcqbgja966iv2j878y14d5wvky6m9clkfbw5wyg66xpr0";
name = "recipe";
};
packageRequires = [ cl-lib emacs ];
@@ -37396,6 +39552,33 @@
license = lib.licenses.free;
};
}) {};
+ package-lint-flymake = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , package-lint }:
+ melpaBuild {
+ pname = "package-lint-flymake";
+ ename = "package-lint-flymake";
+ version = "0.7";
+ src = fetchFromGitHub {
+ owner = "purcell";
+ repo = "package-lint";
+ rev = "83f34f747a13633c92210e6110e3c5377397761c";
+ sha256 = "0mljhvc03a8fj3zn5rz8i3mfcb8vd4xfaxmb7m7h9gr8ap3lwz7g";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/dbfb0250a58b2e31c32ff1496ed66a3c5439bd67/recipes/package-lint-flymake";
+ sha256 = "076v3xvbxym7dwwl95j8kynj9kj2xw3gzq6qv6qkm0xls7df4yjz";
+ name = "recipe";
+ };
+ packageRequires = [ emacs package-lint ];
+ meta = {
+ homepage = "https://melpa.org/#/package-lint-flymake";
+ license = lib.licenses.free;
+ };
+ }) {};
package-plus = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -37615,12 +39798,12 @@
melpaBuild {
pname = "pandoc-mode";
ename = "pandoc-mode";
- version = "2.25";
+ version = "2.27.1";
src = fetchFromGitHub {
owner = "joostkremers";
repo = "pandoc-mode";
- rev = "436a5847df3326436ec546dbb360d23c8e0e2030";
- sha256 = "0qvfhgwvzfchzg2ap62f3giw0fnbapb2w67j3allpcra34qpnszd";
+ rev = "d135bb5b8874f1b16c053215ecb29e22f0f79657";
+ sha256 = "1gmw78vjl82xlb4ajfiaf4q6hg35xadhjcvy7kyzr0kzs1zkkk4n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4e39cd8e8b4f61c04fa967def6a653bb22f45f5b/recipes/pandoc-mode";
@@ -37670,12 +39853,12 @@
melpaBuild {
pname = "paradox";
ename = "paradox";
- version = "2.5.2";
+ version = "2.5.3";
src = fetchFromGitHub {
owner = "Malabarba";
repo = "paradox";
- rev = "17a6690d42a1e854ec270ed930c7494077570fc8";
- sha256 = "1vg5i4cxgn4a8cgx43i75w3cf0d8sb6ig6xxxdj3pvpzc81i53bc";
+ rev = "3d918ad74448eb4715be8ac25406e20be552017a";
+ sha256 = "1hmkizglppky16k6v1ahxq1awcn8k2x82yrgdvsgkl29qg9s3fkl";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6aed365c42987d64d0cd9a8a6178339b1b39e8/recipes/paradox";
@@ -37815,6 +39998,32 @@
license = lib.licenses.free;
};
}) {};
+ parrot = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "parrot";
+ ename = "parrot";
+ version = "1.0.1";
+ src = fetchFromGitHub {
+ owner = "dp12";
+ repo = "parrot";
+ rev = "e9fe686408214884b20c65284a6a595e1c755794";
+ sha256 = "079k4j0lcaj0lff1llp29bj5ah2b59byw9lw3jjw9wkl9px87r0m";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b1b393ffb9b7691e8fc99bee5fc676463038a68d/recipes/parrot";
+ sha256 = "0m67b80vc3qivcxs4w6fpzdg6h9d8s75251rlhnbc0xp7271zgnk";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/parrot";
+ license = lib.licenses.free;
+ };
+ }) {};
parsebib = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -37901,23 +40110,24 @@
, fetchurl
, lib
, melpaBuild
- , password-store }:
+ , password-store
+ , password-store-otp }:
melpaBuild {
pname = "pass";
ename = "pass";
- version = "1.7";
+ version = "1.8";
src = fetchFromGitHub {
owner = "NicolasPetton";
repo = "pass";
- rev = "2ccf4f68fa4d2aab7efbdc26ebdc45ac1ef1819c";
- sha256 = "11b8c0qihgkl46hjqx6g1p1ifd7lc3q7jhqds3gr41zsrnlyi3p8";
+ rev = "cd79375005a1c1d8b45d38fefa91eef0bd23182c";
+ sha256 = "05h4hacv3yygyjcjj004qbyqjpkl4pyhwgp25gsz8mw5c66l70cx";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/428c2d53db69bed8938ec3486dfcf7fc048cd4e8/recipes/pass";
sha256 = "1vvyvnqf6k7wm0p45scwi6ny86slkrcbr36lnxdlkf96cqyrqzfr";
name = "recipe";
};
- packageRequires = [ emacs f password-store ];
+ packageRequires = [ emacs f password-store password-store-otp ];
meta = {
homepage = "https://melpa.org/#/pass";
license = lib.licenses.free;
@@ -37932,12 +40142,12 @@
melpaBuild {
pname = "passmm";
ename = "passmm";
- version = "0.3.1";
+ version = "0.4.1";
src = fetchFromGitHub {
owner = "pjones";
repo = "passmm";
- rev = "2e0cd4e8ef7e6017dbc295664c925d32d6fdc688";
- sha256 = "0f2nkmbphmrnfkx4yw7w0ch33kpdzqjalah2pf6nj0rm629b1dad";
+ rev = "b25a92048c788a8477cc5ffe14c0c4a4df19d79a";
+ sha256 = "1jg2rs010fmw10ld0bfl6x7af3v9yqfy9ga5ixmam3qpilc8c4fw";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8ae2a1e10375f9cd55d19502c9740b2737eba209/recipes/passmm";
@@ -37987,7 +40197,7 @@
melpaBuild {
pname = "password-store";
ename = "password-store";
- version = "1.7.2";
+ version = "1.7.3";
src = fetchFromGitHub {
owner = "zx2c4";
repo = "password-store";
@@ -38111,6 +40321,32 @@
license = lib.licenses.free;
};
}) {};
+ path-helper = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "path-helper";
+ ename = "path-helper";
+ version = "1.1";
+ src = fetchFromGitHub {
+ owner = "arouanet";
+ repo = "path-helper";
+ rev = "34538affb3f341b3c56a875bb094ddb2b859a8ef";
+ sha256 = "0qzsalbxksb44f0x7fndl2qyp1yf575qs56skfzmpnpa82dck88g";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a70b1a41e45d215be27d392429dcd4f82904295f/recipes/path-helper";
+ sha256 = "0fff3l88jgflqpxlcfxfyp2prc2ichajvm7c8i19qhvw70sbasny";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/path-helper";
+ license = lib.licenses.free;
+ };
+ }) {};
pathify = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -38278,12 +40514,12 @@
melpaBuild {
pname = "pdf-tools";
ename = "pdf-tools";
- version = "0.80";
+ version = "0.90";
src = fetchFromGitHub {
owner = "politza";
repo = "pdf-tools";
- rev = "920e598c1ec6eb9a48dde32282d10adc9cc3b011";
- sha256 = "1i4647vax5na73basc5dz4lh9kprir00fh8ps4i0l1y3ippnjs2s";
+ rev = "c41694fb198e644b3da03917e6792c71cf0c81dc";
+ sha256 = "0pvid9gzr1ix2d8azvf37iqjpha0arcc1yfny4n19wpq9r2gvayc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8e3d53913f4e8a618e125fa9c1efb3787fbf002d/recipes/pdf-tools";
@@ -38346,30 +40582,6 @@
license = lib.licenses.free;
};
}) {};
- per-buffer-theme = callPackage ({ cl-lib ? null
- , fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "per-buffer-theme";
- version = "1.5";
- src = fetchhg {
- url = "https://bitbucket.com/inigoserna/per-buffer-theme.el";
- rev = "9e6200da91b3";
- sha256 = "0w02l91x624cgzdg33a9spgcwy12m607dsfnr1xbc1fi08np4sd1";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/per-buffer-theme";
- sha256 = "1czcaybpfmx4mwff7hs07iayyvgvlhifkickccap6kpd0cp4n6hn";
- name = "per-buffer-theme";
- };
- packageRequires = [ cl-lib ];
- meta = {
- homepage = "https://melpa.org/#/per-buffer-theme";
- license = lib.licenses.free;
- };
- }) {};
persistent-scratch = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -38378,12 +40590,12 @@
melpaBuild {
pname = "persistent-scratch";
ename = "persistent-scratch";
- version = "0.3.1";
+ version = "0.3.3";
src = fetchFromGitHub {
owner = "Fanael";
repo = "persistent-scratch";
- rev = "0bfd717d28ce9e262741b06341c61306602c7711";
- sha256 = "1fq3m3p81rrvv1yp0cxfznphx7gava11sn09x706lmm1js62jnip";
+ rev = "71371a7ce9846754276350fd577dc7543eb52878";
+ sha256 = "0n638krbrs2hx97cgkb5nc0fbrd8wsbmb7mz3ym5mx5pvdyxnlgv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f1e32702bfa15490b692d5db59e22d2c07b292d1/recipes/persistent-scratch";
@@ -38423,7 +40635,8 @@
license = lib.licenses.free;
};
}) {};
- persp-fr = callPackage ({ emacs
+ persp-fr = callPackage ({ dash
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -38432,19 +40645,19 @@
melpaBuild {
pname = "persp-fr";
ename = "persp-fr";
- version = "0.0.3";
+ version = "0.0.4";
src = fetchFromGitHub {
owner = "rocher";
repo = "persp-fr";
- rev = "4d2d1a75019f520742da79f1aeed9c4a960677e0";
- sha256 = "1waakbmxwm0xdnl0iznyk61ccwdjvwv5g1naml31r7q0cnk0jfz8";
+ rev = "3f536440b120499464106fd25f182d7580192870";
+ sha256 = "0bnplxv6igry7ak3wvn2b88zm4aarv35z4z5q38x52k4zac94rl8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8e09213dddf003a1275eafb767431a507ecf7639/recipes/persp-fr";
sha256 = "0p4379yr1b32l8ghq1axyb8qhp28gnq5qxxvbk3mdzgbwwj8y4b2";
name = "recipe";
};
- packageRequires = [ emacs persp-mode ];
+ packageRequires = [ dash emacs persp-mode ];
meta = {
homepage = "https://melpa.org/#/persp-fr";
license = lib.licenses.free;
@@ -38562,12 +40775,12 @@
melpaBuild {
pname = "pfuture";
ename = "pfuture";
- version = "1.2";
+ version = "1.6";
src = fetchFromGitHub {
owner = "Alexander-Miller";
repo = "pfuture";
- rev = "8b5cd8dfb8769d2b24484a313d3d21938afd3dfb";
- sha256 = "1d63sfwy7qmldhq2xda9dglg91cy2kpjdr2rlmqb48w95wf0am3m";
+ rev = "766cfb7d2df8ebc6144fb644d4d858f66657f60d";
+ sha256 = "1zjkpanfxhdfq75dy5x2m541qxpcnh67d7aiijdgkb0g5v3yb61d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5fb70c9f56a58b5c7a2e8b69b191aa2fc7c9bcc8/recipes/pfuture";
@@ -38748,16 +40961,16 @@
melpaBuild {
pname = "php-mode";
ename = "php-mode";
- version = "1.19.1";
+ version = "1.21.1";
src = fetchFromGitHub {
- owner = "ejmr";
+ owner = "emacs-php";
repo = "php-mode";
- rev = "aacb133b3d89ed0da8d936a162f49afc2aa5dfd4";
- sha256 = "1al6l37377psiykk6syyyc3sfifr7x3mqyb2rms5kqqkff53x1yx";
+ rev = "bcde734c37ca36e6c2a925038760247b09ca8825";
+ sha256 = "0shrssfjbqykpyz8kmchizgcl2m29bxp1n1331csi0lnqkb9v540";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7cdbc35fee67b87b87ec72aa00e6dca77aef17c4/recipes/php-mode";
- sha256 = "1lc4d3fgxhanqr3b8zr99z0la6cpzs2rksj806lnsfw38klvi89y";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/2e41dc09413eaa93704e7d9f55bd2bd01f658806/recipes/php-mode";
+ sha256 = "1gqmcynz2wx09xjnk70db1a2pbnrh1vfm5vd6mks1s10y59bh0zq";
name = "recipe";
};
packageRequires = [ cl-lib emacs ];
@@ -38768,26 +40981,28 @@
}) {};
php-runtime = callPackage ({ cl-lib ? null
, emacs
+ , f
, fetchFromGitHub
, fetchurl
, lib
- , melpaBuild }:
+ , melpaBuild
+ , s }:
melpaBuild {
pname = "php-runtime";
ename = "php-runtime";
- version = "0.1.0";
+ version = "0.2.0";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "php-runtime.el";
- rev = "fa4312863245511462b75cb31df2f8558288f4df";
- sha256 = "1glwy0cgnn0z4rnd45pqy0bmyaddhxfjlj778hz7ghy40h9kqbdn";
+ rev = "017e0e70f07d6b25e37d5c5f4d271a914b677631";
+ sha256 = "1c74xd6p3hfanpd4920agvnar9rjbyvz33kwrzw9vywzrs68ncvh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/615c9ac208d8c20082a8ac83e49e93d99e2cbc89/recipes/php-runtime";
sha256 = "0dvnwajrjsgyqzglzpkx9vwx3f55mrag6dsbdjqc9vvpvxhmgfwb";
name = "recipe";
};
- packageRequires = [ cl-lib emacs ];
+ packageRequires = [ cl-lib emacs f s ];
meta = {
homepage = "https://melpa.org/#/php-runtime";
license = lib.licenses.free;
@@ -38795,6 +41010,7 @@
}) {};
phpactor = callPackage ({ cl-lib ? null
, emacs
+ , f
, fetchFromGitHub
, fetchurl
, lib
@@ -38802,19 +41018,19 @@
melpaBuild {
pname = "phpactor";
ename = "phpactor";
- version = "0.0.2";
+ version = "0.1.0";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "phpactor.el";
- rev = "fc301e6388332bb23162adaff2c59bb9214d66a4";
- sha256 = "1iy7pqs2p2h98kr4blnif577qbbyp7ldyrl20g6515k9g888fxab";
+ rev = "61e4eab638168b7034eef0f11e35a89223fa7687";
+ sha256 = "0dsa1mygb96nlz5gppf0sny3lxaacvmvnkg84c0cs6x223s6zfx8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d67b98ecd541c227c011615f67d7a0890f5e1af3/recipes/phpactor";
sha256 = "0w2iszi74y3s6rcn6p2ic545cg319y4jpy83npbh5m98y8jma84m";
name = "recipe";
};
- packageRequires = [ cl-lib emacs ];
+ packageRequires = [ cl-lib emacs f ];
meta = {
homepage = "https://melpa.org/#/phpactor";
license = lib.licenses.free;
@@ -38854,12 +41070,12 @@
melpaBuild {
pname = "phpstan";
ename = "phpstan";
- version = "0.2.2";
+ version = "0.3.0";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "phpstan.el";
- rev = "09102b062b607affc93f2d8a113a9fc9f9cf3016";
- sha256 = "0n21vyvd5c42v03xcfx94dz252z3s413i0f9pwjrssq2yd3x2bgm";
+ rev = "1151b8d418af532fdf0732b9793b479c64a364e3";
+ sha256 = "0wb9pshgcrq2w9d9fpkywz299ihcb9fffh3fdk8rm1r8irylrjkh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5a2b6cc39957e6d7185bd2bdfa3755e5b1f474a6/recipes/phpstan";
@@ -38884,12 +41100,12 @@
melpaBuild {
pname = "phpunit";
ename = "phpunit";
- version = "0.16.0";
+ version = "0.17.1";
src = fetchFromGitHub {
owner = "nlamirault";
repo = "phpunit.el";
- rev = "a13706733f98be3639c47311fc820b3b50f4bc33";
- sha256 = "0vfvybjinj0knim4ax0xspz7zr3n2y9ap1lvwqx1gwydr06w4jrl";
+ rev = "4212307bbcfd8accd2abfa7e4ab55a6751a0b11b";
+ sha256 = "1silbfmv85r73pbc7f5cm4znc6644ngihfnhibk1fgp9j0rf7ahc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/0670b42c0c998daa7bf01080757976ac3589ec06/recipes/phpunit";
@@ -38954,6 +41170,32 @@
license = lib.licenses.free;
};
}) {};
+ pine-script-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "pine-script-mode";
+ ename = "pine-script-mode";
+ version = "1.0.0";
+ src = fetchFromGitHub {
+ owner = "EricCrosson";
+ repo = "pine-script-mode";
+ rev = "9176de41a5c80f7b56e41fb7a9ba7350885a2512";
+ sha256 = "1kxdrqa420zbl73jlakilvn1ja83vfqnhqdirgfvp23z4xhcddq6";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/287b781147fe41089fa8c76570bc30539e43e5bc/recipes/pine-script-mode";
+ sha256 = "0ihijbcx7m4vhxr1fnfkwjdk6ka1mqzxb8z164yh8yn73qs0saiq";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/pine-script-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
pinyin-search = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -39132,26 +41374,27 @@
license = lib.licenses.free;
};
}) {};
- plantuml-mode = callPackage ({ fetchFromGitHub
+ plantuml-mode = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "plantuml-mode";
ename = "plantuml-mode";
- version = "1.2.5";
+ version = "1.2.9";
src = fetchFromGitHub {
owner = "skuro";
repo = "plantuml-mode";
- rev = "5a2e8d0dd2ba9286fc3c82d8689d25050290f68d";
- sha256 = "1gcv5gmps371wd2sjbq4g5p2yj2ip8lpn81lypwb5xavqa7gjhlv";
+ rev = "2b84a2df523904c180a3556c851f59beb0e070d7";
+ sha256 = "0l4nxda55ipbrzy0nj59d1vf97m2h9ydviq9r7hiw4mjfq31lzsv";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/38e74bb9923044323f34473a5b13867fe39bed25/recipes/plantuml-mode";
sha256 = "03srbg34512vxcqn95q4r7h2aqbqq0sd5c9ffnbx2a75vsblqc6h";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/plantuml-mode";
license = lib.licenses.free;
@@ -39402,6 +41645,7 @@
, emacs
, fetchFromGitHub
, fetchurl
+ , ht
, kv
, lib
, melpaBuild
@@ -39413,12 +41657,12 @@
melpaBuild {
pname = "pocket-reader";
ename = "pocket-reader";
- version = "0.1.1";
+ version = "0.2";
src = fetchFromGitHub {
owner = "alphapapa";
repo = "pocket-reader.el";
- rev = "e65a7e7529ece4fb7a738c062e73d5c07ace9574";
- sha256 = "0bqxsvhmwvf0gpjmmh7pmzyw4lpcarj2prm52bgncch8x1f0gvnp";
+ rev = "a7f080ec3e9522f942166de61b24a375b8f1c2bb";
+ sha256 = "0l7dln7qcrgzm73vk7jp8wr2kibg18973xmdzyyc162hdnlbrpb0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/835a7bf2f72987183e9d15ada7ae747fb5715c11/recipes/pocket-reader";
@@ -39428,6 +41672,7 @@
packageRequires = [
dash
emacs
+ ht
kv
org-web-tools
ov
@@ -39465,6 +41710,281 @@
license = lib.licenses.free;
};
}) {};
+ poly-R = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , poly-markdown
+ , poly-noweb
+ , polymode }:
+ melpaBuild {
+ pname = "poly-R";
+ ename = "poly-R";
+ version = "0.1.5";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-R";
+ rev = "876e1324ce3bc2b6e3b84e03d08d4b5cd06018c6";
+ sha256 = "0xjlrdwp7vhk05lq9hkbm8gqda5valxc6siiydrwmpa79n8dbqxd";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-R";
+ sha256 = "1v2was6pdynwm22b4n2hkwyrr0c0iir9kp1wz4hjab8haqxz68ii";
+ name = "recipe";
+ };
+ packageRequires = [ emacs poly-markdown poly-noweb polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-R";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-ansible = callPackage ({ ansible-doc
+ , fetchFromGitLab
+ , fetchurl
+ , jinja2-mode
+ , lib
+ , melpaBuild
+ , polymode
+ , yaml-mode }:
+ melpaBuild {
+ pname = "poly-ansible";
+ ename = "poly-ansible";
+ version = "0.2.1";
+ src = fetchFromGitLab {
+ owner = "mavit";
+ repo = "poly-ansible";
+ rev = "01c9ec1d8a933fa0b2711940d29331d58c27d2a7";
+ sha256 = "02ff0df8bn5cwvnpc2862wsii2xvjh0waymgiybm8j829x1awjp9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6d8beef5daa1804f68c30138cb03b5085a282c34/recipes/poly-ansible";
+ sha256 = "158z3nbqgrh71myyp4l263lw1gn4iiwxv8pl7fdlyp80hz5zs60y";
+ name = "recipe";
+ };
+ packageRequires = [ ansible-doc jinja2-mode polymode yaml-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-ansible";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-erb = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , polymode }:
+ melpaBuild {
+ pname = "poly-erb";
+ ename = "poly-erb";
+ version = "0.1.5";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-erb";
+ rev = "aa8a40a1bb1035144b1cbc053d87305f70a442a7";
+ sha256 = "0zsvywh9xs9wb6x70b7j3cpavbx7846p772qlqd141y2lcp1jss9";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-erb";
+ sha256 = "01c1z2jll497k1y8835pp54n121y0gkyz1pdxcdjjqv7ia8jwfyy";
+ name = "recipe";
+ };
+ packageRequires = [ emacs polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-erb";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-markdown = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , markdown-mode
+ , melpaBuild
+ , polymode }:
+ melpaBuild {
+ pname = "poly-markdown";
+ ename = "poly-markdown";
+ version = "0.1.5";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-markdown";
+ rev = "bf41bd2f30066573f562c674d38b9e42a43ed016";
+ sha256 = "0w2xy1cksik332qs1i26imxiyd89vbfy3ff7di4b3l14cxz6ybra";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-markdown";
+ sha256 = "0pxai5x2vz6j742s3bpcy82dxja6441fsgclhz1hbv2ykazbm141";
+ name = "recipe";
+ };
+ packageRequires = [ emacs markdown-mode polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-markdown";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-noweb = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , polymode }:
+ melpaBuild {
+ pname = "poly-noweb";
+ ename = "poly-noweb";
+ version = "0.1.5";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-noweb";
+ rev = "f27f09184573c579bfcd164ba995e8b5bfb84954";
+ sha256 = "096a2bm1i2ngyv4gdy0gz8bnwmgr50b4chvryxg2fh840p07540f";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-noweb";
+ sha256 = "1692js29wdjpxvcbcaxysbsq6pxdqr38frqf88ksldlz35cmy62b";
+ name = "recipe";
+ };
+ packageRequires = [ emacs polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-noweb";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-org = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , polymode }:
+ melpaBuild {
+ pname = "poly-org";
+ ename = "poly-org";
+ version = "0.1.5";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-org";
+ rev = "2465f1d252940f13555252ef7b8e4d02ee3956ce";
+ sha256 = "1xw6h7qcva4529vs8v13gsw5zdcgc1sky7i3vbhcchxkm3d4ffdb";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-org";
+ sha256 = "1xrhdjmz3p5d3sgbfpmf6wksa1cpxqhy1wg17b5x8ah4w4yhpdca";
+ name = "recipe";
+ };
+ packageRequires = [ emacs polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-org";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-rst = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , polymode }:
+ melpaBuild {
+ pname = "poly-rst";
+ ename = "poly-rst";
+ version = "0.1.5";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-rst";
+ rev = "68f5e9ee448f4da33d2acab4874d8c9e91190d16";
+ sha256 = "14wgfncwsnb4xs2qcr04d0my7dndjkq79q5gr6bjf74vys6a37ra";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d3fb89f58903245a8df75060ddd695a05cedb322/recipes/poly-rst";
+ sha256 = "08sdnjb5zvlynyxkmajn1j9gnjdjj81ycid9ziydvrb7hb88x2m4";
+ name = "recipe";
+ };
+ packageRequires = [ emacs polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-rst";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-ruby = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , polymode }:
+ melpaBuild {
+ pname = "poly-ruby";
+ ename = "poly-ruby";
+ version = "0.3.1";
+ src = fetchFromGitHub {
+ owner = "knu";
+ repo = "poly-ruby.el";
+ rev = "794ebb926ace23e9c1398da934701951432dcea2";
+ sha256 = "1ffm81hg1gah7hb9x556hda5g4j3gk4c986q9gaacvfizqak3gyy";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/68213703359324d09553a2164f1f6ecca7c16854/recipes/poly-ruby";
+ sha256 = "0d8s6bl5ynx0r5cwvfkd52rksiq5kdyrgbxds56r8ls6cfkwqngg";
+ name = "recipe";
+ };
+ packageRequires = [ emacs polymode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-ruby";
+ license = lib.licenses.free;
+ };
+ }) {};
+ poly-slim = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , polymode
+ , slim-mode }:
+ melpaBuild {
+ pname = "poly-slim";
+ ename = "poly-slim";
+ version = "0.1.5";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "poly-slim";
+ rev = "2216d7edf315ab8df1e01c2a826041bcdb8bcd01";
+ sha256 = "0wcfacd5wpi52glfz4snxh8ghff2qlv8d1jwj890297ikmk7mn1g";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/poly-slim";
+ sha256 = "15nh0d8y79rwc24akxfpf346jypadfgjjn6vlgaj6xjnj7wsp7ax";
+ name = "recipe";
+ };
+ packageRequires = [ emacs polymode slim-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/poly-slim";
+ license = lib.licenses.free;
+ };
+ }) {};
+ polymode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "polymode";
+ ename = "polymode";
+ version = "0.1.5";
+ src = fetchFromGitHub {
+ owner = "polymode";
+ repo = "polymode";
+ rev = "06c4329fdf765b4f9072e20906c8737a19e6646b";
+ sha256 = "0wwphs54jx48a3ca6x1qaz56j3j9bg4mv8g2akkffrzbdcb8sbc7";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3058351c4500fdcbe7f40b4c96ac8d6de9bbeb1d/recipes/polymode";
+ sha256 = "15i9masklpy4iwskc7dzqjhb430ggn0496z4wb1zjj0b9xx4wj66";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/polymode";
+ license = lib.licenses.free;
+ };
+ }) {};
pomidor = callPackage ({ alert
, emacs
, fetchFromGitHub
@@ -39526,12 +42046,12 @@
melpaBuild {
pname = "ponylang-mode";
ename = "ponylang-mode";
- version = "0.0.9";
+ version = "0.0.11";
src = fetchFromGitHub {
owner = "SeanTAllen";
repo = "ponylang-mode";
- rev = "38786ba7f9f5709d511e27b85028b2dc6aff532d";
- sha256 = "0cr22scxk3y2qdlhhfvwf4fkk2ql1c0r73fxzhw64dhwm4q01pih";
+ rev = "963abdcdb398b71fb13a4f7d2ffde23eb20e2a23";
+ sha256 = "1h0y6x4h7higwdq569h2lk0iddd23c3csqjk7y5phvc0lq812xs0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7d51adec3c6519d6ffe9b3f7f8a86b4dbc2c9817/recipes/ponylang-mode";
@@ -39702,6 +42222,32 @@
license = lib.licenses.free;
};
}) {};
+ posframe = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "posframe";
+ ename = "posframe";
+ version = "0.4.3";
+ src = fetchFromGitHub {
+ owner = "tumashu";
+ repo = "posframe";
+ rev = "96dbc49f4f434c0aea59242fbcee663c1533ec05";
+ sha256 = "0i5xd7x33zmshhkzpsbpcpc8lgvv5vinnl1a07bnp8r1sp4yahm0";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/fa3488f2ede1201faf4a147313456ed90271f050/recipes/posframe";
+ sha256 = "02chwkc7gn7fxaaxsz9msmrhrd62bji5hhb71kdm019x8d84z06w";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/posframe";
+ license = lib.licenses.free;
+ };
+ }) {};
powerline = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -39813,12 +42359,12 @@
melpaBuild {
pname = "prescient";
ename = "prescient";
- version = "2.0";
+ version = "2.2.2";
src = fetchFromGitHub {
owner = "raxod502";
repo = "prescient.el";
- rev = "515959a2523b43608c9d06dcf8adde8911ce42b9";
- sha256 = "1k8xk154sql3b2b7hpyxslcgl88aaxq5ak2sr760jsq2qk7878bw";
+ rev = "562d25a1c3c5b2e269d82f374f450e6aa90a970e";
+ sha256 = "1ncplx5p3cffyzg9ygzqqxj0vpvwrz9rp2n4z6c375a78fyydrk0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ec02349e31531c347e4a43fbde56ae4386898cc6/recipes/prescient";
@@ -39858,6 +42404,35 @@
license = lib.licenses.free;
};
}) {};
+ pretty-hydra = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , hydra
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "pretty-hydra";
+ ename = "pretty-hydra";
+ version = "0.1.0";
+ src = fetchFromGitHub {
+ owner = "jerrypnz";
+ repo = "major-mode-hydra.el";
+ rev = "ad709e5aadb129d3e4087f5246aa0d6127e73f30";
+ sha256 = "1d2rf3as2r93a7l3n0zdksb6kh2naw5zg6mbpj03k79zldqkkqhk";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/865917fcc75c4118afc89b8bcc20ebdb6302f15d/recipes/pretty-hydra";
+ sha256 = "0gp4cbffpa17svs7fzxighyly7c8brsn3avv3hqvd590kkz3fkri";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs hydra s ];
+ meta = {
+ homepage = "https://melpa.org/#/pretty-hydra";
+ license = lib.licenses.free;
+ };
+ }) {};
pretty-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -39867,14 +42442,14 @@
ename = "pretty-mode";
version = "2.0.3";
src = fetchFromGitHub {
- owner = "akatov";
+ owner = "pretty-mode";
repo = "pretty-mode";
rev = "4ba8fceb7dd733361ed975d80ac2caa3612fa78b";
sha256 = "013fig9i4fyx16krp2vfv953p3rwdzr38zs6i50af4pqz4vrcfvh";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/4a2fe9feae4c1f007e51272a97917a63dcf6bbe5/recipes/pretty-mode";
- sha256 = "1zxi4nj7vnchiiz1ndx17b719a1wipiqniykzn4pa1w7dsnqg21f";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/pretty-mode";
+ sha256 = "0zm6azbl70qmq2ybi576wfs3mx0ny54mf97b94ac501miv4fv0mq";
name = "recipe";
};
packageRequires = [];
@@ -39909,30 +42484,6 @@
license = lib.licenses.free;
};
}) {};
- processing-snippets = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "processing-snippets";
- version = "1.0";
- src = fetchFromGitHub {
- owner = "ptrv";
- repo = "processing2-emacs";
- rev = "228bc56369675787d60f637223b50ce3a1afebbd";
- sha256 = "08ljf39jfmfpdk36nws2dnwpm7y8252zsdprsc85hr1h1ig5xy15";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ba59561e8a2f259fde170a79844af5e1ef5ed34f/recipes/processing-snippets";
- sha256 = "09vkm9asmjz1in0f63s7bf4amifspsqf5w9pxiy5y0qvmn28fr2r";
- name = "processing-snippets";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/processing-snippets";
- license = lib.licenses.free;
- };
- }) {};
prodigy = callPackage ({ dash
, emacs
, f
@@ -40025,12 +42576,12 @@
melpaBuild {
pname = "project-persist";
ename = "project-persist";
- version = "0.3.2";
+ version = "1.0.1";
src = fetchFromGitHub {
owner = "rdallasgray";
repo = "project-persist";
- rev = "a4e5de1833edb60656d8a04357c527d34e81d27c";
- sha256 = "1x7hwda1w59b8hvzxyk996wdz6phs6rchh3f1ydf0ab6x7m7xvjr";
+ rev = "26d9435bef44da2a1b0892eba822f9f487b98eec";
+ sha256 = "0ja2pnbw11a2gwywfyfbdpk8rkm8imy04wkshpnlh0nwn7lf0clm";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/bd81d1f8a30ed951ed94b9a4db13a2f7735ea878/recipes/project-persist";
@@ -40069,29 +42620,6 @@
license = lib.licenses.free;
};
}) {};
- project-root = callPackage ({ fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "project-root";
- version = "0.7";
- src = fetchhg {
- url = "https://bitbucket.com/piranha/project-root";
- rev = "843ca1f4ab2b";
- sha256 = "0nw02f5lmbqdfnw93d3383sdxx1d31szk23zvjlrmmdwv2124281";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/project-root";
- sha256 = "0xjir204zk254y2x70k9vqwirx2ljmrikpsgn5kn170d1bxvhwmb";
- name = "project-root";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/project-root";
- license = lib.licenses.free;
- };
- }) {};
projectile = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -40101,12 +42629,12 @@
melpaBuild {
pname = "projectile";
ename = "projectile";
- version = "1.0.0";
+ version = "2.0.0";
src = fetchFromGitHub {
owner = "bbatsov";
repo = "projectile";
- rev = "09d1ef17a20c42dc6a2b1622df8faa8fb1c6ad9f";
- sha256 = "1yyphiy2bc4kzc1bz1akfz5rrdrs0bq3zvsyam9bsx03jixzn7yv";
+ rev = "823c0aa9ffd1e8e03b20efe97c16cfb66e2c56c5";
+ sha256 = "16y0zcqydfag4igwcbljqymkwjgjxdh97ii616wgdsyjgk9xxd4h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ca7bf43ef8893bf04e9658390e306ef69e80a156/recipes/projectile";
@@ -40159,12 +42687,12 @@
melpaBuild {
pname = "projectile-rails";
ename = "projectile-rails";
- version = "0.16.0";
+ version = "0.17.0";
src = fetchFromGitHub {
owner = "asok";
repo = "projectile-rails";
- rev = "31c9f90d472e07cb8e49fa8992b187b67c9c9a71";
- sha256 = "0j38zbprkga3iq5wb77zvfa5r3sj3sqv8qh0ab62wm68qy60d6g3";
+ rev = "78f5cbe2c212ce19d4732212c46472d1c412659f";
+ sha256 = "09aby7yxk28rqz0vaps889idl5n41wj72pa0dr7bqmidq8i5jv4h";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b16532bb8d08f7385bca4b83ab4e030d7b453524/recipes/projectile-rails";
@@ -40340,6 +42868,31 @@
license = lib.licenses.free;
};
}) {};
+ proof-general = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "proof-general";
+ ename = "proof-general";
+ version = "4.4";
+ src = fetchFromGitHub {
+ owner = "ProofGeneral";
+ repo = "PG";
+ rev = "771cab48b2f9ea2ae3fa8f944d0e36a805bf9f3b";
+ sha256 = "0bdfk91wf71z80mdfnl8hpinripndcjgdkz854zil6521r84nqk8";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/135c8f2a04739145b500b8742a697907e398d270/recipes/proof-general";
+ sha256 = "10zif9ax4d3m8sa9y2xqz7g24xa2r3m2x5l0zqa06wm4afq29p87";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/proof-general";
+ license = lib.licenses.free;
+ };
+ }) {};
prop-menu = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -40374,7 +42927,7 @@
melpaBuild {
pname = "protobuf-mode";
ename = "protobuf-mode";
- version = "3.6.0.1";
+ version = "3.7.1";
src = fetchFromGitHub {
owner = "google";
repo = "protobuf";
@@ -40486,12 +43039,12 @@
melpaBuild {
pname = "psysh";
ename = "psysh";
- version = "0.0.4";
+ version = "0.0.5";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "psysh.el";
- rev = "f72d6fe41af2d9566d41b167cda66e97efdf8cfa";
- sha256 = "0hr8nlxcqfas9wl5ahz9hmvpa8b6k35n4f7iv9dx6zwf5q48q7y7";
+ rev = "4709a57cdcf7103c4a606be89849ea3ead2d38a5";
+ sha256 = "1apf6mnqp9bg5dfykgvsn02z0xpyx6k34sd2pvicicig7w09kzvb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eb13cb0dba1696cc51132cd1ff723fa17f892a7c/recipes/psysh";
@@ -40529,6 +43082,35 @@
license = lib.licenses.free;
};
}) {};
+ pubmed = callPackage ({ deferred
+ , emacs
+ , esxml
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild
+ , s }:
+ melpaBuild {
+ pname = "pubmed";
+ ename = "pubmed";
+ version = "0.1";
+ src = fetchFromGitLab {
+ owner = "fvdbeek";
+ repo = "emacs-pubmed";
+ rev = "195e5f6e0cb7b5c20723c2b6adc3ac19543cfcdc";
+ sha256 = "0c37kk8lzhlywlg7gagk62c7k21zy6cg9lhz0jy5sab1icrdzps5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ee84560c15e7389e902fb4a4c548c08be231de82/recipes/pubmed";
+ sha256 = "048kh442dnzgwz4wml2a5griav8zyrfzn5b43n9ky84pm7lgcxp3";
+ name = "recipe";
+ };
+ packageRequires = [ deferred emacs esxml s ];
+ meta = {
+ homepage = "https://melpa.org/#/pubmed";
+ license = lib.licenses.free;
+ };
+ }) {};
pug-mode = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -40636,31 +43218,6 @@
license = lib.licenses.free;
};
}) {};
- purescript-mode = callPackage ({ fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "purescript-mode";
- ename = "purescript-mode";
- version = "13.10";
- src = fetchFromGitHub {
- owner = "dysinger";
- repo = "purescript-mode";
- rev = "6a4d4bdd178c65183a715c7729941a0b8fe5f253";
- sha256 = "1wk319akv0scvyyjsd48pisi2i1gkahhsan9hfszrs6xx3anvfd9";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/77175fa470e517fa134751fbb38e144eb5b979ff/recipes/purescript-mode";
- sha256 = "00gz752mh7144nsaka5q3q4681jp845kc5vcy2nbfnqp9b24l55m";
- name = "recipe";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/purescript-mode";
- license = lib.licenses.free;
- };
- }) {};
pushbullet = callPackage ({ fetchFromGitHub
, fetchurl
, grapnel
@@ -40842,7 +43399,6 @@
};
}) {};
pyim = callPackage ({ async
- , cl-lib ? null
, emacs
, fetchFromGitHub
, fetchurl
@@ -40853,19 +43409,19 @@
melpaBuild {
pname = "pyim";
ename = "pyim";
- version = "1.7";
+ version = "1.8";
src = fetchFromGitHub {
owner = "tumashu";
repo = "pyim";
- rev = "3b1c5fbdf3b910f96771935785e28cf33d8d54cc";
- sha256 = "1ijfsnjvyys941kgcq00d5dgnkbzj14gb7c9pks0x11bsdl0vr6p";
+ rev = "8648d467d79b3bf1c3a99623f9329939cacc40da";
+ sha256 = "16rma4cv7xgky0g3x4an27v30jdi6i1sqw43cl99zhkqvp43l3f9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/151a0af91a58e27f724854d85d5dd9668229fe8d/recipes/pyim";
sha256 = "1ly4xhfr3irlrwvv20j3kyz98g7barridi9n8jppc0brh2dlv98j";
name = "recipe";
};
- packageRequires = [ async cl-lib emacs popup pyim-basedict ];
+ packageRequires = [ async emacs popup pyim-basedict ];
meta = {
homepage = "https://melpa.org/#/pyim";
license = lib.licenses.free;
@@ -40979,6 +43535,32 @@
license = lib.licenses.free;
};
}) {};
+ pytest-pdb-break = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "pytest-pdb-break";
+ ename = "pytest-pdb-break";
+ version = "0.0.4";
+ src = fetchFromGitHub {
+ owner = "poppyschmo";
+ repo = "pytest-pdb-break";
+ rev = "38840190dfbcb307778d079da5e2373525b3ac18";
+ sha256 = "0887620iq8xn28aajx7z2pkgh19778w494n8icibwlk2mj2m3gxl";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/4ed7d5d5e81818dad55edda73fbeca8c5021b932/recipes/pytest-pdb-break";
+ sha256 = "0dxn53y9zjlip0bjynjql984wrf39pmg5fsx1qgsrj1bw78xqw26";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/pytest-pdb-break";
+ license = lib.licenses.free;
+ };
+ }) {};
python-environment = callPackage ({ deferred
, fetchFromGitHub
, fetchurl
@@ -41132,12 +43714,12 @@
melpaBuild {
pname = "pyvenv";
ename = "pyvenv";
- version = "1.16";
+ version = "1.20";
src = fetchFromGitHub {
owner = "jorgenschaefer";
repo = "pyvenv";
- rev = "c1123def7e0d9da57d034d3a6bd3044a738aa8db";
- sha256 = "0mi86m5z3hig65yd0k224wx6x9i0nz9fcv91njy0ypifxh5hcd8v";
+ rev = "fa6a028349733b0ecb407c4cfb3a715b71931eec";
+ sha256 = "1x052fsavb94x3scpqd6n9spqgzaahzbdxhg4qa5sy6hqsabn6zh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e37236b89b9705ba7a9d134b1fb2c3c003953a9b/recipes/pyvenv";
@@ -41234,7 +43816,7 @@
melpaBuild {
pname = "qt-pro-mode";
ename = "qt-pro-mode";
- version = "1.0.0";
+ version = "1.0.1";
src = fetchFromGitHub {
owner = "EricCrosson";
repo = "qt-pro-mode";
@@ -41259,12 +43841,12 @@
melpaBuild {
pname = "quasi-monochrome-theme";
ename = "quasi-monochrome-theme";
- version = "1.1";
+ version = "1.2";
src = fetchFromGitHub {
owner = "lbolla";
repo = "emacs-quasi-monochrome";
- rev = "7d3afe41c2696ee25e3e4bcce987af1f589208d6";
- sha256 = "0bn1yzxzj6r1k3xcp45l04flq4avzlh0sbjfyiw4nglfhliyvwcf";
+ rev = "68060dbbc0bbfe4924387392874186c5a29bb434";
+ sha256 = "0zp2xr0bjfqrpb0bqczzick1vvbjmipjavrdi70kw6a9caynvq22";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a9c8498e4bcca19c4c24b2fd0db035c3da477e2a/recipes/quasi-monochrome-theme";
@@ -41303,6 +43885,32 @@
license = lib.licenses.free;
};
}) {};
+ quilt = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "quilt";
+ ename = "quilt";
+ version = "0.5";
+ src = fetchFromGitHub {
+ owner = "jstranik";
+ repo = "emacs-quilt";
+ rev = "161ce2d8ba225bccef0ea8ae4937251b8ccaa892";
+ sha256 = "0r9j71rc2jcwfr6yqg8qx4fwypqg1d7p31af258ixygs3qy69x14";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/28ad2d71574c1995287371cfd73648871b9271f0/recipes/quilt";
+ sha256 = "0fgni5khjbxy28i2vdwhcvs0z0yx43ll0c4s8br4w7q9s0nlcvmv";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/quilt";
+ license = lib.licenses.free;
+ };
+ }) {};
quiz = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -41392,12 +44000,12 @@
melpaBuild {
pname = "railscasts-reloaded-theme";
ename = "railscasts-reloaded-theme";
- version = "1.5.0";
+ version = "2.0.0";
src = fetchFromGitHub {
owner = "thegeorgeous";
repo = "railscasts-reloaded-theme";
- rev = "077af9cb791d9eba4c561cd7cb3b10d2fcfc39d2";
- sha256 = "1wd6j7m3w81rks6q8mrq5n6p6in0bc93szksds7sx2j2rz6vhfkn";
+ rev = "ae77bc04fe5a948f418ec8693f6ff2c9ea757c50";
+ sha256 = "1vn9cw343w9vvxhzqi85vyqnj6kxcv99qvva4xjvy1sf65i24wy4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9817851bd06cbae30fb8f429401f1bbc0dc7be09/recipes/railscasts-reloaded-theme";
@@ -41729,14 +44337,14 @@
ename = "real-auto-save";
version = "0.4";
src = fetchFromGitHub {
- owner = "chillaranand";
+ owner = "ChillarAnand";
repo = "real-auto-save";
rev = "2775cf497cce60335091817f9fea14f838cd725f";
sha256 = "0s19qy5idnzhd7aq0v538x3ysqh7lzddm98mkf8wmqf4xpws6h3j";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/525039a3dc29190829bf50d608ef09bc4a8557af/recipes/real-auto-save";
- sha256 = "03dbbizpyg62v6zbq8hd16ikrifz8m2bdlbb3g67f2834xqmxha8";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/real-auto-save";
+ sha256 = "1li0b2d93ffxjq4jdyzyvjdy5h7q5xllys0w4748d2bhr8q35p3w";
name = "recipe";
};
packageRequires = [];
@@ -41759,14 +44367,14 @@
ename = "realgud";
version = "1.4.5";
src = fetchFromGitHub {
- owner = "rocky";
- repo = "emacs-dbgr";
+ owner = "realgud";
+ repo = "realgud";
rev = "09431a4561921bece36a6083b6e27ac4dc82432d";
sha256 = "00dgdiiwnwynlyyh6pfhljrl363s8zd5ynbx9mhd2y8c3gmvfab0";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7ca56f05df6c8430a5cbdc55caac58ba79ed6ce5/recipes/realgud";
- sha256 = "0qmvd35ng1aqclwj3pskn58c0fi98kvx9666wp3smgj3n88vgy15";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/7a21be3673962d5706f12efa5179a5426bdce82b/recipes/realgud";
+ sha256 = "14n6d3jfhpa29nf4ywdg3aw4i51lfkr99b4z8q4833pmpz1jbq2c";
name = "recipe";
};
packageRequires = [
@@ -41807,6 +44415,32 @@
license = lib.licenses.free;
};
}) {};
+ reazon = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "reazon";
+ ename = "reazon";
+ version = "0.3";
+ src = fetchFromGitHub {
+ owner = "nickdrozd";
+ repo = "reazon";
+ rev = "020be6467a83957adcbdcb192b61f2c76a94079b";
+ sha256 = "18la2g0srybr10vm1dajgbxi67j1l0cs08mr696hxb6m558yxdv5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/77020b6ea36a4115bdddbc9599fe4f4193ecc29d/recipes/reazon";
+ sha256 = "1lymdc1lnwr7s8s15mnjcavxdyqncy2rkfdj571lf1a37y52jcj1";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/reazon";
+ license = lib.licenses.free;
+ };
+ }) {};
rebecca-theme = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -41833,6 +44467,33 @@
license = lib.licenses.free;
};
}) {};
+ recently = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "recently";
+ ename = "recently";
+ version = "0.1";
+ src = fetchFromGitHub {
+ owner = "10sr";
+ repo = "recently-el";
+ rev = "3a331936ba33875d0f2fa47abe056aadbc59150e";
+ sha256 = "0hdsv3whr2iqk6xirmfcjpbqjnckzqj54n5q04gh2z01bjxv3d7k";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/bb8d1628e1787cba10fc612f3351e4085e9a3153/recipes/recently";
+ sha256 = "1928v1897l1n42zrzqfwkq6nckf9y822qcwy99294rq0b4z83kxs";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/recently";
+ license = lib.licenses.free;
+ };
+ }) {};
recover-buffers = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -42020,6 +44681,32 @@
license = lib.licenses.free;
};
}) {};
+ reformatter = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "reformatter";
+ ename = "reformatter";
+ version = "0.4";
+ src = fetchFromGitHub {
+ owner = "purcell";
+ repo = "reformatter.el";
+ rev = "b2963f51009948d5e4885237a148695008d4ccbc";
+ sha256 = "0hhy6x1bkwlhdlarsgm06g3am4yh02yqv8qs34szpzgy53x84qah";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/58de8cf8864867f7b3969f3a048a4844837078b4/recipes/reformatter";
+ sha256 = "0z4wa0bmhz55c54vx7qxkl9x7ix20mmgygv91sqll68l10g63l0c";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/reformatter";
+ license = lib.licenses.free;
+ };
+ }) {};
region-convert = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -42027,16 +44714,16 @@
melpaBuild {
pname = "region-convert";
ename = "region-convert";
- version = "0.0.1";
+ version = "0.2.0";
src = fetchFromGitHub {
owner = "zonuexe";
- repo = "right-click-context";
- rev = "4391dd89616584dc34773d7c304a7db93f9b63a4";
- sha256 = "0kqgznjrdg70y5zcz7y9fxssddib6m1wrgfqza2g97g4gl1m91vf";
+ repo = "region-convert.el";
+ rev = "173c86b4b3fc187d54bcd85b4d7df27a5ee24965";
+ sha256 = "1paljjwr6sfl835m24vj2j4x3zdh3whwayj6dvyfarbhhcwbwphj";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ddcf4612cccb9a53425c5f0324206d70549d9d9e/recipes/region-convert";
- sha256 = "0daghvxc6gxgric1aa1gw036gbpbzilqz72gr1inqy92hz7xrxfm";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f6963fc11d697b95ebbdaf7fe27c91a6229d08b6/recipes/region-convert";
+ sha256 = "16i1b83jms7djkyb3n0crfxgpz05m68f4nrlvzxjj7fb56mvf9j7";
name = "recipe";
};
packageRequires = [];
@@ -42045,6 +44732,31 @@
license = lib.licenses.free;
};
}) {};
+ region-state = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "region-state";
+ ename = "region-state";
+ version = "0.1";
+ src = fetchFromGitHub {
+ owner = "xuchunyang";
+ repo = "region-state.el";
+ rev = "17e2710d14f090201418ad511e3dbff7178b53a6";
+ sha256 = "03ij1yjxf23lp24smna91c84iwamac6gi9chc6fmnlhxcpjcm8px";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/716e82eb4ca0845f59a743556b37be8a1ecb29af/recipes/region-state";
+ sha256 = "1iq2x1w8lqjjiwjja7r3qki6drvydnk171k9fj9g6rk7wslknz8x";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/region-state";
+ license = lib.licenses.free;
+ };
+ }) {};
relax = callPackage ({ fetchFromGitHub
, fetchurl
, json ? null
@@ -42148,7 +44860,8 @@
license = lib.licenses.free;
};
}) {};
- replace-with-inflections = callPackage ({ fetchFromGitHub
+ replace-with-inflections = callPackage ({ cl-lib ? null
+ , fetchFromGitHub
, fetchurl
, inflections
, lib
@@ -42157,19 +44870,19 @@
melpaBuild {
pname = "replace-with-inflections";
ename = "replace-with-inflections";
- version = "0.3.0";
+ version = "0.3.1";
src = fetchFromGitHub {
owner = "knu";
repo = "replace-with-inflections.el";
- rev = "e0486653abf7c248024800132df23993cd617892";
- sha256 = "1fygsr3vjpy0crxlyawwk6k21h1w3svgk79rm7fqg5xzilg6kf25";
+ rev = "d9201e047856492f282da65459b28aba25998dbb";
+ sha256 = "09yvn489z33hww7mi1flh344faxrpbkzqhm0i6xb2rridcj7acqh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7892eb506b8f4260bde4be2805bf3b2d594ab640/recipes/replace-with-inflections";
sha256 = "1pqpin5ipm3g74zjh1kh6s1gh0aan6202p0y2q00d4ywbz9kn5s0";
name = "recipe";
};
- packageRequires = [ inflections string-inflection ];
+ packageRequires = [ cl-lib inflections string-inflection ];
meta = {
homepage = "https://melpa.org/#/replace-with-inflections";
license = lib.licenses.free;
@@ -42202,7 +44915,7 @@
};
}) {};
req-package = callPackage ({ dash
- , fetchFromGitHub
+ , fetchFromGitLab
, fetchurl
, ht
, lib
@@ -42213,15 +44926,15 @@
pname = "req-package";
ename = "req-package";
version = "1.2";
- src = fetchFromGitHub {
+ src = fetchFromGitLab {
owner = "edvorg";
repo = "req-package";
rev = "0c0ac7451149dac6bfda2adfe959d1df1c273de6";
sha256 = "0sx3kw1gpliifbc0gh2z1lvig68v3gwqjbj0izgn77js8kqxad84";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/f58a801f0791566d0c39493a5f82ff0d15d7ab41/recipes/req-package";
- sha256 = "1438f60dnmc3a2dh6hd0wslrh25nd3af797aif70kv6qc71h87vf";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aa5bc1909f807ec03ad441d78013ba8626cd410a/recipes/req-package";
+ sha256 = "1zjhc6f9qcb3j72k1llp6vym25lxnvq1jgqgmnrjxxwc4fhxx595";
name = "recipe";
};
packageRequires = [ dash ht log4e use-package ];
@@ -42447,23 +45160,24 @@
, fetchurl
, lib
, melpaBuild
- , s }:
+ , s
+ , wgrep }:
melpaBuild {
pname = "rg";
ename = "rg";
- version = "1.5.0";
+ version = "1.7.0";
src = fetchFromGitHub {
owner = "dajva";
repo = "rg.el";
- rev = "943226043dc9055b282d0c035fd1e1cbdd562b22";
- sha256 = "0hm25x1zym4xdc4w1ayn1an4nrg1qwyh12vb9sxas3fplapm500k";
+ rev = "77670a4bcdba138a0cef3fb12a20b1492dca902a";
+ sha256 = "0hpxkpyylzvzzvqc51ac0r89nv1jdymb8nmsb03sq1svsw5nyag9";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9ce1f721867383a841957370946f283f996fa76f/recipes/rg";
sha256 = "0i78qvqdznh1z3b0mnzihv07j8b9r86dc1lsa1qlzacv6a2i9sbm";
name = "recipe";
};
- packageRequires = [ cl-lib emacs s ];
+ packageRequires = [ cl-lib emacs s wgrep ];
meta = {
homepage = "https://melpa.org/#/rg";
license = lib.licenses.free;
@@ -42521,6 +45235,34 @@
license = lib.licenses.free;
};
}) {};
+ right-click-context = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , popup }:
+ melpaBuild {
+ pname = "right-click-context";
+ ename = "right-click-context";
+ version = "0.2.0";
+ src = fetchFromGitHub {
+ owner = "zonuexe";
+ repo = "right-click-context";
+ rev = "173c86b4b3fc187d54bcd85b4d7df27a5ee24965";
+ sha256 = "1paljjwr6sfl835m24vj2j4x3zdh3whwayj6dvyfarbhhcwbwphj";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f6963fc11d697b95ebbdaf7fe27c91a6229d08b6/recipes/right-click-context";
+ sha256 = "189nkxkc7lr2fm5qgmylmz6xv6mpphslj4fgpmr8ynnx9z3nxms2";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs popup ];
+ meta = {
+ homepage = "https://melpa.org/#/right-click-context";
+ license = lib.licenses.free;
+ };
+ }) {};
rigid-tabs = callPackage ({ emacs
, fetchFromGitLab
, fetchurl
@@ -42662,12 +45404,12 @@
melpaBuild {
pname = "robots-txt-mode";
ename = "robots-txt-mode";
- version = "0.0.2";
+ version = "0.0.3";
src = fetchFromGitHub {
owner = "emacs-php";
repo = "robots-txt-mode";
- rev = "edf1f8082c88cb2ff5a784ba00f92c535aaa1c7d";
- sha256 = "11ig771ck610glb6f3322ka026ikq0b072rlq5z6ymr3rbxagn6j";
+ rev = "431efda01e08426d671d51fcf1f98cfbc87f8c16";
+ sha256 = "1mpg62ai721aasd1lm5xwcygpkyh9kp4x5zvmd62agmp3i8s78gc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eb13cb0dba1696cc51132cd1ff723fa17f892a7c/recipes/robots-txt-mode";
@@ -42790,12 +45532,12 @@
melpaBuild {
pname = "rtags";
ename = "rtags";
- version = "2.18";
+ version = "2.31";
src = fetchFromGitHub {
owner = "Andersbakken";
repo = "rtags";
- rev = "98d668e85cf9ae84e775742752c5656dd2df2f17";
- sha256 = "0raqjbkl1ykga4ahgl9xw49cgh3cyqcf42z36z7d6fz1fw192kg0";
+ rev = "fe31db984968d323653da238b0c403951cd1d704";
+ sha256 = "0c7payxxd0f4md0jbvys2pn41bazgljmmy2538smfaw3n20m2hmp";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3dea16daf0d72188c8b4043534f0833fe9b04e07/recipes/rtags";
@@ -42846,14 +45588,14 @@
ename = "rubocop";
version = "0.5.0";
src = fetchFromGitHub {
- owner = "bbatsov";
+ owner = "rubocop-hq";
repo = "rubocop-emacs";
rev = "980bedb455e3551d35a212fae515c054888907c1";
sha256 = "152ara2p59imry2ymfnk5mycbc07rblcmfmqjgm5fijb2x94xv8p";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/00f2cf3e8e28bce5c26c86aba54390ffff48d7da/recipes/rubocop";
- sha256 = "114azl0fasmnq0fxxyiif3363mpg8qz3ynx91in5acqzh902fa3q";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/rubocop";
+ sha256 = "07ma4fv015wzpj5j4rdb0ckwwmhkxs3k5vy33qxgwghqmn6xby6x";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -42870,12 +45612,12 @@
melpaBuild {
pname = "rubocopfmt";
ename = "rubocopfmt";
- version = "0.2.2";
+ version = "0.3.0";
src = fetchFromGitHub {
owner = "jimeh";
repo = "rubocopfmt.el";
- rev = "34c69c9c923d0da223f7569a6ecc842095adcf85";
- sha256 = "0aa683r16gvpv07i0gzbil81kgxbgk4pjn510xgalan3fk20nal4";
+ rev = "43ffa9d9c3dcc0574038bebd049102642f50b290";
+ sha256 = "0vzpfd9xv80ph9xz8psczz46blhsdnac8zh5i944klkxgqdw7x1x";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac01edffceea771d8fe41326e28dd9881f1661ab/recipes/rubocopfmt";
@@ -42971,12 +45713,12 @@
melpaBuild {
pname = "ruby-hash-syntax";
ename = "ruby-hash-syntax";
- version = "0.5";
+ version = "0.6";
src = fetchFromGitHub {
owner = "purcell";
repo = "ruby-hash-syntax";
- rev = "bc05c3130a5d3237f04c6064297e56de5f73887d";
- sha256 = "1jwvyj3kqchd40h37m75ydl0gjrbm873dhfn1grqg4sgk60hr414";
+ rev = "89fc364a837d7a78ecce34380f09c073a83e30e0";
+ sha256 = "1nwf3681fa6lfqr14n9wihckpi220hvamv1ppzmrhn4k49vxljy8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c7d21a43a4bf267507bdc746ec9d0fd82049c0af/recipes/ruby-hash-syntax";
@@ -42998,14 +45740,14 @@
ename = "ruby-test-mode";
version = "1.0";
src = fetchFromGitHub {
- owner = "r0man";
+ owner = "ruby-test-mode";
repo = "ruby-test-mode";
rev = "a8f41e63d9e9b031fcbad57911b0a28a444f6cdb";
sha256 = "1wck3n2lcsasrg14jimm9iiyxdsh9mr9293q1kx4l0jm0z1k8f43";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ruby-test-mode";
- sha256 = "06j1q9m08jkwlnkccppf2qlcs48nr8ic9sjdv90rnixc18bw7bpk";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f781a76a519afc0222cdf7255822a23e33745deb/recipes/ruby-test-mode";
+ sha256 = "08x9pskxz1hvvqablx5mdp1g54n28kpmd10qwrasq2zjbdjghj48";
name = "recipe";
};
packageRequires = [];
@@ -43123,12 +45865,12 @@
melpaBuild {
pname = "rust-mode";
ename = "rust-mode";
- version = "0.3.0";
+ version = "0.4.0";
src = fetchFromGitHub {
owner = "rust-lang";
repo = "rust-mode";
- rev = "e32765893ce2efb2db6662f507fb9d33d5c1b61b";
- sha256 = "03i79iqhr8fzri018hx65rix1fsdxk38pkvbw5z6n5flbfr4m0k4";
+ rev = "106aeab800fb3404baf231845d3e3549ec235afa";
+ sha256 = "0bcrklyicxh032rrp585rl5mxd26nb61dp6r5bl935rlcmxzsczh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8f6e5d990d699d571dccbdeb13327b33389bb113/recipes/rust-mode";
@@ -43145,24 +45887,23 @@
, fetchFromGitHub
, fetchurl
, lib
- , melpaBuild
- , rust-mode }:
+ , melpaBuild }:
melpaBuild {
pname = "rust-playground";
ename = "rust-playground";
- version = "0.2.1";
+ version = "0.3";
src = fetchFromGitHub {
owner = "grafov";
repo = "rust-playground";
- rev = "2f22ec74e4158984e0e70cf0bf728bbd42eb661b";
- sha256 = "1p80zghdk3hsfj36z30sfkllqr3b4yi279zkg0la9kfg6785x2cg";
+ rev = "092c8b11d62dea23953a004744833092bac85fe1";
+ sha256 = "0n2c1pjbvy46ic0k84jd3ffwwb5hibjqc1wv7knzkldi5agigfsh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/rust-playground";
sha256 = "0ml0zr9vz2vjd9wr0v706w4v4qqfzpa56rdzfak2kb5llx53j89v";
name = "recipe";
};
- packageRequires = [ emacs rust-mode ];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/rust-playground";
license = lib.licenses.free;
@@ -43360,14 +46101,14 @@
ename = "say-what-im-doing";
version = "0.2";
src = fetchFromGitHub {
- owner = "benaiah";
+ owner = "Benaiah";
repo = "say-what-im-doing";
rev = "4acc16360a29646040b51db158ba7fdeb711449d";
sha256 = "1gkzgcnh5ib4j5206mx8gbwj5ykay19vqlfg9070m2r09d1a55qf";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/4d22ddcd4ad9514fe0c36f299e7463a4b7e771d7/recipes/say-what-im-doing";
- sha256 = "1hgh842f7gs2sxy7s6zq57nsqy4jjlnjcga6hwzcx0kw3albgz7x";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/say-what-im-doing";
+ sha256 = "0wi7318q7mms4wjbzhnsw298bjh7g957dnra0bvg87vv48pz3yfp";
name = "recipe";
};
packageRequires = [];
@@ -43384,16 +46125,16 @@
melpaBuild {
pname = "sayid";
ename = "sayid";
- version = "0.0.16";
+ version = "0.0.17";
src = fetchFromGitHub {
- owner = "bpiel";
+ owner = "clojure-emacs";
repo = "sayid";
- rev = "8ea70573e6eb1a0d1a450fd501f38c2cf26ce27f";
- sha256 = "02yp3h16yzys27lxcxn7qzb23z95vjdaxhinz0swdixgr5qwwc77";
+ rev = "a2625e3975c2bc8449259f0ecd51b28068cbdfac";
+ sha256 = "1vw0dc8cx8npy79r53cw129h5s8n12629ah0ypkq15v2rh2hs1gk";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2bd2e05f9c9328d8f9ae434c86697a4a04af8b0d/recipes/sayid";
- sha256 = "0chz46wmwmsn4ys59pn7lqs4assqy2hv43rvka7kq61jdl4g6fgs";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/9a15a17a5aa78aed72958b2a1bde53f0c0ab5be7/recipes/sayid";
+ sha256 = "065mxb2la3dq2zqyb8dfksb18fpqym04nnax5rrp19izcw488qsm";
name = "recipe";
};
packageRequires = [ cider ];
@@ -43504,6 +46245,58 @@
license = lib.licenses.free;
};
}) {};
+ scratch = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "scratch";
+ ename = "scratch";
+ version = "1.3";
+ src = fetchFromGitHub {
+ owner = "ieure";
+ repo = "scratch-el";
+ rev = "4813d82b39a451f2a6d5b730cd7ec49a9bdabcca";
+ sha256 = "0yiwq2gc4gdgfhaagpawhb7yrzc4fsnyb10w5d0q4whv64cj8555";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b46813f928eadfa08a1d4bf94ceeb96dbc2a7c72/recipes/scratch";
+ sha256 = "1an30pr64fz13s6lghlcb36b7hn3961vv0yipfp9s140ccygdvh7";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/scratch";
+ license = lib.licenses.free;
+ };
+ }) {};
+ scrollkeeper = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "scrollkeeper";
+ ename = "scrollkeeper";
+ version = "0.1.1";
+ src = fetchFromGitHub {
+ owner = "alphapapa";
+ repo = "scrollkeeper.el";
+ rev = "3c4ac6b6b44686d31c260ee0b19daaee59bdccd6";
+ sha256 = "18pp4k12g5dyma362461gdp4ds5d3lx9gky2ishsq39949pkz7qz";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/d9ad5b16ff61c1f8ba1e030ee0988aa51a437022/recipes/scrollkeeper";
+ sha256 = "16wqlyxznall4kmd8l68q4d11qyilj8vsji36h7llprxa2m9pg12";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/scrollkeeper";
+ license = lib.licenses.free;
+ };
+ }) {};
scss-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -43557,27 +46350,27 @@
secretaria = callPackage ({ alert
, emacs
, f
- , fetchgit
+ , fetchFromGitLab
, fetchurl
, lib
, melpaBuild
- , org
, s }:
melpaBuild {
pname = "secretaria";
ename = "secretaria";
- version = "0.2.7";
- src = fetchgit {
- url = "https://bitbucket.org/shackra/secretaria.el";
- rev = "1cd32d957864be1ba5c44a3f505f662832169a28";
- sha256 = "1xvwzmcfwfxsm9chbjnqjsipmv5pqpzk5d0ybw3rcdc47nag3jdg";
+ version = "0.2.9";
+ src = fetchFromGitLab {
+ owner = "shackra";
+ repo = "secretaria";
+ rev = "7428b8302c01468b3c1318e318640f68fd5a61b1";
+ sha256 = "16cm8xv7n012hvz757p940ahxp1ygji2vfzsaxal48y4cf026rpl";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/7b4c9ccbf2eeaa290f3b9d1e5eaaeb5b5547b365/recipes/secretaria";
- sha256 = "1a8jf91wplzazssh0s8ld0g8rp57gdfvxlsyn643w3mbp3ny8ybv";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/3eeddbcf95315da40d021a6913ccf344849c4284/recipes/secretaria";
+ sha256 = "04pcibzdljcfiha4yh10van8gsjrzn6bdkvkm2ahfcwrmscfn3hf";
name = "recipe";
};
- packageRequires = [ alert emacs f org s ];
+ packageRequires = [ alert emacs f s ];
meta = {
homepage = "https://melpa.org/#/secretaria";
license = lib.licenses.free;
@@ -43757,12 +46550,12 @@
melpaBuild {
pname = "sesman";
ename = "sesman";
- version = "0.1.1";
+ version = "0.3.4";
src = fetchFromGitHub {
owner = "vspinu";
repo = "sesman";
- rev = "0d8d1bef455b58439df333f2a0a0693543b8f098";
- sha256 = "1hgl1djfxiajcc5rnwq7rlli6fhim57mbmabxdsc78p18c1azxhz";
+ rev = "3df33018f1c42f09db21cebe39a25b389fe35f02";
+ sha256 = "0z5jb4vpbjsi63w3wjy6d2lgz33qdfvrgfb3bszv4hcf6a96y7fc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/31110e9bd82ad9c817e6cb597fa9c26c4cdc93ed/recipes/sesman";
@@ -43858,12 +46651,12 @@
melpaBuild {
pname = "shackle";
ename = "shackle";
- version = "1.0.1";
+ version = "1.0.3";
src = fetchFromGitHub {
owner = "wasamasa";
repo = "shackle";
- rev = "4189c1c773aab533969b587f7801ffbcd1d7d613";
- sha256 = "1gh30sryh884mpwxpkf0ngkcvixjrxxf4bgq4nqm9n969sr5bhsq";
+ rev = "242bacc940c18b6f9c156e1912155d45537fd827";
+ sha256 = "0qqx8py21jaq1bdafkfqx18ns4zn305qg84zbmy65spiqnfq8hwk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/806e7d00f763f3fc4e3b8ebd483070ac6c5d0f21/recipes/shackle";
@@ -44261,23 +47054,23 @@
license = lib.licenses.free;
};
}) {};
- shrink-whitespace = callPackage ({ fetchFromGitHub
+ shrink-whitespace = callPackage ({ fetchFromGitLab
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "shrink-whitespace";
ename = "shrink-whitespace";
- version = "0.0.1";
- src = fetchFromGitHub {
+ version = "0.0.4";
+ src = fetchFromGitLab {
owner = "jcpetkovich";
repo = "shrink-whitespace.el";
- rev = "24518d58e8e692fa98a73d5e7cd44c1536ab4e42";
- sha256 = "050gmxdk88zlfjwi07jsj2mvsfcv5imhzcpa6ip3cqkzpmw3pl32";
+ rev = "0407b89c142bd17e65edb666f35e2c6755bd0867";
+ sha256 = "1qxdi2jm3zl5f55c6irsbnxrmqw039pcm99jafn7hg5z5zc3xhbx";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/shrink-whitespace";
- sha256 = "0baqv4wr1wi4wd7cfhqf4y24qkpd72lax596z5lj934ihwf3gggw";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a403093706d57887111e0d012e85273addaf0d35/recipes/shrink-whitespace";
+ sha256 = "12i6xlcgk27bsdfnlcdjww8vxbx1yilaqa0pkh5n0hxb66zi6x15";
name = "recipe";
};
packageRequires = [];
@@ -44321,12 +47114,12 @@
melpaBuild {
pname = "shx";
ename = "shx";
- version = "0.0.16";
+ version = "1.1.0";
src = fetchFromGitHub {
owner = "riscy";
repo = "shx-for-emacs";
- rev = "207e6cd292a26fb1162072e2e20df9aa5efd61ef";
- sha256 = "1hnjmnnmg6axgw4z57rmc8h8wpnbi2rwyr4bv2sdrkk12d3i2kp5";
+ rev = "a70f0cdc3c80b7b5b15d287d9b03e49f943bad57";
+ sha256 = "0ihwiw9dxr6vln4dmg5dp75353ip9nc80hjfl1w3j0g3m8vhjbs2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7a2ff78ae3c4289ebf9e06cdfd8f8082c395a16f/recipes/shx";
@@ -44424,12 +47217,12 @@
melpaBuild {
pname = "simple-bookmarks";
ename = "simple-bookmarks";
- version = "1.8";
+ version = "1.9";
src = fetchFromGitHub {
owner = "jtkDvlp";
repo = "simple-bookmarks";
- rev = "e89e8163a0705e28e9346320a1ee13c1aae249af";
- sha256 = "0bx8inaihfs48rzi01nlr3wp2iw0bnk318hhgpd4zg64ap3sgdsv";
+ rev = "54e8d771bcdb0eb235b31c0aa9642171369500e5";
+ sha256 = "0i4yw341b7iml2j8mxclixsrdqlvixfxpabaxp4jh70aq2zfw1cf";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a60dd50c388a75ce21a5aec9acf938835d7afdbc/recipes/simple-bookmarks";
@@ -44475,12 +47268,12 @@
melpaBuild {
pname = "simpleclip";
ename = "simpleclip";
- version = "1.0.4";
+ version = "1.0.8";
src = fetchFromGitHub {
owner = "rolandwalker";
repo = "simpleclip";
- rev = "d461c462c237cd896553adb468cd77499d0d26ad";
- sha256 = "1dfa1sa7rbadj36nbzyxbpbvkdlh1s5n0mx6hxn52psqin1ra6yn";
+ rev = "63b1a5356e6ff839b1dbacdf22a5c7a275ec88e6";
+ sha256 = "0iic8r0q21gjhj0d1k5nin9abx3789j0a37n96a5sx6rb4ps4f2v";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7c921e27d6aafc1b82d37f6beb8407840034377a/recipes/simpleclip";
@@ -44714,16 +47507,16 @@
melpaBuild {
pname = "slime";
ename = "slime";
- version = "2.22";
+ version = "2.23";
src = fetchFromGitHub {
owner = "slime";
repo = "slime";
- rev = "8d9fdf34fe542ec280ee042ee7bdea16e512d3c0";
- sha256 = "0zsliqfd92ivg2y2w1z6scn6i3w658x8bi1wd0rvf6mddc74lvj6";
+ rev = "56e32da66840e3d03947da2fdf9730824cfc870a";
+ sha256 = "05pgcf3sd4dwl40kfw00s3si8rz8rk9pis81jlxdi5w6qzmlg7v1";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/14c60acbfde13d5e9256cea83d4d0d33e037d4b9/recipes/slime";
- sha256 = "04zcvjg0bbx5mdbsk9yn7rlprakl89dq6jmnq5v2g0n6q0mh6ign";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/47609a81b81330820f6ddf717400dc7fa06aaabf/recipes/slime";
+ sha256 = "1ds8iprxr04wdhnnw4129v5l3w3k5rjp5ax156ppqr5i7wxx1zac";
name = "recipe";
};
packageRequires = [ cl-lib macrostep ];
@@ -44847,16 +47640,16 @@
melpaBuild {
pname = "sly";
ename = "sly";
- version = "2.14";
+ version = "2.22";
src = fetchFromGitHub {
- owner = "capitaomorte";
+ owner = "joaotavora";
repo = "sly";
- rev = "9dfa53bbaa33c4e91fc58f816d0a766ae94f47c9";
- sha256 = "0bw6rvpkfpv5shih0ywjw6pa5h2a8v1xpvkxbijqd4dpdj3dlyj9";
+ rev = "950b392887ef6f2a5247152383d57d275d3a3744";
+ sha256 = "18i87mdqz90s0b9rm21dcc9zgymnxnj4wds4k2rd1z181ly6zcbq";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/79e7213183df892c5058a766b5805a1854bfbaec/recipes/sly";
- sha256 = "1pmyqjk8fdlzwvrlx8h6fq0savksfny78fhmr8r7b07pi20y6n9l";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/974d8812a4c5e45221ce3c32ae72c15ed29665c3/recipes/sly";
+ sha256 = "000g5qpy45zqrh3g4mk70mh2lakadfq18djrq7cabagw1qmhqy41";
name = "recipe";
};
packageRequires = [];
@@ -44874,12 +47667,12 @@
melpaBuild {
pname = "smart-mode-line";
ename = "smart-mode-line";
- version = "2.11.0";
+ version = "2.12.0";
src = fetchFromGitHub {
owner = "Malabarba";
repo = "smart-mode-line";
- rev = "5aca51956fae55d7310c1f96b5d128201087864a";
- sha256 = "1wpavjkxszq1xr49q0qvqniq751s69axgnsdv37n73k3zl527vqw";
+ rev = "9a81b51cd37fc5b6d47abfbb2b32f98f36a0fcfc";
+ sha256 = "055w1pcr96bfgbmig6ll2sgcisw82rf9dh4n8dhnsl75p32g1rcn";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1e6aed365c42987d64d0cd9a8a6178339b1b39e8/recipes/smart-mode-line";
@@ -44902,7 +47695,7 @@
melpaBuild {
pname = "smart-mode-line-powerline-theme";
ename = "smart-mode-line-powerline-theme";
- version = "2.11.0";
+ version = "2.12.0";
src = fetchFromGitHub {
owner = "Malabarba";
repo = "smart-mode-line";
@@ -45209,12 +48002,12 @@
melpaBuild {
pname = "snakemake-mode";
ename = "snakemake-mode";
- version = "1.3.0";
+ version = "1.5.0";
src = fetchFromGitHub {
owner = "kyleam";
repo = "snakemake-mode";
- rev = "6cf6d20db2e5253ce3f86e302651faa28f220aa7";
- sha256 = "0dmvd5f5rb5kkzjkhzz17b40hlld23sy5wyzr8vq763f6pzs37kk";
+ rev = "0cadd2bbd20aae1555561e81ed72fec43ec7296e";
+ sha256 = "1i4cwdyhfyawfx07i63iqdx524mlphgbrl44wqqnnxrbdqm0h534";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c3a5b51fee1c9e6ce7e21555faa355d118d34b8d/recipes/snakemake-mode";
@@ -45346,12 +48139,12 @@
melpaBuild {
pname = "solaire-mode";
ename = "solaire-mode";
- version = "1.0.6";
+ version = "1.0.7";
src = fetchFromGitHub {
owner = "hlissner";
repo = "emacs-solaire-mode";
- rev = "abf2ce4da77d0877efb4a035687390ce921eda4f";
- sha256 = "15wszz841vd9i59gq2xxh8rk7bh7agwglh2dwhxgs70m24hsp3p4";
+ rev = "d4e0babefc1d6bf157dcd1fe4da5758036c9d8ca";
+ sha256 = "1s50nfmzn7ngpkg3v34j7zpjaap0jly1l7c17svhhv074wnjrcm0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/52c69070eef3003eb53e1436c538779c74670ce6/recipes/solaire-mode";
@@ -45390,6 +48183,31 @@
license = lib.licenses.free;
};
}) {};
+ solidity-flycheck = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "solidity-flycheck";
+ ename = "solidity-flycheck";
+ version = "0.1.9";
+ src = fetchFromGitHub {
+ owner = "ethereum";
+ repo = "emacs-solidity";
+ rev = "b5d95ef678305ca70b17e94fc2ee4289a8328048";
+ sha256 = "04l3hvfpgqiaxdxh8s2cg2rx4cy50i7a411q81g8661fx60c6h6p";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e561d869f4e32bad5d1a8678f67e591ff586d6de/recipes/solidity-flycheck";
+ sha256 = "1lx64y77q33a2lrg5sj5h56gicw1lk8qmxmva5bgc4zxxd8qwz6f";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/solidity-flycheck";
+ license = lib.licenses.free;
+ };
+ }) {};
solidity-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -45405,8 +48223,8 @@
sha256 = "1wcy5z4wggn3zs9h1kyvm0ji51ppjcqdmym3mmxbrhan6a0kq724";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/bb9df5ec0692352b6494d435d11166f4ea26c99e/recipes/solidity-mode";
- sha256 = "1qdzdivrf5yaa80p61b9r1gryw112v5l2m2jkvkc7glhkhrcvwsx";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/02d3fdae111b14a87aaa7a1b3f44e545c5e3d2ac/recipes/solidity-mode";
+ sha256 = "15vz3ayl1p3dn2cavm68rqv901c1b7dxm2j8iazwzj3q15ln8xvn";
name = "recipe";
};
packageRequires = [];
@@ -45425,14 +48243,14 @@
ename = "sos";
version = "0.1";
src = fetchFromGitHub {
- owner = "omouse";
+ owner = "rudolfolah";
repo = "emacs-sos";
rev = "c3906ca6872f460c0bdd276410519308626313f1";
sha256 = "0b5w3vdr8llg3hqd22gnc6b6y089lq6vfk0ajkws6gfldz2gg2v1";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/36e02223b4ff9c0be4662991d734ca4a4e756f4b/recipes/sos";
- sha256 = "1gkd0plx7152s3dj8a9lwlwh8bgs1m006s80l10agclx6aay8rvb";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/sos";
+ sha256 = "0d0n2h7lbif32qgz0z2c36536mrx36d22gq86xm7kmxday6iy19k";
name = "recipe";
};
packageRequires = [ org ];
@@ -45827,12 +48645,12 @@
melpaBuild {
pname = "spotify";
ename = "spotify";
- version = "0.3.3";
+ version = "0.3.4";
src = fetchFromGitHub {
owner = "remvee";
repo = "spotify-el";
- rev = "472f6e61d732a7e700f5505e2a445fc0b030916a";
- sha256 = "0kc17ijjd8ygwjji23ndhq75kqjyxlb8kg9q0ij0l38q3b903fhi";
+ rev = "29577cf1188161f98b8358c149aaf47b2c137902";
+ sha256 = "0h6yhfvvyd9sd5d37d3ng3z56zfb546vl95qjq16kcvxq00hdn1v";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/spotify";
@@ -45905,12 +48723,12 @@
melpaBuild {
pname = "sql-impala";
ename = "sql-impala";
- version = "1.0";
+ version = "1.1";
src = fetchFromGitHub {
owner = "jterk";
repo = "sql-impala";
- rev = "68248e9851b153850542ed1f709298bb9ab59610";
- sha256 = "12zyw8b8s3jga560wv141gc4yvlbldvfcmpibns8wrpx2w8aivfj";
+ rev = "466e7c0c789ec3e5e8a276c8f6754f91bb584c3e";
+ sha256 = "02psgbm06wivdm2cmjnj2vy05lnljxn44hj2arw2fr7x2qwn9r35";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/sql-impala";
@@ -45923,6 +48741,57 @@
license = lib.licenses.free;
};
}) {};
+ sql-presto = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "sql-presto";
+ ename = "sql-presto";
+ version = "1.0.4";
+ src = fetchFromGitHub {
+ owner = "kat-co";
+ repo = "sql-prestodb";
+ rev = "bcda455e300a1af75c7bb805882329bc844703b2";
+ sha256 = "00whmsylr802fx87yqbr06rbymyln7kq7750pcz26xm1jgja7cax";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a21349775e018822a06bca3c3c338879548e286f/recipes/sql-presto";
+ sha256 = "1rjfgvwgl63xn047vmsmj1s31wvrd24v6ibf9nri6qmffhv9i9zb";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/sql-presto";
+ license = lib.licenses.free;
+ };
+ }) {};
+ sqlformat = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "sqlformat";
+ ename = "sqlformat";
+ version = "0.1";
+ src = fetchFromGitHub {
+ owner = "purcell";
+ repo = "sqlformat";
+ rev = "b70b05bf469a27c1a2940eeaa1a5c8cc93d805fd";
+ sha256 = "14n2yjmi4ls8rmpvvw6d7cz5f6dcg7laaljxnhwbagfd5j4sdfrm";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6bdaa1ccae12f2ea779ac6989607d8027feac2c9/recipes/sqlformat";
+ sha256 = "07lf2gx629429b41qr04gl98gplb538gb5hw7idzrmi3higrmv8m";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/sqlformat";
+ license = lib.licenses.free;
+ };
+ }) {};
sqlup-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -45973,26 +48842,27 @@
license = lib.licenses.free;
};
}) {};
- srcery-theme = callPackage ({ fetchFromGitHub
+ srcery-theme = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "srcery-theme";
ename = "srcery-theme";
- version = "0.1.0";
+ version = "0.2.0";
src = fetchFromGitHub {
owner = "srcery-colors";
repo = "srcery-emacs";
- rev = "8e4627430abcedc0ed320f620c4411985c9913e1";
- sha256 = "0lh9hp4aypfwhc6bgywlqxcwyms27yjw71yfcq48iwnqzafpdnkr";
+ rev = "0114420262f5e76cdc63f333d00522229aa77732";
+ sha256 = "1am3nxa9n0irzw0mrb93lmppmw9d5c2yjfgpipvcvwsij3g6k2aj";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2654fc05f55c7fab7d550b7db1d187edc9ff0f42/recipes/srcery-theme";
sha256 = "1bnvf9v7g2mpx8519lh73fphhr4cqd33qlw22qyxnqiz5cz93lsp";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/srcery-theme";
license = lib.licenses.free;
@@ -46024,6 +48894,32 @@
license = lib.licenses.free;
};
}) {};
+ srv = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "srv";
+ ename = "srv";
+ version = "0.2";
+ src = fetchFromGitHub {
+ owner = "legoscia";
+ repo = "srv.el";
+ rev = "b1eb7b109bc1c616dbf027429a90dc3b1a4263f1";
+ sha256 = "05kp8ajbqk7vxzkv23akyk2m7yg81pbrxpl3dsw67101sjazsybi";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6b0b7f22631e7749da484ced9192d8ae5e1be941/recipes/srv";
+ sha256 = "0xrgbi63vg0msxkcmcnvijkxa9y0s7613liqac7fs9514yvkbwin";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/srv";
+ license = lib.licenses.free;
+ };
+ }) {};
ssass-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -46067,8 +48963,8 @@
sha256 = "0895n7bss4wdydic1gflr03f2cwdyqywl16gvb599lpn288jhwvz";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/b9a9e4bd0205908bfb99762c7daaf3be276bb03a/recipes/ssh-agency";
- sha256 = "0lci3fhl2p9mwilvq1njzy13dkq5cp5ighymf3zs4gzm3w0ih3h8";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/e608f40d00a3b2a80a6997da00e7d04f76d8ef0d/recipes/ssh-agency";
+ sha256 = "1b25fl1kk4mwsd25pg9s0lazlpmaa6s9wnfgvlqk8k65d7p7idzz";
name = "recipe";
};
packageRequires = [ dash emacs ];
@@ -46085,12 +48981,12 @@
melpaBuild {
pname = "ssh-deploy";
ename = "ssh-deploy";
- version = "1.6";
+ version = "3.0";
src = fetchFromGitHub {
owner = "cjohansson";
repo = "emacs-ssh-deploy";
- rev = "b13ba60ea175798cfd1395ab833082789724073d";
- sha256 = "0fgcxvs2ngv65chnkb9w5rrak187xkwxiwmpc25iqvrrnrfr43s6";
+ rev = "5b263c17a0709bb7944983fd2ae50bf022c2d412";
+ sha256 = "1z6dbq0fhynmanhzhpwgsf4bx6dkgqfajp6bz3gj5x2wspn866ks";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/ssh-deploy";
@@ -46212,12 +49108,12 @@
melpaBuild {
pname = "stgit";
ename = "stgit";
- version = "0.18";
+ version = "0.19";
src = fetchFromGitHub {
owner = "ctmarinas";
repo = "stgit";
- rev = "25a7ad1bbe8d529ab6c5bb8557d39650d0b2378f";
- sha256 = "17m3nb64wckh8jzcxah284cd8fakd4ja1mhix6v8nm9kknqic6xc";
+ rev = "a29fc8873fca30cb5b13d94743a9010de28e2610";
+ sha256 = "1xhxba0m78zx00m55y125bs1zxibyg7d9nw8xw9gqyshcncjffpg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/726da64b7baea1735a916b826bdfb8f575860e21/recipes/stgit";
@@ -46263,12 +49159,12 @@
melpaBuild {
pname = "string-inflection";
ename = "string-inflection";
- version = "1.0.7";
+ version = "1.0.10";
src = fetchFromGitHub {
owner = "akicho8";
repo = "string-inflection";
- rev = "a9de404b2ece932da9b1c9aa1c29dbf7cf506e76";
- sha256 = "1km8xxb0zc3yll1yzlsrrz14ch3inblpq2nhglwp1wskqwdhwly5";
+ rev = "9b08372301e3c5f91cb278ee0e00a48845a42cb6";
+ sha256 = "0j3ms2cxbv24kr27r2jhzxpdih6w43gjdkm3sqd28c28ycab8d4b";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5c2e2b6dba8686236c2595475cfddac5fd700e60/recipes/string-inflection";
@@ -46574,12 +49470,12 @@
melpaBuild {
pname = "super-save";
ename = "super-save";
- version = "0.2.0";
+ version = "0.3.0";
src = fetchFromGitHub {
owner = "bbatsov";
repo = "super-save";
- rev = "73397501fa5b01c02b9ae94f82a8cb37d1ed105f";
- sha256 = "0cw3yf2npy2ah00q2whpn52kaybbccw1qvfzsww0x4zshlrwvvvq";
+ rev = "62512f60d6685d8601e2021d95e77603b6d96885";
+ sha256 = "0cn39d1qfm119bxb9sdl43ya2vvadfp22qwdn3j843wyf92hpdn4";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9730b65787b26d3909952cf246a01bd349e5fbab/recipes/super-save";
@@ -46684,16 +49580,16 @@
melpaBuild {
pname = "swift-mode";
ename = "swift-mode";
- version = "6.0.0";
+ version = "7.1.0";
src = fetchFromGitHub {
- owner = "chrisbarrett";
+ owner = "swift-emacs";
repo = "swift-mode";
- rev = "d2f2f1da6085c6fad2709b951d6891dd139a6080";
- sha256 = "1ldf593qzbscwlngbabxb52kcpriwhglk95l82qs8y3q1x6aj0cw";
+ rev = "cde97e20a8c80075920f0e01ec76de1816aed114";
+ sha256 = "1igk1d585f4bj7pw2ikfh843sfp0k80ibjkwvsjjpx272lz57qqk";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/19cb133191cd6f9623e99e958d360113595e756a/recipes/swift-mode";
- sha256 = "1imr53f8agfza9zxs1h1mwyhg7yaywqqffd1lsvm1m84nvxvri2d";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/swift-mode";
+ sha256 = "103nix9k2agxgfpwyhsracixl4xvzqlgidd25r1fpj679hr42bg8";
name = "recipe";
};
packageRequires = [ emacs seq ];
@@ -46737,12 +49633,12 @@
melpaBuild {
pname = "swiper";
ename = "swiper";
- version = "0.10.0";
+ version = "0.11.0";
src = fetchFromGitHub {
owner = "abo-abo";
repo = "swiper";
- rev = "4a2cee03519f98cf95b29905dec2566a39ff717e";
- sha256 = "14vnigqb5c3yi4q9ysw1fiwdqyqwyklqpb9wnjf81chm7s2mshnr";
+ rev = "525b2e4887dd839045313f32d3ddeb5cab4c7a7e";
+ sha256 = "009n8zjycs62cv4i1k9adbb284wz2w3r13xki2740sj34k683v13";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e64cad81615ef3ec34fab1f438b0c55134833c97/recipes/swiper";
@@ -46816,12 +49712,12 @@
melpaBuild {
pname = "switch-window";
ename = "switch-window";
- version = "1.6.1";
+ version = "1.6.2";
src = fetchFromGitHub {
owner = "dimitri";
repo = "switch-window";
- rev = "40565f7bdf11e86d882185fa4c4ec77b96dcc21c";
- sha256 = "047qx4vk86b9jbvv5w477215mkmqpdwl5wd4n9fhp5xjni11jnhx";
+ rev = "204f9fc1a39868a2d16ab9370a142c8c9c7a0943";
+ sha256 = "0rci96asgamr6qp6nkyr5vwrnslswjxcjd96yccy4aivh0g66yfg";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7d2204e3b53ade1e400e143ac219f3c7ab63a1e9/recipes/switch-window";
@@ -46889,6 +49785,32 @@
license = lib.licenses.free;
};
}) {};
+ symbol-overlay = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "symbol-overlay";
+ ename = "symbol-overlay";
+ version = "4.1";
+ src = fetchFromGitHub {
+ owner = "wolray";
+ repo = "symbol-overlay";
+ rev = "d1464042783e252f5cac1fcac82fee16fc3534db";
+ sha256 = "0d5ir4f3xmz3kr0w93zw45ha4hzz4rvldiza3q9fmqm7m1w2c995";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/c2a468ebe1a3e5a35ef40c59a62befbf8960bd7b/recipes/symbol-overlay";
+ sha256 = "1al60x2mnjsv99jd10v5sd56zz185wsddiq7128phf1l35bkibis";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/symbol-overlay";
+ license = lib.licenses.free;
+ };
+ }) {};
symbolword-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -47016,29 +49938,6 @@
license = lib.licenses.free;
};
}) {};
- syntax-subword = callPackage ({ fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "syntax-subword";
- version = "0.2";
- src = fetchhg {
- url = "https://bitbucket.com/jpkotta/syntax-subword";
- rev = "ad0db0fcb464";
- sha256 = "1wcgr6scvwwfmhhjbpq3riq0gmp4g08ffbl91fpgp72j8zrc1c6x";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/syntax-subword";
- sha256 = "1as89ffqz2h69fdwybgs5wibnrvskm7hd58vagfjkla9pjlpffpm";
- name = "syntax-subword";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/syntax-subword";
- license = lib.licenses.free;
- };
- }) {};
system-packages = callPackage ({ emacs
, fetchFromGitLab
, fetchurl
@@ -47047,12 +49946,12 @@
melpaBuild {
pname = "system-packages";
ename = "system-packages";
- version = "1.0.5";
+ version = "1.0.10";
src = fetchFromGitLab {
owner = "jabranham";
repo = "system-packages";
- rev = "7b87f7dbd53d7bd365157d831893f7a70ae67910";
- sha256 = "02h3qf455y3dpmf4f312x9dvxrndp9dkyyvs1vw6g9aqahrr4vys";
+ rev = "54f8243a8910535273dca9c439b257975a7ce405";
+ sha256 = "1c67f6846p018y5dw7dkn79csrwfvq5rs8308gw7g3r4x40s2psb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7d3c7af03e0bca3f834c32827cbcca29e29ef4db/recipes/system-packages";
@@ -47143,6 +50042,31 @@
license = lib.licenses.free;
};
}) {};
+ tabbar = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "tabbar";
+ ename = "tabbar";
+ version = "2.2";
+ src = fetchFromGitHub {
+ owner = "dholm";
+ repo = "tabbar";
+ rev = "82bbda31cbe8ef367dd6501c3aa14b7f2c835910";
+ sha256 = "01sw76wp8bvh21h30pkc3kjr98c8m6qid6misk1y7hkyld0bzxay";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/806420d75561cbeffbc1b387345a56c21cc20179/recipes/tabbar";
+ sha256 = "1y376nz1xmchwns4fz8dixbb7hbqh4mln78zvsh7y32il98wzvx9";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/tabbar";
+ license = lib.licenses.free;
+ };
+ }) {};
tabbar-ruler = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -47222,6 +50146,56 @@
license = lib.licenses.free;
};
}) {};
+ tao-theme = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "tao-theme";
+ ename = "tao-theme";
+ version = "1.1.1";
+ src = fetchFromGitHub {
+ owner = "11111000000";
+ repo = "tao-theme-emacs";
+ rev = "af142b423536b47bce67afda5108dbf3a9317521";
+ sha256 = "1fs4rhb4g7s7x3cvqv9d2x5f3079z2hkmp5lns7qfziszkc9fxia";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/94b70f11655944080507744fd06464607727ecef/recipes/tao-theme";
+ sha256 = "0gl6zzk5ha6vl2xxf5fcnv1k42cw4axdjdcirr1c4r8jwdq3nl3a";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/tao-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
+ taskpaper-mode = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "taskpaper-mode";
+ ename = "taskpaper-mode";
+ version = "1.0";
+ src = fetchFromGitHub {
+ owner = "saf-dmitry";
+ repo = "taskpaper-mode";
+ rev = "169dab1eb632e5ac5e34608be2df4e9854368180";
+ sha256 = "0mwd9i6mm0h18z7fiqla95bx6c0zb8x4f6380842hgzi9zrnghxi";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f969b1cd58dfd22041a8a2b116db0f48e321e546/recipes/taskpaper-mode";
+ sha256 = "0gayhzakiwlrkysmh24499pyzdfy3rmf8d68vamih7igxpl57gim";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/taskpaper-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
tawny-mode = callPackage ({ cider
, emacs
, fetchFromGitHub
@@ -47553,12 +50527,12 @@
melpaBuild {
pname = "tern";
ename = "tern";
- version = "0.21.0";
+ version = "0.23.0";
src = fetchFromGitHub {
owner = "ternjs";
repo = "tern";
- rev = "f9bde5792b7a19ac63c344219e0b0c6bd5a41d35";
- sha256 = "0pdpchnpsy7iwafr2gawy4sm8kfhh101k8yijkckpnk8ir1lw1jw";
+ rev = "40a0c74db3888b997a9115720ff91c399bb1b146";
+ sha256 = "0dh0bfs0knikzn4gvjh9274yhbg3ndw46qmj4jy0kxh7gfl2lpkh";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eaecd67af24050c72c5df73c3a12e717f95d5059/recipes/tern";
@@ -47582,12 +50556,12 @@
melpaBuild {
pname = "tern-auto-complete";
ename = "tern-auto-complete";
- version = "0.21.0";
+ version = "0.23.0";
src = fetchFromGitHub {
owner = "ternjs";
repo = "tern";
- rev = "dcd808f985e7b0f562467e2145dcd1e901347999";
- sha256 = "1wwf9h6inv3gvp8g7n98dqvjmn01i8sx3n3h3ilqq3cbsy58yjvg";
+ rev = "d545bbdd8482c231211f9521c688fc06632e745e";
+ sha256 = "0ribzvl5gs281chp2kqaqmjj9xji7k9l71hsblfw1vj2w9l7nw2m";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/eaecd67af24050c72c5df73c3a12e717f95d5059/recipes/tern-auto-complete";
@@ -47628,34 +50602,6 @@
license = lib.licenses.free;
};
}) {};
- tern-django = callPackage ({ emacs
- , f
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild
- , tern }:
- melpaBuild {
- pname = "tern-django";
- ename = "tern-django";
- version = "0.1.0";
- src = fetchFromGitHub {
- owner = "proofit404";
- repo = "tern-django";
- rev = "3b779469ba7f0249dec17d91b219dc0badf98774";
- sha256 = "0k9fra8nf1zpa59rznw93pa0pg9h98sq6896wdhahcm9z3x0rlhn";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/e9e128a795e4949e3d4c2f01db0161a34935f635/recipes/tern-django";
- sha256 = "1pjaaffadaw8h2n7yv01ks19gw59dmh8bp8vw51hx1082r3yfvv0";
- name = "recipe";
- };
- packageRequires = [ emacs f tern ];
- meta = {
- homepage = "https://melpa.org/#/tern-django";
- license = lib.licenses.free;
- };
- }) {};
terraform-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -47868,12 +50814,12 @@
melpaBuild {
pname = "theme-looper";
ename = "theme-looper";
- version = "1.0.0";
+ version = "2.2.0";
src = fetchFromGitHub {
owner = "myTerminal";
repo = "theme-looper";
- rev = "5e3a3ea7ad31d4b38efa2cc08f0063b230736da9";
- sha256 = "06khrrjlhnzckr2zisdbx4pj6r8kmv7dbdzvzh74qz79x337lvzn";
+ rev = "4eea8ec048f1d6f6d875bf25690337ccc3ddf3dc";
+ sha256 = "0lwkilvwx87xw1xx384pyz26agxd3rj11dabvb8bb4paw6c8wwr6";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/theme-looper";
@@ -47912,26 +50858,27 @@
license = lib.licenses.free;
};
}) {};
- thrift = callPackage ({ fetchFromGitHub
+ thrift = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "thrift";
ename = "thrift";
- version = "0.11.0";
+ version = "2019.3.18.0";
src = fetchFromGitHub {
- owner = "apache";
- repo = "thrift";
- rev = "98bebac1520bcf1dd5392535e06a751d7b2af58e";
- sha256 = "185hrigx5q15c2jimzbklmi4z6kzigsarqwr805llsmsmg9pp3wi";
+ owner = "facebook";
+ repo = "fbthrift";
+ rev = "a1960cc1a78ada27872913a145395f6bd45c8fd9";
+ sha256 = "1az66smmfdkm4rzb8pripsb8ymyvvpncpapg69byf0hqhklln55z";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/857ab7e3a5c290265d88ebacb9685b3faee586e5/recipes/thrift";
- sha256 = "0p1hxmm7gvhyigz8aylncgqbhk6cyf75rbcqis7x552g605mhiy9";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/0dca078c0c467bc44290a922ad5627d6a34194f8/recipes/thrift";
+ sha256 = "13isxx16h7rg8q5a68qmgrf3rknhfrx1qh6fb5njlznfwhrqry3y";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/thrift";
license = lib.licenses.free;
@@ -47972,12 +50919,12 @@
melpaBuild {
pname = "tidal";
ename = "tidal";
- version = "0.9.8";
+ version = "1.0.10";
src = fetchFromGitHub {
owner = "tidalcycles";
repo = "Tidal";
- rev = "ef658d3df0604f3dec955a150509ec1cc68fbd98";
- sha256 = "1ild1gnbcrw830b8d3byvqlmgm27609dgailmxgin6z7g1pg4r7z";
+ rev = "8605aacc1207ff822dfac4673332a337ac4f1cc2";
+ sha256 = "103cy8iiv373yswfsjz0rr4zp3vm2l3vwyb65hvcm7w0x30bhi9r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/16a26659a16199b5bb066be6e5c4a40419bda018/recipes/tidal";
@@ -48002,12 +50949,12 @@
melpaBuild {
pname = "tide";
ename = "tide";
- version = "2.8.3.1";
+ version = "3.2.3";
src = fetchFromGitHub {
owner = "ananthakumaran";
repo = "tide";
- rev = "0c624e7f02fb8f5b78ec35436d7b2f3f42d46dea";
- sha256 = "0pcxfdql98nnfckjzpykr619p8qsy87wnhyqjajgqxh6ad5rq6si";
+ rev = "2d17c051cccd248a980575caf5728f4d5c986b30";
+ sha256 = "19kjq4kr2j853p5qp1s79zxmrfprli82lsnphbrlp9vbnib28xyd";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a21e063011ebbb03ac70bdcf0a379f9e383bdfab/recipes/tide";
@@ -48055,12 +51002,12 @@
melpaBuild {
pname = "timesheet";
ename = "timesheet";
- version = "0.4.0";
+ version = "0.4.1";
src = fetchFromGitHub {
owner = "tmarble";
repo = "timesheet.el";
- rev = "2ed6fea9b508eb7eaff659d9a34a09ba064d4df8";
- sha256 = "028d1sn29idznzsc95w2c1sdz3rpmf3vgk2365li0vvs99s51hi2";
+ rev = "67ca6a9f6733052066b438301fb2dd81b8b3f6eb";
+ sha256 = "0rmh8lik27pmq95858jbjzgvf6rsfdnpynwcagj1fgkval5kzdbs";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/40009ef2f6845c83242ca5d0a8c9c2c1e4ef8a9d/recipes/timesheet";
@@ -48111,12 +51058,12 @@
melpaBuild {
pname = "toc-org";
ename = "toc-org";
- version = "1.0.1";
+ version = "1.1.0";
src = fetchFromGitHub {
owner = "snosov1";
repo = "toc-org";
- rev = "a0e8ca05e806e5074b8603985da7f18b92c15856";
- sha256 = "1sv9y5dln4ai9w3mgg8p4a3s05hflfqh0k7k8isjqikydbv85m2k";
+ rev = "ebff38bfa4cc95476a20a349014e2d1862ff4647";
+ sha256 = "0ml075741iw9n4apiy9iv30wx4bgzpn6iisrzx3mxjl85kgmlmf2";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/1305d88eca984a66039444da1ea64f29f1950206/recipes/toc-org";
@@ -48129,6 +51076,32 @@
license = lib.licenses.free;
};
}) {};
+ torus = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "torus";
+ ename = "torus";
+ version = "1.10";
+ src = fetchFromGitHub {
+ owner = "chimay";
+ repo = "torus";
+ rev = "b6de553eb55cfd9c0b6dce800951bcd8aef5e70c";
+ sha256 = "144azr3m8aj77fgvz4qnjzzhpxwz28lqjzh2k49z736iaax394gd";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/efc3b538861084cc13ff067a9258e55dc006b70d/recipes/torus";
+ sha256 = "0zjidnc7nwbxs90spp373hx92vksd72vz4avmi4dbmhi89rdfhh0";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/torus";
+ license = lib.licenses.free;
+ };
+ }) {};
total-lines = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -48180,30 +51153,6 @@
license = lib.licenses.free;
};
}) {};
- toxi-theme = callPackage ({ emacs
- , fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "toxi-theme";
- version = "0.1.2";
- src = fetchhg {
- url = "https://bitbucket.com/postspectacular/toxi-theme";
- rev = "b322fc7497a5";
- sha256 = "1pnsky541m8kzcv81w98jkv0hgajh04hxqlmgddc1y0wbvi849j0";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/toxi-theme";
- sha256 = "032m3qbxfd0qp81qwayd5g9k7vz55g4yhw0d35qkxzf4qf58x9sd";
- name = "toxi-theme";
- };
- packageRequires = [ emacs ];
- meta = {
- homepage = "https://melpa.org/#/toxi-theme";
- license = lib.licenses.free;
- };
- }) {};
traad = callPackage ({ dash
, deferred
, fetchFromGitHub
@@ -48249,7 +51198,7 @@
melpaBuild {
pname = "tracking";
ename = "tracking";
- version = "2.10";
+ version = "2.11";
src = fetchFromGitHub {
owner = "jorgenschaefer";
repo = "circe";
@@ -48267,6 +51216,34 @@
license = lib.licenses.free;
};
}) {};
+ transient = callPackage ({ dash
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , lv
+ , melpaBuild }:
+ melpaBuild {
+ pname = "transient";
+ ename = "transient";
+ version = "0.1.0";
+ src = fetchFromGitHub {
+ owner = "magit";
+ repo = "transient";
+ rev = "33f538a0bb83c8d4abc8f4c2db0dfbb9b09c4f92";
+ sha256 = "1hrn4mgag6rkcqzpmn5ysa9rj79dsgmh8vrihjvaikrdyshf9zxc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/ee7bfefdf4423d63706a6dcf128886ca6b514e6b/recipes/transient";
+ sha256 = "04xkdspn475dlch5fcw21phhdhshxlbyznjbi0l7qk8snm130qpv";
+ name = "recipe";
+ };
+ packageRequires = [ dash emacs lv ];
+ meta = {
+ homepage = "https://melpa.org/#/transient";
+ license = lib.licenses.free;
+ };
+ }) {};
transmission = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -48339,16 +51316,16 @@
melpaBuild {
pname = "treemacs";
ename = "treemacs";
- version = "2.2";
+ version = "2.5";
src = fetchFromGitHub {
owner = "Alexander-Miller";
repo = "treemacs";
- rev = "9b1129ee3152994b033a877fc49777bfe02e315a";
- sha256 = "08ias1nixz7ma8g6v3v4dqdnd87sqdhplsp5v5wvr3w58szlia5b";
+ rev = "495691ebafb37b07afb8b549d0fba714ab17e365";
+ sha256 = "1fhp1m8hrdbb0mw5r4diq4hn7svz0j23iqzq6x02dzqp3866qiik";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/91038c1ab2f463102263dcc3701c0fdaad55de4c/recipes/treemacs";
- sha256 = "1wcsn0kzrbawyyhxmsmrsxr1vp0llkxw6r7zx53pwyc82ia64nlv";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/37cca017cf529a0553ba73bcb824a945ec8b1137/recipes/treemacs";
+ sha256 = "0is4waygw902vkha4jwav0i05298zhf4d559m91gmsfg1cfrlrr3";
name = "recipe";
};
packageRequires = [ ace-window cl-lib dash emacs f ht hydra pfuture s ];
@@ -48366,16 +51343,16 @@
melpaBuild {
pname = "treemacs-evil";
ename = "treemacs-evil";
- version = "2.2";
+ version = "2.5";
src = fetchFromGitHub {
owner = "Alexander-Miller";
repo = "treemacs";
- rev = "d0f874c90990400c02a8029d4efe815d3548ba5c";
- sha256 = "0hclgsv96gr50z9cqj97rp45c5r50q2zb6hq5jcx3xmlw12k9pk7";
+ rev = "de1ba5217ca4c41fc36d405832b749b6fffd2b82";
+ sha256 = "0wk280qs99py3s3lykm3pd3v3nbml1c9hkal29cx0475m12fc5lw";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/91038c1ab2f463102263dcc3701c0fdaad55de4c/recipes/treemacs-evil";
- sha256 = "1i2mxqwnqb2jz775qg3z4lf7pk4mgi646fyyi2la5gdcnq6a46mg";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/37cca017cf529a0553ba73bcb824a945ec8b1137/recipes/treemacs-evil";
+ sha256 = "144klr1gqqzfqy7fx9lzngc2vljy6mnz7awk0z5f8vfclczkihw2";
name = "recipe";
};
packageRequires = [ evil treemacs ];
@@ -48384,6 +51361,63 @@
license = lib.licenses.free;
};
}) {};
+ treemacs-icons-dired = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , treemacs }:
+ melpaBuild {
+ pname = "treemacs-icons-dired";
+ ename = "treemacs-icons-dired";
+ version = "2.5";
+ src = fetchFromGitHub {
+ owner = "Alexander-Miller";
+ repo = "treemacs";
+ rev = "0e5d2b558486ce9074eccde83cc70ce1a6bfa2e2";
+ sha256 = "05dh7dnn2ks03gvbj5f01h1qa87giaapxhdzl5z4s8g6zwiydjy7";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/37cca017cf529a0553ba73bcb824a945ec8b1137/recipes/treemacs-icons-dired";
+ sha256 = "075897b11aaj9h59gbcldz2wd5557h86pq28qkijbgay4i3piv9v";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs treemacs ];
+ meta = {
+ homepage = "https://melpa.org/#/treemacs-icons-dired";
+ license = lib.licenses.free;
+ };
+ }) {};
+ treemacs-magit = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , magit
+ , melpaBuild
+ , pfuture
+ , treemacs }:
+ melpaBuild {
+ pname = "treemacs-magit";
+ ename = "treemacs-magit";
+ version = "2.5";
+ src = fetchFromGitHub {
+ owner = "Alexander-Miller";
+ repo = "treemacs";
+ rev = "1a30066872fa11612ab4ff8a8565beedb5f2e135";
+ sha256 = "1vbqfkn2llw7kzhh5bmfqpq0gg6qmixxcbq5mjyw53l01klvylvs";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/1719c6bfc346e63f58221ea2c6e625b98f4ea368/recipes/treemacs-magit";
+ sha256 = "10c32rf76w26hhg1pyjlwj94adpjz1kic4hzapbckvcyzcwz6fql";
+ name = "recipe";
+ };
+ packageRequires = [ emacs magit pfuture treemacs ];
+ meta = {
+ homepage = "https://melpa.org/#/treemacs-magit";
+ license = lib.licenses.free;
+ };
+ }) {};
treemacs-projectile = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -48393,16 +51427,16 @@
melpaBuild {
pname = "treemacs-projectile";
ename = "treemacs-projectile";
- version = "2.2";
+ version = "2.5";
src = fetchFromGitHub {
owner = "Alexander-Miller";
repo = "treemacs";
- rev = "cbc75759fd54a772fcb67bd8babacf1b2020ba88";
- sha256 = "18aafgiircgb5max35zqzdfb0yjmgjqacax9sfy39ihh9x9z0vc1";
+ rev = "ac088d4afd267de2046ce25658285ffb6174a6ba";
+ sha256 = "0fzq8q7mm3nxs1aw3qhhw78lnlh8cagf443sn5n38xb9f4m44djk";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/91038c1ab2f463102263dcc3701c0fdaad55de4c/recipes/treemacs-projectile";
- sha256 = "1vyifik30673bwlfvbmw8pzz7f3wd4q6zzssvbj8d23zhk8kh8vc";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/37cca017cf529a0553ba73bcb824a945ec8b1137/recipes/treemacs-projectile";
+ sha256 = "1lldvpasvgsd5xvnlafddqp47w7rdvf3vqfhr26rxn99kj5s9xzp";
name = "recipe";
};
packageRequires = [ projectile treemacs ];
@@ -48419,12 +51453,12 @@
melpaBuild {
pname = "treepy";
ename = "treepy";
- version = "1.0.0";
+ version = "0.1.1";
src = fetchFromGitHub {
owner = "volrath";
repo = "treepy.el";
- rev = "282fbc94747fe2a00d36e2a74d147c8fa0ac4be7";
- sha256 = "0acw6c073h2a0fy8gx2xc2d1fw0yhaqikqrvs2iq53fqcqrrq81r";
+ rev = "b40e6b09eb9be45da67b8c9e4990a5a0d7a2a09d";
+ sha256 = "04zwm6gx9pxfvgfkizx6pvb1ql8pqxjyzqp8flz0432x0gq5nlxk";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/63c94a703841f8c11948200d86d98145bc62162c/recipes/treepy";
@@ -48437,6 +51471,32 @@
license = lib.licenses.free;
};
}) {};
+ trinary = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "trinary";
+ ename = "trinary";
+ version = "1.0.0";
+ src = fetchFromGitHub {
+ owner = "emacs-elsa";
+ repo = "trinary-logic";
+ rev = "c043034e1e476ae103cc52b6922e15f6dd2fc8a3";
+ sha256 = "0hi6ybsz6v6ls8ajkyqpy9cq87pk684l9a7js863f7ycgwb37nzn";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/48fff02dde8a678e151f2765ea7c3a383912c68b/recipes/trinary";
+ sha256 = "1k2jpay1wx2m54fpja9mrhqyk15ikml8xf15irh8yrxb3hah8f8k";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/trinary";
+ license = lib.licenses.free;
+ };
+ }) {};
trr = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -48551,12 +51611,12 @@
melpaBuild {
pname = "tuareg";
ename = "tuareg";
- version = "2.1.0";
+ version = "2.2.0";
src = fetchFromGitHub {
owner = "ocaml";
repo = "tuareg";
- rev = "927a309b1ad8559be33e6a1d7951214a66f7c130";
- sha256 = "05rsid1g3vrg10qiws7dd1rpd6wva9mqldwfyrrhg088k4v2a0q5";
+ rev = "40f974d3b0777f9666928d0b4a5126a4c7491b17";
+ sha256 = "049nw6pkkxnq3k4vv4ksl93csiybm7q29xigdkc7cr9cls6h8jf0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/01fb6435a1dfeebdf4e7fa3f4f5928bc75526809/recipes/tuareg";
@@ -48629,14 +51689,14 @@
ename = "turing-machine";
version = "0.2.0";
src = fetchFromGitHub {
- owner = "therockmandolinist";
+ owner = "dieggsy";
repo = "turing-machine";
rev = "ad1dccc9c445f9e4465e1c67cbbfea9583153047";
sha256 = "0qaz4r5ahg2fxsfyxilb8c9956i5ra9vg80l82slm8vrnsinzll6";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/a003b40a52a92b3ab4d1ffc003f570d4fa6bfbde/recipes/turing-machine";
- sha256 = "1ndy953q9hr1psqqkkqsffyvj800cnqdxcrixqiw0ls77f2kczcn";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/turing-machine";
+ sha256 = "0q9a31m5wnz9j9l4i8czdl7z12nrcdjw72w8sqvf94ri2g5dbpkq";
name = "recipe";
};
packageRequires = [ emacs ];
@@ -48695,33 +51755,6 @@
license = lib.licenses.free;
};
}) {};
- typed-clojure-mode = callPackage ({ cider
- , clojure-mode
- , fetchFromGitHub
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "typed-clojure-mode";
- ename = "typed-clojure-mode";
- version = "1.0.0";
- src = fetchFromGitHub {
- owner = "typedclojure";
- repo = "typed-clojure-mode";
- rev = "03f01f5bfa93247f8f7958a8a45cf83604f7d96e";
- sha256 = "0d6i5n3s6b0q0c06ix7vm7iwx5zi4j7h2yygcsbzwyza1z284ry5";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/961471c194b508a5025f00a5be02d316b26f330a/recipes/typed-clojure-mode";
- sha256 = "1579zkhk2lwl5ij7dm9n2drggs5fmhpljrshc4ghhvig7nlyqjy3";
- name = "recipe";
- };
- packageRequires = [ cider clojure-mode ];
- meta = {
- homepage = "https://melpa.org/#/typed-clojure-mode";
- license = lib.licenses.free;
- };
- }) {};
typescript-mode = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -48731,14 +51764,14 @@
ename = "typescript-mode";
version = "0.3";
src = fetchFromGitHub {
- owner = "ananthakumaran";
+ owner = "emacs-typescript";
repo = "typescript.el";
rev = "7a5c74d88e3c5513cc4431a837003736f905a75e";
sha256 = "002f1xfhq43fjaqliwrgxspryfahpa82va5dw3p8kwil2xwvc6mh";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/d3f534a1e2cee4ad2e32e32802c5080207417b3d/recipes/typescript-mode";
- sha256 = "01jyqy44ir59n9c2f6gh4xzwfmzdpnys1lw4lnsy6kirqgbsq9ha";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/94455323364d5a6b00e2786d577134eb350826b4/recipes/typescript-mode";
+ sha256 = "1abnik2dq0zfnp8pk8x6zy962qww78xadm87xyiwz17559g88d82";
name = "recipe";
};
packageRequires = [];
@@ -49026,12 +52059,12 @@
melpaBuild {
pname = "unicode-fonts";
ename = "unicode-fonts";
- version = "0.4.8";
+ version = "0.4.10";
src = fetchFromGitHub {
owner = "rolandwalker";
repo = "unicode-fonts";
- rev = "a36597d83e0248bd0e6b2c1d5fb95bff72add527";
- sha256 = "0fbwncna6gxlynq9196djpkjhayzk8kxlsxg0gasdgqx1nyxl0mk";
+ rev = "7b88ae84e589f6c8b9386b2fb5a02ff4ccb91169";
+ sha256 = "07wzcfj92jiadgd6nj5rmxky2aiaxs89j7zywp877xdp4vv0v512";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/83459421dd2eb3d60ec668c3d5bb38d99ee64aff/recipes/unicode-fonts";
@@ -49133,26 +52166,27 @@
license = lib.licenses.free;
};
}) {};
- unkillable-scratch = callPackage ({ fetchFromGitHub
+ unkillable-scratch = callPackage ({ emacs
+ , fetchFromGitHub
, fetchurl
, lib
, melpaBuild }:
melpaBuild {
pname = "unkillable-scratch";
ename = "unkillable-scratch";
- version = "0.1";
+ version = "1.0.0";
src = fetchFromGitHub {
owner = "EricCrosson";
repo = "unkillable-scratch";
- rev = "85e01b6da499a05bc920ca7958f0642c76dd9ce2";
- sha256 = "0j513ia8mfa4i8h1z0m00k65g89fdcdp6h37bdm2ymy4g26wbk6n";
+ rev = "dac9dbed946a26829e6227ac15c0fa1d07ccd05f";
+ sha256 = "0fgipv93x47cvyww07cqx8xa95jz36y6fy5rmaq40jnnmdkgq862";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/822ac5610f333e41b676a29ef45a6f8bfea3162e/recipes/unkillable-scratch";
sha256 = "0ghbpa9pf7k6vd2mjxkpqg2qfl4sd40ir6mrk1rxr1rv8s0afkf7";
name = "recipe";
};
- packageRequires = [];
+ packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/unkillable-scratch";
license = lib.licenses.free;
@@ -49167,12 +52201,12 @@
melpaBuild {
pname = "uptimes";
ename = "uptimes";
- version = "3.6";
+ version = "3.7";
src = fetchFromGitHub {
owner = "davep";
repo = "uptimes.el";
- rev = "5e81f8bb419836602819045e7d5a74b76ad3e69c";
- sha256 = "04l452k249s3ilfj0da0k7rrfyjnxxdsipa2al46xqjds8l3h2rn";
+ rev = "1f726d31b502d764a3e3191aaf92ed4855105131";
+ sha256 = "1ymv5fh0bfjzkkd8vc9f1n8921bx1czbb29s0rw6zy37vkhs6v3s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/72099e35ce3e34ec6afc6a3f87a4da07ec91499a/recipes/uptimes";
@@ -49185,8 +52219,34 @@
license = lib.licenses.free;
};
}) {};
+ urscript-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "urscript-mode";
+ ename = "urscript-mode";
+ version = "0.0.2";
+ src = fetchFromGitHub {
+ owner = "guidoschmidt";
+ repo = "urscript-mode";
+ rev = "b341f96b129ead8fb74d680cb4f546985bf110a9";
+ sha256 = "0qhncqsvsrpgc47ixsp436imfm0l6pd1kbpjjk426wrnzaszrpkc";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/b4ae680b51a85749ed254215bbd4a35909961049/recipes/urscript-mode";
+ sha256 = "1jjmpg9r7vwa8284chx9yc1ifn36m7ml1ks4ls8hnsxachbv7wlh";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/urscript-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
use-package = callPackage ({ bind-key
- , diminish
+ , emacs
, fetchFromGitHub
, fetchurl
, lib
@@ -49194,25 +52254,54 @@
melpaBuild {
pname = "use-package";
ename = "use-package";
- version = "2.3";
+ version = "2.4";
src = fetchFromGitHub {
owner = "jwiegley";
repo = "use-package";
- rev = "cd58b268a8a025451c11c3cb1ba18d4f27f245da";
- sha256 = "14x01dg7fgj4icf8l8w90pksazc0sn6qrrd0k3xjr2zg1wzdcang";
+ rev = "39a8b8812c2c9f6f0b299e6a04e504ef393694ce";
+ sha256 = "1b7mjjh0d6fmkkd9vyj64vca27xqhga0nvyrrcqxpqjn62zq046y";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/51a19a251c879a566d4ae451d94fcb35e38a478b/recipes/use-package";
sha256 = "0d0zpgxhj6crsdi9sfy30fn3is036apm1kz8fhjg1yzdapf1jdyp";
name = "recipe";
};
- packageRequires = [ bind-key diminish ];
+ packageRequires = [ bind-key emacs ];
meta = {
homepage = "https://melpa.org/#/use-package";
license = lib.licenses.free;
};
}) {};
- use-package-el-get = callPackage ({ fetchFromGitHub
+ use-package-chords = callPackage ({ bind-chord
+ , bind-key
+ , fetchFromGitHub
+ , fetchurl
+ , key-chord
+ , lib
+ , melpaBuild
+ , use-package }:
+ melpaBuild {
+ pname = "use-package-chords";
+ ename = "use-package-chords";
+ version = "2.4";
+ src = fetchFromGitHub {
+ owner = "jwiegley";
+ repo = "use-package";
+ rev = "763bf5337dab14b318a3ddce29140de1ed8fb35b";
+ sha256 = "08v4rsl3x5dj7ihpnzbyxjbg2ls2kybcsb0rcxjh5anj4hmcsyly";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6240afa625290187785e4b7535ee7b0d7aad8969/recipes/use-package-chords";
+ sha256 = "1217l0gpxcp8532p0d3g1xd2015qpx2g5xm0kwsbxdmffqqdaar3";
+ name = "recipe";
+ };
+ packageRequires = [ bind-chord bind-key key-chord use-package ];
+ meta = {
+ homepage = "https://melpa.org/#/use-package-chords";
+ license = lib.licenses.free;
+ };
+ }) {};
+ use-package-el-get = callPackage ({ fetchFromGitLab
, fetchurl
, lib
, melpaBuild
@@ -49221,15 +52310,15 @@
pname = "use-package-el-get";
ename = "use-package-el-get";
version = "0.1";
- src = fetchFromGitHub {
+ src = fetchFromGitLab {
owner = "edvorg";
repo = "use-package-el-get";
rev = "f33c448ed43ecb003b60ff601ee7ef9b08cff947";
sha256 = "1wzn3h8k7aydj3hxxws64b0v4cr3b77cf7z128xh3v6xz2w62m4z";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/ee4a96cf467bcab171a0adfd4ef754abec1a9971/recipes/use-package-el-get";
- sha256 = "0sg9ijkjax6w25p0q7rw5rjn8r2i83z5jfzjkvy8pxil5cg8zyh0";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/aca60522257353fbfd9d032f8c3cae7914d6bd36/recipes/use-package-el-get";
+ sha256 = "143vydssjxmkcgs661hz6nhg310r8qypn2a4vyxy5sb31wqcclzg";
name = "recipe";
};
packageRequires = [ use-package ];
@@ -49238,6 +52327,60 @@
license = lib.licenses.free;
};
}) {};
+ use-package-ensure-system-package = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , system-packages
+ , use-package }:
+ melpaBuild {
+ pname = "use-package-ensure-system-package";
+ ename = "use-package-ensure-system-package";
+ version = "2.4";
+ src = fetchFromGitHub {
+ owner = "jwiegley";
+ repo = "use-package";
+ rev = "2b89ca4b9102baaf3f84f3fc8177c8a17288e291";
+ sha256 = "18xpjqvnrk72jybbd5xipnsbngkj38hqd9vfq0kb42fhiv1v5b92";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6240afa625290187785e4b7535ee7b0d7aad8969/recipes/use-package-ensure-system-package";
+ sha256 = "1cl61nwgsz5dh3v9rdiww8mq2k1sbx27gr6izb4ij4pnzjp7aaj6";
+ name = "recipe";
+ };
+ packageRequires = [ system-packages use-package ];
+ meta = {
+ homepage = "https://melpa.org/#/use-package-ensure-system-package";
+ license = lib.licenses.free;
+ };
+ }) {};
+ use-package-hydra = callPackage ({ emacs
+ , fetchFromGitLab
+ , fetchurl
+ , lib
+ , melpaBuild
+ , use-package }:
+ melpaBuild {
+ pname = "use-package-hydra";
+ ename = "use-package-hydra";
+ version = "0.2";
+ src = fetchFromGitLab {
+ owner = "to1ne";
+ repo = "use-package-hydra";
+ rev = "8cd55a1128fbdf6327bb38a199d206225896d146";
+ sha256 = "19dja25illcvwpx8j1kigw8dzby41bm57prx1bhaxkmsakxyl863";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/28589bb76442601930a4591e200c8e1db119caf6/recipes/use-package-hydra";
+ sha256 = "0q2qfav2y1p6vxfvdblqlpjmj0z7z8w843jpry9g07d8kc4959f6";
+ name = "recipe";
+ };
+ packageRequires = [ emacs use-package ];
+ meta = {
+ homepage = "https://melpa.org/#/use-package-hydra";
+ license = lib.licenses.free;
+ };
+ }) {};
usql = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -49272,12 +52415,12 @@
melpaBuild {
pname = "utop";
ename = "utop";
- version = "2.2.0";
+ version = "2.3.0";
src = fetchFromGitHub {
owner = "diml";
repo = "utop";
- rev = "48100fcf769bdaeb4a6c93bbb33c37b85c1dcb10";
- sha256 = "1cr1i5ywn9abqbrl4iq1c82vdjwrbh43v67zv1a8i4fvh99yzlv1";
+ rev = "ea38850e606dd18c94e2ccabc28485fec1c8f91f";
+ sha256 = "0g7mj1qag9d7mn58l3lh7as0w4bj7rq3r6d3mykafgyjaajsxnx0";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/30489fe52b4031184e54f994770aa3291257bc9d/recipes/utop";
@@ -49371,6 +52514,32 @@
license = lib.licenses.free;
};
}) {};
+ vc-hgcmd = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "vc-hgcmd";
+ ename = "vc-hgcmd";
+ version = "1.5.1";
+ src = fetchFromGitHub {
+ owner = "muffinmad";
+ repo = "emacs-vc-hgcmd";
+ rev = "6379ef242cc2ac8366a6e6f1c588245577c76a3a";
+ sha256 = "1zvggg9kpl6d2wrsjlrnjmb0dhmwmd9x6q2yj3g08bv6gsz3nfil";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/111142342ab81dcaa88a831ba620be499a334c3f/recipes/vc-hgcmd";
+ sha256 = "11p8r94s72x47nkxlarxwy33im167jpjas8b9i8dkrz2iggwn5xk";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/vc-hgcmd";
+ license = lib.licenses.free;
+ };
+ }) {};
vc-msg = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -49405,12 +52574,12 @@
melpaBuild {
pname = "vcomp";
ename = "vcomp";
- version = "0.3.1";
+ version = "1.0.0";
src = fetchFromGitHub {
owner = "tarsius";
repo = "vcomp";
- rev = "a12363c3a66576b68955abcadf7280de32eaa051";
- sha256 = "07dx3dyvkwcin0gb6j4jx0ldfxs4rqhygl56a8i81yy05adkaq2x";
+ rev = "f839b3b3257a564b19d7f9557dc8bcbbe0b95842";
+ sha256 = "1xd42bdi6x89gc9xjrwvzzdaanv9vwlbbjwp25bs1nsd53k5nvak";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/561442ea9f75ebe8444db1a0c40f7756fcbca482/recipes/vcomp";
@@ -49507,6 +52676,86 @@
license = lib.licenses.free;
};
}) {};
+ vdm-comint = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , vdm-mode }:
+ melpaBuild {
+ pname = "vdm-comint";
+ ename = "vdm-comint";
+ version = "0.0.4";
+ src = fetchFromGitHub {
+ owner = "peterwvj";
+ repo = "vdm-mode";
+ rev = "e131edb0d35de28bd47d6128dd70d9a6fc46e0fa";
+ sha256 = "090a0imk7dr6vqq4lf806pvajqc499x2gmi0k7rgc1696rbyzhb5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/077f586e59fe3b6085e1f19b3c18b218de5d4046/recipes/vdm-comint";
+ sha256 = "1r7jg7dkzfs4n230n0jk23w0ncqsiwkslf2gmjfzfqg8qklr9bhs";
+ name = "recipe";
+ };
+ packageRequires = [ emacs vdm-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/vdm-comint";
+ license = lib.licenses.free;
+ };
+ }) {};
+ vdm-mode = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "vdm-mode";
+ ename = "vdm-mode";
+ version = "0.0.4";
+ src = fetchFromGitHub {
+ owner = "peterwvj";
+ repo = "vdm-mode";
+ rev = "e131edb0d35de28bd47d6128dd70d9a6fc46e0fa";
+ sha256 = "090a0imk7dr6vqq4lf806pvajqc499x2gmi0k7rgc1696rbyzhb5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/70a6c89d41235f7e8463a47400004a32b2979a5a/recipes/vdm-mode";
+ sha256 = "1h72731vcsjqsbii1wbzpa114x09aqbkbnz5fg9fnjq9rybz6rn7";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/vdm-mode";
+ license = lib.licenses.free;
+ };
+ }) {};
+ vdm-snippets = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , yasnippet }:
+ melpaBuild {
+ pname = "vdm-snippets";
+ ename = "vdm-snippets";
+ version = "0.0.4";
+ src = fetchFromGitHub {
+ owner = "peterwvj";
+ repo = "vdm-mode";
+ rev = "e131edb0d35de28bd47d6128dd70d9a6fc46e0fa";
+ sha256 = "090a0imk7dr6vqq4lf806pvajqc499x2gmi0k7rgc1696rbyzhb5";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/f246b9dcf7915a845b9e2cd44cc1a0833b412c8f/recipes/vdm-snippets";
+ sha256 = "1js1hjs2r9bbqm50bl389y87xn68f30xrh2z6nd5kz2hdgkm6lhj";
+ name = "recipe";
+ };
+ packageRequires = [ emacs yasnippet ];
+ meta = {
+ homepage = "https://melpa.org/#/vdm-snippets";
+ license = lib.licenses.free;
+ };
+ }) {};
vector-utils = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -49650,12 +52899,12 @@
melpaBuild {
pname = "virtualenvwrapper";
ename = "virtualenvwrapper";
- version = "0.1.0";
+ version = "0.2.0";
src = fetchFromGitHub {
owner = "porterjamesj";
repo = "virtualenvwrapper.el";
- rev = "5649028ea0c049cb7dfa2105285dee9c00d189fb";
- sha256 = "1xcjjs394vlaz94xh52kqaq94gkbmmjqmxlg7wly8vfn9vh34mws";
+ rev = "f753e5ad91c2ff5d11bec424aa8cec141efa6925";
+ sha256 = "062pbnplb3w9h64qsj71d9fvgicp1x63n05mgvgymjh2rnx7py0d";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/acc9b816796b9f142c53f90593952b43c962d2d8/recipes/virtualenvwrapper";
@@ -49884,14 +53133,14 @@
ename = "vue-mode";
version = "0.4";
src = fetchFromGitHub {
- owner = "CodeFalling";
+ owner = "AdamNiederer";
repo = "vue-mode";
rev = "48ff04657613f39848d0e66e9dd367aa2dc19e89";
sha256 = "014vx8jkscj1c614v78dqlqlg7n0zc3c2db3dqvxvaz417i5mxq0";
};
recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/2e5e0a9fff332aeec09f6d3d758e2b67dfdf8397/recipes/vue-mode";
- sha256 = "0gy7a5sliaijq0666l55vbkg15anrw7k1828szdn1ppkraw14bn0";
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/6440f81aed1fcddcaf7afeedb74520e605211986/recipes/vue-mode";
+ sha256 = "0npzn7pycqfdakv4plkigq8aw1bqhz3y03y3ypx21q5a186ds0g5";
name = "recipe";
};
packageRequires = [ edit-indirect mmm-mode ssass-mode vue-html-mode ];
@@ -50167,12 +53416,12 @@
melpaBuild {
pname = "web-mode-edit-element";
ename = "web-mode-edit-element";
- version = "2.1";
+ version = "2.2";
src = fetchFromGitHub {
owner = "jtkDvlp";
repo = "web-mode-edit-element";
- rev = "8b8ac07aa8c920dafd94c96a51effb0d6c0ed1ce";
- sha256 = "0aj1ibmnrbaxrkwjf1fac2qzazrj39pql3prcibnchc2bmp191aa";
+ rev = "30f0f697212a85a9b881549fc272fa7c96d3e703";
+ sha256 = "1qnk4skzj6b47h8c2yg05hc7iv8y4102izlfc490307y264rv051";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/web-mode-edit-element";
@@ -50221,12 +53470,12 @@
melpaBuild {
pname = "webpaste";
ename = "webpaste";
- version = "2.1.0";
+ version = "3.0.1";
src = fetchFromGitHub {
owner = "etu";
repo = "webpaste.el";
- rev = "2da60b8857d107721b089346121a7d51296a58bf";
- sha256 = "1r945qz7z5z80qvzlqvz985mz51zy3pj3fk36y0flc380y4ap6hd";
+ rev = "7345c5f62d5cff4d84379eaf5dc8b2bb8bc4f99c";
+ sha256 = "00dfp2dyj9cvcvvpsh4g61b37477c8ahfj3xig2x2kgfz15lk89n";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/13847d91c1780783e516943adee8a3530c757e17/recipes/webpaste";
@@ -50276,12 +53525,12 @@
melpaBuild {
pname = "weechat";
ename = "weechat";
- version = "0.4.0";
+ version = "0.5.0";
src = fetchFromGitHub {
owner = "the-kenny";
repo = "weechat.el";
- rev = "a0d81074088d313dd596af6602e51d4253a55ca5";
- sha256 = "08ibyabvdlmp74xa950al3axmzsqpcal30313ab5wgb746sh3dvm";
+ rev = "bcf714e32b012c6a89d5c0a82ab3a74d454908ff";
+ sha256 = "1gm2yhz3qy55qqwf0ccrqw4nifxaig4jpdqmcl0ydx1n3myxx64l";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e38255a31a4ca31541c97a506a55f82e2670abe6/recipes/weechat";
@@ -50326,12 +53575,12 @@
melpaBuild {
pname = "wgrep";
ename = "wgrep";
- version = "2.1.10";
+ version = "2.3.0";
src = fetchFromGitHub {
owner = "mhayashi1120";
repo = "Emacs-wgrep";
- rev = "3028e9b31427c528d9343d458abcb2222813410f";
- sha256 = "1gc3xwj7dffwpmjq1189x27ij25v2pp909xpdxc69a01yx5474i1";
+ rev = "b22834e4597b5dfe06621d23cf93351d790df930";
+ sha256 = "07p0wwigc99hx09n5fkzf5yxkr7z19rqy8wgxk5m1pyp1i75wiq8";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9648e3df896fcd97b3757a727108bc78261973cc/recipes/wgrep";
@@ -50352,7 +53601,7 @@
melpaBuild {
pname = "wgrep-ack";
ename = "wgrep-ack";
- version = "2.1.10";
+ version = "2.3.0";
src = fetchFromGitHub {
owner = "mhayashi1120";
repo = "Emacs-wgrep";
@@ -50378,12 +53627,12 @@
melpaBuild {
pname = "wgrep-ag";
ename = "wgrep-ag";
- version = "2.1.10";
+ version = "2.3.0";
src = fetchFromGitHub {
owner = "mhayashi1120";
repo = "Emacs-wgrep";
- rev = "9448a9d597bd089ae61e58add2c5dbecb0aa2b8f";
- sha256 = "0x27h0ccq93avsmb8gim43zklbsb4ghfw30a7hjvz0ilfx02gdca";
+ rev = "36c5e8d0e03bc16b19d30a603730065f74b5b767";
+ sha256 = "0pgyf9vfcahb495q01hi1mvkmv846w4rj6zyf52is8x7sjj7x44s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/2c50b704343c4cac5e2a62a67e284ba6d8e15f8a/recipes/wgrep-ag";
@@ -50404,12 +53653,12 @@
melpaBuild {
pname = "wgrep-helm";
ename = "wgrep-helm";
- version = "2.1.10";
+ version = "2.3.0";
src = fetchFromGitHub {
owner = "mhayashi1120";
repo = "Emacs-wgrep";
- rev = "976eb41327e9c15c3be860a9d9962b3c3df9712e";
- sha256 = "1nh9gl1k54w7402fkphgw35bq3lljhv1alaaig2xfrjcm5x2phwv";
+ rev = "36c5e8d0e03bc16b19d30a603730065f74b5b767";
+ sha256 = "0pgyf9vfcahb495q01hi1mvkmv846w4rj6zyf52is8x7sjj7x44s";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/9648e3df896fcd97b3757a727108bc78261973cc/recipes/wgrep-helm";
@@ -50430,7 +53679,7 @@
melpaBuild {
pname = "wgrep-pt";
ename = "wgrep-pt";
- version = "2.1.10";
+ version = "2.3.0";
src = fetchFromGitHub {
owner = "mhayashi1120";
repo = "Emacs-wgrep";
@@ -50456,12 +53705,12 @@
melpaBuild {
pname = "which-key";
ename = "which-key";
- version = "3.3.0";
+ version = "3.3.1";
src = fetchFromGitHub {
owner = "justbur";
repo = "emacs-which-key";
- rev = "ff79dfff66f880885c5893dd6fd05dc51173a476";
- sha256 = "0x9bmm4s5gq9k9x1rkwxr8zz8p2hgsxvzpji138m8m4j809l6cn4";
+ rev = "2f5661646b771f6c5a00a8a9aaa3f183abd5f84d";
+ sha256 = "1dh6kr00wmql46whjkvnl953zngiv5j99ypvr1b3cb2174623afb";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/315865a3df97c0694f648633d44b8b34df1ac76d/recipes/which-key";
@@ -50728,8 +53977,7 @@
license = lib.licenses.free;
};
}) {};
- window-purpose = callPackage ({ cl-lib ? null
- , emacs
+ window-purpose = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
, imenu-list
@@ -50739,19 +53987,19 @@
melpaBuild {
pname = "window-purpose";
ename = "window-purpose";
- version = "1.6";
+ version = "1.7";
src = fetchFromGitHub {
owner = "bmag";
repo = "emacs-purpose";
- rev = "00c253778d8e845bdc17a350c22ea157c5871b41";
- sha256 = "11hv2rrcirswzgx0l52kwav5dilr3yksky9a3vg1pghgqhmm59hv";
+ rev = "a302340e183d20baa4445858d321f43449298829";
+ sha256 = "1dpy8hkjn87wbdkzyabhay4jx4dgc0ab2flyf0rjq1qaazk393sc";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5813120ab674f6db7d0a486433d8faa6cfec1727/recipes/window-purpose";
sha256 = "1y70jrba3gf9fyf2qdihfshbsblzb88yv9fkcswdzrpq5kmgwp84";
name = "recipe";
};
- packageRequires = [ cl-lib emacs imenu-list let-alist ];
+ packageRequires = [ emacs imenu-list let-alist ];
meta = {
homepage = "https://melpa.org/#/window-purpose";
license = lib.licenses.free;
@@ -50816,12 +54064,12 @@
melpaBuild {
pname = "winum";
ename = "winum";
- version = "2.0.0";
+ version = "2.1.0";
src = fetchFromGitHub {
owner = "deb0ch";
repo = "emacs-winum";
- rev = "c56d1cdb8d1723eb4c0d7a7eb3ecd2697739146c";
- sha256 = "09jd5srlnd4060hs719qil84ssmnvq196bz7ywaswgapv1gs1h6r";
+ rev = "efcb14fd306afbc738666e6b2e5a8a1bb5904392";
+ sha256 = "0v1qmw3svydk7dlqbcymy1g1bygkfpb2h4b97zdp12xvd8mww9ny";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c1caa7a54a910a44322fdee300e8cce6ddcde071/recipes/winum";
@@ -50834,29 +54082,6 @@
license = lib.licenses.free;
};
}) {};
- wisp-mode = callPackage ({ fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "wisp-mode";
- version = "0.9.8";
- src = fetchhg {
- url = "https://bitbucket.com/ArneBab/wisp";
- rev = "d04938232934";
- sha256 = "1sjadb0kh3hrdsvwywi04agrzrs21sxzh1v1km0z3x6f15nr048c";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/wisp-mode";
- sha256 = "10zkp1qbvl8dmxij7zz4p1fixs3891xr1nr57vyb3llar9fgzglc";
- name = "wisp-mode";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/wisp-mode";
- license = lib.licenses.free;
- };
- }) {};
wispjs-mode = callPackage ({ clojure-mode
, fetchFromGitHub
, fetchurl
@@ -50892,12 +54117,12 @@
melpaBuild {
pname = "with-editor";
ename = "with-editor";
- version = "2.7.3";
+ version = "2.8.1";
src = fetchFromGitHub {
owner = "magit";
repo = "with-editor";
- rev = "ad5bb005ed3afec2d8b9b2bc1df19fb9b5e2dd84";
- sha256 = "0hq2dy8djxf45ajk9di1grhgzly0qrijcjfdah8xj5zkwvn9cvlh";
+ rev = "9dd9f176d96abc60365369de6d08c26c414ef1f3";
+ sha256 = "16a71mld7knf5ppv4szlkfdq44cqi36jqmscn0fssffhg33xh8cs";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8c52c840dc35f3fd17ec660e113ddbb53aa99076/recipes/with-editor";
@@ -50938,6 +54163,33 @@
license = lib.licenses.free;
};
}) {};
+ with-venv = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "with-venv";
+ ename = "with-venv";
+ version = "0.0.1";
+ src = fetchFromGitHub {
+ owner = "10sr";
+ repo = "with-venv-el";
+ rev = "d12341b93420f4acd7a277ed0cd4a54767bc5bd6";
+ sha256 = "0knv2ybf4sbn31zyg9ms44mxvmvg7b51krq320g8fpcpa1bq28s6";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/555a2e49f18fbae59913459466babf8d55bd2151/recipes/with-venv";
+ sha256 = "090jird410wn2w9pwr2d9pjw5xghcdxc4l578zay2akygg3c6blm";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/with-venv";
+ license = lib.licenses.free;
+ };
+ }) {};
wn-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -51158,12 +54410,12 @@
melpaBuild {
pname = "writeroom-mode";
ename = "writeroom-mode";
- version = "3.7";
+ version = "3.8";
src = fetchFromGitHub {
owner = "joostkremers";
repo = "writeroom-mode";
- rev = "d3252f54c8f9f37a19d6a21fb2291c3da7a7121a";
- sha256 = "13nbls5qxz5z8firjxaip8m9vzfbbpxmwrmr01njbk4axpwrpj0z";
+ rev = "ebe522ba5a0367cf82ed03ffeb63fe597b84f4a1";
+ sha256 = "0w2lmkkij79khjpswk2zxj371fa9ws94j9dqzrgzf37lnimgnsff";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4e39cd8e8b4f61c04fa967def6a653bb22f45f5b/recipes/writeroom-mode";
@@ -51253,6 +54505,32 @@
license = lib.licenses.free;
};
}) {};
+ wucuo = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "wucuo";
+ ename = "wucuo";
+ version = "0.0.4";
+ src = fetchFromGitHub {
+ owner = "redguardtoo";
+ repo = "wucuo";
+ rev = "4e988c101fe82f2e8c7b3710d15982fe28b8d32d";
+ sha256 = "0g558miz9f4g8jlq532fs9yxj3il62zajgcjfndall2853hn54af";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/819cacef2c31d750829980f3f6c3bfb72f36bbdd/recipes/wucuo";
+ sha256 = "084fcv4dkflpka9vmxmxqdl0cgmjjh9wc6axr65j1ffmqd933y4a";
+ name = "recipe";
+ };
+ packageRequires = [ emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/wucuo";
+ license = lib.licenses.free;
+ };
+ }) {};
x86-lookup = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -51338,12 +54616,12 @@
melpaBuild {
pname = "xcscope";
ename = "xcscope";
- version = "1.3";
+ version = "1.4";
src = fetchFromGitHub {
owner = "dkogan";
repo = "xcscope.el";
- rev = "1e4c8e60eb841a3ecb56ff4115b6a8ae5c0bf779";
- sha256 = "1cc3bmi4fxlgqha7sxswn9lcc126xnr2j8xz6wszjnqh5w274fpp";
+ rev = "57bff67460c587acf60f513de622b4c7ab312081";
+ sha256 = "1l1k85wlmjb2mgzx1la9f0p7j3q0mzj4hlrs98pf4bbfkdbqg7a7";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/068c7846e70b91ce7e88330937fc64a60281802a/recipes/xcscope";
@@ -51484,6 +54762,31 @@
license = lib.licenses.free;
};
}) {};
+ xresources-theme = callPackage ({ fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "xresources-theme";
+ ename = "xresources-theme";
+ version = "1.0.0";
+ src = fetchFromGitHub {
+ owner = "cqql";
+ repo = "xresources-theme";
+ rev = "5239acb51aa2dfa89a207e57012108d8fcf60562";
+ sha256 = "13pls0f85n5rpbrbqcmrmcznv9hxiaglrnwpzivrli33cba92fpm";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/35763febad20f29320d459394f810668db6c3353/recipes/xresources-theme";
+ sha256 = "1vsbvg9w5g6y2qlb8ssn12ax31r7fbslfi9vcgvmjydcr8r1z0zs";
+ name = "recipe";
+ };
+ packageRequires = [];
+ meta = {
+ homepage = "https://melpa.org/#/xresources-theme";
+ license = lib.licenses.free;
+ };
+ }) {};
xterm-color = callPackage ({ cl-lib ? null
, fetchFromGitHub
, fetchurl
@@ -51492,12 +54795,12 @@
melpaBuild {
pname = "xterm-color";
ename = "xterm-color";
- version = "1.7";
+ version = "1.8";
src = fetchFromGitHub {
owner = "atomontage";
repo = "xterm-color";
- rev = "42374a98f1039e105cad9f16ce585dffc96a3f1c";
- sha256 = "09mzzql76z3gn39qnfjspm8waps8msbkilmlk3n2zrizpbps6crj";
+ rev = "a452ab38a7cfae97078062ff8885b5d74fd1e5a6";
+ sha256 = "02kpajb993yshhjhsizpfcbrcndyzkf4dqfipifhxxng50dhp95i";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b34a42f1bf5641871da8ce2b688325023262b643/recipes/xterm-color";
@@ -51587,6 +54890,33 @@
license = lib.licenses.free;
};
}) {};
+ yaml-imenu = callPackage ({ emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild
+ , yaml-mode }:
+ melpaBuild {
+ pname = "yaml-imenu";
+ ename = "yaml-imenu";
+ version = "1.0.1";
+ src = fetchFromGitHub {
+ owner = "knu";
+ repo = "yaml-imenu.el";
+ rev = "78a383098807014d9e7f2941196d8271677158cd";
+ sha256 = "1f85m0h19wjb0xrwkxrh7vrpphm8l5nkrv82zsl097dqw3ijj3f1";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/71e7c2df9e34093ad2634d5a56133fa30126fb5c/recipes/yaml-imenu";
+ sha256 = "03r7020gyr96m1z7p947nb7z8szzlkqv21g1hm10sqa8qp7k0qli";
+ name = "recipe";
+ };
+ packageRequires = [ emacs yaml-mode ];
+ meta = {
+ homepage = "https://melpa.org/#/yaml-imenu";
+ license = lib.licenses.free;
+ };
+ }) {};
yaml-mode = callPackage ({ emacs
, fetchFromGitHub
, fetchurl
@@ -51798,12 +55128,12 @@
melpaBuild {
pname = "yasnippet-snippets";
ename = "yasnippet-snippets";
- version = "0.5";
+ version = "0.10";
src = fetchFromGitHub {
owner = "AndreaCrotti";
repo = "yasnippet-snippets";
- rev = "d153af6d1d8ab8dfbc57f4065cee72f86d5cd2c4";
- sha256 = "0dkhac40kiyqnq42c2fcdb1jzshgakabq4rq796qfhjpc5j8x5wk";
+ rev = "827908d7cdc6e7c1504175b4d49f899f0e9ba945";
+ sha256 = "017avn7i3650rnl7lppn8k465ni0xy8v3r750f00gm9hxkzrig0z";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/42490bbdac871bce302fbc9a0488ff7de354627e/recipes/yasnippet-snippets";
@@ -51843,29 +55173,6 @@
license = lib.licenses.free;
};
}) {};
- yatex = callPackage ({ fetchhg
- , fetchurl
- , lib
- , melpaBuild }:
- melpaBuild {
- pname = "yatex";
- version = "1.80";
- src = fetchhg {
- url = "https://www.yatex.org/hgrepos/yatex";
- rev = "af4601ee3c6a";
- sha256 = "1r0irbkg8c5aapd1i7il31wv2fmhi0bzspiy21k670m896jqx50p";
- };
- recipe = fetchurl {
- url = "https://raw.githubusercontent.com/milkypostman/melpa/9854c39fc1889891fe460d0d5ac9224de3f6c635/recipes/yatex";
- sha256 = "1qbqdsqf5s61hyyzx84csnby242n5sdcmcw55pa8r16j8kyzgrc0";
- name = "yatex";
- };
- packageRequires = [];
- meta = {
- homepage = "https://melpa.org/#/yatex";
- license = lib.licenses.free;
- };
- }) {};
yaxception = callPackage ({ fetchFromGitHub
, fetchurl
, lib
@@ -52076,12 +55383,12 @@
melpaBuild {
pname = "zenburn-theme";
ename = "zenburn-theme";
- version = "2.5";
+ version = "2.6";
src = fetchFromGitHub {
owner = "bbatsov";
repo = "zenburn-emacs";
- rev = "f031c785b469cf4356fddb997eccf60399e34235";
- sha256 = "029955wp29wdrk1ddmhxixd76vhkp2li3mjaknw9d8iqz819vshc";
+ rev = "fdb1a9ca91ba04ed76a85af39890e1943774706b";
+ sha256 = "15g8dk5qdx8r54ccawy6gyprvms7zp7cgf5pwf24b829l2mrrs6r";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/091dcc3775ec2137cb61d66df4e72aca4900897a/recipes/zenburn-theme";
@@ -52148,6 +55455,33 @@
license = lib.licenses.free;
};
}) {};
+ zmq = callPackage ({ cl-lib ? null
+ , emacs
+ , fetchFromGitHub
+ , fetchurl
+ , lib
+ , melpaBuild }:
+ melpaBuild {
+ pname = "zmq";
+ ename = "zmq";
+ version = "0.10.3";
+ src = fetchFromGitHub {
+ owner = "dzop";
+ repo = "emacs-zmq";
+ rev = "12661cbc1acee8506d88b4853214a8a3716db240";
+ sha256 = "1rnddd67wm2g7qm06qhn8h3dakhv5lcf2dqhdhf0ian1lw5z0yvw";
+ };
+ recipe = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/72f4dcc2723de826bf1af7235ac6d9119a243c63/recipes/zmq";
+ sha256 = "14bbh00a58xgxyxl8zjxl57rf6351fnwsnk4cvvy341fvf86dklc";
+ name = "recipe";
+ };
+ packageRequires = [ cl-lib emacs ];
+ meta = {
+ homepage = "https://melpa.org/#/zmq";
+ license = lib.licenses.free;
+ };
+ }) {};
zombie-trellys-mode = callPackage ({ cl-lib ? null
, emacs
, fetchFromGitHub
@@ -52366,12 +55700,12 @@
melpaBuild {
pname = "zzz-to-char";
ename = "zzz-to-char";
- version = "0.1.2";
+ version = "0.1.3";
src = fetchFromGitHub {
owner = "mrkkrp";
repo = "zzz-to-char";
- rev = "b62414b155fe2e09d91b70059a909d1403d89acf";
- sha256 = "07a086s3fpncr4plkmr89vghn7xwji9k69m64ri7i1vhnnl6q4zj";
+ rev = "e571da33a0dde629314847338eedec84b40e9c32";
+ sha256 = "03i5bdq7d8la9kbvykgi7aa7v3c35nibgcd4pam99l47pm599ili";
};
recipe = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7063cbc1f1501ce81552d7ef1d42d1309f547c42/recipes/zzz-to-char";
@@ -52384,4 +55718,4 @@
license = lib.licenses.free;
};
}) {};
- }
+ }
\ No newline at end of file
diff --git a/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix b/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
index 61086b96230e37b75b18cf1bc006f4766f41a00d..49486df9a3f447bddc829e86b25c6dcad6c4b5ff 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
@@ -35,9 +35,6 @@ self:
});
overrides = {
- # upstream issue: mismatched filename
- ack-menu = markBroken super.ack-menu;
-
# Expects bash to be at /bin/bash
ac-rtags = markBroken super.ac-rtags;
@@ -102,9 +99,6 @@ self:
# build timeout
graphene = markBroken super.graphene;
- # upstream issue: mismatched filename
- helm-lobsters = markBroken super.helm-lobsters;
-
# Expects bash to be at /bin/bash
helm-rtags = markBroken super.helm-rtags;
@@ -134,9 +128,6 @@ self:
# upstream issue: missing file header
link = markBroken super.link;
- # upstream issue: mismatched filename
- link-hint = markBroken super.link-hint;
-
# upstream issue: missing file header
maxframe = markBroken super.maxframe;
@@ -151,6 +142,18 @@ self:
(attrs.nativeBuildInputs or []) ++ [ external.git ];
});
+ magit-todos = super.magit-todos.overrideAttrs (attrs: {
+ # searches for Git at build time
+ nativeBuildInputs =
+ (attrs.nativeBuildInputs or []) ++ [ external.git ];
+ });
+
+ magit-filenotify = super.magit-filenotify.overrideAttrs (attrs: {
+ # searches for Git at build time
+ nativeBuildInputs =
+ (attrs.nativeBuildInputs or []) ++ [ external.git ];
+ });
+
# missing OCaml
merlin = markBroken super.merlin;
@@ -173,9 +176,6 @@ self:
# upstream issue: truncated file
powershell = markBroken super.powershell;
- # upstream issue: mismatched filename
- processing-snippets = markBroken super.processing-snippets;
-
# upstream issue: missing file header
qiita = markBroken super.qiita;
diff --git a/pkgs/applications/editors/emacs-modes/org-generated.nix b/pkgs/applications/editors/emacs-modes/org-generated.nix
index 32b6b703729f460b0b9ea280bb9506e07654e73c..6881ccd784ea6e1448ee47b52c3cec7476f98433 100644
--- a/pkgs/applications/editors/emacs-modes/org-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/org-generated.nix
@@ -4,10 +4,10 @@
elpaBuild {
pname = "org";
ename = "org";
- version = "20180723";
+ version = "20181230";
src = fetchurl {
- url = "http://orgmode.org/elpa/org-20180723.tar";
- sha256 = "1mcgnba16lpyh55zjx4rcbmpygcmdnjjzvgv1rx0c3kz1h5fgzf8";
+ url = "http://orgmode.org/elpa/org-20181230.tar";
+ sha256 = "1ydl6cikf4myrz59qvajbdxg1bvbpqjlkxn54qhrhh4755llcfkv";
};
packageRequires = [];
meta = {
@@ -19,10 +19,10 @@
elpaBuild {
pname = "org-plus-contrib";
ename = "org-plus-contrib";
- version = "20180723";
+ version = "20181230";
src = fetchurl {
- url = "http://orgmode.org/elpa/org-plus-contrib-20180723.tar";
- sha256 = "1l34bagkm8mcyv5diprpbd4yjijkdvx1l54qpvi8bmvxjnzsm7mk";
+ url = "http://orgmode.org/elpa/org-plus-contrib-20181230.tar";
+ sha256 = "0gibwcjlardjwq19bh0zzszv0dxxlml0rh5iikkcdynbgndk1aa1";
};
packageRequires = [];
meta = {
diff --git a/pkgs/applications/editors/emacs-modes/org/default.nix b/pkgs/applications/editors/emacs-modes/org/default.nix
index 99ecddcb26481972076032c2f60d9e5e80bb3c6d..a8250ead7b4880b0df97e5f79a02b009412ad2a9 100644
--- a/pkgs/applications/editors/emacs-modes/org/default.nix
+++ b/pkgs/applications/editors/emacs-modes/org/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
license = stdenv.lib.licenses.gpl3Plus;
- maintainers = with stdenv.lib.maintainers; [ chaoflow pSub ];
+ maintainers = with stdenv.lib.maintainers; [ pSub ];
platforms = stdenv.lib.platforms.unix;
};
}
diff --git a/pkgs/applications/editors/emacs-modes/remember/default.nix b/pkgs/applications/editors/emacs-modes/remember/default.nix
deleted file mode 100644
index 7c0bc517755a10a10a83cf58853a5c0cb4796115..0000000000000000000000000000000000000000
--- a/pkgs/applications/editors/emacs-modes/remember/default.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-{ fetchurl, stdenv, texinfo, emacs, bbdb }:
-
-stdenv.mkDerivation rec {
- # Note: Remember is part of GNU Emacs 23.
- name = "remember-2.0";
-
- src = fetchurl {
- url = "http://download.gna.org/remember-el/${name}.tar.gz";
- sha256 = "04bp071xjbb6mbspjpwcza0krgx2827v6rfxbsdcpn0qcjgad9wm";
- };
-
- # FIXME: It also has a (soft) dependency on Planner and Bibl-mode.
- buildInputs = [ emacs bbdb texinfo ];
-
- patchPhase = ''
- sed -i "Makefile.defs" \
- -e"s|^ *PREFIX *=.*$|PREFIX = $out|g ;
- s|^ *ELISPDIR *=.*$|ELISPDIR = $out/share/emacs/site-lisp|g ;
- s|^ *EMACS *=.*$|EMACS = emacs -L \"${bbdb}/share/emacs/site-lisp\"|g"
- '';
-
- meta = {
- description = "Remember, an Emacs mode for quickly remembering data";
-
- longDescription = ''
- Remember is an Emacs mode for quickly remembering data. It uses
- whatever back-end is appropriate to record and correlate the
- data, but its main intention is to allow you to express as
- little structure as possible up front.
-
- When you enter data, either by typing it into a buffer, or using
- the contents of the selected region, Remember will store that
- data -- unindexed, uninterpreted -- in a data pool. It will
- also try to remember as much context information as possible
- (any text properties that were set, where you copied it from,
- when, how, etc). Later, you can walk through your accumulated
- set of data (both organized, and unorganized) and easily begin
- moving things around, and making annotations that will express
- the full meaning of that data, as far as you know it.
- '';
-
- homepage = http://gna.org/projects/remember-el/;
- license = stdenv.lib.licenses.gpl2Plus;
- };
-}
diff --git a/pkgs/applications/editors/emacs/25.nix b/pkgs/applications/editors/emacs/25.nix
index ee21bbbd9bd9a94b6d1fc12438f1d21ebbb90ee3..852faeb7918bfeec2ff3fe27a2fe933d24544af1 100644
--- a/pkgs/applications/editors/emacs/25.nix
+++ b/pkgs/applications/editors/emacs/25.nix
@@ -1,7 +1,7 @@
{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d
, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
, libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
-, alsaLib, cairo, acl, gpm, AppKit, GSS, ImageIO
+, alsaLib, cairo, acl, gpm, cf-private, AppKit, GSS, ImageIO
, withX ? !stdenv.isDarwin
, withGTK2 ? false, gtk2 ? null
, withGTK3 ? true, gtk3 ? null, gsettings-desktop-schemas ? null
@@ -61,9 +61,12 @@ stdenv.mkDerivation rec {
++ lib.optional (withX && withGTK2) gtk2
++ lib.optionals (withX && withGTK3) [ gtk3 gsettings-desktop-schemas ]
++ lib.optional (stdenv.isDarwin && withX) cairo
- ++ lib.optionals (withX && withXwidgets) [ webkitgtk24x-gtk3 glib-networking ];
-
- propagatedBuildInputs = lib.optionals stdenv.isDarwin [ AppKit GSS ImageIO ];
+ ++ lib.optionals (withX && withXwidgets) [ webkitgtk24x-gtk3 glib-networking ]
+ ++ lib.optionals stdenv.isDarwin [
+ AppKit GSS ImageIO
+ # Needed for CFNotificationCenterAddObserver symbols.
+ cf-private
+ ];
hardeningDisable = [ "format" ];
@@ -111,9 +114,9 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "The extensible, customizable GNU text editor";
- homepage = http://www.gnu.org/software/emacs/;
+ homepage = https://www.gnu.org/software/emacs/;
license = licenses.gpl3Plus;
- maintainers = with maintainers; [ chaoflow lovek323 peti the-kenny jwiegley ];
+ maintainers = with maintainers; [ lovek323 peti the-kenny jwiegley ];
platforms = platforms.all;
longDescription = ''
diff --git a/pkgs/applications/editors/emacs/builder.sh b/pkgs/applications/editors/emacs/builder.sh
deleted file mode 100644
index 545520cca7c0e5f9e3e726f56f52b3d2a840137f..0000000000000000000000000000000000000000
--- a/pkgs/applications/editors/emacs/builder.sh
+++ /dev/null
@@ -1,40 +0,0 @@
-source $stdenv/setup
-
-# This hook is supposed to be run on Linux. It patches the proper locations of
-# the crt{1,i,n}.o files into the build to ensure that Emacs is linked with
-# *our* versions, not the ones found in the system, as it would do by default.
-# On other platforms, this appears to be unnecessary.
-preConfigure() {
- ./autogen.sh
-
- for i in Makefile.in ./src/Makefile.in ./lib-src/Makefile.in ./leim/Makefile.in; do
- substituteInPlace $i --replace /bin/pwd pwd
- done
-
- case "${system}" in
- x86_64-linux) glibclibdir=lib64 ;;
- i686-linux) glibclibdir=lib ;;
- *) return;
- esac
-
- libc=$(cat ${NIX_CC}/nix-support/orig-libc)
- echo "libc: $libc"
-
- for i in src/s/*.h src/m/*.h; do
- substituteInPlace $i \
- --replace /usr/${glibclibdir}/crt1.o $libc/${glibclibdir}/crt1.o \
- --replace /usr/${glibclibdir}/crti.o $libc/${glibclibdir}/crti.o \
- --replace /usr/${glibclibdir}/crtn.o $libc/${glibclibdir}/crtn.o \
- --replace /usr/lib/crt1.o $libc/${glibclibdir}/crt1.o \
- --replace /usr/lib/crti.o $libc/${glibclibdir}/crti.o \
- --replace /usr/lib/crtn.o $libc/${glibclibdir}/crtn.o
- done
-}
-
-preInstall () {
- for i in Makefile.in ./src/Makefile.in ./lib-src/Makefile.in ./leim/Makefile.in; do
- substituteInPlace $i --replace /bin/pwd pwd
- done
-}
-
-genericBuild
diff --git a/pkgs/applications/editors/emacs/clean-env.patch b/pkgs/applications/editors/emacs/clean-env.patch
index 7b4cb9d52667154bfb6e98713eb2a12ebd4e1426..88befda899a7668af791a67cdf5968f96fc168bf 100644
--- a/pkgs/applications/editors/emacs/clean-env.patch
+++ b/pkgs/applications/editors/emacs/clean-env.patch
@@ -1,13 +1,13 @@
Dump temacs in an empty environment to prevent -dev paths from ending
up in the dumped image.
-diff -ru -x '*~' emacs-25.3/src/Makefile.in emacs-25.3-new/src/Makefile.in
---- emacs-25.3/src/Makefile.in 2017-04-14 17:02:47.000000000 +0200
-+++ emacs-25.3-new/src/Makefile.in 2017-09-25 19:03:02.173861038 +0200
-@@ -532,7 +532,7 @@
- ifeq ($(CANNOT_DUMP),yes)
+diff --git a/src/Makefile.in b/src/Makefile.in
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -535,7 +535,7 @@ ifeq ($(CANNOT_DUMP),yes)
ln -f temacs$(EXEEXT) $@
else
+ unset EMACS_HEAP_EXEC; \
- LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup dump
+ env -i LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup dump
ifneq ($(PAXCTL_dumped),)
diff --git a/pkgs/applications/editors/emacs/default.nix b/pkgs/applications/editors/emacs/default.nix
index 0a304fabe60037b7799d66e7d64e56d645714d4e..4eb988a782cad7e8a9776b5bb3c0c87947cbe8e3 100644
--- a/pkgs/applications/editors/emacs/default.nix
+++ b/pkgs/applications/editors/emacs/default.nix
@@ -1,22 +1,26 @@
-{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d
-, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
+{ stdenv, lib, fetchpatch, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm
+, Xaw3d, libXcursor, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
, libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
-, alsaLib, cairo, acl, gpm, AppKit, GSS, ImageIO, m17n_lib, libotf
+, alsaLib, cairo, acl, gpm, cf-private, AppKit, GSS, ImageIO, m17n_lib, libotf
, systemd ? null
, withX ? !stdenv.isDarwin
-, withGTK2 ? false, gtk2 ? null
-, withGTK3 ? true, gtk3 ? null, gsettings-desktop-schemas ? null
+, withNS ? stdenv.isDarwin
+, withGTK2 ? false, gtk2-x11 ? null
+, withGTK3 ? true, gtk3-x11 ? null, gsettings-desktop-schemas ? null
, withXwidgets ? false, webkitgtk ? null, wrapGAppsHook ? null, glib-networking ? null
, withCsrc ? true
, srcRepo ? false, autoconf ? null, automake ? null, texinfo ? null
+, siteStart ? ./site-start.el
}:
assert (libXft != null) -> libpng != null; # probably a bug
assert stdenv.isDarwin -> libXaw != null; # fails to link otherwise
-assert withGTK2 -> withX || stdenv.isDarwin;
-assert withGTK3 -> withX || stdenv.isDarwin;
-assert withGTK2 -> !withGTK3 && gtk2 != null;
-assert withGTK3 -> !withGTK2 && gtk3 != null;
+assert withNS -> !withX;
+assert withNS -> stdenv.isDarwin;
+assert (withGTK2 && !withNS) -> withX;
+assert (withGTK3 && !withNS) -> withX;
+assert withGTK2 -> !withGTK3 && gtk2-x11 != null;
+assert withGTK3 -> !withGTK2 && gtk3-x11 != null;
assert withXwidgets -> withGTK3 && webkitgtk != null;
let
@@ -27,18 +31,19 @@ let
in
stdenv.mkDerivation rec {
name = "emacs-${version}${versionModifier}";
- version = "26.1";
+ version = "26.2";
versionModifier = "";
src = fetchurl {
url = "mirror://gnu/emacs/${name}.tar.xz";
- sha256 = "0b6k1wq44rc8gkvxhi1bbjxbz3cwg29qbq8mklq2az6p1hjgrx0w";
+ sha256 = "13n5m60i47k96mpv5pp6km2ph9rv2m5lmbpzj929v02vpsfyc70m";
};
enableParallelBuilding = true;
patches = [
./clean-env.patch
+ ./tramp-detect-wrapped-gvfsd.patch
];
postPatch = lib.optionalString srcRepo ''
@@ -56,19 +61,28 @@ stdenv.mkDerivation rec {
++ lib.optionals stdenv.isLinux [ dbus libselinux systemd ]
++ lib.optionals withX
[ xlibsWrapper libXaw Xaw3d libXpm libpng libjpeg libungif libtiff librsvg libXft
- imagemagick gconf m17n_lib libotf ]
- ++ lib.optional (withX && withGTK2) gtk2
- ++ lib.optionals (withX && withGTK3) [ gtk3 gsettings-desktop-schemas ]
+ imagemagick gconf ]
+ ++ lib.optionals (stdenv.isLinux && withX) [ m17n_lib libotf ]
+ ++ lib.optional (withX && withGTK2) gtk2-x11
+ ++ lib.optionals (withX && withGTK3) [ gtk3-x11 gsettings-desktop-schemas ]
++ lib.optional (stdenv.isDarwin && withX) cairo
- ++ lib.optionals (withX && withXwidgets) [ webkitgtk ];
-
- propagatedBuildInputs = lib.optionals stdenv.isDarwin [ AppKit GSS ImageIO ];
+ ++ lib.optionals (withX && withXwidgets) [ webkitgtk ]
+ ++ lib.optionals withNS [
+ AppKit GSS ImageIO
+ # Needed for CFNotificationCenterAddObserver symbols.
+ cf-private
+ ];
hardeningDisable = [ "format" ];
- configureFlags = [ "--with-modules" ] ++
- (if stdenv.isDarwin
- then [ "--with-ns" "--disable-ns-self-contained" ]
+ configureFlags = [
+ "--disable-build-details" # for a (more) reproducible build
+ "--with-modules"
+ ] ++
+ (lib.optional stdenv.isDarwin
+ (lib.withFeature withNS "ns")) ++
+ (if withNS
+ then [ "--disable-ns-self-contained" ]
else if withX
then [ "--with-x-toolkit=${toolkit}" "--with-xft" ]
else [ "--with-x=no" "--with-xpm=no" "--with-jpeg=no" "--with-png=no"
@@ -90,7 +104,7 @@ stdenv.mkDerivation rec {
postInstall = ''
mkdir -p $out/share/emacs/site-lisp
- cp ${./site-start.el} $out/share/emacs/site-lisp/site-start.el
+ cp ${siteStart} $out/share/emacs/site-lisp/site-start.el
$out/bin/emacs --batch -f batch-byte-compile $out/share/emacs/site-lisp/site-start.el
rm -rf $out/var
@@ -103,16 +117,27 @@ stdenv.mkDerivation rec {
cp $srcdir/TAGS $dstdir
echo '((nil . ((tags-file-name . "TAGS"))))' > $dstdir/.dir-locals.el
done
- '' + lib.optionalString stdenv.isDarwin ''
+ '' + lib.optionalString withNS ''
mkdir -p $out/Applications
mv nextstep/Emacs.app $out/Applications
'';
+ postFixup =
+ let libPath = lib.makeLibraryPath [
+ libXcursor
+ ];
+ in lib.optionalString (stdenv.isLinux && withX && toolkit == "lucid") ''
+ patchelf --set-rpath \
+ "$(patchelf --print-rpath "$out/bin/emacs"):${libPath}" \
+ "$out/bin/emacs"
+ patchelf --add-needed "libXcursor.so.1" "$out/bin/emacs"
+ '';
+
meta = with stdenv.lib; {
description = "The extensible, customizable GNU text editor";
- homepage = http://www.gnu.org/software/emacs/;
+ homepage = https://www.gnu.org/software/emacs/;
license = licenses.gpl3Plus;
- maintainers = with maintainers; [ chaoflow lovek323 peti the-kenny jwiegley ];
+ maintainers = with maintainers; [ lovek323 peti the-kenny jwiegley ];
platforms = platforms.all;
longDescription = ''
diff --git a/pkgs/applications/editors/emacs/macport.nix b/pkgs/applications/editors/emacs/macport.nix
index 8f74aca44885f856c07d42638878f7b50985c0bf..7c21c1cae5e3b8172b1a8772e2f9c2a7a0cae907 100644
--- a/pkgs/applications/editors/emacs/macport.nix
+++ b/pkgs/applications/editors/emacs/macport.nix
@@ -1,24 +1,22 @@
{ stdenv, fetchurl, ncurses, pkgconfig, texinfo, libxml2, gnutls, gettext, autoconf, automake
-, AppKit, Carbon, Cocoa, IOKit, OSAKit, Quartz, QuartzCore, WebKit
+, cf-private, AppKit, Carbon, Cocoa, IOKit, OSAKit, Quartz, QuartzCore, WebKit
, ImageCaptureCore, GSS, ImageIO # These may be optional
}:
stdenv.mkDerivation rec {
- emacsVersion = "26.1";
+ emacsVersion = "26.2";
emacsName = "emacs-${emacsVersion}";
- macportVersion = "7.1";
+ macportVersion = "7.6";
name = "emacs-mac-${emacsVersion}-${macportVersion}";
- builder = ./builder.sh;
-
src = fetchurl {
url = "mirror://gnu/emacs/${emacsName}.tar.xz";
- sha256 = "0b6k1wq44rc8gkvxhi1bbjxbz3cwg29qbq8mklq2az6p1hjgrx0w";
+ sha256 = "13n5m60i47k96mpv5pp6km2ph9rv2m5lmbpzj929v02vpsfyc70m";
};
macportSrc = fetchurl {
url = "ftp://ftp.math.s.chiba-u.ac.jp/emacs/${emacsName}-mac-${macportVersion}.tar.gz";
- sha256 = "0d2ny54f68v3hjc2g3pkj83xv3yzv0hrwvn2cmpyb0jxjbsb2frc";
+ sha256 = "00szqb74ds89m34sx5mq0gxhsrz64j691sxyvqncj10hw17d0y61";
};
hiresSrc = fetchurl {
@@ -35,6 +33,8 @@ stdenv.mkDerivation rec {
buildInputs = [ ncurses libxml2 gnutls texinfo gettext
AppKit Carbon Cocoa IOKit OSAKit Quartz QuartzCore WebKit
ImageCaptureCore GSS ImageIO # may be optional
+ # Needed for CFNotificationCenterAddObserver symbols.
+ cf-private
];
postUnpack = ''
@@ -53,6 +53,10 @@ stdenv.mkDerivation rec {
# use newer emacs icon
cp nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns mac/Emacs.app/Contents/Resources/Emacs.icns
+
+ # Fix sandbox impurities.
+ substituteInPlace Makefile.in --replace '/bin/pwd' 'pwd'
+ substituteInPlace lib-src/Makefile.in --replace '/bin/pwd' 'pwd'
'';
configureFlags = [
@@ -64,7 +68,7 @@ stdenv.mkDerivation rec {
"--enable-mac-app=$$out/Applications"
];
- CFLAGS = "-O3 -DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_10 -DMAC_OS_X_VERSION_MIN_REQUIRED=MAC_OS_X_VERSION_10_10";
+ CFLAGS = "-O3";
LDFLAGS = "-O3 -L${ncurses.out}/lib";
postInstall = ''
@@ -76,7 +80,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "The extensible, customizable text editor";
- homepage = http://www.gnu.org/software/emacs/;
+ homepage = https://www.gnu.org/software/emacs/;
license = licenses.gpl3Plus;
maintainers = with maintainers; [ jwiegley matthewbauer ];
platforms = platforms.darwin;
diff --git a/pkgs/applications/editors/emacs/site-start.el b/pkgs/applications/editors/emacs/site-start.el
index cc1ab1d0e3039af1dc72207dd9a64c479dca2fef..34addc33a59c154c47f6698af0788f07afb091f3 100644
--- a/pkgs/applications/editors/emacs/site-start.el
+++ b/pkgs/applications/editors/emacs/site-start.el
@@ -30,7 +30,7 @@ least specific (the system profile)"
woman-manpath)))
;;; Make tramp work for remote NixOS machines
-(eval-after-load 'tramp
+(eval-after-load 'tramp-sh
;; TODO: We should also add the other `NIX_PROFILES' to this path.
;; However, these are user-specific, so we would need to discover
;; them dynamically after connecting via `tramp'
diff --git a/pkgs/applications/editors/emacs/tramp-detect-wrapped-gvfsd.patch b/pkgs/applications/editors/emacs/tramp-detect-wrapped-gvfsd.patch
new file mode 100644
index 0000000000000000000000000000000000000000..5d16194fd20279ec78e7b17a469c7cde688ff49e
--- /dev/null
+++ b/pkgs/applications/editors/emacs/tramp-detect-wrapped-gvfsd.patch
@@ -0,0 +1,14 @@
+diff --git a/lisp/net/tramp-gvfs.el b/lisp/net/tramp-gvfs.el
+index f370abba31..f2806263a9 100644
+--- a/lisp/net/tramp-gvfs.el
++++ b/lisp/net/tramp-gvfs.el
+@@ -164,7 +164,8 @@ tramp-gvfs-enabled
+ (and (featurep 'dbusbind)
+ (tramp-compat-funcall 'dbus-get-unique-name :system)
+ (tramp-compat-funcall 'dbus-get-unique-name :session)
+- (or (tramp-compat-process-running-p "gvfs-fuse-daemon")
++ (or (tramp-compat-process-running-p ".gvfsd-fuse-wrapped")
++ (tramp-compat-process-running-p "gvfs-fuse-daemon")
+ (tramp-compat-process-running-p "gvfsd-fuse"))))
+ "Non-nil when GVFS is available.")
+
diff --git a/pkgs/applications/editors/featherpad/default.nix b/pkgs/applications/editors/featherpad/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..89e10ea25fa62110332e2f3466fae8160e158c03
--- /dev/null
+++ b/pkgs/applications/editors/featherpad/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, pkgconfig, qt5, fetchFromGitHub }:
+
+with qt5;
+
+stdenv.mkDerivation rec {
+ version = "0.9.4";
+ name = "featherpad-${version}";
+ src = fetchFromGitHub {
+ owner = "tsujan";
+ repo = "FeatherPad";
+ rev = "V${version}";
+ sha256 = "18zna6rx2qyiplr44wrkvr4avk9yy2l1s23fy3d7ql9f1fq12z3w";
+ };
+ nativeBuildInputs = [ qmake pkgconfig qttools ];
+ buildInputs = [ qtbase qtsvg qtx11extras ];
+ meta = with stdenv.lib; {
+ description = "Lightweight Qt5 Plain-Text Editor for Linux";
+ homepage = https://github.com/tsujan/FeatherPad;
+ platforms = platforms.linux;
+ maintainers = [ maintainers.flosse ];
+ license = licenses.gpl3;
+ };
+}
diff --git a/pkgs/applications/editors/flpsed/default.nix b/pkgs/applications/editors/flpsed/default.nix
index bd00045bca91b7764e266e302d65d965e9e5281c..104206a1491323e2bea43d91933000ff7b2d0699 100644
--- a/pkgs/applications/editors/flpsed/default.nix
+++ b/pkgs/applications/editors/flpsed/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, fltk13, ghostscript}:
+{ stdenv, fetchurl, fltk13, ghostscript }:
stdenv.mkDerivation rec {
name = "flpsed-${version}";
@@ -19,9 +19,9 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "WYSIWYG PostScript annotator";
- homepage = http://http://flpsed.org/flpsed.html;
+ homepage = http://flpsed.org/flpsed.html;
license = licenses.gpl3;
- platforms = platforms.mesaPlatforms;
+ platforms = platforms.linux;
maintainers = with maintainers; [ fuuzetsu ];
};
}
diff --git a/pkgs/applications/editors/focuswriter/default.nix b/pkgs/applications/editors/focuswriter/default.nix
index 706f2f015b12d526fe55669bb88115cb99670caa..ce553fa8b28852d2c7a8eeeaa926e5b791a6d9ba 100644
--- a/pkgs/applications/editors/focuswriter/default.nix
+++ b/pkgs/applications/editors/focuswriter/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "focuswriter-${version}";
- version = "1.6.15";
+ version = "1.7.2";
src = fetchurl {
url = "https://gottcode.org/focuswriter/focuswriter-${version}-src.tar.bz2";
- sha256 = "0afs9cm5q7zxag28m427ycwwxkbn47zw7v111x7963ydqyn9gr9q";
+ sha256 = "1qsfcrscm3s0h7wcl6qn8zi0irr70zdacjxsdk73kpk1dhl2j85k";
};
nativeBuildInputs = [ pkgconfig qmake qttools ];
diff --git a/pkgs/applications/editors/geany/default.nix b/pkgs/applications/editors/geany/default.nix
index 24954a602cccbdd77bd9c3773e14f3fe57db32d8..0ff56e9145fb348348ff47e1415e12c6b3e5acd3 100644
--- a/pkgs/applications/editors/geany/default.nix
+++ b/pkgs/applications/editors/geany/default.nix
@@ -3,7 +3,7 @@
with stdenv.lib;
let
- version = "1.33";
+ version = "1.35";
in
stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://download.geany.org/${name}.tar.bz2";
- sha256 = "66baaff43f12caebcf0efec9a5533044dc52837f799c73a1fd7312caa86099c2";
+ sha256 = "179xfnvhcxsv54v2mlrhykqv2j7klniln5sffvqqpjmdvwyivvim";
};
nativeBuildInputs = [ pkgconfig intltool libintl ];
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
'';
homepage = https://www.geany.org/;
license = licenses.gpl2;
- maintainers = [];
+ maintainers = with maintainers; [ frlan ];
platforms = platforms.all;
};
}
diff --git a/pkgs/applications/editors/ghostwriter/default.nix b/pkgs/applications/editors/ghostwriter/default.nix
index 36259593463d697d6ed33f1638c8f044c490cf3c..a65954d7d2aeed5f8e79417e6e80ad9d74e6ef5a 100644
--- a/pkgs/applications/editors/ghostwriter/default.nix
+++ b/pkgs/applications/editors/ghostwriter/default.nix
@@ -1,20 +1,20 @@
-{ stdenv, fetchFromGitHub, qmake, pkgconfig, qtwebkit, hunspell }:
+{ stdenv, fetchFromGitHub, qmake, pkgconfig, qttools, qtwebengine, hunspell }:
stdenv.mkDerivation rec {
pname = "ghostwriter";
- version = "1.7.3";
+ version = "1.8.0";
name = "${pname}-${version}";
src = fetchFromGitHub {
owner = "wereturtle";
repo = pname;
rev = "v${version}";
- sha256 = "1xkxd59rw2dn6xphgcl06zzmfgs1zna2w0pxrk0f49ywffvkvs72";
+ sha256 = "13yn82m1l2pq93wbl569a2lzpc3sn8a8g30hsgdch1l9xlmhwran";
};
- nativeBuildInputs = [ qmake pkgconfig ];
+ nativeBuildInputs = [ qmake pkgconfig qttools ];
- buildInputs = [ qtwebkit hunspell ];
+ buildInputs = [ qtwebengine hunspell ];
meta = with stdenv.lib; {
description = "A cross-platform, aesthetic, distraction-free Markdown editor";
diff --git a/pkgs/applications/editors/gnome-builder/default.nix b/pkgs/applications/editors/gnome-builder/default.nix
index db2d07db31e771c91a687163c92bc676e9b3e4e6..63568bef6f74c0b53a39025d317ff1d14eaeec19 100644
--- a/pkgs/applications/editors/gnome-builder/default.nix
+++ b/pkgs/applications/editors/gnome-builder/default.nix
@@ -1,21 +1,23 @@
-{ stdenv
+{ gcc8Stdenv
+, ctags
+, appstream-glib
, desktop-file-utils
, docbook_xsl
, docbook_xml_dtd_43
-, fetchpatch
, fetchurl
, flatpak
-, glibcLocales
, gnome3
-, gobjectIntrospection
+, libgit2-glib
+, gobject-introspection
, gspell
, gtk-doc
, gtk3
-, gtksourceview3
+, gtksourceview4
, hicolor-icon-theme
, json-glib
, jsonrpc-glib
, libdazzle
+, libpeas
, libxml2
, meson
, ninja
@@ -26,45 +28,54 @@
, sysprof
, template-glib
, vala
+, vte
, webkitgtk
, wrapGAppsHook
+, dbus
+, xvfb_run
}:
+
let
- version = "3.28.4";
+ # Does not build with GCC 7
+ # https://gitlab.gnome.org/GNOME/gnome-builder/issues/868
+ stdenv = gcc8Stdenv;
+in
+stdenv.mkDerivation rec {
pname = "gnome-builder";
-in stdenv.mkDerivation {
- name = "${pname}-${version}";
+ version = "3.32.0";
src = fetchurl {
- url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${pname}-${version}.tar.xz";
- sha256 = "0ibb74jlyrl5f6rj1b74196zfg2qaf870lxgi76qzpkgwq0iya05";
+ url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+ sha256 = "00l7sshpndk995aw98mjmsc3mxhxzynlp7il551iwwjjdbc70qp4";
};
nativeBuildInputs = [
- #appstream-glib # tests fail if these tools are available
+ appstream-glib
desktop-file-utils
docbook_xsl
docbook_xml_dtd_43
- glibcLocales # for Meson's gtkdochelper
- gobjectIntrospection
+ gobject-introspection
gtk-doc
hicolor-icon-theme
- meson
+ (meson.override ({ inherit stdenv; }))
ninja
pkgconfig
+ python3
python3.pkgs.wrapPython
wrapGAppsHook
];
buildInputs = [
+ ctags
flatpak
gnome3.devhelp
- gnome3.libgit2-glib
- gnome3.libpeas
- gnome3.vte
+ gnome3.glade
+ libgit2-glib
+ libpeas
+ vte
gspell
gtk3
- gtksourceview3
+ gtksourceview4
json-glib
jsonrpc-glib
libdazzle
@@ -78,45 +89,38 @@ in stdenv.mkDerivation {
webkitgtk
];
+ checkInputs = [
+ dbus
+ xvfb_run
+ ];
+
outputs = [ "out" "devdoc" ];
prePatch = ''
patchShebangs build-aux/meson/post_install.py
'';
- patches = [
- (fetchpatch {
- name = "absolute-shared-library-path.patch";
- url = "https://gitlab.gnome.org/GNOME/gnome-builder/commit/1011cabc519fd7322e2d695c79bfce3e18ff6200.patch";
- sha256 = "1g12zziidzrphp527aa8sklfaln4qpjprkz73f0c9w5ph6k252fw";
- })
- (fetchpatch {
- name = "python-libprefix.patch";
- url = "https://gitlab.gnome.org/GNOME/gnome-builder/commit/43494ce83a347f369ed4cfb8dd71d3b93452736b.patch";
- sha256 = "0kgi3n3g13n1j4xa61ln9xiahcfdc43bxi5mw4yva2d5px445msf";
- })
- (fetchpatch {
- name = "ostree-dependency.patch";
- url = "https://gitlab.gnome.org/GNOME/gnome-builder/commit/8b11773b65c95f464a0de16b91318c1ca73deeae.patch";
- sha256 = "18r4hd90id0w6r0lzqpw83bcj45nm9jhr46a0ffi1mcayb18mgbk";
- })
- ];
-
mesonFlags = [
"-Dpython_libprefix=${python3.libPrefix}"
- "-Dwith_docs=true"
+ "-Ddocs=true"
# Making the build system correctly detect clang header and library paths
# is difficult. Somebody should look into fixing this.
- "-Dwith_clang=false"
+ "-Dplugin_clang=false"
+
+ # Do not try to check if appstream images exist
+ "-Dnetwork_tests=false"
];
# Some tests fail due to being unable to find the Vte typelib, and I don't
# understand why. Somebody should look into fixing this.
- doCheck = false;
+ doCheck = true;
- preInstall = ''
- export LC_ALL="en_US.utf-8"
+ checkPhase = ''
+ export NO_AT_BRIDGE=1
+ xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
+ --config-file=${dbus.daemon}/share/dbus-1/session.conf \
+ meson test --print-errorlogs
'';
pythonPath = with python3.pkgs; requiredPythonModules [ pygobject3 ];
diff --git a/pkgs/applications/editors/gnome-latex/default.nix b/pkgs/applications/editors/gnome-latex/default.nix
index 055ac050b541b34210dbb2c853fc40864193988e..cfd3a4289901f648e0fffa1bdc9c3dcc2cd91e3c 100644
--- a/pkgs/applications/editors/gnome-latex/default.nix
+++ b/pkgs/applications/editors/gnome-latex/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, wrapGAppsHook
+{ stdenv, fetchurl, wrapGAppsHook, gsettings-desktop-schemas, gspell, gtksourceview4, libgee
, tepl, amtk, gnome3, glib, pkgconfig, intltool, itstool, libxml2 }:
let
- version = "3.30.1";
+ version = "3.32.0";
pname = "gnome-latex";
in stdenv.mkDerivation {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "0yvkp311ikmiypzj2q6ypvyw5migxiqp8lwhyl3qq6mk6p0x66w8";
+ sha256 = "1jdca9yhm7mm1aijd1a5amphgn15142kngky3id2am379ixrq1hg";
};
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
@@ -21,9 +21,9 @@ in stdenv.mkDerivation {
intltool
];
- buildInputs = with gnome3; [
+ buildInputs = [
amtk
- defaultIconTheme
+ gnome3.adwaita-icon-theme
glib
gsettings-desktop-schemas
gspell
diff --git a/pkgs/applications/editors/howl/default.nix b/pkgs/applications/editors/howl/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..8f75eda7ef705eae63274d9d6ea1fb943d154571
--- /dev/null
+++ b/pkgs/applications/editors/howl/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchurl, makeWrapper, pkgconfig, gtk3, librsvg }:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+ name = "howl-${version}";
+ version = "0.5.3";
+
+ # Use the release tarball containing pre-downloaded dependencies sources
+ src = fetchurl {
+ url = "https://github.com/howl-editor/howl/releases/download/0.5.3/howl-0.5.3.tgz";
+ sha256 = "0gnc8vr5h8mwapbcqc1zr9la62rb633awyqgy8q7pwjpiy85a03v";
+ };
+
+ sourceRoot = "./howl-${version}/src";
+
+ # The Makefile uses "/usr/local" if not explicitly overridden
+ installFlags = [ "PREFIX=$(out)" ];
+
+ nativeBuildInputs = [ makeWrapper pkgconfig ];
+ buildInputs = [ gtk3 librsvg ];
+ enableParallelBuilding = true;
+
+ # Required for the program to properly load its SVG assets
+ postInstall = ''
+ wrapProgram $out/bin/howl \
+ --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE"
+ '';
+
+ meta = {
+ homepage = https://howl.io/;
+ description = "A general purpose, fast and lightweight editor with a keyboard-centric minimalistic user interface";
+ license = licenses.mit;
+ maintainers = with maintainers; [ pacien ];
+
+ # LuaJIT and Howl builds fail for x86_64-darwin and aarch64-linux respectively
+ platforms = [ "i686-linux" "x86_64-linux" ];
+ };
+}
+
diff --git a/pkgs/applications/editors/jetbrains/common.nix b/pkgs/applications/editors/jetbrains/common.nix
index 04de4f564c3382e2f784c234863d1c4bb96aa263..be20800cde295739088f20e948a0cd73439e5bf3 100644
--- a/pkgs/applications/editors/jetbrains/common.nix
+++ b/pkgs/applications/editors/jetbrains/common.nix
@@ -1,5 +1,5 @@
{ stdenv, makeDesktopItem, makeWrapper, patchelf, p7zip
-, coreutils, gnugrep, which, git, unzip, libsecret
+, coreutils, gnugrep, which, git, unzip, libsecret, libnotify
}:
{ name, product, version, src, wmClass, jdk, meta }:
@@ -26,7 +26,7 @@ with stdenv; lib.makeOverridable mkDerivation rec {
'';
};
- buildInputs = [ makeWrapper patchelf p7zip unzip ];
+ nativeBuildInputs = [ makeWrapper patchelf p7zip unzip ];
patchPhase = ''
get_file_size() {
@@ -42,7 +42,7 @@ with stdenv; lib.makeOverridable mkDerivation rec {
}
interpreter=$(echo ${stdenv.glibc.out}/lib/ld-linux*.so.2)
- if [ "${stdenv.system}" == "x86_64-linux" ]; then
+ if [ "${stdenv.hostPlatform.system}" == "x86_64-linux" ]; then
target_size=$(get_file_size bin/fsnotifier64)
patchelf --set-interpreter "$interpreter" bin/fsnotifier64
munge_size_hack bin/fsnotifier64 $target_size
@@ -67,6 +67,7 @@ with stdenv; lib.makeOverridable mkDerivation rec {
--prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [
# Some internals want libstdc++.so.6
stdenv.cc.cc.lib libsecret
+ libnotify
]}" \
--set JDK_HOME "$jdk" \
--set ${hiName}_JDK "$jdk" \
diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix
index 676514a614a6ade26fea39ce44fcbf00ecfcc530..ba3958a43d192a4187cfefbe2073988d66c3f39c 100644
--- a/pkgs/applications/editors/jetbrains/default.nix
+++ b/pkgs/applications/editors/jetbrains/default.nix
@@ -130,7 +130,8 @@ let
longDescription = ''
IDE for Java SE, Groovy & Scala development Powerful
environment for building Google Android apps Integration
- with JUnit, TestNG, popular SCMs, Ant & Maven.
+ with JUnit, TestNG, popular SCMs, Ant & Maven. Also known
+ as IntelliJ.
'';
maintainers = with maintainers; [ edwtjo ];
platforms = platforms.linux;
@@ -174,7 +175,7 @@ let
providing you almost everything you need for your comfortable
and productive development!
'';
- maintainers = with maintainers; [ jgeerds ];
+ maintainers = with maintainers; [ ];
platforms = platforms.linux;
};
}).override {
@@ -249,145 +250,145 @@ in
clion = buildClion rec {
name = "clion-${version}";
- version = "2018.2.1"; /* updated by script */
+ version = "2019.1.2"; /* updated by script */
description = "C/C++ IDE. New. Intelligent. Cross-platform";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
- sha256 = "16fr5760nkzgx8785x6hh7s96x097y6vdx7w1f9ipg71vv25cscq"; /* updated by script */
+ sha256 = "0x4fmbarckw60issrwk3cd65x5xjkxwrw4xq1qgfzmxfqhzbzvz8"; /* updated by script */
};
wmClass = "jetbrains-clion";
- update-channel = "CLion Release"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
+ update-channel = "CLion RELEASE"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
};
datagrip = buildDataGrip rec {
name = "datagrip-${version}";
- version = "2018.2.1"; /* updated by script */
+ version = "2019.1.1"; /* updated by script */
description = "Your Swiss Army Knife for Databases and SQL";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
- sha256 = "1jfkxr790wr8ffn7ph694hfzahs2akjcfk4rfsvjv1dccqb0167k"; /* updated by script */
+ sha256 = "0w6hasb8vcbxdqmb0pngwr2jg0w14prqb4v7blraa5jf1xyyiayd"; /* updated by script */
};
wmClass = "jetbrains-datagrip";
- update-channel = "DataGrip 2018.2";
+ update-channel = "DataGrip RELEASE";
};
goland = buildGoland rec {
name = "goland-${version}";
- version = "2018.2.1"; /* updated by script */
+ version = "2019.1.1"; /* updated by script */
description = "Up and Coming Go IDE";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/go/${name}.tar.gz";
- sha256 = "0k96v00cbxkgxs9xby5m4dxl4w2kkm2lii54z1hqjwqmc9kxa2ia"; /* updated by script */
+ sha256 = "0b8msq0raczm657rhbyqi702zv4zs66yd6dcm7s0l54hnas5ia9r"; /* updated by script */
};
wmClass = "jetbrains-goland";
- update-channel = "GoLand Release";
+ update-channel = "GoLand RELEASE";
};
idea-community = buildIdea rec {
name = "idea-community-${version}";
- version = "2018.2.1"; /* updated by script */
+ version = "2019.1.1"; /* updated by script */
description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
license = stdenv.lib.licenses.asl20;
src = fetchurl {
url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
- sha256 = "04dqyzkkrwvcdy1raard77v2315d44h29cpc9p98bjidvjd6bhsx"; /* updated by script */
+ sha256 = "0xbdn1q0a2ksb7z26n2l889m6z0lh3b45clya7rdfl4jv2gkiaaq"; /* updated by script */
};
wmClass = "jetbrains-idea-ce";
- update-channel = "IntelliJ IDEA Release";
+ update-channel = "IntelliJ IDEA RELEASE";
};
idea-ultimate = buildIdea rec {
name = "idea-ultimate-${version}";
- version = "2018.2.1"; /* updated by script */
+ version = "2019.1.1"; /* updated by script */
description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
- url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jdk.tar.gz";
- sha256 = "0ydidg9pk8bqf5jb1z0fw2m88v6mi38b4ddgmh5c9d9p44g6mddv"; /* updated by script */
+ url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jbr.tar.gz";
+ sha256 = "1pglvklbj4w6pmc7ffbjwwfqh7fad54yfx87m9plqk80rmpjzxfi"; /* updated by script */
};
wmClass = "jetbrains-idea";
- update-channel = "IntelliJ IDEA Release";
+ update-channel = "IntelliJ IDEA RELEASE";
};
phpstorm = buildPhpStorm rec {
name = "phpstorm-${version}";
- version = "2018.2.1"; /* updated by script */
+ version = "2019.1.1"; /* updated by script */
description = "Professional IDE for Web and PHP developers";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
- sha256 = "042qhdkl4v5q4cdbqfbiwj6s3acivdb5kmbyn4jix8pg8r37yfnm"; /* updated by script */
+ sha256 = "100whawwj1kiq870dsmkx33qv5ygjpr9977jkbavhqjnc1zhwl1r"; /* updated by script */
};
wmClass = "jetbrains-phpstorm";
- update-channel = "PhpStorm 2018.2";
+ update-channel = "PhpStorm RELEASE";
};
pycharm-community = buildPycharm rec {
name = "pycharm-community-${version}";
- version = "2018.2.1"; /* updated by script */
+ version = "2019.1.1"; /* updated by script */
description = "PyCharm Community Edition";
license = stdenv.lib.licenses.asl20;
src = fetchurl {
url = "https://download.jetbrains.com/python/${name}.tar.gz";
- sha256 = "14vnwqk0x0anvzmdv2ddc3qc9g5fll2ql02mi12k425j30fl2z2q"; /* updated by script */
+ sha256 = "1zz579kmskvgsjv2lriglxkdlx33mmfv2liw1b9iilspga59izld"; /* updated by script */
};
wmClass = "jetbrains-pycharm-ce";
- update-channel = "PyCharm Release";
+ update-channel = "PyCharm RELEASE";
};
pycharm-professional = buildPycharm rec {
name = "pycharm-professional-${version}";
- version = "2018.2.1"; /* updated by script */
+ version = "2019.1.1"; /* updated by script */
description = "PyCharm Professional Edition";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/python/${name}.tar.gz";
- sha256 = "1h4f9l577w2ps0y79x79yhpbrsv3j5nwr1lr1890phmp6zri6wyf"; /* updated by script */
+ sha256 = "0hcij77j4zb1y1vls5nvxq3lmqrbppm3ml0p9nagbjipy2rmp838"; /* updated by script */
};
wmClass = "jetbrains-pycharm";
- update-channel = "PyCharm Release";
+ update-channel = "PyCharm RELEASE";
};
rider = buildRider rec {
name = "rider-${version}";
- version = "2018.1.3"; /* updated by script */
+ version = "2018.3.4"; /* updated by script */
description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/rider/JetBrains.Rider-${version}.tar.gz";
- sha256 = "00wskr60mjipyp44wrpc3pn6awc92djn7rwhc08nrar3zv0j4mgg"; /* updated by script */
+ sha256 = "1klmg8wgj3shp4s0n2nn7n39zsk1mch6g9ifhwn5cgywpbzgam4p"; /* updated by script */
};
wmClass = "jetbrains-rider";
- update-channel = "Rider 2018.1.3";
+ update-channel = "Rider RELEASE";
};
ruby-mine = buildRubyMine rec {
name = "ruby-mine-${version}";
- version = "2018.2.1"; /* updated by script */
+ version = "2019.1.1"; /* updated by script */
description = "The Most Intelligent Ruby and Rails IDE";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
- sha256 = "1gwcadjgs4cw5i3h1xn92ng415vzr5cxyrpgckr1qy37d5f4bhqg"; /* updated by script */
+ sha256 = "0asg0x8xcjyydy0p1fdlhpcwfckdf9719460pv5zwc7yfd8z61yd"; /* updated by script */
};
wmClass = "jetbrains-rubymine";
- update-channel = "RubyMine 2018.2";
+ update-channel = "RubyMine RELEASE";
};
webstorm = buildWebStorm rec {
name = "webstorm-${version}";
- version = "2018.2.1"; /* updated by script */
+ version = "2019.1.1"; /* updated by script */
description = "Professional IDE for Web and JavaScript development";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
- sha256 = "1jbzkp13qn4n58kbcsszm2gfnywjma2yvn48g0vi14v7x6zihhxd"; /* updated by script */
+ sha256 = "05lrsjk45l4xqjyinsqlnfr36qnv1nrgg2sskgi0bfjbdrfv9xrv"; /* updated by script */
};
wmClass = "jetbrains-webstorm";
- update-channel = "WebStorm Release";
+ update-channel = "WebStorm RELEASE";
};
}
diff --git a/pkgs/applications/editors/jucipp/default.nix b/pkgs/applications/editors/jucipp/default.nix
index 08918beb8d5921cf3c26edd5bf9797fae56f50e3..9547b82efa1f79616cc56bb137cc1c1d54ce90ec 100644
--- a/pkgs/applications/editors/jucipp/default.nix
+++ b/pkgs/applications/editors/jucipp/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchgit, gnome3, at-spi2-core,
+{ stdenv, fetchgit, gnome3, gtksourceview3, at-spi2-core, gtksourceviewmm,
boost, epoxy, cmake, aspell, llvmPackages, libgit2, pkgconfig, pcre,
- libXdmcp, libxkbcommon, libpthreadstubs, wrapGAppsHook, aspellDicts,
+ libXdmcp, libxkbcommon, libpthreadstubs, wrapGAppsHook, aspellDicts, gtkmm3,
coreutils, glibc, dbus, openssl, libxml2, gnumake, ctags }:
with stdenv.lib;
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
dbus
openssl
libxml2
- gnome3.gtksourceview
+ gtksourceview3
at-spi2-core
pcre
epoxy
@@ -39,9 +39,9 @@ stdenv.mkDerivation rec {
aspell
libgit2
libxkbcommon
- gnome3.gtkmm3
+ gtkmm3
libpthreadstubs
- gnome3.gtksourceviewmm
+ gtksourceviewmm
llvmPackages.clang.cc
llvmPackages.lldb
gnome3.dconf
diff --git a/pkgs/applications/editors/jupyter/default.nix b/pkgs/applications/editors/jupyter/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..2bca120c1debc04703cdd8717e5edee1ef571e05
--- /dev/null
+++ b/pkgs/applications/editors/jupyter/default.nix
@@ -0,0 +1,18 @@
+# Jupyter notebook with the given kernel definitions
+
+{ python3
+, jupyter-kernel
+, definitions ? jupyter-kernel.default
+}:
+
+let
+
+ jupyterPath = (jupyter-kernel.create { inherit definitions; });
+
+in
+
+with python3.pkgs; toPythonModule (
+ notebook.overridePythonAttrs(oldAttrs: {
+ makeWrapperArgs = ["--set JUPYTER_PATH ${jupyterPath}"];
+ })
+)
diff --git a/pkgs/applications/editors/jupyter/kernel.nix b/pkgs/applications/editors/jupyter/kernel.nix
new file mode 100644
index 0000000000000000000000000000000000000000..38c61dba751ba7f676e7847e0e3e42ea19b6096c
--- /dev/null
+++ b/pkgs/applications/editors/jupyter/kernel.nix
@@ -0,0 +1,74 @@
+{ lib, stdenv, python3}:
+
+let
+
+ default = {
+ python3 = let
+ env = (python3.withPackages (ps: with ps; [ ipykernel ]));
+ in {
+ displayName = "Python 3";
+ argv = [
+ "${env.interpreter}"
+ "-m"
+ "ipykernel_launcher"
+ "-f"
+ "{connection_file}"
+ ];
+ language = "python";
+ logo32 = "${env.sitePackages}/ipykernel/resources/logo-32x32.png";
+ logo64 = "${env.sitePackages}/ipykernel/resources/logo-64x64.png";
+ };
+ };
+
+in
+{
+ inherit default;
+
+ # Definitions is an attribute set.
+
+ create = { definitions ? default }: with lib; stdenv.mkDerivation rec {
+
+ name = "jupyter-kernels";
+
+ src = "/dev/null";
+
+ unpackCmd = "mkdir jupyter_kernels";
+
+ installPhase = ''
+ mkdir kernels
+
+ ${concatStringsSep "\n" (mapAttrsToList (kernelName: kernel:
+ let
+ config = builtins.toJSON {
+ display_name = if (kernel.displayName != "")
+ then kernel.displayName
+ else kernelName;
+ argv = kernel.argv;
+ language = kernel.language;
+ };
+ logo32 =
+ if (kernel.logo32 != null)
+ then "ln -s ${kernel.logo32} 'kernels/${kernelName}/logo-32x32.png';"
+ else "";
+ logo64 =
+ if (kernel.logo64 != null)
+ then "ln -s ${kernel.logo64} 'kernels/${kernelName}/logo-64x64.png';"
+ else "";
+ in ''
+ mkdir 'kernels/${kernelName}';
+ echo '${config}' > 'kernels/${kernelName}/kernel.json';
+ ${logo32}
+ ${logo64}
+ '') definitions)}
+
+ mkdir $out
+ cp -r kernels $out
+ '';
+
+ meta = {
+ description = "Wrapper to create jupyter notebook kernel definitions";
+ homepage = https://jupyter.org/;
+ maintainers = with maintainers; [ aborsu ];
+ };
+ };
+}
diff --git a/pkgs/applications/editors/kakoune/default.nix b/pkgs/applications/editors/kakoune/default.nix
index ad408081e1fd0b77517ae432ffb8a87f64b1192b..16596056c9a062fc77d225aaafa89064e8e07d1b 100644
--- a/pkgs/applications/editors/kakoune/default.nix
+++ b/pkgs/applications/editors/kakoune/default.nix
@@ -3,13 +3,13 @@
with stdenv.lib;
stdenv.mkDerivation rec {
- name = "kakoune-unstable-${version}";
- version = "2018-08-05";
+ name = "kakoune-${version}";
+ version = "2019.01.20";
src = fetchFromGitHub {
repo = "kakoune";
owner = "mawww";
- rev = "ae75032936ed9ffa2bf14589fef115d3d684a7c6";
- sha256 = "1qm6i8vzr4wjxxdvhr54pan0ysxq1sn880bz8p2w9y6qa91yd3m3";
+ rev = "v${version}";
+ sha256 = "04ak1jm7b1i03sx10z3fxw08rn692y2fj482jn5kpzfzj91b2ila";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ ncurses asciidoc docbook_xsl libxslt ];
@@ -21,6 +21,10 @@ stdenv.mkDerivation rec {
sed -ie 's#--no-xmllint#--no-xmllint --xsltproc-opts="--nonet"#g' Makefile
'';
+ preConfigure = ''
+ export version="v${version}"
+ '';
+
meta = {
homepage = http://kakoune.org/;
description = "A vim inspired text editor";
diff --git a/pkgs/applications/editors/kdevelop5/kdev-php.nix b/pkgs/applications/editors/kdevelop5/kdev-php.nix
new file mode 100644
index 0000000000000000000000000000000000000000..085affa5f7ecb3f189c99ac181c0aeb19075176a
--- /dev/null
+++ b/pkgs/applications/editors/kdevelop5/kdev-php.nix
@@ -0,0 +1,25 @@
+{ stdenv, lib, fetchurl, cmake, extra-cmake-modules, threadweaver, ktexteditor, kdevelop-unwrapped, kdevelop-pg-qt }:
+
+let
+ pname = "kdev-php";
+ version = "5.3.2";
+in
+stdenv.mkDerivation rec {
+ name = "${pname}-${version}";
+
+ src = fetchurl {
+ url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
+ sha256 = "0yjn7y7al2xs8g0mrjvcym8gbjy4wmiv7lsljcrasjd7ymag1wgs";
+ };
+
+ nativeBuildInputs = [ cmake extra-cmake-modules ];
+ buildInputs = [ kdevelop-pg-qt threadweaver ktexteditor kdevelop-unwrapped ];
+
+ meta = with lib; {
+ maintainers = [ maintainers.aanderse ];
+ platforms = platforms.linux;
+ description = "PHP support for KDevelop";
+ homepage = https://www.kdevelop.org;
+ license = [ licenses.gpl2 ];
+ };
+}
diff --git a/pkgs/applications/editors/kdevelop5/kdev-python.nix b/pkgs/applications/editors/kdevelop5/kdev-python.nix
new file mode 100644
index 0000000000000000000000000000000000000000..4fbf3ed297c15bb899da3e4161aaafe27e2fdee1
--- /dev/null
+++ b/pkgs/applications/editors/kdevelop5/kdev-python.nix
@@ -0,0 +1,29 @@
+{ stdenv, lib, fetchurl, cmake, extra-cmake-modules, threadweaver, ktexteditor, kdevelop-unwrapped, python }:
+
+let
+ pname = "kdev-python";
+ version = "5.3.2";
+in
+stdenv.mkDerivation rec {
+ name = "${pname}-${version}";
+
+ src = fetchurl {
+ url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
+ sha256 = "0gqv1abzfpxkrf538rb62d2291lmlra8rghm9q9r3x8a46wh96zm";
+ };
+
+ cmakeFlags = [
+ "-DPYTHON_EXECUTABLE=${python}/bin/python"
+ ];
+
+ nativeBuildInputs = [ cmake extra-cmake-modules ];
+ buildInputs = [ threadweaver ktexteditor kdevelop-unwrapped ];
+
+ meta = with lib; {
+ maintainers = [ maintainers.aanderse ];
+ platforms = platforms.linux;
+ description = "Python support for KDevelop";
+ homepage = https://www.kdevelop.org;
+ license = [ licenses.gpl2 ];
+ };
+}
diff --git a/pkgs/applications/editors/kdevelop5/kdevelop.nix b/pkgs/applications/editors/kdevelop5/kdevelop.nix
index 41d1a6262ed594a3263b3ffc597d930f7fb84e84..23ec887ad6219bc3a345881a3fb791c3760ea75b 100644
--- a/pkgs/applications/editors/kdevelop5/kdevelop.nix
+++ b/pkgs/applications/editors/kdevelop5/kdevelop.nix
@@ -1,23 +1,23 @@
{ mkDerivation, lib, fetchurl, cmake, gettext, pkgconfig, extra-cmake-modules
-, qtquickcontrols, qtwebkit, qttools, kde-cli-tools
+, qtquickcontrols, qtwebkit, qttools, kde-cli-tools, qtbase
, kconfig, kdeclarative, kdoctools, kiconthemes, ki18n, kitemmodels, kitemviews
, kjobwidgets, kcmutils, kio, knewstuff, knotifyconfig, kparts, ktexteditor
, threadweaver, kxmlgui, kwindowsystem, grantlee, kcrash, karchive, kguiaddons
-, plasma-framework, krunner, kdevplatform, kdevelop-pg-qt, shared-mime-info
-, libksysguard, konsole, llvmPackages, makeWrapper
+, plasma-framework, krunner, kdevelop-pg-qt, shared-mime-info, libkomparediff2
+, libksysguard, konsole, llvmPackages, makeWrapper, kpurpose, boost
}:
let
pname = "kdevelop";
- version = "5.1.2";
-
+ version = "5.3.2";
+ qtVersion = "5.${lib.versions.minor qtbase.version}";
in
mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz";
- sha256 = "af54e807847d145fe5f3eb55962ed0d22e6363c2bc6c32167e51ca4823c00ac7";
+ sha256 = "0akgdnvrab6mbwnmvgzsplk0qh83k1hnm5xc06yxr1s1a5sxbk08";
};
nativeBuildInputs = [
@@ -30,20 +30,35 @@ mkDerivation rec {
];
propagatedBuildInputs = [
- qtquickcontrols qtwebkit
+ qtquickcontrols qtwebkit boost libkomparediff2
kconfig kdeclarative kdoctools kiconthemes ki18n kitemmodels kitemviews
kjobwidgets kcmutils kio knewstuff knotifyconfig kparts ktexteditor
threadweaver kxmlgui kwindowsystem grantlee plasma-framework krunner
- kdevplatform shared-mime-info libksysguard konsole kcrash karchive kguiaddons
+ shared-mime-info libksysguard konsole kcrash karchive kguiaddons kpurpose
+ ];
+
+ # https://cgit.kde.org/kdevelop.git/commit/?id=716372ae2e8dff9c51e94d33443536786e4bd85b
+ # required as nixos seems to be unable to find CLANG_BUILTIN_DIR
+ cmakeFlags = [
+ "-DCLANG_BUILTIN_DIR=${llvmPackages.clang-unwrapped}/lib/clang/${(builtins.parseDrvName llvmPackages.clang.name).version}/include"
];
+ postPatch = ''
+ # FIXME: temporary until https://invent.kde.org/kde/kdevelop/merge_requests/8 is merged
+ substituteInPlace kdevplatform/language/backgroundparser/parsejob.cpp --replace \
+ 'if (internalFilePath.startsWith(dataPath.canonicalPath() + QStringLiteral("/kdev"))) {' \
+ 'if (internalFilePath.startsWith(dataPath.canonicalPath() + QStringLiteral("/kdev")) || localFile.startsWith(path + QStringLiteral("/kdev"))) {'
+ '';
+
postInstall = ''
# The kdevelop! script (shell environment) needs qdbus and kioclient5 in PATH.
- wrapProgram "$out/bin/kdevelop!" --prefix PATH ":" "${lib.makeBinPath [ qttools kde-cli-tools ]}"
+ wrapProgram "$out/bin/kdevelop!" \
+ --prefix PATH ":" "${lib.makeBinPath [ qttools kde-cli-tools ]}"
+
+ wrapProgram "$out/bin/kdevelop" \
+ --prefix QT_PLUGIN_PATH : $out/lib/qt-${qtVersion}/plugins
# Fix the (now wrapped) kdevelop! to find things in right places:
- # - Make KDEV_BASEDIR point to bin directory of kdevplatform.
- kdev_fixup_sed="s|^export KDEV_BASEDIR=.*$|export KDEV_BASEDIR=${kdevplatform}/bin|"
# - Fixup the one use where KDEV_BASEDIR is assumed to contain kdevelop.
kdev_fixup_sed+=";s|\\\$KDEV_BASEDIR/kdevelop|$out/bin/kdevelop|"
sed -E -i "$kdev_fixup_sed" "$out/bin/.kdevelop!-wrapped"
diff --git a/pkgs/applications/editors/kdevelop5/kdevplatform.nix b/pkgs/applications/editors/kdevelop5/kdevplatform.nix
deleted file mode 100644
index 88164c2c4585176986c747255a2e74d1b0e9e2e0..0000000000000000000000000000000000000000
--- a/pkgs/applications/editors/kdevelop5/kdevplatform.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ stdenv, fetchurl, cmake, gettext, pkgconfig, extra-cmake-modules
-, boost, subversion, apr, aprutil, kwindowsystem
-, qtscript, qtwebkit, grantlee, karchive, kconfig, kcoreaddons, kguiaddons, kiconthemes, ki18n
-, kitemmodels, kitemviews, kio, kparts, sonnet, kcmutils, knewstuff, knotifications
-, knotifyconfig, ktexteditor, threadweaver, kdeclarative, libkomparediff2 }:
-
-let
- pname = "kdevplatform";
- version = "5.1.2";
-
-in
-stdenv.mkDerivation rec {
- name = "${pname}-${version}";
-
- src = fetchurl {
- url = "mirror://kde/stable/kdevelop/${version}/src/${name}.tar.xz";
- sha256 = "e622ddad552a678baaf1166d5cbdc5fd1192d2324300c52ef2d25f1c6778664a";
- };
-
- nativeBuildInputs = [ cmake gettext pkgconfig extra-cmake-modules ];
-
- buildInputs = [
- boost subversion apr aprutil kwindowsystem
- qtscript qtwebkit grantlee karchive kconfig kcoreaddons kguiaddons kiconthemes
- ki18n kitemmodels kitemviews kio kparts sonnet kcmutils knewstuff
- knotifications knotifyconfig ktexteditor threadweaver kdeclarative
- libkomparediff2
- ];
-
- enableParallelBuilding = true;
-
- meta = with stdenv.lib; {
- maintainers = [ maintainers.ambrop72 ];
- platforms = platforms.linux;
- description = "KDE libraries for IDE-like programs";
- longDescription = ''
- A free, opensource set of libraries that can be used as a foundation for
- IDE-like programs. It is programing-language independent, and is planned
- to be used by programs like: KDevelop, Quanta, Kile, KTechLab ... etc."
- '';
- homepage = https://www.kdevelop.org;
- license = with stdenv.lib.licenses; [ gpl2Plus lgpl2Plus ];
- };
-}
diff --git a/pkgs/applications/editors/kdevelop5/wrapper.nix b/pkgs/applications/editors/kdevelop5/wrapper.nix
new file mode 100644
index 0000000000000000000000000000000000000000..86d3de9eb39a945f323e612bb13ac628fe7e7696
--- /dev/null
+++ b/pkgs/applications/editors/kdevelop5/wrapper.nix
@@ -0,0 +1,7 @@
+{ symlinkJoin, kdevelop-unwrapped, plugins ? null }:
+
+symlinkJoin {
+ name = "kdevelop-with-plugins";
+
+ paths = [ kdevelop-unwrapped ] ++ (if plugins != null then plugins else []);
+}
diff --git a/pkgs/applications/editors/kile/default.nix b/pkgs/applications/editors/kile/default.nix
index 259c319c70ff4f6cbacaed2c479c26a33dfc3954..494ad686ee3bbc9a94c27b0829404842962b4d57 100644
--- a/pkgs/applications/editors/kile/default.nix
+++ b/pkgs/applications/editors/kile/default.nix
@@ -1,6 +1,6 @@
{ mkDerivation
, lib
-, fetchgit
+, fetchurl
, extra-cmake-modules
, kdoctools
, wrapGAppsHook
@@ -22,13 +22,11 @@
}:
mkDerivation rec {
- name = "kile-${version}";
- version = "2017-02-09";
+ name = "kile-2.9.92";
- src = fetchgit {
- url = git://anongit.kde.org/kile.git;
- rev = "f77f6e627487c152f111e307ad6dc71699ade746";
- sha256 = "0wpqaix9ssa28cm7qqjj0zfrscjgk8s3kmi5b4kk8h583gsrikib";
+ src = fetchurl {
+ url = "mirror://sourceforge/kile/${name}.tar.bz2";
+ sha256 = "177372dc25b1d109e037a7dbfc64b5dab2efe538320c87f4a8ceada21e9097f2";
};
diff --git a/pkgs/applications/editors/kodestudio/default.nix b/pkgs/applications/editors/kodestudio/default.nix
index 4e22e032e357ffe8e2bd65e6e1dadeecae8cd85c..b212773712c2170da6f39123fc0f54cfaf7ec331 100644
--- a/pkgs/applications/editors/kodestudio/default.nix
+++ b/pkgs/applications/editors/kodestudio/default.nix
@@ -8,15 +8,15 @@ let
version = "17.1";
- sha256 = if stdenv.system == "x86_64-linux" then "1kddisnvlk48jip6k59mw3wlkrl7rkck2lxpaghn0gfx02cvms5f"
- else if stdenv.system == "i686-cygwin" then "1izp42afrlh4yd322ax9w85ki388gnkqfqbw8dwnn4k3j7r5487z"
- else throw "Unsupported system: ${stdenv.system}";
+ sha256 = if stdenv.hostPlatform.system == "x86_64-linux" then "1kddisnvlk48jip6k59mw3wlkrl7rkck2lxpaghn0gfx02cvms5f"
+ else if stdenv.hostPlatform.system == "i686-cygwin" then "1izp42afrlh4yd322ax9w85ki388gnkqfqbw8dwnn4k3j7r5487z"
+ else throw "Unsupported system: ${stdenv.hostPlatform.system}";
urlBase = "https://github.com/Kode/KodeStudio/releases/download/v${version}/KodeStudio-";
- urlStr = if stdenv.system == "x86_64-linux" then urlBase + "linux64.tar.gz"
- else if stdenv.system == "i686-cygwin" then urlBase + "win32.zip"
- else throw "Unsupported system: ${stdenv.system}";
+ urlStr = if stdenv.hostPlatform.system == "x86_64-linux" then urlBase + "linux64.tar.gz"
+ else if stdenv.hostPlatform.system == "i686-cygwin" then urlBase + "win32.zip"
+ else throw "Unsupported system: ${stdenv.hostPlatform.system}";
in
@@ -47,7 +47,7 @@ in
cp -r ./* $out
'';
- postFixup = lib.optionalString (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") ''
+ postFixup = lib.optionalString (stdenv.hostPlatform.system == "i686-linux" || stdenv.hostPlatform.system == "x86_64-linux") ''
# Patch Binaries
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
diff --git a/pkgs/applications/editors/leafpad/default.nix b/pkgs/applications/editors/leafpad/default.nix
index dd3fb542da7c404ca4de4396b4541a2ed96eb45b..c3b46cf61df811e2946f554d230292331cf6b093 100644
--- a/pkgs/applications/editors/leafpad/default.nix
+++ b/pkgs/applications/editors/leafpad/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
version = "0.8.18.1";
name = "leafpad-${version}";
src = fetchurl {
- url = "http://download.savannah.gnu.org/releases/leafpad/${name}.tar.gz";
+ url = "https://download.savannah.gnu.org/releases/leafpad/${name}.tar.gz";
sha256 = "0b0az2wvqgvam7w0ns1j8xp2llslm1rx6h7zcsy06a7j0yp257cm";
};
diff --git a/pkgs/applications/editors/leo-editor/default.nix b/pkgs/applications/editors/leo-editor/default.nix
index 2084a047a086ae8b461426ecdcf077bb81ea7557..a2274be463edbcdaef9da311843df65a7557ded2 100644
--- a/pkgs/applications/editors/leo-editor/default.nix
+++ b/pkgs/applications/editors/leo-editor/default.nix
@@ -1,29 +1,20 @@
-{ stdenv, python3, libsForQt56, fetchFromGitHub, makeWrapper, makeDesktopItem }:
+{ stdenv, python3, fetchFromGitHub, makeWrapper, makeDesktopItem }:
-let
- packageOverrides = self: super: {
- pyqt56 = libsForQt56.callPackage ../../../development/python-modules/pyqt/5.x.nix {
- pythonPackages = self;
- };
- };
-
- pythonPackages = (python3.override { inherit packageOverrides; }).pkgs;
-in
stdenv.mkDerivation rec {
name = "leo-editor-${version}";
- version = "5.6";
+ version = "5.7.3";
src = fetchFromGitHub {
owner = "leo-editor";
repo = "leo-editor";
rev = version;
- sha256 = "1k6q3gvaf05bi0mzkmmb1p6wrgxwri7ivn38p6f0m0wfd3f70x2j";
+ sha256 = "0ri6l6cxwva450l05af5vs1lsgrz6ciwd02njdgphs9pm1vwxbl9";
};
dontBuild = true;
nativeBuildInputs = [ makeWrapper python3 ];
- propagatedBuildInputs = with pythonPackages; [ pyqt56 docutils ];
+ propagatedBuildInputs = with python3.pkgs; [ pyqt5 docutils ];
desktopItem = makeDesktopItem rec {
name = "leo-editor";
diff --git a/pkgs/applications/editors/manuskript/default.nix b/pkgs/applications/editors/manuskript/default.nix
index 815af2103d58be17bc239468d5f65559395df198..ecbe7e8b719482a59abdfb0cd60939f934b22923 100644
--- a/pkgs/applications/editors/manuskript/default.nix
+++ b/pkgs/applications/editors/manuskript/default.nix
@@ -2,13 +2,13 @@
python3Packages.buildPythonApplication rec {
pname = "manuskript";
- version = "0.3.0";
+ version = "0.9.0";
src = fetchFromGitHub {
repo = pname;
owner = "olivierkes";
rev = version;
- sha256 = "0bqxc4a8kyi6xz1zs0dp85wxl9h4v8lzc6073bbcsn1zg4y59ys7";
+ sha256 = "13y1s0kba1ib6g977n7h920kyr7abdw03kpal512m7iwa9g2kdw8";
};
propagatedBuildInputs = [
diff --git a/pkgs/applications/editors/mg/default.nix b/pkgs/applications/editors/mg/default.nix
index d0367d7c3051dab8966d35a69600750d17efee32..4fb8d51b969288913b89c39b71517d4fb46376dc 100644
--- a/pkgs/applications/editors/mg/default.nix
+++ b/pkgs/applications/editors/mg/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, libbsd, ncurses }:
+{ stdenv, fetchurl, pkgconfig, libbsd, ncurses, buildPackages }:
stdenv.mkDerivation rec {
name = "mg-${version}";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
- makeFlags = [ "PKG_CONFIG=${pkgconfig}/bin/pkg-config" ];
+ makeFlags = [ "PKG_CONFIG=${buildPackages.pkgconfig}/bin/pkg-config" ];
installPhase = ''
install -m 555 -Dt $out/bin mg
diff --git a/pkgs/applications/editors/micro/default.nix b/pkgs/applications/editors/micro/default.nix
index f1c1e3dcac70bd91618b148051cf0fa905748a79..fab3646efdff7f9d5ec2ae1c32b67936332dcab4 100644
--- a/pkgs/applications/editors/micro/default.nix
+++ b/pkgs/applications/editors/micro/default.nix
@@ -2,7 +2,7 @@
buildGoPackage rec {
name = "micro-${version}";
- version = "1.4.0";
+ version = "1.4.1";
goPackagePath = "github.com/zyedidia/micro";
@@ -10,7 +10,7 @@ buildGoPackage rec {
owner = "zyedidia";
repo = "micro";
rev = "v${version}";
- sha256 = "0w1rmh81h28n1jlb05k89i751h498i6p883hrsjr70hvrwq5zjpb";
+ sha256 = "0m9p6smb5grdazsgr3m1x4rry9ihhlgl9ildhvfp53czrifbx0m5";
fetchSubmodules = true;
};
diff --git a/pkgs/applications/editors/mindforger/build.patch b/pkgs/applications/editors/mindforger/build.patch
new file mode 100644
index 0000000000000000000000000000000000000000..e2745cbce2d0ba44628cf74757b94ffa7135ab8b
--- /dev/null
+++ b/pkgs/applications/editors/mindforger/build.patch
@@ -0,0 +1,91 @@
+diff --git a/app/app.pro b/app/app.pro
+index 4d47065..a39a320 100644
+--- a/app/app.pro
++++ b/app/app.pro
+@@ -18,6 +18,8 @@
+ TARGET = mindforger
+ TEMPLATE = app
+
++include(../config.pri)
++
+ QT += widgets
+
+ mfner {
+@@ -297,7 +299,7 @@ RESOURCES += \
+ # See http://doc.qt.io/qt-5/qmake-advanced-usage.html
+
+ binfile.files += mindforger
+-binfile.path = /usr/bin/
++binfile.path = $$PREFIX/bin/
+ INSTALLS += binfile
+
+ # ########################################
+diff --git a/config.pri b/config.pri
+new file mode 100644
+index 0000000..ce05df1
+--- /dev/null
++++ b/config.pri
+@@ -0,0 +1,3 @@
++isEmpty(PREFIX) {
++ PREFIX = /usr
++}
+diff --git a/deps/discount/discount.pro b/deps/discount/discount.pro
+index a8dfe35..ec16468 100644
+--- a/deps/discount/discount.pro
++++ b/deps/discount/discount.pro
+@@ -5,6 +5,8 @@
+ # Webpage: http://www.pell.portland.or.us/~orc/Code/discount/
+ #
+
++include(../../config.pri)
++
+ QT -= core gui
+
+ TARGET = discount
+@@ -46,7 +48,7 @@ unix:!symbian {
+ maemo5 {
+ target.path = /opt/usr/lib
+ } else {
+- target.path = /usr/lib
++ target.path = $$PREFIX/lib
+ }
+ INSTALLS += target
+ }
+diff --git a/mindforger.pro b/mindforger.pro
+index ae627f2..0953856 100644
+--- a/mindforger.pro
++++ b/mindforger.pro
+@@ -32,6 +32,8 @@ TEMPLATE = subdirs
+
+ SUBDIRS = deps lib app
+
++include(config.pri)
++
+ # build dependencies
+ lib.depends = deps
+ app.depends = lib
+@@ -44,20 +46,20 @@ app.depends = lib
+ #IMPORTANT: binfile MUST be specified in app/app.pro (project next to/that builds binary)
+
+ docfiles.files += doc/*
+-docfiles.path = /usr/share/doc/mindforger/
++docfiles.path = $$PREFIX/share/doc/mindforger/
+ INSTALLS += docfiles
+
+ manfiles.files += man/*
+-manfiles.path = /usr/share/man/man1/
++manfiles.path = $$PREFIX/share/man/man1/
+ INSTALLS += manfiles
+
+ iconfiles.files += app/resources/icons/*
+-iconfiles.path = /usr/share/icons/mindforger/
++iconfiles.path = $$PREFIX/share/icons/mindforger/
+ INSTALLS += iconfiles
+
+ # experiment w/ file
+ shortcutfiles.files += app/resources/gnome-shell/mindforger.desktop
+-shortcutfiles.path = /usr/share/applications/
++shortcutfiles.path = $$PREFIX/share/applications/
+ INSTALLS += shortcutfiles
+
+ # eof
diff --git a/pkgs/applications/editors/mindforger/default.nix b/pkgs/applications/editors/mindforger/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..a027242c5eefc7d0b35883a9120da18cab255547
--- /dev/null
+++ b/pkgs/applications/editors/mindforger/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchurl, qmake, qtbase, qtwebkit }:
+
+stdenv.mkDerivation rec {
+ name = "mindforger-${version}";
+ version = "1.48.2";
+
+ src = fetchurl {
+ url = "https://github.com/dvorka/mindforger/releases/download/1.48.0/mindforger_${version}.tgz";
+ sha256 = "1wlrl8hpjcpnq098l3n2d1gbhbjylaj4z366zvssqvmafr72iyw4";
+ };
+
+ nativeBuildInputs = [ qmake ] ;
+ buildInputs = [ qtbase qtwebkit ] ;
+
+ doCheck = true;
+
+ enableParallelBuilding = true ;
+
+ patches = [ ./build.patch ] ;
+
+ postPatch = ''
+ substituteInPlace deps/discount/version.c.in --subst-var-by TABSTOP 4
+ substituteInPlace app/resources/gnome-shell/mindforger.desktop --replace /usr "$out"
+ '';
+
+ preConfigure = ''
+ export AC_PATH="$PATH"
+ pushd deps/discount
+ ./configure.sh
+ popd
+ '';
+
+ qmakeFlags = [ "-r mindforger.pro" "CONFIG+=mfnoccache" ] ;
+
+ meta = with stdenv.lib; {
+ description = "Thinking Notebook & Markdown IDE";
+ longDescription = ''
+ MindForger is actually more than an editor or IDE - it's human
+ mind inspired personal knowledge management tool
+ '';
+ homepage = https://www.mindforger.com;
+ license = licenses.gpl2Plus;
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/applications/editors/moe/default.nix b/pkgs/applications/editors/moe/default.nix
index 764877a11cb34fa03b2600ea1c5087b60e949476..3f7eba73ca49b3e2808999ea9b781d499058d421 100644
--- a/pkgs/applications/editors/moe/default.nix
+++ b/pkgs/applications/editors/moe/default.nix
@@ -6,11 +6,11 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "moe-${version}";
- version = "1.9";
+ version = "1.10";
src = fetchurl {
url = "mirror://gnu/moe/${name}.tar.lz";
- sha256 = "1wsfzy0iia0c89wnx1ilzw54wqcmlp2nz8mkpvc393z0zagrx48q";
+ sha256 = "0fymywdiy9xqppcmvgs7mf7d3gfrky3jp5jkxs2l3v93asml9zcc";
};
prePatch = ''
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
completion, directory browser, duplicate removal from prompt histories,
delimiter matching, text conversion from/to UTF-8, romanization, etc.
'';
- homepage = http://www.gnu.org/software/moe/;
+ homepage = https://www.gnu.org/software/moe/;
license = licenses.gpl2Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.unix;
diff --git a/pkgs/applications/editors/monodevelop/default.nix b/pkgs/applications/editors/monodevelop/default.nix
index 69e102f207750f03ecf421543e34fa97a3807404..c2917aa394f9264505b3f1063cf8e7778f34c0dd 100644
--- a/pkgs/applications/editors/monodevelop/default.nix
+++ b/pkgs/applications/editors/monodevelop/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
};
nunit2510 = fetchurl {
- url = "http://launchpad.net/nunitv2/2.5/2.5.10/+download/NUnit-2.5.10.11092.zip";
+ url = "https://launchpad.net/nunitv2/2.5/2.5.10/+download/NUnit-2.5.10.11092.zip";
sha256 = "0k5h5bz1p2v3d0w0hpkpbpvdkcszgp8sr9ik498r1bs72w5qlwnc";
};
@@ -76,5 +76,6 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
platforms = platforms.linux;
maintainers = with maintainers; [ obadz ];
+ broken = true; # 2018-09-21, build has failed since 2018-03-08
};
}
diff --git a/pkgs/applications/editors/music/tuxguitar/default.nix b/pkgs/applications/editors/music/tuxguitar/default.nix
index f305db1abb8fd8830ceda23ab6a386512d5b2a84..1b1c6eaf9e543064345e91120f4800b33a1c3ea1 100644
--- a/pkgs/applications/editors/music/tuxguitar/default.nix
+++ b/pkgs/applications/editors/music/tuxguitar/default.nix
@@ -1,7 +1,7 @@
{ stdenv, fetchurl, swt, jdk, makeWrapper, alsaLib }:
-let metadata = assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
- if stdenv.system == "i686-linux" then
+let metadata = assert stdenv.hostPlatform.system == "i686-linux" || stdenv.hostPlatform.system == "x86_64-linux";
+ if stdenv.hostPlatform.system == "i686-linux" then
{ arch = "x86"; sha256 = "1qmb51k0538pn7gv4nsvhfv33xik4l4af0qmpllkzrikmj8wvzlb"; }
else
{ arch = "x86_64"; sha256 = "12af47jhlrh9aq5b3d13l7cdhlndgnfpy61gz002hajbq7i00ixh"; };
diff --git a/pkgs/applications/editors/nano/default.nix b/pkgs/applications/editors/nano/default.nix
index 86134687ba31c3c7bab073f5221023d1bb27e428..6bbdaf77a69bbe43ee51bd6a3f132bdf80144053 100644
--- a/pkgs/applications/editors/nano/default.nix
+++ b/pkgs/applications/editors/nano/default.nix
@@ -14,17 +14,17 @@ let
nixSyntaxHighlight = fetchFromGitHub {
owner = "seitz";
repo = "nanonix";
- rev = "17e0de65e1cbba3d6baa82deaefa853b41f5c161";
- sha256 = "1g51h65i31andfs2fbp1v3vih9405iknqn11fzywjxji00kjqv5s";
+ rev = "bf8d898efaa10dce3f7972ff765b58c353b4b4ab";
+ sha256 = "0773s5iz8aw9npgyasb0r2ybp6gvy2s9sq51az8w7h52bzn5blnn";
};
in stdenv.mkDerivation rec {
name = "nano-${version}";
- version = "2.9.8";
+ version = "3.2";
src = fetchurl {
url = "mirror://gnu/nano/${name}.tar.xz";
- sha256 = "122lm0z97wk3mgnbn8m4d769d4j9rxyc9z7s89xd4gsdp8qsrpn2";
+ sha256 = "0jb3zq0v84xb0chyynkcp2jhs9660wmpkic294p4p6c96npp69yi";
};
nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;
@@ -49,7 +49,6 @@ in stdenv.mkDerivation rec {
description = "A small, user-friendly console text editor";
license = licenses.gpl3Plus;
maintainers = with maintainers; [
- jgeerds
joachifm
];
platforms = platforms.all;
diff --git a/pkgs/applications/editors/nano/nanorc/default.nix b/pkgs/applications/editors/nano/nanorc/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..fb30036e146f191573abd9072cb8ffbc45aeab39
--- /dev/null
+++ b/pkgs/applications/editors/nano/nanorc/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+ name = "nanorc-${version}";
+ version = "2018-09-05";
+
+ src = fetchFromGitHub {
+ owner = "scopatz";
+ repo = "nanorc";
+ rev = "1e589cb729d24fba470228d429e6dde07973d597";
+ sha256 = "136yxr38lzrfv8bar0c6c56rh54q9s94zpwa19f425crh44drppl";
+ };
+
+ dontBuild = true;
+
+ installPhase = ''
+ mkdir -p $out/share
+
+ install *.nanorc $out/share/
+ '';
+
+ meta = {
+ description = "Improved Nano Syntax Highlighting Files";
+ homepage = https://github.com/scopatz/nanorc;
+ license = stdenv.lib.licenses.gpl3;
+ maintainers = with stdenv.lib.maintainers; [ nequissimus ];
+ platforms = stdenv.lib.platforms.all;
+ };
+}
diff --git a/pkgs/applications/editors/ne/default.nix b/pkgs/applications/editors/ne/default.nix
index a24fb90ed9c7e75aa7f12400f9d4694110e622f4..9bc6425bc411c77498f8fd85e6445622fb5d4a14 100644
--- a/pkgs/applications/editors/ne/default.nix
+++ b/pkgs/applications/editors/ne/default.nix
@@ -3,12 +3,12 @@
stdenv.mkDerivation rec {
name = "ne-${version}";
- version = "3.1.1";
+ version = "3.1.2";
src = fetchFromGitHub {
owner = "vigna";
repo = "ne";
rev = version;
- sha256 = "1i4vk5r2wn4cd6sgsidzqs9s3bmb4j9cn4392izkidi0j9mm3hvg";
+ sha256 = "154grh9gdzydnqn9xxj7zpia9cc5x6a7y1g73vwizr9bkg92l5cc";
};
buildInputs = [ ncurses texlive.combined.scheme-medium texinfo perl ghostscript ];
dontBuild = true;
diff --git a/pkgs/applications/editors/neovim/default.nix b/pkgs/applications/editors/neovim/default.nix
index 6690e4c9c1b97579147679d6f5e3478915279d10..ee7a79517850c24ef78833d5440fe3fa73edd54d 100644
--- a/pkgs/applications/editors/neovim/default.nix
+++ b/pkgs/applications/editors/neovim/default.nix
@@ -1,25 +1,42 @@
{ stdenv, fetchFromGitHub, cmake, gettext, msgpack, libtermkey, libiconv
-, libuv, luaPackages, ncurses, pkgconfig
+, libuv, lua, ncurses, pkgconfig
, unibilium, xsel, gperf
, libvterm-neovim
, withJemalloc ? true, jemalloc
+, glibcLocales ? null, procps ? null
+
+# now defaults to false because some tests can be flaky (clipboard etc)
+, doCheck ? false
}:
with stdenv.lib;
let
-
- neovim = stdenv.mkDerivation rec {
+ neovimLuaEnv = lua.withPackages(ps:
+ (with ps; [ mpack lpeg luabitop ]
+ ++ optionals doCheck [
+ nvim-client luv coxpcall busted luafilesystem penlight inspect
+ ]
+ ));
+in
+ stdenv.mkDerivation rec {
name = "neovim-unwrapped-${version}";
- version = "0.3.1";
+ version = "0.3.4";
src = fetchFromGitHub {
owner = "neovim";
repo = "neovim";
rev = "v${version}";
- sha256 = "19jy9nr2ffscli6wsysqkdvqvh7sgkkwhzkw3yypfrvg4pj9rl56";
+ sha256 = "07ncvgp6xfhiwc6hd7qf7zk28n3yj47p26qj1ji29vqkwnk28y3s";
};
+ patches = [
+ # introduce a system-wide rplugin.vim in addition to the user one
+ # necessary so that nix can handle `UpdateRemotePlugins` for the plugins
+ # it installs. See https://github.com/neovim/neovim/issues/9413.
+ ./system_rplugin_manifest.patch
+ ];
+
enableParallelBuilding = true;
buildInputs = [
@@ -29,11 +46,20 @@ let
ncurses
libvterm-neovim
unibilium
- luaPackages.lua
gperf
+ neovimLuaEnv
] ++ optional withJemalloc jemalloc
++ optional stdenv.isDarwin libiconv
- ++ lualibs;
+ ++ optionals doCheck [ glibcLocales procps ]
+ ;
+
+ inherit doCheck;
+
+ # to be exhaustive, one could run
+ # make oldtests too
+ checkPhase = ''
+ make functionaltest
+ '';
nativeBuildInputs = [
cmake
@@ -41,15 +67,20 @@ let
pkgconfig
];
- LUA_PATH = stdenv.lib.concatStringsSep ";" (map luaPackages.getLuaPath lualibs);
- LUA_CPATH = stdenv.lib.concatStringsSep ";" (map luaPackages.getLuaCPath lualibs);
- lualibs = [ luaPackages.mpack luaPackages.lpeg luaPackages.luabitop ];
+ # nvim --version output retains compilation flags and references to build tools
+ postPatch = ''
+ substituteInPlace src/nvim/version.c --replace NVIM_VERSION_CFLAGS "";
+ '';
+ # check that the above patching actually works
+ disallowedReferences = [ stdenv.cc ];
cmakeFlags = [
- "-DLUA_PRG=${luaPackages.lua}/bin/lua"
+ "-DLUA_PRG=${neovimLuaEnv}/bin/lua"
"-DGPERF_PRG=${gperf}/bin/gperf"
- ];
+ ]
+ ++ optional doCheck "-DBUSTED_PRG=${neovimLuaEnv}/bin/busted"
+ ;
# triggers on buffer overflow bug while running tests
hardeningDisable = [ "fortify" ];
@@ -67,6 +98,11 @@ let
$out/bin/nvim
'';
+ # export PATH=$PWD/build/bin:${PATH}
+ shellHook=''
+ export VIMRUNTIME=$PWD/runtime
+ '';
+
meta = {
description = "Vim text editor fork focused on extensibility and agility";
longDescription = ''
@@ -86,8 +122,8 @@ let
license = with licenses; [ asl20 vim ];
maintainers = with maintainers; [ manveru garbas rvolosatovs ];
platforms = platforms.unix;
+ # `lua: bad light userdata pointer`
+ # https://nix-cache.s3.amazonaws.com/log/9ahcb52905d9d417zsskjpc331iailpq-neovim-unwrapped-0.2.2.drv
+ broken = stdenv.isAarch64;
};
- };
-
-in
- neovim
+ }
diff --git a/pkgs/applications/editors/neovim/neovim-remote.nix b/pkgs/applications/editors/neovim/neovim-remote.nix
index b0c834934f9c4fb7e36913cfb1e03b5624a18917..52888c5f85d5f30ff41aad167abdbefe30d35e46 100644
--- a/pkgs/applications/editors/neovim/neovim-remote.nix
+++ b/pkgs/applications/editors/neovim/neovim-remote.nix
@@ -2,19 +2,19 @@
with stdenv.lib;
-pythonPackages.buildPythonPackage rec {
+pythonPackages.buildPythonApplication rec {
pname = "neovim-remote";
- version = "2.0.5";
+ version = "2.1.7";
disabled = !pythonPackages.isPy3k;
src = fetchFromGitHub {
owner = "mhinz";
repo = "neovim-remote";
rev = "v${version}";
- sha256 = "08qsi61ba5d69ca77layypzvi7nalx4niy97xn4w88jibnbmbrxw";
+ sha256 = "014c8xvb7shy00vjx0b1k8zr7iknxskqab1aqvz9md3bn5rwkxm5";
};
- propagatedBuildInputs = with pythonPackages; [ neovim psutil ];
+ propagatedBuildInputs = with pythonPackages; [ pynvim psutil ];
meta = {
description = "A tool that helps controlling nvim processes from a terminal";
diff --git a/pkgs/applications/editors/neovim/qt.nix b/pkgs/applications/editors/neovim/qt.nix
index d17d5c1e85df02b776e9a13ccddc57af8ea84601..3004bf544c42c8897aabb02b3a895b8994351779 100644
--- a/pkgs/applications/editors/neovim/qt.nix
+++ b/pkgs/applications/editors/neovim/qt.nix
@@ -1,62 +1,78 @@
{ stdenv, fetchFromGitHub, cmake, doxygen, makeWrapper
, msgpack, neovim, pythonPackages, qtbase }:
-stdenv.mkDerivation rec {
- name = "neovim-qt-${version}";
- version = "0.2.8";
-
- src = fetchFromGitHub {
- owner = "equalsraf";
- repo = "neovim-qt";
- rev = "v${version}";
- sha256 = "190yg6kkw953h8wajlqr2hvs2fz65y6z0blmywlg1nff724allaq";
- };
+let
+ unwrapped = stdenv.mkDerivation rec {
+ pname = "neovim-qt-unwrapped";
+ version = "0.2.11";
+
+ src = fetchFromGitHub {
+ owner = "equalsraf";
+ repo = "neovim-qt";
+ rev = "v${version}";
+ sha256 = "0pc1adxc89p2rdvb6nxyqr9sjzqz9zw2dg7a4ardxsl3a8jga1wh";
+ };
+
+ cmakeFlags = [
+ "-DUSE_SYSTEM_MSGPACK=1"
+ ];
+
+ buildInputs = [
+ neovim.unwrapped # only used to generate help tags at build time
+ qtbase
+ ] ++ (with pythonPackages; [
+ jinja2 python msgpack
+ ]);
+
+ nativeBuildInputs = [ cmake doxygen makeWrapper ];
+
+ enableParallelBuilding = true;
+
+ preCheck = ''
+ # The GUI tests require a running X server, disable them
+ sed -i ../test/CMakeLists.txt \
+ -e '/^add_xtest_gui/d'
+ '';
- cmakeFlags = [
- "-DUSE_SYSTEM_MSGPACK=1"
- ];
-
- buildInputs = with pythonPackages; [
- neovim qtbase msgpack
- ] ++ (with pythonPackages; [
- jinja2 msgpack python
- ]);
-
- nativeBuildInputs = [ cmake doxygen makeWrapper ];
-
- enableParallelBuilding = true;
-
- preConfigure = ''
- # we rip out a number of tests that fail in the build env
- # the GUI tests will never work but the others should - they did before neovim 0.2.0
- # was released
- sed -i test/CMakeLists.txt \
- -e '/^add_xtest_gui/d' \
- -e '/tst_neovimobject/d' \
- -e '/tst_neovimconnector/d' \
- -e '/tst_callallmethods/d' \
- -e '/tst_encoding/d'
- '';
-
- doCheck = true;
-
- postInstall = if stdenv.isDarwin then ''
- mkdir -p $out/Applications
- mv $out/bin/nvim-qt.app $out/Applications
- rmdir $out/bin || :
-
- wrapProgram "$out/Applications/nvim-qt.app/Contents/MacOS/nvim-qt" \
- --prefix PATH : "${neovim}/bin"
- '' else ''
- wrapProgram "$out/bin/nvim-qt" \
- --prefix PATH : "${neovim}/bin"
- '';
-
- meta = with stdenv.lib; {
- description = "Neovim client library and GUI, in Qt5";
- license = licenses.isc;
- maintainers = with maintainers; [ peterhoeg ];
- inherit (neovim.meta) platforms;
- inherit version;
+ doCheck = true;
+
+ meta = with stdenv.lib; {
+ description = "Neovim client library and GUI, in Qt5";
+ license = licenses.isc;
+ maintainers = with maintainers; [ peterhoeg ];
+ inherit (neovim.meta) platforms;
+ inherit version;
+ };
};
-}
+in
+ stdenv.mkDerivation {
+ pname = "neovim-qt";
+ version = unwrapped.version;
+ buildCommand = if stdenv.isDarwin then ''
+ mkdir -p $out/Applications
+ cp -r ${unwrapped}/bin/nvim-qt.app $out/Applications
+
+ chmod -R a+w "$out/Applications/nvim-qt.app/Contents/MacOS"
+ wrapProgram "$out/Applications/nvim-qt.app/Contents/MacOS/nvim-qt" \
+ --prefix PATH : "${neovim}/bin"
+ '' else ''
+ makeWrapper '${unwrapped}/bin/nvim-qt' "$out/bin/nvim-qt" \
+ --prefix PATH : "${neovim}/bin"
+
+ # link .desktop file
+ mkdir -p "$out/share"
+ ln -s '${unwrapped}/share/applications' "$out/share/applications"
+ '';
+
+ preferLocalBuild = true;
+
+ nativeBuildInputs = [
+ makeWrapper
+ ];
+
+ passthru = {
+ inherit unwrapped;
+ };
+
+ inherit (unwrapped) meta;
+ }
diff --git a/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock b/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock
index a95ced76371d40c7095e0ee2e79a9d8f2a18830d..6a3f581c4e8121c2b5a873aed8bde767492819bd 100644
--- a/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock
+++ b/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock
@@ -1,10 +1,10 @@
GEM
remote: https://rubygems.org/
specs:
- msgpack (1.2.4)
+ msgpack (1.2.6)
multi_json (1.13.1)
- neovim (0.7.0)
- msgpack (~> 1.0)
+ neovim (0.8.0)
+ msgpack (~> 1.1)
multi_json (~> 1.0)
PLATFORMS
@@ -14,4 +14,4 @@ DEPENDENCIES
neovim
BUNDLED WITH
- 1.14.6
+ 1.17.2
diff --git a/pkgs/applications/editors/neovim/ruby_provider/gemset.nix b/pkgs/applications/editors/neovim/ruby_provider/gemset.nix
index af887161ea6cff33273614d2b81a079f32b6e704..28a53cc590f6dc9eb9e1b028273232c29b78a67f 100644
--- a/pkgs/applications/editors/neovim/ruby_provider/gemset.nix
+++ b/pkgs/applications/editors/neovim/ruby_provider/gemset.nix
@@ -2,10 +2,10 @@
msgpack = {
source = {
remotes = ["https://rubygems.org"];
- sha256 = "09xy1wc4wfbd1jdrzgxwmqjzfdfxbz0cqdszq2gv6rmc3gv1c864";
+ sha256 = "0031gd2mjyba6jb7m97sqa149zjkr0vzn2s2gpb3m9nb67gqkm13";
type = "gem";
};
- version = "1.2.4";
+ version = "1.2.6";
};
multi_json = {
source = {
@@ -19,9 +19,9 @@
dependencies = ["msgpack" "multi_json"];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0b487dzz41im8cwzvfjqgf8kkrp6mpkvcbzhazrmqqw8gxyvfbq4";
+ sha256 = "07scrdfk7pyn5jgx5m2yajdqpbdv42833vbw568qqag6xp99j3yk";
type = "gem";
};
- version = "0.7.0";
+ version = "0.8.0";
};
}
diff --git a/pkgs/applications/editors/neovim/system_rplugin_manifest.patch b/pkgs/applications/editors/neovim/system_rplugin_manifest.patch
new file mode 100644
index 0000000000000000000000000000000000000000..f634d3ec056a20fab83fff374d05113d8c4e638e
--- /dev/null
+++ b/pkgs/applications/editors/neovim/system_rplugin_manifest.patch
@@ -0,0 +1,29 @@
+diff --git a/runtime/autoload/remote/host.vim b/runtime/autoload/remote/host.vim
+index 6266b312b..965fabf1e 100644
+--- a/runtime/autoload/remote/host.vim
++++ b/runtime/autoload/remote/host.vim
+@@ -71,7 +71,8 @@ function! remote#host#RegisterPlugin(host, path, specs) abort
+
+ for plugin in plugins
+ if plugin.path == a:path
+- throw 'Plugin "'.a:path.'" is already registered'
++ " plugin already registered
++ return
+ endif
+ endfor
+
+diff --git a/runtime/plugin/rplugin.vim b/runtime/plugin/rplugin.vim
+index 122d8d47f..83fbf8b57 100644
+--- a/runtime/plugin/rplugin.vim
++++ b/runtime/plugin/rplugin.vim
+@@ -54,6 +54,10 @@ function! s:GetManifest() abort
+ endfunction
+
+ function! s:LoadRemotePlugins() abort
++ if exists('$NVIM_SYSTEM_RPLUGIN_MANIFEST')
++ let g:system_remote_plugins = fnamemodify($NVIM_SYSTEM_RPLUGIN_MANIFEST, ':p')
++ execute 'source' fnameescape(g:system_remote_plugins)
++ endif
+ let g:loaded_remote_plugins = s:GetManifest()
+ if filereadable(g:loaded_remote_plugins)
+ execute 'source' fnameescape(g:loaded_remote_plugins)
diff --git a/pkgs/applications/editors/neovim/wrapper.nix b/pkgs/applications/editors/neovim/wrapper.nix
index fa0603255599418cfd5ec3bba1147ff428cbf5f7..7d76bc1fd1a0c37ed0279243e6b9683950032ac0 100644
--- a/pkgs/applications/editors/neovim/wrapper.nix
+++ b/pkgs/applications/editors/neovim/wrapper.nix
@@ -1,6 +1,8 @@
{ stdenv, lib, makeWrapper
, vimUtils
, bundlerEnv, ruby
+, nodejs
+, nodePackages
, pythonPackages
, python3Packages
}:
@@ -10,13 +12,13 @@ neovim:
let
wrapper = {
- withPython ? true, extraPythonPackages ? []
- , withPython3 ? true, extraPython3Packages ? []
+ withPython ? true, extraPythonPackages ? (_: []) /* the function you would have passed to python.withPackages */
+ , withPython3 ? true, extraPython3Packages ? (_: []) /* the function you would have passed to python.withPackages */
+ , withNodeJs? false
, withRuby ? true
- , withPyGUI ? false
, vimAlias ? false
, viAlias ? false
- , configure ? null
+ , configure ? {}
}:
let
@@ -28,25 +30,29 @@ let
'';
};
- pluginPythonPackages = if configure == null then [] else builtins.concatLists
- (map ({ pythonDependencies ? [], ...}: pythonDependencies)
- (vimUtils.requiredPlugins configure));
- pythonEnv = pythonPackages.python.buildEnv.override {
- extraLibs = (
- if withPyGUI
- then [ pythonPackages.neovim_gui ]
- else [ pythonPackages.neovim ]
- ) ++ extraPythonPackages ++ pluginPythonPackages;
- ignoreCollisions = true;
- };
+ /* for compatibility with passing extraPythonPackages as a list; added 2018-07-11 */
+ compatFun = funOrList: (if builtins.isList funOrList then
+ (_: lib.warn "passing a list as extraPythonPackages to the neovim wrapper is deprecated, pass a function as to python.withPackages instead" funOrList)
+ else funOrList);
+ extraPythonPackagesFun = compatFun extraPythonPackages;
+ extraPython3PackagesFun = compatFun extraPython3Packages;
- pluginPython3Packages = if configure == null then [] else builtins.concatLists
- (map ({ python3Dependencies ? [], ...}: python3Dependencies)
- (vimUtils.requiredPlugins configure));
- python3Env = python3Packages.python.buildEnv.override {
- extraLibs = [ python3Packages.neovim ] ++ extraPython3Packages ++ pluginPython3Packages;
- ignoreCollisions = true;
- };
+ requiredPlugins = vimUtils.requiredPlugins configure;
+ getDeps = attrname: map (plugin: plugin.${attrname} or (_:[]));
+
+ pluginPythonPackages = getDeps "pythonDependencies" requiredPlugins;
+ pythonEnv = pythonPackages.python.withPackages(ps:
+ [ ps.pynvim ]
+ ++ (extraPythonPackagesFun ps)
+ ++ (concatMap (f: f ps) pluginPythonPackages));
+
+ pluginPython3Packages = getDeps "python3Dependencies" requiredPlugins;
+ python3Env = python3Packages.python.withPackages (ps:
+ [ ps.pynvim ]
+ ++ (extraPython3PackagesFun ps)
+ ++ (concatMap (f: f ps) pluginPython3Packages));
+
+ binPath = makeBinPath (optionals withRuby [rubyEnv] ++ optionals withNodeJs [nodejs]);
in
stdenv.mkDerivation {
@@ -60,12 +66,12 @@ let
makeWrapper "$(readlink -v --canonicalize-existing "${bin}")" \
"$out/bin/nvim" --add-flags " \
+ --cmd \"${if withNodeJs then "let g:node_host_prog='${nodePackages.neovim}/bin/neovim-node-host'" else "let g:loaded_node_provider=1"}\" \
--cmd \"${if withPython then "let g:python_host_prog='$out/bin/nvim-python'" else "let g:loaded_python_provider = 1"}\" \
--cmd \"${if withPython3 then "let g:python3_host_prog='$out/bin/nvim-python3'" else "let g:loaded_python3_provider = 1"}\" \
--cmd \"${if withRuby then "let g:ruby_host_prog='$out/bin/nvim-ruby'" else "let g:loaded_ruby_provider=1"}\" " \
- --unset PYTHONPATH \
- ${optionalString withRuby '' --suffix PATH : ${rubyEnv}/bin --set GEM_HOME ${rubyEnv}/${rubyEnv.ruby.gemPath}'' }
-
+ --suffix PATH : ${binPath} \
+ ${optionalString withRuby '' --set GEM_HOME ${rubyEnv}/${rubyEnv.ruby.gemPath}'' }
''
+ optionalString (!stdenv.isDarwin) ''
# copy and patch the original neovim.desktop file
@@ -75,23 +81,40 @@ let
--replace 'Name=Neovim' 'Name=WrappedNeovim'
''
+ optionalString withPython ''
- ln -s ${pythonEnv}/bin/python $out/bin/nvim-python
- '' + optionalString withPython3 ''
- ln -s ${python3Env}/bin/python3 $out/bin/nvim-python3
- '' + optionalString withRuby ''
- ln -s ${rubyEnv}/bin/neovim-ruby-host $out/bin/nvim-ruby
- ''
- + optionalString withPyGUI ''
- makeWrapper "${pythonEnv}/bin/pynvim" "$out/bin/pynvim" \
- --prefix PATH : "$out/bin"
- '' + optionalString vimAlias ''
- ln -s $out/bin/nvim $out/bin/vim
- '' + optionalString viAlias ''
- ln -s $out/bin/nvim $out/bin/vi
- '' + optionalString (configure != null) ''
- wrapProgram $out/bin/nvim --add-flags "-u ${vimUtils.vimrcFile configure}"
- ''
- ;
+ makeWrapper ${pythonEnv}/bin/python $out/bin/nvim-python --unset PYTHONPATH
+ '' + optionalString withPython3 ''
+ makeWrapper ${python3Env}/bin/python3 $out/bin/nvim-python3 --unset PYTHONPATH
+ '' + optionalString withRuby ''
+ ln -s ${rubyEnv}/bin/neovim-ruby-host $out/bin/nvim-ruby
+ '' + optionalString vimAlias ''
+ ln -s $out/bin/nvim $out/bin/vim
+ '' + optionalString viAlias ''
+ ln -s $out/bin/nvim $out/bin/vi
+ '' + optionalString (configure != {}) ''
+ echo "Generating remote plugin manifest"
+ export NVIM_RPLUGIN_MANIFEST=$out/rplugin.vim
+ # Launch neovim with a vimrc file containing only the generated plugin
+ # code. Pass various flags to disable temp file generation
+ # (swap/viminfo) and redirect errors to stderr.
+ # Only display the log on error since it will contain a few normally
+ # irrelevant messages.
+ if ! $out/bin/nvim \
+ -u ${vimUtils.vimrcFile (configure // { customRC = ""; })} \
+ -i NONE -n \
+ -E -V1rplugins.log -s \
+ +UpdateRemotePlugins +quit! > outfile 2>&1; then
+ cat outfile
+ echo -e "\nGenerating rplugin.vim failed!"
+ exit 1
+ fi
+ unset NVIM_RPLUGIN_MANIFEST
+
+ # this relies on a patched neovim, see
+ # https://github.com/neovim/neovim/issues/9413
+ wrapProgram $out/bin/nvim \
+ --set NVIM_SYSTEM_RPLUGIN_MANIFEST $out/rplugin.vim \
+ --add-flags "-u ${vimUtils.vimrcFile configure}"
+ '';
preferLocalBuild = true;
diff --git a/pkgs/applications/editors/netbeans/default.nix b/pkgs/applications/editors/netbeans/default.nix
index 9af60ca4fcbd879aa8a14675adc749ad07ea85d0..fa547875a175ded9743889a4dae13d7999bbb220 100644
--- a/pkgs/applications/editors/netbeans/default.nix
+++ b/pkgs/applications/editors/netbeans/default.nix
@@ -1,8 +1,9 @@
-{ stdenv, fetchurl, makeWrapper, makeDesktopItem
-, jdk, perl, python, unzip, which
+{ stdenv, fetchurl, makeWrapper, makeDesktopItem, which, unzip, libicns, imagemagick
+, jdk, perl, python
}:
let
+ version = "10.0";
desktopItem = makeDesktopItem {
name = "netbeans";
exec = "netbeans";
@@ -10,13 +11,14 @@ let
desktopName = "Netbeans IDE";
genericName = "Integrated Development Environment";
categories = "Application;Development;";
+ icon = "netbeans";
};
in
stdenv.mkDerivation {
- name = "netbeans-8.2";
+ name = "netbeans-${version}";
src = fetchurl {
- url = https://download.netbeans.org/netbeans/8.2/final/zip/netbeans-8.2-201609300101.zip;
- sha256 = "0j092qw7aqfc9vpnvr3ix1ii94p4ik6frcnw708iyv4s9crqi65d";
+ url = "mirror://apache/incubator/netbeans/incubating-netbeans/incubating-${version}/incubating-netbeans-${version}-bin.zip";
+ sha512 = "ba83575f42c1d5515e2a5336a621bc2b4087b2e0bcacb6edb76f376f8272555609bdd4eefde8beae8ffc6c1a7db2fb721b844638ce27933c3dd78f71cbb41ad8";
};
buildCommand = ''
@@ -26,23 +28,38 @@ stdenv.mkDerivation {
# Copy to installation directory and create a wrapper capable of starting
# it.
- mkdir -p $out/bin
+ mkdir -pv $out/bin
cp -a netbeans $out
makeWrapper $out/netbeans/bin/netbeans $out/bin/netbeans \
--prefix PATH : ${stdenv.lib.makeBinPath [ jdk which ]} \
--prefix JAVA_HOME : ${jdk.home} \
--add-flags "--jdkhome ${jdk.home}"
+ # Extract pngs from the Apple icon image and create
+ # the missing ones from the 1024x1024 image.
+ icns2png --extract $out/netbeans/nb/netbeans.icns
+ for size in 16 24 32 48 64 128 256 512 1024; do
+ mkdir -pv $out/share/icons/hicolor/"$size"x"$size"/apps
+ if [ -e netbeans_"$size"x"$size"x32.png ]
+ then
+ mv netbeans_"$size"x"$size"x32.png $out/share/icons/hicolor/"$size"x"$size"/apps/netbeans.png
+ else
+ convert -resize "$size"x"$size" netbeans_1024x1024x32.png $out/share/icons/hicolor/"$size"x"$size"/apps/netbeans.png
+ fi
+ done;
+
# Create desktop item, so we can pick it from the KDE/GNOME menu
- mkdir -p $out/share/applications
- cp ${desktopItem}/share/applications/* $out/share/applications
+ mkdir -pv $out/share/applications
+ ln -s ${desktopItem}/share/applications/* $out/share/applications
'';
- buildInputs = [ makeWrapper perl python unzip ];
+ buildInputs = [ makeWrapper perl python unzip libicns imagemagick ];
meta = {
description = "An integrated development environment for Java, C, C++ and PHP";
- maintainers = [ stdenv.lib.maintainers.sander ];
+ homepage = "https://netbeans.org/";
+ license = stdenv.lib.licenses.asl20;
+ maintainers = with stdenv.lib.maintainers; [ sander rszibele ];
platforms = stdenv.lib.platforms.unix;
};
}
diff --git a/pkgs/applications/editors/notepadqq/default.nix b/pkgs/applications/editors/notepadqq/default.nix
index 6d1bba8c4d5dd3d4d46df014e5be7cbad3152918..ab79c3e780b29f6c517bc0d995e40b69033828aa 100644
--- a/pkgs/applications/editors/notepadqq/default.nix
+++ b/pkgs/applications/editors/notepadqq/default.nix
@@ -1,13 +1,14 @@
-{ stdenv, fetchgit, pkgconfig, which, qtbase, qtsvg, qttools, qtwebkit}:
+{ stdenv, fetchFromGitHub, pkgconfig, which, qtbase, qtsvg, qttools, qtwebkit}:
let
- version = "1.2.0";
+ version = "1.4.8";
in stdenv.mkDerivation {
name = "notepadqq-${version}";
- src = fetchgit {
- url = "https://github.com/notepadqq/notepadqq.git";
- rev = "ab074d30e02d49e0fe6957c1523e7fed239aff7d";
- sha256 = "0j8vqsdw314qpk5lrgccm9n7gbyr14ac3s65sl1qn87pxhrz1hpg";
+ src = fetchFromGitHub {
+ owner = "notepadqq";
+ repo = "notepadqq";
+ rev = "v${version}";
+ sha256 = "0lbv4s7ng31dkznzbkmp2cvkqglmfj6lv4mbg3r410fif2nrva7k";
fetchSubmodules = true;
};
@@ -23,8 +24,10 @@ in stdenv.mkDerivation {
export LRELEASE="lrelease"
'';
+ enableParallelBuilding = true;
+
meta = {
- homepage = http://notepadqq.altervista.org/;
+ homepage = https://notepadqq.com/;
description = "Notepad++-like editor for the Linux desktop";
license = stdenv.lib.licenses.gpl3;
platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/editors/okteta/default.nix b/pkgs/applications/editors/okteta/default.nix
index efe728f68494bf44bae843b41316567b74477ccc..ffa80bc68cae39a49c24537f7bb40459ed1249d4 100644
--- a/pkgs/applications/editors/okteta/default.nix
+++ b/pkgs/applications/editors/okteta/default.nix
@@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "okteta-${version}";
- version = "0.25.2";
+ version = "0.26.1";
src = fetchurl {
url = "mirror://kde/stable/okteta/${version}/src/${name}.tar.xz";
- sha256 = "00mw8gdqvn6vn6ir6kqnp7xi3lpn6iyp4f5aknxwq6mdcxgjmh1p";
+ sha256 = "1bqq3ax47xym3ikwn6xsshs1b5gpfg5djrnkzszqnp127f1fxi54";
};
nativeBuildInputs = [ qtscript extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/editors/quilter/default.nix b/pkgs/applications/editors/quilter/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..8d973b19ff394385a20b5cd463586e0fc1035103
--- /dev/null
+++ b/pkgs/applications/editors/quilter/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, meson, ninja, python3
+, gtk3, desktop-file-utils, gtksourceview, webkitgtk, gtkspell3, pantheon
+, libgee, discount, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+ pname = "quilter";
+ version = "1.8.1";
+
+ src = fetchFromGitHub {
+ owner = "lainsce";
+ repo = pname;
+ rev = version;
+ sha256 = "0i8rvvc5g74bgfjgsmmgpj42xmhjaz14jjzl9s5nzwpy1fn7vv0p";
+ };
+
+ nativeBuildInputs = [
+ desktop-file-utils
+ meson
+ ninja
+ pantheon.vala
+ pkgconfig
+ python3
+ wrapGAppsHook
+ ];
+
+ buildInputs = [
+ discount
+ gtk3
+ gtksourceview
+ gtkspell3
+ libgee
+ pantheon.elementary-icon-theme
+ pantheon.granite
+ webkitgtk
+ ];
+
+ postPatch = ''
+ chmod +x meson/post_install.py
+ patchShebangs meson/post_install.py
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Focus on your writing - designed for elementary OS";
+ homepage = https://github.com/lainsce/quilter;
+ license = licenses.gpl2Plus;
+ maintainers = with maintainers; [ worldofpeace ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/editors/rednotebook/default.nix b/pkgs/applications/editors/rednotebook/default.nix
index 9456ea3150a44c691e1221ce25aaa134286fb54a..de9a089ec8c6b6fb9520a0da57f464db05b263f8 100644
--- a/pkgs/applications/editors/rednotebook/default.nix
+++ b/pkgs/applications/editors/rednotebook/default.nix
@@ -1,26 +1,26 @@
{ lib, buildPythonApplication, fetchFromGitHub
-, gdk_pixbuf, glib, gobjectIntrospection, gtk3, pango, webkitgtk
+, gdk_pixbuf, glib, gobject-introspection, gtk3, gtksourceview, pango, webkitgtk
, pygobject3, pyyaml
}:
buildPythonApplication rec {
pname = "rednotebook";
- version = "2.3";
+ version = "2.8";
src = fetchFromGitHub {
owner = "jendrikseipp";
repo = "rednotebook";
rev = "v${version}";
- sha256 = "0zkfid104hcsf20r6829v11wxdghqkd3j1zbgyvd1s7q4nxjn5lj";
+ sha256 = "0k75lw3p6jx30ngvn8iipk1763gazkbrsad3fpl3sqppaqaggryj";
};
# We have not packaged tests.
doCheck = false;
- nativeBuildInputs = [ gobjectIntrospection ];
+ nativeBuildInputs = [ gobject-introspection ];
propagatedBuildInputs = [
- gdk_pixbuf glib gtk3 pango webkitgtk
+ gdk_pixbuf glib gtk3 gtksourceview pango webkitgtk
pygobject3 pyyaml
];
diff --git a/pkgs/applications/editors/retext/default.nix b/pkgs/applications/editors/retext/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..3288b8e90adc5b0b179e4b004afefb56e1ff0433
--- /dev/null
+++ b/pkgs/applications/editors/retext/default.nix
@@ -0,0 +1,63 @@
+{ lib, stdenv, python3, fetchFromGitHub, makeWrapper, buildEnv, aspellDicts
+# Use `lib.collect lib.isDerivation aspellDicts;` to make all dictionaries
+# available.
+, enchantAspellDicts ? with aspellDicts; [ en en-computers en-science ]
+}:
+
+let
+ version = "7.0.4";
+ python = let
+ packageOverrides = self: super: {
+ markdown = super.markdown.overridePythonAttrs(old: rec {
+ src = super.fetchPypi {
+ version = "3.0.1";
+ pname = "Markdown";
+ sha256 = "d02e0f9b04c500cde6637c11ad7c72671f359b87b9fe924b2383649d8841db7c";
+ };
+ });
+
+ chardet = super.chardet.overridePythonAttrs(old: rec {
+ src = super.fetchPypi {
+ version = "2.3.0";
+ pname = "chardet";
+ sha256 = "e53e38b3a4afe6d1132de62b7400a4ac363452dc5dfcf8d88e8e0cce663c68aa";
+ };
+ });
+ };
+ in python3.override { inherit packageOverrides; };
+ pythonEnv = python.withPackages (ps: with ps; [
+ pyqt5 docutils pyenchant Markups markdown pygments chardet
+ ]);
+in python.pkgs.buildPythonApplication {
+ inherit version;
+ pname = "retext";
+
+ src = fetchFromGitHub {
+ owner = "retext-project";
+ repo = "retext";
+ rev = "${version}";
+ sha256 = "1zcapywspc9v5zf5cxqkcy019np9n41gmryqixj66zsvd544c6si";
+ };
+
+ doCheck = false;
+
+ nativeBuildInputs = [ makeWrapper ];
+ propagatedBuildInputs = [ pythonEnv ];
+
+ postInstall = ''
+ mv $out/bin/retext $out/bin/.retext
+ makeWrapper "$out/bin/.retext" "$out/bin/retext" \
+ --set ASPELL_CONF "dict-dir ${buildEnv {
+ name = "aspell-all-dicts";
+ paths = map (path: "${path}/lib/aspell") enchantAspellDicts;
+ }}"
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/retext-project/retext/;
+ description = "Simple but powerful editor for Markdown and reStructuredText";
+ license = licenses.gpl3;
+ maintainers = with maintainers; [ klntsky ];
+ platforms = platforms.unix;
+ };
+}
diff --git a/pkgs/applications/editors/rstudio/clang-location.patch b/pkgs/applications/editors/rstudio/clang-location.patch
new file mode 100644
index 0000000000000000000000000000000000000000..402abdd85636c52fb7c247532c8d3cf78faa32d3
--- /dev/null
+++ b/pkgs/applications/editors/rstudio/clang-location.patch
@@ -0,0 +1,25 @@
+diff --git i/src/cpp/core/libclang/LibClang.cpp w/src/cpp/core/libclang/LibClang.cpp
+index ec12a3a1ff..8c81b633ae 100644
+--- i/src/cpp/core/libclang/LibClang.cpp
++++ w/src/cpp/core/libclang/LibClang.cpp
+@@ -54,7 +54,7 @@ std::vector defaultCompileArgs(LibraryVersion version)
+
+ // we need to add in the associated libclang headers as
+ // they are not discovered / used by default during compilation
+- FilePath llvmPath = s_libraryPath.parent().parent();
++ FilePath llvmPath("@clang@");
+ boost::format fmt("%1%/lib/clang/%2%/include");
+ fmt % llvmPath.absolutePath() % version.asString();
+ std::string includePath = fmt.str();
+@@ -77,10 +77,7 @@ std::vector systemClangVersions()
+ #elif defined(__unix__)
+ // default set of versions
+ clangVersions = {
+- "/usr/lib/libclang.so",
+- "/usr/lib/llvm/libclang.so",
+- "/usr/lib64/libclang.so",
+- "/usr/lib64/llvm/libclang.so",
++ "@libclang.so@"
+ };
+
+ // iterate through the set of available 'llvm' directories
diff --git a/pkgs/applications/editors/rstudio/default.nix b/pkgs/applications/editors/rstudio/default.nix
index 0943513a4d12607ce5e9c40f6ce8f925c09b1936..86fb972e94c3b00cebde2d7f8112084f81ceff10 100644
--- a/pkgs/applications/editors/rstudio/default.nix
+++ b/pkgs/applications/editors/rstudio/default.nix
@@ -1,12 +1,12 @@
{ stdenv, fetchurl, fetchFromGitHub, makeDesktopItem, cmake, boost
-, zlib, openssl, R, qtbase, qtwebkit, qtwebchannel, libuuid, hunspellDicts
-, unzip, ant, jdk, gnumake, makeWrapper, pandoc
+, zlib, openssl, R, qtbase, qtwebkit, qtwebchannel, qtxmlpatterns, libuuid
+, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc
}:
let
verMajor = "1";
verMinor = "1";
- verPatch = "442";
+ verPatch = "463";
version = "${verMajor}.${verMinor}.${verPatch}";
ginVer = "1.5";
gwtVer = "2.7.0";
@@ -16,13 +16,14 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake unzip ant jdk makeWrapper pandoc ];
- buildInputs = [ boost zlib openssl R qtbase qtwebkit qtwebchannel libuuid ];
+ buildInputs = [ boost zlib openssl R qtbase qtwebkit qtwebchannel
+ qtxmlpatterns libuuid ];
src = fetchFromGitHub {
owner = "rstudio";
repo = "rstudio";
rev = "v${version}";
- sha256 = "0drqh2brfs9w8dfh4r7j3fsqdsg63s6pvj2bbg5xwwc0yf220ahs";
+ sha256 = "014g984znsczzy1fyn9y1ly3rbsngryfs674lfgciz60mqnl8im6";
};
# Hack RStudio to only use the input R.
diff --git a/pkgs/applications/editors/rstudio/fix-cmake.patch b/pkgs/applications/editors/rstudio/fix-cmake.patch
new file mode 100644
index 0000000000000000000000000000000000000000..3effc0eaa32b51645975969392220c3cc99fbaf3
--- /dev/null
+++ b/pkgs/applications/editors/rstudio/fix-cmake.patch
@@ -0,0 +1,15 @@
+diff --git a/src/cpp/desktop/CMakeLists.txt b/src/cpp/desktop/CMakeLists.txt
+index f5701bf735..27af4148ff 100644
+--- a/src/cpp/desktop/CMakeLists.txt
++++ b/src/cpp/desktop/CMakeLists.txt
+@@ -112,6 +112,7 @@ find_package(Qt5WebEngine REQUIRED)
+ find_package(Qt5WebEngineWidgets REQUIRED)
+ find_package(Qt5PrintSupport REQUIRED)
+ find_package(Qt5Quick REQUIRED)
++find_package(Qt5QuickWidgets REQUIRED)
+ find_package(Qt5Positioning REQUIRED)
+ find_package(Qt5Sensors REQUIRED)
+ find_package(Qt5Svg REQUIRED)
+--
+2.17.1
+
diff --git a/pkgs/applications/editors/rstudio/preview.nix b/pkgs/applications/editors/rstudio/preview.nix
new file mode 100644
index 0000000000000000000000000000000000000000..55c83ca85a643c84f818e030533c9335475756eb
--- /dev/null
+++ b/pkgs/applications/editors/rstudio/preview.nix
@@ -0,0 +1,119 @@
+{ stdenv, fetchurl, fetchFromGitHub, makeDesktopItem, cmake, boost, zlib
+, openssl, R, qtbase, qtxmlpatterns, qtsensors, qtwebengine, qtwebchannel
+, libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc
+, llvmPackages
+}:
+
+let
+ rev = "f79330d4";
+ ginVer = "2.1.2";
+ gwtVer = "2.8.1";
+in
+stdenv.mkDerivation rec {
+ name = "RStudio-preview-${rev}";
+
+ nativeBuildInputs = [ cmake unzip ant jdk makeWrapper pandoc ];
+
+ buildInputs = [ boost zlib openssl R qtbase qtxmlpatterns qtsensors
+ qtwebengine qtwebchannel libuuid ];
+
+ src = fetchFromGitHub {
+ owner = "rstudio";
+ repo = "rstudio";
+ inherit rev;
+ sha256 = "0v3vzqjp74c3m4h9l6w2lrdnjqaimdjzbf7vhnlxj2qa0lwsnykb";
+ };
+
+ # Hack RStudio to only use the input R and provided libclang.
+ patches = [ ./r-location.patch ./clang-location.patch ];
+ postPatch = ''
+ substituteInPlace src/cpp/core/r_util/REnvironmentPosix.cpp --replace '@R@' ${R}
+ substituteInPlace src/cpp/core/libclang/LibClang.cpp \
+ --replace '@clang@' ${llvmPackages.clang.cc} \
+ --replace '@libclang.so@' ${llvmPackages.clang.cc.lib}/lib/libclang.so
+ '';
+
+ ginSrc = fetchurl {
+ url = "https://s3.amazonaws.com/rstudio-buildtools/gin-${ginVer}.zip";
+ sha256 = "16jzmljravpz6p2rxa87k5f7ir8vs7ya75lnfybfajzmci0p13mr";
+ };
+
+ gwtSrc = fetchurl {
+ url = "https://s3.amazonaws.com/rstudio-buildtools/gwt-${gwtVer}.zip";
+ sha256 = "19x000m3jwnkqgi6ic81lkzyjvvxcfacw2j0vcfcaknvvagzhyhb";
+ };
+
+ hunspellDictionaries = with stdenv.lib; filter isDerivation (attrValues hunspellDicts);
+
+ mathJaxSrc = fetchurl {
+ url = https://s3.amazonaws.com/rstudio-buildtools/mathjax-26.zip;
+ sha256 = "0wbcqb9rbfqqvvhqr1pbqax75wp8ydqdyhp91fbqfqp26xzjv6lk";
+ };
+
+ rsconnectSrc = fetchFromGitHub {
+ owner = "rstudio";
+ repo = "rsconnect";
+ rev = "984745d8";
+ sha256 = "037z0y32k1gdda192y5qn5hi7wp8wyap44mkjlklrgcqkmlcylb9";
+ };
+
+ preConfigure =
+ ''
+ GWT_LIB_DIR=src/gwt/lib
+
+ mkdir -p $GWT_LIB_DIR/gin/${ginVer}
+ unzip ${ginSrc} -d $GWT_LIB_DIR/gin/${ginVer}
+
+ unzip ${gwtSrc}
+ mkdir -p $GWT_LIB_DIR/gwt
+ mv gwt-${gwtVer} $GWT_LIB_DIR/gwt/${gwtVer}
+
+ mkdir dependencies/common/dictionaries
+ for dict in ${builtins.concatStringsSep " " hunspellDictionaries}; do
+ for i in "$dict/share/hunspell/"*; do
+ ln -sv $i dependencies/common/dictionaries/
+ done
+ done
+
+ unzip ${mathJaxSrc} -d dependencies/common/mathjax-26
+
+ mkdir -p dependencies/common/pandoc
+ cp ${pandoc}/bin/pandoc dependencies/common/pandoc/
+
+ cp -r ${rsconnectSrc} dependencies/common/rsconnect
+ pushd dependencies/common
+ ${R}/bin/R CMD build -d --no-build-vignettes rsconnect
+ popd
+ '';
+
+ enableParallelBuilding = true;
+
+ cmakeFlags = [ "-DRSTUDIO_TARGET=Desktop" "-DQT_QMAKE_EXECUTABLE=$NIX_QT5_TMP/bin/qmake" ];
+
+ desktopItem = makeDesktopItem {
+ name = name;
+ exec = "rstudio %F";
+ icon = "rstudio";
+ desktopName = "RStudio Preview";
+ genericName = "IDE";
+ comment = meta.description;
+ categories = "Development;";
+ mimeType = "text/x-r-source;text/x-r;text/x-R;text/x-r-doc;text/x-r-sweave;text/x-r-markdown;text/x-r-html;text/x-r-presentation;application/x-r-data;application/x-r-project;text/x-r-history;text/x-r-profile;text/x-tex;text/x-markdown;text/html;text/css;text/javascript;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;";
+ };
+
+ postInstall = ''
+ wrapProgram $out/bin/rstudio --suffix PATH : ${gnumake}/bin
+ mkdir $out/share
+ cp -r ${desktopItem}/share/applications $out/share
+ mkdir $out/share/icons
+ ln $out/rstudio.png $out/share/icons
+ '';
+
+ meta = with stdenv.lib;
+ { description = "Set of integrated tools for the R language";
+ homepage = https://www.rstudio.com/;
+ license = licenses.agpl3;
+ maintainers = with maintainers; [ averelld ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/editors/sigil/default.nix b/pkgs/applications/editors/sigil/default.nix
index ef0d98455f278ffc3c6c93324641f45aea00a013..bae3c58b8e1dfe950499c0c9de76ca6f9dbac640 100644
--- a/pkgs/applications/editors/sigil/default.nix
+++ b/pkgs/applications/editors/sigil/default.nix
@@ -6,10 +6,10 @@
stdenv.mkDerivation rec {
name = "sigil-${version}";
- version = "0.9.10";
+ version = "0.9.13";
src = fetchFromGitHub {
- sha256 = "11r7043kbqv67z1aqk929scsg6yllldpl8icl32dw3dai7f1c658";
+ sha256 = "05wnq7av7fgqgcqd88qjwgn55vr4ciy4f0rgi722f52vy97bw9bj";
rev = version;
repo = "Sigil";
owner = "Sigil-Ebook";
diff --git a/pkgs/applications/editors/standardnotes/default.nix b/pkgs/applications/editors/standardnotes/default.nix
new file mode 100644
index 0000000000000000000000000000000000000000..454b7ad554ba667837a7363f3a862dbeda032611
--- /dev/null
+++ b/pkgs/applications/editors/standardnotes/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, appimage-run, fetchurl, runtimeShell }:
+
+let
+ version = "3.0.6";
+
+ plat = {
+ "i386-linux" = "i386";
+ "x86_64-linux" = "x86_64";
+ }.${stdenv.hostPlatform.system};
+
+ sha256 = {
+ "i386-linux" = "0czhlbacjks9x8y2w46nzlvk595psqhqw0vl0bvsq7sz768dk0ni";
+ "x86_64-linux" = "0haji9h8rrm9yvqdv6i2y6xdd0yhsssjjj83hmf6cb868lwyigsf";
+ }.${stdenv.hostPlatform.system};
+in
+
+stdenv.mkDerivation rec {
+ name = "standardnotes-${version}";
+
+ src = fetchurl {
+ url = "https://github.com/standardnotes/desktop/releases/download/v${version}/standard-notes-${version}-${plat}.AppImage";
+ inherit sha256;
+ };
+
+ buildInputs = [ appimage-run ];
+
+ unpackPhase = ":";
+
+ installPhase = ''
+ mkdir -p $out/{bin,share}
+ cp $src $out/share/standardNotes.AppImage
+ echo "#!${runtimeShell}" > $out/bin/standardnotes
+ echo "${appimage-run}/bin/appimage-run $out/share/standardNotes.AppImage" >> $out/bin/standardnotes
+ chmod +x $out/bin/standardnotes $out/share/standardNotes.AppImage
+ '';
+
+ meta = with stdenv.lib; {
+ description = "A simple and private notes app";
+ longDescription = ''
+ Standard Notes is a private notes app that features unmatched simplicity,
+ end-to-end encryption, powerful extensions, and open-source applications.
+ '';
+ homepage = https://standardnotes.org;
+ license = licenses.agpl3;
+ maintainers = with maintainers; [ mgregoire ];
+ platforms = [ "i386-linux" "x86_64-linux" ];
+ };
+}
diff --git a/pkgs/applications/editors/sublime/2/default.nix b/pkgs/applications/editors/sublime/2/default.nix
index 78c2d9aaa0c41cca63d23f626c73d43c629d28cb..24639f3bfd4625653d093e4199dccba1ecbf6cfd 100644
--- a/pkgs/applications/editors/sublime/2/default.nix
+++ b/pkgs/applications/editors/sublime/2/default.nix
@@ -6,16 +6,22 @@ in
stdenv.mkDerivation rec {
name = "sublimetext-2.0.2";
src =
- if stdenv.system == "i686-linux" then
+ if stdenv.hostPlatform.system == "i686-linux" then
fetchurl {
name = "sublimetext-2.0.2.tar.bz2";
- url = http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2.tar.bz2;
+ url = [
+ http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2.tar.bz2
+ https://download.sublimetext.com/Sublime%20Text%202.0.2.tar.bz2
+ ];
sha256 = "026g5mppk28lzzzn9ibykcqkrd5msfmg0sc0z8w8jd7v3h28wcq7";
}
else
fetchurl {
name = "sublimetext-2.0.2.tar.bz2";
- url = http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2%20x64.tar.bz2;
+ url = [
+ http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2.tar.bz2
+ https://download.sublimetext.com/Sublime%20Text%202.0.2%20x64.tar.bz2
+ ];
sha256 = "115b71nbv9mv8cz6bkjwpbdf2ywnjc1zy2d3080f6ck4sqqfvfh1";
};
buildCommand = ''
diff --git a/pkgs/applications/editors/sublime/3/common.nix b/pkgs/applications/editors/sublime/3/common.nix
index 628993dbf5be55d7a8f33109c66ad0d0263f163b..214e53262b5c013b52823fcc89a43506ab5c88d7 100644
--- a/pkgs/applications/editors/sublime/3/common.nix
+++ b/pkgs/applications/editors/sublime/3/common.nix
@@ -1,46 +1,58 @@
-{buildVersion, x32sha256, x64sha256}:
+{ buildVersion, x32sha256, x64sha256, dev ? false }:
-{ fetchurl, stdenv, glib, xorg, cairo, gtk2, pango, makeWrapper, openssl, bzip2,
- pkexecPath ? "/run/wrappers/bin/pkexec", libredirect,
- gksuSupport ? false, gksu, unzip, zip, bash}:
+{ fetchurl, stdenv, xorg, glib, glibcLocales, gtk2, gtk3, cairo, pango, libredirect, makeWrapper, wrapGAppsHook
+, pkexecPath ? "/run/wrappers/bin/pkexec", gksuSupport ? false, gksu
+, writeScript, common-updater-scripts, curl, gnugrep
+, openssl, bzip2, bash, unzip, zip
+}:
assert gksuSupport -> gksu != null;
let
-
- libPath = stdenv.lib.makeLibraryPath [glib xorg.libX11 gtk2 cairo pango];
- redirects = [ "/usr/bin/pkexec=${pkexecPath}" ]
- ++ stdenv.lib.optional gksuSupport "/usr/bin/gksudo=${gksu}/bin/gksudo";
-in let
+ pname = "sublimetext3";
+ packageAttribute = "sublime3${stdenv.lib.optionalString dev "-dev"}";
+ binaries = [ "sublime_text" "plugin_host" "crash_reporter" ];
+ primaryBinary = "sublime_text";
+ primaryBinaryAliases = [ "subl" "sublime" "sublime3" ];
+ downloadUrl = "https://download.sublimetext.com/sublime_text_3_build_${buildVersion}_${arch}.tar.bz2";
+ downloadArchiveType = "tar.bz2";
+ versionUrl = "https://www.sublimetext.com/${if dev then "3dev" else "3"}";
+ versionFile = "pkgs/applications/editors/sublime/3/packages.nix";
+ usesGtk2 = stdenv.lib.versionOlder buildVersion "3181";
archSha256 =
- if stdenv.system == "i686-linux" then
+ if stdenv.hostPlatform.system == "i686-linux" then
x32sha256
else
x64sha256;
-
arch =
- if stdenv.system == "i686-linux" then
+ if stdenv.hostPlatform.system == "i686-linux" then
"x32"
else
"x64";
- # package with just the binaries
- sublime = stdenv.mkDerivation {
- name = "sublimetext3-${buildVersion}-bin";
- src =
- fetchurl {
- name = "sublimetext-${buildVersion}.tar.bz2";
- url = "https://download.sublimetext.com/sublime_text_3_build_${buildVersion}_${arch}.tar.bz2";
- sha256 = archSha256;
- };
+ libPath = stdenv.lib.makeLibraryPath [ xorg.libX11 glib (if usesGtk2 then gtk2 else gtk3) cairo pango ];
+ redirects = [ "/usr/bin/pkexec=${pkexecPath}" ]
+ ++ stdenv.lib.optional gksuSupport "/usr/bin/gksudo=${gksu}/bin/gksudo";
+in let
+ binaryPackage = stdenv.mkDerivation {
+ pname = "${pname}-bin";
+ version = buildVersion;
+
+ src = fetchurl {
+ name = "${pname}-bin-${buildVersion}.${downloadArchiveType}";
+ url = downloadUrl;
+ sha256 = archSha256;
+ };
dontStrip = true;
dontPatchELF = true;
- buildInputs = [ makeWrapper zip unzip ];
+ buildInputs = stdenv.lib.optionals (!usesGtk2) [ glib gtk3 ]; # for GSETTINGS_SCHEMAS_PATH
+ nativeBuildInputs = [ zip unzip makeWrapper ] ++ stdenv.lib.optional (!usesGtk2) wrapGAppsHook;
- # make exec.py in Default.sublime-package use own bash with
- # an LD_PRELOAD instead of "/bin/bash"
+ # make exec.py in Default.sublime-package use own bash with an LD_PRELOAD instead of "/bin/bash"
patchPhase = ''
+ runHook prePatch
+
mkdir Default.sublime-package-fix
( cd Default.sublime-package-fix
unzip -q ../Packages/Default.sublime-package
@@ -50,62 +62,91 @@ in let
zip -q ../Packages/Default.sublime-package **/*
)
rm -r Default.sublime-package-fix
+
+ runHook postPatch
'';
buildPhase = ''
- for i in sublime_text plugin_host crash_reporter; do
+ runHook preBuild
+
+ for binary in ${ builtins.concatStringsSep " " binaries }; do
patchelf \
--interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath ${libPath}:${stdenv.cc.cc.lib}/lib${stdenv.lib.optionalString stdenv.is64bit "64"} \
- $i
+ $binary
done
# Rewrite pkexec|gksudo argument. Note that we can't delete bytes in binary.
- sed -i -e 's,/bin/cp\x00,cp\x00\x00\x00\x00\x00\x00,g' sublime_text
+ sed -i -e 's,/bin/cp\x00,cp\x00\x00\x00\x00\x00\x00,g' ${primaryBinary}
+
+ runHook postBuild
'';
installPhase = ''
- # Correct sublime_text.desktop to exec `sublime' instead of /opt/sublime_text
- sed -e "s,/opt/sublime_text/sublime_text,$out/sublime_text," -i sublime_text.desktop
+ runHook preInstall
mkdir -p $out
- cp -prvd * $out/
+ cp -r * $out/
# We can't just call /usr/bin/env bash because a relocation error occurs
# when trying to run a build from within Sublime Text
ln -s ${bash}/bin/bash $out/sublime_bash
+
+ runHook postInstall
+ '';
+
+ dontWrapGApps = true; # non-standard location, need to wrap the executables manually
+
+ postFixup = ''
wrapProgram $out/sublime_bash \
--set LD_PRELOAD "${stdenv.cc.cc.lib}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}/libgcc_s.so.1"
- wrapProgram $out/sublime_text \
+ wrapProgram $out/${primaryBinary} \
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
- --set NIX_REDIRECTS ${builtins.concatStringsSep ":" redirects}
+ --set NIX_REDIRECTS ${builtins.concatStringsSep ":" redirects} \
+ --set LOCALE_ARCHIVE "${glibcLocales.out}/lib/locale/locale-archive" \
+ ${stdenv.lib.optionalString (!usesGtk2) ''"''${gappsWrapperArgs[@]}"''}
# Without this, plugin_host crashes, even though it has the rpath
wrapProgram $out/plugin_host --prefix LD_PRELOAD : ${stdenv.cc.cc.lib}/lib${stdenv.lib.optionalString stdenv.is64bit "64"}/libgcc_s.so.1:${openssl.out}/lib/libssl.so:${bzip2.out}/lib/libbz2.so
'';
};
in stdenv.mkDerivation (rec {
- name = "sublimetext3-${buildVersion}";
+ inherit pname;
+ version = buildVersion;
phases = [ "installPhase" ];
- inherit sublime;
+ ${primaryBinary} = binaryPackage;
+
+ nativeBuildInputs = [ makeWrapper ];
installPhase = ''
- mkdir -p $out/bin
-
- cat > $out/bin/subl <<-EOF
- #!/bin/sh
- exec $sublime/sublime_text "\$@"
- EOF
- chmod +x $out/bin/subl
-
- ln $out/bin/subl $out/bin/sublime
- ln $out/bin/subl $out/bin/sublime3
- mkdir -p $out/share/applications
- ln -s $sublime/sublime_text.desktop $out/share/applications/sublime_text.desktop
- ln -s $sublime/Icon/256x256/ $out/share/icons
+ mkdir -p "$out/bin"
+ makeWrapper "''$${primaryBinary}/${primaryBinary}" "$out/bin/${primaryBinary}"
+ '' + builtins.concatStringsSep "" (map (binaryAlias: "ln -s $out/bin/${primaryBinary} $out/bin/${binaryAlias}\n") primaryBinaryAliases) + ''
+ mkdir -p "$out/share/applications"
+ substitute "''$${primaryBinary}/${primaryBinary}.desktop" "$out/share/applications/${primaryBinary}.desktop" --replace "/opt/${primaryBinary}/${primaryBinary}" "$out/bin/${primaryBinary}"
+ for directory in ''$${primaryBinary}/Icon/*; do
+ size=$(basename $directory)
+ mkdir -p "$out/share/icons/hicolor/$size/apps"
+ ln -s ''$${primaryBinary}/Icon/$size/* $out/share/icons/hicolor/$size/apps
+ done
+ '';
+
+ passthru.updateScript = writeScript "${pname}-update-script" ''
+ #!${stdenv.shell}
+ set -o errexit
+ PATH=${stdenv.lib.makeBinPath [ common-updater-scripts curl gnugrep ]}
+
+ latestVersion=$(curl -s ${versionUrl} | grep -Po '(?<=