Index
Subject
: [lug] Digest (2 messages)
From
: lug-owner@lists.ncsu.[redacted]
Date
: Sat, 20 Aug 2016 09:38:56 -0400
The Lug Digest
Volume 1 : Issue 382 : "text" Format
Messages in this Issue:
201608/3 : Re: Char has been upgraded
Quentin Young <qlyoung@ncsu.[redacted]>
201608/4 : Re: Off Topic: Automating metaflac and sox.
Quentin Young <qlyoung@ncsu.[redacted]>
----------------------------------------------------------------------
Date: Wed, 17 Aug 2016 22:00:51 -0400
From: Quentin Young <qlyoung@ncsu.[redacted]>
To: lug@lists.ncsu.[redacted]
Subject: Re: Char has been upgraded
Message-ID: <CANhSzx1ubSmxxYdt92y_AAJm_US6LrBp_5FjMMWqBz+n=Grnnw@mail.gmail.[redacted]>
So, to wrap this thread up and summarize ideas, with the topic being LUG
projects:
- We now control http://opensource.ncsu.edu/, I would love to see the
LUG build this into a cornerstone resource!
- Possibility of gitlab / gogs? Could be part of opensource...
- Email server (some bureaucracy / compliance overhead)
- I'm straying away from VPN / Tor / web proxy endpoints for security &
uni network ToS compliance
- I'm straying away from ircd because Freenode works well for the LUG
and a single irc server isn't of much use
Anyone want to add anything? More suggestions?
Quentin
On Fri, Jul 22, 2016 at 12:58 PM, Quentin Young <qlyoung@ncsu.[redacted]> wrote:
> That would be neat, but it's not practical. Hosting an IRC network is
> generally done with multiple servers and is a nontrivial task, plus
> Freenode is the de facto place for the open source / free software
> community (many, many projects have official channels on Freenode), and I
> don't know of anybody that hosts an entire IRC network for one channel or
> project. For example, the official Debian Project IRC is on OFTC, they
> don't host their own.
>
> Cool idea though!
>
> On Jul 22, 2016 12:23 PM, "Neill Robson" <nlrobson@ncsu.[redacted]> wrote:
>
>> Another idea: Currently our IRC room is on Freenode. Could we host our
>> own IRC server on this server?
>>
>> Neill R.
>>
>> On Jul 22, 2016 8:01 AM, "Quentin Young" <qlyoung@ncsu.[redacted]> wrote:
>>
>>> Not sure what you mean by access for web hosting. All it takes is a
>>> running server and optionally a DNS record to set up a website. For email
>>> addresses, we own the @lug.ncsu.edu domain, but this is still a
>>> subdomain of ncsu.edu, and there are certainly implications there that
>>> need to be taken into account. We could presumably set up multiple DNS
>>> records to point at our email server and configure it for multiple domains
>>> but I think at that point we may start running into regulatory / security
>>> issues. I have never configured an email server.
>>>
>>> Additionally, Carlos Benavente, with CSC IT, has informed me of some
>>> recent changes regarding email servers that we will need to comply with.
>>> It's not quite as easy as 'throw up an email server', so if we want to
>>> pursue this route seriously I'd like to see some solid interest by more
>>> than a few members.
>>>
>>> On Fri, Jul 22, 2016 at 9:52 AM, Antonious Iskander <amiskand@ncsu.[redacted]>
>>> wrote:
>>>
>>>> That's cool. How do we have access to do web hosting? Also, for email
>>>> addresses @lug is fine but can we also customize our own? Thanks.
>>>>
>>>> On Thu, Jul 21, 2016 at 10:53 PM, Quentin Young <qlyoung@ncsu.[redacted]>
>>>> wrote:
>>>>
>>>>> For email addresses I believe we would need to configure an email
>>>>> server. I think that is an option, we can probably offer @lug.ncsu.edu
>>>>> addresses. Will have to check.
>>>>>
>>>>> I'm fine allowing club members web hosting (as we presently do,
>>>>> http://nilbus.com/ is hosted on short).
>>>>>
>>>>> Quentin
>>>>>
>>>>> On Wed, Jun 29, 2016 at 6:13 AM, Antonious Iskander <amiskand@ncsu.[redacted]
>>>>> > wrote:
>>>>>
>>>>>> what about web hosting? or private email addresses?
>>>>>>
>>>>>> On Tue, Jun 28, 2016 at 6:19 PM, Quentin Young <qlyoung@ncsu.[redacted]>
>>>>>> wrote:
>>>>>>
>>>>>>> I think if we hosted a VPN or anonymous web proxy on a University
>>>>>>> rack terminating inside the University network the University would be very
>>>>>>> upset with us. Not an option, I'm afraid.
>>>>>>> On Jun 28, 2016 6:08 PM, "Antonious Iskander" <amiskand@ncsu.[redacted]>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> how about a vpn or an anonomous web proxy?
>>>>>>>>
>>>>>>>> On Mon, Jun 27, 2016 at 10:49 PM, Quentin Young <qlyoung@ncsu.[redacted]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> I am wrong, students retain IP over their code. However the FAQ
>>>>>>>>> does indeed note:
>>>>>>>>>
>>>>>>>>> *"NCSU GitHub is specifically designed to not compete with
>>>>>>>>> Github.com as far as public offering. “Public” inside of NCSU GitHub is
>>>>>>>>> public to the institution, not the world. If a given project is truly open
>>>>>>>>> source, then it may be more appropriate to host it at GitHub.com with a
>>>>>>>>> personal account."*
>>>>>>>>>
>>>>>>>>> ...or on your friendly neighborhood Linux User Group's hosted git
>>>>>>>>> service :-)
>>>>>>>>>
>>>>>>>>> On Mon, Jun 27, 2016 at 10:03 PM, Quentin Young <qlyoung@ncsu.[redacted]>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Additionally, I may be wrong on this front, but I recall reading
>>>>>>>>>> somewhere that the University retains many privileges and some form of
>>>>>>>>>> copyright over any code hosted there. If anyone has further information on
>>>>>>>>>> this I'd love to know more, but that's my understanding.
>>>>>>>>>>
>>>>>>>>>> On Mon, Jun 27, 2016 at 10:01 PM, Quentin Young <qlyoung@ncsu.[redacted]
>>>>>>>>>> > wrote:
>>>>>>>>>>
>>>>>>>>>>> NCSU's GitHub Enterprise instance is fully private and requires
>>>>>>>>>>> LDAP authentication with your Unity credentials. Repositories are not
>>>>>>>>>>> world-readable. My vote is still with a hosted Git service.
>>>>>>>>>>>
>>>>>>>>>>> On Sun, Jun 19, 2016 at 6:03 PM, Neill Robson <nlrobson@ncsu.[redacted]
>>>>>>>>>>> > wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Ah, I had not thought of that! Well, a hosted git service was
>>>>>>>>>>>> the only idea I had, unfortunately.
>>>>>>>>>>>>
>>>>>>>>>>>> On 06/16/2016 08:31 AM, Antonious Iskander wrote:
>>>>>>>>>>>>
>>>>>>>>>>>> since ncsu has GitHub already then it would just be a redundant
>>>>>>>>>>>> service to have gitlab or gogs.
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Jun 15, 2016 at 10:45 AM, Brian Cottingham <
>>>>>>>>>>>> <spiffytech@gmail.[redacted]>spiffytech@gmail.[redacted]> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> My previous employer tried very hard to use GitLab and had to
>>>>>>>>>>>>> switch to GitHub because GitLab's performance just wasn't there.
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Wed, Jun 15, 2016 at 10:41 AM, Todd Edwards < <todd@mtn.[redacted]>
>>>>>>>>>>>>> todd@mtn.[redacted]> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Might I suggest something like Gogs (https://gogs.io/)
>>>>>>>>>>>>>> instead of Gitlab? In my experience the performance/hardware requirements
>>>>>>>>>>>>>> of Gitlab in comparison is night and day.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Sorry, I just needed to get that out.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> -- Todd
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Tue, Jun 14, 2016 at 8:25 PM, Neill Robson <
>>>>>>>>>>>>>> <nlrobson@ncsu.[redacted]>nlrobson@ncsu.[redacted]> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> My vote is also still for a GitLab instance, since it leaves
>>>>>>>>>>>>>>> possibilities open for both personal and club-wide projects wherever
>>>>>>>>>>>>>>> programming is necessary (which is, of course, nearly everywhere).
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> My apologies for the radio silence on my end; I've been in
>>>>>>>>>>>>>>> China since the beginning of May and haven't had consistent access to email.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hope everybody's summer is going well!
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On 06/15/2016 08:15 AM, Quentin Young wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hi again!
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Looks like I made a typo in the last email; we upgraded
>>>>>>>>>>>>>>> *char*, not short, to Xenial.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Still haven't gotten any suggestions about what to use it
>>>>>>>>>>>>>>> for though! Let thy voice be heard!
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Yours,
>>>>>>>>>>>>>>> Quentin
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Sun, Jun 12, 2016 at 3:04 AM, Quentin Young <
>>>>>>>>>>>>>>> <qlyoung@ncsu.[redacted]>qlyoung@ncsu.[redacted]> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Hi all,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I'm happy to announce that myself and our Vice President,
>>>>>>>>>>>>>>>> Tony Iskander,
>>>>>>>>>>>>>>>> successfully upgraded short to Ubuntu 16.04 (Xenial Xerus)
>>>>>>>>>>>>>>>> on Friday.
>>>>>>>>>>>>>>>> Installation went without a hitch, and you can expect some
>>>>>>>>>>>>>>>> more details on our
>>>>>>>>>>>>>>>> website soon.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> As of now there are no user accounts (except for myself)
>>>>>>>>>>>>>>>> because we haven't yet
>>>>>>>>>>>>>>>> decided what to do with this particular piece of hardware.
>>>>>>>>>>>>>>>> Suggestions I have
>>>>>>>>>>>>>>>> heard so far are:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> - seti@home
>>>>>>>>>>>>>>>> - folding@home
>>>>>>>>>>>>>>>> - others that I forgot
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I would love to hear suggestions from members as to what we
>>>>>>>>>>>>>>>> want to use this
>>>>>>>>>>>>>>>> server for. Keep in mind it is an old server and its specs
>>>>>>>>>>>>>>>> are not quite as
>>>>>>>>>>>>>>>> beefy as Short:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> - 2.8 GHz Intel Xeon, quadcore
>>>>>>>>>>>>>>>> - 3 GB memory (lol)
>>>>>>>>>>>>>>>> - 1 TB HDD
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> My personal vote is for a GitLab instance. I've also been
>>>>>>>>>>>>>>>> thinking about
>>>>>>>>>>>>>>>> whether it might be prudent to simply move all of our
>>>>>>>>>>>>>>>> hosted services onto this
>>>>>>>>>>>>>>>> lower power server (currently those are the website and
>>>>>>>>>>>>>>>> ZNC) and keep short as
>>>>>>>>>>>>>>>> a higher performance server for use by club members.
>>>>>>>>>>>>>>>> Anyway, reply and let me
>>>>>>>>>>>>>>>> know what you think!
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Enjoy the rest of your weekend,
>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>> Quentin Young
>>>>>>>>>>>>>>>> President, LUG @ NC State
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>> Quentin Young
>>>>>>>>>>>>>>> President, LUG @ NC State
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Quentin Young
>>>>>>>>>>> President, LUG @ NC State
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Quentin Young
>>>>>>>>>> President, LUG @ NC State
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Quentin Young
>>>>>>>>> President, LUG @ NC State
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Quentin Young
>>>>> President, LUG @ NC State
>>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> Quentin Young
>>> President, LUG @ NC State
>>>
>>
--
Quentin Young
President, LUG @ NC State
[Attachment of type text/html removed.]
------------------------------
Date: Wed, 17 Aug 2016 22:41:34 -0400
From: Quentin Young <qlyoung@ncsu.[redacted]>
To: lug@lists.ncsu.[redacted], mewtamer@gmail.[redacted]
Subject: Re: Off Topic: Automating metaflac and sox.
Message-ID: <CANhSzx1v8h2EpiYuq2rOarMBMw7XyZ9CNtwBmO5ztFySNkK9gA@mail.gmail.[redacted]>
Hi Jeffrey,
As for your first script, with Sox, this seems like a task particularly
suited for find. I was able to achieve the described results with:
$ find -type d -exec sox "{}/*.flac" "{}".flac ";"
No need for a script!
As for the metaflac one, I haven't used metaflac enough to build out all
those options, but I imagine you could also use gnu find -exec's to
condense that big copy paste script down as well. If I get something I'll
let you know.
Btw, Sorry for the late response! Been super busy lately.
Quentin
On Tue, Aug 2, 2016 at 6:24 PM, Jeffery Mewtamer <mewtamer@gmail.[redacted]> wrote:
> Okay, so I've started amassing a collection of Audiobooks and Audio
> Dramas in AudioCD format. Compared to Music CD, ripping these to flac
> on average requires more post-processing due to things like multiple
> discs, incomplete, inconsistant, or missing CDDB data, or
> chapters/episodes being split across multiple tracks or discs.
>
> I like having my Audiobooks and Audio Dramas organized as follows:
> 1 file per Chapter/Episode.
> Each file named with chapter/episode number and title if
> chapters/episodes are titled or Chapter XX.flac/Episode XX.flac if
> they aren't titled.
> All the Chapters/Episodes of the same book/program in a directory
> named for the book/program.
> All Books/Programs by the same Author or in the same franchise in a
> directory named for the Author or Franchise.
> And with the following file tags:
> Artist=Author's Name/Franchise Name as appropriate
> Album=Book Tile/Program title
> Track= Chapter/Episode Number
> Title = Chapter/Episode title if there is one Chapter XX/Episode XX
> otherwise.
>
> I've been using sox to concatenate tracks belonging to the same
> chapter/episode and metaflac for fixing file tags, but I would like to
> use scripts to better automate this process after I've gotten files
> either sorted into a directory per chapter/episode or into the final
> preferred filenames.
>
> For sox, I'd like to create a script that, when executed, will descend
> into each subdirectory of the working directory, use sox to
> concatenate the flac files found there and spit out the result in the
> working directory with a filename that matches the subdirectory whose
> contents were concatenated. This problem has a similar structure to
> ones I've used a for file in *.ext loop, but I've never done such a
> loop where the parameters were directories rather than files with a
> given filename extension.
>
> Here is the contents of my untested massSox.sh:
>
> # /bin/bash
> for dir in *; do
> cd "$dir"
> sox * ../"$dir".flac &
> cd ../
> done
>
> With metaflac, I'd like to create a script that will:
> remove all tags for every flac file in the working directory.
> set Artist and Album to specified values(if these can be given as
> command line parameters or take from Album=../ and Artist=../../ that
> would be great).
> For each flac file with a filename of the form XX Chapter Title.flac,
> it sets track=XX and title=Chapter Title.
> for every flace file with a name of the form Chapter XX.flac, it sets
> track=XX and Title=Chapter XX with similar for filenames of the form
> Episode XX.flac
>
> currently, I've got two scripts for tagging, one to handle the XX
> Chapter Title.flac case that requires using ls -1 > filelist.txt to
> generate a list of chapter titles and then doing a lot of cutting and
> pasting to populate a list of nearly identical commands. The other
> tagging script handles the Chapter XX.flac case and only requires that
> I add hardcoded Artist and Album values and that there's enough lines
> to handle the number of input files. I haven't encountered the Episode
> XX.flac case yet, but I can convert tagNoChapterTitles.sh to
> tagNoEpisodeTitles.sh with a simple sed command. I would think there
> should be a way to do string manipulation of filenames to create a
> loop, but my scripting knowledge is not that advanced.
>
> Here are my skeletal tag.sh followed by my tagNoChapterTitles.sh:
>
> # /bin/bash
> metaflac --remove-all-tags *.flac
> metaflac --set-tag=ARTIST="" --set-tag=ALBUM="" *.flac
> metaflac --set-tag=TRACK=01 --set-tag=TITLE="" ""
> metaflac --set-tag=TRACK=02 --set-tag=TITLE="" ""
> metaflac --set-tag=TRACK=03 --set-tag=TITLE="" ""
> metaflac --set-tag=TRACK=04 --set-tag=TITLE="" ""
> metaflac --set-tag=TRACK=05 --set-tag=TITLE="" ""
> metaflac --set-tag=TRACK=06 --set-tag=TITLE="" ""
> metaflac --set-tag=TRACK=07 --set-tag=TITLE="" ""
> metaflac --set-tag=TRACK=08 --set-tag=TITLE="" ""
> metaflac --set-tag=TRACK=09 --set-tag=TITLE="" ""
> metaflac --set-tag=TRACK=10 --set-tag=TITLE="" ""
>
> # /bin/bash
> metaflac --remove-all-tags *.flac
> metaflac --set-tag=ARTIST="" --set-tag=ALBUM="" *.flac
> metaflac --set-tag=TRACK=01 --set-tag=TITLE="Chapter 01" "Chapter 01.flac"
> metaflac --set-tag=TRACK=02 --set-tag=TITLE="Chapter 02" "Chapter 02.flac"
> metaflac --set-tag=TRACK=03 --set-tag=TITLE="Chapter 03" "Chapter 03.flac"
> metaflac --set-tag=TRACK=04 --set-tag=TITLE="Chapter 04" "Chapter 04.flac"
> metaflac --set-tag=TRACK=05 --set-tag=TITLE="Chapter 05" "Chapter 05.flac"
> metaflac --set-tag=TRACK=06 --set-tag=TITLE="Chapter 06" "Chapter 06.flac"
> metaflac --set-tag=TRACK=07 --set-tag=TITLE="Chapter 07" "Chapter 07.flac"
> metaflac --set-tag=TRACK=08 --set-tag=TITLE="Chapter 08" "Chapter 08.flac"
> metaflac --set-tag=TRACK=09 --set-tag=TITLE="Chapter 09" "Chapter 09.flac"
> metaflac --set-tag=TRACK=10 --set-tag=TITLE="Chapter 10" "Chapter 10.flac"
> metaflac --set-tag=TRACK=11 --set-tag=TITLE="Chapter 11" "Chapter 11.flac"
> metaflac --set-tag=TRACK=12 --set-tag=TITLE="Chapter 12" "Chapter 12.flac"
> metaflac --set-tag=TRACK=13 --set-tag=TITLE="Chapter 13" "Chapter 13.flac"
> metaflac --set-tag=TRACK=14 --set-tag=TITLE="Chapter 14" "Chapter 14.flac"
> metaflac --set-tag=TRACK=15 --set-tag=TITLE="Chapter 15" "Chapter 15.flac"
> metaflac --set-tag=TRACK=16 --set-tag=TITLE="Chapter 16" "Chapter 16.flac"
> metaflac --set-tag=TRACK=17 --set-tag=TITLE="Chapter 17" "Chapter 17.flac"
> metaflac --set-tag=TRACK=18 --set-tag=TITLE="Chapter 18" "Chapter 18.flac"
> metaflac --set-tag=TRACK=19 --set-tag=TITLE="Chapter 19" "Chapter 19.flac"
> metaflac --set-tag=TRACK=20 --set-tag=TITLE="Chapter 20" "Chapter 20.flac"
> metaflac --set-tag=TRACK=21 --set-tag=TITLE="Chapter 21" "Chapter 21.flac"
> metaflac --set-tag=TRACK=22 --set-tag=TITLE="Chapter 22" "Chapter 22.flac"
> metaflac --set-tag=TRACK=23 --set-tag=TITLE="Chapter 23" "Chapter 23.flac"
> metaflac --set-tag=TRACK=24 --set-tag=TITLE="Chapter 24" "Chapter 24.flac"
> metaflac --set-tag=TRACK=25 --set-tag=TITLE="Chapter 25" "Chapter 25.flac"
> metaflac --set-tag=TRACK=26 --set-tag=TITLE="Chapter 26" "Chapter 26.flac"
> metaflac --set-tag=TRACK=27 --set-tag=TITLE="Chapter 27" "Chapter 27.flac"
> metaflac --set-tag=TRACK=28 --set-tag=TITLE="Chapter 28" "Chapter 28.flac"
> metaflac --set-tag=TRACK=29 --set-tag=TITLE="Chapter 29" "Chapter 29.flac"
> metaflac --set-tag=TRACK=30 --set-tag=TITLE="Chapter 30" "Chapter 30.flac"
> metaflac --set-tag=TRACK=31 --set-tag=TITLE="Chapter 31" "Chapter 31.flac"
> metaflac --set-tag=TRACK=32 --set-tag=TITLE="Chapter 32" "Chapter 32.flac"
> metaflac --set-tag=TRACK=33 --set-tag=TITLE="Chapter 33" "Chapter 33.flac"
> metaflac --set-tag=TRACK=34 --set-tag=TITLE="Chapter 34" "Chapter 34.flac"
> metaflac --set-tag=TRACK=35 --set-tag=TITLE="Chapter 35" "Chapter 35.flac"
> metaflac --set-tag=TRACK=36 --set-tag=TITLE="Chapter 36" "Chapter 36.flac"
> metaflac --set-tag=TRACK=37 --set-tag=TITLE="Chapter 37" "Chapter 37.flac"
> metaflac --set-tag=TRACK=38 --set-tag=TITLE="Chapter 38" "Chapter 38.flac"
> metaflac --set-tag=TRACK=39 --set-tag=TITLE="Chapter 39" "Chapter 39.flac"
> metaflac --set-tag=TRACK=40 --set-tag=TITLE="Chapter 40" "Chapter 40.flac"
>
> Any help that could be provided in improving my scripts would be
> greatly appreciated, and I'm open to suggestions for alternatives to
> metaflac and sox for doing these jobs.
>
--
Quentin Young
President, LUG @ NC State
[Attachment of type text/html removed.]
------------------------------
End of [lug] Digest (2 messages)
**********