Skip to content

cyrus: init at 3.4.3#170919

Closed
pingiun wants to merge 2 commits into
NixOS:masterfrom
pingiun:add-cyrus
Closed

cyrus: init at 3.4.3#170919
pingiun wants to merge 2 commits into
NixOS:masterfrom
pingiun:add-cyrus

Conversation

@pingiun

@pingiun pingiun commented Apr 29, 2022

Copy link
Copy Markdown
Member
Description of changes

Add cyrus imap server. Used compilation options from https://www.cyrusimap.org/imap/developer/compiling.html#setting-up-dependencies

For jmap support cyrus requires the unpackaged wslay, which I added as well.

Fixes #54012

Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 22.05 Release Notes (or backporting 21.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

@ofborg ofborg Bot added 8.has: package (new) This PR adds a new package 11.by: package-maintainer This PR was created by a maintainer of all the package it changes. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Apr 29, 2022
@pingiun

pingiun commented Apr 29, 2022

Copy link
Copy Markdown
Member Author

I believe cyrus should be able to work on macOS but libmd is labelled to not support darwin. I'm not sure why though

@pingiun

pingiun commented Apr 29, 2022

Copy link
Copy Markdown
Member Author

Mentioning people from the original issue because you may be able to test this: @petabyteboy @teto @solson

@teto teto left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've never used cyrus so I can't really tell if it works but I am glad it's available in nixpkgs. I am interested in the jmap support mostly

@pingiun

pingiun commented Apr 29, 2022

Copy link
Copy Markdown
Member Author

The pidfile is hardcoded so i added the option to ./configure to place it at /run/cyrus-master.pid

@Artturin Artturin added the 12.approvals: 1 This PR was reviewed and approved by one person. label May 4, 2022
@Artturin Artturin removed the 12.approvals: 1 This PR was reviewed and approved by one person. label May 11, 2022
@onny

onny commented Sep 5, 2022

Copy link
Copy Markdown
Contributor

Thank you for your work, looks really good. Please put wslay in a separate commit

"--enable-unit-tests"
"--with-pidfile=/run/cyrus-master.pid"
] ++ lib.optional (withHttp || withCalalarmd || withJMAP) "--enable-http"
++ lib.optional withJMAP "--with-jmap"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
++ lib.optional withJMAP "--with-jmap"
++ lib.withFeature withJMAP "jmap"

Comment thread pkgs/servers/mail/cyrus/default.nix Outdated
@sikmir

sikmir commented Oct 4, 2022

Copy link
Copy Markdown
Member

I believe cyrus should be able to work on macOS but libmd is labelled to not support darwin. I'm not sure why though

libmd is already enabled on darwin efa7824

@sikmir

sikmir commented Oct 4, 2022

Copy link
Copy Markdown
Member

3.4.4. is out.

@sikmir

sikmir commented Oct 4, 2022

Copy link
Copy Markdown
Member

Result of nixpkgs-review pr 170919 run on x86_64-darwin 1

1 package marked as broken and skipped:
  • cyrus
1 package failed to build:
  • wslay
=======================================
   wslay 1.1.1: tests/test-suite.log
=======================================

# TOTAL: 1
# PASS:  0
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: main
==========

dyld[46531]: Library not loaded: '/nix/store/j82arv42js3p0s4m6mbmbzbb6d95lz54-wslay-1.1.1/lib/libwslay.0.dylib'
  Referenced from: '/private/tmp/nix-build-wslay-1.1.1.drv-0/wslay-1.1.1/tests/main'
  Reason: tried: '/nix/store/j82arv42js3p0s4m6mbmbzbb6d95lz54-wslay-1.1.1/lib/libwslay.0.dylib' (no such file), '/usr/local/lib/libwslay.0.dylib' (no>
FAIL main (exit status: 134)

@pacien pacien left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for packaging this.
I believe this is only a few minor changes away from being merged.

pname = "wslay";
version = "1.1.1";

src = fetchurl {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not fetchFromGitHub?

pname = "cyrus";
version = "3.4.3";

src = fetchurl {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not fetchFromGitHub?

erlang = erlangR22;
};

cyrus = callPackage ../servers/mail/cyrus { };

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The project's website, source repo and doc are named Cyrus IMAP(d).
Even though it supports more than this protocol, we should probably stick
with the same name.


stdenv.mkDerivation rec {
pname = "cyrus";
version = "3.4.3";

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@pacien

pacien commented Aug 30, 2023

Copy link
Copy Markdown
Contributor

I just realised that this PR hasn't been updated for more than a year.

@pingiun: Do you still intend to work on this?
If not, I can take over this.
I have a package for 3.8.0 and a module draft as well.
Never mind: I gave up on packaging the admin scripts due to Perl issues.

@pingiun

pingiun commented Aug 30, 2023

Copy link
Copy Markdown
Member Author

I just realised that this PR hasn't been updated for more than a year.

@pingiun: Do you still intend to work on this? If not, I can take over this. I have a package for 3.8.0 and a module draft as well.

It's fine if you take over, I don't think I can finish this work soon

whiteley added a commit to whiteley/nixpkgs that referenced this pull request Oct 27, 2023
@whiteley whiteley mentioned this pull request Oct 27, 2023
13 tasks
Co-authored-by: Nikolay Korotkiy <sikmir@disroot.org>
@Moraxyc

Moraxyc commented Mar 20, 2024

Copy link
Copy Markdown
Member

It looks good. Are there any problems that block the merger of the PR?

@nixos-discourse

Copy link
Copy Markdown

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/how-to-correctly-package-perl-module-in-nix/42014/1

@Moraxyc Moraxyc mentioned this pull request Apr 20, 2024
13 tasks
@pingiun

pingiun commented May 6, 2024

Copy link
Copy Markdown
Member Author

Closed in favour of #305538

@pingiun pingiun closed this May 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

8.has: package (new) This PR adds a new package 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 11.by: package-maintainer This PR was created by a maintainer of all the package it changes.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Package request: cyrus-imap

8 participants