app_versions.json 59 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974
  1. {
  2. "1.2.7": {
  3. "healthy": true,
  4. "supported": true,
  5. "healthy_error": null,
  6. "location": "/__w/apps/apps/trains/community/rsyncd/1.2.7",
  7. "last_update": "2025-09-02 11:33:24",
  8. "required_features": [],
  9. "human_version": "1.0.2_1.2.7",
  10. "version": "1.2.7",
  11. "app_metadata": {
  12. "annotations": {
  13. "min_scale_version": "24.10.2.2"
  14. },
  15. "app_version": "1.0.2",
  16. "capabilities": [
  17. {
  18. "description": "Rsyncd is able to change file ownership arbitrarily",
  19. "name": "CHOWN"
  20. },
  21. {
  22. "description": "Rsyncd is able to bypass file permission checks",
  23. "name": "DAC_OVERRIDE"
  24. },
  25. {
  26. "description": "Rsyncd is able to bypass permission checks for file operations",
  27. "name": "FOWNER"
  28. },
  29. {
  30. "description": "Rsyncd is able to set file capabilities on other files",
  31. "name": "SETFCAP"
  32. },
  33. {
  34. "description": "Rsyncd is able to change group ID of processes",
  35. "name": "SETGID"
  36. },
  37. {
  38. "description": "Rsyncd is able to change user ID of processes",
  39. "name": "SETUID"
  40. },
  41. {
  42. "description": "Rsyncd is able to use chroot() system call",
  43. "name": "SYS_CHROOT"
  44. }
  45. ],
  46. "categories": [
  47. "storage"
  48. ],
  49. "date_added": "2024-08-28",
  50. "description": "Rsync is an open source utility that provides fast incremental file transfer.",
  51. "home": "https://github.com/truenas/containers/tree/main/apps/rsyncd",
  52. "host_mounts": [],
  53. "icon": "https://media.sys.truenas.net/apps/rsyncd/icons/icon.png",
  54. "keywords": [
  55. "sync",
  56. "rsync",
  57. "file transfer"
  58. ],
  59. "lib_version": "2.1.49",
  60. "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
  61. "maintainers": [
  62. {
  63. "email": "dev@ixsystems.com",
  64. "name": "truenas",
  65. "url": "https://www.truenas.com/"
  66. }
  67. ],
  68. "name": "rsyncd",
  69. "run_as_context": [
  70. {
  71. "description": "Rsync Daemon run as root user.",
  72. "gid": 0,
  73. "group_name": "root",
  74. "uid": 0,
  75. "user_name": "root"
  76. }
  77. ],
  78. "screenshots": [],
  79. "sources": [
  80. "https://github.com/truenas/containers/tree/master/apps/rsyncd",
  81. "https://hub.docker.com/r/ixsystems/rsyncd"
  82. ],
  83. "title": "Rsync Daemon",
  84. "train": "community",
  85. "version": "1.2.7"
  86. },
  87. "schema": {
  88. "groups": [
  89. {
  90. "name": "Rsync Daemon Configuration",
  91. "description": "Configure Rsync Daemon"
  92. },
  93. {
  94. "name": "Network Configuration",
  95. "description": "Configure Network for Rsync Daemon"
  96. },
  97. {
  98. "name": "Storage Configuration",
  99. "description": "Configure Storage for Rsync Daemon"
  100. },
  101. {
  102. "name": "Labels Configuration",
  103. "description": "Configure Labels for Rsync Daemon"
  104. },
  105. {
  106. "name": "Resources Configuration",
  107. "description": "Configure Resources for Rsync Daemon"
  108. }
  109. ],
  110. "questions": [
  111. {
  112. "variable": "rsyncd",
  113. "label": "",
  114. "group": "Rsync Daemon Configuration",
  115. "schema": {
  116. "type": "dict",
  117. "attrs": [
  118. {
  119. "variable": "max_connections",
  120. "label": "Max Connections",
  121. "description": "The maximum number of simultaneous connections.",
  122. "schema": {
  123. "type": "int",
  124. "default": 4,
  125. "required": true
  126. }
  127. },
  128. {
  129. "variable": "aux_params",
  130. "label": "Auxillary Parameters",
  131. "description": "Configure auxillary parameters for Rsync.",
  132. "schema": {
  133. "type": "list",
  134. "default": [],
  135. "items": [
  136. {
  137. "variable": "aux_entry",
  138. "label": "Auxillary Parameter Entry",
  139. "schema": {
  140. "type": "dict",
  141. "attrs": [
  142. {
  143. "variable": "param",
  144. "label": "Parameter",
  145. "schema": {
  146. "type": "string",
  147. "required": true
  148. }
  149. },
  150. {
  151. "variable": "value",
  152. "label": "Value",
  153. "schema": {
  154. "type": "string",
  155. "required": true
  156. }
  157. }
  158. ]
  159. }
  160. }
  161. ]
  162. }
  163. },
  164. {
  165. "variable": "rsync_modules",
  166. "label": "Rsync Modules",
  167. "description": "Configure modules for Rsync.",
  168. "schema": {
  169. "type": "list",
  170. "default": [],
  171. "min": 1,
  172. "required": true,
  173. "items": [
  174. {
  175. "variable": "module",
  176. "label": "Module",
  177. "schema": {
  178. "type": "dict",
  179. "attrs": [
  180. {
  181. "variable": "name",
  182. "label": "Module Name",
  183. "description": "Module name that matches the name requested by the rsync client.\n",
  184. "schema": {
  185. "type": "string",
  186. "valid_chars": "^[a-zA-Z0-9]+([_-]*[a-zA-Z0-9]+)+$",
  187. "valid_chars_error": "Module Name, can include [Letters (a-z, A-Z), Numbers (0,9), Underscore (_), Dash (-)],</br>\nbut cannot start or end with [Underscore (_), Dash (-), Dot (.)]\n",
  188. "required": true
  189. }
  190. },
  191. {
  192. "variable": "enabled",
  193. "label": "Enable Module",
  194. "schema": {
  195. "type": "boolean",
  196. "default": true
  197. }
  198. },
  199. {
  200. "variable": "comment",
  201. "label": "Comment",
  202. "description": "Describe the module.",
  203. "schema": {
  204. "type": "string",
  205. "show_if": [
  206. [
  207. "enabled",
  208. "=",
  209. true
  210. ]
  211. ]
  212. }
  213. },
  214. {
  215. "variable": "host_path",
  216. "label": "Host Path",
  217. "description": "The host path to use for the module.",
  218. "schema": {
  219. "type": "hostpath",
  220. "show_if": [
  221. [
  222. "enabled",
  223. "=",
  224. true
  225. ]
  226. ],
  227. "required": true
  228. }
  229. },
  230. {
  231. "variable": "access_mode",
  232. "label": "Access Mode",
  233. "description": "The access mode for the module.",
  234. "schema": {
  235. "type": "string",
  236. "show_if": [
  237. [
  238. "enabled",
  239. "=",
  240. true
  241. ]
  242. ],
  243. "default": "RO",
  244. "required": true,
  245. "enum": [
  246. {
  247. "value": "RO",
  248. "description": "Read Only"
  249. },
  250. {
  251. "value": "RW",
  252. "description": "Read Write"
  253. },
  254. {
  255. "value": "WO",
  256. "description": "Write Only"
  257. }
  258. ]
  259. }
  260. },
  261. {
  262. "variable": "max_connections",
  263. "label": "Max Connections",
  264. "description": "The maximum number of simultaneous connections.",
  265. "schema": {
  266. "type": "int",
  267. "show_if": [
  268. [
  269. "enabled",
  270. "=",
  271. true
  272. ]
  273. ],
  274. "default": 0,
  275. "min": 0,
  276. "max": 1000,
  277. "required": true
  278. }
  279. },
  280. {
  281. "variable": "uid",
  282. "label": "UID",
  283. "description": "The UID to use for the module.",
  284. "schema": {
  285. "type": "int",
  286. "show_if": [
  287. [
  288. "enabled",
  289. "=",
  290. true
  291. ]
  292. ],
  293. "default": 0,
  294. "min": 0,
  295. "max": 4294967295,
  296. "required": true
  297. }
  298. },
  299. {
  300. "variable": "gid",
  301. "label": "GID",
  302. "description": "The GID to use for the module.",
  303. "schema": {
  304. "type": "int",
  305. "show_if": [
  306. [
  307. "enabled",
  308. "=",
  309. true
  310. ]
  311. ],
  312. "default": 0,
  313. "min": 0,
  314. "max": 4294967295,
  315. "required": true
  316. }
  317. },
  318. {
  319. "variable": "hosts_allow",
  320. "label": "Hosts Allow",
  321. "description": "The hosts allowed to access the module.",
  322. "schema": {
  323. "type": "list",
  324. "show_if": [
  325. [
  326. "enabled",
  327. "=",
  328. true
  329. ]
  330. ],
  331. "default": [],
  332. "items": [
  333. {
  334. "variable": "host",
  335. "label": "Host",
  336. "schema": {
  337. "type": "string",
  338. "required": true
  339. }
  340. }
  341. ]
  342. }
  343. },
  344. {
  345. "variable": "hosts_deny",
  346. "label": "Hosts Deny",
  347. "description": "The hosts denied to access the module.",
  348. "schema": {
  349. "type": "list",
  350. "show_if": [
  351. [
  352. "enabled",
  353. "=",
  354. true
  355. ]
  356. ],
  357. "default": [],
  358. "items": [
  359. {
  360. "variable": "host",
  361. "label": "Host",
  362. "schema": {
  363. "type": "string",
  364. "required": true
  365. }
  366. }
  367. ]
  368. }
  369. },
  370. {
  371. "variable": "aux_params",
  372. "label": "Auxillary Parameters",
  373. "description": "Configure auxillary parameters for Rsync.",
  374. "schema": {
  375. "type": "list",
  376. "show_if": [
  377. [
  378. "enabled",
  379. "=",
  380. true
  381. ]
  382. ],
  383. "default": [],
  384. "items": [
  385. {
  386. "variable": "aux_entry",
  387. "label": "Auxillary Parameter Entry",
  388. "schema": {
  389. "type": "dict",
  390. "attrs": [
  391. {
  392. "variable": "param",
  393. "label": "Parameter",
  394. "schema": {
  395. "type": "string",
  396. "required": true
  397. }
  398. },
  399. {
  400. "variable": "value",
  401. "label": "Value",
  402. "schema": {
  403. "type": "string",
  404. "required": true
  405. }
  406. }
  407. ]
  408. }
  409. }
  410. ]
  411. }
  412. }
  413. ]
  414. }
  415. }
  416. ]
  417. }
  418. },
  419. {
  420. "variable": "additional_envs",
  421. "label": "Additional Environment Variables",
  422. "schema": {
  423. "type": "list",
  424. "default": [],
  425. "items": [
  426. {
  427. "variable": "env",
  428. "label": "Environment Variable",
  429. "schema": {
  430. "type": "dict",
  431. "attrs": [
  432. {
  433. "variable": "name",
  434. "label": "Name",
  435. "schema": {
  436. "type": "string",
  437. "required": true
  438. }
  439. },
  440. {
  441. "variable": "value",
  442. "label": "Value",
  443. "schema": {
  444. "type": "string"
  445. }
  446. }
  447. ]
  448. }
  449. }
  450. ]
  451. }
  452. }
  453. ]
  454. }
  455. },
  456. {
  457. "variable": "network",
  458. "label": "",
  459. "group": "Network Configuration",
  460. "schema": {
  461. "type": "dict",
  462. "attrs": [
  463. {
  464. "variable": "rsync_port",
  465. "label": "Rsync Port",
  466. "description": "The port for Rsync Daemon",
  467. "schema": {
  468. "type": "dict",
  469. "attrs": [
  470. {
  471. "variable": "bind_mode",
  472. "label": "Port Bind Mode",
  473. "description": "The port bind mode.</br>\n- Publish: The port will be published on the host for external access.</br>\n- Expose: The port will be exposed for inter-container communication.</br>\n- None: The port will not be exposed or published.</br>\nNote: If the Dockerfile defines an EXPOSE directive,\nthe port will still be exposed for inter-container communication regardless of this setting.\n",
  474. "schema": {
  475. "type": "string",
  476. "default": "published",
  477. "enum": [
  478. {
  479. "value": "published",
  480. "description": "Publish port on the host for external access"
  481. },
  482. {
  483. "value": "exposed",
  484. "description": "Expose port for inter-container communication"
  485. },
  486. {
  487. "value": "",
  488. "description": "None"
  489. }
  490. ]
  491. }
  492. },
  493. {
  494. "variable": "port_number",
  495. "label": "Port Number",
  496. "schema": {
  497. "type": "int",
  498. "default": 30026,
  499. "min": 1,
  500. "max": 65535,
  501. "required": true
  502. }
  503. },
  504. {
  505. "variable": "host_ips",
  506. "label": "Host IPs",
  507. "description": "IPs on the host to bind this port",
  508. "schema": {
  509. "type": "list",
  510. "show_if": [
  511. [
  512. "bind_mode",
  513. "=",
  514. "published"
  515. ]
  516. ],
  517. "default": [],
  518. "items": [
  519. {
  520. "variable": "host_ip",
  521. "label": "Host IP",
  522. "schema": {
  523. "type": "string",
  524. "required": true,
  525. "$ref": [
  526. "definitions/node_bind_ip"
  527. ]
  528. }
  529. }
  530. ]
  531. }
  532. }
  533. ]
  534. }
  535. },
  536. {
  537. "variable": "host_network",
  538. "label": "Host Network",
  539. "description": "Bind to the host network. It's recommended to keep this disabled.\n",
  540. "schema": {
  541. "type": "boolean",
  542. "default": true
  543. }
  544. }
  545. ]
  546. }
  547. },
  548. {
  549. "variable": "storage",
  550. "label": "",
  551. "group": "Storage Configuration",
  552. "schema": {
  553. "type": "dict",
  554. "attrs": [
  555. {
  556. "variable": "additional_storage",
  557. "label": "Additional Storage",
  558. "schema": {
  559. "type": "list",
  560. "default": [],
  561. "items": [
  562. {
  563. "variable": "storageEntry",
  564. "label": "Storage Entry",
  565. "schema": {
  566. "type": "dict",
  567. "attrs": [
  568. {
  569. "variable": "type",
  570. "label": "Type",
  571. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.</br>\nSMB Share: Is a SMB share that is mounted to as a volume.\n",
  572. "schema": {
  573. "type": "string",
  574. "required": true,
  575. "default": "ix_volume",
  576. "enum": [
  577. {
  578. "value": "host_path",
  579. "description": "Host Path (Path that already exists on the system)"
  580. },
  581. {
  582. "value": "ix_volume",
  583. "description": "ixVolume (Dataset created automatically by the system)"
  584. },
  585. {
  586. "value": "cifs",
  587. "description": "SMB/CIFS Share (Mounts a volume to a SMB share)"
  588. }
  589. ]
  590. }
  591. },
  592. {
  593. "variable": "read_only",
  594. "label": "Read Only",
  595. "description": "Mount the volume as read only.",
  596. "schema": {
  597. "type": "boolean",
  598. "default": false
  599. }
  600. },
  601. {
  602. "variable": "mount_path",
  603. "label": "Mount Path",
  604. "description": "The path inside the container to mount the storage.",
  605. "schema": {
  606. "type": "path",
  607. "required": true
  608. }
  609. },
  610. {
  611. "variable": "host_path_config",
  612. "label": "Host Path Configuration",
  613. "schema": {
  614. "type": "dict",
  615. "show_if": [
  616. [
  617. "type",
  618. "=",
  619. "host_path"
  620. ]
  621. ],
  622. "attrs": [
  623. {
  624. "variable": "acl_enable",
  625. "label": "Enable ACL",
  626. "description": "Enable ACL for the storage.",
  627. "schema": {
  628. "type": "boolean",
  629. "default": false
  630. }
  631. },
  632. {
  633. "variable": "acl",
  634. "label": "ACL Configuration",
  635. "schema": {
  636. "type": "dict",
  637. "show_if": [
  638. [
  639. "acl_enable",
  640. "=",
  641. true
  642. ]
  643. ],
  644. "attrs": [],
  645. "$ref": [
  646. "normalize/acl"
  647. ]
  648. }
  649. },
  650. {
  651. "variable": "path",
  652. "label": "Host Path",
  653. "description": "The host path to use for storage.",
  654. "schema": {
  655. "type": "hostpath",
  656. "show_if": [
  657. [
  658. "acl_enable",
  659. "=",
  660. false
  661. ]
  662. ],
  663. "required": true
  664. }
  665. }
  666. ]
  667. }
  668. },
  669. {
  670. "variable": "ix_volume_config",
  671. "label": "ixVolume Configuration",
  672. "description": "The configuration for the ixVolume dataset.",
  673. "schema": {
  674. "type": "dict",
  675. "show_if": [
  676. [
  677. "type",
  678. "=",
  679. "ix_volume"
  680. ]
  681. ],
  682. "$ref": [
  683. "normalize/ix_volume"
  684. ],
  685. "attrs": [
  686. {
  687. "variable": "acl_enable",
  688. "label": "Enable ACL",
  689. "description": "Enable ACL for the storage.",
  690. "schema": {
  691. "type": "boolean",
  692. "default": false
  693. }
  694. },
  695. {
  696. "variable": "dataset_name",
  697. "label": "Dataset Name",
  698. "description": "The name of the dataset to use for storage.",
  699. "schema": {
  700. "type": "string",
  701. "required": true,
  702. "default": "storage_entry"
  703. }
  704. },
  705. {
  706. "variable": "acl_entries",
  707. "label": "ACL Configuration",
  708. "schema": {
  709. "type": "dict",
  710. "show_if": [
  711. [
  712. "acl_enable",
  713. "=",
  714. true
  715. ]
  716. ],
  717. "attrs": []
  718. }
  719. }
  720. ]
  721. }
  722. },
  723. {
  724. "variable": "cifs_config",
  725. "label": "SMB Configuration",
  726. "description": "The configuration for the SMB dataset.",
  727. "schema": {
  728. "type": "dict",
  729. "show_if": [
  730. [
  731. "type",
  732. "=",
  733. "cifs"
  734. ]
  735. ],
  736. "attrs": [
  737. {
  738. "variable": "server",
  739. "label": "Server",
  740. "description": "The server to mount the SMB share.",
  741. "schema": {
  742. "type": "string",
  743. "required": true
  744. }
  745. },
  746. {
  747. "variable": "path",
  748. "label": "Path",
  749. "description": "The path to mount the SMB share.",
  750. "schema": {
  751. "type": "string",
  752. "required": true
  753. }
  754. },
  755. {
  756. "variable": "username",
  757. "label": "Username",
  758. "description": "The username to use for the SMB share.",
  759. "schema": {
  760. "type": "string",
  761. "required": true
  762. }
  763. },
  764. {
  765. "variable": "password",
  766. "label": "Password",
  767. "description": "The password to use for the SMB share.",
  768. "schema": {
  769. "type": "string",
  770. "required": true,
  771. "private": true
  772. }
  773. },
  774. {
  775. "variable": "domain",
  776. "label": "Domain",
  777. "description": "The domain to use for the SMB share.",
  778. "schema": {
  779. "type": "string"
  780. }
  781. }
  782. ]
  783. }
  784. }
  785. ]
  786. }
  787. }
  788. ]
  789. }
  790. }
  791. ]
  792. }
  793. },
  794. {
  795. "variable": "labels",
  796. "label": "",
  797. "group": "Labels Configuration",
  798. "schema": {
  799. "type": "list",
  800. "default": [],
  801. "items": [
  802. {
  803. "variable": "label",
  804. "label": "Label",
  805. "schema": {
  806. "type": "dict",
  807. "attrs": [
  808. {
  809. "variable": "key",
  810. "label": "Key",
  811. "schema": {
  812. "type": "string",
  813. "required": true
  814. }
  815. },
  816. {
  817. "variable": "value",
  818. "label": "Value",
  819. "schema": {
  820. "type": "string",
  821. "required": true
  822. }
  823. },
  824. {
  825. "variable": "containers",
  826. "label": "Containers",
  827. "description": "Containers where the label should be applied",
  828. "schema": {
  829. "type": "list",
  830. "items": [
  831. {
  832. "variable": "container",
  833. "label": "Container",
  834. "schema": {
  835. "type": "string",
  836. "required": true,
  837. "enum": [
  838. {
  839. "value": "rsyncd",
  840. "description": "rsyncd"
  841. }
  842. ]
  843. }
  844. }
  845. ]
  846. }
  847. }
  848. ]
  849. }
  850. }
  851. ]
  852. }
  853. },
  854. {
  855. "variable": "resources",
  856. "label": "",
  857. "group": "Resources Configuration",
  858. "schema": {
  859. "type": "dict",
  860. "attrs": [
  861. {
  862. "variable": "limits",
  863. "label": "Limits",
  864. "schema": {
  865. "type": "dict",
  866. "attrs": [
  867. {
  868. "variable": "cpus",
  869. "label": "CPUs",
  870. "description": "CPUs limit for Rsync Daemon.",
  871. "schema": {
  872. "type": "int",
  873. "default": 2,
  874. "required": true
  875. }
  876. },
  877. {
  878. "variable": "memory",
  879. "label": "Memory (in MB)",
  880. "description": "Memory limit for Rsync Daemon.",
  881. "schema": {
  882. "type": "int",
  883. "default": 4096,
  884. "required": true
  885. }
  886. }
  887. ]
  888. }
  889. }
  890. ]
  891. }
  892. }
  893. ]
  894. },
  895. "readme": "<h1>Rsyncd</h1> <p><a href=\"https://rsync.samba.org/\">Rsyncd</a> is an open source utility that provides fast incremental file transfer.</p>",
  896. "changelog": null,
  897. "chart_metadata": {
  898. "annotations": {
  899. "min_scale_version": "24.10.2.2"
  900. },
  901. "app_version": "1.0.2",
  902. "capabilities": [
  903. {
  904. "description": "Rsyncd is able to change file ownership arbitrarily",
  905. "name": "CHOWN"
  906. },
  907. {
  908. "description": "Rsyncd is able to bypass file permission checks",
  909. "name": "DAC_OVERRIDE"
  910. },
  911. {
  912. "description": "Rsyncd is able to bypass permission checks for file operations",
  913. "name": "FOWNER"
  914. },
  915. {
  916. "description": "Rsyncd is able to set file capabilities on other files",
  917. "name": "SETFCAP"
  918. },
  919. {
  920. "description": "Rsyncd is able to change group ID of processes",
  921. "name": "SETGID"
  922. },
  923. {
  924. "description": "Rsyncd is able to change user ID of processes",
  925. "name": "SETUID"
  926. },
  927. {
  928. "description": "Rsyncd is able to use chroot() system call",
  929. "name": "SYS_CHROOT"
  930. }
  931. ],
  932. "categories": [
  933. "storage"
  934. ],
  935. "date_added": "2024-08-28",
  936. "description": "Rsync is an open source utility that provides fast incremental file transfer.",
  937. "home": "https://github.com/truenas/containers/tree/main/apps/rsyncd",
  938. "host_mounts": [],
  939. "icon": "https://media.sys.truenas.net/apps/rsyncd/icons/icon.png",
  940. "keywords": [
  941. "sync",
  942. "rsync",
  943. "file transfer"
  944. ],
  945. "lib_version": "2.1.49",
  946. "lib_version_hash": "e71e6b0122c9446fa5ea6fb07e7eb01b11fb42d549a19845426bbd7e21a42634",
  947. "maintainers": [
  948. {
  949. "email": "dev@ixsystems.com",
  950. "name": "truenas",
  951. "url": "https://www.truenas.com/"
  952. }
  953. ],
  954. "name": "rsyncd",
  955. "run_as_context": [
  956. {
  957. "description": "Rsync Daemon run as root user.",
  958. "gid": 0,
  959. "group_name": "root",
  960. "uid": 0,
  961. "user_name": "root"
  962. }
  963. ],
  964. "screenshots": [],
  965. "sources": [
  966. "https://github.com/truenas/containers/tree/master/apps/rsyncd",
  967. "https://hub.docker.com/r/ixsystems/rsyncd"
  968. ],
  969. "title": "Rsync Daemon",
  970. "train": "community",
  971. "version": "1.2.7"
  972. }
  973. }
  974. }