├── .cirrus.yml ├── .cirrus └── install_script.sh ├── .github └── workflows │ └── validateindex.yml ├── .gitignore ├── INDEX ├── README.md ├── adguardhome.json ├── amule.json ├── archiwarep5.json ├── backuppc.json ├── bazarr.json ├── bind.json ├── calibre-web.json ├── channels-dvr.json ├── chia.json ├── clamav.json ├── deluge-pip.json ├── dnsmasq.json ├── drupal8.json ├── duplicati.json ├── emby-server-stable.json ├── emby.json ├── famp.json ├── flaresolverr.json ├── gitea.json ├── gitlab.json ├── grafana.json ├── graylog.json ├── guacamole.json ├── heimdall-dashboard.json ├── homebridge.json ├── hoobs.json ├── i2p.json ├── icons ├── adguardhome.png ├── amule.png ├── archiwarep5.png ├── backuppc.png ├── bazarr.png ├── bind.png ├── calibre-web.png ├── channels-dvr.png ├── chia.png ├── clamav.png ├── deluge.png ├── dnsmasq.png ├── dnsmasq.svg ├── drupal.png ├── drupal8.png ├── duplicati.png ├── emby-server-png-128.png ├── emby.png ├── famp.png ├── flaresolverr.png ├── gitea.png ├── gitlab.png ├── grafana.png ├── graylog.png ├── guacamole.png ├── heimdall-dashboard.png ├── homebridge.png ├── hoobs.png ├── i2p.png ├── irssi.png ├── jackett.png ├── jdownloader.png ├── jellyfin.png ├── jenkins.png ├── lidarr.png ├── logitechmediaserver.png ├── madsonic.png ├── mariadb.png ├── monica.png ├── motioneye.png ├── movienight.png ├── n8n.png ├── netdata.png ├── nexus-oss.png ├── nxfilter.png ├── nzbget.png ├── openspeedtest.png ├── openvpn.png ├── paperless-ngx.png ├── photoprism.png ├── photoview.png ├── piwigo.png ├── privatebin.png ├── prowlarr.png ├── qbittorrent.png ├── quasselcore.png ├── rabbitmq.png ├── radarr.png ├── readarr.png ├── redis.png ├── rslsync.png ├── rtorrent-flood.png ├── sabnzbd.png ├── sickchill.png ├── sonarr.png ├── tautulli.png ├── torr-server.png ├── transmission.png ├── unificontroller.png ├── urbackup.png ├── vault.png ├── weechat.png ├── xmrig.png ├── zabbix.png ├── zoneminder.png └── zrepl.png ├── index.schema ├── irssi.json ├── jackett.json ├── jdownloader.json ├── jellyfin.json ├── jenkins-lts.json ├── jenkins.json ├── lidarr.json ├── logitechmediaserver.json ├── madsonic.json ├── mariadb.json ├── monica.json ├── motioneye.json ├── movienight.json ├── n8n.json ├── netdata.json ├── nexus-oss.json ├── nxfilter.json ├── nzbget.json ├── openspeedtest-server.json ├── openvpn.json ├── paperless-ngx.json ├── photoprism.json ├── photoview.json ├── piwigo.json ├── privatebin.json ├── prowlarr.json ├── pull_request_template.md ├── qbittorrent.json ├── quasselcore.json ├── rabbitmq.json ├── radarr.json ├── readarr.json ├── redis.json ├── rslsync.json ├── rtorrent-flood.json ├── sabnzbd.json ├── sickchill.json ├── sonarr.json ├── tautulli.json ├── template ├── README.md ├── overlay │ └── usr │ │ └── local │ │ └── bin │ │ ├── quasselget │ │ └── quasselset ├── post_install.sh ├── settings.json └── ui.json ├── torr-server.json ├── transmission.json ├── unificontroller.json ├── urbackup.json ├── vault.json ├── weechat.json ├── xmrig.json ├── zabbixserver.json ├── zoneminder.json └── zrepl.json /.cirrus.yml: -------------------------------------------------------------------------------- 1 | freebsd_instance: 2 | cpu: 4 3 | memory: "4" 4 | 5 | env: 6 | HOME: "/root" 7 | PATH: "/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin" 8 | USER: "root" 9 | 10 | install_template: &INSTALL_PLUGIN 11 | install_script: .cirrus/install_script.sh 12 | 13 | adguardhome_task: 14 | <<: *INSTALL_PLUGIN 15 | only_if: "changesInclude('adguardhome.json', '.cirrus/install_script.sh')" 16 | matrix: 17 | - freebsd_instance: 18 | image_family: freebsd-12-2 19 | env: 20 | PLUGIN_FILE: "adguardhome.json" 21 | ADMIN_UI_USER: "admin:admin" 22 | 23 | amule_task: 24 | <<: *INSTALL_PLUGIN 25 | only_if: "changesInclude('amule.json', '.cirrus/install_script.sh')" 26 | matrix: 27 | - freebsd_instance: 28 | image_family: freebsd-12-3 29 | env: 30 | PLUGIN_FILE: "amule.json" 31 | SKIP_SERVICE_CHECK: "true" 32 | 33 | backuppc_task: 34 | <<: *INSTALL_PLUGIN 35 | only_if: "changesInclude('backuppc.json', '.cirrus/install_script.sh')" 36 | matrix: 37 | - freebsd_instance: 38 | image_family: freebsd-12-2 39 | env: 40 | PLUGIN_FILE: "backuppc.json" 41 | 42 | bazarr_task: 43 | <<: *INSTALL_PLUGIN 44 | only_if: "changesInclude('bazarr.json', '.cirrus/install_script.sh')" 45 | matrix: 46 | - freebsd_instance: 47 | image_family: freebsd-12-2 48 | env: 49 | PLUGIN_FILE: "bazarr.json" 50 | 51 | bind_task: 52 | <<: *INSTALL_PLUGIN 53 | only_if: "changesInclude('bind.json', '.cirrus/install_script.sh')" 54 | matrix: 55 | - freebsd_instance: 56 | image_family: freebsd-12-2 57 | env: 58 | PLUGIN_FILE: "bind.json" 59 | 60 | calibre-web_task: 61 | <<: *INSTALL_PLUGIN 62 | only_if: "changesInclude('calibre-web.json', '.cirrus/install_script.sh')" 63 | matrix: 64 | - freebsd_instance: 65 | image_family: freebsd-12-2 66 | env: 67 | PLUGIN_FILE: "calibre-web.json" 68 | 69 | channels-dvr_task: 70 | <<: *INSTALL_PLUGIN 71 | only_if: "changesInclude('channels-dvr.json', '.cirrus/install_script.sh')" 72 | matrix: 73 | - freebsd_instance: 74 | image_family: freebsd-12-2 75 | env: 76 | PLUGIN_FILE: "channels-dvr.json" 77 | 78 | clamav_task: 79 | <<: *INSTALL_PLUGIN 80 | only_if: "changesInclude('clamav.json', '.cirrus/install_script.sh')" 81 | matrix: 82 | - freebsd_instance: 83 | image_family: freebsd-12-2 84 | env: 85 | PLUGIN_FILE: "clamav.json" 86 | 87 | deluge-pip_task: 88 | <<: *INSTALL_PLUGIN 89 | only_if: "changesInclude('deluge-pip.json', '.cirrus/install_script.sh')" 90 | matrix: 91 | - freebsd_instance: 92 | image_family: freebsd-13-1 93 | env: 94 | PLUGIN_FILE: "deluge-pip.json" 95 | 96 | dnsmasq_task: 97 | <<: *INSTALL_PLUGIN 98 | only_if: "changesInclude('dnsmasq.json', '.cirrus/install_script.sh')" 99 | matrix: 100 | - freebsd_instance: 101 | image_family: freebsd-12-2 102 | env: 103 | PLUGIN_FILE: "dnsmasq.json" 104 | 105 | drupal8_task: 106 | <<: *INSTALL_PLUGIN 107 | only_if: "changesInclude('drupal8.json', '.cirrus/install_script.sh')" 108 | matrix: 109 | - freebsd_instance: 110 | image_family: freebsd-12-2 111 | env: 112 | PLUGIN_FILE: "drupal8.json" 113 | 114 | duplicati_task: 115 | <<: *INSTALL_PLUGIN 116 | only_if: "changesInclude('duplicati.json', '.cirrus/install_script.sh')" 117 | matrix: 118 | - freebsd_instance: 119 | image_family: freebsd-12-2 120 | env: 121 | PLUGIN_FILE: "duplicati.json" 122 | 123 | emby_task: 124 | <<: *INSTALL_PLUGIN 125 | only_if: "changesInclude('emby.json', '.cirrus/install_script.sh')" 126 | matrix: 127 | - freebsd_instance: 128 | image_family: freebsd-12-2 129 | env: 130 | PLUGIN_FILE: "emby.json" 131 | 132 | emby-server-stable_task: 133 | <<: *INSTALL_PLUGIN 134 | only_if: "changesInclude('emby-server-stable.json', '.cirrus/install_script.sh')" 135 | matrix: 136 | - freebsd_instance: 137 | image_family: freebsd-12-2 138 | env: 139 | PLUGIN_FILE: "emby-server-stable.json" 140 | 141 | famp_task: 142 | <<: *INSTALL_PLUGIN 143 | only_if: "changesInclude('famp.json', '.cirrus/install_script.sh')" 144 | matrix: 145 | - freebsd_instance: 146 | image_family: freebsd-12-2 147 | env: 148 | PLUGIN_FILE: "famp.json" 149 | 150 | flaresolverr_task: 151 | <<: *INSTALL_PLUGIN 152 | only_if: "changesInclude('flaresolverr.json', '.cirrus/install_script.sh')" 153 | matrix: 154 | - freebsd_instance: 155 | image_family: freebsd-13-1 156 | env: 157 | PLUGIN_FILE: "flaresolverr.json" 158 | 159 | gitea_task: 160 | <<: *INSTALL_PLUGIN 161 | only_if: "changesInclude('gitea.json', '.cirrus/install_script.sh')" 162 | matrix: 163 | - freebsd_instance: 164 | image_family: freebsd-12-2 165 | env: 166 | PLUGIN_FILE: "gitea.json" 167 | 168 | gitlab_task: 169 | <<: *INSTALL_PLUGIN 170 | only_if: "changesInclude('gitlab.json', '.cirrus/install_script.sh')" 171 | matrix: 172 | - freebsd_instance: 173 | image_family: freebsd-12-2 174 | env: 175 | PLUGIN_FILE: "gitlab.json" 176 | 177 | grafana_task: 178 | <<: *INSTALL_PLUGIN 179 | only_if: "changesInclude('grafana.json', '.cirrus/install_script.sh')" 180 | matrix: 181 | - freebsd_instance: 182 | image_family: freebsd-12-2 183 | env: 184 | PLUGIN_FILE: "grafana.json" 185 | 186 | graylog_task: 187 | <<: *INSTALL_PLUGIN 188 | only_if: "changesInclude('graylog.json', '.cirrus/install_script.sh')" 189 | matrix: 190 | - freebsd_instance: 191 | image_family: freebsd-12-2 192 | env: 193 | PLUGIN_FILE: "graylog.json" 194 | 195 | guacamole_task: 196 | <<: *INSTALL_PLUGIN 197 | only_if: "changesInclude('guacamole.json', '.cirrus/install_script.sh')" 198 | matrix: 199 | - freebsd_instance: 200 | image_family: freebsd-12-2 201 | env: 202 | PLUGIN_FILE: "guacamole.json" 203 | 204 | heimdall-dashboard_task: 205 | <<: *INSTALL_PLUGIN 206 | only_if: "changesInclude('heimdall-dashboard.json', '.cirrus/install_script.sh')" 207 | matrix: 208 | - freebsd_instance: 209 | image_family: freebsd-12-2 210 | env: 211 | PLUGIN_FILE: "heimdall-dashboard.json" 212 | 213 | homebridge_task: 214 | <<: *INSTALL_PLUGIN 215 | only_if: "changesInclude('homebridge.json', '.cirrus/install_script.sh')" 216 | matrix: 217 | - freebsd_instance: 218 | image_family: freebsd-12-2 219 | env: 220 | PLUGIN_FILE: "homebridge.json" 221 | 222 | hoobs_task: 223 | <<: *INSTALL_PLUGIN 224 | only_if: "changesInclude('hoobs.json', '.cirrus/install_script.sh')" 225 | matrix: 226 | - freebsd_instance: 227 | image_family: freebsd-12-2 228 | env: 229 | PLUGIN_FILE: "hoobs.json" 230 | 231 | i2p_task: 232 | <<: *INSTALL_PLUGIN 233 | only_if: "changesInclude('i2p.json', '.cirrus/install_script.sh')" 234 | matrix: 235 | - freebsd_instance: 236 | image_family: freebsd-12-2 237 | env: 238 | PLUGIN_FILE: "i2p.json" 239 | 240 | irssi_task: 241 | <<: *INSTALL_PLUGIN 242 | only_if: "changesInclude('irssi.json', '.cirrus/install_script.sh')" 243 | matrix: 244 | - freebsd_instance: 245 | image_family: freebsd-12-2 246 | env: 247 | PLUGIN_FILE: "irssi.json" 248 | 249 | jackett_task: 250 | <<: *INSTALL_PLUGIN 251 | only_if: "changesInclude('jackett.json', '.cirrus/install_script.sh')" 252 | matrix: 253 | - freebsd_instance: 254 | image_family: freebsd-12-2 255 | env: 256 | PLUGIN_FILE: "jackett.json" 257 | FOLLOW_REDIRECTS: "false" 258 | 259 | jdownloader_task: 260 | <<: *INSTALL_PLUGIN 261 | only_if: "changesInclude('jdownloader.json', '.cirrus/install_script.sh')" 262 | matrix: 263 | - freebsd_instance: 264 | image_family: freebsd-12-2 265 | env: 266 | PLUGIN_FILE: "jdownloader.json" 267 | 268 | jellyfin_task: 269 | <<: *INSTALL_PLUGIN 270 | only_if: "changesInclude('jellyfin.json', '.cirrus/install_script.sh')" 271 | matrix: 272 | - freebsd_instance: 273 | image_family: freebsd-13-1 274 | env: 275 | PLUGIN_FILE: "jellyfin.json" 276 | 277 | jenkins_task: 278 | <<: *INSTALL_PLUGIN 279 | only_if: "changesInclude('jenkins.json', '.cirrus/install_script.sh')" 280 | matrix: 281 | - freebsd_instance: 282 | image_family: freebsd-12-2 283 | env: 284 | PLUGIN_FILE: "jenkins.json" 285 | OVERRIDE_ADMIN_UI: "http://:8080/login" 286 | 287 | jenkins-lts_task: 288 | <<: *INSTALL_PLUGIN 289 | only_if: "changesInclude('jenkins-lts.json', '.cirrus/install_script.sh')" 290 | matrix: 291 | - freebsd_instance: 292 | image_family: freebsd-12-2 293 | env: 294 | PLUGIN_FILE: "jenkins-lts.json" 295 | OVERRIDE_ADMIN_UI: "http://:8080/login" 296 | 297 | lidarr_task: 298 | <<: *INSTALL_PLUGIN 299 | only_if: "changesInclude('lidarr.json', '.cirrus/install_script.sh')" 300 | matrix: 301 | - freebsd_instance: 302 | image_family: freebsd-12-2 303 | env: 304 | PLUGIN_FILE: "lidarr.json" 305 | 306 | logitechmediaserver_task: 307 | <<: *INSTALL_PLUGIN 308 | only_if: "changesInclude('logitechmediaserver.json', '.cirrus/install_script.sh')" 309 | matrix: 310 | - freebsd_instance: 311 | image_family: freebsd-12-2 312 | env: 313 | PLUGIN_FILE: "logitechmediaserver.json" 314 | 315 | madsonic_task: 316 | <<: *INSTALL_PLUGIN 317 | only_if: "changesInclude('madsonic.json', '.cirrus/install_script.sh')" 318 | matrix: 319 | - freebsd_instance: 320 | image_family: freebsd-12-2 321 | env: 322 | PLUGIN_FILE: "madsonic.json" 323 | 324 | mariadb_task: 325 | <<: *INSTALL_PLUGIN 326 | only_if: "changesInclude('mariadb.json', '.cirrus/install_script.sh')" 327 | matrix: 328 | - freebsd_instance: 329 | image_family: freebsd-12-2 330 | env: 331 | PLUGIN_FILE: "mariadb.json" 332 | 333 | monica_task: 334 | <<: *INSTALL_PLUGIN 335 | only_if: "changesInclude('monica.json', '.cirrus/install_script.sh')" 336 | matrix: 337 | - freebsd_instance: 338 | image_family: freebsd-12-2 339 | env: 340 | PLUGIN_FILE: "monica.json" 341 | 342 | motioneye_task: 343 | <<: *INSTALL_PLUGIN 344 | only_if: "changesInclude('motioneye.json', '.cirrus/install_script.sh')" 345 | matrix: 346 | - freebsd_instance: 347 | image_family: freebsd-12-2 348 | env: 349 | PLUGIN_FILE: "motioneye.json" 350 | 351 | movienight_task: 352 | <<: *INSTALL_PLUGIN 353 | only_if: "changesInclude('movienight.json', '.cirrus/install_script.sh')" 354 | matrix: 355 | - freebsd_instance: 356 | image_family: freebsd-12-2 357 | env: 358 | PLUGIN_FILE: "movienight.json" 359 | 360 | n8n_task: 361 | <<: *INSTALL_PLUGIN 362 | only_if: "changesInclude('n8n.json', '.cirrus/install_script.sh')" 363 | matrix: 364 | - freebsd_instance: 365 | image_family: freebsd-12-2 366 | env: 367 | PLUGIN_FILE: "n8n.json" 368 | 369 | netdata_task: 370 | <<: *INSTALL_PLUGIN 371 | only_if: "changesInclude('netdata.json', '.cirrus/install_script.sh')" 372 | matrix: 373 | - freebsd_instance: 374 | image_family: freebsd-12-2 375 | env: 376 | PLUGIN_FILE: "netdata.json" 377 | 378 | nexus_task: 379 | <<: *INSTALL_PLUGIN 380 | only_if: "changesInclude('nexus-oss.json', '.cirrus/install_script.sh')" 381 | matrix: 382 | - freebsd_instance: 383 | image_family: freebsd-12-2 384 | env: 385 | PLUGIN_FILE: "nexus-oss.json" 386 | 387 | nxfilter_task: 388 | <<: *INSTALL_PLUGIN 389 | only_if: "changesInclude('nxfilter.json', '.cirrus/install_script.sh')" 390 | matrix: 391 | - freebsd_instance: 392 | image_family: freebsd-12-2 393 | env: 394 | PLUGIN_FILE: "nxfilter.json" 395 | 396 | nzbget_task: 397 | <<: *INSTALL_PLUGIN 398 | only_if: "changesInclude('nzbget.json', '.cirrus/install_script.sh')" 399 | matrix: 400 | - freebsd_instance: 401 | image_family: freebsd-12-2 402 | env: 403 | PLUGIN_FILE: "nzbget.json" 404 | ADMIN_UI_USER: "nzbget:tegbzn6789" 405 | 406 | openspeedtest-server_task: 407 | <<: *INSTALL_PLUGIN 408 | only_if: "changesInclude('openspeedtest-server.json', '.cirrus/install_script.sh')" 409 | matrix: 410 | - freebsd_instance: 411 | image_family: freebsd-12-2 412 | env: 413 | PLUGIN_FILE: "openspeedtest-server.json" 414 | 415 | openvpn_task: 416 | <<: *INSTALL_PLUGIN 417 | only_if: "changesInclude('openvpn.json', '.cirrus/install_script.sh')" 418 | matrix: 419 | - freebsd_instance: 420 | image_family: freebsd-12-2 421 | env: 422 | PLUGIN_FILE: "openvpn.json" 423 | 424 | paperless-ngx_task: 425 | <<: *INSTALL_PLUGIN 426 | only_if: "changesInclude('paperless-ngx.json', '.cirrus/install_script.sh')" 427 | matrix: 428 | - freebsd_instance: 429 | image_family: freebsd-13-1 430 | env: 431 | PLUGIN_FILE: "paperless-ngx.json" 432 | 433 | photoprism_task: 434 | <<: *INSTALL_PLUGIN 435 | only_if: "changesInclude('photoprism.json', '.cirrus/install_script.sh')" 436 | matrix: 437 | - freebsd_instance: 438 | image_family: freebsd-13-1 439 | env: 440 | PLUGIN_FILE: "photoprism.json" 441 | 442 | photoview_task: 443 | <<: *INSTALL_PLUGIN 444 | only_if: "changesInclude('photoview.json', '.cirrus/install_script.sh')" 445 | matrix: 446 | - freebsd_instance: 447 | image_family: freebsd-13-2 448 | env: 449 | PLUGIN_FILE: "photoview.json" 450 | 451 | piwigo_task: 452 | <<: *INSTALL_PLUGIN 453 | only_if: "changesInclude('piwigo.json', '.cirrus/install_script.sh')" 454 | matrix: 455 | - freebsd_instance: 456 | image_family: freebsd-12-2 457 | env: 458 | PLUGIN_FILE: "piwigo.json" 459 | 460 | privatebin_task: 461 | <<: *INSTALL_PLUGIN 462 | only_if: "changesInclude('privatebin.json', '.cirrus/install_script.sh')" 463 | matrix: 464 | - freebsd_instance: 465 | image_family: freebsd-12-2 466 | env: 467 | PLUGIN_FILE: "privatebin.json" 468 | 469 | prowlarr_task: 470 | <<: *INSTALL_PLUGIN 471 | only_if: "changesInclude('prowlarr.json', '.cirrus/install_script.sh')" 472 | matrix: 473 | - freebsd_instance: 474 | image_family: freebsd-12-3 475 | env: 476 | PLUGIN_FILE: "prowlarr.json" 477 | 478 | qbittorrent_task: 479 | <<: *INSTALL_PLUGIN 480 | only_if: "changesInclude('qbittorrent.json', '.cirrus/install_script.sh')" 481 | matrix: 482 | - freebsd_instance: 483 | image_family: freebsd-12-2 484 | env: 485 | PLUGIN_FILE: "qbittorrent.json" 486 | 487 | quasselcore_task: 488 | <<: *INSTALL_PLUGIN 489 | only_if: "changesInclude('quasselcore.json', '.cirrus/install_script.sh')" 490 | matrix: 491 | - freebsd_instance: 492 | image_family: freebsd-12-2 493 | env: 494 | PLUGIN_FILE: "quasselcore.json" 495 | SKIP_UI_CHECK: "true" 496 | 497 | rabbitmq_task: 498 | <<: *INSTALL_PLUGIN 499 | only_if: "changesInclude('rabbitmq.json', '.cirrus/install_script.sh')" 500 | matrix: 501 | - freebsd_instance: 502 | image_family: freebsd-13-1 503 | env: 504 | PLUGIN_FILE: "rabbitmq.json" 505 | 506 | radarr_task: 507 | <<: *INSTALL_PLUGIN 508 | only_if: "changesInclude('radarr.json', '.cirrus/install_script.sh')" 509 | matrix: 510 | - freebsd_instance: 511 | image_family: freebsd-12-2 512 | env: 513 | PLUGIN_FILE: "radarr.json" 514 | 515 | redis_task: 516 | <<: *INSTALL_PLUGIN 517 | only_if: "changesInclude('redis.json', '.cirrus/install_script.sh')" 518 | matrix: 519 | - freebsd_instance: 520 | image_family: freebsd-12-2 521 | env: 522 | PLUGIN_FILE: "redis.json" 523 | 524 | readarr_task: 525 | <<: *INSTALL_PLUGIN 526 | only_if: "changesInclude('readarr.json', '.cirrus/install_script.sh')" 527 | matrix: 528 | - freebsd_instance: 529 | image_family: freebsd-13-1 530 | env: 531 | PLUGIN_FILE: "readarr.json" 532 | 533 | 534 | rslsync_task: 535 | <<: *INSTALL_PLUGIN 536 | only_if: "changesInclude('rslsync.json', '.cirrus/install_script.sh')" 537 | matrix: 538 | - freebsd_instance: 539 | image_family: freebsd-12-2 540 | env: 541 | PLUGIN_FILE: "rslsync.json" 542 | 543 | rtorrent-flood_task: 544 | <<: *INSTALL_PLUGIN 545 | only_if: "changesInclude('rtorrent-flood.json', '.cirrus/install_script.sh')" 546 | matrix: 547 | - freebsd_instance: 548 | image_family: freebsd-12-2 549 | env: 550 | PLUGIN_FILE: "rtorrent-flood.json" 551 | 552 | sabnzbd_task: 553 | <<: *INSTALL_PLUGIN 554 | only_if: "changesInclude('sabnzbd.json', '.cirrus/install_script.sh')" 555 | matrix: 556 | - freebsd_instance: 557 | image_family: freebsd-12-2 558 | env: 559 | PLUGIN_FILE: "sabnzbd.json" 560 | 561 | sickchill_task: 562 | <<: *INSTALL_PLUGIN 563 | only_if: "changesInclude('sickchill.json', '.cirrus/install_script.sh')" 564 | matrix: 565 | - freebsd_instance: 566 | image_family: freebsd-12-2 567 | env: 568 | PLUGIN_FILE: "sickchill.json" 569 | 570 | sonarr_task: 571 | <<: *INSTALL_PLUGIN 572 | only_if: "changesInclude('sonarr.json', '.cirrus/install_script.sh')" 573 | matrix: 574 | - freebsd_instance: 575 | image_family: freebsd-12-2 576 | env: 577 | PLUGIN_FILE: "sonarr.json" 578 | 579 | tautulli_task: 580 | <<: *INSTALL_PLUGIN 581 | only_if: "changesInclude('tautulli.json', '.cirrus/install_script.sh')" 582 | matrix: 583 | - freebsd_instance: 584 | image_family: freebsd-12-2 585 | env: 586 | PLUGIN_FILE: "tautulli.json" 587 | 588 | torr_server_task: 589 | <<: *INSTALL_PLUGIN 590 | only_if: "changesInclude('torr-server.json', '.cirrus/install_script.sh')" 591 | matrix: 592 | - freebsd_instance: 593 | image_family: freebsd-12-2 594 | env: 595 | PLUGIN_FILE: "torr-server.json" 596 | 597 | transmission_task: 598 | <<: *INSTALL_PLUGIN 599 | only_if: "changesInclude('transmission.json', '.cirrus/install_script.sh')" 600 | matrix: 601 | - freebsd_instance: 602 | image_family: freebsd-12-2 603 | env: 604 | PLUGIN_FILE: "transmission.json" 605 | 606 | unificontroller_task: 607 | <<: *INSTALL_PLUGIN 608 | only_if: "changesInclude('unificontroller.json', '.cirrus/install_script.sh')" 609 | matrix: 610 | - freebsd_instance: 611 | image_family: freebsd-12-2 612 | env: 613 | PLUGIN_FILE: "unificontroller.json" 614 | 615 | urbackup_task: 616 | <<: *INSTALL_PLUGIN 617 | only_if: "changesInclude('urbackup.json', '.cirrus/install_script.sh')" 618 | matrix: 619 | - freebsd_instance: 620 | image_family: freebsd-12-2 621 | env: 622 | PLUGIN_FILE: "urbackup.json" 623 | 624 | vault_task: 625 | <<: *INSTALL_PLUGIN 626 | only_if: "changesInclude('vault.json', '.cirrus/install_script.sh')" 627 | matrix: 628 | - freebsd_instance: 629 | image_family: freebsd-12-2 630 | env: 631 | PLUGIN_FILE: "vault.json" 632 | 633 | weechat_task: 634 | <<: *INSTALL_PLUGIN 635 | only_if: "changesInclude('weechat.json', '.cirrus/install_script.sh')" 636 | matrix: 637 | - freebsd_instance: 638 | image_family: freebsd-12-2 639 | env: 640 | PLUGIN_FILE: "weechat.json" 641 | 642 | zabbixserver_task: 643 | <<: *INSTALL_PLUGIN 644 | only_if: "changesInclude('zabbixserver.json', '.cirrus/install_script.sh')" 645 | matrix: 646 | - freebsd_instance: 647 | image_family: freebsd-12-2 648 | env: 649 | PLUGIN_FILE: "zabbixserver.json" 650 | 651 | zoneminder_task: 652 | <<: *INSTALL_PLUGIN 653 | only_if: "changesInclude('zoneminder.json', '.cirrus/install_script.sh')" 654 | matrix: 655 | - freebsd_instance: 656 | image_family: freebsd-12-2 657 | env: 658 | PLUGIN_FILE: "zoneminder.json" 659 | 660 | zrepl_task: 661 | <<: *INSTALL_PLUGIN 662 | only_if: "changesInclude('zrepl.json', '.cirrus/install_script.sh')" 663 | matrix: 664 | - freebsd_instance: 665 | image_family: freebsd-12-2 666 | env: 667 | PLUGIN_FILE: "zrepl.json" 668 | SKIP_SERVICE_CHECK: "true" 669 | -------------------------------------------------------------------------------- /.cirrus/install_script.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | # global variables 5 | plugin_dir="/usr/local/plugin" 6 | exp_ui_url="" 7 | 8 | pkg_dir=/usr/local/test 9 | repos_dir="${pkg_dir}/repos" 10 | fingerprints_dir="${pkg_dir}/fingerprints" 11 | services_before=$(service -e) 12 | 13 | print_info() 14 | { 15 | printf "\033[0;36m$(date "+[%Y-%m-%d %H:%M:%S]") %s\033[0m\n" "${1}" 16 | } 17 | 18 | print_success() 19 | { 20 | printf "\033[0;32m$(date "+[%Y-%m-%d %H:%M:%S]") %s\033[0m\n" "${1}" 21 | } 22 | 23 | print_error() 24 | { 25 | printf "\033[0;31m$(date "+[%Y-%m-%d %H:%M:%S]") %s\033[0m\n" "${1}" 26 | } 27 | 28 | install_requirements() 29 | { 30 | pkg install --yes jq 31 | pkg install --yes git-lite || pkg install --yes git 32 | } 33 | 34 | clone_plugin_repo() 35 | { 36 | plugin_repo=$(jq -r '.artifact' "${PLUGIN_FILE}") 37 | 38 | release_branch="$(freebsd-version | cut -d '-' -f1)-RELEASE" 39 | 40 | print_info "Trying to clone ${plugin_repo}, to ${plugin_dir}, using branch: ${release_branch} (with fallback to 'master')" 41 | git clone -b "${release_branch}" "${plugin_repo}" ${plugin_dir} || git clone -b master "${plugin_repo}" ${plugin_dir} 42 | } 43 | 44 | get_admin_ui() 45 | { 46 | ip_address=$(ifconfig | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '([0-9]*\.){3}[0-9]*' | grep -v '127.0.0.1') 47 | 48 | if [ "${OVERRIDE_ADMIN_UI}" != "" ] 49 | then 50 | print_info "OVERRIDE_ADMIN_UI variable set, will use it for admin portal check: ${OVERRIDE_ADMIN_UI}" 51 | exp_ui_url=$(echo "${OVERRIDE_ADMIN_UI}" | sed "s//${ip_address}/") 52 | return 53 | fi 54 | 55 | if ! [ -f ${plugin_dir}/ui.json ] 56 | then 57 | print_info "No ui.json found in repo, will ignore admin portal check" 58 | return 59 | fi 60 | 61 | admin_portal=$(jq -r '.adminportal' ${plugin_dir}/ui.json | sed "s/%%IP%%/${ip_address}/") 62 | place_holders=$(jq -r '.adminportal_placeholders' ${plugin_dir}/ui.json) 63 | 64 | if [ "${place_holders}" != "null" ] 65 | then 66 | print_info "Found admin portal placeholders: ${place_holders}" 67 | ph_keys=$(echo "${place_holders}" | jq -r 'keys[]') 68 | 69 | for ph in ${ph_keys} 70 | do 71 | place_holder_value=$(jq -r '."adminportal_placeholders"."'"${ph}"'"' ${plugin_dir}/ui.json) 72 | resolved_default_value=$(jq -r '.options."'"${place_holder_value}"'".default' ${plugin_dir}/settings.json) 73 | 74 | print_info "Replacing ${ph} with ${resolved_default_value} in admin_portal UI ${admin_portal}" 75 | admin_portal=$(echo "${admin_portal}" | sed "s/${ph}/${resolved_default_value}/") 76 | done 77 | fi 78 | 79 | if ! echo "${admin_portal}" | grep -q "http\|localhost" 80 | then 81 | print_info "Admin Portal does not contain localhost or http. Will skip waiting for admin_portal" 82 | return 83 | fi 84 | 85 | exp_ui_url=${admin_portal} 86 | } 87 | 88 | __create_package_config() 89 | { 90 | packagesite=$(jq '.packagesite' "${PLUGIN_FILE}") 91 | 92 | print_info "Creating main repos dir: ${repos_dir}" 93 | mkdir -p $repos_dir 94 | 95 | pkg_conf_path="${repos_dir}/test.conf" 96 | { 97 | echo "iocage-plugins: {" 98 | echo "url: ${packagesite}," 99 | echo "signature_type: \"fingerprints\"," 100 | echo "fingerprints \"${fingerprints_dir}\"," 101 | echo "enabled: true" 102 | echo "}" 103 | } > ${pkg_conf_path} 104 | 105 | print_info "Created test pkg config file:" 106 | cat ${pkg_conf_path} 107 | } 108 | 109 | __create_trusted_fingerprints() 110 | { 111 | fingerprints=$(jq -r '.fingerprints | keys[]' "${PLUGIN_FILE}") 112 | 113 | trusted_fingerprints="$fingerprints_dir/trusted" 114 | mkdir -p "${trusted_fingerprints}" 115 | 116 | for repo_name in ${fingerprints} 117 | do 118 | repo_fingerprints=$(jq -rc '."fingerprints"."'"${repo_name}"'"[]' "${PLUGIN_FILE}") 119 | 120 | repo_count=1 121 | echo "${repo_fingerprints}" | while IFS='' read -r f 122 | do 123 | print_info "Creating fingerprint file for repo: ${f}" 124 | 125 | function=$(echo "${f}" | jq -r '.function') 126 | fingerprint=$(echo "${f}" | jq -r '.fingerprint') 127 | file_path=${trusted_fingerprints}/${repo_name}_${repo_count} 128 | 129 | print_info "Creating new fingerprint file: ${file_path}" 130 | 131 | echo "function: ${function}" > "${file_path}" 132 | echo "fingerprint: ${fingerprint}" >> "${file_path}" 133 | 134 | repo_count=$((repo_count + 1)) 135 | done 136 | done 137 | } 138 | 139 | create_plugin_pkg_repo() 140 | { 141 | __create_package_config 142 | 143 | __create_trusted_fingerprints 144 | } 145 | 146 | load_kmods() 147 | { 148 | kmods=$(jq -r '.kmods' "${PLUGIN_FILE}") 149 | if [ "${kmods}" = "null" ] 150 | then 151 | print_info "No kmods found for plugin" 152 | return 153 | fi 154 | 155 | print_info "Plugin kmods set" 156 | echo "${kmods}" | jq -r '.[]' | while IFS='' read -r kmod 157 | do 158 | print_info "Loading kmod: ${kmod}" 159 | kldload -nv "${kmod}" 160 | done 161 | } 162 | 163 | install_plugin_packages() 164 | { 165 | pkgs=$(jq -r '.pkgs | join(" ")' "${PLUGIN_FILE}") 166 | name=$(jq '.name' "${PLUGIN_FILE}") 167 | 168 | print_info "Clean up packages before plugin installation" 169 | pkg delete --all --yes 170 | pkg autoremove --yes 171 | pkg clean --yes 172 | 173 | if echo "${packagesite}" | grep -q "https" 174 | then 175 | pkg install --yes ca_root_nss 176 | fi 177 | 178 | print_info "Start using plugin pkg repos" 179 | export REPOS_DIR=${repos_dir} 180 | 181 | print_info "Fetching ${name} pkgs: ${pkgs}" 182 | pkg fetch --dependencies --yes ${pkgs} 183 | 184 | pkg delete --yes ca_root_nss || true 185 | 186 | print_info "Installing ${name} pkgs: ${pkgs}" 187 | pkg install --no-repo-update --yes ${pkgs} 188 | } 189 | 190 | copy_overlay_folder() 191 | { 192 | if ! [ -d "${plugin_dir}/overlay" ] 193 | then 194 | print_info "No overlay folder found" 195 | return 196 | fi 197 | 198 | print_info "Found overlay folder. Will copy '${plugin_dir}/overlay' into root path '/'" 199 | cp -r ${plugin_dir}/overlay/ / 200 | } 201 | 202 | run_post_install() 203 | { 204 | print_info "Executing post_install.sh script" 205 | ${plugin_dir}/post_install.sh 206 | print_success "Post install complete" 207 | } 208 | 209 | post_install_cleanup() 210 | { 211 | print_info "Disable plugins pkg repos" 212 | unset REPOS_DIR 213 | } 214 | 215 | wait_for_admin_portal() 216 | { 217 | if [ "${exp_ui_url}" = "" ] 218 | then 219 | print_info "No admin portal, skipping admin portal check" 220 | return 221 | fi 222 | 223 | if [ "${SKIP_UI_CHECK}" = "true" ] 224 | then 225 | print_info "SKIP_UI_CHECK variable set to \"true\", skipping admin portal check" 226 | return 227 | fi 228 | 229 | pkg install --yes curl 230 | 231 | curl_follow_redirects="--location" 232 | if [ "${FOLLOW_REDIRECTS}" = "false" ] 233 | then 234 | curl_follow_redirects="" 235 | fi 236 | 237 | curl_user="" 238 | if [ "${ADMIN_UI_USER}" != "" ] 239 | then 240 | curl_user="--user ${ADMIN_UI_USER}" 241 | fi 242 | 243 | curl_retires=8 244 | curl_retries_sleep=2 245 | curl_timeout=8 246 | 247 | print_info "Trying to curl Admin Portal at: ${exp_ui_url}, with ${curl_retires} retries, sleeping ${curl_retries_sleep} seconds" 248 | 249 | if curl \ 250 | --fail \ 251 | --verbose \ 252 | --insecure \ 253 | ${curl_follow_redirects} \ 254 | --connect-timeout ${curl_timeout} \ 255 | --retry ${curl_retires} \ 256 | --retry-delay ${curl_retries_sleep} \ 257 | --retry-all-errors \ 258 | --output /dev/null \ 259 | --silent \ 260 | ${curl_user} \ 261 | ${exp_ui_url} 262 | then 263 | print_success "Admin Portal reachable" 264 | else 265 | print_error "Could not fetch Admin Portal" 266 | exit 1 267 | fi 268 | } 269 | 270 | check_services_status() 271 | { 272 | if [ "$SKIP_SERVICE_CHECK" = "true" ] 273 | then 274 | print_info "SKIP_SERVICE_CHECK variable set to \"true\", skipping service status check" 275 | return 276 | fi 277 | 278 | services_now=$(service -e) 279 | 280 | print_info "Checking if post install services are running" 281 | echo "${services_now}" | while IFS=' ' read -r service_path 282 | do 283 | if ! echo "${services_before}" | grep -q "${service_path}" 284 | then 285 | __wait_for_service "${service_path}" 286 | fi 287 | done 288 | } 289 | 290 | __wait_for_service() 291 | { 292 | service_path=${1} 293 | max_retries=5 294 | sleep=2 295 | 296 | print_info "Starting to wait for service: ${service_path} with ${max_retries} retries and ${sleep} s. sleep" 297 | 298 | try=1 299 | while [ ${try} -le ${max_retries} ] 300 | do 301 | print_info "Service status check (${try}/${max_retries})" 302 | "${service_path}" status && break 303 | 304 | try=$((try+1)) 305 | sleep ${sleep} 306 | done 307 | 308 | if [ ${try} -gt ${max_retries} ] 309 | then 310 | print_error "Service ${service_path} not started" 311 | exit 1 312 | fi 313 | } 314 | 315 | check_update_scripts() 316 | { 317 | if [ -f ${plugin_dir}/pre_update.sh ] && ! [ -x ${plugin_dir}/pre_update.sh ] 318 | then 319 | print_error "pre_update.sh script not executable" 320 | exit 1 321 | fi 322 | 323 | if [ -f ${plugin_dir}/post_update.sh ] && ! [ -x ${plugin_dir}/post_update.sh ] 324 | then 325 | print_error "post_update.sh script not executable" 326 | exit 1 327 | fi 328 | } 329 | 330 | cleanup() 331 | { 332 | service ipfw stop > /dev/null || true # stop possible ipfw blocking out cirrus agent communication 333 | } 334 | 335 | install_requirements 336 | 337 | clone_plugin_repo 338 | 339 | get_admin_ui 340 | 341 | create_plugin_pkg_repo 342 | 343 | load_kmods 344 | 345 | install_plugin_packages 346 | 347 | copy_overlay_folder 348 | 349 | run_post_install 350 | 351 | post_install_cleanup 352 | 353 | check_services_status 354 | 355 | wait_for_admin_portal 356 | 357 | check_update_scripts 358 | 359 | cleanup 360 | -------------------------------------------------------------------------------- /.github/workflows/validateindex.yml: -------------------------------------------------------------------------------- 1 | name: Validate JSONs 2 | 3 | on: [pull_request] 4 | 5 | jobs: 6 | verify-json-validation: 7 | runs-on: ubuntu-latest 8 | steps: 9 | - uses: actions/checkout@v1 10 | 11 | - name: Set up Python 3.9 12 | uses: actions/setup-python@v2 13 | with: 14 | python-version: 3.9 15 | 16 | - name: Install dependencies 17 | run: | 18 | python -m pip install --upgrade pip 19 | pip install jsonschema 20 | 21 | - name: Validate INDEX JSON 22 | run: jsonschema -i ./INDEX ./index.schema 23 | 24 | - name: Validate plugins JSONs 25 | run: | 26 | wget https://raw.githubusercontent.com/iocage/iocage/master/iocage_lib/plugin_manifest.json -O plugin_manifest.schema 27 | 28 | res=0 29 | for p in *.json 30 | do 31 | if ! jsonschema -i "$p" plugin_manifest.schema 32 | then 33 | echo "Plugin $p" failed 34 | ((res=res+1)) 35 | fi 36 | done 37 | 38 | exit $res 39 | 40 | 41 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /.project 2 | -------------------------------------------------------------------------------- /INDEX: -------------------------------------------------------------------------------- 1 | { 2 | "adguardhome": { 3 | "MANIFEST": "adguardhome.json", 4 | "name": "AdGuardHome", 5 | "icon": "https://icons.freenas.org/community-icons/adguardhome.png", 6 | "description": "AdGuard Home is a network-wide software for blocking ads & tracking.", 7 | "official": false, 8 | "primary_pkg": "adguardhome", 9 | "category": "networking", 10 | "homepage": "https://github.com/AdguardTeam/AdGuardHome" 11 | }, 12 | "archiwarep5": { 13 | "MANIFEST": "archiwarep5.json", 14 | "name": "Archiware P5", 15 | "icon": "https://icons.freenas.org/community-icons/archiwarep5.png", 16 | "description": "Archiwares P5 Software Suite is a platform-agnostic data management software for archiving, backup and cloning. The browser-based interface comprises four modules, which use different methods to secure and restore data: P5 Synchronize: Clones data to create a failover solution for time critical setups, P5 Backup: Produces security copies of files for a quick restore, Backup2Go: Backs up desktop and laptop data to disk and P5 Archive: Migrates data offline for long-term storage.", 17 | "official": false, 18 | "primary_pkg": "archiwarep5", 19 | "category": "backup", 20 | "homepage": "http://www.archiware.com/" 21 | }, 22 | "backuppc": { 23 | "MANIFEST": "backuppc.json", 24 | "name": "BackupPC", 25 | "icon": "https://icons.freenas.org/community-icons/backuppc.png", 26 | "description": "Enterprise-grade system for backing up Linux, Windows, and MacOSX computers to a server.", 27 | "official": false, 28 | "primary_pkg": "backuppc4", 29 | "category": "security", 30 | "homepage": "http://backuppc.sourceforge.net/" 31 | }, 32 | "bazarr": { 33 | "MANIFEST": "bazarr.json", 34 | "description": "Bazarr is a companion application to Sonarr and Radarr that manages and downloads subtitles.", 35 | "icon": "https://icons.freenas.org/community-icons/bazarr.png", 36 | "name": "Bazarr", 37 | "official": false, 38 | "primary_pkg": null 39 | }, 40 | "bind": { 41 | "MANIFEST": "bind.json", 42 | "description": "BIND DNS server", 43 | "icon": "https://icons.freenas.org/community-icons/bind.png", 44 | "name": "Bind DNS", 45 | "official": false, 46 | "primary_pkg": "bind916" 47 | }, 48 | "calibre-web": { 49 | "MANIFEST": "calibre-web.json", 50 | "description": "Web app for browsing, reading and downloading eBooks stored in a Calibre database", 51 | "icon": "https://icons.freenas.org/community-icons/calibre-web.png", 52 | "name": "Calibre-Web", 53 | "official": false, 54 | "primary_pkg": null 55 | }, 56 | "channels-dvr": { 57 | "MANIFEST": "channels-dvr.json", 58 | "description": "DVR server for the Channels apps. Makes digital recordings of broadcast television using HDHomeRun network tuners. (Requires Subscription)", 59 | "icon": "https://icons.freenas.org/community-icons/channels-dvr.png", 60 | "name": "Channels DVR", 61 | "official": false, 62 | "primary_pkg": "" 63 | }, 64 | "chia": { 65 | "MANIFEST": "chia.json", 66 | "description": "A new blockchain and smart transaction platform that is easier to use, more efficient, and secure.", 67 | "icon": "https://icons.freenas.org/community-icons/chia.png", 68 | "name": "Chia", 69 | "official": false, 70 | "primary_pkg": "" 71 | }, 72 | "clamav": { 73 | "MANIFEST": "clamav.json", 74 | "name": "ClamAV", 75 | "icon": "https://icons.freenas.org/community-icons/clamav.png", 76 | "description": "Open source antivirus engine for detecting trojans, viruses, malware, and other malicious threats.", 77 | "official": false, 78 | "primary_pkg": "clamav", 79 | "category": "security", 80 | "homepage": "https://www.clamav.net/" 81 | }, 82 | "deluge-pip": { 83 | "MANIFEST": "deluge-pip.json", 84 | "description": "Deluge is Python-based Bittorent client.", 85 | "icon": "https://icons.freenas.org/community-icons/deluge.png", 86 | "name": "Deluge", 87 | "official": false, 88 | "primary_pkg": "" 89 | }, 90 | "dnsmasq": { 91 | "MANIFEST": "dnsmasq.json", 92 | "description": "Network infrastructure management for small networks: DNS, DHCP, router advertisement, and network boot.", 93 | "icon": "https://icons.freenas.org/community-icons/dnsmasq.svg", 94 | "name": "Dnsmasq", 95 | "official": false, 96 | "primary_pkg": "dnsmasq" 97 | }, 98 | "drupal8": { 99 | "MANIFEST": "drupal8.json", 100 | "description": "Drupal is an open source platform for building amazing digital experiences.", 101 | "icon": "https://icons.freenas.org/community-icons/drupal.png", 102 | "name": "Drupal8", 103 | "official": false, 104 | "primary_pkg": "drupal8" 105 | }, 106 | "duplicati": { 107 | "MANIFEST": "duplicati.json", 108 | "name": "Duplicati", 109 | "description": "Duplicati 2.0 Store securely encrypted backups on cloud storage services!", 110 | "official": false, 111 | "icon": "https://icons.freenas.org/community-icons/duplicati.png", 112 | "primary_pkg": "", 113 | "category": "backup" 114 | }, 115 | "emby": { 116 | "MANIFEST": "emby.json", 117 | "name": "Emby Server - Beta", 118 | "icon": "https://icons.freenas.org/community-icons/emby.png", 119 | "description": "Beta branch of Emby, the home media server to organize, play, and stream audio and video to a variety of devices!", 120 | "official": false, 121 | "primary_pkg": "emby-server-devel", 122 | "category": "entertainment", 123 | "homepage": "https://emby.media/" 124 | }, 125 | "emby-server-stable": { 126 | "MANIFEST": "emby-server-stable.json", 127 | "name": "Emby Server - Stable", 128 | "icon": "https://icons.freenas.org/community-icons/emby-server-png-128.png", 129 | "primary_pkg": "emby-server", 130 | "description": "Stable branch of Emby, which brings together your personal videos, music, photos, and live television!", 131 | "official": false, 132 | "category": "entertainment", 133 | "homepage": "https://emby.media/" 134 | }, 135 | "famp": { 136 | "MANIFEST": "famp.json", 137 | "description": "FAMP (FreeBSD, Apache, MySQL and PHP) web server", 138 | "icon": "https://icons.freenas.org/community-icons/famp.png", 139 | "name": "FAMP", 140 | "official": false, 141 | "primary_pkg": null 142 | }, 143 | "FlareSolverr": { 144 | "MANIFEST": "flaresolverr.json", 145 | "description": "FlareSolverr is a proxy server to bypass Cloudflare and DDoS-GUARD protection", 146 | "icon": "https://icons.freenas.org/community-icons/flaresolverr.png", 147 | "name": "FlareSolverr", 148 | "official": false, 149 | "primary_pkg": null 150 | }, 151 | "gitea": { 152 | "MANIFEST": "gitea.json", 153 | "name": "Gitea", 154 | "icon": "https://icons.freenas.org/community-icons/gitea.png", 155 | "description": "Gitea is a community managed lightweight code hosting solution written in Go.", 156 | "official": false, 157 | "primary_pkg": "gitea" 158 | }, 159 | "gitlab": { 160 | "MANIFEST": "gitlab.json", 161 | "name": "GitLab", 162 | "icon": "https://icons.freenas.org/community-icons/gitlab.png", 163 | "description": "Gitlab CE - Git and CI platform to manage development projects", 164 | "official": false, 165 | "primary_pkg": "gitlab-ce" 166 | }, 167 | "grafana": { 168 | "MANIFEST": "grafana.json", 169 | "description": "Grafana allows you to query, visualize, alert on and understand your metrics no matter where they are stored. Create, explore, and share dashboards with your team and foster a data driven culture.", 170 | "icon": "https://icons.freenas.org/community-icons/grafana.png", 171 | "name": "Grafana (with InfluxDB)", 172 | "official": false, 173 | "primary_pkg": "grafana8" 174 | }, 175 | "graylog": { 176 | "MANIFEST": "graylog.json", 177 | "description": "Seamless log data collection, faster analysis, and the answers you need when you need them.", 178 | "icon": "https://icons.freenas.org/community-icons/graylog.png", 179 | "name": "Graylog", 180 | "official": false, 181 | "primary_pkg": "graylog", 182 | "homepage": "https://www.graylog.org/" 183 | }, 184 | "guacamole": { 185 | "MANIFEST": "guacamole.json", 186 | "description": "Apache Guacamole is a clientless remote desktop gateway. It supports standard protocols like VNC, RDP, and SSH.", 187 | "icon": "https://icons.freenas.org/community-icons/guacamole.png", 188 | "name": "Guacamole", 189 | "official": false, 190 | "primary_pkg": "guacamole-client", 191 | "homepage": "https://guacamole.apache.org/" 192 | }, 193 | "heimdall-dashboard": { 194 | "MANIFEST": "heimdall-dashboard.json", 195 | "description": "Heimdall Application Dashboard is an elegant solution to organize all your web applications and links onto a single page website.", 196 | "icon": "https://icons.freenas.org/community-icons/heimdall-dashboard.png", 197 | "name": "Heimdall", 198 | "official": false, 199 | "primary_pkg": null 200 | }, 201 | "homebridge": { 202 | "MANIFEST": "homebridge.json", 203 | "description": "Lightweight iOS HomeKit API emulator. Enables adding unsupported devices to HomeKit.", 204 | "icon": "https://icons.freenas.org/community-icons/homebridge.png", 205 | "name": "Homebridge", 206 | "official": false, 207 | "primary_pkg": null 208 | }, 209 | "hoobs": { 210 | "MANIFEST": "hoobs.json", 211 | "description": "HOOBS a Homebridge stack with a interface that simplifies configuration and installing plugins. This adds a process wrapper for Homebridge. It also adds an API that can be used as an endpoint for an application.", 212 | "icon": "https://icons.freenas.org/community-icons/hoobs.png", 213 | "name": "HOOBS", 214 | "primary_pkg": null, 215 | "official": false 216 | }, 217 | "i2p": { 218 | "MANIFEST": "i2p.json", 219 | "name": "I2P", 220 | "icon": "https://icons.freenas.org/community-icons/i2p.png", 221 | "description": "The Invisible Internet Project (I2P) is an anonymous network layer (implemented as a Mix Network) that allows for censorship-resistant, peer to peer communication.", 222 | "official": false, 223 | "primary_pkg": "i2p" 224 | }, 225 | "irssi": { 226 | "MANIFEST": "irssi.json", 227 | "description": "Modular IRC client using a CLI interface.", 228 | "icon": "https://icons.freenas.org/community-icons/irssi.png", 229 | "name": "irssi", 230 | "official": false, 231 | "primary_pkg": "irssi" 232 | }, 233 | "jackett": { 234 | "MANIFEST": "jackett.json", 235 | "description": "API Support for your favorite torrent trackers", 236 | "icon": "https://icons.freenas.org/community-icons/jackett.png", 237 | "name": "Jackett", 238 | "official": false, 239 | "primary_pkg": "jackett" 240 | }, 241 | "jdownloader": { 242 | "MANIFEST": "jdownloader.json", 243 | "description": "JDownloader is a free, open-source download management tool with a huge community of developers that makes downloading as easy and fast as it should be. Users can start, stop or pause downloads, set bandwith limitations, auto-extract archives and much more. It's an easy-to-extend framework that can save hours of your valuable time every day!", 244 | "icon": "https://icons.freenas.org/community-icons/jdownloader.png", 245 | "name": "JDownloader", 246 | "official": false, 247 | "primary_pkg": null 248 | }, 249 | "jellyfin": { 250 | "MANIFEST": "jellyfin.json", 251 | "description": "Jellyfin is a Free Software Media System that puts you in control of managing and streaming your media. It is an alternative to the proprietary Emby and Plex, to provide media from a dedicated server to end-user devices via multiple apps.", 252 | "icon": "https://icons.freenas.org/community-icons/jellyfin.png", 253 | "name": "Jellyfin", 254 | "official": false, 255 | "primary_pkg": null 256 | }, 257 | "jenkins": { 258 | "MANIFEST": "jenkins.json", 259 | "name": "Jenkins", 260 | "icon": "https://icons.freenas.org/community-icons/jenkins.png", 261 | "description": "Open source build automation software.", 262 | "official": false, 263 | "primary_pkg": "jenkins", 264 | "category": "devops", 265 | "homepage": "https://jenkins.io/" 266 | }, 267 | "jenkins-lts": { 268 | "MANIFEST": "jenkins-lts.json", 269 | "name": "Jenkins (LTS)", 270 | "icon": "https://icons.freenas.org/community-icons/jenkins.png", 271 | "description": "Open source build automation software. (Long Term Support Version)", 272 | "official": false, 273 | "primary_pkg": "jenkins-lts", 274 | "category": "devops", 275 | "homepage": "https://jenkins.io/" 276 | }, 277 | "lidarr": { 278 | "MANIFEST": "lidarr.json", 279 | "description": "Fork of Sonarr. Automatically download music in the style of Couchpotato.", 280 | "icon": "https://raw.githubusercontent.com/lidarr/Lidarr/develop/Logo/128.png", 281 | "name": "Lidarr", 282 | "official": false, 283 | "primary_pkg": "lidarr" 284 | }, 285 | "logitechmediaserver": { 286 | "MANIFEST": "logitechmediaserver.json", 287 | "description": "Logitech Media Server (formerly SlimServer, SqueezeCenter and Squeezebox Server) is a streaming audio server supported by Logitech (formerly Slim Devices).", 288 | "icon": "https://github.com/ix-plugin-hub/iocage-plugin-index/raw/master/icons/logitechmediaserver.png", 289 | "name": "Logitech Media Server", 290 | "official": false, 291 | "primary_pkg": null, 292 | "category": "entertainment", 293 | "homepage": "https://forums.slimdevices.com/" 294 | }, 295 | "madsonic": { 296 | "MANIFEST": "madsonic.json", 297 | "description": "Open source media streaming software and music player.", 298 | "icon": "https://icons.freenas.org/community-icons/madsonic.png", 299 | "name": "MadSonic", 300 | "official": false, 301 | "primary_pkg": null 302 | }, 303 | "mariadb": { 304 | "MANIFEST": "mariadb.json", 305 | "name": "MariaDB Server", 306 | "description": "The open source relational database. No additional services included - KISS!", 307 | "icon": "https://icons.freenas.org/community-icons/mariadb.png", 308 | "primary_pkg": "mariadb105-server", 309 | "official": false, 310 | "category": "server", 311 | "homepage": "https://mariadb.org/" 312 | }, 313 | "monica": { 314 | "MANIFEST": "monica.json", 315 | "name": "Monica", 316 | "icon": "https://icons.freenas.org/community-icons/monica.png", 317 | "description": "Personal CRM. Remember everything about your friends, family and business relationships.", 318 | "official": false, 319 | "primary_pkg": null, 320 | "homepage": "https://www.monicahq.com" 321 | }, 322 | "motioneye": { 323 | "MANIFEST": "motioneye.json", 324 | "description": "motionEye is a web frontend for the motion daemon, written in Python.", 325 | "icon": "https://icons.freenas.org/community-icons/motioneye.png", 326 | "name": "MotionEye", 327 | "official": false, 328 | "primary_pkg": null 329 | }, 330 | "movienight": { 331 | "MANIFEST": "movienight.json", 332 | "description": "Single-instance streaming server with chat.", 333 | "icon": "https://icons.freenas.org/community-icons/movienight.png", 334 | "name": "Movie Night", 335 | "official": false, 336 | "primary_pkg": null, 337 | "category": "entertainment", 338 | "homepage": "https://github.com/zorchenhimer/MovieNight" 339 | }, 340 | "n8n": { 341 | "MANIFEST": "n8n.json", 342 | "description": "Extendable workflow automation", 343 | "icon": "https://icons.freenas.org/community-icons/n8n.png", 344 | "name": "n8n", 345 | "official": false, 346 | "primary_pkg": null, 347 | "category": "entertainment", 348 | "homepage": "https://n8n.io/" 349 | }, 350 | "netdata": { 351 | "MANIFEST": "netdata.json", 352 | "description": "Monitor everything in real-time", 353 | "icon": "https://icons.freenas.org/community-icons/netdata.png", 354 | "primary_pkg": "netdata", 355 | "maintainer": "Kris Moore ", 356 | "name": "Netdata", 357 | "official": false 358 | }, 359 | "nexus-oss": { 360 | "MANIFEST": "nexus-oss.json", 361 | "name": "NexusOSS", 362 | "icon": "https://icons.freenas.org/community-icons/nexus-oss.png", 363 | "description": "Nexus OSS Repository Manager", 364 | "maintainer": "Filippe Spolti ", 365 | "official": false, 366 | "primary_pkg": null 367 | }, 368 | "nxfilter": { 369 | "MANIFEST": "nxfilter.json", 370 | "description": "NxFilter is a light-weight DNS filter.", 371 | "icon": "https://icons.freenas.org/community-icons/nxfilter.png", 372 | "primary_pkg": null, 373 | "name": "NxFilter", 374 | "official": false, 375 | "category": "networking", 376 | "homepage": "https://nxfilter.org/" 377 | }, 378 | "nzbget": { 379 | "MANIFEST": "nzbget.json", 380 | "name": "NZBGet", 381 | "primary_pkg": null, 382 | "description": "The most efficient usenet downloader.", 383 | "icon": "https://icons.freenas.org/community-icons/nzbget.png", 384 | "official": false 385 | }, 386 | "openvpn": { 387 | "MANIFEST": "openvpn.json", 388 | "description": "Virtual private network software to create secure point-to-point connections.", 389 | "icon": "https://icons.freenas.org/community-icons/openvpn.png", 390 | "name": "OpenVPN Server", 391 | "official": false, 392 | "primary_pkg": "openvpn" 393 | }, 394 | "openspeedtest-server": { 395 | "MANIFEST": "openspeedtest-server.json", 396 | "description": "HTML5 Network Speed Test Apllication by OpenSpeedTest.", 397 | "icon": "https://icons.freenas.org/community-icons/openspeedtest.png", 398 | "name": "OpenSpeedTest", 399 | "official": false, 400 | "primary_pkg": null 401 | }, 402 | "paperless-ngx": { 403 | "MANIFEST": "paperless-ngx.json", 404 | "description": "Paperless-ngx is a document management system that transforms your physical documents into a searchable online archive.", 405 | "icon": "https://icons.freenas.org/community-icons/paperless-ngx.png", 406 | "name": "Paperless-ngx", 407 | "official": false, 408 | "primary_pkg": null, 409 | "homepage": "https://paperless-ngx.readthedocs.io/en/latest/index.html" 410 | }, 411 | "photoprism": { 412 | "MANIFEST": "photoprism.json", 413 | "description": "PhotoPrism® is an AI-Powered Photos App for the Decentralized Web. It makes use of the latest technologies to tag and find pictures automatically without getting in your way.", 414 | "icon": "https://icons.freenas.org/community-icons/photoprism.png", 415 | "name": "photoprism", 416 | "official": false, 417 | "primary_pkg": null 418 | }, 419 | "photoview": { 420 | "MANIFEST": "photoview.json", 421 | "description": "Photoview is a simple and user-friendly photo gallery that's made for photographers and aims to provide an easy and fast way to navigate directories, with thousands of high-resolution photos.", 422 | "icon": "https://icons.freenas.org/community-icons/photoview.png", 423 | "name": "photoview", 424 | "official": false, 425 | "primary_pkg": null 426 | }, 427 | "piwigo": { 428 | "MANIFEST": "piwigo.json", 429 | "description": "Piwigo is open source photo gallery software for the web. Designed for organisations, teams and individuals.", 430 | "icon": "https://icons.freenas.org/community-icons/piwigo.png", 431 | "name": "Piwigo Gallery", 432 | "official": false, 433 | "primary_pkg": null 434 | }, 435 | "privatebin": { 436 | "MANIFEST": "privatebin.json", 437 | "description": "PrivateBin is a minimalist, open source online pastebin where the server has zero knowledge of pasted data.", 438 | "icon": "https://icons.freenas.org/community-icons/privatebin.png", 439 | "name": "PrivateBin", 440 | "official": false, 441 | "primary_pkg": "privatebin" 442 | }, 443 | "prowlarr": { 444 | "MANIFEST": "prowlarr.json", 445 | "description": "Indexer for torrent and usenet trackers.", 446 | "icon": "https://icons.freenas.org/community-icons/prowlarr.png", 447 | "name": "Prowlarr", 448 | "official": false, 449 | "primary_pkg": "prowlarr" 450 | }, 451 | "qbittorrent": { 452 | "MANIFEST": "qbittorrent.json", 453 | "name": "qbittorrent", 454 | "icon": "https://icons.freenas.org/community-icons/qbittorrent.png", 455 | "description": "Open source Bittorent client written in C++ and QT.", 456 | "official": false, 457 | "primary_pkg": "qbittorrent-nox", 458 | "category": "content", 459 | "homepage": "http://qbittorrent.org/" 460 | }, 461 | "quasselcore": { 462 | "MANIFEST": "quasselcore.json", 463 | "description": "Headless IRC Client that supports 24/7 connectivity. Quassel Client can be attached.", 464 | "icon": "https://icons.freenas.org/community-icons/quasselcore.png", 465 | "name": "Quasselcore", 466 | "official": false, 467 | "primary_pkg": "quassel-core" 468 | }, 469 | "rabbitmq": { 470 | "MANIFEST": "rabbitmq.json", 471 | "name": "rabbitmq", 472 | "icon": "https://icons.freenas.org/community-icons/rabbitmq.png", 473 | "description": "RabbitMQ is a popular open source message broker.", 474 | "official": false, 475 | "primary_pkg": "rabbitmq", 476 | "category": "content", 477 | "homepage": "https://rabbitmq.com/" 478 | }, 479 | "radarr": { 480 | "MANIFEST": "radarr.json", 481 | "name": "radarr", 482 | "icon": "https://icons.freenas.org/community-icons/radarr.png", 483 | "description": "Fork of Sonarr. Automatically download movies in the style of Couchpotato.", 484 | "official": false, 485 | "primary_pkg": "radarr", 486 | "category": "content", 487 | "homepage": "https://radarr.video/" 488 | }, 489 | "redis": { 490 | "MANIFEST": "redis.json", 491 | "name": "Redis", 492 | "icon": "https://icons.freenas.org/community-icons/redis.png", 493 | "description": "Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker. Redis provides data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes, and streams.", 494 | "official": false, 495 | "primary_pkg": "null", 496 | "category": "content", 497 | "homepage": "https://redis.io/" 498 | }, 499 | "readarr": { 500 | "MANIFEST": "readarr.json", 501 | "name": "readarr", 502 | "icon": "https://icons.freenas.org/community-icons/readarr.png", 503 | "description": "Sonarr for Ebooks. Automatically download books in the style of Couchpotato.", 504 | "official": false, 505 | "primary_pkg": "readarr", 506 | "category": "content", 507 | "homepage": "https://readarr.com" 508 | }, 509 | "rslsync": { 510 | "MANIFEST": "rslsync.json", 511 | "name": "rslsync", 512 | "icon": "https://icons.freenas.org/community-icons/rslsync.png", 513 | "description": "Resilient, fast and scalable file sync software for enterprises and individuals.", 514 | "official": false, 515 | "primary_pkg": "null", 516 | "category": "content", 517 | "homepage": "https://www.resilio.com/" 518 | }, 519 | "rtorrent-flood": { 520 | "MANIFEST": "rtorrent-flood.json", 521 | "description": "rTorrent with Flood web interface (optionally restricted to OpenVPN).", 522 | "icon": "https://icons.freenas.org/community-icons/rtorrent-flood.png", 523 | "name": "rtorrent-flood", 524 | "official": false, 525 | "primary_pkg": "rtorrent" 526 | }, 527 | "sabnzbd": { 528 | "MANIFEST": "sabnzbd.json", 529 | "description": "Sabznbd is a newsgroup reader.", 530 | "icon": "https://icons.freenas.org/community-icons/sabnzbd.png", 531 | "name": "Sabnzbd", 532 | "official": false, 533 | "primary_pkg": "sabnzbdplus" 534 | }, 535 | "sickchill": { 536 | "MANIFEST": "sickchill.json", 537 | "description": "Automatic video library manager for TV Shows.", 538 | "icon": "https://icons.freenas.org/community-icons/sickchill.png", 539 | "name": "SickChill", 540 | "official": false, 541 | "primary_pkg": null 542 | }, 543 | "sonarr": { 544 | "MANIFEST": "sonarr.json", 545 | "name": "Sonarr", 546 | "icon": "https://icons.freenas.org/community-icons/sonarr.png", 547 | "description": "Multi-platform app to search, download, and manage TV shows.", 548 | "official": false, 549 | "primary_pkg": "sonarr", 550 | "category": "content", 551 | "homepage": "https://sonarr.tv/" 552 | }, 553 | "tautulli": { 554 | "MANIFEST": "tautulli.json", 555 | "name": "Tautulli", 556 | "icon": "https://icons.freenas.org/community-icons/tautulli.png", 557 | "description": "Monitors analytics and notifications for Plex Media Server. (formerly known as PlexPy)", 558 | "official": false, 559 | "primary_pkg": null, 560 | "category": "entertainment", 561 | "homepage": "https://tautulli.com/" 562 | }, 563 | "torr-server": { 564 | "MANIFEST": "torr-server.json", 565 | "name": "TorrServer", 566 | "primary_pkg": "", 567 | "icon": "https://icons.freenas.org/community-icons/torr-server.png", 568 | "description": "TorrServer", 569 | "official": false 570 | }, 571 | "transmission": { 572 | "MANIFEST": "transmission.json", 573 | "name": "Transmission", 574 | "icon": "https://icons.freenas.org/community-icons/transmission.png", 575 | "description": "Fast and lightweight BitTorrent client.", 576 | "official": false, 577 | "primary_pkg": "transmission-daemon", 578 | "category": "content", 579 | "homepage": "https://transmissionbt.com/" 580 | }, 581 | "unificontroller": { 582 | "MANIFEST": "unificontroller.json", 583 | "description": "Software-Defined Networking platform that provides an end-to-end system of network devices across different locations.", 584 | "icon": "https://icons.freenas.org/community-icons/unificontroller.png", 585 | "name": "unificontroller", 586 | "official": false, 587 | "primary_pkg": "unifi5" 588 | }, 589 | "urbackup": { 590 | "MANIFEST": "urbackup.json", 591 | "name": "UrBackup", 592 | "icon": "https://icons.freenas.org/community-icons/urbackup.png", 593 | "description": "UrBackup is an easy to setup Open Source client/server backup system, that through a combination of image and file backups accomplishes both data safety and a fast restoration time.", 594 | "official": false, 595 | "primary_pkg": "urbackup-server", 596 | "category": "security", 597 | "homepage": "https://www.urbackup.org/" 598 | }, 599 | "vault": { 600 | "MANIFEST": "vault.json", 601 | "name": "vault", 602 | "icon": "https://icons.freenas.org/community-icons/vault.png", 603 | "description": "Manage secrets and protect sensitive data.", 604 | "official": false, 605 | "primary_pkg": "vault", 606 | "category": "devops", 607 | "homepage": "https://www.vaultproject.io/" 608 | }, 609 | "weechat": { 610 | "MANIFEST": "weechat.json", 611 | "description": "Fast and light IRC client.", 612 | "icon": "https://icons.freenas.org/community-icons/weechat.png", 613 | "name": "weechat", 614 | "official": false, 615 | "primary_pkg": "weechat" 616 | }, 617 | "xmrig": { 618 | "MANIFEST": "xmrig.json", 619 | "description": "High performance Monero (XMR) CPU miner written in C++.", 620 | "icon": "https://icons.freenas.org/community-icons/xmrig.png", 621 | "name": "XMRig", 622 | "official": false, 623 | "primary_pkg": "xmrig" 624 | }, 625 | "zabbixserver": { 626 | "MANIFEST": "zabbixserver.json", 627 | "name": "Zabbix Server", 628 | "icon": "https://icons.freenas.org/community-icons/zabbix.png", 629 | "description": "Zabbix is an open-source monitoring software tool for diverse IT components, including networks, servers, virtual machines (VMs) and cloud services", 630 | "official": false, 631 | "primary_pkg": "zabbix6-server", 632 | "category": "management", 633 | "homepage": "https://www.zabbix.com/" 634 | }, 635 | "zoneminder": { 636 | "MANIFEST": "zoneminder.json", 637 | "name": "Zoneminder", 638 | "icon": "https://icons.freenas.org/community-icons/zoneminder.png", 639 | "description": "Closed-circuit television management application which supports IP, USB, and analog cameras.", 640 | "official": false, 641 | "primary_pkg": "zoneminder", 642 | "category": "security", 643 | "homepage": "https://zoneminder.com/" 644 | }, 645 | "zrepl": { 646 | "MANIFEST": "zrepl.json", 647 | "description": "zrepl is a one-stop, integrated solution for ZFS replication.", 648 | "icon": "https://icons.freenas.org/community-icons/zrepl.png", 649 | "name": "zrepl", 650 | "official": false, 651 | "primary_pkg": "zrepl" 652 | } 653 | } 654 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | # NOTE: This repository for Plugins is **Deprecated**. 3 | # Users are encouraged to upgrade to TrueNAS 24.10 or later, which uses the [Apps repository](https://github.com/truenas/apps) for 3rd party software. 4 |
5 | 6 |
7 |
8 |
9 |
10 | 11 | 12 | 13 | 14 | # iocage-ix-plugins 15 | Community created plugins for the retired [TrueNAS CORE](https://www.truenas.com/) and [FreeBSD](http://www.freebsd.org) 16 | 17 | # Creating Plugins 18 | Add a plugin JSON file to this repo along with an appropriate icon in the [icons directory](icons/). 19 | 20 | After creating the JSON file and adding an icon, add the plugin to the [INDEX file](INDEX). 21 | If the plugin is approved, it appears in the list of iocage plugins. 22 | 23 | For more detailed information on creating a plugin, see [Create a Plugin](https://www.ixsystems.com/documentation/freenas/11.2-U6/plugins.html#create-a-plugin). 24 | 25 | # Installing Plugins 26 | 27 | ## Using Local File 28 | Install a plugin using a local file: 29 |
30 | iocage fetch -P /path/to/local/file.json ip4_addr="interface|IPaddress"
31 | 
32 | where *interface* is the name of the active network interface and *IP address* is the desired IP address for the plugin. 33 | For example, `ip4_addr="em0|10.238.4.196"`. 34 | 35 | ## Pulling from Internet 36 | Install a plugin from the internet: 37 |
38 | iocage fetch -P jenkins -g https://github.com/ix-plugin-hub/iocage-plugin-index ip4_addr="interface|IPaddress"
39 | 
40 | where *interface* is the name of the active network interface and *IP address* is the desired IP address for the plugin. 41 | For example, `ip4_addr="igb0|192.168.0.91"` 42 | 43 | # Plugin installation tests 44 | This repository contains cirrus-ci tasks for automated plugin installation tests executed as a part of the PR checks and on the `master` branch. 45 | 46 | [.cirrus/install_script.sh](.cirrus/install_script.sh) is the installation test script run for every plugin included in the [.cirrus.yml](.cirrus.yml) file. 47 | 48 | ## Plugin block 49 | The following `.cirrus.yml` task shows an example of needed YAML section to enable automatic installation test for a plugin. 50 | 51 | ```yaml 52 | _task: 53 | <<: *INSTALL_PLUGIN 54 | only_if: "changesInclude('.json', '.cirrus/install_script.sh')" 55 | matrix: 56 | - freebsd_instance: 57 | image_family: freebsd-12-2 58 | env: 59 | PLUGIN_FILE: ".json" 60 | ``` 61 | 62 | ### Block variables 63 | * `` should equal (and be replaced with) the plugin JSON file name (without the `.json` file suffix) 64 | * The `matrix` -> `freebsd_instance` -> `image_family` should match the plugin manifest FreeBSD version. Alternatively this `matrix` can be a list of `freebsd_instances` with different versions if multiple FreeBSD versions are supported or needed to be tested 65 | * **required** `env` variables: 66 | * `PLUGIN_FILE` should equal the plugin manifest file and is the one parsed inside the `install_script` 67 | * **optional** `env` variables: 68 | * `ADMIN_UI_USER` should be used if there is a username/password required to reach the admin UI. Value should have the format: `:` 69 | * `FOLLOW_REDIRECTS` if set to `"false"` will not follow redirects to admin UI and treat a 3XX code as success for the admin portal UI check 70 | * `SKIP_UI_CHECK` if set to `"true"` will skip the admin portal UI check entirely 71 | * `SKIP_SERVICE_CHECK` if set to `"true"` will skip checking if the services started in `post_install` are running 72 | * `OVERRIDE_ADMIN_UI` check this UI URL after plugin installation instead of the URL specified in plugin `ui.json` 73 | -------------------------------------------------------------------------------- /adguardhome.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "adguardhome", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/leandroscardua/iocage-plugin-adguardhome.git", 5 | "official": false, 6 | "pkgs": [ 7 | "adguardhome" 8 | ], 9 | "properties": { 10 | "dhcp": 1 11 | }, 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "iocage-plugins": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "revision": 0 22 | } 23 | -------------------------------------------------------------------------------- /amule.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "amule", 3 | "plugin_schema": "2", 4 | "release": "12.3-RELEASE", 5 | "artifact": "https://github.com/alberanid/iocage-plugin-amule.git", 6 | "properties": { 7 | "nat": 1, 8 | "nat_forwards": "tcp(4711:4711),tcp(4712:4712)" 9 | }, 10 | "pkgs": [ 11 | "amule" 12 | ], 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "iocage-plugins": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "official": false 23 | } 24 | -------------------------------------------------------------------------------- /archiwarep5.json: -------------------------------------------------------------------------------- 1 | { 2 | "artifact": "https://github.com/IgorC-test/iocage-plugin-archiware-p5-truenas13.git", 3 | "devfs_ruleset": { 4 | "includes": [], 5 | "paths": { 6 | "ch0": null, 7 | "nsa0": null, 8 | "pass0": null, 9 | "pass1": null, 10 | "pass2": null, 11 | "pass3": null, 12 | "pass4": null, 13 | "pass5": null, 14 | "pass6": null, 15 | "pass7": null, 16 | "sa0": null, 17 | "xpt0": null, 18 | "zfs": null 19 | } 20 | }, 21 | "fingerprints": { 22 | "iocage-plugins": [ 23 | { 24 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438", 25 | "function": "sha256" 26 | } 27 | ] 28 | }, 29 | "name": "ArchiwareP5", 30 | "official": false, 31 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 32 | "pkgs": [], 33 | "properties": { 34 | "mount_devfs": "1", 35 | "mount_procfs": "1", 36 | "mount_fdescfs": "1", 37 | "allow_mount": "1", 38 | "allow_mount_devfs": "1", 39 | "allow_mount_procfs": "1", 40 | "allow_raw_sockets": "1", 41 | "dhcp": "1", 42 | "securelevel": "0", 43 | "enforce_statfs": "0" 44 | }, 45 | "release": "13.2-RELEASE", 46 | "revision": 3 47 | } 48 | -------------------------------------------------------------------------------- /backuppc.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "BackupPC", 3 | "release": "13.2-RELEASE", 4 | "official": false, 5 | "artifact": "https://github.com/freenas/iocage-plugin-backuppc.git", 6 | "properties": { 7 | "nat": 1, 8 | "nat_forwards": "tcp(80:9090)" 9 | }, 10 | "pkgs": [ 11 | "backuppc4", 12 | "apache24" 13 | ], 14 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 15 | "fingerprints": { 16 | "iocage-plugins": [ 17 | { 18 | "function": "sha256", 19 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 20 | } 21 | ] 22 | }, 23 | "revision": 0 24 | } 25 | -------------------------------------------------------------------------------- /bazarr.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bazarr", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/fulder/iocage-plugin-bazarr", 5 | "pkgs": [ 6 | "python3", 7 | "python39", 8 | "py39-pip", 9 | "py39-libxml2", 10 | "py39-sqlite3", 11 | "libxslt", 12 | "unzip", 13 | "unrar", 14 | "ffmpeg" 15 | ], 16 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 17 | "fingerprints": { 18 | "iocage-plugins": [ 19 | { 20 | "function": "sha256", 21 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 22 | } 23 | ] 24 | }, 25 | "official": false 26 | } 27 | -------------------------------------------------------------------------------- /bind.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bind", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/pandorixtech/iocage-plugin-bind.git", 5 | "official": false, 6 | "properties": { 7 | "nat": 1, 8 | "nat_forwards": "udp(53:53)" 9 | }, 10 | "pkgs": [ 11 | "bind916", 12 | "vim", 13 | "mc" 14 | ], 15 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 16 | "fingerprints": { 17 | "iocage-plugins": [ 18 | { 19 | "function": "sha256", 20 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 21 | } 22 | ] 23 | }, 24 | "revision": 0 25 | } 26 | -------------------------------------------------------------------------------- /calibre-web.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Calibre-Web", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/aserrallerios/iocage-plugin-calibre-web.git", 5 | "pkgs": [ 6 | "git", 7 | "python3", 8 | "python39", 9 | "py39-pip", 10 | "py39-setuptools", 11 | "py39-sqlite3", 12 | "py39-ldap", 13 | "rust", 14 | "calibre", 15 | "unrar", 16 | "ImageMagick7" 17 | ], 18 | "properties": { 19 | "nat": 1, 20 | "nat_forwards": "tcp(8083:8083)" 21 | }, 22 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 23 | "fingerprints": { 24 | "plugin-default": [ 25 | { 26 | "function": "sha256", 27 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 28 | } 29 | ] 30 | }, 31 | "official": false, 32 | "revision": 0 33 | } 34 | -------------------------------------------------------------------------------- /channels-dvr.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "channels-dvr", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/fancybits/iocage-plugin-channels-dvr.git", 5 | "properties": { 6 | "nat": 1, 7 | "nat_forwards": "tcp(8089:8089)" 8 | }, 9 | "pkgs": [ 10 | "ftp/curl", 11 | "security/ca_root_nss", 12 | "security/sudo", 13 | "www/chromium" 14 | ], 15 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/quarterly", 16 | "fingerprints": { 17 | "iocage-plugins": [ 18 | { 19 | "function": "sha256", 20 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 21 | } 22 | ] 23 | }, 24 | "official": false, 25 | "revision": 0 26 | } 27 | -------------------------------------------------------------------------------- /chia.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Chia-Blockchain", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/kmoore134/iocage-plugin-chia.git", 5 | "official": false, 6 | "properties": { 7 | "nat": 1, 8 | "nat_forwards": "tcp(8444:8444)" 9 | }, 10 | "pkgs": [ 11 | "bash", 12 | "cmake", 13 | "gcc", 14 | "gcc9", 15 | "gmake", 16 | "git", 17 | "node", 18 | "npm", 19 | "openssl", 20 | "pybind11", 21 | "py38-cffi", 22 | "py38-maturin", 23 | "py38-pip", 24 | "py38-pybind11", 25 | "py38-setuptools", 26 | "py38-sqlite3", 27 | "py38-virtualenv", 28 | "py38-wheel", 29 | "python", 30 | "python38", 31 | "rust", 32 | "tmux" 33 | ], 34 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 35 | "fingerprints": { 36 | "iocage-plugins": [ 37 | { 38 | "function": "sha256", 39 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 40 | } 41 | ] 42 | }, 43 | "revision": 0 44 | } 45 | -------------------------------------------------------------------------------- /clamav.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ClamAV", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-clamav.git", 5 | "official": false, 6 | "properties": { 7 | "nat": 1 8 | }, 9 | "pkgs": [ 10 | "clamav" 11 | ], 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "iocage-plugins": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "revision": 0 22 | } 23 | -------------------------------------------------------------------------------- /deluge-pip.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "deluge-pip", 3 | "plugin_schema": "2", 4 | "release": "13.1-RELEASE", 5 | "artifact": "https://github.com/jsegaert/iocage-plugin-deluge-pip.git", 6 | "properties": { 7 | "nat": "1", 8 | "nat_forwards": "tcp(8112:8112)" 9 | }, 10 | "pkgs": [ 11 | "ca_root_nss", 12 | "python39", 13 | "py39-boost-libs", 14 | "py39-chardet", 15 | "py39-distro", 16 | "py39-mako", 17 | "py39-pillow", 18 | "py39-pip", 19 | "py39-twisted", 20 | "py39-rencode", 21 | "py39-setproctitle", 22 | "py39-xdg", 23 | "b2", 24 | "libtorrent-rasterbar", 25 | "portdowngrade", 26 | "rust", 27 | "subversion" 28 | ], 29 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 30 | "fingerprints": { 31 | "plugin-default": [ 32 | { 33 | "function": "sha256", 34 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 35 | } 36 | ] 37 | }, 38 | "official": false 39 | } 40 | -------------------------------------------------------------------------------- /dnsmasq.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Dnsmasq", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/timsavage/iocage-plugin-dnsmasq.git", 5 | "properties": { 6 | "dhcp": 1 7 | }, 8 | "pkgs": [ 9 | "dnsmasq", 10 | "python39" 11 | ], 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "iocage-plugins": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "official": false, 22 | "revision": 0 23 | } 24 | -------------------------------------------------------------------------------- /drupal8.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "drupal8", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/SumGuyV5/iocage-plugin-drupal8.git", 5 | "pkgs": [ 6 | "php74-zlib", 7 | "mysql57-server", 8 | "mysql57-client", 9 | "php74-mysqli", 10 | "php74-pdo_mysql", 11 | "php74-curl", 12 | "php74-gd", 13 | "php74-extensions", 14 | "php74", 15 | "apache24", 16 | "mod_php74", 17 | "drupal8", 18 | "drush-php74" 19 | ], 20 | "properties": { 21 | "dhcp": 1 22 | }, 23 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 24 | "fingerprints": { 25 | "plugin-default": [ 26 | { 27 | "function": "sha256", 28 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 29 | } 30 | ] 31 | }, 32 | "official": false 33 | } 34 | -------------------------------------------------------------------------------- /duplicati.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "duplicati", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/rexit1982/iocage-plugin-duplicati.git", 5 | "properties": { 6 | "dhcp": 1 7 | }, 8 | "pkgs": [ 9 | "mono", 10 | "py27-sqlite3", 11 | "ca_root_nss" 12 | ], 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "iocage-plugins": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "revision": 0 23 | } 24 | -------------------------------------------------------------------------------- /emby-server-stable.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "emby-server-stable", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-emby.git", 5 | "official": false, 6 | "properties": { 7 | "allow_mlock": 1, 8 | "dhcp": 1, 9 | "allow_raw_sockets": "1", 10 | "ip6": "inherit" 11 | }, 12 | "pkgs": [ 13 | "libass", 14 | "fontconfig", 15 | "freetype2", 16 | "fribidi", 17 | "mbedtls", 18 | "gnutls", 19 | "iconv", 20 | "opus", 21 | "sqlite3", 22 | "libtheora", 23 | "libva", 24 | "ocl-icd", 25 | "libvorbis", 26 | "webp", 27 | "libzvbi", 28 | "libraw", 29 | "ImageMagick6", 30 | "intel-media-sdk", 31 | "libunwind", 32 | "libinotify", 33 | "openssl", 34 | "icu", 35 | "krb5", 36 | "tesseract", 37 | "emby-server" 38 | ], 39 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 40 | "fingerprints": { 41 | "iocage-plugins": [ 42 | { 43 | "function": "sha256", 44 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 45 | } 46 | ] 47 | }, 48 | "revision": 2, 49 | "official": false 50 | } 51 | -------------------------------------------------------------------------------- /emby.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Emby Server Beta", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-emby.git", 5 | "official": false, 6 | "properties": { 7 | "dhcp": 1, 8 | "allow_raw_sockets": "1", 9 | "allow_mlock": 1, 10 | "ip6": "inherit" 11 | }, 12 | "pkgs": [ 13 | "libass", 14 | "fontconfig", 15 | "freetype2", 16 | "mbedtls", 17 | "fribidi", 18 | "gnutls", 19 | "iconv", 20 | "opus", 21 | "sqlite3", 22 | "libtheora", 23 | "libva", 24 | "ocl-icd", 25 | "libvorbis", 26 | "webp", 27 | "libzvbi", 28 | "libraw", 29 | "ImageMagick6", 30 | "intel-media-sdk", 31 | "libunwind", 32 | "libinotify", 33 | "openssl", 34 | "icu", 35 | "krb5", 36 | "libexif", 37 | "libjxl", 38 | "libheif", 39 | "libimagequant", 40 | "openexr", 41 | "openjpeg", 42 | "orc", 43 | "pango", 44 | "tiff", 45 | "tesseract", 46 | "emby-server-devel" 47 | ], 48 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 49 | "fingerprints": { 50 | "iocage-plugins": [ 51 | { 52 | "function": "sha256", 53 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 54 | } 55 | ] 56 | }, 57 | "revision": 2 58 | } 59 | -------------------------------------------------------------------------------- /famp.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "famp", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/fulder/iocage-plugin-famp.git", 5 | "pkgs": [ 6 | "apache24", 7 | "mysql80-server", 8 | "php80", 9 | "php80-mysqli", 10 | "mod_php80" 11 | ], 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "iocage-plugins": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "official": false 22 | } 23 | -------------------------------------------------------------------------------- /flaresolverr.json: -------------------------------------------------------------------------------- 1 | { 2 | "artifact": "https://github.com/pigfrown/iocage-plugin-flaresolverr.git", 3 | "fingerprints": { 4 | "iocage-plugins": [ 5 | { 6 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438", 7 | "function": "sha256" 8 | } 9 | ] 10 | }, 11 | "name": "FlareSolverr", 12 | "official": false, 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "pkgs": [ 15 | "git", 16 | "chromium", 17 | "python39", 18 | "py39-pip", 19 | "py39-bottle", 20 | "py39-waitress", 21 | "py39-selenium", 22 | "py39-requests", 23 | "py39-websockets", 24 | "xorg-vfbserver" 25 | ], 26 | "release": "13.1-RELEASE" 27 | } 28 | -------------------------------------------------------------------------------- /gitea.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Gitea", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/ConorBeh/iocage-plugin-gitea.git", 5 | "pkgs": [ 6 | "gitea", 7 | "postgresql11-server", 8 | "postgresql11-contrib", 9 | "bash" 10 | ], 11 | "properties": { 12 | "dhcp": 1 13 | }, 14 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 15 | "fingerprints": { 16 | "plugin-default": [ 17 | { 18 | "function": "sha256", 19 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 20 | } 21 | ] 22 | }, 23 | "official": false, 24 | "revision": 0 25 | } 26 | -------------------------------------------------------------------------------- /gitlab.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "GitLab", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/pandorixtech/iocage-plugin-gitlab.git", 5 | "pkgs": [ 6 | "gitlab-ce", 7 | "postgresql13-server", 8 | "postgresql13-contrib", 9 | "nginx", 10 | "gtar" 11 | ], 12 | "properties": { 13 | "dhcp": "on", 14 | "allow_sysvipc": "1" 15 | }, 16 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 17 | "fingerprints": { 18 | "iocage-plugins": [ 19 | { 20 | "function": "sha256", 21 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 22 | } 23 | ] 24 | }, 25 | "official": false 26 | } 27 | -------------------------------------------------------------------------------- /grafana.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Grafana", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/MalteHillmann/iocage-plugin-grafana.git", 5 | "pkgs": [ 6 | "grafana9", 7 | "influxdb", 8 | "collectd5", 9 | "curl" 10 | ], 11 | "properties": { 12 | "dhcp": 1 13 | }, 14 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 15 | "fingerprints": { 16 | "plugin-default": [ 17 | { 18 | "function": "sha256", 19 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 20 | } 21 | ] 22 | }, 23 | "official": false, 24 | "revision": 0 25 | } 26 | -------------------------------------------------------------------------------- /graylog.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "graylog", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/xTITUSMAXIMUSX/iocage-plugin-graylog.git", 5 | "properties": { 6 | "allow_raw_sockets": "1", 7 | "boot": "on" 8 | }, 9 | "pkgs": [ 10 | "graylog", 11 | "elasticsearch7", 12 | "mongodb50", 13 | "pwgen", 14 | "p5-Digest-SHA" 15 | ], 16 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 17 | "fingerprints": { 18 | "plugin-default": [ 19 | { 20 | "function": "sha256", 21 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 22 | } 23 | ] 24 | }, 25 | "official": false 26 | } 27 | -------------------------------------------------------------------------------- /guacamole.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "guacamole", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/leandroscardua/iocage-plugin-guacamole.git", 5 | "official": false, 6 | "pkgs": [ 7 | "guacamole-server", 8 | "guacamole-client", 9 | "mysql80-server", 10 | "mysql-connector-java" 11 | ], 12 | "properties": { 13 | "nat": 1, 14 | "nat_forwards": "tcp(8085:8085)" 15 | }, 16 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 17 | "fingerprints": { 18 | "iocage-plugins": [ 19 | { 20 | "function": "sha256", 21 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 22 | } 23 | ] 24 | }, 25 | "revision": 0 26 | } 27 | -------------------------------------------------------------------------------- /heimdall-dashboard.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "heimdall-dashboard", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/jsegaert/iocage-plugin-heimdall.git", 5 | "properties": { 6 | "dhcp": "1" 7 | }, 8 | "pkgs": [ 9 | "git-lite", 10 | "nginx", 11 | "php80", 12 | "php80-ctype", 13 | "php80-filter", 14 | "php80-mbstring", 15 | "php80-pdo_sqlite", 16 | "php80-session", 17 | "php80-sqlite3", 18 | "php80-tokenizer", 19 | "php80-xml", 20 | "php80-zip" 21 | ], 22 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 23 | "fingerprints": { 24 | "plugin-default": [ 25 | { 26 | "function": "sha256", 27 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 28 | } 29 | ] 30 | }, 31 | "official": false 32 | } 33 | -------------------------------------------------------------------------------- /homebridge.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Homebridge", 3 | "release": "12.3-RELEASE", 4 | "artifact": "https://github.com/grimneko/iocage-plugin-homebridge.git", 5 | "properties": { 6 | "dhcp": 1 7 | }, 8 | "pkgs": [ 9 | "python", 10 | "node", 11 | "npm", 12 | "dbus", 13 | "avahi-libdns", 14 | "gcc", 15 | "nss_mdns" 16 | ], 17 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/quarterly", 18 | "fingerprints": { 19 | "plugin-default": [ 20 | { 21 | "function": "sha256", 22 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 23 | } 24 | ] 25 | }, 26 | "offical": false, 27 | "revision": 0 28 | } -------------------------------------------------------------------------------- /hoobs.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "hoobs", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/rahul-r/iocage-plugin-hoobs.git", 5 | "pkgs": [ 6 | "python3", 7 | "perl5", 8 | "sudo", 9 | "node", 10 | "npm", 11 | "dbus", 12 | "avahi-libdns", 13 | "gcc", 14 | "nss_mdns", 15 | "jq" 16 | ], 17 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/quarterly", 18 | "fingerprints": { 19 | "plugin-default": [ 20 | { 21 | "function": "sha256", 22 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 23 | } 24 | ] 25 | }, 26 | "offical": false 27 | } 28 | -------------------------------------------------------------------------------- /i2p.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "i2p", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/dbzoo/iocage-plugin-i2p.git", 5 | "official": false, 6 | "properties": { 7 | "dhcp": 1 8 | }, 9 | "pkgs": [ 10 | "security/i2p", 11 | "java/openjdk8" 12 | ], 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "plugin-default": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "revision": 0 23 | } 24 | -------------------------------------------------------------------------------- /icons/adguardhome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/adguardhome.png -------------------------------------------------------------------------------- /icons/amule.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/amule.png -------------------------------------------------------------------------------- /icons/archiwarep5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/archiwarep5.png -------------------------------------------------------------------------------- /icons/backuppc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/backuppc.png -------------------------------------------------------------------------------- /icons/bazarr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/bazarr.png -------------------------------------------------------------------------------- /icons/bind.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/bind.png -------------------------------------------------------------------------------- /icons/calibre-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/calibre-web.png -------------------------------------------------------------------------------- /icons/channels-dvr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/channels-dvr.png -------------------------------------------------------------------------------- /icons/chia.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/chia.png -------------------------------------------------------------------------------- /icons/clamav.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/clamav.png -------------------------------------------------------------------------------- /icons/deluge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/deluge.png -------------------------------------------------------------------------------- /icons/dnsmasq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/dnsmasq.png -------------------------------------------------------------------------------- /icons/dnsmasq.svg: -------------------------------------------------------------------------------- 1 | 2 | image/svg+xml -------------------------------------------------------------------------------- /icons/drupal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/drupal.png -------------------------------------------------------------------------------- /icons/drupal8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/drupal8.png -------------------------------------------------------------------------------- /icons/duplicati.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/duplicati.png -------------------------------------------------------------------------------- /icons/emby-server-png-128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/emby-server-png-128.png -------------------------------------------------------------------------------- /icons/emby.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/emby.png -------------------------------------------------------------------------------- /icons/famp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/famp.png -------------------------------------------------------------------------------- /icons/flaresolverr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/flaresolverr.png -------------------------------------------------------------------------------- /icons/gitea.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/gitea.png -------------------------------------------------------------------------------- /icons/gitlab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/gitlab.png -------------------------------------------------------------------------------- /icons/grafana.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/grafana.png -------------------------------------------------------------------------------- /icons/graylog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/graylog.png -------------------------------------------------------------------------------- /icons/guacamole.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/guacamole.png -------------------------------------------------------------------------------- /icons/heimdall-dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/heimdall-dashboard.png -------------------------------------------------------------------------------- /icons/homebridge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/homebridge.png -------------------------------------------------------------------------------- /icons/hoobs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/hoobs.png -------------------------------------------------------------------------------- /icons/i2p.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/i2p.png -------------------------------------------------------------------------------- /icons/irssi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/irssi.png -------------------------------------------------------------------------------- /icons/jackett.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/jackett.png -------------------------------------------------------------------------------- /icons/jdownloader.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/jdownloader.png -------------------------------------------------------------------------------- /icons/jellyfin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/jellyfin.png -------------------------------------------------------------------------------- /icons/jenkins.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/jenkins.png -------------------------------------------------------------------------------- /icons/lidarr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/lidarr.png -------------------------------------------------------------------------------- /icons/logitechmediaserver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/logitechmediaserver.png -------------------------------------------------------------------------------- /icons/madsonic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/madsonic.png -------------------------------------------------------------------------------- /icons/mariadb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/mariadb.png -------------------------------------------------------------------------------- /icons/monica.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/monica.png -------------------------------------------------------------------------------- /icons/motioneye.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/motioneye.png -------------------------------------------------------------------------------- /icons/movienight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/movienight.png -------------------------------------------------------------------------------- /icons/n8n.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/n8n.png -------------------------------------------------------------------------------- /icons/netdata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/netdata.png -------------------------------------------------------------------------------- /icons/nexus-oss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/nexus-oss.png -------------------------------------------------------------------------------- /icons/nxfilter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/nxfilter.png -------------------------------------------------------------------------------- /icons/nzbget.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/nzbget.png -------------------------------------------------------------------------------- /icons/openspeedtest.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/openspeedtest.png -------------------------------------------------------------------------------- /icons/openvpn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/openvpn.png -------------------------------------------------------------------------------- /icons/paperless-ngx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/paperless-ngx.png -------------------------------------------------------------------------------- /icons/photoprism.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/photoprism.png -------------------------------------------------------------------------------- /icons/photoview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/photoview.png -------------------------------------------------------------------------------- /icons/piwigo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/piwigo.png -------------------------------------------------------------------------------- /icons/privatebin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/privatebin.png -------------------------------------------------------------------------------- /icons/prowlarr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/prowlarr.png -------------------------------------------------------------------------------- /icons/qbittorrent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/qbittorrent.png -------------------------------------------------------------------------------- /icons/quasselcore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/quasselcore.png -------------------------------------------------------------------------------- /icons/rabbitmq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/rabbitmq.png -------------------------------------------------------------------------------- /icons/radarr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/radarr.png -------------------------------------------------------------------------------- /icons/readarr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/readarr.png -------------------------------------------------------------------------------- /icons/redis.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/redis.png -------------------------------------------------------------------------------- /icons/rslsync.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/rslsync.png -------------------------------------------------------------------------------- /icons/rtorrent-flood.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/rtorrent-flood.png -------------------------------------------------------------------------------- /icons/sabnzbd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/sabnzbd.png -------------------------------------------------------------------------------- /icons/sickchill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/sickchill.png -------------------------------------------------------------------------------- /icons/sonarr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/sonarr.png -------------------------------------------------------------------------------- /icons/tautulli.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/tautulli.png -------------------------------------------------------------------------------- /icons/torr-server.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/torr-server.png -------------------------------------------------------------------------------- /icons/transmission.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/transmission.png -------------------------------------------------------------------------------- /icons/unificontroller.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/unificontroller.png -------------------------------------------------------------------------------- /icons/urbackup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/urbackup.png -------------------------------------------------------------------------------- /icons/vault.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/vault.png -------------------------------------------------------------------------------- /icons/weechat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/weechat.png -------------------------------------------------------------------------------- /icons/xmrig.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/xmrig.png -------------------------------------------------------------------------------- /icons/zabbix.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/zabbix.png -------------------------------------------------------------------------------- /icons/zoneminder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/zoneminder.png -------------------------------------------------------------------------------- /icons/zrepl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ix-plugin-hub/iocage-plugin-index/228a46d295f9b9590c99d378c1da52a5b579faf6/icons/zrepl.png -------------------------------------------------------------------------------- /index.schema: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://json-schema.org/draft-07/schema#", 3 | "type": "object", 4 | "patternProperties": { 5 | ".*": { 6 | "type": "object", 7 | "required": [ 8 | "MANIFEST", 9 | "name", 10 | "primary_pkg", 11 | "icon", 12 | "description", 13 | "official" 14 | ], 15 | "properties": { 16 | "MANIFEST": { 17 | "type": "string" 18 | }, 19 | "name": { 20 | "type": "string" 21 | }, 22 | "icon": { 23 | "type": "string" 24 | }, 25 | "description": { 26 | "type": "string" 27 | }, 28 | "official": { 29 | "type": "boolean" 30 | }, 31 | "primary_pkg": { 32 | "type": ["string", "null"] 33 | }, 34 | "category": { 35 | "type": "string" 36 | }, 37 | "homepage": { 38 | "type": "string" 39 | } 40 | } 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /irssi.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "irssi", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-irssi.git", 5 | "properties": { 6 | "nat": 1 7 | }, 8 | "pkgs": [ 9 | "irssi" 10 | ], 11 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 12 | "fingerprints": { 13 | "iocage-plugins": [ 14 | { 15 | "function": "sha256", 16 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 17 | } 18 | ] 19 | }, 20 | "official": false, 21 | "revision": 0 22 | } 23 | -------------------------------------------------------------------------------- /jackett.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jackett", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/fulder/iocage-plugin-jackett.git", 5 | "properties": { 6 | "nat": 1, 7 | "nat_forwards": "tcp(9117:9117)" 8 | }, 9 | "pkgs": [ 10 | "jackett", 11 | "libiconv" 12 | ], 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "iocage-plugins": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "official": false 23 | } 24 | -------------------------------------------------------------------------------- /jdownloader.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "JDownloader", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/kennedyoliveira/iocage-jdownloader-plugin", 5 | "properties": { 6 | "boot": "on", 7 | "dhcp": 1 8 | }, 9 | "pkgs": [ 10 | "openjdk8-jre", 11 | "ffmpeg", 12 | "rtmpdump", 13 | "curl", 14 | "jq" 15 | ], 16 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 17 | "fingerprints": { 18 | "plugin-default": [ 19 | { 20 | "function": "sha256", 21 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 22 | } 23 | ] 24 | }, 25 | "official": false 26 | } 27 | -------------------------------------------------------------------------------- /jellyfin.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Jellyfin Server", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/spz2k9/iocage-plugin-jellyfin.git", 5 | "official": false, 6 | "properties": { 7 | "dhcp": 1, 8 | "allow_raw_sockets": "1", 9 | "allow_mlock": 1, 10 | "ip6": "inherit" 11 | }, 12 | "devfs_ruleset": { 13 | "paths": { 14 | "bpf*": null, 15 | "dri*": null, 16 | "dri/*": null, 17 | "drm*": null, 18 | "drm/*": null 19 | }, 20 | "includes": [] 21 | }, 22 | "pkgs": [ 23 | "libva-utils", 24 | "libva-intel-media-driver", 25 | "python39", 26 | "jellyfin" 27 | ], 28 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 29 | "fingerprints": { 30 | "iocage-plugins": [ 31 | { 32 | "function": "sha256", 33 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 34 | } 35 | ] 36 | }, 37 | "revision": 3 38 | } 39 | -------------------------------------------------------------------------------- /jenkins-lts.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jenkins-lts", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-jenkins-lts.git", 5 | "official": false, 6 | "properties": { 7 | "nat": 1, 8 | "nat_forwards": "tcp(8080:8080)" 9 | }, 10 | "pkgs": [ 11 | "jenkins-lts" 12 | ], 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "iocage-plugins": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "revision": 0 23 | } 24 | -------------------------------------------------------------------------------- /jenkins.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jenkins", 3 | "release": "12.3-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-jenkins.git", 5 | "official": false, 6 | "properties": { 7 | "nat": 1, 8 | "nat_forwards": "tcp(8080:8080)" 9 | }, 10 | "pkgs": [ 11 | "jenkins" 12 | ], 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "iocage-plugins": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "revision": 0 23 | } -------------------------------------------------------------------------------- /lidarr.json: -------------------------------------------------------------------------------- 1 | { 2 | "artifact": "https://github.com/dropsignal/iocage-plugin-lidarr.git", 3 | "fingerprints": { 4 | "iocage-plugins": [ 5 | { 6 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438", 7 | "function": "sha256" 8 | } 9 | ] 10 | }, 11 | "name": "Lidarr", 12 | "official": false, 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "pkgs": [ 15 | "lidarr" 16 | ], 17 | "properties": { 18 | "allow_mlock": 1, 19 | "nat": 1, 20 | "nat_forwards": "tcp(8686:8686)" 21 | }, 22 | "release": "13.1-RELEASE" 23 | } 24 | -------------------------------------------------------------------------------- /logitechmediaserver.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Logitechmediaserver", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/titou386/iocage-plugin-logitechmediaserver.git", 5 | "properties": { 6 | "boot": "on", 7 | "dhcp": "on" 8 | }, 9 | "pkgs": [ 10 | "perl5", 11 | "p5-libwww", 12 | "p5-Font-FreeType", 13 | "p5-Data-Dump", 14 | "p5-Net-SSLeay", 15 | "p5-Crypt-OpenSSL-RSA", 16 | "p5-IO-Socket-SSL", 17 | "bash", 18 | "curl", 19 | "flac", 20 | "lame", 21 | "sox" 22 | ], 23 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 24 | "fingerprints": { 25 | "plugin-default": [ 26 | { 27 | "function": "sha256", 28 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 29 | } 30 | ] 31 | }, 32 | "official": false 33 | } 34 | -------------------------------------------------------------------------------- /madsonic.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "MadSonic", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-madsonic.git", 5 | "properties": { 6 | "nat": 1, 7 | "nat_forwards": "tcp(4040:4040)" 8 | }, 9 | "pkgs": [ 10 | "openjdk8-jre", 11 | "ca_root_nss", 12 | "ffmpeg" 13 | ], 14 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 15 | "fingerprints": { 16 | "iocage-plugins": [ 17 | { 18 | "function": "sha256", 19 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 20 | } 21 | ] 22 | }, 23 | "official": false, 24 | "revision": 0 25 | } 26 | -------------------------------------------------------------------------------- /mariadb.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "MariaDB", 3 | "plugin_schema": 2, 4 | "release": "13.2-RELEASE", 5 | "artifact": "https://github.com/m1ch/iocage-plugin-mariadb.git", 6 | "official": false, 7 | "properties": { 8 | "allow_raw_sockets": 1, 9 | "dhcp": 0 10 | }, 11 | "pkgs": [ 12 | "mariadb105-server", 13 | "mariadb105-client" 14 | ], 15 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 16 | "fingerprints": { 17 | "plugin-default": [ 18 | { 19 | "function": "sha256", 20 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 21 | } 22 | ] 23 | }, 24 | "revision": 0 25 | } 26 | -------------------------------------------------------------------------------- /monica.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "monica", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/aoyono/iocage-plugin-monica.git", 5 | "pkgs": [ 6 | "git-lite", 7 | "pwgen", 8 | "apache24", 9 | "mysql57-server", 10 | "redis", 11 | "mod_php74", 12 | "php74-composer", 13 | "php74-bcmath", 14 | "php74-curl", 15 | "php74-dom", 16 | "php74-gd", 17 | "php74-gmp", 18 | "php74-iconv", 19 | "php74-intl", 20 | "php74-json", 21 | "php74-mbstring", 22 | "php74-mysqli", 23 | "php74-opcache", 24 | "php74-pdo_mysql", 25 | "php74-pecl-redis", 26 | "php74-sodium", 27 | "php74-xml", 28 | "php74-zip", 29 | "php74-pecl-imagick-im7", 30 | "php74-tokenizer", 31 | "php74-fileinfo", 32 | "acme.sh" 33 | ], 34 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 35 | "fingerprints": { 36 | "iocage-plugins": [ 37 | { 38 | "function": "sha256", 39 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 40 | } 41 | ] 42 | }, 43 | "official": false, 44 | "revision": 0 45 | } 46 | -------------------------------------------------------------------------------- /motioneye.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "motioneye", 3 | "plugin_schema": "2", 4 | "release": "13.1-RELEASE", 5 | "artifact": "https://github.com/Baenwort/iocage-plugin-motioneye.git", 6 | "official": false, 7 | "properties": { 8 | "nat": 1, 9 | "nat_forwards": "tcp(8765:8765)" 10 | }, 11 | "pkgs": [ 12 | "bash", 13 | "curl", 14 | "python3", 15 | "python39", 16 | "gcc", 17 | "motion", 18 | "ffmpeg", 19 | "v4l-utils", 20 | "jpeg-turbo" 21 | ], 22 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 23 | "fingerprints": { 24 | "iocage-plugins": [ 25 | { 26 | "function": "sha256", 27 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 28 | } 29 | ] 30 | }, 31 | "revision": 3 32 | } 33 | -------------------------------------------------------------------------------- /movienight.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "movienight", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/zorglube/iocage-plugin-movienight.git", 5 | "official": false, 6 | "properties": { 7 | "dhcp": 1 8 | }, 9 | "pkgs": [ 10 | "bash", 11 | "ca_root_nss", 12 | "git-lite", 13 | "go", 14 | "gmake" 15 | ], 16 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 17 | "fingerprints": { 18 | "iocage-plugins": [ 19 | { 20 | "function": "sha256", 21 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 22 | } 23 | ] 24 | }, 25 | "revision": 0 26 | } 27 | -------------------------------------------------------------------------------- /n8n.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "n8n", 3 | "artifact": "https://github.com/kennedyoliveira/iocage-n8n-plugin", 4 | "release": "13.2-RELEASE", 5 | "properties": { 6 | "nat": 1, 7 | "nat_forwards": "tcp(5678:5678)", 8 | "boot": "on" 9 | }, 10 | "pkgs": [ 11 | "node", 12 | "www/npm" 13 | ], 14 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 15 | "fingerprints": { 16 | "plugin-default": [ 17 | { 18 | "function": "sha256", 19 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 20 | } 21 | ] 22 | }, 23 | "official": false 24 | } 25 | -------------------------------------------------------------------------------- /netdata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "netdata", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/kmoore134/iocage-netdata.git", 5 | "official": false, 6 | "properties": { 7 | "mount_devfs": 1, 8 | "mount_fdescfs": 1, 9 | "mount_procfs": 1, 10 | "securelevel": -1, 11 | "allow_set_hostname": 1, 12 | "allow_raw_sockets": 1, 13 | "allow_sysvipc": 1, 14 | "sysvmsg": "new", 15 | "sysvsem": "new", 16 | "sysvshm": "new", 17 | "nat": 1, 18 | "nat_forwards": "tcp(19999:19999)" 19 | }, 20 | "pkgs": [ 21 | "netdata" 22 | ], 23 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 24 | "fingerprints": { 25 | "plugin-default": [ 26 | { 27 | "function": "sha256", 28 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 29 | } 30 | ] 31 | }, 32 | "revision": 0 33 | } 34 | -------------------------------------------------------------------------------- /nexus-oss.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nexus-oss", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/rebasing-xyz/iocage-nexus-oss.git", 5 | "official": false, 6 | "properties": { 7 | "nat": 1, 8 | "nat_forwards": "tcp(8081:8081)" 9 | }, 10 | "pkgs": [ 11 | "openjdk8" 12 | ], 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "iocage-plugins": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "revision": 0 23 | } 24 | -------------------------------------------------------------------------------- /nxfilter.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nxfilter", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/xTITUSMAXIMUSX/iocage-plugin-nxfilter.git", 5 | "properties": { 6 | "allow_raw_sockets": "1", 7 | "boot": "on" 8 | }, 9 | "pkgs": [ 10 | "curl", 11 | "openjdk8-jre" 12 | ], 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "plugin-default": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "official": false 23 | } 24 | -------------------------------------------------------------------------------- /nzbget.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nzbget", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/Pauwelz/iocage-plugin-nzbget.git", 5 | "properties": { 6 | "nat": 1, 7 | "nat_forwards": "tcp(6789:6789)" 8 | }, 9 | "pkgs": [ 10 | "ca_root_nss" 11 | ], 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "iocage-plugins": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "revision": 0, 22 | "official": false 23 | } 24 | -------------------------------------------------------------------------------- /openspeedtest-server.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "OpenSpeedTest-Server", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/openspeedtest/iocage-plugin-OpenSpeedTest-Server.git", 5 | "properties": { 6 | "nat": 1, 7 | "nat_forwards": "tcp(8080:8080)" 8 | }, 9 | "pkgs": [ 10 | "nginx" 11 | ], 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "plugin-default": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "revision": 0 22 | } 23 | -------------------------------------------------------------------------------- /openvpn.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "OpenVPN", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/gitbulb/iocage-plugin-openvpn.git", 5 | "pkgs": [ 6 | "openvpn" 7 | ], 8 | "properties": { 9 | "allow_raw_sockets": 1, 10 | "dhcp": 1, 11 | "allow_tun": 1 12 | }, 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "plugin-default": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "official": false, 23 | "revision": 0 24 | } 25 | -------------------------------------------------------------------------------- /paperless-ngx.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "paperless-ngx", 3 | "plugin_schema": "2", 4 | "release": "13.2-RELEASE", 5 | "artifact": "https://github.com/tornadoracer/iocage-plugin-paperless-ngx.git", 6 | "properties": { 7 | "dhcp": 1 8 | }, 9 | "pkgs": [ 10 | "py39-pip", 11 | "py39-pikepdf", 12 | "py39-scikit-learn", 13 | "liberation-fonts-ttf", 14 | "imagemagick7", 15 | "zbar", 16 | "unpaper", 17 | "icc-profiles-adobe-cs4", 18 | "qpdf", 19 | "leptonica", 20 | "pngquant", 21 | "lzlib", 22 | "tesseract", 23 | "redis", 24 | "git", 25 | "mysql80-client", 26 | "mysql80-server", 27 | "py39-psycopg2", 28 | "cmake", 29 | "py39-scipy", 30 | "gcc", 31 | "rust", 32 | "gnupg", 33 | "py39-pyinotify", 34 | "py39-sqlite3", 35 | "py39-django42", 36 | "py39-celery", 37 | "py39-nltk", 38 | "libxml2", 39 | "libxslt", 40 | "expect" 41 | ], 42 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 43 | "fingerprints": { 44 | "iocage-plugins": [ 45 | { 46 | "function": "sha256", 47 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 48 | } 49 | ] 50 | }, 51 | "revision": 0 52 | } 53 | -------------------------------------------------------------------------------- /photoprism.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "photoprism", 3 | "release": "12.4-RELEASE", 4 | "artifact": "https://github.com/oridyn/iocage-plugin-photoprism", 5 | "official": false, 6 | "properties": { 7 | "vnet": 1, 8 | "dhcp": 1 9 | }, 10 | "pkgs": [ 11 | "avahi-app", 12 | "ffmpeg", 13 | "graphics/darktable", 14 | "graphics/rawtherapee", 15 | "libheif", 16 | "mariadb106-server", 17 | "nginx", 18 | "p5-Image-ExifTool" 19 | ], 20 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 21 | "fingerprints": { 22 | "iocage-plugins": [ 23 | { 24 | "function": "sha256", 25 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 26 | } 27 | ] 28 | }, 29 | "revision": 0 30 | } 31 | -------------------------------------------------------------------------------- /photoview.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "photoview", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/hellvesper/iocage-plugin-photoview", 5 | "official": false, 6 | "plugin_schema": "2", 7 | "properties": { 8 | "vnet": 1, 9 | "dhcp": 1 10 | }, 11 | "pkgs": [ 12 | "go", 13 | "git", 14 | "node19", 15 | "npm-node19", 16 | "pkgconf", 17 | "mariadb106-server", 18 | "ffmpeg", 19 | "darktable", 20 | "dlib-cpp", 21 | "lapack", 22 | "cblas" 23 | ], 24 | "packagesite": "https://pkg.freebsd.org/FreeBSD:13:amd64/latest", 25 | "fingerprints": { 26 | "iocage-plugins": [ 27 | { 28 | "function": "sha256", 29 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 30 | } 31 | ] 32 | }, 33 | "revision": 0 34 | } -------------------------------------------------------------------------------- /piwigo.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Piwigo", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/AfroUSApl/iocage-plugin-piwigo.git", 5 | "official": false, 6 | "properties": { 7 | "vnet": 1, 8 | "dhcp": 1 9 | }, 10 | "pkgs": [ 11 | "ImageMagick7-nox11", 12 | "git", 13 | "nginx", 14 | "mariadb105-server", 15 | "php80", 16 | "php80-exif", 17 | "php80-filter", 18 | "php80-gd", 19 | "php80-mbstring", 20 | "php80-mysqli", 21 | "php80-session", 22 | "php80-zip", 23 | "php80-zlib" 24 | ], 25 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 26 | "fingerprints": { 27 | "iocage-plugins": [ 28 | { 29 | "function": "sha256", 30 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 31 | } 32 | ] 33 | }, 34 | "revision": 0 35 | } 36 | -------------------------------------------------------------------------------- /privatebin.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "PrivateBin", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/ConorBeh/iocage-plugin-privatebin.git", 5 | "pkgs": [ 6 | "privatebin", 7 | "lighttpd", 8 | "ca_root_nss", 9 | "openssl" 10 | ], 11 | "properties": { 12 | "dhcp": 1 13 | }, 14 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 15 | "fingerprints": { 16 | "plugin-default": [ 17 | { 18 | "function": "sha256", 19 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 20 | } 21 | ] 22 | }, 23 | "official": false, 24 | "revision": 0 25 | } 26 | -------------------------------------------------------------------------------- /prowlarr.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Prowlarr", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/jasker5183/iocage-plugin-prowlarr.git", 5 | "official": false, 6 | "properties": { 7 | "allow_mlock": 1, 8 | "nat": 1, 9 | "nat_forwards": "tcp(9696:9696)" 10 | }, 11 | "pkgs": [ 12 | "prowlarr" 13 | ], 14 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 15 | "fingerprints": { 16 | "iocage-plugins": [ 17 | { 18 | "function": "sha256", 19 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 20 | } 21 | ] 22 | }, 23 | "revision": 0 24 | } 25 | -------------------------------------------------------------------------------- /pull_request_template.md: -------------------------------------------------------------------------------- 1 | Thank you for your submission to the FreeNAS community plugins repository! 2 | 3 | Please ensure the following guidelines are met when submitting a new Plugin. 4 | 5 | 1. Add the entry to INDEX in alphabetical order 6 | 2. Includes a new icon in the ./icon/ directory 7 | 3. Ensure the submitted icon file is a valid PNG that is 128x128 in size 8 | 4. Add new plugin cirrus task -------------------------------------------------------------------------------- /qbittorrent.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "qbittorrent", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-qbittorrent.git", 5 | "official": false, 6 | "properties": { 7 | "dhcp": 1 8 | }, 9 | "pkgs": [ 10 | "qbittorrent-nox", 11 | "lang/python3" 12 | ], 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "iocage-plugins": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "revision": 0 23 | } 24 | -------------------------------------------------------------------------------- /quasselcore.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Quasselcore", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-quassel.git", 5 | "properties": { 6 | "nat": 1, 7 | "nat_forwards": "tcp(4242:4242)" 8 | }, 9 | "pkgs": [ 10 | "quassel-core" 11 | ], 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "iocage-plugins": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "official": false 22 | } 23 | -------------------------------------------------------------------------------- /rabbitmq.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "rabbitmq", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/fadushin/iocage-plugin-rabbitmq.git", 5 | "pkgs": [ 6 | "rabbitmq" 7 | ], 8 | "properties": { 9 | "nat": 1, 10 | "nat_forwards": "tcp(5672:5672),tcp(15672:15672)" 11 | }, 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "plugin-default": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "official": false, 22 | "revision": 0 23 | } 24 | -------------------------------------------------------------------------------- /radarr.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "radarr", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-radarr.git", 5 | "official": false, 6 | "properties": { 7 | "allow_mlock": 1, 8 | "nat": 1, 9 | "nat_forwards": "tcp(7878:7878)" 10 | }, 11 | "pkgs": [ 12 | "radarr" 13 | ], 14 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 15 | "fingerprints": { 16 | "iocage-plugins": [ 17 | { 18 | "function": "sha256", 19 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 20 | } 21 | ] 22 | }, 23 | "revision": 0 24 | } 25 | -------------------------------------------------------------------------------- /readarr.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "readarr", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/pigfrown/iocage-plugin-readarr.git", 5 | "official": false, 6 | "properties": { 7 | "allow_mlock": 1, 8 | "nat": 1, 9 | "nat_forwards": "tcp(8787:8787)" 10 | }, 11 | "pkgs": [ 12 | "readarr" 13 | ], 14 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 15 | "fingerprints": { 16 | "iocage-plugins": [ 17 | { 18 | "function": "sha256", 19 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 20 | } 21 | ] 22 | }, 23 | "revision": 0 24 | } 25 | -------------------------------------------------------------------------------- /redis.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Redis", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/kennedyoliveira/iocage-redis-plugin", 5 | "properties": { 6 | "dhcp": 1 7 | }, 8 | "pkgs": [ 9 | "gmake", 10 | "gcc11-devel" 11 | ], 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "plugin-default": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "official": false 22 | } 23 | -------------------------------------------------------------------------------- /rslsync.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "rslsync", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/brianannis/iocage-plugin-rslsync.git", 5 | "properties": { 6 | "nat": 1, 7 | "nat_forwards": "tcp(8888:8888)" 8 | }, 9 | "pkgs": [ 10 | "ca_root_nss" 11 | ], 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "iocage-plugins": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "official": false, 22 | "revision": 0 23 | } 24 | -------------------------------------------------------------------------------- /rtorrent-flood.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "rtorrent-flood", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/pierrickrouxel/iocage-plugin-rtorrent-flood.git", 5 | "pkgs": [ 6 | "tmux", 7 | "rtorrent", 8 | "openvpn", 9 | "git", 10 | "python3", 11 | "node", 12 | "npm-node18" 13 | ], 14 | "properties": { 15 | "allow_raw_sockets": 1, 16 | "allow_tun": 1, 17 | "dhcp": 1 18 | }, 19 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/quarterly", 20 | "fingerprints": { 21 | "iocage-plugins": [ 22 | { 23 | "function": "sha256", 24 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 25 | } 26 | ] 27 | }, 28 | "official": false, 29 | "revision": 0 30 | } 31 | -------------------------------------------------------------------------------- /sabnzbd.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "sabnzbd", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/ConorBeh/iocage-plugin-sabnzbd.git", 5 | "properties": { 6 | "nat": 1, 7 | "nat_forwards": "tcp(8080:8090)" 8 | }, 9 | "pkgs": [ 10 | "sabnzbdplus" 11 | ], 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "plugin-default": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "revision": 0 22 | } 23 | -------------------------------------------------------------------------------- /sickchill.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "SickChill", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/ix-plugin-hub/iocage-plugin-sickchill.git", 5 | "pkgs": [ 6 | "git", 7 | "python3", 8 | "python39", 9 | "py39-pip", 10 | "py39-setuptools", 11 | "py39-sqlite3", 12 | "py39-pillow", 13 | "py39-virtualenv", 14 | "unrar", 15 | "ca_root_nss", 16 | "libmediainfo", 17 | "libxslt", 18 | "libxml2", 19 | "rust" 20 | ], 21 | "properties": { 22 | "nat": 1, 23 | "nat_forwards": "tcp(8081:8081)" 24 | }, 25 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 26 | "fingerprints": { 27 | "iocage-plugins": [ 28 | { 29 | "function": "sha256", 30 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 31 | } 32 | ] 33 | }, 34 | "official": false, 35 | "revision": 0 36 | } 37 | -------------------------------------------------------------------------------- /sonarr.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Sonarr", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-sonarr.git", 5 | "official": false, 6 | "pkgs": [ 7 | "sonarr" 8 | ], 9 | "properties": { 10 | "allow_mlock": 1, 11 | "allow_sysvipc": 1, 12 | "nat": 1, 13 | "nat_forwards": "tcp(8989:8989)" 14 | }, 15 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 16 | "fingerprints": { 17 | "iocage-plugins": [ 18 | { 19 | "function": "sha256", 20 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 21 | } 22 | ] 23 | }, 24 | "revision": 0 25 | } 26 | -------------------------------------------------------------------------------- /tautulli.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Tautulli", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/dropsignal/iocage-plugin-tautulli.git", 5 | "official": false, 6 | "pkgs": [ 7 | "lang/python", 8 | "py39-sqlite3", 9 | "py39-openssl", 10 | "security/ca_root_nss", 11 | "git" 12 | ], 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "iocage-plugins": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "revision": 0 23 | } 24 | -------------------------------------------------------------------------------- /template/README.md: -------------------------------------------------------------------------------- 1 | # Iocage Plugin Artifact Template 2 | 3 | This is an example of what a typical plugin "artifact" git repo will contain. 4 | 5 | Artifacts are where 3rd party scripts and settings are stored for a particular plugin. 6 | 7 | They allow you do run Post Install actions, which are often required to enable 8 | specific services or perform other post package setup. 9 | 10 | # File Documentation 11 | 12 | - `post_install.sh` 13 | 14 | This script is run *inside* the jail after it has been created and packages installed. 15 | 16 | Typically you will enable services in /etc/rc.conf that need to start with the jail startup, 17 | apply configuration settings, etc. 18 | 19 | 20 | - `ui.json` 21 | 22 | Json file that accepts the following key/value options: 23 | 24 | - `adminportal : "http://%%IP%%/"` 25 | 26 | Plugin's web-interface for control / configuration. %%IP%% will be replaced dynamically withe the jails IP address. 27 | 28 | - `overlay/` 29 | 30 | Directory of files that will be copied on top of the jail post-install. I.E. usr/local/bin/myfile will 31 | be placed in the jails /usr/local/bin/myfile location. Can be used to supply custom files / configuration 32 | data, scripts and more. 33 | 34 | - `settings.json` 35 | 36 | JSON file which controls plugins settings interface (Both iocage CLI and GUI of TrueOS / FreeNAS) 37 | 38 | The required fields include: 39 | 40 | - `"servicerestart" : "service plexmediaserver restart"` 41 | 42 | Command to run when restarting service after changing settings 43 | 44 | - `"serviceget" : "/usr/local/bin/myget"` 45 | 46 | Points to the command used to get values for plugin configuration. Usually will be provided by the plugin creator, can be any language as long as it takes a single "key" argument, and returns the setting text. 47 | 48 | - `"serviceset" : "/usr/local/bin/myset"` 49 | 50 | Points to the command used to set values for plugin configuration. Will be provided by the plugin creator, can be any language as long as it accepts two arguments for key/value pair. 51 | 52 | - `"options": { }` 53 | 54 | The following subsection will contain arrays of elements, starting with the "key" name and required arguments 55 | for that particular type of setting. Example: 56 | 57 | 58 | ``` 59 | "options": { 60 | "adduser": { 61 | "type": "add", 62 | "name": "Add User", 63 | "description": "Add new quasselcore user", 64 | "requiredargs": { 65 | "username": { 66 | "type": "string", 67 | "description": "Quassel Client Username" 68 | }, 69 | "password": { 70 | "type": "password", 71 | "description": "Quassel Client Password" 72 | }, 73 | "fullname": { 74 | "type": "string", 75 | "description": "Quassel Client Full Name" 76 | } 77 | }, 78 | "optionalargs": { 79 | "adminuser": { 80 | "type": "bool", 81 | "description": "Can this user administrate quasselcore?" 82 | } 83 | } 84 | }, 85 | "port": { 86 | "type": "int", 87 | "name": "Quassel Core Port", 88 | "description": "Port for incoming quassel connections", 89 | "range": "1024-32000", 90 | "default": "4242", 91 | "requirerestart": true 92 | }, 93 | "sslmode": { 94 | "type": "bool", 95 | "name": "SSL Only", 96 | "description": "Only accept SSL connections", 97 | "default": true, 98 | "requirerestart": true 99 | 100 | }, 101 | "ssloption": { 102 | "type": "combo", 103 | "name": "SSL Options", 104 | "description": "SSL Connection Options", 105 | "requirerestart": true, 106 | "default": "tlsallow", 107 | "options": { 108 | "tlsrequire": "Require TLS", 109 | "tlsallow": "Allow TLS", 110 | "tlsdisable": "Disable TLS" 111 | } 112 | }, 113 | "deluser": { 114 | "type": "delete", 115 | "name": "Delete User", 116 | "description": "Remove a quasselcore user" 117 | } 118 | 119 | } 120 | ``` 121 | -------------------------------------------------------------------------------- /template/overlay/usr/local/bin/quasselget: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | get_port() 4 | { 5 | while [ $# -gt 0 ] 6 | do 7 | if [ "$1" = "-p" ] ; then 8 | shift 9 | port="$1" 10 | break 11 | fi 12 | shift 13 | done 14 | if [ -z "$port" ] ; then 15 | port="4242" 16 | fi 17 | echo "$port" 18 | } 19 | 20 | get_sslmode() 21 | { 22 | while [ $# -gt 0 ] 23 | do 24 | echo "$1" | grep -q "require-ssl" 25 | if [ $? -eq 0 ] ; then 26 | ssl="true" 27 | break 28 | fi 29 | shift 30 | done 31 | if [ -z "$ssl" ] ; then 32 | ssl="false" 33 | fi 34 | echo "$ssl" 35 | } 36 | 37 | get_ssloption() 38 | { 39 | # Bogus value 40 | echo "tlsallow" 41 | } 42 | 43 | get_users() 44 | { 45 | # Quasselcore is somewhat stupid and doesn't let you 46 | # list or delete users, keeping this here for example purposes 47 | echo "NA" 48 | } 49 | 50 | # Stub for something which gets quasselsettings 51 | case $1 in 52 | port) serviceflags=`sysrc -n -f /etc/rc.conf quasselcore_args` 53 | get_port $serviceflags ;; 54 | sslmode) serviceflags=`sysrc -n -f /etc/rc.conf quasselcore_args` 55 | get_sslmode $serviceflags ;; 56 | ssloption) get_ssloption ;; 57 | deluser) get_users ;; 58 | *) echo "Unknown option" ;; 59 | esac 60 | -------------------------------------------------------------------------------- /template/overlay/usr/local/bin/quasselset: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set_port() 4 | { 5 | newargs="" 6 | while [ $# -gt 0 ] 7 | do 8 | if [ "$1" = "-p" ] ; then 9 | shift 10 | shift 11 | continue 12 | fi 13 | newargs="$newargs $1" 14 | shift 15 | done 16 | newargs="$newargs -p $NEWPORT" 17 | sysrc -f /etc/rc.conf quasselcore_args="$newargs" 18 | exit 0 19 | } 20 | 21 | set_sslmode() 22 | { 23 | newargs="" 24 | while [ $# -gt 0 ] 25 | do 26 | if [ "$1" = "--require-ssl" ] ; then 27 | shift 28 | continue 29 | fi 30 | newargs="$newargs $1" 31 | shift 32 | done 33 | if [ "$NEWSSLMODE" = "true" ] ; then 34 | newargs="$newargs --require-ssl" 35 | fi 36 | sysrc -f /etc/rc.conf quasselcore_args="$newargs" 37 | exit 0 38 | 39 | } 40 | 41 | set_ssloption() 42 | { 43 | # Bogus value 44 | echo "tlsallow" 45 | } 46 | 47 | adduser() 48 | { 49 | # Retarded how you add users to quassel 50 | # Example only 51 | printf "$1\n$2\n$2\n" | quasselcore --configdir=/var/db/quassel --add-user 52 | } 53 | 54 | # Stub for something which sets quasselsettings 55 | case $1 in 56 | port) serviceflags=`sysrc -n -f /etc/rc.conf quasselcore_args` 57 | NEWPORT="$2" 58 | set_port $serviceflags ;; 59 | sslmode) serviceflags=`sysrc -n -f /etc/rc.conf quasselcore_args` 60 | NEWSSLMODE="$2" 61 | set_sslmode $serviceflags ;; 62 | ssloption) set_ssloption ;; 63 | adduser) adduser "$2" "$3" ;; 64 | *) echo "Unknown option" ;; 65 | esac 66 | -------------------------------------------------------------------------------- /template/post_install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | : ${quasselcore_data="/var/db/quasselcore"} 4 | : ${quasselcore_log="/var/log/quasselcore.log"} 5 | : ${quasselcore_listen="0.0.0.0,::"} 6 | 7 | # Enable the service 8 | sysrc -f /etc/rc.conf quasselcore_args="--configdir=${quasselcore_data} --logfile=${quasselcore_log} --listen=${quasselcore_listen} --ssl-cert=${quasselcore_data}/quasselCert.pem --require-ssl" 9 | sysrc -f /etc/rc.conf quasselcore_enable="YES" 10 | 11 | # Make the default DB dir 12 | mkdir -p /var/db/quasselcore 13 | chown quasselcore:quasselcore /var/db/quasselcore 14 | 15 | # Gen the SSL key 16 | printf "\n\n\n\n\n\n\n\n\n\n" | /usr/local/etc/rc.d/quasselcore onekeygen 2>/dev/null >/dev/null 17 | 18 | # Start the service 19 | if $(service quasselcore start 2>/dev/null >/dev/null) ; then 20 | echo "Starting quasselcore." 21 | fi 22 | -------------------------------------------------------------------------------- /template/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "servicerestart":"service quasselcore restart", 3 | "serviceget": "/usr/local/bin/quasselget", 4 | "serviceset": "/usr/local/bin/quasselset", 5 | "options": { 6 | "adduser": { 7 | "type": "add", 8 | "name": "Add User", 9 | "description": "Add new quasselcore user", 10 | "requiredargs": { 11 | "username": { 12 | "type": "string", 13 | "description": "Quassel Client Username" 14 | }, 15 | "password": { 16 | "type": "password", 17 | "description": "Quassel Client Password" 18 | }, 19 | "fullname": { 20 | "type": "string", 21 | "description": "Quassel Client Full Name" 22 | } 23 | }, 24 | "optionalargs": { 25 | "adminuser": { 26 | "type": "bool", 27 | "description": "Can this user administrate quasselcore?" 28 | } 29 | } 30 | }, 31 | "port": { 32 | "type": "int", 33 | "name": "Quassel Core Port", 34 | "description": "Port for incoming quassel connections", 35 | "range": "1024-32000", 36 | "default": "4242", 37 | "requirerestart": true 38 | }, 39 | "sslmode": { 40 | "type": "bool", 41 | "name": "SSL Only", 42 | "description": "Only accept SSL connections", 43 | "default": true, 44 | "requirerestart": true 45 | 46 | }, 47 | "ssloption": { 48 | "type": "combo", 49 | "name": "SSL Options", 50 | "description": "SSL Connection Options", 51 | "requirerestart": true, 52 | "default": "tlsallow", 53 | "options": { 54 | "tlsrequire": "Require TLS", 55 | "tlsallow": "Allow TLS", 56 | "tlsdisable": "Disable TLS" 57 | } 58 | }, 59 | "deluser": { 60 | "type": "delete", 61 | "name": "Delete User", 62 | "description": "Remove a quasselcore user" 63 | } 64 | 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /template/ui.json: -------------------------------------------------------------------------------- 1 | { 2 | "adminportal": "http://%%IP%%:32400/web" 3 | } 4 | -------------------------------------------------------------------------------- /torr-server.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "TorrServer", 3 | "plugin_schema": "2", 4 | "release": "13.1-RELEASE", 5 | "artifact": "https://github.com/filka96/iocage-plugin-TorrServer.git", 6 | "properties": { 7 | "boot": 1, 8 | "bpf": 1, 9 | "dhcp": 1, 10 | "vnet": 1 11 | }, 12 | "pkgs": [], 13 | "packagesite": "http://pkg.freebsd.org/${ABI}/latest", 14 | "fingerprints": { 15 | "iocage-plugins": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "revision": 0, 23 | "official": false 24 | } 25 | -------------------------------------------------------------------------------- /transmission.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Transmission", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-transmission.git", 5 | "official": false, 6 | "properties": { 7 | "nat": 1, 8 | "nat_forwards": "tcp(9091:9091)" 9 | }, 10 | "pkgs": [ 11 | "transmission-daemon", 12 | "transmission-web" 13 | ], 14 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 15 | "fingerprints": { 16 | "iocage-plugins": [ 17 | { 18 | "function": "sha256", 19 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 20 | } 21 | ] 22 | }, 23 | "revision": 0 24 | } 25 | -------------------------------------------------------------------------------- /unificontroller.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "unificontroller", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/lbalker/iocage-plugin-unificontroller.git", 5 | "properties": { 6 | "nat": 1, 7 | "nat_forwards": "tcp(8443:8444),udp(3478:3478),tcp(8080:8080),tcp(6789:6789),udp(10001:10001),udp(1900:1900)" 8 | }, 9 | "pkgs": [ 10 | "unifi7" 11 | ], 12 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 13 | "fingerprints": { 14 | "iocage-plugins": [ 15 | { 16 | "function": "sha256", 17 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 18 | } 19 | ] 20 | }, 21 | "official": false, 22 | "revision": 0 23 | } 24 | -------------------------------------------------------------------------------- /urbackup.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "UrBackup", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/Tostis/iocage-plugin-urbackup", 5 | "pkgs": [ 6 | "wget", 7 | "curl" 8 | ], 9 | "properties": { 10 | "nat": 1, 11 | "nat_forwards": "tcp(55414:55414)" 12 | }, 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "plugin-default": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "official": false, 23 | "revision": 1 24 | } -------------------------------------------------------------------------------- /vault.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Vault", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/marblenix/iocage-plugin-vault.git", 5 | "pkgs": [ 6 | "vault", 7 | "jq", 8 | "moreutils" 9 | ], 10 | "properties": { 11 | "dhcp": 1 12 | }, 13 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 14 | "fingerprints": { 15 | "plugin-default": [ 16 | { 17 | "function": "sha256", 18 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 19 | } 20 | ] 21 | }, 22 | "official": false, 23 | "revision": 0 24 | } 25 | -------------------------------------------------------------------------------- /weechat.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "weechat", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-weechat.git", 5 | "properties": { 6 | "nat": 1 7 | }, 8 | "pkgs": [ 9 | "weechat" 10 | ], 11 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 12 | "fingerprints": { 13 | "iocage-plugins": [ 14 | { 15 | "function": "sha256", 16 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 17 | } 18 | ] 19 | }, 20 | "official": false, 21 | "revision": 0 22 | } 23 | -------------------------------------------------------------------------------- /xmrig.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "xmrig", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-xmrig.git", 5 | "properties": { 6 | "nat": 1 7 | }, 8 | "pkgs": [ 9 | "xmrig" 10 | ], 11 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 12 | "fingerprints": { 13 | "iocage-plugins": [ 14 | { 15 | "function": "sha256", 16 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 17 | } 18 | ] 19 | }, 20 | "official": false, 21 | "revision": 0 22 | } 23 | -------------------------------------------------------------------------------- /zabbixserver.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "zabbix server", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/xTITUSMAXIMUSX/iocage-plugin-zabbix6-server.git", 5 | "properties": { 6 | "allow_raw_sockets": "1", 7 | "boot": "on" 8 | }, 9 | "pkgs": [ 10 | "mysql80-server", 11 | "zabbix6-server", 12 | "zabbix6-agent", 13 | "zabbix6-frontend-php81", 14 | "nginx" 15 | ], 16 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 17 | "fingerprints": { 18 | "plugin-default": [ 19 | { 20 | "function": "sha256", 21 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 22 | } 23 | ] 24 | }, 25 | "official": false 26 | } 27 | -------------------------------------------------------------------------------- /zoneminder.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Zoneminder", 3 | "release": "13.1-RELEASE", 4 | "artifact": "https://github.com/freenas/iocage-plugin-zoneminder.git", 5 | "official": false, 6 | "properties": { 7 | "dhcp": 1 8 | }, 9 | "pkgs": [ 10 | "zoneminder", 11 | "fcgiwrap", 12 | "nginx", 13 | "mysql57-server" 14 | ], 15 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 16 | "fingerprints": { 17 | "iocage-plugins": [ 18 | { 19 | "function": "sha256", 20 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 21 | } 22 | ] 23 | }, 24 | "revision": 0 25 | } 26 | -------------------------------------------------------------------------------- /zrepl.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "zrepl", 3 | "release": "13.2-RELEASE", 4 | "artifact": "https://github.com/johnramsden/iocage-plugin-zrepl.git", 5 | "official": false, 6 | "properties": { 7 | "nat": 1, 8 | "jail_zfs": "on", 9 | "jail_zfs_mountpoint": "none" 10 | }, 11 | "pkgs": [ 12 | "zrepl" 13 | ], 14 | "packagesite": "http://pkg.FreeBSD.org/${ABI}/latest", 15 | "fingerprints": { 16 | "iocage-plugins": [ 17 | { 18 | "function": "sha256", 19 | "fingerprint": "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438" 20 | } 21 | ] 22 | }, 23 | "revision": 0 24 | } 25 | --------------------------------------------------------------------------------