File tree Expand file tree Collapse file tree 1 file changed +63
-4
lines changed
Expand file tree Collapse file tree 1 file changed +63
-4
lines changed Original file line number Diff line number Diff line change 33 packages = with pkgs ; [
44 git
55 tig
6+ ( rustPlatform . buildRustPackage
7+ rec {
8+ pname = "mergiraf" ;
9+ version = "0.2.0" ;
10+
11+ src = fetchFromGitea {
12+ domain = "codeberg.org" ;
13+ owner = "mergiraf" ;
14+ repo = "mergiraf" ;
15+ rev = "v${ version } " ;
16+ sha256 = "sha256-egtX2daCbPXi5rX2OxbEZA/VI9R4HMj5LRKbUEBFo+E=" ;
17+ } ;
18+ nativeBuildInputs = [
19+ git
20+ ] ;
21+ cargoLock = {
22+ lockFile = "${ src } /Cargo.lock" ;
23+ outputHashes = {
24+ "tree-sitter-go-0.23.1" = "sha256-elPqkvVYs0vADOuN/umDteWP5hqcXhQAoSkqYDtTxaU=" ;
25+ "tree-sitter-xml-0.7.0" = "sha256-RTWvOUAs3Uql9DKsP1jf9FZZHaZORE40GXd+6g6RQZw=" ;
26+ "tree-sitter-yaml-0.6.1" = "sha256-gS+SjOnGl/86U9VV/y1ca7naYIe7DAOvOv++jCRLTKo=" ;
27+ } ;
28+ } ;
29+
30+ meta = with lib ; {
31+ description = "A syntax-aware git merge driver for a growing collection of programming languages and file formats." ;
32+ homepage = "https://codeberg.org/mergiraf/mergiraf" ;
33+ license = licenses . gpl3 ;
34+ maintainers = [ ] ;
35+ } ;
36+ } )
637 ] ;
7- file . ".gitignore" . text = ''
8- .session.nvim
9- '' ;
38+ file = {
39+ ".gitignore" . text = ''
40+ .session.nvim
41+ '' ;
42+ ".gitattributes" . text = ''
43+ *.java merge=mergiraf
44+ *.rs merge=mergiraf
45+ *.go merge=mergiraf
46+ *.js merge=mergiraf
47+ *.jsx merge=mergiraf
48+ *.json merge=mergiraf
49+ *.yml merge=mergiraf
50+ *.yaml merge=mergiraf
51+ *.html merge=mergiraf
52+ *.htm merge=mergiraf
53+ *.xhtml merge=mergiraf
54+ *.xml merge=mergiraf
55+ *.c merge=mergiraf
56+ *.h merge=mergiraf
57+ *.cpp merge=mergiraf
58+ *.hpp merge=mergiraf
59+ *.cs merge=mergiraf
60+ '' ;
61+ } ;
1062 } ;
1163 programs . git = {
1264 enable = true ;
100152 extraConfig = {
101153 branch . sort = "-committerdate" ;
102154 commit . gpgsign = true ;
103- core . excludesfile = "~/.gitignore" ;
155+ core = {
156+ excludesfile = "~/.gitignore" ;
157+ attributesfile = "~/.gitattributes" ;
158+ } ;
104159 diff . algorithm = "histogram" ;
105160 gpg . format = "ssh" ;
106161 init . defaultBranch = "main" ;
120175 tag . sort = "version:refname" ;
121176 url . "ssh://[email protected] /" . insteadOf = "https://github.com/" ; 122177 user . signingkey = "~/.ssh/id_ed25519" ;
178+ "merge \" mergiraf\" " = {
179+ name = "mergiraf" ;
180+ driver = "mergiraf merge --git %O %A %B -s %S -x %X -y %Y -p %P" ;
181+ } ;
123182 } ;
124183 } ;
125184}
You can’t perform that action at this time.
0 commit comments