Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

coppit

Community Developer
  • Joined

  • Last visited

Everything posted by coppit

  1. It seems like the workaround is simple: Specify the output dir within your cache drive, and let mover handle moving it later. Of course FileBot is going to write to the output dir, but from the docker container's perspective it can't control what unraid does with that write, or even that unraid exists. This seems like a general unraid<->docker issue that's not related to filebot. To confirm, you could modify your other containers to also use /mnt/user/... and I bet you'll see the same spin-up behavior. I wonder for example if Docker's volume mapping somehow bypasses or interferes with unraid's cache drive implementation?
  2. I've created a container with a UI. I'm looking for feedback. I've updated the top post with info. It's also available via the "community applications" plugin UI.
  3. I keep my incomplete files in a separate directory. The change detection only triggers for new directories, files that were open for writing and have been closed, and for files moved into the directory. Opening or writing to a file doesn't trigger it, nor does reading a file. However, some other file in the directory could get written, causing FileBot to run on the whole thing. I don't know if filebot is smart enough to detect when files have opened file handles to them. The safest thing would be to go from incomplete -> complete -> sorted, where complete is FileBot's input, and sorted is its output.
  4. Yeah, I guess it should be filebot-cli or something. It's meant to be no-touch. You could compare the input and output directories, I suppose. I've found UIs in docker containers to be really clunky (web UIs being the exception, of course). If I have some time I'll take a look at a UI, but I wouldn't count on it.
  5. Looking for feedback on a FileBot container: http://lime-technology.com/forum/index.php?topic=40400.0
  6. THIS CONTAINER IS NO LONGER SUPPORTED. PLEASE USE DJOSS' CONTAINER INSTEAD. (Or Sonarr, which is a more comprehensive solution.) FileBot is an automated file renamer and metadata fetcher. Note: I used to have separate UI and non-UI containers. They have now been merged into one container that supports both methods of use. THE UI IS DISABLED BY DEFAULT. To enable it, edit your filebot.conf, setting RUN_UI=true. Then restart the container. You can use this container in automated mode, where you configure FileBot, and then drop files into a "watch dir" that will automatically be converted. Or you can use it in UI mode, where you can either use a remote desktop client or a web browser to use the UI. For more information on usage: https://hub.docker.com/r/coppit/filebot/ For source code: https://github.com/coppit/docker-filebot This container is part of my template repository: https://github.com/coppit/docker-templates Breaking change on June 26, 2016 In order to fix the automated FileBot so that it creates files with nobody:users ownership instead of root:root, I had to change a few things. Unfortunately existing users will need to do a few things to migrate their config files and containers to the new image: Click on your container, then the "Advanced" button in the top right, and add new environment variables: "USER_ID=99", "GROUP_ID=100", and "UMASK=0000" Run "chown nobody:users /path/to/config/*" When you first run it, it will exit and complain in the logs about a filebot.sh version change. You'll need to edit your filebot.sh, bumping the version number to 2 and changing /root to /files
  7. I too would be interested in Blue Iris, perhaps interested enough to try building the container myself.
  8. By request, here's a container for keeping your IP up-to-date using No-IP: https://registry.hub.docker.com/u/coppit/no-ip/ The easiest way to install this is to go to Community Applications, search for "coppit" then select the No-Ip container. Searching for "no ip" or "no-ip" won't work because the search ignores short words. Searching for "noip" might find it. But thankfully my name "coppit" is pretty unique. Note: On July 12 2015 the config file format changed. As described in the webpage above, running it will create a noip.conf file that will need to be edited. You can delete the noip2.conf file.
  9. There was a request earlier for transmission+flexget. gfjardim's transmission works fine for me: docker run -d --net=host -v /path/to/transmission/config:/config -v /path/to/transmission/downloads:/downloads gfjardim/transmission For flexget: docker run -d -v /path/to/transmission/complete:/media -v /path/to/flexget/data:/data -v /path/to/flexget/config:/config -v /etc/localtime:/etc/localtime:ro binhex/arch-flexget
  10. You said you fixed it by setting the log file properly. Can you elaborate? Do you mean that vboxwebsrv wasn't running because of the incorrect log file? For me, it's running according to the log file, but I still get the error above. From my log: 00:00:00.016569 SQPmp Socket connection successful: host = 127.0.0.1, port = 18083, master socket = 12
  11. I had the same problem. Extra changes for your lighttpd config: - Uncomment the fastcgi.server section, and change lighttpd/php-fastcgi.socket to lighttpd-php-fastcgi.socket. Also change bin-path to /usr/bin/php-cgi - Uncomment the mod_fastcgi line AFAICT "lighttpd stop" doesn't actually work. So I did "ps aux | grep lighttpd" to find the PID and kill it, then launched it again. I now get a login prompt. Your instructions were very good. Thanks for that!
  12. Ah. I also noticed the -a flag, which allows me to exclude well enough: /boot/cache_dirs -i Media -d 10 -w -s -a "-name Backups -prune -o -name Other -prune -o -name Books -prune -o -name Audiobooks -prune -o -name Pictures -prune -o -name 'Guitar Tab' -prune -o -name Software -prune -o"
  13. Hi Joe, First, kudos on the script. You have more patience with shell scripting than me. One idea for supporting more powerful exclusions is to use "rsync --list-only" instead of find to do the cache loading. That way you could just pass the include/exclude commands directly to rsync. They can be a little... finicky... but a few examples would probably address most of that.
  14. Hi everyone, I tried setting up rsync for automatic backups of my Mac prior to Leopard's Time Machine. Here are my notes: Setup rsync on the server: 1. In /boot/config/go, add: rsync --daemon --config=/boot/config/rsyncd.conf 2. Edit /boot/config/rsyncd.conf: gid = root uid = root log file = /var/log/resyncd.log [backups] path = /mnt/disk1/Backups comment = read only = no list = yes Also, I ported a C program to do exponential backup rotation to bash, since I didn't have an easy way to compile it for unraid: #!/bin/sh VERSION=2.20 # This is a bash version of John C. Bowman's C++ program powershift, # distributed with rlbackup. There are two functional differences: This # version includes the delimiter with the directory or file base, and this # version does not retain the access and modification times of rotated files # and directories. The original C++ code is copyright John C. Bowman. This # code is copyright David Coppit. # Syntax: powershift directory_or_file_base [n] # # Generate a geometric progression of backup files or directories by # retaining, after the first n (>= 2) backups, only every every second backup, # then every fourth backup, and so on, for each successive power of 2 (except # for intermediate files necessary to accomplish this). # # Path are constructed from the first argument concatenated with a number # generated by this program. New backups should be placed into the rotation as # a concatenated file ending with "0". # # EXAMPLE #1: DIRECTORIES # # For the default value of n=2, successive applications of # # mkdir -p dir/0; powershift 'dir/' # # will shift dir/i to dir/i+1 for i=0,1,2,... while retaining (along with # necessary intermediate files) only the sequence # # dir/1 dir/2 dir/4 dir/8 dir/16 dir/32 dir/64... # # EXAMPLE #2: FILES # # The command # # echo > name.log0; powershift name.log 4 # # will retain (disregarding intermediate files) # # name.log1 name.log2 name.log3 name.log4 name.log6 name.log10 name.log18 # name.log34 name.log66... # # This program is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License version 2 as published by # the Free Software Foundation. # # This program is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for # more details. # # You should have received a copy of the GNU General Public License along with # this program; if not, write to the Free Software Foundation, Inc., 675 Mass # Ave, Cambridge, MA 02139, USA. function stagger() { let RESULT="$1 + ( $1 >> 1 )"; } function file_name() { local SUM; let SUM=$1+$OFFSET; RESULT="$FILESTEM$SUM"; } # First arg is the message # Second arg is a file path relative to the current directory function fatal_error() { local MESSAGE=$1; if (( $# == 2 )); then MESSAGE="$MESSAGE "`pwd`; if [ -n $2 ]; then MESSAGE="$MESSAGE/"; fi MESSAGE="$MESSAGE$2"; fi echo "$MESSAGE: $?" 1>&2; exit 1; } function recursive_delete() { if ! rm -rf $1 2>/dev/null; then fatal_error "Cannot remove" $1; fi; } # The original C++ version fixed up the modified time so that it didn't change # after the rename. We can't do that in bash, unfortunately function rename() { mv $1 $2; } function power() { local I=$1; local STAGGER_I_FILENAME; local N; local N_FILENAME; local I_FILENAME; stagger $I; file_name $RESULT; STAGGER_I_FILENAME=$RESULT; if [ -e $STAGGER_I_FILENAME ]; then let "SHIFTED=$1 << 1"; power $SHIFTED; N=$RESULT; let "I=$N >> 1"; stagger $I; file_name $RESULT; STAGGER_I_FILENAME=$RESULT; if [ -e $STAGGER_I_FILENAME ]; then file_name $N; N_FILENAME=$RESULT; rename $STAGGER_I_FILENAME $N_FILENAME; fi file_name $I; recursive_delete $RESULT; else file_name $I; I_FILENAME=$RESULT; if [ -e $I_FILENAME ]; then rename $I_FILENAME $STAGGER_I_FILENAME; fi fi RESULT=$I; } function powershift() { FILESTEM=$1; if (( $# > 1 )); then N=$2; else N=2; fi if (( $N < 2 )); then echo "n must be >= 2" 1>&2; exit 1; fi let OFFSET=$N-2; file_name -$OFFSET; OFFSET_FILENAME=$RESULT; if [ -e $OFFSET_FILENAME ]; then touch $OFFSET_FILENAME; # Timestamp the latest backup; power 2; for (( I=2; I >= -$OFFSET; I-- )); do file_name $I; I_FILENAME=$RESULT; let "IPLUSONE=$I+1"; file_name $IPLUSONE; IPLUSONE_FILENAME=$RESULT; if [ -e $I_FILENAME ]; then rename $I_FILENAME $IPLUSONE_FILENAME; fi done fi } if (( $# == 0 )) || (( $# > 2 )); then echo "Usage: $0 directory [n]" 1>&2; exit 1; fi; powershift $@ I hope this helps someone. I got it working except I was having errors during the rsync, which I reported. I didn't follow up because I went with Time Machine because it "just works".

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.