RobJ Posted March 2, 2009 Share Posted March 2, 2009 At boot, it could be exported as UNRAID_VERSION. Quote Link to comment
bubbaQ Posted March 2, 2009 Author Share Posted March 2, 2009 Dependencies... dependencies... First rule of unWeb: No dependencies! (other than emhttp and stock unRAID). So far, parsing the live HTML from the emhttp interface is the only choice. Quote Link to comment
NAS Posted March 2, 2009 Share Posted March 2, 2009 At boot, it could be exported as UNRAID_VERSION. That make the assumption that it is installed on day one which you cannot make. Dependencies... dependencies... First rule of unWeb: No dependencies! (other than emhttp and stock unRAID). So far, parsing the live HTML from the emhttp interface is the only choice. Agreed. There was a feature request a while back for a version file which unRAID really should have. Like most things its never materialized but it should be requested again. A better way than parsing emHTTP would be to check the md5 of a stock unRAID file since it doesn't rely on a daemon being available and removes one more dependency. Quote Link to comment
bubbaQ Posted March 2, 2009 Author Share Posted March 2, 2009 check the md5 of a stock unRAID file However, I use multiple emhttp executibles, based on different versions... and the script will only be able to detect KNOWN versions, in a fixed path. Parsing the html is still a better solution... and it ain't so bad. The only negative is that it only provides info if emhttp is loaded and working.... but it if ain't, you can't get unraid info anyway. Quote Link to comment
bubbaQ Posted March 3, 2009 Author Share Posted March 3, 2009 A wee bit of a sticky wicket. If you have a root password, php can't query the HTML unless it knows the userID and password. So the Portal will need your root password if you have one set. Quote Link to comment
bubbaQ Posted March 3, 2009 Author Share Posted March 3, 2009 I have a workaround... I can append a child node of a hidden iframe to the DOM, and src it to the url for the running emhttp process. This will solve the x-site scripting issue, and if the user has a root pw, they will get the standard browser login dialog. Once the iframe loads, an on-load event will fire to let the parent know it is loaded, and then the contents can be scraped by the parent, and the child node deleted. It is a bit of a pain, but it will work and it is transparent to the user. Once Tom has an enhanced /proc/mdcmd interface, I can convert to that easily and all existing code will still function. Quote Link to comment
bubbaQ Posted March 3, 2009 Author Share Posted March 3, 2009 I am working on the extension-manager and how extensions are packaged/distributed/installed. I plan to have it working in the next release. Here's what I am planning so far: - write your extension in its own home directory - create the extension.dat file in your extension home. - create a "do_install.sh" script in your extension home if needed. - create a "do_upgrade.sh" script in your extension home if needed. When an extension is installed/upgraded, the extension-manager will unzip the zip file, and then run the appropriate script (if it exists). I have added this info to the documentation in the wiki. Quote Link to comment
bubbaQ Posted March 5, 2009 Author Share Posted March 5, 2009 Version 0.0.6 is now posted. - Extension manager is cleaned up. - Reworked logic on getting drive temps. - added the content to the "About" tab - cleaned up tabs - Curl and libraries are also included, since php needed them to do background downloading. I've gotten a lot of the underlying management code done. Joe was kind enough to do some work and find some bugs in the user config file code, so that will be the next target. Quote Link to comment
NLS Posted March 5, 2009 Share Posted March 5, 2009 Is there some target set for unRAID-Web to reach before it gets in next BubbaRAID? Quote Link to comment
bubbaQ Posted March 5, 2009 Author Share Posted March 5, 2009 Yes, it has to be a stable development platform. About another week. Then I add it to BubbaRaid and convert the BubbaRaid portal. Quote Link to comment
bubbaQ Posted March 5, 2009 Author Share Posted March 5, 2009 Version 0.0.07 is posted. Link is in OP. New: ======================= - vastly improved config manager code (thanks to Joe) - the Custom Interface now indicates if files are open in the main interface page. This version also has the first button to talk directly to unRAID... to reset the statistics counters. More can be added fairly easily now. Still need to do more bounds checking, error traping, and documenting in the code, but it's getting there. Quote Link to comment
dhy8386 Posted March 6, 2009 Share Posted March 6, 2009 On the custom interface page, i imagine the little folder icons are to allow you to view the contents of each disk correct? I keep getting an error that the disk cannot be found (tower:89/disk1 cannot be found). Any ideas why? Also, any limitations on the main custom page as to how the data can be presented? Do you have to use a table format? Or could you use a more graphic intensive layout? I know thats probably not the focus now but have a few ideas that i thought id shoot your way Quote Link to comment
bubbaQ Posted March 6, 2009 Author Share Posted March 6, 2009 I keep getting an error that the disk cannot be found (tower:89/disk1 cannot be found). Any ideas why? Ooops... a bug. I'll fix it. Also, any limitations on the main custom page as to how the data can be presented? Nope. You can do anything you can do on a web page. Quote Link to comment
dhy8386 Posted March 7, 2009 Share Posted March 7, 2009 Here is a mock up of a more Graphic intensive interface for the Overview page. Clicking on the disk name would open the same window it does now in your version. Additionally, I was thinking that clicking on the actual disk icon would open the view of the contents of each disk. Two versions, slightly different placements of some of the information. This is a quick mockup so its a little rough. Curious your thoughts. Too much? If you like, I am happy to make all the necessary icons for you. Feedback is welcome as I think this is a great project and making the web interface more visually appealing should hopefully attract more users to the project. Quote Link to comment
JarDo Posted March 7, 2009 Share Posted March 7, 2009 Very nice. Very pretty. I like it. Quote Link to comment
NAS Posted March 7, 2009 Share Posted March 7, 2009 I have been giving this some more thought and I really think emHTTP shouldnt be a dependency. Unfortunately there is no particularly nice way to do it without it so i suggest this an a OPTIONAL feature for users in the interim. Based on this work... grep "unRAID System Management" /var/log/syslog | awk '{ print $NF; }' Currently, it produces the simple 5 letter string 4.4.2 we could have something like this added to the go script: grep "unRAID System Management" /var/log/syslog | awk '{ print $NF; }' >/etc/unraid_version And check for that before we do the emHTTP parsing. Remember I am saying this would be optional and those that choose to do it will be removing the basic emHTTP dependency. In time I expect this file or similar to exist in the official distro since it is fairly standard OS practice Quote Link to comment
bubbaQ Posted March 7, 2009 Author Share Posted March 7, 2009 The unraid version string is stored in "unraid->current_version" and is globally accessible. The code that populates it does several things, in decreasing order of accuracy: 1) query and parse the html -- this is the MOST accurate since some people (like me) sometimes load an older version of emhttp for testing. 2) If that fails, then grep the syslog. 3) If that fails, check the filesize of bzimage (I use filesize, since a user can easily determine it and reporte to me for debugging). If all fail, it is reported as "unknown" Quote Link to comment
bubbaQ Posted March 7, 2009 Author Share Posted March 7, 2009 @dhy8386: I like it, except that it is using a lot of real estate per drive. For main status screens, I want everything visible w/o scrolling.... otherwise the user can miss something important. I think that we could live w/o the disl serial number on the main overview page however... that will space space in your design. A more detailed table page can have it under the "details" or "devices" tab. I would be interested in other users' opinions, but it is my impression that thermometers for space on each drive is not particularly useful. I believe a lot of people fill up several drives to near max, and then add new files to just one or 2 drives where nearly all the free space will be. 99.8% used is perfectly fine for many drives, and doesn't deserve a red color. 99% used on the entire array however is a different matter! However, I am working on a table display very much like yours for user shares. So you can see the amount free, as a thermometer, for each user share. Now icons... boy I would love a nice themed icon set custom for unRAID! Quote Link to comment
NAS Posted March 7, 2009 Share Posted March 7, 2009 The unraid version string is stored in "unraid->current_version" and is globally accessible. The code that populates it does several things, in decreasing order of accuracy: 1) query and parse the html -- this is the MOST accurate since some people (like me) sometimes load an older version of emhttp for testing. 2) If that fails, then grep the syslog. 3) If that fails, check the filesize of bzimage (I use filesize, since a user can easily determine it and reporte to me for debugging). If all fail, it is reported as "unknown" Sounds very good to me. I am not going to labor the point as we would be moving away from the core of what you project is about and moving in realms of making up for missing unRAID components but would you consider populating /etc/unraid_version if it is empty on completion of this process? The file should really exist by default and it in some ways makes sense to create it so it can be used outwith the bounds of this project and hopefully inspire unRAID to accept it as a standard and include it in future as previously requested. I wont be disappointing if you say no as I accept what I am requesting is starting to stray from core functionality; its just so small a change to add it would be nice if it did exist at the end of the process Quote Link to comment
bubbaQ Posted March 7, 2009 Author Share Posted March 7, 2009 would you consider populating /etc/unraid_version if it is empty on completion of this process? Sure, but I have no way to delete it if emhttp is unloaded.... and it won't be there unless and until you hit my custom interface extensions un unRAID-Web. Quote Link to comment
NAS Posted March 7, 2009 Share Posted March 7, 2009 I see theres a thread dedicated to /etc/unraid_version type discussions now. Might be worth taking this over there. In general though just keep the idea in your head. Ive added the line to my go script to populate the file but i need to make it a bit slicker so it doesnt blank it if it exists already. Quote Link to comment
SSD Posted March 7, 2009 Share Posted March 7, 2009 Here is a mock up of a more Graphic intensive interface for the Overview page. Clicking on the disk name would open the same window it does now in your version. Additionally, I was thinking that clicking on the actual disk icon would open the view of the contents of each disk. Two versions, slightly different placements of some of the information. This is a quick mockup so its a little rough. Curious your thoughts. Too much? If you like, I am happy to make all the necessary icons for you. Feedback is welcome as I think this is a great project and making the web interface more visually appealing should hopefully attract more users to the project. I like the screenshots and think it is a aesthetically pleasing presentation. The only comment is a nit - but the column is labeled "free space" when it is showing "used space". Quote Link to comment
Joe L. Posted March 7, 2009 Share Posted March 7, 2009 Here is a mock up of a more Graphic intensive interface for the Overview page. Clicking on the disk name would open the same window it does now in your version. Additionally, I was thinking that clicking on the actual disk icon would open the view of the contents of each disk. Two versions, slightly different placements of some of the information. This is a quick mockup so its a little rough. Curious your thoughts. Too much? If you like, I am happy to make all the necessary icons for you. Feedback is welcome as I think this is a great project and making the web interface more visually appealing should hopefully attract more users to the project. I like the screenshots and think it is a aesthetically pleasing presentation. The only comment is a nit - but the column is labeled "free space" when it is showing "used space". bjp999, You might like the following screen shot too. It is a work in progress, but I'm porting unmenu.awk to work as an "extension" under unRAID-Web. I've gotten the basic screens for each plug-in to work, but do not yet have their links and buttons working. (I've made NO changes to any of the unmenu plug-in files. My "php" code is dynamically defining the "Tabs" in the interface and then using the plug-in files in the "unmenu" directory. It is a real challenge to me, as "php" is a new language for me. (I'm still forgetting to put the semicolon at the ends of lines on occasion) Note that this example does not use the "awk" web-server at all, but instead uses lighttpd, the web-server BubbaQ has built into the unRADI-Web interface. You can see the "debugging" line above the plug-in showing the variables I use when invoking the specific plug-in. The 404-not found at the bottom is because the current code in the plugin is looking to open a "sys_log_tail" web-pageto display the end of the syslog, but no such "php" web-page exists. When (if) I get this working, you should be able to use the existing plug-ins under this new web-interface. You will not need to start the unmenu web-server at all and we can continue unMENU plug-in development using shell and awk as you desire, until such time that "php" equivalents are written. Joe L. Quote Link to comment
dhy8386 Posted March 7, 2009 Share Posted March 7, 2009 @dhy8386: I like it, except that it is using a lot of real estate per drive. For main status screens, I want everything visible w/o scrolling.... otherwise the user can miss something important. I think that we could live w/o the disl serial number on the main overview page however... that will space space in your design. A more detailed table page can have it under the "details" or "devices" tab. I would be interested in other users' opinions, but it is my impression that thermometers for space on each drive is not particularly useful. I believe a lot of people fill up several drives to near max, and then add new files to just one or 2 drives where nearly all the free space will be. 99.8% used is perfectly fine for many drives, and doesn't deserve a red color. 99% used on the entire array however is a different matter! However, I am working on a table display very much like yours for user shares. So you can see the amount free, as a thermometer, for each user share. Now icons... boy I would love a nice themed icon set custom for unRAID! I hear the point on "real estate". I revised this somewhat so more disks could fit on the same amount of space. Still less than in a table but in a full web browser, should be able to show many disks before need to scroll. On the space thermometers, thats interesting. I use high water so many of my disks have space on them. Some more full than others. This is how i see a few people using them as well but i would be interested to know others thoughts as well. My other thought was to have just the disk icon, disk name, and device in say column 1. Than all the other statistics appear in a frame to the right as you click on each disk. This allows you to consolidate all disk information into one frame (temp, r/w/e, firmware, used space, serial, smart info, etc). This would be in place of the pop up you now are utilizing. If people are interested in this, i could mock it up quickly. Downside is you have to click on each disk to see more info and part of the simplicity of the overview page is seeing the right amount of info without having to click through. Quote Link to comment
NAS Posted March 7, 2009 Share Posted March 7, 2009 dhy8386 I like where this is going. I would suggest though that my preference runs to subdued colors by default and strnig primarys when its trying to show you an exception i.e. red when nearly full. I also strongly dislike any huge fonts as they, to me at least, make me think home made. Positive responses through comments not a criticism Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.