mirror of
https://github.com/gromgit/homebrew-fuse.git
synced 2025-12-31 15:02:17 +00:00
Compare commits
690 commits
sshfs@2-2.
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
487b906498 | ||
|
|
039545cdde | ||
|
|
42849eb001 | ||
|
|
d3fd472dc7 | ||
|
|
25c6818885 | ||
|
|
8ec473507d | ||
|
|
d63d1f6365 | ||
|
|
c0ff283054 | ||
|
|
025e62c2e1 | ||
|
|
70d8185e30 | ||
|
|
bb877e13ed | ||
|
|
2318a56f30 | ||
|
|
53d1f2c78d | ||
|
|
12eb9c1456 | ||
|
|
5c39929aee | ||
|
|
6eb699bf2a | ||
|
|
bc90b0478a | ||
|
|
037b2b716f | ||
|
|
3b17f4034f | ||
|
|
cc6597f897 | ||
|
|
0649e8a73e | ||
|
|
d06c9548d6 | ||
|
|
698ed57a59 | ||
|
|
36701c7bf2 | ||
|
|
576f4c0b8d | ||
|
|
16203ce7a3 | ||
|
|
cd9b7c5fe2 | ||
|
|
6824d390a6 | ||
|
|
bb03a7e1fd | ||
|
|
defe6aabfe | ||
|
|
f5b1ac31c9 | ||
|
|
0c5e47a7f4 | ||
|
|
ea2626ab42 | ||
|
|
76293bfb1e | ||
|
|
26f37be7c2 | ||
|
|
675eec95c5 | ||
|
|
164b7013b6 | ||
|
|
132f77949e | ||
|
|
3cc69316b6 | ||
|
|
9c677b9e40 | ||
|
|
7bcc872d8e | ||
|
|
7c48dade80 | ||
|
|
e3212e73fc | ||
|
|
5a851f98e1 | ||
|
|
c7fe3baa1a | ||
|
|
f7967d17ea | ||
|
|
4b636c8580 | ||
|
|
bfdaf06e66 | ||
|
|
2520aa77e2 | ||
|
|
f47c439a6a | ||
|
|
1dada90f17 | ||
|
|
f9f9f0cc67 | ||
|
|
1efc7aa156 | ||
|
|
5ab1dc43c5 | ||
|
|
0d9a1bdd21 | ||
|
|
06ec5e2bf6 | ||
|
|
83a04a8f5e | ||
|
|
88d6e8ecd9 | ||
|
|
bb8f1cd210 | ||
|
|
26acd52863 | ||
|
|
6904e1c0a9 | ||
|
|
08a4fac1cf | ||
|
|
8584884692 | ||
|
|
7315f0ba86 | ||
|
|
4d3675c7b0 | ||
|
|
35c202c1d7 | ||
|
|
b152c0d634 | ||
|
|
ec20c10024 | ||
|
|
5cc3a9aa2c | ||
|
|
b2dd1b6e67 | ||
|
|
9e59b17f64 | ||
|
|
922a80be0c | ||
|
|
a4ee7a9546 | ||
|
|
b8999a2e28 | ||
|
|
3820ee4890 | ||
|
|
106df90243 | ||
|
|
9afb4cf6aa | ||
|
|
d11711c969 | ||
|
|
69ecb8930b | ||
|
|
4b23c46b98 | ||
|
|
8ca7656fef | ||
|
|
2c65338903 | ||
|
|
c7cef0c1dd | ||
|
|
54e9aaa274 | ||
|
|
d2025af5f2 | ||
|
|
6ea68870ab | ||
|
|
916cf6f093 | ||
|
|
d45acb4b76 | ||
|
|
be55b41b3a | ||
|
|
6accb4fac5 | ||
|
|
5415456b88 | ||
|
|
26927b0778 | ||
|
|
8122f680a9 | ||
|
|
305c2a9ec3 | ||
|
|
cd107ea416 | ||
|
|
647d1f4770 | ||
|
|
dfca5a29d2 | ||
|
|
eb2ebb54f2 | ||
|
|
969d13e0f9 | ||
|
|
1895d51783 | ||
|
|
2f6c7ac11a | ||
|
|
4818c1ff33 | ||
|
|
681dac3aa7 | ||
|
|
00f8083e10 | ||
|
|
0a71ddf2b8 | ||
|
|
6704d8fa61 | ||
|
|
134db4f2b1 | ||
|
|
45df045dd6 | ||
|
|
18025d414e | ||
|
|
f35f64c469 | ||
|
|
b7ee1bff2c | ||
|
|
cd29834c9f | ||
|
|
edde0a8f10 | ||
|
|
f3f3d0d0d9 | ||
|
|
fa84c2e82d | ||
|
|
3592c87247 | ||
|
|
9bc677ff4e | ||
|
|
d7a2207ecf | ||
|
|
50111a66f4 | ||
|
|
8c85496a95 | ||
|
|
588ed27fa6 | ||
|
|
db13a3b43c | ||
|
|
9c39b158c5 | ||
|
|
99f5663318 | ||
|
|
ce3aa1ab68 | ||
|
|
46c7d9e149 | ||
|
|
8f6992cb32 | ||
|
|
ed7351bd01 | ||
|
|
9c506cdb89 | ||
|
|
5b22d56a84 | ||
|
|
6a42a69873 | ||
|
|
f714fec4b1 | ||
|
|
897ca8b863 | ||
|
|
d070b53c79 | ||
|
|
e2089a7bdd | ||
|
|
edbd1103b1 | ||
|
|
44f43cfa37 | ||
|
|
eb44163338 | ||
|
|
f2f96efce1 | ||
|
|
88cc03cdcf | ||
|
|
303f05c88d | ||
|
|
2046849f69 | ||
|
|
3bc3e569c2 | ||
|
|
9607e91e85 | ||
|
|
1092d8809d | ||
|
|
52da22fd7a | ||
|
|
3544c95b43 | ||
|
|
7207ece9b2 | ||
|
|
9fab0068af | ||
|
|
1c8167a415 | ||
|
|
fc9667e77c | ||
|
|
3b04282848 | ||
|
|
391cbd4670 | ||
|
|
768e89cbd8 | ||
|
|
cb98b1eb51 | ||
|
|
c0fe1fa2b6 | ||
|
|
63574b5d3c | ||
|
|
ccf96ef8aa | ||
|
|
8c4f1e79c5 | ||
|
|
0a1c211116 | ||
|
|
572f06b85f | ||
|
|
6f8a8022ba | ||
|
|
dcd0073845 | ||
|
|
83f8d203c2 | ||
|
|
b2198e303d | ||
|
|
b0e04736c7 | ||
|
|
b7e7c42b62 | ||
|
|
d1936a242f | ||
|
|
3c3131f78c | ||
|
|
74d666a7a7 | ||
|
|
5ef2130a49 | ||
|
|
3d8ac258fd | ||
|
|
a6e1de64e8 | ||
|
|
2cfe600797 | ||
|
|
fa06566380 | ||
|
|
2000543787 | ||
|
|
480909c6f5 | ||
|
|
8d5a64b83f | ||
|
|
042ebbb8f1 | ||
|
|
c6264936bc | ||
|
|
61590aceed | ||
|
|
3e139d6181 | ||
|
|
fc54c4338a | ||
|
|
d5391b7159 | ||
|
|
83fb1ea6c4 | ||
|
|
5537e40d82 | ||
|
|
3b325811ee | ||
|
|
f5967d475e | ||
|
|
28d66921cc | ||
|
|
3181e6c2bf | ||
|
|
d6fbc19c3a | ||
|
|
a80ac17801 | ||
|
|
cfb46ef501 | ||
|
|
a7eb2cd3e5 | ||
|
|
410180525e | ||
|
|
eafb545b81 | ||
|
|
58d66d7fa4 | ||
|
|
0716f1b71e | ||
|
|
1d18dc6552 | ||
|
|
8eb1990f7c | ||
|
|
6336368050 | ||
|
|
e4ccd9d66c | ||
|
|
26ddeda302 | ||
|
|
cbbdd2abe5 | ||
|
|
825b32e49c | ||
|
|
a153103c9e | ||
|
|
e7c454fd95 | ||
|
|
49eb33b703 | ||
|
|
dfc9f6740e | ||
|
|
848874ddda | ||
|
|
74b3fe8e67 | ||
|
|
51d9a114af | ||
|
|
be87b72d90 | ||
|
|
5d8f90fd10 | ||
|
|
68c157b725 | ||
|
|
bd2e2bda48 | ||
|
|
1bf44dea56 | ||
|
|
8b5e9d57ea | ||
|
|
078e2b6df3 | ||
|
|
ad171f8041 | ||
|
|
70d0792f85 | ||
|
|
5cec38ea10 | ||
|
|
e4dae3c300 | ||
|
|
60aa017a9d | ||
|
|
296e5082f4 | ||
|
|
bea17a4625 | ||
|
|
35d7e524ae | ||
|
|
4998ace1c5 | ||
|
|
81584f24d5 | ||
|
|
5f8d764deb | ||
|
|
d5e4d7d89f | ||
|
|
51ca3ed7ce | ||
|
|
eaa3827a40 | ||
|
|
fe6f47b063 | ||
|
|
ac8384ee5e | ||
|
|
8b6e5f0a18 | ||
|
|
88d73b4550 | ||
|
|
c495a48d14 | ||
|
|
90fecf4791 | ||
|
|
b8fcd83d63 | ||
|
|
5b35632623 | ||
|
|
943d0453c5 | ||
|
|
2c6bcc8d57 | ||
|
|
82992cdc17 | ||
|
|
d319e5dd93 | ||
|
|
f2233656bf | ||
|
|
043692cefd | ||
|
|
e9d9acef9e | ||
|
|
d4433f11c1 | ||
|
|
5dd36ac300 | ||
|
|
0ae4607939 | ||
|
|
85e813699a | ||
|
|
29ef273bc9 | ||
|
|
890da7ff43 | ||
|
|
f81e52c440 | ||
|
|
84c72c0dea | ||
|
|
501f9ec003 | ||
|
|
4f45cb53b4 | ||
|
|
9b938c0b10 | ||
|
|
bac90751e1 | ||
|
|
79fc5df97f | ||
|
|
e473ef5465 | ||
|
|
df77c6aa90 | ||
|
|
a7828e0b99 | ||
|
|
525c4559f9 | ||
|
|
3c1f0fa7a0 | ||
|
|
f5f094c941 | ||
|
|
4ced7fc9fb | ||
|
|
3d57e6de21 | ||
|
|
a68b8e344a | ||
|
|
74fe6de547 | ||
|
|
9ddf824ceb | ||
|
|
ffb580d2ea | ||
|
|
e4fdc8c775 | ||
|
|
fe835f8c03 | ||
|
|
d79a1a7302 | ||
|
|
e4e03a6a7d | ||
|
|
25c8d4b24d | ||
|
|
c282124135 | ||
|
|
a5ea8da4c5 | ||
|
|
7cf9bf4e1a | ||
|
|
1a3dec8f15 | ||
|
|
ed2b66b301 | ||
|
|
c0e21eb533 | ||
|
|
bdf9b05113 | ||
|
|
3ac2336c86 | ||
|
|
087a58aea9 | ||
|
|
8773b34d06 | ||
|
|
0909218747 | ||
|
|
c32b62b4e7 | ||
|
|
bea8b68252 | ||
|
|
ee20cc8450 | ||
|
|
f981b2e963 | ||
|
|
ee81c58f07 | ||
|
|
149d4e70c7 | ||
|
|
0b6841e1a5 | ||
|
|
6c4be39599 | ||
|
|
23e55be260 | ||
|
|
76a3935306 | ||
|
|
65fe795169 | ||
|
|
eb61519e08 | ||
|
|
bd795b9afb | ||
|
|
b7161b3cea | ||
|
|
00869d28e1 | ||
|
|
1af09c5fd7 | ||
|
|
d80120f428 | ||
|
|
59bfcad620 | ||
|
|
a8b879e073 | ||
|
|
74c3912c37 | ||
|
|
92d051aadd | ||
|
|
584ba84339 | ||
|
|
483268592a | ||
|
|
b6888da88a | ||
|
|
3a5d490f88 | ||
|
|
c4b057af00 | ||
|
|
1a27108303 | ||
|
|
09e637c414 | ||
|
|
0f20593254 | ||
|
|
d8db2c9a7c | ||
|
|
4752b8c9a6 | ||
|
|
ef016bddcc | ||
|
|
bb926975ea | ||
|
|
4888927cbe | ||
|
|
bf2109835e | ||
|
|
47ccf52728 | ||
|
|
82257a4daa | ||
|
|
714f888704 | ||
|
|
820028f81f | ||
|
|
6d7b2fc15d | ||
|
|
5019f28580 | ||
|
|
641162f7af | ||
|
|
cfaa19a778 | ||
|
|
21e26c98a1 | ||
|
|
0b260b8d3b | ||
|
|
447c8f5bd2 | ||
|
|
808a7c1909 | ||
|
|
f735a45dd9 | ||
|
|
d9b0ec5510 | ||
|
|
6e9fee1d0d | ||
|
|
ea97d05982 | ||
|
|
4d2c3d6234 | ||
|
|
1b204a496e | ||
|
|
c48e846a6e | ||
|
|
0671f2643a | ||
|
|
86bf3187dd | ||
|
|
c72930cb64 | ||
|
|
49208b2d99 | ||
|
|
761b3eeae4 | ||
|
|
d06f4190fb | ||
|
|
208c6737f7 | ||
|
|
b8902b4547 | ||
|
|
7099ddddca | ||
|
|
69a78bb158 | ||
|
|
a9ab6cbfb0 | ||
|
|
26045e8287 | ||
|
|
a93c0e0690 | ||
|
|
d73d7a0ce7 | ||
|
|
42aa12c42b | ||
|
|
b214c430dd | ||
|
|
f880017dfe | ||
|
|
d30a4fa8c5 | ||
|
|
b9f33acb9e | ||
|
|
fc769e8e7d | ||
|
|
fb4c1483bf | ||
|
|
11bfd279f1 | ||
|
|
c624f60ec4 | ||
|
|
a8d14b4c5c | ||
|
|
351799d81e | ||
|
|
325091e91e | ||
|
|
8a755786db | ||
|
|
bc525036be | ||
|
|
fd8a70a8c8 | ||
|
|
6ea524e14e | ||
|
|
9eed2cd6cb | ||
|
|
47f4ec0c52 | ||
|
|
d85ef03305 | ||
|
|
fbfc4decaa | ||
|
|
0b4fcfb69e | ||
|
|
98aadfe651 | ||
|
|
050e711d5d | ||
|
|
eab0335a0a | ||
|
|
333e3ee09c | ||
|
|
1c680ff989 | ||
|
|
2f7351554a | ||
|
|
5208e4808e | ||
|
|
b42a136731 | ||
|
|
035ec637b3 | ||
|
|
1b3b7fdbb3 | ||
|
|
1e607e0673 | ||
|
|
094a089ab9 | ||
|
|
c964e6ccab | ||
|
|
08eea795e8 | ||
|
|
612ac116f4 | ||
|
|
082c23933f | ||
|
|
f340773127 | ||
|
|
a71981ef3b | ||
|
|
9cde53cd4c | ||
|
|
1ac6dce539 | ||
|
|
339f413f86 | ||
|
|
75f638ecc1 | ||
|
|
428bd91150 | ||
|
|
7164df6108 | ||
|
|
e06f97cfa0 | ||
|
|
e8b316881f | ||
|
|
20b493d849 | ||
|
|
5a62e66543 | ||
|
|
1cb24bbc62 | ||
|
|
fc799b63d6 | ||
|
|
bc22b4ef60 | ||
|
|
49507a3844 | ||
|
|
7f52ae6b1e | ||
|
|
094b3c08e2 | ||
|
|
5e05766bb7 | ||
|
|
b2432456ea | ||
|
|
bb5afc3311 | ||
|
|
8d18ac6ffa | ||
|
|
149b944b64 | ||
|
|
bde9b0f56b | ||
|
|
0c538fb7fb | ||
|
|
3886dc89d9 | ||
|
|
52960e09a9 | ||
|
|
413792584c | ||
|
|
255c6b8205 | ||
|
|
c7be5e9c48 | ||
|
|
dde525d57c | ||
|
|
2c4d8cb7ba | ||
|
|
23cb264810 | ||
|
|
405337b086 | ||
|
|
3c0817c3e2 | ||
|
|
e80f17e5e8 | ||
|
|
d57130dbf4 | ||
|
|
a5ed297810 | ||
|
|
f527ffcd82 | ||
|
|
3640ca2c29 | ||
|
|
02ebfda41a | ||
|
|
b3d1998f04 | ||
|
|
244ea63936 | ||
|
|
31054008ee | ||
|
|
f466744761 | ||
|
|
efdddd0e0f | ||
|
|
039cb41157 | ||
|
|
a4bf854656 | ||
|
|
fab2f2c68c | ||
|
|
43ad747c6a | ||
|
|
53f2ca91a2 | ||
|
|
8c3f2faa54 | ||
|
|
d3eccde0e1 | ||
|
|
7f08f1243b | ||
|
|
c7a8707aab | ||
|
|
6857704aa5 | ||
|
|
acf53932b0 | ||
|
|
b1b23f2a40 | ||
|
|
b7a2b8ae20 | ||
|
|
ef58d221c8 | ||
|
|
ae3be639e3 | ||
|
|
3ce1ffb838 | ||
|
|
813a2d44db | ||
|
|
930e407cc2 | ||
|
|
6dd61d867e | ||
|
|
9c90384241 | ||
|
|
f5ea669084 | ||
|
|
650e566da2 | ||
|
|
d8f5233494 | ||
|
|
06a270b928 | ||
|
|
1ccf40d7ed | ||
|
|
33c0f6cd00 | ||
|
|
bd73eb9bd0 | ||
|
|
70739b3b9e | ||
|
|
7ec9796069 | ||
|
|
5ae009850a | ||
|
|
e9ce11d21f | ||
|
|
9f5d69b207 | ||
|
|
3d83826400 | ||
|
|
b5bc661861 | ||
|
|
04753e7c90 | ||
|
|
6ac05281d1 | ||
|
|
fcd6d90ef0 | ||
|
|
97509d10f3 | ||
|
|
18db985d13 | ||
|
|
0f9d9ef862 | ||
|
|
e32df69d8b | ||
|
|
7e4b293829 | ||
|
|
d1f86bfce0 | ||
|
|
2876b68398 | ||
|
|
b9e9b799ce | ||
|
|
205d4758e5 | ||
|
|
158b5b9585 | ||
|
|
aa173214f1 | ||
|
|
9d5afe383c | ||
|
|
a073123dfe | ||
|
|
474be4f762 | ||
|
|
978598bf00 | ||
|
|
534bfb04c1 | ||
|
|
b4c0a2c740 | ||
|
|
ef67066403 | ||
|
|
ed51f76f6c | ||
|
|
09d26277a0 | ||
|
|
51c6e0de50 | ||
|
|
a786d3f468 | ||
|
|
32838090c7 | ||
|
|
8954e38d3d | ||
|
|
1aa1499351 | ||
|
|
c3c1a448e7 | ||
|
|
c6f1270234 | ||
|
|
67f7facf52 | ||
|
|
7d2644262b | ||
|
|
5a1182fe7f | ||
|
|
023cd7acf1 | ||
|
|
2d6eeb84ea | ||
|
|
3d89b8d9c0 | ||
|
|
e7f1908c80 | ||
|
|
1a2b2c39b3 | ||
|
|
682b8423f4 | ||
|
|
965953973c | ||
|
|
5637fc5f09 | ||
|
|
2e2f25d0dc | ||
|
|
7b0c9b121c | ||
|
|
98826c8178 | ||
|
|
cff1a61202 | ||
|
|
eb3fb874c1 | ||
|
|
e9c7e9feea | ||
|
|
3c8c7693f6 | ||
|
|
09d09c7326 | ||
|
|
f769d41255 | ||
|
|
8890281c1a | ||
|
|
516a84eb28 | ||
|
|
a9cc9a6d3d | ||
|
|
82357a0630 | ||
|
|
8f72a8feec | ||
|
|
aa47507bda | ||
|
|
7270751f65 | ||
|
|
d08ca17d50 | ||
|
|
4ed4b6884a | ||
|
|
15faceb288 | ||
|
|
c6661f7a48 | ||
|
|
1504bf55bd | ||
|
|
98beac74b2 | ||
|
|
7c08fff0a7 | ||
|
|
e34ac45766 | ||
|
|
1a4a9795ea | ||
|
|
b5eb3fe039 | ||
|
|
1bf93ec38d | ||
|
|
8250329cf9 | ||
|
|
1feb2b7d8c | ||
|
|
490ef49721 | ||
|
|
4b5b2b464f | ||
|
|
0d6b3805e9 | ||
|
|
f8a7dd3809 | ||
|
|
8c04cccdd2 | ||
|
|
9679388001 | ||
|
|
e07cc4054b | ||
|
|
ec7757dfb7 | ||
|
|
1a71276afe | ||
|
|
13bdc8b8e6 | ||
|
|
0b8414c4d2 | ||
|
|
ba38e4acf2 | ||
|
|
44d5f2972c | ||
|
|
888422f0b8 | ||
|
|
1bb1cf58f2 | ||
|
|
addf1fb665 | ||
|
|
77cfb1e387 | ||
|
|
c120f3861c | ||
|
|
af534ae4a4 | ||
|
|
f8f7f59c85 | ||
|
|
ed3197fbea | ||
|
|
a2ecfe06b3 | ||
|
|
4ef7699f57 | ||
|
|
76b7833856 | ||
|
|
df700ba9c9 | ||
|
|
3095e81463 | ||
|
|
26470dcfea | ||
|
|
9b4505a9a4 | ||
|
|
2404d5106f | ||
|
|
ff1bdd7f6d | ||
|
|
5519b0d1ca | ||
|
|
bef0820c2a | ||
|
|
a72b96c768 | ||
|
|
c4429b5053 | ||
|
|
13940dfd32 | ||
|
|
b4d0181c36 | ||
|
|
6fe5d31f34 | ||
|
|
907fec464d | ||
|
|
9908c248e2 | ||
|
|
6fc46910b7 | ||
|
|
2d315d9633 | ||
|
|
74867aeb35 | ||
|
|
7c7420e723 | ||
|
|
065aa1ae4b | ||
|
|
23daa615ff | ||
|
|
c67204425e | ||
|
|
8cbeda72e0 | ||
|
|
2e89563509 | ||
|
|
21466ba709 | ||
|
|
814aa6e1c2 | ||
|
|
6ab2d5f5c7 | ||
|
|
3ffeb13322 | ||
|
|
4c3f321ba1 | ||
|
|
c325dcbab3 | ||
|
|
43c196bd7c | ||
|
|
c48e71b006 | ||
|
|
e26f6d6081 | ||
|
|
e50f40ca9d | ||
|
|
b353637d23 | ||
|
|
29bcb511c7 | ||
|
|
f1e61557ba | ||
|
|
24cc1a9390 | ||
|
|
91ebf9d694 | ||
|
|
b16ecb1a17 | ||
|
|
6b864845db | ||
|
|
545892275a | ||
|
|
270742da1e | ||
|
|
0d75d997bc | ||
|
|
637fc1fb55 | ||
|
|
00e1c0b2b3 | ||
|
|
3d423bf035 | ||
|
|
7ef1d0ecaf | ||
|
|
8183ee3d2e | ||
|
|
0c2b88d013 | ||
|
|
c012d955bd | ||
|
|
1d46efe0bb | ||
|
|
77348ed14c | ||
|
|
7397b867d3 | ||
|
|
9fcaba20ba | ||
|
|
36b8ae0c3c | ||
|
|
7209b09c57 | ||
|
|
802485a086 | ||
|
|
9bf3bae596 | ||
|
|
de84b5ce07 | ||
|
|
aab3bb1c50 | ||
|
|
3c560a83ef | ||
|
|
7b8e3ee208 | ||
|
|
15f748d4cb | ||
|
|
589badc1a3 | ||
|
|
1e559f0cef | ||
|
|
24084e8f49 | ||
|
|
263e649987 | ||
|
|
4f8ef6735f | ||
|
|
21d2a46dea | ||
|
|
1c210f5fb4 | ||
|
|
120c9a9b62 | ||
|
|
119ec55c65 | ||
|
|
ef70bb746d | ||
|
|
234f3db1eb | ||
|
|
f72c1ef360 | ||
|
|
1577ab0109 | ||
|
|
2095c64fb5 | ||
|
|
7287b39a4e | ||
|
|
7572757e58 | ||
|
|
f77b587b4b | ||
|
|
d22b36dc85 | ||
|
|
ee76a3651b | ||
|
|
8a63571773 | ||
|
|
a4faaa413d | ||
|
|
155f4e4d21 | ||
|
|
c4b31208a6 | ||
|
|
b3bd3f0fbb | ||
|
|
73ce7f0b71 | ||
|
|
d8d43a424e | ||
|
|
3e1b5f5126 | ||
|
|
66263c6a99 | ||
|
|
2bd2b8269c | ||
|
|
0d36e86697 | ||
|
|
ab7cecaca3 | ||
|
|
0db1ca334f | ||
|
|
4d0d4ee7c5 | ||
|
|
f50b948d65 | ||
|
|
566a92af4b | ||
|
|
6ed69bb364 | ||
|
|
c64367df18 | ||
|
|
12afc09b68 | ||
|
|
1cedd0cc42 | ||
|
|
fdbf963e3c | ||
|
|
b3e7727ee8 | ||
|
|
2a4b288086 | ||
|
|
3ce72b6437 | ||
|
|
1f11449760 | ||
|
|
a7427e54f4 | ||
|
|
b8d2992721 | ||
|
|
028348e87c | ||
|
|
de9661058f | ||
|
|
8666b88647 | ||
|
|
55ffc76cee | ||
|
|
0c30eee305 | ||
|
|
3101b7a4b2 | ||
|
|
c4bdfbe2f8 | ||
|
|
1725ccf488 | ||
|
|
774d73b4a8 | ||
|
|
6dab1f0cea | ||
|
|
cdf770eeeb | ||
|
|
c1eac22265 |
49 changed files with 2606 additions and 129 deletions
28
.github/workflows/autobump.yml
vendored
Normal file
28
.github/workflows/autobump.yml
vendored
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
name: "Autobump specific formulae"
|
||||
on:
|
||||
schedule:
|
||||
- cron: "15 2-23/4 * * *"
|
||||
|
||||
jobs:
|
||||
autobump:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Update Homebrew formula
|
||||
uses: dawidd6/action-homebrew-bump-formula@v4
|
||||
with:
|
||||
# Required, custom personal GitHub access token with only the 'public_repo' scope enabled
|
||||
token: ${{secrets.AUTOBUMP_TOKEN}}
|
||||
# Optional, will commit with this user name
|
||||
user_name: gromgit
|
||||
# Optional, will commit with this user email
|
||||
user_email: the.gromgit@gmail.com
|
||||
# Optional, will create tap repo fork in organization
|
||||
# org: ORG
|
||||
# Bump all outdated formulae in this tap
|
||||
tap: gromgit/fuse
|
||||
# Bump only these formulae if outdated
|
||||
# formula: mint-lang,vlang-weekly
|
||||
# Optional, if don't want to check for already open PRs
|
||||
force: false # true
|
||||
# Need to set this input if want to use `brew livecheck`
|
||||
livecheck: true
|
||||
28
.github/workflows/publish.yml
vendored
28
.github/workflows/publish.yml
vendored
|
|
@ -1,33 +1,45 @@
|
|||
name: brew pr-pull
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
types:
|
||||
- labeled
|
||||
|
||||
jobs:
|
||||
pr-pull:
|
||||
if: contains(github.event.pull_request.labels.*.name, 'pr-pull')
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ubuntu-22.04
|
||||
permissions:
|
||||
actions: read
|
||||
checks: read
|
||||
contents: write
|
||||
issues: read
|
||||
packages: write
|
||||
pull-requests: write
|
||||
steps:
|
||||
- name: Set up Homebrew
|
||||
uses: Homebrew/actions/setup-homebrew@master
|
||||
uses: Homebrew/actions/setup-homebrew@main
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Set up git
|
||||
uses: Homebrew/actions/git-user-config@master
|
||||
uses: Homebrew/actions/git-user-config@main
|
||||
|
||||
- name: Pull bottles
|
||||
env:
|
||||
HOMEBREW_GITHUB_API_TOKEN: ${{ github.token }}
|
||||
HOMEBREW_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
HOMEBREW_GITHUB_PACKAGES_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
HOMEBREW_GITHUB_PACKAGES_USER: ${{ github.repository_owner }}
|
||||
PULL_REQUEST: ${{ github.event.pull_request.number }}
|
||||
run: brew pr-pull --debug --tap=$GITHUB_REPOSITORY $PULL_REQUEST
|
||||
run: brew pr-pull --debug --tap="$GITHUB_REPOSITORY" "$PULL_REQUEST"
|
||||
|
||||
- name: Push commits
|
||||
uses: Homebrew/actions/git-try-push@master
|
||||
uses: Homebrew/actions/git-try-push@main
|
||||
with:
|
||||
token: ${{ github.token }}
|
||||
branch: main
|
||||
|
||||
- name: Delete branch
|
||||
if: github.event.pull_request.head.repo.fork == false
|
||||
env:
|
||||
BRANCH: ${{ github.event.pull_request.head.ref }}
|
||||
run: git push --delete origin $BRANCH
|
||||
run: git push --delete origin "$BRANCH"
|
||||
|
|
|
|||
26
.github/workflows/tests.yml
vendored
26
.github/workflows/tests.yml
vendored
|
|
@ -1,30 +1,30 @@
|
|||
name: brew test-bot
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: main
|
||||
branches:
|
||||
- main
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
test-bot:
|
||||
strategy:
|
||||
matrix:
|
||||
os: [macOS-latest]
|
||||
os: [macos-14, macos-15, macos-26]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Set up Homebrew
|
||||
id: set-up-homebrew
|
||||
uses: Homebrew/actions/setup-homebrew@master
|
||||
uses: Homebrew/actions/setup-homebrew@main
|
||||
|
||||
- name: Cache Homebrew Bundler RubyGems
|
||||
id: cache
|
||||
uses: actions/cache@v1
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: ${{ steps.set-up-homebrew.outputs.gems-path }}
|
||||
key: ${{ runner.os }}-rubygems-${{ steps.set-up-homebrew.outputs.gems-hash }}
|
||||
restore-keys: ${{ runner.os }}-rubygems-
|
||||
key: ${{ matrix.os }}-rubygems-${{ steps.set-up-homebrew.outputs.gems-hash }}
|
||||
restore-keys: ${{ matrix.os }}-rubygems-
|
||||
|
||||
- name: Install Homebrew Bundler RubyGems
|
||||
if: steps.cache.outputs.cache-hit != 'true'
|
||||
run: brew install-bundler-gems
|
||||
- run: brew install --cask macfuse
|
||||
|
||||
- run: brew test-bot --only-cleanup-before
|
||||
|
||||
|
|
@ -32,12 +32,12 @@ jobs:
|
|||
|
||||
- run: brew test-bot --only-tap-syntax
|
||||
|
||||
- run: brew test-bot --only-formulae
|
||||
- run: brew test-bot --verbose --debug --only-formulae --root-url='https://ghcr.io/v2/gromgit/fuse'
|
||||
if: github.event_name == 'pull_request'
|
||||
|
||||
- name: Upload bottles as artifact
|
||||
if: always() && github.event_name == 'pull_request'
|
||||
uses: actions/upload-artifact@main
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: bottles
|
||||
name: bottles_${{ matrix.os }}
|
||||
path: '*.bottle.*'
|
||||
|
|
|
|||
33
Formula/afuse-mac.rb
Normal file
33
Formula/afuse-mac.rb
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class AfuseMac < Formula
|
||||
desc "Automounting file system implemented in userspace with FUSE"
|
||||
homepage "https://github.com/pcarrier/afuse/"
|
||||
url "https://github.com/pcarrier/afuse.git",
|
||||
tag: "v0.5.0",
|
||||
revision: "d7f07c32e58850fa092bb98b53c5c570fed8be69"
|
||||
license "GPL-2.0-only"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any_skip_relocation, arm64_sonoma: "d0b0e74b43c27ce951eec136e4c45a98c43edc39cceeb95418f43c2d5bfa9afe"
|
||||
sha256 cellar: :any, ventura: "81eac9045ff5882fa86b3e40c6562bbed06cf1346ec5fb368033511cab03c982"
|
||||
end
|
||||
|
||||
depends_on "autoconf" => :build
|
||||
depends_on "automake" => :build
|
||||
depends_on "pkg-config" => :build
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "./autogen.sh"
|
||||
system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}"
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
assert_match "FUSE library version", pipe_output("#{bin}/afuse --version 2>&1")
|
||||
end
|
||||
end
|
||||
31
Formula/archivemount-mac.rb
Normal file
31
Formula/archivemount-mac.rb
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class ArchivemountMac < Formula
|
||||
desc "File system for accessing archives using libarchive"
|
||||
homepage "https://git.sr.ht/~nabijaczleweli/archivemount-ng"
|
||||
url "https://git.sr.ht/~nabijaczleweli/archivemount-ng/archive/1b.tar.gz"
|
||||
version "1b"
|
||||
sha256 "de10cfee3bff8c1dd2b92358531d3c0001db36a99e1098ed0c9d205d110e903d"
|
||||
license "LGPL-2.0-or-later"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_tahoe: "e0aa81ce9ae8fb880b340b02077e03acaf1d4f489554a411bf4430ba3a558f31"
|
||||
sha256 cellar: :any, arm64_sequoia: "fa4e1c0bbd16a705f0746d9c1721e3a5ebf9fc664b49291dd0390129542595ae"
|
||||
sha256 cellar: :any, arm64_sonoma: "ab28653f06c95589c740800b90187182cf45abffa2dda25146881dceaa963152"
|
||||
end
|
||||
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "libarchive"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse3
|
||||
system "make", "PREFIX=#{prefix}", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
system bin/"archivemount", "--version"
|
||||
end
|
||||
end
|
||||
48
Formula/avfs-mac.rb
Normal file
48
Formula/avfs-mac.rb
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class AvfsMac < Formula
|
||||
desc "Virtual file system that facilitates looking inside archives"
|
||||
homepage "https://avf.sourceforge.io/"
|
||||
url "https://downloads.sourceforge.net/project/avf/avfs/1.2.0/avfs-1.2.0.tar.bz2"
|
||||
sha256 "a25a8ec43c1ee172624e1a4c79ce66a1b930841cdb545b725f1ec64bcabe889c"
|
||||
license all_of: [
|
||||
"GPL-2.0-only",
|
||||
"LGPL-2.0-only", # for shared library
|
||||
"GPL-2.0-or-later", # modules/dav_ls.c
|
||||
"Zlib", # zlib/*
|
||||
]
|
||||
|
||||
livecheck do
|
||||
url :stable
|
||||
regex(%r{url=.*?/avfs[._-]v?(\d+(?:\.\d+)+)\.t}i)
|
||||
end
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 arm64_sonoma: "925ae6c3197657008289364ab4549266ea0a4a1a782314d6759eb97571f5d5e3"
|
||||
sha256 ventura: "0d46af6e0d31f778779b687dc7adadbf1afac641e2c2e35f8c837726ab635c37"
|
||||
end
|
||||
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "bzip2"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "xz"
|
||||
depends_on "zlib"
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "./configure", "--disable-silent-rules",
|
||||
"--enable-fuse",
|
||||
"--enable-library",
|
||||
"--with-system-zlib",
|
||||
"--with-system-bzlib",
|
||||
"--with-xz",
|
||||
*std_configure_args
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
system bin/"avfsd", "--version"
|
||||
end
|
||||
end
|
||||
40
Formula/bindfs-mac.rb
Normal file
40
Formula/bindfs-mac.rb
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class BindfsMac < Formula
|
||||
desc "FUSE file system for mounting to another location"
|
||||
homepage "https://bindfs.org/"
|
||||
url "https://bindfs.org/downloads/bindfs-1.18.0.tar.gz"
|
||||
sha256 "46fcf95b871109265e93cd42e5ae282c722716488ad9f0da1e1f98535be37f7a"
|
||||
license "GPL-2.0-or-later"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any_skip_relocation, arm64_sonoma: "18280a50ddee23ed3cfd05cb40e6a69a1d343ce118553f5098e9e9d289b66fb4"
|
||||
sha256 cellar: :any, ventura: "a2c590ee0ca1bfc22e4e485b680490791e9a17812f8b9041c2469063280641e1"
|
||||
end
|
||||
|
||||
head do
|
||||
url "https://github.com/mpartel/bindfs.git", branch: "master"
|
||||
|
||||
depends_on "autoconf" => :build
|
||||
depends_on "automake" => :build
|
||||
depends_on "libtool" => :build
|
||||
end
|
||||
|
||||
depends_on "pkg-config" => :build
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
# https://github.com/mpartel/bindfs/issues/163#issuecomment-2854763292
|
||||
ENV.append "CFLAGS", "-D_DARWIN_C_SOURCE"
|
||||
configure = build.head? ? "./autogen.sh" : "./configure"
|
||||
system configure, "--disable-macos-fs-link", *std_configure_args
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
system "#{bin}/bindfs", "-V"
|
||||
end
|
||||
end
|
||||
42
Formula/btfs-mac.rb
Normal file
42
Formula/btfs-mac.rb
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class BtfsMac < Formula
|
||||
desc "BitTorrent filesystem based on FUSE"
|
||||
homepage "https://github.com/johang/btfs"
|
||||
url "https://github.com/johang/btfs/archive/refs/tags/v2.24.tar.gz"
|
||||
sha256 "d71ddefe3c572e05362542a0d9fd0240d8d4e1578ace55a8b3245176e7fd8935"
|
||||
license "GPL-3.0-only"
|
||||
revision 1
|
||||
head "https://github.com/johang/btfs.git", branch: "master"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_sonoma: "71e05be0beb418720d313a63f10cfea741d648bf78630b497eb2c51a5003d319"
|
||||
sha256 cellar: :any, ventura: "388cc358e3c9372768469b6b1021f43d8def07f372aaef6e3f5d2d80bc93be48"
|
||||
end
|
||||
|
||||
depends_on "autoconf" => :build
|
||||
depends_on "automake" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "libtorrent-rasterbar"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "autoreconf", "--force", "--install", "--verbose"
|
||||
system "./configure", *std_configure_args, "--disable-silent-rules"
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
def caveats
|
||||
<<~EOS
|
||||
Mounting a torrent is fairly quick, but unmounting takes a long time.
|
||||
Be patient.
|
||||
EOS
|
||||
end
|
||||
|
||||
test do
|
||||
assert_match version.to_s, shell_output("#{bin}/btfs --version 2>&1")
|
||||
end
|
||||
end
|
||||
63
Formula/cryfs-mac.rb
Normal file
63
Formula/cryfs-mac.rb
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class CryfsMac < Formula
|
||||
desc "Encrypts your files so you can safely store them in Dropbox, iCloud, etc."
|
||||
homepage "https://www.cryfs.org"
|
||||
url "https://github.com/cryfs/cryfs/releases/download/1.0.3/cryfs-1.0.3.tar.xz"
|
||||
sha256 "1f30cc406e5c811490ba14174518a797a80442bfff317a2fdfbc5d21205b9dfe"
|
||||
license "LGPL-3.0-or-later"
|
||||
head "https://github.com/cryfs/cryfs.git", branch: "develop"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_tahoe: "cf79aa4893fe09f288540e992d1c8065cdab0344ada444ed4099c5e80fd5d910"
|
||||
sha256 cellar: :any, arm64_sequoia: "009d5696e71ed22394ff67d5a9e45bfcf605d0d9347f9db7d6316bf336a5e1d7"
|
||||
sha256 cellar: :any, arm64_sonoma: "ab98abc9ef34928585d59a7dd93a7d9de1cedadac40b7ab797c515ba06168b44"
|
||||
end
|
||||
|
||||
depends_on "cmake" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "python@3.13" => :build
|
||||
depends_on "boost"
|
||||
depends_on "curl"
|
||||
depends_on "fmt"
|
||||
depends_on "libomp"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "range-v3"
|
||||
depends_on "spdlog"
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
libomp = Formula["libomp"]
|
||||
libomp_args = [
|
||||
"-DBUILD_TESTING=off",
|
||||
"-DOpenMP_CXX_FLAGS='-Xpreprocessor -fopenmp -I#{libomp.include}'",
|
||||
"-DOpenMP_CXX_LIB_NAMES=omp",
|
||||
"-DOpenMP_omp_LIBRARY=#{libomp.lib}/libomp.dylib",
|
||||
]
|
||||
|
||||
system "cmake", "-B", "build", "-S", ".",
|
||||
"-DCRYFS_UPDATE_CHECKS=OFF",
|
||||
"-DDEPENDENCY_CONFIG=cmake-utils/DependenciesFromLocalSystem.cmake",
|
||||
*libomp_args, *std_cmake_args
|
||||
system "cmake", "--build", "build"
|
||||
system "cmake", "--install", "build"
|
||||
end
|
||||
|
||||
test do
|
||||
ENV["CRYFS_FRONTEND"] = "noninteractive"
|
||||
|
||||
# Test showing help page
|
||||
assert_match "CryFS", shell_output("#{bin}/cryfs 2>&1", 10)
|
||||
|
||||
# Test mounting a filesystem. This command will ultimately fail because homebrew tests
|
||||
# don't have the required permissions to mount fuse filesystems, but before that
|
||||
# it should display "Mounting filesystem". If that doesn't happen, there's something
|
||||
# wrong. For example there was an ABI incompatibility issue between the crypto++ version
|
||||
# the cryfs bottle was compiled with and the crypto++ library installed by homebrew to.
|
||||
mkdir "basedir"
|
||||
mkdir "mountdir"
|
||||
assert_match "Operation not permitted", pipe_output("#{bin}/cryfs -f basedir mountdir 2>&1", "password")
|
||||
end
|
||||
end
|
||||
38
Formula/curlftpfs-mac.rb
Normal file
38
Formula/curlftpfs-mac.rb
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class CurlftpfsMac < Formula
|
||||
desc "Filesystem for accessing FTP hosts based on FUSE and libcurl"
|
||||
homepage "https://curlftpfs.sourceforge.net/"
|
||||
url "https://downloads.sourceforge.net/project/curlftpfs/curlftpfs/0.9.2/curlftpfs-0.9.2.tar.gz"
|
||||
sha256 "4eb44739c7078ba0edde177bdd266c4cfb7c621075f47f64c85a06b12b3c6958"
|
||||
license "GPL-2.0-only"
|
||||
head ":pserver:anonymous:@curlftpfs.cvs.sourceforge.net:/cvsroot/curlftpfs", using: :cvs
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
rebuild 1
|
||||
sha256 cellar: :any, arm64_sonoma: "52266b0b218496e9f24f982e74165991d97b49791862e683fb240d635e63f063"
|
||||
sha256 cellar: :any, ventura: "1ed49dce5000b70b4ef4e47b3d8c535b4c25994cde3122a461483aa34e5d6cbe"
|
||||
end
|
||||
|
||||
depends_on "autoconf" => :build
|
||||
depends_on "automake" => :build
|
||||
depends_on "libtool" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "curl"
|
||||
depends_on "glib"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
ENV.append "CPPFLAGS", "-D__off_t=off_t"
|
||||
system "autoreconf", "--force", "--install", "--verbose"
|
||||
system "./configure", *std_configure_args
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
assert_match version.to_s, shell_output("#{bin}/curlftpfs --version 2>&1", 1)
|
||||
end
|
||||
end
|
||||
74
Formula/dislocker-mac.rb
Normal file
74
Formula/dislocker-mac.rb
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class DislockerMac < Formula
|
||||
desc "FUSE driver to read/write Windows' BitLocker-ed volumes"
|
||||
homepage "https://github.com/Aorimn/dislocker"
|
||||
url "https://github.com/Aorimn/dislocker/archive/refs/tags/v0.7.3.tar.gz"
|
||||
sha256 "8d5275577c44f2bd87f6e05dd61971a71c0e56a9cbedf000bd38deadd8b6c1e6"
|
||||
license "GPL-2.0-only"
|
||||
revision 2
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_sonoma: "018c699c1d89ce79a16974486a39b5a23763cd4fc0063d1de9bc326a34fa5a40"
|
||||
sha256 cellar: :any, ventura: "054aa62cbb45f561f88d200c95b308a45126320b361b5807dea5064ace6bf894"
|
||||
end
|
||||
|
||||
depends_on "cmake" => :build
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "mbedtls"
|
||||
|
||||
# Backport support for mbedtls 3.x
|
||||
patch do
|
||||
url "https://github.com/Aorimn/dislocker/commit/2cfbba2c8cc07e529622ba134d0a6982815d2b30.patch?full_index=1"
|
||||
sha256 "07e0e3cac520a04a478f1f08d612340fc2743fd492b0835c7fb41cfdb5ef4244"
|
||||
end
|
||||
|
||||
# Fix OSXFUSE-isms
|
||||
patch :DATA
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "cmake", "-S", ".", "-B", "build",
|
||||
"-DCMAKE_DISABLE_FIND_PACKAGE_Ruby=TRUE",
|
||||
*fuse_cmake_args, *std_cmake_args
|
||||
system "cmake", "--build", "build"
|
||||
system "cmake", "--install", "build"
|
||||
end
|
||||
|
||||
test do
|
||||
system "#{bin}/dislocker", "-h"
|
||||
end
|
||||
end
|
||||
__END__
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index bd854d2..9ab137d 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -92,7 +92,7 @@ if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
|
||||
# Don't use `-read_only_relocs' here as it seems to only work for 32 bits
|
||||
# binaries
|
||||
set (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-bind_at_load")
|
||||
- set (FUSE_LIB osxfuse_i64)
|
||||
+ set (FUSE_LIB fuse)
|
||||
else()
|
||||
# Useless warnings when used within Darwin
|
||||
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wconversion")
|
||||
diff --git a/src/dislocker-fuse.c b/src/dislocker-fuse.c
|
||||
index f93523f..3dd106c 100644
|
||||
--- a/src/dislocker-fuse.c
|
||||
+++ b/src/dislocker-fuse.c
|
||||
@@ -33,11 +33,7 @@
|
||||
|
||||
|
||||
|
||||
-#ifdef __DARWIN
|
||||
-# include <osxfuse/fuse.h>
|
||||
-#else
|
||||
-# include <fuse.h>
|
||||
-#endif /* __DARWIN */
|
||||
+#include <fuse.h>
|
||||
|
||||
|
||||
/** NTFS virtual partition's name */
|
||||
150
Formula/dwarfs-fuse-mac.rb
Normal file
150
Formula/dwarfs-fuse-mac.rb
Normal file
|
|
@ -0,0 +1,150 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class DwarfsFuseMac < Formula
|
||||
desc "Fast high compression read-only file system (macFUSE driver)"
|
||||
homepage "https://github.com/mhx/dwarfs"
|
||||
url "https://github.com/mhx/dwarfs/releases/download/v0.14.1/dwarfs-0.14.1.tar.xz"
|
||||
sha256 "620cf27f2e142a5f8fc05552a70704c3bf4df23c3279c6026b3f37954d0529c5"
|
||||
license "GPL-3.0-or-later"
|
||||
revision 2
|
||||
|
||||
livecheck do
|
||||
url :stable
|
||||
regex(/^(?:release[._-])?v?(\d+(?:\.\d+)+)$/i)
|
||||
strategy :github_latest
|
||||
end
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 arm64_tahoe: "c9f9e2ee142c6250c83e6fc37a885e2ba84dcb6146becc0dfe2cd1183deeda42"
|
||||
sha256 arm64_sequoia: "b2f5010b2c6adde00ea38254045aa61671ad40e08e27cd86617dc291d9664112"
|
||||
sha256 arm64_sonoma: "33574825dad792929955c4356d6ff1e30f75172b0c4e48849c42c360fe530f7e"
|
||||
end
|
||||
|
||||
depends_on "cmake" => :build
|
||||
depends_on "googletest" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "boost"
|
||||
depends_on "brotli"
|
||||
depends_on "double-conversion"
|
||||
depends_on "flac"
|
||||
depends_on "fmt"
|
||||
depends_on "gflags"
|
||||
depends_on "glog"
|
||||
depends_on "howard-hinnant-date"
|
||||
depends_on "libarchive"
|
||||
depends_on "libevent"
|
||||
depends_on "libsodium"
|
||||
depends_on "llvm" if DevelopmentTools.clang_build_version <= 1500
|
||||
depends_on "lz4"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "nlohmann-json"
|
||||
depends_on "openssl@3"
|
||||
depends_on "parallel-hashmap"
|
||||
depends_on "range-v3"
|
||||
depends_on "utf8cpp"
|
||||
depends_on "xxhash"
|
||||
depends_on "xz"
|
||||
depends_on "zstd"
|
||||
|
||||
conflicts_with "dwarfs", because: "both install the same binaries"
|
||||
|
||||
fails_with :clang do
|
||||
build 1500
|
||||
cause "Not all required C++20 features are supported"
|
||||
end
|
||||
|
||||
# Workaround for Boost 1.89.0 until upstream Folly fix.
|
||||
# Issue ref: https://github.com/facebook/folly/issues/2489
|
||||
# Fix to Undefined symbols for architecture x86_64: "_XXH3_64bits"
|
||||
patch :DATA
|
||||
|
||||
def install
|
||||
args = %W[
|
||||
-DBUILD_SHARED_LIBS=ON
|
||||
-DCMAKE_INSTALL_RPATH=#{rpath}
|
||||
-DWITH_LIBDWARFS=ON
|
||||
-DWITH_TOOLS=ON
|
||||
-DWITH_FUSE_DRIVER=ON
|
||||
-DWITH_TESTS=ON
|
||||
-DWITH_MAN_PAGES=ON
|
||||
-DENABLE_PERFMON=ON
|
||||
-DTRY_ENABLE_FLAC=ON
|
||||
-DENABLE_RICEPP=ON
|
||||
-DENABLE_STACKTRACE=OFF
|
||||
-DDISABLE_CCACHE=ON
|
||||
-DDISABLE_MOLD=ON
|
||||
-DPREFER_SYSTEM_GTEST=ON
|
||||
]
|
||||
|
||||
if DevelopmentTools.clang_build_version <= 1500
|
||||
# No ASAN for folly
|
||||
ENV.append "CXXFLAGS", "-D_LIBCPP_HAS_NO_ASAN"
|
||||
|
||||
ENV.llvm_clang
|
||||
|
||||
# Needed in order to find the C++ standard library
|
||||
# See: https://github.com/Homebrew/homebrew-core/issues/178435
|
||||
ENV.prepend "LDFLAGS", "-L#{Formula["llvm"].opt_lib}/unwind -lunwind"
|
||||
ENV.prepend_path "HOMEBREW_LIBRARY_PATHS", Formula["llvm"].opt_lib/"c++"
|
||||
end
|
||||
|
||||
setup_fuse
|
||||
system "cmake", "-S", ".", "-B", "build", *args, *std_cmake_args
|
||||
system "cmake", "--build", "build", "--parallel"
|
||||
system "cmake", "--install", "build"
|
||||
end
|
||||
|
||||
test do
|
||||
# produce a dwarfs image
|
||||
system bin/"mkdwarfs", "-i", prefix, "-o", "test.dwarfs", "-l4"
|
||||
|
||||
# check the image
|
||||
system bin/"dwarfsck", "test.dwarfs"
|
||||
|
||||
# get JSON info about the image
|
||||
info = JSON.parse(shell_output("#{bin}/dwarfsck test.dwarfs -j"))
|
||||
assert_equal info["created_by"], "libdwarfs v#{version}"
|
||||
assert info["inode_count"] >= 10
|
||||
|
||||
# extract the image
|
||||
system bin/"dwarfsextract", "-i", "test.dwarfs"
|
||||
assert_path_exists "bin/mkdwarfs"
|
||||
assert_path_exists "share/man/man1/mkdwarfs.1"
|
||||
assert compare_file bin/"mkdwarfs", "bin/mkdwarfs"
|
||||
|
||||
(testpath/"test.cpp").write <<~CPP
|
||||
#include <iostream>
|
||||
#include <dwarfs/version.h>
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
int v = dwarfs::get_dwarfs_library_version();
|
||||
int major = v / 10000;
|
||||
int minor = (v % 10000) / 100;
|
||||
int patch = v % 100;
|
||||
std::cout << major << "." << minor << "." << patch << std::endl;
|
||||
return 0;
|
||||
}
|
||||
CPP
|
||||
|
||||
# ENV.llvm_clang doesn't work in the test block
|
||||
ENV["CXX"] = Formula["llvm"].opt_bin/"clang++" if OS.mac? && DevelopmentTools.clang_build_version <= 1500
|
||||
|
||||
system ENV.cxx, "-std=c++20", "test.cpp", "-I#{include}", "-L#{lib}", "-o", "test", "-ldwarfs_common"
|
||||
|
||||
assert_equal version.to_s, shell_output("./test").chomp
|
||||
end
|
||||
end
|
||||
|
||||
__END__
|
||||
--- a/folly/CMake/folly-config.cmake.in
|
||||
+++ b/folly/CMake/folly-config.cmake.in
|
||||
@@ -38,7 +38,6 @@ find_dependency(Boost 1.51.0 MODULE
|
||||
filesystem
|
||||
program_options
|
||||
regex
|
||||
- system
|
||||
thread
|
||||
REQUIRED
|
||||
)
|
||||
50
Formula/encfs-mac.rb
Normal file
50
Formula/encfs-mac.rb
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class EncfsMac < Formula
|
||||
desc "Encrypted pass-through FUSE file system"
|
||||
homepage "https://vgough.github.io/encfs/"
|
||||
url "https://github.com/vgough/encfs/archive/refs/tags/v1.9.5.tar.gz"
|
||||
sha256 "4709f05395ccbad6c0a5b40a4619d60aafe3473b1a79bafb3aa700b1f756fd63"
|
||||
# The code comprising the EncFS library (libencfs) is licensed under the LGPL.
|
||||
# The main programs (encfs, encfsctl, etc) are licensed under the GPL.
|
||||
license "GPL-3.0-or-later"
|
||||
revision 2
|
||||
head "https://github.com/vgough/encfs.git", branch: "master"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 arm64_sonoma: "04797584c9dde670d286a5369261def970ab4a5b84081999874fe84b9e24dee6"
|
||||
sha256 ventura: "c1378c0f82327e7ad461b6215b7e88680d4326e94736955879313931ceacaf7a"
|
||||
end
|
||||
|
||||
depends_on "cmake" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "gettext"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "openssl@3"
|
||||
depends_on "tinyxml2"
|
||||
|
||||
patch do
|
||||
url "https://github.com/vgough/encfs/commit/75080681626062e5832aec0b1bb3aa37d8364822.patch?full_index=1"
|
||||
sha256 "0222bc4a4f03541b1523b03471f6af5925d4ed2a4c0d36a9a6fe39a18c036770"
|
||||
end
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
ENV.cxx11
|
||||
system "cmake", "-S", ".", "-B", "build",
|
||||
"-DBUILD_UNIT_TESTS=OFF",
|
||||
"-DUSE_INTERNAL_TINYXML=OFF",
|
||||
"-DCMAKE_POLICY_VERSION_MINIMUM=3.5",
|
||||
*std_cmake_args
|
||||
system "cmake", "--build", "build"
|
||||
system "cmake", "--install", "build"
|
||||
end
|
||||
|
||||
test do
|
||||
# Functional test violates sandboxing, so punt.
|
||||
# Issue #50602; upstream issue vgough/encfs#151
|
||||
assert_match version.to_s, shell_output("#{bin}/encfs 2>&1", 1)
|
||||
end
|
||||
end
|
||||
|
|
@ -1,48 +0,0 @@
|
|||
require_relative "../require/macfuse" if OS.mac?
|
||||
|
||||
class Encfs < Formula
|
||||
desc "Encrypted pass-through FUSE file system"
|
||||
homepage "https://vgough.github.io/encfs/"
|
||||
url "https://github.com/vgough/encfs/archive/v1.9.5.tar.gz"
|
||||
sha256 "4709f05395ccbad6c0a5b40a4619d60aafe3473b1a79bafb3aa700b1f756fd63"
|
||||
# The code comprising the EncFS library (libencfs) is licensed under the LGPL.
|
||||
# The main programs (encfs, encfsctl, etc) are licensed under the GPL.
|
||||
license "GPL-3.0"
|
||||
head "https://github.com/vgough/encfs.git"
|
||||
|
||||
bottle do
|
||||
root_url "https://github.com/gromgit/homebrew-fuse/releases/download/encfs-1.9.5"
|
||||
sha256 big_sur: "a3ad5e221f05f624c74ff3015164ae6e2bac3a99537b3b0a9d8f0b546130abe7"
|
||||
sha256 catalina: "41efd14389d04bf5d2a0bc957972b15b6e1ff511452c89749ddc68b6bca6e3e7"
|
||||
sha256 mojave: "aaf2aa568786ed055114cf54ee4b46acd66f74a7bc10715b446198164afa1871"
|
||||
sha256 x86_64_linux: "8f4401c6165c596ce0e9f4e526c355cd573581c64da5661e754afde9300e71b5"
|
||||
end
|
||||
|
||||
depends_on "cmake" => :build
|
||||
depends_on "pkg-config" => :build
|
||||
depends_on "gettext"
|
||||
depends_on "openssl@1.1"
|
||||
|
||||
on_macos do
|
||||
depends_on MacfuseRequirement
|
||||
end
|
||||
|
||||
on_linux do
|
||||
depends_on "libfuse"
|
||||
end
|
||||
|
||||
def install
|
||||
ENV.cxx11
|
||||
|
||||
mkdir "build" do
|
||||
system "cmake", "..", *std_cmake_args
|
||||
system "make", "install"
|
||||
end
|
||||
end
|
||||
|
||||
test do
|
||||
# Functional test violates sandboxing, so punt.
|
||||
# Issue #50602; upstream issue vgough/encfs#151
|
||||
assert_match version.to_s, shell_output("#{bin}/encfs 2>&1", 1)
|
||||
end
|
||||
end
|
||||
36
Formula/ext2fuse-mac.rb
Normal file
36
Formula/ext2fuse-mac.rb
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class Ext2fuseMac < Formula
|
||||
desc "Compact implementation of ext2 file system using FUSE"
|
||||
homepage "https://sourceforge.net/projects/ext2fuse"
|
||||
url "https://downloads.sourceforge.net/project/ext2fuse/ext2fuse/0.8.1/ext2fuse-src-0.8.1.tar.gz"
|
||||
sha256 "431035797b2783216ec74b6aad5c721b4bffb75d2174967266ee49f0a3466cd9"
|
||||
license "GPL-2.0-or-later"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
rebuild 1
|
||||
sha256 cellar: :any_skip_relocation, arm64_sonoma: "1fea57a1f597f489ac0a58e6c75b4a7ea970b07f33d7c31dfe1a812a8029bf02"
|
||||
sha256 cellar: :any, ventura: "8935e712ae67cb680c77a88dbf6aa6c66f4b294c67aefc557dce55c5c8bd5f41"
|
||||
end
|
||||
|
||||
depends_on "gcc" => :build
|
||||
depends_on "e2fsprogs"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
ENV.append "LIBS", "-lfuse"
|
||||
ENV.append "CFLAGS",
|
||||
"-D__FreeBSD__=10 -DENABLE_SWAPFS -I/usr/local/include/fuse "
|
||||
ENV.append "CFLAGS", "--std=gnu89" if ENV.compiler == :clang
|
||||
|
||||
system "./configure", *std_configure_args
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
assert_match version.to_s, shell_output("#{bin}/ext2fuse --version 2>&1", 9)
|
||||
end
|
||||
end
|
||||
31
Formula/ext4fuse-mac.rb
Normal file
31
Formula/ext4fuse-mac.rb
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class Ext4fuseMac < Formula
|
||||
desc "Read-only implementation of ext4 for FUSE"
|
||||
homepage "https://github.com/gerard/ext4fuse"
|
||||
url "https://github.com/gerard/ext4fuse/archive/refs/tags/v0.1.3.tar.gz"
|
||||
sha256 "550f1e152c4de7d4ea517ee1c708f57bfebb0856281c508511419db45aa3ca9f"
|
||||
license "GPL-2.0-only"
|
||||
head "https://github.com/gerard/ext4fuse.git", branch: "master"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
rebuild 1
|
||||
sha256 cellar: :any_skip_relocation, arm64_sonoma: "293d9d09f9a4d2cfb51beb789c8b2581b4419b00daa68507f3bf6c97f258aff5"
|
||||
sha256 cellar: :any, ventura: "4c4f3b18a0cd8b290e52d1290ea63a87c04597f43d9c1cde6e71c487bd4a4505"
|
||||
end
|
||||
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "make"
|
||||
bin.install "ext4fuse"
|
||||
end
|
||||
|
||||
test do
|
||||
assert_match version.to_s, shell_output("#{bin}/ext4fuse --version 2>&1", 1)
|
||||
end
|
||||
end
|
||||
31
Formula/fuse-zip-mac.rb
Normal file
31
Formula/fuse-zip-mac.rb
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class FuseZipMac < Formula
|
||||
desc "FUSE file system to create & manipulate ZIP archives"
|
||||
homepage "https://bitbucket.org/agalanin/fuse-zip"
|
||||
url "https://bitbucket.org/agalanin/fuse-zip/downloads/fuse-zip-0.7.2.tar.gz"
|
||||
sha256 "3dd0be005677442f1fd9769a02dfc0b4fcdd39eb167e5697db2f14f4fee58915"
|
||||
license "GPL-3.0-or-later"
|
||||
head "https://bitbucket.org/agalanin/fuse-zip", using: :hg, branch: "master"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
rebuild 1
|
||||
sha256 cellar: :any, arm64_sonoma: "07d4a035c41b76adc6fa4e320ba0e002bc6ff6e8ca52e0e47d0ad42b267762f0"
|
||||
sha256 cellar: :any, ventura: "185b074a45baad043449b409896b0425ffcdc83eeac02d903f6b5a84867cb7e2"
|
||||
end
|
||||
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "libzip"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "make", "prefix=#{prefix}", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
system bin/"fuse-zip", "--help"
|
||||
end
|
||||
end
|
||||
47
Formula/fusehfs-mac.rb
Normal file
47
Formula/fusehfs-mac.rb
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class FusehfsMac < Formula
|
||||
desc "FUSE driver for HFS filesystems"
|
||||
homepage "https://thejoelpatrol.github.io/fusehfs/"
|
||||
url "https://github.com/thejoelpatrol/fusehfs/archive/refs/tags/v0.1.5.tar.gz"
|
||||
sha256 "0f37b0cf31d38665af279b7b5bde0a185da55d7e8e6ccdb0de9133c3740143e8"
|
||||
license "GPL-2.0-or-later"
|
||||
head "https://github.com/thejoelpatrol/fusehfs.git", branch: "master"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any_skip_relocation, arm64_sonoma: "937bc2d207749a4a9008abc5961f683c6b6753703ef8e78704746bec751e6dd3"
|
||||
sha256 cellar: :any, ventura: "1c82b43b527c4ebb8e7979172a093856d8b7ca1be38d668888799db82239ed2a"
|
||||
end
|
||||
|
||||
depends_on xcode: :build
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
xcodebuild "-arch", Hardware::CPU.arch,
|
||||
"-target", "FS Bundle",
|
||||
"-configuration", "Release",
|
||||
"CODE_SIGN_IDENTITY=-",
|
||||
"SYMROOT=build",
|
||||
"MACOSX_DEPLOYMENT_TARGET=#{MacOS.version}"
|
||||
bin.install "build/Release/hfsck"
|
||||
bin.install "build/Release/mount_fusefs_hfs"
|
||||
pkgshare.install "build/Release/fusefs_hfs.fs"
|
||||
end
|
||||
|
||||
def caveats
|
||||
<<~EOS
|
||||
To add support for mounting HFS-formatted disk images via double-click,
|
||||
install and re-sign the filesystem bundle with:
|
||||
|
||||
codesign -f -s - $(brew --prefix)/share/fusehfs-mac/fusefs_hfs.fs
|
||||
sudo ln -s $(brew --prefix)/share/fusehfs-mac/fusefs_hfs.fs /Library/Filesystems
|
||||
EOS
|
||||
end
|
||||
|
||||
test do
|
||||
assert_match version.to_s, shell_output("#{bin}/mount_fusefs_hfs --version 2>&1", 1)
|
||||
end
|
||||
end
|
||||
72
Formula/gcsfuse-mac.rb
Normal file
72
Formula/gcsfuse-mac.rb
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class GcsfuseMac < Formula
|
||||
desc "User-space file system for interacting with Google Cloud"
|
||||
homepage "https://github.com/googlecloudplatform/gcsfuse"
|
||||
url "https://github.com/GoogleCloudPlatform/gcsfuse/archive/refs/tags/v3.5.5.tar.gz"
|
||||
sha256 "ae5f26ee6969081ecd71bdc581871ebb88cb7b03a00d3bab6f9939b80bcfa39a"
|
||||
license "Apache-2.0"
|
||||
head "https://github.com/GoogleCloudPlatform/gcsfuse.git", branch: "master"
|
||||
|
||||
livecheck do
|
||||
url :stable
|
||||
strategy :github_latest
|
||||
end
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any_skip_relocation, arm64_tahoe: "7f39bb946f29f15b669b159d3ea2b784e3836e34ee1a58406502607ba5a08dfe"
|
||||
sha256 cellar: :any_skip_relocation, arm64_sequoia: "11c070d74913efa55f634e8c9a6e1cff408dcca490908b161a7863e65ba3f1f4"
|
||||
sha256 cellar: :any_skip_relocation, arm64_sonoma: "3498f4c6657e881e8b21850d1c9793997535a24aeddf0d46f0e226f89097d8fe"
|
||||
end
|
||||
|
||||
depends_on "go" => :build
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
patch do
|
||||
url "https://raw.githubusercontent.com/gromgit/formula-patches/f69773ce21e06e4c6407da25af33486f5ec6185d/gcsfuse-mac/macos.patch?full_index=1"
|
||||
sha256 "ab3e204bf099cbabefee825f634cfb9c33349002059b1522488c12bf5790ef11"
|
||||
end
|
||||
|
||||
patch :DATA
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
# Build the build_gcsfuse tool. Ensure that it doesn't pick up any
|
||||
# libraries from the user's GOPATH; it should have no dependencies.
|
||||
ENV.delete("GOPATH")
|
||||
system "go", "build", "./tools/build_gcsfuse"
|
||||
|
||||
# Use that tool to build gcsfuse itself.
|
||||
gcsfuse_version = build.head? ? Utils.git_short_head : version.to_s
|
||||
system "./build_gcsfuse", buildpath, prefix, gcsfuse_version
|
||||
end
|
||||
|
||||
def caveats
|
||||
<<~EOS
|
||||
Upstream doesn't actively support macOS (https://github.com/GoogleCloudPlatform/gcsfuse/issues/1299).
|
||||
EOS
|
||||
end
|
||||
|
||||
test do
|
||||
system bin/"gcsfuse", "--help"
|
||||
system "#{sbin}/mount_gcsfuse", "--help"
|
||||
end
|
||||
end
|
||||
|
||||
__END__
|
||||
diff --git a/tools/build_gcsfuse/main.go b/tools/build_gcsfuse/main.go
|
||||
index b1a4022..678f747 100644
|
||||
--- a/tools/build_gcsfuse/main.go
|
||||
+++ b/tools/build_gcsfuse/main.go
|
||||
@@ -134,8 +134,6 @@ func buildBinaries(dstDir, srcDir, version string, buildArgs []string) (err erro
|
||||
cmd := exec.Command(
|
||||
"go",
|
||||
"build",
|
||||
- "-C",
|
||||
- srcDir,
|
||||
"-o",
|
||||
path.Join(dstDir, bin.outputPath))
|
||||
|
||||
|
||||
95
Formula/gitfs-mac.rb
Normal file
95
Formula/gitfs-mac.rb
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class GitfsMac < Formula
|
||||
include Language::Python::Virtualenv
|
||||
|
||||
desc "Version controlled file system"
|
||||
homepage "https://www.presslabs.com/gitfs"
|
||||
url "https://github.com/vtemian/gitfs/archive/refs/tags/v1.0.0.tar.gz"
|
||||
sha256 "75835c6e4cad400c06e86ecb2efedfa7a8ffe5c5939c4e70040f6e861b4e85d3"
|
||||
license "Apache-2.0"
|
||||
head "https://github.com/vtemian/gitfs.git", branch: "main"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_sequoia: "e48dd7b94f4ff6bbec3b51fa4c607a04bdb2338267315d3da988c1d9f6254bd5"
|
||||
sha256 cellar: :any, arm64_sonoma: "903d6859b1d8cb7d0fa54ee4294e6bd3c57d796495b4850ba4cb50b6c5bf7d63"
|
||||
end
|
||||
|
||||
depends_on "libgit2"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "python@3.13"
|
||||
|
||||
uses_from_macos "libffi"
|
||||
|
||||
resource "atomiclong" do
|
||||
url "https://files.pythonhosted.org/packages/86/8c/70aea8215c6ab990f2d91e7ec171787a41b7fbc83df32a067ba5d7f3324f/atomiclong-0.1.1.tar.gz"
|
||||
sha256 "cb1378c4cd676d6f243641c50e277504abf45f70f1ea76e446efcdbb69624bbe"
|
||||
end
|
||||
|
||||
resource "certifi" do
|
||||
url "https://files.pythonhosted.org/packages/73/f7/f14b46d4bcd21092d7d3ccef689615220d8a08fb25e564b65d20738e672e/certifi-2025.6.15.tar.gz"
|
||||
sha256 "d747aa5a8b9bbbb1bb8c22bb13e22bd1f18e9796defa16bab421f7f7a317323b"
|
||||
end
|
||||
|
||||
resource "cffi" do
|
||||
url "https://files.pythonhosted.org/packages/fc/97/c783634659c2920c3fc70419e3af40972dbaf758daa229a7d6ea6135c90d/cffi-1.17.1.tar.gz"
|
||||
sha256 "1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824"
|
||||
end
|
||||
|
||||
resource "mfusepy" do
|
||||
url "https://files.pythonhosted.org/packages/1c/94/c9d5dcba4a6a2b32ba23e22fd13ca08e6f5408420b2dfe42984af22277b6/mfusepy-3.0.0.tar.gz"
|
||||
sha256 "eddade33e427bac9c455464cd0a7d12d63c033255ec6b1e0d6ada143a945c6f2"
|
||||
end
|
||||
|
||||
resource "pycparser" do
|
||||
url "https://files.pythonhosted.org/packages/1d/b2/31537cf4b1ca988837256c910a668b553fceb8f069bedc4b1c826024b52c/pycparser-2.22.tar.gz"
|
||||
sha256 "491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6"
|
||||
end
|
||||
|
||||
resource "pygit2" do
|
||||
url "https://files.pythonhosted.org/packages/c1/4a/72a5f3572912d93d8096f8447a20fe3aff5b5dc65aca08a2083eae54d148/pygit2-1.18.0.tar.gz"
|
||||
sha256 "fbd01d04a4d2ce289aaa02cf858043679bf0dd1f9855c6b88ed95382c1f5011a"
|
||||
end
|
||||
|
||||
resource "sentry-sdk" do
|
||||
url "https://files.pythonhosted.org/packages/04/4c/af31e0201b48469786ddeb1bf6fd3dfa3a291cc613a0fe6a60163a7535f9/sentry_sdk-2.30.0.tar.gz"
|
||||
sha256 "436369b02afef7430efb10300a344fb61a11fe6db41c2b11f41ee037d2dd7f45"
|
||||
end
|
||||
|
||||
resource "urllib3" do
|
||||
url "https://files.pythonhosted.org/packages/15/22/9ee70a2574a4f4599c47dd506532914ce044817c7752a79b6a51286319bc/urllib3-2.5.0.tar.gz"
|
||||
sha256 "3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760"
|
||||
end
|
||||
|
||||
def install
|
||||
virtualenv_install_with_resources
|
||||
end
|
||||
|
||||
def caveats
|
||||
<<~EOS
|
||||
gitfs clones repos in /var/lib/gitfs. You can either create it with
|
||||
sudo mkdir -m 1777 /var/lib/gitfs or use another folder with the
|
||||
repo_path argument.
|
||||
EOS
|
||||
end
|
||||
|
||||
test do
|
||||
xy = Language::Python.major_minor_version Formula["python@3.13"].opt_bin/"python3"
|
||||
ENV.prepend_create_path "PYTHONPATH", libexec/"lib/python#{xy}/site-packages"
|
||||
|
||||
(testpath/"test.py").write <<~EOS
|
||||
import gitfs
|
||||
import pygit2
|
||||
pygit2.init_repository('testing/.git', True)
|
||||
EOS
|
||||
|
||||
system Formula["python@3.13"].opt_bin/"python3", "test.py"
|
||||
assert_path_exists testpath/"testing/.git/config"
|
||||
cd "testing" do
|
||||
system "git", "remote", "add", "homebrew", "https://github.com/Homebrew/homebrew-core.git"
|
||||
assert_match "homebrew", shell_output("git remote")
|
||||
end
|
||||
end
|
||||
end
|
||||
35
Formula/gocryptfs-mac.rb
Normal file
35
Formula/gocryptfs-mac.rb
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class GocryptfsMac < Formula
|
||||
desc "Encrypted overlay filesystem written in Go"
|
||||
homepage "https://nuetzlich.net/gocryptfs/"
|
||||
url "https://github.com/rfjakob/gocryptfs/releases/download/v2.6.1/gocryptfs_v2.6.1_src-deps.tar.gz"
|
||||
sha256 "9a966c1340a1a1d92073091643687b1205c46b57017c5da2bf7e97e3f5729a5a"
|
||||
license "MIT"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_sequoia: "56a4955f379ccb148f2e269679c91af0202bb67725dc6f1ed661bb5f8c9f0b68"
|
||||
sha256 cellar: :any, arm64_sonoma: "8c4634a99acb568f25b96fc752b3bdb7a16d830e96126b93ee5a354a4dc67b2d"
|
||||
sha256 cellar: :any, ventura: "40cda455675c2f6a0970c1c5388797da874758bf8f50d57fa4bf6ff448ab1edd"
|
||||
end
|
||||
|
||||
depends_on "go" => :build
|
||||
depends_on "pkg-config" => :build
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "openssl@3"
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "./build.bash"
|
||||
bin.install "gocryptfs", "gocryptfs-xray/gocryptfs-xray"
|
||||
man1.install "Documentation/gocryptfs.1", "Documentation/gocryptfs-xray.1"
|
||||
end
|
||||
|
||||
test do
|
||||
(testpath/"encdir").mkpath
|
||||
pipe_output("#{bin}/gocryptfs -init #{testpath}/encdir", "password", 0)
|
||||
assert_path_exists testpath/"encdir/gocryptfs.conf"
|
||||
end
|
||||
end
|
||||
47
Formula/goofys-mac.rb
Normal file
47
Formula/goofys-mac.rb
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class GoofysMac < Formula
|
||||
desc "Filey-System interface to Amazon S3"
|
||||
homepage "https://github.com/kahing/goofys"
|
||||
url "https://github.com/kahing/goofys.git",
|
||||
tag: "v0.24.0",
|
||||
revision: "45b8d78375af1b24604439d2e60c567654bcdf88"
|
||||
license "Apache-2.0"
|
||||
head "https://github.com/kahing/goofys.git"
|
||||
|
||||
bottle do
|
||||
root_url "https://github.com/gromgit/homebrew-fuse/releases/download/goofys-mac-0.24.0"
|
||||
sha256 cellar: :any_skip_relocation, monterey: "0edf3be0d9fb22e7637e981539a5e93158d4543050a61afb5d11ce0ec80f0e17"
|
||||
sha256 cellar: :any_skip_relocation, big_sur: "f3f73dc39927ee0a94a26a3bc8ae4b097e083d48e311b79274a85ac7f547e85a"
|
||||
sha256 cellar: :any_skip_relocation, catalina: "b61cf142b7a484520ad554d17947d7022ed0c3fdab04d6cf89da93b986d6de15"
|
||||
sha256 cellar: :any_skip_relocation, mojave: "648d204e47b710662db2b778164346ef2b9fd77a4ec02af210fc8116eee7bb7f"
|
||||
end
|
||||
|
||||
# Discussion ref: https://github.com/Homebrew/homebrew-core/pull/122082#issuecomment-1436535501
|
||||
disable! date: "2024-02-12", because: :does_not_build
|
||||
|
||||
depends_on "go" => :build
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
contents = Dir["*"]
|
||||
gopath = buildpath/"gopath"
|
||||
(gopath/"src/github.com/kahing/goofys").install contents
|
||||
|
||||
ENV["GOPATH"] = gopath
|
||||
|
||||
goofys_version = build.head? ? Utils.git_head : version
|
||||
cd gopath/"src/github.com/kahing/goofys" do
|
||||
system "go", "build", *std_go_args,
|
||||
"-ldflags", "-X main.Version=#{goofys_version}",
|
||||
"-o", "#{bin}/goofys"
|
||||
prefix.install_metafiles
|
||||
end
|
||||
end
|
||||
|
||||
test do
|
||||
system "#{bin}/goofys", "--version"
|
||||
end
|
||||
end
|
||||
32
Formula/hfsfuse-mac.rb
Normal file
32
Formula/hfsfuse-mac.rb
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class HfsfuseMac < Formula
|
||||
desc "FUSE driver for HFS+ filesystems (read-only)"
|
||||
homepage "https://github.com/0x09/hfsfuse"
|
||||
url "https://github.com/0x09/hfsfuse/releases/download/0.310/hfsfuse-0.310.tar.gz"
|
||||
sha256 "49ad0ea6b7cbef4d55b1b436e0e772a639162fb35cc80586ba9ae49f05ad3e65"
|
||||
license all_of: ["BSD-2-Clause", "MIT"]
|
||||
head "https://github.com/0x09/hfsfuse.git", branch: "master"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_tahoe: "f3f8f016549b023c31c1fbca1998d31d5d1452319a3152b0d21a8107c0c81cf8"
|
||||
sha256 cellar: :any, arm64_sequoia: "f3843985cb817343609f990fa7bd1c346453017814defbf4311c5f031c6ba8cd"
|
||||
sha256 cellar: :any, arm64_sonoma: "33a1216d966ed9426cbf2be528b17556e07ce0757161d62d774a69b2b72dfd3f"
|
||||
end
|
||||
|
||||
depends_on "libarchive"
|
||||
depends_on "lzfse"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "make", "install", "prefix=#{prefix}"
|
||||
end
|
||||
|
||||
test do
|
||||
assert_match version.to_s, shell_output("#{bin}/hfsfuse --version 2>&1")
|
||||
system bin/"hfsdump"
|
||||
end
|
||||
end
|
||||
40
Formula/ifuse-mac.rb
Normal file
40
Formula/ifuse-mac.rb
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class IfuseMac < Formula
|
||||
desc "FUSE module for iOS devices"
|
||||
homepage "https://libimobiledevice.org/"
|
||||
url "https://github.com/libimobiledevice/ifuse/archive/refs/tags/1.2.0.tar.gz"
|
||||
sha256 "29ab853037d781ef19f734936454c7f7806d1c46fbcca6e15ac179685ab37c9c"
|
||||
license "LGPL-2.1-or-later"
|
||||
head "https://github.com/libimobiledevice/ifuse.git", branch: "master"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_sequoia: "7b2a54ceeca52d5ada2e625f7e3edbcdd7f6eedfc8b8f6286137fb38fcff50e6"
|
||||
end
|
||||
|
||||
depends_on "autoconf" => :build
|
||||
depends_on "automake" => :build
|
||||
depends_on "libtool" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "glib"
|
||||
depends_on "libimobiledevice"
|
||||
depends_on "libplist"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
# This file can be generated only if `.git` directory is present
|
||||
# Create it manually
|
||||
(buildpath/".tarball-version").write version.to_s
|
||||
|
||||
setup_fuse3
|
||||
system "./autogen.sh", *std_configure_args
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
# Actual test of functionality requires osxfuse, so test for expected failure instead
|
||||
assert_match "ERROR: No device found!", shell_output("#{bin}/ifuse --list-apps", 1)
|
||||
end
|
||||
end
|
||||
61
Formula/mp3fs-mac.rb
Normal file
61
Formula/mp3fs-mac.rb
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class Mp3fsMac < Formula
|
||||
desc "Read-only FUSE file system: transcodes audio formats to MP3"
|
||||
homepage "https://khenriks.github.io/mp3fs/"
|
||||
url "https://github.com/khenriks/mp3fs/releases/download/v1.1.1/mp3fs-1.1.1.tar.gz"
|
||||
sha256 "942b588fb623ea58ce8cac8844e6ff2829ad4bc9b4c163bba58e3fa9ebc15608"
|
||||
license "GPL-3.0-or-later"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
rebuild 1
|
||||
sha256 cellar: :any, arm64_sonoma: "4171a0e1383f1c17150ed12ecb88fb766df4a105ce789e79e3d67130208c4b60"
|
||||
sha256 cellar: :any, ventura: "6d3d1bd7f5db566dbe51bf16dfd5c63ed79cc1ea98904d48921953ccc9b77c01"
|
||||
end
|
||||
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "flac"
|
||||
depends_on "lame"
|
||||
depends_on "libid3tag"
|
||||
depends_on "libvorbis"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
patch :DATA
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "./configure", *std_configure_args
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
assert_match "mp3fs version: #{version}", shell_output("#{bin}/mp3fs -V")
|
||||
end
|
||||
end
|
||||
__END__
|
||||
diff --git a/src/mp3fs.cc b/src/mp3fs.cc
|
||||
index f846da9..f215f10 100644
|
||||
--- a/src/mp3fs.cc
|
||||
+++ b/src/mp3fs.cc
|
||||
@@ -28,9 +28,6 @@
|
||||
#include <fuse.h>
|
||||
#include <fuse_common.h>
|
||||
#include <fuse_opt.h>
|
||||
-#ifdef __APPLE__
|
||||
-#include <fuse_darwin.h>
|
||||
-#endif
|
||||
|
||||
#include <cstddef>
|
||||
#include <cstdlib>
|
||||
@@ -166,9 +163,6 @@ void print_versions(std::ostream&& out) {
|
||||
print_codec_versions(out);
|
||||
out << "FUSE library version: " << FUSE_MAJOR_VERSION << "."
|
||||
<< FUSE_MINOR_VERSION << std::endl;
|
||||
-#ifdef __APPLE__
|
||||
- out << "OS X FUSE version: " << osxfuse_version() << std::endl;
|
||||
-#endif
|
||||
}
|
||||
|
||||
int mp3fs_opt_proc(void* /*unused*/, const char* arg, int key,
|
||||
101
Formula/ntfs-3g-mac.rb
Normal file
101
Formula/ntfs-3g-mac.rb
Normal file
|
|
@ -0,0 +1,101 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class Ntfs3gMac < Formula
|
||||
desc "Read-write NTFS driver for FUSE"
|
||||
homepage "https://www.tuxera.com/community/open-source-ntfs-3g/"
|
||||
url "https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2022.10.3.tgz"
|
||||
sha256 "f20e36ee68074b845e3629e6bced4706ad053804cbaf062fbae60738f854170c"
|
||||
license all_of: ["GPL-2.0-or-later", "LGPL-2.0-or-later"]
|
||||
|
||||
livecheck do
|
||||
url :head
|
||||
strategy :github_latest
|
||||
end
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
rebuild 1
|
||||
sha256 cellar: :any, arm64_sonoma: "a00edf9e9abde1b447829c0e49267189a90713b66f651e498723915f2415284d"
|
||||
sha256 cellar: :any, ventura: "6e5875dd0059b8a387cc0eba1d9e3f866758c0e711ab5db62ed91da2dd989faf"
|
||||
end
|
||||
|
||||
head do
|
||||
url "https://github.com/tuxera/ntfs-3g.git", branch: "edge"
|
||||
|
||||
depends_on "autoconf" => :build
|
||||
depends_on "automake" => :build
|
||||
depends_on "libgcrypt" => :build
|
||||
depends_on "libtool" => :build
|
||||
end
|
||||
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "coreutils" => :test
|
||||
depends_on "gettext"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
ENV.append "LDFLAGS", "-lintl"
|
||||
|
||||
args = %W[
|
||||
--exec-prefix=#{prefix}
|
||||
--mandir=#{man}
|
||||
--with-fuse=external
|
||||
--enable-extras
|
||||
]
|
||||
|
||||
system "./autogen.sh" if build.head?
|
||||
# Workaround for hardcoded /sbin in ntfsprogs
|
||||
inreplace Dir["{ntfsprogs,src}/Makefile.in"], "$(DESTDIR)/sbin/", "$(DESTDIR)#{sbin}/"
|
||||
system "./configure", *args, *std_configure_args
|
||||
system "make"
|
||||
system "make", "install"
|
||||
|
||||
# Install a script that can be used to enable automount
|
||||
File.open("#{sbin}/mount_ntfs", File::CREAT|File::TRUNC|File::RDWR, 0755) do |f|
|
||||
f.puts <<~EOS
|
||||
#!/bin/bash
|
||||
|
||||
VOLUME_NAME="${@:$#}"
|
||||
VOLUME_NAME=${VOLUME_NAME#/Volumes/}
|
||||
USER_ID=#{Process.uid}
|
||||
GROUP_ID=#{Process.gid}
|
||||
|
||||
if [ "$(/usr/bin/stat -f %u /dev/console)" -ne 0 ]; then
|
||||
USER_ID=$(/usr/bin/stat -f %u /dev/console)
|
||||
GROUP_ID=$(/usr/bin/stat -f %g /dev/console)
|
||||
fi
|
||||
|
||||
#{opt_bin}/ntfs-3g \\
|
||||
-o volname="${VOLUME_NAME}" \\
|
||||
-o local \\
|
||||
-o negative_vncache \\
|
||||
-o auto_xattr \\
|
||||
-o auto_cache \\
|
||||
-o noatime \\
|
||||
-o windows_names \\
|
||||
-o streams_interface=openxattr \\
|
||||
-o inherit \\
|
||||
-o uid="$USER_ID" \\
|
||||
-o gid="$GROUP_ID" \\
|
||||
-o allow_other \\
|
||||
-o big_writes \\
|
||||
"$@" >> /var/log/mount-ntfs-3g.log 2>&1
|
||||
|
||||
exit $?;
|
||||
EOS
|
||||
end
|
||||
end
|
||||
|
||||
test do
|
||||
# create a small raw image, format and check it
|
||||
ntfs_raw = testpath/"ntfs.raw"
|
||||
system Formula["coreutils"].libexec/"gnubin/truncate", "--size=10M", ntfs_raw
|
||||
ntfs_label_input = "Homebrew"
|
||||
system sbin/"mkntfs", "--force", "--fast", "--label", ntfs_label_input, ntfs_raw
|
||||
system bin/"ntfsfix", "--no-action", ntfs_raw
|
||||
ntfs_label_output = shell_output("#{sbin}/ntfslabel #{ntfs_raw}")
|
||||
assert_match ntfs_label_input, ntfs_label_output
|
||||
end
|
||||
end
|
||||
131
Formula/ratarmount-mac.rb
Normal file
131
Formula/ratarmount-mac.rb
Normal file
|
|
@ -0,0 +1,131 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class RatarmountMac < Formula
|
||||
include Language::Python::Virtualenv
|
||||
|
||||
desc "Mount and efficiently access archives as filesystems"
|
||||
homepage "https://github.com/mxmlnkn/ratarmount"
|
||||
url "https://files.pythonhosted.org/packages/f6/2f/ce04f40f3cc82bb3ffbc97bffe3b7a2abe83a382c81fe2452ad54792acdf/ratarmount-1.2.1.tar.gz"
|
||||
sha256 "28be2f1b9477ba4d0d8d75ddbc2468fc906970d36f4940bd932d1a51818e06a0"
|
||||
license "MIT"
|
||||
head "https://github.com/mxmlnkn/ratarmount.git", branch: "master"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_tahoe: "f89ceae4c6bb313cf569f7727033c07390db1382965a22e1197d0f1ee9c0a5bc"
|
||||
sha256 cellar: :any, arm64_sequoia: "c0beb8c22c87eac4c3ba674f1c7245d0094f3bfebf64f9fce2fea1bfa0c2d674"
|
||||
sha256 cellar: :any, arm64_sonoma: "588e3d984a585d5c2770882e3afc3872524a979738809eee8a5d5dff5bbc15b8"
|
||||
end
|
||||
|
||||
depends_on "libgit2"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "python@3.13"
|
||||
depends_on "zstd"
|
||||
|
||||
resource "brotli" do
|
||||
url "https://files.pythonhosted.org/packages/f7/16/c92ca344d646e71a43b8bb353f0a6490d7f6e06210f8554c8f874e454285/brotli-1.2.0.tar.gz"
|
||||
sha256 "e310f77e41941c13340a95976fe66a8a95b01e783d430eeaf7a2f87e0a57dd0a"
|
||||
end
|
||||
|
||||
resource "fast-zip-decryption" do
|
||||
url "https://files.pythonhosted.org/packages/47/c8/0fbde8b9c8314e4fde35f4841015a6143967d5fd4d141e84a6cf14e62178/fast_zip_decryption-3.0.0.tar.gz"
|
||||
sha256 "5267e45aab72161b035ddc4dda4ffa2490b6da1ca752e4ff7eaedd4dd18aa85d"
|
||||
end
|
||||
|
||||
resource "indexed-gzip" do
|
||||
url "https://files.pythonhosted.org/packages/d4/22/e9e94407bae83444adf598535b684d28cfbbcbe19f58eeba46f4db7bc0f3/indexed_gzip-1.10.1.tar.gz"
|
||||
sha256 "3993fd72570b254045d2361d937a984350719f2205066f4e4c16435a1df361e3"
|
||||
end
|
||||
|
||||
resource "indexed-zstd" do
|
||||
url "https://files.pythonhosted.org/packages/52/22/5b908d5e987043ce8390b0d9101c93fae0c0de0c9c8417c562976eeb8be6/indexed_zstd-1.6.1.tar.gz"
|
||||
sha256 "8b74378f9461fceab175215b65e1c489864ddb34bd816058936a627f0cca3a8b"
|
||||
end
|
||||
|
||||
resource "inflate64" do
|
||||
url "https://files.pythonhosted.org/packages/e3/a7/974e6daa6c353cf080b540c18f11840e81b36d18106963a0a857b1fc2adf/inflate64-1.0.3.tar.gz"
|
||||
sha256 "a89edd416c36eda0c3a5d32f31ff1555db2c5a3884aa8df95e8679f8203e12ee"
|
||||
end
|
||||
|
||||
resource "libarchive-c" do
|
||||
url "https://files.pythonhosted.org/packages/26/23/e72434d5457c24113e0c22605cbf7dd806a2561294a335047f5aa8ddc1ca/libarchive_c-5.3.tar.gz"
|
||||
sha256 "5ddb42f1a245c927e7686545da77159859d5d4c6d00163c59daff4df314dae82"
|
||||
end
|
||||
|
||||
resource "mfusepy" do
|
||||
url "https://files.pythonhosted.org/packages/1c/94/c9d5dcba4a6a2b32ba23e22fd13ca08e6f5408420b2dfe42984af22277b6/mfusepy-3.0.0.tar.gz"
|
||||
sha256 "eddade33e427bac9c455464cd0a7d12d63c033255ec6b1e0d6ada143a945c6f2"
|
||||
end
|
||||
|
||||
resource "multivolumefile" do
|
||||
url "https://files.pythonhosted.org/packages/50/f0/a7786212b5a4cb9ba05ae84a2bbd11d1d0279523aea0424b6d981d652a14/multivolumefile-0.2.3.tar.gz"
|
||||
sha256 "a0648d0aafbc96e59198d5c17e9acad7eb531abea51035d08ce8060dcad709d6"
|
||||
end
|
||||
|
||||
resource "psutil" do
|
||||
url "https://files.pythonhosted.org/packages/e1/88/bdd0a41e5857d5d703287598cbf08dad90aed56774ea52ae071bae9071b6/psutil-7.1.3.tar.gz"
|
||||
sha256 "6c86281738d77335af7aec228328e944b30930899ea760ecf33a4dba66be5e74"
|
||||
end
|
||||
|
||||
resource "py7zr" do
|
||||
url "https://files.pythonhosted.org/packages/97/62/d6f18967875aa60182198a0dd287d3a50d8aea1d844239ea00c016f7be88/py7zr-1.0.0.tar.gz"
|
||||
sha256 "f6bfee81637c9032f6a9f0eb045a4bfc7a7ff4138becfc42d7cb89b54ffbfef1"
|
||||
end
|
||||
|
||||
resource "pybcj" do
|
||||
url "https://files.pythonhosted.org/packages/ce/75/bbcf098abf68081fa27c09d642790daa99d9156132c8b0893e3fecd946ab/pybcj-1.0.6.tar.gz"
|
||||
sha256 "70bbe2dc185993351955bfe8f61395038f96f5de92bb3a436acb01505781f8f2"
|
||||
end
|
||||
|
||||
resource "pycryptodomex" do
|
||||
url "https://files.pythonhosted.org/packages/c9/85/e24bf90972a30b0fcd16c73009add1d7d7cd9140c2498a68252028899e41/pycryptodomex-3.23.0.tar.gz"
|
||||
sha256 "71909758f010c82bc99b0abf4ea12012c98962fbf0583c2164f8b84533c2e4da"
|
||||
end
|
||||
|
||||
resource "pyppmd" do
|
||||
url "https://files.pythonhosted.org/packages/f6/d7/b3084ff1ac6451ef7dd93d4f7627eeb121a3bed4f8a573a81978a43ddb06/pyppmd-1.2.0.tar.gz"
|
||||
sha256 "cc04af92f1d26831ec96963439dfb27c96467b5452b94436a6af696649a121fd"
|
||||
end
|
||||
|
||||
resource "python-xz" do
|
||||
url "https://files.pythonhosted.org/packages/fe/2f/7ed0c25005eba0efb1cea3cdf4a325852d63167cc77f96b0a0534d19e712/python-xz-0.4.0.tar.gz"
|
||||
sha256 "398746593b706fa9fac59b8c988eab8603e1fe2ba9195111c0b45227a3a77db3"
|
||||
end
|
||||
|
||||
resource "pyzstd" do
|
||||
url "https://files.pythonhosted.org/packages/47/82/7bcafbf06ee83a66990ce5badbb8f4dc32184346bab20de7e468b1a2f6ec/pyzstd-0.18.0.tar.gz"
|
||||
sha256 "81b6851ab1ca2e5f2c709e896a1362e3065a64f271f43db77fb7d5e4a78e9861"
|
||||
end
|
||||
|
||||
resource "rapidgzip" do
|
||||
url "https://files.pythonhosted.org/packages/d6/50/b9bb77eaf841f2fbd8123d9677815d4ef53b53c4c189c5f789c78ef2d05e/rapidgzip-0.15.2.tar.gz"
|
||||
sha256 "fa3f90f17ce185a99514df54b5316bdfa593e98f3eebbb12da301eb25d6dedcd"
|
||||
end
|
||||
|
||||
resource "rarfile" do
|
||||
url "https://files.pythonhosted.org/packages/26/3f/3118a797444e7e30e784921c4bfafb6500fb288a0c84cb8c32ed15853c16/rarfile-4.2.tar.gz"
|
||||
sha256 "8e1c8e72d0845ad2b32a47ab11a719bc2e41165ec101fd4d3fe9e92aa3f469ef"
|
||||
end
|
||||
|
||||
resource "ratarmountcore" do
|
||||
url "https://files.pythonhosted.org/packages/f8/15/b9c2a47a4adba9b7bef8a057896a8e96db1d286ae538bd1d9d2fd147febd/ratarmountcore-0.10.2.tar.gz"
|
||||
sha256 "35e2935e1e135140d1bb8d82061c1527fb168ba5653d0218c06f3ec106711e6c"
|
||||
end
|
||||
|
||||
resource "texttable" do
|
||||
url "https://files.pythonhosted.org/packages/1c/dc/0aff23d6036a4d3bf4f1d8c8204c5c79c4437e25e0ae94ffe4bbb55ee3c2/texttable-1.7.0.tar.gz"
|
||||
sha256 "2d2068fb55115807d3ac77a4ca68fa48803e84ebb0ee2340f858107a36522638"
|
||||
end
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
virtualenv_install_with_resources
|
||||
end
|
||||
|
||||
test do
|
||||
assert_match "ratarmount #{version}", shell_output("#{bin}/ratarmount --version 2>&1")
|
||||
tarball = test_fixtures("tarballs/testball2-0.1.tbz")
|
||||
assert_match "Operation not permitted", shell_output("#{bin}/ratarmount #{tarball} 2>&1", 1)
|
||||
end
|
||||
end
|
||||
60
Formula/rclone-mac.rb
Normal file
60
Formula/rclone-mac.rb
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class RcloneMac < Formula
|
||||
desc "Rsync for cloud storage (with macOS FUSE mount support)"
|
||||
homepage "https://rclone.org/"
|
||||
url "https://github.com/rclone/rclone/archive/refs/tags/v1.72.1.tar.gz"
|
||||
sha256 "322c73932b533571880832c0e07abdf9492c7f329b7d1dcdbd2a195fa2635a77"
|
||||
license "MIT"
|
||||
head "https://github.com/rclone/rclone.git", branch: "master"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any_skip_relocation, arm64_tahoe: "4fbfed6cbd727a74761f9e5918aa4d2cc576fe5aefe76fa7a8a2f2e491693f07"
|
||||
sha256 cellar: :any_skip_relocation, arm64_sequoia: "c3217d9951aa76172bba74eddd191554eecc85e67bfb0926e4abc0ee79a7d400"
|
||||
sha256 cellar: :any_skip_relocation, arm64_sonoma: "93cd3973b52d0d34b0b3301e0876cfe601574523b321c5021c658f2ab362b644"
|
||||
end
|
||||
|
||||
depends_on "go" => :build
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "go", "build",
|
||||
"-ldflags", "-s -X github.com/rclone/rclone/fs.Version=v#{version}",
|
||||
"-tags", "cmount", *std_go_args
|
||||
(libexec/"rclone").install_symlink bin/name.to_s => "rclone"
|
||||
man1.install "rclone.1" => "#{name}.1"
|
||||
system bin/name.to_s, "genautocomplete", "bash", "rclone.bash"
|
||||
system bin/name.to_s, "genautocomplete", "bash", "#{name}.bash"
|
||||
system bin/name.to_s, "genautocomplete", "zsh", "_rclone"
|
||||
system bin/name.to_s, "genautocomplete", "zsh", "_#{name}"
|
||||
bash_completion.install "rclone.bash" => "rclone"
|
||||
bash_completion.install "#{name}.bash" => name.to_s
|
||||
zsh_completion.install "_rclone"
|
||||
zsh_completion.install "_#{name}"
|
||||
end
|
||||
|
||||
def caveats
|
||||
<<~EOS
|
||||
The rclone binary has been installed as `#{name}`,
|
||||
to avoid conflict with the core `rclone` formula.
|
||||
If you need to use it as `rclone`, add the "rclone" directory
|
||||
to your PATH like:
|
||||
PATH="#{opt_libexec}/rclone:$PATH"
|
||||
|
||||
`#{name}` supports the `mount` command on macOS, unlike the
|
||||
Homebrew core `rclone`. If you don't need `mount`, please
|
||||
`brew install rclone` instead.
|
||||
EOS
|
||||
end
|
||||
|
||||
test do
|
||||
(testpath/"file1.txt").write "Test!"
|
||||
system bin/name.to_s, "copy", testpath/"file1.txt", testpath/"dist"
|
||||
assert_match File.read(testpath/"file1.txt"), File.read(testpath/"dist/file1.txt")
|
||||
system opt_libexec/"rclone/rclone", "copy", testpath/"file1.txt", testpath/"dast"
|
||||
assert_match File.read(testpath/"file1.txt"), File.read(testpath/"dast/file1.txt")
|
||||
end
|
||||
end
|
||||
64
Formula/rofs-filtered-mac.rb
Normal file
64
Formula/rofs-filtered-mac.rb
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class RofsFilteredMac < Formula
|
||||
desc "Filtered read-only filesystem for FUSE"
|
||||
homepage "https://github.com/gburca/rofs-filtered/"
|
||||
url "https://github.com/gburca/rofs-filtered/archive/refs/tags/rel-1.7.tar.gz"
|
||||
sha256 "d66066dfd0274a2fb7b71dd929445377dd23100b9fa43e3888dbe3fc7e8228e8"
|
||||
license "GPL-2.0-or-later"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
rebuild 1
|
||||
sha256 cellar: :any_skip_relocation, arm64_sonoma: "666320aa517fcda5fea5a9189caf62889ea80efc97991325934610f526565742"
|
||||
sha256 cellar: :any, ventura: "0340ec5bd37f169ca31e5240a26766abef47040363f13f1fc0f7de2cd58a3e59"
|
||||
end
|
||||
|
||||
depends_on "cmake" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
# Use pkgconfig to find FUSE
|
||||
patch :DATA
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "cmake", "-S", ".", "-B", "build",
|
||||
"-DCMAKE_INSTALL_SYSCONFDIR=#{etc}",
|
||||
*fuse_cmake_args, *std_cmake_args
|
||||
system "cmake", "--build", "build"
|
||||
system "cmake", "--install", "build"
|
||||
end
|
||||
|
||||
test do
|
||||
system "#{bin}/rofs-filtered", "--version"
|
||||
end
|
||||
end
|
||||
__END__
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 53a6687..cb4f121 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -12,8 +12,8 @@ add_definitions(-D_GNU_SOURCE)
|
||||
set(CMAKE_C_FLAGS "-Wall -std=c99")
|
||||
|
||||
# find fuse library
|
||||
-find_package (FUSE REQUIRED)
|
||||
-include_directories (${FUSE_INCLUDE_DIR})
|
||||
+find_package(PkgConfig REQUIRED)
|
||||
+pkg_check_modules(FUSE fuse REQUIRED)
|
||||
add_definitions(-D_FILE_OFFSET_BITS=64)
|
||||
|
||||
# generate config file
|
||||
@@ -24,7 +24,9 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
# create and configure targets
|
||||
add_executable(rofs-filtered rofs-filtered.c)
|
||||
-target_link_libraries(rofs-filtered ${FUSE_LIBRARIES})
|
||||
+target_include_directories(rofs-filtered PUBLIC ${FUSE_INCLUDE_DIRS})
|
||||
+target_link_libraries(rofs-filtered PUBLIC ${LIBS} ${FUSE_LDFLAGS})
|
||||
+target_compile_options(rofs-filtered PUBLIC ${FUSE_CFLAGS})
|
||||
|
||||
# configure installation
|
||||
install(TARGETS rofs-filtered DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
32
Formula/s3-backer-mac.rb
Normal file
32
Formula/s3-backer-mac.rb
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class S3BackerMac < Formula
|
||||
desc "FUSE-based single file backing store via Amazon S3"
|
||||
homepage "https://github.com/archiecobbs/s3backer"
|
||||
url "https://archie-public.s3.amazonaws.com/s3backer/s3backer-2.1.4.tar.gz"
|
||||
sha256 "0451471209cc872708e91b2784a4a1b9f3ca44c89a7bffb8f6145aed28c941e7"
|
||||
license "GPL-2.0-or-later"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_sonoma: "7f67d78e85e19ec2447968526fddc16c9285c32f2d81eb5cdbaa2771fb2e7153"
|
||||
sha256 cellar: :any, ventura: "51f68b3c5cba34ac4e669b9cc8b2b1f37a940fc01e3d356decb4aaf750f1e96d"
|
||||
end
|
||||
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "curl"
|
||||
depends_on "expat"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "openssl@3"
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "./configure", "--disable-silent-rules", *std_configure_args
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
system bin/"s3backer", "--version"
|
||||
end
|
||||
end
|
||||
53
Formula/s3fs-mac.rb
Normal file
53
Formula/s3fs-mac.rb
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class S3fsMac < Formula
|
||||
desc "FUSE-based file system backed by Amazon S3"
|
||||
homepage "https://github.com/s3fs-fuse/s3fs-fuse/wiki"
|
||||
url "https://github.com/s3fs-fuse/s3fs-fuse/archive/refs/tags/v1.95.tar.gz"
|
||||
sha256 "0c97b8922f005500d36f72aee29a1345c94191f61d795e2a7b79fb7e3e6f5517"
|
||||
license "GPL-2.0-or-later"
|
||||
head "https://github.com/s3fs-fuse/s3fs-fuse.git", branch: "master"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_sonoma: "ecbfca73778ed850eeef256fcba17bb229036f9fbce767fd54abc2335236efee"
|
||||
sha256 cellar: :any, ventura: "0fb739e8007836e833c79d45159c78fbd05291b19afc9439683d2712d1b1dd68"
|
||||
end
|
||||
|
||||
depends_on "autoconf" => :build
|
||||
depends_on "automake" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "curl"
|
||||
depends_on "gcc"
|
||||
depends_on "gnutls"
|
||||
depends_on "libgcrypt"
|
||||
depends_on "libxml2"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "nettle"
|
||||
|
||||
fails_with :clang do
|
||||
cause <<~EOS
|
||||
libc++abi: terminating due to uncaught exception of type std::__1::system_error:
|
||||
mutex lock failed: Invalid argument
|
||||
EOS
|
||||
end
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "./autogen.sh"
|
||||
system "./configure", "--with-gnutls", *std_configure_args
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
def caveats
|
||||
<<~EOS
|
||||
This is the final version that supports FUSE 2.
|
||||
Further updates require a macOS FUSE 3 implementation.
|
||||
EOS
|
||||
end
|
||||
|
||||
test do
|
||||
system "#{bin}/s3fs", "--version"
|
||||
end
|
||||
end
|
||||
172
Formula/s3ql-mac.rb
Normal file
172
Formula/s3ql-mac.rb
Normal file
|
|
@ -0,0 +1,172 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class S3qlMac < Formula
|
||||
include Language::Python::Virtualenv
|
||||
|
||||
desc "POSIX-compliant FUSE filesystem using object store as block storage"
|
||||
homepage "https://github.com/s3ql/s3ql"
|
||||
url "https://github.com/s3ql/s3ql/releases/download/release-3.3.2/s3ql-3.3.2.tar.bz2"
|
||||
sha256 "72b310052752e281a17468a8bbe9006db7fa1f0184b83b38c5667239dfd59e73"
|
||||
license "GPL-3.0-only"
|
||||
revision 1
|
||||
|
||||
bottle do
|
||||
root_url "https://github.com/gromgit/homebrew-fuse/releases/download/s3ql-mac-3.3.2"
|
||||
sha256 cellar: :any, arm64_monterey: "28591bf8f937e22571aebb9ea52b5a41a6674bca0e285d49009d3b6f3daff494"
|
||||
sha256 cellar: :any, monterey: "f2b0297df187d806be556ec6ed6c6ad5f9d3866d505387a5aee0e0ec558f0afe"
|
||||
sha256 cellar: :any, big_sur: "d25584692de92f2e9982ac22a60371844032fdd4461507eff126ff2ea5077414"
|
||||
sha256 cellar: :any, catalina: "5263041b72989e71d60fd9dacf95fb3138d488fc04f25ff7438fd2f73e20e8a5"
|
||||
sha256 cellar: :any, mojave: "c8438bb43cc23a6addf967de989d564af559793f639553834232319913915b67"
|
||||
end
|
||||
|
||||
deprecate! date: "2025-02-11", because: "requires FUSE 3 for v3.4.0 onwards, and doesn't build on modern macOS"
|
||||
|
||||
depends_on "pkg-config" => :build
|
||||
depends_on "libffi"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "openssl@3"
|
||||
depends_on "python@3.13"
|
||||
|
||||
resource "apsw-3-9-2" do
|
||||
url "https://files.pythonhosted.org/packages/b5/a1/3de5a2d35fc34939672f4e1bd7d68cca359a31b76926f00d95f434c63aaa/apsw-3.9.2-r1.tar.gz"
|
||||
sha256 "dab96fd164dde9e59f7f27228291498217fa0e74048e2c08c7059d7e39589270"
|
||||
end
|
||||
|
||||
resource "cachetools" do
|
||||
url "https://files.pythonhosted.org/packages/30/62/88fda08df9053141647b6941141b71b4c2a23d0fabab485feb917428ab46/cachetools-4.1.0.tar.gz"
|
||||
sha256 "1d057645db16ca7fe1f3bd953558897603d6f0b9c51ed9d11eb4d071ec4e2aab"
|
||||
end
|
||||
|
||||
resource "certifi" do
|
||||
url "https://files.pythonhosted.org/packages/b8/e2/a3a86a67c3fc8249ed305fc7b7d290ebe5e4d46ad45573884761ef4dea7b/certifi-2020.4.5.1.tar.gz"
|
||||
sha256 "51fcb31174be6e6664c5f69e3e1691a2d72a1a12e90f872cbdb1567eb47b6519"
|
||||
end
|
||||
|
||||
resource "cffi" do
|
||||
url "https://files.pythonhosted.org/packages/05/54/3324b0c46340c31b909fcec598696aaec7ddc8c18a63f2db352562d3354c/cffi-1.14.0.tar.gz"
|
||||
sha256 "2d384f4a127a15ba701207f7639d94106693b6cd64173d6c8988e2c25f3ac2b6"
|
||||
end
|
||||
|
||||
resource "chardet" do
|
||||
url "https://files.pythonhosted.org/packages/fc/bb/a5768c230f9ddb03acc9ef3f0d4a3cf93462473795d18e9535498c8f929d/chardet-3.0.4.tar.gz"
|
||||
sha256 "84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae"
|
||||
end
|
||||
|
||||
resource "cryptography" do
|
||||
url "https://files.pythonhosted.org/packages/56/3b/78c6816918fdf2405d62c98e48589112669f36711e50158a0c15d804c30d/cryptography-2.9.2.tar.gz"
|
||||
sha256 "a0c30272fb4ddda5f5ffc1089d7405b7a71b0b0f51993cb4e5dbb4590b2fc229"
|
||||
end
|
||||
|
||||
resource "defusedxml" do
|
||||
url "https://files.pythonhosted.org/packages/a4/5f/f8aa58ca0cf01cbcee728abc9d88bfeb74e95e6cb4334cfd5bed5673ea77/defusedxml-0.6.0.tar.gz"
|
||||
sha256 "f684034d135af4c6cbb949b8a4d2ed61634515257a67299e5f940fbaa34377f5"
|
||||
end
|
||||
|
||||
resource "dugong" do
|
||||
url "https://files.pythonhosted.org/packages/db/68/74767cc13b9e7cfa9705fc9cf3b272e55350de8cd4a73c98508a95d9a52c/dugong-3.7.5.tar.bz2"
|
||||
sha256 "d0d07606282230fd9832f2de647e4cb46882c227883e6a12a8ff811ac46d7283"
|
||||
end
|
||||
|
||||
resource "google-auth" do
|
||||
url "https://files.pythonhosted.org/packages/d8/47/0b6f9d832fe0699c8daf8b645408752e995f5afbb466cfa76d9954fcf8e1/google-auth-1.14.1.tar.gz"
|
||||
sha256 "e63b2210e03c4ed829063b72c4af0c4b867c2788efb3210b6b9439b488bd3afd"
|
||||
end
|
||||
|
||||
resource "google-auth-oauthlib" do
|
||||
url "https://files.pythonhosted.org/packages/cd/5a/2b5a4c1294a4e8903bdba122083bd505dc51688a95d4670cde89dc45e6ed/google-auth-oauthlib-0.4.1.tar.gz"
|
||||
sha256 "88d2cd115e3391eb85e1243ac6902e76e77c5fe438b7276b297fbe68015458dd"
|
||||
end
|
||||
|
||||
resource "idna" do
|
||||
url "https://files.pythonhosted.org/packages/cb/19/57503b5de719ee45e83472f339f617b0c01ad75cba44aba1e4c97c2b0abd/idna-2.9.tar.gz"
|
||||
sha256 "7588d1c14ae4c77d74036e8c22ff447b26d0fde8f007354fd48a7814db15b7cb"
|
||||
end
|
||||
|
||||
resource "llfuse" do
|
||||
url "https://files.pythonhosted.org/packages/75/b4/5248459ec0e7e1608814915479cb13e5baf89034b572e3d74d5c9219dd31/llfuse-1.3.6.tar.bz2"
|
||||
sha256 "31a267f7ec542b0cd62e0f1268e1880fdabf3f418ec9447def99acfa6eff2ec9"
|
||||
end
|
||||
|
||||
resource "oauthlib" do
|
||||
url "https://files.pythonhosted.org/packages/fc/c7/829c73c64d3749da7811c06319458e47f3461944da9d98bb4df1cb1598c2/oauthlib-3.1.0.tar.gz"
|
||||
sha256 "bee41cc35fcca6e988463cacc3bcb8a96224f470ca547e697b604cc697b2f889"
|
||||
end
|
||||
|
||||
resource "pyasn1" do
|
||||
url "https://files.pythonhosted.org/packages/a4/db/fffec68299e6d7bad3d504147f9094830b704527a7fc098b721d38cc7fa7/pyasn1-0.4.8.tar.gz"
|
||||
sha256 "aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba"
|
||||
end
|
||||
|
||||
resource "pyasn1-modules" do
|
||||
url "https://files.pythonhosted.org/packages/88/87/72eb9ccf8a58021c542de2588a867dbefc7556e14b2866d1e40e9e2b587e/pyasn1-modules-0.2.8.tar.gz"
|
||||
sha256 "905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e"
|
||||
end
|
||||
|
||||
resource "pycparser" do
|
||||
url "https://files.pythonhosted.org/packages/0f/86/e19659527668d70be91d0369aeaa055b4eb396b0f387a4f92293a20035bd/pycparser-2.20.tar.gz"
|
||||
sha256 "2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0"
|
||||
end
|
||||
|
||||
resource "requests" do
|
||||
url "https://files.pythonhosted.org/packages/f5/4f/280162d4bd4d8aad241a21aecff7a6e46891b905a4341e7ab549ebaf7915/requests-2.23.0.tar.gz"
|
||||
sha256 "b3f43d496c6daba4493e7c431722aeb7dbc6288f52a6e04e7b6023b0247817e6"
|
||||
end
|
||||
|
||||
resource "requests-oauthlib" do
|
||||
url "https://files.pythonhosted.org/packages/23/eb/68fc8fa86e0f5789832f275c8289257d8dc44dbe93fce7ff819112b9df8f/requests-oauthlib-1.3.0.tar.gz"
|
||||
sha256 "b4261601a71fd721a8bd6d7aa1cc1d6a8a93b4a9f5e96626f8e4d91e8beeaa6a"
|
||||
end
|
||||
|
||||
resource "rsa" do
|
||||
url "https://files.pythonhosted.org/packages/cb/d0/8f99b91432a60ca4b1cd478fd0bdf28c1901c58e3a9f14f4ba3dba86b57f/rsa-4.0.tar.gz"
|
||||
sha256 "1a836406405730121ae9823e19c6e806c62bbad73f890574fff50efa4122c487"
|
||||
end
|
||||
|
||||
resource "six" do
|
||||
url "https://files.pythonhosted.org/packages/21/9f/b251f7f8a76dec1d6651be194dfba8fb8d7781d10ab3987190de8391d08e/six-1.14.0.tar.gz"
|
||||
sha256 "236bdbdce46e6e6a3d61a337c0f8b763ca1e8717c03b369e87a7ec7ce1319c0a"
|
||||
end
|
||||
|
||||
resource "urllib3" do
|
||||
url "https://files.pythonhosted.org/packages/05/8c/40cd6949373e23081b3ea20d5594ae523e681b6f472e600fbc95ed046a36/urllib3-1.25.9.tar.gz"
|
||||
sha256 "3018294ebefce6572a474f0604c2021e33b3fd8006ecd11d62107a5d2a963527"
|
||||
end
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
venv = virtualenv_create(libexec, "python3")
|
||||
resources.each do |r|
|
||||
venv.pip_install r
|
||||
end
|
||||
|
||||
# The inreplace changes the name of the (fsck|mkfs|mount|umount).s3ql
|
||||
# utilities to use underscore (_) as a separator, which is consistent
|
||||
# with other tools on macOS.
|
||||
# Final names: fsck_s3ql, mkfs_s3ql, mount_s3ql, umount_s3ql
|
||||
inreplace "setup.py", /'(?:(mkfs|fsck|mount|umount)\.)s3ql =/, "'\\1_s3ql ="
|
||||
|
||||
system libexec/"bin/python3", "setup.py", "build_ext", "--inplace"
|
||||
venv.pip_install_and_link buildpath
|
||||
end
|
||||
|
||||
def caveats
|
||||
<<~EOS
|
||||
This formula is outdated, and is provided only as a courtesy.
|
||||
It cannot be updated until macFUSE supports FUSE API version 3.
|
||||
|
||||
If security issues are discovered with this old software,
|
||||
it may be removed without notice.
|
||||
EOS
|
||||
end
|
||||
|
||||
test do
|
||||
assert_match "S3QL ", shell_output(bin/"mount_s3ql --version")
|
||||
|
||||
# create a local filesystem, and run an fsck on it
|
||||
assert_equal "Library\n", shell_output("ls")
|
||||
assert_match "Creating metadata", shell_output(bin/"mkfs_s3ql --plain local://#{testpath} 2>&1")
|
||||
assert_match "s3ql_metadata", shell_output("ls s3ql_metadata")
|
||||
system bin/"fsck_s3ql", "local://#{testpath}"
|
||||
end
|
||||
end
|
||||
52
Formula/securefs-mac.rb
Normal file
52
Formula/securefs-mac.rb
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class SecurefsMac < Formula
|
||||
desc "Filesystem with transparent authenticated encryption"
|
||||
homepage "https://github.com/netheril96/securefs"
|
||||
url "https://github.com/netheril96/securefs/archive/refs/tags/v2.0.0.tar.gz"
|
||||
sha256 "d7fac7adc70c09473173aeadee5b7041d7e63fbf392ef40bdd77888590bb12a2"
|
||||
license "MIT"
|
||||
head "https://github.com/netheril96/securefs.git", branch: "master"
|
||||
|
||||
livecheck do
|
||||
url :stable
|
||||
strategy :github_latest
|
||||
end
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_sequoia: "78b2a05c1291ba2828512745ac2b959786288389e44fe44dc0d4cda2a6bd68cc"
|
||||
sha256 cellar: :any, arm64_sonoma: "54efe58e868a530d252e05beb72537171bd1f4559c16f876d92c31394a89ffb4"
|
||||
end
|
||||
|
||||
depends_on "cmake" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "tclap" => :build
|
||||
depends_on "abseil"
|
||||
depends_on "argon2"
|
||||
depends_on "cryptopp"
|
||||
depends_on "fruit"
|
||||
depends_on "jsoncpp"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "protobuf"
|
||||
depends_on "sqlite"
|
||||
depends_on "uni-algo"
|
||||
depends_on "utf8proc"
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
args = %w[
|
||||
-DSECUREFS_ENABLE_INTEGRATION_TEST=OFF
|
||||
-DSECUREFS_ENABLE_UNIT_TEST=OFF
|
||||
-DSECUREFS_USE_VCPKG=OFF
|
||||
]
|
||||
system "cmake", "-S", ".", "-B", "build", *std_cmake_args, *args
|
||||
system "cmake", "--build", "build"
|
||||
system "cmake", "--install", "build"
|
||||
end
|
||||
|
||||
test do
|
||||
system bin/"securefs", "version" # The sandbox prevents a more thorough test
|
||||
end
|
||||
end
|
||||
55
Formula/simple-mtpfs-mac.rb
Normal file
55
Formula/simple-mtpfs-mac.rb
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class SimpleMtpfsMac < Formula
|
||||
desc "Simple MTP fuse filesystem driver"
|
||||
homepage "https://github.com/phatina/simple-mtpfs"
|
||||
url "https://github.com/phatina/simple-mtpfs/archive/refs/tags/v0.4.0.tar.gz"
|
||||
sha256 "1d011df3fa09ad0a5c09d48d84c03e6cddf86390af9eb4e0c178193f32f0e2fc"
|
||||
license "GPL-2.0-or-later"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
rebuild 1
|
||||
sha256 cellar: :any, arm64_sonoma: "cf831fa0da5d53fbef60c754223bb2ed7601c80e89d7bb11be4bd349001b2f1e"
|
||||
sha256 cellar: :any, ventura: "01adbaed0737e09f73ec91d8e248a1a9c138e06f8476cd6da23e6b511f3c68d9"
|
||||
end
|
||||
|
||||
depends_on "autoconf" => :build
|
||||
depends_on "autoconf-archive" => :build # required for AX_CXX_COMPILE_STDCXX_17
|
||||
depends_on "automake" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "libmtp"
|
||||
depends_on "libusb"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
patch :DATA
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "./autogen.sh"
|
||||
system "./configure", "--disable-silent-rules", *std_configure_args
|
||||
system "make"
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
system bin/"simple-mtpfs", "-h"
|
||||
end
|
||||
end
|
||||
__END__
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 321cfec..a5e9294 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -25,8 +25,8 @@ test "x$os_name" == "xDarwin" || AC_CHECK_FUNCS([fdatasync])
|
||||
|
||||
PKG_CHECK_MODULES([FUSE], [fuse >= 2.7.3])
|
||||
if test "x$os_name" == "xDarwin"; then
|
||||
- AC_SUBST([FUSE_CFLAGS],["-D_FILE_OFFSET_BITS=64 -D_DARWIN_USE_64_BIT_INODE -I/usr/local/include/osxfuse"])
|
||||
- AC_SUBST([FUSE_LIBS],["-L/usr/local/lib -losxfuse -pthread -liconv"])
|
||||
+ AC_SUBST([FUSE_CFLAGS],["-D_FILE_OFFSET_BITS=64 -D_DARWIN_USE_64_BIT_INODE -I/usr/local/include/fuse"])
|
||||
+ AC_SUBST([FUSE_LIBS],["-L/usr/local/lib -lfuse -pthread -liconv"])
|
||||
fi
|
||||
|
||||
PKG_CHECK_MODULES(
|
||||
41
Formula/squashfuse-mac.rb
Normal file
41
Formula/squashfuse-mac.rb
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class SquashfuseMac < Formula
|
||||
desc "FUSE filesystem to mount squashfs archives"
|
||||
homepage "https://github.com/vasi/squashfuse"
|
||||
url "https://github.com/vasi/squashfuse/releases/download/0.6.1/squashfuse-0.6.1.tar.gz"
|
||||
sha256 "7b18a58c40a3161b5c329ae925b72336b5316941f906b446b8ed6c5a90989f8c"
|
||||
license "BSD-2-Clause"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any, arm64_sonoma: "9618c3556506fecc5234a9f2f238fe7e6f51cd3782fdc0d6580d222bbaff3485"
|
||||
sha256 cellar: :any, ventura: "03092b26301eb86ed81db27cf2a7558d55f9ed3099ee09262065edcacb9ea8b1"
|
||||
end
|
||||
|
||||
depends_on "autoconf" => :build
|
||||
depends_on "automake" => :build
|
||||
depends_on "libtool" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "lz4"
|
||||
depends_on "lzo"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "squashfs"
|
||||
depends_on "xz"
|
||||
depends_on "zlib"
|
||||
depends_on "zstd"
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "./configure", *std_configure_args
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
# Unfortunately, making/testing a squash mount requires sudo privileges, so
|
||||
# just test that squashfuse execs for now.
|
||||
test do
|
||||
output = shell_output("#{bin}/squashfuse --version 2>&1", 254)
|
||||
assert_match version.to_s, output
|
||||
end
|
||||
end
|
||||
84
Formula/sshfs-mac.rb
Normal file
84
Formula/sshfs-mac.rb
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class SshfsMac < Formula
|
||||
desc "File system client based on SSH File Transfer Protocol"
|
||||
homepage "https://github.com/libfuse/sshfs"
|
||||
url "https://github.com/libfuse/sshfs/archive/refs/tags/sshfs-2.10.tar.gz"
|
||||
sha256 "6af13acda03a4632e3deb559ecc3f35881cb92e16098049a7ba4cc502650ab18"
|
||||
license any_of: ["LGPL-2.1-only", "GPL-2.0-only"]
|
||||
revision 1
|
||||
|
||||
bottle do
|
||||
root_url "https://github.com/gromgit/homebrew-fuse/releases/download/sshfs-mac-2.10"
|
||||
sha256 cellar: :any, arm64_monterey: "422abbbbd1804e67c27a21b976e4e82cfdffd977b5aa2cf7ee4e21fc2b548167"
|
||||
sha256 cellar: :any, monterey: "ffbc11b371d196dd6a32c13b21dfc28af7f7577145a62a165062228c2c661263"
|
||||
sha256 cellar: :any, big_sur: "9e021d24580ec55f4ab034dba0e264906d9db5c57036fe83710bc601bc6885c6"
|
||||
sha256 cellar: :any, catalina: "09f254420411218a784c783df760d2c652acd280eecc875d60e41014f80011cc"
|
||||
sha256 cellar: :any, mojave: "6389b69b921295f5be6eb35336649f558375eb24da60573b376a313331a4d18c"
|
||||
end
|
||||
|
||||
deprecate! date: "2025-02-11", because: :unmaintained
|
||||
|
||||
depends_on "autoconf" => :build
|
||||
depends_on "automake" => :build
|
||||
depends_on "libtool" => :build
|
||||
depends_on "pkg-config" => :build
|
||||
depends_on "glib"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
patch do
|
||||
url "https://github.com/libfuse/sshfs/commit/667cf34622e2e873db776791df275c7a582d6295.patch?full_index=1"
|
||||
sha256 "ab2aa697d66457bf8a3f469e89572165b58edb0771aa1e9c2070f54071fad5f6"
|
||||
end
|
||||
|
||||
patch :DATA
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "autoreconf", "-fiv"
|
||||
system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}"
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
def caveats
|
||||
<<~EOS
|
||||
This formula is outdated, and is provided only as a courtesy.
|
||||
It cannot be updated until macFUSE supports FUSE API version 3.
|
||||
|
||||
If security issues are discovered with this old software,
|
||||
it may be removed without notice.
|
||||
EOS
|
||||
end
|
||||
|
||||
test do
|
||||
system "#{bin}/sshfs", "--version"
|
||||
end
|
||||
end
|
||||
__END__
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 76026ad..671810b 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -16,7 +16,6 @@ case "$target_os" in
|
||||
*) osname=unknown;;
|
||||
esac
|
||||
|
||||
-export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
|
||||
PKG_CHECK_MODULES([SSHFS], [fuse >= 2.3 glib-2.0 gthread-2.0])
|
||||
have_fuse_opt_parse=no
|
||||
oldlibs="$LIBS"
|
||||
diff --git a/sshfs.c b/sshfs.c
|
||||
index 97eaf06..d442577 100644
|
||||
--- a/sshfs.c
|
||||
+++ b/sshfs.c
|
||||
@@ -14,9 +14,6 @@
|
||||
#if !defined(__CYGWIN__)
|
||||
#include <fuse_lowlevel.h>
|
||||
#endif
|
||||
-#ifdef __APPLE__
|
||||
-# include <fuse_darwin.h>
|
||||
-#endif
|
||||
#include <assert.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class SshfsAT2 < Formula
|
||||
desc "File system client based on SSH File Transfer Protocol"
|
||||
homepage "https://github.com/libfuse/sshfs"
|
||||
url "https://github.com/libfuse/sshfs/archive/refs/tags/sshfs-2.10.tar.gz"
|
||||
sha256 "6af13acda03a4632e3deb559ecc3f35881cb92e16098049a7ba4cc502650ab18"
|
||||
license any_of: ["LGPL-2.1-only", "GPL-2.0-only"]
|
||||
|
||||
depends_on "autoconf" => :build
|
||||
depends_on "automake" => :build
|
||||
depends_on "libtool" => :build
|
||||
depends_on "pkg-config" => :build
|
||||
depends_on "glib"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
patch do
|
||||
url "https://github.com/libfuse/sshfs/commit/667cf34622e2e873db776791df275c7a582d6295.patch?full_index=1"
|
||||
sha256 "ab2aa697d66457bf8a3f469e89572165b58edb0771aa1e9c2070f54071fad5f6"
|
||||
end
|
||||
|
||||
patch :DATA
|
||||
|
||||
def install
|
||||
system "autoreconf", "-fiv"
|
||||
system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}"
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
system "#{bin}/sshfs", "--version"
|
||||
end
|
||||
end
|
||||
__END__
|
||||
diff --git a/sshfs.c b/sshfs.c
|
||||
index 97eaf06..d442577 100644
|
||||
--- a/sshfs.c
|
||||
+++ b/sshfs.c
|
||||
@@ -14,9 +14,6 @@
|
||||
#if !defined(__CYGWIN__)
|
||||
#include <fuse_lowlevel.h>
|
||||
#endif
|
||||
-#ifdef __APPLE__
|
||||
-# include <fuse_darwin.h>
|
||||
-#endif
|
||||
#include <assert.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
34
Formula/tup-mac.rb
Normal file
34
Formula/tup-mac.rb
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class TupMac < Formula
|
||||
desc "File-based build system"
|
||||
homepage "http://gittup.org/tup/"
|
||||
url "https://github.com/gittup/tup/archive/refs/tags/v0.8.tar.gz"
|
||||
sha256 "45ca35c4c1d140f3faaab7fabf9d68fd9c21074af2af9a720cff4b27cab47d07"
|
||||
license "GPL-2.0-only"
|
||||
head "https://github.com/gittup/tup.git"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any_skip_relocation, arm64_sonoma: "c560a370134cbe065d983bc0f40a3fb7481524eeae8463c891b91853ff2813a8"
|
||||
sha256 cellar: :any, ventura: "1553e833231b266f2c270dfe8e7e21933af45ffe8c37aba141cd3ce2706f6f46"
|
||||
end
|
||||
|
||||
depends_on "pkg-config" => :build
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
ENV["TUP_LABEL"] = version
|
||||
system "./build.sh"
|
||||
bin.install "build/tup"
|
||||
man1.install "tup.1"
|
||||
doc.install (buildpath/"docs").children
|
||||
pkgshare.install "contrib/syntax"
|
||||
end
|
||||
|
||||
test do
|
||||
system "#{bin}/tup", "-v"
|
||||
end
|
||||
end
|
||||
53
Formula/unionfs-fuse.rb
Normal file
53
Formula/unionfs-fuse.rb
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class UnionfsFuse < Formula
|
||||
desc "Union filesystem using FUSE"
|
||||
homepage "https://github.com/rpodgorny/unionfs-fuse"
|
||||
url "https://github.com/rpodgorny/unionfs-fuse/archive/refs/tags/v3.7.tar.gz"
|
||||
sha256 "026f5302279110ceb7465e5c9e863cd0319ea0dc32ad253d162cf9db0f5e9a81"
|
||||
license "BSD-3-Clause"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 cellar: :any_skip_relocation, arm64_sequoia: "bd96797c922e35716d4bf81b585eccff801f33d416177b3c1f64408cf9049095"
|
||||
sha256 cellar: :any_skip_relocation, arm64_sonoma: "66afec09b9d1ec0d1549a8afe97a0fa6f1f65374c9e42898655f6ad9d718c02c"
|
||||
sha256 cellar: :any_skip_relocation, ventura: "c10761c0cb52fbaa60425a8e5c3a58cc0ae7868c33943a02c9006bdcb60f8f78"
|
||||
end
|
||||
|
||||
depends_on "cmake" => :build
|
||||
depends_on "pkg-config" => :build
|
||||
depends_on MacfuseRequirement
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
inreplace "CMakeLists.txt", "/usr/local", alt_fuse_root.to_s
|
||||
mkdir "build" do
|
||||
system "cmake", "..",
|
||||
"-DCMAKE_C_COMPILER=clang",
|
||||
"-DCMAKE_C_FLAGS=-std=gnu99",
|
||||
*std_cmake_args
|
||||
system "make", "install"
|
||||
end
|
||||
end
|
||||
|
||||
test do
|
||||
assert_match version.to_s, shell_output("#{bin}/unionfs --version 2>&1")
|
||||
# TODO: fix test
|
||||
# (testpath/"t1").mkdir
|
||||
# (testpath/"t1/test1.txt").write <<~EOS
|
||||
# This is test 1.
|
||||
# EOS
|
||||
# (testpath/"t2").mkdir
|
||||
# (testpath/"t2/test2.txt").write <<~EOS
|
||||
# This is test 2.
|
||||
# EOS
|
||||
# (testpath/"t3").mkdir
|
||||
# begin
|
||||
# system "#{bin}/unionfs", "-o", "cow,max_files=32768,allow_other,use_ino,nonempty",
|
||||
# "#{testpath}/t1=RW:#{testpath}/t2=RO", testpath/"t3"
|
||||
# assert_match "test 2", pipe_output("cat #{testpath}/t3/test2.txt")
|
||||
# ensure
|
||||
# system "umount", "#{testpath}/t3"
|
||||
# end
|
||||
end
|
||||
end
|
||||
32
Formula/wdfs-mac.rb
Normal file
32
Formula/wdfs-mac.rb
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class WdfsMac < Formula
|
||||
desc "Webdav file system"
|
||||
homepage "http://noedler.de/projekte/wdfs/"
|
||||
url "http://noedler.de/projekte/wdfs/wdfs-1.4.2.tar.gz"
|
||||
sha256 "fcf2e1584568b07c7f3683a983a9be26fae6534b8109e09167e5dff9114ba2e5"
|
||||
license "GPL-2.0-or-later"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
rebuild 1
|
||||
sha256 cellar: :any, arm64_sonoma: "470836a78df1eefa59cf45a46d2592313bdb32a51d0797266fe2c6ee1c588867"
|
||||
sha256 cellar: :any, ventura: "d4350a182eeecb7003c5ff582c5a1329e156f894d9ac0a0aa64485f607fdc55d"
|
||||
end
|
||||
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "glib"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "neon"
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
system "./configure", *std_configure_args
|
||||
system "make", "install"
|
||||
end
|
||||
|
||||
test do
|
||||
system bin/"wdfs", "-v"
|
||||
end
|
||||
end
|
||||
79
Formula/xmount-mac.rb
Normal file
79
Formula/xmount-mac.rb
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
require_relative "../require/macfuse"
|
||||
|
||||
class XmountMac < Formula
|
||||
desc "Convert between multiple input & output disk image types"
|
||||
homepage "https://www.sits.lu/xmount"
|
||||
url "https://code.sits.lu/foss/xmount/-/archive/1.2.1/xmount-1.2.1.tar.gz"
|
||||
sha256 "61b0b777ca0cd4eda30aeeeca7ec17a49d2657599a37745fb94f8dcc432b93c7"
|
||||
|
||||
bottle do
|
||||
root_url "https://ghcr.io/v2/gromgit/fuse"
|
||||
sha256 arm64_sequoia: "cc8c7f233c8e40a6512736f137aff799dc3f986e6be60c3eea476a8d9b127383"
|
||||
sha256 arm64_sonoma: "61f67c7481c3f76e4d9d8b11a7100bae495b5b655524739722d867593fc494a2"
|
||||
end
|
||||
|
||||
depends_on "cmake" => :build
|
||||
depends_on "pkgconf" => :build
|
||||
depends_on "afflib"
|
||||
depends_on "libewf"
|
||||
depends_on MacfuseRequirement
|
||||
depends_on :macos
|
||||
depends_on "openssl@3"
|
||||
|
||||
patch :DATA
|
||||
|
||||
def install
|
||||
setup_fuse
|
||||
ENV.prepend_path "PKG_CONFIG_PATH", Formula["openssl@3"].opt_lib/"pkgconfig"
|
||||
|
||||
system "cmake", "-S", ".", "-B", "build", *fuse_cmake_args, *std_cmake_args
|
||||
system "cmake", "--build", "build"
|
||||
system "cmake", "--install", "build"
|
||||
end
|
||||
|
||||
test do
|
||||
system bin/"xmount", "--version"
|
||||
end
|
||||
end
|
||||
__END__
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 7369014..0bea886 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -73,9 +73,6 @@ check_include_files(libkern/OSByteOrder.h HAVE_LIBKERN_OSBYTEORDER_H)
|
||||
find_package(Threads REQUIRED)
|
||||
if(NOT APPLE)
|
||||
find_package(LibFUSE REQUIRED)
|
||||
-else(NOT APPLE)
|
||||
- # On OSx, search for osxfuse
|
||||
- find_package(LibOSXFUSE REQUIRED)
|
||||
endif(NOT APPLE)
|
||||
|
||||
# Generate config.h and add it's path to the include dirs
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index 92d9b8f..623c3d1 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -2,9 +2,8 @@ if(NOT APPLE)
|
||||
include_directories(${LIBFUSE_INCLUDE_DIRS})
|
||||
set(LIBS ${LIBS} ${LIBFUSE_LIBRARIES})
|
||||
else(NOT APPLE)
|
||||
- include_directories(${LIBOSXFUSE_INCLUDE_DIRS})
|
||||
- set(LIBS ${LIBS} ${LIBOSXFUSE_LIBRARIES})
|
||||
- link_directories(${LIBOSXFUSE_LIBRARY_DIRS})
|
||||
+ find_package(PkgConfig REQUIRED)
|
||||
+ pkg_check_modules(FUSE fuse REQUIRED)
|
||||
endif(NOT APPLE)
|
||||
|
||||
if(LIBFUSE_VERSION EQUAL 3)
|
||||
@@ -25,7 +24,9 @@ if(THREADS_HAVE_PTHREAD_ARG)
|
||||
target_compile_options(xmount PUBLIC "-pthread")
|
||||
endif(THREADS_HAVE_PTHREAD_ARG)
|
||||
|
||||
-target_link_libraries(xmount ${LIBS})
|
||||
+target_include_directories(xmount PUBLIC ${FUSE_INCLUDE_DIRS})
|
||||
+target_link_libraries(xmount PUBLIC ${LIBS} ${FUSE_LDFLAGS})
|
||||
+target_compile_options(xmount PUBLIC ${FUSE_CFLAGS})
|
||||
|
||||
install(TARGETS xmount DESTINATION bin)
|
||||
|
||||
25
LICENSE.txt
Normal file
25
LICENSE.txt
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
BSD 2-Clause License
|
||||
|
||||
Copyright (c) 2009-present, Homebrew contributors
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
* Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
|
||||
* Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
63
README.md
63
README.md
|
|
@ -1,14 +1,67 @@
|
|||
# gromgit's macOS FUSE stuff
|
||||
|
||||
This tap exists to support macOS FUSE-related software that will be dropped from Homebrew core at some point.
|
||||
This tap exists to support macOS FUSE-related software that have been dropped from Homebrew core.
|
||||
|
||||
---
|
||||
|
||||
# !!! WARNING: Reduced Build Coverage !!!
|
||||
|
||||
All my old Intel Mac hardware is dead, and I'm not inclined to spend additional resources spinning up VMs or building Hackintoshes at this stage. As of 2025-Feb-10, the only bottles built will be for those macOS versions supported by GitHub runners (currently Ventura on Intel and Sonoma on ARM). Sorry.
|
||||
|
||||
---
|
||||
|
||||
## How do I install these formulae?
|
||||
`brew install gromgit/fuse/<formula>`
|
||||
|
||||
Or `brew tap gromgit/fuse` and then `brew install <formula>`.
|
||||
First, if you've already installed FUSE formulae from the core tap _before_ they were disabled, you might _not_ want to switch over to my formulae, because:
|
||||
1. As far as I know, Homebrew will not remove them from your system, even after the formulae themselves are deleted.
|
||||
1. Many of these formulae are rather old, so you're unlikely to find updates anyway.
|
||||
|
||||
## Hey, why is XYZ not available?
|
||||
Probably because I haven't gotten around to putting it in yet. If you need it, [file an issue](https://github.com/gromgit/homebrew-fuse/issues/new/choose) and I'll see what can be done.
|
||||
But if you _do_ want to install my formulae over the core ones, you should uninstall the core formulae first.
|
||||
|
||||
## Documentation
|
||||
|
||||
`brew help`, `man brew` or check [Homebrew's documentation](https://docs.brew.sh).
|
||||
|
||||
## FAQ
|
||||
|
||||
### Why is XYZ not available?
|
||||
|
||||
It's probably available, but with a `-mac` suffix to avoid name clashes with Homebrew core (e.g. `sshfs` becomes `sshfs-mac`).
|
||||
|
||||
If you can't find it under its new name, possible reasons include:
|
||||
1. All available versions of `XYZ` require version 3 of the libfuse API, but macFUSE only supports v2.
|
||||
1. I might not have gotten around to getting it up. [File an issue](https://github.com/gromgit/homebrew-fuse/issues/new/choose) to get my attention. 😀
|
||||
|
||||
### Why is XYZ so old?
|
||||
|
||||
Possible reasons:
|
||||
1. Current `XYZ` requires FUSE 3, which is not supported by all known macOS FUSE drivers, so the version you see is the latest one that can be built on macOS.
|
||||
1. `XYZ` was abandoned by its authors. If you know of a revived fork of such software, [file an issue](https://github.com/gromgit/homebrew-fuse/issues/new/choose) with the details and I'll see what can be done.
|
||||
1. I might not have gotten around to updating it yet. [File an issue](https://github.com/gromgit/homebrew-fuse/issues/new/choose) to get my attention. 😀
|
||||
|
||||
### Why is the XYZ formula called `XYZ-mac`?
|
||||
|
||||
To avoid a naming conflict with the formula called `XYZ` that still exists in Homebrew core.
|
||||
|
||||
### Why is the XYZ _program_ installed as `XYZ-mac`?
|
||||
|
||||
`brew info gromgit/fuse/XYZ-mac` and read the _Caveats_ section.
|
||||
|
||||
### Why does Homebrew say I need to build `XYZ-mac` from source?
|
||||
|
||||
All my old Intel Mac hardware is dead, so I'm relying now on the free GitHub runners to build bottles.
|
||||
|
||||
### Why can't I build XYZ on an ARM Mac?
|
||||
|
||||
Homebrew currently [filters out `/usr/local` entirely during ARM-based builds](https://github.com/Homebrew/brew/blob/04532cb6216b69a5b067aa7a4e22cff0944b257d/Library/Homebrew/shims/super/cc#L266-L270). I've devised a workaround for this, that seems to work well on both Intel and ARM GitHub runners. If you still can't build it, please [file an issue](https://github.com/gromgit/homebrew-fuse/issues/new/choose).
|
||||
|
||||
## Why aren't you using fuse-t in place of MacFUSE?
|
||||
|
||||
As of 2025-Feb-16, [fuse-t](https://github.com/macos-fuse-t/fuse-t) is certainly interesting, but not enough of an improvement to make me force everyone to move over.
|
||||
|
||||
For this to happen, at least one of the following needs to happen:
|
||||
|
||||
1. **open source**, so there's a hope of getting it into Homebrew core _a la_ `libfuse{,@2}`, and get rid of all the `require` hackery in these formulae
|
||||
1. **FUSE 2 and 3 support**, so we're not stuck in the past with half these formulae, but are still able to build older FUSE 2 formulae
|
||||
|
||||
If any macOS FUSE implementation achieves *all* the above, I'm prepared to move everything over. Heck, if point 1 is achieved, this repo may itself become defunct.
|
||||
|
|
|
|||
32
cmd/brew-test-fuse
Executable file
32
cmd/brew-test-fuse
Executable file
|
|
@ -0,0 +1,32 @@
|
|||
#!/usr/bin/env bash
|
||||
#:`brew test-fuse`
|
||||
#: Tests local FUSE installation
|
||||
|
||||
. "$(dirname "$0")"/../lib/funcs.sh
|
||||
|
||||
tmpdir=/tmp/fuse-test.$$
|
||||
mkdir -p "$tmpdir"/test_mount
|
||||
trap 'rm -fr "$tmpdir"' EXIT
|
||||
|
||||
[[ $(uname -s) == "Darwin" ]] || fatal "This script can only be run on macOS"
|
||||
|
||||
cd "$tmpdir"
|
||||
eval "$(brew shellenv)"
|
||||
|
||||
info "Checking for FUSE installation"
|
||||
cmd pkgutil --pkg-info io.macfuse.installer.components.core
|
||||
cmd pkgutil --lsbom io.macfuse.installer.components.core
|
||||
|
||||
info "Test FUSE build"
|
||||
examples=(
|
||||
https://raw.githubusercontent.com/libfuse/libfuse/46b9c3326d50aebe52c33d63885b83a47a2e74ea/example/hello.c
|
||||
https://raw.githubusercontent.com/libfuse/libfuse/46b9c3326d50aebe52c33d63885b83a47a2e74ea/example/hello_ll.c
|
||||
https://raw.githubusercontent.com/libfuse/libfuse/46b9c3326d50aebe52c33d63885b83a47a2e74ea/example/null.c
|
||||
)
|
||||
for u in "${examples[@]}"; do
|
||||
# Get the last FUSE 2.x lowlevel example file
|
||||
cmd curl -sOL "$u"
|
||||
# Build it Homebrew-style
|
||||
f=${u##*/}; p=${f%.c}
|
||||
cmd clang -D_FILE_OFFSET_BITS=64 -I/usr/local/include/fuse -L/usr/local/lib -g -O2 -Wall -o "$p" "$f" -lfuse -lpthread
|
||||
done
|
||||
14
formula_renames.json
Normal file
14
formula_renames.json
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
"afuse": "afuse-mac",
|
||||
"archivemount": "archivemount-mac",
|
||||
"avfs": "avfs-mac",
|
||||
"bindfs": "bindfs-mac",
|
||||
"curlftpfs": "curlftpfs-mac",
|
||||
"dislocker": "dislocker-mac",
|
||||
"encfs": "encfs-mac",
|
||||
"ext4fuse": "ext4fuse-mac",
|
||||
"fuse-zip": "fuse-zip-mac",
|
||||
"gcsfuse": "gcsfuse-mac",
|
||||
"ntfs-3g": "ntfs-3g-mac",
|
||||
"sshfs": "sshfs-mac"
|
||||
}
|
||||
79
lib/funcs.sh
Normal file
79
lib/funcs.sh
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
# shellcheck shell=bash
|
||||
# shellcheck disable=SC2034
|
||||
# string formatters
|
||||
if [[ -t 1 ]]
|
||||
then
|
||||
Tty_escape() { printf "\033[%sm" "$1"; }
|
||||
else
|
||||
Tty_escape() { :; }
|
||||
fi
|
||||
Tty_mkbold() { Tty_escape "1;${1:-39}"; }
|
||||
Tty_red=$(Tty_mkbold 31)
|
||||
Tty_green=$(Tty_mkbold 32)
|
||||
Tty_brown=$(Tty_mkbold 33)
|
||||
Tty_blue=$(Tty_mkbold 34)
|
||||
Tty_magenta=$(Tty_mkbold 35)
|
||||
Tty_cyan=$(Tty_mkbold 36)
|
||||
Tty_white=$(Tty_mkbold 37)
|
||||
Tty_underscore=$(Tty_escape 38)
|
||||
Tty_bold=$(Tty_mkbold 39)
|
||||
Tty_reset=$(Tty_escape 0)
|
||||
|
||||
msg_prefix=""
|
||||
|
||||
# fatal: Report fatal error
|
||||
# USAGE: fatal <msg> ...
|
||||
fatal() {
|
||||
echo "${Tty_red}${msg_prefix}FATAL ERROR:${Tty_reset} $*" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
# error: Report error
|
||||
# USAGE: error <msg> ...
|
||||
error() {
|
||||
echo "${Tty_red}${msg_prefix}ERROR:${Tty_reset} $*" >&2
|
||||
}
|
||||
|
||||
# warn: Report warning
|
||||
# USAGE: warn <msg> ...
|
||||
warn() {
|
||||
echo "${Tty_blue}${msg_prefix}Warning:${Tty_reset} $*" >&2
|
||||
}
|
||||
|
||||
# info: Informational message
|
||||
# USAGE: info <msg> ...
|
||||
info() {
|
||||
echo "${Tty_green}${msg_prefix}Info:${Tty_reset} $*" >&2
|
||||
}
|
||||
|
||||
# need_progs: Checks for command dependencies
|
||||
# USAGE: need_progs <cmd> ...
|
||||
need_progs() {
|
||||
local missing=()
|
||||
local i
|
||||
for i in "$@"
|
||||
do
|
||||
type -P "${i}" &>/dev/null || missing+=("${i}")
|
||||
done
|
||||
if [[ ${#missing[@]} -gt 0 ]]
|
||||
then
|
||||
fatal "Commands missing: ${missing[*]}"
|
||||
fi
|
||||
}
|
||||
|
||||
# cmd: Show command being run
|
||||
# USAGE: cmd <cmd> ...
|
||||
cmd() {
|
||||
echo "${Tty_cyan}>>> $*${Tty_reset}" >&2
|
||||
command "$@"
|
||||
}
|
||||
|
||||
# git_in: Run Git command in repo
|
||||
# USAGE: git_in <repo> <cmd> ...
|
||||
git_in() {
|
||||
local repo=$1
|
||||
shift
|
||||
pushd "${repo}" >/dev/null || fatal "Can't cd to '${repo}'"
|
||||
cmd git "$@"
|
||||
popd >/dev/null || exit
|
||||
}
|
||||
23
lib/fuse-pkg-config
Executable file
23
lib/fuse-pkg-config
Executable file
|
|
@ -0,0 +1,23 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
fuse_root=%FUSE_ROOT%
|
||||
|
||||
# Collect args
|
||||
pkgs=()
|
||||
flags=()
|
||||
|
||||
for a in "$@"; do
|
||||
[[ $a == -* ]] && flags+=("$a") || pkgs+=("$a")
|
||||
done
|
||||
|
||||
if [[ ${#pkgs[@]} -eq 0 ]]; then
|
||||
pkg-config "${flags[@]}"
|
||||
else
|
||||
for p in "${pkgs[@]}"; do
|
||||
if [[ $p == fuse ]]; then
|
||||
pkg-config "${flags[@]}" "$p" | sed "s@/usr/local@${fuse_root}@g"
|
||||
else
|
||||
pkg-config "${flags[@]}" "$p"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
|
@ -1,5 +1,7 @@
|
|||
# typed: false
|
||||
# frozen_string_literal: true
|
||||
|
||||
# USAGE: `depends_on MacfuseRequirement`
|
||||
class MacfuseRequirement < Requirement
|
||||
fatal true
|
||||
|
||||
|
|
@ -12,14 +14,178 @@ class MacfuseRequirement < Requirement
|
|||
|
||||
env do
|
||||
ENV.append_path "PKG_CONFIG_PATH", HOMEBREW_LIBRARY/"Homebrew/os/mac/pkgconfig/fuse"
|
||||
|
||||
unless HOMEBREW_PREFIX.to_s == "/usr/local"
|
||||
ENV.append_path "HOMEBREW_LIBRARY_PATHS", "/usr/local/lib"
|
||||
ENV.append_path "HOMEBREW_INCLUDE_PATHS", "/usr/local/include"
|
||||
end
|
||||
end
|
||||
|
||||
def message
|
||||
"This formula requires MacFUSE. Please run `brew install --cask macfuse` first."
|
||||
"This formula requires macFUSE. Please run `brew install --cask macfuse` first."
|
||||
end
|
||||
|
||||
def display_s
|
||||
"macFUSE"
|
||||
end
|
||||
end
|
||||
|
||||
# Add `setup_fuse` to base Formula class, for use by FUSE formulae
|
||||
class Formula
|
||||
def need_alt_fuse?
|
||||
HOMEBREW_PREFIX.to_s != "/usr/local"
|
||||
end
|
||||
|
||||
def alt_fuse_root
|
||||
buildpath/"temp"
|
||||
end
|
||||
|
||||
def fuse_cmake_args
|
||||
return unless need_alt_fuse?
|
||||
|
||||
%W[
|
||||
-DCMAKE_INCLUDE_PATH=#{alt_fuse_root}/include/fuse;#{alt_fuse_root}/include
|
||||
-DCMAKE_LIBRARY_PATH=#{alt_fuse_root}/lib
|
||||
-DCMAKE_CXX_FLAGS=-I#{alt_fuse_root}/include/fuse\ -D_USE_FILE_OFFSET_BITS=64
|
||||
]
|
||||
# -DPKG_CONFIG=#{fuse_pkgconfig}
|
||||
# -DPKG_CONFIG_EXECUTABLE=#{fuse_pkgconfig}
|
||||
# -DFUSE_INCLUDE_DIR=#{alt_fuse_root}/include/fuse
|
||||
# -DFUSE_LIBRARIES=#{alt_fuse_root}/lib/libfuse.dylib
|
||||
end
|
||||
|
||||
def setup_fuse_includes
|
||||
mkdir "#{alt_fuse_root}/include" do
|
||||
Dir["/usr/local/include/fuse", "/usr/local/include/fuse.h"].each { |f| cp_r f, "." }
|
||||
end
|
||||
end
|
||||
|
||||
def setup_fuse3_includes
|
||||
mkdir "#{alt_fuse_root}/include" do
|
||||
Dir["/usr/local/include/fuse3"].each { |f| cp_r f, "." }
|
||||
end
|
||||
end
|
||||
|
||||
def setup_fuse_libs
|
||||
mkdir "#{alt_fuse_root}/lib" do
|
||||
Dir["/usr/local/lib/libfuse.*"].each { |f| cp_r f, "." }
|
||||
end
|
||||
end
|
||||
|
||||
def setup_fuse3_libs
|
||||
mkdir "#{alt_fuse_root}/lib" do
|
||||
Dir["/usr/local/lib/libfuse3.*"].each { |f| cp_r f, "." }
|
||||
end
|
||||
end
|
||||
|
||||
def setup_fuse_pkgconfig
|
||||
### OLD METHOD: Fake pkg-config
|
||||
# mkdir "#{alt_fuse_root}/bin" do
|
||||
# cp path/"../../lib/fuse-pkg-config", "."
|
||||
# inreplace "fuse-pkg-config", "%FUSE_ROOT%", "#{alt_fuse_root}"
|
||||
# end
|
||||
# ENV["PKG_CONFIG"] = "#{fuse_pkgconfig}"
|
||||
|
||||
### NEW METHOD: Fix fuse.pc in alt root
|
||||
mkdir "#{alt_fuse_root}/lib/pkgconfig" do
|
||||
cp "/usr/local/lib/pkgconfig/fuse.pc", "."
|
||||
inreplace "fuse.pc", "/usr/local", alt_fuse_root.to_s
|
||||
end
|
||||
ENV.prepend_path "PKG_CONFIG_PATH", "#{alt_fuse_root}/lib/pkgconfig"
|
||||
end
|
||||
|
||||
def setup_fuse3_pkgconfig
|
||||
mkdir "#{alt_fuse_root}/lib/pkgconfig" do
|
||||
cp "/usr/local/lib/pkgconfig/fuse3.pc", "."
|
||||
inreplace "fuse3.pc", "/usr/local", alt_fuse_root.to_s
|
||||
end
|
||||
ENV.prepend_path "PKG_CONFIG_PATH", "#{alt_fuse_root}/lib/pkgconfig"
|
||||
end
|
||||
|
||||
# def fuse_pkgconfig
|
||||
# return "#{alt_fuse_root}/bin/fuse-pkg-config" if need_alt_fuse?
|
||||
# "pkg-config"
|
||||
# end
|
||||
|
||||
def setup_fuse_env
|
||||
odebug "Setting up FUSE temp environment under #{alt_fuse_root}"
|
||||
setup_fuse_includes
|
||||
setup_fuse_libs
|
||||
setup_fuse_pkgconfig
|
||||
Dir.glob("#{alt_fuse_root}/**/*").each { |f| odebug ">>> #{f}" }
|
||||
end
|
||||
|
||||
def setup_fuse3_env
|
||||
odebug "Setting up FUSE3 temp environment under #{alt_fuse_root}"
|
||||
setup_fuse3_includes
|
||||
setup_fuse3_libs
|
||||
setup_fuse3_pkgconfig
|
||||
Dir.glob("#{alt_fuse_root}/**/*").each { |f| odebug ">>> #{f}" }
|
||||
end
|
||||
|
||||
def disable_macfuse_extensions
|
||||
ENV.append "CFLAGS", "-DFUSE_DARWIN_ENABLE_EXTENSIONS=0"
|
||||
ENV.append "CPPFLAGS", "-DFUSE_DARWIN_ENABLE_EXTENSIONS=0"
|
||||
ENV.append "CXXFLAGS", "-DFUSE_DARWIN_ENABLE_EXTENSIONS=0"
|
||||
ENV.append "CGO_CPPFLAGS", "-DFUSE_DARWIN_ENABLE_EXTENSIONS=0"
|
||||
end
|
||||
|
||||
def setup_fuse_flags
|
||||
ENV.append "CFLAGS", "-I#{alt_fuse_root}/include/fuse"
|
||||
ENV.append "CFLAGS", "-I#{alt_fuse_root}/include"
|
||||
ENV.append "CFLAGS", "-D_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CFLAGS", "-D_USE_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CPPFLAGS", "-I#{alt_fuse_root}/include/fuse"
|
||||
ENV.append "CPPFLAGS", "-I#{alt_fuse_root}/include"
|
||||
ENV.append "CPPFLAGS", "-D_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CPPFLAGS", "-D_USE_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CXXFLAGS", "-I#{alt_fuse_root}/include/fuse"
|
||||
ENV.append "CPPFLAGS", "-I#{alt_fuse_root}/include"
|
||||
ENV.append "CXXFLAGS", "-D_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CXXFLAGS", "-D_USE_FILE_OFFSET_BITS=64"
|
||||
ENV.append "LDFLAGS", "-L#{alt_fuse_root}/lib"
|
||||
ENV.append "CGO_CPPFLAGS", "-I#{alt_fuse_root}/include/fuse"
|
||||
ENV.append "CGO_CPPFLAGS", "-I#{alt_fuse_root}/include"
|
||||
ENV.append "CGO_CPPFLAGS", "-D_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CGO_CPPFLAGS", "-D_USE_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CGO_LDFLAGS", "-L#{alt_fuse_root}/lib"
|
||||
disable_macfuse_extensions
|
||||
odebug "PKG_CONFIG = #{ENV.fetch("PKG_CONFIG", nil)}"
|
||||
odebug "PKG_CONFIG_PATH = #{ENV.fetch("PKG_CONFIG_PATH", nil)}"
|
||||
odebug "CFLAGS = #{ENV.fetch("CFLAGS", nil)}"
|
||||
end
|
||||
|
||||
def setup_fuse3_flags
|
||||
ENV.append "CFLAGS", "-I#{alt_fuse_root}/include/fuse3"
|
||||
ENV.append "CFLAGS", "-I#{alt_fuse_root}/include"
|
||||
ENV.append "CFLAGS", "-D_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CFLAGS", "-D_USE_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CPPFLAGS", "-I#{alt_fuse_root}/include/fuse3"
|
||||
ENV.append "CPPFLAGS", "-I#{alt_fuse_root}/include"
|
||||
ENV.append "CPPFLAGS", "-D_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CPPFLAGS", "-D_USE_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CXXFLAGS", "-I#{alt_fuse_root}/include/fuse3"
|
||||
ENV.append "CXXFLAGS", "-I#{alt_fuse_root}/include"
|
||||
ENV.append "CXXFLAGS", "-D_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CXXFLAGS", "-D_USE_FILE_OFFSET_BITS=64"
|
||||
ENV.append "LDFLAGS", "-L#{alt_fuse_root}/lib"
|
||||
ENV.append "CGO_CPPFLAGS", "-I#{alt_fuse_root}/include/fuse3"
|
||||
ENV.append "CGO_CPPFLAGS", "-I#{alt_fuse_root}/include"
|
||||
ENV.append "CGO_CPPFLAGS", "-D_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CGO_CPPFLAGS", "-D_USE_FILE_OFFSET_BITS=64"
|
||||
ENV.append "CGO_LDFLAGS", "-L#{alt_fuse_root}/lib"
|
||||
disable_macfuse_extensions
|
||||
odebug "PKG_CONFIG = #{ENV.fetch("PKG_CONFIG", nil)}"
|
||||
odebug "PKG_CONFIG_PATH = #{ENV.fetch("PKG_CONFIG_PATH", nil)}"
|
||||
odebug "CFLAGS = #{ENV.fetch("CFLAGS", nil)}"
|
||||
end
|
||||
|
||||
def setup_fuse
|
||||
return unless need_alt_fuse?
|
||||
|
||||
setup_fuse_env
|
||||
setup_fuse_flags
|
||||
end
|
||||
|
||||
def setup_fuse3
|
||||
return unless need_alt_fuse?
|
||||
|
||||
setup_fuse3_env
|
||||
setup_fuse3_flags
|
||||
end
|
||||
end
|
||||
|
|
|
|||
3
tap_migrations.json
Normal file
3
tap_migrations.json
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"mounty": "homebrew/cask"
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue